@beamimpact/web-sdk 1.47.1 → 1.50.1

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.
Files changed (280) hide show
  1. package/dist/chunks/_share-dialog-dependencies-RmYWlyJ0.esm.js +2 -0
  2. package/dist/chunks/_share-dialog-dependencies-RmYWlyJ0.esm.js.map +1 -0
  3. package/dist/chunks/_share-dialog-dependencies-yCBFjXxQ.esm.js +2 -0
  4. package/dist/chunks/_share-dialog-dependencies-yCBFjXxQ.esm.js.map +1 -0
  5. package/dist/chunks/beam-errors-AMvTvR1C.esm.js +2 -0
  6. package/dist/chunks/beam-errors-AMvTvR1C.esm.js.map +1 -0
  7. package/dist/chunks/{beam-errors-fXDkG1zo.esm.d.ts → beam-errors-bKCZlkvr.esm.d.ts} +2 -7
  8. package/dist/chunks/cart-contents-6_ztOjrx.esm.d.ts +18 -0
  9. package/dist/chunks/cart-contents-h60geKWa.esm.js.map +1 -1
  10. package/dist/chunks/enforce-config-S8EGgEnO.esm.js +3 -0
  11. package/dist/chunks/enforce-config-S8EGgEnO.esm.js.map +1 -0
  12. package/dist/chunks/enforce-config-l-tNb_z7.esm.js +3 -0
  13. package/dist/chunks/enforce-config-l-tNb_z7.esm.js.map +1 -0
  14. package/dist/chunks/events-T3hYV1LF.esm.js +2 -0
  15. package/dist/chunks/events-T3hYV1LF.esm.js.map +1 -0
  16. package/dist/chunks/{events-ZCTR9JGZ.esm.d.ts → events-u_8n2LIU.esm.d.ts} +33 -4
  17. package/dist/chunks/{index-PA0NAKHV.esm.d.ts → index-0X3JKFYs.esm.d.ts} +1 -1
  18. package/dist/chunks/{index-XH3OS_sy.esm.d.ts → index-2qmtuEV_.esm.d.ts} +4 -4
  19. package/dist/chunks/index-44clOvXJ.esm.js +2 -0
  20. package/dist/chunks/index-44clOvXJ.esm.js.map +1 -0
  21. package/dist/chunks/index-B-9JPaCH.esm.js +2 -0
  22. package/dist/chunks/index-B-9JPaCH.esm.js.map +1 -0
  23. package/dist/chunks/{index-b3WjW4PD.esm.js → index-CNVMNDM4.esm.js} +2 -2
  24. package/dist/chunks/index-CNVMNDM4.esm.js.map +1 -0
  25. package/dist/chunks/{index-59K_SAPn.esm.js → index-HVGMpZIV.esm.js} +2 -2
  26. package/dist/chunks/{index-59K_SAPn.esm.js.map → index-HVGMpZIV.esm.js.map} +1 -1
  27. package/dist/chunks/{index-cuCnejll.esm.js → index-UHchr4H_.esm.js} +2 -2
  28. package/dist/chunks/index-UHchr4H_.esm.js.map +1 -0
  29. package/dist/chunks/{index-KOSC2Z9-.esm.js → index-XPlAZw7t.esm.js} +2 -2
  30. package/dist/chunks/{index-KOSC2Z9-.esm.js.map → index-XPlAZw7t.esm.js.map} +1 -1
  31. package/dist/chunks/{index-v6fG3D6u.esm.d.ts → index-bhqIqVQJ.esm.d.ts} +1 -1
  32. package/dist/chunks/{index--z5MSe4-.esm.d.ts → index-cznI-EZa.esm.d.ts} +1 -1
  33. package/dist/chunks/index-dLnZQZlT.esm.js +2 -0
  34. package/dist/chunks/index-dLnZQZlT.esm.js.map +1 -0
  35. package/dist/chunks/index-f7fp9odj.esm.js +2 -0
  36. package/dist/chunks/index-f7fp9odj.esm.js.map +1 -0
  37. package/dist/chunks/index-kFulvjM4.esm.js +2 -0
  38. package/dist/chunks/index-kFulvjM4.esm.js.map +1 -0
  39. package/dist/chunks/index-m1LRybiJ.esm.js +2 -0
  40. package/dist/chunks/index-m1LRybiJ.esm.js.map +1 -0
  41. package/dist/chunks/index-puZGYsUA.esm.d.ts +46 -0
  42. package/dist/chunks/index-q2vZ79t1.esm.d.ts +46 -0
  43. package/dist/chunks/index-smGc5rsi.esm.js +2 -0
  44. package/dist/chunks/index-smGc5rsi.esm.js.map +1 -0
  45. package/dist/chunks/index-wz6Yfo37.esm.js +2 -0
  46. package/dist/chunks/index-wz6Yfo37.esm.js.map +1 -0
  47. package/dist/chunks/{localize-o-cYvHQf.esm.js → localize-7sMSg1W9.esm.js} +2 -2
  48. package/dist/chunks/{localize-o-cYvHQf.esm.js.map → localize-7sMSg1W9.esm.js.map} +1 -1
  49. package/dist/chunks/{localize-m-_ESmpk.esm.js → localize-OiRewTgu.esm.js} +2 -2
  50. package/dist/chunks/{localize-m-_ESmpk.esm.js.map → localize-OiRewTgu.esm.js.map} +1 -1
  51. package/dist/chunks/{openapi-spec-hjdK2L9Q.esm.d.ts → openapi-spec-bxGNhNMa.esm.d.ts} +332 -0
  52. package/dist/chunks/order-page-WPxvCNLM.esm.js +2 -0
  53. package/dist/chunks/order-page-WPxvCNLM.esm.js.map +1 -0
  54. package/dist/chunks/order-page-ZpOf35sP.esm.js +2 -0
  55. package/dist/chunks/order-page-ZpOf35sP.esm.js.map +1 -0
  56. package/dist/chunks/{order-page-9clVUPaS.esm.d.ts → order-page-dlXIs0gJ.esm.d.ts} +6 -4
  57. package/dist/chunks/promo-types-aQ_hre6t.esm.d.ts +14 -0
  58. package/dist/chunks/promoManager--3WXq4at.esm.js +2 -0
  59. package/dist/chunks/promoManager--3WXq4at.esm.js.map +1 -0
  60. package/dist/chunks/promoManager-YUzbMtwY.esm.js +2 -0
  61. package/dist/chunks/promoManager-YUzbMtwY.esm.js.map +1 -0
  62. package/dist/chunks/routes-YPOoVIR2.esm.js +2 -0
  63. package/dist/chunks/routes-YPOoVIR2.esm.js.map +1 -0
  64. package/dist/chunks/{routes-iurI6dvR.esm.d.ts → routes-lGXt7ttd.esm.d.ts} +76 -3
  65. package/dist/chunks/routes-o-phF_L1.esm.js +2 -0
  66. package/dist/chunks/routes-o-phF_L1.esm.js.map +1 -0
  67. package/dist/chunks/{share-button-bUM2WBaV.esm.js → share-button-EsUPw38-.esm.js} +2 -2
  68. package/dist/chunks/{share-button-DeVQh1aE.esm.js.map → share-button-EsUPw38-.esm.js.map} +1 -1
  69. package/dist/chunks/{share-button-DeVQh1aE.esm.js → share-button-r0y-bbwR.esm.js} +2 -2
  70. package/dist/chunks/{share-button-bUM2WBaV.esm.js.map → share-button-r0y-bbwR.esm.js.map} +1 -1
  71. package/dist/chunks/{shoelace-components-JZANE20x.esm.js → shoelace-components-PB22pjfM.esm.js} +2 -2
  72. package/dist/chunks/{shoelace-components-JZANE20x.esm.js.map → shoelace-components-PB22pjfM.esm.js.map} +1 -1
  73. package/dist/chunks/{shoelace-components-Jghvahj3.esm.js → shoelace-components-lr4iB8kL.esm.js} +2 -2
  74. package/dist/chunks/{shoelace-components-Jghvahj3.esm.js.map → shoelace-components-lr4iB8kL.esm.js.map} +1 -1
  75. package/dist/chunks/{types-zbTZ8-KP.esm.d.ts → types-IbMT3Nwn.esm.d.ts} +5 -1
  76. package/dist/chunks/{update-cart-l86bU5uS.esm.d.ts → update-cart-JO4fuiim.esm.d.ts} +1 -1
  77. package/dist/chunks/update-cart-UuMHYehB.esm.js +2 -0
  78. package/dist/chunks/update-cart-UuMHYehB.esm.js.map +1 -0
  79. package/dist/chunks/update-cart-mNsQ9K-k.esm.js +2 -0
  80. package/dist/chunks/update-cart-mNsQ9K-k.esm.js.map +1 -0
  81. package/dist/components/community-impact.d.ts +1 -1
  82. package/dist/components/community-impact.esm.js +1 -1
  83. package/dist/components/community-impact.js +1 -1
  84. package/dist/components/cumulative-impact.d.ts +1 -1
  85. package/dist/components/cumulative-impact.esm.js +1 -1
  86. package/dist/components/cumulative-impact.js +1 -1
  87. package/dist/components/impact-overview.d.ts +6 -2
  88. package/dist/components/impact-overview.esm.js +2 -2
  89. package/dist/components/impact-overview.esm.js.map +1 -1
  90. package/dist/components/impact-overview.js +2 -2
  91. package/dist/components/impact-overview.js.map +1 -1
  92. package/dist/components/index.d.ts +4 -4
  93. package/dist/components/index.esm.js +1 -1
  94. package/dist/components/index.js +1 -1
  95. package/dist/components/post-purchase.d.ts +11 -3
  96. package/dist/components/post-purchase.esm.js +4 -4
  97. package/dist/components/post-purchase.esm.js.map +1 -1
  98. package/dist/components/post-purchase.js +4 -4
  99. package/dist/components/post-purchase.js.map +1 -1
  100. package/dist/components/product-details-page.d.ts +23 -4
  101. package/dist/components/product-details-page.esm.js +24 -24
  102. package/dist/components/product-details-page.esm.js.map +1 -1
  103. package/dist/components/product-details-page.js +24 -24
  104. package/dist/components/product-details-page.js.map +1 -1
  105. package/dist/components/redeem-transaction.d.ts +5 -14
  106. package/dist/components/redeem-transaction.esm.js +27 -27
  107. package/dist/components/redeem-transaction.esm.js.map +1 -1
  108. package/dist/components/redeem-transaction.js +27 -27
  109. package/dist/components/redeem-transaction.js.map +1 -1
  110. package/dist/components/select-nonprofit.d.ts +10 -3
  111. package/dist/components/select-nonprofit.esm.js +50 -45
  112. package/dist/components/select-nonprofit.esm.js.map +1 -1
  113. package/dist/components/select-nonprofit.js +50 -45
  114. package/dist/components/select-nonprofit.js.map +1 -1
  115. package/dist/components/select-subscription-nonprofit.d.ts +1 -1
  116. package/dist/components/select-subscription-nonprofit.esm.js +1 -1
  117. package/dist/components/select-subscription-nonprofit.js +1 -1
  118. package/dist/components/shopify.d.ts +8 -7
  119. package/dist/components/shopify.esm.js +1 -1
  120. package/dist/components/shopify.esm.js.map +1 -1
  121. package/dist/components/shopify.js +1 -1
  122. package/dist/components/shopify.js.map +1 -1
  123. package/dist/components/social-share.d.ts +1 -1
  124. package/dist/components/social-share.esm.js +1 -1
  125. package/dist/components/social-share.js +1 -1
  126. package/dist/components/subscription-impact.d.ts +2 -1
  127. package/dist/components/subscription-impact.esm.js +1 -1
  128. package/dist/components/subscription-impact.js +1 -1
  129. package/dist/components/subscription-management.d.ts +15 -4
  130. package/dist/components/subscription-management.esm.js +1 -1
  131. package/dist/components/subscription-management.js +1 -1
  132. package/dist/index.d.ts +16 -14
  133. package/dist/index.esm.js +1 -1
  134. package/dist/index.js +1 -1
  135. package/dist/integrations/beam.d.ts +1 -1
  136. package/dist/integrations/beam.esm.js +1 -1
  137. package/dist/integrations/beam.js +1 -1
  138. package/dist/integrations/cart.d.ts +3 -3
  139. package/dist/integrations/cart.esm.js +1 -1
  140. package/dist/integrations/cart.js +1 -1
  141. package/dist/integrations/index.d.ts +14 -12
  142. package/dist/integrations/index.esm.js +1 -1
  143. package/dist/integrations/index.js +1 -1
  144. package/dist/integrations/logs.d.ts +2 -2
  145. package/dist/integrations/logs.esm.js +1 -1
  146. package/dist/integrations/logs.js +1 -1
  147. package/dist/integrations/promoManager.d.ts +36 -0
  148. package/dist/integrations/promoManager.esm.js +2 -0
  149. package/dist/integrations/promoManager.esm.js.map +1 -0
  150. package/dist/integrations/promoManager.js +2 -0
  151. package/dist/integrations/promoManager.js.map +1 -0
  152. package/dist/integrations/session.esm.js +1 -1
  153. package/dist/integrations/session.js +1 -1
  154. package/dist/integrations/shopify.d.ts +6 -6
  155. package/dist/integrations/shopify.esm.js +1 -1
  156. package/dist/integrations/shopify.js +1 -1
  157. package/dist/integrations/statsig.d.ts +1 -1
  158. package/dist/integrations/statsig.esm.js +1 -1
  159. package/dist/integrations/statsig.js +1 -1
  160. package/dist/integrations/utils.d.ts +7 -5
  161. package/dist/integrations/utils.esm.js +1 -1
  162. package/dist/integrations/utils.js +1 -1
  163. package/dist/react/community-impact.d.ts +1 -1
  164. package/dist/react/community-impact.esm.js +1 -1
  165. package/dist/react/community-impact.js +1 -1
  166. package/dist/react/cumulative-impact.d.ts +1 -1
  167. package/dist/react/cumulative-impact.esm.js +1 -1
  168. package/dist/react/cumulative-impact.js +1 -1
  169. package/dist/react/impact-overview.d.ts +1 -1
  170. package/dist/react/impact-overview.esm.js +1 -1
  171. package/dist/react/impact-overview.js +1 -1
  172. package/dist/react/index.d.ts +6 -5
  173. package/dist/react/index.esm.js +1 -1
  174. package/dist/react/index.js +1 -1
  175. package/dist/react/post-purchase.d.ts +3 -3
  176. package/dist/react/post-purchase.esm.js +1 -1
  177. package/dist/react/post-purchase.esm.js.map +1 -1
  178. package/dist/react/post-purchase.js +1 -1
  179. package/dist/react/post-purchase.js.map +1 -1
  180. package/dist/react/product-details-page.d.ts +1 -1
  181. package/dist/react/product-details-page.esm.js +1 -1
  182. package/dist/react/product-details-page.esm.js.map +1 -1
  183. package/dist/react/product-details-page.js +1 -1
  184. package/dist/react/product-details-page.js.map +1 -1
  185. package/dist/react/redeem-transaction.d.ts +5 -4
  186. package/dist/react/redeem-transaction.esm.js +1 -1
  187. package/dist/react/redeem-transaction.js +1 -1
  188. package/dist/react/select-nonprofit.d.ts +5 -4
  189. package/dist/react/select-nonprofit.esm.js +1 -1
  190. package/dist/react/select-nonprofit.esm.js.map +1 -1
  191. package/dist/react/select-nonprofit.js +1 -1
  192. package/dist/react/select-nonprofit.js.map +1 -1
  193. package/dist/react/select-subscription-nonprofit.d.ts +5 -4
  194. package/dist/react/select-subscription-nonprofit.esm.js +1 -1
  195. package/dist/react/select-subscription-nonprofit.js +1 -1
  196. package/dist/react/social-share.d.ts +1 -1
  197. package/dist/react/social-share.esm.js +1 -1
  198. package/dist/react/social-share.js +1 -1
  199. package/dist/react/subscription-impact.d.ts +1 -1
  200. package/dist/react/subscription-impact.esm.js +1 -1
  201. package/dist/react/subscription-impact.js +1 -1
  202. package/dist/react/subscription-management.d.ts +4 -4
  203. package/dist/react/subscription-management.esm.js +1 -1
  204. package/dist/react/subscription-management.js +1 -1
  205. package/dist/utils/beam-errors.d.ts +1 -1
  206. package/dist/utils/beam-errors.esm.js +1 -1
  207. package/dist/utils/beam-errors.js +1 -1
  208. package/dist/utils/cart.esm.js +1 -1
  209. package/dist/utils/cart.js +1 -1
  210. package/dist/utils/cookies.esm.js +1 -1
  211. package/dist/utils/cookies.esm.js.map +1 -1
  212. package/dist/utils/cookies.js +1 -1
  213. package/dist/utils/cookies.js.map +1 -1
  214. package/dist/utils/events.d.ts +5 -4
  215. package/dist/utils/events.esm.js +1 -1
  216. package/dist/utils/events.js +1 -1
  217. package/dist/utils/index.d.ts +7 -5
  218. package/dist/utils/index.esm.js +1 -1
  219. package/dist/utils/index.js +1 -1
  220. package/dist/utils/local-storage.esm.js +1 -1
  221. package/dist/utils/local-storage.js +1 -1
  222. package/dist/utils/network-listeners.esm.js +1 -1
  223. package/dist/utils/network-listeners.esm.js.map +1 -1
  224. package/dist/utils/network-listeners.js +1 -1
  225. package/dist/utils/network-listeners.js.map +1 -1
  226. package/dist/utils/promoManager.d.ts +123 -0
  227. package/dist/utils/promoManager.esm.js +2 -0
  228. package/dist/utils/promoManager.esm.js.map +1 -0
  229. package/dist/utils/promoManager.js +2 -0
  230. package/dist/utils/promoManager.js.map +1 -0
  231. package/dist/utils/remote-session.esm.js +1 -1
  232. package/dist/utils/remote-session.js +1 -1
  233. package/dist/utils/wait-for-element.esm.js +1 -1
  234. package/dist/utils/wait-for-element.js +1 -1
  235. package/package.json +2 -2
  236. package/dist/chunks/_share-dialog-dependencies-0ivyNKvC.esm.js +0 -2
  237. package/dist/chunks/_share-dialog-dependencies-0ivyNKvC.esm.js.map +0 -1
  238. package/dist/chunks/_share-dialog-dependencies-tTzjG045.esm.js +0 -2
  239. package/dist/chunks/_share-dialog-dependencies-tTzjG045.esm.js.map +0 -1
  240. package/dist/chunks/beam-errors-P-Lu07Ce.esm.js +0 -2
  241. package/dist/chunks/beam-errors-P-Lu07Ce.esm.js.map +0 -1
  242. package/dist/chunks/cart-contents-CMm57qu0.esm.d.ts +0 -11
  243. package/dist/chunks/enforce-config-ZAI7WYAd.esm.js +0 -3
  244. package/dist/chunks/enforce-config-ZAI7WYAd.esm.js.map +0 -1
  245. package/dist/chunks/enforce-config-ZyPq_4CF.esm.js +0 -3
  246. package/dist/chunks/enforce-config-ZyPq_4CF.esm.js.map +0 -1
  247. package/dist/chunks/events-6Z5MkCRr.esm.js +0 -2
  248. package/dist/chunks/events-6Z5MkCRr.esm.js.map +0 -1
  249. package/dist/chunks/index-2bLOkP4H.esm.d.ts +0 -32
  250. package/dist/chunks/index-B6jnCB4o.esm.js +0 -2
  251. package/dist/chunks/index-B6jnCB4o.esm.js.map +0 -1
  252. package/dist/chunks/index-BPg2EdL3.esm.js +0 -2
  253. package/dist/chunks/index-BPg2EdL3.esm.js.map +0 -1
  254. package/dist/chunks/index-CsWTfuok.esm.js +0 -2
  255. package/dist/chunks/index-CsWTfuok.esm.js.map +0 -1
  256. package/dist/chunks/index-GynYZRPI.esm.d.ts +0 -32
  257. package/dist/chunks/index-MIp7LlXH.esm.js +0 -2
  258. package/dist/chunks/index-MIp7LlXH.esm.js.map +0 -1
  259. package/dist/chunks/index-YJNgLCif.esm.js +0 -2
  260. package/dist/chunks/index-YJNgLCif.esm.js.map +0 -1
  261. package/dist/chunks/index-YcyQB-6f.esm.js +0 -2
  262. package/dist/chunks/index-YcyQB-6f.esm.js.map +0 -1
  263. package/dist/chunks/index-ZZthq-Fl.esm.js +0 -2
  264. package/dist/chunks/index-ZZthq-Fl.esm.js.map +0 -1
  265. package/dist/chunks/index-b3WjW4PD.esm.js.map +0 -1
  266. package/dist/chunks/index-cuCnejll.esm.js.map +0 -1
  267. package/dist/chunks/index-iK195-B9.esm.js +0 -2
  268. package/dist/chunks/index-iK195-B9.esm.js.map +0 -1
  269. package/dist/chunks/order-page-84vnjksY.esm.js +0 -2
  270. package/dist/chunks/order-page-84vnjksY.esm.js.map +0 -1
  271. package/dist/chunks/order-page-dERTuQ8T.esm.js +0 -2
  272. package/dist/chunks/order-page-dERTuQ8T.esm.js.map +0 -1
  273. package/dist/chunks/routes-Jhhqcsg7.esm.js +0 -2
  274. package/dist/chunks/routes-Jhhqcsg7.esm.js.map +0 -1
  275. package/dist/chunks/routes-tB5fHy2T.esm.js +0 -2
  276. package/dist/chunks/routes-tB5fHy2T.esm.js.map +0 -1
  277. package/dist/chunks/update-cart-i5yZ2fyd.esm.js +0 -2
  278. package/dist/chunks/update-cart-i5yZ2fyd.esm.js.map +0 -1
  279. package/dist/chunks/update-cart-v61CI4O9.esm.js +0 -2
  280. package/dist/chunks/update-cart-v61CI4O9.esm.js.map +0 -1
@@ -0,0 +1,2 @@
1
+ import"./vendor-GKiOHg2N.esm.js";import"./shoelace-components-PB22pjfM.esm.js";import"./lit-iNN5L_Qk.esm.js";import"./routes-o-phF_L1.esm.js";import"./beam-errors-AMvTvR1C.esm.js";import"../utils/logger.esm.js";
2
+ //# sourceMappingURL=_share-dialog-dependencies-RmYWlyJ0.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_share-dialog-dependencies-RmYWlyJ0.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import"./vendor-GKiOHg2N.esm.js";import"./shoelace-components-lr4iB8kL.esm.js";import"./lit-iNN5L_Qk.esm.js";import"./routes-YPOoVIR2.esm.js";import"./beam-errors-AMvTvR1C.esm.js";import"../utils/logger.js";
2
+ //# sourceMappingURL=_share-dialog-dependencies-yCBFjXxQ.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_share-dialog-dependencies-yCBFjXxQ.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ class s extends Error{constructor(r,{cause:e,name:a="BeamError"}={}){super(r,{cause:e}),this.name=a,this.supportUrl="https://beamimpact.com"}}class t extends s{constructor(r,e,a){super(a,{name:"BeamNetworkError"}),this.response=r,this.body=e}}class n extends s{constructor(r=[],e){super(e,{name:"BeamMissingConfig"}),this.missingConfigKeyNames=r}}class c extends s{constructor(r){super(r,{name:"BeamLocalStorageError"})}}class m extends s{constructor(r){super(r,{name:"BeamSetupError"})}}var i=Object.freeze({__proto__:null,BeamError:s,LocalStorageError:c,MissingConfig:n,NetworkError:t,SetupError:m});export{s as B,c as L,n as M,t as N,m as S,i as b};
2
+ //# sourceMappingURL=beam-errors-AMvTvR1C.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"beam-errors-AMvTvR1C.esm.js","sources":["../../src/utils/beam-errors.ts"],"sourcesContent":["export class BeamError extends Error {\n supportUrl: string;\n constructor(msg?: string, { cause, name = \"BeamError\" }: { cause?: any; name?: string } = {}) {\n super(msg, { cause });\n this.name = name;\n this.supportUrl = \"https://beamimpact.com\";\n }\n}\n\nexport class NetworkError extends BeamError {\n /** Fetch Response object with .ok, .status, etc.*/\n response: Response;\n /** If network response included JSON payload, it is parsed and available here */\n body?: Record<string, string>;\n constructor(response: Response, body?: Record<string, string>, msg?: string) {\n super(msg, { name: \"BeamNetworkError\" });\n this.response = response;\n this.body = body;\n }\n}\n\nexport class MissingConfig extends BeamError {\n missingConfigKeyNames: string[];\n constructor(missingConfigKeyNames: string[] = [], msg?: string) {\n super(msg, { name: \"BeamMissingConfig\" });\n this.missingConfigKeyNames = missingConfigKeyNames;\n }\n}\n\nexport class LocalStorageError extends BeamError {\n constructor(msg?: string) {\n super(msg, { name: \"BeamLocalStorageError\" });\n }\n}\n\nexport class SetupError extends BeamError {\n constructor(msg?: string) {\n super(msg, { name: \"BeamSetupError\" });\n }\n}\n"],"names":["BeamError","msg","cause","name","NetworkError","response","body","MissingConfig","missingConfigKeyNames","LocalStorageError","SetupError"],"mappings":"AAAa,MAAAA,UAAkB,KAAM,CAEnC,YAAYC,EAAc,CAAE,MAAAC,EAAO,KAAAC,EAAO,WAAY,EAAoC,GAAI,CAC5F,MAAMF,EAAK,CAAE,MAAAC,CAAM,CAAC,EACpB,KAAK,KAAOC,EACZ,KAAK,WAAa,wBACpB,CACF,CAEa,MAAAC,UAAqBJ,CAAU,CAK1C,YAAYK,EAAoBC,EAA+BL,EAAc,CAC3E,MAAMA,EAAK,CAAE,KAAM,kBAAmB,CAAC,EACvC,KAAK,SAAWI,EAChB,KAAK,KAAOC,CACd,CACF,CAEa,MAAAC,UAAsBP,CAAU,CAE3C,YAAYQ,EAAkC,CAAC,EAAGP,EAAc,CAC9D,MAAMA,EAAK,CAAE,KAAM,mBAAoB,CAAC,EACxC,KAAK,sBAAwBO,CAC/B,CACF,CAEa,MAAAC,UAA0BT,CAAU,CAC/C,YAAYC,EAAc,CACxB,MAAMA,EAAK,CAAE,KAAM,uBAAwB,CAAC,CAC9C,CACF,CAEa,MAAAS,UAAmBV,CAAU,CACxC,YAAYC,EAAc,CACxB,MAAMA,EAAK,CAAE,KAAM,gBAAiB,CAAC,CACvC,CACF"}
@@ -16,9 +16,6 @@ declare class MissingConfig extends BeamError {
16
16
  missingConfigKeyNames: string[];
17
17
  constructor(missingConfigKeyNames?: string[], msg?: string);
18
18
  }
19
- declare class InvalidAttributeCombinationError extends BeamError {
20
- constructor(msg?: string);
21
- }
22
19
  declare class LocalStorageError extends BeamError {
23
20
  constructor(msg?: string);
24
21
  }
@@ -28,8 +25,6 @@ declare class SetupError extends BeamError {
28
25
 
29
26
  type beamErrors_BeamError = BeamError;
30
27
  declare const beamErrors_BeamError: typeof BeamError;
31
- type beamErrors_InvalidAttributeCombinationError = InvalidAttributeCombinationError;
32
- declare const beamErrors_InvalidAttributeCombinationError: typeof InvalidAttributeCombinationError;
33
28
  type beamErrors_LocalStorageError = LocalStorageError;
34
29
  declare const beamErrors_LocalStorageError: typeof LocalStorageError;
35
30
  type beamErrors_MissingConfig = MissingConfig;
@@ -39,7 +34,7 @@ declare const beamErrors_NetworkError: typeof NetworkError;
39
34
  type beamErrors_SetupError = SetupError;
40
35
  declare const beamErrors_SetupError: typeof SetupError;
41
36
  declare namespace beamErrors {
42
- export { beamErrors_BeamError as BeamError, beamErrors_InvalidAttributeCombinationError as InvalidAttributeCombinationError, beamErrors_LocalStorageError as LocalStorageError, beamErrors_MissingConfig as MissingConfig, beamErrors_NetworkError as NetworkError, beamErrors_SetupError as SetupError };
37
+ export { beamErrors_BeamError as BeamError, beamErrors_LocalStorageError as LocalStorageError, beamErrors_MissingConfig as MissingConfig, beamErrors_NetworkError as NetworkError, beamErrors_SetupError as SetupError };
43
38
  }
44
39
 
45
- export { BeamError as B, InvalidAttributeCombinationError as I, LocalStorageError as L, MissingConfig as M, NetworkError as N, SetupError as S, beamErrors as b };
40
+ export { BeamError as B, LocalStorageError as L, MissingConfig as M, NetworkError as N, SetupError as S, beamErrors as b };
@@ -0,0 +1,18 @@
1
+ import { p as paths } from './openapi-spec-bxGNhNMa.esm.js';
2
+
3
+ type TCartApi = paths["/chain/findEligibleNonprofitsForCart"]["post"]["requestBody"]["content"]["application/json"]["cart"];
4
+ type TCart = TCartApi & {
5
+ content: {
6
+ items: Record<string, any>[];
7
+ discounts?: Record<string, any>[] | undefined | null;
8
+ };
9
+ };
10
+ type TBeamCartLocalStorage = {
11
+ cartId: string;
12
+ beamCartId?: string;
13
+ subtotal: number;
14
+ itemCount: number;
15
+ currencyCode: string;
16
+ } & TCart;
17
+
18
+ export type { TCart as T, TCartApi as a, TBeamCartLocalStorage as b };
@@ -1 +1 @@
1
- {"version":3,"file":"cart-contents-h60geKWa.esm.js","sources":["../../src/shared/cart-contents.ts"],"sourcesContent":["import { paths } from \"../api-sdk/v3/openapi-spec\";\n\nexport type TCartApi =\n paths[\"/chain/findEligibleNonprofitsForCart\"][\"post\"][\"requestBody\"][\"content\"][\"application/json\"][\"cart\"];\n\n// Same as type from API but with non-optional fields, so we can use where Shopify guarantees values\nexport type TCart = TCartApi & {\n content: {\n items: Record<string, any>[];\n discounts?: Record<string, any>[] | undefined | null;\n };\n};\n\nexport type TCartItems = TCart[\"content\"][\"items\"];\n\nexport type TCartDiscounts = TCart[\"content\"][\"discounts\"];\n\nexport type TBeamCartLocalStorage = {\n cartId: string;\n beamCartId?: string;\n subtotal: number;\n itemCount: number;\n currencyCode: string;\n} & TCart;\n\nexport const BEAM_CART_COOKIE_NAME = \"beam_cart\";\n"],"names":["BEAM_CART_COOKIE_NAME"],"mappings":"AAyBO,MAAMA,EAAwB"}
1
+ {"version":3,"file":"cart-contents-h60geKWa.esm.js","sources":["../../src/shared/cart-contents.ts"],"sourcesContent":["import { paths } from \"../api-sdk/v3/openapi-spec\";\n\nexport type TCartApi =\n paths[\"/chain/findEligibleNonprofitsForCart\"][\"post\"][\"requestBody\"][\"content\"][\"application/json\"][\"cart\"];\n\n// Same as type from API but with non-optional fields, so we can use where Shopify guarantees values\nexport type TCart = TCartApi & {\n content: {\n items: Record<string, any>[];\n discounts?: Record<string, any>[] | undefined | null;\n };\n};\n\nexport type TCartItems = TCart[\"content\"][\"items\"];\n\nexport type TCartDiscounts = TCart[\"content\"][\"discounts\"];\n\nexport type TBeamCartLocalStorage = {\n cartId: string;\n beamCartId?: string;\n subtotal: number;\n itemCount: number;\n currencyCode: string;\n} & TCart;\n\nexport const BEAM_CART_COOKIE_NAME = \"beam_cart\";\n\nexport type Discount = {\n code: string;\n applicable: boolean;\n};\n"],"names":["BEAM_CART_COOKIE_NAME"],"mappings":"AAyBO,MAAMA,EAAwB"}
@@ -0,0 +1,3 @@
1
+ import{f as r}from"./lit-iNN5L_Qk.esm.js";import{M as s}from"./beam-errors-AMvTvR1C.esm.js";import{logger as a}from"../utils/logger.js";const l=r`html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{/*height:auto;*/max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}`;function f(o,e=o.tagName){customElements.get(e)||customElements.define(e,o)}function d(o,e){const i=[],n=e;for(const t of o)n[t]==null&&i.push(t);if(i.length>0)throw a.error(`Beam Impact - Missing Required Config Values:
2
+ `,i.join(", "),e),new s(i);return!0}function h(o,e){return o.every(i=>i in e&&e[i]!=null)}export{h as a,l as c,f as d,d as e};
3
+ //# sourceMappingURL=enforce-config-S8EGgEnO.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enforce-config-S8EGgEnO.esm.js","sources":["../../src/shared/css-reset.ts","../../src/shared/defineCustomElement.ts","../../src/shared/enforce-config.ts"],"sourcesContent":["import { css } from \"lit\";\n\n// minireset.css v0.0.7 | MIT License | github.com/jgthms/minireset.css\n// prettier-ignore\nexport const cssReset = css`html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{/*height:auto;*/max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}`;\n","/**\n * Defines a custom element based on its static tagName property\n */\nexport function defineCustomElement(\n CustomElementClass: CustomElementConstructor & { tagName: string },\n tagName = CustomElementClass[\"tagName\"]\n) {\n customElements.get(tagName) || customElements.define(tagName, CustomElementClass);\n}\n","import { MissingConfig } from \"../utils/beam-errors\";\nimport { logger } from \"../utils/logger\";\n\nexport function enforceConfig<T>(keys: (keyof T)[], input: unknown): input is Required<T> {\n const missingKeys: string[] = [];\n const check = input as Record<string | number | symbol, unknown>;\n for (const key of keys) {\n if (check[key] == null) {\n missingKeys.push(key as string);\n }\n }\n if (missingKeys.length > 0) {\n logger.error(\"Beam Impact - Missing Required Config Values:\\n\", missingKeys.join(\", \"), input);\n throw new MissingConfig(missingKeys);\n }\n return true;\n}\n\nexport function areRequiredKeysDefined<T extends object>(requiredKeys: (keyof T)[], config: T): boolean {\n return requiredKeys.every((key) => key in config && config[key] != null);\n}\n"],"names":["cssReset","css","defineCustomElement","CustomElementClass","tagName","enforceConfig","keys","input","missingKeys","check","key","logger","MissingConfig","areRequiredKeysDefined","requiredKeys","config"],"mappings":"wIAIO,MAAMA,EAAWC,gaCDjB,SAASC,EACdC,EACAC,EAAUD,EAAmB,QAC7B,CACA,eAAe,IAAIC,CAAO,GAAK,eAAe,OAAOA,EAASD,CAAkB,CAClF,CCLgB,SAAAE,EAAiBC,EAAmBC,EAAsC,CACxF,MAAMC,EAAwB,CAAA,EACxBC,EAAQF,EACd,UAAWG,KAAOJ,EACZG,EAAMC,CAAG,GAAK,MAChBF,EAAY,KAAKE,CAAa,EAGlC,GAAIF,EAAY,OAAS,EACvB,MAAAG,EAAO,MAAM;AAAA,EAAmDH,EAAY,KAAK,IAAI,EAAGD,CAAK,EACvF,IAAIK,EAAcJ,CAAW,EAErC,MAAO,EACT,CAEO,SAASK,EAAyCC,EAA2BC,EAAoB,CACtG,OAAOD,EAAa,MAAOJ,GAAQA,KAAOK,GAAUA,EAAOL,CAAG,GAAK,IAAI,CACzE"}
@@ -0,0 +1,3 @@
1
+ import{f as r}from"./lit-iNN5L_Qk.esm.js";import{M as s}from"./beam-errors-AMvTvR1C.esm.js";import{logger as a}from"../utils/logger.esm.js";const l=r`html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{/*height:auto;*/max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}`;function f(o,e=o.tagName){customElements.get(e)||customElements.define(e,o)}function d(o,e){const i=[],n=e;for(const t of o)n[t]==null&&i.push(t);if(i.length>0)throw a.error(`Beam Impact - Missing Required Config Values:
2
+ `,i.join(", "),e),new s(i);return!0}function h(o,e){return o.every(i=>i in e&&e[i]!=null)}export{h as a,l as c,f as d,d as e};
3
+ //# sourceMappingURL=enforce-config-l-tNb_z7.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enforce-config-l-tNb_z7.esm.js","sources":["../../src/shared/css-reset.ts","../../src/shared/defineCustomElement.ts","../../src/shared/enforce-config.ts"],"sourcesContent":["import { css } from \"lit\";\n\n// minireset.css v0.0.7 | MIT License | github.com/jgthms/minireset.css\n// prettier-ignore\nexport const cssReset = css`html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{/*height:auto;*/max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}`;\n","/**\n * Defines a custom element based on its static tagName property\n */\nexport function defineCustomElement(\n CustomElementClass: CustomElementConstructor & { tagName: string },\n tagName = CustomElementClass[\"tagName\"]\n) {\n customElements.get(tagName) || customElements.define(tagName, CustomElementClass);\n}\n","import { MissingConfig } from \"../utils/beam-errors\";\nimport { logger } from \"../utils/logger\";\n\nexport function enforceConfig<T>(keys: (keyof T)[], input: unknown): input is Required<T> {\n const missingKeys: string[] = [];\n const check = input as Record<string | number | symbol, unknown>;\n for (const key of keys) {\n if (check[key] == null) {\n missingKeys.push(key as string);\n }\n }\n if (missingKeys.length > 0) {\n logger.error(\"Beam Impact - Missing Required Config Values:\\n\", missingKeys.join(\", \"), input);\n throw new MissingConfig(missingKeys);\n }\n return true;\n}\n\nexport function areRequiredKeysDefined<T extends object>(requiredKeys: (keyof T)[], config: T): boolean {\n return requiredKeys.every((key) => key in config && config[key] != null);\n}\n"],"names":["cssReset","css","defineCustomElement","CustomElementClass","tagName","enforceConfig","keys","input","missingKeys","check","key","logger","MissingConfig","areRequiredKeysDefined","requiredKeys","config"],"mappings":"4IAIO,MAAMA,EAAWC,gaCDjB,SAASC,EACdC,EACAC,EAAUD,EAAmB,QAC7B,CACA,eAAe,IAAIC,CAAO,GAAK,eAAe,OAAOA,EAASD,CAAkB,CAClF,CCLgB,SAAAE,EAAiBC,EAAmBC,EAAsC,CACxF,MAAMC,EAAwB,CAAA,EACxBC,EAAQF,EACd,UAAWG,KAAOJ,EACZG,EAAMC,CAAG,GAAK,MAChBF,EAAY,KAAKE,CAAa,EAGlC,GAAIF,EAAY,OAAS,EACvB,MAAAG,EAAO,MAAM;AAAA,EAAmDH,EAAY,KAAK,IAAI,EAAGD,CAAK,EACvF,IAAIK,EAAcJ,CAAW,EAErC,MAAO,EACT,CAEO,SAASK,EAAyCC,EAA2BC,EAAoB,CACtG,OAAOD,EAAa,MAAOJ,GAAQA,KAAOK,GAAUA,EAAOL,CAAG,GAAK,IAAI,CACzE"}
@@ -0,0 +1,2 @@
1
+ const t=class B extends CustomEvent{constructor(e){super(B.eventName,{detail:e,bubbles:!0,composed:!0})}};t.eventName="beamnetworkcall";let s=t;const o=class g extends CustomEvent{constructor(e){super(g.eventName,{detail:e,bubbles:!0,composed:!0})}};o.eventName="beamnonprofitselect";let a=o;const n=class x extends CustomEvent{constructor(e){super(x.eventName,{detail:e,bubbles:!0,composed:!0})}};n.eventName="beamcartchange";let r=n;const m=class S extends CustomEvent{constructor(e){super(S.eventName,{detail:e,bubbles:!0,composed:!0})}};m.eventName="beamcartcreated";let c=m;const d=class f extends CustomEvent{constructor(e){super(f.eventName,{detail:e,bubbles:!0,composed:!0})}};d.eventName="beamordercreated";let l=d;const v=class h extends CustomEvent{constructor(e){super(h.eventName,{detail:e,bubbles:!0,composed:!0})}};v.eventName="beamstatuschange";let u=v;const b=class w extends CustomEvent{constructor(e){super(w.eventName,{detail:e,bubbles:!0,composed:!0})}};b.eventName="beamnonprofitselectionremoved";let p=b;const C=class P extends CustomEvent{constructor(e){super(P.eventName,{detail:e,bubbles:!0,composed:!0})}};C.eventName="beampromocodesstored";let E=C;const i=class k extends CustomEvent{constructor(e){super(k.eventName,{detail:e,bubbles:!0,composed:!0})}};i.eventName="beamwidgetstoredpromocodes";let N=i;var O=Object.freeze({__proto__:null,BeamCartChangeEvent:r,BeamCartCreatedEvent:c,BeamNetworkCallEvent:s,BeamNonprofitSelectEvent:a,BeamNonprofitSelectionRemovedEvent:p,BeamOrderCreatedEvent:l,BeamPromoCodesStoredEvent:E,BeamStatusChangeEvent:u,BeamWidgetStoredPromoCodesEvent:N});export{u as B,E as a,l as b,a as c,s as d,O as e,N as f,r as g,c as h,p as i};
2
+ //# sourceMappingURL=events-T3hYV1LF.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events-T3hYV1LF.esm.js","sources":["../../src/utils/events.ts"],"sourcesContent":["import { TCartApi } from \"../shared/cart-contents\";\nimport { TPromoCodeRequest } from \"../shared/promo-types\";\nimport { HelperName, TId, WidgetName } from \"../shared/types\";\n\n/* ------------------------------------------------------------------------------------------------------------------ */\n\ntype NetworkEventDetail =\n | { url: string; method: string; type: \"fetch\"; response: Response }\n | { url: string; method: string; type: \"xhr\"; xhr: XMLHttpRequest };\n\n/**\n * beamnetworkcall\n * Emitted by the Beam network listener whenever any API calls are made on the page\n */\nexport class BeamNetworkCallEvent extends CustomEvent<NetworkEventDetail> {\n static eventName = \"beamnetworkcall\" as const;\n constructor(detail: NetworkEventDetail) {\n super(BeamNetworkCallEvent.eventName, { detail, bubbles: true, composed: true });\n }\n}\n\n/* ------------------------------------------------------------------------------------------------------------------ */\n\ntype NonprofitSelectDetail = {\n selectionId?: string;\n selectedNonprofitId?: number | null;\n nonprofitName?: string | null;\n source?: WidgetName | null;\n};\n\n/**\n * beamnonprofitselect\n * Emitted when the end user selects a nonprofit in the Beam widget, and when the previous selection was restored\n * automatically\n */\nexport class BeamNonprofitSelectEvent extends CustomEvent<NonprofitSelectDetail> {\n static eventName = \"beamnonprofitselect\" as const;\n constructor(detail: NonprofitSelectDetail) {\n super(BeamNonprofitSelectEvent.eventName, { detail, bubbles: true, composed: true });\n }\n}\n\n/* ------------------------------------------------------------------------------------------------------------------ */\n\ntype CartChangeDetail = TCartApi & {\n cartId?: string;\n subtotal?: number;\n itemCount?: number;\n currencyCode?: string;\n};\n\n/**\n * beamcartchange\n * Emitted when Beam detects that cart contents have changed, and when items are added to the cart for the first time\n */\nexport class BeamCartChangeEvent extends CustomEvent<CartChangeDetail> {\n static eventName = \"beamcartchange\" as const;\n constructor(detail: CartChangeDetail) {\n super(BeamCartChangeEvent.eventName, { detail, bubbles: true, composed: true });\n }\n}\n\n/* ------------------------------------------------------------------------------------------------------------------ */\n\ntype CartCreatedDetail = CartChangeDetail;\n\n/**\n * beamcartcreated\n * Emitted when a cart is created in Beam for the first time, but NOT when the cart is updated\n * Beam's cart expiration rules are used to determine when a returning visit counts as the same cart\n */\nexport class BeamCartCreatedEvent extends CustomEvent<CartCreatedDetail> {\n static eventName = \"beamcartcreated\" as const;\n constructor(detail: CartCreatedDetail) {\n super(BeamCartCreatedEvent.eventName, { detail, bubbles: true, composed: true });\n }\n}\n\n/* ------------------------------------------------------------------------------------------------------------------ */\n\ntype OrderCreatedDetail = {\n orderId: TId;\n transactionId: TId;\n cartTotal: number;\n currencyCode: string;\n};\n\n/**\n * beamordercreated\n * Emitted when an order is registered with Beam for the first time, but NOT on repeat visits, page refreshes, etc.\n */\nexport class BeamOrderCreatedEvent extends CustomEvent<OrderCreatedDetail> {\n static eventName = \"beamordercreated\" as const;\n\n constructor(detail: OrderCreatedDetail) {\n super(BeamOrderCreatedEvent.eventName, { detail, bubbles: true, composed: true });\n }\n}\n\n/* ------------------------------------------------------------------------------------------------------------------ */\n\n/**\n * beamstatuschange\n * Emitted when the Beam config object has finished initializing along with all plugins\n */\ntype BeamStatusChangeEventDetail = { status: \"pending\" } | { status: \"error\"; error: Error } | { status: \"ready\" };\nexport class BeamStatusChangeEvent extends CustomEvent<BeamStatusChangeEventDetail> {\n static eventName = \"beamstatuschange\" as const;\n\n constructor(detail: BeamStatusChangeEventDetail) {\n super(BeamStatusChangeEvent.eventName, { detail, bubbles: true, composed: true });\n }\n}\n\n/* ------------------------------------------------------------------------------------------------------------------ */\ntype NonprofitSelectionRemovedDetail = {\n previousNonprofitId?: number | null;\n newNonprofitId?: number | null;\n selectionId?: string;\n};\n\n/**\n * beamnonprofitselectionremoved\n * Emitted when the nonprofit selection is removed from deselection or due to nonprofit cohort change\n */\nexport class BeamNonprofitSelectionRemovedEvent extends CustomEvent<NonprofitSelectionRemovedDetail> {\n static eventName = \"beamnonprofitselectionremoved\" as const;\n constructor(detail: NonprofitSelectionRemovedDetail) {\n super(BeamNonprofitSelectionRemovedEvent.eventName, { detail, bubbles: true, composed: true });\n }\n}\n\n/* ------------------------------------------------------------------------------------------------------------------ */\ntype PromoStoredDetail = {\n promoCodes: TPromoCodeRequest;\n};\n/**\n * Emitted when a URL with query parameters is sanitized and stored in localStorage\n *\n * @event beampromocodesstored\n */\nexport class BeamPromoCodesStoredEvent extends CustomEvent<PromoStoredDetail> {\n static eventName = \"beampromocodesstored\";\n\n constructor(detail: PromoStoredDetail) {\n super(BeamPromoCodesStoredEvent.eventName, { detail, bubbles: true, composed: true });\n }\n}\n\n/* ------------------------------------------------------------------------------------------------------------------ */\n\ntype WidgetStoredPromosDetail = {\n source?: WidgetName | HelperName | null;\n};\n/**\n * Emitted when a widget stores the url or manual promoCodes in local storage\n *\n * @event beamwidgetstoredpromocodes\n */\nexport class BeamWidgetStoredPromoCodesEvent extends CustomEvent<WidgetStoredPromosDetail> {\n static eventName = \"beamwidgetstoredpromocodes\" as const;\n\n constructor(detail: WidgetStoredPromosDetail) {\n super(BeamWidgetStoredPromoCodesEvent.eventName, { detail, bubbles: true, composed: true });\n }\n}\n"],"names":["_BeamNetworkCallEvent","detail","BeamNetworkCallEvent","_BeamNonprofitSelectEvent","BeamNonprofitSelectEvent","_BeamCartChangeEvent","BeamCartChangeEvent","_BeamCartCreatedEvent","BeamCartCreatedEvent","_BeamOrderCreatedEvent","BeamOrderCreatedEvent","_BeamStatusChangeEvent","BeamStatusChangeEvent","_BeamNonprofitSelectionRemovedEvent","BeamNonprofitSelectionRemovedEvent","_BeamPromoCodesStoredEvent","BeamPromoCodesStoredEvent","_BeamWidgetStoredPromoCodesEvent","BeamWidgetStoredPromoCodesEvent"],"mappings":"AAcO,MAAMA,EAAN,MAAMA,UAA6B,WAAgC,CAExE,YAAYC,EAA4B,CACtC,MAAMD,EAAqB,UAAW,CAAE,OAAAC,EAAQ,QAAS,GAAM,SAAU,EAAK,CAAC,CACjF,CACF,EALaD,EACJ,UAAY,kBADd,IAAME,EAANF,EAqBA,MAAMG,EAAN,MAAMA,UAAiC,WAAmC,CAE/E,YAAYF,EAA+B,CACzC,MAAME,EAAyB,UAAW,CAAE,OAAAF,EAAQ,QAAS,GAAM,SAAU,EAAK,CAAC,CACrF,CACF,EALaE,EACJ,UAAY,sBADR,IAAAC,EAAND,EAoBA,MAAME,EAAN,MAAMA,UAA4B,WAA8B,CAErE,YAAYJ,EAA0B,CACpC,MAAMI,EAAoB,UAAW,CAAE,OAAAJ,EAAQ,QAAS,GAAM,SAAU,EAAK,CAAC,CAChF,CACF,EALaI,EACJ,UAAY,iBADR,IAAAC,EAAND,EAgBA,MAAME,EAAN,MAAMA,UAA6B,WAA+B,CAEvE,YAAYN,EAA2B,CACrC,MAAMM,EAAqB,UAAW,CAAE,OAAAN,EAAQ,QAAS,GAAM,SAAU,EAAK,CAAC,CACjF,CACF,EALaM,EACJ,UAAY,kBADR,IAAAC,EAAND,EAoBA,MAAME,EAAN,MAAMA,UAA8B,WAAgC,CAGzE,YAAYR,EAA4B,CACtC,MAAMQ,EAAsB,UAAW,CAAE,OAAAR,EAAQ,QAAS,GAAM,SAAU,EAAK,CAAC,CAClF,CACF,EANaQ,EACJ,UAAY,mBADR,IAAAC,EAAND,EAeA,MAAME,EAAN,MAAMA,UAA8B,WAAyC,CAGlF,YAAYV,EAAqC,CAC/C,MAAMU,EAAsB,UAAW,CAAE,OAAAV,EAAQ,QAAS,GAAM,SAAU,EAAK,CAAC,CAClF,CACF,EANaU,EACJ,UAAY,mBADd,IAAMC,EAAND,EAmBA,MAAME,EAAN,MAAMA,UAA2C,WAA6C,CAEnG,YAAYZ,EAAyC,CACnD,MAAMY,EAAmC,UAAW,CAAE,OAAAZ,EAAQ,QAAS,GAAM,SAAU,EAAK,CAAC,CAC/F,CACF,EALaY,EACJ,UAAY,gCADd,IAAMC,EAAND,EAgBA,MAAME,EAAN,MAAMA,UAAkC,WAA+B,CAG5E,YAAYd,EAA2B,CACrC,MAAMc,EAA0B,UAAW,CAAE,OAAAd,EAAQ,QAAS,GAAM,SAAU,EAAK,CAAC,CACtF,CACF,EANac,EACJ,UAAY,uBADd,IAAMC,EAAND,EAkBA,MAAME,EAAN,MAAMA,UAAwC,WAAsC,CAGzF,YAAYhB,EAAkC,CAC5C,MAAMgB,EAAgC,UAAW,CAAE,OAAAhB,EAAQ,QAAS,GAAM,SAAU,EAAK,CAAC,CAC5F,CACF,EANagB,EACJ,UAAY,iCADRC,EAAND"}
@@ -1,5 +1,6 @@
1
- import { a as TCartApi } from './cart-contents-CMm57qu0.esm.js';
2
- import { W as WidgetName, a as TId } from './types-zbTZ8-KP.esm.js';
1
+ import { a as TCartApi } from './cart-contents-6_ztOjrx.esm.js';
2
+ import { T as TPromoCodeRequest } from './promo-types-aQ_hre6t.esm.js';
3
+ import { W as WidgetName, a as TId, H as HelperName } from './types-IbMT3Nwn.esm.js';
3
4
 
4
5
  type NetworkEventDetail = {
5
6
  url: string;
@@ -102,6 +103,30 @@ declare class BeamNonprofitSelectionRemovedEvent extends CustomEvent<NonprofitSe
102
103
  static eventName: "beamnonprofitselectionremoved";
103
104
  constructor(detail: NonprofitSelectionRemovedDetail);
104
105
  }
106
+ type PromoStoredDetail = {
107
+ promoCodes: TPromoCodeRequest;
108
+ };
109
+ /**
110
+ * Emitted when a URL with query parameters is sanitized and stored in localStorage
111
+ *
112
+ * @event beampromocodesstored
113
+ */
114
+ declare class BeamPromoCodesStoredEvent extends CustomEvent<PromoStoredDetail> {
115
+ static eventName: string;
116
+ constructor(detail: PromoStoredDetail);
117
+ }
118
+ type WidgetStoredPromosDetail = {
119
+ source?: WidgetName | HelperName | null;
120
+ };
121
+ /**
122
+ * Emitted when a widget stores the url or manual promoCodes in local storage
123
+ *
124
+ * @event beamwidgetstoredpromocodes
125
+ */
126
+ declare class BeamWidgetStoredPromoCodesEvent extends CustomEvent<WidgetStoredPromosDetail> {
127
+ static eventName: "beamwidgetstoredpromocodes";
128
+ constructor(detail: WidgetStoredPromosDetail);
129
+ }
105
130
 
106
131
  type events_BeamCartChangeEvent = BeamCartChangeEvent;
107
132
  declare const events_BeamCartChangeEvent: typeof BeamCartChangeEvent;
@@ -115,10 +140,14 @@ type events_BeamNonprofitSelectionRemovedEvent = BeamNonprofitSelectionRemovedEv
115
140
  declare const events_BeamNonprofitSelectionRemovedEvent: typeof BeamNonprofitSelectionRemovedEvent;
116
141
  type events_BeamOrderCreatedEvent = BeamOrderCreatedEvent;
117
142
  declare const events_BeamOrderCreatedEvent: typeof BeamOrderCreatedEvent;
143
+ type events_BeamPromoCodesStoredEvent = BeamPromoCodesStoredEvent;
144
+ declare const events_BeamPromoCodesStoredEvent: typeof BeamPromoCodesStoredEvent;
118
145
  type events_BeamStatusChangeEvent = BeamStatusChangeEvent;
119
146
  declare const events_BeamStatusChangeEvent: typeof BeamStatusChangeEvent;
147
+ type events_BeamWidgetStoredPromoCodesEvent = BeamWidgetStoredPromoCodesEvent;
148
+ declare const events_BeamWidgetStoredPromoCodesEvent: typeof BeamWidgetStoredPromoCodesEvent;
120
149
  declare namespace events {
121
- export { events_BeamCartChangeEvent as BeamCartChangeEvent, events_BeamCartCreatedEvent as BeamCartCreatedEvent, events_BeamNetworkCallEvent as BeamNetworkCallEvent, events_BeamNonprofitSelectEvent as BeamNonprofitSelectEvent, events_BeamNonprofitSelectionRemovedEvent as BeamNonprofitSelectionRemovedEvent, events_BeamOrderCreatedEvent as BeamOrderCreatedEvent, events_BeamStatusChangeEvent as BeamStatusChangeEvent };
150
+ export { events_BeamCartChangeEvent as BeamCartChangeEvent, events_BeamCartCreatedEvent as BeamCartCreatedEvent, events_BeamNetworkCallEvent as BeamNetworkCallEvent, events_BeamNonprofitSelectEvent as BeamNonprofitSelectEvent, events_BeamNonprofitSelectionRemovedEvent as BeamNonprofitSelectionRemovedEvent, events_BeamOrderCreatedEvent as BeamOrderCreatedEvent, events_BeamPromoCodesStoredEvent as BeamPromoCodesStoredEvent, events_BeamStatusChangeEvent as BeamStatusChangeEvent, events_BeamWidgetStoredPromoCodesEvent as BeamWidgetStoredPromoCodesEvent };
122
151
  }
123
152
 
124
- export { BeamNonprofitSelectEvent as B, BeamNetworkCallEvent as a, BeamCartChangeEvent as b, BeamCartCreatedEvent as c, BeamOrderCreatedEvent as d, events as e, BeamStatusChangeEvent as f, BeamNonprofitSelectionRemovedEvent as g };
153
+ export { BeamNonprofitSelectEvent as B, BeamNetworkCallEvent as a, BeamCartChangeEvent as b, BeamCartCreatedEvent as c, BeamOrderCreatedEvent as d, events as e, BeamStatusChangeEvent as f, BeamNonprofitSelectionRemovedEvent as g, BeamPromoCodesStoredEvent as h, BeamWidgetStoredPromoCodesEvent as i };
@@ -1,4 +1,4 @@
1
- import { p as paths } from './openapi-spec-hjdK2L9Q.esm.js';
1
+ import { p as paths } from './openapi-spec-bxGNhNMa.esm.js';
2
2
 
3
3
  type PostLogsReq = paths["/logs"]["post"]["requestBody"]["content"]["application/json"];
4
4
  interface SendLogConfig {
@@ -1,8 +1,8 @@
1
- import { i as index$5 } from './index-GynYZRPI.esm.js';
2
- import { i as index$4 } from './index--z5MSe4-.esm.js';
1
+ import { i as index$5 } from './index-puZGYsUA.esm.js';
2
+ import { i as index$4 } from './index-cznI-EZa.esm.js';
3
3
  import { i as index$3 } from './index-EGiUuWe-.esm.js';
4
- import { i as index$1 } from './index-v6fG3D6u.esm.js';
5
- import { i as index$2 } from './index-PA0NAKHV.esm.js';
4
+ import { i as index$1 } from './index-bhqIqVQJ.esm.js';
5
+ import { i as index$2 } from './index-0X3JKFYs.esm.js';
6
6
 
7
7
  /**
8
8
  * This file is used to provide type definitions
@@ -0,0 +1,2 @@
1
+ import{O as e}from"./update-cart-UuMHYehB.esm.js";var r=Object.freeze({__proto__:null,updateCart:e});export{r as i};
2
+ //# sourceMappingURL=index-44clOvXJ.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-44clOvXJ.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import{i}from"./index-dLnZQZlT.esm.js";import{i as o}from"./index-CNVMNDM4.esm.js";import{i as r}from"./index-JDZQClkA.esm.js";import{i as e}from"./index-wz6Yfo37.esm.js";import{i as m}from"./index-HVGMpZIV.esm.js";var s=Object.freeze({__proto__:null,Cart:e,Logs:m,Session:r,Shopify:o,Utils:i});export{s as i};
2
+ //# sourceMappingURL=index-B-9JPaCH.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-B-9JPaCH.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- import{H as t,g as e,S as r,_ as a,v as i,F as o,s,G as g}from"./order-page-84vnjksY.esm.js";var d=Object.freeze({__proto__:null,addBeamAttributesToCart:t,appendBeamAttributesToCart:e,appendStatsigToShopifyCartAttributes:r,getCurrentCart:a,getShopifyCart:i,registerCartIntegration:o,showBeamOrderPageWidgets:s,trackCart:g});export{d as i};
2
- //# sourceMappingURL=index-b3WjW4PD.esm.js.map
1
+ import{H as t,g as e,S as r,_ as a,v as i,F as o,s,G as g}from"./order-page-ZpOf35sP.esm.js";var d=Object.freeze({__proto__:null,addBeamAttributesToCart:t,appendBeamAttributesToCart:e,appendStatsigToShopifyCartAttributes:r,getCurrentCart:a,getShopifyCart:i,registerCartIntegration:o,showBeamOrderPageWidgets:s,trackCart:g});export{d as i};
2
+ //# sourceMappingURL=index-CNVMNDM4.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-CNVMNDM4.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- import{a as i,c as n}from"./routes-tB5fHy2T.esm.js";import{logger as c}from"../utils/logger.js";async function e(o,r){const{apiKey:a,baseUrl:s}=o;try{await n({baseUrl:s||i,headers:{authorization:`Api-Key ${a}`},requestBody:{...r}})}catch(t){c.error("Failed to send log",t)}}var d=Object.freeze({__proto__:null,sendLog:e});export{d as i,e as s};
2
- //# sourceMappingURL=index-59K_SAPn.esm.js.map
1
+ import{a as i,c as n}from"./routes-YPOoVIR2.esm.js";import{logger as c}from"../utils/logger.js";async function e(o,r){const{apiKey:a,baseUrl:s}=o;try{await n({baseUrl:s||i,headers:{authorization:`Api-Key ${a}`},requestBody:{...r}})}catch(t){c.error("Failed to send log",t)}}var d=Object.freeze({__proto__:null,sendLog:e});export{d as i,e as s};
2
+ //# sourceMappingURL=index-HVGMpZIV.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-59K_SAPn.esm.js","sources":["../../src/integrations/logs/index.ts"],"sourcesContent":["import { postLogs } from \"../../api-sdk/v3/routes\";\nimport { paths } from \"../../api-sdk/v3/openapi-spec\";\nimport { logger } from \"../../utils/logger\";\nimport { DEFAULT_LOG_URL } from \"../../api-sdk/constants\";\n\ntype PostLogsReq = paths[\"/logs\"][\"post\"][\"requestBody\"][\"content\"][\"application/json\"];\n\ninterface SendLogConfig {\n apiKey: string;\n baseUrl?: string;\n}\n\nexport async function sendLog(config: SendLogConfig, payload: PostLogsReq): Promise<void> {\n const { apiKey, baseUrl } = config;\n try {\n await postLogs({\n baseUrl: baseUrl || DEFAULT_LOG_URL,\n headers: {\n authorization: `Api-Key ${apiKey}`,\n },\n requestBody: {\n ...payload,\n },\n });\n } catch (err) {\n logger.error(\"Failed to send log\", err);\n }\n}\n"],"names":["sendLog","config","payload","apiKey","baseUrl","postLogs","DEFAULT_LOG_URL","err","logger"],"mappings":"gGAYA,eAAsBA,EAAQC,EAAuBC,EAAqC,CACxF,KAAM,CAAE,OAAAC,EAAQ,QAAAC,CAAQ,EAAIH,EAC5B,GAAI,CACF,MAAMI,EAAS,CACb,QAASD,GAAWE,EACpB,QAAS,CACP,cAAe,WAAWH,CAAM,EAClC,EACA,YAAa,CACX,GAAGD,CACL,CACF,CAAC,CACH,OAASK,EAAK,CACZC,EAAO,MAAM,qBAAsBD,CAAG,CACxC,CACF"}
1
+ {"version":3,"file":"index-HVGMpZIV.esm.js","sources":["../../src/integrations/logs/index.ts"],"sourcesContent":["import { postLogs } from \"../../api-sdk/v3/routes\";\nimport { paths } from \"../../api-sdk/v3/openapi-spec\";\nimport { logger } from \"../../utils/logger\";\nimport { DEFAULT_LOG_URL } from \"../../api-sdk/constants\";\n\ntype PostLogsReq = paths[\"/logs\"][\"post\"][\"requestBody\"][\"content\"][\"application/json\"];\n\ninterface SendLogConfig {\n apiKey: string;\n baseUrl?: string;\n}\n\nexport async function sendLog(config: SendLogConfig, payload: PostLogsReq): Promise<void> {\n const { apiKey, baseUrl } = config;\n try {\n await postLogs({\n baseUrl: baseUrl || DEFAULT_LOG_URL,\n headers: {\n authorization: `Api-Key ${apiKey}`,\n },\n requestBody: {\n ...payload,\n },\n });\n } catch (err) {\n logger.error(\"Failed to send log\", err);\n }\n}\n"],"names":["sendLog","config","payload","apiKey","baseUrl","postLogs","DEFAULT_LOG_URL","err","logger"],"mappings":"gGAYA,eAAsBA,EAAQC,EAAuBC,EAAqC,CACxF,KAAM,CAAE,OAAAC,EAAQ,QAAAC,CAAQ,EAAIH,EAC5B,GAAI,CACF,MAAMI,EAAS,CACb,QAASD,GAAWE,EACpB,QAAS,CACP,cAAe,WAAWH,CAAM,EAClC,EACA,YAAa,CACX,GAAGD,CACL,CACF,CAAC,CACH,OAASK,EAAK,CACZC,EAAO,MAAM,qBAAsBD,CAAG,CACxC,CACF"}
@@ -1,2 +1,2 @@
1
- import{H as t,g as e,S as r,_ as a,v as i,F as o,s,G as g}from"./order-page-dERTuQ8T.esm.js";var d=Object.freeze({__proto__:null,addBeamAttributesToCart:t,appendBeamAttributesToCart:e,appendStatsigToShopifyCartAttributes:r,getCurrentCart:a,getShopifyCart:i,registerCartIntegration:o,showBeamOrderPageWidgets:s,trackCart:g});export{d as i};
2
- //# sourceMappingURL=index-cuCnejll.esm.js.map
1
+ import{H as t,g as e,S as r,_ as a,v as i,F as o,s,G as g}from"./order-page-WPxvCNLM.esm.js";var d=Object.freeze({__proto__:null,addBeamAttributesToCart:t,appendBeamAttributesToCart:e,appendStatsigToShopifyCartAttributes:r,getCurrentCart:a,getShopifyCart:i,registerCartIntegration:o,showBeamOrderPageWidgets:s,trackCart:g});export{d as i};
2
+ //# sourceMappingURL=index-UHchr4H_.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-UHchr4H_.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +1,2 @@
1
- import{a as i,c as n}from"./routes-Jhhqcsg7.esm.js";import{logger as c}from"../utils/logger.esm.js";async function e(o,r){const{apiKey:a,baseUrl:s}=o;try{await n({baseUrl:s||i,headers:{authorization:`Api-Key ${a}`},requestBody:{...r}})}catch(t){c.error("Failed to send log",t)}}var d=Object.freeze({__proto__:null,sendLog:e});export{d as i,e as s};
2
- //# sourceMappingURL=index-KOSC2Z9-.esm.js.map
1
+ import{a as i,c as n}from"./routes-o-phF_L1.esm.js";import{logger as c}from"../utils/logger.esm.js";async function e(o,r){const{apiKey:a,baseUrl:s}=o;try{await n({baseUrl:s||i,headers:{authorization:`Api-Key ${a}`},requestBody:{...r}})}catch(t){c.error("Failed to send log",t)}}var d=Object.freeze({__proto__:null,sendLog:e});export{d as i,e as s};
2
+ //# sourceMappingURL=index-XPlAZw7t.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-KOSC2Z9-.esm.js","sources":["../../src/integrations/logs/index.ts"],"sourcesContent":["import { postLogs } from \"../../api-sdk/v3/routes\";\nimport { paths } from \"../../api-sdk/v3/openapi-spec\";\nimport { logger } from \"../../utils/logger\";\nimport { DEFAULT_LOG_URL } from \"../../api-sdk/constants\";\n\ntype PostLogsReq = paths[\"/logs\"][\"post\"][\"requestBody\"][\"content\"][\"application/json\"];\n\ninterface SendLogConfig {\n apiKey: string;\n baseUrl?: string;\n}\n\nexport async function sendLog(config: SendLogConfig, payload: PostLogsReq): Promise<void> {\n const { apiKey, baseUrl } = config;\n try {\n await postLogs({\n baseUrl: baseUrl || DEFAULT_LOG_URL,\n headers: {\n authorization: `Api-Key ${apiKey}`,\n },\n requestBody: {\n ...payload,\n },\n });\n } catch (err) {\n logger.error(\"Failed to send log\", err);\n }\n}\n"],"names":["sendLog","config","payload","apiKey","baseUrl","postLogs","DEFAULT_LOG_URL","err","logger"],"mappings":"oGAYA,eAAsBA,EAAQC,EAAuBC,EAAqC,CACxF,KAAM,CAAE,OAAAC,EAAQ,QAAAC,CAAQ,EAAIH,EAC5B,GAAI,CACF,MAAMI,EAAS,CACb,QAASD,GAAWE,EACpB,QAAS,CACP,cAAe,WAAWH,CAAM,EAClC,EACA,YAAa,CACX,GAAGD,CACL,CACF,CAAC,CACH,OAASK,EAAK,CACZC,EAAO,MAAM,qBAAsBD,CAAG,CACxC,CACF"}
1
+ {"version":3,"file":"index-XPlAZw7t.esm.js","sources":["../../src/integrations/logs/index.ts"],"sourcesContent":["import { postLogs } from \"../../api-sdk/v3/routes\";\nimport { paths } from \"../../api-sdk/v3/openapi-spec\";\nimport { logger } from \"../../utils/logger\";\nimport { DEFAULT_LOG_URL } from \"../../api-sdk/constants\";\n\ntype PostLogsReq = paths[\"/logs\"][\"post\"][\"requestBody\"][\"content\"][\"application/json\"];\n\ninterface SendLogConfig {\n apiKey: string;\n baseUrl?: string;\n}\n\nexport async function sendLog(config: SendLogConfig, payload: PostLogsReq): Promise<void> {\n const { apiKey, baseUrl } = config;\n try {\n await postLogs({\n baseUrl: baseUrl || DEFAULT_LOG_URL,\n headers: {\n authorization: `Api-Key ${apiKey}`,\n },\n requestBody: {\n ...payload,\n },\n });\n } catch (err) {\n logger.error(\"Failed to send log\", err);\n }\n}\n"],"names":["sendLog","config","payload","apiKey","baseUrl","postLogs","DEFAULT_LOG_URL","err","logger"],"mappings":"oGAYA,eAAsBA,EAAQC,EAAuBC,EAAqC,CACxF,KAAM,CAAE,OAAAC,EAAQ,QAAAC,CAAQ,EAAIH,EAC5B,GAAI,CACF,MAAMI,EAAS,CACb,QAASD,GAAWE,EACpB,QAAS,CACP,cAAe,WAAWH,CAAM,EAClC,EACA,YAAa,CACX,GAAGD,CACL,CACF,CAAC,CACH,OAASK,EAAK,CACZC,EAAO,MAAM,qBAAsBD,CAAG,CACxC,CACF"}
@@ -1,4 +1,4 @@
1
- import { B as BeamCartAPIConfig, a as BeamCartValues, u as updateCart } from './update-cart-l86bU5uS.esm.js';
1
+ import { B as BeamCartAPIConfig, a as BeamCartValues, u as updateCart } from './update-cart-JO4fuiim.esm.js';
2
2
 
3
3
  declare const index_BeamCartAPIConfig: typeof BeamCartAPIConfig;
4
4
  declare const index_BeamCartValues: typeof BeamCartValues;
@@ -1,4 +1,4 @@
1
- import { B as BeamShopifyCartIntegrationConfig, T as TBeamOrderPageParams, a as addBeamAttributesToCart, c as appendBeamAttributesToCart, b as appendStatsigToShopifyCartAttributes, g as getCurrentCart, d as getShopifyCart, r as registerCartIntegration, s as showBeamOrderPageWidgets, t as trackCart } from './order-page-9clVUPaS.esm.js';
1
+ import { B as BeamShopifyCartIntegrationConfig, T as TBeamOrderPageParams, a as addBeamAttributesToCart, c as appendBeamAttributesToCart, b as appendStatsigToShopifyCartAttributes, g as getCurrentCart, d as getShopifyCart, r as registerCartIntegration, s as showBeamOrderPageWidgets, t as trackCart } from './order-page-dlXIs0gJ.esm.js';
2
2
 
3
3
  declare const index_BeamShopifyCartIntegrationConfig: typeof BeamShopifyCartIntegrationConfig;
4
4
  declare const index_TBeamOrderPageParams: typeof TBeamOrderPageParams;
@@ -0,0 +1,2 @@
1
+ import{b as o}from"./beam-errors-AMvTvR1C.esm.js";import{e}from"./events-T3hYV1LF.esm.js";import{logger as r}from"../utils/logger.js";import{initNetworkListeners as t}from"../utils/network-listeners.js";import{createScopedLocalStorage as a}from"../utils/local-storage.js";import{waitForElement as m}from"../utils/wait-for-element.js";import{deleteCookieValue as s,getCookieMap as i,getCookieValue as d,setCookieValue as n}from"../utils/cookies.js";import{getRemoteSession as C,saveRemoteSession as g}from"../utils/remote-session.js";import{memoizeLast as l}from"../utils/memoize-last.js";import{d as p,i as S}from"./lodash-P8OIs-at.esm.js";import{f as P,c as f,b as k,h as u,g as c,a as A,i as F,m as L,j as E,e as R,p as v,s as b,k as y}from"./promoManager--3WXq4at.esm.js";var V=Object.freeze({__proto__:null,createScopedLocalStorage:a,debounce:p,deleteCookieValue:s,errors:o,events:e,formatStoreAndReturnPromoCodes:P,getAllPromoCodesFromCookie:f,getCookieMap:i,getCookieValue:d,getPromoCodeFromShopifyCookie:k,getPromoCodesFromCart:u,getPromoCodesLocalStorage:c,getRemoteSession:C,getSanitizedUrlForStorage:A,initNetworkListeners:t,isEmptyPromoData:F,isEqual:S,logger:r,mapToUnvalidatedPromoCodes:L,memoizeLast:l,mergeStoreAndReturnPromos:E,parseJsonStringArray:R,promoCodesAreEqual:v,saveRemoteSession:g,setCookieValue:n,setPromoCodeInCookie:b,setPromoCodesInLocalStorage:y,waitForElement:m});export{V as i};
2
+ //# sourceMappingURL=index-dLnZQZlT.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-dLnZQZlT.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import{b as o}from"./beam-errors-AMvTvR1C.esm.js";import{e}from"./events-T3hYV1LF.esm.js";import{logger as r}from"../utils/logger.js";import{initNetworkListeners as t}from"../utils/network-listeners.js";import{createScopedLocalStorage as a}from"../utils/local-storage.js";import{waitForElement as m}from"../utils/wait-for-element.js";import{deleteCookieValue as s,getCookieMap as i,getCookieValue as d,setCookieValue as n}from"../utils/cookies.js";import{getRemoteSession as C,saveRemoteSession as g}from"../utils/remote-session.js";import{memoizeLast as l}from"../utils/memoize-last.js";import{d as p,i as S}from"./lodash-P8OIs-at.esm.js";import{f as P,c as f,b as k,h as u,g as c,a as A,i as F,m as L,j as E,e as R,p as v,s as b,k as y}from"./promoManager--3WXq4at.esm.js";var V=Object.freeze({__proto__:null,createScopedLocalStorage:a,debounce:p,deleteCookieValue:s,errors:o,events:e,formatStoreAndReturnPromoCodes:P,getAllPromoCodesFromCookie:f,getCookieMap:i,getCookieValue:d,getPromoCodeFromShopifyCookie:k,getPromoCodesFromCart:u,getPromoCodesLocalStorage:c,getRemoteSession:C,getSanitizedUrlForStorage:A,initNetworkListeners:t,isEmptyPromoData:F,isEqual:S,logger:r,mapToUnvalidatedPromoCodes:L,memoizeLast:l,mergeStoreAndReturnPromos:E,parseJsonStringArray:R,promoCodesAreEqual:v,saveRemoteSession:g,setCookieValue:n,setPromoCodeInCookie:b,setPromoCodesInLocalStorage:y,waitForElement:m});export{V as i};
2
+ //# sourceMappingURL=index-f7fp9odj.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-f7fp9odj.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import{b as o}from"./beam-errors-AMvTvR1C.esm.js";import{e}from"./events-T3hYV1LF.esm.js";import{logger as r}from"../utils/logger.esm.js";import{initNetworkListeners as t}from"../utils/network-listeners.esm.js";import{createScopedLocalStorage as a}from"../utils/local-storage.esm.js";import{waitForElement as m}from"../utils/wait-for-element.esm.js";import{deleteCookieValue as s,getCookieMap as i,getCookieValue as d,setCookieValue as n}from"../utils/cookies.esm.js";import{getRemoteSession as C,saveRemoteSession as g}from"../utils/remote-session.esm.js";import{memoizeLast as l}from"../utils/memoize-last.esm.js";import{d as p,i as S}from"./lodash-P8OIs-at.esm.js";import{f as P,c as f,b as k,h as u,g as c,a as A,i as F,m as L,j as E,e as R,p as v,s as b,k as y}from"./promoManager-YUzbMtwY.esm.js";var V=Object.freeze({__proto__:null,createScopedLocalStorage:a,debounce:p,deleteCookieValue:s,errors:o,events:e,formatStoreAndReturnPromoCodes:P,getAllPromoCodesFromCookie:f,getCookieMap:i,getCookieValue:d,getPromoCodeFromShopifyCookie:k,getPromoCodesFromCart:u,getPromoCodesLocalStorage:c,getRemoteSession:C,getSanitizedUrlForStorage:A,initNetworkListeners:t,isEmptyPromoData:F,isEqual:S,logger:r,mapToUnvalidatedPromoCodes:L,memoizeLast:l,mergeStoreAndReturnPromos:E,parseJsonStringArray:R,promoCodesAreEqual:v,saveRemoteSession:g,setCookieValue:n,setPromoCodeInCookie:b,setPromoCodesInLocalStorage:y,waitForElement:m});export{V as i};
2
+ //# sourceMappingURL=index-kFulvjM4.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-kFulvjM4.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import{b as o}from"./beam-errors-AMvTvR1C.esm.js";import{e}from"./events-T3hYV1LF.esm.js";import{logger as r}from"../utils/logger.esm.js";import{initNetworkListeners as t}from"../utils/network-listeners.esm.js";import{createScopedLocalStorage as a}from"../utils/local-storage.esm.js";import{waitForElement as m}from"../utils/wait-for-element.esm.js";import{deleteCookieValue as s,getCookieMap as i,getCookieValue as d,setCookieValue as n}from"../utils/cookies.esm.js";import{getRemoteSession as C,saveRemoteSession as g}from"../utils/remote-session.esm.js";import{memoizeLast as l}from"../utils/memoize-last.esm.js";import{d as p,i as S}from"./lodash-P8OIs-at.esm.js";import{f as P,c as f,b as k,h as u,g as c,a as A,i as F,m as L,j as E,e as R,p as v,s as b,k as y}from"./promoManager-YUzbMtwY.esm.js";var V=Object.freeze({__proto__:null,createScopedLocalStorage:a,debounce:p,deleteCookieValue:s,errors:o,events:e,formatStoreAndReturnPromoCodes:P,getAllPromoCodesFromCookie:f,getCookieMap:i,getCookieValue:d,getPromoCodeFromShopifyCookie:k,getPromoCodesFromCart:u,getPromoCodesLocalStorage:c,getRemoteSession:C,getSanitizedUrlForStorage:A,initNetworkListeners:t,isEmptyPromoData:F,isEqual:S,logger:r,mapToUnvalidatedPromoCodes:L,memoizeLast:l,mergeStoreAndReturnPromos:E,parseJsonStringArray:R,promoCodesAreEqual:v,saveRemoteSession:g,setCookieValue:n,setPromoCodeInCookie:b,setPromoCodesInLocalStorage:y,waitForElement:m});export{V as i};
2
+ //# sourceMappingURL=index-m1LRybiJ.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-m1LRybiJ.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,46 @@
1
+ import { b as beamErrors } from './beam-errors-bKCZlkvr.esm.js';
2
+ import { e as events } from './events-u_8n2LIU.esm.js';
3
+ import { logger } from '../utils/logger.js';
4
+ import { initNetworkListeners } from '../utils/network-listeners.js';
5
+ import { createScopedLocalStorage } from '../utils/local-storage.js';
6
+ import { waitForElement } from '../utils/wait-for-element.js';
7
+ import { CookieChangeEvent, deleteCookieValue, getCookieMap, getCookieValue, setCookieValue } from '../utils/cookies.js';
8
+ import { getRemoteSession, saveRemoteSession } from '../utils/remote-session.js';
9
+ import { memoizeLast } from '../utils/memoize-last.js';
10
+ import debounce from 'lodash-es/debounce';
11
+ import isEqual from 'lodash-es/isEqual';
12
+ import { formatStoreAndReturnPromoCodes, getAllPromoCodesFromCookie, getPromoCodeFromShopifyCookie, getPromoCodesFromCart, getPromoCodesLocalStorage, getSanitizedUrlForStorage, isEmptyPromoData, mapToUnvalidatedPromoCodes, mergeStoreAndReturnPromos, parseJsonStringArray, promoCodesAreEqual, setPromoCodeInCookie, setPromoCodesInLocalStorage } from '../utils/promoManager.js';
13
+
14
+ declare const index_CookieChangeEvent: typeof CookieChangeEvent;
15
+ declare const index_createScopedLocalStorage: typeof createScopedLocalStorage;
16
+ declare const index_debounce: typeof debounce;
17
+ declare const index_deleteCookieValue: typeof deleteCookieValue;
18
+ declare const index_events: typeof events;
19
+ declare const index_formatStoreAndReturnPromoCodes: typeof formatStoreAndReturnPromoCodes;
20
+ declare const index_getAllPromoCodesFromCookie: typeof getAllPromoCodesFromCookie;
21
+ declare const index_getCookieMap: typeof getCookieMap;
22
+ declare const index_getCookieValue: typeof getCookieValue;
23
+ declare const index_getPromoCodeFromShopifyCookie: typeof getPromoCodeFromShopifyCookie;
24
+ declare const index_getPromoCodesFromCart: typeof getPromoCodesFromCart;
25
+ declare const index_getPromoCodesLocalStorage: typeof getPromoCodesLocalStorage;
26
+ declare const index_getRemoteSession: typeof getRemoteSession;
27
+ declare const index_getSanitizedUrlForStorage: typeof getSanitizedUrlForStorage;
28
+ declare const index_initNetworkListeners: typeof initNetworkListeners;
29
+ declare const index_isEmptyPromoData: typeof isEmptyPromoData;
30
+ declare const index_isEqual: typeof isEqual;
31
+ declare const index_logger: typeof logger;
32
+ declare const index_mapToUnvalidatedPromoCodes: typeof mapToUnvalidatedPromoCodes;
33
+ declare const index_memoizeLast: typeof memoizeLast;
34
+ declare const index_mergeStoreAndReturnPromos: typeof mergeStoreAndReturnPromos;
35
+ declare const index_parseJsonStringArray: typeof parseJsonStringArray;
36
+ declare const index_promoCodesAreEqual: typeof promoCodesAreEqual;
37
+ declare const index_saveRemoteSession: typeof saveRemoteSession;
38
+ declare const index_setCookieValue: typeof setCookieValue;
39
+ declare const index_setPromoCodeInCookie: typeof setPromoCodeInCookie;
40
+ declare const index_setPromoCodesInLocalStorage: typeof setPromoCodesInLocalStorage;
41
+ declare const index_waitForElement: typeof waitForElement;
42
+ declare namespace index {
43
+ export { index_CookieChangeEvent as CookieChangeEvent, index_createScopedLocalStorage as createScopedLocalStorage, index_debounce as debounce, index_deleteCookieValue as deleteCookieValue, beamErrors as errors, index_events as events, index_formatStoreAndReturnPromoCodes as formatStoreAndReturnPromoCodes, index_getAllPromoCodesFromCookie as getAllPromoCodesFromCookie, index_getCookieMap as getCookieMap, index_getCookieValue as getCookieValue, index_getPromoCodeFromShopifyCookie as getPromoCodeFromShopifyCookie, index_getPromoCodesFromCart as getPromoCodesFromCart, index_getPromoCodesLocalStorage as getPromoCodesLocalStorage, index_getRemoteSession as getRemoteSession, index_getSanitizedUrlForStorage as getSanitizedUrlForStorage, index_initNetworkListeners as initNetworkListeners, index_isEmptyPromoData as isEmptyPromoData, index_isEqual as isEqual, index_logger as logger, index_mapToUnvalidatedPromoCodes as mapToUnvalidatedPromoCodes, index_memoizeLast as memoizeLast, index_mergeStoreAndReturnPromos as mergeStoreAndReturnPromos, index_parseJsonStringArray as parseJsonStringArray, index_promoCodesAreEqual as promoCodesAreEqual, index_saveRemoteSession as saveRemoteSession, index_setCookieValue as setCookieValue, index_setPromoCodeInCookie as setPromoCodeInCookie, index_setPromoCodesInLocalStorage as setPromoCodesInLocalStorage, index_waitForElement as waitForElement };
44
+ }
45
+
46
+ export { index as i };
@@ -0,0 +1,46 @@
1
+ import { b as beamErrors } from './beam-errors-bKCZlkvr.esm.js';
2
+ import { e as events } from './events-u_8n2LIU.esm.js';
3
+ import { logger } from '../utils/logger.js';
4
+ import { initNetworkListeners } from '../utils/network-listeners.js';
5
+ import { createScopedLocalStorage } from '../utils/local-storage.js';
6
+ import { waitForElement } from '../utils/wait-for-element.js';
7
+ import { CookieChangeEvent, deleteCookieValue, getCookieMap, getCookieValue, setCookieValue } from '../utils/cookies.js';
8
+ import { getRemoteSession, saveRemoteSession } from '../utils/remote-session.js';
9
+ import { memoizeLast } from '../utils/memoize-last.js';
10
+ import debounce from 'lodash-es/debounce';
11
+ import isEqual from 'lodash-es/isEqual';
12
+ import { formatStoreAndReturnPromoCodes, getAllPromoCodesFromCookie, getPromoCodeFromShopifyCookie, getPromoCodesFromCart, getPromoCodesLocalStorage, getSanitizedUrlForStorage, isEmptyPromoData, mapToUnvalidatedPromoCodes, mergeStoreAndReturnPromos, parseJsonStringArray, promoCodesAreEqual, setPromoCodeInCookie, setPromoCodesInLocalStorage } from '../utils/promoManager.js';
13
+
14
+ declare const index_CookieChangeEvent: typeof CookieChangeEvent;
15
+ declare const index_createScopedLocalStorage: typeof createScopedLocalStorage;
16
+ declare const index_debounce: typeof debounce;
17
+ declare const index_deleteCookieValue: typeof deleteCookieValue;
18
+ declare const index_events: typeof events;
19
+ declare const index_formatStoreAndReturnPromoCodes: typeof formatStoreAndReturnPromoCodes;
20
+ declare const index_getAllPromoCodesFromCookie: typeof getAllPromoCodesFromCookie;
21
+ declare const index_getCookieMap: typeof getCookieMap;
22
+ declare const index_getCookieValue: typeof getCookieValue;
23
+ declare const index_getPromoCodeFromShopifyCookie: typeof getPromoCodeFromShopifyCookie;
24
+ declare const index_getPromoCodesFromCart: typeof getPromoCodesFromCart;
25
+ declare const index_getPromoCodesLocalStorage: typeof getPromoCodesLocalStorage;
26
+ declare const index_getRemoteSession: typeof getRemoteSession;
27
+ declare const index_getSanitizedUrlForStorage: typeof getSanitizedUrlForStorage;
28
+ declare const index_initNetworkListeners: typeof initNetworkListeners;
29
+ declare const index_isEmptyPromoData: typeof isEmptyPromoData;
30
+ declare const index_isEqual: typeof isEqual;
31
+ declare const index_logger: typeof logger;
32
+ declare const index_mapToUnvalidatedPromoCodes: typeof mapToUnvalidatedPromoCodes;
33
+ declare const index_memoizeLast: typeof memoizeLast;
34
+ declare const index_mergeStoreAndReturnPromos: typeof mergeStoreAndReturnPromos;
35
+ declare const index_parseJsonStringArray: typeof parseJsonStringArray;
36
+ declare const index_promoCodesAreEqual: typeof promoCodesAreEqual;
37
+ declare const index_saveRemoteSession: typeof saveRemoteSession;
38
+ declare const index_setCookieValue: typeof setCookieValue;
39
+ declare const index_setPromoCodeInCookie: typeof setPromoCodeInCookie;
40
+ declare const index_setPromoCodesInLocalStorage: typeof setPromoCodesInLocalStorage;
41
+ declare const index_waitForElement: typeof waitForElement;
42
+ declare namespace index {
43
+ export { index_CookieChangeEvent as CookieChangeEvent, index_createScopedLocalStorage as createScopedLocalStorage, index_debounce as debounce, index_deleteCookieValue as deleteCookieValue, beamErrors as errors, index_events as events, index_formatStoreAndReturnPromoCodes as formatStoreAndReturnPromoCodes, index_getAllPromoCodesFromCookie as getAllPromoCodesFromCookie, index_getCookieMap as getCookieMap, index_getCookieValue as getCookieValue, index_getPromoCodeFromShopifyCookie as getPromoCodeFromShopifyCookie, index_getPromoCodesFromCart as getPromoCodesFromCart, index_getPromoCodesLocalStorage as getPromoCodesLocalStorage, index_getRemoteSession as getRemoteSession, index_getSanitizedUrlForStorage as getSanitizedUrlForStorage, index_initNetworkListeners as initNetworkListeners, index_isEmptyPromoData as isEmptyPromoData, index_isEqual as isEqual, index_logger as logger, index_mapToUnvalidatedPromoCodes as mapToUnvalidatedPromoCodes, index_memoizeLast as memoizeLast, index_mergeStoreAndReturnPromos as mergeStoreAndReturnPromos, index_parseJsonStringArray as parseJsonStringArray, index_promoCodesAreEqual as promoCodesAreEqual, index_saveRemoteSession as saveRemoteSession, index_setCookieValue as setCookieValue, index_setPromoCodeInCookie as setPromoCodeInCookie, index_setPromoCodesInLocalStorage as setPromoCodesInLocalStorage, index_waitForElement as waitForElement };
44
+ }
45
+
46
+ export { index as i };
@@ -0,0 +1,2 @@
1
+ import{i}from"./index-kFulvjM4.esm.js";import{i as o}from"./index-UHchr4H_.esm.js";import{i as r}from"./index-eXilYHHK.esm.js";import{i as e}from"./index-44clOvXJ.esm.js";import{i as m}from"./index-XPlAZw7t.esm.js";var s=Object.freeze({__proto__:null,Cart:e,Logs:m,Session:r,Shopify:o,Utils:i});export{s as i};
2
+ //# sourceMappingURL=index-smGc5rsi.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-smGc5rsi.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import{O as e}from"./update-cart-mNsQ9K-k.esm.js";var r=Object.freeze({__proto__:null,updateCart:e});export{r as i};
2
+ //# sourceMappingURL=index-wz6Yfo37.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-wz6Yfo37.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,4 +1,4 @@
1
- import{y as i,j as $}from"./lit-iNN5L_Qk.esm.js";import{N as g,M as y,B as u}from"./beam-errors-P-Lu07Ce.esm.js";import{logger as d}from"../utils/logger.esm.js";const b=t=>Object.entries(t).map(([r,n])=>`${r}: ${n};`).join(`
1
+ import{y as i,j as $}from"./lit-iNN5L_Qk.esm.js";import{N as g,M as y,B as u}from"./beam-errors-AMvTvR1C.esm.js";import{logger as d}from"../utils/logger.esm.js";const b=t=>Object.entries(t).map(([r,n])=>`${r}: ${n};`).join(`
2
2
  `);class x{constructor(r,n){this.data=null,this.loading=!1,this.error=null,(this.host=r).addController(this),this.asyncFn=n}async exec(...r){this.lastArgs=r,this.loading=!0,this.host.requestUpdate();try{this.data=await this.asyncFn(...r),this.error=null}catch(n){n instanceof Error&&(this.error=n,this.data=null)}return this.loading=!1,this.host.requestUpdate(),this.data}async retry(){return this.exec(...this.lastArgs||[])}hostDisconnected(){}}const f={errorTitle:"Beam encountered an error. Please try again.",retry:"Retry"},S=({error:t,retry:r})=>{let n=i``;if(t instanceof g){const o=JSON.stringify({status:t.response.status,statusText:t.response.statusText,url:t.response.url,body:t.body},null,4);n=i`
3
3
  <p><b>Network Response:</b></p>
4
4
  <p>${o}</p>
@@ -28,4 +28,4 @@ import{y as i,j as $}from"./lit-iNN5L_Qk.esm.js";import{N as g,M as y,B as u}fro
28
28
  color: var(${e}-color, ${p});
29
29
  letter-spacing: var(${e}-letterSpacing, ${m});
30
30
  `)},w=(t,r)=>{if(r.startsWith("{"))try{const n=JSON.parse(r);return n[t]??n.en??r}catch{return d.error(new u("Failed to extract JSON translation from string"),r),r}return r};export{x as A,S as _,b as a,v as d,w as i,T as u};
31
- //# sourceMappingURL=localize-o-cYvHQf.esm.js.map
31
+ //# sourceMappingURL=localize-7sMSg1W9.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"localize-o-cYvHQf.esm.js","sources":["../../src/shared/fragments/css-variable-map.ts","../../src/shared/controllers/async-controller.ts","../../src/shared/fragments/error-message-template.ts","../../src/shared/fragments/custom-text.ts","../../src/shared/localize.ts"],"sourcesContent":["export const _cssVariableMap = (variables: Record<string, string>) => {\n return Object.entries(variables)\n .map(([k, v]) => `${k}: ${v};`)\n .join(\"\\n\");\n};\n","import { ReactiveController, ReactiveControllerHost } from \"lit\";\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype AsyncFunction = (...args: any[]) => Promise<any>;\n\n/**\n * Creates a declarative wrapper around async operations\n * @example\n * class MyElement extends LitElement {\n * private user = new AsyncController(\n * this,\n * async ({ id }) => get(url, { id }));\n *\n * async updated(changedProperties) {\n * if (changedProperties.has(\"userId\")) {\n * await this.user.exec({ id: this.userId })\n * }\n * }\n *\n * render() {\n * const { data, loading, error } = this.user;\n * if (loading) return html`Please wait...`\n * if (error) return html`Error! <button @click=${this.user.retry}>Reload</button>`;\n * return html`My name is: ${data.name}`\n * }\n * }\n */\nexport class AsyncController<TFn extends AsyncFunction> implements ReactiveController {\n public data: Awaited<ReturnType<TFn>> | null = null;\n public loading = false;\n public error: Error | null = null;\n\n private readonly host: ReactiveControllerHost;\n private readonly asyncFn: TFn;\n private lastArgs?: Parameters<TFn>;\n\n constructor(host: ReactiveControllerHost, asyncFn: TFn) {\n (this.host = host).addController(this);\n this.asyncFn = asyncFn;\n }\n\n public async exec(...args: Parameters<TFn>): Promise<ReturnType<TFn> | null> {\n this.lastArgs = args;\n this.loading = true;\n this.host.requestUpdate();\n try {\n // TODO: prevent race condition if later invocation returns before earlier\n this.data = await this.asyncFn(...args);\n this.error = null;\n } catch (err) {\n if (err instanceof Error) {\n this.error = err;\n this.data = null;\n }\n }\n this.loading = false;\n this.host.requestUpdate();\n return this.data;\n }\n\n public async retry() {\n return this.exec(...((this.lastArgs || []) as Parameters<TFn>));\n }\n\n hostDisconnected() {\n // TODO: cancel API calls\n }\n}\n","import { html } from \"lit\";\nimport { MissingConfig, NetworkError } from \"../../utils/beam-errors\";\n\nconst strings = {\n errorTitle: `Beam encountered an error. Please try again.`,\n retry: `Retry`,\n};\n\nexport const _errorMessage = ({ error, retry }: { error: Error; retry?: (...args: never) => void }) => {\n let details = html``;\n if (error instanceof NetworkError) {\n const response = JSON.stringify(\n {\n status: error.response.status,\n statusText: error.response.statusText,\n url: error.response.url,\n body: error.body,\n },\n null,\n 4\n );\n details = html`\n <p><b>Network Response:</b></p>\n <p>${response}</p>\n `;\n }\n if (error instanceof MissingConfig) {\n details = html`\n <p><b>Missing Required Config Options:</b></p>\n <p>${error.missingConfigKeyNames.join(\", \")}</p>\n `;\n }\n return html`<div class=\"beam-error\" style=\"text-align: left\">\n <p>${strings.errorTitle} ${retry ? html` <button type=\"reset\" @click=\"${retry}\">${strings.retry}</button>` : \"\"}</p>\n <br />\n <details>\n <div style=\"white-space: pre-wrap; font-family: monospace; line-height: 1;\">\n ${details}\n <p><b>Message:</b> ${error.message || html`<i>None</i>`}</p>\n <p><b>Stack:</b> ${error.stack}</p>\n </div>\n </details>\n <br />\n <p>Help: <a href=\"https://www.beamimpact.com\">www.beamimpact.com</a></p>\n </div>`;\n};\n","import { CSSResult, unsafeCSS } from \"lit\";\n\n/**\n * Create an object that can be passed to cssVariableMap\n * to define CSS variables in a style tag. The default properties\n * are the ones exposed for customization in the remote config interface.\n * @example\n * const variables = {\n * ...customizableTextJs(\"widget-header\",\n * \"widget-border-color\": \"red\"\n * };\n *\n * html`<style>:host { ${_cssVariableMap(variables)} }</style>`;\n * @returns {{[p: string]: string}}\n */\nexport const defineCustomText = (\n namespace = \"\",\n {\n fontFamily = \"inherit\",\n fontStyle = \"inherit\",\n fontSize = \"inherit\",\n fontWeight = \"inherit\",\n textTransform = \"none\",\n textDecoration = \"none\",\n marginTop = \"0\",\n lineHeight = \"inherit\",\n color = \"inherit\",\n letterSpacing = \"normal\",\n } = {}\n): Record<string, string> => {\n const prefix = namespace.startsWith(\"--beam-\") ? namespace : `--beam-${namespace}`;\n return {\n [`${prefix}-fontFamily`]: fontFamily,\n [`${prefix}-fontStyle`]: fontStyle,\n [`${prefix}-fontSize`]: fontSize,\n [`${prefix}-fontWeight`]: fontWeight,\n [`${prefix}-textTransform`]: textTransform,\n [`${prefix}-marginTop`]: marginTop,\n [`${prefix}-lineHeight`]: lineHeight,\n [`${prefix}-color`]: color,\n [`${prefix}-letterSpacing`]: letterSpacing,\n [`${prefix}-textDecoration`]: textDecoration,\n };\n};\n\n/**\n * Returns a string that defines css properties based on variables,\n * which can be used in a css`` template. The default properties are the\n * ones exposed for customization in the remote config interface.\n * @example\n * css`.widget-header { ${customizableTextCss(\"widget-header\")} border: none; }`\n * @returns {CSSResult}\n */\nexport const useCustomText = (\n namespace = \"\",\n {\n fontFamily = \"inherit\",\n fontStyle = \"inherit\",\n fontSize = \"inherit\",\n fontWeight = \"inherit\",\n textTransform = \"none\",\n textDecoration = \"none\",\n marginTop = \"0\",\n lineHeight = \"inherit\",\n color = \"inherit\",\n letterSpacing = \"normal\",\n } = {}\n): CSSResult => {\n const prefix = namespace.startsWith(\"--beam-\") ? namespace : `--beam-${namespace}`;\n return unsafeCSS(`\\\n font-family: var(${prefix}-fontFamily, ${fontFamily});\n font-style: var(${prefix}-fontStyle, ${fontStyle});\n font-size: var(${prefix}-fontSize, ${fontSize});\n font-weight: var(${prefix}-fontWeight, ${fontWeight});\n text-transform: var(${prefix}-textTransform, ${textTransform});\n margin-top: var(${prefix}-marginTop, ${marginTop});\n line-height: var(${prefix}-lineHeight, ${lineHeight});\n text-decoration: var(${prefix}-textDecoration, ${textDecoration});\n color: var(${prefix}-color, ${color});\n letter-spacing: var(${prefix}-letterSpacing, ${letterSpacing});\n `);\n};\n\n/**\n * Same as useCustomText except returns an object that can be passed to styleMap\n */\nexport const useCustomTextMap = (\n namespace = \"\",\n {\n fontSize = \"inherit\",\n fontStyle = \"inherit\",\n fontWeight = \"inherit\",\n textTransform = \"none\",\n textDecoration = \"none\",\n marginTop = \"0\",\n lineHeight = \"inherit\",\n letterSpacing = \"normal\",\n } = {}\n): Record<string, string> => {\n const prefix = namespace.startsWith(\"--beam-\") ? namespace : `--beam-${namespace}`;\n return {\n fontSize: `var(${prefix}-fontSize, ${fontSize})`,\n fontStyle: `var(${prefix}-fontStyle, ${fontStyle})`,\n fontWeight: `var(${prefix}-fontWeight, ${fontWeight})`,\n textTransform: `var(${prefix}-textTransform, ${textTransform})`,\n textDecoration: `var(${prefix}-textDecoration, ${textDecoration})`,\n marginTop: `var(${prefix}-marginTop, ${marginTop})`,\n lineHeight: `var(${prefix}-lineHeight, ${lineHeight})`,\n letterSpacing: `var(${prefix}-letterSpacing, ${letterSpacing})`,\n };\n};\n","import { LANGUAGES } from \"../api-sdk/types\";\nimport { logger } from \"../utils/logger\";\nimport { BeamError } from \"../utils/beam-errors\";\n\n/**\n * User-provided strings may include embedded translations in JSON form\n * This function extracts the string for the provided language\n * If it fails to parse, or the string is not json-like, it returns the whole string\n */\nconst localizeUserString = (lang: LANGUAGES, str: string): string => {\n const isJson = str.startsWith(\"{\");\n if (isJson) {\n try {\n const json = JSON.parse(str);\n return json[lang] ?? json[\"en\"] ?? str;\n } catch (err) {\n logger.error(new BeamError(\"Failed to extract JSON translation from string\"), str);\n return str;\n }\n }\n return str;\n};\n\nexport { localizeUserString };\n"],"names":["_cssVariableMap","variables","k","v","AsyncController","host","asyncFn","args","err","strings","_errorMessage","error","retry","details","html","NetworkError","response","MissingConfig","defineCustomText","namespace","fontFamily","fontStyle","fontSize","fontWeight","textTransform","textDecoration","marginTop","lineHeight","color","letterSpacing","prefix","useCustomText","unsafeCSS","localizeUserString","lang","str","json","logger","BeamError"],"mappings":"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"}
1
+ {"version":3,"file":"localize-7sMSg1W9.esm.js","sources":["../../src/shared/fragments/css-variable-map.ts","../../src/shared/controllers/async-controller.ts","../../src/shared/fragments/error-message-template.ts","../../src/shared/fragments/custom-text.ts","../../src/shared/localize.ts"],"sourcesContent":["export const _cssVariableMap = (variables: Record<string, string>) => {\n return Object.entries(variables)\n .map(([k, v]) => `${k}: ${v};`)\n .join(\"\\n\");\n};\n","import { ReactiveController, ReactiveControllerHost } from \"lit\";\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype AsyncFunction = (...args: any[]) => Promise<any>;\n\n/**\n * Creates a declarative wrapper around async operations\n * @example\n * class MyElement extends LitElement {\n * private user = new AsyncController(\n * this,\n * async ({ id }) => get(url, { id }));\n *\n * async updated(changedProperties) {\n * if (changedProperties.has(\"userId\")) {\n * await this.user.exec({ id: this.userId })\n * }\n * }\n *\n * render() {\n * const { data, loading, error } = this.user;\n * if (loading) return html`Please wait...`\n * if (error) return html`Error! <button @click=${this.user.retry}>Reload</button>`;\n * return html`My name is: ${data.name}`\n * }\n * }\n */\nexport class AsyncController<TFn extends AsyncFunction> implements ReactiveController {\n public data: Awaited<ReturnType<TFn>> | null = null;\n public loading = false;\n public error: Error | null = null;\n\n private readonly host: ReactiveControllerHost;\n private readonly asyncFn: TFn;\n private lastArgs?: Parameters<TFn>;\n\n constructor(host: ReactiveControllerHost, asyncFn: TFn) {\n (this.host = host).addController(this);\n this.asyncFn = asyncFn;\n }\n\n public async exec(...args: Parameters<TFn>): Promise<ReturnType<TFn> | null> {\n this.lastArgs = args;\n this.loading = true;\n this.host.requestUpdate();\n try {\n // TODO: prevent race condition if later invocation returns before earlier\n this.data = await this.asyncFn(...args);\n this.error = null;\n } catch (err) {\n if (err instanceof Error) {\n this.error = err;\n this.data = null;\n }\n }\n this.loading = false;\n this.host.requestUpdate();\n return this.data;\n }\n\n public async retry() {\n return this.exec(...((this.lastArgs || []) as Parameters<TFn>));\n }\n\n hostDisconnected() {\n // TODO: cancel API calls\n }\n}\n","import { html } from \"lit\";\nimport { MissingConfig, NetworkError } from \"../../utils/beam-errors\";\n\nconst strings = {\n errorTitle: `Beam encountered an error. Please try again.`,\n retry: `Retry`,\n};\n\nexport const _errorMessage = ({ error, retry }: { error: Error; retry?: (...args: never) => void }) => {\n let details = html``;\n if (error instanceof NetworkError) {\n const response = JSON.stringify(\n {\n status: error.response.status,\n statusText: error.response.statusText,\n url: error.response.url,\n body: error.body,\n },\n null,\n 4\n );\n details = html`\n <p><b>Network Response:</b></p>\n <p>${response}</p>\n `;\n }\n if (error instanceof MissingConfig) {\n details = html`\n <p><b>Missing Required Config Options:</b></p>\n <p>${error.missingConfigKeyNames.join(\", \")}</p>\n `;\n }\n return html`<div class=\"beam-error\" style=\"text-align: left\">\n <p>${strings.errorTitle} ${retry ? html` <button type=\"reset\" @click=\"${retry}\">${strings.retry}</button>` : \"\"}</p>\n <br />\n <details>\n <div style=\"white-space: pre-wrap; font-family: monospace; line-height: 1;\">\n ${details}\n <p><b>Message:</b> ${error.message || html`<i>None</i>`}</p>\n <p><b>Stack:</b> ${error.stack}</p>\n </div>\n </details>\n <br />\n <p>Help: <a href=\"https://www.beamimpact.com\">www.beamimpact.com</a></p>\n </div>`;\n};\n","import { CSSResult, unsafeCSS } from \"lit\";\n\n/**\n * Create an object that can be passed to cssVariableMap\n * to define CSS variables in a style tag. The default properties\n * are the ones exposed for customization in the remote config interface.\n * @example\n * const variables = {\n * ...customizableTextJs(\"widget-header\",\n * \"widget-border-color\": \"red\"\n * };\n *\n * html`<style>:host { ${_cssVariableMap(variables)} }</style>`;\n * @returns {{[p: string]: string}}\n */\nexport const defineCustomText = (\n namespace = \"\",\n {\n fontFamily = \"inherit\",\n fontStyle = \"inherit\",\n fontSize = \"inherit\",\n fontWeight = \"inherit\",\n textTransform = \"none\",\n textDecoration = \"none\",\n marginTop = \"0\",\n lineHeight = \"inherit\",\n color = \"inherit\",\n letterSpacing = \"normal\",\n } = {}\n): Record<string, string> => {\n const prefix = namespace.startsWith(\"--beam-\") ? namespace : `--beam-${namespace}`;\n return {\n [`${prefix}-fontFamily`]: fontFamily,\n [`${prefix}-fontStyle`]: fontStyle,\n [`${prefix}-fontSize`]: fontSize,\n [`${prefix}-fontWeight`]: fontWeight,\n [`${prefix}-textTransform`]: textTransform,\n [`${prefix}-marginTop`]: marginTop,\n [`${prefix}-lineHeight`]: lineHeight,\n [`${prefix}-color`]: color,\n [`${prefix}-letterSpacing`]: letterSpacing,\n [`${prefix}-textDecoration`]: textDecoration,\n };\n};\n\n/**\n * Returns a string that defines css properties based on variables,\n * which can be used in a css`` template. The default properties are the\n * ones exposed for customization in the remote config interface.\n * @example\n * css`.widget-header { ${customizableTextCss(\"widget-header\")} border: none; }`\n * @returns {CSSResult}\n */\nexport const useCustomText = (\n namespace = \"\",\n {\n fontFamily = \"inherit\",\n fontStyle = \"inherit\",\n fontSize = \"inherit\",\n fontWeight = \"inherit\",\n textTransform = \"none\",\n textDecoration = \"none\",\n marginTop = \"0\",\n lineHeight = \"inherit\",\n color = \"inherit\",\n letterSpacing = \"normal\",\n } = {}\n): CSSResult => {\n const prefix = namespace.startsWith(\"--beam-\") ? namespace : `--beam-${namespace}`;\n return unsafeCSS(`\\\n font-family: var(${prefix}-fontFamily, ${fontFamily});\n font-style: var(${prefix}-fontStyle, ${fontStyle});\n font-size: var(${prefix}-fontSize, ${fontSize});\n font-weight: var(${prefix}-fontWeight, ${fontWeight});\n text-transform: var(${prefix}-textTransform, ${textTransform});\n margin-top: var(${prefix}-marginTop, ${marginTop});\n line-height: var(${prefix}-lineHeight, ${lineHeight});\n text-decoration: var(${prefix}-textDecoration, ${textDecoration});\n color: var(${prefix}-color, ${color});\n letter-spacing: var(${prefix}-letterSpacing, ${letterSpacing});\n `);\n};\n\n/**\n * Same as useCustomText except returns an object that can be passed to styleMap\n */\nexport const useCustomTextMap = (\n namespace = \"\",\n {\n fontSize = \"inherit\",\n fontStyle = \"inherit\",\n fontWeight = \"inherit\",\n textTransform = \"none\",\n textDecoration = \"none\",\n marginTop = \"0\",\n lineHeight = \"inherit\",\n letterSpacing = \"normal\",\n } = {}\n): Record<string, string> => {\n const prefix = namespace.startsWith(\"--beam-\") ? namespace : `--beam-${namespace}`;\n return {\n fontSize: `var(${prefix}-fontSize, ${fontSize})`,\n fontStyle: `var(${prefix}-fontStyle, ${fontStyle})`,\n fontWeight: `var(${prefix}-fontWeight, ${fontWeight})`,\n textTransform: `var(${prefix}-textTransform, ${textTransform})`,\n textDecoration: `var(${prefix}-textDecoration, ${textDecoration})`,\n marginTop: `var(${prefix}-marginTop, ${marginTop})`,\n lineHeight: `var(${prefix}-lineHeight, ${lineHeight})`,\n letterSpacing: `var(${prefix}-letterSpacing, ${letterSpacing})`,\n };\n};\n","import { LANGUAGES } from \"../api-sdk/types\";\nimport { logger } from \"../utils/logger\";\nimport { BeamError } from \"../utils/beam-errors\";\n\n/**\n * User-provided strings may include embedded translations in JSON form\n * This function extracts the string for the provided language\n * If it fails to parse, or the string is not json-like, it returns the whole string\n */\nconst localizeUserString = (lang: LANGUAGES, str: string): string => {\n const isJson = str.startsWith(\"{\");\n if (isJson) {\n try {\n const json = JSON.parse(str);\n return json[lang] ?? json[\"en\"] ?? str;\n } catch (err) {\n logger.error(new BeamError(\"Failed to extract JSON translation from string\"), str);\n return str;\n }\n }\n return str;\n};\n\nexport { localizeUserString };\n"],"names":["_cssVariableMap","variables","k","v","AsyncController","host","asyncFn","args","err","strings","_errorMessage","error","retry","details","html","NetworkError","response","MissingConfig","defineCustomText","namespace","fontFamily","fontStyle","fontSize","fontWeight","textTransform","textDecoration","marginTop","lineHeight","color","letterSpacing","prefix","useCustomText","unsafeCSS","localizeUserString","lang","str","json","logger","BeamError"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import{y as i,j as $}from"./lit-iNN5L_Qk.esm.js";import{N as g,M as y,B as u}from"./beam-errors-P-Lu07Ce.esm.js";import{logger as d}from"../utils/logger.js";const b=t=>Object.entries(t).map(([r,n])=>`${r}: ${n};`).join(`
1
+ import{y as i,j as $}from"./lit-iNN5L_Qk.esm.js";import{N as g,M as y,B as u}from"./beam-errors-AMvTvR1C.esm.js";import{logger as d}from"../utils/logger.js";const b=t=>Object.entries(t).map(([r,n])=>`${r}: ${n};`).join(`
2
2
  `);class x{constructor(r,n){this.data=null,this.loading=!1,this.error=null,(this.host=r).addController(this),this.asyncFn=n}async exec(...r){this.lastArgs=r,this.loading=!0,this.host.requestUpdate();try{this.data=await this.asyncFn(...r),this.error=null}catch(n){n instanceof Error&&(this.error=n,this.data=null)}return this.loading=!1,this.host.requestUpdate(),this.data}async retry(){return this.exec(...this.lastArgs||[])}hostDisconnected(){}}const f={errorTitle:"Beam encountered an error. Please try again.",retry:"Retry"},S=({error:t,retry:r})=>{let n=i``;if(t instanceof g){const o=JSON.stringify({status:t.response.status,statusText:t.response.statusText,url:t.response.url,body:t.body},null,4);n=i`
3
3
  <p><b>Network Response:</b></p>
4
4
  <p>${o}</p>
@@ -28,4 +28,4 @@ import{y as i,j as $}from"./lit-iNN5L_Qk.esm.js";import{N as g,M as y,B as u}fro
28
28
  color: var(${e}-color, ${p});
29
29
  letter-spacing: var(${e}-letterSpacing, ${m});
30
30
  `)},w=(t,r)=>{if(r.startsWith("{"))try{const n=JSON.parse(r);return n[t]??n.en??r}catch{return d.error(new u("Failed to extract JSON translation from string"),r),r}return r};export{x as A,S as _,b as a,v as d,w as i,T as u};
31
- //# sourceMappingURL=localize-m-_ESmpk.esm.js.map
31
+ //# sourceMappingURL=localize-OiRewTgu.esm.js.map