@beamimpact/web-sdk 1.48.0 → 1.51.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 (370) hide show
  1. package/dist/chunks/_share-dialog-dependencies-B3N69ml2.esm.js +2 -0
  2. package/dist/chunks/_share-dialog-dependencies-B3N69ml2.esm.js.map +1 -0
  3. package/dist/chunks/_share-dialog-dependencies-CHbTSPha.esm.js +2 -0
  4. package/dist/chunks/_share-dialog-dependencies-CHbTSPha.esm.js.map +1 -0
  5. package/dist/chunks/{beam-errors-fXDkG1zo.esm.d.ts → beam-errors-CCe004HS.esm.d.ts} +2 -7
  6. package/dist/chunks/beam-errors-Ci0d3926.esm.js +2 -0
  7. package/dist/chunks/beam-errors-Ci0d3926.esm.js.map +1 -0
  8. package/dist/chunks/cart-contents-CUgc4y1N.esm.d.ts +18 -0
  9. package/dist/chunks/cart-contents-DkoytiZh.esm.js +2 -0
  10. package/dist/chunks/{cart-contents-h60geKWa.esm.js.map → cart-contents-DkoytiZh.esm.js.map} +1 -1
  11. package/dist/chunks/{css-card-grid-nEc--M5M.esm.js → css-card-grid-B6IEaTiP.esm.js} +2 -2
  12. package/dist/chunks/{css-card-grid-nEc--M5M.esm.js.map → css-card-grid-B6IEaTiP.esm.js.map} +1 -1
  13. package/dist/chunks/enforce-config-CQb5MiAV.esm.js +3 -0
  14. package/dist/chunks/enforce-config-CQb5MiAV.esm.js.map +1 -0
  15. package/dist/chunks/enforce-config-Cw52SuAc.esm.js +3 -0
  16. package/dist/chunks/enforce-config-Cw52SuAc.esm.js.map +1 -0
  17. package/dist/chunks/{events-ZCTR9JGZ.esm.d.ts → events-BKkf9u9l.esm.d.ts} +33 -4
  18. package/dist/chunks/events-BohmT6Lp.esm.js +2 -0
  19. package/dist/chunks/events-BohmT6Lp.esm.js.map +1 -0
  20. package/dist/chunks/{index-JDZQClkA.esm.js → index-BQ4Nr7Ux.esm.js} +2 -2
  21. package/dist/chunks/{index-JDZQClkA.esm.js.map → index-BQ4Nr7Ux.esm.js.map} +1 -1
  22. package/dist/chunks/index-B_8DexDX.esm.js +2 -0
  23. package/dist/chunks/index-B_8DexDX.esm.js.map +1 -0
  24. package/dist/chunks/{index-v6fG3D6u.esm.d.ts → index-BqBEii8E.esm.d.ts} +1 -1
  25. package/dist/chunks/index-C-beNpP0.esm.js +2 -0
  26. package/dist/chunks/index-C-beNpP0.esm.js.map +1 -0
  27. package/dist/chunks/{index-E8H5A7Qq.esm.js → index-C3hpHWh1.esm.js} +1 -1
  28. package/dist/chunks/index-C3hpHWh1.esm.js.map +1 -0
  29. package/dist/chunks/{index-XHm2EBaD.esm.js → index-CFYWEffm.esm.js} +2 -2
  30. package/dist/chunks/{index-XHm2EBaD.esm.js.map → index-CFYWEffm.esm.js.map} +1 -1
  31. package/dist/chunks/{index-FQExZDX9.esm.js → index-CFtmDAHb.esm.js} +1 -1
  32. package/dist/chunks/index-CFtmDAHb.esm.js.map +1 -0
  33. package/dist/chunks/{index-eXilYHHK.esm.js → index-C_ZNnJIS.esm.js} +2 -2
  34. package/dist/chunks/{index-eXilYHHK.esm.js.map → index-C_ZNnJIS.esm.js.map} +1 -1
  35. package/dist/chunks/{index-PA0NAKHV.esm.d.ts → index-CbKkAM6h.esm.d.ts} +1 -1
  36. package/dist/chunks/index-CbWdmBet.esm.js +2 -0
  37. package/dist/chunks/index-CbWdmBet.esm.js.map +1 -0
  38. package/dist/chunks/index-CpPbNdWA.esm.js +2 -0
  39. package/dist/chunks/index-CpPbNdWA.esm.js.map +1 -0
  40. package/dist/chunks/index-CyiXyHi8.esm.js +2 -0
  41. package/dist/chunks/index-CyiXyHi8.esm.js.map +1 -0
  42. package/dist/chunks/{index-XCMf22lv.esm.js → index-D6qJfs7_.esm.js} +1 -1
  43. package/dist/chunks/index-D6qJfs7_.esm.js.map +1 -0
  44. package/dist/chunks/index-DhtZDPvk.esm.js +2 -0
  45. package/dist/chunks/index-DhtZDPvk.esm.js.map +1 -0
  46. package/dist/chunks/index-Dnm34FcO.esm.d.ts +46 -0
  47. package/dist/chunks/index-DvbUE31b.esm.d.ts +46 -0
  48. package/dist/chunks/index-GcpuX_TZ.esm.js +2 -0
  49. package/dist/chunks/index-GcpuX_TZ.esm.js.map +1 -0
  50. package/dist/chunks/index-JSoHc6g1.esm.js +2 -0
  51. package/dist/chunks/index-JSoHc6g1.esm.js.map +1 -0
  52. package/dist/chunks/index-MS8_Vije.esm.d.ts +15 -0
  53. package/dist/chunks/index-XZRQN4Rs.esm.js +2 -0
  54. package/dist/chunks/index-XZRQN4Rs.esm.js.map +1 -0
  55. package/dist/chunks/{index-JJjxnRZK.esm.js → index-kDoWfjd5.esm.js} +2 -2
  56. package/dist/chunks/{index-JJjxnRZK.esm.js.map → index-kDoWfjd5.esm.js.map} +1 -1
  57. package/dist/chunks/index-n7pxZENA.esm.js +2 -0
  58. package/dist/chunks/index-n7pxZENA.esm.js.map +1 -0
  59. package/dist/chunks/{index-PiMq5a49.esm.js → index-oGObXjk6.esm.js} +1 -1
  60. package/dist/chunks/index-oGObXjk6.esm.js.map +1 -0
  61. package/dist/chunks/{index--z5MSe4-.esm.d.ts → index-v0tUXySN.esm.d.ts} +3 -2
  62. package/dist/chunks/{is-all-html-elements-SdSkxirh.esm.js → is-all-html-elements-fcB7UUA1.esm.js} +1 -1
  63. package/dist/chunks/{is-all-html-elements-SdSkxirh.esm.js.map → is-all-html-elements-fcB7UUA1.esm.js.map} +1 -1
  64. package/dist/chunks/lit-5uUWs2aX.esm.js +34 -0
  65. package/dist/chunks/{lit-iNN5L_Qk.esm.js.map → lit-5uUWs2aX.esm.js.map} +1 -1
  66. package/dist/chunks/loading-template-DXNS89Th.esm.js +2 -0
  67. package/dist/chunks/{loading-template-t4fFsYtr.esm.js.map → loading-template-DXNS89Th.esm.js.map} +1 -1
  68. package/dist/chunks/{localize-m-_ESmpk.esm.js → localize-CQCRjY9s.esm.js} +6 -6
  69. package/dist/chunks/{localize-m-_ESmpk.esm.js.map → localize-CQCRjY9s.esm.js.map} +1 -1
  70. package/dist/chunks/{localize-o-cYvHQf.esm.js → localize-cDQFOecn.esm.js} +6 -6
  71. package/dist/chunks/{localize-o-cYvHQf.esm.js.map → localize-cDQFOecn.esm.js.map} +1 -1
  72. package/dist/chunks/lodash-7H4x2457.esm.js +2 -0
  73. package/dist/chunks/lodash-7H4x2457.esm.js.map +1 -0
  74. package/dist/chunks/{openapi-spec-hjdK2L9Q.esm.d.ts → openapi-spec-VAt3phhg.esm.d.ts} +332 -0
  75. package/dist/chunks/order-page-CMGPM57D.esm.js +2 -0
  76. package/dist/chunks/order-page-CMGPM57D.esm.js.map +1 -0
  77. package/dist/chunks/order-page-FzVtMkga.esm.js +2 -0
  78. package/dist/chunks/order-page-FzVtMkga.esm.js.map +1 -0
  79. package/dist/chunks/{order-page-9clVUPaS.esm.d.ts → order-page-tSPKLQ24.esm.d.ts} +11 -8
  80. package/dist/chunks/{progress-bar-PMU_xI3L.esm.js → progress-bar-oJB_t7od.esm.js} +4 -4
  81. package/dist/chunks/{progress-bar-PMU_xI3L.esm.js.map → progress-bar-oJB_t7od.esm.js.map} +1 -1
  82. package/dist/chunks/promo-pill-label-D9ptiGak.esm.js +16 -0
  83. package/dist/chunks/{promo-pill-label-P1X4xeAx.esm.js.map → promo-pill-label-D9ptiGak.esm.js.map} +1 -1
  84. package/dist/chunks/promo-types-C1unMpo2.esm.d.ts +14 -0
  85. package/dist/chunks/promoManager-B9cTR1R3.esm.js +2 -0
  86. package/dist/chunks/promoManager-B9cTR1R3.esm.js.map +1 -0
  87. package/dist/chunks/promoManager-fl54hq13.esm.js +2 -0
  88. package/dist/chunks/promoManager-fl54hq13.esm.js.map +1 -0
  89. package/dist/chunks/{responsive-2lC2Wrtg.esm.js → responsive-9jAzOYoE.esm.js} +2 -2
  90. package/dist/chunks/{responsive-2lC2Wrtg.esm.js.map → responsive-9jAzOYoE.esm.js.map} +1 -1
  91. package/dist/chunks/routes-CaSRr919.esm.js +2 -0
  92. package/dist/chunks/routes-CaSRr919.esm.js.map +1 -0
  93. package/dist/chunks/{routes-iurI6dvR.esm.d.ts → routes-DDRd747e.esm.d.ts} +76 -3
  94. package/dist/chunks/routes-KHEaM_40.esm.js +2 -0
  95. package/dist/chunks/routes-KHEaM_40.esm.js.map +1 -0
  96. package/dist/chunks/{share-button-k_Xn5956.esm.js → share-button-BbG-gnwj.esm.js} +4 -4
  97. package/dist/chunks/{share-button-diP8wKOc.esm.js.map → share-button-BbG-gnwj.esm.js.map} +1 -1
  98. package/dist/chunks/{share-button-diP8wKOc.esm.js → share-button-CvTUluNq.esm.js} +4 -4
  99. package/dist/chunks/{share-button-k_Xn5956.esm.js.map → share-button-CvTUluNq.esm.js.map} +1 -1
  100. package/dist/chunks/{share-button-hDn8fnBI.esm.d.ts → share-button-DBVhw4qa.esm.d.ts} +1 -1
  101. package/dist/chunks/{share-button-SNvuFDC9.esm.js → share-button-R7jgVCPv.esm.js} +1 -1
  102. package/dist/chunks/{share-button-SNvuFDC9.esm.js.map → share-button-R7jgVCPv.esm.js.map} +1 -1
  103. package/dist/chunks/{types-zbTZ8-KP.esm.d.ts → types-CPxMwnoR.esm.d.ts} +5 -1
  104. package/dist/chunks/update-cart-3JFUCJLD.esm.js +2 -0
  105. package/dist/chunks/update-cart-3JFUCJLD.esm.js.map +1 -0
  106. package/dist/chunks/update-cart-DNfl9QP2.esm.js +2 -0
  107. package/dist/chunks/update-cart-DNfl9QP2.esm.js.map +1 -0
  108. package/dist/chunks/{update-cart-l86bU5uS.esm.d.ts → update-cart-NiToHHJH.esm.d.ts} +2 -2
  109. package/dist/chunks/{vendor-GKiOHg2N.esm.js → vendor-DRA8u-S7.esm.js} +2 -2
  110. package/dist/chunks/{vendor-GKiOHg2N.esm.js.map → vendor-DRA8u-S7.esm.js.map} +1 -1
  111. package/dist/components/beam-partner-logos.d.ts +1 -1
  112. package/dist/components/beam-partner-logos.esm.js +4 -4
  113. package/dist/components/beam-partner-logos.esm.js.map +1 -1
  114. package/dist/components/beam-partner-logos.js +4 -4
  115. package/dist/components/beam-partner-logos.js.map +1 -1
  116. package/dist/components/community-impact.d.ts +3 -3
  117. package/dist/components/community-impact.esm.js +13 -13
  118. package/dist/components/community-impact.esm.js.map +1 -1
  119. package/dist/components/community-impact.js +13 -13
  120. package/dist/components/community-impact.js.map +1 -1
  121. package/dist/components/cumulative-impact.d.ts +2 -2
  122. package/dist/components/cumulative-impact.esm.js +8 -8
  123. package/dist/components/cumulative-impact.esm.js.map +1 -1
  124. package/dist/components/cumulative-impact.js +8 -8
  125. package/dist/components/cumulative-impact.js.map +1 -1
  126. package/dist/components/impact-overview.d.ts +9 -5
  127. package/dist/components/impact-overview.esm.js +19 -19
  128. package/dist/components/impact-overview.esm.js.map +1 -1
  129. package/dist/components/impact-overview.js +19 -19
  130. package/dist/components/impact-overview.js.map +1 -1
  131. package/dist/components/index.d.ts +8 -8
  132. package/dist/components/index.esm.js +1 -1
  133. package/dist/components/index.js +1 -1
  134. package/dist/components/post-purchase.d.ts +15 -7
  135. package/dist/components/post-purchase.esm.js +4 -4
  136. package/dist/components/post-purchase.esm.js.map +1 -1
  137. package/dist/components/post-purchase.js +4 -4
  138. package/dist/components/post-purchase.js.map +1 -1
  139. package/dist/components/product-details-page.d.ts +25 -7
  140. package/dist/components/product-details-page.esm.js +39 -28
  141. package/dist/components/product-details-page.esm.js.map +1 -1
  142. package/dist/components/product-details-page.js +39 -28
  143. package/dist/components/product-details-page.js.map +1 -1
  144. package/dist/components/redeem-transaction.d.ts +8 -17
  145. package/dist/components/redeem-transaction.esm.js +27 -27
  146. package/dist/components/redeem-transaction.esm.js.map +1 -1
  147. package/dist/components/redeem-transaction.js +27 -27
  148. package/dist/components/redeem-transaction.js.map +1 -1
  149. package/dist/components/select-nonprofit.d.ts +13 -6
  150. package/dist/components/select-nonprofit.esm.js +50 -45
  151. package/dist/components/select-nonprofit.esm.js.map +1 -1
  152. package/dist/components/select-nonprofit.js +50 -45
  153. package/dist/components/select-nonprofit.js.map +1 -1
  154. package/dist/components/select-subscription-nonprofit.d.ts +3 -3
  155. package/dist/components/select-subscription-nonprofit.esm.js +13 -13
  156. package/dist/components/select-subscription-nonprofit.esm.js.map +1 -1
  157. package/dist/components/select-subscription-nonprofit.js +13 -13
  158. package/dist/components/select-subscription-nonprofit.js.map +1 -1
  159. package/dist/components/shopify.d.ts +12 -11
  160. package/dist/components/shopify.esm.js +1 -1
  161. package/dist/components/shopify.esm.js.map +1 -1
  162. package/dist/components/shopify.js +1 -1
  163. package/dist/components/shopify.js.map +1 -1
  164. package/dist/components/social-share.d.ts +3 -3
  165. package/dist/components/social-share.esm.js +3 -3
  166. package/dist/components/social-share.esm.js.map +1 -1
  167. package/dist/components/social-share.js +3 -3
  168. package/dist/components/social-share.js.map +1 -1
  169. package/dist/components/subscription-impact.d.ts +5 -4
  170. package/dist/components/subscription-impact.esm.js +16 -16
  171. package/dist/components/subscription-impact.esm.js.map +1 -1
  172. package/dist/components/subscription-impact.js +16 -16
  173. package/dist/components/subscription-impact.js.map +1 -1
  174. package/dist/components/subscription-management.d.ts +18 -7
  175. package/dist/components/subscription-management.esm.js +9 -9
  176. package/dist/components/subscription-management.esm.js.map +1 -1
  177. package/dist/components/subscription-management.js +9 -9
  178. package/dist/components/subscription-management.js.map +1 -1
  179. package/dist/index.d.ts +23 -21
  180. package/dist/index.esm.js +1 -1
  181. package/dist/index.js +1 -1
  182. package/dist/integrations/beam.d.ts +1 -1
  183. package/dist/integrations/beam.esm.js +1 -1
  184. package/dist/integrations/beam.esm.js.map +1 -1
  185. package/dist/integrations/beam.js +1 -1
  186. package/dist/integrations/beam.js.map +1 -1
  187. package/dist/integrations/cart.d.ts +4 -4
  188. package/dist/integrations/cart.esm.js +1 -1
  189. package/dist/integrations/cart.js +1 -1
  190. package/dist/integrations/index.d.ts +19 -17
  191. package/dist/integrations/index.esm.js +1 -1
  192. package/dist/integrations/index.js +1 -1
  193. package/dist/integrations/logs.d.ts +2 -2
  194. package/dist/integrations/logs.esm.js +1 -1
  195. package/dist/integrations/logs.js +1 -1
  196. package/dist/integrations/promoManager.d.ts +36 -0
  197. package/dist/integrations/promoManager.esm.js +2 -0
  198. package/dist/integrations/promoManager.esm.js.map +1 -0
  199. package/dist/integrations/promoManager.js +2 -0
  200. package/dist/integrations/promoManager.js.map +1 -0
  201. package/dist/integrations/session.d.ts +1 -1
  202. package/dist/integrations/session.esm.js +1 -1
  203. package/dist/integrations/session.js +1 -1
  204. package/dist/integrations/shopify.d.ts +10 -10
  205. package/dist/integrations/shopify.esm.js +1 -1
  206. package/dist/integrations/shopify.js +1 -1
  207. package/dist/integrations/statsig.d.ts +1 -1
  208. package/dist/integrations/statsig.esm.js +2 -2
  209. package/dist/integrations/statsig.esm.js.map +1 -1
  210. package/dist/integrations/statsig.js +2 -2
  211. package/dist/integrations/statsig.js.map +1 -1
  212. package/dist/integrations/utils.d.ts +7 -5
  213. package/dist/integrations/utils.esm.js +1 -1
  214. package/dist/integrations/utils.js +1 -1
  215. package/dist/react/beam-partner-logos.d.ts +1 -1
  216. package/dist/react/beam-partner-logos.esm.js +1 -1
  217. package/dist/react/beam-partner-logos.js +1 -1
  218. package/dist/react/community-impact.d.ts +3 -3
  219. package/dist/react/community-impact.esm.js +1 -1
  220. package/dist/react/community-impact.js +1 -1
  221. package/dist/react/cumulative-impact.d.ts +2 -2
  222. package/dist/react/cumulative-impact.esm.js +1 -1
  223. package/dist/react/cumulative-impact.js +1 -1
  224. package/dist/react/impact-overview.d.ts +4 -4
  225. package/dist/react/impact-overview.esm.js +1 -1
  226. package/dist/react/impact-overview.esm.js.map +1 -1
  227. package/dist/react/impact-overview.js +1 -1
  228. package/dist/react/impact-overview.js.map +1 -1
  229. package/dist/react/index.d.ts +10 -9
  230. package/dist/react/index.esm.js +1 -1
  231. package/dist/react/index.js +1 -1
  232. package/dist/react/post-purchase.d.ts +7 -7
  233. package/dist/react/post-purchase.esm.js +1 -1
  234. package/dist/react/post-purchase.esm.js.map +1 -1
  235. package/dist/react/post-purchase.js +1 -1
  236. package/dist/react/post-purchase.js.map +1 -1
  237. package/dist/react/product-details-page.d.ts +3 -3
  238. package/dist/react/product-details-page.esm.js +1 -1
  239. package/dist/react/product-details-page.esm.js.map +1 -1
  240. package/dist/react/product-details-page.js +1 -1
  241. package/dist/react/product-details-page.js.map +1 -1
  242. package/dist/react/redeem-transaction.d.ts +8 -7
  243. package/dist/react/redeem-transaction.esm.js +1 -1
  244. package/dist/react/redeem-transaction.js +1 -1
  245. package/dist/react/select-nonprofit.d.ts +8 -7
  246. package/dist/react/select-nonprofit.esm.js +1 -1
  247. package/dist/react/select-nonprofit.esm.js.map +1 -1
  248. package/dist/react/select-nonprofit.js +1 -1
  249. package/dist/react/select-nonprofit.js.map +1 -1
  250. package/dist/react/select-subscription-nonprofit.d.ts +7 -6
  251. package/dist/react/select-subscription-nonprofit.esm.js +1 -1
  252. package/dist/react/select-subscription-nonprofit.js +1 -1
  253. package/dist/react/social-share.d.ts +3 -3
  254. package/dist/react/social-share.esm.js +1 -1
  255. package/dist/react/social-share.esm.js.map +1 -1
  256. package/dist/react/social-share.js +1 -1
  257. package/dist/react/social-share.js.map +1 -1
  258. package/dist/react/subscription-impact.d.ts +4 -4
  259. package/dist/react/subscription-impact.esm.js +1 -1
  260. package/dist/react/subscription-impact.js +1 -1
  261. package/dist/react/subscription-management.d.ts +7 -7
  262. package/dist/react/subscription-management.esm.js +1 -1
  263. package/dist/react/subscription-management.js +1 -1
  264. package/dist/utils/beam-errors.d.ts +1 -1
  265. package/dist/utils/beam-errors.esm.js +1 -1
  266. package/dist/utils/beam-errors.js +1 -1
  267. package/dist/utils/cart.esm.js +1 -1
  268. package/dist/utils/cart.js +1 -1
  269. package/dist/utils/cookies.esm.js +1 -1
  270. package/dist/utils/cookies.esm.js.map +1 -1
  271. package/dist/utils/cookies.js +1 -1
  272. package/dist/utils/cookies.js.map +1 -1
  273. package/dist/utils/debounce.esm.js +1 -1
  274. package/dist/utils/debounce.js +1 -1
  275. package/dist/utils/events.d.ts +5 -4
  276. package/dist/utils/events.esm.js +1 -1
  277. package/dist/utils/events.js +1 -1
  278. package/dist/utils/index.d.ts +7 -5
  279. package/dist/utils/index.esm.js +1 -1
  280. package/dist/utils/index.js +1 -1
  281. package/dist/utils/is-equal.esm.js +1 -1
  282. package/dist/utils/is-equal.js +1 -1
  283. package/dist/utils/local-storage.esm.js +1 -1
  284. package/dist/utils/local-storage.js +1 -1
  285. package/dist/utils/memoize-last.esm.js +1 -1
  286. package/dist/utils/memoize-last.esm.js.map +1 -1
  287. package/dist/utils/memoize-last.js +1 -1
  288. package/dist/utils/memoize-last.js.map +1 -1
  289. package/dist/utils/network-listeners.esm.js +1 -1
  290. package/dist/utils/network-listeners.esm.js.map +1 -1
  291. package/dist/utils/network-listeners.js +1 -1
  292. package/dist/utils/network-listeners.js.map +1 -1
  293. package/dist/utils/promoManager.d.ts +123 -0
  294. package/dist/utils/promoManager.esm.js +2 -0
  295. package/dist/utils/promoManager.esm.js.map +1 -0
  296. package/dist/utils/promoManager.js +2 -0
  297. package/dist/utils/promoManager.js.map +1 -0
  298. package/dist/utils/remote-session.esm.js +1 -1
  299. package/dist/utils/remote-session.js +1 -1
  300. package/dist/utils/wait-for-element.esm.js +1 -1
  301. package/dist/utils/wait-for-element.js +1 -1
  302. package/package.json +4 -4
  303. package/dist/chunks/_share-dialog-dependencies-2jzbs44g.esm.js +0 -2
  304. package/dist/chunks/_share-dialog-dependencies-2jzbs44g.esm.js.map +0 -1
  305. package/dist/chunks/_share-dialog-dependencies-C8uChjuF.esm.js +0 -2
  306. package/dist/chunks/_share-dialog-dependencies-C8uChjuF.esm.js.map +0 -1
  307. package/dist/chunks/beam-errors-P-Lu07Ce.esm.js +0 -2
  308. package/dist/chunks/beam-errors-P-Lu07Ce.esm.js.map +0 -1
  309. package/dist/chunks/cart-contents-CMm57qu0.esm.d.ts +0 -11
  310. package/dist/chunks/cart-contents-h60geKWa.esm.js +0 -2
  311. package/dist/chunks/enforce-config-ZAI7WYAd.esm.js +0 -3
  312. package/dist/chunks/enforce-config-ZAI7WYAd.esm.js.map +0 -1
  313. package/dist/chunks/enforce-config-ZyPq_4CF.esm.js +0 -3
  314. package/dist/chunks/enforce-config-ZyPq_4CF.esm.js.map +0 -1
  315. package/dist/chunks/events-6Z5MkCRr.esm.js +0 -2
  316. package/dist/chunks/events-6Z5MkCRr.esm.js.map +0 -1
  317. package/dist/chunks/index-2bLOkP4H.esm.d.ts +0 -32
  318. package/dist/chunks/index-CsWTfuok.esm.js +0 -2
  319. package/dist/chunks/index-CsWTfuok.esm.js.map +0 -1
  320. package/dist/chunks/index-E8H5A7Qq.esm.js.map +0 -1
  321. package/dist/chunks/index-FQExZDX9.esm.js.map +0 -1
  322. package/dist/chunks/index-GynYZRPI.esm.d.ts +0 -32
  323. package/dist/chunks/index-M7Ut5U3j.esm.js +0 -2
  324. package/dist/chunks/index-M7Ut5U3j.esm.js.map +0 -1
  325. package/dist/chunks/index-MIp7LlXH.esm.js +0 -2
  326. package/dist/chunks/index-MIp7LlXH.esm.js.map +0 -1
  327. package/dist/chunks/index-PiMq5a49.esm.js.map +0 -1
  328. package/dist/chunks/index-WvOCqhxv.esm.js +0 -2
  329. package/dist/chunks/index-WvOCqhxv.esm.js.map +0 -1
  330. package/dist/chunks/index-XCMf22lv.esm.js.map +0 -1
  331. package/dist/chunks/index-XH3OS_sy.esm.d.ts +0 -15
  332. package/dist/chunks/index-YJNgLCif.esm.js +0 -2
  333. package/dist/chunks/index-YJNgLCif.esm.js.map +0 -1
  334. package/dist/chunks/index-a6oXV2ro.esm.js +0 -2
  335. package/dist/chunks/index-a6oXV2ro.esm.js.map +0 -1
  336. package/dist/chunks/index-dkwGkvOu.esm.js +0 -2
  337. package/dist/chunks/index-dkwGkvOu.esm.js.map +0 -1
  338. package/dist/chunks/index-iK195-B9.esm.js +0 -2
  339. package/dist/chunks/index-iK195-B9.esm.js.map +0 -1
  340. package/dist/chunks/index-nstmHC95.esm.js +0 -2
  341. package/dist/chunks/index-nstmHC95.esm.js.map +0 -1
  342. package/dist/chunks/index-vq14EaW4.esm.js +0 -2
  343. package/dist/chunks/index-vq14EaW4.esm.js.map +0 -1
  344. package/dist/chunks/lit-iNN5L_Qk.esm.js +0 -34
  345. package/dist/chunks/loading-template-t4fFsYtr.esm.js +0 -2
  346. package/dist/chunks/lodash-P8OIs-at.esm.js +0 -2
  347. package/dist/chunks/lodash-P8OIs-at.esm.js.map +0 -1
  348. package/dist/chunks/order-page-Z3WcYluU.esm.js +0 -2
  349. package/dist/chunks/order-page-Z3WcYluU.esm.js.map +0 -1
  350. package/dist/chunks/order-page-rrfJ4w9F.esm.js +0 -2
  351. package/dist/chunks/order-page-rrfJ4w9F.esm.js.map +0 -1
  352. package/dist/chunks/promo-pill-label-P1X4xeAx.esm.js +0 -16
  353. package/dist/chunks/routes-Dmf2ZNnZ.esm.js +0 -2
  354. package/dist/chunks/routes-Dmf2ZNnZ.esm.js.map +0 -1
  355. package/dist/chunks/routes-o1QpF40R.esm.js +0 -2
  356. package/dist/chunks/routes-o1QpF40R.esm.js.map +0 -1
  357. package/dist/chunks/shoelace-components-wBxNHnyr.esm.js +0 -2
  358. package/dist/chunks/shoelace-components-wBxNHnyr.esm.js.map +0 -1
  359. package/dist/chunks/shoelace-components-xrhk189_.esm.js +0 -2
  360. package/dist/chunks/shoelace-components-xrhk189_.esm.js.map +0 -1
  361. package/dist/chunks/update-cart-EGTcbNRX.esm.js +0 -2
  362. package/dist/chunks/update-cart-EGTcbNRX.esm.js.map +0 -1
  363. package/dist/chunks/update-cart-FwtFnnGe.esm.js +0 -2
  364. package/dist/chunks/update-cart-FwtFnnGe.esm.js.map +0 -1
  365. /package/dist/chunks/{index-EGiUuWe-.esm.d.ts → index-C-hPf29c.esm.d.ts} +0 -0
  366. /package/dist/chunks/{index-hn6JhG_w.esm.d.ts → index-DXj15KHe.esm.d.ts} +0 -0
  367. /package/dist/chunks/{index-mTXm0DPh.esm.d.ts → index-DbaDUPup.esm.d.ts} +0 -0
  368. /package/dist/chunks/{progress-bar-0VS_AmEf.esm.d.ts → progress-bar-CveZ8E6Q.esm.d.ts} +0 -0
  369. /package/dist/chunks/{promo-pill-label-3bA1z-la.esm.d.ts → promo-pill-label-BXRqZHET.esm.d.ts} +0 -0
  370. /package/dist/chunks/{types-aju0qrRe.esm.d.ts → types-C7gqAyyH.esm.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"localize-m-_ESmpk.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-CQCRjY9s.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,12 +1,12 @@
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(`
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`
1
+ import{y as i,j as $}from"./lit-5uUWs2aX.esm.js";import{N as g,M as y,B as u}from"./beam-errors-Ci0d3926.esm.js";import{logger as d}from"../utils/logger.esm.js";const b=t=>Object.entries(t).map(([r,n])=>`${r}: ${n};`).join(`
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 m={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>
5
5
  `}return t instanceof y&&(n=i`
6
6
  <p><b>Missing Required Config Options:</b></p>
7
7
  <p>${t.missingConfigKeyNames.join(", ")}</p>
8
8
  `),i`<div class="beam-error" style="text-align: left">
9
- <p>${f.errorTitle} ${r?i` <button type="reset" @click="${r}">${f.retry}</button>`:""}</p>
9
+ <p>${m.errorTitle} ${r?i` <button type="reset" @click="${r}">${m.retry}</button>`:""}</p>
10
10
  <br />
11
11
  <details>
12
12
  <div style="white-space: pre-wrap; font-family: monospace; line-height: 1;">
@@ -17,7 +17,7 @@ import{y as i,j as $}from"./lit-iNN5L_Qk.esm.js";import{N as g,M as y,B as u}fro
17
17
  </details>
18
18
  <br />
19
19
  <p>Help: <a href="https://www.beamimpact.com">www.beamimpact.com</a></p>
20
- </div>`},v=(t="",{fontFamily:r="inherit",fontStyle:n="inherit",fontSize:o="inherit",fontWeight:s="inherit",textTransform:a="none",textDecoration:l="none",marginTop:c="0",lineHeight:h="inherit",color:p="inherit",letterSpacing:m="normal"}={})=>{const e=t.startsWith("--beam-")?t:`--beam-${t}`;return{[`${e}-fontFamily`]:r,[`${e}-fontStyle`]:n,[`${e}-fontSize`]:o,[`${e}-fontWeight`]:s,[`${e}-textTransform`]:a,[`${e}-marginTop`]:c,[`${e}-lineHeight`]:h,[`${e}-color`]:p,[`${e}-letterSpacing`]:m,[`${e}-textDecoration`]:l}},T=(t="",{fontFamily:r="inherit",fontStyle:n="inherit",fontSize:o="inherit",fontWeight:s="inherit",textTransform:a="none",textDecoration:l="none",marginTop:c="0",lineHeight:h="inherit",color:p="inherit",letterSpacing:m="normal"}={})=>{const e=t.startsWith("--beam-")?t:`--beam-${t}`;return $(` font-family: var(${e}-fontFamily, ${r});
20
+ </div>`},v=(t="",{fontFamily:r="inherit",fontStyle:n="inherit",fontSize:o="inherit",fontWeight:s="inherit",textTransform:a="none",textDecoration:l="none",marginTop:c="0",lineHeight:h="inherit",color:p="inherit",letterSpacing:f="normal"}={})=>{const e=t.startsWith("--beam-")?t:`--beam-${t}`;return{[`${e}-fontFamily`]:r,[`${e}-fontStyle`]:n,[`${e}-fontSize`]:o,[`${e}-fontWeight`]:s,[`${e}-textTransform`]:a,[`${e}-marginTop`]:c,[`${e}-lineHeight`]:h,[`${e}-color`]:p,[`${e}-letterSpacing`]:f,[`${e}-textDecoration`]:l}},T=(t="",{fontFamily:r="inherit",fontStyle:n="inherit",fontSize:o="inherit",fontWeight:s="inherit",textTransform:a="none",textDecoration:l="none",marginTop:c="0",lineHeight:h="inherit",color:p="inherit",letterSpacing:f="normal"}={})=>{const e=t.startsWith("--beam-")?t:`--beam-${t}`;return $(` font-family: var(${e}-fontFamily, ${r});
21
21
  font-style: var(${e}-fontStyle, ${n});
22
22
  font-size: var(${e}-fontSize, ${o});
23
23
  font-weight: var(${e}-fontWeight, ${s});
@@ -26,6 +26,6 @@ import{y as i,j as $}from"./lit-iNN5L_Qk.esm.js";import{N as g,M as y,B as u}fro
26
26
  line-height: var(${e}-lineHeight, ${h});
27
27
  text-decoration: var(${e}-textDecoration, ${l});
28
28
  color: var(${e}-color, ${p});
29
- letter-spacing: var(${e}-letterSpacing, ${m});
29
+ letter-spacing: var(${e}-letterSpacing, ${f});
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-cDQFOecn.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-cDQFOecn.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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"}
@@ -0,0 +1,2 @@
1
+ function m(r){var t=typeof r;return r!=null&&(t=="object"||t=="function")}var dr=typeof global=="object"&&global&&global.Object===Object&&global,ot=typeof self=="object"&&self&&self.Object===Object&&self,O=dr||ot||Function("return this")(),Q=function(){return O.Date.now()},ut=/\s/;function st(r){for(var t=r.length;t--&&ut.test(r.charAt(t)););return t}var ft=/^\s+/;function ct(r){return r&&r.slice(0,st(r)+1).replace(ft,"")}var x=O.Symbol,gr=Object.prototype,lt=gr.hasOwnProperty,pt=gr.toString,N=x?x.toStringTag:void 0;function dt(r){var t=lt.call(r,N),e=r[N];try{r[N]=void 0;var n=!0}catch{}var a=pt.call(r);return n&&(t?r[N]=e:delete r[N]),a}var gt=Object.prototype,ht=gt.toString;function yt(r){return ht.call(r)}var _t="[object Null]",vt="[object Undefined]",hr=x?x.toStringTag:void 0;function D(r){return r==null?r===void 0?vt:_t:hr&&hr in Object(r)?dt(r):yt(r)}function j(r){return r!=null&&typeof r=="object"}var bt="[object Symbol]";function K(r){return typeof r=="symbol"||j(r)&&D(r)==bt}var yr=0/0,Tt=/^[-+]0x[0-9a-f]+$/i,Ot=/^0b[01]+$/i,mt=/^0o[0-7]+$/i,At=parseInt;function _r(r){if(typeof r=="number")return r;if(K(r))return yr;if(m(r)){var t=typeof r.valueOf=="function"?r.valueOf():r;r=m(t)?t+"":t}if(typeof r!="string")return r===0?r:+r;r=ct(r);var e=Ot.test(r);return e||mt.test(r)?At(r.slice(2),e?2:8):Tt.test(r)?yr:+r}var Pt="Expected a function",wt=Math.max,$t=Math.min;function St(r,t,e){var n,a,i,o,u,f,s=0,g=!1,l=!1,p=!0;if(typeof r!="function")throw new TypeError(Pt);t=_r(t)||0,m(e)&&(g=!!e.leading,l="maxWait"in e,i=l?wt(_r(e.maxWait)||0,t):i,p="trailing"in e?!!e.trailing:p);function y(d){var E=n,F=a;return n=a=void 0,s=d,o=r.apply(F,E),o}function h(d){return s=d,u=setTimeout(v,t),g?y(d):o}function _(d){var E=d-f,F=d-s,pr=t-E;return l?$t(pr,i-F):pr}function b(d){var E=d-f,F=d-s;return f===void 0||E>=t||E<0||l&&F>=i}function v(){var d=Q();if(b(d))return T(d);u=setTimeout(v,_(d))}function T(d){return u=void 0,p&&n?y(d):(n=a=void 0,o)}function H(){u!==void 0&&clearTimeout(u),s=0,n=f=a=u=void 0}function L(){return u===void 0?o:T(Q())}function S(){var d=Q(),E=b(d);if(n=arguments,a=this,f=d,E){if(u===void 0)return h(f);if(l)return clearTimeout(u),u=setTimeout(v,t),y(f)}return u===void 0&&(u=setTimeout(v,t)),o}return S.cancel=H,S.flush=L,S}function Et(){this.__data__=[],this.size=0}function V(r,t){return r===t||r!==r&&t!==t}function W(r,t){for(var e=r.length;e--;)if(V(r[e][0],t))return e;return-1}var xt=Array.prototype,It=xt.splice;function Ct(r){var t=this.__data__,e=W(t,r);if(e<0)return!1;var n=t.length-1;return e==n?t.pop():It.call(t,e,1),--this.size,!0}function Rt(r){var t=this.__data__,e=W(t,r);return e<0?void 0:t[e][1]}function Mt(r){return W(this.__data__,r)>-1}function Lt(r,t){var e=this.__data__,n=W(e,r);return n<0?(++this.size,e.push([r,t])):e[n][1]=t,this}function A(r){var t=-1,e=r==null?0:r.length;for(this.clear();++t<e;){var n=r[t];this.set(n[0],n[1])}}A.prototype.clear=Et,A.prototype.delete=Ct,A.prototype.get=Rt,A.prototype.has=Mt,A.prototype.set=Lt;function Dt(){this.__data__=new A,this.size=0}function jt(r){var t=this.__data__,e=t.delete(r);return this.size=t.size,e}function Ft(r){return this.__data__.get(r)}function Nt(r){return this.__data__.has(r)}var Gt="[object AsyncFunction]",Ut="[object Function]",zt="[object GeneratorFunction]",Bt="[object Proxy]";function vr(r){if(!m(r))return!1;var t=D(r);return t==Ut||t==zt||t==Gt||t==Bt}var k=O["__core-js_shared__"],br=function(){var r=/[^.]+$/.exec(k&&k.keys&&k.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}();function Ht(r){return!!br&&br in r}var Kt=Function.prototype,Wt=Kt.toString;function C(r){if(r!=null){try{return Wt.call(r)}catch{}try{return r+""}catch{}}return""}var Xt=/[\\^$.*+?()[\]{}|]/g,qt=/^\[object .+?Constructor\]$/,Zt=Function.prototype,Jt=Object.prototype,Yt=Zt.toString,Qt=Jt.hasOwnProperty,Vt=RegExp("^"+Yt.call(Qt).replace(Xt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function kt(r){if(!m(r)||Ht(r))return!1;var t=vr(r)?Vt:qt;return t.test(C(r))}function re(r,t){return r?.[t]}function R(r,t){var e=re(r,t);return kt(e)?e:void 0}var G=R(O,"Map"),U=R(Object,"create");function te(){this.__data__=U?U(null):{},this.size=0}function ee(r){var t=this.has(r)&&delete this.__data__[r];return this.size-=t?1:0,t}var ne="__lodash_hash_undefined__",ie=Object.prototype,ae=ie.hasOwnProperty;function oe(r){var t=this.__data__;if(U){var e=t[r];return e===ne?void 0:e}return ae.call(t,r)?t[r]:void 0}var ue=Object.prototype,se=ue.hasOwnProperty;function fe(r){var t=this.__data__;return U?t[r]!==void 0:se.call(t,r)}var ce="__lodash_hash_undefined__";function le(r,t){var e=this.__data__;return this.size+=this.has(r)?0:1,e[r]=U&&t===void 0?ce:t,this}function M(r){var t=-1,e=r==null?0:r.length;for(this.clear();++t<e;){var n=r[t];this.set(n[0],n[1])}}M.prototype.clear=te,M.prototype.delete=ee,M.prototype.get=oe,M.prototype.has=fe,M.prototype.set=le;function pe(){this.size=0,this.__data__={hash:new M,map:new(G||A),string:new M}}function de(r){var t=typeof r;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?r!=="__proto__":r===null}function X(r,t){var e=r.__data__;return de(t)?e[typeof t=="string"?"string":"hash"]:e.map}function ge(r){var t=X(this,r).delete(r);return this.size-=t?1:0,t}function he(r){return X(this,r).get(r)}function ye(r){return X(this,r).has(r)}function _e(r,t){var e=X(this,r),n=e.size;return e.set(r,t),this.size+=e.size==n?0:1,this}function P(r){var t=-1,e=r==null?0:r.length;for(this.clear();++t<e;){var n=r[t];this.set(n[0],n[1])}}P.prototype.clear=pe,P.prototype.delete=ge,P.prototype.get=he,P.prototype.has=ye,P.prototype.set=_e;var ve=200;function be(r,t){var e=this.__data__;if(e instanceof A){var n=e.__data__;if(!G||n.length<ve-1)return n.push([r,t]),this.size=++e.size,this;e=this.__data__=new P(n)}return e.set(r,t),this.size=e.size,this}function w(r){var t=this.__data__=new A(r);this.size=t.size}w.prototype.clear=Dt,w.prototype.delete=jt,w.prototype.get=Ft,w.prototype.has=Nt,w.prototype.set=be;var Te="__lodash_hash_undefined__";function Oe(r){return this.__data__.set(r,Te),this}function me(r){return this.__data__.has(r)}function q(r){var t=-1,e=r==null?0:r.length;for(this.__data__=new P;++t<e;)this.add(r[t])}q.prototype.add=q.prototype.push=Oe,q.prototype.has=me;function Ae(r,t){for(var e=-1,n=r==null?0:r.length;++e<n;)if(t(r[e],e,r))return!0;return!1}function Pe(r,t){return r.has(t)}var we=1,$e=2;function Tr(r,t,e,n,a,i){var o=e&we,u=r.length,f=t.length;if(u!=f&&!(o&&f>u))return!1;var s=i.get(r),g=i.get(t);if(s&&g)return s==t&&g==r;var l=-1,p=!0,y=e&$e?new q:void 0;for(i.set(r,t),i.set(t,r);++l<u;){var h=r[l],_=t[l];if(n)var b=o?n(_,h,l,t,r,i):n(h,_,l,r,t,i);if(b!==void 0){if(b)continue;p=!1;break}if(y){if(!Ae(t,function(v,T){if(!Pe(y,T)&&(h===v||a(h,v,e,n,i)))return y.push(T)})){p=!1;break}}else if(!(h===_||a(h,_,e,n,i))){p=!1;break}}return i.delete(r),i.delete(t),p}var Or=O.Uint8Array;function Se(r){var t=-1,e=Array(r.size);return r.forEach(function(n,a){e[++t]=[a,n]}),e}function Ee(r){var t=-1,e=Array(r.size);return r.forEach(function(n){e[++t]=n}),e}var xe=1,Ie=2,Ce="[object Boolean]",Re="[object Date]",Me="[object Error]",Le="[object Map]",De="[object Number]",je="[object RegExp]",Fe="[object Set]",Ne="[object String]",Ge="[object Symbol]",Ue="[object ArrayBuffer]",ze="[object DataView]",mr=x?x.prototype:void 0,rr=mr?mr.valueOf:void 0;function Be(r,t,e,n,a,i,o){switch(e){case ze:if(r.byteLength!=t.byteLength||r.byteOffset!=t.byteOffset)return!1;r=r.buffer,t=t.buffer;case Ue:return!(r.byteLength!=t.byteLength||!i(new Or(r),new Or(t)));case Ce:case Re:case De:return V(+r,+t);case Me:return r.name==t.name&&r.message==t.message;case je:case Ne:return r==t+"";case Le:var u=Se;case Fe:var f=n&xe;if(u||(u=Ee),r.size!=t.size&&!f)return!1;var s=o.get(r);if(s)return s==t;n|=Ie,o.set(r,t);var g=Tr(u(r),u(t),n,a,i,o);return o.delete(r),g;case Ge:if(rr)return rr.call(r)==rr.call(t)}return!1}function Ar(r,t){for(var e=-1,n=t.length,a=r.length;++e<n;)r[a+e]=t[e];return r}var $=Array.isArray;function Pr(r,t,e){var n=t(r);return $(r)?n:Ar(n,e(r))}function He(r,t){for(var e=-1,n=r==null?0:r.length,a=0,i=[];++e<n;){var o=r[e];t(o,e,r)&&(i[a++]=o)}return i}function wr(){return[]}var Ke=Object.prototype,We=Ke.propertyIsEnumerable,$r=Object.getOwnPropertySymbols,Sr=$r?function(r){return r==null?[]:(r=Object(r),He($r(r),function(t){return We.call(r,t)}))}:wr;function Xe(r,t){for(var e=-1,n=Array(r);++e<r;)n[e]=t(e);return n}var qe="[object Arguments]";function Er(r){return j(r)&&D(r)==qe}var xr=Object.prototype,Ze=xr.hasOwnProperty,Je=xr.propertyIsEnumerable,Ir=Er(function(){return arguments}())?Er:function(r){return j(r)&&Ze.call(r,"callee")&&!Je.call(r,"callee")};function Ye(){return!1}var Cr=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Rr=Cr&&typeof module=="object"&&module&&!module.nodeType&&module,Qe=Rr&&Rr.exports===Cr,Mr=Qe?O.Buffer:void 0,Ve=Mr?Mr.isBuffer:void 0,tr=Ve||Ye,ke=9007199254740991,rn=/^(?:0|[1-9]\d*)$/;function er(r,t){var e=typeof r;return t=t??ke,!!t&&(e=="number"||e!="symbol"&&rn.test(r))&&r>-1&&r%1==0&&r<t}var tn=9007199254740991;function nr(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=tn}var en="[object Arguments]",nn="[object Array]",an="[object Boolean]",on="[object Date]",un="[object Error]",sn="[object Function]",fn="[object Map]",cn="[object Number]",ln="[object Object]",pn="[object RegExp]",dn="[object Set]",gn="[object String]",hn="[object WeakMap]",yn="[object ArrayBuffer]",_n="[object DataView]",vn="[object Float32Array]",bn="[object Float64Array]",Tn="[object Int8Array]",On="[object Int16Array]",mn="[object Int32Array]",An="[object Uint8Array]",Pn="[object Uint8ClampedArray]",wn="[object Uint16Array]",$n="[object Uint32Array]",c={};c[vn]=c[bn]=c[Tn]=c[On]=c[mn]=c[An]=c[Pn]=c[wn]=c[$n]=!0,c[en]=c[nn]=c[yn]=c[an]=c[_n]=c[on]=c[un]=c[sn]=c[fn]=c[cn]=c[ln]=c[pn]=c[dn]=c[gn]=c[hn]=!1;function Sn(r){return j(r)&&nr(r.length)&&!!c[D(r)]}function En(r){return function(t){return r(t)}}var Lr=typeof exports=="object"&&exports&&!exports.nodeType&&exports,z=Lr&&typeof module=="object"&&module&&!module.nodeType&&module,xn=z&&z.exports===Lr,ir=xn&&dr.process,Dr=function(){try{var r=z&&z.require&&z.require("util").types;return r||ir&&ir.binding&&ir.binding("util")}catch{}}(),jr=Dr&&Dr.isTypedArray,Fr=jr?En(jr):Sn,In=Object.prototype,Cn=In.hasOwnProperty;function Nr(r,t){var e=$(r),n=!e&&Ir(r),a=!e&&!n&&tr(r),i=!e&&!n&&!a&&Fr(r),o=e||n||a||i,u=o?Xe(r.length,String):[],f=u.length;for(var s in r)(t||Cn.call(r,s))&&!(o&&(s=="length"||a&&(s=="offset"||s=="parent")||i&&(s=="buffer"||s=="byteLength"||s=="byteOffset")||er(s,f)))&&u.push(s);return u}var Rn=Object.prototype;function Gr(r){var t=r&&r.constructor,e=typeof t=="function"&&t.prototype||Rn;return r===e}function Ur(r,t){return function(e){return r(t(e))}}var Mn=Ur(Object.keys,Object),Ln=Object.prototype,Dn=Ln.hasOwnProperty;function jn(r){if(!Gr(r))return Mn(r);var t=[];for(var e in Object(r))Dn.call(r,e)&&e!="constructor"&&t.push(e);return t}function zr(r){return r!=null&&nr(r.length)&&!vr(r)}function Br(r){return zr(r)?Nr(r):jn(r)}function Hr(r){return Pr(r,Br,Sr)}var Fn=1,Nn=Object.prototype,Gn=Nn.hasOwnProperty;function Un(r,t,e,n,a,i){var o=e&Fn,u=Hr(r),f=u.length,s=Hr(t),g=s.length;if(f!=g&&!o)return!1;for(var l=f;l--;){var p=u[l];if(!(o?p in t:Gn.call(t,p)))return!1}var y=i.get(r),h=i.get(t);if(y&&h)return y==t&&h==r;var _=!0;i.set(r,t),i.set(t,r);for(var b=o;++l<f;){p=u[l];var v=r[p],T=t[p];if(n)var H=o?n(T,v,p,t,r,i):n(v,T,p,r,t,i);if(!(H===void 0?v===T||a(v,T,e,n,i):H)){_=!1;break}b||(b=p=="constructor")}if(_&&!b){var L=r.constructor,S=t.constructor;L!=S&&"constructor"in r&&"constructor"in t&&!(typeof L=="function"&&L instanceof L&&typeof S=="function"&&S instanceof S)&&(_=!1)}return i.delete(r),i.delete(t),_}var ar=R(O,"DataView"),or=R(O,"Promise"),ur=R(O,"Set"),sr=R(O,"WeakMap"),Kr="[object Map]",zn="[object Object]",Wr="[object Promise]",Xr="[object Set]",qr="[object WeakMap]",Zr="[object DataView]",Bn=C(ar),Hn=C(G),Kn=C(or),Wn=C(ur),Xn=C(sr),I=D;(ar&&I(new ar(new ArrayBuffer(1)))!=Zr||G&&I(new G)!=Kr||or&&I(or.resolve())!=Wr||ur&&I(new ur)!=Xr||sr&&I(new sr)!=qr)&&(I=function(r){var t=D(r),e=t==zn?r.constructor:void 0,n=e?C(e):"";if(n)switch(n){case Bn:return Zr;case Hn:return Kr;case Kn:return Wr;case Wn:return Xr;case Xn:return qr}return t});var qn=1,Jr="[object Arguments]",Yr="[object Array]",Z="[object Object]",Zn=Object.prototype,Qr=Zn.hasOwnProperty;function Jn(r,t,e,n,a,i){var o=$(r),u=$(t),f=o?Yr:I(r),s=u?Yr:I(t);f=f==Jr?Z:f,s=s==Jr?Z:s;var g=f==Z,l=s==Z,p=f==s;if(p&&tr(r)){if(!tr(t))return!1;o=!0,g=!1}if(p&&!g)return i||(i=new w),o||Fr(r)?Tr(r,t,e,n,a,i):Be(r,t,f,e,n,a,i);if(!(e&qn)){var y=g&&Qr.call(r,"__wrapped__"),h=l&&Qr.call(t,"__wrapped__");if(y||h){var _=y?r.value():r,b=h?t.value():t;return i||(i=new w),a(_,b,e,n,i)}}return p?(i||(i=new w),Un(r,t,e,n,a,i)):!1}function J(r,t,e,n,a){return r===t?!0:r==null||t==null||!j(r)&&!j(t)?r!==r&&t!==t:Jn(r,t,e,n,J,a)}function Yn(r,t){return J(r,t)}function Qn(r){return r===void 0}var Vn=1,kn=2;function ri(r,t,e,n){var a=e.length,i=a;if(r==null)return!i;for(r=Object(r);a--;){var o=e[a];if(o[2]?o[1]!==r[o[0]]:!(o[0]in r))return!1}for(;++a<i;){o=e[a];var u=o[0],f=r[u],s=o[1];if(o[2]){if(f===void 0&&!(u in r))return!1}else{var g=new w,l;if(!(l===void 0?J(s,f,Vn|kn,n,g):l))return!1}}return!0}function Vr(r){return r===r&&!m(r)}function ti(r){for(var t=Br(r),e=t.length;e--;){var n=t[e],a=r[n];t[e]=[n,a,Vr(a)]}return t}function kr(r,t){return function(e){return e==null?!1:e[r]===t&&(t!==void 0||r in Object(e))}}function ei(r){var t=ti(r);return t.length==1&&t[0][2]?kr(t[0][0],t[0][1]):function(e){return e===r||ri(e,r,t)}}var ni=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ii=/^\w*$/;function fr(r,t){if($(r))return!1;var e=typeof r;return e=="number"||e=="symbol"||e=="boolean"||r==null||K(r)?!0:ii.test(r)||!ni.test(r)||t!=null&&r in Object(t)}var ai="Expected a function";function cr(r,t){if(typeof r!="function"||t!=null&&typeof t!="function")throw new TypeError(ai);var e=function(){var n=arguments,a=t?t.apply(this,n):n[0],i=e.cache;if(i.has(a))return i.get(a);var o=r.apply(this,n);return e.cache=i.set(a,o)||i,o};return e.cache=new(cr.Cache||P),e}cr.Cache=P;var oi=500;function ui(r){var t=cr(r,function(n){return e.size===oi&&e.clear(),n}),e=t.cache;return t}var si=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,fi=/\\(\\)?/g,ci=ui(function(r){var t=[];return r.charCodeAt(0)===46&&t.push(""),r.replace(si,function(e,n,a,i){t.push(a?i.replace(fi,"$1"):n||e)}),t});function rt(r,t){for(var e=-1,n=r==null?0:r.length,a=Array(n);++e<n;)a[e]=t(r[e],e,r);return a}var tt=x?x.prototype:void 0,et=tt?tt.toString:void 0;function nt(r){if(typeof r=="string")return r;if($(r))return rt(r,nt)+"";if(K(r))return et?et.call(r):"";var t=r+"";return t=="0"&&1/r==-1/0?"-0":t}function li(r){return r==null?"":nt(r)}function Y(r,t){return $(r)?r:fr(r,t)?[r]:ci(li(r))}function B(r){if(typeof r=="string"||K(r))return r;var t=r+"";return t=="0"&&1/r==-1/0?"-0":t}function lr(r,t){t=Y(t,r);for(var e=0,n=t.length;r!=null&&e<n;)r=r[B(t[e++])];return e&&e==n?r:void 0}function pi(r,t,e){var n=r==null?void 0:lr(r,t);return n===void 0?e:n}function di(r,t){return r!=null&&t in Object(r)}function gi(r,t,e){t=Y(t,r);for(var n=-1,a=t.length,i=!1;++n<a;){var o=B(t[n]);if(!(i=r!=null&&e(r,o)))break;r=r[o]}return i||++n!=a?i:(a=r==null?0:r.length,!!a&&nr(a)&&er(o,a)&&($(r)||Ir(r)))}function hi(r,t){return r!=null&&gi(r,t,di)}var yi=1,_i=2;function vi(r,t){return fr(r)&&Vr(t)?kr(B(r),t):function(e){var n=pi(e,r);return n===void 0&&n===t?hi(e,r):J(t,n,yi|_i)}}function bi(r){return r}function Ti(r){return function(t){return t?.[r]}}function Oi(r){return function(t){return lr(t,r)}}function mi(r){return fr(r)?Ti(B(r)):Oi(r)}function it(r){return typeof r=="function"?r:r==null?bi:typeof r=="object"?$(r)?vi(r[0],r[1]):ei(r):mi(r)}var Ai="Expected a function";function Pi(r){if(typeof r!="function")throw new TypeError(Ai);return function(){var t=arguments;switch(t.length){case 0:return!r.call(this);case 1:return!r.call(this,t[0]);case 2:return!r.call(this,t[0],t[1]);case 3:return!r.call(this,t[0],t[1],t[2])}return!r.apply(this,t)}}var at=function(){try{var r=R(Object,"defineProperty");return r({},"",{}),r}catch{}}();function wi(r,t,e){t=="__proto__"&&at?at(r,t,{configurable:!0,enumerable:!0,value:e,writable:!0}):r[t]=e}var $i=Object.prototype,Si=$i.hasOwnProperty;function Ei(r,t,e){var n=r[t];(!(Si.call(r,t)&&V(n,e))||e===void 0&&!(t in r))&&wi(r,t,e)}function xi(r,t,e,n){if(!m(r))return r;t=Y(t,r);for(var a=-1,i=t.length,o=i-1,u=r;u!=null&&++a<i;){var f=B(t[a]),s=e;if(f==="__proto__"||f==="constructor"||f==="prototype")return r;if(a!=o){var g=u[f];s=void 0,s===void 0&&(s=m(g)?g:er(t[a+1])?[]:{})}Ei(u,f,s),u=u[f]}return r}function Ii(r,t,e){for(var n=-1,a=t.length,i={};++n<a;){var o=t[n],u=lr(r,o);e(u,o)&&xi(i,Y(o,r),u)}return i}var Ci=Ur(Object.getPrototypeOf,Object),Ri=Object.getOwnPropertySymbols,Mi=Ri?function(r){for(var t=[];r;)Ar(t,Sr(r)),r=Ci(r);return t}:wr;function Li(r){var t=[];if(r!=null)for(var e in Object(r))t.push(e);return t}var Di=Object.prototype,ji=Di.hasOwnProperty;function Fi(r){if(!m(r))return Li(r);var t=Gr(r),e=[];for(var n in r)n=="constructor"&&(t||!ji.call(r,n))||e.push(n);return e}function Ni(r){return zr(r)?Nr(r,!0):Fi(r)}function Gi(r){return Pr(r,Ni,Mi)}function Ui(r,t){if(r==null)return{};var e=rt(Gi(r),function(n){return[n]});return t=it(t),Ii(r,e,function(n,a){return t(n,a[0])})}function zi(r,t){return Ui(r,Pi(it(t)))}export{Qn as a,St as d,Yn as i,zi as o};
2
+ //# sourceMappingURL=lodash-7H4x2457.esm.js.map