{"_id":"@arshad-shah/swift-chart","_rev":"6-3fcb6f2214fcc1e4922b1d60292205bf","name":"@arshad-shah/swift-chart","dist-tags":{"latest":"1.3.1"},"versions":{"1.0.0":{"name":"@arshad-shah/swift-chart","version":"1.0.0","keywords":["chart","charts","charting","graph","canvas","react","visualization","data-viz","line-chart","bar-chart","pie-chart","donut-chart","radar-chart","scatter-chart","treemap","gauge","sparkline","waterfall","lightweight","fast"],"author":{"name":"Arshad Shah"},"license":"MIT","_id":"@arshad-shah/swift-chart@1.0.0","maintainers":[{"name":"arshad-shah","email":"shaharshad57@gmail.com"}],"homepage":"https://github.com/arshad-shah/swiftchart#readme","bugs":{"url":"https://github.com/arshad-shah/swiftchart/issues"},"dist":{"shasum":"2b3206f29aad8ec72c624ac9b0baa236f70b9d30","tarball":"https://registry.npmjs.org/@arshad-shah/swift-chart/-/swift-chart-1.0.0.tgz","fileCount":16,"integrity":"sha512-XDz1cWt0VOyTW80FyK7SSUxJyzYlzzP3JCQD6UKhuJxsaL+Oqvw8kOvP690socs14PVHDE2pntDlgV+OQAN1Cg==","signatures":[{"sig":"MEQCIEIWfRl8JWG1SkNVvlvqYVLSdldq7kXsGO+DtpJyjTGgAiAbQWaznKb2OwNjn5BEXcJdQP25Wpy0ofcas/tMWH2qeA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2159482},"main":"./dist/cjs/index.cjs","type":"module","_from":"file:arshad-shah-swift-chart-1.0.0.tgz","types":"./dist/esm/index.d.ts","volta":{"node":"24.15.0","pnpm":"10.33.2"},"module":"./dist/esm/index.js","engines":{"node":"^18.18.0 || ^20.0.0 || >=22.0.0"},"exports":{".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/cjs/index.d.cts","default":"./dist/cjs/index.cjs"}},"./react":{"import":{"types":"./dist/esm/react/index.d.ts","default":"./dist/esm/react/index.js"},"require":{"types":"./dist/cjs/react/index.d.cts","default":"./dist/cjs/react/index.cjs"}},"./package.json":"./package.json"},"scripts":{"dev":"tsup --watch","attw":"node scripts/attw.mjs","lint":"eslint src tests","size":"size-limit","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","publint":"publint","release":"pnpm build && changeset publish","test:ui":"vitest --ui","validate":"pnpm run typecheck && pnpm run lint && pnpm run test && pnpm run build && pnpm run publint && pnpm run attw && pnpm run size","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","version-packages":"changeset version"},"_npmUser":{"name":"arshad-shah","email":"shaharshad57@gmail.com"},"_resolved":"/private/var/folders/8f/5nq7hv_56l10c3wmb92j191w0000gp/T/3a353b1e43a2540275d4389fab5ed947/arshad-shah-swift-chart-1.0.0.tgz","_integrity":"sha512-XDz1cWt0VOyTW80FyK7SSUxJyzYlzzP3JCQD6UKhuJxsaL+Oqvw8kOvP690socs14PVHDE2pntDlgV+OQAN1Cg==","repository":{"url":"git+https://github.com/arshad-shah/swiftchart.git","type":"git"},"size-limit":[{"name":"tree-shaken: LineChart only","path":"dist/esm/index.js","limit":"7 KB","import":"{ LineChart }"},{"name":"tree-shaken: LineChart + BarChart","path":"dist/esm/index.js","limit":"7 KB","import":"{ LineChart, BarChart }"},{"name":"tree-shaken: 6 common charts","path":"dist/esm/index.js","limit":"10 KB","import":"{ LineChart, BarChart, PieChart, ScatterChart, GaugeChart, RadarChart }"},{"name":"full barrel (all 23 chart classes + helpers)","path":"dist/esm/index.js","limit":"21 KB"},{"name":"full react bundle","path":"dist/esm/react/index.js","limit":"20 KB"}],"_npmVersion":"11.12.1","description":"Lightning-fast, zero-dependency Canvas 2D charting library with React bindings. Schema-agnostic, themeable, animated.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"typesVersions":{"*":{"react":["./dist/esm/react/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","jsdom":"^25.0.1","react":"^18.3.1","canvas":"^2.11.2","eslint":"^9.17.0","vitest":"^2.1.8","globals":"^15.14.0","publint":"^0.3.0","react-dom":"^18.3.1","@eslint/js":"^9.17.0","size-limit":"^11.1.6","typescript":"^5.7.2","@types/react":"^18.3.12","@changesets/cli":"2.31.0","@types/react-dom":"^18.3.1","typescript-eslint":"^8.18.0","@vitest/coverage-v8":"^2.1.8","@arethetypeswrong/cli":"^0.17.0","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3","@typescript-eslint/parser":"^8.18.0","eslint-plugin-react-hooks":"^5.1.0","@changesets/changelog-github":"0.6.0","@size-limit/preset-small-lib":"^11.1.6","@typescript-eslint/eslint-plugin":"^8.18.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/swift-chart_1.0.0_1777564630540_0.13190667835786818","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@arshad-shah/swift-chart","version":"1.1.0","keywords":["chart","charts","charting","graph","canvas","react","visualization","data-viz","line-chart","bar-chart","pie-chart","donut-chart","radar-chart","scatter-chart","treemap","gauge","sparkline","waterfall","lightweight","fast"],"author":{"name":"Arshad Shah"},"license":"MIT","_id":"@arshad-shah/swift-chart@1.1.0","maintainers":[{"name":"arshad-shah","email":"shaharshad57@gmail.com"}],"homepage":"https://swiftchart.arshadshah.com","bugs":{"url":"https://github.com/arshad-shah/swiftchart/issues"},"dist":{"shasum":"40d26732e7a24bf0b28ae7dd9932fbc32160252e","tarball":"https://registry.npmjs.org/@arshad-shah/swift-chart/-/swift-chart-1.1.0.tgz","fileCount":16,"integrity":"sha512-zxERaGis1IgU+uCyTSyQrWJsikVRQOHwYI+8vVf3ZZDlKmFr6V/QZ5vh1ZQQKa2kca5tLtEITdGdc6itvgkr/Q==","signatures":[{"sig":"MEQCICLO896nhg4QYHcAJDN16rB2PLN/BAhKlr3SE1UbLNMdAiAKvDr1xkR23xLRB/4GhGHgHpYxg+/Py1sGH4WlTlqUdg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2248182},"main":"./dist/cjs/index.cjs","type":"module","types":"./dist/esm/index.d.ts","volta":{"node":"24.15.0","pnpm":"10.33.2"},"module":"./dist/esm/index.js","engines":{"node":"^18.18.0 || ^20.0.0 || >=22.0.0"},"exports":{".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/cjs/index.d.cts","default":"./dist/cjs/index.cjs"}},"./react":{"import":{"types":"./dist/esm/react/index.d.ts","default":"./dist/esm/react/index.js"},"require":{"types":"./dist/cjs/react/index.d.cts","default":"./dist/cjs/react/index.cjs"}},"./package.json":"./package.json"},"gitHead":"7b5992d8327d7fb9669a05f3debc469455be4cf4","scripts":{"dev":"tsup --watch","attw":"node scripts/attw.mjs","lint":"eslint src tests","size":"size-limit","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","publint":"publint","release":"pnpm build && changeset publish","test:ui":"vitest --ui","validate":"pnpm run typecheck && pnpm run lint && pnpm run test && pnpm run build && pnpm run publint && pnpm run attw && pnpm run size","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"pnpm run validate","version-packages":"changeset version"},"_npmUser":{"name":"arshad-shah","email":"shaharshad57@gmail.com"},"repository":{"url":"git+https://github.com/arshad-shah/swiftchart.git","type":"git"},"size-limit":[{"name":"tree-shaken: LineChart only","path":"dist/esm/index.js","limit":"7 KB","import":"{ LineChart }"},{"name":"tree-shaken: LineChart + BarChart","path":"dist/esm/index.js","limit":"7 KB","import":"{ LineChart, BarChart }"},{"name":"tree-shaken: 6 common charts","path":"dist/esm/index.js","limit":"10 KB","import":"{ LineChart, BarChart, PieChart, ScatterChart, GaugeChart, RadarChart }"},{"name":"full barrel (all 23 chart classes + helpers)","path":"dist/esm/index.js","limit":"21 KB"},{"name":"full react bundle","path":"dist/esm/react/index.js","limit":"21 KB"}],"_npmVersion":"11.12.1","description":"Lightning-fast, zero-dependency Canvas 2D charting library with React bindings. Schema-agnostic, themeable, animated.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"typesVersions":{"*":{"react":["./dist/esm/react/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","jsdom":"^25.0.1","react":"^18.3.1","canvas":"^2.11.2","eslint":"^9.17.0","vitest":"^2.1.8","globals":"^15.14.0","publint":"^0.3.0","react-dom":"^18.3.1","@eslint/js":"^9.17.0","size-limit":"^11.1.6","typescript":"^5.7.2","@types/react":"^18.3.12","@changesets/cli":"2.31.0","@types/react-dom":"^18.3.1","typescript-eslint":"^8.18.0","@vitest/coverage-v8":"^2.1.8","@arethetypeswrong/cli":"^0.17.0","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3","@typescript-eslint/parser":"^8.18.0","eslint-plugin-react-hooks":"^5.1.0","@changesets/changelog-github":"0.6.0","@size-limit/preset-small-lib":"^11.1.6","@typescript-eslint/eslint-plugin":"^8.18.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/swift-chart_1.1.0_1777646075033_0.9174333957494747","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@arshad-shah/swift-chart","version":"1.2.0","keywords":["chart","charts","charting","graph","canvas","react","visualization","data-viz","line-chart","bar-chart","pie-chart","donut-chart","radar-chart","scatter-chart","treemap","gauge","sparkline","waterfall","lightweight","fast"],"author":{"name":"Arshad Shah"},"license":"MIT","_id":"@arshad-shah/swift-chart@1.2.0","maintainers":[{"name":"arshad-shah","email":"shaharshad57@gmail.com"}],"homepage":"https://swiftchart.arshadshah.com","bugs":{"url":"https://github.com/arshad-shah/swiftchart/issues"},"dist":{"shasum":"0d2f60cf84fb5e97765832e05e63ec08e100ad80","tarball":"https://registry.npmjs.org/@arshad-shah/swift-chart/-/swift-chart-1.2.0.tgz","fileCount":16,"integrity":"sha512-N8jNV2GOmer5wJaYudaF9w7oghAIDxkEp8exfD9AFvTkn1KeDswRuPCi9WC1aNQm2rGZo+jXyzwl2k8LNwJBJw==","signatures":[{"sig":"MEQCIHh5CcvjPMOtggXkG6+YKJIcmSROLPzJeKYg5Qa2LtIVAiB5CITClcTH6XvFg+ikjXaWJmmDJ5xpiEjs1msMXuAsYg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2317594},"main":"./dist/cjs/index.cjs","type":"module","types":"./dist/esm/index.d.ts","volta":{"node":"24.15.0","pnpm":"10.33.2"},"module":"./dist/esm/index.js","engines":{"node":"^18.18.0 || ^20.0.0 || >=22.0.0"},"exports":{".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/cjs/index.d.cts","default":"./dist/cjs/index.cjs"}},"./react":{"import":{"types":"./dist/esm/react/index.d.ts","default":"./dist/esm/react/index.js"},"require":{"types":"./dist/cjs/react/index.d.cts","default":"./dist/cjs/react/index.cjs"}},"./package.json":"./package.json"},"gitHead":"cd8ca9c4884520782a70c26a001a2d6374a1b476","scripts":{"dev":"tsup --watch","attw":"node scripts/attw.mjs","lint":"eslint src tests","size":"size-limit","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","publint":"publint","release":"pnpm build && changeset publish","test:ui":"vitest --ui","validate":"pnpm run typecheck && pnpm run lint && pnpm run test && pnpm run build && pnpm run publint && pnpm run attw && pnpm run size","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"pnpm run validate","version-packages":"changeset version"},"_npmUser":{"name":"arshad-shah","email":"shaharshad57@gmail.com"},"repository":{"url":"git+https://github.com/arshad-shah/swiftchart.git","type":"git"},"size-limit":[{"name":"tree-shaken: LineChart only","path":"dist/esm/index.js","limit":"7 KB","import":"{ LineChart }"},{"name":"tree-shaken: LineChart + BarChart","path":"dist/esm/index.js","limit":"7.5 KB","import":"{ LineChart, BarChart }"},{"name":"tree-shaken: 6 common charts","path":"dist/esm/index.js","limit":"10.5 KB","import":"{ LineChart, BarChart, PieChart, ScatterChart, GaugeChart, RadarChart }"},{"name":"full barrel (all 23 chart classes + helpers)","path":"dist/esm/index.js","limit":"21 KB"},{"name":"full react bundle","path":"dist/esm/react/index.js","limit":"21 KB"}],"_npmVersion":"11.12.1","description":"Lightning-fast, zero-dependency Canvas 2D charting library with React bindings. Schema-agnostic, themeable, animated.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"typesVersions":{"*":{"react":["./dist/esm/react/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","jsdom":"^25.0.1","react":"^18.3.1","canvas":"^2.11.2","eslint":"^9.17.0","vitest":"^2.1.8","globals":"^15.14.0","publint":"^0.3.0","react-dom":"^18.3.1","@eslint/js":"^9.17.0","size-limit":"^11.1.6","typescript":"^5.7.2","@types/react":"^18.3.12","@changesets/cli":"2.31.0","@types/react-dom":"^18.3.1","typescript-eslint":"^8.18.0","@vitest/coverage-v8":"^2.1.8","@arethetypeswrong/cli":"^0.17.0","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3","@typescript-eslint/parser":"^8.18.0","eslint-plugin-react-hooks":"^5.1.0","@changesets/changelog-github":"0.6.0","@size-limit/preset-small-lib":"^11.1.6","@typescript-eslint/eslint-plugin":"^8.18.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/swift-chart_1.2.0_1778069959895_0.6897196865613482","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@arshad-shah/swift-chart","version":"1.2.1","keywords":["chart","charts","charting","graph","canvas","react","visualization","data-viz","line-chart","bar-chart","pie-chart","donut-chart","radar-chart","scatter-chart","treemap","gauge","sparkline","waterfall","lightweight","fast"],"author":{"name":"Arshad Shah"},"license":"MIT","_id":"@arshad-shah/swift-chart@1.2.1","maintainers":[{"name":"arshad-shah","email":"shaharshad57@gmail.com"}],"homepage":"https://swiftchart.arshadshah.com","bugs":{"url":"https://github.com/arshad-shah/swiftchart/issues"},"dist":{"shasum":"684818dcbf96f974a12cc787c4014cfdf49536c7","tarball":"https://registry.npmjs.org/@arshad-shah/swift-chart/-/swift-chart-1.2.1.tgz","fileCount":16,"integrity":"sha512-8jjUREAPPDRKkpCMdNE43ouAUrsTI78L0BoneYdssciqP//lP6KLKYxq2U+8F3thIWopDx59+QtNxdnd8k7QJw==","signatures":[{"sig":"MEQCIG4WDjkQXKwKtrXsFlvKaXxQS0aTXtoUcnGD+mOSzWpmAiBDnveR7sS+RMjAq6U6c9/izqTGCzRmTgOmUglJReHKNg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2320397},"main":"./dist/cjs/index.cjs","type":"module","types":"./dist/esm/index.d.ts","volta":{"node":"24.15.0","pnpm":"10.33.2"},"module":"./dist/esm/index.js","engines":{"node":"^18.18.0 || ^20.0.0 || >=22.0.0"},"exports":{".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/cjs/index.d.cts","default":"./dist/cjs/index.cjs"}},"./react":{"import":{"types":"./dist/esm/react/index.d.ts","default":"./dist/esm/react/index.js"},"require":{"types":"./dist/cjs/react/index.d.cts","default":"./dist/cjs/react/index.cjs"}},"./package.json":"./package.json"},"gitHead":"fcd9a0c631909073b82cc78c1d6617e33d7baec1","scripts":{"dev":"tsup --watch","attw":"node scripts/attw.mjs","lint":"eslint src tests","size":"size-limit","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","publint":"publint","release":"pnpm build && changeset publish","test:ui":"vitest --ui","validate":"pnpm run typecheck && pnpm run lint && pnpm run test && pnpm run build && pnpm run publint && pnpm run attw && pnpm run size","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"pnpm run validate","version-packages":"changeset version"},"_npmUser":{"name":"arshad-shah","email":"shaharshad57@gmail.com"},"repository":{"url":"git+https://github.com/arshad-shah/swiftchart.git","type":"git"},"size-limit":[{"name":"tree-shaken: LineChart only","path":"dist/esm/index.js","limit":"7 KB","import":"{ LineChart }"},{"name":"tree-shaken: LineChart + BarChart","path":"dist/esm/index.js","limit":"7.5 KB","import":"{ LineChart, BarChart }"},{"name":"tree-shaken: 6 common charts","path":"dist/esm/index.js","limit":"10.5 KB","import":"{ LineChart, BarChart, PieChart, ScatterChart, GaugeChart, RadarChart }"},{"name":"full barrel (all 23 chart classes + helpers)","path":"dist/esm/index.js","limit":"21 KB"},{"name":"full react bundle","path":"dist/esm/react/index.js","limit":"21 KB"}],"_npmVersion":"11.12.1","description":"Lightning-fast, zero-dependency Canvas 2D charting library with React bindings. Schema-agnostic, themeable, animated.","directories":{},"sideEffects":false,"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"typesVersions":{"*":{"react":["./dist/esm/react/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","jsdom":"^25.0.1","react":"^18.3.1","canvas":"^2.11.2","eslint":"^9.17.0","vitest":"^2.1.8","globals":"^15.14.0","publint":"^0.3.0","react-dom":"^18.3.1","@eslint/js":"^9.17.0","size-limit":"^11.1.6","typescript":"^5.7.2","@types/react":"^18.3.12","@changesets/cli":"2.31.0","@types/react-dom":"^18.3.1","typescript-eslint":"^8.18.0","@vitest/coverage-v8":"^2.1.8","@arethetypeswrong/cli":"^0.17.0","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3","@typescript-eslint/parser":"^8.18.0","eslint-plugin-react-hooks":"^5.1.0","@changesets/changelog-github":"0.6.0","@size-limit/preset-small-lib":"^11.1.6","@typescript-eslint/eslint-plugin":"^8.18.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/swift-chart_1.2.1_1778070943459_0.975398709459004","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@arshad-shah/swift-chart","version":"1.3.0","keywords":["chart","charts","charting","graph","canvas","react","visualization","data-viz","line-chart","bar-chart","pie-chart","donut-chart","radar-chart","scatter-chart","treemap","gauge","sparkline","waterfall","lightweight","fast"],"author":{"name":"Arshad Shah"},"license":"MIT","_id":"@arshad-shah/swift-chart@1.3.0","maintainers":[{"name":"arshad-shah","email":"shaharshad57@gmail.com"}],"homepage":"https://swiftchart.arshadshah.com","bugs":{"url":"https://github.com/arshad-shah/swiftchart/issues"},"dist":{"shasum":"128e75cccd3843adbdbd3471640608a6f24fce73","tarball":"https://registry.npmjs.org/@arshad-shah/swift-chart/-/swift-chart-1.3.0.tgz","fileCount":16,"integrity":"sha512-9D33xCtDMrFBW1MKqMQ9yaYcMG7d6inpUvLti+eVCiZNNisputbMor/zuRo/sz5piG+b867pTaNO72p0xwjlEA==","signatures":[{"sig":"MEUCIGkuJZp1ebPGjnuV+n9H7rQQgqrGrGKHyCGKPNiEwiiEAiEA/smrDPTT1CKL73Qhcct/5wctNpMgsy7C8/z43D3Y6go=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@arshad-shah%2fswift-chart@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2627685},"main":"./dist/cjs/index.cjs","type":"module","_from":"file:arshad-shah-swift-chart-1.3.0.tgz","types":"./dist/esm/index.d.ts","volta":{"node":"24.15.0","pnpm":"10.33.2"},"module":"./dist/esm/index.js","engines":{"node":"^18.18.0 || ^20.0.0 || >=22.0.0"},"exports":{".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/cjs/index.d.cts","default":"./dist/cjs/index.cjs"}},"./react":{"import":{"types":"./dist/esm/react/index.d.ts","default":"./dist/esm/react/index.js"},"require":{"types":"./dist/cjs/react/index.d.cts","default":"./dist/cjs/react/index.cjs"}},"./package.json":"./package.json"},"scripts":{"dev":"tsup --watch","attw":"node scripts/attw.mjs","lint":"eslint src tests","size":"size-limit","test":"vitest run","build":"tsup","clean":"rm -rf dist coverage","publint":"publint","release":"pnpm build && changeset publish","test:ui":"vitest --ui","validate":"pnpm run typecheck && pnpm run lint && pnpm run test && pnpm run build && pnpm run publint && pnpm run attw && pnpm run size","changeset":"changeset","typecheck":"tsc --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","version-packages":"changeset version"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6e0ff9a0-4076-4042-8d9a-4f9afb396825"}},"_resolved":"/tmp/49a02206c32ccf73b2283b8d8778f29b/arshad-shah-swift-chart-1.3.0.tgz","_integrity":"sha512-9D33xCtDMrFBW1MKqMQ9yaYcMG7d6inpUvLti+eVCiZNNisputbMor/zuRo/sz5piG+b867pTaNO72p0xwjlEA==","repository":{"url":"git+https://github.com/arshad-shah/swiftchart.git","type":"git"},"size-limit":[{"name":"tree-shaken: LineChart only","path":"dist/esm/index.js","limit":"8.25 KB","import":"{ LineChart }"},{"name":"tree-shaken: LineChart + BarChart","path":"dist/esm/index.js","limit":"8.75 KB","import":"{ LineChart, BarChart }"},{"name":"tree-shaken: 6 common charts","path":"dist/esm/index.js","limit":"12 KB","import":"{ LineChart, BarChart, PieChart, ScatterChart, GaugeChart, RadarChart }"},{"name":"full barrel (all 23 chart classes + helpers)","path":"dist/esm/index.js","limit":"22.75 KB"},{"name":"full react bundle","path":"dist/esm/react/index.js","limit":"22.75 KB"}],"_npmVersion":"11.14.0","description":"Lightning-fast, zero-dependency Canvas 2D charting library with React bindings. Schema-agnostic, themeable, animated.","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","publishConfig":{"access":"public"},"typesVersions":{"*":{"react":["./dist/esm/react/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.3.5","jsdom":"^25.0.1","react":"^18.3.1","canvas":"^2.11.2","eslint":"^9.17.0","vitest":"^2.1.8","globals":"^15.14.0","publint":"^0.3.0","react-dom":"^18.3.1","@eslint/js":"^9.17.0","size-limit":"^11.1.6","typescript":"^5.7.2","@types/react":"^18.3.12","@changesets/cli":"2.31.0","@types/react-dom":"^18.3.1","typescript-eslint":"^8.18.0","@vitest/coverage-v8":"^2.1.8","@arethetypeswrong/cli":"^0.17.0","@testing-library/react":"^16.1.0","@testing-library/jest-dom":"^6.6.3","@typescript-eslint/parser":"^8.18.0","eslint-plugin-react-hooks":"^5.1.0","@changesets/changelog-github":"0.6.0","@size-limit/preset-small-lib":"^11.1.6","@typescript-eslint/eslint-plugin":"^8.18.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/swift-chart_1.3.0_1778259431960_0.5107061436356708","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@arshad-shah/swift-chart","version":"1.3.1","description":"Lightning-fast, zero-dependency Canvas 2D charting library with React bindings. Schema-agnostic, themeable, animated.","publishConfig":{"access":"public"},"author":{"name":"Arshad Shah"},"license":"MIT","keywords":["chart","charts","charting","graph","canvas","react","visualization","data-viz","line-chart","bar-chart","pie-chart","donut-chart","radar-chart","scatter-chart","treemap","gauge","sparkline","waterfall","lightweight","fast"],"repository":{"type":"git","url":"git+https://github.com/arshad-shah/swiftchart.git"},"homepage":"https://swiftchart.arshadshah.com","bugs":{"url":"https://github.com/arshad-shah/swiftchart/issues"},"type":"module","main":"./dist/cjs/index.cjs","module":"./dist/esm/index.js","types":"./dist/esm/index.d.ts","exports":{".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/cjs/index.d.cts","default":"./dist/cjs/index.cjs"}},"./react":{"import":{"types":"./dist/esm/react/index.d.ts","default":"./dist/esm/react/index.js"},"require":{"types":"./dist/cjs/react/index.d.cts","default":"./dist/cjs/react/index.cjs"}},"./package.json":"./package.json"},"typesVersions":{"*":{"react":["./dist/esm/react/index.d.ts"]}},"sideEffects":false,"engines":{"node":"^20.0.0 || ^22.0.0 || >=24.0.0"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"devDependencies":{"@arethetypeswrong/cli":"^0.17.0","@changesets/changelog-github":"0.6.0","@changesets/cli":"2.31.0","@eslint/js":"^9.17.0","@size-limit/preset-small-lib":"^11.1.6","@testing-library/jest-dom":"^6.6.3","@testing-library/react":"^16.1.0","@types/node":"^25.6.2","@types/react":"^18.3.12","@types/react-dom":"^18.3.1","@typescript-eslint/eslint-plugin":"^8.18.0","@typescript-eslint/parser":"^8.18.0","@vitest/coverage-v8":"^4.1.5","canvas":"^3.2.3","eslint":"^9.17.0","eslint-plugin-react-hooks":"^5.1.0","globals":"^15.14.0","jsdom":"^29.1.1","publint":"^0.3.0","react":"^18.3.1","react-dom":"^18.3.1","size-limit":"^11.1.6","tsup":"^8.3.5","typescript":"^5.7.2","typescript-eslint":"^8.18.0","vitest":"^4.1.5"},"size-limit":[{"name":"tree-shaken: LineChart only","path":"dist/esm/index.js","import":"{ LineChart }","limit":"8.25 KB"},{"name":"tree-shaken: LineChart + BarChart","path":"dist/esm/index.js","import":"{ LineChart, BarChart }","limit":"8.75 KB"},{"name":"tree-shaken: 6 common charts","path":"dist/esm/index.js","import":"{ LineChart, BarChart, PieChart, ScatterChart, GaugeChart, RadarChart }","limit":"12 KB"},{"name":"full barrel (all 23 chart classes + helpers)","path":"dist/esm/index.js","limit":"23 KB"},{"name":"full react bundle","path":"dist/esm/react/index.js","limit":"23 KB"}],"volta":{"node":"24.15.0","pnpm":"10.33.2"},"scripts":{"build":"tsup","dev":"tsup --watch","test":"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage","test:ui":"vitest --ui","lint":"eslint src tests","typecheck":"tsc --noEmit","size":"size-limit","publint":"publint","attw":"node scripts/attw.mjs","validate":"pnpm run typecheck && pnpm run lint && pnpm run test && pnpm run build && pnpm run publint && pnpm run attw && pnpm run size","clean":"rm -rf dist coverage","changeset":"changeset","version-packages":"changeset version","release":"pnpm build && changeset publish"},"_id":"@arshad-shah/swift-chart@1.3.1","_integrity":"sha512-ii7ejV2SFFbEmFxEVYlCem+fL6G6KM3jFO/hh8cOTisuu0egitOxbvHUgYQU3/q62Erm4TsHWg77xaRzEqDtHA==","_resolved":"/tmp/5a2a04de50df2055aa93bc597039e37e/arshad-shah-swift-chart-1.3.1.tgz","_from":"file:arshad-shah-swift-chart-1.3.1.tgz","_nodeVersion":"20.20.2","_npmVersion":"11.18.0","dist":{"integrity":"sha512-ii7ejV2SFFbEmFxEVYlCem+fL6G6KM3jFO/hh8cOTisuu0egitOxbvHUgYQU3/q62Erm4TsHWg77xaRzEqDtHA==","shasum":"83feb19e3ae1974bd90d31e376543cf1799ee649","tarball":"https://registry.npmjs.org/@arshad-shah/swift-chart/-/swift-chart-1.3.1.tgz","fileCount":16,"unpackedSize":2645837,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@arshad-shah%2fswift-chart@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDCy+WEHpsQbq1FGiSfSh5uwEIpwU4e+b/5zi9ukug35AiEAzegDaQwPbkmEeNzrAkfPWcUOX7sLMCsXaf4d4HDX4qQ="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6e0ff9a0-4076-4042-8d9a-4f9afb396825"}},"directories":{},"maintainers":[{"name":"arshad-shah","email":"shaharshad57@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/swift-chart_1.3.1_1783115028384_0.9815073187194467"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-30T15:57:10.436Z","modified":"2026-07-03T21:43:48.869Z","1.0.0":"2026-04-30T15:57:10.758Z","1.1.0":"2026-05-01T14:34:35.282Z","1.2.0":"2026-05-06T12:19:20.088Z","1.2.1":"2026-05-06T12:35:43.709Z","1.3.0":"2026-05-08T16:57:12.119Z","1.3.1":"2026-07-03T21:43:48.609Z"},"bugs":{"url":"https://github.com/arshad-shah/swiftchart/issues"},"author":{"name":"Arshad Shah"},"license":"MIT","homepage":"https://swiftchart.arshadshah.com","keywords":["chart","charts","charting","graph","canvas","react","visualization","data-viz","line-chart","bar-chart","pie-chart","donut-chart","radar-chart","scatter-chart","treemap","gauge","sparkline","waterfall","lightweight","fast"],"repository":{"type":"git","url":"git+https://github.com/arshad-shah/swiftchart.git"},"description":"Lightning-fast, zero-dependency Canvas 2D charting library with React bindings. Schema-agnostic, themeable, animated.","maintainers":[{"name":"arshad-shah","email":"shaharshad57@gmail.com"}],"readme":"# SwiftChart\n\n**Lightning-fast, zero-dependency Canvas 2D charting library with first-class React bindings. 25 chart types, tree-shakeable, schema-agnostic, animated.**\n\n[![CI](https://github.com/arshad-shah/swiftchart/actions/workflows/ci.yml/badge.svg)](https://github.com/arshad-shah/swiftchart/actions/workflows/ci.yml)\n[![npm version](https://img.shields.io/npm/v/@arshad-shah/swift-chart?color=cb3837&logo=npm&logoColor=white)](https://www.npmjs.com/package/@arshad-shah/swift-chart)\n[![npm downloads](https://img.shields.io/npm/dm/@arshad-shah/swift-chart?logo=npm&logoColor=white)](https://www.npmjs.com/package/@arshad-shah/swift-chart)\n[![Bundle size](https://img.shields.io/bundlephobia/minzip/@arshad-shah/swift-chart?label=minzipped&color=4ade80)](https://bundlephobia.com/package/@arshad-shah/swift-chart)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![TypeScript](https://img.shields.io/badge/TypeScript-5.7+-3178c6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)\n\n📖 **[Full documentation, live previews, and API reference →](https://swiftchart.arshadshah.com)**\n\n```bash\nnpm install @arshad-shah/swift-chart\n```\n\n## Why SwiftChart?\n\n<table>\n  <thead>\n    <tr>\n      <th align=\"left\">&nbsp;</th>\n      <th align=\"left\">SwiftChart</th>\n      <th align=\"left\">Highcharts</th>\n      <th align=\"left\">Chart.js</th>\n      <th align=\"left\">Recharts</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <td><b>Bundle</b> (min+gzip)</td>\n      <td>~26&nbsp;KB</td>\n      <td>~32&nbsp;KB</td>\n      <td>~19&nbsp;KB</td>\n      <td>~95&nbsp;KB</td>\n    </tr>\n    <tr>\n      <td><b>Chart types</b></td>\n      <td>25</td>\n      <td>40+</td>\n      <td>8</td>\n      <td>14</td>\n    </tr>\n    <tr>\n      <td><b>Runtime deps</b></td>\n      <td>0</td>\n      <td>0</td>\n      <td>0</td>\n      <td>10+ (d3)</td>\n    </tr>\n    <tr>\n      <td><b>Renderer</b></td>\n      <td>Canvas&nbsp;2D</td>\n      <td>SVG&nbsp;/&nbsp;Canvas</td>\n      <td>Canvas</td>\n      <td>SVG</td>\n    </tr>\n    <tr>\n      <td><b>React bindings</b></td>\n      <td>First-class</td>\n      <td>3rd-party</td>\n      <td>3rd-party</td>\n      <td>Native</td>\n    </tr>\n    <tr>\n      <td><b>Data shape</b></td>\n      <td>Any</td>\n      <td>Fixed</td>\n      <td>Fixed</td>\n      <td>Fixed</td>\n    </tr>\n    <tr>\n      <td><b>License</b></td>\n      <td>MIT</td>\n      <td>Commercial</td>\n      <td>MIT</td>\n      <td>MIT</td>\n    </tr>\n  </tbody>\n</table>\n\n<sub>SwiftChart bundle size is measured from <code>dist/esm/index.js</code> at the current commit. Other libraries' figures are approximate min+gzip values from <a href=\"https://bundlephobia.com\">bundlephobia</a> for their current major versions.</sub>\n\n## Quick start\n\n### Vanilla JS\n\n```js\nimport { LineChart } from '@arshad-shah/swift-chart';\n\nconst chart = new LineChart('#my-chart', {\n  title: 'Revenue',\n  theme: 'midnight',\n  area: true,\n});\n\n// Pass any data shape — SwiftChart auto-detects fields.\nchart.setData(apiResponse, { x: 'date', y: 'revenue' });\n```\n\n### React\n\n```tsx\nimport { Line, Bar, Donut } from '@arshad-shah/swift-chart/react';\n\nfunction Dashboard() {\n  return (\n    <div style={{ display: 'grid', gap: 16 }}>\n      <Line\n        data={salesData}\n        mapping={{ x: 'month', y: ['revenue', 'target'] }}\n        theme=\"midnight\"\n        height={300}\n        area\n      />\n      <Bar\n        data={regionData}\n        mapping={{ x: 'region', y: 'sales' }}\n        theme=\"arctic\"\n        height={300}\n      />\n      <Donut\n        data={trafficData}\n        mapping={{ labelField: 'source', valueField: 'visits' }}\n        height={300}\n      />\n    </div>\n  );\n}\n```\n\n## Chart types\n\n25 chart types, grouped by family. Every entry is exported from both the vanilla entry (`@arshad-shah/swift-chart`) and the React entry (`@arshad-shah/swift-chart/react`).\n\n<table>\n  <thead><tr><th align=\"left\">Family</th><th align=\"left\">Charts</th></tr></thead>\n  <tbody>\n    <tr>\n      <td><b>Cartesian</b></td>\n      <td>\n        <code>Line</code> · <code>Area</code> · <code>Bar</code> · <code>HBar</code> ·\n        <code>StackedBar</code> · <code>StackedArea</code> · <code>Combo</code> ·\n        <code>Waterfall</code>\n      </td>\n    </tr>\n    <tr>\n      <td><b>Distribution</b></td>\n      <td><code>Scatter</code> · <code>Bubble</code> · <code>Boxplot</code> · <code>Heatmap</code></td>\n    </tr>\n    <tr>\n      <td><b>Part-of-whole</b></td>\n      <td>\n        <code>Pie</code> · <code>Donut</code> · <code>Treemap</code> · <code>Funnel</code> ·\n        <code>Marimekko</code>\n      </td>\n    </tr>\n    <tr>\n      <td><b>Polar</b></td>\n      <td><code>Radar</code> · <code>Gauge</code> · <code>RadialBar</code> · <code>Bullet</code></td>\n    </tr>\n    <tr>\n      <td><b>Financial</b></td>\n      <td><code>Candlestick</code></td>\n    </tr>\n    <tr>\n      <td><b>Graph</b></td>\n      <td><code>Sankey</code> · <code>Network</code></td>\n    </tr>\n    <tr>\n      <td><b>Inline</b></td>\n      <td><code>Sparkline</code></td>\n    </tr>\n  </tbody>\n</table>\n\nEach chart has its own **[catalogue page](https://swiftchart.arshadshah.com/charts/line/)** with a live preview, full prop list, and code samples for both vanilla and React.\n\n## Schema-agnostic data\n\nSwiftChart eats any shape of data:\n\n```js\n// 1. Auto-detect: string field → labels, number fields → series.\nchart.setData([\n  { month: 'Jan', sales: 420, cost: 280 },\n  { month: 'Feb', sales: 510, cost: 320 },\n]);\n\n// 2. Explicit mapping.\nchart.setData(data, {\n  x: 'timestamp',\n  y: ['metric_a', 'metric_b'],\n  seriesNames: ['CPU', 'Memory'],\n});\n\n// 3. Pre-built format (Chart.js-compatible).\nchart.setData([], {\n  labels: ['Q1', 'Q2', 'Q3'],\n  datasets: [{ label: 'Revenue', data: [100, 200, 350] }],\n});\n```\n\nSee **[Data mapping →](https://swiftchart.arshadshah.com/guides/data-mapping/)** for the full resolver, including `colorField` / `colorMap` for per-datum colours.\n\n## Themes\n\n4 built-in themes plus unlimited custom themes:\n\n```js\nimport { addTheme, LineChart } from '@arshad-shah/swift-chart';\n\n// Built-in: 'midnight' | 'arctic' | 'ember' | 'forest'\nnew LineChart(el, { theme: 'midnight' });\n\n// Custom theme\naddTheme('neon', {\n  bg: '#0a0a0f',\n  surface: '#111118',\n  grid: '#ffffff08',\n  text: '#e0e0ff',\n  textMuted: '#6060a0',\n  axis: '#2a2a4a',\n  colors: ['#ff00ff', '#00ffff', '#ffff00', '#ff6600'],\n});\n```\n\n`addTheme` is also re-exported from `@arshad-shah/swift-chart/react` so React-only consumers can register without importing the core entry.\n\nTooltip colours derive from the active theme automatically (light themes get a light tooltip). See **[Theming →](https://swiftchart.arshadshah.com/guides/theming/)**.\n\n## React refs and imperative control\n\n```tsx\nimport { useRef } from 'react';\nimport { Line, type ChartRef } from '@arshad-shah/swift-chart/react';\n\nfunction MyChart() {\n  const ref = useRef<ChartRef>(null);\n  return (\n    <>\n      <Line ref={ref} data={data} mapping={mapping} />\n      <button onClick={() => ref.current?.resize()}>Resize</button>\n      <button onClick={() => download(ref.current?.toDataURL())}>Save PNG</button>\n    </>\n  );\n}\n```\n\n## Click events / drill-down\n\nEvery chart's `onClick` (and the React `onPointClick` prop) receives a `ChartClickEvent` carrying the original row, the resolved series, the value, and the underlying `MouseEvent`:\n\n```tsx\n<Bar\n  data={orders}\n  mapping={{ x: 'region', y: 'revenue' }}\n  onPointClick={(_i, _d, e) => {\n    // e.datum   → original row from `orders`\n    // e.label   → 'NA' | 'EU' | …\n    // e.value   → numeric revenue\n    // e.nativeEvent.metaKey → ⌘ for \"open in new tab\" etc.\n    router.push(`/regions/${e.datum.id}`);\n  }}\n/>\n```\n\nTap-to-click on touch devices and Enter/Space/Arrow-key activation on focused interactive charts both fire the same handler — see **[Click events →](https://swiftchart.arshadshah.com/guides/click-events/)** and **[Accessibility →](https://swiftchart.arshadshah.com/guides/accessibility/)**.\n\n## Configuration\n\nAll charts accept these base options (chart-specific options are documented in each [catalogue page](https://swiftchart.arshadshah.com/charts/line/)):\n\n```ts\ninterface BaseChartConfig {\n  theme?: 'midnight' | 'arctic' | 'ember' | 'forest' | Theme;\n  animate?: boolean;           // default true (auto-disabled when prefers-reduced-motion is set)\n  animDuration?: number;       // default 600ms\n  animEasing?: EasingName;     // default 'easeOutCubic'\n  responsive?: boolean;        // default true (auto-resize via ResizeObserver)\n  padding?: Partial<Padding>;\n  showGrid?: boolean;          // default true\n  showTooltip?: boolean;       // default true\n  showLegend?: boolean;        // default true\n  legendPosition?: 'top' | 'bottom' | 'left' | 'right' | 'none'; // default 'top'\n  title?: string;\n  subtitle?: string;\n  formatValue?: (v: number) => string;\n  colorFn?: (value: number, dataIdx: number, seriesIdx: number) => string | undefined;\n  onClick?: (index: number, data: ResolvedData, event: ChartClickEvent) => void;\n  ariaLabel?: string;\n  ariaDescription?: string;\n  tooltipContainer?: HTMLElement; // portal target — defaults to chart container / shadow root\n}\n```\n\n## Browser support\n\nCanvas 2D + ResizeObserver: Chrome 64+, Firefox 69+, Safari 13.1+, Edge 79+.\n\nCharts work inside **Shadow DOM** (web components), **modals/popovers** (the tooltip stays in the chart's stacking context), and behind **`overflow:auto`** scroll containers (scroll on any ancestor hides the tooltip cleanly).\n\n## Local development\n\n```bash\npnpm install\npnpm test           # run the test suite (1000+ tests)\npnpm validate       # full CI chain: typecheck + lint + test + build + publint + attw + size\npnpm --filter swiftchart-docs dev   # run the docs site locally\n```\n\n## License\n\nMIT © Arshad Shah\n","readmeFilename":"README.md"}