@foxy.io/elements 1.18.0-beta.20 → 1.18.0-beta.22

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 (337) hide show
  1. package/README.md +6 -1
  2. package/dist/cdn/foxy-access-recovery-form.js +1 -1
  3. package/dist/cdn/foxy-address-card.js +1 -1
  4. package/dist/cdn/foxy-address-form.js +1 -1
  5. package/dist/cdn/foxy-admin-subscription-card.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-cancellation-form.js +1 -1
  13. package/dist/cdn/foxy-cart-card.js +1 -1
  14. package/dist/cdn/foxy-cart-form.js +1 -1
  15. package/dist/cdn/foxy-collection-page.js +1 -1
  16. package/dist/cdn/foxy-collection-pages.js +1 -1
  17. package/dist/cdn/foxy-copy-to-clipboard.js +1 -1
  18. package/dist/cdn/foxy-coupon-card.js +1 -1
  19. package/dist/cdn/foxy-coupon-code-form.js +1 -1
  20. package/dist/cdn/foxy-coupon-codes-form.js +1 -1
  21. package/dist/cdn/foxy-coupon-detail-card.js +1 -1
  22. package/dist/cdn/foxy-coupon-form.js +1 -1
  23. package/dist/cdn/foxy-custom-field-card.js +1 -1
  24. package/dist/cdn/foxy-custom-field-form.js +1 -1
  25. package/dist/cdn/foxy-customer-card.js +1 -1
  26. package/dist/cdn/foxy-customer-form.js +1 -1
  27. package/dist/cdn/foxy-customer-portal-settings.js +1 -1
  28. package/dist/cdn/foxy-customer-portal.js +1 -1
  29. package/dist/cdn/foxy-customer.js +1 -1
  30. package/dist/cdn/foxy-customers-table.js +1 -1
  31. package/dist/cdn/foxy-discount-builder.js +1 -1
  32. package/dist/cdn/foxy-discount-card.js +1 -1
  33. package/dist/cdn/foxy-discount-detail-card.js +1 -1
  34. package/dist/cdn/foxy-donation.js +1 -1
  35. package/dist/cdn/foxy-email-template-card.js +1 -1
  36. package/dist/cdn/foxy-email-template-form.js +1 -1
  37. package/dist/cdn/foxy-error-entry-card.js +1 -1
  38. package/dist/cdn/foxy-form-dialog.js +1 -1
  39. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  40. package/dist/cdn/foxy-gift-card-card.js +1 -1
  41. package/dist/cdn/foxy-gift-card-code-form.js +1 -1
  42. package/dist/cdn/foxy-gift-card-code-log-card.js +1 -1
  43. package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
  44. package/dist/cdn/foxy-gift-card-form.js +1 -1
  45. package/dist/cdn/foxy-i18n-editor.js +2 -2
  46. package/dist/cdn/foxy-i18n.js +1 -1
  47. package/dist/cdn/foxy-integration-card.js +1 -1
  48. package/dist/cdn/foxy-integration-form.js +1 -1
  49. package/dist/cdn/foxy-item-card.js +1 -1
  50. package/dist/cdn/foxy-item-category-card.js +1 -1
  51. package/dist/cdn/foxy-item-category-form.js +1 -1
  52. package/dist/cdn/foxy-item-form.js +1 -1
  53. package/dist/cdn/foxy-item-option-card.js +1 -1
  54. package/dist/cdn/foxy-item-option-form.js +1 -1
  55. package/dist/cdn/foxy-items-form.js +1 -1
  56. package/dist/cdn/foxy-pagination.js +1 -1
  57. package/dist/cdn/foxy-payment-card.js +1 -1
  58. package/dist/cdn/foxy-payment-method-card.js +1 -1
  59. package/dist/cdn/foxy-payments-api-fraud-protection-card.js +1 -1
  60. package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
  61. package/dist/cdn/foxy-payments-api-payment-method-card.js +1 -1
  62. package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
  63. package/dist/cdn/foxy-payments-api-payment-preset-card.js +1 -1
  64. package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
  65. package/dist/cdn/foxy-query-builder.js +1 -1
  66. package/dist/cdn/foxy-report-form.js +2 -2
  67. package/dist/cdn/foxy-reports-table.js +5 -5
  68. package/dist/cdn/foxy-shipment-card.js +1 -1
  69. package/dist/cdn/foxy-shipping-method-card.js +1 -1
  70. package/dist/cdn/foxy-sign-in-form.js +1 -1
  71. package/dist/cdn/foxy-spinner.js +1 -1
  72. package/dist/cdn/foxy-store-form.js +1 -1
  73. package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
  74. package/dist/cdn/foxy-subscription-card.js +1 -1
  75. package/dist/cdn/foxy-subscription-form.js +1 -1
  76. package/dist/cdn/foxy-subscription-settings-form.js +1 -1
  77. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  78. package/dist/cdn/foxy-table.js +1 -1
  79. package/dist/cdn/foxy-tax-card.js +1 -1
  80. package/dist/cdn/foxy-tax-form.js +1 -1
  81. package/dist/cdn/foxy-template-config-form.js +1 -1
  82. package/dist/cdn/foxy-template-form.js +1 -1
  83. package/dist/cdn/foxy-template-set-card.js +1 -1
  84. package/dist/cdn/foxy-template-set-form.js +1 -1
  85. package/dist/cdn/foxy-transaction-card.js +1 -1
  86. package/dist/cdn/foxy-transaction.js +1 -1
  87. package/dist/cdn/foxy-transactions-table.js +7 -7
  88. package/dist/cdn/foxy-user-form.js +1 -1
  89. package/dist/cdn/foxy-users-table.js +1 -1
  90. package/dist/cdn/foxy-webhook-card.js +1 -1
  91. package/dist/cdn/foxy-webhook-form.js +1 -1
  92. package/dist/cdn/foxy-webhook-log-card.js +1 -1
  93. package/dist/cdn/foxy-webhook-status-card.js +1 -1
  94. package/dist/cdn/{shared-39b184de.js → shared-08156595.js} +1 -1
  95. package/dist/cdn/shared-0821cfdc.js +1 -0
  96. package/dist/cdn/{shared-23bf6ee6.js → shared-08e27fe9.js} +3 -3
  97. package/dist/cdn/{shared-68e0cf30.js → shared-0ce006b9.js} +1 -1
  98. package/dist/cdn/shared-1000b848.js +1 -0
  99. package/dist/cdn/{shared-d384d6a3.js → shared-101d1234.js} +2 -2
  100. package/dist/cdn/{shared-7d658c02.js → shared-1c94a156.js} +1 -1
  101. package/dist/cdn/{shared-3ca1e8e4.js → shared-2092d86f.js} +1 -1
  102. package/dist/cdn/shared-21679ebd.js +1 -0
  103. package/dist/cdn/{shared-dbd4a5e8.js → shared-2add595d.js} +1 -1
  104. package/dist/cdn/{shared-1e94e6dd.js → shared-2cc638ad.js} +1 -1
  105. package/dist/cdn/{shared-0d4f9b06.js → shared-39c10b22.js} +1 -1
  106. package/dist/cdn/{shared-e99fa3d6.js → shared-404aa9cc.js} +1 -1
  107. package/dist/cdn/{shared-17c1eab2.js → shared-4849ef5b.js} +1 -1
  108. package/dist/cdn/shared-486d7bb5.js +1 -0
  109. package/dist/cdn/{shared-0f649dc6.js → shared-4f9d2417.js} +5 -5
  110. package/dist/cdn/{shared-413415b0.js → shared-5378bd8c.js} +1 -1
  111. package/dist/cdn/{shared-a90a5235.js → shared-5a4829e3.js} +1 -1
  112. package/dist/cdn/{shared-90c7dbdb.js → shared-5b177708.js} +1 -1
  113. package/dist/cdn/{shared-5b3ae513.js → shared-5ea18e60.js} +1 -1
  114. package/dist/cdn/{shared-ae588315.js → shared-62a54a6c.js} +1 -1
  115. package/dist/cdn/{shared-2f6e33b6.js → shared-62c088b7.js} +1 -1
  116. package/dist/cdn/{shared-5c6eb602.js → shared-639c666f.js} +1 -1
  117. package/dist/cdn/{shared-21689ac0.js → shared-6581241a.js} +1 -1
  118. package/dist/cdn/{shared-df462496.js → shared-6cb1015f.js} +1 -1
  119. package/dist/cdn/{shared-179ff8af.js → shared-71d8d167.js} +1 -1
  120. package/dist/cdn/{shared-cdc183c5.js → shared-71f2ef1f.js} +1 -1
  121. package/dist/cdn/{shared-9d7bbdd8.js → shared-744cf66b.js} +1 -1
  122. package/dist/cdn/{shared-a343ec6b.js → shared-7d4fb1a2.js} +1 -1
  123. package/dist/cdn/{shared-5ada1ccb.js → shared-80fc2b6a.js} +1 -1
  124. package/dist/cdn/{shared-034c6aeb.js → shared-83596b46.js} +1 -1
  125. package/dist/cdn/shared-868065de.js +1 -0
  126. package/dist/cdn/{shared-2b2002ac.js → shared-88c4cfec.js} +1 -1
  127. package/dist/cdn/{shared-cf784db1.js → shared-8dd0af4d.js} +1 -1
  128. package/dist/cdn/{shared-776f948d.js → shared-988ec916.js} +1 -1
  129. package/dist/cdn/{shared-c379590f.js → shared-9bdacf65.js} +1 -1
  130. package/dist/cdn/{shared-a41f2200.js → shared-9f436277.js} +1 -1
  131. package/dist/cdn/shared-a0c8faf2.js +1 -0
  132. package/dist/cdn/{shared-bae9da44.js → shared-a37abe4c.js} +2 -2
  133. package/dist/cdn/{shared-ea6c8bae.js → shared-a41234b4.js} +1 -1
  134. package/dist/cdn/{shared-6cc53630.js → shared-af226a9a.js} +1 -1
  135. package/dist/cdn/{shared-13982611.js → shared-b40cf0dd.js} +1 -1
  136. package/dist/cdn/{shared-9d511d7e.js → shared-bb0e33c3.js} +1 -1
  137. package/dist/cdn/{shared-b48e5aaf.js → shared-bc814810.js} +1 -1
  138. package/dist/cdn/{shared-88c7755d.js → shared-bd252323.js} +1 -1
  139. package/dist/cdn/{shared-869df7ed.js → shared-be66c2e7.js} +1 -1
  140. package/dist/cdn/{shared-e06b70cc.js → shared-c774d080.js} +1 -1
  141. package/dist/cdn/{shared-e94165e9.js → shared-c95c17e6.js} +1 -1
  142. package/dist/cdn/shared-cba08e1c.js +1 -0
  143. package/dist/cdn/{shared-7fb8ecc5.js → shared-d518bd55.js} +1 -1
  144. package/dist/cdn/{shared-004f1a77.js → shared-d61b3e4f.js} +1 -1
  145. package/dist/cdn/{shared-d4a652b7.js → shared-d8dc97f0.js} +1 -1
  146. package/dist/cdn/{shared-bf47ead0.js → shared-de036570.js} +1 -1
  147. package/dist/cdn/{shared-1db07286.js → shared-ed0dee03.js} +1 -1
  148. package/dist/cdn/shared-f7e4cd67.js +1 -0
  149. package/dist/cdn/{shared-8eb4c8d7.js → shared-f80f402a.js} +1 -1
  150. package/dist/cdn/translations/cart-card/en.json +3 -3
  151. package/dist/cdn/translations/gift-card-code-form/en.json +6 -3
  152. package/dist/cdn/translations/gift-card-code-log-card/en.json +6 -3
  153. package/dist/cdn/translations/integration-form/en.json +13 -15
  154. package/dist/cdn/translations/payments-api-fraud-protection-card/en.json +0 -2
  155. package/dist/cdn/translations/payments-api-payment-method-card/en.json +0 -2
  156. package/dist/cdn/translations/payments-api-payment-preset-form/en.json +2 -2
  157. package/dist/cdn/translations/template-set-form/en.json +10 -0
  158. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.js +10 -5
  159. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.js.map +1 -1
  160. package/dist/elements/internal/InternalControl/InternalControl.js +2 -2
  161. package/dist/elements/internal/InternalControl/InternalControl.js.map +1 -1
  162. package/dist/elements/internal/InternalDetails/InternalDetails.js +3 -3
  163. package/dist/elements/internal/InternalDetails/InternalDetails.js.map +1 -1
  164. package/dist/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.js +1 -1
  165. package/dist/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.js.map +1 -1
  166. package/dist/elements/internal/InternalSelectControl/InternalSelectControl.d.ts +1 -1
  167. package/dist/elements/internal/InternalSelectControl/InternalSelectControl.js +3 -2
  168. package/dist/elements/internal/InternalSelectControl/InternalSelectControl.js.map +1 -1
  169. package/dist/elements/private/Group/Group.js +1 -1
  170. package/dist/elements/private/Group/Group.js.map +1 -1
  171. package/dist/elements/private/Warning/Warning.js +1 -3
  172. package/dist/elements/private/Warning/Warning.js.map +1 -1
  173. package/dist/elements/public/AdminSubscriptionCard/AdminSubscriptionCard.d.ts +12 -0
  174. package/dist/elements/public/AdminSubscriptionCard/AdminSubscriptionCard.js +12 -0
  175. package/dist/elements/public/AdminSubscriptionCard/AdminSubscriptionCard.js.map +1 -1
  176. package/dist/elements/public/AdminSubscriptionCard/index.d.ts +1 -0
  177. package/dist/elements/public/AdminSubscriptionCard/index.js +1 -0
  178. package/dist/elements/public/AdminSubscriptionCard/index.js.map +1 -1
  179. package/dist/elements/public/AppliedCouponCodeCard/AppliedCouponCodeCard.d.ts +2 -2
  180. package/dist/elements/public/AppliedCouponCodeCard/AppliedCouponCodeCard.js +7 -8
  181. package/dist/elements/public/AppliedCouponCodeCard/AppliedCouponCodeCard.js.map +1 -1
  182. package/dist/elements/public/AppliedCouponCodeForm/AppliedCouponCodeForm.d.ts +23 -4
  183. package/dist/elements/public/AppliedCouponCodeForm/AppliedCouponCodeForm.js +19 -0
  184. package/dist/elements/public/AppliedCouponCodeForm/AppliedCouponCodeForm.js.map +1 -1
  185. package/dist/elements/public/AppliedCouponCodeForm/types.d.ts +12 -0
  186. package/dist/elements/public/AppliedCouponCodeForm/types.js.map +1 -1
  187. package/dist/elements/public/AppliedTaxCard/AppliedTaxCard.d.ts +1 -1
  188. package/dist/elements/public/AppliedTaxCard/AppliedTaxCard.js +2 -2
  189. package/dist/elements/public/AppliedTaxCard/AppliedTaxCard.js.map +1 -1
  190. package/dist/elements/public/AttributeCard/AttributeCard.js +28 -14
  191. package/dist/elements/public/AttributeCard/AttributeCard.js.map +1 -1
  192. package/dist/elements/public/CartCard/CartCard.d.ts +7 -2
  193. package/dist/elements/public/CartCard/CartCard.js +16 -9
  194. package/dist/elements/public/CartCard/CartCard.js.map +1 -1
  195. package/dist/elements/public/CartForm/CartForm.d.ts +106 -1
  196. package/dist/elements/public/CartForm/CartForm.js +167 -37
  197. package/dist/elements/public/CartForm/CartForm.js.map +1 -1
  198. package/dist/elements/public/CartForm/index.d.ts +2 -0
  199. package/dist/elements/public/CartForm/index.js +2 -0
  200. package/dist/elements/public/CartForm/index.js.map +1 -1
  201. package/dist/elements/public/CartForm/types.d.ts +64 -0
  202. package/dist/elements/public/CartForm/types.js.map +1 -1
  203. package/dist/elements/public/CouponDetailCard/CouponDetailCard.d.ts +1 -1
  204. package/dist/elements/public/CouponDetailCard/CouponDetailCard.js +2 -2
  205. package/dist/elements/public/CouponDetailCard/CouponDetailCard.js.map +1 -1
  206. package/dist/elements/public/CouponForm/CouponForm.js +13 -9
  207. package/dist/elements/public/CouponForm/CouponForm.js.map +1 -1
  208. package/dist/elements/public/CustomFieldCard/CustomFieldCard.d.ts +1 -1
  209. package/dist/elements/public/CustomFieldCard/CustomFieldCard.js +2 -2
  210. package/dist/elements/public/CustomFieldCard/CustomFieldCard.js.map +1 -1
  211. package/dist/elements/public/CustomFieldCard/TwoLineCard.d.ts +6 -12
  212. package/dist/elements/public/CustomFieldCard/TwoLineCard.js +5 -35
  213. package/dist/elements/public/CustomFieldCard/TwoLineCard.js.map +1 -1
  214. package/dist/elements/public/DiscountBuilder/DiscountBuilder.js +4 -4
  215. package/dist/elements/public/DiscountBuilder/DiscountBuilder.js.map +1 -1
  216. package/dist/elements/public/DiscountCard/DiscountCard.d.ts +1 -1
  217. package/dist/elements/public/DiscountCard/DiscountCard.js +2 -2
  218. package/dist/elements/public/DiscountCard/DiscountCard.js.map +1 -1
  219. package/dist/elements/public/DiscountDetailCard/DiscountDetailCard.d.ts +1 -1
  220. package/dist/elements/public/DiscountDetailCard/DiscountDetailCard.js +2 -2
  221. package/dist/elements/public/DiscountDetailCard/DiscountDetailCard.js.map +1 -1
  222. package/dist/elements/public/EmailTemplateCard/EmailTemplateCard.d.ts +1 -1
  223. package/dist/elements/public/EmailTemplateCard/EmailTemplateCard.js +2 -2
  224. package/dist/elements/public/EmailTemplateCard/EmailTemplateCard.js.map +1 -1
  225. package/dist/elements/public/EmailTemplateForm/EmailTemplateForm.js +10 -2
  226. package/dist/elements/public/EmailTemplateForm/EmailTemplateForm.js.map +1 -1
  227. package/dist/elements/public/GiftCardCodeLogCard/GiftCardCodeLogCard.d.ts +13 -2
  228. package/dist/elements/public/GiftCardCodeLogCard/GiftCardCodeLogCard.js +66 -76
  229. package/dist/elements/public/GiftCardCodeLogCard/GiftCardCodeLogCard.js.map +1 -1
  230. package/dist/elements/public/GiftCardCodeLogCard/index.d.ts +1 -2
  231. package/dist/elements/public/GiftCardCodeLogCard/index.js +1 -2
  232. package/dist/elements/public/GiftCardCodeLogCard/index.js.map +1 -1
  233. package/dist/elements/public/GiftCardForm/GiftCardForm.js +3 -3
  234. package/dist/elements/public/GiftCardForm/GiftCardForm.js.map +1 -1
  235. package/dist/elements/public/I18n/format/price.js +1 -0
  236. package/dist/elements/public/I18n/format/price.js.map +1 -1
  237. package/dist/elements/public/I18nEditor/I18nEditor.d.ts +9 -0
  238. package/dist/elements/public/I18nEditor/I18nEditor.js +13 -4
  239. package/dist/elements/public/I18nEditor/I18nEditor.js.map +1 -1
  240. package/dist/elements/public/IntegrationForm/IntegrationForm.d.ts +35 -0
  241. package/dist/elements/public/IntegrationForm/IntegrationForm.js +156 -164
  242. package/dist/elements/public/IntegrationForm/IntegrationForm.js.map +1 -1
  243. package/dist/elements/public/IntegrationForm/index.d.ts +1 -0
  244. package/dist/elements/public/IntegrationForm/index.js +1 -0
  245. package/dist/elements/public/IntegrationForm/index.js.map +1 -1
  246. package/dist/elements/public/ItemCard/ItemCard.js +14 -15
  247. package/dist/elements/public/ItemCard/ItemCard.js.map +1 -1
  248. package/dist/elements/public/ItemCategoryCard/ItemCategoryCard.d.ts +1 -1
  249. package/dist/elements/public/ItemCategoryCard/ItemCategoryCard.js +2 -2
  250. package/dist/elements/public/ItemCategoryCard/ItemCategoryCard.js.map +1 -1
  251. package/dist/elements/public/ItemOptionCard/ItemOptionCard.d.ts +1 -1
  252. package/dist/elements/public/ItemOptionCard/ItemOptionCard.js +2 -2
  253. package/dist/elements/public/ItemOptionCard/ItemOptionCard.js.map +1 -1
  254. package/dist/elements/public/PaymentsApiFraudProtectionCard/PaymentsApiFraudProtectionCard.d.ts +23 -2
  255. package/dist/elements/public/PaymentsApiFraudProtectionCard/PaymentsApiFraudProtectionCard.js +35 -19
  256. package/dist/elements/public/PaymentsApiFraudProtectionCard/PaymentsApiFraudProtectionCard.js.map +1 -1
  257. package/dist/elements/public/PaymentsApiFraudProtectionCard/index.d.ts +2 -1
  258. package/dist/elements/public/PaymentsApiFraudProtectionCard/index.js +2 -1
  259. package/dist/elements/public/PaymentsApiFraudProtectionCard/index.js.map +1 -1
  260. package/dist/elements/public/PaymentsApiFraudProtectionForm/PaymentsApiFraudProtectionForm.d.ts +41 -3
  261. package/dist/elements/public/PaymentsApiFraudProtectionForm/PaymentsApiFraudProtectionForm.js +142 -84
  262. package/dist/elements/public/PaymentsApiFraudProtectionForm/PaymentsApiFraudProtectionForm.js.map +1 -1
  263. package/dist/elements/public/PaymentsApiFraudProtectionForm/index.d.ts +2 -3
  264. package/dist/elements/public/PaymentsApiFraudProtectionForm/index.js +2 -3
  265. package/dist/elements/public/PaymentsApiFraudProtectionForm/index.js.map +1 -1
  266. package/dist/elements/public/PaymentsApiFraudProtectionForm/types.d.ts +15 -0
  267. package/dist/elements/public/PaymentsApiFraudProtectionForm/types.js.map +1 -1
  268. package/dist/elements/public/PaymentsApiPaymentMethodCard/PaymentsApiPaymentMethodCard.d.ts +23 -3
  269. package/dist/elements/public/PaymentsApiPaymentMethodCard/PaymentsApiPaymentMethodCard.js +34 -20
  270. package/dist/elements/public/PaymentsApiPaymentMethodCard/PaymentsApiPaymentMethodCard.js.map +1 -1
  271. package/dist/elements/public/PaymentsApiPaymentMethodCard/index.d.ts +2 -1
  272. package/dist/elements/public/PaymentsApiPaymentMethodCard/index.js +2 -1
  273. package/dist/elements/public/PaymentsApiPaymentMethodCard/index.js.map +1 -1
  274. package/dist/elements/public/PaymentsApiPaymentMethodForm/PaymentsApiPaymentMethodForm.d.ts +70 -3
  275. package/dist/elements/public/PaymentsApiPaymentMethodForm/PaymentsApiPaymentMethodForm.js +314 -263
  276. package/dist/elements/public/PaymentsApiPaymentMethodForm/PaymentsApiPaymentMethodForm.js.map +1 -1
  277. package/dist/elements/public/PaymentsApiPaymentMethodForm/index.d.ts +2 -0
  278. package/dist/elements/public/PaymentsApiPaymentMethodForm/index.js +2 -0
  279. package/dist/elements/public/PaymentsApiPaymentMethodForm/index.js.map +1 -1
  280. package/dist/elements/public/PaymentsApiPaymentMethodForm/types.d.ts +29 -0
  281. package/dist/elements/public/PaymentsApiPaymentMethodForm/types.js.map +1 -1
  282. package/dist/elements/public/PaymentsApiPaymentPresetCard/PaymentsApiPaymentPresetCard.d.ts +1 -1
  283. package/dist/elements/public/PaymentsApiPaymentPresetCard/PaymentsApiPaymentPresetCard.js +2 -2
  284. package/dist/elements/public/PaymentsApiPaymentPresetCard/PaymentsApiPaymentPresetCard.js.map +1 -1
  285. package/dist/elements/public/PaymentsApiPaymentPresetForm/PaymentsApiPaymentPresetForm.d.ts +40 -1
  286. package/dist/elements/public/PaymentsApiPaymentPresetForm/PaymentsApiPaymentPresetForm.js +93 -74
  287. package/dist/elements/public/PaymentsApiPaymentPresetForm/PaymentsApiPaymentPresetForm.js.map +1 -1
  288. package/dist/elements/public/PaymentsApiPaymentPresetForm/types.d.ts +14 -0
  289. package/dist/elements/public/PaymentsApiPaymentPresetForm/types.js.map +1 -1
  290. package/dist/elements/public/ReportForm/ReportForm.js +4 -1
  291. package/dist/elements/public/ReportForm/ReportForm.js.map +1 -1
  292. package/dist/elements/public/StoreForm/StoreForm.d.ts +153 -1
  293. package/dist/elements/public/StoreForm/StoreForm.js +191 -27
  294. package/dist/elements/public/StoreForm/StoreForm.js.map +1 -1
  295. package/dist/elements/public/StoreForm/index.d.ts +1 -0
  296. package/dist/elements/public/StoreForm/index.js +1 -0
  297. package/dist/elements/public/StoreForm/index.js.map +1 -1
  298. package/dist/elements/public/StoreForm/types.d.ts +94 -0
  299. package/dist/elements/public/StoreForm/types.js.map +1 -1
  300. package/dist/elements/public/StoreShippingMethodForm/StoreShippingMethodForm.d.ts +1 -1
  301. package/dist/elements/public/StoreShippingMethodForm/StoreShippingMethodForm.js +1 -1
  302. package/dist/elements/public/StoreShippingMethodForm/StoreShippingMethodForm.js.map +1 -1
  303. package/dist/elements/public/SubscriptionSettingsForm/SubscriptionSettingsForm.d.ts +50 -1
  304. package/dist/elements/public/SubscriptionSettingsForm/SubscriptionSettingsForm.js +49 -0
  305. package/dist/elements/public/SubscriptionSettingsForm/SubscriptionSettingsForm.js.map +1 -1
  306. package/dist/elements/public/SubscriptionSettingsForm/internal/InternalSubscriptionSettingsFormReattemptBypass/globalStyles.js +1 -1
  307. package/dist/elements/public/SubscriptionSettingsForm/internal/InternalSubscriptionSettingsFormReattemptBypass/globalStyles.js.map +1 -1
  308. package/dist/elements/public/SubscriptionSettingsForm/internal/InternalSubscriptionSettingsFormReattemptBypass/index.d.ts +1 -0
  309. package/dist/elements/public/SubscriptionSettingsForm/internal/InternalSubscriptionSettingsFormReattemptBypass/index.js +1 -0
  310. package/dist/elements/public/SubscriptionSettingsForm/internal/InternalSubscriptionSettingsFormReattemptBypass/index.js.map +1 -1
  311. package/dist/elements/public/SubscriptionSettingsForm/types.d.ts +33 -1
  312. package/dist/elements/public/SubscriptionSettingsForm/types.js.map +1 -1
  313. package/dist/elements/public/TemplateConfigForm/TemplateConfigForm.js +4 -1
  314. package/dist/elements/public/TemplateConfigForm/TemplateConfigForm.js.map +1 -1
  315. package/dist/elements/public/TemplateForm/TemplateForm.js +10 -2
  316. package/dist/elements/public/TemplateForm/TemplateForm.js.map +1 -1
  317. package/dist/elements/public/TemplateSetCard/TemplateSetCard.d.ts +1 -1
  318. package/dist/elements/public/TemplateSetCard/TemplateSetCard.js +2 -2
  319. package/dist/elements/public/TemplateSetCard/TemplateSetCard.js.map +1 -1
  320. package/dist/elements/public/TemplateSetForm/TemplateSetForm.d.ts +49 -8
  321. package/dist/elements/public/TemplateSetForm/TemplateSetForm.js +100 -64
  322. package/dist/elements/public/TemplateSetForm/TemplateSetForm.js.map +1 -1
  323. package/dist/elements/public/TemplateSetForm/index.d.ts +1 -0
  324. package/dist/elements/public/TemplateSetForm/index.js +1 -0
  325. package/dist/elements/public/TemplateSetForm/index.js.map +1 -1
  326. package/dist/elements/public/TemplateSetForm/types.d.ts +22 -0
  327. package/dist/elements/public/TemplateSetForm/types.js.map +1 -1
  328. package/dist/mixins/themeable.js +19 -12
  329. package/dist/mixins/themeable.js.map +1 -1
  330. package/package.json +2 -1
  331. package/dist/cdn/shared-11ffd643.js +0 -1
  332. package/dist/cdn/shared-1351c1e3.js +0 -1
  333. package/dist/cdn/shared-2f9b7791.js +0 -1
  334. package/dist/cdn/shared-79d6a262.js +0 -1
  335. package/dist/cdn/shared-888d690a.js +0 -1
  336. package/dist/cdn/shared-b7636a23.js +0 -1
  337. package/dist/cdn/shared-fafafc09.js +0 -1
@@ -1,14 +1,112 @@
1
1
  import { TranslatableMixin } from "../../../mixins/translatable.js";
2
2
  import { InternalForm } from "../../internal/InternalForm/InternalForm.js";
3
+ import { ifDefined } from 'lit-html/directives/if-defined';
3
4
  import { classMap } from "../../../utils/class-map.js";
4
5
  import { html } from 'lit-html';
5
6
  import has from 'lodash-es/has';
6
7
  import get from 'lodash-es/get';
7
8
  import set from 'lodash-es/set';
8
- export class PaymentsApiPaymentMethodForm extends TranslatableMixin(InternalForm, 'payments-api-payment-method-form') {
9
+ const NS = 'payments-api-payment-method-form';
10
+ const Base = TranslatableMixin(InternalForm, NS);
11
+ /**
12
+ * Form element for the `fx:payment_method` resource of Payments API.
13
+ *
14
+ * _Payments API is a client-side virtual API layer built on top of hAPI
15
+ * in an attempt to streamline access to stores' payment method settings
16
+ * that is currently a bit quirky due to the legacy functionality. To use
17
+ * this element with hAPI, wrap it into a foxy-payments-api node._
18
+ *
19
+ * @slot description:before
20
+ * @slot description:after
21
+ *
22
+ * @slot account-id:before
23
+ * @slot account-id:after
24
+ *
25
+ * @slot account-key:before
26
+ * @slot account-key:after
27
+ *
28
+ * @slot third-party-key:before
29
+ * @slot third-party-key:after
30
+ *
31
+ * @slot test-account-id:before
32
+ * @slot test-account-id:after
33
+ *
34
+ * @slot test-account-key:before
35
+ * @slot test-account-key:after
36
+ *
37
+ * @slot test-third-party-key:before
38
+ * @slot test-third-party-key:after
39
+ *
40
+ * @slot additional-fields-[field-name-in-kebab-case]:before
41
+ * @slot additional-fields-[field-name-in-kebab-case]:after
42
+ *
43
+ * @slot three-d-secure-toggle:before
44
+ * @slot three-d-secure-toggle:after
45
+ *
46
+ * @slot three-d-secure-response:before
47
+ * @slot three-d-secure-response:after
48
+ *
49
+ * @slot timestamps:before
50
+ * @slot timestamps:after
51
+ *
52
+ * @slot create:before
53
+ * @slot create:after
54
+ *
55
+ * @slot delete:before
56
+ * @slot delete:after
57
+ *
58
+ * @element foxy-payments-api-payment-method-form
59
+ * @since 1.21.0
60
+ */
61
+ export class PaymentsApiPaymentMethodForm extends Base {
9
62
  constructor() {
10
63
  super(...arguments);
64
+ /** A function that returns a URL of a payment method icon based on the given type. */
11
65
  this.getImageSrc = null;
66
+ /** Template render functions mapped to their name. */
67
+ this.templates = {};
68
+ this.__availablePaymentMethodsLoaderId = 'availablePaymentMethodsLoader';
69
+ this.__threeDSecureResponseGetValue = () => {
70
+ var _a;
71
+ return ((_a = this.form.config_3d_secure) === null || _a === void 0 ? void 0 : _a.endsWith('require_valid_response')) ? ['valid_only'] : [];
72
+ };
73
+ this.__threeDSecureResponseSetValue = (newValue) => {
74
+ const postfix = newValue.includes('valid_only') ? '_require_valid_response' : '';
75
+ const config = this.form.config_3d_secure;
76
+ const type = (config === null || config === void 0 ? void 0 : config.startsWith('all_cards')) ? 'all_cards' : 'maestro_only';
77
+ this.edit({
78
+ config_3d_secure: `${type}${postfix}`,
79
+ });
80
+ };
81
+ this.__threeDSecureResponseOptions = [
82
+ { value: 'valid_only', label: 'option_valid_only' },
83
+ ];
84
+ this.__threeDSecureToggleGetValue = () => {
85
+ const config = this.form.config_3d_secure;
86
+ if (config === null || config === void 0 ? void 0 : config.startsWith('all_cards'))
87
+ return 'all_cards';
88
+ if (config === null || config === void 0 ? void 0 : config.startsWith('maestro_only'))
89
+ return 'maestro_only';
90
+ return 'off';
91
+ };
92
+ this.__threeDSecureToggleSetValue = (newValue) => {
93
+ var _a;
94
+ let newFormValue = '';
95
+ if (newValue === 'all_cards' || newValue === 'maestro_only') {
96
+ if ((_a = this.form.config_3d_secure) === null || _a === void 0 ? void 0 : _a.endsWith('require_valid_response')) {
97
+ newFormValue = `${newValue}_require_valid_response`;
98
+ }
99
+ else {
100
+ newFormValue = newValue;
101
+ }
102
+ }
103
+ this.edit({ config_3d_secure: newFormValue });
104
+ };
105
+ this.__threeDSecureToggleOptions = [
106
+ { value: 'off', label: 'option_off' },
107
+ { value: 'all_cards', label: 'option_all_cards' },
108
+ { value: 'maestro_only', label: 'option_maestro_only' },
109
+ ];
12
110
  this.__tab = 0;
13
111
  }
14
112
  static get defaultImageSrc() {
@@ -54,24 +152,14 @@ export class PaymentsApiPaymentMethodForm extends TranslatableMixin(InternalForm
54
152
  ];
55
153
  }
56
154
  renderBody() {
57
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
58
- let availablePaymentMethodsUrl;
59
- try {
60
- const presetIdRegex = /\/payment_presets\/(?<presetId>.+)\//;
61
- const presetId = presetIdRegex.exec(new URL(this.href || this.parent).pathname).groups
62
- .presetId;
63
- const url = new URL(`/payment_presets/${presetId}/available_payment_methods`, this.href || this.parent);
64
- availablePaymentMethodsUrl = url.toString();
65
- }
66
- catch (_q) {
67
- availablePaymentMethodsUrl = '';
68
- }
69
- const availablePaymentMethods = (_a = this.renderRoot.querySelector('#available-payment-methods')) === null || _a === void 0 ? void 0 : _a.data;
70
- const defaultSrc = PaymentsApiPaymentMethodForm.defaultImageSrc;
71
- const groupedPaymentMethods = Object.entries((_b = availablePaymentMethods === null || availablePaymentMethods === void 0 ? void 0 : availablePaymentMethods.values) !== null && _b !== void 0 ? _b : {})
72
- .sort((a, b) => {
73
- return a[0].localeCompare(b[0], 'en');
74
- })
155
+ return this.form.type
156
+ ? this.__renderPaymentMethodConfig(this.form.type)
157
+ : this.__renderPaymentMethodSelector();
158
+ }
159
+ get __groupedAvailablePaymentMethods() {
160
+ var _a;
161
+ return Object.entries((_a = this.__availablePaymentMethods) !== null && _a !== void 0 ? _a : {})
162
+ .sort((a, b) => a[0].localeCompare(b[0], 'en'))
75
163
  .reduce((groups, [type, helper]) => {
76
164
  const firstChar = type.charAt(0).toUpperCase();
77
165
  const isSpecialCharacter = !/\w/.test(firstChar);
@@ -85,276 +173,239 @@ export class PaymentsApiPaymentMethodForm extends TranslatableMixin(InternalForm
85
173
  }
86
174
  return groups;
87
175
  }, []);
176
+ }
177
+ get __availablePaymentMethodsLoader() {
178
+ return this.renderRoot.querySelector(`#${this.__availablePaymentMethodsLoaderId}`);
179
+ }
180
+ get __availablePaymentMethodsHref() {
181
+ try {
182
+ const presetIdRegex = /\/payment_presets\/(?<presetId>.+)\//;
183
+ const pathname = new URL(this.href || this.parent).pathname;
184
+ const presetId = presetIdRegex.exec(pathname).groups.presetId;
185
+ const url = new URL(`/payment_presets/${presetId}/available_payment_methods`, this.href || this.parent);
186
+ return url.toString();
187
+ }
188
+ catch (_a) {
189
+ // ignore
190
+ }
191
+ }
192
+ get __availablePaymentMethods() {
193
+ var _a, _b;
194
+ return (_b = (_a = this.__availablePaymentMethodsLoader) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.values;
195
+ }
196
+ get __liveBlocks() {
197
+ var _a, _b, _c;
198
+ return (_c = (_b = (_a = this.form.helper) === null || _a === void 0 ? void 0 : _a.additional_fields) === null || _b === void 0 ? void 0 : _b.blocks.filter(block => block.is_live)) !== null && _c !== void 0 ? _c : [];
199
+ }
200
+ get __testBlocks() {
201
+ var _a, _b, _c;
202
+ return (_c = (_b = (_a = this.form.helper) === null || _a === void 0 ? void 0 : _a.additional_fields) === null || _b === void 0 ? void 0 : _b.blocks.filter(block => !block.is_live)) !== null && _c !== void 0 ? _c : [];
203
+ }
204
+ __renderPaymentMethodSelector() {
88
205
  return html `
89
206
  <foxy-nucleon
90
207
  class="hidden"
91
- href=${availablePaymentMethodsUrl}
92
- id="available-payment-methods"
208
+ infer=""
209
+ href=${ifDefined(this.__availablePaymentMethodsHref)}
210
+ id=${this.__availablePaymentMethodsLoaderId}
93
211
  @update=${() => this.requestUpdate()}
94
212
  >
95
213
  </foxy-nucleon>
96
214
 
97
- ${this.form.type
98
- ? html `
99
- <figure class="relative flex flex-col gap-m p-m items-center">
100
- <img
101
- class="relative h-xl w-xl object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs"
102
- src=${(_d = (_c = this.getImageSrc) === null || _c === void 0 ? void 0 : _c.call(this, this.form.type)) !== null && _d !== void 0 ? _d : defaultSrc}
103
- alt=""
104
- @error=${(evt) => (evt.currentTarget.src = defaultSrc)}
105
- />
215
+ <foxy-i18n
216
+ class="block text-xxl font-bold border-b border-contrast-10 pb-m"
217
+ infer=""
218
+ key="select_method_title"
219
+ >
220
+ </foxy-i18n>
106
221
 
107
- <figcaption class="relative min-w-0 font-bold text-xl text-center">
108
- ${(_f = (_e = this.form.helper) === null || _e === void 0 ? void 0 : _e.name) !== null && _f !== void 0 ? _f : this.form.type}&ZeroWidthSpace;
109
- </figcaption>
110
- </figure>
222
+ <section data-testid="select-method-list">
223
+ <div class="-my-s">
224
+ ${this.__groupedAvailablePaymentMethods.map(({ name, items }) => {
225
+ return html `
226
+ <p class="w-m text-center font-semibold text-tertiary py-s">${name}</p>
227
+ <ul class="grid grid-cols-1">
228
+ ${items.map(item => html `<li>${this.__renderPaymentMethodButton(item)}</li>`)}
229
+ </ul>
230
+ `;
231
+ })}
232
+ </div>
233
+ </section>
234
+ `;
235
+ }
236
+ __renderPaymentMethodConfig(type) {
237
+ var _a, _b, _c, _d, _e, _f;
238
+ const defaultSrc = PaymentsApiPaymentMethodForm.defaultImageSrc;
239
+ return html `
240
+ <figure data-testid="logo" class="relative flex flex-col gap-m p-m items-center">
241
+ <img
242
+ class="relative h-xl w-xl object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs"
243
+ src=${(_b = (_a = this.getImageSrc) === null || _a === void 0 ? void 0 : _a.call(this, type)) !== null && _b !== void 0 ? _b : defaultSrc}
244
+ alt=""
245
+ @error=${(evt) => (evt.currentTarget.src = defaultSrc)}
246
+ />
111
247
 
112
- <div class="rounded-t-l rounded-b-l border border-contrast-10">
113
- <vaadin-tabs
114
- selected=${this.__tab}
115
- theme="centered"
116
- @selected-changed=${(evt) => {
117
- var _a;
118
- const tabs = evt.currentTarget;
119
- this.__tab = (_a = tabs.selected) !== null && _a !== void 0 ? _a : 0;
120
- }}
121
- >
122
- <vaadin-tab><foxy-i18n infer="" key="tab_live"></foxy-i18n></vaadin-tab>
123
- <vaadin-tab><foxy-i18n infer="" key="tab_test"></foxy-i18n></vaadin-tab>
124
- </vaadin-tabs>
248
+ <figcaption class="relative min-w-0 font-bold text-xl text-center">
249
+ ${(_d = (_c = this.form.helper) === null || _c === void 0 ? void 0 : _c.name) !== null && _d !== void 0 ? _d : this.form.type}&ZeroWidthSpace;
250
+ </figcaption>
251
+ </figure>
125
252
 
126
- <div class="overflow-hidden">
253
+ <div class="rounded border border-contrast-10">
254
+ <vaadin-tabs
255
+ selected=${this.__tab}
256
+ theme="centered"
257
+ @selected-changed=${(evt) => {
258
+ var _a;
259
+ const tabs = evt.currentTarget;
260
+ this.__tab = (_a = tabs.selected) !== null && _a !== void 0 ? _a : 0;
261
+ }}
262
+ >
263
+ <vaadin-tab><foxy-i18n infer="" key="tab_live"></foxy-i18n></vaadin-tab>
264
+ <vaadin-tab><foxy-i18n infer="" key="tab_test"></foxy-i18n></vaadin-tab>
265
+ </vaadin-tabs>
266
+
267
+ <div class="overflow-hidden" style="--lumo-border-radius: var(--lumo-border-radius-s)">
268
+ <div
269
+ data-testid="tab-content"
270
+ class="grid grid-cols-2 gap-m transition-transform transform duration-300"
271
+ style=${classMap({
272
+ 'width: calc(200% + var(--lumo-space-m));': true,
273
+ '--tw-translate-x: 0;': this.__tab === 0,
274
+ '--tw-translate-x: calc(-50% - (var(--lumo-space-m) / 2));': this.__tab !== 0,
275
+ })}
276
+ >
277
+ ${['live', 'test'].map((type, index) => {
278
+ var _a, _b, _c;
279
+ const prefix = index === 0 ? '' : `-${type}`;
280
+ const blocks = index === 0 ? this.__liveBlocks : this.__testBlocks;
281
+ return html `
127
282
  <div
128
- class="grid grid-cols-2 gap-m transition-transform transform duration-300"
129
- style="width: calc(200% + var(--lumo-space-m)); --tw-translate-x: ${this.__tab ===
130
- 0
131
- ? '0'
132
- : 'calc(-50% - (var(--lumo-space-m) / 2))'}"
283
+ class=${classMap({
284
+ 'grid grid-cols-1 gap-m p-m transition-opacity duration-300': true,
285
+ 'opacity-100': this.__tab === index,
286
+ 'opacity-0': this.__tab !== index,
287
+ })}
133
288
  >
134
- <div
135
- class="grid grid-cols-1 gap-m p-m transition-opacity duration-300 ${this
136
- .__tab === 0
137
- ? 'opacity-100'
138
- : 'opacity-0'}"
139
- >
140
- ${((_g = this.form.helper) === null || _g === void 0 ? void 0 : _g.id_description) ? html `
141
- <foxy-internal-text-control
142
- placeholder=${this.t('default_additional_field_placeholder')}
143
- helper-text=""
144
- label=${this.form.helper.id_description}
145
- infer="account-id"
146
- >
147
- </foxy-internal-text-control>
148
- `
149
- : ''}
150
- ${((_h = this.form.helper) === null || _h === void 0 ? void 0 : _h.third_party_key_description) ? html `
151
- <foxy-internal-text-control
152
- placeholder=${this.t('default_additional_field_placeholder')}
153
- helper-text=""
154
- label=${this.form.helper.third_party_key_description}
155
- infer="third-party-key"
156
- >
157
- </foxy-internal-text-control>
158
- `
159
- : ''}
160
- ${((_j = this.form.helper) === null || _j === void 0 ? void 0 : _j.key_description) ? html `
161
- <foxy-internal-text-control
162
- placeholder=${this.t('default_additional_field_placeholder')}
163
- helper-text=""
164
- label=${this.form.helper.key_description}
165
- infer="account-key"
166
- >
167
- </foxy-internal-text-control>
168
- `
169
- : ''}
170
- ${this.__liveBlocks.map(block => this.__renderBlock(block))}
171
- </div>
172
-
173
- <div
174
- class="grid grid-cols-1 gap-m p-m transition-opacity duration-300 ${this
175
- .__tab === 1
176
- ? 'opacity-100'
177
- : 'opacity-0'}"
178
- >
179
- ${((_k = this.form.helper) === null || _k === void 0 ? void 0 : _k.id_description) ? html `
180
- <foxy-internal-text-control
181
- placeholder=${this.t('default_additional_field_placeholder')}
182
- helper-text=""
183
- label=${this.form.helper.id_description}
184
- infer="test-account-id"
185
- >
186
- </foxy-internal-text-control>
187
- `
289
+ ${((_a = this.form.helper) === null || _a === void 0 ? void 0 : _a.id_description) ? html `
290
+ <foxy-internal-text-control
291
+ placeholder=${this.t('default_additional_field_placeholder')}
292
+ helper-text=""
293
+ label=${this.form.helper.id_description}
294
+ infer="${prefix}account-id"
295
+ >
296
+ </foxy-internal-text-control>
297
+ `
188
298
  : ''}
189
- ${((_l = this.form.helper) === null || _l === void 0 ? void 0 : _l.third_party_key_description) ? html `
190
- <foxy-internal-text-control
191
- placeholder=${this.t('default_additional_field_placeholder')}
192
- helper-text=""
193
- label=${this.form.helper.third_party_key_description}
194
- infer="test-third-party-key"
195
- >
196
- </foxy-internal-text-control>
197
- `
299
+ ${((_b = this.form.helper) === null || _b === void 0 ? void 0 : _b.third_party_key_description) ? html `
300
+ <foxy-internal-text-control
301
+ placeholder=${this.t('default_additional_field_placeholder')}
302
+ helper-text=""
303
+ label=${this.form.helper.third_party_key_description}
304
+ infer="${prefix}third-party-key"
305
+ >
306
+ </foxy-internal-text-control>
307
+ `
198
308
  : ''}
199
- ${((_m = this.form.helper) === null || _m === void 0 ? void 0 : _m.key_description) ? html `
200
- <foxy-internal-text-control
201
- placeholder=${this.t('default_additional_field_placeholder')}
202
- helper-text=""
203
- label=${this.form.helper.key_description}
204
- infer="test-account-key"
205
- >
206
- </foxy-internal-text-control>
207
- `
309
+ ${((_c = this.form.helper) === null || _c === void 0 ? void 0 : _c.key_description) ? html `
310
+ <foxy-internal-text-control
311
+ placeholder=${this.t('default_additional_field_placeholder')}
312
+ helper-text=""
313
+ label=${this.form.helper.key_description}
314
+ infer="${prefix}account-key"
315
+ >
316
+ </foxy-internal-text-control>
317
+ `
208
318
  : ''}
209
- ${this.__testBlocks.map(block => this.__renderBlock(block))}
210
- </div>
319
+ ${blocks.map(block => this.__renderBlock(block))}
211
320
  </div>
212
- </div>
213
- </div>
321
+ `;
322
+ })}
323
+ </div>
324
+ </div>
325
+ </div>
326
+
327
+ <foxy-internal-text-control infer="description"></foxy-internal-text-control>
214
328
 
215
- <foxy-internal-text-control infer="description"></foxy-internal-text-control>
329
+ ${((_e = this.form.helper) === null || _e === void 0 ? void 0 : _e.supports_3d_secure) ? html `
330
+ <foxy-internal-radio-group-control
331
+ infer="three-d-secure-toggle"
332
+ class="-mb-s"
333
+ .getValue=${this.__threeDSecureToggleGetValue}
334
+ .setValue=${this.__threeDSecureToggleSetValue}
335
+ .options=${this.__threeDSecureToggleOptions}
336
+ >
337
+ </foxy-internal-radio-group-control>
216
338
 
217
- ${((_o = this.form.helper) === null || _o === void 0 ? void 0 : _o.supports_3d_secure) ? html `
218
- <foxy-internal-radio-group-control
219
- infer="three-d-secure-toggle"
339
+ ${this.form.config_3d_secure
340
+ ? html `
341
+ <foxy-internal-checkbox-group-control
342
+ infer="three-d-secure-response"
220
343
  class="-mb-s"
221
- .getValue=${() => {
222
- const config = this.form.config_3d_secure;
223
- if (config === null || config === void 0 ? void 0 : config.startsWith('all_cards'))
224
- return 'all_cards';
225
- if (config === null || config === void 0 ? void 0 : config.startsWith('maestro_only'))
226
- return 'maestro_only';
227
- return 'off';
228
- }}
229
- .setValue=${(newValue) => {
230
- var _a;
231
- let newFormValue = '';
232
- if (newValue === 'all_cards' || newValue === 'maestro_only') {
233
- if ((_a = this.form.config_3d_secure) === null || _a === void 0 ? void 0 : _a.endsWith('require_valid_response')) {
234
- newFormValue = `${newValue}_require_valid_response`;
235
- }
236
- else {
237
- newFormValue = newValue;
238
- }
239
- }
240
- this.edit({ config_3d_secure: newFormValue });
241
- }}
242
- .options=${[
243
- { value: 'off', label: 'option_off' },
244
- { value: 'all_cards', label: 'option_all_cards' },
245
- { value: 'maestro_only', label: 'option_maestro_only' },
246
- ]}
344
+ .getValue=${this.__threeDSecureResponseGetValue}
345
+ .setValue=${this.__threeDSecureResponseSetValue}
346
+ .options=${this.__threeDSecureResponseOptions}
247
347
  >
248
- </foxy-internal-radio-group-control>
249
-
250
- ${this.form.config_3d_secure
251
- ? html `
252
- <foxy-internal-checkbox-group-control
253
- infer="three-d-secure-response"
254
- class="-mb-s"
255
- .options=${[{ value: 'valid_only', label: 'option_valid_only' }]}
256
- .getValue=${() => {
257
- var _a;
258
- return ((_a = this.form.config_3d_secure) === null || _a === void 0 ? void 0 : _a.endsWith('require_valid_response')) ? ['valid_only']
259
- : [];
260
- }}
261
- .setValue=${(newValue) => {
262
- const postfix = newValue.includes('valid_only')
263
- ? '_require_valid_response'
264
- : '';
265
- const config = this.form.config_3d_secure;
266
- const type = (config === null || config === void 0 ? void 0 : config.startsWith('all_cards')) ? 'all_cards'
267
- : 'maestro_only';
268
- this.edit({
269
- config_3d_secure: `${type}${postfix}`,
270
- });
271
- }}
272
- >
273
- </foxy-internal-checkbox-group-control>
274
- `
275
- : ''}
348
+ </foxy-internal-checkbox-group-control>
276
349
  `
277
- : ''}
278
- ${((_p = this.data) === null || _p === void 0 ? void 0 : _p.type) ? ''
279
- : html `
280
- <vaadin-button theme="contrast" @click=${() => this.undo()}>
281
- <foxy-i18n infer="" key="select_another_button_label"></foxy-i18n>
282
- </vaadin-button>
283
- `}
284
- ${super.renderBody()}
350
+ : ''}
285
351
  `
352
+ : ''}
353
+ ${((_f = this.data) === null || _f === void 0 ? void 0 : _f.type) ? ''
286
354
  : html `
287
- <foxy-i18n
288
- class="block text-xxl font-bold border-b border-contrast-10 pb-m"
289
- infer=""
290
- key="select_method_title"
355
+ <vaadin-button
356
+ data-testid="select-another-button"
357
+ theme="contrast"
358
+ @click=${() => this.undo()}
291
359
  >
292
- </foxy-i18n>
293
-
294
- <div>
295
- <div class="-my-s grid grid-cols-1">
296
- ${groupedPaymentMethods.map(group => {
297
- return html `
298
- <div class="w-m text-center font-semibold text-tertiary py-s">
299
- ${group.name}
300
- </div>
301
-
302
- ${group.items.map(({ type, helper }) => {
303
- var _a, _b;
304
- return html `
305
- <button
306
- class=${classMap({
307
- 'block text-left p-s rounded-t-l rounded-b-l -mx-s': true,
308
- 'transition-colors hover-bg-contrast-5': !helper.conflict,
309
- 'cursor-default': !!helper.conflict,
310
- })}
311
- ?disabled=${!!helper.conflict}
312
- @click=${() => this.edit({ type, helper })}
313
- >
314
- <figure class="flex items-center gap-m h-m">
315
- <img
316
- class="relative h-m w-m object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs"
317
- src=${(_b = (_a = this.getImageSrc) === null || _a === void 0 ? void 0 : _a.call(this, type)) !== null && _b !== void 0 ? _b : defaultSrc}
318
- alt=""
319
- @error=${(evt) => (evt.currentTarget.src = defaultSrc)}
320
- />
321
-
322
- <figcaption
323
- class="min-w-0 flex-1 truncate leading-s ${helper.conflict
324
- ? 'text-tertiary'
325
- : ''}"
326
- >
327
- <div class="font-semibold">${helper.name}&ZeroWidthSpace;</div>
328
- ${helper.conflict
329
- ? html `
330
- <foxy-i18n
331
- class="block text-tertiary text-xs"
332
- infer=""
333
- key="conflict_message"
334
- .options=${helper.conflict}
335
- >
336
- </foxy-i18n>
337
- `
338
- : ''}
339
- </figcaption>
340
- </figure>
341
- </button>
342
- `;
343
- })}
344
- `;
345
- })}
346
- </div>
347
- </div>
360
+ <foxy-i18n infer="" key="select_another_button_label"></foxy-i18n>
361
+ </vaadin-button>
348
362
  `}
363
+ ${super.renderBody()}
349
364
  `;
350
365
  }
351
- get __liveBlocks() {
352
- var _a, _b, _c;
353
- return (_c = (_b = (_a = this.form.helper) === null || _a === void 0 ? void 0 : _a.additional_fields) === null || _b === void 0 ? void 0 : _b.blocks.filter(block => block.is_live)) !== null && _c !== void 0 ? _c : [];
354
- }
355
- get __testBlocks() {
356
- var _a, _b, _c;
357
- return (_c = (_b = (_a = this.form.helper) === null || _a === void 0 ? void 0 : _a.additional_fields) === null || _b === void 0 ? void 0 : _b.blocks.filter(block => !block.is_live)) !== null && _c !== void 0 ? _c : [];
366
+ __renderPaymentMethodButton({ type, helper }) {
367
+ var _a, _b;
368
+ const defaultSrc = PaymentsApiPaymentMethodForm.defaultImageSrc;
369
+ return html `
370
+ <button
371
+ class=${classMap({
372
+ 'w-full block text-left p-s rounded -mx-s': true,
373
+ 'transition-colors hover-bg-contrast-5': !helper.conflict,
374
+ 'cursor-default': !!helper.conflict,
375
+ })}
376
+ ?disabled=${!!helper.conflict}
377
+ @click=${() => this.edit({ type, helper })}
378
+ >
379
+ <figure class="flex items-center gap-m h-m">
380
+ <img
381
+ class="relative h-m w-m object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs"
382
+ src=${(_b = (_a = this.getImageSrc) === null || _a === void 0 ? void 0 : _a.call(this, type)) !== null && _b !== void 0 ? _b : defaultSrc}
383
+ alt=""
384
+ @error=${(evt) => (evt.currentTarget.src = defaultSrc)}
385
+ />
386
+
387
+ <figcaption
388
+ class=${classMap({
389
+ 'min-w-0 flex-1 truncate leading-s': true,
390
+ 'text-tertiary': !!helper.conflict,
391
+ })}
392
+ >
393
+ <div class="font-semibold">${helper.name}&ZeroWidthSpace;</div>
394
+ ${helper.conflict
395
+ ? html `
396
+ <foxy-i18n
397
+ class="block text-tertiary text-xs"
398
+ infer=""
399
+ key="conflict_message"
400
+ .options=${helper.conflict}
401
+ >
402
+ </foxy-i18n>
403
+ `
404
+ : ''}
405
+ </figcaption>
406
+ </figure>
407
+ </button>
408
+ `;
358
409
  }
359
410
  __renderBlock(block) {
360
411
  return html `${block.fields.map(field => {
@@ -391,7 +442,7 @@ export class PaymentsApiPaymentMethodForm extends TranslatableMixin(InternalForm
391
442
  class="-mb-s"
392
443
  infer=${scope}
393
444
  .options=${[{ label: field.name, value: 'checked' }]}
394
- .getValue=${getValue}
445
+ .getValue=${() => (getValue() ? ['checked'] : [])}
395
446
  .setValue=${(newValue) => {
396
447
  setValue(newValue.includes('checked'));
397
448
  }}