@beamimpact/web-sdk 1.31.4 → 1.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/chunks/_share-dialog-dependencies-JkqAjyWn.esm.js +2 -0
- package/dist/chunks/_share-dialog-dependencies-JkqAjyWn.esm.js.map +1 -0
- package/dist/chunks/_share-dialog-dependencies-mxkp5-2m.esm.js +2 -0
- package/dist/chunks/_share-dialog-dependencies-mxkp5-2m.esm.js.map +1 -0
- package/dist/chunks/beam-errors-AMvTvR1C.esm.js.map +1 -1
- package/dist/chunks/beam-errors-bKCZlkvr.esm.d.ts +40 -0
- package/dist/chunks/{cart-contents-P2GzTrNn.esm.d.ts → cart-contents-22-v_s94.esm.d.ts} +1 -1
- package/dist/chunks/{css-card-grid-RRkoiUTl.esm.js → css-card-grid-3b56QBzq.esm.js} +2 -2
- package/dist/chunks/{css-card-grid-RRkoiUTl.esm.js.map → css-card-grid-3b56QBzq.esm.js.map} +1 -1
- package/dist/chunks/{events-wNy5BoJV.esm.js → events-5IECSF-x.esm.js} +2 -2
- package/dist/chunks/events-5IECSF-x.esm.js.map +1 -0
- package/dist/chunks/{events-60jQoHQi.esm.d.ts → events-rt-wdsLM.esm.d.ts} +2 -2
- package/dist/chunks/index-9YcaEQju.esm.js +2 -0
- package/dist/chunks/index-9YcaEQju.esm.js.map +1 -0
- package/dist/chunks/index-Ex-M28eQ.esm.js +2 -0
- package/dist/chunks/index-Ex-M28eQ.esm.js.map +1 -0
- package/dist/chunks/index-FAF7tYU6.esm.js +2 -0
- package/dist/chunks/index-FAF7tYU6.esm.js.map +1 -0
- package/dist/chunks/index-IOQZUYT9.esm.d.ts +34 -0
- package/dist/chunks/index-QVOgLnoJ.esm.js +2 -0
- package/dist/chunks/index-QVOgLnoJ.esm.js.map +1 -0
- package/dist/chunks/index-R8Ga2jzl.esm.js +2 -0
- package/dist/chunks/index-R8Ga2jzl.esm.js.map +1 -0
- package/dist/chunks/{index-L59voCOg.esm.d.ts → index-W4Y5lVSA.esm.d.ts} +1 -1
- package/dist/chunks/index-XDPjy3-K.esm.js +2 -0
- package/dist/chunks/index-XDPjy3-K.esm.js.map +1 -0
- package/dist/chunks/index-Z1UUeVXR.esm.js +2 -0
- package/dist/chunks/index-Z1UUeVXR.esm.js.map +1 -0
- package/dist/chunks/index-e13I7Ozo.esm.js +2 -0
- package/dist/chunks/index-e13I7Ozo.esm.js.map +1 -0
- package/dist/chunks/index-nLDGmOkp.esm.js +2 -0
- package/dist/chunks/index-nLDGmOkp.esm.js.map +1 -0
- package/dist/chunks/index-olIrMP04.esm.js +2 -0
- package/dist/chunks/index-olIrMP04.esm.js.map +1 -0
- package/dist/chunks/{index-CItwC8WO.esm.d.ts → index-qerf6TiH.esm.d.ts} +1 -1
- package/dist/chunks/{index-l_MORcbP.esm.d.ts → index-rTMJFwfk.esm.d.ts} +3 -3
- package/dist/chunks/index-rrdYIcOi.esm.js +2 -0
- package/dist/chunks/index-rrdYIcOi.esm.js.map +1 -0
- package/dist/chunks/index-rvzEx3Qj.esm.js +2 -0
- package/dist/chunks/index-rvzEx3Qj.esm.js.map +1 -0
- package/dist/chunks/index-uqEAgdEf.esm.js +2 -0
- package/dist/chunks/index-uqEAgdEf.esm.js.map +1 -0
- package/dist/chunks/index-w9_XpjIg.esm.js +2 -0
- package/dist/chunks/index-w9_XpjIg.esm.js.map +1 -0
- package/dist/chunks/index-xERV1BQn.esm.d.ts +34 -0
- package/dist/chunks/{lit-h1W25hjN.esm.js → lit-yVXn5Cbs.esm.js} +2 -2
- package/dist/chunks/lit-yVXn5Cbs.esm.js.map +1 -0
- package/dist/chunks/localize-BGPniqcI.esm.js +30 -0
- package/dist/chunks/localize-BGPniqcI.esm.js.map +1 -0
- package/dist/chunks/{localize-z-KGe7Y5.esm.js → localize-dXHrlK8g.esm.js} +2 -2
- package/dist/chunks/localize-dXHrlK8g.esm.js.map +1 -0
- package/dist/chunks/{lodash-ZxBiuGue.esm.js → lodash-P8OIs-at.esm.js} +2 -2
- package/dist/chunks/{lodash-ZxBiuGue.esm.js.map → lodash-P8OIs-at.esm.js.map} +1 -1
- package/dist/chunks/order-page-Q9iJrRjP.esm.js +2 -0
- package/dist/chunks/order-page-Q9iJrRjP.esm.js.map +1 -0
- package/dist/chunks/{order-page-40SzBc--.esm.d.ts → order-page-scELdENh.esm.d.ts} +18 -13
- package/dist/chunks/order-page-ua17ZUZi.esm.js +2 -0
- package/dist/chunks/order-page-ua17ZUZi.esm.js.map +1 -0
- package/dist/chunks/{progress-bar-w3yfrrxD.esm.js → progress-bar-7gWYaGlq.esm.js} +2 -2
- package/dist/chunks/{progress-bar-w3yfrrxD.esm.js.map → progress-bar-7gWYaGlq.esm.js.map} +1 -1
- package/dist/chunks/{responsive-Rehmv-eo.esm.js → responsive-LYEag6TI.esm.js} +2 -2
- package/dist/chunks/{responsive-Rehmv-eo.esm.js.map → responsive-LYEag6TI.esm.js.map} +1 -1
- package/dist/chunks/routes-2eYzHPEh.esm.js +2 -0
- package/dist/chunks/routes-2eYzHPEh.esm.js.map +1 -0
- package/dist/chunks/routes-dMIUHq8Y.esm.js +2 -0
- package/dist/chunks/routes-dMIUHq8Y.esm.js.map +1 -0
- package/dist/chunks/update-cart-1CVVu5Xc.esm.js +2 -0
- package/dist/chunks/update-cart-1CVVu5Xc.esm.js.map +1 -0
- package/dist/chunks/{update-cart-3nc7XKMm.esm.d.ts → update-cart-lCgGJZvM.esm.d.ts} +4 -2
- package/dist/chunks/update-cart-rzsMaDu6.esm.js +2 -0
- package/dist/chunks/update-cart-rzsMaDu6.esm.js.map +1 -0
- package/dist/chunks/{vendor-IGhQoYCM.esm.js → vendor-eeJfrOkP.esm.js} +2 -2
- package/dist/chunks/{vendor-IGhQoYCM.esm.js.map → vendor-eeJfrOkP.esm.js.map} +1 -1
- package/dist/components/beam-partner-logos.esm.js +1 -1
- package/dist/components/beam-partner-logos.js +1 -1
- package/dist/components/community-impact.esm.js +1 -1
- package/dist/components/community-impact.esm.js.map +1 -1
- package/dist/components/community-impact.js +1 -1
- package/dist/components/community-impact.js.map +1 -1
- package/dist/components/cumulative-impact.esm.js +1 -1
- package/dist/components/cumulative-impact.esm.js.map +1 -1
- package/dist/components/cumulative-impact.js +1 -1
- package/dist/components/cumulative-impact.js.map +1 -1
- package/dist/components/impact-overview.esm.js +2 -2
- package/dist/components/impact-overview.esm.js.map +1 -1
- package/dist/components/impact-overview.js +2 -2
- package/dist/components/impact-overview.js.map +1 -1
- package/dist/components/index.d.ts +1 -1
- package/dist/components/index.esm.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/post-purchase.d.ts +3 -2
- package/dist/components/post-purchase.esm.js +3 -3
- package/dist/components/post-purchase.esm.js.map +1 -1
- package/dist/components/post-purchase.js +3 -3
- package/dist/components/post-purchase.js.map +1 -1
- package/dist/components/redeem-transaction.d.ts +2 -2
- package/dist/components/redeem-transaction.esm.js +1 -1
- package/dist/components/redeem-transaction.esm.js.map +1 -1
- package/dist/components/redeem-transaction.js +1 -1
- package/dist/components/redeem-transaction.js.map +1 -1
- package/dist/components/select-nonprofit.d.ts +2 -2
- package/dist/components/select-nonprofit.esm.js +3 -3
- package/dist/components/select-nonprofit.esm.js.map +1 -1
- package/dist/components/select-nonprofit.js +3 -3
- package/dist/components/select-nonprofit.js.map +1 -1
- package/dist/components/shopify.d.ts +7 -7
- package/dist/components/shopify.esm.js +1 -1
- package/dist/components/shopify.esm.js.map +1 -1
- package/dist/components/shopify.js +1 -1
- package/dist/components/shopify.js.map +1 -1
- package/dist/index.d.ts +19 -10
- package/dist/index.esm.js +1 -1
- package/dist/index.js +1 -1
- package/dist/integrations/beam.esm.js +1 -1
- package/dist/integrations/beam.esm.js.map +1 -1
- package/dist/integrations/beam.js +1 -1
- package/dist/integrations/beam.js.map +1 -1
- package/dist/integrations/cart.d.ts +3 -2
- package/dist/integrations/cart.esm.js +1 -1
- package/dist/integrations/cart.js +1 -1
- package/dist/integrations/index.d.ts +19 -11
- package/dist/integrations/index.esm.js +1 -1
- package/dist/integrations/index.js +1 -1
- package/dist/integrations/logs.esm.js +1 -1
- package/dist/integrations/logs.js +1 -1
- package/dist/integrations/session.esm.js +1 -1
- package/dist/integrations/session.js +1 -1
- package/dist/integrations/shopify.d.ts +5 -5
- package/dist/integrations/shopify.esm.js +1 -1
- package/dist/integrations/shopify.js +1 -1
- package/dist/integrations/statsig.esm.js +2 -2
- package/dist/integrations/statsig.esm.js.map +1 -1
- package/dist/integrations/statsig.js +2 -2
- package/dist/integrations/statsig.js.map +1 -1
- package/dist/integrations/utils.d.ts +13 -6
- package/dist/integrations/utils.esm.js +1 -1
- package/dist/integrations/utils.js +1 -1
- package/dist/react/beam-partner-logos.esm.js +1 -1
- package/dist/react/beam-partner-logos.js +1 -1
- package/dist/react/community-impact.esm.js +1 -1
- package/dist/react/community-impact.esm.js.map +1 -1
- package/dist/react/community-impact.js +1 -1
- package/dist/react/community-impact.js.map +1 -1
- package/dist/react/cumulative-impact.esm.js +1 -1
- package/dist/react/cumulative-impact.esm.js.map +1 -1
- package/dist/react/cumulative-impact.js +1 -1
- package/dist/react/cumulative-impact.js.map +1 -1
- package/dist/react/impact-overview.esm.js +1 -1
- package/dist/react/impact-overview.esm.js.map +1 -1
- package/dist/react/impact-overview.js +1 -1
- package/dist/react/impact-overview.js.map +1 -1
- package/dist/react/index.d.ts +2 -2
- package/dist/react/index.esm.js +1 -1
- package/dist/react/index.js +1 -1
- package/dist/react/post-purchase.d.ts +1 -1
- package/dist/react/post-purchase.esm.js +1 -1
- package/dist/react/post-purchase.esm.js.map +1 -1
- package/dist/react/post-purchase.js +1 -1
- package/dist/react/post-purchase.js.map +1 -1
- package/dist/react/redeem-transaction.d.ts +2 -2
- package/dist/react/redeem-transaction.esm.js +1 -1
- package/dist/react/redeem-transaction.esm.js.map +1 -1
- package/dist/react/redeem-transaction.js +1 -1
- package/dist/react/redeem-transaction.js.map +1 -1
- package/dist/react/select-nonprofit.d.ts +2 -2
- package/dist/react/select-nonprofit.esm.js +1 -1
- package/dist/react/select-nonprofit.esm.js.map +1 -1
- package/dist/react/select-nonprofit.js +1 -1
- package/dist/react/select-nonprofit.js.map +1 -1
- package/dist/react/shopify.d.ts +2 -2
- package/dist/utils/beam-errors.d.ts +1 -0
- package/dist/utils/beam-errors.esm.js +2 -0
- package/dist/utils/beam-errors.esm.js.map +1 -0
- package/dist/utils/beam-errors.js +2 -0
- package/dist/utils/beam-errors.js.map +1 -0
- package/dist/utils/cookies.d.ts +58 -0
- package/dist/utils/cookies.esm.js +2 -0
- package/dist/utils/cookies.esm.js.map +1 -0
- package/dist/utils/cookies.js +2 -0
- package/dist/utils/cookies.js.map +1 -0
- package/dist/utils/debounce.d.ts +1 -0
- package/dist/utils/debounce.esm.js +2 -0
- package/dist/utils/debounce.esm.js.map +1 -0
- package/dist/utils/debounce.js +2 -0
- package/dist/utils/debounce.js.map +1 -0
- package/dist/utils/events.d.ts +4 -0
- package/dist/utils/events.esm.js +2 -0
- package/dist/utils/events.esm.js.map +1 -0
- package/dist/utils/events.js +2 -0
- package/dist/utils/events.js.map +1 -0
- package/dist/utils/index.d.ts +14 -0
- package/dist/utils/index.esm.js +2 -0
- package/dist/utils/index.esm.js.map +1 -0
- package/dist/utils/index.js +2 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/is-equal.d.ts +1 -0
- package/dist/utils/is-equal.esm.js +2 -0
- package/dist/utils/is-equal.esm.js.map +1 -0
- package/dist/utils/is-equal.js +2 -0
- package/dist/utils/is-equal.js.map +1 -0
- package/dist/utils/local-storage.d.ts +19 -0
- package/dist/utils/local-storage.esm.js +2 -0
- package/dist/utils/local-storage.esm.js.map +1 -0
- package/dist/utils/local-storage.js +2 -0
- package/dist/utils/local-storage.js.map +1 -0
- package/dist/utils/logger.d.ts +8 -0
- package/dist/utils/logger.esm.js +2 -0
- package/dist/utils/logger.esm.js.map +1 -0
- package/dist/utils/logger.js +2 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/memoize-last.d.ts +17 -0
- package/dist/utils/memoize-last.esm.js +2 -0
- package/dist/utils/memoize-last.esm.js.map +1 -0
- package/dist/utils/memoize-last.js +2 -0
- package/dist/utils/memoize-last.js.map +1 -0
- package/dist/utils/network-listeners.d.ts +5 -0
- package/dist/utils/network-listeners.esm.js +2 -0
- package/dist/utils/network-listeners.esm.js.map +1 -0
- package/dist/utils/network-listeners.js +2 -0
- package/dist/utils/network-listeners.js.map +1 -0
- package/dist/utils/remote-session.d.ts +9 -0
- package/dist/utils/remote-session.esm.js +2 -0
- package/dist/utils/remote-session.esm.js.map +1 -0
- package/dist/utils/remote-session.js +2 -0
- package/dist/utils/remote-session.js.map +1 -0
- package/dist/utils/wait-for-element.d.ts +5 -0
- package/dist/utils/wait-for-element.esm.js +2 -0
- package/dist/utils/wait-for-element.esm.js.map +1 -0
- package/dist/utils/wait-for-element.js +2 -0
- package/dist/utils/wait-for-element.js.map +1 -0
- package/package.json +1 -1
- package/dist/chunks/_share-dialog-dependencies-UT3NgapK.esm.js +0 -2
- package/dist/chunks/_share-dialog-dependencies-UT3NgapK.esm.js.map +0 -1
- package/dist/chunks/_share-dialog-dependencies-yxOcNNpK.esm.js +0 -2
- package/dist/chunks/_share-dialog-dependencies-yxOcNNpK.esm.js.map +0 -1
- package/dist/chunks/cookies-H8TCP4v0.esm.js +0 -2
- package/dist/chunks/cookies-H8TCP4v0.esm.js.map +0 -1
- package/dist/chunks/events-wNy5BoJV.esm.js.map +0 -1
- package/dist/chunks/index-4ckY2-Lc.esm.js +0 -2
- package/dist/chunks/index-4ckY2-Lc.esm.js.map +0 -1
- package/dist/chunks/index-FZ0yrk2j.esm.js +0 -2
- package/dist/chunks/index-FZ0yrk2j.esm.js.map +0 -1
- package/dist/chunks/index-PXYriqGw.esm.js +0 -2
- package/dist/chunks/index-PXYriqGw.esm.js.map +0 -1
- package/dist/chunks/index-UODI8bvb.esm.js +0 -2
- package/dist/chunks/index-UODI8bvb.esm.js.map +0 -1
- package/dist/chunks/index-YKvnw1cF.esm.js +0 -2
- package/dist/chunks/index-YKvnw1cF.esm.js.map +0 -1
- package/dist/chunks/index-Zzs4grqC.esm.d.ts +0 -156
- package/dist/chunks/index-f-fjpKtx.esm.js +0 -2
- package/dist/chunks/index-f-fjpKtx.esm.js.map +0 -1
- package/dist/chunks/index-fXIUzndi.esm.js +0 -2
- package/dist/chunks/index-fXIUzndi.esm.js.map +0 -1
- package/dist/chunks/index-hrwZmHHJ.esm.js +0 -2
- package/dist/chunks/index-hrwZmHHJ.esm.js.map +0 -1
- package/dist/chunks/index-stfehQ0s.esm.js +0 -2
- package/dist/chunks/index-stfehQ0s.esm.js.map +0 -1
- package/dist/chunks/lit-h1W25hjN.esm.js.map +0 -1
- package/dist/chunks/local-storage-GYvYzZ_j.esm.js +0 -2
- package/dist/chunks/local-storage-GYvYzZ_j.esm.js.map +0 -1
- package/dist/chunks/localize-z-KGe7Y5.esm.js.map +0 -1
- package/dist/chunks/network-listeners-6tkaLA3D.esm.d.ts +0 -9
- package/dist/chunks/network-listeners-O5LKv8Yy.esm.js +0 -2
- package/dist/chunks/network-listeners-O5LKv8Yy.esm.js.map +0 -1
- package/dist/chunks/order-page-8P0D98JI.esm.js +0 -2
- package/dist/chunks/order-page-8P0D98JI.esm.js.map +0 -1
- package/dist/chunks/order-page-cWc57Sl-.esm.js +0 -2
- package/dist/chunks/order-page-cWc57Sl-.esm.js.map +0 -1
- package/dist/chunks/remote-session-V4YG-mcS.esm.js +0 -2
- package/dist/chunks/remote-session-V4YG-mcS.esm.js.map +0 -1
- package/dist/chunks/routes-RQDFRUiD.esm.js +0 -2
- package/dist/chunks/routes-RQDFRUiD.esm.js.map +0 -1
- package/dist/chunks/update-cart-qXTq0EoJ.esm.js +0 -2
- package/dist/chunks/update-cart-qXTq0EoJ.esm.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statsig.js","sources":["../../src/integrations/statsig/plugin.ts"],"sourcesContent":["import { postExperimentSession } from \"../../api-sdk/v3/routes\";\nimport { BEAM_CART_COOKIE_NAME } from \"../../shared/cart-contents\";\nimport { BeamCartCreatedEvent, BeamNonprofitSelectEvent, BeamOrderCreatedEvent } from \"../../shared/events\";\nimport { BeamPlugin, BeamConfigOptions } from \"../beam\";\nimport { BeamError } from \"../../shared/beam-errors\";\nimport { getCookieValue, setCookieValue } from \"../../shared/cookies\";\nimport { logger } from \"../../shared/logger\";\nimport { saveRemoteSession } from \"../../shared/remote-session\";\n\n/**\n * StatSig Docs: https://docs.statsig.com/client/jsClientSDK\n */\ntype StatsigPluginOptions = {\n statsigApiKey: string;\n};\n\ndeclare global {\n interface Window {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n statsig?: any; // attached by Statsig CDN script\n }\n}\n\nconst STATSIG_VERSION = 4;\n\nconst STATSIG_SCRIPT_URL = `https://cdn.jsdelivr.net/npm/statsig-js@${STATSIG_VERSION}/build/statsig-prod-web-sdk.min.js`;\n\nconst STATSIG_STABLE_ID_COOKIE = \"beam_statsig_session_id\";\n\nconst BEAM_VISIBILITY_DATA_ATTRIBUTE = \"data-beam-visibility\";\n\n// Add class to elements that should only show when Beam shows\nconst BEAM_VISIBILITY_SYNCED_CLASS = \"beam-sync-visibility\";\n\nconst BEAM_AB_TEST_EVENTS = {\n STATSIG_INIT: \"statsig_init\",\n CART_CREATED: \"cart_created\",\n ORDER_CREATED: \"order_created\",\n BEAM_SELECTION: \"beam_selection\",\n};\n\ntype Experiments = {\n /** Whether Beam widgets should be shown to users */\n shouldShowBeam: boolean;\n /** Whether events should be logged to Statsig */\n isLoggingEnabled: boolean;\n};\n\n/**\n * Sets up Statsig for A/B testing and shows/hides Beam based on default experiment rules.\n * @example\n * import { StatsigPlugin } from '@beamimpact/web-sdk/dist/integrations/statsig'\n * import { init } from '@beamimpact/web-sdk/dist/integrations/beam'\n *\n * const beam = await init({\n * apiKey: '',\n * chainId: 1,\n * storeId: 1,\n * domain: 'my-store.com' // in case site uses subdomains for different pages\n * plugins: [\n * new StatsigPlugin({ statsigApiKey: '' })\n * ]\n * })\n *\n * // Once initialized, all Beam widgets have display: none unless user is assigned to A/B test group that shows Beam\n * // To hide additional elements, add the CSS className \"beam-sync-visibility\" to them\n * // To programmatically access the experiment state: getConfig().plugins.statsig.experiments.shouldShowBeam\n */\nexport class StatsigPlugin implements BeamPlugin {\n name = \"statsig\";\n\n statsig: any; // Statsig SDK instance\n\n statsigApiKey: string;\n\n experiments: Experiments = {\n shouldShowBeam: false,\n isLoggingEnabled: true,\n };\n\n stableId?: string;\n\n #beamConfig?: BeamConfigOptions;\n\n // Checked at initialization so that we can tell if post-purchase events came from a session with a cart or not\n #beamCartCookie?: string;\n\n constructor(options: StatsigPluginOptions) {\n this.statsigApiKey = options.statsigApiKey;\n }\n\n async init(config: BeamConfigOptions) {\n this.#beamConfig = config;\n\n // Add event listeners for cart/order lifecycle events\n // This should happen as soon as possible to avoid missing events\n this.#attachEventListeners();\n\n // Attach beam-visibility data attribute to body\n this.#setBeamVisibilityValue(\"hide\");\n\n // Create beam a/b test stylesheet\n const beamVisibilityStylesheet = document.createElement(\"style\");\n beamVisibilityStylesheet.innerHTML = `\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] beam-select-nonprofit,\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] beam-post-purchase,\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] beam-redeem-transaction,\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] beam-impact-overview,\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] beam-community-impact,\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] beam-cumulative-impact,\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] .${BEAM_VISIBILITY_SYNCED_CLASS} {\n display: none;\n }\n `;\n document.head.append(beamVisibilityStylesheet);\n\n // Create statsig script\n await this.#initializeStatsig();\n this.stableId = this.statsig.getStableID();\n if (!this.stableId) {\n throw new BeamError(\"Statsig failed to assign stableId\", { name: \"StatsigInitError\" });\n }\n\n // Save Statsig ID in localStorage for linking to carts later\n saveRemoteSession({ remoteSessionId: this.stableId, apiKey: config.apiKey });\n\n // Save initial value of cart cookie so that post-purchase events can be filtered by if they had a cart or not\n this.#beamCartCookie = getCookieValue(BEAM_CART_COOKIE_NAME);\n\n // Cache ID in cookie to preserve ID across subdomains\n setCookieValue({\n name: STATSIG_STABLE_ID_COOKIE,\n value: this.stableId,\n path: \"/\",\n domain: config.domain,\n });\n\n // Evaluate Statsig experiment assignments\n this.experiments = {\n // Whether Beam widgets should be shown to users\n shouldShowBeam: this.statsig\n .getLayer(\"beam_trial_layer\")\n .get(\"show_beam\", false /* default to hide */) as boolean,\n // Whether events should be logged to Statsig\n isLoggingEnabled: this.statsig.getLayer(\"beam_trial_layer\").get(\"enable_logging\", true) as boolean,\n };\n\n // In parallel:\n // A) Make test call to Statsig\n // B) Save stable ID in Beam for attribution to carts/transactions\n await Promise.all([this.#testStatsigConnection(), this.#registerExperimentWithBeam()]);\n\n // Update beam visibility data attribute, which shows Beam to users in the experiment\n this.#setBeamVisibilityValue(this.experiments.shouldShowBeam ? \"show\" : \"hide\");\n\n // Log result\n logger.debug(\"Statsig Experiment Assignments\", this.experiments);\n }\n\n #attachEventListeners() {\n // Cart Created\n window.addEventListener(BeamCartCreatedEvent.eventName, (_event: Event) => {\n const event = _event as BeamCartCreatedEvent;\n const { itemCount, cartId, subtotal, currencyCode } = event.detail;\n this.logEvent(BEAM_AB_TEST_EVENTS.CART_CREATED, true, { itemCount, cartId, subtotal, currencyCode });\n });\n\n // Order Created\n window.addEventListener(BeamOrderCreatedEvent.eventName, (_event: Event) => {\n const event = _event as BeamOrderCreatedEvent;\n const { orderId, cartTotal, currencyCode } = event.detail;\n this.logEvent(BEAM_AB_TEST_EVENTS.ORDER_CREATED, cartTotal, {\n orderId,\n cartTotal,\n currencyCode,\n hasCart: !!this.#beamCartCookie,\n });\n });\n\n // Beam Selection\n // Store previous value in case widget is recreated and emits event again:\n let lastSelectedNonprofitId: number | null | undefined;\n window.addEventListener(BeamNonprofitSelectEvent.eventName, (_event: Event) => {\n const event = _event as BeamNonprofitSelectEvent;\n const { selectedNonprofitId, selectionId } = event.detail;\n if (selectedNonprofitId !== lastSelectedNonprofitId) {\n this.logEvent(BEAM_AB_TEST_EVENTS.BEAM_SELECTION, true, {\n nonprofitId: selectedNonprofitId,\n widget: \"select-nonprofit\",\n selectionId,\n });\n lastSelectedNonprofitId = selectedNonprofitId;\n }\n });\n }\n\n // https://docs.statsig.com/client/jsClientSDK#statsig-options\n async #initializeStatsig() {\n const statsigScript = document.createElement(\"script\");\n statsigScript.src = STATSIG_SCRIPT_URL;\n statsigScript.async = false;\n const statsigReadyPromise = new Promise((res, rej) => {\n statsigScript.addEventListener(\"load\", res);\n statsigScript.addEventListener(\"error\", rej);\n });\n document.head.append(statsigScript);\n try {\n await statsigReadyPromise;\n } catch (err) {\n throw new BeamError(\"Failed to load Statsig script\", { name: \"StatsigInitError\" });\n }\n this.statsig = window.statsig;\n if (!this.statsig) {\n throw new BeamError(\"Failed to detect Statsig\", { name: \"StatsigInitError\" });\n }\n // https://docs.statsig.com/client/jsClientSDK#statsig-options\n const statsigOptions = {\n disableErrorLogging: true,\n disableAutoMetricsLogging: true,\n disableCurrentPageLogging: true,\n loggingIntervalMillis: 1000,\n loggingBufferMaxSize: 2,\n overrideStableID: getCookieValue(STATSIG_STABLE_ID_COOKIE) ?? null,\n };\n await this.statsig.initialize(this.statsigApiKey, {}, statsigOptions);\n }\n\n logEvent(name: string, value: string | number | boolean, metadata: Record<string, any> = {}) {\n const withBeam = this.experiments.shouldShowBeam;\n if (this.experiments.isLoggingEnabled) {\n this.statsig.logEvent(name, value, { ...metadata, withBeam });\n }\n logger.debug(name, value, { ...metadata, withBeam });\n }\n\n #setBeamVisibilityValue(value: \"show\" | \"hide\") {\n document.body.setAttribute(BEAM_VISIBILITY_DATA_ATTRIBUTE, value);\n }\n\n async #testStatsigConnection() {\n // Use the HTTP API so we can synchronously detect if Statsig is reachable,\n // rather than pushing an event to the SDK's retryable queue.\n // https://docs.statsig.com/http-api\n const url = \"https://events.statsigapi.net/v1/log_event\";\n try {\n await fetch(url, {\n method: \"POST\",\n headers: {\n \"content-type\": \"application/json\",\n \"statsig-api-key\": this.statsigApiKey,\n },\n body: JSON.stringify({\n eventName: BEAM_AB_TEST_EVENTS.STATSIG_INIT,\n value: \"true\",\n time: new Date().getTime() / 1000, // unix timestamp (seconds not milliseconds)\n metadata: {\n show_beam: this.experiments.shouldShowBeam.toString(),\n page: window.location.pathname,\n },\n user: {\n userID: this.stableId,\n },\n }),\n });\n } catch (err) {\n throw new BeamError(\"Could not call Statsig API\", { name: \"StatsigInitError\", cause: err });\n // TODO: this will log failures to Beam's error tracking API in the future\n }\n }\n\n async #registerExperimentWithBeam() {\n return postExperimentSession({\n baseUrl: this.#beamConfig?.baseUrl,\n headers: {\n authorization: `Api-Key ${this.#beamConfig?.apiKey}`,\n },\n requestBody: {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n remoteSessionId: this.stableId!,\n experiments: {\n showBeam: this.experiments.shouldShowBeam,\n },\n },\n });\n }\n}\n"],"names":["y","i","t","e","h","w","s","d","_beamConfig","_beamCartCookie","_attachEventListeners","attachEventListeners_fn","_initializeStatsig","initializeStatsig_fn","_setBeamVisibilityValue","setBeamVisibilityValue_fn","_testStatsigConnection","testStatsigConnection_fn","_registerExperimentWithBeam","registerExperimentWithBeam_fn","STATSIG_VERSION","STATSIG_SCRIPT_URL","STATSIG_STABLE_ID_COOKIE","BEAM_VISIBILITY_DATA_ATTRIBUTE","BEAM_VISIBILITY_SYNCED_CLASS","BEAM_AB_TEST_EVENTS","StatsigPlugin","options","__privateAdd","config","__privateSet","__privateMethod","beamVisibilityStylesheet","BeamError","saveRemoteSession","getCookieValue","BEAM_CART_COOKIE_NAME","setCookieValue","logger","name","value","metadata","withBeam","BeamCartCreatedEvent","_event","event","itemCount","cartId","subtotal","currencyCode","BeamOrderCreatedEvent","orderId","cartTotal","__privateGet","lastSelectedNonprofitId","BeamNonprofitSelectEvent","selectedNonprofitId","selectionId","statsigScript","statsigReadyPromise","res","rej","statsigOptions","url","err","postExperimentSession"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"statsig.js","sources":["../../src/integrations/statsig/plugin.ts"],"sourcesContent":["import { postExperimentSession } from \"../../api-sdk/v3/routes\";\nimport { BEAM_CART_COOKIE_NAME } from \"../../shared/cart-contents\";\nimport { BeamCartCreatedEvent, BeamNonprofitSelectEvent, BeamOrderCreatedEvent } from \"../../utils/events\";\nimport { BeamPlugin, BeamConfigOptions } from \"../beam\";\nimport { BeamError } from \"../../utils/beam-errors\";\nimport { getCookieValue, setCookieValue } from \"../../utils/cookies\";\nimport { logger } from \"../../utils/logger\";\nimport { saveRemoteSession } from \"../../utils/remote-session\";\n\n/**\n * StatSig Docs: https://docs.statsig.com/client/jsClientSDK\n */\ntype StatsigPluginOptions = {\n statsigApiKey: string;\n};\n\ndeclare global {\n interface Window {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n statsig?: any; // attached by Statsig CDN script\n }\n}\n\nconst STATSIG_VERSION = 4;\n\nconst STATSIG_SCRIPT_URL = `https://cdn.jsdelivr.net/npm/statsig-js@${STATSIG_VERSION}/build/statsig-prod-web-sdk.min.js`;\n\nconst STATSIG_STABLE_ID_COOKIE = \"beam_statsig_session_id\";\n\nconst BEAM_VISIBILITY_DATA_ATTRIBUTE = \"data-beam-visibility\";\n\n// Add class to elements that should only show when Beam shows\nconst BEAM_VISIBILITY_SYNCED_CLASS = \"beam-sync-visibility\";\n\nconst BEAM_AB_TEST_EVENTS = {\n STATSIG_INIT: \"statsig_init\",\n CART_CREATED: \"cart_created\",\n ORDER_CREATED: \"order_created\",\n BEAM_SELECTION: \"beam_selection\",\n};\n\ntype Experiments = {\n /** Whether Beam widgets should be shown to users */\n shouldShowBeam: boolean;\n /** Whether events should be logged to Statsig */\n isLoggingEnabled: boolean;\n};\n\n/**\n * Sets up Statsig for A/B testing and shows/hides Beam based on default experiment rules.\n * @example\n * import { StatsigPlugin } from '@beamimpact/web-sdk/dist/integrations/statsig'\n * import { init } from '@beamimpact/web-sdk/dist/integrations/beam'\n *\n * const beam = await init({\n * apiKey: '',\n * chainId: 1,\n * storeId: 1,\n * domain: 'my-store.com' // in case site uses subdomains for different pages\n * plugins: [\n * new StatsigPlugin({ statsigApiKey: '' })\n * ]\n * })\n *\n * // Once initialized, all Beam widgets have display: none unless user is assigned to A/B test group that shows Beam\n * // To hide additional elements, add the CSS className \"beam-sync-visibility\" to them\n * // To programmatically access the experiment state: getConfig().plugins.statsig.experiments.shouldShowBeam\n */\nexport class StatsigPlugin implements BeamPlugin {\n name = \"statsig\";\n\n statsig: any; // Statsig SDK instance\n\n statsigApiKey: string;\n\n experiments: Experiments = {\n shouldShowBeam: false,\n isLoggingEnabled: true,\n };\n\n stableId?: string;\n\n #beamConfig?: BeamConfigOptions;\n\n // Checked at initialization so that we can tell if post-purchase events came from a session with a cart or not\n #beamCartCookie?: string;\n\n constructor(options: StatsigPluginOptions) {\n this.statsigApiKey = options.statsigApiKey;\n }\n\n async init(config: BeamConfigOptions) {\n this.#beamConfig = config;\n\n // Add event listeners for cart/order lifecycle events\n // This should happen as soon as possible to avoid missing events\n this.#attachEventListeners();\n\n // Attach beam-visibility data attribute to body\n this.#setBeamVisibilityValue(\"hide\");\n\n // Create beam a/b test stylesheet\n const beamVisibilityStylesheet = document.createElement(\"style\");\n beamVisibilityStylesheet.innerHTML = `\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] beam-select-nonprofit,\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] beam-post-purchase,\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] beam-redeem-transaction,\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] beam-impact-overview,\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] beam-community-impact,\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] beam-cumulative-impact,\n [${BEAM_VISIBILITY_DATA_ATTRIBUTE}=\"hide\"] .${BEAM_VISIBILITY_SYNCED_CLASS} {\n display: none;\n }\n `;\n document.head.append(beamVisibilityStylesheet);\n\n // Create statsig script\n await this.#initializeStatsig();\n this.stableId = this.statsig.getStableID();\n if (!this.stableId) {\n throw new BeamError(\"Statsig failed to assign stableId\", { name: \"StatsigInitError\" });\n }\n\n // Save Statsig ID in localStorage for linking to carts later\n saveRemoteSession({ remoteSessionId: this.stableId, apiKey: config.apiKey });\n\n // Save initial value of cart cookie so that post-purchase events can be filtered by if they had a cart or not\n this.#beamCartCookie = getCookieValue(BEAM_CART_COOKIE_NAME);\n\n // Cache ID in cookie to preserve ID across subdomains\n setCookieValue({\n name: STATSIG_STABLE_ID_COOKIE,\n value: this.stableId,\n path: \"/\",\n domain: config.domain,\n });\n\n // Evaluate Statsig experiment assignments\n this.experiments = {\n // Whether Beam widgets should be shown to users\n shouldShowBeam: this.statsig\n .getLayer(\"beam_trial_layer\")\n .get(\"show_beam\", false /* default to hide */) as boolean,\n // Whether events should be logged to Statsig\n isLoggingEnabled: this.statsig.getLayer(\"beam_trial_layer\").get(\"enable_logging\", true) as boolean,\n };\n\n // In parallel:\n // A) Make test call to Statsig\n // B) Save stable ID in Beam for attribution to carts/transactions\n await Promise.all([this.#testStatsigConnection(), this.#registerExperimentWithBeam()]);\n\n // Update beam visibility data attribute, which shows Beam to users in the experiment\n this.#setBeamVisibilityValue(this.experiments.shouldShowBeam ? \"show\" : \"hide\");\n\n // Log result\n logger.debug(\"Statsig Experiment Assignments\", this.experiments);\n }\n\n #attachEventListeners() {\n // Cart Created\n window.addEventListener(BeamCartCreatedEvent.eventName, (_event: Event) => {\n const event = _event as BeamCartCreatedEvent;\n const { itemCount, cartId, subtotal, currencyCode } = event.detail;\n this.logEvent(BEAM_AB_TEST_EVENTS.CART_CREATED, true, { itemCount, cartId, subtotal, currencyCode });\n });\n\n // Order Created\n window.addEventListener(BeamOrderCreatedEvent.eventName, (_event: Event) => {\n const event = _event as BeamOrderCreatedEvent;\n const { orderId, cartTotal, currencyCode } = event.detail;\n this.logEvent(BEAM_AB_TEST_EVENTS.ORDER_CREATED, cartTotal, {\n orderId,\n cartTotal,\n currencyCode,\n hasCart: !!this.#beamCartCookie,\n });\n });\n\n // Beam Selection\n // Store previous value in case widget is recreated and emits event again:\n let lastSelectedNonprofitId: number | null | undefined;\n window.addEventListener(BeamNonprofitSelectEvent.eventName, (_event: Event) => {\n const event = _event as BeamNonprofitSelectEvent;\n const { selectedNonprofitId, selectionId } = event.detail;\n if (selectedNonprofitId !== lastSelectedNonprofitId) {\n this.logEvent(BEAM_AB_TEST_EVENTS.BEAM_SELECTION, true, {\n nonprofitId: selectedNonprofitId,\n widget: \"select-nonprofit\",\n selectionId,\n });\n lastSelectedNonprofitId = selectedNonprofitId;\n }\n });\n }\n\n // https://docs.statsig.com/client/jsClientSDK#statsig-options\n async #initializeStatsig() {\n const statsigScript = document.createElement(\"script\");\n statsigScript.src = STATSIG_SCRIPT_URL;\n statsigScript.async = false;\n const statsigReadyPromise = new Promise((res, rej) => {\n statsigScript.addEventListener(\"load\", res);\n statsigScript.addEventListener(\"error\", rej);\n });\n document.head.append(statsigScript);\n try {\n await statsigReadyPromise;\n } catch (err) {\n throw new BeamError(\"Failed to load Statsig script\", { name: \"StatsigInitError\" });\n }\n this.statsig = window.statsig;\n if (!this.statsig) {\n throw new BeamError(\"Failed to detect Statsig\", { name: \"StatsigInitError\" });\n }\n // https://docs.statsig.com/client/jsClientSDK#statsig-options\n const statsigOptions = {\n disableErrorLogging: true,\n disableAutoMetricsLogging: true,\n disableCurrentPageLogging: true,\n loggingIntervalMillis: 1000,\n loggingBufferMaxSize: 2,\n overrideStableID: getCookieValue(STATSIG_STABLE_ID_COOKIE) ?? null,\n };\n await this.statsig.initialize(this.statsigApiKey, {}, statsigOptions);\n }\n\n logEvent(name: string, value: string | number | boolean, metadata: Record<string, any> = {}) {\n const withBeam = this.experiments.shouldShowBeam;\n if (this.experiments.isLoggingEnabled) {\n this.statsig.logEvent(name, value, { ...metadata, withBeam });\n }\n logger.debug(name, value, { ...metadata, withBeam });\n }\n\n #setBeamVisibilityValue(value: \"show\" | \"hide\") {\n document.body.setAttribute(BEAM_VISIBILITY_DATA_ATTRIBUTE, value);\n }\n\n async #testStatsigConnection() {\n // Use the HTTP API so we can synchronously detect if Statsig is reachable,\n // rather than pushing an event to the SDK's retryable queue.\n // https://docs.statsig.com/http-api\n const url = \"https://events.statsigapi.net/v1/log_event\";\n try {\n await fetch(url, {\n method: \"POST\",\n headers: {\n \"content-type\": \"application/json\",\n \"statsig-api-key\": this.statsigApiKey,\n },\n body: JSON.stringify({\n eventName: BEAM_AB_TEST_EVENTS.STATSIG_INIT,\n value: \"true\",\n time: new Date().getTime() / 1000, // unix timestamp (seconds not milliseconds)\n metadata: {\n show_beam: this.experiments.shouldShowBeam.toString(),\n page: window.location.pathname,\n },\n user: {\n userID: this.stableId,\n },\n }),\n });\n } catch (err) {\n throw new BeamError(\"Could not call Statsig API\", { name: \"StatsigInitError\", cause: err });\n // TODO: this will log failures to Beam's error tracking API in the future\n }\n }\n\n async #registerExperimentWithBeam() {\n return postExperimentSession({\n baseUrl: this.#beamConfig?.baseUrl,\n headers: {\n authorization: `Api-Key ${this.#beamConfig?.apiKey}`,\n },\n requestBody: {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n remoteSessionId: this.stableId!,\n experiments: {\n showBeam: this.experiments.shouldShowBeam,\n },\n },\n });\n }\n}\n"],"names":["y","i","t","e","h","w","s","d","_beamConfig","_beamCartCookie","_attachEventListeners","attachEventListeners_fn","_initializeStatsig","initializeStatsig_fn","_setBeamVisibilityValue","setBeamVisibilityValue_fn","_testStatsigConnection","testStatsigConnection_fn","_registerExperimentWithBeam","registerExperimentWithBeam_fn","STATSIG_VERSION","STATSIG_SCRIPT_URL","STATSIG_STABLE_ID_COOKIE","BEAM_VISIBILITY_DATA_ATTRIBUTE","BEAM_VISIBILITY_SYNCED_CLASS","BEAM_AB_TEST_EVENTS","StatsigPlugin","options","__privateAdd","config","__privateSet","__privateMethod","beamVisibilityStylesheet","BeamError","saveRemoteSession","getCookieValue","BEAM_CART_COOKIE_NAME","setCookieValue","logger","name","value","metadata","withBeam","BeamCartCreatedEvent","_event","event","itemCount","cartId","subtotal","currencyCode","BeamOrderCreatedEvent","orderId","cartTotal","__privateGet","lastSelectedNonprofitId","BeamNonprofitSelectEvent","selectedNonprofitId","selectionId","statsigScript","statsigReadyPromise","res","rej","statsigOptions","url","err","postExperimentSession"],"mappings":"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"}
|
|
@@ -1,7 +1,14 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
export { b as errors } from '../chunks/beam-errors-bKCZlkvr.esm.js';
|
|
2
|
+
export { e as events } from '../chunks/events-rt-wdsLM.esm.js';
|
|
3
|
+
export { logger } from '../utils/logger.js';
|
|
4
|
+
export { fetchProxy, initNetworkListeners, xhrProxy } from '../utils/network-listeners.js';
|
|
5
|
+
export { createScopedLocalStorage } from '../utils/local-storage.js';
|
|
6
|
+
export { waitForElement } from '../utils/wait-for-element.js';
|
|
7
|
+
export { CookieChangeEvent, deleteCookieValue, getCookieMap, getCookieValue, setCookieValue } from '../utils/cookies.js';
|
|
8
|
+
export { getRemoteSession, saveRemoteSession } from '../utils/remote-session.js';
|
|
9
|
+
export { memoizeLast } from '../utils/memoize-last.js';
|
|
10
|
+
export { default as debounce } from 'lodash-es/debounce';
|
|
11
|
+
export { default as isEqual } from 'lodash-es/isEqual';
|
|
12
|
+
import '../chunks/cart-contents-22-v_s94.esm.js';
|
|
7
13
|
import '../chunks/openapi-spec-scRfHArN.esm.js';
|
|
14
|
+
import '../chunks/types-7kSi85Gv.esm.js';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{b as r}from"../chunks/beam-errors-AMvTvR1C.esm.js";import{e as s}from"../chunks/events-5IECSF-x.esm.js";import{logger as m}from"../utils/logger.esm.js";import{fetchProxy as x,initNetworkListeners as p,xhrProxy as f}from"../utils/network-listeners.esm.js";import{createScopedLocalStorage as n}from"../utils/local-storage.esm.js";import{waitForElement as c}from"../utils/wait-for-element.esm.js";import{deleteCookieValue as u,getCookieMap as d,getCookieValue as C,setCookieValue as S}from"../utils/cookies.esm.js";import{getRemoteSession as V,saveRemoteSession as b}from"../utils/remote-session.esm.js";import{memoizeLast as v}from"../utils/memoize-last.esm.js";import{d as y,i as E}from"../chunks/lodash-P8OIs-at.esm.js";export{n as createScopedLocalStorage,y as debounce,u as deleteCookieValue,r as errors,s as events,x as fetchProxy,d as getCookieMap,C as getCookieValue,V as getRemoteSession,p as initNetworkListeners,E as isEqual,m as logger,v as memoizeLast,b as saveRemoteSession,S as setCookieValue,c as waitForElement,f as xhrProxy};
|
|
2
2
|
//# sourceMappingURL=utils.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{b as r}from"../chunks/beam-errors-AMvTvR1C.esm.js";import{e as s}from"../chunks/events-5IECSF-x.esm.js";import{logger as m}from"../utils/logger.js";import{fetchProxy as x,initNetworkListeners as p,xhrProxy as f}from"../utils/network-listeners.js";import{createScopedLocalStorage as n}from"../utils/local-storage.js";import{waitForElement as c}from"../utils/wait-for-element.js";import{deleteCookieValue as u,getCookieMap as d,getCookieValue as C,setCookieValue as S}from"../utils/cookies.js";import{getRemoteSession as V,saveRemoteSession as b}from"../utils/remote-session.js";import{memoizeLast as v}from"../utils/memoize-last.js";import{d as y,i as E}from"../chunks/lodash-P8OIs-at.esm.js";export{n as createScopedLocalStorage,y as debounce,u as deleteCookieValue,r as errors,s as events,x as fetchProxy,d as getCookieMap,C as getCookieValue,V as getRemoteSession,p as initNetworkListeners,E as isEqual,m as logger,v as memoizeLast,b as saveRemoteSession,S as setCookieValue,c as waitForElement,f as xhrProxy};
|
|
2
2
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import o from"react";import{l as r}from"../chunks/lit-
|
|
1
|
+
import o from"react";import{l as r}from"../chunks/lit-yVXn5Cbs.esm.js";import{BeamPartnerLogos as a}from"../components/beam-partner-logos.esm.js";const e=r({tagName:"beam-partner-logos",elementClass:a,react:o,events:{}});export{e as BeamPartnerLogos,e as default};
|
|
2
2
|
//# sourceMappingURL=beam-partner-logos.esm.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import o from"react";import{l as r}from"../chunks/lit-
|
|
1
|
+
import o from"react";import{l as r}from"../chunks/lit-yVXn5Cbs.esm.js";import{BeamPartnerLogos as a}from"../components/beam-partner-logos.js";const e=r({tagName:"beam-partner-logos",elementClass:a,react:o,events:{}});export{e as BeamPartnerLogos,e as default};
|
|
2
2
|
//# sourceMappingURL=beam-partner-logos.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import o from"react";import{l as a}from"../chunks/lit-
|
|
1
|
+
import o from"react";import{l as a}from"../chunks/lit-yVXn5Cbs.esm.js";import{BeamCommunityImpact as m}from"../components/community-impact.esm.js";import"../chunks/progress-bar-7gWYaGlq.esm.js";import"../components/beam-partner-logos.esm.js";import"../chunks/localize-BGPniqcI.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.esm.js";import"../chunks/routes-2eYzHPEh.esm.js";import"../chunks/css-card-grid-3b56QBzq.esm.js";const t=a({tagName:m.tagName,elementClass:m,react:o,events:{}});export{t as BeamCommunityImpact,t as default};
|
|
2
2
|
//# sourceMappingURL=community-impact.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"community-impact.esm.js","sources":["../../src/components/community-impact/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamCommunityImpact as _BeamCommunityImpact } from \"./index\";\n\nexport const BeamCommunityImpact = createComponent({\n tagName: _BeamCommunityImpact.tagName,\n elementClass: _BeamCommunityImpact,\n react: React,\n events: {},\n});\n\nexport default BeamCommunityImpact; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamCommunityImpact","createComponent","_BeamCommunityImpact","React"],"mappings":"
|
|
1
|
+
{"version":3,"file":"community-impact.esm.js","sources":["../../src/components/community-impact/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamCommunityImpact as _BeamCommunityImpact } from \"./index\";\n\nexport const BeamCommunityImpact = createComponent({\n tagName: _BeamCommunityImpact.tagName,\n elementClass: _BeamCommunityImpact,\n react: React,\n events: {},\n});\n\nexport default BeamCommunityImpact; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamCommunityImpact","createComponent","_BeamCommunityImpact","React"],"mappings":"mcAIO,MAAMA,EAAsBC,EAAgB,CACjD,QAASC,EAAqB,QAC9B,aAAcA,EACd,MAAOC,EACP,OAAQ,CAAA,CACV,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import o from"react";import{l as a}from"../chunks/lit-
|
|
1
|
+
import o from"react";import{l as a}from"../chunks/lit-yVXn5Cbs.esm.js";import{BeamCommunityImpact as m}from"../components/community-impact.js";import"../chunks/progress-bar-7gWYaGlq.esm.js";import"../components/beam-partner-logos.js";import"../chunks/localize-dXHrlK8g.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.js";import"../chunks/routes-dMIUHq8Y.esm.js";import"../chunks/css-card-grid-3b56QBzq.esm.js";const t=a({tagName:m.tagName,elementClass:m,react:o,events:{}});export{t as BeamCommunityImpact,t as default};
|
|
2
2
|
//# sourceMappingURL=community-impact.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"community-impact.js","sources":["../../src/components/community-impact/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamCommunityImpact as _BeamCommunityImpact } from \"./index\";\n\nexport const BeamCommunityImpact = createComponent({\n tagName: _BeamCommunityImpact.tagName,\n elementClass: _BeamCommunityImpact,\n react: React,\n events: {},\n});\n\nexport default BeamCommunityImpact; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamCommunityImpact","createComponent","_BeamCommunityImpact","React"],"mappings":"
|
|
1
|
+
{"version":3,"file":"community-impact.js","sources":["../../src/components/community-impact/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamCommunityImpact as _BeamCommunityImpact } from \"./index\";\n\nexport const BeamCommunityImpact = createComponent({\n tagName: _BeamCommunityImpact.tagName,\n elementClass: _BeamCommunityImpact,\n react: React,\n events: {},\n});\n\nexport default BeamCommunityImpact; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamCommunityImpact","createComponent","_BeamCommunityImpact","React"],"mappings":"ubAIO,MAAMA,EAAsBC,EAAgB,CACjD,QAASC,EAAqB,QAC9B,aAAcA,EACd,MAAOC,EACP,OAAQ,CAAA,CACV,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import a from"react";import{l as e}from"../chunks/lit-
|
|
1
|
+
import a from"react";import{l as e}from"../chunks/lit-yVXn5Cbs.esm.js";import{BeamCumulativeImpact as m}from"../components/cumulative-impact.esm.js";import"../chunks/lodash-P8OIs-at.esm.js";import"../chunks/localize-BGPniqcI.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.esm.js";import"../chunks/routes-2eYzHPEh.esm.js";import"../chunks/is-all-html-elements-SdSkxirh.esm.js";const t=e({tagName:m.tagName,elementClass:m,react:a,events:{}});export{t as BeamCumulativeImpact,t as default};
|
|
2
2
|
//# sourceMappingURL=cumulative-impact.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cumulative-impact.esm.js","sources":["../../src/components/cumulative-impact/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamCumulativeImpact as _BeamCumulativeImpact } from \"./index\";\n\nexport const BeamCumulativeImpact = createComponent({\n tagName: _BeamCumulativeImpact.tagName,\n elementClass: _BeamCumulativeImpact,\n react: React,\n events: {},\n});\n\nexport default BeamCumulativeImpact; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamCumulativeImpact","createComponent","_BeamCumulativeImpact","React"],"mappings":"
|
|
1
|
+
{"version":3,"file":"cumulative-impact.esm.js","sources":["../../src/components/cumulative-impact/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamCumulativeImpact as _BeamCumulativeImpact } from \"./index\";\n\nexport const BeamCumulativeImpact = createComponent({\n tagName: _BeamCumulativeImpact.tagName,\n elementClass: _BeamCumulativeImpact,\n react: React,\n events: {},\n});\n\nexport default BeamCumulativeImpact; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamCumulativeImpact","createComponent","_BeamCumulativeImpact","React"],"mappings":"sZAIO,MAAMA,EAAuBC,EAAgB,CAClD,QAASC,EAAsB,QAC/B,aAAcA,EACd,MAAOC,EACP,OAAQ,CAAA,CACV,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import a from"react";import{l as e}from"../chunks/lit-
|
|
1
|
+
import a from"react";import{l as e}from"../chunks/lit-yVXn5Cbs.esm.js";import{BeamCumulativeImpact as m}from"../components/cumulative-impact.js";import"../chunks/lodash-P8OIs-at.esm.js";import"../chunks/localize-dXHrlK8g.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.js";import"../chunks/routes-dMIUHq8Y.esm.js";import"../chunks/is-all-html-elements-SdSkxirh.esm.js";const t=e({tagName:m.tagName,elementClass:m,react:a,events:{}});export{t as BeamCumulativeImpact,t as default};
|
|
2
2
|
//# sourceMappingURL=cumulative-impact.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cumulative-impact.js","sources":["../../src/components/cumulative-impact/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamCumulativeImpact as _BeamCumulativeImpact } from \"./index\";\n\nexport const BeamCumulativeImpact = createComponent({\n tagName: _BeamCumulativeImpact.tagName,\n elementClass: _BeamCumulativeImpact,\n react: React,\n events: {},\n});\n\nexport default BeamCumulativeImpact; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamCumulativeImpact","createComponent","_BeamCumulativeImpact","React"],"mappings":"
|
|
1
|
+
{"version":3,"file":"cumulative-impact.js","sources":["../../src/components/cumulative-impact/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamCumulativeImpact as _BeamCumulativeImpact } from \"./index\";\n\nexport const BeamCumulativeImpact = createComponent({\n tagName: _BeamCumulativeImpact.tagName,\n elementClass: _BeamCumulativeImpact,\n react: React,\n events: {},\n});\n\nexport default BeamCumulativeImpact; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamCumulativeImpact","createComponent","_BeamCumulativeImpact","React"],"mappings":"8YAIO,MAAMA,EAAuBC,EAAgB,CAClD,QAASC,EAAsB,QAC/B,aAAcA,EACd,MAAOC,EACP,OAAQ,CAAA,CACV,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import r from"react";import{l as e}from"../chunks/lit-
|
|
1
|
+
import r from"react";import{l as e}from"../chunks/lit-yVXn5Cbs.esm.js";import{BeamImpactOverview as m}from"../components/impact-overview.esm.js";import"../chunks/lodash-P8OIs-at.esm.js";import"../chunks/routes-2eYzHPEh.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.esm.js";import"../chunks/progress-bar-7gWYaGlq.esm.js";import"../chunks/localize-BGPniqcI.esm.js";import"../chunks/vendor-eeJfrOkP.esm.js";import"../chunks/is-all-html-elements-SdSkxirh.esm.js";import"../components/beam-partner-logos.esm.js";import"../chunks/responsive-LYEag6TI.esm.js";const t=e({tagName:m.tagName,elementClass:m,react:r,events:{}});export{t as BeamImpactOverview,t as default};
|
|
2
2
|
//# sourceMappingURL=impact-overview.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"impact-overview.esm.js","sources":["../../src/components/impact-overview/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamImpactOverview as _BeamImpactOverview } from \"./index\";\n\nexport const BeamImpactOverview = createComponent({\n tagName: _BeamImpactOverview.tagName,\n elementClass: _BeamImpactOverview,\n react: React,\n events: {},\n});\n\nexport default BeamImpactOverview; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamImpactOverview","createComponent","_BeamImpactOverview","React"],"mappings":"
|
|
1
|
+
{"version":3,"file":"impact-overview.esm.js","sources":["../../src/components/impact-overview/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamImpactOverview as _BeamImpactOverview } from \"./index\";\n\nexport const BeamImpactOverview = createComponent({\n tagName: _BeamImpactOverview.tagName,\n elementClass: _BeamImpactOverview,\n react: React,\n events: {},\n});\n\nexport default BeamImpactOverview; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamImpactOverview","createComponent","_BeamImpactOverview","React"],"mappings":"ukBAIO,MAAMA,EAAqBC,EAAgB,CAChD,QAASC,EAAoB,QAC7B,aAAcA,EACd,MAAOC,EACP,OAAQ,CAAA,CACV,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import r from"react";import{l as e}from"../chunks/lit-
|
|
1
|
+
import r from"react";import{l as e}from"../chunks/lit-yVXn5Cbs.esm.js";import{BeamImpactOverview as m}from"../components/impact-overview.js";import"../chunks/lodash-P8OIs-at.esm.js";import"../chunks/routes-dMIUHq8Y.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.js";import"../chunks/progress-bar-7gWYaGlq.esm.js";import"../chunks/localize-dXHrlK8g.esm.js";import"../chunks/vendor-eeJfrOkP.esm.js";import"../chunks/is-all-html-elements-SdSkxirh.esm.js";import"../components/beam-partner-logos.js";import"../chunks/responsive-LYEag6TI.esm.js";const t=e({tagName:m.tagName,elementClass:m,react:r,events:{}});export{t as BeamImpactOverview,t as default};
|
|
2
2
|
//# sourceMappingURL=impact-overview.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"impact-overview.js","sources":["../../src/components/impact-overview/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamImpactOverview as _BeamImpactOverview } from \"./index\";\n\nexport const BeamImpactOverview = createComponent({\n tagName: _BeamImpactOverview.tagName,\n elementClass: _BeamImpactOverview,\n react: React,\n events: {},\n});\n\nexport default BeamImpactOverview; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamImpactOverview","createComponent","_BeamImpactOverview","React"],"mappings":"
|
|
1
|
+
{"version":3,"file":"impact-overview.js","sources":["../../src/components/impact-overview/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamImpactOverview as _BeamImpactOverview } from \"./index\";\n\nexport const BeamImpactOverview = createComponent({\n tagName: _BeamImpactOverview.tagName,\n elementClass: _BeamImpactOverview,\n react: React,\n events: {},\n});\n\nexport default BeamImpactOverview; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamImpactOverview","createComponent","_BeamImpactOverview","React"],"mappings":"2jBAIO,MAAMA,EAAqBC,EAAgB,CAChD,QAASC,EAAoB,QAC7B,aAAcA,EACd,MAAOC,EACP,OAAQ,CAAA,CACV,CAAC"}
|
package/dist/react/index.d.ts
CHANGED
|
@@ -15,8 +15,8 @@ import '../chunks/types-7kSi85Gv.esm.js';
|
|
|
15
15
|
import '../components/cumulative-impact.js';
|
|
16
16
|
import 'lodash';
|
|
17
17
|
import '../components/impact-overview.js';
|
|
18
|
-
import '../chunks/events-
|
|
19
|
-
import '../chunks/cart-contents-
|
|
18
|
+
import '../chunks/events-rt-wdsLM.esm.js';
|
|
19
|
+
import '../chunks/cart-contents-22-v_s94.esm.js';
|
|
20
20
|
import '../chunks/openapi-spec-scRfHArN.esm.js';
|
|
21
21
|
import '../components/select-nonprofit.js';
|
|
22
22
|
import '../components/redeem-transaction.js';
|
package/dist/react/index.esm.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{BeamCommunityImpact as
|
|
1
|
+
import{BeamCommunityImpact as R}from"./community-impact.esm.js";import{BeamCumulativeImpact as T}from"./cumulative-impact.esm.js";import{BeamImpactOverview as g}from"./impact-overview.esm.js";import{BeamSelectNonprofit as k}from"./select-nonprofit.esm.js";import{BeamRedeemTransaction as z}from"./redeem-transaction.esm.js";import{BeamPostPurchase as D}from"./post-purchase.esm.js";import"react";import"../chunks/lit-yVXn5Cbs.esm.js";import"../components/community-impact.esm.js";import"../chunks/progress-bar-7gWYaGlq.esm.js";import"../components/beam-partner-logos.esm.js";import"../chunks/localize-BGPniqcI.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.esm.js";import"../chunks/routes-2eYzHPEh.esm.js";import"../chunks/css-card-grid-3b56QBzq.esm.js";import"../components/cumulative-impact.esm.js";import"../chunks/lodash-P8OIs-at.esm.js";import"../chunks/is-all-html-elements-SdSkxirh.esm.js";import"../components/impact-overview.esm.js";import"../chunks/vendor-eeJfrOkP.esm.js";import"../chunks/responsive-LYEag6TI.esm.js";import"../chunks/events-5IECSF-x.esm.js";import"../components/select-nonprofit.esm.js";import"../utils/network-listeners.esm.js";import"../utils/local-storage.esm.js";import"../utils/cookies.esm.js";import"../chunks/cart-contents-h60geKWa.esm.js";import"../components/redeem-transaction.esm.js";import"../components/post-purchase.esm.js";export{R as BeamCommunityImpact,T as BeamCumulativeImpact,g as BeamImpactOverview,D as BeamPostPurchase,z as BeamRedeemTransaction,k as BeamSelectNonprofit};
|
|
2
2
|
//# sourceMappingURL=index.esm.js.map
|
package/dist/react/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{BeamCommunityImpact as
|
|
1
|
+
import{BeamCommunityImpact as R}from"./community-impact.js";import{BeamCumulativeImpact as T}from"./cumulative-impact.js";import{BeamImpactOverview as g}from"./impact-overview.js";import{BeamSelectNonprofit as k}from"./select-nonprofit.js";import{BeamRedeemTransaction as z}from"./redeem-transaction.js";import{BeamPostPurchase as D}from"./post-purchase.js";import"react";import"../chunks/lit-yVXn5Cbs.esm.js";import"../components/community-impact.js";import"../chunks/progress-bar-7gWYaGlq.esm.js";import"../components/beam-partner-logos.js";import"../chunks/localize-dXHrlK8g.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.js";import"../chunks/routes-dMIUHq8Y.esm.js";import"../chunks/css-card-grid-3b56QBzq.esm.js";import"../components/cumulative-impact.js";import"../chunks/lodash-P8OIs-at.esm.js";import"../chunks/is-all-html-elements-SdSkxirh.esm.js";import"../components/impact-overview.js";import"../chunks/vendor-eeJfrOkP.esm.js";import"../chunks/responsive-LYEag6TI.esm.js";import"../chunks/events-5IECSF-x.esm.js";import"../components/select-nonprofit.js";import"../utils/network-listeners.js";import"../utils/local-storage.js";import"../utils/cookies.js";import"../chunks/cart-contents-h60geKWa.esm.js";import"../components/redeem-transaction.js";import"../components/post-purchase.js";export{R as BeamCommunityImpact,T as BeamCumulativeImpact,g as BeamImpactOverview,D as BeamPostPurchase,z as BeamRedeemTransaction,k as BeamSelectNonprofit};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -8,7 +8,7 @@ import 'lodash';
|
|
|
8
8
|
import '../chunks/progress-bar-0VS_AmEf.esm.js';
|
|
9
9
|
import '../components/beam-partner-logos.js';
|
|
10
10
|
import '../chunks/types-7kSi85Gv.esm.js';
|
|
11
|
-
import '../chunks/cart-contents-
|
|
11
|
+
import '../chunks/cart-contents-22-v_s94.esm.js';
|
|
12
12
|
import '../chunks/openapi-spec-scRfHArN.esm.js';
|
|
13
13
|
import '../components/impact-overview.js';
|
|
14
14
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import o from"react";import{l as r}from"../chunks/lit-
|
|
1
|
+
import o from"react";import{l as r}from"../chunks/lit-yVXn5Cbs.esm.js";import{BeamPostPurchase as t}from"../components/post-purchase.esm.js";import"../utils/cookies.esm.js";import"../chunks/localize-BGPniqcI.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.esm.js";import"../utils/local-storage.esm.js";import"../chunks/routes-2eYzHPEh.esm.js";import"../components/redeem-transaction.esm.js";import"../chunks/lodash-P8OIs-at.esm.js";import"../chunks/progress-bar-7gWYaGlq.esm.js";import"../components/beam-partner-logos.esm.js";import"../chunks/css-card-grid-3b56QBzq.esm.js";import"../chunks/events-5IECSF-x.esm.js";import"../components/impact-overview.esm.js";import"../chunks/vendor-eeJfrOkP.esm.js";import"../chunks/is-all-html-elements-SdSkxirh.esm.js";import"../chunks/responsive-LYEag6TI.esm.js";import"../chunks/cart-contents-h60geKWa.esm.js";const m=r({tagName:t.tagName,elementClass:t,react:o,events:{}});export{m as BeamPostPurchase,m as default};
|
|
2
2
|
//# sourceMappingURL=post-purchase.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post-purchase.esm.js","sources":["../../src/components/post-purchase/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamPostPurchase as _BeamPostPurchase } from \"./index\";\n\nexport const BeamPostPurchase = createComponent({\n tagName: _BeamPostPurchase.tagName,\n elementClass: _BeamPostPurchase,\n react: React,\n events: {},\n});\n\nexport default BeamPostPurchase; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamPostPurchase","createComponent","_BeamPostPurchase","React"],"mappings":"
|
|
1
|
+
{"version":3,"file":"post-purchase.esm.js","sources":["../../src/components/post-purchase/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamPostPurchase as _BeamPostPurchase } from \"./index\";\n\nexport const BeamPostPurchase = createComponent({\n tagName: _BeamPostPurchase.tagName,\n elementClass: _BeamPostPurchase,\n react: React,\n events: {},\n});\n\nexport default BeamPostPurchase; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamPostPurchase","createComponent","_BeamPostPurchase","React"],"mappings":"+2BAIO,MAAMA,EAAmBC,EAAgB,CAC9C,QAASC,EAAkB,QAC3B,aAAcA,EACd,MAAOC,EACP,OAAQ,CAAA,CACV,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import o from"react";import{l as r}from"../chunks/lit-
|
|
1
|
+
import o from"react";import{l as r}from"../chunks/lit-yVXn5Cbs.esm.js";import{BeamPostPurchase as t}from"../components/post-purchase.js";import"../utils/cookies.js";import"../chunks/localize-dXHrlK8g.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.js";import"../utils/local-storage.js";import"../chunks/routes-dMIUHq8Y.esm.js";import"../components/redeem-transaction.js";import"../chunks/lodash-P8OIs-at.esm.js";import"../chunks/progress-bar-7gWYaGlq.esm.js";import"../components/beam-partner-logos.js";import"../chunks/css-card-grid-3b56QBzq.esm.js";import"../chunks/events-5IECSF-x.esm.js";import"../components/impact-overview.js";import"../chunks/vendor-eeJfrOkP.esm.js";import"../chunks/is-all-html-elements-SdSkxirh.esm.js";import"../chunks/responsive-LYEag6TI.esm.js";import"../chunks/cart-contents-h60geKWa.esm.js";const m=r({tagName:t.tagName,elementClass:t,react:o,events:{}});export{m as BeamPostPurchase,m as default};
|
|
2
2
|
//# sourceMappingURL=post-purchase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post-purchase.js","sources":["../../src/components/post-purchase/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamPostPurchase as _BeamPostPurchase } from \"./index\";\n\nexport const BeamPostPurchase = createComponent({\n tagName: _BeamPostPurchase.tagName,\n elementClass: _BeamPostPurchase,\n react: React,\n events: {},\n});\n\nexport default BeamPostPurchase; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamPostPurchase","createComponent","_BeamPostPurchase","React"],"mappings":"
|
|
1
|
+
{"version":3,"file":"post-purchase.js","sources":["../../src/components/post-purchase/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent } from \"@lit/react\";\nimport { BeamPostPurchase as _BeamPostPurchase } from \"./index\";\n\nexport const BeamPostPurchase = createComponent({\n tagName: _BeamPostPurchase.tagName,\n elementClass: _BeamPostPurchase,\n react: React,\n events: {},\n});\n\nexport default BeamPostPurchase; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamPostPurchase","createComponent","_BeamPostPurchase","React"],"mappings":"m1BAIO,MAAMA,EAAmBC,EAAgB,CAC9C,QAASC,EAAkB,QAC3B,aAAcA,EACd,MAAOC,EACP,OAAQ,CAAA,CACV,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as _lit_react from '@lit/react';
|
|
2
2
|
import { EventName } from '@lit/react';
|
|
3
|
-
import { B as BeamNonprofitSelectEvent } from '../chunks/events-
|
|
3
|
+
import { B as BeamNonprofitSelectEvent } from '../chunks/events-rt-wdsLM.esm.js';
|
|
4
4
|
import { BeamRedeemTransaction as BeamRedeemTransaction$1 } from '../components/redeem-transaction.js';
|
|
5
|
-
import '../chunks/cart-contents-
|
|
5
|
+
import '../chunks/cart-contents-22-v_s94.esm.js';
|
|
6
6
|
import '../chunks/openapi-spec-scRfHArN.esm.js';
|
|
7
7
|
import '../chunks/types-7kSi85Gv.esm.js';
|
|
8
8
|
import 'lit-html';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import m from"react";import{l as o}from"../chunks/lit-
|
|
1
|
+
import m from"react";import{l as o}from"../chunks/lit-yVXn5Cbs.esm.js";import{c as r}from"../chunks/events-5IECSF-x.esm.js";import{BeamRedeemTransaction as e}from"../components/redeem-transaction.esm.js";import"../chunks/lodash-P8OIs-at.esm.js";import"../chunks/localize-BGPniqcI.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.esm.js";import"../chunks/routes-2eYzHPEh.esm.js";import"../chunks/progress-bar-7gWYaGlq.esm.js";import"../components/beam-partner-logos.esm.js";import"../utils/local-storage.esm.js";import"../chunks/css-card-grid-3b56QBzq.esm.js";const t=o({tagName:e.tagName,elementClass:e,react:m,events:{onNonprofitSelect:r.eventName}});export{t as BeamRedeemTransaction,t as default};
|
|
2
2
|
//# sourceMappingURL=redeem-transaction.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redeem-transaction.esm.js","sources":["../../src/components/redeem-transaction/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent, EventName } from \"@lit/react\";\nimport { BeamNonprofitSelectEvent } from \"../../
|
|
1
|
+
{"version":3,"file":"redeem-transaction.esm.js","sources":["../../src/components/redeem-transaction/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent, EventName } from \"@lit/react\";\nimport { BeamNonprofitSelectEvent } from \"../../utils/events\";\nimport { BeamRedeemTransaction as _BeamRedeemTransaction } from \"./index\";\n\nexport const BeamRedeemTransaction = createComponent({\n tagName: _BeamRedeemTransaction.tagName,\n elementClass: _BeamRedeemTransaction,\n react: React,\n events: {\n onNonprofitSelect: BeamNonprofitSelectEvent.eventName as EventName<BeamNonprofitSelectEvent>,\n },\n});\n\nexport default BeamRedeemTransaction; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamRedeemTransaction","createComponent","_BeamRedeemTransaction","React","BeamNonprofitSelectEvent"],"mappings":"2kBAKa,MAAAA,EAAwBC,EAAgB,CACnD,QAASC,EAAuB,QAChC,aAAcA,EACd,MAAOC,EACP,OAAQ,CACN,kBAAmBC,EAAyB,SAC9C,CACF,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import m from"react";import{l as o}from"../chunks/lit-
|
|
1
|
+
import m from"react";import{l as o}from"../chunks/lit-yVXn5Cbs.esm.js";import{c as r}from"../chunks/events-5IECSF-x.esm.js";import{BeamRedeemTransaction as e}from"../components/redeem-transaction.js";import"../chunks/lodash-P8OIs-at.esm.js";import"../chunks/localize-dXHrlK8g.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.js";import"../chunks/routes-dMIUHq8Y.esm.js";import"../chunks/progress-bar-7gWYaGlq.esm.js";import"../components/beam-partner-logos.js";import"../utils/local-storage.js";import"../chunks/css-card-grid-3b56QBzq.esm.js";const t=o({tagName:e.tagName,elementClass:e,react:m,events:{onNonprofitSelect:r.eventName}});export{t as BeamRedeemTransaction,t as default};
|
|
2
2
|
//# sourceMappingURL=redeem-transaction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redeem-transaction.js","sources":["../../src/components/redeem-transaction/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent, EventName } from \"@lit/react\";\nimport { BeamNonprofitSelectEvent } from \"../../
|
|
1
|
+
{"version":3,"file":"redeem-transaction.js","sources":["../../src/components/redeem-transaction/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent, EventName } from \"@lit/react\";\nimport { BeamNonprofitSelectEvent } from \"../../utils/events\";\nimport { BeamRedeemTransaction as _BeamRedeemTransaction } from \"./index\";\n\nexport const BeamRedeemTransaction = createComponent({\n tagName: _BeamRedeemTransaction.tagName,\n elementClass: _BeamRedeemTransaction,\n react: React,\n events: {\n onNonprofitSelect: BeamNonprofitSelectEvent.eventName as EventName<BeamNonprofitSelectEvent>,\n },\n});\n\nexport default BeamRedeemTransaction; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamRedeemTransaction","createComponent","_BeamRedeemTransaction","React","BeamNonprofitSelectEvent"],"mappings":"2jBAKa,MAAAA,EAAwBC,EAAgB,CACnD,QAASC,EAAuB,QAChC,aAAcA,EACd,MAAOC,EACP,OAAQ,CACN,kBAAmBC,EAAyB,SAC9C,CACF,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as _lit_react from '@lit/react';
|
|
2
2
|
import { EventName } from '@lit/react';
|
|
3
|
-
import { B as BeamNonprofitSelectEvent } from '../chunks/events-
|
|
3
|
+
import { B as BeamNonprofitSelectEvent } from '../chunks/events-rt-wdsLM.esm.js';
|
|
4
4
|
import { BeamSelectNonprofit as BeamSelectNonprofit$1 } from '../components/select-nonprofit.js';
|
|
5
|
-
import '../chunks/cart-contents-
|
|
5
|
+
import '../chunks/cart-contents-22-v_s94.esm.js';
|
|
6
6
|
import '../chunks/openapi-spec-scRfHArN.esm.js';
|
|
7
7
|
import '../chunks/types-7kSi85Gv.esm.js';
|
|
8
8
|
import 'lit-html';
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import o from"react";import{l as e}from"../chunks/lit-
|
|
1
|
+
import o from"react";import{l as e}from"../chunks/lit-yVXn5Cbs.esm.js";import{c as m}from"../chunks/events-5IECSF-x.esm.js";import{BeamSelectNonprofit as r}from"../components/select-nonprofit.esm.js";import"../chunks/localize-BGPniqcI.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.esm.js";import"../chunks/routes-2eYzHPEh.esm.js";import"../chunks/progress-bar-7gWYaGlq.esm.js";import"../utils/network-listeners.esm.js";import"../utils/local-storage.esm.js";import"../utils/cookies.esm.js";import"../chunks/lodash-P8OIs-at.esm.js";import"../chunks/responsive-LYEag6TI.esm.js";import"../chunks/cart-contents-h60geKWa.esm.js";const t=e({tagName:"beam-select-nonprofit",elementClass:r,react:o,events:{onNonprofitSelect:m.eventName}});export{t as BeamSelectNonprofit,t as default};
|
|
2
2
|
//# sourceMappingURL=select-nonprofit.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-nonprofit.esm.js","sources":["../../src/components/select-nonprofit/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent, EventName } from \"@lit/react\";\nimport { BeamNonprofitSelectEvent } from \"../../
|
|
1
|
+
{"version":3,"file":"select-nonprofit.esm.js","sources":["../../src/components/select-nonprofit/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent, EventName } from \"@lit/react\";\nimport { BeamNonprofitSelectEvent } from \"../../utils/events\";\nimport { BeamSelectNonprofit as _BeamSelectNonprofit } from \"./index\";\n\nexport const BeamSelectNonprofit = createComponent({\n tagName: \"beam-select-nonprofit\",\n elementClass: _BeamSelectNonprofit,\n react: React,\n events: {\n onNonprofitSelect: BeamNonprofitSelectEvent.eventName as EventName<BeamNonprofitSelectEvent>,\n },\n});\n\nexport default BeamSelectNonprofit; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamSelectNonprofit","createComponent","_BeamSelectNonprofit","React","BeamNonprofitSelectEvent"],"mappings":"8oBAKa,MAAAA,EAAsBC,EAAgB,CACjD,QAAS,wBACT,aAAcC,EACd,MAAOC,EACP,OAAQ,CACN,kBAAmBC,EAAyB,SAC9C,CACF,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import o from"react";import{l as e}from"../chunks/lit-
|
|
1
|
+
import o from"react";import{l as e}from"../chunks/lit-yVXn5Cbs.esm.js";import{c as m}from"../chunks/events-5IECSF-x.esm.js";import{BeamSelectNonprofit as r}from"../components/select-nonprofit.js";import"../chunks/localize-dXHrlK8g.esm.js";import"../chunks/beam-errors-AMvTvR1C.esm.js";import"../utils/logger.js";import"../chunks/routes-dMIUHq8Y.esm.js";import"../chunks/progress-bar-7gWYaGlq.esm.js";import"../utils/network-listeners.js";import"../utils/local-storage.js";import"../utils/cookies.js";import"../chunks/lodash-P8OIs-at.esm.js";import"../chunks/responsive-LYEag6TI.esm.js";import"../chunks/cart-contents-h60geKWa.esm.js";const t=e({tagName:"beam-select-nonprofit",elementClass:r,react:o,events:{onNonprofitSelect:m.eventName}});export{t as BeamSelectNonprofit,t as default};
|
|
2
2
|
//# sourceMappingURL=select-nonprofit.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-nonprofit.js","sources":["../../src/components/select-nonprofit/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent, EventName } from \"@lit/react\";\nimport { BeamNonprofitSelectEvent } from \"../../
|
|
1
|
+
{"version":3,"file":"select-nonprofit.js","sources":["../../src/components/select-nonprofit/react.ts"],"sourcesContent":["import React from \"react\";\nimport { createComponent, EventName } from \"@lit/react\";\nimport { BeamNonprofitSelectEvent } from \"../../utils/events\";\nimport { BeamSelectNonprofit as _BeamSelectNonprofit } from \"./index\";\n\nexport const BeamSelectNonprofit = createComponent({\n tagName: \"beam-select-nonprofit\",\n elementClass: _BeamSelectNonprofit,\n react: React,\n events: {\n onNonprofitSelect: BeamNonprofitSelectEvent.eventName as EventName<BeamNonprofitSelectEvent>,\n },\n});\n\nexport default BeamSelectNonprofit; // default alias for use with async import utils like next/dynamic and react.lazy\n"],"names":["BeamSelectNonprofit","createComponent","_BeamSelectNonprofit","React","BeamNonprofitSelectEvent"],"mappings":"0nBAKa,MAAAA,EAAsBC,EAAgB,CACjD,QAAS,wBACT,aAAcC,EACd,MAAOC,EACP,OAAQ,CACN,kBAAmBC,EAAyB,SAC9C,CACF,CAAC"}
|
package/dist/react/shopify.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import 'lodash-es/debounce';
|
|
2
|
+
import 'lodash-es/isEqual';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { B as BeamError, L as LocalStorageError, M as MissingConfig, N as NetworkError, S as SetupError } from '../chunks/beam-errors-bKCZlkvr.esm.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"beam-errors.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"beam-errors.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
declare const getCookieMap: () => Map<string, string>;
|
|
2
|
+
declare const getCookieValue: (name: string) => string | undefined;
|
|
3
|
+
declare const setCookieValue: (options: CookieInit) => undefined;
|
|
4
|
+
declare const deleteCookieValue: (options: {
|
|
5
|
+
name: string;
|
|
6
|
+
domain?: string;
|
|
7
|
+
path?: string;
|
|
8
|
+
}) => undefined;
|
|
9
|
+
interface CookieListItem {
|
|
10
|
+
name: string;
|
|
11
|
+
value: string;
|
|
12
|
+
path: string;
|
|
13
|
+
domain: string | null;
|
|
14
|
+
expires: number | null;
|
|
15
|
+
secure: boolean;
|
|
16
|
+
sameSite: "strict" | "lax" | "none";
|
|
17
|
+
}
|
|
18
|
+
interface CookieInit {
|
|
19
|
+
name: string;
|
|
20
|
+
value: string;
|
|
21
|
+
path?: string;
|
|
22
|
+
domain?: string;
|
|
23
|
+
expires?: number;
|
|
24
|
+
sameSite?: "strict" | "lax" | "none";
|
|
25
|
+
}
|
|
26
|
+
interface CookieChangeEvent extends Event {
|
|
27
|
+
readonly changed: CookieListItem[];
|
|
28
|
+
readonly deleted: CookieListItem[];
|
|
29
|
+
type: "deleted" | "changed";
|
|
30
|
+
}
|
|
31
|
+
type SetCookie = {
|
|
32
|
+
(options: CookieInit): Promise<undefined>;
|
|
33
|
+
(name: string, value: string): Promise<undefined>;
|
|
34
|
+
};
|
|
35
|
+
interface CookieStore extends EventTarget {
|
|
36
|
+
get: (name: string | {
|
|
37
|
+
name: string;
|
|
38
|
+
url: string;
|
|
39
|
+
}) => Promise<CookieListItem | undefined>;
|
|
40
|
+
getAll: (name: string | {
|
|
41
|
+
name: string;
|
|
42
|
+
url: string;
|
|
43
|
+
}) => Promise<CookieListItem[]>;
|
|
44
|
+
set: SetCookie;
|
|
45
|
+
delete: (name: string | {
|
|
46
|
+
name: string;
|
|
47
|
+
domain?: string | null;
|
|
48
|
+
path?: string;
|
|
49
|
+
}) => Promise<undefined>;
|
|
50
|
+
onchange: (event: CookieChangeEvent) => boolean | void | Promise<boolean | void>;
|
|
51
|
+
}
|
|
52
|
+
declare global {
|
|
53
|
+
interface Window {
|
|
54
|
+
cookieStore: CookieStore;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export { type CookieChangeEvent, deleteCookieValue, getCookieMap, getCookieValue, setCookieValue };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const s=()=>document.cookie.split("; ").reduce((e,t)=>{const[n,...o]=t.split("="),i=decodeURIComponent(o.join("="));return e.set(n,i)},new Map),C=e=>s().get(e),a=e=>{const{name:t,value:n,expires:o,...i}=e,c=encodeURIComponent(n),p=`${t}=${c}`,u=o!=null?` ;expires=${new Date(o).toUTCString()}`:"",d=Object.entries(i).map(([r,l])=>l!=null?` ;${r}=${l}`:"").join("");document.cookie=p+d+u},k=e=>a({...e,value:"",expires:0});export{k as deleteCookieValue,s as getCookieMap,C as getCookieValue,a as setCookieValue};
|
|
2
|
+
//# sourceMappingURL=cookies.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookies.esm.js","sources":["../../src/utils/cookies.ts"],"sourcesContent":["/*\n * Wrapper functions for CookieStore using document.cookie as a fallback if not supported\n */\n\nexport const getCookieMap = () => {\n return document.cookie.split(\"; \").reduce((res, x) => {\n const [key, ...restOfString] = x.split(\"=\");\n const value = decodeURIComponent(restOfString.join(\"=\"));\n return res.set(key, value);\n }, new Map<string, string>());\n};\n\nexport const getCookieValue = (name: string): string | undefined => {\n // New Async API, not supported in FF/Safari:\n // if (window.cookieStore) {\n // return (await window.cookieStore.get(name))?.value;\n // }\n return getCookieMap().get(name);\n};\n\nexport const setCookieValue = (options: CookieInit): undefined => {\n // New Async API, not supported in FF/Safari:\n // if (window.cookieStore) {\n // const { domain, ...rest } = options;\n // const validatedDomain = domain === \"localhost\" ? undefined : domain;\n // return await window.cookieStore.set({ ...rest, domain: validatedDomain });\n // }\n // https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie#write_a_new_cookie\n const { name, value, expires, ...rest } = options;\n const encodedValue = encodeURIComponent(value);\n const base = `${name}=${encodedValue}`;\n const expiration = expires != null ? ` ;expires=${new Date(expires).toUTCString()}` : \"\";\n const modifiers = Object.entries(rest)\n .map(([key, val]) => (val != null ? ` ;${key}=${val}` : \"\"))\n .join(\"\");\n document.cookie = base + modifiers + expiration;\n return;\n};\n\nexport const deleteCookieValue = (options: { name: string; domain?: string; path?: string }): undefined => {\n return setCookieValue({ ...options, value: \"\", expires: 0 });\n};\n\n/*\n * CookieStore API Types\n * https://developer.mozilla.org/en-US/docs/Web/API/CookieStore#browser_compatibility\n */\n\ninterface CookieListItem {\n name: string;\n value: string;\n path: string;\n domain: string | null;\n expires: number | null; // timestamp, unix time in ms\n secure: boolean;\n sameSite: \"strict\" | \"lax\" | \"none\";\n}\n\ninterface CookieInit {\n name: string;\n value: string;\n path?: string;\n domain?: string;\n expires?: number; // timestamp, unix time in ms\n sameSite?: \"strict\" | \"lax\" | \"none\";\n}\n\n// https://wicg.github.io/cookie-store/#CookieChangeEvent\nexport interface CookieChangeEvent extends Event {\n readonly changed: CookieListItem[];\n readonly deleted: CookieListItem[];\n type: \"deleted\" | \"changed\";\n}\n\ntype SetCookie = {\n (options: CookieInit): Promise<undefined>;\n (name: string, value: string): Promise<undefined>;\n};\n\n// https://wicg.github.io/cookie-store/#CookieStore\ninterface CookieStore extends EventTarget {\n get: (name: string | { name: string; url: string }) => Promise<CookieListItem | undefined>;\n getAll: (name: string | { name: string; url: string }) => Promise<CookieListItem[]>;\n set: SetCookie; // function overload for multiple signatures\n delete: (name: string | { name: string; domain?: string | null; path?: string }) => Promise<undefined>;\n onchange: (event: CookieChangeEvent) => boolean | void | Promise<boolean | void>;\n}\n\ndeclare global {\n interface Window {\n cookieStore: CookieStore;\n }\n}\n"],"names":["getCookieMap","res","x","key","restOfString","value","getCookieValue","name","setCookieValue","options","expires","rest","encodedValue","base","expiration","modifiers","val","deleteCookieValue"],"mappings":"AAIa,MAAAA,EAAe,IACnB,SAAS,OAAO,MAAM,IAAI,EAAE,OAAO,CAACC,EAAKC,IAAM,CACpD,KAAM,CAACC,EAAK,GAAGC,CAAY,EAAIF,EAAE,MAAM,GAAG,EACpCG,EAAQ,mBAAmBD,EAAa,KAAK,GAAG,CAAC,EACvD,OAAOH,EAAI,IAAIE,EAAKE,CAAK,CAC3B,EAAG,IAAI,GAAqB,EAGjBC,EAAkBC,GAKtBP,IAAe,IAAIO,CAAI,EAGnBC,EAAkBC,GAAmC,CAQhE,KAAM,CAAE,KAAAF,EAAM,MAAAF,EAAO,QAAAK,EAAS,GAAGC,CAAK,EAAIF,EACpCG,EAAe,mBAAmBP,CAAK,EACvCQ,EAAO,GAAGN,CAAI,IAAIK,CAAY,GAC9BE,EAAaJ,GAAW,KAAO,aAAa,IAAI,KAAKA,CAAO,EAAE,YAAa,CAAA,GAAK,GAChFK,EAAY,OAAO,QAAQJ,CAAI,EAClC,IAAI,CAAC,CAACR,EAAKa,CAAG,IAAOA,GAAO,KAAO,KAAKb,CAAG,IAAIa,CAAG,GAAK,EAAG,EAC1D,KAAK,EAAE,EACV,SAAS,OAASH,EAAOE,EAAYD,CAEvC,EAEaG,EAAqBR,GACzBD,EAAe,CAAE,GAAGC,EAAS,MAAO,GAAI,QAAS,CAAE,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const s=()=>document.cookie.split("; ").reduce((e,t)=>{const[n,...o]=t.split("="),i=decodeURIComponent(o.join("="));return e.set(n,i)},new Map),C=e=>s().get(e),a=e=>{const{name:t,value:n,expires:o,...i}=e,c=encodeURIComponent(n),p=`${t}=${c}`,u=o!=null?` ;expires=${new Date(o).toUTCString()}`:"",d=Object.entries(i).map(([r,l])=>l!=null?` ;${r}=${l}`:"").join("");document.cookie=p+d+u},k=e=>a({...e,value:"",expires:0});export{k as deleteCookieValue,s as getCookieMap,C as getCookieValue,a as setCookieValue};
|
|
2
|
+
//# sourceMappingURL=cookies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookies.js","sources":["../../src/utils/cookies.ts"],"sourcesContent":["/*\n * Wrapper functions for CookieStore using document.cookie as a fallback if not supported\n */\n\nexport const getCookieMap = () => {\n return document.cookie.split(\"; \").reduce((res, x) => {\n const [key, ...restOfString] = x.split(\"=\");\n const value = decodeURIComponent(restOfString.join(\"=\"));\n return res.set(key, value);\n }, new Map<string, string>());\n};\n\nexport const getCookieValue = (name: string): string | undefined => {\n // New Async API, not supported in FF/Safari:\n // if (window.cookieStore) {\n // return (await window.cookieStore.get(name))?.value;\n // }\n return getCookieMap().get(name);\n};\n\nexport const setCookieValue = (options: CookieInit): undefined => {\n // New Async API, not supported in FF/Safari:\n // if (window.cookieStore) {\n // const { domain, ...rest } = options;\n // const validatedDomain = domain === \"localhost\" ? undefined : domain;\n // return await window.cookieStore.set({ ...rest, domain: validatedDomain });\n // }\n // https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie#write_a_new_cookie\n const { name, value, expires, ...rest } = options;\n const encodedValue = encodeURIComponent(value);\n const base = `${name}=${encodedValue}`;\n const expiration = expires != null ? ` ;expires=${new Date(expires).toUTCString()}` : \"\";\n const modifiers = Object.entries(rest)\n .map(([key, val]) => (val != null ? ` ;${key}=${val}` : \"\"))\n .join(\"\");\n document.cookie = base + modifiers + expiration;\n return;\n};\n\nexport const deleteCookieValue = (options: { name: string; domain?: string; path?: string }): undefined => {\n return setCookieValue({ ...options, value: \"\", expires: 0 });\n};\n\n/*\n * CookieStore API Types\n * https://developer.mozilla.org/en-US/docs/Web/API/CookieStore#browser_compatibility\n */\n\ninterface CookieListItem {\n name: string;\n value: string;\n path: string;\n domain: string | null;\n expires: number | null; // timestamp, unix time in ms\n secure: boolean;\n sameSite: \"strict\" | \"lax\" | \"none\";\n}\n\ninterface CookieInit {\n name: string;\n value: string;\n path?: string;\n domain?: string;\n expires?: number; // timestamp, unix time in ms\n sameSite?: \"strict\" | \"lax\" | \"none\";\n}\n\n// https://wicg.github.io/cookie-store/#CookieChangeEvent\nexport interface CookieChangeEvent extends Event {\n readonly changed: CookieListItem[];\n readonly deleted: CookieListItem[];\n type: \"deleted\" | \"changed\";\n}\n\ntype SetCookie = {\n (options: CookieInit): Promise<undefined>;\n (name: string, value: string): Promise<undefined>;\n};\n\n// https://wicg.github.io/cookie-store/#CookieStore\ninterface CookieStore extends EventTarget {\n get: (name: string | { name: string; url: string }) => Promise<CookieListItem | undefined>;\n getAll: (name: string | { name: string; url: string }) => Promise<CookieListItem[]>;\n set: SetCookie; // function overload for multiple signatures\n delete: (name: string | { name: string; domain?: string | null; path?: string }) => Promise<undefined>;\n onchange: (event: CookieChangeEvent) => boolean | void | Promise<boolean | void>;\n}\n\ndeclare global {\n interface Window {\n cookieStore: CookieStore;\n }\n}\n"],"names":["getCookieMap","res","x","key","restOfString","value","getCookieValue","name","setCookieValue","options","expires","rest","encodedValue","base","expiration","modifiers","val","deleteCookieValue"],"mappings":"AAIa,MAAAA,EAAe,IACnB,SAAS,OAAO,MAAM,IAAI,EAAE,OAAO,CAACC,EAAKC,IAAM,CACpD,KAAM,CAACC,EAAK,GAAGC,CAAY,EAAIF,EAAE,MAAM,GAAG,EACpCG,EAAQ,mBAAmBD,EAAa,KAAK,GAAG,CAAC,EACvD,OAAOH,EAAI,IAAIE,EAAKE,CAAK,CAC3B,EAAG,IAAI,GAAqB,EAGjBC,EAAkBC,GAKtBP,IAAe,IAAIO,CAAI,EAGnBC,EAAkBC,GAAmC,CAQhE,KAAM,CAAE,KAAAF,EAAM,MAAAF,EAAO,QAAAK,EAAS,GAAGC,CAAK,EAAIF,EACpCG,EAAe,mBAAmBP,CAAK,EACvCQ,EAAO,GAAGN,CAAI,IAAIK,CAAY,GAC9BE,EAAaJ,GAAW,KAAO,aAAa,IAAI,KAAKA,CAAO,EAAE,YAAa,CAAA,GAAK,GAChFK,EAAY,OAAO,QAAQJ,CAAI,EAClC,IAAI,CAAC,CAACR,EAAKa,CAAG,IAAOA,GAAO,KAAO,KAAKb,CAAG,IAAIa,CAAG,GAAK,EAAG,EAC1D,KAAK,EAAE,EACV,SAAS,OAASH,EAAOE,EAAYD,CAEvC,EAEaG,EAAqBR,GACzBD,EAAe,CAAE,GAAGC,EAAS,MAAO,GAAI,QAAS,CAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as debounce } from 'lodash-es/debounce';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debounce.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debounce.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|