{"_id":"@aforoai/storefront-widgets","_rev":"11-2c44ca302ae9b353e0e5d2fa870abd0b","name":"@aforoai/storefront-widgets","dist-tags":{"latest":"1.0.15"},"versions":{"1.0.1":{"name":"@aforoai/storefront-widgets","version":"1.0.1","keywords":["aforo","billing","subscriptions","embed","widget","stripe","razorpay","paypal","pricing-card","invoice","checkout","saas-billing","react","vue"],"license":"MIT","_id":"@aforoai/storefront-widgets@1.0.1","maintainers":[{"name":"aforoai","email":"eswarprasad@aforo.ai"}],"homepage":"https://docs.aforo.ai/docs/embed-quickstart","bugs":{"url":"https://github.com/aforoai/aforo-nextgen-UI/issues"},"dist":{"shasum":"e926891c9538e1524750f2a8c89825aa721da291","tarball":"https://registry.npmjs.org/@aforoai/storefront-widgets/-/storefront-widgets-1.0.1.tgz","fileCount":33,"integrity":"sha512-rKGoVvfiFfTbzn6OxQFUrRnx5Wck2FyD6BvMwJfymU1KUdjPBqnGcSajt6otNSXDgqj+52uySGdkYJaGs072PQ==","signatures":[{"sig":"MEQCIHsI21WVoELq/HqfpCuxbQuSeD4tOLbsrkqqBBiskAsJAiBIswn9r+X7COUMLMtSYiclyG56NpLh1toJzn2VbzTNbA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4496217},"main":"./dist/index.cjs","type":"module","_from":"file:aforoai-storefront-widgets-1.0.1.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue/index.d.ts","import":"./dist/vue/index.mjs","require":"./dist/vue/index.cjs"},"./loader":{"types":"./dist/loader.d.ts","import":"./dist/loader.mjs","require":"./dist/loader.cjs"},"./vanilla":{"types":"./dist/vanilla/index.d.ts","import":"./dist/vanilla/index.mjs","require":"./dist/vanilla/index.cjs"}},"private":false,"scripts":{"dev":"tsup --watch","sri":"node scripts/sri.mjs","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","verify:publish":"npm pack --dry-run","build:check-size":"node scripts/check-size.mjs"},"_npmUser":{"name":"aforoai","email":"eswarprasad@aforo.ai"},"_resolved":"/tmp/c7a1ec53a7403112463b624f88b81a23/aforoai-storefront-widgets-1.0.1.tgz","_integrity":"sha512-rKGoVvfiFfTbzn6OxQFUrRnx5Wck2FyD6BvMwJfymU1KUdjPBqnGcSajt6otNSXDgqj+52uySGdkYJaGs072PQ==","repository":{"url":"git+https://github.com/aforoai/aforo-nextgen-UI.git","type":"git","directory":"packages/storefront-widgets"},"_npmVersion":"10.8.2","description":"Embeddable widgets for Aforo's storefront — pricing card, subscribe button, invoice list, and embedded checkout. Drop into any HTML page, React app, or Vue app to add Aforo billing surfaces with your own branding. Three integration tiers: script tag, npm,","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","dependencies":{"@aforoai/types":"0.1.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.0","tsup":"^8.0.0","react":"^18.2.0","vitest":"^1.6.0","axe-core":"^4.10.0","happy-dom":"^14.0.0","react-dom":"^18.2.0","typescript":"^5.4.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vue/runtime-dom":"^3.4.0","@testing-library/react":"^14.2.0","@testing-library/jest-dom":"^6.4.0"},"peerDependencies":{"react":">=18","react-dom":">=18"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/storefront-widgets_1.0.1_1785997553798_0.39369072532849536","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@aforoai/storefront-widgets","version":"1.0.2","keywords":["aforo","billing","subscriptions","embed","widget","stripe","razorpay","paypal","pricing-card","invoice","checkout","saas-billing","react","vue"],"license":"MIT","_id":"@aforoai/storefront-widgets@1.0.2","maintainers":[{"name":"aforoai","email":"eswarprasad@aforo.ai"}],"homepage":"https://docs.aforo.ai/docs/embed-quickstart","bugs":{"url":"https://github.com/aforoai/aforo-nextgen-UI/issues"},"dist":{"shasum":"79d87e39781d5613c7c0e18f820493160152dce4","tarball":"https://registry.npmjs.org/@aforoai/storefront-widgets/-/storefront-widgets-1.0.2.tgz","fileCount":33,"integrity":"sha512-3wDrz/mkkrbvwldkqLoxqLpIOXK9KFikWaL59b8K3fS7wKyqRgcAUZCCxoTMpBd4gzQQu0R/1xST/yWNmedHSQ==","signatures":[{"sig":"MEUCIGClvEIQF9XVVjyQrNokyhlCD+wNCyvmHkyp6WBjdGs0AiEAjxulB9CE4rD4X/Xvjr7xZmyOHh0F0lmQM4zAVWheWZ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4496193},"main":"./dist/index.cjs","type":"module","_from":"file:aforoai-storefront-widgets-1.0.2.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue/index.d.ts","import":"./dist/vue/index.mjs","require":"./dist/vue/index.cjs"},"./loader":{"types":"./dist/loader.d.ts","import":"./dist/loader.mjs","require":"./dist/loader.cjs"},"./vanilla":{"types":"./dist/vanilla/index.d.ts","import":"./dist/vanilla/index.mjs","require":"./dist/vanilla/index.cjs"}},"private":false,"scripts":{"dev":"tsup --watch","sri":"node scripts/sri.mjs","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","verify:publish":"npm pack --dry-run","build:check-size":"node scripts/check-size.mjs"},"_npmUser":{"name":"aforoai","email":"eswarprasad@aforo.ai"},"_resolved":"/tmp/9b8bc64e3d937f9428c8f504ea440f67/aforoai-storefront-widgets-1.0.2.tgz","_integrity":"sha512-3wDrz/mkkrbvwldkqLoxqLpIOXK9KFikWaL59b8K3fS7wKyqRgcAUZCCxoTMpBd4gzQQu0R/1xST/yWNmedHSQ==","repository":{"url":"git+https://github.com/aforoai/aforo-nextgen-UI.git","type":"git","directory":"packages/storefront-widgets"},"_npmVersion":"10.8.2","description":"Embeddable widgets for Aforo's storefront — pricing card, subscribe button, invoice list, and embedded checkout. Drop into any HTML page, React app, or Vue app to add Aforo billing surfaces with your own branding. Three integration tiers: script tag, npm,","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.0","tsup":"^8.0.0","react":"^18.2.0","vitest":"^1.6.0","axe-core":"^4.10.0","happy-dom":"^14.0.0","react-dom":"^18.2.0","typescript":"^5.4.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@aforoai/types":"0.1.0","@types/react-dom":"^18.2.0","@vue/runtime-dom":"^3.4.0","@testing-library/react":"^14.2.0","@testing-library/jest-dom":"^6.4.0"},"peerDependencies":{"react":">=18","react-dom":">=18"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/storefront-widgets_1.0.2_1785997961430_0.39210525753247927","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@aforoai/storefront-widgets","version":"1.0.3","keywords":["aforo","billing","subscriptions","embed","widget","stripe","razorpay","paypal","pricing-card","invoice","checkout","saas-billing","react","vue"],"license":"MIT","_id":"@aforoai/storefront-widgets@1.0.3","maintainers":[{"name":"aforoai","email":"eswarprasad@aforo.ai"}],"homepage":"https://docs.aforo.ai/docs/embed-quickstart","bugs":{"url":"https://github.com/aforoai/aforo-nextgen-UI/issues"},"dist":{"shasum":"93c7efa8fb926b8c4cc5995e77d0027426f84835","tarball":"https://registry.npmjs.org/@aforoai/storefront-widgets/-/storefront-widgets-1.0.3.tgz","fileCount":33,"integrity":"sha512-khzFRQLmbBcE6IS6SnCVYcF8HJStrwbj7Tn2KiH+SGPJPDQNWHXodgXc9EN3557ul8kAGqG65O92I7HkEvc8TA==","signatures":[{"sig":"MEQCIBTedS4644wSg5BuetyxCqB0XI2pcGBEo5LyA/viyyVuAiAon51FOnXS8slyHGgxO2xcU0IkXCu+9MQDHyKQMYdTXw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4497062},"main":"./dist/index.cjs","type":"module","_from":"file:aforoai-storefront-widgets-1.0.3.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue/index.d.ts","import":"./dist/vue/index.mjs","require":"./dist/vue/index.cjs"},"./loader":{"import":"./dist/loader.mjs"},"./vanilla":{"types":"./dist/vanilla/index.d.ts","import":"./dist/vanilla/index.mjs","require":"./dist/vanilla/index.cjs"}},"private":false,"scripts":{"dev":"tsup --watch","sri":"node scripts/sri.mjs","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","verify:publish":"npm pack --dry-run","build:check-size":"node scripts/check-size.mjs"},"_npmUser":{"name":"aforoai","email":"eswarprasad@aforo.ai"},"_resolved":"/tmp/47c096d16e8772bfa50c8be8355133c7/aforoai-storefront-widgets-1.0.3.tgz","_integrity":"sha512-khzFRQLmbBcE6IS6SnCVYcF8HJStrwbj7Tn2KiH+SGPJPDQNWHXodgXc9EN3557ul8kAGqG65O92I7HkEvc8TA==","repository":{"url":"git+https://github.com/aforoai/aforo-nextgen-UI.git","type":"git","directory":"packages/storefront-widgets"},"_npmVersion":"10.8.2","description":"Embeddable widgets for Aforo's storefront — pricing card, subscribe button, invoice list, and embedded checkout. Drop into any HTML page, React app, or Vue app to add Aforo billing surfaces with your own branding. Three integration tiers: script tag, npm,","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.0","tsup":"^8.0.0","react":"^18.2.0","vitest":"^1.6.0","axe-core":"^4.10.0","happy-dom":"^14.0.0","react-dom":"^18.2.0","typescript":"^5.4.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@aforoai/types":"0.1.0","@types/react-dom":"^18.2.0","@vue/runtime-dom":"^3.4.0","@testing-library/react":"^14.2.0","@testing-library/jest-dom":"^6.4.0"},"peerDependencies":{"react":">=18","react-dom":">=18"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/storefront-widgets_1.0.3_1786010748746_0.589013496598308","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@aforoai/storefront-widgets","version":"1.0.4","keywords":["aforo","billing","subscriptions","embed","widget","stripe","razorpay","paypal","pricing-card","invoice","checkout","saas-billing","react","vue"],"license":"MIT","_id":"@aforoai/storefront-widgets@1.0.4","maintainers":[{"name":"aforoai","email":"eswarprasad@aforo.ai"}],"homepage":"https://docs.aforo.ai/docs/embed-quickstart","bugs":{"url":"https://github.com/aforoai/aforo-nextgen-UI/issues"},"dist":{"shasum":"fc6c675e1e92b0dacd27b4b4795b2c461bae5e1a","tarball":"https://registry.npmjs.org/@aforoai/storefront-widgets/-/storefront-widgets-1.0.4.tgz","fileCount":33,"integrity":"sha512-gF2Lo/kurtjqvObmI7lLOu5kgK942bKBRJ0XuWDK9TRPo4E4Gkjvzy3Ta9EXFkYWI3zvMqqnV8SYOz6pgLOxVQ==","signatures":[{"sig":"MEUCIQDDuUdOjE2LZYwCEw/2QEQT2dt3+utGv90hIIrb5gFshQIgEVBfXGW+IZDhQwsigICuapk3uxCOlEhTccv/0CAUwoU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4508822},"main":"./dist/index.cjs","type":"module","_from":"file:aforoai-storefront-widgets-1.0.4.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue/index.d.ts","import":"./dist/vue/index.mjs","require":"./dist/vue/index.cjs"},"./loader":{"import":"./dist/loader.mjs"},"./vanilla":{"types":"./dist/vanilla/index.d.ts","import":"./dist/vanilla/index.mjs","require":"./dist/vanilla/index.cjs"}},"private":false,"scripts":{"dev":"tsup --watch","sri":"node scripts/sri.mjs","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","verify:publish":"npm pack --dry-run","build:check-size":"node scripts/check-size.mjs"},"_npmUser":{"name":"aforoai","email":"eswarprasad@aforo.ai"},"_resolved":"/tmp/f7a0087488286d7257e02d52c67f6f72/aforoai-storefront-widgets-1.0.4.tgz","_integrity":"sha512-gF2Lo/kurtjqvObmI7lLOu5kgK942bKBRJ0XuWDK9TRPo4E4Gkjvzy3Ta9EXFkYWI3zvMqqnV8SYOz6pgLOxVQ==","repository":{"url":"git+https://github.com/aforoai/aforo-nextgen-UI.git","type":"git","directory":"packages/storefront-widgets"},"_npmVersion":"10.8.2","description":"Embeddable widgets for Aforo's storefront — pricing card, subscribe button, invoice list, and embedded checkout. Drop into any HTML page, React app, or Vue app to add Aforo billing surfaces with your own branding. Three integration tiers: script tag, npm,","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.0","tsup":"^8.0.0","react":"^18.2.0","vitest":"^1.6.0","axe-core":"^4.10.0","happy-dom":"^14.0.0","react-dom":"^18.2.0","typescript":"^5.4.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@aforoai/types":"0.1.0","@types/react-dom":"^18.2.0","@vue/runtime-dom":"^3.4.0","@testing-library/react":"^14.2.0","@testing-library/jest-dom":"^6.4.0"},"peerDependencies":{"react":">=18","react-dom":">=18"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/storefront-widgets_1.0.4_1786520528737_0.05312588642261229","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@aforoai/storefront-widgets","version":"1.0.5","keywords":["aforo","billing","subscriptions","embed","widget","stripe","razorpay","paypal","pricing-card","invoice","checkout","saas-billing","react","vue"],"license":"MIT","_id":"@aforoai/storefront-widgets@1.0.5","maintainers":[{"name":"aforoai","email":"eswarprasad@aforo.ai"}],"homepage":"https://docs.aforo.ai/docs/embed-quickstart","bugs":{"url":"https://github.com/aforoai/aforo-nextgen-UI/issues"},"dist":{"shasum":"7ffe386350489b3f6b6d43b3fc3ed3aae68e715d","tarball":"https://registry.npmjs.org/@aforoai/storefront-widgets/-/storefront-widgets-1.0.5.tgz","fileCount":33,"integrity":"sha512-DSIqz0MG7qyydqFdAUMnZVCntLaUtCAhePW346eJ2lPdy58E581LlSCmIOGod59KS4HX+3bZPDoRvXvWQM26dw==","signatures":[{"sig":"MEUCIB/xVdDvDk3x5P2SXBRoKasXzl8y/YwP4z03KEGIbbykAiEAwxLW64n34VdbmXiZM+BFCmP5qLUIAV8RnEjwVuvfBUw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4518885},"main":"./dist/index.cjs","type":"module","_from":"file:aforoai-storefront-widgets-1.0.5.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue/index.d.ts","import":"./dist/vue/index.mjs","require":"./dist/vue/index.cjs"},"./loader":{"import":"./dist/loader.mjs"},"./vanilla":{"types":"./dist/vanilla/index.d.ts","import":"./dist/vanilla/index.mjs","require":"./dist/vanilla/index.cjs"}},"private":false,"scripts":{"dev":"tsup --watch","sri":"node scripts/sri.mjs","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","verify:publish":"npm pack --dry-run","build:check-size":"node scripts/check-size.mjs"},"_npmUser":{"name":"aforoai","email":"eswarprasad@aforo.ai"},"_resolved":"/tmp/95691c7669e8eed2b20ddc3c9d60f43e/aforoai-storefront-widgets-1.0.5.tgz","_integrity":"sha512-DSIqz0MG7qyydqFdAUMnZVCntLaUtCAhePW346eJ2lPdy58E581LlSCmIOGod59KS4HX+3bZPDoRvXvWQM26dw==","repository":{"url":"git+https://github.com/aforoai/aforo-nextgen-UI.git","type":"git","directory":"packages/storefront-widgets"},"_npmVersion":"10.8.2","description":"Embeddable widgets for Aforo's storefront — pricing card, subscribe button, invoice list, and embedded checkout. Drop into any HTML page, React app, or Vue app to add Aforo billing surfaces with your own branding. Three integration tiers: script tag, npm,","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.0","tsup":"^8.0.0","react":"^18.2.0","vitest":"^1.6.0","axe-core":"^4.10.0","happy-dom":"^14.0.0","react-dom":"^18.2.0","typescript":"^5.4.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@aforoai/types":"0.1.0","@types/react-dom":"^18.2.0","@vue/runtime-dom":"^3.4.0","@testing-library/react":"^14.2.0","@testing-library/jest-dom":"^6.4.0"},"peerDependencies":{"react":">=18","react-dom":">=18"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/storefront-widgets_1.0.5_1787730774279_0.9361584951142454","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@aforoai/storefront-widgets","version":"1.0.6","keywords":["aforo","billing","subscriptions","embed","widget","stripe","razorpay","paypal","pricing-card","invoice","checkout","saas-billing","react","vue"],"license":"MIT","_id":"@aforoai/storefront-widgets@1.0.6","maintainers":[{"name":"aforoai","email":"eswarprasad@aforo.ai"}],"homepage":"https://docs.aforo.ai/docs/embed-quickstart","bugs":{"url":"https://github.com/aforoai/aforo-nextgen-UI/issues"},"dist":{"shasum":"8f610c78c2d09ed91c1c8b8fe2672522af82c585","tarball":"https://registry.npmjs.org/@aforoai/storefront-widgets/-/storefront-widgets-1.0.6.tgz","fileCount":33,"integrity":"sha512-Z9xyljJIS3eQ5WeR+tnVIrXP7VEtE/044I1CysMSibIoLMHOoioRyHH1YrKQYjFIP1WYR0k40TGy6iumpVURZw==","signatures":[{"sig":"MEQCICY41kALoFD6M+BOAk99tZdbtNoyzFmqkyr0VkX5D6n8AiAU71SfF6XKizTW1KKkAchQe1voTwhOpSjLowOlogt8QQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4524917},"main":"./dist/index.cjs","type":"module","_from":"file:aforoai-storefront-widgets-1.0.6.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue/index.d.ts","import":"./dist/vue/index.mjs","require":"./dist/vue/index.cjs"},"./loader":{"import":"./dist/loader.mjs"},"./vanilla":{"types":"./dist/vanilla/index.d.ts","import":"./dist/vanilla/index.mjs","require":"./dist/vanilla/index.cjs"}},"private":false,"scripts":{"dev":"tsup --watch","sri":"node scripts/sri.mjs","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","verify:publish":"npm pack --dry-run","build:check-size":"node scripts/check-size.mjs"},"_npmUser":{"name":"aforoai","email":"eswarprasad@aforo.ai"},"_resolved":"/tmp/2a2ce13b96e803ae0afb832083b26d86/aforoai-storefront-widgets-1.0.6.tgz","_integrity":"sha512-Z9xyljJIS3eQ5WeR+tnVIrXP7VEtE/044I1CysMSibIoLMHOoioRyHH1YrKQYjFIP1WYR0k40TGy6iumpVURZw==","repository":{"url":"git+https://github.com/aforoai/aforo-nextgen-UI.git","type":"git","directory":"packages/storefront-widgets"},"_npmVersion":"10.8.2","description":"Embeddable widgets for Aforo's storefront — pricing card, subscribe button, invoice list, and embedded checkout. Drop into any HTML page, React app, or Vue app to add Aforo billing surfaces with your own branding. Three integration tiers: script tag, npm,","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.0","tsup":"^8.0.0","react":"^18.2.0","vitest":"^1.6.0","axe-core":"^4.10.0","happy-dom":"^14.0.0","react-dom":"^18.2.0","typescript":"^5.4.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@aforoai/types":"0.1.0","@types/react-dom":"^18.2.0","@vue/runtime-dom":"^3.4.0","@testing-library/react":"^14.2.0","@testing-library/jest-dom":"^6.4.0"},"peerDependencies":{"react":">=18","react-dom":">=18"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/storefront-widgets_1.0.6_1787732758213_0.4716806562394169","host":"s3://npm-registry-packages-npm-production"}},"1.0.11":{"name":"@aforoai/storefront-widgets","version":"1.0.11","keywords":["aforo","billing","subscriptions","embed","widget","stripe","razorpay","paypal","pricing-card","invoice","checkout","saas-billing","react","vue"],"license":"MIT","_id":"@aforoai/storefront-widgets@1.0.11","maintainers":[{"name":"aforoai","email":"eswarprasad@aforo.ai"}],"homepage":"https://docs.aforo.ai/docs/embed-quickstart","bugs":{"url":"https://github.com/aforoai/aforo-nextgen-UI/issues"},"dist":{"shasum":"8ca43702a9bbcf6f81cce99bb8c19c04e9e2eccd","tarball":"https://registry.npmjs.org/@aforoai/storefront-widgets/-/storefront-widgets-1.0.11.tgz","fileCount":33,"integrity":"sha512-pvdyZCuEkVGNyGUNSBqtgtUcls6xVrCRS278qxnopLD+P0UMD4xwdFaK9N9kX8FbEavBH3SNUvAvNxDzgxLMJA==","signatures":[{"sig":"MEUCIQCwOjPn+JsUKM1OqpWenny2OhqS4Nod48pGqT3Dl8jlmQIgIUO3JnRrnbOFeB9KuRs/GYxErsABYVA5qFf8068O7EY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4539650},"main":"./dist/index.cjs","type":"module","_from":"file:aforoai-storefront-widgets-1.0.11.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue/index.d.ts","import":"./dist/vue/index.mjs","require":"./dist/vue/index.cjs"},"./loader":{"import":"./dist/loader.mjs"},"./vanilla":{"types":"./dist/vanilla/index.d.ts","import":"./dist/vanilla/index.mjs","require":"./dist/vanilla/index.cjs"}},"private":false,"scripts":{"dev":"tsup --watch","sri":"node scripts/sri.mjs","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","verify:publish":"npm pack --dry-run","build:check-size":"node scripts/check-size.mjs"},"_npmUser":{"name":"aforoai","email":"eswarprasad@aforo.ai"},"_resolved":"/tmp/0a530ee17ce31c006bb7184f18cbe9b5/aforoai-storefront-widgets-1.0.11.tgz","_integrity":"sha512-pvdyZCuEkVGNyGUNSBqtgtUcls6xVrCRS278qxnopLD+P0UMD4xwdFaK9N9kX8FbEavBH3SNUvAvNxDzgxLMJA==","repository":{"url":"git+https://github.com/aforoai/aforo-nextgen-UI.git","type":"git","directory":"packages/storefront-widgets"},"_npmVersion":"10.8.2","description":"Embeddable widgets for Aforo's storefront — pricing card, subscribe button, invoice list, and embedded checkout. Drop into any HTML page, React app, or Vue app to add Aforo billing surfaces with your own branding. Three integration tiers: script tag, npm,","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.0","tsup":"^8.0.0","react":"^18.2.0","vitest":"^1.6.0","axe-core":"^4.10.0","happy-dom":"^14.0.0","react-dom":"^18.2.0","typescript":"^5.4.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@aforoai/types":"0.1.0","@types/react-dom":"^18.2.0","@vue/runtime-dom":"^3.4.0","@testing-library/react":"^14.2.0","@testing-library/jest-dom":"^6.4.0"},"peerDependencies":{"react":">=18","react-dom":">=18"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/storefront-widgets_1.0.11_1788073063852_0.9326414137842489","host":"s3://npm-registry-packages-npm-production"}},"1.0.12":{"name":"@aforoai/storefront-widgets","version":"1.0.12","keywords":["aforo","billing","subscriptions","embed","widget","stripe","razorpay","paypal","pricing-card","invoice","checkout","saas-billing","react","vue"],"license":"MIT","_id":"@aforoai/storefront-widgets@1.0.12","maintainers":[{"name":"aforoai","email":"eswarprasad@aforo.ai"}],"homepage":"https://docs.aforo.ai/docs/embed-quickstart","bugs":{"url":"https://github.com/aforoai/aforo-nextgen-UI/issues"},"dist":{"shasum":"ba47498e915b1b0d9b25c28df632ec838f678e4f","tarball":"https://registry.npmjs.org/@aforoai/storefront-widgets/-/storefront-widgets-1.0.12.tgz","fileCount":33,"integrity":"sha512-K2XEo2yaVsLeyFJEBWHyGdQWPmyG38YLLaKObB/HzWWgb0xn2ZuhoZKVfQlHu0uJzOIhFg29Jv1oG/avHp+fbg==","signatures":[{"sig":"MEUCIFwFrhhUA4X5yfPE4SLcDSIRsP1k2y/LjXLYvEkXTZPyAiEAjk85UB/1zpmtnyzqye9Qzln30aAnnHomg4QLLIf3Jek=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4541112},"main":"./dist/index.cjs","type":"module","_from":"file:aforoai-storefront-widgets-1.0.12.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue/index.d.ts","import":"./dist/vue/index.mjs","require":"./dist/vue/index.cjs"},"./loader":{"import":"./dist/loader.mjs"},"./vanilla":{"types":"./dist/vanilla/index.d.ts","import":"./dist/vanilla/index.mjs","require":"./dist/vanilla/index.cjs"}},"private":false,"scripts":{"dev":"tsup --watch","sri":"node scripts/sri.mjs","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","verify:publish":"npm pack --dry-run","build:check-size":"node scripts/check-size.mjs"},"_npmUser":{"name":"aforoai","email":"eswarprasad@aforo.ai"},"_resolved":"/tmp/0dec2e0b80d330e6203fe66672fad64c/aforoai-storefront-widgets-1.0.12.tgz","_integrity":"sha512-K2XEo2yaVsLeyFJEBWHyGdQWPmyG38YLLaKObB/HzWWgb0xn2ZuhoZKVfQlHu0uJzOIhFg29Jv1oG/avHp+fbg==","repository":{"url":"git+https://github.com/aforoai/aforo-nextgen-UI.git","type":"git","directory":"packages/storefront-widgets"},"_npmVersion":"10.8.2","description":"Embeddable widgets for Aforo's storefront — pricing card, subscribe button, invoice list, and embedded checkout. Drop into any HTML page, React app, or Vue app to add Aforo billing surfaces with your own branding. Three integration tiers: script tag, npm,","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.0","tsup":"^8.0.0","react":"^18.2.0","vitest":"^1.6.0","axe-core":"^4.10.0","happy-dom":"^14.0.0","react-dom":"^18.2.0","typescript":"^5.4.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@aforoai/types":"0.1.0","@types/react-dom":"^18.2.0","@vue/runtime-dom":"^3.4.0","@testing-library/react":"^14.2.0","@testing-library/jest-dom":"^6.4.0"},"peerDependencies":{"react":">=18","react-dom":">=18"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/storefront-widgets_1.0.12_1788079471254_0.384144819352245","host":"s3://npm-registry-packages-npm-production"}},"1.0.13":{"name":"@aforoai/storefront-widgets","version":"1.0.13","keywords":["aforo","billing","subscriptions","embed","widget","stripe","razorpay","paypal","pricing-card","invoice","checkout","saas-billing","react","vue"],"license":"MIT","_id":"@aforoai/storefront-widgets@1.0.13","maintainers":[{"name":"aforoai","email":"eswarprasad@aforo.ai"}],"homepage":"https://docs.aforo.ai/docs/embed-quickstart","bugs":{"url":"https://github.com/aforoai/aforo-nextgen-UI/issues"},"dist":{"shasum":"8e944f81104dc1da72b144c914051d3372b7f661","tarball":"https://registry.npmjs.org/@aforoai/storefront-widgets/-/storefront-widgets-1.0.13.tgz","fileCount":33,"integrity":"sha512-5Mm2t4jx4fYaeNkOufUYDwo+ixzFjAZO+vg63IHhAhIyKM7ODiapW3a+XVo4M6ml9uY1TJcu+0bztErAHXpwrg==","signatures":[{"sig":"MEYCIQDLk9atKIzthXv5xgLe1kETHkA4oH4TVlMVJt2QYO3CrwIhALrKWenf3maVq8g3K0COhm/55x1GoYuijZIpgBErRSI2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4604884},"main":"./dist/index.cjs","type":"module","_from":"file:aforoai-storefront-widgets-1.0.13.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue/index.d.ts","import":"./dist/vue/index.mjs","require":"./dist/vue/index.cjs"},"./loader":{"import":"./dist/loader.mjs"},"./vanilla":{"types":"./dist/vanilla/index.d.ts","import":"./dist/vanilla/index.mjs","require":"./dist/vanilla/index.cjs"}},"private":false,"scripts":{"dev":"tsup --watch","sri":"node scripts/sri.mjs","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","verify:publish":"npm pack --dry-run","build:check-size":"node scripts/check-size.mjs"},"_npmUser":{"name":"aforoai","email":"eswarprasad@aforo.ai"},"_resolved":"/tmp/b221e01a068ab35146fcee19c04f7ddc/aforoai-storefront-widgets-1.0.13.tgz","_integrity":"sha512-5Mm2t4jx4fYaeNkOufUYDwo+ixzFjAZO+vg63IHhAhIyKM7ODiapW3a+XVo4M6ml9uY1TJcu+0bztErAHXpwrg==","repository":{"url":"git+https://github.com/aforoai/aforo-nextgen-UI.git","type":"git","directory":"packages/storefront-widgets"},"_npmVersion":"10.8.2","description":"Embeddable widgets for Aforo's storefront — pricing card, subscribe button, invoice list, and embedded checkout. Drop into any HTML page, React app, or Vue app to add Aforo billing surfaces with your own branding. Three integration tiers: script tag, npm,","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.0","tsup":"^8.0.0","react":"^18.2.0","vitest":"^1.6.0","axe-core":"^4.10.0","happy-dom":"^14.0.0","react-dom":"^18.2.0","typescript":"^5.4.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@aforoai/types":"0.1.0","@types/react-dom":"^18.2.0","@vue/runtime-dom":"^3.4.0","@testing-library/react":"^14.2.0","@testing-library/jest-dom":"^6.4.0"},"peerDependencies":{"react":">=18","react-dom":">=18"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/storefront-widgets_1.0.13_1789466284378_0.8701989827577097","host":"s3://npm-registry-packages-npm-production"}},"1.0.14":{"name":"@aforoai/storefront-widgets","version":"1.0.14","keywords":["aforo","billing","subscriptions","embed","widget","stripe","razorpay","paypal","pricing-card","invoice","checkout","saas-billing","react","vue"],"license":"MIT","_id":"@aforoai/storefront-widgets@1.0.14","maintainers":[{"name":"aforoai","email":"eswarprasad@aforo.ai"}],"homepage":"https://docs.aforo.ai/docs/embed-quickstart","bugs":{"url":"https://github.com/aforoai/aforo-nextgen-UI/issues"},"dist":{"shasum":"2114a94ca663a142b9e40f9b18848dabf005ed29","tarball":"https://registry.npmjs.org/@aforoai/storefront-widgets/-/storefront-widgets-1.0.14.tgz","fileCount":33,"integrity":"sha512-LZhsv/ebl659xw99YsjKUB0EWGf6R5+nONmca3GewzN3E5sUf6CWNTKOjt9DcUt4FI6oSMIEqOaKFLFwplzJlA==","signatures":[{"sig":"MEUCIQCQqHiHYulIWemQPbI/yY3I2OZ32XutHS9bTjjgzL3daQIgPMi7VxJO4gmK7pP/Z1pXyE+KGhnEIWuUBOOao2AWiJ0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4609182},"main":"./dist/index.cjs","type":"module","_from":"file:aforoai-storefront-widgets-1.0.14.tgz","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue/index.d.ts","import":"./dist/vue/index.mjs","require":"./dist/vue/index.cjs"},"./loader":{"import":"./dist/loader.mjs"},"./vanilla":{"types":"./dist/vanilla/index.d.ts","import":"./dist/vanilla/index.mjs","require":"./dist/vanilla/index.cjs"}},"private":false,"scripts":{"dev":"tsup --watch","sri":"node scripts/sri.mjs","test":"vitest run","build":"tsup","typecheck":"tsc --noEmit","test:watch":"vitest","verify:publish":"npm pack --dry-run","build:check-size":"node scripts/check-size.mjs"},"_npmUser":{"name":"aforoai","email":"eswarprasad@aforo.ai"},"_resolved":"/tmp/b19fc268fa38af96b9877afd71d0d6ab/aforoai-storefront-widgets-1.0.14.tgz","_integrity":"sha512-LZhsv/ebl659xw99YsjKUB0EWGf6R5+nONmca3GewzN3E5sUf6CWNTKOjt9DcUt4FI6oSMIEqOaKFLFwplzJlA==","repository":{"url":"git+https://github.com/aforoai/aforo-nextgen-UI.git","type":"git","directory":"packages/storefront-widgets"},"_npmVersion":"10.8.2","description":"Embeddable widgets for Aforo's storefront — pricing card, subscribe button, invoice list, and embedded checkout. Drop into any HTML page, React app, or Vue app to add Aforo billing surfaces with your own branding. Three integration tiers: script tag, npm,","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.4.0","tsup":"^8.0.0","react":"^18.2.0","vitest":"^1.6.0","axe-core":"^4.10.0","happy-dom":"^14.0.0","react-dom":"^18.2.0","typescript":"^5.4.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@aforoai/types":"0.1.0","@types/react-dom":"^18.2.0","@vue/runtime-dom":"^3.4.0","@testing-library/react":"^14.2.0","@testing-library/jest-dom":"^6.4.0"},"peerDependencies":{"react":">=18","react-dom":">=18"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/storefront-widgets_1.0.14_1789470337670_0.398057233232777","host":"s3://npm-registry-packages-npm-production"}},"1.0.15":{"name":"@aforoai/storefront-widgets","version":"1.0.15","type":"module","description":"Embeddable widgets for Aforo's storefront — pricing card, subscribe button, invoice list, and embedded checkout. Drop into any HTML page, React app, or Vue app to add Aforo billing surfaces with your own branding. Three integration tiers: script tag, npm,","license":"MIT","private":false,"publishConfig":{"access":"public","provenance":false,"registry":"https://registry.npmjs.org/"},"homepage":"https://docs.aforo.ai/docs/embed-quickstart","repository":{"type":"git","url":"git+https://github.com/aforoai/aforo-nextgen-UI.git","directory":"packages/storefront-widgets"},"bugs":{"url":"https://github.com/aforoai/aforo-nextgen-UI/issues"},"keywords":["aforo","billing","subscriptions","embed","widget","stripe","razorpay","paypal","pricing-card","invoice","checkout","saas-billing","react","vue"],"main":"./dist/index.cjs","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"},"./vue":{"types":"./dist/vue/index.d.ts","import":"./dist/vue/index.mjs","require":"./dist/vue/index.cjs"},"./vanilla":{"types":"./dist/vanilla/index.d.ts","import":"./dist/vanilla/index.mjs","require":"./dist/vanilla/index.cjs"},"./loader":{"import":"./dist/loader.mjs"}},"sideEffects":false,"peerDependencies":{"react":">=18","react-dom":">=18"},"peerDependenciesMeta":{"react":{"optional":true},"react-dom":{"optional":true}},"devDependencies":{"@testing-library/jest-dom":"^6.4.0","@testing-library/react":"^14.2.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vue/runtime-dom":"^3.4.0","axe-core":"^4.10.0","happy-dom":"^14.0.0","react":"^18.2.0","react-dom":"^18.2.0","tsup":"^8.0.0","typescript":"^5.4.0","vitest":"^1.6.0","vue":"^3.4.0","@aforoai/types":"0.1.0"},"scripts":{"build":"tsup","build:check-size":"node scripts/check-size.mjs","dev":"tsup --watch","test":"vitest run","test:watch":"vitest","typecheck":"tsc --noEmit","sri":"node scripts/sri.mjs","verify:publish":"npm pack --dry-run"},"_id":"@aforoai/storefront-widgets@1.0.15","_integrity":"sha512-jy4Xpu43j5I2iOgyCR2MA7xTxKTG4007Mvy+P9cM6y6mRZSei8ZG5e5WLeu6+ovwWzEW39Hrol+UScr5v4LL/w==","_resolved":"/tmp/db84cf5f92aa47300a76cdb553bdad28/aforoai-storefront-widgets-1.0.15.tgz","_from":"file:aforoai-storefront-widgets-1.0.15.tgz","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-jy4Xpu43j5I2iOgyCR2MA7xTxKTG4007Mvy+P9cM6y6mRZSei8ZG5e5WLeu6+ovwWzEW39Hrol+UScr5v4LL/w==","shasum":"db9df7f2a3c7258e83621c85a5a46c951f0721f5","tarball":"https://registry.npmjs.org/@aforoai/storefront-widgets/-/storefront-widgets-1.0.15.tgz","fileCount":33,"unpackedSize":4611019,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIA9g5UsMan5vdZg9Ri4i9QEwm7xTdno+a+l0hrRIa6kbAiEA/OrUA7GAljDcuP142cP7Ho5poXYbnG2sl9NbgvUCRF4="}]},"_npmUser":{"name":"aforoai","email":"eswarprasad@aforo.ai"},"directories":{},"maintainers":[{"name":"aforoai","email":"eswarprasad@aforo.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/storefront-widgets_1.0.15_1789476360654_0.6412005168219779"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-06T06:25:53.618Z","modified":"2026-09-15T12:46:00.975Z","1.0.1":"2026-08-06T06:25:53.983Z","1.0.2":"2026-08-06T06:32:41.614Z","1.0.3":"2026-08-06T10:05:48.917Z","1.0.4":"2026-08-12T07:42:08.952Z","1.0.5":"2026-08-26T07:52:54.458Z","1.0.6":"2026-08-26T08:25:58.383Z","1.0.11":"2026-08-30T06:57:44.039Z","1.0.12":"2026-08-30T08:44:31.434Z","1.0.13":"2026-09-15T09:58:04.565Z","1.0.14":"2026-09-15T11:05:37.876Z","1.0.15":"2026-09-15T12:46:00.821Z"},"bugs":{"url":"https://github.com/aforoai/aforo-nextgen-UI/issues"},"license":"MIT","homepage":"https://docs.aforo.ai/docs/embed-quickstart","keywords":["aforo","billing","subscriptions","embed","widget","stripe","razorpay","paypal","pricing-card","invoice","checkout","saas-billing","react","vue"],"repository":{"type":"git","url":"git+https://github.com/aforoai/aforo-nextgen-UI.git","directory":"packages/storefront-widgets"},"description":"Embeddable widgets for Aforo's storefront — pricing card, subscribe button, invoice list, and embedded checkout. Drop into any HTML page, React app, or Vue app to add Aforo billing surfaces with your own branding. Three integration tiers: script tag, npm,","maintainers":[{"name":"aforoai","email":"eswarprasad@aforo.ai"}],"readme":"# @aforoai/storefront-widgets\n\n> Drop-in embeddable widgets for Aforo's storefront — pricing cards, subscribe\n> buttons, invoice lists, and embedded checkout. Brand them yours, ship in\n> minutes.\n\n[![npm version](https://img.shields.io/npm/v/@aforoai/storefront-widgets.svg)](https://www.npmjs.com/package/@aforoai/storefront-widgets)\n[![license](https://img.shields.io/npm/l/@aforoai/storefront-widgets.svg)](./LICENSE)\n\n```bash\nnpm install @aforoai/storefront-widgets\n```\n\n**Full developer docs:** <https://docs.aforo.ai/docs/embed-quickstart>\n\n---\n\n## What you get\n\nEight widgets covering the customer billing surface. v0.1.0 ships four real\nwidget bodies — the other four render an accessible loading placeholder while\ntheir bodies are being built. Their public API is locked, so dropping in the\nnew bundle later requires no code changes on your side.\n\n| Widget                      | Status          | What it does                                      |\n|-----------------------------|-----------------|---------------------------------------------------|\n| `AforoPricingCard`          | ✅ Shipped       | Anonymous pricing display (horizontal / vertical / table) |\n| `AforoSubscribeButton`      | ✅ Shipped       | Authenticated subscribe CTA with anti-double-subscribe check |\n| `AforoInvoiceList`          | ✅ Shipped       | Paginated invoice list with status filter, search, PDF, Pay Now |\n| `AforoCheckoutFlow`         | ✅ Shipped       | Multi-step embedded checkout (Stripe / Razorpay / PayPal) |\n| `AforoSubscriptionManager`  | 🔜 Coming soon  | Customer-facing subscription summary + lifecycle actions |\n| `AforoUsageMeter`           | 🔜 Coming soon  | Real-time per-metric usage gauges with quota visualization |\n| `AforoPaymentMethod`        | 🔜 Coming soon  | Saved payment methods table + add/remove flow |\n| `AforoUpgradeCancel`        | 🔜 Coming soon  | Plan upgrade / downgrade / cancel flow with deflection |\n\n---\n\n## Three ways to embed\n\n### 1. Script tag (no build needed)\n\nFor Webflow, WordPress, Squarespace, and plain HTML pages. The loader is\n~2.5 KB gzipped and lazy-fetches per-widget bundles only when their\nplaceholders are on the page.\n\n```html\n<script\n  src=\"https://embed.aforo.ai/v1/loader.js\"\n  integrity=\"sha384-…\"\n  crossorigin=\"anonymous\"\n  async\n></script>\n\n<div\n  data-aforo-widget=\"pricing-card\"\n  data-tenant-slug=\"acme\"\n  data-embed-key=\"embk_live_…\"\n  data-layout=\"horizontal\"\n></div>\n```\n\nThe current SRI hash for `loader.js` is at\n<https://embed.aforo.ai/v1/sri.json>. Copy it into the `integrity=`\nattribute on the `<script>` tag so the browser refuses to execute a\ntampered bundle.\n\n### 2. React / Next.js\n\n```tsx\nimport { AforoPricingCard } from '@aforoai/storefront-widgets';\n\nexport function PricingSection() {\n  return (\n    <AforoPricingCard\n      tenantSlug=\"acme\"\n      embedKey=\"embk_live_…\"\n      layout=\"horizontal\"\n      ctaUrlByOffering={{ off_pro: '/checkout/pro' }}\n    />\n  );\n}\n```\n\n### 3. Vue 3\n\n```vue\n<script setup>\nimport { AforoPricingCard } from '@aforoai/storefront-widgets/vue';\n</script>\n\n<template>\n  <AforoPricingCard\n    tenant-slug=\"acme\"\n    embed-key=\"embk_live_…\"\n    layout=\"horizontal\"\n  />\n</template>\n```\n\nVanilla JS consumers (Svelte, Solid, Lit, etc.) import from\n`@aforoai/storefront-widgets/vanilla` — the same mount/unmount API the\nloader script uses internally.\n\n---\n\n## Authentication modes\n\nThe plugin tier supports three auth modes depending on what your portal\nalready has:\n\n1. **Anonymous** — pricing display only, no customer context. Use this for\n   marketing pages where you want to show your live offerings without\n   asking visitors to sign in.\n\n2. **Bridge token** — your backend mints a short-lived signed token that\n   identifies your customer to Aforo. The widget exchanges it for an\n   in-memory session JWT — your signing key never reaches the browser.\n   Use this when your portal already has its own authenticated session.\n\n3. **Magic link** — for portals that don't have their own session yet.\n   The customer types their email, gets an Aforo-branded email, clicks\n   the link, and lands back on your page with a session JWT. Rate-limited\n   and anti-enumeration-defended out of the box.\n\nFull guide with sequence diagrams + code samples for Node.js / Python / Go\nbridge-token signing: <https://docs.aforo.ai/docs/embed-authentication>.\n\n---\n\n## Theming\n\nThree-layer cascade — each layer overrides the previous:\n\n1. **Tenant brand kit** (logo + colors) configured in Aforo's Storefront →\n   Customize, fetched once when the widget mounts.\n2. **CSS variables** on your page (e.g. `--aforo-color-primary: #1A73E8;`)\n   override the brand kit for fine-grained theming.\n3. **Per-widget `themeOverrides` prop** for in-React/Vue customization at\n   the component level.\n\nDark mode is opt-in via `theme=\"dark\"`. The widgets are RTL-safe (100%\nlogical CSS properties) and namespace every class\n(`aforo-w-pc-*`, `aforo-w-sb-*`, etc.) to avoid colliding with your CSS.\n\nFull theming docs: <https://docs.aforo.ai/docs/embed-theming>.\n\n---\n\n## Events\n\nEvery widget emits typed `postMessage` events you can listen to from the\nparent page. Origin is always the resolved parent origin — never `*`.\n\n```js\nwindow.aforoEmbed?.on('aforo.subscribe.checkout_requested', (payload) => {\n  console.log('Customer clicked subscribe', payload);\n  // payload = { offeringId, planName, priceCents, currency, billingCycle, ratePlanId }\n});\n```\n\nCommon events:\n\n| Event                                | When                                          |\n|--------------------------------------|-----------------------------------------------|\n| `aforo.<widget>.ready`               | Widget mounted and first paint complete       |\n| `aforo.subscribe.checkout_requested` | Customer clicked Subscribe                    |\n| `aforo.subscription.created`         | Subscribe checkout completed (advisory only)  |\n| `aforo.invoice-list.invoice.paid`    | Invoice marked paid via SSE push              |\n| `aforo.checkout.confirmed`           | Embedded checkout completed                   |\n| `aforo.<widget>.error`               | Any error path (typed `code`, no PII)         |\n\n> **⚠ Webhook is authoritative.** postMessage events fired into your page\n> are **advisory only**. Always validate state changes via Aforo's signed\n> webhooks before mutating your own database. We surface this prominently\n> because it's the most common source of integration bugs.\n\nFull event catalog: <https://docs.aforo.ai/docs/embed-events>.\n\n---\n\n## Browser support\n\nWe test against the latest two stable versions of every major browser. The\nSDK runs anywhere modern JavaScript runs.\n\n| Browser            | Minimum version | Notes |\n|--------------------|-----------------|-------|\n| Chrome             | N-2 (latest 2)  | Desktop and Android |\n| Firefox            | N-2             | Desktop |\n| Safari             | 16+             | macOS |\n| Mobile Safari      | iOS 16+         | iPhone + iPad |\n| Mobile Chrome      | Android 12+     | Most devices |\n| Edge               | Latest          | Chromium-based |\n\nThe loader refuses to bootstrap on `http://` pages — HTTPS is mandatory.\nWe do not support IE11 or pre-Chromium Edge.\n\n---\n\n## Security\n\n- **SRI hashes published per release** at\n  <https://embed.aforo.ai/v1/sri.json>. Pin them via `integrity=` on the\n  `<script>` tag.\n- **Customer CSP guidance.** Add `script-src https://embed.aforo.ai` and\n  `connect-src https://api.aforo.ai` to your Content-Security-Policy. No\n  `unsafe-inline` or `unsafe-eval` required.\n- **In-memory session JWTs.** Never written to `localStorage`,\n  `sessionStorage`, or cookies. Cleared on tab close.\n- **Anti-enumeration on magic-link.** Identical 202 response regardless of\n  whether the email is registered. Rate-limited per IP and per email.\n- **No dynamic code.** No `eval()`, no `Function()`, no dynamic `import()`\n  of untrusted URLs.\n\nFull security model + how to report vulnerabilities: see\n[`SECURITY.md`](./SECURITY.md).\n\n---\n\n## Versioning\n\nWe follow [Semantic Versioning](https://semver.org). Pre-1.0:\n\n- `0.x.y` — frequent additions, occasional breaking changes documented in\n  [CHANGELOG.md](./CHANGELOG.md). Pin to a specific version in production.\n\nPost-1.0:\n\n- `1.x.y` — strict semver. Additions and bug fixes only.\n- `2.x.y` — breaking changes with a 90-day deprecation period announced\n  via the changelog. The loader URL is pinned at `/v1/` and stays\n  backward-compatible within v1.\n\nFull versioning policy: <https://docs.aforo.ai/docs/embed-versioning>.\n\n---\n\n## License\n\nMIT — see [LICENSE](./LICENSE).\n\n---\n\n## Support\n\n- 📖 Docs: <https://docs.aforo.ai/docs/embed-quickstart>\n- 🐛 Issues: <https://github.com/aforoai/aforo-nextgen-UI/issues>\n- 🔒 Security: `security@aforo.ai`\n- 💬 Email: `support@aforo.ai`\n","readmeFilename":"README.md"}