@foxy.io/elements 1.43.0-beta.2 → 1.43.0-beta.4

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 (372) hide show
  1. package/dist/cdn/foxy-access-recovery-form.js +1 -1
  2. package/dist/cdn/foxy-address-card.js +5 -5
  3. package/dist/cdn/foxy-address-form.js +1 -1
  4. package/dist/cdn/foxy-admin-subscription-card.js +1 -1
  5. package/dist/cdn/foxy-admin-subscription-form.js +1 -1
  6. package/dist/cdn/foxy-api-browser.js +1 -1
  7. package/dist/cdn/foxy-applied-coupon-code-card.js +1 -1
  8. package/dist/cdn/foxy-applied-coupon-code-form.js +1 -1
  9. package/dist/cdn/foxy-applied-tax-card.js +1 -1
  10. package/dist/cdn/foxy-attribute-card.js +1 -1
  11. package/dist/cdn/foxy-attribute-form.js +1 -1
  12. package/dist/cdn/foxy-billing-address-card.js +1 -1
  13. package/dist/cdn/foxy-cancellation-form.js +1 -1
  14. package/dist/cdn/foxy-cart-card.js +1 -1
  15. package/dist/cdn/foxy-cart-form.js +2 -2
  16. package/dist/cdn/foxy-client-card.js +1 -1
  17. package/dist/cdn/foxy-client-form.js +1 -1
  18. package/dist/cdn/foxy-collection-page.js +1 -1
  19. package/dist/cdn/foxy-collection-pages.js +1 -1
  20. package/dist/cdn/foxy-copy-to-clipboard.js +1 -1
  21. package/dist/cdn/foxy-coupon-card.js +1 -1
  22. package/dist/cdn/foxy-coupon-code-card.js +1 -1
  23. package/dist/cdn/foxy-coupon-code-form.js +1 -1
  24. package/dist/cdn/foxy-coupon-codes-form.js +1 -1
  25. package/dist/cdn/foxy-coupon-detail-card.js +1 -1
  26. package/dist/cdn/foxy-coupon-form.js +1 -1
  27. package/dist/cdn/foxy-custom-field-card.js +1 -1
  28. package/dist/cdn/foxy-custom-field-form.js +1 -1
  29. package/dist/cdn/foxy-customer-api.js +1 -1
  30. package/dist/cdn/foxy-customer-card.js +1 -1
  31. package/dist/cdn/foxy-customer-form.js +1 -1
  32. package/dist/cdn/foxy-customer-portal-settings-form.js +1 -1
  33. package/dist/cdn/foxy-customer-portal-settings.js +1 -1
  34. package/dist/cdn/foxy-customer-portal.js +4 -4
  35. package/dist/cdn/foxy-customer.js +5 -5
  36. package/dist/cdn/foxy-customers-table.js +1 -1
  37. package/dist/cdn/foxy-discount-builder.js +1 -1
  38. package/dist/cdn/foxy-discount-card.js +1 -1
  39. package/dist/cdn/foxy-discount-detail-card.js +1 -1
  40. package/dist/cdn/foxy-donation.js +1 -1
  41. package/dist/cdn/foxy-downloadable-card.js +1 -1
  42. package/dist/cdn/foxy-downloadable-form.js +2 -2
  43. package/dist/cdn/foxy-email-template-card.js +1 -1
  44. package/dist/cdn/foxy-email-template-form.js +1 -1
  45. package/dist/cdn/foxy-error-entry-card.js +1 -1
  46. package/dist/cdn/foxy-experimental-add-to-cart-builder.js +1 -1
  47. package/dist/cdn/foxy-filter-attribute-card.js +1 -1
  48. package/dist/cdn/foxy-filter-attribute-form.js +1 -1
  49. package/dist/cdn/foxy-form-dialog.js +1 -1
  50. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  51. package/dist/cdn/foxy-gift-card-card.js +1 -1
  52. package/dist/cdn/foxy-gift-card-code-card.js +1 -1
  53. package/dist/cdn/foxy-gift-card-code-form.js +1 -1
  54. package/dist/cdn/foxy-gift-card-code-log-card.js +1 -1
  55. package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
  56. package/dist/cdn/foxy-gift-card-form.js +1 -1
  57. package/dist/cdn/foxy-i18n-editor.js +3 -3
  58. package/dist/cdn/foxy-i18n.js +1 -1
  59. package/dist/cdn/foxy-integration-card.js +1 -1
  60. package/dist/cdn/foxy-integration-form.js +1 -1
  61. package/dist/cdn/foxy-item-card.js +1 -1
  62. package/dist/cdn/foxy-item-category-card.js +1 -1
  63. package/dist/cdn/foxy-item-category-form.js +1 -1
  64. package/dist/cdn/foxy-item-form.js +1 -1
  65. package/dist/cdn/foxy-item-option-card.js +1 -1
  66. package/dist/cdn/foxy-item-option-form.js +1 -1
  67. package/dist/cdn/foxy-items-form.js +1 -1
  68. package/dist/cdn/foxy-native-integration-card.js +1 -1
  69. package/dist/cdn/foxy-native-integration-form.js +1 -1
  70. package/dist/cdn/foxy-nucleon-element.js +1 -1
  71. package/dist/cdn/foxy-pagination.js +1 -1
  72. package/dist/cdn/foxy-passkey-card.js +1 -1
  73. package/dist/cdn/foxy-passkey-form.js +1 -1
  74. package/dist/cdn/foxy-payment-card-embed.js +1 -1
  75. package/dist/cdn/foxy-payment-card.js +1 -1
  76. package/dist/cdn/foxy-payment-method-card.js +1 -1
  77. package/dist/cdn/foxy-payments-api-fraud-protection-card.js +1 -1
  78. package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
  79. package/dist/cdn/foxy-payments-api-payment-method-card.js +1 -1
  80. package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
  81. package/dist/cdn/foxy-payments-api-payment-preset-card.js +1 -1
  82. package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
  83. package/dist/cdn/foxy-payments-api.js +1 -1
  84. package/dist/cdn/foxy-query-builder.js +1 -1
  85. package/dist/cdn/foxy-report-form.js +2 -2
  86. package/dist/cdn/foxy-reports-table.js +6 -6
  87. package/dist/cdn/foxy-shipment-card.js +1 -1
  88. package/dist/cdn/foxy-shipping-container-card.js +1 -1
  89. package/dist/cdn/foxy-shipping-drop-type-card.js +1 -1
  90. package/dist/cdn/foxy-shipping-method-card.js +1 -1
  91. package/dist/cdn/foxy-shipping-service-card.js +1 -1
  92. package/dist/cdn/foxy-sign-in-form.js +1 -1
  93. package/dist/cdn/foxy-spinner.js +1 -1
  94. package/dist/cdn/foxy-store-card.js +1 -1
  95. package/dist/cdn/foxy-store-form.js +1 -1
  96. package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
  97. package/dist/cdn/foxy-subscription-card.js +1 -1
  98. package/dist/cdn/foxy-subscription-form.js +1 -1
  99. package/dist/cdn/foxy-subscription-settings-form.js +1 -1
  100. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  101. package/dist/cdn/foxy-table.js +1 -1
  102. package/dist/cdn/foxy-tax-card.js +1 -1
  103. package/dist/cdn/foxy-tax-form.js +1 -1
  104. package/dist/cdn/foxy-template-config-form.js +1 -1
  105. package/dist/cdn/foxy-template-form.js +1 -1
  106. package/dist/cdn/foxy-template-set-card.js +1 -1
  107. package/dist/cdn/foxy-template-set-form.js +1 -1
  108. package/dist/cdn/foxy-transaction-card.js +1 -1
  109. package/dist/cdn/foxy-transaction.js +1 -1
  110. package/dist/cdn/foxy-transactions-table.js +7 -7
  111. package/dist/cdn/foxy-update-payment-method-form.js +1 -1
  112. package/dist/cdn/foxy-user-card.js +1 -1
  113. package/dist/cdn/foxy-user-form.js +1 -1
  114. package/dist/cdn/foxy-user-invitation-card.js +1 -1
  115. package/dist/cdn/foxy-user-invitation-form.js +1 -1
  116. package/dist/cdn/foxy-users-table.js +1 -1
  117. package/dist/cdn/foxy-webhook-card.js +1 -1
  118. package/dist/cdn/foxy-webhook-form.js +1 -1
  119. package/dist/cdn/foxy-webhook-log-card.js +1 -1
  120. package/dist/cdn/foxy-webhook-status-card.js +1 -1
  121. package/dist/cdn/{shared-ffd5932d.js → shared-070211c0.js} +1 -1
  122. package/dist/cdn/{shared-0224f0b8.js → shared-0e605594.js} +1 -1
  123. package/dist/cdn/{shared-2aa23b5f.js → shared-0ea750af.js} +1 -1
  124. package/dist/cdn/{shared-6033e09d.js → shared-0fa21237.js} +1 -1
  125. package/dist/cdn/{shared-8f009bbb.js → shared-0fb90a71.js} +1 -1
  126. package/dist/cdn/{shared-eb963ba3.js → shared-12973e93.js} +1 -1
  127. package/dist/cdn/{shared-6962f117.js → shared-140c6b70.js} +1 -1
  128. package/dist/cdn/{shared-bb6d7b97.js → shared-160072f2.js} +1 -1
  129. package/dist/cdn/shared-1b4a3e56.js +1 -0
  130. package/dist/cdn/shared-1da47f50.js +1 -0
  131. package/dist/cdn/{shared-9342ca50.js → shared-1f95aa71.js} +1 -1
  132. package/dist/cdn/shared-2061be9a.js +1 -0
  133. package/dist/cdn/{shared-9b9d5ff1.js → shared-28253ef3.js} +1 -1
  134. package/dist/cdn/{shared-cae7a43b.js → shared-2b328555.js} +1 -1
  135. package/dist/cdn/{shared-4dd24dda.js → shared-2c7e0ed1.js} +1 -1
  136. package/dist/cdn/shared-2d3bdc6b.js +1 -0
  137. package/dist/cdn/{shared-70e6f32c.js → shared-34a7df04.js} +1 -1
  138. package/dist/cdn/{shared-74d599dc.js → shared-364b98a1.js} +1 -1
  139. package/dist/cdn/{shared-5e4a03d1.js → shared-37869bac.js} +1 -1
  140. package/dist/cdn/{shared-99a8889a.js → shared-3b4148ad.js} +1 -1
  141. package/dist/cdn/{shared-5f8c01f8.js → shared-3c64ecdd.js} +1 -1
  142. package/dist/cdn/{shared-6b3fed56.js → shared-3eb6e232.js} +1 -1
  143. package/dist/cdn/{shared-9c010e0a.js → shared-3f4549ba.js} +1 -1
  144. package/dist/cdn/{shared-66201dc5.js → shared-4388f7ea.js} +1 -1
  145. package/dist/cdn/{shared-4b393539.js → shared-46a20973.js} +1 -1
  146. package/dist/cdn/{shared-bedc5e82.js → shared-48129732.js} +1 -1
  147. package/dist/cdn/{shared-2828fcbf.js → shared-50a355d6.js} +1 -1
  148. package/dist/cdn/{shared-4cafa2e7.js → shared-5492f8eb.js} +1 -1
  149. package/dist/cdn/shared-5905fca4.js +1 -0
  150. package/dist/cdn/{shared-8a0bd046.js → shared-59c064c2.js} +1 -1
  151. package/dist/cdn/{shared-2f8e53c0.js → shared-5a6e4a7b.js} +1 -1
  152. package/dist/cdn/{shared-567ba8ae.js → shared-5af5ab06.js} +1 -1
  153. package/dist/cdn/{shared-ad60e8d1.js → shared-6313b188.js} +2 -2
  154. package/dist/cdn/shared-65b2760f.js +1 -0
  155. package/dist/cdn/{shared-89d4000a.js → shared-69c7ad04.js} +1 -1
  156. package/dist/cdn/{shared-e88763ec.js → shared-742899dc.js} +1 -1
  157. package/dist/cdn/{shared-b1435a0a.js → shared-7d1512e1.js} +1 -1
  158. package/dist/cdn/{shared-673d668a.js → shared-7dc40542.js} +1 -1
  159. package/dist/cdn/{shared-9dc36194.js → shared-7e18a7d9.js} +1 -1
  160. package/dist/cdn/shared-7fec42f2.js +15 -0
  161. package/dist/cdn/{shared-656a46f7.js → shared-8530fbae.js} +2 -2
  162. package/dist/cdn/{shared-c832f3a1.js → shared-88a1cb23.js} +1 -1
  163. package/dist/cdn/{shared-d68c6616.js → shared-8a570d01.js} +1 -1
  164. package/dist/cdn/{shared-94716ec1.js → shared-8a743005.js} +1 -1
  165. package/dist/cdn/{shared-e2d3c014.js → shared-9884fb7d.js} +1 -1
  166. package/dist/cdn/{shared-a4216b50.js → shared-9bfb584b.js} +1 -1
  167. package/dist/cdn/{shared-264e8301.js → shared-a0fbe3ef.js} +5 -5
  168. package/dist/cdn/shared-a16ef278.js +1 -0
  169. package/dist/cdn/{shared-a507d54f.js → shared-a41ccdc7.js} +4 -4
  170. package/dist/cdn/{shared-8ea2bbcc.js → shared-a4871405.js} +1 -1
  171. package/dist/cdn/{shared-aa6dab90.js → shared-a89e8a07.js} +2 -2
  172. package/dist/cdn/{shared-678beccf.js → shared-acee789f.js} +3 -3
  173. package/dist/cdn/{shared-dc4d2996.js → shared-ad8d209a.js} +1 -1
  174. package/dist/cdn/{shared-1cd02e50.js → shared-b15efc37.js} +1 -1
  175. package/dist/cdn/shared-be30b940.js +1 -0
  176. package/dist/cdn/{shared-41208627.js → shared-c16f05d9.js} +1 -1
  177. package/dist/cdn/{shared-5afb584d.js → shared-c782b9fa.js} +1 -1
  178. package/dist/cdn/{shared-c502de27.js → shared-ce0df878.js} +1 -1
  179. package/dist/cdn/{shared-9171c265.js → shared-cf6122d9.js} +1 -1
  180. package/dist/cdn/{shared-dd303282.js → shared-d3aefd9b.js} +1 -1
  181. package/dist/cdn/{shared-e6a1eef8.js → shared-d3f37507.js} +1 -1
  182. package/dist/cdn/{shared-fed829c2.js → shared-d4928805.js} +1 -1
  183. package/dist/cdn/{shared-7594e563.js → shared-d6a0954b.js} +1 -1
  184. package/dist/cdn/{shared-d7d949bc.js → shared-d8b0432a.js} +1 -1
  185. package/dist/cdn/shared-da95bb48.js +1 -0
  186. package/dist/cdn/{shared-274dec57.js → shared-db50afd9.js} +1 -1
  187. package/dist/cdn/shared-dc1fc2e6.js +1 -0
  188. package/dist/cdn/shared-dfe59df6.js +1 -0
  189. package/dist/cdn/{shared-7fd51889.js → shared-e02936f0.js} +1 -1
  190. package/dist/cdn/{shared-a6c75cc0.js → shared-e126cf44.js} +1 -1
  191. package/dist/cdn/shared-e1e4d8f5.js +1 -0
  192. package/dist/cdn/shared-e82550b1.js +40 -0
  193. package/dist/cdn/{shared-44b46fef.js → shared-ebfb86b5.js} +1 -1
  194. package/dist/cdn/{shared-0d0585dc.js → shared-f2be9863.js} +1 -1
  195. package/dist/cdn/shared-f2e8070b.js +1 -0
  196. package/dist/cdn/shared-f3590d20.js +15 -0
  197. package/dist/cdn/{shared-cc4b3b42.js → shared-f7b4a4f6.js} +1 -1
  198. package/dist/cdn/shared-f8e1143e.js +1 -0
  199. package/dist/cdn/{shared-2cb397e4.js → shared-fa482a7d.js} +1 -1
  200. package/dist/cdn/translations/cart-form/en.json +42 -41
  201. package/dist/cdn/translations/coupon-form/en.json +38 -26
  202. package/dist/cdn/translations/customer/en.json +14 -17
  203. package/dist/cdn/translations/filter-attribute-form/en.json +19 -14
  204. package/dist/cdn/translations/gift-card-code-form/en.json +14 -16
  205. package/dist/cdn/translations/gift-card-form/en.json +33 -32
  206. package/dist/cdn/translations/payment-method-card/en.json +14 -17
  207. package/dist/cdn/translations/query-builder/en.json +15 -13
  208. package/dist/cdn/translations/update-payment-method-form/en.json +14 -17
  209. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControlFilterOverlay.js +1 -1
  210. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControlFilterOverlay.js.map +1 -1
  211. package/dist/elements/internal/InternalEditableListControl/InternalEditableListControl.js +5 -4
  212. package/dist/elements/internal/InternalEditableListControl/InternalEditableListControl.js.map +1 -1
  213. package/dist/elements/internal/InternalNumberControl/InternalNumberControl.js +9 -10
  214. package/dist/elements/internal/InternalNumberControl/InternalNumberControl.js.map +1 -1
  215. package/dist/elements/internal/InternalSummaryControl/InternalSummaryControl.js +7 -7
  216. package/dist/elements/internal/InternalSummaryControl/InternalSummaryControl.js.map +1 -1
  217. package/dist/elements/public/CouponForm/CouponForm.js +4 -4
  218. package/dist/elements/public/CouponForm/CouponForm.js.map +1 -1
  219. package/dist/elements/public/Donation/Donation.d.ts +3 -0
  220. package/dist/elements/public/Donation/Donation.js +19 -0
  221. package/dist/elements/public/Donation/Donation.js.map +1 -1
  222. package/dist/elements/public/FilterAttributeForm/FilterAttributeForm.d.ts +2 -2
  223. package/dist/elements/public/FilterAttributeForm/FilterAttributeForm.js +59 -24
  224. package/dist/elements/public/FilterAttributeForm/FilterAttributeForm.js.map +1 -1
  225. package/dist/elements/public/FilterAttributeForm/index.d.ts +2 -2
  226. package/dist/elements/public/FilterAttributeForm/index.js +2 -2
  227. package/dist/elements/public/FilterAttributeForm/index.js.map +1 -1
  228. package/dist/elements/public/GiftCardForm/GiftCardForm.js +5 -5
  229. package/dist/elements/public/GiftCardForm/GiftCardForm.js.map +1 -1
  230. package/dist/elements/public/QueryBuilder/QueryBuilder.d.ts +16 -7
  231. package/dist/elements/public/QueryBuilder/QueryBuilder.js +155 -33
  232. package/dist/elements/public/QueryBuilder/QueryBuilder.js.map +1 -1
  233. package/dist/elements/public/QueryBuilder/components/AdvancedGroup.d.ts +16 -0
  234. package/dist/elements/public/QueryBuilder/components/AdvancedGroup.js +78 -0
  235. package/dist/elements/public/QueryBuilder/components/AdvancedGroup.js.map +1 -0
  236. package/dist/elements/public/QueryBuilder/components/AdvancedInput.d.ts +12 -0
  237. package/dist/elements/public/QueryBuilder/components/AdvancedInput.js +50 -0
  238. package/dist/elements/public/QueryBuilder/components/AdvancedInput.js.map +1 -0
  239. package/dist/elements/public/QueryBuilder/components/AdvancedOperatorToggle.d.ts +14 -0
  240. package/dist/elements/public/QueryBuilder/components/AdvancedOperatorToggle.js +41 -0
  241. package/dist/elements/public/QueryBuilder/components/AdvancedOperatorToggle.js.map +1 -0
  242. package/dist/elements/public/QueryBuilder/components/AdvancedRule.d.ts +18 -0
  243. package/dist/elements/public/QueryBuilder/components/{Rule.js → AdvancedRule.js} +50 -59
  244. package/dist/elements/public/QueryBuilder/components/AdvancedRule.js.map +1 -0
  245. package/dist/elements/public/QueryBuilder/components/SimpleAttributeRule.d.ts +2 -0
  246. package/dist/elements/public/QueryBuilder/components/SimpleAttributeRule.js +78 -0
  247. package/dist/elements/public/QueryBuilder/components/SimpleAttributeRule.js.map +1 -0
  248. package/dist/elements/public/QueryBuilder/components/SimpleBooleanRule.d.ts +2 -0
  249. package/dist/elements/public/QueryBuilder/components/SimpleBooleanRule.js +16 -0
  250. package/dist/elements/public/QueryBuilder/components/SimpleBooleanRule.js.map +1 -0
  251. package/dist/elements/public/QueryBuilder/components/SimpleDateRule.d.ts +2 -0
  252. package/dist/elements/public/QueryBuilder/components/SimpleDateRule.js +111 -0
  253. package/dist/elements/public/QueryBuilder/components/SimpleDateRule.js.map +1 -0
  254. package/dist/elements/public/QueryBuilder/components/SimpleGroup.d.ts +14 -0
  255. package/dist/elements/public/QueryBuilder/components/SimpleGroup.js +111 -0
  256. package/dist/elements/public/QueryBuilder/components/SimpleGroup.js.map +1 -0
  257. package/dist/elements/public/QueryBuilder/components/SimpleInput.d.ts +15 -0
  258. package/dist/elements/public/QueryBuilder/components/SimpleInput.js +50 -0
  259. package/dist/elements/public/QueryBuilder/components/SimpleInput.js.map +1 -0
  260. package/dist/elements/public/QueryBuilder/components/SimpleListRule.d.ts +2 -0
  261. package/dist/elements/public/QueryBuilder/components/SimpleListRule.js +45 -0
  262. package/dist/elements/public/QueryBuilder/components/SimpleListRule.js.map +1 -0
  263. package/dist/elements/public/QueryBuilder/components/SimpleNumberRule.d.ts +2 -0
  264. package/dist/elements/public/QueryBuilder/components/SimpleNumberRule.js +100 -0
  265. package/dist/elements/public/QueryBuilder/components/SimpleNumberRule.js.map +1 -0
  266. package/dist/elements/public/QueryBuilder/components/SimpleSelect.d.ts +24 -0
  267. package/dist/elements/public/QueryBuilder/components/SimpleSelect.js +45 -0
  268. package/dist/elements/public/QueryBuilder/components/SimpleSelect.js.map +1 -0
  269. package/dist/elements/public/QueryBuilder/components/SimpleStringRule.d.ts +2 -0
  270. package/dist/elements/public/QueryBuilder/components/SimpleStringRule.js +46 -0
  271. package/dist/elements/public/QueryBuilder/components/SimpleStringRule.js.map +1 -0
  272. package/dist/elements/public/QueryBuilder/icons/field.d.ts +1 -0
  273. package/dist/elements/public/QueryBuilder/icons/{typeAny.js → field.js} +2 -2
  274. package/dist/elements/public/QueryBuilder/icons/field.js.map +1 -0
  275. package/dist/elements/public/QueryBuilder/icons/index.d.ts +1 -6
  276. package/dist/elements/public/QueryBuilder/icons/index.js +1 -6
  277. package/dist/elements/public/QueryBuilder/icons/index.js.map +1 -1
  278. package/dist/elements/public/QueryBuilder/index.d.ts +2 -0
  279. package/dist/elements/public/QueryBuilder/index.js +2 -0
  280. package/dist/elements/public/QueryBuilder/index.js.map +1 -1
  281. package/dist/elements/public/QueryBuilder/styles.js +23 -0
  282. package/dist/elements/public/QueryBuilder/styles.js.map +1 -1
  283. package/dist/elements/public/QueryBuilder/types.d.ts +24 -6
  284. package/dist/elements/public/QueryBuilder/types.js.map +1 -1
  285. package/dist/elements/public/QueryBuilder/utils/parse.d.ts +2 -2
  286. package/dist/elements/public/QueryBuilder/utils/parse.js +19 -16
  287. package/dist/elements/public/QueryBuilder/utils/parse.js.map +1 -1
  288. package/dist/elements/public/QueryBuilder/utils/stringify.d.ts +2 -2
  289. package/dist/elements/public/QueryBuilder/utils/stringify.js +22 -45
  290. package/dist/elements/public/QueryBuilder/utils/stringify.js.map +1 -1
  291. package/dist/elements/public/QueryBuilder/utils/zoom.d.ts +3 -0
  292. package/dist/elements/public/QueryBuilder/utils/zoom.js +29 -0
  293. package/dist/elements/public/QueryBuilder/utils/zoom.js.map +1 -0
  294. package/dist/mixins/themeable.js +17 -18
  295. package/dist/mixins/themeable.js.map +1 -1
  296. package/package.json +1 -1
  297. package/dist/cdn/shared-0aedd809.js +0 -1
  298. package/dist/cdn/shared-210abb90.js +0 -64
  299. package/dist/cdn/shared-2f5cc0e2.js +0 -1
  300. package/dist/cdn/shared-343d1fd7.js +0 -1
  301. package/dist/cdn/shared-4a38cb3e.js +0 -1
  302. package/dist/cdn/shared-4c764a91.js +0 -1
  303. package/dist/cdn/shared-5592ec6e.js +0 -1
  304. package/dist/cdn/shared-5ef40e86.js +0 -1
  305. package/dist/cdn/shared-79d0699c.js +0 -1
  306. package/dist/cdn/shared-87b93771.js +0 -1
  307. package/dist/cdn/shared-894c69f8.js +0 -1
  308. package/dist/cdn/shared-97e2abfb.js +0 -1
  309. package/dist/cdn/shared-c31c50e2.js +0 -1
  310. package/dist/cdn/shared-cb58dfcd.js +0 -15
  311. package/dist/cdn/shared-d0363ae9.js +0 -1
  312. package/dist/cdn/shared-ef4ad461.js +0 -1
  313. package/dist/cdn/shared-f7bfb29e.js +0 -15
  314. package/dist/cdn/shared-f83207fb.js +0 -1
  315. package/dist/elements/public/FilterAttributeForm/internal/InternalFilterAttributeFormActionControl/InternalFilterAttributeFormActionControl.d.ts +0 -5
  316. package/dist/elements/public/FilterAttributeForm/internal/InternalFilterAttributeFormActionControl/InternalFilterAttributeFormActionControl.js +0 -34
  317. package/dist/elements/public/FilterAttributeForm/internal/InternalFilterAttributeFormActionControl/InternalFilterAttributeFormActionControl.js.map +0 -1
  318. package/dist/elements/public/FilterAttributeForm/internal/InternalFilterAttributeFormActionControl/index.d.ts +0 -5
  319. package/dist/elements/public/FilterAttributeForm/internal/InternalFilterAttributeFormActionControl/index.js +0 -7
  320. package/dist/elements/public/FilterAttributeForm/internal/InternalFilterAttributeFormActionControl/index.js.map +0 -1
  321. package/dist/elements/public/QueryBuilder/components/BooleanValue.d.ts +0 -12
  322. package/dist/elements/public/QueryBuilder/components/BooleanValue.js +0 -21
  323. package/dist/elements/public/QueryBuilder/components/BooleanValue.js.map +0 -1
  324. package/dist/elements/public/QueryBuilder/components/Group.d.ts +0 -15
  325. package/dist/elements/public/QueryBuilder/components/Group.js +0 -95
  326. package/dist/elements/public/QueryBuilder/components/Group.js.map +0 -1
  327. package/dist/elements/public/QueryBuilder/components/Input.d.ts +0 -19
  328. package/dist/elements/public/QueryBuilder/components/Input.js +0 -109
  329. package/dist/elements/public/QueryBuilder/components/Input.js.map +0 -1
  330. package/dist/elements/public/QueryBuilder/components/IsDefinedValue.d.ts +0 -11
  331. package/dist/elements/public/QueryBuilder/components/IsDefinedValue.js +0 -16
  332. package/dist/elements/public/QueryBuilder/components/IsDefinedValue.js.map +0 -1
  333. package/dist/elements/public/QueryBuilder/components/ListValue.d.ts +0 -12
  334. package/dist/elements/public/QueryBuilder/components/ListValue.js +0 -48
  335. package/dist/elements/public/QueryBuilder/components/ListValue.js.map +0 -1
  336. package/dist/elements/public/QueryBuilder/components/Name.d.ts +0 -11
  337. package/dist/elements/public/QueryBuilder/components/Name.js +0 -14
  338. package/dist/elements/public/QueryBuilder/components/Name.js.map +0 -1
  339. package/dist/elements/public/QueryBuilder/components/OperatorToggle.d.ts +0 -13
  340. package/dist/elements/public/QueryBuilder/components/OperatorToggle.js +0 -63
  341. package/dist/elements/public/QueryBuilder/components/OperatorToggle.js.map +0 -1
  342. package/dist/elements/public/QueryBuilder/components/Path.d.ts +0 -13
  343. package/dist/elements/public/QueryBuilder/components/Path.js +0 -16
  344. package/dist/elements/public/QueryBuilder/components/Path.js.map +0 -1
  345. package/dist/elements/public/QueryBuilder/components/RangeValue.d.ts +0 -12
  346. package/dist/elements/public/QueryBuilder/components/RangeValue.js +0 -49
  347. package/dist/elements/public/QueryBuilder/components/RangeValue.js.map +0 -1
  348. package/dist/elements/public/QueryBuilder/components/Rule.d.ts +0 -18
  349. package/dist/elements/public/QueryBuilder/components/Rule.js.map +0 -1
  350. package/dist/elements/public/QueryBuilder/components/Select.d.ts +0 -16
  351. package/dist/elements/public/QueryBuilder/components/Select.js +0 -86
  352. package/dist/elements/public/QueryBuilder/components/Select.js.map +0 -1
  353. package/dist/elements/public/QueryBuilder/components/SingleValue.d.ts +0 -12
  354. package/dist/elements/public/QueryBuilder/components/SingleValue.js +0 -21
  355. package/dist/elements/public/QueryBuilder/components/SingleValue.js.map +0 -1
  356. package/dist/elements/public/QueryBuilder/icons/typeAny.d.ts +0 -1
  357. package/dist/elements/public/QueryBuilder/icons/typeAny.js.map +0 -1
  358. package/dist/elements/public/QueryBuilder/icons/typeAttribute.d.ts +0 -1
  359. package/dist/elements/public/QueryBuilder/icons/typeAttribute.js +0 -8
  360. package/dist/elements/public/QueryBuilder/icons/typeAttribute.js.map +0 -1
  361. package/dist/elements/public/QueryBuilder/icons/typeBoolean.d.ts +0 -1
  362. package/dist/elements/public/QueryBuilder/icons/typeBoolean.js +0 -10
  363. package/dist/elements/public/QueryBuilder/icons/typeBoolean.js.map +0 -1
  364. package/dist/elements/public/QueryBuilder/icons/typeDate.d.ts +0 -1
  365. package/dist/elements/public/QueryBuilder/icons/typeDate.js +0 -7
  366. package/dist/elements/public/QueryBuilder/icons/typeDate.js.map +0 -1
  367. package/dist/elements/public/QueryBuilder/icons/typeNumber.d.ts +0 -1
  368. package/dist/elements/public/QueryBuilder/icons/typeNumber.js +0 -7
  369. package/dist/elements/public/QueryBuilder/icons/typeNumber.js.map +0 -1
  370. package/dist/elements/public/QueryBuilder/icons/typeString.d.ts +0 -1
  371. package/dist/elements/public/QueryBuilder/icons/typeString.js +0 -7
  372. package/dist/elements/public/QueryBuilder/icons/typeString.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import"./foxy-customer.js";import"./shared-1cd02e50.js";import"./shared-e2d3c014.js";import"./shared-dc4d2996.js";import"./shared-9b9d5ff1.js";import"./shared-5212ef4f.js";import{I as e}from"./shared-ffd5932d.js";import"./foxy-access-recovery-form.js";import"./foxy-payment-method-card.js";import{TransactionsTable as t}from"./foxy-transactions-table.js";import"./foxy-subscription-card.js";import"./foxy-subscription-form.js";import"./foxy-collection-pages.js";import"./foxy-collection-page.js";import{u as s}from"./shared-cae7a43b.js";import"./foxy-sign-in-form.js";import"./foxy-form-dialog.js";import"./foxy-spinner.js";import"./shared-2f5cc0e2.js";import{_ as r,B as o,aH as i}from"./shared-cb58dfcd.js";import{h as a,L as n,c as d}from"./shared-ba5c42c7.js";import{A as l}from"./shared-99a8889a.js";import"./shared-673d668a.js";import{C as c}from"./shared-d0363ae9.js";import{a as m,T as u}from"./shared-aa6dab90.js";import{U as p}from"./shared-cd96ff03.js";import{i as h}from"./shared-53e42a77.js";import{c as f}from"./shared-4e709717.js";import{A as g}from"./shared-5592ec6e.js";import{C as y}from"./shared-5afb584d.js";import{I as $}from"./shared-2aa23b5f.js";import"./shared-567ba8ae.js";import"./foxy-update-payment-method-form.js";import"./shared-4c764a91.js";import"./shared-656a46f7.js";import"./shared-9c010e0a.js";import"./shared-e6a1eef8.js";import"./shared-ad60e8d1.js";import"./shared-0d0585dc.js";import"./shared-d7d949bc.js";import"./shared-8a0bd046.js";import"./shared-9342ca50.js";import"./shared-7fd51889.js";import"./shared-a4216b50.js";import"./shared-c502de27.js";import"./shared-5f8c01f8.js";import"./shared-f7bfb29e.js";import"./shared-cc4b3b42.js";import"./shared-f83207fb.js";import"./shared-343d1fd7.js";import"./shared-5e4a03d1.js";import"./shared-7594e563.js";import"./shared-0aedd809.js";import"./shared-5ef40e86.js";import"./foxy-swipe-actions.js";import"./foxy-pagination.js";import"./shared-94716ec1.js";import"./shared-678beccf.js";import"./shared-6033e09d.js";import"./shared-2f8e53c0.js";import"./shared-c31c50e2.js";import"./foxy-copy-to-clipboard.js";import"./shared-9171c265.js";import"./shared-8ea2bbcc.js";import"./foxy-nucleon-element.js";import"./shared-53e476fd.js";import"./shared-bab2ea2c.js";import"./foxy-template-set-card.js";import"./shared-b1435a0a.js";import"./shared-bb6d7b97.js";import"./foxy-payment-card-embed.js";import"./shared-fed829c2.js";import"./shared-5fd5805c.js";import"./foxy-attribute-card.js";import"./foxy-attribute-form.js";import"./shared-274dec57.js";import"./shared-70e6f32c.js";import"./foxy-address-card.js";import"./foxy-address-form.js";import"./shared-a6c75cc0.js";import"./shared-66201dc5.js";import"./shared-d0aed1c1.js";import"./foxy-table.js";import"./shared-c832f3a1.js";import"./shared-74d599dc.js";import"./shared-2cb397e4.js";import"./shared-e88763ec.js";import"./shared-8f009bbb.js";import"./shared-4dd24dda.js";import"./shared-6962f117.js";import"./shared-4b393539.js";import"./shared-6b3fed56.js";import"./shared-97e2abfb.js";import"./shared-ada5e9f5.js";import"./shared-cf613436.js";import"./shared-0224f0b8.js";import"./shared-43e2c3f6.js";import"./shared-79d0699c.js";import"./foxy-transaction-card.js";import"./shared-894c69f8.js";import"./foxy-customer-card.js";import"./foxy-item-card.js";import"./shared-eb963ba3.js";import"./shared-a6b2bd14.js";import"./shared-bedc5e82.js";import"./shared-b738ee96.js";import"./shared-a507d54f.js";
1
+ import"./foxy-customer.js";import"./shared-b15efc37.js";import"./shared-9884fb7d.js";import"./shared-ad8d209a.js";import"./shared-28253ef3.js";import"./shared-5212ef4f.js";import{I as e}from"./shared-070211c0.js";import"./foxy-access-recovery-form.js";import"./foxy-payment-method-card.js";import{TransactionsTable as t}from"./foxy-transactions-table.js";import"./foxy-subscription-card.js";import"./foxy-subscription-form.js";import"./foxy-collection-pages.js";import"./foxy-collection-page.js";import{u as s}from"./shared-2b328555.js";import"./foxy-sign-in-form.js";import"./foxy-form-dialog.js";import"./foxy-spinner.js";import"./shared-1b4a3e56.js";import{_ as r,B as o,aI as i}from"./shared-7fec42f2.js";import{h as a,L as n,c as d}from"./shared-ba5c42c7.js";import{A as l}from"./shared-3b4148ad.js";import"./shared-7dc40542.js";import{C as c}from"./shared-be30b940.js";import{a as m,T as u}from"./shared-a89e8a07.js";import{U as p}from"./shared-cd96ff03.js";import{i as h}from"./shared-53e42a77.js";import{c as f}from"./shared-4e709717.js";import{A as g}from"./shared-65b2760f.js";import{C as y}from"./shared-c782b9fa.js";import{I as $}from"./shared-0ea750af.js";import"./shared-5af5ab06.js";import"./foxy-update-payment-method-form.js";import"./shared-f2e8070b.js";import"./shared-8530fbae.js";import"./shared-3f4549ba.js";import"./shared-d3f37507.js";import"./shared-6313b188.js";import"./shared-f2be9863.js";import"./shared-d8b0432a.js";import"./shared-59c064c2.js";import"./shared-1f95aa71.js";import"./shared-e02936f0.js";import"./shared-9bfb584b.js";import"./shared-ce0df878.js";import"./shared-3c64ecdd.js";import"./shared-f3590d20.js";import"./shared-f7b4a4f6.js";import"./shared-da95bb48.js";import"./shared-37869bac.js";import"./shared-d6a0954b.js";import"./shared-1da47f50.js";import"./shared-e1e4d8f5.js";import"./foxy-swipe-actions.js";import"./foxy-pagination.js";import"./shared-8a743005.js";import"./shared-acee789f.js";import"./shared-0fa21237.js";import"./shared-5a6e4a7b.js";import"./shared-a16ef278.js";import"./foxy-copy-to-clipboard.js";import"./shared-cf6122d9.js";import"./shared-a4871405.js";import"./foxy-nucleon-element.js";import"./shared-53e476fd.js";import"./shared-bab2ea2c.js";import"./foxy-template-set-card.js";import"./shared-7d1512e1.js";import"./shared-160072f2.js";import"./foxy-payment-card-embed.js";import"./shared-d4928805.js";import"./shared-5fd5805c.js";import"./foxy-attribute-card.js";import"./foxy-attribute-form.js";import"./shared-db50afd9.js";import"./shared-34a7df04.js";import"./foxy-address-card.js";import"./foxy-address-form.js";import"./shared-e126cf44.js";import"./shared-4388f7ea.js";import"./shared-d0aed1c1.js";import"./foxy-table.js";import"./shared-88a1cb23.js";import"./shared-364b98a1.js";import"./shared-fa482a7d.js";import"./shared-742899dc.js";import"./shared-0fb90a71.js";import"./shared-2c7e0ed1.js";import"./shared-140c6b70.js";import"./shared-46a20973.js";import"./shared-3eb6e232.js";import"./shared-2d3bdc6b.js";import"./shared-ada5e9f5.js";import"./shared-cf613436.js";import"./shared-0e605594.js";import"./shared-43e2c3f6.js";import"./shared-2061be9a.js";import"./foxy-transaction-card.js";import"./shared-dfe59df6.js";import"./foxy-customer-card.js";import"./foxy-item-card.js";import"./shared-12973e93.js";import"./shared-a6b2bd14.js";import"./shared-48129732.js";import"./shared-b738ee96.js";import"./shared-a41ccdc7.js";
2
2
  /*! *****************************************************************************
3
3
  Copyright (c) Microsoft Corporation.
4
4
 
@@ -12,7 +12,7 @@ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */function v(e,t){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return t.get(e)}function b(e,t,s){if(!t.has(e))throw new TypeError("attempted to set private field on non-instance");return t.set(e,s),s}let x,S,_,j=e=>e;var w;class T extends(m(u(c),"customer-portal")){constructor(){super(...arguments),this.transactionsTableColumns=[t.priceColumn,t.summaryColumn,t.statusColumn,t.idColumn,t.dateColumn,t.receiptColumn],w.set(this,null),this.skipPasswordReset=!1,this.embedUrl=null,this.group=""}static get properties(){return r(r({},super.properties),{},{transactionsTableColumns:{attribute:!1},skipPasswordReset:{type:Boolean,attribute:"skip-password-reset"},embedUrl:{attribute:"embed-url"},group:{type:String}})}render(){var e,t;let s;try{s=new URL("./customer_portal_settings",this.base)}catch(e){s=void 0}return this.api.storage.getItem(l.SESSION)?!this.skipPasswordReset&&this.api.usesTemporaryPassword&&v(this,w)?a(x||(x=j` <foxy-internal-customer-portal-password-reset-view password-old="${0}" infer="password-reset" href="${0}" @update="${0}" @skip="${0}"> </foxy-internal-customer-portal-password-reset-view> `),h(null!==(e=v(this,w))&&void 0!==e?e:void 0),this.base,this.__handlePasswordResetUpdate,this.__handlePasswordResetSkip):a(S||(S=j` <foxy-internal-customer-portal-logged-in-view embed-url="${0}" customer="${0}" class="h-full" infer="" href="${0}" .transactionsTableColumns="${0}"> </foxy-internal-customer-portal-logged-in-view> `),h(null!==(t=this.embedUrl)&&void 0!==t?t:void 0),this.base,h(null==s?void 0:s.toString()),this.transactionsTableColumns):a(_||(_=j` <foxy-internal-customer-portal-logged-out-view class="h-full" infer="" href="${0}" @password="${0}"> </foxy-internal-customer-portal-logged-out-view> `),h(null==s?void 0:s.toString()),(e=>{b(this,w,e.detail)}))}updated(e){super.updated(e);!(null!==this.api.storage.getItem(l.SESSION))||!this.skipPasswordReset&&this.api.usesTemporaryPassword||b(this,w,null)}__handlePasswordResetUpdate(e){var t;(null===(t=e.detail)||void 0===t?void 0:t.result)===p.UpdateResult.ResourceUpdated&&(this.api.usesTemporaryPassword=!1,b(this,w,null),this.requestUpdate(),this.dispatchEvent(new T.PasswordResetEvent("passwordreset",{detail:{result:"completed"}})))}__handlePasswordResetSkip(){b(this,w,null),this.requestUpdate(),this.dispatchEvent(new T.PasswordResetEvent("passwordreset",{detail:{result:"skipped"}}))}}w=new WeakMap,T.PasswordResetEvent=class extends CustomEvent{};let k,O,R,E,U=e=>e;class z extends(u(n)){constructor(){super(...arguments),this.disabled=!1,this.href="",this.icon=""}static get properties(){return r(r({},super.properties),{},{disabled:{type:Boolean},href:{type:String},icon:{type:String}})}render(){const e=f({"flex-auto leading-m font-medium tracking-wide text-m rounded-s transition-colors":!0,"text-primary hover-underline hover-cursor-pointer":!this.disabled,"focus-outline-none focus-ring-2 ring-primary-50 ring-offset-2":!this.disabled,"text-disabled cursor-default":this.disabled}),t=a(k||(k=U` ${0} <slot></slot> `),this.icon?a(O||(O=U`<iron-icon icon="${0}" class="icon-inline"></iron-icon>`),this.icon):"");return this.disabled?a(R||(R=U`<button class="${0}" disabled="disabled">${0}</button>`),e,t):a(E||(E=U` <a class="${0}" href="${0}" rel="nofollow noopener">${0}</a> `),e,this.href,t)}}let N,P,C,A,H,I,q,F,L=e=>e;const B=m(e);let D,G,J,M,W,K,Q,V,X,Y,Z,ee,te,se,re,oe=e=>e;const ie=m(e);const ae=["html"],ne=["html"];let de,le,ce,me,ue,pe,he,fe,ge,ye,$e,ve,be=e=>e;const xe=m(y(u($(n))));let Se,_e,je,we=e=>e;const Te=y(u(m($(n),"customer-portal")));let ke,Oe,Re=e=>e;const Ee=s.passwordStrength;class Ue extends(m(e)){constructor(){super(...arguments),this.passwordOld=null,this.__generatorOptions={checkStrength:e=>Ee(e).id>=2}}static get properties(){return r(r({},super.properties),{},{passwordOld:{attribute:"password-old"}})}static get styles(){return[super.styles,d(ke||(ke=Re`.max-w-25rem{max-width:25rem}`))]}static get v8n(){return[({password:e})=>!!e||"password:v8n_required",({password:e})=>!e||e.length<=50||"password:v8n_too_long",({password:e})=>!e||Ee(e).id>=2||"password:v8n_too_weak"]}renderBody(){return a(Oe||(Oe=Re` <div class="m-auto max-w-25rem leading-s"> <p class="text-xxl font-medium ${0}"> <foxy-i18n infer="" key="title"></foxy-i18n> </p> <p class="text-l ${0}"> <foxy-i18n infer="" key="subtitle"></foxy-i18n> </p> <foxy-internal-password-control infer="password" class="mt-m" show-generator .generatorOptions="${0}"> </foxy-internal-password-control> <vaadin-button class="w-full mt-l" theme="primary" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="" key="submit"></foxy-i18n> </vaadin-button> <vaadin-button class="w-full mt-s" theme="tertiary" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="" key="skip"></foxy-i18n> </vaadin-button> </div> `),this.in("busy")?"text-disabled":"text-body",this.in("busy")?"text-disabled":"text-secondary",this.__generatorOptions,this.disabled||!this.in("idle"),(()=>this.submit()),this.disabled||!this.in("idle"),(()=>this.dispatchEvent(new CustomEvent("skip"))))}submit(){var e;this.edit({password_old:null!==(e=this.passwordOld)&&void 0!==e?e:""}),super.submit()}async _fetch(...e){const t=new Request(...e);if("PATCH"!==t.method)return super._fetch(...e);const s=await t.json(),r=await super._fetch(...e);return r.password_old=s.password_old,r.password=s.password,r}}customElements.define("foxy-internal-customer-portal-logged-in-view",class extends B{constructor(){var e;super(...arguments),e=this,this.customer="",this.embedUrl=null,this.loggingOutState="idle",this.transactionsTableColumns=[],this.loggingOutStateResetTimeout=null,this.__renderHeaderActionsSignOut=()=>{var t,s,r,o,i;const n="customer:header:actions:sign-out",d=this.loggingOutState,l=this.disabledSelector.matches(n)||!(null===(t=this.__customerElement)||void 0===t?void 0:t.in({idle:"snapshot"}))||"idle"!==d,c={"border-radius":"100%",padding:"var(--lumo-space-xs)",display:"flex",margin:"0",cursor:l?"default":"pointer"};return a(N||(N=L` <div style="display:flex;margin-left:var(--lumo-space-m)"> ${0} <vaadin-button data-testid="sign-out" aria-label="${0}" style="${0}" theme="icon" ?disabled="${0}" @click="${0}"> ${0} </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot(`${n}:before`),this.t("sign_out").toString(),Object.entries(c).reduce(((e,[t,s])=>`${e}${t}:${s};`),""),l,(async function(){try{e.loggingOutState="busy",await new g(e).fetch("foxy://customer-api/session",{method:"DELETE"}),e.loggingOutState="idle"}catch(t){e.loggingOutState="fail",e.loggingOutStateResetTimeout=setTimeout((()=>{e.loggingOutState="idle",e.loggingOutStateResetTimeout=null}),1e3)}}),"idle"===d?a(P||(P=L`<iron-icon icon="icons:exit-to-app"></iron-icon>`)):a(C||(C=L` <foxy-spinner layout="no-label" state="${0}" style="margin:auto" lang="${0}" ns="${0}"> </foxy-spinner> `),"fail"===d?"error":"busy",this.lang,[this.ns,null!==(r=null===(s=customElements.get("foxy-customer"))||void 0===s?void 0:s.defaultNS)&&void 0!==r?r:"",null!==(i=null===(o=customElements.get("foxy-spinner"))||void 0===o?void 0:o.defaultNS)&&void 0!==i?i:""].join(" ")),this.renderTemplateOrSlot(`${n}:after`))},this.__renderSubscriptions=(e,t)=>{const s="customer:subscriptions";return e(A||(A=L`
15
+ ***************************************************************************** */function v(e,t){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return t.get(e)}function b(e,t,s){if(!t.has(e))throw new TypeError("attempted to set private field on non-instance");return t.set(e,s),s}let x,S,_,j=e=>e;var w;class T extends(m(u(c),"customer-portal")){constructor(){super(...arguments),this.transactionsTableColumns=[t.priceColumn,t.summaryColumn,t.statusColumn,t.idColumn,t.dateColumn,t.receiptColumn],w.set(this,null),this.skipPasswordReset=!1,this.embedUrl=null,this.group=""}static get properties(){return r(r({},super.properties),{},{transactionsTableColumns:{attribute:!1},skipPasswordReset:{type:Boolean,attribute:"skip-password-reset"},embedUrl:{attribute:"embed-url"},group:{type:String}})}render(){var e,t;let s;try{s=new URL("./customer_portal_settings",this.base)}catch(e){s=void 0}return this.api.storage.getItem(l.SESSION)?!this.skipPasswordReset&&this.api.usesTemporaryPassword&&v(this,w)?a(x||(x=j` <foxy-internal-customer-portal-password-reset-view password-old="${0}" infer="password-reset" href="${0}" @update="${0}" @skip="${0}"> </foxy-internal-customer-portal-password-reset-view> `),h(null!==(e=v(this,w))&&void 0!==e?e:void 0),this.base,this.__handlePasswordResetUpdate,this.__handlePasswordResetSkip):a(S||(S=j` <foxy-internal-customer-portal-logged-in-view embed-url="${0}" customer="${0}" class="h-full" infer="" href="${0}" .transactionsTableColumns="${0}"> </foxy-internal-customer-portal-logged-in-view> `),h(null!==(t=this.embedUrl)&&void 0!==t?t:void 0),this.base,h(null==s?void 0:s.toString()),this.transactionsTableColumns):a(_||(_=j` <foxy-internal-customer-portal-logged-out-view class="h-full" infer="" href="${0}" @password="${0}"> </foxy-internal-customer-portal-logged-out-view> `),h(null==s?void 0:s.toString()),(e=>{b(this,w,e.detail)}))}updated(e){super.updated(e);!(null!==this.api.storage.getItem(l.SESSION))||!this.skipPasswordReset&&this.api.usesTemporaryPassword||b(this,w,null)}__handlePasswordResetUpdate(e){var t;(null===(t=e.detail)||void 0===t?void 0:t.result)===p.UpdateResult.ResourceUpdated&&(this.api.usesTemporaryPassword=!1,b(this,w,null),this.requestUpdate(),this.dispatchEvent(new T.PasswordResetEvent("passwordreset",{detail:{result:"completed"}})))}__handlePasswordResetSkip(){b(this,w,null),this.requestUpdate(),this.dispatchEvent(new T.PasswordResetEvent("passwordreset",{detail:{result:"skipped"}}))}}w=new WeakMap,T.PasswordResetEvent=class extends CustomEvent{};let k,O,R,E,U=e=>e;class z extends(u(n)){constructor(){super(...arguments),this.disabled=!1,this.href="",this.icon=""}static get properties(){return r(r({},super.properties),{},{disabled:{type:Boolean},href:{type:String},icon:{type:String}})}render(){const e=f({"flex-auto leading-m font-medium tracking-wide text-m rounded-s transition-colors":!0,"text-primary hover-underline hover-cursor-pointer":!this.disabled,"focus-outline-none focus-ring-2 ring-primary-50 ring-offset-2":!this.disabled,"text-disabled cursor-default":this.disabled}),t=a(k||(k=U` ${0} <slot></slot> `),this.icon?a(O||(O=U`<iron-icon icon="${0}" class="icon-inline"></iron-icon>`),this.icon):"");return this.disabled?a(R||(R=U`<button class="${0}" disabled="disabled">${0}</button>`),e,t):a(E||(E=U` <a class="${0}" href="${0}" rel="nofollow noopener">${0}</a> `),e,this.href,t)}}let N,P,C,A,I,H,q,F,L=e=>e;const B=m(e);let D,G,J,M,W,K,Q,V,X,Y,Z,ee,te,se,re,oe=e=>e;const ie=m(e);const ae=["html"],ne=["html"];let de,le,ce,me,ue,pe,he,fe,ge,ye,$e,ve,be=e=>e;const xe=m(y(u($(n))));let Se,_e,je,we=e=>e;const Te=y(u(m($(n),"customer-portal")));let ke,Oe,Re=e=>e;const Ee=s.passwordStrength;class Ue extends(m(e)){constructor(){super(...arguments),this.passwordOld=null,this.__generatorOptions={checkStrength:e=>Ee(e).id>=2}}static get properties(){return r(r({},super.properties),{},{passwordOld:{attribute:"password-old"}})}static get styles(){return[super.styles,d(ke||(ke=Re`.max-w-25rem{max-width:25rem}`))]}static get v8n(){return[({password:e})=>!!e||"password:v8n_required",({password:e})=>!e||e.length<=50||"password:v8n_too_long",({password:e})=>!e||Ee(e).id>=2||"password:v8n_too_weak"]}renderBody(){return a(Oe||(Oe=Re` <div class="m-auto max-w-25rem leading-s"> <p class="text-xxl font-medium ${0}"> <foxy-i18n infer="" key="title"></foxy-i18n> </p> <p class="text-l ${0}"> <foxy-i18n infer="" key="subtitle"></foxy-i18n> </p> <foxy-internal-password-control infer="password" class="mt-m" show-generator .generatorOptions="${0}"> </foxy-internal-password-control> <vaadin-button class="w-full mt-l" theme="primary" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="" key="submit"></foxy-i18n> </vaadin-button> <vaadin-button class="w-full mt-s" theme="tertiary" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="" key="skip"></foxy-i18n> </vaadin-button> </div> `),this.in("busy")?"text-disabled":"text-body",this.in("busy")?"text-disabled":"text-secondary",this.__generatorOptions,this.disabled||!this.in("idle"),(()=>this.submit()),this.disabled||!this.in("idle"),(()=>this.dispatchEvent(new CustomEvent("skip"))))}submit(){var e;this.edit({password_old:null!==(e=this.passwordOld)&&void 0!==e?e:""}),super.submit()}async _fetch(...e){const t=new Request(...e);if("PATCH"!==t.method)return super._fetch(...e);const s=await t.json(),r=await super._fetch(...e);return r.password_old=s.password_old,r.password=s.password,r}}customElements.define("foxy-internal-customer-portal-logged-in-view",class extends B{constructor(){var e;super(...arguments),e=this,this.customer="",this.embedUrl=null,this.loggingOutState="idle",this.transactionsTableColumns=[],this.loggingOutStateResetTimeout=null,this.__renderHeaderActionsSignOut=()=>{var t,s,r,o,i;const n="customer:header:actions:sign-out",d=this.loggingOutState,l=this.disabledSelector.matches(n)||!(null===(t=this.__customerElement)||void 0===t?void 0:t.in({idle:"snapshot"}))||"idle"!==d,c={"border-radius":"100%",padding:"var(--lumo-space-xs)",display:"flex",margin:"0",cursor:l?"default":"pointer"};return a(N||(N=L` <div style="display:flex;margin-left:var(--lumo-space-m)"> ${0} <vaadin-button data-testid="sign-out" aria-label="${0}" style="${0}" theme="icon" ?disabled="${0}" @click="${0}"> ${0} </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot(`${n}:before`),this.t("sign_out").toString(),Object.entries(c).reduce(((e,[t,s])=>`${e}${t}:${s};`),""),l,(async function(){try{e.loggingOutState="busy",await new g(e).fetch("foxy://customer-api/session",{method:"DELETE"}),e.loggingOutState="idle"}catch(t){e.loggingOutState="fail",e.loggingOutStateResetTimeout=setTimeout((()=>{e.loggingOutState="idle",e.loggingOutStateResetTimeout=null}),1e3)}}),"idle"===d?a(P||(P=L`<iron-icon icon="icons:exit-to-app"></iron-icon>`)):a(C||(C=L` <foxy-spinner layout="no-label" state="${0}" style="margin:auto" lang="${0}" ns="${0}"> </foxy-spinner> `),"fail"===d?"error":"busy",this.lang,[this.ns,null!==(r=null===(s=customElements.get("foxy-customer"))||void 0===s?void 0:s.defaultNS)&&void 0!==r?r:"",null!==(i=null===(o=customElements.get("foxy-spinner"))||void 0===o?void 0:o.defaultNS)&&void 0!==i?i:""].join(" ")),this.renderTemplateOrSlot(`${n}:after`))},this.__renderSubscriptions=(e,t)=>{const s="customer:subscriptions";return e(A||(A=L`
16
16
  ${0}
17
17
 
18
18
  <foxy-internal-customer-portal-subscriptions
@@ -29,7 +29,7 @@ PERFORMANCE OF THIS SOFTWARE.
29
29
  </foxy-internal-customer-portal-subscriptions>
30
30
 
31
31
  ${0}
32
- `),this.renderTemplateOrSlot(`${s}:before`),this.readonlySelector.zoom(s).toString(),this.disabledSelector.zoom(s).toString(),this.hiddenSelector.zoom(s).toString(),t.group,t.lang,t.ns,this.getNestedTemplates(s),this.data,t.data,this.renderTemplateOrSlot(`${s}:after`))},this.__renderTransactions=(e,t)=>{const s="customer:transactions";return e(H||(H=L`
32
+ `),this.renderTemplateOrSlot(`${s}:before`),this.readonlySelector.zoom(s).toString(),this.disabledSelector.zoom(s).toString(),this.hiddenSelector.zoom(s).toString(),t.group,t.lang,t.ns,this.getNestedTemplates(s),this.data,t.data,this.renderTemplateOrSlot(`${s}:after`))},this.__renderTransactions=(e,t)=>{const s="customer:transactions";return e(I||(I=L`
33
33
  ${0}
34
34
 
35
35
  <foxy-internal-customer-portal-transactions
@@ -46,7 +46,7 @@ PERFORMANCE OF THIS SOFTWARE.
46
46
  </foxy-internal-customer-portal-transactions>
47
47
 
48
48
  ${0}
49
- `),this.renderTemplateOrSlot(`${s}:before`),this.readonlySelector.zoom(s).toString(),this.disabledSelector.zoom(s).toString(),this.hiddenSelector.zoom(s).toString(),t.group,t.lang,t.ns,this.getNestedTemplates(s),t.data,this.transactionsTableColumns,this.renderTemplateOrSlot(`${s}:after`))}}static get properties(){return r(r({},super.properties),{},{customer:{type:String},embedUrl:{attribute:"embed-url"},loggingOutState:{attribute:!1},transactionsTableColumns:{attribute:!1},loggingOutStateResetTimeout:{attribute:!1}})}renderBody(){var e,t,s;const r=this.hiddenSelector.zoom("customer"),i=new o(["attributes","transactions","subscriptions","addresses:actions:create","addresses:list:form:header","addresses:list:form:ignore-address-restrictions","payment-methods:list:card:actions:update:form:template-set","header:actions:edit:form:header","header:actions:edit:form:is-anonymous","header:actions:edit:form:forgot-password","header:actions:edit:form:create","header:actions:edit:form:delete",r.toString()].join(" ")).toString(),n=this.getNestedTemplates("customer"),d=n["header:actions:after"],l=n.default;return n["header:actions:after"]=(e,t)=>{const s=r.matches("header:actions:sign-out",!0);return e(I||(I=L`
49
+ `),this.renderTemplateOrSlot(`${s}:before`),this.readonlySelector.zoom(s).toString(),this.disabledSelector.zoom(s).toString(),this.hiddenSelector.zoom(s).toString(),t.group,t.lang,t.ns,this.getNestedTemplates(s),t.data,this.transactionsTableColumns,this.renderTemplateOrSlot(`${s}:after`))}}static get properties(){return r(r({},super.properties),{},{customer:{type:String},embedUrl:{attribute:"embed-url"},loggingOutState:{attribute:!1},transactionsTableColumns:{attribute:!1},loggingOutStateResetTimeout:{attribute:!1}})}renderBody(){var e,t,s;const r=this.hiddenSelector.zoom("customer"),i=new o(["attributes","transactions","subscriptions","addresses:actions:create","addresses:list:form:header","addresses:list:form:ignore-address-restrictions","payment-methods:list:card:actions:update:form:template-set","header:actions:edit:form:header","header:actions:edit:form:is-anonymous","header:actions:edit:form:forgot-password","header:actions:edit:form:create","header:actions:edit:form:delete",r.toString()].join(" ")).toString(),n=this.getNestedTemplates("customer"),d=n["header:actions:after"],l=n.default;return n["header:actions:after"]=(e,t)=>{const s=r.matches("header:actions:sign-out",!0);return e(H||(H=L`
50
50
  <div style="display:flex">
51
51
  ${0}
52
52
  ${0}
@@ -1,4 +1,4 @@
1
- import"./shared-dc4d2996.js";import"./shared-e2d3c014.js";import{h as t}from"./shared-567ba8ae.js";import"./shared-1cd02e50.js";import"./shared-5212ef4f.js";import"./foxy-payment-method-card.js";import"./foxy-update-payment-method-form.js";import"./foxy-subscription-form.js";import"./foxy-form-dialog.js";import"./foxy-transactions-table.js";import"./foxy-collection-pages.js";import"./foxy-collection-page.js";import"./foxy-attribute-card.js";import"./foxy-attribute-form.js";import"./shared-cae7a43b.js";import"./foxy-address-card.js";import"./foxy-address-form.js";import"./foxy-spinner.js";import"./foxy-table.js";import"./shared-2f5cc0e2.js";import{aH as e,_ as s}from"./shared-cb58dfcd.js";import{L as r,h as a,c as o}from"./shared-ba5c42c7.js";import{C as i}from"./shared-5afb584d.js";import"./shared-9c010e0a.js";import"./shared-8ea2bbcc.js";import{z as h,S as d,T as n,a as l}from"./shared-aa6dab90.js";import{c as m}from"./shared-4e709717.js";import{S as c}from"./shared-74d599dc.js";import"./shared-c31c50e2.js";import{G as v}from"./shared-4b393539.js";import"./shared-a4216b50.js";import"./shared-8a0bd046.js";import"./shared-5f8c01f8.js";import"./shared-fed829c2.js";import"./shared-9342ca50.js";import{N as p}from"./shared-f83207fb.js";import{S as f}from"./shared-6b3fed56.js";import{i as g}from"./shared-53e42a77.js";import"./shared-e6a1eef8.js";import"./shared-ad60e8d1.js";import"./shared-2f8e53c0.js";import"./shared-cf613436.js";import"./foxy-nucleon-element.js";import"./shared-5592ec6e.js";import"./shared-343d1fd7.js";import"./shared-cd96ff03.js";import"./shared-2aa23b5f.js";import"./shared-5e4a03d1.js";import"./shared-7594e563.js";import"./shared-0aedd809.js";import"./shared-5ef40e86.js";import"./shared-4c764a91.js";import"./shared-656a46f7.js";import"./shared-0d0585dc.js";import"./shared-d7d949bc.js";import"./shared-7fd51889.js";import"./shared-c502de27.js";import"./shared-f7bfb29e.js";import"./shared-cc4b3b42.js";import"./foxy-swipe-actions.js";import"./foxy-pagination.js";import"./shared-94716ec1.js";import"./shared-678beccf.js";import"./shared-6033e09d.js";import"./shared-ffd5932d.js";import"./foxy-copy-to-clipboard.js";import"./shared-9171c265.js";import"./shared-bab2ea2c.js";import"./shared-53e476fd.js";import"./foxy-template-set-card.js";import"./shared-b1435a0a.js";import"./shared-bb6d7b97.js";import"./foxy-payment-card-embed.js";import"./shared-99a8889a.js";import"./shared-673d668a.js";import"./shared-5fd5805c.js";import"./shared-0224f0b8.js";import"./shared-43e2c3f6.js";import"./shared-79d0699c.js";import"./foxy-transaction-card.js";import"./shared-894c69f8.js";import"./foxy-customer-card.js";import"./foxy-item-card.js";import"./shared-97e2abfb.js";import"./shared-eb963ba3.js";import"./shared-ada5e9f5.js";import"./shared-c832f3a1.js";import"./shared-274dec57.js";import"./shared-70e6f32c.js";import"./shared-a6b2bd14.js";import"./shared-9b9d5ff1.js";import"./shared-bedc5e82.js";import"./shared-66201dc5.js";import"./shared-d0aed1c1.js";import"./shared-b738ee96.js";import"./shared-a6c75cc0.js";import"./shared-2cb397e4.js";import"./shared-e88763ec.js";import"./shared-8f009bbb.js";import"./shared-4dd24dda.js";import"./shared-6962f117.js";let z,u,b,$=t=>t;class H extends r{constructor(){super(...arguments),this.value=0,this.size=0}static get properties(){return{value:{type:Number},size:{type:Number}}}static get styles(){return h.styles}render(){const t=[],e=[];for(let s=0;s<this.size;++s)t.push(a(z||(z=$` <button id="tab-${0}" role="tab" class="${0}" aria-controls="panel-${0}" aria-selected="${0}" @click="${0}" @keydown="${0}"> <slot name="tab-${0}"></slot> </button> `),s,m({"text-l font-medium px-s rounded focus-outline-none focus-shadow-outline":!0,"text-tertiary hover-text-body focus-text-body":this.value!==s}),s,this.value===s,(()=>this.value=s),this.__handleKeyDown,s)),e.push(a(u||(u=$` <slot id="panel-${0}" role="tabpanel" name="panel-${0}" class="${0}" aria-hidden="${0}" aria-labelledby="tab-${0}"> </slot> `),s,s,m({hidden:this.value!==s}),this.value!==s,s));return a(b||(b=$` <div role="tablist" aria-orientation="horizontal" class="-mx-s mb-s">${0}</div> ${0} `),t,e)}__handleKeyDown(t){if(t.key.startsWith("Arrow")){t.preventDefault();const e=t.target;let s=null;"ArrowRight"===t.key||"ArrowDown"===t.key?s=e.nextElementSibling:"ArrowLeft"!==t.key&&"ArrowUp"!==t.key||(s=e.previousElementSibling),null==s||s.click(),null==s||s.focus()}}}
1
+ import"./shared-ad8d209a.js";import"./shared-9884fb7d.js";import{h as t}from"./shared-5af5ab06.js";import"./shared-b15efc37.js";import"./shared-5212ef4f.js";import"./foxy-payment-method-card.js";import"./foxy-update-payment-method-form.js";import"./foxy-subscription-form.js";import"./foxy-form-dialog.js";import"./foxy-transactions-table.js";import"./foxy-collection-pages.js";import"./foxy-collection-page.js";import"./foxy-attribute-card.js";import"./foxy-attribute-form.js";import"./shared-2b328555.js";import"./foxy-address-card.js";import"./foxy-address-form.js";import"./foxy-spinner.js";import"./foxy-table.js";import"./shared-1b4a3e56.js";import{aI as e,_ as s}from"./shared-7fec42f2.js";import{L as r,h as a,c as o}from"./shared-ba5c42c7.js";import{C as i}from"./shared-c782b9fa.js";import"./shared-3f4549ba.js";import"./shared-a4871405.js";import{z as h,S as d,T as n,a as l}from"./shared-a89e8a07.js";import{c as m}from"./shared-4e709717.js";import{S as c}from"./shared-364b98a1.js";import"./shared-a16ef278.js";import{G as v}from"./shared-46a20973.js";import"./shared-9bfb584b.js";import"./shared-59c064c2.js";import"./shared-3c64ecdd.js";import"./shared-d4928805.js";import"./shared-1f95aa71.js";import{N as p}from"./shared-da95bb48.js";import{S as f}from"./shared-3eb6e232.js";import{i as g}from"./shared-53e42a77.js";import"./shared-d3f37507.js";import"./shared-6313b188.js";import"./shared-5a6e4a7b.js";import"./shared-cf613436.js";import"./foxy-nucleon-element.js";import"./shared-65b2760f.js";import"./shared-cd96ff03.js";import"./shared-0ea750af.js";import"./shared-37869bac.js";import"./shared-d6a0954b.js";import"./shared-1da47f50.js";import"./shared-e1e4d8f5.js";import"./shared-f2e8070b.js";import"./shared-8530fbae.js";import"./shared-f2be9863.js";import"./shared-d8b0432a.js";import"./shared-e02936f0.js";import"./shared-ce0df878.js";import"./shared-f3590d20.js";import"./shared-f7b4a4f6.js";import"./foxy-swipe-actions.js";import"./foxy-pagination.js";import"./shared-8a743005.js";import"./shared-acee789f.js";import"./shared-0fa21237.js";import"./shared-070211c0.js";import"./foxy-copy-to-clipboard.js";import"./shared-cf6122d9.js";import"./shared-bab2ea2c.js";import"./shared-53e476fd.js";import"./foxy-template-set-card.js";import"./shared-7d1512e1.js";import"./shared-160072f2.js";import"./foxy-payment-card-embed.js";import"./shared-3b4148ad.js";import"./shared-7dc40542.js";import"./shared-5fd5805c.js";import"./shared-0e605594.js";import"./shared-43e2c3f6.js";import"./shared-2061be9a.js";import"./foxy-transaction-card.js";import"./shared-dfe59df6.js";import"./foxy-customer-card.js";import"./foxy-item-card.js";import"./shared-2d3bdc6b.js";import"./shared-12973e93.js";import"./shared-ada5e9f5.js";import"./shared-88a1cb23.js";import"./shared-db50afd9.js";import"./shared-34a7df04.js";import"./shared-a6b2bd14.js";import"./shared-28253ef3.js";import"./shared-48129732.js";import"./shared-4388f7ea.js";import"./shared-d0aed1c1.js";import"./shared-b738ee96.js";import"./shared-e126cf44.js";import"./shared-fa482a7d.js";import"./shared-742899dc.js";import"./shared-0fb90a71.js";import"./shared-2c7e0ed1.js";import"./shared-140c6b70.js";let z,u,b,$=t=>t;class H extends r{constructor(){super(...arguments),this.value=0,this.size=0}static get properties(){return{value:{type:Number},size:{type:Number}}}static get styles(){return h.styles}render(){const t=[],e=[];for(let s=0;s<this.size;++s)t.push(a(z||(z=$` <button id="tab-${0}" role="tab" class="${0}" aria-controls="panel-${0}" aria-selected="${0}" @click="${0}" @keydown="${0}"> <slot name="tab-${0}"></slot> </button> `),s,m({"text-l font-medium px-s rounded focus-outline-none focus-shadow-outline":!0,"text-tertiary hover-text-body focus-text-body":this.value!==s}),s,this.value===s,(()=>this.value=s),this.__handleKeyDown,s)),e.push(a(u||(u=$` <slot id="panel-${0}" role="tabpanel" name="panel-${0}" class="${0}" aria-hidden="${0}" aria-labelledby="tab-${0}"> </slot> `),s,s,m({hidden:this.value!==s}),this.value!==s,s));return a(b||(b=$` <div role="tablist" aria-orientation="horizontal" class="-mx-s mb-s">${0}</div> ${0} `),t,e)}__handleKeyDown(t){if(t.key.startsWith("Arrow")){t.preventDefault();const e=t.target;let s=null;"ArrowRight"===t.key||"ArrowDown"===t.key?s=e.nextElementSibling:"ArrowLeft"!==t.key&&"ArrowUp"!==t.key||(s=e.previousElementSibling),null==s||s.click(),null==s||s.focus()}}}
2
2
  /**
3
3
  @license
4
4
  Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
@@ -79,7 +79,7 @@ found at http://polymer.github.io/PATENTS.txt
79
79
  <g id="vertical-align-top"><path d="M8 11h3v10h2V11h3l-4-4-4 4zM4 3v2h16V3H4z"></path></g>
80
80
  <g id="wrap-text"><path d="M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3 3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"></path></g>
81
81
  </defs></svg>
82
- </iron-iconset-svg>`;document.head.appendChild(y.content);let x;const V=o(x||(x=(t=>t)`:host{--tile-width:16rem}.w-tile{width:var(--tile-width)}.w-payment-method-card{width:calc(var(--tile-width) + ((var(--lumo-space-m) * 2)) + 2px)}`)),M=["html"];let _,S,j,L,T,k,w,A,C,O,E,N,P,R,U,q,D,K,G,W,B,F,I,J,Q,X,Y=t=>t;const Z=d(i(n(l(p,"customer"))));class tt extends Z{constructor(){super(...arguments),this.embedUrl=null,this.settings=null,this.__renderHeaderActionsEdit=()=>{const{readonlySelector:t,disabledSelector:e,hiddenSelector:s}=this,r="header:actions:edit:form",o="customer-dialog",i=!this.in({idle:"snapshot"})||e.matches("header:actions:edit",!0);return a(_||(_=Y` ${0} <foxy-form-dialog data-testid="header:actions:edit:form" header="update" parent="${0}" group="${0}" href="${0}" form="foxy-customer-form" lang="${0}" ns="${0}" id="${0}" readonlycontrols="${0}" disabledcontrols="${0}" hiddencontrols="${0}" alert .templates="${0}" .props="${0}"> </foxy-form-dialog> <vaadin-button data-testid="header:actions:edit" aria-label="${0}" class="px-xs rounded-full" theme="icon" ?disabled="${0}" @click="${0}"> <iron-icon icon="editor:mode-edit"></iron-icon> </vaadin-button> ${0} `),this.renderTemplateOrSlot("header:actions:edit:before"),this.parent,this.group,this.href,this.lang,this.ns,o,t.zoom(r).toString(),e.zoom(r).toString(),s.zoom(r).toString(),this.getNestedTemplates("header:actions:edit:form"),{".settings":this.settings},this.t("update").toString(),i,(t=>{this.renderRoot.querySelector(`#${o}`).show(t.currentTarget)}),this.renderTemplateOrSlot("header:actions:edit:after"))},this.__renderHeaderActions=()=>{const t=this.hiddenSelector.zoom("header:actions");return a(S||(S=Y` <div class="flex" data-testid="header:actions"> ${0} ${0} ${0} </div> `),this.renderTemplateOrSlot("header:actions:before"),t.matches("edit",!0)?"":this.__renderHeaderActionsEdit(),this.renderTemplateOrSlot("header:actions:after"))},this.__renderHeader=()=>{const t=g(this.in("busy")?void 0:"static");return a(j||(j=Y` ${0} <header class="flex items-center justify-between space-x-m pb-s border-b border-contrast-10" data-testid="header"> <h1 class="text-xxl font-medium truncate min-w-0 flex-1"> ${0} </h1> ${0} </header> ${0} `),this.renderTemplateOrSlot("header:before"),this.in({idle:"snapshot"})?a(L||(L=Y`${0} ${0}`),this.data.first_name,this.data.last_name):a(T||(T=Y`<x-skeleton class="w-full" variant="${0}">&nbsp;</x-skeleton>`),t),this.hiddenSelector.matches("header:actions",!0)?"":this.__renderHeaderActions(),this.renderTemplateOrSlot("header:after"))},this.__renderAddressesActionsCreate=()=>{var t;const{data:e,lang:s,ns:r}=this,o=this.disabledSelector.zoom("addresses:actions"),i=this.readonlySelector.zoom("addresses:actions"),h=this.hiddenSelector.zoom("addresses:actions"),d=!this.in({idle:"snapshot"})||o.matches("create",!0);return a(k||(k=Y` ${0} <vaadin-button data-testid="addresses:actions:create" aria-label="${0}" class="px-xs rounded-full" theme="small icon" ?disabled="${0}" @click="${0}"> <foxy-form-dialog readonlycontrols="${0}" disabledcontrols="${0}" hiddencontrols="${0}" data-testid="addresses:actions:create:form" parent="${0}" header="create" group="${0}" form="foxy-address-form" lang="${0}" ns="${0}" id="address-dialog" alert .templates="${0}"> </foxy-form-dialog> <iron-icon slot="suffix" icon="icons:add"></iron-icon> </vaadin-button> ${0} `),this.renderTemplateOrSlot("addresses:actions:create:before"),this.t("create").toString(),d,(t=>{if(null===e)return;const s=t.target;s.firstElementChild.show(s)}),i.zoom("create:form").toString(),o.zoom("create:form").toString(),h.zoom("create:form").toString(),null!==(t=null==e?void 0:e._links["fx:customer_addresses"].href)&&void 0!==t?t:"",this.group,s,r,this.getNestedTemplates("addresses:actions:create:form"),this.renderTemplateOrSlot("addresses:actions:create:after"))},this.__renderAddressesActions=()=>{const t=this.hiddenSelector.zoom("addresses:actions");return a(w||(w=Y` <div data-testid="addresses:actions"> ${0} ${0} ${0} </div> `),this.renderTemplateOrSlot("addresses:actions:before"),t.matches("create",!0)?"":this.__renderAddressesActionsCreate(),this.renderTemplateOrSlot("addresses:actions:after"))},this.__renderAddressesListCard=t=>{var e,s;const r=m({"snap-start text-left p-m rounded-t-l rounded-b-l flex-shrink-0":!0,"border border-contrast-10":!0,"hover-border-contrast-30 focus-outline-none focus-border-primary":null!==t.data}),o=this.readonlySelector.matches("addresses:list:card",!0),i=this.disabledSelector.matches("addresses:list:card",!0);return a(A||(A=Y` <button data-testclass="addresses:list:card" class="${0}" ?disabled="${0}" @click="${0}"> <foxy-address-card hiddencontrols="${0}" parent="${0}" class="w-tile" group="${0}" lang="${0}" href="${0}" ns="${0} ${0}" .templates="${0}"> </foxy-address-card> </button> `),r,!t.data||o||i,(e=>{if(null===t.data)return;const s=e.target,r=s.getRootNode().querySelector("#addresses-list-form");r.href=t.data._links.self.href,r.show(s)}),t.hiddenControls.toString(),t.parent,t.group,t.lang,t.href,t.ns,null!==(s=null===(e=customElements.get("foxy-address-card"))||void 0===e?void 0:e.defaultNS)&&void 0!==s?s:"",t.templates)},this.__renderAddressesListPage=t=>t.html(C||(C=Y`
82
+ </iron-iconset-svg>`;document.head.appendChild(y.content);let x;const V=o(x||(x=(t=>t)`:host{--tile-width:16rem}.w-tile{width:var(--tile-width)}.w-payment-method-card{width:calc(var(--tile-width) + ((var(--lumo-space-m) * 2)) + 2px)}`)),M=["html"];let _,S,j,L,T,k,w,A,C,O,E,N,P,R,U,q,D,K,G,I,W,B,F,J,Q,X,Y=t=>t;const Z=d(i(n(l(p,"customer"))));class tt extends Z{constructor(){super(...arguments),this.embedUrl=null,this.settings=null,this.__renderHeaderActionsEdit=()=>{const{readonlySelector:t,disabledSelector:e,hiddenSelector:s}=this,r="header:actions:edit:form",o="customer-dialog",i=!this.in({idle:"snapshot"})||e.matches("header:actions:edit",!0);return a(_||(_=Y` ${0} <foxy-form-dialog data-testid="header:actions:edit:form" header="update" parent="${0}" group="${0}" href="${0}" form="foxy-customer-form" lang="${0}" ns="${0}" id="${0}" readonlycontrols="${0}" disabledcontrols="${0}" hiddencontrols="${0}" alert .templates="${0}" .props="${0}"> </foxy-form-dialog> <vaadin-button data-testid="header:actions:edit" aria-label="${0}" class="px-xs rounded-full" theme="icon" ?disabled="${0}" @click="${0}"> <iron-icon icon="editor:mode-edit"></iron-icon> </vaadin-button> ${0} `),this.renderTemplateOrSlot("header:actions:edit:before"),this.parent,this.group,this.href,this.lang,this.ns,o,t.zoom(r).toString(),e.zoom(r).toString(),s.zoom(r).toString(),this.getNestedTemplates("header:actions:edit:form"),{".settings":this.settings},this.t("update").toString(),i,(t=>{this.renderRoot.querySelector(`#${o}`).show(t.currentTarget)}),this.renderTemplateOrSlot("header:actions:edit:after"))},this.__renderHeaderActions=()=>{const t=this.hiddenSelector.zoom("header:actions");return a(S||(S=Y` <div class="flex" data-testid="header:actions"> ${0} ${0} ${0} </div> `),this.renderTemplateOrSlot("header:actions:before"),t.matches("edit",!0)?"":this.__renderHeaderActionsEdit(),this.renderTemplateOrSlot("header:actions:after"))},this.__renderHeader=()=>{const t=g(this.in("busy")?void 0:"static");return a(j||(j=Y` ${0} <header class="flex items-center justify-between space-x-m pb-s border-b border-contrast-10" data-testid="header"> <h1 class="text-xxl font-medium truncate min-w-0 flex-1"> ${0} </h1> ${0} </header> ${0} `),this.renderTemplateOrSlot("header:before"),this.in({idle:"snapshot"})?a(L||(L=Y`${0} ${0}`),this.data.first_name,this.data.last_name):a(T||(T=Y`<x-skeleton class="w-full" variant="${0}">&nbsp;</x-skeleton>`),t),this.hiddenSelector.matches("header:actions",!0)?"":this.__renderHeaderActions(),this.renderTemplateOrSlot("header:after"))},this.__renderAddressesActionsCreate=()=>{var t;const{data:e,lang:s,ns:r}=this,o=this.disabledSelector.zoom("addresses:actions"),i=this.readonlySelector.zoom("addresses:actions"),h=this.hiddenSelector.zoom("addresses:actions"),d=!this.in({idle:"snapshot"})||o.matches("create",!0);return a(k||(k=Y` ${0} <vaadin-button data-testid="addresses:actions:create" aria-label="${0}" class="px-xs rounded-full" theme="small icon" ?disabled="${0}" @click="${0}"> <foxy-form-dialog readonlycontrols="${0}" disabledcontrols="${0}" hiddencontrols="${0}" data-testid="addresses:actions:create:form" parent="${0}" header="create" group="${0}" form="foxy-address-form" lang="${0}" ns="${0}" id="address-dialog" alert .templates="${0}"> </foxy-form-dialog> <iron-icon slot="suffix" icon="icons:add"></iron-icon> </vaadin-button> ${0} `),this.renderTemplateOrSlot("addresses:actions:create:before"),this.t("create").toString(),d,(t=>{if(null===e)return;const s=t.target;s.firstElementChild.show(s)}),i.zoom("create:form").toString(),o.zoom("create:form").toString(),h.zoom("create:form").toString(),null!==(t=null==e?void 0:e._links["fx:customer_addresses"].href)&&void 0!==t?t:"",this.group,s,r,this.getNestedTemplates("addresses:actions:create:form"),this.renderTemplateOrSlot("addresses:actions:create:after"))},this.__renderAddressesActions=()=>{const t=this.hiddenSelector.zoom("addresses:actions");return a(w||(w=Y` <div data-testid="addresses:actions"> ${0} ${0} ${0} </div> `),this.renderTemplateOrSlot("addresses:actions:before"),t.matches("create",!0)?"":this.__renderAddressesActionsCreate(),this.renderTemplateOrSlot("addresses:actions:after"))},this.__renderAddressesListCard=t=>{var e,s;const r=m({"snap-start text-left p-m rounded-t-l rounded-b-l flex-shrink-0":!0,"border border-contrast-10":!0,"hover-border-contrast-30 focus-outline-none focus-border-primary":null!==t.data}),o=this.readonlySelector.matches("addresses:list:card",!0),i=this.disabledSelector.matches("addresses:list:card",!0);return a(A||(A=Y` <button data-testclass="addresses:list:card" class="${0}" ?disabled="${0}" @click="${0}"> <foxy-address-card hiddencontrols="${0}" parent="${0}" class="w-tile" group="${0}" lang="${0}" href="${0}" ns="${0} ${0}" .templates="${0}"> </foxy-address-card> </button> `),r,!t.data||o||i,(e=>{if(null===t.data)return;const s=e.target,r=s.getRootNode().querySelector("#addresses-list-form");r.href=t.data._links.self.href,r.show(s)}),t.hiddenControls.toString(),t.parent,t.group,t.lang,t.href,t.ns,null!==(s=null===(e=customElements.get("foxy-address-card"))||void 0===e?void 0:e.defaultNS)&&void 0!==s?s:"",t.templates)},this.__renderAddressesListPage=t=>t.html(C||(C=Y`
83
83
  <foxy-collection-page
84
84
  hiddencontrols=${0}
85
85
  class="space-x-m flex"
@@ -110,7 +110,7 @@ found at http://polymer.github.io/PATENTS.txt
110
110
  >
111
111
  </foxy-attribute-card>
112
112
  </button>
113
- `),r,null===t.data,(e=>{if(null===t.data)return;const s=e.target,r=s.getRootNode().querySelector("#attributes-list-form");r.href=t.data._links.self.href,r.show(s)}),t.hiddenControls.toString(),t.parent,t.group,t.lang,t.href,t.ns,null!==(s=null===(e=customElements.get("foxy-attribute-card"))||void 0===e?void 0:e.defaultNS)&&void 0!==s?s:"",t.templates)},this.__renderAttributesListPage=t=>a(D||(D=Y` <foxy-collection-page hiddencontrols="${0}" class="space-x-m flex" group="${0}" lang="${0}" href="${0}" ns="${0}" .item="${0}" .templates="${0}"> </foxy-collection-page> `),t.hiddenControls.toString(),t.group,t.lang,t.href,t.ns,this.__renderAttributesListCard,t.templates),this.__renderAttributesList=()=>{var t,e,s,r;const o="attributes:list:form",i="attributes:list:card";return a(K||(K=Y` ${0} <foxy-form-dialog readonlycontrols="${0}" disabledcontrols="${0}" hiddencontrols="${0}" data-testclass="i18n" data-testid="attributes:list:form" parent="${0}" header="update" group="${0}" form="foxy-attribute-form" lang="${0}" ns="${0}" id="attributes-list-form" alert .templates="${0}"> </foxy-form-dialog> <foxy-collection-pages hiddencontrols="${0}" data-testid="attributes:list" first="${0}" class="snap-x-mandatory flex items-center space-x-m overflow-auto" group="${0}" lang="${0}" ns="${0}" .page="${0}" .templates="${0}"> </foxy-collection-pages> ${0} `),this.renderTemplateOrSlot("attributes:list:before"),this.readonlySelector.zoom(o).toString(),this.disabledSelector.zoom(o).toString(),this.hiddenSelector.zoom(o).toString(),null!==(e=null===(t=this.data)||void 0===t?void 0:t._links["fx:attributes"].href)&&void 0!==e?e:"",this.group,this.lang,this.ns,this.getNestedTemplates(o),this.hiddenControls.zoom(i).toString(),null!==(r=null===(s=this.data)||void 0===s?void 0:s._links["fx:attributes"].href)&&void 0!==r?r:"",this.group,this.lang,this.ns,this.__renderAttributesListPage,this.getNestedTemplates(i),this.renderTemplateOrSlot("attributes:list:after"))},this.__renderAttributes=()=>{const{lang:t,ns:e}=this,s=this.hiddenSelector.zoom("attributes");return a(G||(G=Y` ${0} <section class="pt-m" data-testid="attributes"> <header class="space-x-m flex items-center mb-s"> <h2 class="text-l font-medium"> <foxy-i18n ns="${0}" lang="${0}" key="attribute_plural"></foxy-i18n> </h2> ${0} </header> ${0} </section> ${0} `),this.renderTemplateOrSlot("attributes:before"),e,t,s.matches("actions",!0)?"":this.__renderAttributesActions(),s.matches("list",!0)?"":this.__renderAttributesList(),this.renderTemplateOrSlot("attributes:after"))},this.__renderTransactions=()=>{let t="";if(this.in({idle:"snapshot"})){const e=new URL(this.data._links["fx:transactions"].href);e.searchParams.set("zoom","items"),t=e.toString()}return a(W||(W=Y` ${0} <x-group frame> <foxy-collection-pages data-testid="transactions" spinner="foxy-spinner" first="${0}" class="divide-y divide-contrast-10 block mx-m" group="${0}" page="foxy-transactions-table" lang="${0}" ns="${0}" .templates="${0}"> </foxy-collection-pages> </x-group> ${0} `),this.renderTemplateOrSlot("transactions:before"),t,this.group,this.lang,this.ns,this.getNestedTemplates("transactions:table"),this.renderTemplateOrSlot("transactions:after"))},this.__subscriptionsTableColumns=[f.priceColumn,f.summaryColumn,f.statusColumn,{cell:({html:t,lang:e,data:s})=>t(B||(B=Y`
113
+ `),r,null===t.data,(e=>{if(null===t.data)return;const s=e.target,r=s.getRootNode().querySelector("#attributes-list-form");r.href=t.data._links.self.href,r.show(s)}),t.hiddenControls.toString(),t.parent,t.group,t.lang,t.href,t.ns,null!==(s=null===(e=customElements.get("foxy-attribute-card"))||void 0===e?void 0:e.defaultNS)&&void 0!==s?s:"",t.templates)},this.__renderAttributesListPage=t=>a(D||(D=Y` <foxy-collection-page hiddencontrols="${0}" class="space-x-m flex" group="${0}" lang="${0}" href="${0}" ns="${0}" .item="${0}" .templates="${0}"> </foxy-collection-page> `),t.hiddenControls.toString(),t.group,t.lang,t.href,t.ns,this.__renderAttributesListCard,t.templates),this.__renderAttributesList=()=>{var t,e,s,r;const o="attributes:list:form",i="attributes:list:card";return a(K||(K=Y` ${0} <foxy-form-dialog readonlycontrols="${0}" disabledcontrols="${0}" hiddencontrols="${0}" data-testclass="i18n" data-testid="attributes:list:form" parent="${0}" header="update" group="${0}" form="foxy-attribute-form" lang="${0}" ns="${0}" id="attributes-list-form" alert .templates="${0}"> </foxy-form-dialog> <foxy-collection-pages hiddencontrols="${0}" data-testid="attributes:list" first="${0}" class="snap-x-mandatory flex items-center space-x-m overflow-auto" group="${0}" lang="${0}" ns="${0}" .page="${0}" .templates="${0}"> </foxy-collection-pages> ${0} `),this.renderTemplateOrSlot("attributes:list:before"),this.readonlySelector.zoom(o).toString(),this.disabledSelector.zoom(o).toString(),this.hiddenSelector.zoom(o).toString(),null!==(e=null===(t=this.data)||void 0===t?void 0:t._links["fx:attributes"].href)&&void 0!==e?e:"",this.group,this.lang,this.ns,this.getNestedTemplates(o),this.hiddenControls.zoom(i).toString(),null!==(r=null===(s=this.data)||void 0===s?void 0:s._links["fx:attributes"].href)&&void 0!==r?r:"",this.group,this.lang,this.ns,this.__renderAttributesListPage,this.getNestedTemplates(i),this.renderTemplateOrSlot("attributes:list:after"))},this.__renderAttributes=()=>{const{lang:t,ns:e}=this,s=this.hiddenSelector.zoom("attributes");return a(G||(G=Y` ${0} <section class="pt-m" data-testid="attributes"> <header class="space-x-m flex items-center mb-s"> <h2 class="text-l font-medium"> <foxy-i18n ns="${0}" lang="${0}" key="attribute_plural"></foxy-i18n> </h2> ${0} </header> ${0} </section> ${0} `),this.renderTemplateOrSlot("attributes:before"),e,t,s.matches("actions",!0)?"":this.__renderAttributesActions(),s.matches("list",!0)?"":this.__renderAttributesList(),this.renderTemplateOrSlot("attributes:after"))},this.__renderTransactions=()=>{let t="";if(this.in({idle:"snapshot"})){const e=new URL(this.data._links["fx:transactions"].href);e.searchParams.set("zoom","items"),t=e.toString()}return a(I||(I=Y` ${0} <x-group frame> <foxy-collection-pages data-testid="transactions" spinner="foxy-spinner" first="${0}" class="divide-y divide-contrast-10 block mx-m" group="${0}" page="foxy-transactions-table" lang="${0}" ns="${0}" .templates="${0}"> </foxy-collection-pages> </x-group> ${0} `),this.renderTemplateOrSlot("transactions:before"),t,this.group,this.lang,this.ns,this.getNestedTemplates("transactions:table"),this.renderTemplateOrSlot("transactions:after"))},this.__subscriptionsTableColumns=[f.priceColumn,f.summaryColumn,f.statusColumn,{cell:({html:t,lang:e,data:s})=>t(W||(W=Y`
114
114
  <vaadin-button
115
115
  data-testclass="edit"
116
116
  theme="small tertiary-inline"
@@ -118,7 +118,7 @@ found at http://polymer.github.io/PATENTS.txt
118
118
  >
119
119
  <foxy-i18n class="text-m" lang=${0} key="update" ns=${0}></foxy-i18n>
120
120
  </vaadin-button>
121
- `),(t=>{const e=new URL(s._links.self.href),r=this.renderRoot.querySelector("#subscriptions-form"),a=t.target;e.searchParams.set("zoom","transaction_template:items"),r.href=e.toString(),r.show(a)}),e,this.ns)}],this.__renderSubscriptionsPage=t=>{let{html:s}=t,r=e(t,M);return s(F||(F=Y`
121
+ `),(t=>{const e=new URL(s._links.self.href),r=this.renderRoot.querySelector("#subscriptions-form"),a=t.target;e.searchParams.set("zoom","transaction_template:items"),r.href=e.toString(),r.show(a)}),e,this.ns)}],this.__renderSubscriptionsPage=t=>{let{html:s}=t,r=e(t,M);return s(B||(B=Y`
122
122
  <foxy-table
123
123
  data-testclass="subscriptions:pages:table"
124
124
  group=${0}
@@ -129,4 +129,4 @@ found at http://polymer.github.io/PATENTS.txt
129
129
  .templates=${0}
130
130
  >
131
131
  </foxy-table>
132
- `),r.group,r.href,r.lang,r.ns,this.__subscriptionsTableColumns,r.templates)},this.__renderSubscriptions=()=>{const t="subscriptions:form";let e="";if(this.in({idle:"snapshot"})){const t=new URL(this.data._links["fx:subscriptions"].href);t.searchParams.set("zoom","transaction_template:items"),e=t.toString()}return a(I||(I=Y` <div data-testid="subscriptions"> ${0} <foxy-form-dialog readonlycontrols="${0}" disabledcontrols="${0}" hiddencontrols="${0}" data-testid="${0}" header="update" group="${0}" form="foxy-subscription-form" lang="${0}" ns="${0}" id="subscriptions-form" alert .templates="${0}" .props="${0}"> </foxy-form-dialog> <x-group frame> <foxy-collection-pages data-testid="subscriptions:pages" spinner="foxy-spinner" first="${0}" class="divide-y divide-contrast-10 block mx-m" group="${0}" lang="${0}" ns="${0}" .page="${0}" .templates="${0}"> </foxy-collection-pages> </x-group> ${0} </div> `),this.renderTemplateOrSlot("subscriptions:before"),this.readonlySelector.zoom(t).toString(),this.disabledSelector.zoom(t).toString(),this.hiddenSelector.zoom(t).toString(),t,this.group,this.lang,this.ns,this.getNestedTemplates(t),{".settings":this.settings},e,this.group,this.lang,this.ns,this.__renderSubscriptionsPage,this.getNestedTemplates("subscriptions:table"),this.renderTemplateOrSlot("subscriptions:after"))},this.__renderTabs=t=>a(J||(J=Y` <div class="pt-m"> <x-tabs size="${0}" ?disabled="${0}"> ${0} </x-tabs> </div> `),t.length,!this.in({idle:"snapshot"}),t.map(((t,e)=>a(Q||(Q=Y` <foxy-i18n data-testclass="i18n" slot="tab-${0}" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> <div slot="panel-${0}">${0}</div> `),e,this.lang,t.title,this.ns,e,t.content))))}static get scopedElements(){return{"foxy-payment-method-card":customElements.get("foxy-payment-method-card"),"foxy-transactions-table":customElements.get("foxy-transactions-table"),"foxy-collection-pages":customElements.get("foxy-collection-pages"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"foxy-attribute-card":customElements.get("foxy-attribute-card"),"foxy-address-card":customElements.get("foxy-address-card"),"foxy-form-dialog":customElements.get("foxy-form-dialog"),"vaadin-button":customElements.get("vaadin-button"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-table":customElements.get("foxy-table"),"x-skeleton":c,"iron-icon":customElements.get("iron-icon"),"foxy-i18n":customElements.get("foxy-i18n"),"x-group":v,"x-tabs":H}}static get properties(){return s(s({},super.properties),{},{settings:{type:Object},embedUrl:{attribute:"embed-url"}})}static get styles(){return[super.styles,V]}render(){var t,e;const{hiddenSelector:s,lang:r,ns:o}=this,i=this.in({idle:"snapshot"}),h=this.in("busy"),d=[];return s.matches("transactions",!0)||d.push({title:"transaction_plural",content:this.__renderTransactions()}),s.matches("subscriptions",!0)||d.push({title:"subscription_plural",content:this.__renderSubscriptions()}),a(X||(X=Y` <div class="relative" data-testid="wrapper" aria-busy="${0}" aria-live="polite"> <div class="${0}"> ${0} ${0} ${0} ${0} ${0} ${0} </div> <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),h,m({"font-lumo text-body text-m leading-m space-y-s":!0,"opacity-50":!i}),s.matches("header",!0)?"":this.__renderHeader(),s.matches("default",!0)?"":this.renderTemplateOrSlot(),s.matches("addresses",!0)?"":this.__renderAddresses(),s.matches("payment-methods",!0)?"":this.__renderPaymentMethods(),s.matches("attributes",!0)?"":this.__renderAttributes(),0===d.length?"":this.__renderTabs(d),m({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":i}),this.in("fail")?"error":h?"busy":"empty",r,o,null!==(e=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==e?e:"")}}customElements.define("foxy-customer",tt);export{tt as Customer};
132
+ `),r.group,r.href,r.lang,r.ns,this.__subscriptionsTableColumns,r.templates)},this.__renderSubscriptions=()=>{const t="subscriptions:form";let e="";if(this.in({idle:"snapshot"})){const t=new URL(this.data._links["fx:subscriptions"].href);t.searchParams.set("zoom","transaction_template:items"),e=t.toString()}return a(F||(F=Y` <div data-testid="subscriptions"> ${0} <foxy-form-dialog readonlycontrols="${0}" disabledcontrols="${0}" hiddencontrols="${0}" data-testid="${0}" header="update" group="${0}" form="foxy-subscription-form" lang="${0}" ns="${0}" id="subscriptions-form" alert .templates="${0}" .props="${0}"> </foxy-form-dialog> <x-group frame> <foxy-collection-pages data-testid="subscriptions:pages" spinner="foxy-spinner" first="${0}" class="divide-y divide-contrast-10 block mx-m" group="${0}" lang="${0}" ns="${0}" .page="${0}" .templates="${0}"> </foxy-collection-pages> </x-group> ${0} </div> `),this.renderTemplateOrSlot("subscriptions:before"),this.readonlySelector.zoom(t).toString(),this.disabledSelector.zoom(t).toString(),this.hiddenSelector.zoom(t).toString(),t,this.group,this.lang,this.ns,this.getNestedTemplates(t),{".settings":this.settings},e,this.group,this.lang,this.ns,this.__renderSubscriptionsPage,this.getNestedTemplates("subscriptions:table"),this.renderTemplateOrSlot("subscriptions:after"))},this.__renderTabs=t=>a(J||(J=Y` <div class="pt-m"> <x-tabs size="${0}" ?disabled="${0}"> ${0} </x-tabs> </div> `),t.length,!this.in({idle:"snapshot"}),t.map(((t,e)=>a(Q||(Q=Y` <foxy-i18n data-testclass="i18n" slot="tab-${0}" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> <div slot="panel-${0}">${0}</div> `),e,this.lang,t.title,this.ns,e,t.content))))}static get scopedElements(){return{"foxy-payment-method-card":customElements.get("foxy-payment-method-card"),"foxy-transactions-table":customElements.get("foxy-transactions-table"),"foxy-collection-pages":customElements.get("foxy-collection-pages"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"foxy-attribute-card":customElements.get("foxy-attribute-card"),"foxy-address-card":customElements.get("foxy-address-card"),"foxy-form-dialog":customElements.get("foxy-form-dialog"),"vaadin-button":customElements.get("vaadin-button"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-table":customElements.get("foxy-table"),"x-skeleton":c,"iron-icon":customElements.get("iron-icon"),"foxy-i18n":customElements.get("foxy-i18n"),"x-group":v,"x-tabs":H}}static get properties(){return s(s({},super.properties),{},{settings:{type:Object},embedUrl:{attribute:"embed-url"}})}static get styles(){return[super.styles,V]}render(){var t,e;const{hiddenSelector:s,lang:r,ns:o}=this,i=this.in({idle:"snapshot"}),h=this.in("busy"),d=[];return s.matches("transactions",!0)||d.push({title:"transaction_plural",content:this.__renderTransactions()}),s.matches("subscriptions",!0)||d.push({title:"subscription_plural",content:this.__renderSubscriptions()}),a(X||(X=Y` <div class="relative" data-testid="wrapper" aria-busy="${0}" aria-live="polite"> <div class="${0}"> ${0} ${0} ${0} ${0} ${0} ${0} </div> <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),h,m({"font-lumo text-body text-m leading-m space-y-s":!0,"opacity-50":!i}),s.matches("header",!0)?"":this.__renderHeader(),s.matches("default",!0)?"":this.renderTemplateOrSlot(),s.matches("addresses",!0)?"":this.__renderAddresses(),s.matches("payment-methods",!0)?"":this.__renderPaymentMethods(),s.matches("attributes",!0)?"":this.__renderAttributes(),0===d.length?"":this.__renderTabs(d),m({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":i}),this.in("fail")?"error":h?"busy":"empty",r,o,null!==(e=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==e?e:"")}}customElements.define("foxy-customer",tt);export{tt as Customer};
@@ -1 +1 @@
1
- import"./foxy-spinner.js";import"./shared-2f5cc0e2.js";import{T as s}from"./shared-c832f3a1.js";import{a}from"./shared-aa6dab90.js";import{h as e}from"./shared-ba5c42c7.js";import"./shared-dc4d2996.js";import"./shared-e6a1eef8.js";import"./shared-567ba8ae.js";import"./shared-e2d3c014.js";import"./shared-cb58dfcd.js";import"./shared-2aa23b5f.js";import"./shared-343d1fd7.js";import"./shared-5afb584d.js";import"./shared-53e42a77.js";import"./foxy-nucleon-element.js";import"./shared-f83207fb.js";import"./shared-5592ec6e.js";import"./shared-cd96ff03.js";import"./shared-5e4a03d1.js";import"./shared-7594e563.js";import"./shared-0aedd809.js";import"./shared-5ef40e86.js";import"./shared-4e709717.js";let t,d,r,o,n=s=>s;class m extends(a(s,"customers-table")){constructor(){super(...arguments),this.columns=[m.nameColumn,m.idColumn,m.dateColumn,m.emailColumn]}}m.nameColumn={cell:s=>e(t||(t=n` <span data-testclass="names">${0} ${0}</span> `),s.data.first_name,s.data.last_name)},m.idColumn={hideBelow:"md",cell:s=>e(d||(d=n` <span role="presentation" class="text-m text-tertiary">ID&nbsp;</span> <span data-testclass="ids" class="text-m text-secondary font-tnum">${0}</span> `),s.data.id)},m.dateColumn={hideBelow:"md",cell:s=>e(r||(r=n` <span class="text-m text-secondary font-tnum"> <foxy-i18n data-testclass="i18n" lang="${0}" key="date_created" ns="${0}"> </foxy-i18n> <foxy-i18n data-testclass="dates i18n" lang="${0}" key="date" ns="${0}" .options="${0}"> </foxy-i18n> </span> `),s.lang,s.ns,s.lang,s.ns,{value:s.data.date_created})},m.emailColumn={cell:s=>e(o||(o=n`<span data-testclass="emails" class="text-m text-secondary">${0}</span>`),s.data.email)},m.__ns="customers-table",customElements.define("foxy-customers-table",m);export{m as CustomersTable};
1
+ import"./foxy-spinner.js";import"./shared-1b4a3e56.js";import{T as a}from"./shared-88a1cb23.js";import{a as s}from"./shared-a89e8a07.js";import{h as e}from"./shared-ba5c42c7.js";import"./shared-ad8d209a.js";import"./shared-d3f37507.js";import"./shared-5af5ab06.js";import"./shared-9884fb7d.js";import"./shared-7fec42f2.js";import"./shared-0ea750af.js";import"./shared-c782b9fa.js";import"./shared-53e42a77.js";import"./foxy-nucleon-element.js";import"./shared-da95bb48.js";import"./shared-65b2760f.js";import"./shared-cd96ff03.js";import"./shared-37869bac.js";import"./shared-d6a0954b.js";import"./shared-1da47f50.js";import"./shared-e1e4d8f5.js";import"./shared-4e709717.js";let t,r,d,o,n=a=>a;class m extends(s(a,"customers-table")){constructor(){super(...arguments),this.columns=[m.nameColumn,m.idColumn,m.dateColumn,m.emailColumn]}}m.nameColumn={cell:a=>e(t||(t=n` <span data-testclass="names">${0} ${0}</span> `),a.data.first_name,a.data.last_name)},m.idColumn={hideBelow:"md",cell:a=>e(r||(r=n` <span role="presentation" class="text-m text-tertiary">ID&nbsp;</span> <span data-testclass="ids" class="text-m text-secondary font-tnum">${0}</span> `),a.data.id)},m.dateColumn={hideBelow:"md",cell:a=>e(d||(d=n` <span class="text-m text-secondary font-tnum"> <foxy-i18n data-testclass="i18n" lang="${0}" key="date_created" ns="${0}"> </foxy-i18n> <foxy-i18n data-testclass="dates i18n" lang="${0}" key="date" ns="${0}" .options="${0}"> </foxy-i18n> </span> `),a.lang,a.ns,a.lang,a.ns,{value:a.data.date_created})},m.emailColumn={cell:a=>e(o||(o=n`<span data-testclass="emails" class="text-m text-secondary">${0}</span>`),a.data.email)},m.__ns="customers-table",customElements.define("foxy-customers-table",m);export{m as CustomersTable};
@@ -1 +1 @@
1
- import"./shared-2f5cc0e2.js";import{_ as e}from"./shared-cb58dfcd.js";import{h as t,L as s}from"./shared-ba5c42c7.js";import{r as i}from"./shared-5fd5805c.js";import{C as r}from"./shared-5afb584d.js";import{I as n}from"./shared-2aa23b5f.js";import{T as a,a as o}from"./shared-aa6dab90.js";import{c as l}from"./shared-4e709717.js";import{o as d}from"./shared-63c32024.js";import"./shared-343d1fd7.js";import"./shared-53e42a77.js";let c,u,h,p,m,b,f,y,g=e=>e;const v=a(r(o(n(s),"discount-builder")));class $ extends v{constructor(){super(...arguments),this.value=null}static get properties(){return e(e({},super.properties),{},{value:{type:String}})}get parsedValue(){var e;let t="",s="",i="quantity_amount";try{const[[r,n]]=Array.from(new URLSearchParams(null!==(e=this.value)&&void 0!==e?e:"").entries()),a=r.substring(9);["price_amount","price_percentage","quantity_amount","quantity_percentage"].includes(a)&&(i=a);const o=n.indexOf("{"),l=n.lastIndexOf("}");-1!==o&&-1!==l&&(t=n.substring(o+1,l),s=n.substring(0,o))}catch(e){}return 0===s.length&&(s="Discount"),{type:i,name:s,details:t}}set parsedValue({name:e,type:t,details:s}){this.value=new URLSearchParams([[`discount_${t}`,`${e}{${s}}`]]).toString()}render(){var s;const r=this.parsedValue.details.split("|").filter((e=>!!e.trim())),n=null!==(s=/[-+]/.test(r[0])?null:r.shift())&&void 0!==s?s:"single",a="repeat"===n?[r[0]]:[...r,void 0],o=this.parsedValue.type,[l,d]=o.split("_");return t(c||(c=g` <div class="space-y-s"> ${0} </div> `),i(a,((t,s)=>this.__renderTier({source:l,method:n,units:d,tier:t,onChange:i=>{var a,o,c;const u=null!==(a=i.method)&&void 0!==a?a:n,h=null!==(o=i.source)&&void 0!==o?o:l,p=null!==(c=i.units)&&void 0!==c?c:d,m=i.tier,b=[...r];if(m){const e=t?s:b.length,i=t?1:0;b.splice(e,i,m)}this.parsedValue=e(e({},this.parsedValue),{},{type:`${h}_${p}`,details:`${u}|${b.join("|")}`}),this.dispatchEvent(new CustomEvent("change"))},onDelete:()=>{const t=r.filter(((e,t)=>t!==s)),i=`${n}|${t.join("|")}`;this.parsedValue=e(e({},this.parsedValue),{},{details:i}),this.dispatchEvent(new CustomEvent("change"))}}))))}__renderSelect({label:e,value:s,options:i,onChange:r}){const n=!this.disabled&&!this.readonly;return t(u||(u=g` <label class="${0}"> <foxy-i18n class="sr-only" infer="" key="${0}"></foxy-i18n> <span class="relative leading-none font-medium flex items-center h-full"> <span class="truncate">${0}</span> <iron-icon class="icon-inline text-xl ml-xs" icon="icons:expand-more"></iron-icon> <select data-testclass="interactive editable" class="opacity-0 absolute inset-0 w-full focus-outline-none" ?disabled="${0}" @change="${0}"> ${0} </select> </span> </label> `),l({"h-xs whitespace-nowrap block ring-primary-50 rounded-s pl-s transition-colors":!0,"hover-bg-primary hover-text-primary-contrast focus-within-ring-2":n,"bg-primary-10 text-primary":n,"bg-contrast-5 text-disabled":this.disabled,"bg-contrast-5 text-secondary":this.readonly&&!this.disabled}),e,this.t(i[s]),!n,(e=>{const t=e.currentTarget;r(t.options[t.selectedIndex].value)}),Object.entries(i).map((([e,i])=>t(h||(h=g` <option value="${0}" ?selected="${0}"> ${0} </option> `),e,e===s,this.t(i)))))}__renderSwitch({value:e,options:s,onChange:i}){const r=!this.disabled&&!this.readonly,n=`switch-${Math.floor(Math.random()*Math.pow(10,10))}`,a="width: 0.4rem; height: 0.4rem";return t(p||(p=g` <div class="${0}" @click="${0}"> <div class="leading-none font-medium px-xs pointer-events-none"> ${0} </div> <div class="flex justify-evenly h-full ${0}"> <div style="${0}" class="bg-current rounded-full"></div> <div style="${0}" class="border border-current rounded-full"></div> </div> </div> `),l({"h-xs px-xs space-x-xs flex items-center rounded-s transition-colors":!0,"hover-bg-primary hover-text-primary-contrast focus-within-ring-2":r,"ring-primary-50 cursor-pointer bg-primary-10 text-primary":r,"bg-contrast-5 text-disabled":this.disabled,"bg-contrast-5 text-secondary":this.readonly&&!this.disabled}),(t=>{if(!r)return;t.currentTarget.querySelector("input").focus(),i(0===e?1:0)}),s.map(((s,a)=>t(m||(m=g` <label> <foxy-i18n class="${0}" infer="" key="${0}"> </foxy-i18n> <input data-testclass="interactive editable" class="sr-only" value="${0}" name="${0}" type="radio" ?disabled="${0}" ?checked="${0}" @change="${0}"> </label> `),l({"sr-only":a!==e}),s,s,n,!r,a===e,(e=>{e.currentTarget.checked&&i(a)})))),e?"flex-col-reverse":"flex-col",a,a)}__renderField({value:e,label:s,onChange:i}){const r=!this.disabled&&!this.readonly,n=e.toString().length;return t(b||(b=g` <label> <foxy-i18n class="sr-only" infer="" key="${0}"></foxy-i18n> <input data-testclass="interactive editable" style="width:calc(var(--lumo-size-xl) * ${0})" class="${0}" type="number" lang="${0}" min="0" ?disabled="${0}" .value="${0}" @input="${0}"> </label> `),s,n<=2?1:2.5,l({"transition-colors border p-xs h-xs font-medium text-m rounded-s":!0,"ring-primary-50 text-body bg-contrast-10":r,"hover-bg-contrast-20":r,"focus-outline-none focus-ring-2":r,"text-disabled bg-contrast-5":this.disabled,"text-secondary":this.readonly&&!this.disabled,"border-transparent border-solid":!this.readonly,"border-dashed border-contrast-30":this.readonly}),this.lang,!r,e,(e=>{const t=e.currentTarget;i(t.value||"0")}))}__renderTier(e){var s;const i=null!==(s=e.tier)&&void 0!==s?s:"0-0",r=i.includes("+")?"+":"-",[n,a]=i.split(/[-+]/).map((e=>parseFloat(e)));return t(f||(f=g` <div data-testclass="rules:tier" aria-label="${0}" class="flex items-start justify-between rounded bg-contrast-5"> <div class="${0}"> <foxy-i18n class="uppercase text-s font-medium" infer="" key="tier_if"></foxy-i18n> ${0} <div class="h-s w-s">${0}</div> ${0} <foxy-i18n class="uppercase text-s font-medium" infer="" key="tier_then"></foxy-i18n> ${0} ${0} <foxy-i18n class="uppercase text-s font-medium" infer="" key="tier_by"></foxy-i18n> ${0} ${0} </div> ${0} </div> `),this.t("tier"),l({"transition-colors flex flex-wrap items-center gap-s p-s":!0,"text-tertiary":!this.disabled,"text-disabled":this.disabled}),this.__renderSwitch({options:["total","quantity"],value:"price"===e.source?0:1,onChange:t=>e.onChange({source:t?"quantity":"price"})}),d,this.__renderField({label:"from",value:String(n),onChange:t=>e.onChange({tier:`${t}${r}${a}`})}),this.__renderSwitch({options:["reduce","increase"],value:"-"===r?0:1,onChange:t=>e.onChange({tier:`${n}${t?"+":"-"}${a}`})}),this.__renderSelect({options:{incremental:"tier_incremental",allunits:"tier_allunits",repeat:"tier_repeat",single:"tier_single"},value:e.method,label:"target",onChange:t=>e.onChange({method:t})}),this.__renderField({label:"adjustment",value:String(a),onChange:t=>e.onChange({tier:`${n}${r}${t}`})}),this.__renderSwitch({value:"percentage"===e.units?0:1,options:["%","¤"],onChange:t=>e.onChange({units:t?"amount":"percentage"})}),e.tier?t(y||(y=g` <button data-testclass="interactive" aria-label="${0}" class="${0}" ?disabled="${0}" ?hidden="${0}" @click="${0}"> <iron-icon icon="lumo:cross"></iron-icon> </button> `),this.t("delete"),l({"w-s h-s m-s flex-shrink-0 rounded-s transition-colors ring-primary-50":!0,"text-tertiary hover-text-secondary focus-outline-none focus-ring-2":!this.disabled,"text-disabled cursor-default":this.disabled}),this.disabled,this.readonly,(()=>e.onDelete())):"")}}customElements.define("foxy-discount-builder",$);export{$ as DiscountBuilder};
1
+ import"./shared-1b4a3e56.js";import{_ as e}from"./shared-7fec42f2.js";import{h as t,L as s}from"./shared-ba5c42c7.js";import{r as i}from"./shared-5fd5805c.js";import{C as r}from"./shared-c782b9fa.js";import{I as n}from"./shared-0ea750af.js";import{T as a,a as o}from"./shared-a89e8a07.js";import{c as l}from"./shared-4e709717.js";import{o as d}from"./shared-63c32024.js";import"./shared-53e42a77.js";let c,u,h,p,m,b,f,y,g=e=>e;const v=a(r(o(n(s),"discount-builder")));class $ extends v{constructor(){super(...arguments),this.value=null}static get properties(){return e(e({},super.properties),{},{value:{type:String}})}get parsedValue(){var e;let t="",s="",i="quantity_amount";try{const[[r,n]]=Array.from(new URLSearchParams(null!==(e=this.value)&&void 0!==e?e:"").entries()),a=r.substring(9);["price_amount","price_percentage","quantity_amount","quantity_percentage"].includes(a)&&(i=a);const o=n.indexOf("{"),l=n.lastIndexOf("}");-1!==o&&-1!==l&&(t=n.substring(o+1,l),s=n.substring(0,o))}catch(e){}return 0===s.length&&(s="Discount"),{type:i,name:s,details:t}}set parsedValue({name:e,type:t,details:s}){this.value=new URLSearchParams([[`discount_${t}`,`${e}{${s}}`]]).toString()}render(){var s;const r=this.parsedValue.details.split("|").filter((e=>!!e.trim())),n=null!==(s=/[-+]/.test(r[0])?null:r.shift())&&void 0!==s?s:"single",a="repeat"===n?[r[0]]:[...r,void 0],o=this.parsedValue.type,[l,d]=o.split("_");return t(c||(c=g` <div class="space-y-s"> ${0} </div> `),i(a,((t,s)=>this.__renderTier({source:l,method:n,units:d,tier:t,onChange:i=>{var a,o,c;const u=null!==(a=i.method)&&void 0!==a?a:n,h=null!==(o=i.source)&&void 0!==o?o:l,p=null!==(c=i.units)&&void 0!==c?c:d,m=i.tier,b=[...r];if(m){const e=t?s:b.length,i=t?1:0;b.splice(e,i,m)}this.parsedValue=e(e({},this.parsedValue),{},{type:`${h}_${p}`,details:`${u}|${b.join("|")}`}),this.dispatchEvent(new CustomEvent("change"))},onDelete:()=>{const t=r.filter(((e,t)=>t!==s)),i=`${n}|${t.join("|")}`;this.parsedValue=e(e({},this.parsedValue),{},{details:i}),this.dispatchEvent(new CustomEvent("change"))}}))))}__renderSelect({label:e,value:s,options:i,onChange:r}){const n=!this.disabled&&!this.readonly;return t(u||(u=g` <label class="${0}"> <foxy-i18n class="sr-only" infer="" key="${0}"></foxy-i18n> <span class="relative leading-none font-medium flex items-center h-full"> <span class="truncate">${0}</span> <iron-icon class="icon-inline text-xl ml-xs" icon="icons:expand-more"></iron-icon> <select data-testclass="interactive editable" class="opacity-0 absolute inset-0 w-full focus-outline-none" ?disabled="${0}" @change="${0}"> ${0} </select> </span> </label> `),l({"h-xs whitespace-nowrap block ring-primary-50 rounded-s pl-s transition-colors":!0,"hover-bg-primary hover-text-primary-contrast focus-within-ring-2":n,"bg-primary-10 text-primary":n,"bg-contrast-5 text-disabled":this.disabled,"bg-contrast-5 text-secondary":this.readonly&&!this.disabled}),e,this.t(i[s]),!n,(e=>{const t=e.currentTarget;r(t.options[t.selectedIndex].value)}),Object.entries(i).map((([e,i])=>t(h||(h=g` <option value="${0}" ?selected="${0}"> ${0} </option> `),e,e===s,this.t(i)))))}__renderSwitch({value:e,options:s,onChange:i}){const r=!this.disabled&&!this.readonly,n=`switch-${Math.floor(Math.random()*Math.pow(10,10))}`,a="width: 0.4rem; height: 0.4rem";return t(p||(p=g` <div class="${0}" @click="${0}"> <div class="leading-none font-medium px-xs pointer-events-none"> ${0} </div> <div class="flex justify-evenly h-full ${0}"> <div style="${0}" class="bg-current rounded-full"></div> <div style="${0}" class="border border-current rounded-full"></div> </div> </div> `),l({"h-xs px-xs space-x-xs flex items-center rounded-s transition-colors":!0,"hover-bg-primary hover-text-primary-contrast focus-within-ring-2":r,"ring-primary-50 cursor-pointer bg-primary-10 text-primary":r,"bg-contrast-5 text-disabled":this.disabled,"bg-contrast-5 text-secondary":this.readonly&&!this.disabled}),(t=>{if(!r)return;t.currentTarget.querySelector("input").focus(),i(0===e?1:0)}),s.map(((s,a)=>t(m||(m=g` <label> <foxy-i18n class="${0}" infer="" key="${0}"> </foxy-i18n> <input data-testclass="interactive editable" class="sr-only" value="${0}" name="${0}" type="radio" ?disabled="${0}" ?checked="${0}" @change="${0}"> </label> `),l({"sr-only":a!==e}),s,s,n,!r,a===e,(e=>{e.currentTarget.checked&&i(a)})))),e?"flex-col-reverse":"flex-col",a,a)}__renderField({value:e,label:s,onChange:i}){const r=!this.disabled&&!this.readonly,n=e.toString().length;return t(b||(b=g` <label> <foxy-i18n class="sr-only" infer="" key="${0}"></foxy-i18n> <input data-testclass="interactive editable" style="width:calc(var(--lumo-size-xl) * ${0})" class="${0}" type="number" lang="${0}" min="0" ?disabled="${0}" .value="${0}" @input="${0}"> </label> `),s,n<=2?1:2.5,l({"transition-colors border p-xs h-xs font-medium text-m rounded-s":!0,"ring-primary-50 text-body bg-contrast-10":r,"hover-bg-contrast-20":r,"focus-outline-none focus-ring-2":r,"text-disabled bg-contrast-5":this.disabled,"text-secondary":this.readonly&&!this.disabled,"border-transparent border-solid":!this.readonly,"border-dashed border-contrast-30":this.readonly}),this.lang,!r,e,(e=>{const t=e.currentTarget;i(t.value||"0")}))}__renderTier(e){var s;const i=null!==(s=e.tier)&&void 0!==s?s:"0-0",r=i.includes("+")?"+":"-",[n,a]=i.split(/[-+]/).map((e=>parseFloat(e)));return t(f||(f=g` <div data-testclass="rules:tier" aria-label="${0}" class="flex items-start justify-between rounded bg-contrast-5"> <div class="${0}"> <foxy-i18n class="uppercase text-s font-medium" infer="" key="tier_if"></foxy-i18n> ${0} <div class="h-s w-s">${0}</div> ${0} <foxy-i18n class="uppercase text-s font-medium" infer="" key="tier_then"></foxy-i18n> ${0} ${0} <foxy-i18n class="uppercase text-s font-medium" infer="" key="tier_by"></foxy-i18n> ${0} ${0} </div> ${0} </div> `),this.t("tier"),l({"transition-colors flex flex-wrap items-center gap-s p-s":!0,"text-tertiary":!this.disabled,"text-disabled":this.disabled}),this.__renderSwitch({options:["total","quantity"],value:"price"===e.source?0:1,onChange:t=>e.onChange({source:t?"quantity":"price"})}),d,this.__renderField({label:"from",value:String(n),onChange:t=>e.onChange({tier:`${t}${r}${a}`})}),this.__renderSwitch({options:["reduce","increase"],value:"-"===r?0:1,onChange:t=>e.onChange({tier:`${n}${t?"+":"-"}${a}`})}),this.__renderSelect({options:{incremental:"tier_incremental",allunits:"tier_allunits",repeat:"tier_repeat",single:"tier_single"},value:e.method,label:"target",onChange:t=>e.onChange({method:t})}),this.__renderField({label:"adjustment",value:String(a),onChange:t=>e.onChange({tier:`${n}${r}${t}`})}),this.__renderSwitch({value:"percentage"===e.units?0:1,options:["%","¤"],onChange:t=>e.onChange({units:t?"amount":"percentage"})}),e.tier?t(y||(y=g` <button data-testclass="interactive" aria-label="${0}" class="${0}" ?disabled="${0}" ?hidden="${0}" @click="${0}"> <iron-icon icon="lumo:cross"></iron-icon> </button> `),this.t("delete"),l({"w-s h-s m-s flex-shrink-0 rounded-s transition-colors ring-primary-50":!0,"text-tertiary hover-text-secondary focus-outline-none focus-ring-2":!this.disabled,"text-disabled cursor-default":this.disabled}),this.disabled,this.readonly,(()=>e.onDelete())):"")}}customElements.define("foxy-discount-builder",$);export{$ as DiscountBuilder};
@@ -1 +1 @@
1
- import"./shared-5212ef4f.js";import"./foxy-spinner.js";import"./shared-2f5cc0e2.js";import{h as r}from"./shared-ba5c42c7.js";import{a as s}from"./shared-aa6dab90.js";import{T as e}from"./shared-b1435a0a.js";import"./shared-dc4d2996.js";import"./shared-e6a1eef8.js";import"./shared-567ba8ae.js";import"./shared-e2d3c014.js";import"./shared-cb58dfcd.js";import"./shared-2aa23b5f.js";import"./shared-343d1fd7.js";import"./shared-5afb584d.js";import"./shared-53e42a77.js";import"./shared-bb6d7b97.js";import"./shared-f83207fb.js";import"./shared-5592ec6e.js";import"./shared-cd96ff03.js";import"./shared-5e4a03d1.js";import"./shared-7594e563.js";import"./shared-0aedd809.js";import"./shared-5ef40e86.js";import"./shared-4e709717.js";let t,a,i=r=>r;class o extends(s(e,"discount-card")){constructor(){super(...arguments),this.__currencyDisplay="",this.__currency=""}renderBody(){return super.renderBody({title:s=>r(t||(t=i`${0} &bull; ${0}`),s.name,s.code),subtitle:s=>r(a||(a=i` <foxy-i18n options="${0}" class="${0}" lang="${0}" key="price" ns="${0}"> </foxy-i18n> `),JSON.stringify({currencyDisplay:this.__currencyDisplay,amount:`${s.amount} ${this.__currency}`}),s.amount>=0?"text-success":"text-error",this.lang,this.ns)})}async _sendGet(){const r=await super._sendGet(),[s,e]=await Promise.all([super._fetch(r._links["fx:transaction"].href),super._fetch(r._links["fx:store"].href)]);return this.__currency=s.currency_code,this.__currencyDisplay=e.use_international_currency_symbol?"code":"symbol",r}}customElements.define("foxy-discount-card",o);export{o as DiscountCard};
1
+ import"./shared-5212ef4f.js";import"./foxy-spinner.js";import"./shared-1b4a3e56.js";import{h as r}from"./shared-ba5c42c7.js";import{a as s}from"./shared-a89e8a07.js";import{T as e}from"./shared-7d1512e1.js";import"./shared-ad8d209a.js";import"./shared-d3f37507.js";import"./shared-5af5ab06.js";import"./shared-9884fb7d.js";import"./shared-7fec42f2.js";import"./shared-0ea750af.js";import"./shared-c782b9fa.js";import"./shared-53e42a77.js";import"./shared-160072f2.js";import"./shared-da95bb48.js";import"./shared-65b2760f.js";import"./shared-cd96ff03.js";import"./shared-37869bac.js";import"./shared-d6a0954b.js";import"./shared-1da47f50.js";import"./shared-e1e4d8f5.js";import"./shared-4e709717.js";let t,a,i=r=>r;class o extends(s(e,"discount-card")){constructor(){super(...arguments),this.__currencyDisplay="",this.__currency=""}renderBody(){return super.renderBody({title:s=>r(t||(t=i`${0} &bull; ${0}`),s.name,s.code),subtitle:s=>r(a||(a=i` <foxy-i18n options="${0}" class="${0}" lang="${0}" key="price" ns="${0}"> </foxy-i18n> `),JSON.stringify({currencyDisplay:this.__currencyDisplay,amount:`${s.amount} ${this.__currency}`}),s.amount>=0?"text-success":"text-error",this.lang,this.ns)})}async _sendGet(){const r=await super._sendGet(),[s,e]=await Promise.all([super._fetch(r._links["fx:transaction"].href),super._fetch(r._links["fx:store"].href)]);return this.__currency=s.currency_code,this.__currencyDisplay=e.use_international_currency_symbol?"code":"symbol",r}}customElements.define("foxy-discount-card",o);export{o as DiscountCard};
@@ -1 +1 @@
1
- import"./shared-5212ef4f.js";import"./foxy-spinner.js";import"./shared-2f5cc0e2.js";import{h as r}from"./shared-ba5c42c7.js";import{a as e}from"./shared-aa6dab90.js";import{T as s}from"./shared-b1435a0a.js";import"./shared-dc4d2996.js";import"./shared-e6a1eef8.js";import"./shared-567ba8ae.js";import"./shared-e2d3c014.js";import"./shared-cb58dfcd.js";import"./shared-2aa23b5f.js";import"./shared-343d1fd7.js";import"./shared-5afb584d.js";import"./shared-53e42a77.js";import"./shared-bb6d7b97.js";import"./shared-f83207fb.js";import"./shared-5592ec6e.js";import"./shared-cd96ff03.js";import"./shared-5e4a03d1.js";import"./shared-7594e563.js";import"./shared-0aedd809.js";import"./shared-5ef40e86.js";import"./shared-4e709717.js";let t,a,i=r=>r;const c=e(s,"discount-detail-card");class o extends c{constructor(){super(...arguments),this.__currencyDisplay="",this.__currency=""}renderBody(){return super.renderBody({title:e=>r(t||(t=i`${0}`),e.name),subtitle:e=>{let s;try{s=Math.abs(e.amount_per).toLocaleString(this.lang||"en",{maximumFractionDigits:2,minimumFractionDigits:2,currencyDisplay:this.__currencyDisplay,currency:this.__currency,style:"currency"})}catch(r){s="--"}return r(a||(a=i` <span class="${0}">${0}</span> `),e.amount_per>0?"text-success":"text-error",s)}})}async _sendGet(){const r=await super._sendGet(),[e,s]=await Promise.all([super._fetch(r._links["fx:transaction"].href),super._fetch(r._links["fx:store"].href)]);return this.__currency=e.currency_code,this.__currencyDisplay=s.use_international_currency_symbol?"code":"symbol",r}}customElements.define("foxy-discount-detail-card",o);export{o as DiscountDetailCard};
1
+ import"./shared-5212ef4f.js";import"./foxy-spinner.js";import"./shared-1b4a3e56.js";import{h as r}from"./shared-ba5c42c7.js";import{a as s}from"./shared-a89e8a07.js";import{T as e}from"./shared-7d1512e1.js";import"./shared-ad8d209a.js";import"./shared-d3f37507.js";import"./shared-5af5ab06.js";import"./shared-9884fb7d.js";import"./shared-7fec42f2.js";import"./shared-0ea750af.js";import"./shared-c782b9fa.js";import"./shared-53e42a77.js";import"./shared-160072f2.js";import"./shared-da95bb48.js";import"./shared-65b2760f.js";import"./shared-cd96ff03.js";import"./shared-37869bac.js";import"./shared-d6a0954b.js";import"./shared-1da47f50.js";import"./shared-e1e4d8f5.js";import"./shared-4e709717.js";let t,a,i=r=>r;const o=s(e,"discount-detail-card");class c extends o{constructor(){super(...arguments),this.__currencyDisplay="",this.__currency=""}renderBody(){return super.renderBody({title:s=>r(t||(t=i`${0}`),s.name),subtitle:s=>{let e;try{e=Math.abs(s.amount_per).toLocaleString(this.lang||"en",{maximumFractionDigits:2,minimumFractionDigits:2,currencyDisplay:this.__currencyDisplay,currency:this.__currency,style:"currency"})}catch(r){e="--"}return r(a||(a=i` <span class="${0}">${0}</span> `),s.amount_per>0?"text-success":"text-error",e)}})}async _sendGet(){const r=await super._sendGet(),[s,e]=await Promise.all([super._fetch(r._links["fx:transaction"].href),super._fetch(r._links["fx:store"].href)]);return this.__currency=s.currency_code,this.__currencyDisplay=e.use_international_currency_symbol?"code":"symbol",r}}customElements.define("foxy-discount-detail-card",c);export{c as DiscountDetailCard};
@@ -1 +1 @@
1
- import{_ as t}from"./shared-cb58dfcd.js";import"./shared-1cd02e50.js";import"./shared-e88763ec.js";import"./shared-c502de27.js";import{L as e,c as s,h as i}from"./shared-ba5c42c7.js";import{T as r,y as n}from"./shared-aa6dab90.js";import{p as a}from"./shared-2f5cc0e2.js";import"./shared-dc4d2996.js";import"./shared-9c010e0a.js";import"./shared-8ea2bbcc.js";import{c as o}from"./shared-4e709717.js";import{b as c,C as h,I as d}from"./shared-74d599dc.js";import"./shared-c31c50e2.js";import{E as l}from"./shared-2828fcbf.js";import{G as m}from"./shared-4b393539.js";import"./shared-a4216b50.js";import"./shared-8a0bd046.js";import"./shared-5f8c01f8.js";import"./shared-fed829c2.js";import"./shared-9342ca50.js";import"./shared-567ba8ae.js";import"./shared-ad60e8d1.js";import"./shared-343d1fd7.js";import"./shared-2aa23b5f.js";import"./shared-e6a1eef8.js";import"./shared-678beccf.js";import"./shared-2cb397e4.js";import"./shared-8f009bbb.js";import"./shared-d7d949bc.js";import"./shared-7fd51889.js";import"./shared-53e476fd.js";import"./shared-5ef40e86.js";import"./shared-4dd24dda.js";import"./shared-6962f117.js";import"./shared-5592ec6e.js";import"./shared-5afb584d.js";import"./shared-53e42a77.js";class u extends CustomEvent{constructor(t){super("change",{detail:t})}}let p,y,g=t=>t;class f extends(r(e)){constructor(){super(...arguments),this.readonly=!1,this.disabled=!1,this.checked=!1}static get properties(){return t(t({},super.properties),{},{readonly:{type:Boolean},disabled:{type:Boolean},checked:{type:Boolean}})}static get styles(){return[super.styles,s(p||(p=g`:host{--check-size:1.125rem}label{margin:calc(((1rem * var(--lumo-line-height-s)) - var(--check-size))/ -2) 0}label>:first-child{height:calc(1rem * var(--lumo-line-height-s))}.ml-xxl{margin-left:calc(var(--lumo-space-m) + var(--check-size))}.check{height:var(--check-size);width:var(--check-size)}`))]}render(){return i(y||(y=g` <label class="${0}"> <div class="flex items-center"> <div class="${0}"> <iron-icon icon="lumo:checkmark" class="${0}"> </iron-icon> <input type="checkbox" class="sr-only" .checked="${0}" ?disabled="${0}" data-testid="input" @change="${0}"> </div> </div> <div class="flex-1 font-lumo leading-s ml-m"> <slot></slot> </div> </label> <div class="${0}"> <slot name="content"></slot> </div> `),o({"flex items-start group transition-colors":!0,"cursor-default":this.disabled||this.readonly,"text-disabled":this.disabled,"text-secondary":this.readonly,"cursor-pointer":!this.disabled}),o({"flex-shrink-0 check transition-colors rounded-s border":!0,"focus-within-shadow-outline":!0,"bg-primary text-primary-contrast":!this.readonly&&this.checked,"border-dashed border-contrast-30":this.readonly,"border-transparent":!this.readonly,"opacity-50":this.disabled,"text-secondary bg-contrast-20":!this.readonly&&!this.checked,"group-hover-bg-contrast-30":!this.readonly&&!this.checked}),o({"block w-full h-full transition-transform transform":!0,"scale-100":this.checked,"scale-0":!this.checked}),this.checked,this.disabled,(t=>{if(this.readonly)return t.preventDefault();t.stopPropagation(),this.checked=!this.checked,this.dispatchEvent(new u(this.checked))}),o({"font-lumo ml-xxl transition-colors":!0,"text-disabled":this.disabled}))}}class b extends CustomEvent{constructor(t){super("change",{detail:t})}}class x extends CustomEvent{constructor(){super("submit",{cancelable:!0})}}let $,v,_,j,k,q,w,S,A=t=>t;class E extends n{constructor(){super("donation"),this.currency=null,this.amount=null,this.store=null,this.name=null,this.custom=null,this.amounts=null,this.frequency=null,this.frequencies=null,this.designation=null,this.designations=null,this.comment=null,this.anonymity=!1,this.anonymous=!1,this.image=null,this.code=null,this.url=null,this.cart="checkout",this.target="_top"}static get scopedElements(){return{"vaadin-text-area":customElements.get("vaadin-text-area"),"x-error-screen":l,"vaadin-button":customElements.get("vaadin-button"),"x-dropdown":c,"x-checkbox":f,"x-choice":h,"x-group":m,"x-i18n":d}}static get properties(){return t(t({},super.properties),{},{currency:{type:String},custom:{type:Array},amount:{type:Number},amounts:{type:Array},frequency:{type:String},frequencies:{type:Array},designation:{type:Array},designations:{type:Array},comment:{type:String},anonymity:{reflect:!0,type:Boolean},anonymous:{reflect:!0,type:Boolean},image:{type:String},store:{type:String},name:{type:String},code:{type:String},url:{type:String},cart:{type:String},target:{type:String},empty:{type:String}})}static get events(){return{change:b,submit:x}}submit(){this.dispatchEvent(new x)&&this.__form.submit()}render(){var t,e;if(!(this.currency&&this.amount&&this.store&&this.name))return i($||($=A` <x-error-screen data-testid="error" type="setup_needed" class="relative"></x-error-screen> `));const s=this.store.includes(".")?this.store:`${this.store}.foxycart.com`;return i(v||(v=A` <form target="${0}" class="sr-only" method="POST" action="https://${0}/cart" data-testid="form"> ${0} </form> <section> ${0} </section> <section> ${0} </section> <section> ${0} </section> <section> ${0} <div class="flex flex-wrap -m-s"> ${0} <div class="flex-1 p-s"> <vaadin-button class="w-full" theme="primary" data-testid="submit" @click="${0}"> <x-i18n .opts="${0}" lang="${0}" key="${0}" ns="${0}"> </x-i18n> </vaadin-button> </div> </div> </section> `),this.target,s,[...this.__data.entries()].map((([t,e])=>i(_||(_=A`<input type="hidden" name="${0}" value="${0}">`),t,e))),this.amounts&&this.amounts.length>0?i(j||(j=A` <x-group frame> <x-i18n ns="${0}" lang="${0}" key="amount" slot="header"></x-i18n> <x-choice ?custom="${0}" .getText="${0}" .items="${0}" .value="${0}" type="number" lang="${0}" min="1" ns="${0}" data-testid="amount" @change="${0}"> </x-choice> </x-group> <slot name="amount" class="block my-m"></slot> `),this.ns,this.lang,!!(null===(t=this.custom)||void 0===t?void 0:t.includes("amount")),(t=>this.__translateAmount(parseFloat(t))),this.amounts.map(String),this.amount.toString(),this.lang,this.ns,(t=>{const e=parseFloat(t.detail);this.amount=isNaN(e)?1:e})):"",this.designations&&this.designations.length>0?i(k||(k=A` <x-dropdown .label="${0}" .items="${0}" .value="${0}" data-testid="designation" @change="${0}"> </x-dropdown> <slot name="designation" class="block my-m"></slot> `),this._t("designation").toString(),this.designations,Array.isArray(this.designation)?"${this.designation[0]}: ${this.designation[1]}":this.designation,(t=>{this.designation=t.detail})):"","string"==typeof this.comment?i(q||(q=A` <vaadin-text-area placeholder="${0}" value="${0}" label="${0}" class="w-full" data-testid="comment" @input="${0}"> </vaadin-text-area> <slot name="comment" class="block my-m"></slot> `),this._t("comment_placeholder").toString(),this.comment,this._t("comment_label").toString(),(t=>{t.stopPropagation(),this.comment=t.target.value})):"",this.anonymity?i(w||(w=A` <x-checkbox class="my-m" data-testid="anonymity" ?checked="${0}" @change="${0}"> ${0} </x-checkbox> `),this.anonymous,(t=>this.anonymous=t.detail),this._t("anonymous")):"",this.frequencies&&this.frequencies.length>0?i(S||(S=A` <div class="flex-1 p-s"> <x-dropdown .value="${0}" .items="${0}" .getText="${0}" data-testid="frequency" @change="${0}"> </x-dropdown> </div> `),this.frequency,this.frequencies,this.__translateFrequency.bind(this),(t=>{this.frequency=t.detail})):"",(()=>this.submit()),{amount:this.__translateAmount(this.amount),frequency:this.frequency?this.__translateFrequency(this.frequency):""},this.lang,this.frequency&&!(null===(e=this.frequencies)||void 0===e?void 0:e.length)?"donate_recurrently":"donate",this.ns)}updated(){this.dispatchEvent(new b(this.__data))}get __data(){const t=new FormData;return"string"==typeof this.designation&&t.set("Designation",this.designation.trim()),"number"==typeof this.amount&&"string"==typeof this.currency&&t.set("price",`${this.amount.toFixed(2)}${this.currency}`),this.frequency&&t.set("sub_frequency",this.frequency),"string"==typeof this.comment&&t.set("Comment",this.comment.trim()),"string"==typeof this.image&&t.set("image",this.image),"string"==typeof this.code&&t.set("code",this.code),"string"==typeof this.name&&t.set("name",this.name.trim()),"string"==typeof this.url&&t.set("url",this.url),"string"==typeof this.cart&&t.set("cart",this.cart),this.empty&&t.set("empty",this.empty),this.anonymous&&t.set("Anonymous","true"),window.FC&&t.set(window.FC.settings.session_name,window.FC.settings.session_id),t.set("quantity","1"),t}get __form(){return this.shadowRoot.querySelector("form")}__translateFrequency(t){if(!t||t.match(/^\s*$/))return this._t("frequency_once");if(".5m"===t)return this._t("frequency_0_5m");const{count:e,units:s}=a(t);return this._t("frequency",{units:this._t(s,{count:e}),count:e})}__translateAmount(t){return t.toLocaleString(this.lang,{minimumFractionDigits:0,currency:this.currency,style:"currency"})}}customElements.define("foxy-donation",E);export{E as Donation};
1
+ import{_ as t}from"./shared-7fec42f2.js";import"./shared-b15efc37.js";import"./shared-742899dc.js";import"./shared-ce0df878.js";import{L as e,c as s,h as i}from"./shared-ba5c42c7.js";import{T as n,y as a}from"./shared-a89e8a07.js";import{p as r}from"./shared-1b4a3e56.js";import"./shared-ad8d209a.js";import"./shared-3f4549ba.js";import"./shared-a4871405.js";import{c as o}from"./shared-4e709717.js";import{b as c,C as l,I as d}from"./shared-364b98a1.js";import"./shared-a16ef278.js";import{E as h}from"./shared-50a355d6.js";import{G as m}from"./shared-46a20973.js";import"./shared-9bfb584b.js";import"./shared-59c064c2.js";import"./shared-3c64ecdd.js";import"./shared-d4928805.js";import"./shared-1f95aa71.js";import"./shared-5af5ab06.js";import"./shared-6313b188.js";import"./shared-0ea750af.js";import"./shared-d3f37507.js";import"./shared-acee789f.js";import"./shared-fa482a7d.js";import"./shared-0fb90a71.js";import"./shared-d8b0432a.js";import"./shared-e02936f0.js";import"./shared-53e476fd.js";import"./shared-e1e4d8f5.js";import"./shared-2c7e0ed1.js";import"./shared-140c6b70.js";import"./shared-65b2760f.js";import"./shared-c782b9fa.js";import"./shared-53e42a77.js";class u extends CustomEvent{constructor(t){super("change",{detail:t})}}let p,y,g=t=>t;class f extends(n(e)){constructor(){super(...arguments),this.readonly=!1,this.disabled=!1,this.checked=!1}static get properties(){return t(t({},super.properties),{},{readonly:{type:Boolean},disabled:{type:Boolean},checked:{type:Boolean}})}static get styles(){return[super.styles,s(p||(p=g`:host{--check-size:1.125rem}label{margin:calc(((1rem * var(--lumo-line-height-s)) - var(--check-size))/ -2) 0}label>:first-child{height:calc(1rem * var(--lumo-line-height-s))}.ml-xxl{margin-left:calc(var(--lumo-space-m) + var(--check-size))}.check{height:var(--check-size);width:var(--check-size)}`))]}render(){return i(y||(y=g` <label class="${0}"> <div class="flex items-center"> <div class="${0}"> <iron-icon icon="lumo:checkmark" class="${0}"> </iron-icon> <input type="checkbox" class="sr-only" .checked="${0}" ?disabled="${0}" data-testid="input" @change="${0}"> </div> </div> <div class="flex-1 font-lumo leading-s ml-m"> <slot></slot> </div> </label> <div class="${0}"> <slot name="content"></slot> </div> `),o({"flex items-start group transition-colors":!0,"cursor-default":this.disabled||this.readonly,"text-disabled":this.disabled,"text-secondary":this.readonly,"cursor-pointer":!this.disabled}),o({"flex-shrink-0 check transition-colors rounded-s border":!0,"focus-within-shadow-outline":!0,"bg-primary text-primary-contrast":!this.readonly&&this.checked,"border-dashed border-contrast-30":this.readonly,"border-transparent":!this.readonly,"opacity-50":this.disabled,"text-secondary bg-contrast-20":!this.readonly&&!this.checked,"group-hover-bg-contrast-30":!this.readonly&&!this.checked}),o({"block w-full h-full transition-transform transform":!0,"scale-100":this.checked,"scale-0":!this.checked}),this.checked,this.disabled,(t=>{if(this.readonly)return t.preventDefault();t.stopPropagation(),this.checked=!this.checked,this.dispatchEvent(new u(this.checked))}),o({"font-lumo ml-xxl transition-colors":!0,"text-disabled":this.disabled}))}}class b extends CustomEvent{constructor(t){super("change",{detail:t})}}class v extends CustomEvent{constructor(){super("submit",{cancelable:!0})}}let x,_,$,k,j,w,q,S,C=t=>t;class F extends a{constructor(){super("donation"),this.currency=null,this.amount=null,this.store=null,this.name=null,this.custom=null,this.amounts=null,this.frequency=null,this.frequencies=null,this.designation=null,this.designations=null,this.comment=null,this.anonymity=!1,this.anonymous=!1,this.image=null,this.code=null,this.url=null,this.cart="checkout",this.target="_top",this.__fcSessionPollInterval=null}static get scopedElements(){return{"vaadin-text-area":customElements.get("vaadin-text-area"),"x-error-screen":h,"vaadin-button":customElements.get("vaadin-button"),"x-dropdown":c,"x-checkbox":f,"x-choice":l,"x-group":m,"x-i18n":d}}static get properties(){return t(t({},super.properties),{},{currency:{type:String},custom:{type:Array},amount:{type:Number},amounts:{type:Array},frequency:{type:String},frequencies:{type:Array},designation:{type:Array},designations:{type:Array},comment:{type:String},anonymity:{reflect:!0,type:Boolean},anonymous:{reflect:!0,type:Boolean},image:{type:String},store:{type:String},name:{type:String},code:{type:String},url:{type:String},cart:{type:String},target:{type:String},empty:{type:String}})}static get events(){return{change:b,submit:v}}submit(){this.dispatchEvent(new v)&&this.__form.submit()}render(){var t,e;if(!(this.currency&&this.amount&&this.store&&this.name))return i(x||(x=C` <x-error-screen data-testid="error" type="setup_needed" class="relative"></x-error-screen> `));const s=this.store.includes(".")?this.store:`${this.store}.foxycart.com`;return i(_||(_=C` <form target="${0}" class="sr-only" method="POST" action="https://${0}/cart" data-testid="form"> ${0} </form> <section> ${0} </section> <section> ${0} </section> <section> ${0} </section> <section> ${0} <div class="flex flex-wrap -m-s"> ${0} <div class="flex-1 p-s"> <vaadin-button class="w-full" theme="primary" data-testid="submit" @click="${0}"> <x-i18n .opts="${0}" lang="${0}" key="${0}" ns="${0}"> </x-i18n> </vaadin-button> </div> </div> </section> `),this.target,s,[...this.__data.entries()].map((([t,e])=>i($||($=C`<input type="hidden" name="${0}" value="${0}">`),t,e))),this.amounts&&this.amounts.length>0?i(k||(k=C` <x-group frame> <x-i18n ns="${0}" lang="${0}" key="amount" slot="header"></x-i18n> <x-choice ?custom="${0}" .getText="${0}" .items="${0}" .value="${0}" type="number" lang="${0}" min="1" ns="${0}" data-testid="amount" @change="${0}"> </x-choice> </x-group> <slot name="amount" class="block my-m"></slot> `),this.ns,this.lang,!!(null===(t=this.custom)||void 0===t?void 0:t.includes("amount")),(t=>this.__translateAmount(parseFloat(t))),this.amounts.map(String),this.amount.toString(),this.lang,this.ns,(t=>{const e=parseFloat(t.detail);this.amount=isNaN(e)?1:e})):"",this.designations&&this.designations.length>0?i(j||(j=C` <x-dropdown .label="${0}" .items="${0}" .value="${0}" data-testid="designation" @change="${0}"> </x-dropdown> <slot name="designation" class="block my-m"></slot> `),this._t("designation").toString(),this.designations,Array.isArray(this.designation)?"${this.designation[0]}: ${this.designation[1]}":this.designation,(t=>{this.designation=t.detail})):"","string"==typeof this.comment?i(w||(w=C` <vaadin-text-area placeholder="${0}" value="${0}" label="${0}" class="w-full" data-testid="comment" @input="${0}"> </vaadin-text-area> <slot name="comment" class="block my-m"></slot> `),this._t("comment_placeholder").toString(),this.comment,this._t("comment_label").toString(),(t=>{t.stopPropagation(),this.comment=t.target.value})):"",this.anonymity?i(q||(q=C` <x-checkbox class="my-m" data-testid="anonymity" ?checked="${0}" @change="${0}"> ${0} </x-checkbox> `),this.anonymous,(t=>this.anonymous=t.detail),this._t("anonymous")):"",this.frequencies&&this.frequencies.length>0?i(S||(S=C` <div class="flex-1 p-s"> <x-dropdown .value="${0}" .items="${0}" .getText="${0}" data-testid="frequency" @change="${0}"> </x-dropdown> </div> `),this.frequency,this.frequencies,this.__translateFrequency.bind(this),(t=>{this.frequency=t.detail})):"",(()=>this.submit()),{amount:this.__translateAmount(this.amount),frequency:this.frequency?this.__translateFrequency(this.frequency):""},this.lang,this.frequency&&!(null===(e=this.frequencies)||void 0===e?void 0:e.length)?"donate_recurrently":"donate",this.ns)}connectedCallback(){var t;super.connectedCallback(),(null===(t=window.FC)||void 0===t?void 0:t.settings.session_id)||null!==this.__fcSessionPollInterval||(this.__fcSessionPollInterval=window.setInterval((()=>{var t,e;(null===(t=window.FC)||void 0===t?void 0:t.settings.session_id)&&(clearInterval(null!==(e=this.__fcSessionPollInterval)&&void 0!==e?e:void 0),this.requestUpdate())}),1e3))}disconnectedCallback(){var t;super.disconnectedCallback(),clearInterval(null!==(t=this.__fcSessionPollInterval)&&void 0!==t?t:void 0)}updated(){this.dispatchEvent(new b(this.__data))}get __data(){const t=new FormData;return"string"==typeof this.designation&&t.set("Designation",this.designation.trim()),"number"==typeof this.amount&&"string"==typeof this.currency&&t.set("price",`${this.amount.toFixed(2)}${this.currency}`),this.frequency&&t.set("sub_frequency",this.frequency),"string"==typeof this.comment&&t.set("Comment",this.comment.trim()),"string"==typeof this.image&&t.set("image",this.image),"string"==typeof this.code&&t.set("code",this.code),"string"==typeof this.name&&t.set("name",this.name.trim()),"string"==typeof this.url&&t.set("url",this.url),"string"==typeof this.cart&&t.set("cart",this.cart),this.empty&&t.set("empty",this.empty),this.anonymous&&t.set("Anonymous","true"),window.FC&&t.set(window.FC.settings.session_name,window.FC.settings.session_id),t.set("quantity","1"),t}get __form(){return this.shadowRoot.querySelector("form")}__translateFrequency(t){if(!t||t.match(/^\s*$/))return this._t("frequency_once");if(".5m"===t)return this._t("frequency_0_5m");const{count:e,units:s}=r(t);return this._t("frequency",{units:this._t(s,{count:e}),count:e})}__translateAmount(t){return t.toLocaleString(this.lang,{minimumFractionDigits:0,currency:this.currency,style:"currency"})}}customElements.define("foxy-donation",F);export{F as Donation};
@@ -1 +1 @@
1
- import"./shared-5212ef4f.js";import"./shared-894c69f8.js";import"./foxy-spinner.js";import"./shared-2f5cc0e2.js";import{a as e}from"./shared-aa6dab90.js";import{T as s}from"./shared-b1435a0a.js";import{h as t,s as r}from"./shared-ba5c42c7.js";import"./shared-bb6d7b97.js";import"./shared-f83207fb.js";import"./shared-cb58dfcd.js";import"./shared-5592ec6e.js";import"./shared-343d1fd7.js";import"./shared-cd96ff03.js";import"./shared-2aa23b5f.js";import"./shared-5e4a03d1.js";import"./shared-7594e563.js";import"./shared-0aedd809.js";import"./shared-5ef40e86.js";import"./shared-4e709717.js";import"./shared-dc4d2996.js";import"./shared-e6a1eef8.js";import"./shared-567ba8ae.js";import"./shared-e2d3c014.js";import"./shared-5afb584d.js";import"./shared-53e42a77.js";let a,i,o,n,d,l,c=e=>e;const m=e(s,"downloadable-card");class h extends m{renderBody(){const e=this.__extension;return t(a||(a=c` <div class="flex gap-s"> <div class="w-s h-s flex-shrink-0 rounded-s bg-contrast-5 flex" aria-hidden="true"> ${0} </div> <div class="flex-1 min-w-0"> ${0} </div> </div> `),e.length<5?this.__renderExtension(e):r(i||(i=c`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="m-auto" style="width: 64%; height: 64%"><path stroke-linecap="round" stroke-linejoin="round" d="M19.5 14.25v-2.625a3.375 3.375 0 00-3.375-3.375h-1.5A1.125 1.125 0 0113.5 7.125v-1.5a3.375 3.375 0 00-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 00-9-9z" /></svg>`)),super.renderBody({title:e=>t(o||(o=c` <span class="inline-flex w-full items-center"> <span class="mr-auto truncate min-w-0">${0} &bull; ${0}</span> <span class="text-s text-tertiary font-normal flex-shrink-0"> ${0} ${0} </span> </span> `),e.name,e.code,r(n||(n=c`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="inline" style="width: 1.15em; height: 1.15em"><path d="M10.75 10.818v2.614A3.13 3.13 0 0011.888 13c.482-.315.612-.648.612-.875 0-.227-.13-.56-.612-.875a3.13 3.13 0 00-1.138-.432zM8.33 8.62c.053.055.115.11.184.164.208.16.46.284.736.363V6.603a2.45 2.45 0 00-.35.13c-.14.065-.27.143-.386.233-.377.292-.514.627-.514.909 0 .184.058.39.202.592.037.051.08.102.128.152z" /><path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-6a.75.75 0 01.75.75v.316a3.78 3.78 0 011.653.713c.426.33.744.74.925 1.2a.75.75 0 01-1.395.55 1.35 1.35 0 00-.447-.563 2.187 2.187 0 00-.736-.363V9.3c.698.093 1.383.32 1.959.696.787.514 1.29 1.27 1.29 2.13 0 .86-.504 1.616-1.29 2.13-.576.377-1.261.603-1.96.696v.299a.75.75 0 11-1.5 0v-.3c-.697-.092-1.382-.318-1.958-.695-.482-.315-.857-.717-1.078-1.188a.75.75 0 111.359-.636c.08.173.245.376.54.569.313.205.706.353 1.138.432v-2.748a3.782 3.782 0 01-1.653-.713C6.9 9.433 6.5 8.681 6.5 7.875c0-.805.4-1.558 1.097-2.096a3.78 3.78 0 011.653-.713V4.75A.75.75 0 0110 4z" clip-rule="evenodd" /></svg>`)),this.__formattedPrice),subtitle:e=>t(d||(d=c`${0} (${0})`),e.file_name,this.__formattedFileSize)}))}get __formattedFileSize(){var e,s;const t=null!==(s=null===(e=this.data)||void 0===e?void 0:e.file_size)&&void 0!==s?s:0,r=1024,a=1048576,i=1024*a,o={maximumFractionDigits:2},n=this.lang||"en";try{return t/i>1?`${(t/i).toLocaleString(n,o)} GB`:t/a>1?`${(t/a).toLocaleString(n,o)} MB`:t/r>1?`${(t/r).toLocaleString(n,o)} KB`:`${t.toLocaleString(n,o)} B`}catch(e){return`${t} B`}}get __formattedPrice(){var e,s;const t=null!==(s=null===(e=this.data)||void 0===e?void 0:e.price)&&void 0!==s?s:0;try{return t.toLocaleString(this.lang||"en",{maximumFractionDigits:2,minimumFractionDigits:2})}catch(e){return String(t)}}get __extension(){var e,s;const t=null!==(s=null===(e=this.data)||void 0===e?void 0:e.file_name.split(".").filter((e=>!!e)))&&void 0!==s?s:[];return t.length<2?"?????":t.pop()}__renderExtension(e){const s=`font: 700 calc(var(--lumo-size-s) / ${Math.max(2,e.length)}) sans-serif`;return t(l||(l=c`<span style="${0}" class="m-auto font-medium uppercase">${0}</span>`),s,e)}}customElements.define("foxy-downloadable-card",h);export{h as DownloadableCard};
1
+ import"./shared-5212ef4f.js";import"./shared-dfe59df6.js";import"./foxy-spinner.js";import"./shared-1b4a3e56.js";import{a as e}from"./shared-a89e8a07.js";import{T as s}from"./shared-7d1512e1.js";import{h as t,s as a}from"./shared-ba5c42c7.js";import"./shared-160072f2.js";import"./shared-da95bb48.js";import"./shared-7fec42f2.js";import"./shared-65b2760f.js";import"./shared-cd96ff03.js";import"./shared-0ea750af.js";import"./shared-37869bac.js";import"./shared-d6a0954b.js";import"./shared-1da47f50.js";import"./shared-e1e4d8f5.js";import"./shared-4e709717.js";import"./shared-ad8d209a.js";import"./shared-d3f37507.js";import"./shared-5af5ab06.js";import"./shared-9884fb7d.js";import"./shared-c782b9fa.js";import"./shared-53e42a77.js";let r,i,o,n,d,l,c=e=>e;const m=e(s,"downloadable-card");class h extends m{renderBody(){const e=this.__extension;return t(r||(r=c` <div class="flex gap-s"> <div class="w-s h-s flex-shrink-0 rounded-s bg-contrast-5 flex" aria-hidden="true"> ${0} </div> <div class="flex-1 min-w-0"> ${0} </div> </div> `),e.length<5?this.__renderExtension(e):a(i||(i=c`<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="m-auto" style="width: 64%; height: 64%"><path stroke-linecap="round" stroke-linejoin="round" d="M19.5 14.25v-2.625a3.375 3.375 0 00-3.375-3.375h-1.5A1.125 1.125 0 0113.5 7.125v-1.5a3.375 3.375 0 00-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 00-9-9z" /></svg>`)),super.renderBody({title:e=>t(o||(o=c` <span class="inline-flex w-full items-center"> <span class="mr-auto truncate min-w-0">${0} &bull; ${0}</span> <span class="text-s text-tertiary font-normal flex-shrink-0"> ${0} ${0} </span> </span> `),e.name,e.code,a(n||(n=c`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="inline" style="width: 1.15em; height: 1.15em"><path d="M10.75 10.818v2.614A3.13 3.13 0 0011.888 13c.482-.315.612-.648.612-.875 0-.227-.13-.56-.612-.875a3.13 3.13 0 00-1.138-.432zM8.33 8.62c.053.055.115.11.184.164.208.16.46.284.736.363V6.603a2.45 2.45 0 00-.35.13c-.14.065-.27.143-.386.233-.377.292-.514.627-.514.909 0 .184.058.39.202.592.037.051.08.102.128.152z" /><path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-6a.75.75 0 01.75.75v.316a3.78 3.78 0 011.653.713c.426.33.744.74.925 1.2a.75.75 0 01-1.395.55 1.35 1.35 0 00-.447-.563 2.187 2.187 0 00-.736-.363V9.3c.698.093 1.383.32 1.959.696.787.514 1.29 1.27 1.29 2.13 0 .86-.504 1.616-1.29 2.13-.576.377-1.261.603-1.96.696v.299a.75.75 0 11-1.5 0v-.3c-.697-.092-1.382-.318-1.958-.695-.482-.315-.857-.717-1.078-1.188a.75.75 0 111.359-.636c.08.173.245.376.54.569.313.205.706.353 1.138.432v-2.748a3.782 3.782 0 01-1.653-.713C6.9 9.433 6.5 8.681 6.5 7.875c0-.805.4-1.558 1.097-2.096a3.78 3.78 0 011.653-.713V4.75A.75.75 0 0110 4z" clip-rule="evenodd" /></svg>`)),this.__formattedPrice),subtitle:e=>t(d||(d=c`${0} (${0})`),e.file_name,this.__formattedFileSize)}))}get __formattedFileSize(){var e,s;const t=null!==(s=null===(e=this.data)||void 0===e?void 0:e.file_size)&&void 0!==s?s:0,a=1024,r=1048576,i=1024*r,o={maximumFractionDigits:2},n=this.lang||"en";try{return t/i>1?`${(t/i).toLocaleString(n,o)} GB`:t/r>1?`${(t/r).toLocaleString(n,o)} MB`:t/a>1?`${(t/a).toLocaleString(n,o)} KB`:`${t.toLocaleString(n,o)} B`}catch(e){return`${t} B`}}get __formattedPrice(){var e,s;const t=null!==(s=null===(e=this.data)||void 0===e?void 0:e.price)&&void 0!==s?s:0;try{return t.toLocaleString(this.lang||"en",{maximumFractionDigits:2,minimumFractionDigits:2})}catch(e){return String(t)}}get __extension(){var e,s;const t=null!==(s=null===(e=this.data)||void 0===e?void 0:e.file_name.split(".").filter((e=>!!e)))&&void 0!==s?s:[];return t.length<2?"?????":t.pop()}__renderExtension(e){const s=`font: 700 calc(var(--lumo-size-s) / ${Math.max(2,e.length)}) sans-serif`;return t(l||(l=c`<span style="${0}" class="m-auto font-medium uppercase">${0}</span>`),s,e)}}customElements.define("foxy-downloadable-card",h);export{h as DownloadableCard};
@@ -1,4 +1,4 @@
1
- import{a as e,I as t}from"./shared-cc4b3b42.js";import"./shared-9342ca50.js";import"./shared-9c010e0a.js";import"./shared-a4216b50.js";import"./shared-1cd02e50.js";import{h as r,P as a,B as o}from"./shared-567ba8ae.js";import{E as i,T as s}from"./shared-ad60e8d1.js";import"./shared-e6a1eef8.js";import"./shared-2f5cc0e2.js";import{x as l,a as n}from"./shared-aa6dab90.js";import{c as d,h as A}from"./shared-ba5c42c7.js";import{i as u}from"./shared-53e42a77.js";import{c}from"./shared-4e709717.js";import"./shared-d7d949bc.js";import{_ as p,B as m}from"./shared-cb58dfcd.js";import{A as h}from"./shared-5592ec6e.js";import"./shared-94716ec1.js";import"./shared-66201dc5.js";import{I as g}from"./shared-ffd5932d.js";import"./foxy-nucleon-element.js";import"./shared-5212ef4f.js";import"./shared-5afb584d.js";import"./shared-2aa23b5f.js";import"./shared-f83207fb.js";import"./shared-343d1fd7.js";import"./shared-cd96ff03.js";import"./shared-5e4a03d1.js";import"./shared-7594e563.js";import"./shared-0aedd809.js";import"./shared-5ef40e86.js";import"./shared-8a0bd046.js";import"./shared-7fd51889.js";import"./shared-c502de27.js";import"./shared-5f8c01f8.js";import"./shared-678beccf.js";import"./shared-d0aed1c1.js";import"./shared-2f8e53c0.js";import"./shared-c31c50e2.js";import"./foxy-copy-to-clipboard.js";import"./shared-9171c265.js";import"./shared-dc4d2996.js";import"./shared-8ea2bbcc.js";import"./shared-e2d3c014.js";import"./foxy-spinner.js";import"./shared-bab2ea2c.js";const f=r`<dom-module id="lumo-progress-bar" theme-for="vaadin-progress-bar">
1
+ import{a as e,I as t}from"./shared-f7b4a4f6.js";import"./shared-1f95aa71.js";import"./shared-3f4549ba.js";import"./shared-9bfb584b.js";import"./shared-b15efc37.js";import{h as r,P as a,B as o}from"./shared-5af5ab06.js";import{E as i,T as s}from"./shared-6313b188.js";import"./shared-d3f37507.js";import"./shared-1b4a3e56.js";import{x as l,a as n}from"./shared-a89e8a07.js";import{c as d,h as A}from"./shared-ba5c42c7.js";import{i as u}from"./shared-53e42a77.js";import{c as p}from"./shared-4e709717.js";import"./shared-d8b0432a.js";import{_ as c,B as m}from"./shared-7fec42f2.js";import{A as h}from"./shared-65b2760f.js";import"./shared-8a743005.js";import"./shared-4388f7ea.js";import{I as g}from"./shared-070211c0.js";import"./foxy-nucleon-element.js";import"./shared-5212ef4f.js";import"./shared-c782b9fa.js";import"./shared-0ea750af.js";import"./shared-da95bb48.js";import"./shared-cd96ff03.js";import"./shared-37869bac.js";import"./shared-d6a0954b.js";import"./shared-1da47f50.js";import"./shared-e1e4d8f5.js";import"./shared-59c064c2.js";import"./shared-e02936f0.js";import"./shared-ce0df878.js";import"./shared-3c64ecdd.js";import"./shared-acee789f.js";import"./shared-d0aed1c1.js";import"./shared-5a6e4a7b.js";import"./shared-a16ef278.js";import"./foxy-copy-to-clipboard.js";import"./shared-cf6122d9.js";import"./shared-ad8d209a.js";import"./shared-a4871405.js";import"./shared-9884fb7d.js";import"./foxy-spinner.js";import"./shared-bab2ea2c.js";const f=r`<dom-module id="lumo-progress-bar" theme-for="vaadin-progress-bar">
2
2
  <template>
3
3
  <style>
4
4
  :host {
@@ -502,4 +502,4 @@ class x extends(i(s(a))){static get template(){return r`
502
502
  </slot>
503
503
  <slot></slot>
504
504
  <input type="file" id="fileInput" on-change="_onFileInputChange" hidden="" accept\$="{{accept}}" multiple\$="[[_isMultiple(maxFiles)]]" capture\$="[[capture]]">
505
- `}static get is(){return"vaadin-upload"}static get version(){return"4.4.3"}static get properties(){return{nodrop:{type:Boolean,reflectToAttribute:!0,value:function(){try{return!!document.createEvent("TouchEvent")}catch(e){return!1}}},target:{type:String,value:""},method:{type:String,value:"POST"},headers:{type:Object,value:{}},timeout:{type:Number,value:0},_dragover:{type:Boolean,value:!1,observer:"_dragoverChanged"},files:{type:Array,notify:!0,value:function(){return[]}},maxFiles:{type:Number,value:1/0},maxFilesReached:{type:Boolean,value:!1,notify:!0,readOnly:!0,reflectToAttribute:!0,computed:"_maxFilesAdded(maxFiles, files.length)"},accept:{type:String,value:""},maxFileSize:{type:Number,value:1/0},_dragoverValid:{type:Boolean,value:!1,observer:"_dragoverValidChanged"},formDataName:{type:String,value:"file"},noAuto:{type:Boolean,value:!1},withCredentials:{type:Boolean,value:!1},capture:String,i18n:{type:Object,value:function(){return{dropFiles:{one:"Drop file here",many:"Drop files here"},addFiles:{one:"Upload File...",many:"Upload Files..."},cancel:"Cancel",error:{tooManyFiles:"Too Many Files.",fileIsTooBig:"File is Too Big.",incorrectFileType:"Incorrect File Type."},uploading:{status:{connecting:"Connecting...",stalled:"Stalled.",processing:"Processing File...",held:"Queued"},remainingTime:{prefix:"remaining time: ",unknown:"unknown remaining time"},error:{serverUnavailable:"Server Unavailable",unexpectedServerError:"Unexpected Server Error",forbidden:"Forbidden"}},units:{size:["B","kB","MB","GB","TB","PB","EB","ZB","YB"]}}}}}}ready(){super.ready(),this.addEventListener("dragover",this._onDragover.bind(this)),this.addEventListener("dragleave",this._onDragleave.bind(this)),this.addEventListener("drop",this._onDrop.bind(this)),this.addEventListener("file-retry",this._onFileRetry.bind(this)),this.addEventListener("file-abort",this._onFileAbort.bind(this)),this.addEventListener("file-remove",this._onFileRemove.bind(this)),this.addEventListener("file-start",this._onFileStart.bind(this))}_formatSize(e){if("function"==typeof this.i18n.formatSize)return this.i18n.formatSize(e);const t=this.i18n.units.sizeBase||1e3,r=~~(Math.log(e)/Math.log(t)),a=Math.max(0,Math.min(3,r-1));return parseFloat((e/Math.pow(t,r)).toFixed(a))+" "+this.i18n.units.size[r]}_splitTimeByUnits(e){const t=[60,60,24,1/0],r=[0];for(var a=0;a<t.length&&e>0;a++)r[a]=e%t[a],e=Math.floor(e/t[a]);return r}_formatTime(e,t){if("function"==typeof this.i18n.formatTime)return this.i18n.formatTime(e,t);for(;t.length<3;)t.push(0);return t.reverse().map((e=>(e<10?"0":"")+e)).join(":")}_formatFileProgress(e){return e.totalStr+": "+e.progress+"% ("+(e.loaded>0?this.i18n.uploading.remainingTime.prefix+e.remainingStr:this.i18n.uploading.remainingTime.unknown)+")"}_maxFilesAdded(e,t){return e>=0&&t>=e}_onDragover(e){e.preventDefault(),this.nodrop||this._dragover||(this._dragoverValid=!this.maxFilesReached,this._dragover=!0),e.dataTransfer.dropEffect=!this._dragoverValid||this.nodrop?"none":"copy"}_onDragleave(e){e.preventDefault(),this._dragover&&!this.nodrop&&(this._dragover=this._dragoverValid=!1)}_onDrop(e){this.nodrop||(e.preventDefault(),this._dragover=this._dragoverValid=!1,this._addFiles(e.dataTransfer.files))}_createXhr(){return new XMLHttpRequest}_configureXhr(e){if("string"==typeof this.headers)try{this.headers=JSON.parse(this.headers)}catch(e){this.headers=void 0}for(var t in this.headers)e.setRequestHeader(t,this.headers[t]);this.timeout&&(e.timeout=this.timeout),e.withCredentials=this.withCredentials}_setStatus(e,t,r,a){e.elapsed=a,e.elapsedStr=this._formatTime(e.elapsed,this._splitTimeByUnits(e.elapsed)),e.remaining=Math.ceil(a*(t/r-1)),e.remainingStr=this._formatTime(e.remaining,this._splitTimeByUnits(e.remaining)),e.speed=~~(t/a/1024),e.totalStr=this._formatSize(t),e.loadedStr=this._formatSize(r),e.status=this._formatFileProgress(e)}uploadFiles(e){e&&!Array.isArray(e)&&(e=[e]),e=(e=e||this.files).filter((e=>!e.complete)),Array.prototype.forEach.call(e,this._uploadFile.bind(this))}_uploadFile(e){if(e.uploading)return;const t=Date.now(),r=e.xhr=this._createXhr();let a,o;r.upload.onprogress=i=>{clearTimeout(a),o=Date.now();const s=(o-t)/1e3,l=i.loaded,n=i.total,d=~~(l/n*100);e.loaded=l,e.progress=d,e.indeterminate=l<=0||l>=n,e.error?e.indeterminate=e.status=void 0:e.abort||(d<100?(this._setStatus(e,n,l,s),a=setTimeout((()=>{e.status=this.i18n.uploading.status.stalled,this._notifyFileChanges(e)}),2e3)):(e.loadedStr=e.totalStr,e.status=this.i18n.uploading.status.processing)),this._notifyFileChanges(e),this.dispatchEvent(new CustomEvent("upload-progress",{detail:{file:e,xhr:r}}))},r.onreadystatechange=()=>{if(4==r.readyState){if(clearTimeout(a),e.indeterminate=e.uploading=!1,e.abort)return void this._notifyFileChanges(e);e.status="";if(!this.dispatchEvent(new CustomEvent("upload-response",{detail:{file:e,xhr:r},cancelable:!0})))return;0===r.status?e.error=this.i18n.uploading.error.serverUnavailable:r.status>=500?e.error=this.i18n.uploading.error.unexpectedServerError:r.status>=400&&(e.error=this.i18n.uploading.error.forbidden),e.complete=!e.error,this.dispatchEvent(new CustomEvent("upload-"+(e.error?"error":"success"),{detail:{file:e,xhr:r}})),this._notifyFileChanges(e)}};const i=new FormData;e.uploadTarget=e.uploadTarget||this.target||"",e.formDataName=this.formDataName;if(!this.dispatchEvent(new CustomEvent("upload-before",{detail:{file:e,xhr:r},cancelable:!0})))return;i.append(e.formDataName,e,e.name),r.open(this.method,e.uploadTarget,!0),this._configureXhr(r),e.status=this.i18n.uploading.status.connecting,e.uploading=e.indeterminate=!0,e.complete=e.abort=e.error=e.held=!1,r.upload.onloadstart=()=>{this.dispatchEvent(new CustomEvent("upload-start",{detail:{file:e,xhr:r}})),this._notifyFileChanges(e)};this.dispatchEvent(new CustomEvent("upload-request",{detail:{file:e,xhr:r,formData:i},cancelable:!0}))&&r.send(i)}_retryFileUpload(e){this.dispatchEvent(new CustomEvent("upload-retry",{detail:{file:e,xhr:e.xhr},cancelable:!0}))&&this._uploadFile(e)}_abortFileUpload(e){this.dispatchEvent(new CustomEvent("upload-abort",{detail:{file:e,xhr:e.xhr},cancelable:!0}))&&(e.abort=!0,e.xhr&&e.xhr.abort(),this._notifyFileChanges(e))}_notifyFileChanges(e){var t="files."+this.files.indexOf(e)+".";for(var r in e)e.hasOwnProperty(r)&&this.notifyPath(t+r,e[r])}_addFiles(e){Array.prototype.forEach.call(e,this._addFile.bind(this))}_addFile(e){if(this.maxFilesReached)return void this.dispatchEvent(new CustomEvent("file-reject",{detail:{file:e,error:this.i18n.error.tooManyFiles}}));if(this.maxFileSize>=0&&e.size>this.maxFileSize)return void this.dispatchEvent(new CustomEvent("file-reject",{detail:{file:e,error:this.i18n.error.fileIsTooBig}}));const t=e.name.match(/\.[^\.]*$|$/)[0],r=new RegExp("^("+this.accept.replace(/[, ]+/g,"|").replace(/\/\*/g,"/.*")+")$","i");!this.accept||r.test(e.type)||r.test(t)?(e.loaded=0,e.held=!0,e.status=this.i18n.uploading.status.held,this.unshift("files",e),this.noAuto||this._uploadFile(e)):this.dispatchEvent(new CustomEvent("file-reject",{detail:{file:e,error:this.i18n.error.incorrectFileType}}))}_removeFile(e){this.files.indexOf(e)>-1&&this.splice("files",this.files.indexOf(e),1)}_onAddFilesTouchEnd(e){e.preventDefault(),this.__resetMouseCanceller(),this._onAddFilesClick()}__resetMouseCanceller(){o()}_onAddFilesClick(){this.maxFilesReached||(this.$.fileInput.value="",this.$.fileInput.click())}_onFileInputChange(e){this._addFiles(e.target.files)}_onFileStart(e){this._uploadFile(e.detail.file)}_onFileRetry(e){this._retryFileUpload(e.detail.file)}_onFileAbort(e){this._abortFileUpload(e.detail.file)}_onFileRemove(e){this._removeFile(e.detail.file)}_dragoverChanged(e){e?this.setAttribute("dragover",e):this.removeAttribute("dragover")}_dragoverValidChanged(e){e?this.setAttribute("dragover-valid",e):this.removeAttribute("dragover-valid")}_i18nPlural(e,t){return 1==e?t.one:t.many}_isMultiple(e){return 1!=e}}customElements.define(x.is,x);let E;l("vaadin-upload",d(E||(E=(e=>e)`:host(.foxy-downloadable-form-upload) vaadin-upload-file{padding:var(--lumo-space-xs) 0 0 0;line-height:var(--lumo-line-height-xs)}:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(commands){margin-right:-4px}:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(progress){margin-right:2px;margin-left:0}:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(clear-button),:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(retry-button),:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(start-button){display:none}:host(.foxy-downloadable-form-upload[disabled]) vaadin-upload-file::part(status){color:var(--lumo-disabled-text-color)}:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(done-icon),:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(warning-icon){width:0;margin:0;opacity:0}:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(info){align-items:flex-start}:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(name){font-weight:500}`)));let B,F=e=>e;customElements.define("foxy-internal-downloadable-form-upload-control",class extends e{get uploadElement(){return this.renderRoot.querySelector("vaadin-upload")}renderControl(){return A(B||(B=F` <section class="${0}"> <foxy-i18n infer="" class="font-medium text-s" key="label"></foxy-i18n> <vaadin-upload max-file-size="524288000" max-files="${0}" style="padding:calc((.625em + (var(--lumo-border-radius)/ 4) - 1px) - var(--lumo-space-xs)) calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)" class="${0}" method="PUT" no-auto ?disabled="${0}" ?readonly="${0}" .i18n="${0}" @files-changed="${0}" @upload-request="${0}"> </vaadin-upload> <foxy-i18n infer="" class="text-xs" key="helper_text"></foxy-i18n> </section> `),c({"grid gap-xs group leading-xs transition-colors":!0,"hover-text-body":!this.disabled&&!this.readonly,"text-secondary":!this.disabled,"text-disabled":this.disabled}),u(this.disabled||this.readonly?"0":"2"),c({"rounded-t-l rounded-b-l border transition-colors":!0,"border-dashed border-contrast-30":this.readonly,"border-solid border-contrast-10":!this.readonly,"group-hover-border-contrast-20":!this.disabled&&!this.readonly,"foxy-downloadable-form-upload":!0}),this.disabled,this.readonly,this.__uploadI18n,this.__handleFilesChanged,this.__handleUploadRequest)}updated(e){super.updated(e);const t=this.nucleon,r=this.renderRoot.querySelector("vaadin-upload");r&&t&&(t.in({idle:{snapshot:"clean"}})&&0===r.files.length?r.files=[{complete:!0,progress:100,status:this.t("status_complete"),name:t.data.file_name}]:t.in({idle:{template:"clean"}})&&(r.files=[]))}get __uploadI18n(){return{dropFiles:{one:this.t("drop_label"),many:this.t("drop_label")},addFiles:{one:this.t("select_label"),many:this.t("select_label")},cancel:this.t("cancel"),error:{tooManyFiles:this.t("error_too_many_files"),fileIsTooBig:this.t("error_too_big"),incorrectFileType:""},uploading:{status:{connecting:this.t("status_connecting"),stalled:this.t("status_stalled"),processing:this.t("status_processing"),held:this.t("status_held")},remainingTime:{prefix:this.t("remaining_prefix"),unknown:this.t("remaining_unknown")},error:{serverUnavailable:this.t("error_server_unavailable"),unexpectedServerError:this.t("error_unexpected_server_error"),forbidden:this.t("error_forbidden")}},units:{size:["B","KB","MB","GB"],sizeBase:1024}}}__handleUploadRequest(e){e.preventDefault(),e.detail.xhr.send(e.detail.file)}__handleFilesChanged(e){var t,r,a;const o=e.currentTarget,i=this.nucleon,s=o.files;s.length>1&&(o.files=[o.files[0]]),(null===(t=s[0])||void 0===t?void 0:t.complete)&&!s[0].status&&(s[0].status=this.t("status_complete"));const l=null!==(a=null===(r=o.files[0])||void 0===r?void 0:r.name)&&void 0!==a?a:"";l!==(null==i?void 0:i.form.file_name)&&(null==i||i.edit({file_name:l}))}});let C,k=e=>e;customElements.define("foxy-internal-async-combo-box-control",class extends t{constructor(){var e;super(...arguments),e=this,this.allowCustomValue=!1,this.itemLabelPath=null,this.itemValuePath=null,this.selectedItem=void 0,this.first=null,this.__dataProvider=async function(t,r){if(!e.first)return r([],0);const a=new URL(e.first);a.searchParams.set("offset",String(t.page*t.pageSize)),a.searchParams.set("limit",String(t.pageSize)),t.filter&&e.itemLabelPath&&a.searchParams.set(e.itemLabelPath,`*${t.filter}*`);const o=await new h(e).fetch(a.toString());if(!o.ok)throw new Error(await o.text());const i=await o.json();r(Array.from(Object.values(i._embedded))[0],i.total_items)}}static get properties(){return p(p({},super.properties),{},{allowCustomValue:{type:Boolean,attribute:"allow-custom-value"},itemLabelPath:{type:String,attribute:"item-label-path"},itemValuePath:{type:String,attribute:"item-value-path"},selectedItem:{attribute:!1},first:{type:String}})}renderControl(){var e,t;return A(C||(C=k` <vaadin-combo-box item-value-path="${0}" item-label-path="${0}" error-message="${0}" item-id-path="_links.self.href" helper-text="${0}" placeholder="${0}" label="${0}" class="w-full" ?allow-custom-value="${0}" ?disabled="${0}" ?readonly="${0}" clear-button-visible .checkValidity="${0}" .dataProvider="${0}" .selectedItem="${0}" .value="${0}" @change="${0}"> </vaadin-combo-box> `),u(null!==(e=this.itemValuePath)&&void 0!==e?e:void 0),u(null!==(t=this.itemLabelPath)&&void 0!==t?t:void 0),u(this._errorMessage),this.helperText,this.placeholder,this.label,this.allowCustomValue,this.disabled,this.readonly,this._checkValidity,this.__dataProvider,this.selectedItem,this._value,(e=>{e.stopPropagation();const t=e.currentTarget;this._value=t.value,this._value===t.value?(this.selectedItem=t.selectedItem,this.dispatchEvent(new CustomEvent("selected-item-changed"))):t.value=this._value}))}updated(e){if(super.updated(e),e.has("first")||e.has("itemLabelPath")){const e=this.renderRoot.querySelector("vaadin-combo-box");e&&(e.size=0,e.size=1)}}get _value(){var e;return null!==(e=super._value)&&void 0!==e?e:""}set _value(e){super._value=e}});let j,I=e=>e;const S=n(g,"downloadable-form");class Q extends S{constructor(){super(...arguments),this.downloadableItemCategories=null,this.__downloadableItemCategoryLoaderId="downloadableItemCategoryLoader"}static get properties(){return p(p({},super.properties),{},{downloadableItemCategories:{attribute:"downloadable-item-categories"}})}static get v8n(){return[({item_category_uri:e})=>!!e||"item-category-uri:v8n_required",({file_name:e})=>!!e||"upload:v8n_required",({price:e})=>"number"==typeof e||"price:v8n_required",({price:e})=>!e||e>=0||"price:v8n_negative",({name:e})=>!!e||"name:v8n_required",({name:e})=>!e||e.length<=100||"name:v8n_too_long",({code:e})=>!!e||"code:v8n_required",({code:e})=>!e||e.length<=50||"code:v8n_too_long"]}get disabledSelector(){const e=[],t=this.__downloadableItemCategoryLoader;return(null==t?void 0:t.in("idle"))||e.push("item-category-uri"),new m(`${e.join(" ")}${super.disabledSelector}`)}renderBody(){var e,t;return A(j||(j=I` ${0} <foxy-internal-async-combo-box-control item-label-path="name" item-value-path="_links.self.href" item-id-path="_links.self.href" infer="item-category-uri" first="${0}" .selectedItem="${0}" .setValue="${0}"> </foxy-internal-async-combo-box-control> <foxy-internal-text-control infer="name"></foxy-internal-text-control> <foxy-internal-text-control infer="code"></foxy-internal-text-control> <foxy-internal-number-control infer="price" min="0"></foxy-internal-number-control> <foxy-internal-downloadable-form-upload-control infer="upload"> </foxy-internal-downloadable-form-upload-control> ${0} <foxy-nucleon class="hidden" infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> `),this.renderHeader(),u(null!==(e=this.downloadableItemCategories)&&void 0!==e?e:void 0),null===(t=this.__downloadableItemCategoryLoader)||void 0===t?void 0:t.data,(e=>{var t;this.edit({item_category_uri:e});const r=parseInt(null!==(t=e.split("/").pop())&&void 0!==t?t:"");isNaN(r)||this.edit({item_category_id:r})}),super.renderBody(),u(this.form.item_category_uri||void 0),this.__downloadableItemCategoryLoaderId,(()=>this.requestUpdate()))}async _sendPatch(e){const t=await super._sendPatch(e),r=t._links["fx:create_upload_url"].href,a=this.renderRoot.querySelector('[infer="upload"]'),o=null==a?void 0:a.uploadElement;if(o&&1===o.files.length){const e=o.files[0],t=await this._fetch(r,{method:"POST",body:JSON.stringify({type:e.type})});o.files[0].uploadTarget=t.upload_url,o.uploadFiles()}return t}async _sendPost(e){const t=await super._sendPost(e),r=t._links["fx:create_upload_url"].href,a=this.renderRoot.querySelector('[infer="upload"]'),o=null==a?void 0:a.uploadElement;if(o&&1===o.files.length){const e=o.files[0],t=await this._fetch(r,{method:"POST",body:JSON.stringify({type:e.type})});o.files[0].uploadTarget=t.upload_url,o.uploadFiles()}return t}get __downloadableItemCategoryLoader(){return this.renderRoot.querySelector(`#${this.__downloadableItemCategoryLoaderId}`)}}customElements.define("foxy-downloadable-form",Q);export{Q as DownloadableForm};
505
+ `}static get is(){return"vaadin-upload"}static get version(){return"4.4.3"}static get properties(){return{nodrop:{type:Boolean,reflectToAttribute:!0,value:function(){try{return!!document.createEvent("TouchEvent")}catch(e){return!1}}},target:{type:String,value:""},method:{type:String,value:"POST"},headers:{type:Object,value:{}},timeout:{type:Number,value:0},_dragover:{type:Boolean,value:!1,observer:"_dragoverChanged"},files:{type:Array,notify:!0,value:function(){return[]}},maxFiles:{type:Number,value:1/0},maxFilesReached:{type:Boolean,value:!1,notify:!0,readOnly:!0,reflectToAttribute:!0,computed:"_maxFilesAdded(maxFiles, files.length)"},accept:{type:String,value:""},maxFileSize:{type:Number,value:1/0},_dragoverValid:{type:Boolean,value:!1,observer:"_dragoverValidChanged"},formDataName:{type:String,value:"file"},noAuto:{type:Boolean,value:!1},withCredentials:{type:Boolean,value:!1},capture:String,i18n:{type:Object,value:function(){return{dropFiles:{one:"Drop file here",many:"Drop files here"},addFiles:{one:"Upload File...",many:"Upload Files..."},cancel:"Cancel",error:{tooManyFiles:"Too Many Files.",fileIsTooBig:"File is Too Big.",incorrectFileType:"Incorrect File Type."},uploading:{status:{connecting:"Connecting...",stalled:"Stalled.",processing:"Processing File...",held:"Queued"},remainingTime:{prefix:"remaining time: ",unknown:"unknown remaining time"},error:{serverUnavailable:"Server Unavailable",unexpectedServerError:"Unexpected Server Error",forbidden:"Forbidden"}},units:{size:["B","kB","MB","GB","TB","PB","EB","ZB","YB"]}}}}}}ready(){super.ready(),this.addEventListener("dragover",this._onDragover.bind(this)),this.addEventListener("dragleave",this._onDragleave.bind(this)),this.addEventListener("drop",this._onDrop.bind(this)),this.addEventListener("file-retry",this._onFileRetry.bind(this)),this.addEventListener("file-abort",this._onFileAbort.bind(this)),this.addEventListener("file-remove",this._onFileRemove.bind(this)),this.addEventListener("file-start",this._onFileStart.bind(this))}_formatSize(e){if("function"==typeof this.i18n.formatSize)return this.i18n.formatSize(e);const t=this.i18n.units.sizeBase||1e3,r=~~(Math.log(e)/Math.log(t)),a=Math.max(0,Math.min(3,r-1));return parseFloat((e/Math.pow(t,r)).toFixed(a))+" "+this.i18n.units.size[r]}_splitTimeByUnits(e){const t=[60,60,24,1/0],r=[0];for(var a=0;a<t.length&&e>0;a++)r[a]=e%t[a],e=Math.floor(e/t[a]);return r}_formatTime(e,t){if("function"==typeof this.i18n.formatTime)return this.i18n.formatTime(e,t);for(;t.length<3;)t.push(0);return t.reverse().map((e=>(e<10?"0":"")+e)).join(":")}_formatFileProgress(e){return e.totalStr+": "+e.progress+"% ("+(e.loaded>0?this.i18n.uploading.remainingTime.prefix+e.remainingStr:this.i18n.uploading.remainingTime.unknown)+")"}_maxFilesAdded(e,t){return e>=0&&t>=e}_onDragover(e){e.preventDefault(),this.nodrop||this._dragover||(this._dragoverValid=!this.maxFilesReached,this._dragover=!0),e.dataTransfer.dropEffect=!this._dragoverValid||this.nodrop?"none":"copy"}_onDragleave(e){e.preventDefault(),this._dragover&&!this.nodrop&&(this._dragover=this._dragoverValid=!1)}_onDrop(e){this.nodrop||(e.preventDefault(),this._dragover=this._dragoverValid=!1,this._addFiles(e.dataTransfer.files))}_createXhr(){return new XMLHttpRequest}_configureXhr(e){if("string"==typeof this.headers)try{this.headers=JSON.parse(this.headers)}catch(e){this.headers=void 0}for(var t in this.headers)e.setRequestHeader(t,this.headers[t]);this.timeout&&(e.timeout=this.timeout),e.withCredentials=this.withCredentials}_setStatus(e,t,r,a){e.elapsed=a,e.elapsedStr=this._formatTime(e.elapsed,this._splitTimeByUnits(e.elapsed)),e.remaining=Math.ceil(a*(t/r-1)),e.remainingStr=this._formatTime(e.remaining,this._splitTimeByUnits(e.remaining)),e.speed=~~(t/a/1024),e.totalStr=this._formatSize(t),e.loadedStr=this._formatSize(r),e.status=this._formatFileProgress(e)}uploadFiles(e){e&&!Array.isArray(e)&&(e=[e]),e=(e=e||this.files).filter((e=>!e.complete)),Array.prototype.forEach.call(e,this._uploadFile.bind(this))}_uploadFile(e){if(e.uploading)return;const t=Date.now(),r=e.xhr=this._createXhr();let a,o;r.upload.onprogress=i=>{clearTimeout(a),o=Date.now();const s=(o-t)/1e3,l=i.loaded,n=i.total,d=~~(l/n*100);e.loaded=l,e.progress=d,e.indeterminate=l<=0||l>=n,e.error?e.indeterminate=e.status=void 0:e.abort||(d<100?(this._setStatus(e,n,l,s),a=setTimeout((()=>{e.status=this.i18n.uploading.status.stalled,this._notifyFileChanges(e)}),2e3)):(e.loadedStr=e.totalStr,e.status=this.i18n.uploading.status.processing)),this._notifyFileChanges(e),this.dispatchEvent(new CustomEvent("upload-progress",{detail:{file:e,xhr:r}}))},r.onreadystatechange=()=>{if(4==r.readyState){if(clearTimeout(a),e.indeterminate=e.uploading=!1,e.abort)return void this._notifyFileChanges(e);e.status="";if(!this.dispatchEvent(new CustomEvent("upload-response",{detail:{file:e,xhr:r},cancelable:!0})))return;0===r.status?e.error=this.i18n.uploading.error.serverUnavailable:r.status>=500?e.error=this.i18n.uploading.error.unexpectedServerError:r.status>=400&&(e.error=this.i18n.uploading.error.forbidden),e.complete=!e.error,this.dispatchEvent(new CustomEvent("upload-"+(e.error?"error":"success"),{detail:{file:e,xhr:r}})),this._notifyFileChanges(e)}};const i=new FormData;e.uploadTarget=e.uploadTarget||this.target||"",e.formDataName=this.formDataName;if(!this.dispatchEvent(new CustomEvent("upload-before",{detail:{file:e,xhr:r},cancelable:!0})))return;i.append(e.formDataName,e,e.name),r.open(this.method,e.uploadTarget,!0),this._configureXhr(r),e.status=this.i18n.uploading.status.connecting,e.uploading=e.indeterminate=!0,e.complete=e.abort=e.error=e.held=!1,r.upload.onloadstart=()=>{this.dispatchEvent(new CustomEvent("upload-start",{detail:{file:e,xhr:r}})),this._notifyFileChanges(e)};this.dispatchEvent(new CustomEvent("upload-request",{detail:{file:e,xhr:r,formData:i},cancelable:!0}))&&r.send(i)}_retryFileUpload(e){this.dispatchEvent(new CustomEvent("upload-retry",{detail:{file:e,xhr:e.xhr},cancelable:!0}))&&this._uploadFile(e)}_abortFileUpload(e){this.dispatchEvent(new CustomEvent("upload-abort",{detail:{file:e,xhr:e.xhr},cancelable:!0}))&&(e.abort=!0,e.xhr&&e.xhr.abort(),this._notifyFileChanges(e))}_notifyFileChanges(e){var t="files."+this.files.indexOf(e)+".";for(var r in e)e.hasOwnProperty(r)&&this.notifyPath(t+r,e[r])}_addFiles(e){Array.prototype.forEach.call(e,this._addFile.bind(this))}_addFile(e){if(this.maxFilesReached)return void this.dispatchEvent(new CustomEvent("file-reject",{detail:{file:e,error:this.i18n.error.tooManyFiles}}));if(this.maxFileSize>=0&&e.size>this.maxFileSize)return void this.dispatchEvent(new CustomEvent("file-reject",{detail:{file:e,error:this.i18n.error.fileIsTooBig}}));const t=e.name.match(/\.[^\.]*$|$/)[0],r=new RegExp("^("+this.accept.replace(/[, ]+/g,"|").replace(/\/\*/g,"/.*")+")$","i");!this.accept||r.test(e.type)||r.test(t)?(e.loaded=0,e.held=!0,e.status=this.i18n.uploading.status.held,this.unshift("files",e),this.noAuto||this._uploadFile(e)):this.dispatchEvent(new CustomEvent("file-reject",{detail:{file:e,error:this.i18n.error.incorrectFileType}}))}_removeFile(e){this.files.indexOf(e)>-1&&this.splice("files",this.files.indexOf(e),1)}_onAddFilesTouchEnd(e){e.preventDefault(),this.__resetMouseCanceller(),this._onAddFilesClick()}__resetMouseCanceller(){o()}_onAddFilesClick(){this.maxFilesReached||(this.$.fileInput.value="",this.$.fileInput.click())}_onFileInputChange(e){this._addFiles(e.target.files)}_onFileStart(e){this._uploadFile(e.detail.file)}_onFileRetry(e){this._retryFileUpload(e.detail.file)}_onFileAbort(e){this._abortFileUpload(e.detail.file)}_onFileRemove(e){this._removeFile(e.detail.file)}_dragoverChanged(e){e?this.setAttribute("dragover",e):this.removeAttribute("dragover")}_dragoverValidChanged(e){e?this.setAttribute("dragover-valid",e):this.removeAttribute("dragover-valid")}_i18nPlural(e,t){return 1==e?t.one:t.many}_isMultiple(e){return 1!=e}}customElements.define(x.is,x);let E;l("vaadin-upload",d(E||(E=(e=>e)`:host(.foxy-downloadable-form-upload) vaadin-upload-file{padding:var(--lumo-space-xs) 0 0 0;line-height:var(--lumo-line-height-xs)}:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(commands){margin-right:-4px}:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(progress){margin-right:2px;margin-left:0}:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(clear-button),:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(retry-button),:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(start-button){display:none}:host(.foxy-downloadable-form-upload[disabled]) vaadin-upload-file::part(status){color:var(--lumo-disabled-text-color)}:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(done-icon),:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(warning-icon){width:0;margin:0;opacity:0}:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(info){align-items:flex-start}:host(.foxy-downloadable-form-upload) vaadin-upload-file::part(name){font-weight:500}`)));let B,F=e=>e;customElements.define("foxy-internal-downloadable-form-upload-control",class extends e{get uploadElement(){return this.renderRoot.querySelector("vaadin-upload")}renderControl(){return A(B||(B=F` <section class="${0}"> <foxy-i18n infer="" class="font-medium text-s" key="label"></foxy-i18n> <vaadin-upload max-file-size="524288000" max-files="${0}" style="padding:calc((.625em + (var(--lumo-border-radius)/ 4) - 1px) - var(--lumo-space-xs)) calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)" class="${0}" method="PUT" no-auto ?disabled="${0}" ?readonly="${0}" .i18n="${0}" @files-changed="${0}" @upload-request="${0}"> </vaadin-upload> <foxy-i18n infer="" class="text-xs" key="helper_text"></foxy-i18n> </section> `),p({"grid gap-xs group leading-xs transition-colors":!0,"hover-text-body":!this.disabled&&!this.readonly,"text-secondary":!this.disabled,"text-disabled":this.disabled}),u(this.disabled||this.readonly?"0":"2"),p({"rounded-t-l rounded-b-l border transition-colors":!0,"border-dashed border-contrast-30":this.readonly,"border-solid border-contrast-10":!this.readonly,"group-hover-border-contrast-20":!this.disabled&&!this.readonly,"foxy-downloadable-form-upload":!0}),this.disabled,this.readonly,this.__uploadI18n,this.__handleFilesChanged,this.__handleUploadRequest)}updated(e){super.updated(e);const t=this.nucleon,r=this.renderRoot.querySelector("vaadin-upload");r&&t&&(t.in({idle:{snapshot:"clean"}})&&0===r.files.length?r.files=[{complete:!0,progress:100,status:this.t("status_complete"),name:t.data.file_name}]:t.in({idle:{template:"clean"}})&&(r.files=[]))}get __uploadI18n(){return{dropFiles:{one:this.t("drop_label"),many:this.t("drop_label")},addFiles:{one:this.t("select_label"),many:this.t("select_label")},cancel:this.t("cancel"),error:{tooManyFiles:this.t("error_too_many_files"),fileIsTooBig:this.t("error_too_big"),incorrectFileType:""},uploading:{status:{connecting:this.t("status_connecting"),stalled:this.t("status_stalled"),processing:this.t("status_processing"),held:this.t("status_held")},remainingTime:{prefix:this.t("remaining_prefix"),unknown:this.t("remaining_unknown")},error:{serverUnavailable:this.t("error_server_unavailable"),unexpectedServerError:this.t("error_unexpected_server_error"),forbidden:this.t("error_forbidden")}},units:{size:["B","KB","MB","GB"],sizeBase:1024}}}__handleUploadRequest(e){e.preventDefault(),e.detail.xhr.send(e.detail.file)}__handleFilesChanged(e){var t,r,a;const o=e.currentTarget,i=this.nucleon,s=o.files;s.length>1&&(o.files=[o.files[0]]),(null===(t=s[0])||void 0===t?void 0:t.complete)&&!s[0].status&&(s[0].status=this.t("status_complete"));const l=null!==(a=null===(r=o.files[0])||void 0===r?void 0:r.name)&&void 0!==a?a:"";l!==(null==i?void 0:i.form.file_name)&&(null==i||i.edit({file_name:l}))}});let C,k=e=>e;customElements.define("foxy-internal-async-combo-box-control",class extends t{constructor(){var e;super(...arguments),e=this,this.allowCustomValue=!1,this.itemLabelPath=null,this.itemValuePath=null,this.selectedItem=void 0,this.first=null,this.__dataProvider=async function(t,r){if(!e.first)return r([],0);const a=new URL(e.first);a.searchParams.set("offset",String(t.page*t.pageSize)),a.searchParams.set("limit",String(t.pageSize)),t.filter&&e.itemLabelPath&&a.searchParams.set(e.itemLabelPath,`*${t.filter}*`);const o=await new h(e).fetch(a.toString());if(!o.ok)throw new Error(await o.text());const i=await o.json();r(Array.from(Object.values(i._embedded))[0],i.total_items)}}static get properties(){return c(c({},super.properties),{},{allowCustomValue:{type:Boolean,attribute:"allow-custom-value"},itemLabelPath:{type:String,attribute:"item-label-path"},itemValuePath:{type:String,attribute:"item-value-path"},selectedItem:{attribute:!1},first:{type:String}})}renderControl(){var e,t;return A(C||(C=k` <vaadin-combo-box item-value-path="${0}" item-label-path="${0}" error-message="${0}" item-id-path="_links.self.href" helper-text="${0}" placeholder="${0}" label="${0}" class="w-full" ?allow-custom-value="${0}" ?disabled="${0}" ?readonly="${0}" clear-button-visible .checkValidity="${0}" .dataProvider="${0}" .selectedItem="${0}" .value="${0}" @change="${0}"> </vaadin-combo-box> `),u(null!==(e=this.itemValuePath)&&void 0!==e?e:void 0),u(null!==(t=this.itemLabelPath)&&void 0!==t?t:void 0),u(this._errorMessage),this.helperText,this.placeholder,this.label,this.allowCustomValue,this.disabled,this.readonly,this._checkValidity,this.__dataProvider,this.selectedItem,this._value,(e=>{e.stopPropagation();const t=e.currentTarget;this._value=t.value,this._value===t.value?(this.selectedItem=t.selectedItem,this.dispatchEvent(new CustomEvent("selected-item-changed"))):t.value=this._value}))}updated(e){if(super.updated(e),e.has("first")||e.has("itemLabelPath")){const e=this.renderRoot.querySelector("vaadin-combo-box");e&&(e.size=0,e.size=1)}}get _value(){var e;return null!==(e=super._value)&&void 0!==e?e:""}set _value(e){super._value=e}});let j,I=e=>e;const S=n(g,"downloadable-form");class Q extends S{constructor(){super(...arguments),this.downloadableItemCategories=null,this.__downloadableItemCategoryLoaderId="downloadableItemCategoryLoader"}static get properties(){return c(c({},super.properties),{},{downloadableItemCategories:{attribute:"downloadable-item-categories"}})}static get v8n(){return[({item_category_uri:e})=>!!e||"item-category-uri:v8n_required",({file_name:e})=>!!e||"upload:v8n_required",({price:e})=>"number"==typeof e||"price:v8n_required",({price:e})=>!e||e>=0||"price:v8n_negative",({name:e})=>!!e||"name:v8n_required",({name:e})=>!e||e.length<=100||"name:v8n_too_long",({code:e})=>!!e||"code:v8n_required",({code:e})=>!e||e.length<=50||"code:v8n_too_long"]}get disabledSelector(){const e=[],t=this.__downloadableItemCategoryLoader;return(null==t?void 0:t.in("idle"))||e.push("item-category-uri"),new m(`${e.join(" ")}${super.disabledSelector}`)}renderBody(){var e,t;return A(j||(j=I` ${0} <foxy-internal-async-combo-box-control item-label-path="name" item-value-path="_links.self.href" item-id-path="_links.self.href" infer="item-category-uri" first="${0}" .selectedItem="${0}" .setValue="${0}"> </foxy-internal-async-combo-box-control> <foxy-internal-text-control infer="name"></foxy-internal-text-control> <foxy-internal-text-control infer="code"></foxy-internal-text-control> <foxy-internal-number-control infer="price" min="0"></foxy-internal-number-control> <foxy-internal-downloadable-form-upload-control infer="upload"> </foxy-internal-downloadable-form-upload-control> ${0} <foxy-nucleon class="hidden" infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> `),this.renderHeader(),u(null!==(e=this.downloadableItemCategories)&&void 0!==e?e:void 0),null===(t=this.__downloadableItemCategoryLoader)||void 0===t?void 0:t.data,(e=>{var t;this.edit({item_category_uri:e});const r=parseInt(null!==(t=e.split("/").pop())&&void 0!==t?t:"");isNaN(r)||this.edit({item_category_id:r})}),super.renderBody(),u(this.form.item_category_uri||void 0),this.__downloadableItemCategoryLoaderId,(()=>this.requestUpdate()))}async _sendPatch(e){const t=await super._sendPatch(e),r=t._links["fx:create_upload_url"].href,a=this.renderRoot.querySelector('[infer="upload"]'),o=null==a?void 0:a.uploadElement;if(o&&1===o.files.length){const e=o.files[0],t=await this._fetch(r,{method:"POST",body:JSON.stringify({type:e.type})});o.files[0].uploadTarget=t.upload_url,o.uploadFiles()}return t}async _sendPost(e){const t=await super._sendPost(e),r=t._links["fx:create_upload_url"].href,a=this.renderRoot.querySelector('[infer="upload"]'),o=null==a?void 0:a.uploadElement;if(o&&1===o.files.length){const e=o.files[0],t=await this._fetch(r,{method:"POST",body:JSON.stringify({type:e.type})});o.files[0].uploadTarget=t.upload_url,o.uploadFiles()}return t}get __downloadableItemCategoryLoader(){return this.renderRoot.querySelector(`#${this.__downloadableItemCategoryLoaderId}`)}}customElements.define("foxy-downloadable-form",Q);export{Q as DownloadableForm};
@@ -1 +1 @@
1
- import"./shared-5212ef4f.js";import"./foxy-spinner.js";import"./shared-2f5cc0e2.js";import{a as e}from"./shared-aa6dab90.js";import{T as t}from"./shared-b1435a0a.js";import{h as r}from"./shared-ba5c42c7.js";import"./shared-dc4d2996.js";import"./shared-e6a1eef8.js";import"./shared-567ba8ae.js";import"./shared-e2d3c014.js";import"./shared-cb58dfcd.js";import"./shared-2aa23b5f.js";import"./shared-343d1fd7.js";import"./shared-5afb584d.js";import"./shared-53e42a77.js";import"./shared-bb6d7b97.js";import"./shared-f83207fb.js";import"./shared-5592ec6e.js";import"./shared-cd96ff03.js";import"./shared-5e4a03d1.js";import"./shared-7594e563.js";import"./shared-0aedd809.js";import"./shared-5ef40e86.js";import"./shared-4e709717.js";let s,a,d=e=>e;const o=e(t,"email-template-card");class m extends o{renderBody(){return super.renderBody({title:e=>r(s||(s=d`${0}`),e.description),subtitle:e=>r(a||(a=d`<foxy-i18n infer="" key="${0}"></foxy-i18n>`),this.__getType(e))})}__getType(e){const{content_html_url:t,content_text_url:r}=e,{content_html:s,content_text:a}=e;return!a||r||s||t?!s||t||a||r?!t||r||s||a?!r||t||a||s?s||t||a||r?"type_mixed":"type_default":"type_custom_text_url":"type_custom_html_url":"type_custom_html":"type_custom_text"}}customElements.define("foxy-email-template-card",m);export{m as EmailTemplateCard};
1
+ import"./shared-5212ef4f.js";import"./foxy-spinner.js";import"./shared-1b4a3e56.js";import{a as e}from"./shared-a89e8a07.js";import{T as t}from"./shared-7d1512e1.js";import{h as r}from"./shared-ba5c42c7.js";import"./shared-ad8d209a.js";import"./shared-d3f37507.js";import"./shared-5af5ab06.js";import"./shared-9884fb7d.js";import"./shared-7fec42f2.js";import"./shared-0ea750af.js";import"./shared-c782b9fa.js";import"./shared-53e42a77.js";import"./shared-160072f2.js";import"./shared-da95bb48.js";import"./shared-65b2760f.js";import"./shared-cd96ff03.js";import"./shared-37869bac.js";import"./shared-d6a0954b.js";import"./shared-1da47f50.js";import"./shared-e1e4d8f5.js";import"./shared-4e709717.js";let s,a,o=e=>e;const d=e(t,"email-template-card");class m extends d{renderBody(){return super.renderBody({title:e=>r(s||(s=o`${0}`),e.description),subtitle:e=>r(a||(a=o`<foxy-i18n infer="" key="${0}"></foxy-i18n>`),this.__getType(e))})}__getType(e){const{content_html_url:t,content_text_url:r}=e,{content_html:s,content_text:a}=e;return!a||r||s||t?!s||t||a||r?!t||r||s||a?!r||t||a||s?s||t||a||r?"type_mixed":"type_default":"type_custom_text_url":"type_custom_html_url":"type_custom_html":"type_custom_text"}}customElements.define("foxy-email-template-card",m);export{m as EmailTemplateCard};