@beamimpact/web-sdk 1.43.2 → 1.45.2

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 (252) hide show
  1. package/dist/chunks/_share-dialog-dependencies-R9RsuSGx.esm.js +2 -0
  2. package/dist/chunks/_share-dialog-dependencies-R9RsuSGx.esm.js.map +1 -0
  3. package/dist/chunks/_share-dialog-dependencies-o5GBtNTA.esm.js +2 -0
  4. package/dist/chunks/_share-dialog-dependencies-o5GBtNTA.esm.js.map +1 -0
  5. package/dist/chunks/{cart-contents-WB1BF6hG.esm.d.ts → cart-contents-HAPzwbeL.esm.d.ts} +1 -1
  6. package/dist/chunks/{css-card-grid-r6wxRbPV.esm.js → css-card-grid-nEc--M5M.esm.js} +2 -2
  7. package/dist/chunks/{css-card-grid-r6wxRbPV.esm.js.map → css-card-grid-nEc--M5M.esm.js.map} +1 -1
  8. package/dist/chunks/{enforce-config-HksNiOMu.esm.js → enforce-config-ZAI7WYAd.esm.js} +2 -2
  9. package/dist/chunks/{enforce-config-HksNiOMu.esm.js.map → enforce-config-ZAI7WYAd.esm.js.map} +1 -1
  10. package/dist/chunks/{enforce-config-er6B5Gkj.esm.js → enforce-config-ZyPq_4CF.esm.js} +2 -2
  11. package/dist/chunks/{enforce-config-er6B5Gkj.esm.js.map → enforce-config-ZyPq_4CF.esm.js.map} +1 -1
  12. package/dist/chunks/{events-MfRTtTVm.esm.d.ts → events-fqRWfo7p.esm.d.ts} +1 -1
  13. package/dist/chunks/{index-keYXyTGw.esm.js → index--JacA4R2.esm.js} +2 -2
  14. package/dist/chunks/{index-keYXyTGw.esm.js.map → index--JacA4R2.esm.js.map} +1 -1
  15. package/dist/chunks/index-1WxwWfcp.esm.js +2 -0
  16. package/dist/chunks/index-1WxwWfcp.esm.js.map +1 -0
  17. package/dist/chunks/index-4fdLArZg.esm.js +2 -0
  18. package/dist/chunks/index-4fdLArZg.esm.js.map +1 -0
  19. package/dist/chunks/{index-UggwPn9Q.esm.d.ts → index-7mukhxz_.esm.d.ts} +1 -1
  20. package/dist/chunks/index-Hd_2hpsA.esm.js +2 -0
  21. package/dist/chunks/index-Hd_2hpsA.esm.js.map +1 -0
  22. package/dist/chunks/{index-1nI7l5vj.esm.js → index-JDZQClkA.esm.js} +2 -2
  23. package/dist/chunks/{index-1nI7l5vj.esm.js.map → index-JDZQClkA.esm.js.map} +1 -1
  24. package/dist/chunks/{index-OaRsZJh7.esm.d.ts → index-JG4nmG9U.esm.d.ts} +1 -1
  25. package/dist/chunks/index-MJNFm2RK.esm.js +2 -0
  26. package/dist/chunks/index-MJNFm2RK.esm.js.map +1 -0
  27. package/dist/chunks/{index-B9w02q6y.esm.d.ts → index-MSoONvC5.esm.d.ts} +1 -1
  28. package/dist/chunks/{index-uqNCQVUx.esm.d.ts → index-SExnliMs.esm.d.ts} +1 -1
  29. package/dist/chunks/{index-mw70Caof.esm.js → index-eXilYHHK.esm.js} +2 -2
  30. package/dist/chunks/{index-mw70Caof.esm.js.map → index-eXilYHHK.esm.js.map} +1 -1
  31. package/dist/chunks/index-gBAASIWa.esm.js +2 -0
  32. package/dist/chunks/index-gBAASIWa.esm.js.map +1 -0
  33. package/dist/chunks/index-lyf1T2wZ.esm.js +2 -0
  34. package/dist/chunks/index-lyf1T2wZ.esm.js.map +1 -0
  35. package/dist/chunks/{index-U3VWulKA.esm.js → index-qs-xQCeM.esm.js} +2 -2
  36. package/dist/chunks/{index-U3VWulKA.esm.js.map → index-qs-xQCeM.esm.js.map} +1 -1
  37. package/dist/chunks/index-qt5iD9Ok.esm.d.ts +14 -0
  38. package/dist/chunks/{index-ozcDdIom.esm.d.ts → index-tdUx2WLc.esm.d.ts} +4 -4
  39. package/dist/chunks/{lit-3QHn3fwl.esm.js → lit-iNN5L_Qk.esm.js} +2 -2
  40. package/dist/chunks/{lit-3QHn3fwl.esm.js.map → lit-iNN5L_Qk.esm.js.map} +1 -1
  41. package/dist/chunks/loading-template-t4fFsYtr.esm.js +2 -0
  42. package/dist/chunks/{loading-template-mLjOGXMj.esm.js.map → loading-template-t4fFsYtr.esm.js.map} +1 -1
  43. package/dist/chunks/localize-m-_ESmpk.esm.js +31 -0
  44. package/dist/chunks/localize-m-_ESmpk.esm.js.map +1 -0
  45. package/dist/chunks/localize-o-cYvHQf.esm.js +31 -0
  46. package/dist/chunks/localize-o-cYvHQf.esm.js.map +1 -0
  47. package/dist/chunks/{openapi-spec-GGEBbqAJ.esm.d.ts → openapi-spec-RlP2IT1i.esm.d.ts} +87 -33
  48. package/dist/chunks/{order-page-LvE0Otsn.esm.d.ts → order-page-FLhpaZg2.esm.d.ts} +4 -4
  49. package/dist/chunks/order-page-KZ7xLkRW.esm.js +2 -0
  50. package/dist/chunks/order-page-KZ7xLkRW.esm.js.map +1 -0
  51. package/dist/chunks/order-page-mlWRT5YL.esm.js +2 -0
  52. package/dist/chunks/order-page-mlWRT5YL.esm.js.map +1 -0
  53. package/dist/chunks/{progress-bar-HVG_n8_6.esm.js → progress-bar-PMU_xI3L.esm.js} +2 -2
  54. package/dist/chunks/{progress-bar-HVG_n8_6.esm.js.map → progress-bar-PMU_xI3L.esm.js.map} +1 -1
  55. package/dist/chunks/promo-pill-label-58PJRvSl.esm.js +15 -0
  56. package/dist/chunks/promo-pill-label-58PJRvSl.esm.js.map +1 -0
  57. package/dist/chunks/{responsive-KbDsZM6S.esm.js → responsive-2lC2Wrtg.esm.js} +2 -2
  58. package/dist/chunks/{responsive-KbDsZM6S.esm.js.map → responsive-2lC2Wrtg.esm.js.map} +1 -1
  59. package/dist/chunks/{routes-L-CN-xXC.esm.js → routes-FBB1GA4-.esm.js} +2 -2
  60. package/dist/chunks/{routes-L-CN-xXC.esm.js.map → routes-FBB1GA4-.esm.js.map} +1 -1
  61. package/dist/chunks/{routes-wCCYf_uA.esm.d.ts → routes-NIuAzAOC.esm.d.ts} +3 -1
  62. package/dist/chunks/{routes-t6bR6BdS.esm.js → routes-jmFlXAbv.esm.js} +2 -2
  63. package/dist/chunks/{routes-t6bR6BdS.esm.js.map → routes-jmFlXAbv.esm.js.map} +1 -1
  64. package/dist/chunks/share-button-SNvuFDC9.esm.js +2 -0
  65. package/dist/chunks/share-button-SNvuFDC9.esm.js.map +1 -0
  66. package/dist/chunks/{share-button-0N1lvlZT.esm.js → share-button-bQ8brpBZ.esm.js} +4 -3
  67. package/dist/chunks/{share-button-0N1lvlZT.esm.js.map → share-button-bQ8brpBZ.esm.js.map} +1 -1
  68. package/dist/chunks/{share-button-7wbogZGx.esm.js → share-button-hLOsYlSA.esm.js} +4 -3
  69. package/dist/chunks/{share-button-7wbogZGx.esm.js.map → share-button-hLOsYlSA.esm.js.map} +1 -1
  70. package/dist/chunks/{shoelace-components-BpI14CrA.esm.js → shoelace-components-leDI-Yop.esm.js} +2 -2
  71. package/dist/chunks/{shoelace-components-BpI14CrA.esm.js.map → shoelace-components-leDI-Yop.esm.js.map} +1 -1
  72. package/dist/chunks/{shoelace-components-VlhAe0ME.esm.js → shoelace-components-qjNlvvPx.esm.js} +2 -2
  73. package/dist/chunks/{shoelace-components-VlhAe0ME.esm.js.map → shoelace-components-qjNlvvPx.esm.js.map} +1 -1
  74. package/dist/chunks/{update-cart-tjLR7pMx.esm.d.ts → update-cart-Hebtxhto.esm.d.ts} +1 -1
  75. package/dist/chunks/update-cart-aKQ3Cjc8.esm.js +2 -0
  76. package/dist/chunks/update-cart-aKQ3Cjc8.esm.js.map +1 -0
  77. package/dist/chunks/update-cart-j9LPS5By.esm.js +2 -0
  78. package/dist/chunks/update-cart-j9LPS5By.esm.js.map +1 -0
  79. package/dist/chunks/{vendor--f7lkyBk.esm.js → vendor-GKiOHg2N.esm.js} +2 -2
  80. package/dist/chunks/{vendor--f7lkyBk.esm.js.map → vendor-GKiOHg2N.esm.js.map} +1 -1
  81. package/dist/components/beam-partner-logos.esm.js +1 -1
  82. package/dist/components/beam-partner-logos.js +1 -1
  83. package/dist/components/community-impact.d.ts +1 -0
  84. package/dist/components/community-impact.esm.js +13 -13
  85. package/dist/components/community-impact.esm.js.map +1 -1
  86. package/dist/components/community-impact.js +13 -13
  87. package/dist/components/community-impact.js.map +1 -1
  88. package/dist/components/cumulative-impact.d.ts +1 -0
  89. package/dist/components/cumulative-impact.esm.js +3 -3
  90. package/dist/components/cumulative-impact.esm.js.map +1 -1
  91. package/dist/components/cumulative-impact.js +3 -3
  92. package/dist/components/cumulative-impact.js.map +1 -1
  93. package/dist/components/impact-overview.d.ts +7 -1
  94. package/dist/components/impact-overview.esm.js +87 -73
  95. package/dist/components/impact-overview.esm.js.map +1 -1
  96. package/dist/components/impact-overview.js +87 -73
  97. package/dist/components/impact-overview.js.map +1 -1
  98. package/dist/components/index.d.ts +3 -3
  99. package/dist/components/index.esm.js +1 -1
  100. package/dist/components/index.js +1 -1
  101. package/dist/components/post-purchase.d.ts +4 -3
  102. package/dist/components/post-purchase.esm.js +4 -2
  103. package/dist/components/post-purchase.esm.js.map +1 -1
  104. package/dist/components/post-purchase.js +4 -2
  105. package/dist/components/post-purchase.js.map +1 -1
  106. package/dist/components/product-details-page.d.ts +2 -1
  107. package/dist/components/product-details-page.esm.js +3 -3
  108. package/dist/components/product-details-page.esm.js.map +1 -1
  109. package/dist/components/product-details-page.js +3 -3
  110. package/dist/components/product-details-page.js.map +1 -1
  111. package/dist/components/redeem-transaction.d.ts +11 -4
  112. package/dist/components/redeem-transaction.esm.js +256 -185
  113. package/dist/components/redeem-transaction.esm.js.map +1 -1
  114. package/dist/components/redeem-transaction.js +256 -185
  115. package/dist/components/redeem-transaction.js.map +1 -1
  116. package/dist/components/select-nonprofit.d.ts +7 -5
  117. package/dist/components/select-nonprofit.esm.js +55 -30
  118. package/dist/components/select-nonprofit.esm.js.map +1 -1
  119. package/dist/components/select-nonprofit.js +55 -30
  120. package/dist/components/select-nonprofit.js.map +1 -1
  121. package/dist/components/select-subscription-nonprofit.d.ts +2 -1
  122. package/dist/components/select-subscription-nonprofit.esm.js +34 -19
  123. package/dist/components/select-subscription-nonprofit.esm.js.map +1 -1
  124. package/dist/components/select-subscription-nonprofit.js +34 -19
  125. package/dist/components/select-subscription-nonprofit.js.map +1 -1
  126. package/dist/components/shopify.d.ts +6 -6
  127. package/dist/components/shopify.esm.js +1 -1
  128. package/dist/components/shopify.esm.js.map +1 -1
  129. package/dist/components/shopify.js +1 -1
  130. package/dist/components/shopify.js.map +1 -1
  131. package/dist/components/social-share.esm.js +1 -1
  132. package/dist/components/social-share.js +1 -1
  133. package/dist/components/subscription-impact.d.ts +2 -1
  134. package/dist/components/subscription-impact.esm.js +6 -6
  135. package/dist/components/subscription-impact.esm.js.map +1 -1
  136. package/dist/components/subscription-impact.js +6 -6
  137. package/dist/components/subscription-impact.js.map +1 -1
  138. package/dist/components/subscription-management.d.ts +5 -4
  139. package/dist/components/subscription-management.esm.js +4 -2
  140. package/dist/components/subscription-management.esm.js.map +1 -1
  141. package/dist/components/subscription-management.js +4 -2
  142. package/dist/components/subscription-management.js.map +1 -1
  143. package/dist/index.d.ts +12 -12
  144. package/dist/index.esm.js +1 -1
  145. package/dist/index.js +1 -1
  146. package/dist/integrations/beam.esm.js +1 -1
  147. package/dist/integrations/beam.js +1 -1
  148. package/dist/integrations/cart.d.ts +3 -3
  149. package/dist/integrations/cart.esm.js +1 -1
  150. package/dist/integrations/cart.js +1 -1
  151. package/dist/integrations/index.d.ts +10 -10
  152. package/dist/integrations/index.esm.js +1 -1
  153. package/dist/integrations/index.js +1 -1
  154. package/dist/integrations/logs.d.ts +2 -2
  155. package/dist/integrations/logs.esm.js +1 -1
  156. package/dist/integrations/logs.js +1 -1
  157. package/dist/integrations/session.esm.js +1 -1
  158. package/dist/integrations/session.js +1 -1
  159. package/dist/integrations/shopify.d.ts +5 -5
  160. package/dist/integrations/shopify.esm.js +1 -1
  161. package/dist/integrations/shopify.js +1 -1
  162. package/dist/integrations/statsig.esm.js +14 -14
  163. package/dist/integrations/statsig.esm.js.map +1 -1
  164. package/dist/integrations/statsig.js +14 -14
  165. package/dist/integrations/statsig.js.map +1 -1
  166. package/dist/integrations/utils.d.ts +3 -3
  167. package/dist/react/beam-partner-logos.esm.js +1 -1
  168. package/dist/react/beam-partner-logos.js +1 -1
  169. package/dist/react/community-impact.esm.js +1 -1
  170. package/dist/react/community-impact.js +1 -1
  171. package/dist/react/cumulative-impact.esm.js +1 -1
  172. package/dist/react/cumulative-impact.js +1 -1
  173. package/dist/react/impact-overview.esm.js +1 -1
  174. package/dist/react/impact-overview.js +1 -1
  175. package/dist/react/index.d.ts +4 -4
  176. package/dist/react/index.esm.js +1 -1
  177. package/dist/react/index.js +1 -1
  178. package/dist/react/post-purchase.d.ts +2 -2
  179. package/dist/react/post-purchase.esm.js +1 -1
  180. package/dist/react/post-purchase.esm.js.map +1 -1
  181. package/dist/react/post-purchase.js +1 -1
  182. package/dist/react/post-purchase.js.map +1 -1
  183. package/dist/react/product-details-page.esm.js +1 -1
  184. package/dist/react/product-details-page.js +1 -1
  185. package/dist/react/redeem-transaction.d.ts +3 -3
  186. package/dist/react/redeem-transaction.esm.js +1 -1
  187. package/dist/react/redeem-transaction.esm.js.map +1 -1
  188. package/dist/react/redeem-transaction.js +1 -1
  189. package/dist/react/redeem-transaction.js.map +1 -1
  190. package/dist/react/select-nonprofit.d.ts +4 -3
  191. package/dist/react/select-nonprofit.esm.js +1 -1
  192. package/dist/react/select-nonprofit.esm.js.map +1 -1
  193. package/dist/react/select-nonprofit.js +1 -1
  194. package/dist/react/select-nonprofit.js.map +1 -1
  195. package/dist/react/select-subscription-nonprofit.d.ts +3 -3
  196. package/dist/react/select-subscription-nonprofit.esm.js +1 -1
  197. package/dist/react/select-subscription-nonprofit.esm.js.map +1 -1
  198. package/dist/react/select-subscription-nonprofit.js +1 -1
  199. package/dist/react/select-subscription-nonprofit.js.map +1 -1
  200. package/dist/react/social-share.esm.js +1 -1
  201. package/dist/react/social-share.js +1 -1
  202. package/dist/react/subscription-impact.esm.js +1 -1
  203. package/dist/react/subscription-impact.js +1 -1
  204. package/dist/react/subscription-management.d.ts +3 -3
  205. package/dist/react/subscription-management.esm.js +1 -1
  206. package/dist/react/subscription-management.esm.js.map +1 -1
  207. package/dist/react/subscription-management.js +1 -1
  208. package/dist/react/subscription-management.js.map +1 -1
  209. package/dist/utils/cart.d.ts +18 -0
  210. package/dist/utils/cart.esm.js +2 -0
  211. package/dist/utils/cart.esm.js.map +1 -0
  212. package/dist/utils/cart.js +2 -0
  213. package/dist/utils/cart.js.map +1 -0
  214. package/dist/utils/events.d.ts +3 -3
  215. package/dist/utils/index.d.ts +3 -3
  216. package/package.json +1 -1
  217. package/dist/chunks/_share-dialog-dependencies-H1_GULvN.esm.js +0 -2
  218. package/dist/chunks/_share-dialog-dependencies-H1_GULvN.esm.js.map +0 -1
  219. package/dist/chunks/_share-dialog-dependencies-ww3ylfIF.esm.js +0 -2
  220. package/dist/chunks/_share-dialog-dependencies-ww3ylfIF.esm.js.map +0 -1
  221. package/dist/chunks/checkbox-P2JYPqxl.esm.js +0 -17
  222. package/dist/chunks/checkbox-P2JYPqxl.esm.js.map +0 -1
  223. package/dist/chunks/index-Gf_Ee-cU.esm.js +0 -2
  224. package/dist/chunks/index-Gf_Ee-cU.esm.js.map +0 -1
  225. package/dist/chunks/index-Mt-ELD4q.esm.js +0 -2
  226. package/dist/chunks/index-Mt-ELD4q.esm.js.map +0 -1
  227. package/dist/chunks/index-X9fTuRmg.esm.js +0 -2
  228. package/dist/chunks/index-X9fTuRmg.esm.js.map +0 -1
  229. package/dist/chunks/index-ixzz4bX7.esm.js +0 -2
  230. package/dist/chunks/index-ixzz4bX7.esm.js.map +0 -1
  231. package/dist/chunks/index-q7eo0lf1.esm.js +0 -2
  232. package/dist/chunks/index-q7eo0lf1.esm.js.map +0 -1
  233. package/dist/chunks/index-uKlidExq.esm.js +0 -2
  234. package/dist/chunks/index-uKlidExq.esm.js.map +0 -1
  235. package/dist/chunks/index-yeW2w5bb.esm.d.ts +0 -13
  236. package/dist/chunks/loading-template-mLjOGXMj.esm.js +0 -2
  237. package/dist/chunks/localize-IRs8JglT.esm.js +0 -29
  238. package/dist/chunks/localize-IRs8JglT.esm.js.map +0 -1
  239. package/dist/chunks/localize-SsJbTmMj.esm.js +0 -29
  240. package/dist/chunks/localize-SsJbTmMj.esm.js.map +0 -1
  241. package/dist/chunks/order-page-4Tj7yLdv.esm.js +0 -2
  242. package/dist/chunks/order-page-4Tj7yLdv.esm.js.map +0 -1
  243. package/dist/chunks/order-page-9qKR3-ys.esm.js +0 -2
  244. package/dist/chunks/order-page-9qKR3-ys.esm.js.map +0 -1
  245. package/dist/chunks/promo-pill-label-3Xtr5ALT.esm.js +0 -14
  246. package/dist/chunks/promo-pill-label-3Xtr5ALT.esm.js.map +0 -1
  247. package/dist/chunks/share-button-CqTd80g8.esm.js +0 -2
  248. package/dist/chunks/share-button-CqTd80g8.esm.js.map +0 -1
  249. package/dist/chunks/update-cart-Djv-AjNu.esm.js +0 -2
  250. package/dist/chunks/update-cart-Djv-AjNu.esm.js.map +0 -1
  251. package/dist/chunks/update-cart-G7FRM8DW.esm.js +0 -2
  252. package/dist/chunks/update-cart-G7FRM8DW.esm.js.map +0 -1
@@ -1,8 +1,11 @@
1
- import{f,g as c,p as h,h as x,y,m as S}from"../chunks/lit-3QHn3fwl.esm.js";import{d as $}from"../chunks/lodash-P8OIs-at.esm.js";import{D as T,g as O,W as k,S as z}from"../chunks/routes-t6bR6BdS.esm.js";import{p as N}from"../chunks/progress-bar-HVG_n8_6.esm.js";import{u as m,A as D,_ as w,i as u,d as l,a as L}from"../chunks/localize-IRs8JglT.esm.js";import{c as E,d as B,e as U}from"../chunks/enforce-config-HksNiOMu.esm.js";import{_ as j}from"../chunks/loading-template-mLjOGXMj.esm.js";import{logger as A}from"../utils/logger.esm.js";import"../chunks/shoelace-components-VlhAe0ME.esm.js";import{s as g,a as F}from"../chunks/share-button-7wbogZGx.esm.js";import{partnerLogosConfigDefaults as R}from"./beam-partner-logos.esm.js";import{c as M}from"../chunks/responsive-KbDsZM6S.esm.js";import"../chunks/beam-errors-P-Lu07Ce.esm.js";import"../chunks/vendor--f7lkyBk.esm.js";import"../chunks/is-all-html-elements-SdSkxirh.esm.js";import"../chunks/share-button-CqTd80g8.esm.js";const s={en:{descriptionTitle:({nonprofitName:e="a nonprofit"})=>`You just made an impact for ${e}`,descriptionSubtitle:({brandName:e=""})=>`Check out the impact your ${e} purchase made below`,learnMore:({name:e=""})=>`Learn more about ${e}`,seeAllImpact:({brandName:e=""})=>`See all of the impact by the ${e} community`,percentRaised:({percent:e=0})=>`${e}%`,yourImpactTitle:()=>"Your Impact",communityImpactTitle:({brandName:e=""})=>`The ${e} Community's Impact`,impactShareButton:()=>"Share to Grow Our Impact",impactShareText:({brandName:e=""})=>`Help ${e} reach their giving goal by sharing this cause on social media`,impactShareTitle:()=>"Share on Social Media",impactShareCopy:()=>"Copy",impactShareDownload:()=>"Download",impactShareClose:()=>"Close"},fr:{descriptionTitle:({nonprofitName:e=""})=>`Vous avez eu un impact positif sur ${e}`,descriptionSubtitle:({brandName:e=""})=>`D\xE9couvrez quel est l'impact de votre achat chez ${e} ci-dessous.`,learnMore:({name:e=""})=>`En savoir plus sur ${e}`,seeAllImpact:({brandName:e=""})=>`Voir toutes les contributions de la communaut\xE9 de ${e}`,percentRaised:({percent:e=0})=>`${e}%`,yourImpactTitle:()=>"Votre contribution personnelle",communityImpactTitle:({brandName:e=""})=>`La contribution de la communaut\xE9 de ${e}`,impactShareButton:()=>"Partagez pour augmentez notre cause",impactShareText:({brandName:e=""})=>`Aidez ${e} a atteindre leur objectif en partageant cette cause sur votre r\xE9seaux sociaux`,impactShareTitle:()=>"Partager sur votre r\xE9seaux sociaux",impactShareCopy:()=>"Copier",impactShareDownload:()=>"T\xE9l\xE9charger",impactShareClose:()=>"Fermer"},de:{descriptionTitle:({nonprofitName:e=""})=>`Du hast soeben einen Beitrag geleistet f\xFCr ${e}`,descriptionSubtitle:({brandName:e=""})=>`Erfahre mehr \xFCber den Beitrag, den du mit deinem ${e} Kauf geleistet hast`,learnMore:({name:e=""})=>`Mehr \xFCber ${e} erfahren`,seeAllImpact:({brandName:e=""})=>`Informiere dich \xFCber den bisher geleisteten Beitrag der ${e} community`,percentRaised:({percent:e=0})=>`${e}%`,yourImpactTitle:()=>"Dein Beitrag",communityImpactTitle:({brandName:e=""})=>`Der Beitrag der ${e} community`,impactShareButton:()=>"Teil, um unserem Beitrag zu erh\xF6hen",impactShareText:({brandName:e=""})=>`Hilf ${e} ihre Spendenziel zu erreichen`,impactShareTitle:()=>"In den sozialen Medien teilen",impactShareCopy:()=>"Kopieren",impactShareDownload:()=>"Herunterladen",impactShareClose:()=>"Schlie\xDFen"},es:{descriptionTitle:({nonprofitName:e=""})=>`Acabas de contribuir con ${e}`,descriptionSubtitle:({brandName:e=""})=>`Comprueba la contribuci\xF3n que has hecho con tu compra ${e} a continuaci\xF3n`,learnMore:({name:e=""})=>`Saber m\xE1s de ${e}`,seeAllImpact:({brandName:e=""})=>`Mira lo que ha conseguido la comunidad ${e}`,percentRaised:({percent:e=0})=>`${e}%`,yourImpactTitle:()=>"Tu contribuci\xF3n",communityImpactTitle:({brandName:e=""})=>`Tu contribuci\xF3n con la comunidad ${e}`,impactShareButton:()=>"Comparte para aumentar nuestro impacto",impactShareText:({brandName:e=""})=>`Comparte en las redes sociales para ayudar a ${e} a alcanzar su objetivo.`,impactShareTitle:()=>"Compartir en redes sociales",impactShareCopy:()=>"Copiar",impactShareDownload:()=>"Descargar",impactShareClose:()=>"Cerrar"},it:{descriptionTitle:({nonprofitName:e=""})=>`Hai appena fatto la differenza per ${e}`,descriptionSubtitle:({brandName:e=""})=>`Guarda qui sotto l'impatto del tuo acquisto ${e}`,learnMore:({name:e=""})=>`Scopri di pi\xF9 su ${e}`,seeAllImpact:({brandName:e=""})=>`Guarda come la comunit\xE0 di ${e} fa la differenza`,percentRaised:({percent:e=0})=>`${e}%`,yourImpactTitle:()=>"Il tuo impatto",communityImpactTitle:({brandName:e=""})=>`L\u2019impatto della comunit\xE0 di ${e} `,impactShareButton:()=>"Condividi, aiutaci a fare la differenza",impactShareText:({brandName:e=""})=>`Aiuta ${e} a raggiungere il suo obiettivo di donazione condividendo questa causa sui social media.`,impactShareTitle:()=>"Condividi, aiutaci a fare la differenza",impactShareCopy:()=>"Copia",impactShareDownload:()=>"Scarica",impactShareClose:()=>"Chiudi"},pl:{descriptionTitle:({nonprofitName:e=""})=>`W\u0142a\u015Bnie wspar\u0142a\u015B_e\u015B ${e}!`,descriptionSubtitle:({brandName:e=""})=>`Sprawd\u017A ni\u017Cej, jakiego wsparcia udzieli\u0142a\u015B_e\u015B kupuj\u0105c w ${e} `,learnMore:({name:e=""})=>`Dowiedz si\u0119 wi\u0119cej o ${e}`,seeAllImpact:({brandName:e=""})=>`Zobacz, ile dobrego zrobi\u0142a do tej pory spo\u0142eczno\u015B\u0107 ${e}`,percentRaised:({percent:e=0})=>`${e}%`,yourImpactTitle:()=>"Twoje wsparcie",communityImpactTitle:({brandName:e=""})=>`Wsparcie udzielone przez spo\u0142eczno\u015B\u0107 ${e}`,impactShareButton:()=>"Udost\u0119pnij, by szerzy\u0107 nasz\u0105 misj\u0119",impactShareText:({brandName:e=""})=>`Pom\xF3\u017C ${e} osi\u0105gn\u0105\u0107 cel i podziel si\u0119 t\u0105 inicjatyw\u0105 na swoim profilu`,impactShareTitle:()=>"Udost\u0119pnij na swoim profilu",impactShareCopy:()=>"Kopiuj",impactShareDownload:()=>"Pobierz",impactShareClose:()=>"Zamknij"}};var _=Object.defineProperty,P=Object.getOwnPropertyDescriptor,o=(e,a,i,r)=>{for(var n=r>1?void 0:r?P(a,i):a,d=e.length-1,p;d>=0;d--)(p=e[d])&&(n=(r?p(a,i,n):p(n))||n);return r&&n&&_(a,i,n),n};class t extends x{constructor(){super(...arguments),this.baseUrl=T,this.lang="en",this.debug=!1,this.getImpactData=async()=>(U(["apiKey","userId","nonprofitId"],this),await O({baseUrl:this.baseUrl,headers:{authorization:`Api-Key ${this.apiKey}`},queryParams:{nonprofitId:this.nonprofitId,beamUserId:this.userId,personalImpactLimit:1,communityImpactLimit:1,storeId:this.storeId,widgetName:k.impact_overview,version:"1.0.0",lang:this.configLang,discountCodes:this.discountCodes&&this.discountCodes.length>0?this.discountCodes:void 0,transactionId:this.transactionId??void 0}})),this.impactDataController=new D(this,this.getImpactData),this.resizeElements=$(()=>{g(this.impactTitleRefs),g(this.impactDescriptionRefs),g(this.impactLinkRefs)},50,{maxWait:50,leading:!0})}get configLang(){return z[this.lang]||"en"}connectedCallback(){super.connectedCallback(),window.addEventListener("resize",this.resizeElements)}async updated(a){const i=["baseUrl","storeId","apiKey","userId","lang","discountCodes"];for(const r of i)if(a.has(r)){await this.impactDataController.exec();break}this.resizeElements(),await this.handleFontLoad(this.resizeElements)}disconnectedCallback(){window.removeEventListener("resize",this.resizeElements),document.fonts.removeEventListener("loadingdone",this.resizeElements),super.disconnectedCallback()}async handleFontLoad(a){if(document.fonts.status==="loading")return await document.fonts.ready.catch(i=>A.error(i)),a()}renderCard({imageUrl:a,title:i,percentFunded:r,description:n}){return y`
2
- <div class="impact-card" part="impact-card">
3
- <img src="${a}" alt="${i}" class="impact-card-image" />
4
- <div class="impact-card-content" style="margin: 15px;">
1
+ import{f as k,g as c,p as f,h as E,y as O,k as D}from"../chunks/lit-iNN5L_Qk.esm.js";import{d as N}from"../chunks/lodash-P8OIs-at.esm.js";import{D as j,g as P,W as R,S as A}from"../chunks/routes-jmFlXAbv.esm.js";import{p as F}from"../chunks/progress-bar-PMU_xI3L.esm.js";import{u,A as _,i as g,_ as $,d as v,a as V}from"../chunks/localize-o-cYvHQf.esm.js";import{c as W,d as q,e as G}from"../chunks/enforce-config-ZAI7WYAd.esm.js";import{_ as K}from"../chunks/loading-template-t4fFsYtr.esm.js";import{logger as H}from"../utils/logger.esm.js";import"../chunks/shoelace-components-qjNlvvPx.esm.js";import{s as y,a as M}from"../chunks/share-button-hLOsYlSA.esm.js";import{partnerLogosConfigDefaults as Y}from"./beam-partner-logos.esm.js";import{c as J}from"../chunks/responsive-2lC2Wrtg.esm.js";import"../chunks/beam-errors-P-Lu07Ce.esm.js";import"../chunks/vendor-GKiOHg2N.esm.js";import"../chunks/is-all-html-elements-SdSkxirh.esm.js";import"../chunks/share-button-SNvuFDC9.esm.js";const l={en:{descriptionTitle:({nonprofitName:e="a nonprofit"})=>`You've just made an impact for ${e}`,descriptionSubtitle:({causeName:e=""})=>`Together, we\u2019re making an impact towards ${e} initiatives.`,yourImpactTitle:()=>"You\u2019ve Funded",communityImpactTitle:()=>"Together we\u2019re funding",personalImpactLinkCopy:({name:e=""})=>`Learn about ${e}`,communityImpactLinkCopy:({name:e=""})=>`Learn about ${e}'s Impact`,impactShareButton:()=>"Share to Grow Your Impact"},fr:{descriptionTitle:({nonprofitName:e=""})=>`Vous avez eu un impact positif sur ${e}`,descriptionSubtitle:({causeName:e=""})=>`D\xE9couvrez quel est l'impact de votre achat chez ${e} ci-dessous.`,yourImpactTitle:()=>"Vous avez financ\xE9",communityImpactTitle:()=>"Ensemble, nous finan\xE7ons",personalImpactLinkCopy:({name:e=""})=>`En savoir sur ${e}`,communityImpactLinkCopy:({name:e=""})=>`Apprendre l'impact de ${e}`,impactShareButton:()=>"Partagez pour augmentez notre cause"},de:{descriptionTitle:({nonprofitName:e=""})=>`Du hast soeben einen Beitrag geleistet f\xFCr ${e}`,descriptionSubtitle:({causeName:e=""})=>`Erfahre mehr \xFCber den Beitrag, den du mit deinem ${e} Kauf geleistet hast`,yourImpactTitle:()=>"Sie haben finanziert",communityImpactTitle:()=>"Gemeinsam finanzieren wir",personalImpactLinkCopy:({name:e=""})=>`Mehr \xFCber ${e} lernen`,communityImpactLinkCopy:({name:e=""})=>`Erfahre den Einfluss von ${e}`,impactShareButton:()=>"Teil, um unserem Beitrag zu erh\xF6hen"},es:{descriptionTitle:({nonprofitName:e=""})=>`Acabas de contribuir con ${e}`,descriptionSubtitle:({causeName:e=""})=>`Comprueba la contribuci\xF3n que has hecho con tu compra ${e} a continuaci\xF3n`,yourImpactTitle:()=>"Has financiado",communityImpactTitle:()=>"Juntos estamos financiando",personalImpactLinkCopy:({name:e=""})=>`Saber de ${e}`,communityImpactLinkCopy:({name:e=""})=>`Conocer el impacto de ${e}`,impactShareButton:()=>"Comparte para aumentar nuestro impacto"},it:{descriptionTitle:({nonprofitName:e=""})=>`Hai appena fatto la differenza per ${e}`,descriptionSubtitle:({causeName:e=""})=>`Guarda qui sotto l'impatto del tuo acquisto ${e}`,yourImpactTitle:()=>"Hai finanziato",communityImpactTitle:()=>"Insieme stiamo finanziando",personalImpactLinkCopy:({name:e=""})=>`Scopri su ${e}`,communityImpactLinkCopy:({name:e=""})=>`Scopri l'impatto di ${e}`,impactShareButton:()=>"Condividi, aiutaci a fare la differenza"},pl:{descriptionTitle:({nonprofitName:e=""})=>`W\u0142a\u015Bnie wspar\u0142a\u015B_e\u015B ${e}!`,descriptionSubtitle:({causeName:e=""})=>`Sprawd\u017A ni\u017Cej, jakiego wsparcia udzieli\u0142a\u015B_e\u015B kupuj\u0105c w ${e} `,yourImpactTitle:()=>"Sfinansowa\u0142e\u015B(a) ",communityImpactTitle:()=>"Razem finansujemy",personalImpactLinkCopy:({name:e=""})=>`Dowiedz si\u0119 o ${e}`,communityImpactLinkCopy:({name:e=""})=>`Poznaj wp\u0142yw ${e}`,impactShareButton:()=>"Udost\u0119pnij, by szerzy\u0107 nasz\u0105 misj\u0119"}};var Q=Object.defineProperty,X=Object.getOwnPropertyDescriptor,o=(e,a,i,r)=>{for(var n=r>1?void 0:r?X(a,i):a,p=e.length-1,s;p>=0;p--)(s=e[p])&&(n=(r?s(a,i,n):s(n))||n);return r&&n&&Q(a,i,n),n};class t extends E{constructor(){super(...arguments),this.baseUrl=j,this.lang="en",this.debug=!1,this.draftConfig=!1,this.getImpactData=async()=>(G(["apiKey","userId","nonprofitId"],this),await P({baseUrl:this.baseUrl,headers:{authorization:`Api-Key ${this.apiKey}`},queryParams:{nonprofitId:this.nonprofitId,beamUserId:this.userId,personalImpactLimit:1,communityImpactLimit:1,storeId:this.storeId,widgetName:R.impact_overview,version:"1.0.0",draftConfig:this.draftConfig,lang:this.configLang,discountCodes:this.discountCodes&&this.discountCodes.length>0?this.discountCodes:void 0,transactionId:this.transactionId??void 0}})),this.impactDataController=new _(this,this.getImpactData),this.resizeElements=N(()=>{y(this.impactTitleRefs),y(this.impactDescriptionRefs),y(this.impactLinkRefs)},50,{maxWait:50,leading:!0})}get configLang(){return A[this.lang]||"en"}connectedCallback(){super.connectedCallback(),window.addEventListener("resize",this.resizeElements)}async updated(a){const i=["baseUrl","storeId","apiKey","userId","lang","discountCodes"];for(const r of i)if(a.has(r)){await this.impactDataController.exec();break}this.resizeElements(),await this.handleFontLoad(this.resizeElements)}disconnectedCallback(){window.removeEventListener("resize",this.resizeElements),document.fonts.removeEventListener("loadingdone",this.resizeElements),super.disconnectedCallback()}async handleFontLoad(a){if(document.fonts.status==="loading")return await document.fonts.ready.catch(i=>H.error(i)),a()}renderCard({imageUrl:a,title:i,percentFunded:r,goalProgressText:n,description:p,urlCopy:s,impactUrl:m,isImage:d,cardType:b}){return O`
2
+ <div class="impact-card ${d?"":"icon"}" part="impact-card">
3
+ <div class="${d?"":"icon-background "}">
4
+ <img src="${a}" alt="${i}" class="${d?"impact-card-image":"impact-card-icon"}" />
5
+ </div>
6
+ <div class="${d?"":"impact-icon-card-content"}" style="margin: 12px;">
5
7
  <div class="impact-card-title">${i}</div>
8
+ <p class="impact-card-description">${D(p)}</p>
6
9
  <div class="impact-card-progress" style="display: flex; align-items: center;">
7
10
  <beam-progress-bar
8
11
  value="${r}"
@@ -10,13 +13,17 @@ import{f,g as c,p as h,h as x,y,m as S}from"../chunks/lit-3QHn3fwl.esm.js";impor
10
13
  class="impact-card-progressbar"
11
14
  ></beam-progress-bar>
12
15
  <span class="impact-card-progressText" style="flex: 0 1; margin-left: 10px; white-space: nowrap;"
13
- >${s[this.configLang].percentRaised({percent:r})}</span
16
+ >${g(this.configLang,n)}</span
14
17
  >
15
18
  </div>
16
- <p class="impact-card-description">${S(n)}</p>
19
+ <p class="impact-link" part="impact-link">
20
+ <a href="${m}" target="_blank" rel="noopener noreferrer">
21
+ ${b==="personal"?l[this.configLang].personalImpactLinkCopy({name:s}):l[this.configLang].communityImpactLinkCopy({name:s})}<span class="impact-link-arrow">&nbsp;&rsaquo;</span>
22
+ </a>
23
+ </p>
17
24
  </div>
18
25
  </div>
19
- `}render(){const{data:a,loading:i,error:r}=this.impactDataController;if(i)return j();if(r)return this.debug?w({error:r}):"";if(a==null)return this.debug?w({error:new Error("No data")}):"";const n=this.impactDataController.data?.chain.name,d=this.impactDataController.data?.promoAssetUrl||this.impactDataController.data?.personalImpactAssetUrl,p=this.cssVariables["--beam-ImpactOverview-share-button-display"]!=="none",C=p&&this.cssVariables["--beam-ImpactOverview-share-button-display-mobile"]!=="none",v=p&&this.cssVariables["--beam-ImpactOverview-share-button-display-desktop"]!=="none",I=this.cssVariables["--beam-ImpactOverview-share-button-icon-name"]||"share-2";let b="d-none";return C?b=v?"d-block":"d-lg-none":b=v?"d-none d-lg-block":"d-none",y`
26
+ `}render(){const{data:a,loading:i,error:r}=this.impactDataController;if(i)return K();if(r)return this.debug?$({error:r}):"";if(a==null)return this.debug?$({error:new Error("No data")}):"";const n=this.impactDataController.data?.chain.name,p=g(this.configLang,a.personal[0].nonprofit.cause||""),s=this.cssVariables["--beam-ImpactOverview-cardStyle"],m=s==="'image'",d=s==="'selected_icon'",b=a.personal[0]?.imageUrl||"",T=a.community[0].imageUrl||"",I=a.personal[0]?.nonprofit.causeIconUrl,w=a.personal[0]?.nonprofit.causeIconSelectedUrl,S=m?b:d?w:I,L=m?T:d?w:I,z=this.impactDataController.data?.promoAssetUrl||this.impactDataController.data?.personalImpactAssetUrl,C=this.cssVariables["--beam-ImpactOverview-share-button-display"]!=="none",B=C&&this.cssVariables["--beam-ImpactOverview-share-button-display-mobile"]!=="none",x=C&&this.cssVariables["--beam-ImpactOverview-share-button-display-desktop"]!=="none",U=this.cssVariables["--beam-ImpactOverview-share-button-icon-name"]||"share-2";let h="d-none";return B?h=x?"d-block":"d-lg-none":h=x?"d-none d-lg-block":"d-none",O`
20
27
  <style>
21
28
  :host {
22
29
  ${this.cssVariables.toCSS()}
@@ -33,51 +40,34 @@ import{f,g as c,p as h,h as x,y,m as S}from"../chunks/lit-3QHn3fwl.esm.js";impor
33
40
 
34
41
  <div class="description">
35
42
  <div class="title" part="title">
36
- ${u(this.configLang,a.config?.web?.title)||s[this.configLang].descriptionTitle({nonprofitName:a.personal[0].nonprofit.name})}
43
+ ${g(this.configLang,a.config?.web?.title)||l[this.configLang].descriptionTitle({nonprofitName:a.personal[0].nonprofit.name})}
37
44
  </div>
38
45
  <div class="subtitle" part="subtitle">
39
- ${u(this.configLang,a.config?.web?.description)||s[this.configLang].descriptionSubtitle({brandName:a.chain.name})}
46
+ ${g(this.configLang,a.config?.web?.description)||l[this.configLang].descriptionSubtitle({causeName:p})}
40
47
  </div>
41
48
  </div>
42
49
 
43
- <div class="impact-cards" style="display: flex; flex-wrap: wrap; gap: 15px; margin: 10px 0;">
44
- <div class="impact your-impact" style="flex: 1 1; display: inline-block; max-width: 100%; min-width: 200px;">
45
- ${this.renderCard({imageUrl:a.personal[0]?.imageUrl||"",title:s[this.configLang].yourImpactTitle(),percentFunded:a.personal[0]?.impact?.goalProgressPercentage||0,description:u(this.configLang,a.personal[0]?.impact?.description||"")})}
46
- <p class="impact-link" part="impact-link">
47
- <a href="${a.personal[0].nonprofit?.website}" target="_blank" rel="noopener noreferrer">
48
- ${s[this.configLang].learnMore({name:a.personal[0].nonprofit?.name})}<span class="impact-link-arrow">&nbsp;&rsaquo;</span>
49
- </a>
50
- </p>
50
+ <div class="${m?"impact-image-cards":"impact-icon-cards"}">
51
+ <div class="impact your-impact ${m?"image-card-container":"icon-card-container"}">
52
+ ${this.renderCard({isImage:m,imageUrl:S||"",title:l[this.configLang].yourImpactTitle(),percentFunded:a.personal[0]?.impact?.goalProgressPercentage||0,goalProgressText:a.personal[0]?.impact?.goalProgressText,description:g(this.configLang,a.personal[0]?.impact?.description||""),urlCopy:a.personal[0].nonprofit?.name,impactUrl:a.personal[0].nonprofit?.website||"",cardType:"personal"})}
51
53
  </div>
52
- <div
53
- class="impact community-impact"
54
- style="flex: 1 1; display: inline-block; max-width: 100%; min-width: 200px;"
55
- >
56
- ${this.renderCard({imageUrl:a.community[0].imageUrl||"",title:s[this.configLang].communityImpactTitle({brandName:a.chain.name}),percentFunded:a.community[0].impact?.goalProgressPercentage||0,description:u(this.configLang,a.community[0].impact?.description||"")})}
57
- <p class="impact-link" part="impact-link">
58
- <a
59
- href="${a.chain.communityImpactUrl||a.community[0].nonprofit.website}"
60
- target="_blank"
61
- rel="noopener noreferrer"
62
- >
63
- ${s[this.configLang].seeAllImpact({brandName:a.chain.name})}<span class="impact-link-arrow">&nbsp;&rsaquo;</span>
64
- </a>
65
- </p>
54
+ <div class="impact community-impact ${m?"image-card-container":"icon-card-container"}">
55
+ ${this.renderCard({isImage:m,imageUrl:L||"",title:l[this.configLang].communityImpactTitle(),percentFunded:a.community[0].impact?.goalProgressPercentage||0,goalProgressText:a.community[0]?.impact?.goalProgressText,description:g(this.configLang,a.community[0].impact?.description||""),urlCopy:a.chain.name,impactUrl:a.chain.communityImpactUrl||a.community[0].nonprofit.website||"",cardType:"community"})}
66
56
  </div>
67
57
  </div>
68
58
 
69
- <div class="footer ${b}" part="social-share">
59
+ <div class="footer ${h} shareButtonContainer" part="social-share">
70
60
  <beam-share-button
71
- imageUrl="${d}"
61
+ imageUrl="${z}"
72
62
  brandName="${n}"
73
- shareIcon="${I}"
74
- buttonText="${s[this.configLang].impactShareButton()}"
63
+ shareIcon="${U}"
64
+ buttonText="${l[this.configLang].impactShareButton()}"
75
65
  configLang="${this.configLang}"
76
66
  ></beam-share-button>
77
67
  </div>
78
68
 
79
69
  <div id="modal-root"></div>
80
- `}get cssVariables(){const a={"--beam-fontFamily":"inherit","--beam-fontStyle":"inherit","--beam-fontSize":"inherit","--beam-textColor":"inherit","--beam-backgroundColor":"inherit",...R,...N,...F,...l("--beam-ImpactOverview-title",{fontSize:"16px",fontWeight:"bold",marginTop:"10px"}),...l("--beam-ImpactOverview-subtitle",{marginTop:"5px"}),"--beam-ImpactOverview-impactCards-maxWidth":"800px","--beam-ImpactOverview-impactCard-backgroundColor":"inherit","--beam-ImpactOverview-impactCard-foregroundColor":"currentColor","--beam-ImpactOverview-impactCard-borderColor":"currentColor","--beam-ImpactOverview-impactCard-borderRadius":"0px","--beam-ImpactOverview-impactCard-marginTop":"10px",...l("--beam-ImpactOverview-impactCard-title",{fontSize:"15px",fontWeight:"bold"}),"--beam-ImpactOverview-impactCard-progress-marginTop":"15px",...l("--beam-ImpactOverview-impactCard-progressText"),...l("--beam-ImpactOverview-impactCard-description",{marginTop:"10px"}),"--beam-ImpactOverview-impactCard-linkArrow-display":"inline","--beam-ImpactOverview-impactCard-link-color":"inherit",...l("--beam-ImpactOverview-impactCard-link",{marginTop:"10px"}),"--beam-ImpactOverview-share-button-display":"none","--beam-ImpactOverview-share-button-display-mobile":"inherit","--beam-ImpactOverview-share-button-display-desktop":"inherit","--beam-ImpactOverview-image-display":"block"},i=this.impactDataController?.data?.config?.web?.theme||{},r={...a,...i};return Object.assign(Object.create({toCSS(){return L(this)}}),r)}}t.tagName="beam-impact-overview",t.styles=[E,M,f`
70
+ `}get cssVariables(){const a={"--beam-fontFamily":"inherit","--beam-fontStyle":"inherit","--beam-fontSize":"inherit","--beam-textColor":"inherit","--beam-backgroundColor":"inherit",...Y,...F,...M,...v("--beam-ImpactOverview-title",{fontSize:"16px",fontWeight:"bold",marginTop:"10px",textTransform:"capitalize"}),...v("--beam-ImpactOverview-subtitle",{marginTop:"5px"}),"--beam-ImpactOverview-impactCards-maxWidth":"650px","--beam-ImpactOverview-impactCard-backgroundColor":"inherit","--beam-ImpactOverview-impactCard-foregroundColor":"currentColor","--beam-ImpactOverview-impactCard-borderColor":"currentColor","--beam-ImpactOverview-impactCard-borderRadius":"5px","--beam-ImpactOverview-impactCard-marginTop":"10px",...v("--beam-ImpactOverview-impactCard-title",{fontSize:"15px",fontWeight:"bold",letterSpacing:"0.36px"}),"--beam-ImpactOverview-impactCard-progress-marginTop":"15px",...v("--beam-ImpactOverview-impactCard-progressText"),...v("--beam-ImpactOverview-impactCard-description",{marginTop:"10px"}),"--beam-ImpactOverview-impactCard-linkArrow-display":"inline","--beam-ImpactOverview-impactCard-link-color":"inherit",...v("--beam-ImpactOverview-impactCard-link",{marginTop:"10px",textDecoration:"underline",textTransform:"capitalize"}),"--beam-ImpactOverview-share-button-display":"none","--beam-ImpactOverview-share-button-display-mobile":"inherit","--beam-ImpactOverview-share-button-display-desktop":"inherit","--beam-ImpactOverview-image-display":"block","--beam-ImpactOverview-cardStyle":"'image'","--beam-ImpactOverview-iconBackground-width":"75px","--beam-ImpactOverview-iconBackground-height":"75px","--beam-ImpactOverview-iconBackground-borderRadius":"50px","--beam-ImpactOverview-icon-padding":"0px","--beam-ImpactOverview-iconBackground-background":"#f3f3f3","--beam-ImpactOverview-impactCard-shareButton-background":"#fff","--beam-ImpactOverview-impactCard-shareButton-boxShadow":"0px -20px 20px 0px rgb(0 0 0 / 2%)"},i=this.impactDataController?.data?.config?.web?.theme||{},r={...a,...i};return Object.assign(Object.create({toCSS(){return V(this)}}),r)}}t.tagName="beam-impact-overview",t.styles=[W,J,k`
81
71
  :host {
82
72
  display: block;
83
73
  font-family: var(--beam-fontFamily);
@@ -85,13 +75,41 @@ import{f,g as c,p as h,h as x,y,m as S}from"../chunks/lit-3QHn3fwl.esm.js";impor
85
75
  font-size: var(--beam-fontSize);
86
76
  background-color: var(--beam-backgroundColor);
87
77
  color: var(--beam-textColor);
88
- max-width: var(--beam-ImpactOverview-impactCards-maxWidth, 800px);
78
+ max-width: var(--beam-ImpactOverview-impactCards-maxWidth, 650px);
89
79
  word-break: normal;
90
80
  }
91
- .impact-cards {
81
+ .icon {
82
+ display: flex;
83
+ align-items: center;
84
+ }
85
+ .icon-background {
86
+ width: var(--beam-ImpactOverview-iconBackground-width, 75px);
87
+ height: var(--beam-ImpactOverview-iconBackground-height, 75px);
88
+ border-radius: var(--beam-ImpactOverview-iconBackground-borderRadius, 50px);
89
+ padding: var(--beam-ImpactOverview-icon-padding, 0px);
90
+ margin: 8px;
91
+ overflow: hidden;
92
+ background: var(--beam-ImpactOverview-iconBackground-background, #f3f3f3);
93
+ display: flex;
94
+ justify-content: center;
95
+ align-items: center;
96
+ }
97
+ .impact-icon-card-content {
98
+ flex: 3 1 75%;
99
+ }
100
+ .impact-image-cards {
101
+ max-width: var(--beam-ImpactOverview-impactCards-maxWidth);
102
+ display: flex;
103
+ flex-wrap: wrap;
104
+ gap: 15px;
105
+ margin: 10px 0;
106
+ }
107
+ .impact-icon-cards {
92
108
  max-width: var(--beam-ImpactOverview-impactCards-maxWidth);
109
+ margin: 10px 0;
93
110
  }
94
111
  .impact-card {
112
+ padding-bottom: 5px;
95
113
  margin-top: var(--beam-ImpactOverview-impactCard-marginTop);
96
114
  background-color: var(--beam-ImpactOverview-impactCard-backgroundColor);
97
115
  border: 1px solid var(--beam-ImpactOverview-impactCard-borderColor);
@@ -101,30 +119,52 @@ import{f,g as c,p as h,h as x,y,m as S}from"../chunks/lit-3QHn3fwl.esm.js";impor
101
119
  }
102
120
  .impact-card-image {
103
121
  object-fit: cover;
104
- height: 200px;
122
+ height: 110px;
105
123
  width: 100%;
106
124
  display: var(--beam-ImpactOverview-image-display);
107
125
  }
126
+ .impact-card-icon {
127
+ flex: 1 1 10%;
128
+ max-width: 50%;
129
+ display: var(--beam-ImpactOverview-image-display);
130
+ }
131
+ .image-card-container {
132
+ flex: 1 1;
133
+ display: inline-block;
134
+ min-width: 200px;
135
+ max-width: 100%;
136
+ }
137
+ .icon-card-container {
138
+ max-width: 100%;
139
+ min-width: 299px;
140
+ }
108
141
  .impact-card-progress {
109
142
  margin-top: var(--beam-ImpactOverview-impactCard-progress-marginTop);
110
143
  }
144
+ .shareButtonContainer {
145
+ position: sticky;
146
+ bottom: 0;
147
+ z-index: 999;
148
+ background-color: var(--beam-ImpactOverview-impactCard-shareButton-background);
149
+ box-shadow: var(--beam-ImpactOverview-impactCard-shareButton-boxShadow);
150
+ }
111
151
  .title {
112
- ${m("--beam-ImpactOverview-title")}
152
+ ${u("--beam-ImpactOverview-title")}
113
153
  }
114
154
  .subtitle {
115
- ${m("--beam-ImpactOverview-subtitle")}
155
+ ${u("--beam-ImpactOverview-subtitle")}
116
156
  }
117
157
  .impact-card-title {
118
- ${m("--beam-ImpactOverview-impactCard-title")}
158
+ ${u("--beam-ImpactOverview-impactCard-title")}
119
159
  }
120
160
  .impact-card-progressText {
121
- ${m("--beam-ImpactOverview-impactCard-progressText")}
161
+ ${u("--beam-ImpactOverview-impactCard-progressText")}
122
162
  }
123
163
  .impact-card-description {
124
- ${m("--beam-ImpactOverview-impactCard-description")}
164
+ ${u("--beam-ImpactOverview-impactCard-description")}
125
165
  }
126
166
  .impact-link {
127
- ${m("--beam-ImpactOverview-impactCard-link")}
167
+ ${u("--beam-ImpactOverview-impactCard-link")}
128
168
  }
129
169
  .impact-link-arrow {
130
170
  display: var(--beam-ImpactOverview-impactCard-linkArrow-display, "inline");
@@ -132,33 +172,11 @@ import{f,g as c,p as h,h as x,y,m as S}from"../chunks/lit-3QHn3fwl.esm.js";impor
132
172
  .impact-link a,
133
173
  .impact-link a:visited {
134
174
  color: var(--beam-ImpactOverview-impactCard-link-color, inherit);
135
- text-decoration: none;
136
175
  }
137
176
  .footer {
138
177
  text-align: center;
139
178
  }
140
- @media (max-width: 500px) {
141
- //.impact-card {
142
- // display: flex;
143
- // flex-direction: row;
144
- //}
145
- //.impact-card-image {
146
- // object-fit: cover;
147
- // width: 25%;
148
- // height: auto;
149
- // flex: 1 0 45%;
150
- //}
151
- //.impact-card-content {
152
- // flex: 1 1 55%;
153
- //}
154
- //.share-button-text {
155
- // display: none;
156
- //}
157
- //.share-button-icon {
158
- // font-size: calc(var(--beam-ImpactOverview-share-button-icon-size, 16px) * 1.33);
159
- //}
160
- }
161
- `,f`
179
+ `,k`
162
180
  .button {
163
181
  cursor: pointer;
164
182
  }
@@ -173,9 +191,5 @@ import{f,g as c,p as h,h as x,y,m as S}from"../chunks/lit-3QHn3fwl.esm.js";impor
173
191
  font-size: inherit;
174
192
  font-family: inherit;
175
193
  }
176
- .plain-link {
177
- text-decoration: none;
178
- color: inherit;
179
- }
180
- `],o([c({type:String,reflect:!0})],t.prototype,"baseUrl",2),o([c({type:String,reflect:!1})],t.prototype,"apiKey",2),o([c({type:Number})],t.prototype,"storeId",2),o([c({type:String,reflect:!0})],t.prototype,"nonprofitId",2),o([c({type:String,reflect:!0})],t.prototype,"userId",2),o([c({type:String})],t.prototype,"lang",2),o([c({type:Boolean})],t.prototype,"debug",2),o([c({type:Object})],t.prototype,"discountCodes",2),o([c({type:String})],t.prototype,"transactionId",2),o([h(".impact-card-title")],t.prototype,"impactTitleRefs",2),o([h(".impact-card-description")],t.prototype,"impactDescriptionRefs",2),o([h(".impact-link")],t.prototype,"impactLinkRefs",2),B(t);export{t as BeamImpactOverview};
194
+ `],o([c({type:String,reflect:!0})],t.prototype,"baseUrl",2),o([c({type:String,reflect:!1})],t.prototype,"apiKey",2),o([c({type:Number})],t.prototype,"storeId",2),o([c({type:String,reflect:!0})],t.prototype,"nonprofitId",2),o([c({type:String,reflect:!0})],t.prototype,"userId",2),o([c({type:String})],t.prototype,"lang",2),o([c({type:Boolean})],t.prototype,"debug",2),o([c({type:Boolean})],t.prototype,"draftConfig",2),o([c({type:Object})],t.prototype,"discountCodes",2),o([c({type:String})],t.prototype,"transactionId",2),o([f(".impact-card-title")],t.prototype,"impactTitleRefs",2),o([f(".impact-card-description")],t.prototype,"impactDescriptionRefs",2),o([f(".impact-link")],t.prototype,"impactLinkRefs",2),q(t);export{t as BeamImpactOverview};
181
195
  //# sourceMappingURL=impact-overview.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"impact-overview.esm.js","sources":["../../src/components/impact-overview/strings.ts","../../src/components/impact-overview/index.ts"],"sourcesContent":["export const strings = {\n en: {\n descriptionTitle: ({ nonprofitName = \"a nonprofit\" }) => `You just made an impact for ${nonprofitName}`,\n descriptionSubtitle: ({ brandName = \"\" }) => `Check out the impact your ${brandName} purchase made below`,\n learnMore: ({ name = \"\" }) => `Learn more about ${name}`,\n seeAllImpact: ({ brandName = \"\" }) => `See all of the impact by the ${brandName} community`,\n percentRaised: ({ percent = 0 }) => `${percent}%`,\n yourImpactTitle: () => `Your Impact`,\n communityImpactTitle: ({ brandName = \"\" }) => `The ${brandName} Community's Impact`,\n // share modal\n impactShareButton: () => `Share to Grow Our Impact`,\n impactShareText: ({ brandName = \"\" }) =>\n `Help ${brandName} reach their giving goal by sharing this cause on social media`,\n impactShareTitle: () => `Share on Social Media`,\n impactShareCopy: () => `Copy`,\n impactShareDownload: () => `Download`,\n impactShareClose: () => `Close`,\n },\n fr: {\n descriptionTitle: ({ nonprofitName = \"\" }) => `Vous avez eu un impact positif sur ${nonprofitName}`,\n descriptionSubtitle: ({ brandName = \"\" }) =>\n `Découvrez quel est l'impact de votre achat chez ${brandName} ci-dessous.`,\n learnMore: ({ name = \"\" }) => `En savoir plus sur ${name}`,\n seeAllImpact: ({ brandName = \"\" }) => `Voir toutes les contributions de la communauté de ${brandName}`,\n percentRaised: ({ percent = 0 }) => `${percent}%`,\n yourImpactTitle: () => `Votre contribution personnelle`,\n communityImpactTitle: ({ brandName = \"\" }) => `La contribution de la communauté de ${brandName}`,\n // share modal\n impactShareButton: () => `Partagez pour augmentez notre cause`,\n impactShareText: ({ brandName = \"\" }) =>\n `Aidez ${brandName} a atteindre leur objectif en partageant cette cause sur votre réseaux sociaux`,\n impactShareTitle: () => `Partager sur votre réseaux sociaux`,\n impactShareCopy: () => `Copier`,\n impactShareDownload: () => `Télécharger`,\n impactShareClose: () => `Fermer`,\n },\n de: {\n descriptionTitle: ({ nonprofitName = \"\" }) => `Du hast soeben einen Beitrag geleistet für ${nonprofitName}`,\n descriptionSubtitle: ({ brandName = \"\" }) =>\n `Erfahre mehr über den Beitrag, den du mit deinem ${brandName} Kauf geleistet hast`,\n learnMore: ({ name = \"\" }) => `Mehr über ${name} erfahren`,\n seeAllImpact: ({ brandName = \"\" }) =>\n `Informiere dich über den bisher geleisteten Beitrag der ${brandName} community`,\n percentRaised: ({ percent = 0 }) => `${percent}%`,\n yourImpactTitle: () => `Dein Beitrag`,\n communityImpactTitle: ({ brandName = \"\" }) => `Der Beitrag der ${brandName} community`,\n // share modal\n impactShareButton: () => `Teil, um unserem Beitrag zu erhöhen`,\n impactShareText: ({ brandName = \"\" }) => `Hilf ${brandName} ihre Spendenziel zu erreichen`,\n impactShareTitle: () => `In den sozialen Medien teilen`,\n impactShareCopy: () => `Kopieren`,\n impactShareDownload: () => `Herunterladen`,\n impactShareClose: () => `Schließen`,\n },\n es: {\n descriptionTitle: ({ nonprofitName = \"\" }) => `Acabas de contribuir con ${nonprofitName}`,\n descriptionSubtitle: ({ brandName = \"\" }) =>\n `Comprueba la contribución que has hecho con tu compra ${brandName} a continuación`,\n learnMore: ({ name = \"\" }) => `Saber más de ${name}`,\n seeAllImpact: ({ brandName = \"\" }) => `Mira lo que ha conseguido la comunidad ${brandName}`,\n percentRaised: ({ percent = 0 }) => `${percent}%`,\n yourImpactTitle: () => \"Tu contribución\",\n communityImpactTitle: ({ brandName = \"\" }) => `Tu contribución con la comunidad ${brandName}`,\n // share modal\n impactShareButton: () => \"Comparte para aumentar nuestro impacto\",\n impactShareText: ({ brandName = \"\" }) =>\n `Comparte en las redes sociales para ayudar a ${brandName} a alcanzar su objetivo.`,\n impactShareTitle: () => \"Compartir en redes sociales\",\n impactShareCopy: () => \"Copiar\",\n impactShareDownload: () => \"Descargar\",\n impactShareClose: () => \"Cerrar\",\n },\n it: {\n descriptionTitle: ({ nonprofitName = \"\" }) => `Hai appena fatto la differenza per ${nonprofitName}`,\n descriptionSubtitle: ({ brandName = \"\" }) => `Guarda qui sotto l'impatto del tuo acquisto ${brandName}`,\n learnMore: ({ name = \"\" }) => `Scopri di più su ${name}`,\n seeAllImpact: ({ brandName = \"\" }) => `Guarda come la comunità di ${brandName} fa la differenza`,\n percentRaised: ({ percent = 0 }) => `${percent}%`,\n yourImpactTitle: () => `Il tuo impatto`,\n communityImpactTitle: ({ brandName = \"\" }) => `L’impatto della comunità di ${brandName} `,\n // share modal\n impactShareButton: () => \"Condividi, aiutaci a fare la differenza\",\n impactShareText: ({ brandName = \"\" }) =>\n `Aiuta ${brandName} a raggiungere il suo obiettivo di donazione condividendo questa causa sui social media.`,\n impactShareTitle: () => \"Condividi, aiutaci a fare la differenza\",\n impactShareCopy: () => \"Copia\",\n impactShareDownload: () => \"Scarica\",\n impactShareClose: () => \"Chiudi\",\n },\n pl: {\n descriptionTitle: ({ nonprofitName = \"\" }) => `Właśnie wsparłaś_eś ${nonprofitName}!`,\n descriptionSubtitle: ({ brandName = \"\" }) =>\n `Sprawdź niżej, jakiego wsparcia udzieliłaś_eś kupując w ${brandName} `,\n learnMore: ({ name = \"\" }) => `Dowiedz się więcej o ${name}`,\n seeAllImpact: ({ brandName = \"\" }) => `Zobacz, ile dobrego zrobiła do tej pory społeczność ${brandName}`,\n percentRaised: ({ percent = 0 }) => `${percent}%`,\n yourImpactTitle: () => `Twoje wsparcie`,\n communityImpactTitle: ({ brandName = \"\" }) => `Wsparcie udzielone przez społeczność ${brandName}`,\n // share modal\n impactShareButton: () => `Udostępnij, by szerzyć naszą misję`,\n impactShareText: ({ brandName = \"\" }) =>\n `Pomóż ${brandName} osiągnąć cel i podziel się tą inicjatywą na swoim profilu`,\n impactShareTitle: () => `Udostępnij na swoim profilu`,\n impactShareCopy: () => `Kopiuj`,\n impactShareDownload: () => `Pobierz`,\n impactShareClose: () => `Zamknij`,\n },\n};\n","import { css, html, LitElement, PropertyValues } from \"lit\";\nimport { property } from \"lit/decorators/property.js\";\nimport { queryAll } from \"lit/decorators/query-all.js\";\nimport { unsafeHTML } from \"lit/directives/unsafe-html.js\";\nimport debounce from \"lodash-es/debounce\";\nimport { DEFAULT_BASE_URL, SUPPORTED_LANGUAGES, WIDGET_NAMES } from \"../../api-sdk/constants\";\nimport { LANGUAGES, TUrl } from \"../../api-sdk/types\";\nimport { getImpact } from \"../../api-sdk/v3/routes\";\nimport { MissingConfig } from \"../../utils/beam-errors\";\nimport \"../../shared/components/progress-bar\";\nimport { progressBarConfigDefaults } from \"../../shared/components/progress-bar\";\nimport { AsyncController } from \"../../shared/controllers/async-controller\";\nimport { cssReset } from \"../../shared/css-reset\";\nimport { defineCustomElement } from \"../../shared/defineCustomElement\";\nimport { enforceConfig } from \"../../shared/enforce-config\";\nimport { _cssVariableMap } from \"../../shared/fragments/css-variable-map\";\nimport { defineCustomText, useCustomText } from \"../../shared/fragments/custom-text\";\nimport { _errorMessage } from \"../../shared/fragments/error-message-template\";\nimport { _loading } from \"../../shared/fragments/loading-template\";\nimport { localizeUserString } from \"../../shared/localize\";\nimport { logger } from \"../../utils/logger\";\nimport \"../../shared/shoelace-components\";\nimport { syncElementHeights } from \"../../shared/sync-element-heights\";\nimport { TId, TNumericId } from \"../../shared/types\";\nimport \"../beam-partner-logos\";\nimport { partnerLogosConfigDefaults } from \"../beam-partner-logos\";\nimport { shareButtonConfigDefaults } from \"../../shared/components/share-button\";\nimport { cssResponsiveUtils } from \"../../shared/responsive\";\nimport { strings } from \"./strings\";\nimport \"../../shared/components/share-button\";\n\ntype RequiredConfig = {\n apiKey: string;\n nonprofitId: TNumericId;\n userId: TId;\n};\n\nexport class BeamImpactOverview extends LitElement {\n static tagName = \"beam-impact-overview\";\n\n @property({ type: String, reflect: true }) public baseUrl: TUrl = DEFAULT_BASE_URL;\n\n @property({ type: String, reflect: false }) apiKey?: RequiredConfig[\"apiKey\"];\n\n @property({ type: Number }) storeId?: number;\n\n @property({ type: String, reflect: true }) nonprofitId?: RequiredConfig[\"nonprofitId\"];\n\n @property({ type: String, reflect: true }) userId?: RequiredConfig[\"userId\"];\n\n @property({ type: String }) public lang: LANGUAGES = \"en\";\n\n @property({ type: Boolean }) public debug = false;\n\n @property({ type: Object }) public discountCodes?: string[];\n\n @property({ type: String }) transactionId?: string;\n\n get configLang() {\n return SUPPORTED_LANGUAGES[this.lang] || \"en\";\n }\n\n getImpactData = async () => {\n if (!enforceConfig<RequiredConfig>([\"apiKey\", \"userId\", \"nonprofitId\"], this)) throw new MissingConfig();\n const res = await getImpact({\n baseUrl: this.baseUrl,\n headers: {\n authorization: `Api-Key ${this.apiKey}`,\n },\n queryParams: {\n nonprofitId: this.nonprofitId,\n beamUserId: this.userId,\n personalImpactLimit: 1,\n communityImpactLimit: 1,\n storeId: this.storeId,\n widgetName: WIDGET_NAMES.impact_overview,\n version: \"1.0.0\",\n lang: this.configLang,\n discountCodes: this.discountCodes && this.discountCodes.length > 0 ? this.discountCodes : undefined,\n transactionId: this.transactionId ?? undefined,\n },\n });\n\n return res;\n };\n\n private impactDataController = new AsyncController<typeof this.getImpactData>(this, this.getImpactData);\n\n @queryAll(\".impact-card-title\")\n impactTitleRefs!: HTMLElement[];\n\n @queryAll(\".impact-card-description\")\n impactDescriptionRefs!: HTMLElement[];\n\n @queryAll(\".impact-link\")\n impactLinkRefs!: HTMLElement[];\n\n connectedCallback() {\n super.connectedCallback();\n window.addEventListener(\"resize\", this.resizeElements);\n }\n\n async updated(changedProperties: PropertyValues): Promise<void> {\n // Reload nonprofit list on change of any of these props:\n // Also fires on first load as props go from undefined => value\n const requireNewDataProps = [\"baseUrl\", \"storeId\", \"apiKey\", \"userId\", \"lang\", \"discountCodes\"];\n for (const prop of requireNewDataProps) {\n if (changedProperties.has(prop)) {\n await this.impactDataController.exec();\n break;\n }\n }\n this.resizeElements(); // Handle layout shifts immediately\n await this.handleFontLoad(this.resizeElements); // If content change triggered font load, resize again\n }\n\n disconnectedCallback() {\n window.removeEventListener(\"resize\", this.resizeElements);\n document.fonts.removeEventListener(\"loadingdone\", this.resizeElements);\n super.disconnectedCallback();\n }\n\n /**\n * Safari does not fire loading events on the document FontFaceSet, but it does implement the .ready Promise\n * Call this method to wait for font loads that may be triggered by content changes\n */\n async handleFontLoad<T = any>(callback: () => T | void) {\n if (document.fonts.status === \"loading\") {\n await document.fonts.ready.catch((e) => logger.error(e));\n return callback();\n }\n }\n\n resizeElements = debounce(\n () => {\n syncElementHeights(this.impactTitleRefs);\n syncElementHeights(this.impactDescriptionRefs);\n syncElementHeights(this.impactLinkRefs);\n },\n 50,\n { maxWait: 50, leading: true }\n );\n\n renderCard({\n imageUrl,\n title,\n percentFunded,\n description,\n }: {\n imageUrl: TUrl;\n title: string;\n percentFunded: number;\n description: string;\n }) {\n return html`\n <div class=\"impact-card\" part=\"impact-card\">\n <img src=\"${imageUrl}\" alt=\"${title}\" class=\"impact-card-image\" />\n <div class=\"impact-card-content\" style=\"margin: 15px;\">\n <div class=\"impact-card-title\">${title}</div>\n <div class=\"impact-card-progress\" style=\"display: flex; align-items: center;\">\n <beam-progress-bar\n value=\"${percentFunded}\"\n style=\"flex: 1 0;\"\n class=\"impact-card-progressbar\"\n ></beam-progress-bar>\n <span class=\"impact-card-progressText\" style=\"flex: 0 1; margin-left: 10px; white-space: nowrap;\"\n >${strings[this.configLang].percentRaised({ percent: percentFunded })}</span\n >\n </div>\n <p class=\"impact-card-description\">${unsafeHTML(description)}</p>\n </div>\n </div>\n `;\n }\n\n render() {\n const { data, loading, error } = this.impactDataController;\n if (loading) {\n return _loading();\n }\n if (error) {\n if (this.debug) {\n return _errorMessage({ error });\n }\n return \"\";\n }\n if (data == null) {\n if (this.debug) {\n return _errorMessage({ error: new Error(\"No data\") });\n }\n return \"\";\n }\n const brandName = this.impactDataController.data?.chain.name;\n const shareImage =\n this.impactDataController.data?.promoAssetUrl || this.impactDataController.data?.personalImpactAssetUrl;\n const showShare = this.cssVariables[\"--beam-ImpactOverview-share-button-display\"] !== \"none\";\n const showShareMobile =\n showShare && this.cssVariables[\"--beam-ImpactOverview-share-button-display-mobile\"] !== \"none\";\n const showShareDesktop =\n showShare && this.cssVariables[\"--beam-ImpactOverview-share-button-display-desktop\"] !== \"none\";\n const shareIcon = this.cssVariables[\"--beam-ImpactOverview-share-button-icon-name\"] || \"share-2\";\n\n let shareButtonVisibilityClass = \"d-none\";\n if (showShareMobile) {\n shareButtonVisibilityClass = showShareDesktop ? \"d-block\" : \"d-lg-none\";\n } else {\n shareButtonVisibilityClass = showShareDesktop ? \"d-none d-lg-block\" : \"d-none\";\n }\n\n return html`\n <style>\n :host {\n ${this.cssVariables.toCSS()}\n }\n </style>\n\n <div>\n <beam-partner-logos\n partnerLogoUrl=\"${data.chain.logoUrl}\"\n partnerName=\"${data.chain.name}\"\n part=\"logos\"\n ></beam-partner-logos>\n </div>\n\n <div class=\"description\">\n <div class=\"title\" part=\"title\">\n ${localizeUserString(this.configLang, data.config?.web?.title) ||\n strings[this.configLang].descriptionTitle({ nonprofitName: data.personal[0].nonprofit.name })}\n </div>\n <div class=\"subtitle\" part=\"subtitle\">\n ${localizeUserString(this.configLang, data.config?.web?.description) ||\n strings[this.configLang].descriptionSubtitle({ brandName: data.chain.name })}\n </div>\n </div>\n\n <div class=\"impact-cards\" style=\"display: flex; flex-wrap: wrap; gap: 15px; margin: 10px 0;\">\n <div class=\"impact your-impact\" style=\"flex: 1 1; display: inline-block; max-width: 100%; min-width: 200px;\">\n ${this.renderCard({\n imageUrl: data.personal[0]?.imageUrl || \"\",\n title: strings[this.configLang].yourImpactTitle(),\n percentFunded: data.personal[0]?.impact?.goalProgressPercentage || 0,\n description: localizeUserString(this.configLang, data.personal[0]?.impact?.description || \"\"),\n })}\n <p class=\"impact-link\" part=\"impact-link\">\n <a href=\"${data.personal[0].nonprofit?.website}\" target=\"_blank\" rel=\"noopener noreferrer\">\n ${strings[this.configLang].learnMore({\n name: data.personal[0].nonprofit?.name,\n })}<span class=\"impact-link-arrow\">&nbsp;&rsaquo;</span>\n </a>\n </p>\n </div>\n <div\n class=\"impact community-impact\"\n style=\"flex: 1 1; display: inline-block; max-width: 100%; min-width: 200px;\"\n >\n ${this.renderCard({\n imageUrl: data.community[0].imageUrl || \"\",\n title: strings[this.configLang].communityImpactTitle({ brandName: data.chain.name }),\n percentFunded: data.community[0].impact?.goalProgressPercentage || 0,\n description: localizeUserString(this.configLang, data.community[0].impact?.description || \"\"),\n })}\n <p class=\"impact-link\" part=\"impact-link\">\n <a\n href=\"${data.chain.communityImpactUrl || data.community[0].nonprofit.website}\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n ${strings[this.configLang].seeAllImpact({\n brandName: data.chain.name,\n })}<span class=\"impact-link-arrow\">&nbsp;&rsaquo;</span>\n </a>\n </p>\n </div>\n </div>\n\n <div class=\"footer ${shareButtonVisibilityClass}\" part=\"social-share\">\n <beam-share-button\n imageUrl=\"${shareImage}\"\n brandName=\"${brandName}\"\n shareIcon=\"${shareIcon}\"\n buttonText=\"${strings[this.configLang].impactShareButton()}\"\n configLang=\"${this.configLang}\"\n ></beam-share-button>\n </div>\n\n <div id=\"modal-root\"></div>\n `;\n }\n\n public get cssVariables() {\n const defaults = {\n \"--beam-fontFamily\": \"inherit\",\n \"--beam-fontStyle\": \"inherit\",\n \"--beam-fontSize\": \"inherit\",\n \"--beam-textColor\": \"inherit\",\n \"--beam-backgroundColor\": \"inherit\",\n ...partnerLogosConfigDefaults,\n ...progressBarConfigDefaults,\n ...shareButtonConfigDefaults,\n ...defineCustomText(\"--beam-ImpactOverview-title\", {\n fontSize: \"16px\",\n fontWeight: \"bold\",\n marginTop: \"10px\",\n }),\n ...defineCustomText(\"--beam-ImpactOverview-subtitle\", {\n marginTop: \"5px\",\n }),\n \"--beam-ImpactOverview-impactCards-maxWidth\": \"800px\",\n \"--beam-ImpactOverview-impactCard-backgroundColor\": \"inherit\",\n \"--beam-ImpactOverview-impactCard-foregroundColor\": \"currentColor\",\n \"--beam-ImpactOverview-impactCard-borderColor\": \"currentColor\",\n \"--beam-ImpactOverview-impactCard-borderRadius\": \"0px\",\n \"--beam-ImpactOverview-impactCard-marginTop\": \"10px\",\n ...defineCustomText(\"--beam-ImpactOverview-impactCard-title\", {\n fontSize: \"15px\",\n fontWeight: \"bold\",\n }),\n \"--beam-ImpactOverview-impactCard-progress-marginTop\": \"15px\",\n ...defineCustomText(\"--beam-ImpactOverview-impactCard-progressText\"),\n ...defineCustomText(\"--beam-ImpactOverview-impactCard-description\", {\n marginTop: \"10px\",\n }),\n \"--beam-ImpactOverview-impactCard-linkArrow-display\": \"inline\",\n \"--beam-ImpactOverview-impactCard-link-color\": \"inherit\",\n ...defineCustomText(\"--beam-ImpactOverview-impactCard-link\", {\n marginTop: \"10px\",\n }),\n \"--beam-ImpactOverview-share-button-display\": \"none\",\n \"--beam-ImpactOverview-share-button-display-mobile\": \"inherit\",\n \"--beam-ImpactOverview-share-button-display-desktop\": \"inherit\",\n \"--beam-ImpactOverview-image-display\": \"block\",\n };\n\n const remoteConfig = this.impactDataController?.data?.config?.web?.theme || {};\n\n const config = { ...defaults, ...remoteConfig };\n\n const serializable = Object.create({\n toCSS() {\n return _cssVariableMap(this as Record<string, string>);\n },\n });\n\n return Object.assign(serializable, config);\n }\n\n static styles = [\n cssReset,\n cssResponsiveUtils,\n css`\n :host {\n display: block;\n font-family: var(--beam-fontFamily);\n font-style: var(--beam-fontStyle);\n font-size: var(--beam-fontSize);\n background-color: var(--beam-backgroundColor);\n color: var(--beam-textColor);\n max-width: var(--beam-ImpactOverview-impactCards-maxWidth, 800px);\n word-break: normal;\n }\n .impact-cards {\n max-width: var(--beam-ImpactOverview-impactCards-maxWidth);\n }\n .impact-card {\n margin-top: var(--beam-ImpactOverview-impactCard-marginTop);\n background-color: var(--beam-ImpactOverview-impactCard-backgroundColor);\n border: 1px solid var(--beam-ImpactOverview-impactCard-borderColor);\n border-radius: var(--beam-ImpactOverview-impactCard-borderRadius);\n overflow: hidden; /* maintain clean border-radius */\n color: var(--beam-ImpactOverview-impactCard-foregroundColor);\n }\n .impact-card-image {\n object-fit: cover;\n height: 200px;\n width: 100%;\n display: var(--beam-ImpactOverview-image-display);\n }\n .impact-card-progress {\n margin-top: var(--beam-ImpactOverview-impactCard-progress-marginTop);\n }\n .title {\n ${useCustomText(\"--beam-ImpactOverview-title\")}\n }\n .subtitle {\n ${useCustomText(\"--beam-ImpactOverview-subtitle\")}\n }\n .impact-card-title {\n ${useCustomText(\"--beam-ImpactOverview-impactCard-title\")}\n }\n .impact-card-progressText {\n ${useCustomText(\"--beam-ImpactOverview-impactCard-progressText\")}\n }\n .impact-card-description {\n ${useCustomText(\"--beam-ImpactOverview-impactCard-description\")}\n }\n .impact-link {\n ${useCustomText(\"--beam-ImpactOverview-impactCard-link\")}\n }\n .impact-link-arrow {\n display: var(--beam-ImpactOverview-impactCard-linkArrow-display, \"inline\");\n }\n .impact-link a,\n .impact-link a:visited {\n color: var(--beam-ImpactOverview-impactCard-link-color, inherit);\n text-decoration: none;\n }\n .footer {\n text-align: center;\n }\n @media (max-width: 500px) {\n //.impact-card {\n // display: flex;\n // flex-direction: row;\n //}\n //.impact-card-image {\n // object-fit: cover;\n // width: 25%;\n // height: auto;\n // flex: 1 0 45%;\n //}\n //.impact-card-content {\n // flex: 1 1 55%;\n //}\n //.share-button-text {\n // display: none;\n //}\n //.share-button-icon {\n // font-size: calc(var(--beam-ImpactOverview-share-button-icon-size, 16px) * 1.33);\n //}\n }\n `,\n css`\n .button {\n cursor: pointer;\n }\n .icon-button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n .plain-button {\n border: none;\n background: none;\n font-size: inherit;\n font-family: inherit;\n }\n .plain-link {\n text-decoration: none;\n color: inherit;\n }\n `,\n ];\n}\n\ndefineCustomElement(BeamImpactOverview);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"beam-impact-overview\": BeamImpactOverview;\n }\n}\n"],"names":["strings","nonprofitName","brandName","name","percent","x","k","a","d","m","e","i","t","o","BeamImpactOverview","LitElement","DEFAULT_BASE_URL","enforceConfig","getImpact","WIDGET_NAMES","AsyncController","debounce","syncElementHeights","SUPPORTED_LANGUAGES","changedProperties","requireNewDataProps","prop","callback","logger","imageUrl","title","percentFunded","description","html","unsafeHTML","data","loading","error","_loading","_errorMessage","shareImage","showShare","showShareMobile","showShareDesktop","shareIcon","shareButtonVisibilityClass","localizeUserString","defaults","partnerLogosConfigDefaults","progressBarConfigDefaults","shareButtonConfigDefaults","defineCustomText","remoteConfig","config","_cssVariableMap","cssReset","cssResponsiveUtils","css","useCustomText","__decorateClass","property","queryAll","defineCustomElement"],"mappings":"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"}
1
+ {"version":3,"file":"impact-overview.esm.js","sources":["../../src/components/impact-overview/strings.ts","../../src/components/impact-overview/index.ts"],"sourcesContent":["export const strings = {\n en: {\n descriptionTitle: ({ nonprofitName = \"a nonprofit\" }) => `You've just made an impact for ${nonprofitName}`,\n descriptionSubtitle: ({ causeName = \"\" }) => `Together, we’re making an impact towards ${causeName} initiatives.`,\n yourImpactTitle: () => `You’ve Funded`,\n communityImpactTitle: () => `Together we’re funding`,\n personalImpactLinkCopy: ({ name = \"\" }) => `Learn about ${name}`,\n communityImpactLinkCopy: ({ name = \"\" }) => `Learn about ${name}'s Impact`,\n // share modal\n impactShareButton: () => `Share to Grow Your Impact`,\n },\n fr: {\n descriptionTitle: ({ nonprofitName = \"\" }) => `Vous avez eu un impact positif sur ${nonprofitName}`, // TODO: Update translation copy SDK-2210\n descriptionSubtitle: ({ causeName = \"\" }) =>\n `Découvrez quel est l'impact de votre achat chez ${causeName} ci-dessous.`, // TODO: Update translation copy SDK-2210\n yourImpactTitle: () => `Vous avez financé`,\n communityImpactTitle: () => `Ensemble, nous finançons`,\n personalImpactLinkCopy: ({ name = \"\" }) => `En savoir sur ${name}`,\n communityImpactLinkCopy: ({ name = \"\" }) => `Apprendre l'impact de ${name}`,\n // share modal\n impactShareButton: () => `Partagez pour augmentez notre cause`,\n },\n de: {\n descriptionTitle: ({ nonprofitName = \"\" }) => `Du hast soeben einen Beitrag geleistet für ${nonprofitName}`, // TODO: Update translation copy SDK-2210\n descriptionSubtitle: ({ causeName = \"\" }) =>\n `Erfahre mehr über den Beitrag, den du mit deinem ${causeName} Kauf geleistet hast`, // TODO: Update translation copy SDK-2210\n yourImpactTitle: () => `Sie haben finanziert`,\n communityImpactTitle: () => `Gemeinsam finanzieren wir`,\n personalImpactLinkCopy: ({ name = \"\" }) => `Mehr über ${name} lernen`,\n communityImpactLinkCopy: ({ name = \"\" }) => `Erfahre den Einfluss von ${name}`,\n // share modal\n impactShareButton: () => `Teil, um unserem Beitrag zu erhöhen`,\n },\n es: {\n descriptionTitle: ({ nonprofitName = \"\" }) => `Acabas de contribuir con ${nonprofitName}`, // TODO: Update translation copy SDK-2210\n descriptionSubtitle: ({ causeName = \"\" }) =>\n `Comprueba la contribución que has hecho con tu compra ${causeName} a continuación`, // TODO: Update translation copy SDK-2210\n yourImpactTitle: () => `Has financiado`,\n communityImpactTitle: () => `Juntos estamos financiando`,\n personalImpactLinkCopy: ({ name = \"\" }) => `Saber de ${name}`,\n communityImpactLinkCopy: ({ name = \"\" }) => `Conocer el impacto de ${name}`,\n // share modal\n impactShareButton: () => \"Comparte para aumentar nuestro impacto\",\n },\n it: {\n descriptionTitle: ({ nonprofitName = \"\" }) => `Hai appena fatto la differenza per ${nonprofitName}`, // TODO: Update translation copy SDK-2210\n descriptionSubtitle: ({ causeName = \"\" }) => `Guarda qui sotto l'impatto del tuo acquisto ${causeName}`, // TODO: Update translation copy SDK-2210\n yourImpactTitle: () => `Hai finanziato`,\n communityImpactTitle: () => `Insieme stiamo finanziando`,\n personalImpactLinkCopy: ({ name = \"\" }) => `Scopri su ${name}`,\n communityImpactLinkCopy: ({ name = \"\" }) => `Scopri l'impatto di ${name}`,\n // share modal\n impactShareButton: () => \"Condividi, aiutaci a fare la differenza\",\n },\n pl: {\n descriptionTitle: ({ nonprofitName = \"\" }) => `Właśnie wsparłaś_eś ${nonprofitName}!`, // TODO: Update translation copy SDK-2210\n descriptionSubtitle: ({ causeName = \"\" }) =>\n `Sprawdź niżej, jakiego wsparcia udzieliłaś_eś kupując w ${causeName} `, // TODO: Update translation copy SDK-2210\n yourImpactTitle: () => `Sfinansowałeś(a) `,\n communityImpactTitle: () => `Razem finansujemy`,\n personalImpactLinkCopy: ({ name = \"\" }) => `Dowiedz się o ${name}`,\n communityImpactLinkCopy: ({ name = \"\" }) => `Poznaj wpływ ${name}`,\n // share modal\n impactShareButton: () => `Udostępnij, by szerzyć naszą misję`,\n },\n};\n","import { css, html, LitElement, PropertyValues } from \"lit\";\nimport { property } from \"lit/decorators/property.js\";\nimport { queryAll } from \"lit/decorators/query-all.js\";\nimport { unsafeHTML } from \"lit/directives/unsafe-html.js\";\nimport debounce from \"lodash-es/debounce\";\nimport { DEFAULT_BASE_URL, SUPPORTED_LANGUAGES, WIDGET_NAMES } from \"../../api-sdk/constants\";\nimport { LANGUAGES, TUrl } from \"../../api-sdk/types\";\nimport { getImpact } from \"../../api-sdk/v3/routes\";\nimport { MissingConfig } from \"../../utils/beam-errors\";\nimport \"../../shared/components/progress-bar\";\nimport { progressBarConfigDefaults } from \"../../shared/components/progress-bar\";\nimport { AsyncController } from \"../../shared/controllers/async-controller\";\nimport { cssReset } from \"../../shared/css-reset\";\nimport { defineCustomElement } from \"../../shared/defineCustomElement\";\nimport { enforceConfig } from \"../../shared/enforce-config\";\nimport { _cssVariableMap } from \"../../shared/fragments/css-variable-map\";\nimport { defineCustomText, useCustomText } from \"../../shared/fragments/custom-text\";\nimport { _errorMessage } from \"../../shared/fragments/error-message-template\";\nimport { _loading } from \"../../shared/fragments/loading-template\";\nimport { localizeUserString } from \"../../shared/localize\";\nimport { logger } from \"../../utils/logger\";\nimport \"../../shared/shoelace-components\";\nimport { syncElementHeights } from \"../../shared/sync-element-heights\";\nimport { TId, TNumericId } from \"../../shared/types\";\nimport \"../beam-partner-logos\";\nimport { partnerLogosConfigDefaults } from \"../beam-partner-logos\";\nimport { shareButtonConfigDefaults } from \"../../shared/components/share-button\";\nimport { cssResponsiveUtils } from \"../../shared/responsive\";\nimport { strings } from \"./strings\";\nimport \"../../shared/components/share-button\";\n\ntype RequiredConfig = {\n apiKey: string;\n nonprofitId: TNumericId;\n userId: TId;\n};\n\nexport class BeamImpactOverview extends LitElement {\n static tagName = \"beam-impact-overview\";\n\n @property({ type: String, reflect: true }) public baseUrl: TUrl = DEFAULT_BASE_URL;\n\n @property({ type: String, reflect: false }) apiKey?: RequiredConfig[\"apiKey\"];\n\n @property({ type: Number }) storeId?: number;\n\n @property({ type: String, reflect: true }) nonprofitId?: RequiredConfig[\"nonprofitId\"];\n\n @property({ type: String, reflect: true }) userId?: RequiredConfig[\"userId\"];\n\n @property({ type: String }) public lang: LANGUAGES = \"en\";\n\n @property({ type: Boolean }) public debug = false;\n\n @property({ type: Boolean }) public draftConfig = false;\n\n @property({ type: Object }) public discountCodes?: string[];\n\n @property({ type: String }) transactionId?: string;\n\n get configLang() {\n return SUPPORTED_LANGUAGES[this.lang] || \"en\";\n }\n\n getImpactData = async () => {\n if (!enforceConfig<RequiredConfig>([\"apiKey\", \"userId\", \"nonprofitId\"], this)) throw new MissingConfig();\n const res = await getImpact({\n baseUrl: this.baseUrl,\n headers: {\n authorization: `Api-Key ${this.apiKey}`,\n },\n queryParams: {\n nonprofitId: this.nonprofitId,\n beamUserId: this.userId,\n personalImpactLimit: 1,\n communityImpactLimit: 1,\n storeId: this.storeId,\n widgetName: WIDGET_NAMES.impact_overview,\n version: \"1.0.0\",\n draftConfig: this.draftConfig,\n lang: this.configLang,\n discountCodes: this.discountCodes && this.discountCodes.length > 0 ? this.discountCodes : undefined,\n transactionId: this.transactionId ?? undefined,\n },\n });\n\n return res;\n };\n\n private impactDataController = new AsyncController<typeof this.getImpactData>(this, this.getImpactData);\n\n @queryAll(\".impact-card-title\")\n impactTitleRefs!: HTMLElement[];\n\n @queryAll(\".impact-card-description\")\n impactDescriptionRefs!: HTMLElement[];\n\n @queryAll(\".impact-link\")\n impactLinkRefs!: HTMLElement[];\n\n connectedCallback() {\n super.connectedCallback();\n window.addEventListener(\"resize\", this.resizeElements);\n }\n\n async updated(changedProperties: PropertyValues): Promise<void> {\n // Reload nonprofit list on change of any of these props:\n // Also fires on first load as props go from undefined => value\n const requireNewDataProps = [\"baseUrl\", \"storeId\", \"apiKey\", \"userId\", \"lang\", \"discountCodes\"];\n for (const prop of requireNewDataProps) {\n if (changedProperties.has(prop)) {\n await this.impactDataController.exec();\n break;\n }\n }\n this.resizeElements(); // Handle layout shifts immediately\n await this.handleFontLoad(this.resizeElements); // If content change triggered font load, resize again\n }\n\n disconnectedCallback() {\n window.removeEventListener(\"resize\", this.resizeElements);\n document.fonts.removeEventListener(\"loadingdone\", this.resizeElements);\n super.disconnectedCallback();\n }\n\n /**\n * Safari does not fire loading events on the document FontFaceSet, but it does implement the .ready Promise\n * Call this method to wait for font loads that may be triggered by content changes\n */\n async handleFontLoad<T = any>(callback: () => T | void) {\n if (document.fonts.status === \"loading\") {\n await document.fonts.ready.catch((e) => logger.error(e));\n return callback();\n }\n }\n\n resizeElements = debounce(\n () => {\n syncElementHeights(this.impactTitleRefs);\n syncElementHeights(this.impactDescriptionRefs);\n syncElementHeights(this.impactLinkRefs);\n },\n 50,\n { maxWait: 50, leading: true }\n );\n\n renderCard({\n imageUrl,\n title,\n percentFunded,\n goalProgressText,\n description,\n urlCopy,\n impactUrl,\n isImage,\n cardType,\n }: {\n imageUrl: TUrl;\n title: string;\n percentFunded: number;\n goalProgressText: string;\n description: string;\n urlCopy?: string;\n impactUrl: TUrl;\n isImage: boolean;\n cardType: string;\n }) {\n return html`\n <div class=\"impact-card ${isImage ? \"\" : \"icon\"}\" part=\"impact-card\">\n <div class=\"${isImage ? \"\" : \"icon-background \"}\">\n <img src=\"${imageUrl}\" alt=\"${title}\" class=\"${isImage ? \"impact-card-image\" : \"impact-card-icon\"}\" />\n </div>\n <div class=\"${isImage ? \"\" : \"impact-icon-card-content\"}\" style=\"margin: 12px;\">\n <div class=\"impact-card-title\">${title}</div>\n <p class=\"impact-card-description\">${unsafeHTML(description)}</p>\n <div class=\"impact-card-progress\" style=\"display: flex; align-items: center;\">\n <beam-progress-bar\n value=\"${percentFunded}\"\n style=\"flex: 1 0;\"\n class=\"impact-card-progressbar\"\n ></beam-progress-bar>\n <span class=\"impact-card-progressText\" style=\"flex: 0 1; margin-left: 10px; white-space: nowrap;\"\n >${localizeUserString(this.configLang, goalProgressText)}</span\n >\n </div>\n <p class=\"impact-link\" part=\"impact-link\">\n <a href=\"${impactUrl}\" target=\"_blank\" rel=\"noopener noreferrer\">\n ${cardType === \"personal\"\n ? strings[this.configLang].personalImpactLinkCopy({\n name: urlCopy,\n })\n : strings[this.configLang].communityImpactLinkCopy({\n name: urlCopy,\n })}<span class=\"impact-link-arrow\">&nbsp;&rsaquo;</span>\n </a>\n </p>\n </div>\n </div>\n `;\n }\n\n render() {\n const { data, loading, error } = this.impactDataController;\n if (loading) {\n return _loading();\n }\n if (error) {\n if (this.debug) {\n return _errorMessage({ error });\n }\n return \"\";\n }\n if (data == null) {\n if (this.debug) {\n return _errorMessage({ error: new Error(\"No data\") });\n }\n return \"\";\n }\n const brandName = this.impactDataController.data?.chain.name;\n const causeName = localizeUserString(this.configLang, data.personal[0].nonprofit.cause || \"\");\n const cardStyle = this.cssVariables[\"--beam-ImpactOverview-cardStyle\"];\n const isImage = cardStyle === \"'image'\";\n const isSelectedIcon = cardStyle === \"'selected_icon'\";\n const personalImageUrl = data.personal[0]?.imageUrl || \"\";\n const communityImageUrl = data.community[0].imageUrl || \"\";\n const iconUrl = data.personal[0]?.nonprofit.causeIconUrl;\n const selectedIconUrl = data.personal[0]?.nonprofit.causeIconSelectedUrl;\n const personalCardImage = isImage ? personalImageUrl : isSelectedIcon ? selectedIconUrl : iconUrl;\n const communityCardImage = isImage ? communityImageUrl : isSelectedIcon ? selectedIconUrl : iconUrl;\n\n const shareImage =\n this.impactDataController.data?.promoAssetUrl || this.impactDataController.data?.personalImpactAssetUrl;\n const showShare = this.cssVariables[\"--beam-ImpactOverview-share-button-display\"] !== \"none\";\n const showShareMobile =\n showShare && this.cssVariables[\"--beam-ImpactOverview-share-button-display-mobile\"] !== \"none\";\n const showShareDesktop =\n showShare && this.cssVariables[\"--beam-ImpactOverview-share-button-display-desktop\"] !== \"none\";\n const shareIcon = this.cssVariables[\"--beam-ImpactOverview-share-button-icon-name\"] || \"share-2\";\n\n let shareButtonVisibilityClass = \"d-none\";\n if (showShareMobile) {\n shareButtonVisibilityClass = showShareDesktop ? \"d-block\" : \"d-lg-none\";\n } else {\n shareButtonVisibilityClass = showShareDesktop ? \"d-none d-lg-block\" : \"d-none\";\n }\n\n return html`\n <style>\n :host {\n ${this.cssVariables.toCSS()}\n }\n </style>\n\n <div>\n <beam-partner-logos\n partnerLogoUrl=\"${data.chain.logoUrl}\"\n partnerName=\"${data.chain.name}\"\n part=\"logos\"\n ></beam-partner-logos>\n </div>\n\n <div class=\"description\">\n <div class=\"title\" part=\"title\">\n ${localizeUserString(this.configLang, data.config?.web?.title) ||\n strings[this.configLang].descriptionTitle({ nonprofitName: data.personal[0].nonprofit.name })}\n </div>\n <div class=\"subtitle\" part=\"subtitle\">\n ${localizeUserString(this.configLang, data.config?.web?.description) ||\n strings[this.configLang].descriptionSubtitle({ causeName: causeName })}\n </div>\n </div>\n\n <div class=\"${isImage ? \"impact-image-cards\" : \"impact-icon-cards\"}\">\n <div class=\"impact your-impact ${isImage ? \"image-card-container\" : \"icon-card-container\"}\">\n ${this.renderCard({\n isImage,\n imageUrl: personalCardImage || \"\",\n title: strings[this.configLang].yourImpactTitle(),\n percentFunded: data.personal[0]?.impact?.goalProgressPercentage || 0,\n goalProgressText: data.personal[0]?.impact?.goalProgressText,\n description: localizeUserString(this.configLang, data.personal[0]?.impact?.description || \"\"),\n urlCopy: data.personal[0].nonprofit?.name,\n impactUrl: data.personal[0].nonprofit?.website || \"\",\n cardType: \"personal\",\n })}\n </div>\n <div class=\"impact community-impact ${isImage ? \"image-card-container\" : \"icon-card-container\"}\">\n ${this.renderCard({\n isImage,\n imageUrl: communityCardImage || \"\",\n title: strings[this.configLang].communityImpactTitle(),\n percentFunded: data.community[0].impact?.goalProgressPercentage || 0,\n goalProgressText: data.community[0]?.impact?.goalProgressText,\n description: localizeUserString(this.configLang, data.community[0].impact?.description || \"\"),\n urlCopy: data.chain.name,\n impactUrl: data.chain.communityImpactUrl || data.community[0].nonprofit.website || \"\",\n cardType: \"community\",\n })}\n </div>\n </div>\n\n <div class=\"footer ${shareButtonVisibilityClass} shareButtonContainer\" part=\"social-share\">\n <beam-share-button\n imageUrl=\"${shareImage}\"\n brandName=\"${brandName}\"\n shareIcon=\"${shareIcon}\"\n buttonText=\"${strings[this.configLang].impactShareButton()}\"\n configLang=\"${this.configLang}\"\n ></beam-share-button>\n </div>\n\n <div id=\"modal-root\"></div>\n `;\n }\n\n public get cssVariables() {\n const defaults = {\n \"--beam-fontFamily\": \"inherit\",\n \"--beam-fontStyle\": \"inherit\",\n \"--beam-fontSize\": \"inherit\",\n \"--beam-textColor\": \"inherit\",\n \"--beam-backgroundColor\": \"inherit\",\n ...partnerLogosConfigDefaults,\n ...progressBarConfigDefaults,\n ...shareButtonConfigDefaults,\n ...defineCustomText(\"--beam-ImpactOverview-title\", {\n fontSize: \"16px\",\n fontWeight: \"bold\",\n marginTop: \"10px\",\n textTransform: \"capitalize\",\n }),\n ...defineCustomText(\"--beam-ImpactOverview-subtitle\", {\n marginTop: \"5px\",\n }),\n \"--beam-ImpactOverview-impactCards-maxWidth\": \"650px\",\n \"--beam-ImpactOverview-impactCard-backgroundColor\": \"inherit\",\n \"--beam-ImpactOverview-impactCard-foregroundColor\": \"currentColor\",\n \"--beam-ImpactOverview-impactCard-borderColor\": \"currentColor\",\n \"--beam-ImpactOverview-impactCard-borderRadius\": \"5px\",\n \"--beam-ImpactOverview-impactCard-marginTop\": \"10px\",\n ...defineCustomText(\"--beam-ImpactOverview-impactCard-title\", {\n fontSize: \"15px\",\n fontWeight: \"bold\",\n letterSpacing: \"0.36px\",\n }),\n \"--beam-ImpactOverview-impactCard-progress-marginTop\": \"15px\",\n ...defineCustomText(\"--beam-ImpactOverview-impactCard-progressText\"),\n ...defineCustomText(\"--beam-ImpactOverview-impactCard-description\", {\n marginTop: \"10px\",\n }),\n \"--beam-ImpactOverview-impactCard-linkArrow-display\": \"inline\",\n \"--beam-ImpactOverview-impactCard-link-color\": \"inherit\",\n ...defineCustomText(\"--beam-ImpactOverview-impactCard-link\", {\n marginTop: \"10px\",\n textDecoration: \"underline\",\n textTransform: \"capitalize\",\n }),\n \"--beam-ImpactOverview-share-button-display\": \"none\",\n \"--beam-ImpactOverview-share-button-display-mobile\": \"inherit\",\n \"--beam-ImpactOverview-share-button-display-desktop\": \"inherit\",\n \"--beam-ImpactOverview-image-display\": \"block\",\n \"--beam-ImpactOverview-cardStyle\": \"'image'\", // icon, selected_icon, image\n \"--beam-ImpactOverview-iconBackground-width\": \"75px\",\n \"--beam-ImpactOverview-iconBackground-height\": \"75px\",\n \"--beam-ImpactOverview-iconBackground-borderRadius\": \"50px\",\n \"--beam-ImpactOverview-icon-padding\": \"0px\",\n \"--beam-ImpactOverview-iconBackground-background\": \"#f3f3f3\",\n \"--beam-ImpactOverview-impactCard-shareButton-background\": \"#fff\",\n \"--beam-ImpactOverview-impactCard-shareButton-boxShadow\": \"0px -20px 20px 0px rgb(0 0 0 / 2%)\",\n };\n\n const remoteConfig = this.impactDataController?.data?.config?.web?.theme || {};\n\n const config = { ...defaults, ...remoteConfig };\n\n const serializable = Object.create({\n toCSS() {\n return _cssVariableMap(this as Record<string, string>);\n },\n });\n\n return Object.assign(serializable, config);\n }\n\n static styles = [\n cssReset,\n cssResponsiveUtils,\n css`\n :host {\n display: block;\n font-family: var(--beam-fontFamily);\n font-style: var(--beam-fontStyle);\n font-size: var(--beam-fontSize);\n background-color: var(--beam-backgroundColor);\n color: var(--beam-textColor);\n max-width: var(--beam-ImpactOverview-impactCards-maxWidth, 650px);\n word-break: normal;\n }\n .icon {\n display: flex;\n align-items: center;\n }\n .icon-background {\n width: var(--beam-ImpactOverview-iconBackground-width, 75px);\n height: var(--beam-ImpactOverview-iconBackground-height, 75px);\n border-radius: var(--beam-ImpactOverview-iconBackground-borderRadius, 50px);\n padding: var(--beam-ImpactOverview-icon-padding, 0px);\n margin: 8px;\n overflow: hidden;\n background: var(--beam-ImpactOverview-iconBackground-background, #f3f3f3);\n display: flex;\n justify-content: center;\n align-items: center;\n }\n .impact-icon-card-content {\n flex: 3 1 75%;\n }\n .impact-image-cards {\n max-width: var(--beam-ImpactOverview-impactCards-maxWidth);\n display: flex;\n flex-wrap: wrap;\n gap: 15px;\n margin: 10px 0;\n }\n .impact-icon-cards {\n max-width: var(--beam-ImpactOverview-impactCards-maxWidth);\n margin: 10px 0;\n }\n .impact-card {\n padding-bottom: 5px;\n margin-top: var(--beam-ImpactOverview-impactCard-marginTop);\n background-color: var(--beam-ImpactOverview-impactCard-backgroundColor);\n border: 1px solid var(--beam-ImpactOverview-impactCard-borderColor);\n border-radius: var(--beam-ImpactOverview-impactCard-borderRadius);\n overflow: hidden; /* maintain clean border-radius */\n color: var(--beam-ImpactOverview-impactCard-foregroundColor);\n }\n .impact-card-image {\n object-fit: cover;\n height: 110px;\n width: 100%;\n display: var(--beam-ImpactOverview-image-display);\n }\n .impact-card-icon {\n flex: 1 1 10%;\n max-width: 50%;\n display: var(--beam-ImpactOverview-image-display);\n }\n .image-card-container {\n flex: 1 1;\n display: inline-block;\n min-width: 200px;\n max-width: 100%;\n }\n .icon-card-container {\n max-width: 100%;\n min-width: 299px;\n }\n .impact-card-progress {\n margin-top: var(--beam-ImpactOverview-impactCard-progress-marginTop);\n }\n .shareButtonContainer {\n position: sticky;\n bottom: 0;\n z-index: 999;\n background-color: var(--beam-ImpactOverview-impactCard-shareButton-background);\n box-shadow: var(--beam-ImpactOverview-impactCard-shareButton-boxShadow);\n }\n .title {\n ${useCustomText(\"--beam-ImpactOverview-title\")}\n }\n .subtitle {\n ${useCustomText(\"--beam-ImpactOverview-subtitle\")}\n }\n .impact-card-title {\n ${useCustomText(\"--beam-ImpactOverview-impactCard-title\")}\n }\n .impact-card-progressText {\n ${useCustomText(\"--beam-ImpactOverview-impactCard-progressText\")}\n }\n .impact-card-description {\n ${useCustomText(\"--beam-ImpactOverview-impactCard-description\")}\n }\n .impact-link {\n ${useCustomText(\"--beam-ImpactOverview-impactCard-link\")}\n }\n .impact-link-arrow {\n display: var(--beam-ImpactOverview-impactCard-linkArrow-display, \"inline\");\n }\n .impact-link a,\n .impact-link a:visited {\n color: var(--beam-ImpactOverview-impactCard-link-color, inherit);\n }\n .footer {\n text-align: center;\n }\n `,\n css`\n .button {\n cursor: pointer;\n }\n .icon-button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n }\n .plain-button {\n border: none;\n background: none;\n font-size: inherit;\n font-family: inherit;\n }\n `,\n ];\n}\n\ndefineCustomElement(BeamImpactOverview);\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"beam-impact-overview\": BeamImpactOverview;\n }\n}\n"],"names":["strings","nonprofitName","causeName","name","D","R","i","f","g","e","t","a","n","c","BeamImpactOverview","LitElement","DEFAULT_BASE_URL","enforceConfig","getImpact","WIDGET_NAMES","AsyncController","debounce","syncElementHeights","SUPPORTED_LANGUAGES","changedProperties","requireNewDataProps","prop","callback","logger","imageUrl","title","percentFunded","goalProgressText","description","urlCopy","impactUrl","isImage","cardType","html","unsafeHTML","localizeUserString","data","loading","error","_loading","_errorMessage","brandName","cardStyle","isSelectedIcon","personalImageUrl","communityImageUrl","iconUrl","selectedIconUrl","personalCardImage","communityCardImage","shareImage","showShare","showShareMobile","showShareDesktop","shareIcon","shareButtonVisibilityClass","defaults","partnerLogosConfigDefaults","progressBarConfigDefaults","shareButtonConfigDefaults","defineCustomText","remoteConfig","config","_cssVariableMap","cssReset","cssResponsiveUtils","css","useCustomText","__decorateClass","property","queryAll","defineCustomElement"],"mappings":"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"}