@foxy.io/elements 1.27.0-beta.7 → 1.27.0

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 (279) 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-api-browser.js +2 -2
  6. package/dist/cdn/foxy-applied-coupon-code-card.js +1 -1
  7. package/dist/cdn/foxy-applied-coupon-code-form.js +1 -1
  8. package/dist/cdn/foxy-applied-tax-card.js +1 -1
  9. package/dist/cdn/foxy-attribute-card.js +1 -1
  10. package/dist/cdn/foxy-attribute-form.js +1 -1
  11. package/dist/cdn/foxy-billing-address-card.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-client-card.js +1 -1
  16. package/dist/cdn/foxy-client-form.js +1 -1
  17. package/dist/cdn/foxy-collection-page.js +1 -1
  18. package/dist/cdn/foxy-collection-pages.js +1 -1
  19. package/dist/cdn/foxy-copy-to-clipboard.js +1 -1
  20. package/dist/cdn/foxy-coupon-card.js +1 -1
  21. package/dist/cdn/foxy-coupon-code-card.js +1 -1
  22. package/dist/cdn/foxy-coupon-code-form.js +1 -1
  23. package/dist/cdn/foxy-coupon-codes-form.js +1 -1
  24. package/dist/cdn/foxy-coupon-detail-card.js +1 -1
  25. package/dist/cdn/foxy-coupon-form.js +1 -1
  26. package/dist/cdn/foxy-custom-field-card.js +1 -1
  27. package/dist/cdn/foxy-custom-field-form.js +1 -1
  28. package/dist/cdn/foxy-customer-api.js +1 -1
  29. package/dist/cdn/foxy-customer-card.js +1 -1
  30. package/dist/cdn/foxy-customer-form.js +1 -1
  31. package/dist/cdn/foxy-customer-portal-settings-form.js +1 -1
  32. package/dist/cdn/foxy-customer-portal-settings.js +1 -1
  33. package/dist/cdn/foxy-customer-portal.js +13 -13
  34. package/dist/cdn/foxy-customer.js +6 -6
  35. package/dist/cdn/foxy-customers-table.js +1 -1
  36. package/dist/cdn/foxy-discount-builder.js +1 -1
  37. package/dist/cdn/foxy-discount-card.js +1 -1
  38. package/dist/cdn/foxy-discount-detail-card.js +1 -1
  39. package/dist/cdn/foxy-donation.js +1 -1
  40. package/dist/cdn/foxy-downloadable-card.js +1 -1
  41. package/dist/cdn/foxy-downloadable-form.js +7 -7
  42. package/dist/cdn/foxy-email-template-card.js +1 -1
  43. package/dist/cdn/foxy-email-template-form.js +1 -1
  44. package/dist/cdn/foxy-error-entry-card.js +1 -1
  45. package/dist/cdn/foxy-filter-attribute-card.js +1 -1
  46. package/dist/cdn/foxy-filter-attribute-form.js +1 -1
  47. package/dist/cdn/foxy-form-dialog.js +1 -1
  48. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  49. package/dist/cdn/foxy-gift-card-card.js +1 -1
  50. package/dist/cdn/foxy-gift-card-code-card.js +1 -1
  51. package/dist/cdn/foxy-gift-card-code-form.js +1 -1
  52. package/dist/cdn/foxy-gift-card-code-log-card.js +1 -1
  53. package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
  54. package/dist/cdn/foxy-gift-card-form.js +1 -1
  55. package/dist/cdn/foxy-i18n-editor.js +2 -2
  56. package/dist/cdn/foxy-i18n.js +1 -1
  57. package/dist/cdn/foxy-integration-card.js +1 -1
  58. package/dist/cdn/foxy-integration-form.js +1 -1
  59. package/dist/cdn/foxy-item-card.js +1 -1
  60. package/dist/cdn/foxy-item-category-card.js +1 -1
  61. package/dist/cdn/foxy-item-category-form.js +1 -1
  62. package/dist/cdn/foxy-item-form.js +3 -3
  63. package/dist/cdn/foxy-item-option-card.js +1 -1
  64. package/dist/cdn/foxy-item-option-form.js +1 -1
  65. package/dist/cdn/foxy-items-form.js +1 -1
  66. package/dist/cdn/foxy-native-integration-card.js +1 -1
  67. package/dist/cdn/foxy-native-integration-form.js +1 -1
  68. package/dist/cdn/foxy-nucleon-element.js +1 -1
  69. package/dist/cdn/foxy-pagination.js +1 -1
  70. package/dist/cdn/foxy-passkey-card.js +1 -1
  71. package/dist/cdn/foxy-passkey-form.js +1 -1
  72. package/dist/cdn/foxy-payment-card-embed-element.js +1 -0
  73. package/dist/cdn/foxy-payment-card.js +1 -1
  74. package/dist/cdn/foxy-payment-method-card.js +1 -1
  75. package/dist/cdn/foxy-payments-api-fraud-protection-card.js +1 -1
  76. package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
  77. package/dist/cdn/foxy-payments-api-payment-method-card.js +1 -1
  78. package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
  79. package/dist/cdn/foxy-payments-api-payment-preset-card.js +1 -1
  80. package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
  81. package/dist/cdn/foxy-payments-api.js +1 -1
  82. package/dist/cdn/foxy-query-builder.js +1 -1
  83. package/dist/cdn/foxy-report-form.js +2 -2
  84. package/dist/cdn/foxy-reports-table.js +3 -3
  85. package/dist/cdn/foxy-shipment-card.js +1 -1
  86. package/dist/cdn/foxy-shipping-method-card.js +1 -1
  87. package/dist/cdn/foxy-sign-in-form.js +1 -1
  88. package/dist/cdn/foxy-spinner.js +2 -2
  89. package/dist/cdn/foxy-store-card.js +1 -1
  90. package/dist/cdn/foxy-store-form.js +1 -1
  91. package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
  92. package/dist/cdn/foxy-subscription-card.js +1 -1
  93. package/dist/cdn/foxy-subscription-form.js +1 -1
  94. package/dist/cdn/foxy-subscription-settings-form.js +1 -1
  95. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  96. package/dist/cdn/foxy-table.js +1 -1
  97. package/dist/cdn/foxy-tax-card.js +1 -1
  98. package/dist/cdn/foxy-tax-form.js +1 -1
  99. package/dist/cdn/foxy-template-config-form.js +1 -1
  100. package/dist/cdn/foxy-template-form.js +1 -1
  101. package/dist/cdn/foxy-template-set-card.js +1 -1
  102. package/dist/cdn/foxy-template-set-form.js +1 -1
  103. package/dist/cdn/foxy-transaction-card.js +1 -1
  104. package/dist/cdn/foxy-transaction.js +1 -1
  105. package/dist/cdn/foxy-transactions-table.js +1 -1
  106. package/dist/cdn/foxy-update-payment-method-form.js +1 -0
  107. package/dist/cdn/foxy-user-card.js +1 -1
  108. package/dist/cdn/foxy-user-form.js +1 -1
  109. package/dist/cdn/foxy-users-table.js +1 -1
  110. package/dist/cdn/foxy-webhook-card.js +1 -1
  111. package/dist/cdn/foxy-webhook-form.js +1 -1
  112. package/dist/cdn/foxy-webhook-log-card.js +1 -1
  113. package/dist/cdn/foxy-webhook-status-card.js +1 -1
  114. package/dist/cdn/{shared-684cd55a.js → shared-0062cab1.js} +1 -1
  115. package/dist/cdn/{shared-8a247f48.js → shared-036b25a3.js} +1 -1
  116. package/dist/cdn/{shared-18bfe97c.js → shared-04d8a434.js} +1 -1
  117. package/dist/cdn/{shared-07e7d118.js → shared-0aa511d0.js} +1 -1
  118. package/dist/cdn/shared-102dfbe0.js +1 -0
  119. package/dist/cdn/shared-12e531b8.js +1 -0
  120. package/dist/cdn/{shared-b2fd98e6.js → shared-15fe01fe.js} +1 -1
  121. package/dist/cdn/{shared-2314add3.js → shared-1ab8b12e.js} +1 -1
  122. package/dist/cdn/{shared-4c7a8fcc.js → shared-1d12db26.js} +1 -1
  123. package/dist/cdn/{shared-99e354b1.js → shared-25fc0ceb.js} +1 -1
  124. package/dist/cdn/shared-272e7269.js +1 -0
  125. package/dist/cdn/{shared-3cabd589.js → shared-2808f43a.js} +1 -1
  126. package/dist/cdn/{shared-be0fca15.js → shared-292585a0.js} +1 -1
  127. package/dist/cdn/shared-2e2d45c4.js +1 -0
  128. package/dist/cdn/{shared-0a9d860d.js → shared-2f2b5a28.js} +1 -1
  129. package/dist/cdn/{shared-412c19c2.js → shared-30143820.js} +1 -1
  130. package/dist/cdn/{shared-739f24fe.js → shared-328e5fdc.js} +1 -1
  131. package/dist/cdn/{shared-03673673.js → shared-337f2fe9.js} +1 -1
  132. package/dist/cdn/{shared-91c88f14.js → shared-34f4330c.js} +1 -1
  133. package/dist/cdn/{shared-482b2b86.js → shared-37391934.js} +1 -1
  134. package/dist/cdn/shared-39fc8fed.js +1 -0
  135. package/dist/cdn/{shared-b3db7611.js → shared-3c58ddf1.js} +1 -1
  136. package/dist/cdn/{shared-58951f74.js → shared-40cbbbae.js} +4 -4
  137. package/dist/cdn/{shared-018d5724.js → shared-4128d453.js} +1 -1
  138. package/dist/cdn/{shared-28be347b.js → shared-41e9ef02.js} +2 -2
  139. package/dist/cdn/{shared-0f59fd6a.js → shared-432d66f4.js} +1 -1
  140. package/dist/cdn/{shared-612ea9ed.js → shared-4885670b.js} +1 -1
  141. package/dist/cdn/{shared-fc5ace3b.js → shared-550608b8.js} +1 -1
  142. package/dist/cdn/{shared-467e5b06.js → shared-5758adbc.js} +1 -1
  143. package/dist/cdn/{shared-90cbed56.js → shared-5a18985c.js} +2 -2
  144. package/dist/cdn/{shared-8258443c.js → shared-5e9395ec.js} +1 -1
  145. package/dist/cdn/{shared-a24b2aa7.js → shared-62f3fc5a.js} +1 -1
  146. package/dist/cdn/{shared-5debeb1b.js → shared-66a515e3.js} +1 -1
  147. package/dist/cdn/shared-66d2a0d7.js +1 -0
  148. package/dist/cdn/{shared-584df8a8.js → shared-68aebcc4.js} +1 -1
  149. package/dist/cdn/{shared-1e7639e6.js → shared-6dfb57b1.js} +1 -1
  150. package/dist/cdn/{shared-b900e1b5.js → shared-739a8fe4.js} +1 -1
  151. package/dist/cdn/{shared-cdf873d4.js → shared-7535b32d.js} +1 -1
  152. package/dist/cdn/{shared-25198d9a.js → shared-7c819ebc.js} +1 -1
  153. package/dist/cdn/{shared-285f8cee.js → shared-84215d13.js} +1 -1
  154. package/dist/cdn/{shared-4affec66.js → shared-8452c492.js} +1 -1
  155. package/dist/cdn/{shared-b9ea6d85.js → shared-8540c2c7.js} +1 -1
  156. package/dist/cdn/{shared-540063aa.js → shared-8c5b4c81.js} +1 -1
  157. package/dist/cdn/{shared-6cd4e618.js → shared-8d7e2e2c.js} +1 -1
  158. package/dist/cdn/{shared-f7c60ee0.js → shared-8e59a71e.js} +1 -1
  159. package/dist/cdn/shared-8e75c372.js +1 -0
  160. package/dist/cdn/shared-90ddf541.js +1 -0
  161. package/dist/cdn/{shared-f0fcd613.js → shared-91009494.js} +1 -1
  162. package/dist/cdn/shared-9f5c636a.js +1 -0
  163. package/dist/cdn/{shared-d56a3799.js → shared-a30fcaf6.js} +1 -1
  164. package/dist/cdn/{shared-d222bd1e.js → shared-a33be18f.js} +1 -1
  165. package/dist/cdn/{shared-6b68b3b6.js → shared-a911ab73.js} +1 -1
  166. package/dist/cdn/{shared-9cfef94a.js → shared-b1c7300a.js} +1 -1
  167. package/dist/cdn/{shared-ea5fa631.js → shared-b2ce84fa.js} +1 -1
  168. package/dist/cdn/{shared-bd919e3b.js → shared-b55f1de3.js} +1 -1
  169. package/dist/cdn/{shared-d72e87ee.js → shared-b6c1aa47.js} +1 -1
  170. package/dist/cdn/{shared-bb1d162b.js → shared-b73fd633.js} +1 -1
  171. package/dist/cdn/{shared-ad11b006.js → shared-b99daf13.js} +1 -1
  172. package/dist/cdn/{shared-da2e66a4.js → shared-bac00622.js} +1 -1
  173. package/dist/cdn/{shared-2b5a3c80.js → shared-bd99107c.js} +1 -1
  174. package/dist/cdn/{shared-f4bb452b.js → shared-c0b1a51d.js} +1 -1
  175. package/dist/cdn/shared-c5106605.js +1 -0
  176. package/dist/cdn/{shared-d10d6cba.js → shared-cb732375.js} +1 -1
  177. package/dist/cdn/shared-cd96ff03.js +1 -0
  178. package/dist/cdn/{shared-55630cac.js → shared-da2a367a.js} +1 -1
  179. package/dist/cdn/{shared-122cccac.js → shared-e075ca81.js} +1 -1
  180. package/dist/cdn/{shared-7f60c1c1.js → shared-e10b5dca.js} +1 -1
  181. package/dist/cdn/{shared-0a8161e5.js → shared-e2cbc382.js} +1 -1
  182. package/dist/cdn/{shared-77258081.js → shared-e4403332.js} +1 -1
  183. package/dist/cdn/{shared-75d13e1b.js → shared-e5f6ca48.js} +1 -1
  184. package/dist/cdn/{shared-7ff78b4a.js → shared-e989e47e.js} +2 -2
  185. package/dist/cdn/{shared-6586ffd5.js → shared-ecb7a183.js} +1 -1
  186. package/dist/cdn/{shared-8b521111.js → shared-f090c63a.js} +1 -1
  187. package/dist/cdn/{shared-4c611015.js → shared-f14856e0.js} +2 -2
  188. package/dist/cdn/{shared-ee13d85c.js → shared-f2721fae.js} +3 -3
  189. package/dist/cdn/{shared-62e9c883.js → shared-f548d023.js} +1 -1
  190. package/dist/cdn/{shared-7b2bd917.js → shared-fd95cd52.js} +1 -1
  191. package/dist/cdn/translations/customer/en.json +149 -2
  192. package/dist/cdn/translations/customer-portal/README.md +4 -0
  193. package/dist/cdn/translations/customer-portal/de.json +1063 -113
  194. package/dist/cdn/translations/customer-portal/en.json +151 -5
  195. package/dist/cdn/translations/customer-portal/es.json +1072 -123
  196. package/dist/cdn/translations/customer-portal/fr.json +1084 -134
  197. package/dist/cdn/translations/customer-portal/nl.json +1085 -135
  198. package/dist/cdn/translations/customer-portal/pl.json +1092 -142
  199. package/dist/cdn/translations/customer-portal/sv.json +1173 -0
  200. package/dist/cdn/translations/customer-portal/zh-hk.json +1110 -160
  201. package/dist/cdn/translations/payment-card-embed/en.json +48 -0
  202. package/dist/cdn/translations/payment-method-card/en.json +149 -2
  203. package/dist/cdn/translations/payments-api-payment-method-form/en.json +2 -2
  204. package/dist/cdn/translations/update-payment-method-form/en.json +140 -0
  205. package/dist/elements/internal/InternalForm/InternalForm.js +2 -0
  206. package/dist/elements/internal/InternalForm/InternalForm.js.map +1 -1
  207. package/dist/elements/public/Customer/Customer.d.ts +5 -0
  208. package/dist/elements/public/Customer/Customer.js +13 -6
  209. package/dist/elements/public/Customer/Customer.js.map +1 -1
  210. package/dist/elements/public/Customer/index.d.ts +1 -0
  211. package/dist/elements/public/Customer/index.js +1 -0
  212. package/dist/elements/public/Customer/index.js.map +1 -1
  213. package/dist/elements/public/CustomerPortal/CustomerPortal.d.ts +14 -0
  214. package/dist/elements/public/CustomerPortal/CustomerPortal.js +23 -6
  215. package/dist/elements/public/CustomerPortal/CustomerPortal.js.map +1 -1
  216. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedInView.d.ts +1 -0
  217. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedInView.js +7 -2
  218. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedInView.js.map +1 -1
  219. package/dist/elements/public/DownloadableForm/DownloadableForm.js.map +1 -1
  220. package/dist/elements/public/FormDialog/FormDialog.d.ts +2 -0
  221. package/dist/elements/public/FormDialog/FormDialog.js +8 -4
  222. package/dist/elements/public/FormDialog/FormDialog.js.map +1 -1
  223. package/dist/elements/public/NucleonElement/NucleonElement.js +7 -1
  224. package/dist/elements/public/NucleonElement/NucleonElement.js.map +1 -1
  225. package/dist/elements/public/NucleonElement/UpdateEvent.d.ts +3 -1
  226. package/dist/elements/public/NucleonElement/UpdateEvent.js +2 -0
  227. package/dist/elements/public/NucleonElement/UpdateEvent.js.map +1 -1
  228. package/dist/elements/public/PaymentCardEmbedElement/PaymentCardEmbedElement.d.ts +47 -0
  229. package/dist/elements/public/PaymentCardEmbedElement/PaymentCardEmbedElement.js +198 -0
  230. package/dist/elements/public/PaymentCardEmbedElement/PaymentCardEmbedElement.js.map +1 -0
  231. package/dist/elements/public/PaymentCardEmbedElement/index.d.ts +4 -0
  232. package/dist/elements/public/PaymentCardEmbedElement/index.js +6 -0
  233. package/dist/elements/public/PaymentCardEmbedElement/index.js.map +1 -0
  234. package/dist/elements/public/PaymentMethodCard/PaymentMethodCard.d.ts +14 -4
  235. package/dist/elements/public/PaymentMethodCard/PaymentMethodCard.js +79 -10
  236. package/dist/elements/public/PaymentMethodCard/PaymentMethodCard.js.map +1 -1
  237. package/dist/elements/public/PaymentMethodCard/index.d.ts +2 -0
  238. package/dist/elements/public/PaymentMethodCard/index.js +2 -0
  239. package/dist/elements/public/PaymentMethodCard/index.js.map +1 -1
  240. package/dist/elements/public/PaymentsApiPaymentMethodForm/PaymentsApiPaymentMethodForm.js +66 -56
  241. package/dist/elements/public/PaymentsApiPaymentMethodForm/PaymentsApiPaymentMethodForm.js.map +1 -1
  242. package/dist/elements/public/PaymentsApiPaymentPresetForm/PaymentsApiPaymentPresetForm.js +1 -0
  243. package/dist/elements/public/PaymentsApiPaymentPresetForm/PaymentsApiPaymentPresetForm.js.map +1 -1
  244. package/dist/elements/public/SubscriptionForm/SubscriptionForm.js.map +1 -1
  245. package/dist/elements/public/UpdatePaymentMethodForm/UpdatePaymentMethodForm.d.ts +37 -0
  246. package/dist/elements/public/UpdatePaymentMethodForm/UpdatePaymentMethodForm.js +142 -0
  247. package/dist/elements/public/UpdatePaymentMethodForm/UpdatePaymentMethodForm.js.map +1 -0
  248. package/dist/elements/public/UpdatePaymentMethodForm/index.d.ts +8 -0
  249. package/dist/elements/public/UpdatePaymentMethodForm/index.js +10 -0
  250. package/dist/elements/public/UpdatePaymentMethodForm/index.js.map +1 -0
  251. package/dist/elements/public/UpdatePaymentMethodForm/internal/InternalUpdatePaymentMethodFormCcTokenControl/InternalUpdatePaymentMethodFormCcTokenControl.d.ts +9 -0
  252. package/dist/elements/public/UpdatePaymentMethodForm/internal/InternalUpdatePaymentMethodFormCcTokenControl/InternalUpdatePaymentMethodFormCcTokenControl.js +46 -0
  253. package/dist/elements/public/UpdatePaymentMethodForm/internal/InternalUpdatePaymentMethodFormCcTokenControl/InternalUpdatePaymentMethodFormCcTokenControl.js.map +1 -0
  254. package/dist/elements/public/UpdatePaymentMethodForm/internal/InternalUpdatePaymentMethodFormCcTokenControl/index.d.ts +6 -0
  255. package/dist/elements/public/UpdatePaymentMethodForm/internal/InternalUpdatePaymentMethodFormCcTokenControl/index.js +8 -0
  256. package/dist/elements/public/UpdatePaymentMethodForm/internal/InternalUpdatePaymentMethodFormCcTokenControl/index.js.map +1 -0
  257. package/dist/elements/public/UpdatePaymentMethodForm/types.d.ts +13 -0
  258. package/dist/elements/public/UpdatePaymentMethodForm/types.js +2 -0
  259. package/dist/elements/public/UpdatePaymentMethodForm/types.js.map +1 -0
  260. package/dist/elements/public/index.d.ts +2 -0
  261. package/dist/elements/public/index.defined.d.ts +2 -0
  262. package/dist/elements/public/index.defined.js +2 -0
  263. package/dist/elements/public/index.defined.js.map +1 -1
  264. package/dist/elements/public/index.js +2 -0
  265. package/dist/elements/public/index.js.map +1 -1
  266. package/dist/mixins/themeable.js +45 -0
  267. package/dist/mixins/themeable.js.map +1 -1
  268. package/dist/mixins/translatable.js +89 -79
  269. package/dist/mixins/translatable.js.map +1 -1
  270. package/package.json +2 -2
  271. package/dist/cdn/shared-186e41cf.js +0 -1
  272. package/dist/cdn/shared-18918efe.js +0 -1
  273. package/dist/cdn/shared-3ab0306f.js +0 -1
  274. package/dist/cdn/shared-5875cb66.js +0 -1
  275. package/dist/cdn/shared-79d35787.js +0 -1
  276. package/dist/cdn/shared-851a7db5.js +0 -1
  277. package/dist/cdn/shared-90877857.js +0 -1
  278. package/dist/cdn/shared-fe45779e.js +0 -1
  279. package/dist/cdn/translations/customer-portal/se.json +0 -223
@@ -1 +1 @@
1
- import"./shared-90877857.js";import{a as e}from"./shared-7ff78b4a.js";import{T as r}from"./shared-4affec66.js";import{h as n}from"./shared-dc73b9a5.js";import{c as a,a as i}from"./shared-b3db7611.js";import"./foxy-spinner.js";import"./shared-6b68b3b6.js";import"./shared-0a9d860d.js";import"./shared-da2e66a4.js";import"./shared-6586ffd5.js";import"./shared-343d1fd7.js";import"./shared-3cabd589.js";import"./shared-8b521111.js";import"./shared-fe45779e.js";import"./shared-482b2b86.js";import"./shared-3ab0306f.js";import"./shared-851a7db5.js";import"./shared-79d35787.js";import"./shared-4e709717.js";import"./shared-2b5a3c80.js";import"./shared-9803aa7c.js";var t=a((function(e,r){!function(e){function r(e,r){this.browser=e,this.os=r}function n(e,r){function n(e){if(e.length>0){var n=e.split("/"),a=n.length>1?n[1]:"";r(n[0],a)}}for(var a="",i=0;i<e.length;++i){var t=e[i];if(" "===t){for(n(a),a="";" "===e[i];)++i;t=e[i]}if("("===t){n(a),a="";var s="";for(++i;i<e.length&&")"!==(t=e[i]);++i)s+=t;for(var o=s.split(";"),m=0;m<o.length;++m)r(o[m].trim());++i}else" "!==t&&"("!==t&&(a+=t)}n(a)}function a(e){var r={"Windows NT 10.0":"10","Windows NT 6.3":"8.1","Windows NT 6.2":"8","Windows NT 6.1":"7","Windows NT 6.0":"Vista","Windows NT 5.2":"XP","Windows NT 5.1":"XP","Windows NT 5.0":"2000",10.4:"Tiger",10.5:"Leopard",10.6:"Snow Leopard",10.7:"Lion",10.8:"Mountain Lion",10.9:"Mavericks","10.10":"Yosemite",10.11:"El Capitan",10.12:"Sierra",10.13:"High Sierra",10.14:"Mojave"};function n(e){var n=r[e];return n||null}function a(e){var n=e.substr(e.indexOf("OS X")+5),a=n.indexOf("_")>1?n.split("_"):n.split(".");return a=a.length>=2?a.slice(0,2):a.concat([0]),r[a.join(".")]?a.join(".")+" ("+r[a.join(".")]+")":a.join(".")}function i(e){return e.substr(8).split(".").slice(0,2).join(".")}function t(e){return e.substr(e.indexOf(" OS ")+4).replace(" like Mac OS X","").split("_").slice(0,2).join(".")}var s=[{tag:"Windows NT",name:"Windows",fn:n},{tag:"Intel Mac OS",name:"macOS",fn:a},{tag:"PPC Mac OS",name:"macOS",fn:a},{tag:"Android",name:"Android",fn:i},{tag:"CPU iPhone OS",name:"iOS",fn:t},{tag:"CPU OS",name:"iOS",fn:t},{tag:"Linux"},{tag:"FreeBSD"},{tag:"OpenBSD"},{tag:"NetBSD"},{tag:"SunOS"},{tag:"CrOS",name:"ChromeOS"}],o={name:null,version:null},m=e.reduce((function(e,r){var n=s.find((function(e){return e.tag===r.substr(0,e.tag.length)}));if(n){var a=n.name?n.name:n.tag;e.name=a.split(" ").shift(),e.version=n.fn?n.fn(r):null}return e}),o);return"macOS"===m.name&&(m.name=parseInt(m.version.replace("10.",""),10)<=11?"OS X":"macOS"),m}function i(e,r){function n(e,r){return e|="Chrome"===r,e="EdgiOS"!==r&&"Edge"!==r&&e}var a=null;if(e.reduce(n,!1)){var i=r.Chrome;a={version:parseInt(i,10),fullVersion:i}}return a}function t(e,r){var n=[{seq:["Gecko","Firefox"],name:"Firefox"},{seq:["AppleWebKit","KHTML, like Gecko","Version","Safari"],name:"Safari",ver:"Version"},{seq:["AppleWebKit","CriOS","Mobile","Safari"],name:"Chrome",ver:"CriOS"},{seq:["AppleWebKit","Mobile","Safari","EdgiOS"],name:"Edge",ver:"EdgiOS"},{seq:["AppleWebKit","Chrome","Safari"],name:"Chrome"},{seq:["AppleWebKit","Version","Chrome","Safari"],name:"Chrome"},{seq:["Chrome","Safari","Edge"],name:"Edge"},{seq:["MSIE 6.0"],name:"Internet Explorer",at:"6.0"},{seq:["MSIE 7.0"],name:"Internet Explorer",at:"7.0"},{seq:["Trident/4.0"],name:"Internet Explorer",at:"8.0"},{seq:["Trident/5.0"],name:"Internet Explorer",at:"9.0"},{seq:["Trident/6.0"],name:"Internet Explorer",at:"10.0"},{seq:["Trident/7.0"],name:"Internet Explorer",at:"11.0"},{seq:["AppleWebKit","Silk","Chrome","Safari"],name:"Silk"},{seq:["Chrome","Safari","Vivaldi"],name:"Vivaldi"},{seq:["Chrome","Safari","OPR"],name:"Opera",ver:"OPR"},{seq:["AppleWebKit","Chrome","Safari","EdgA"],name:"Edge",ver:"EdgA"},{seq:["AppleWebKit","SamsungBrowser","Chrome","Safari"],name:"Samsung Browser",ver:"SamsungBrowser"},{seq:["Chrome","UCBrowser","Safari"],name:"UCBrowser"}],a={name:"Unknown",version:null,fullVersion:null,chromeFamily:null},t=r.Mozilla;if("4.0"===t||"5.0"===t){(a=n.reduce((function(n,a){function i(e,r){return e.push(r-e.pop()),e.push(r),e}function t(e){return e>0}if(a.seq.map((function(r){return e.indexOf(r)})).reduce(i,[0]).every(t)){var s=a.ver?a.ver:a.name,o=a.at?a.at:r[s];n.name=a.name,n.version="Edge"===n.name?parseInt(o,10):parseFloat(o),n.fullVersion=o}return n}),a)).chromeFamily=i(e,r);var s=e.find((function(e){return"Tizen"===e.substr(0,5)}));a.name=s?"Tizen":a.name}return a}function s(e){var r=[];return n(e,(function(e,n){r.push({name:e,version:n})})),r}function o(e){var i=[],s={};return n(e,(function(e,r){i.push(e),"string"==typeof r&&(s[e]=r)})),new r(t(i,s),a(i))}r.prototype.toString=function(){var e=this.browser.name;return this.browser.version&&(e+=" "+this.browser.version),this.os.name&&(e+=" on "+this.os.name),this.os.version&&(e+=" "+this.os.version),e},e.analyze=o,e.scan=s,e.version="0.5.0"}(r)}));let s,o,m=e=>e;const l=e(r,"passkey-card");class f extends l{renderBody(){return super.renderBody({title:e=>n(s||(s=m`${0}`),e.credential_id),subtitle:e=>{let r,a;return e.last_login_date&&e.last_login_ua?(r={last_login_date:new Date(e.last_login_date),last_login_ua:t.analyze(e.last_login_ua).toString()},a="subtitle"):(r={},a="subtitle_no_data"),n(o||(o=m`<foxy-i18n infer="" key="${0}" .options="${0}"></foxy-i18n>`),a,r)}})}}customElements.define("foxy-passkey-card",f);export{f as PasskeyCard};
1
+ import"./shared-102dfbe0.js";import{a as e}from"./shared-e989e47e.js";import{T as r}from"./shared-8452c492.js";import{h as n}from"./shared-dc73b9a5.js";import{c as a,a as i}from"./shared-3c58ddf1.js";import"./foxy-spinner.js";import"./shared-a911ab73.js";import"./shared-2f2b5a28.js";import"./shared-bac00622.js";import"./shared-ecb7a183.js";import"./shared-343d1fd7.js";import"./shared-2808f43a.js";import"./shared-f090c63a.js";import"./shared-272e7269.js";import"./shared-37391934.js";import"./shared-cd96ff03.js";import"./shared-12e531b8.js";import"./shared-90ddf541.js";import"./shared-39fc8fed.js";import"./shared-2e2d45c4.js";import"./shared-4e709717.js";import"./shared-bd99107c.js";import"./shared-9803aa7c.js";var t=a((function(e,r){!function(e){function r(e,r){this.browser=e,this.os=r}function n(e,r){function n(e){if(e.length>0){var n=e.split("/"),a=n.length>1?n[1]:"";r(n[0],a)}}for(var a="",i=0;i<e.length;++i){var t=e[i];if(" "===t){for(n(a),a="";" "===e[i];)++i;t=e[i]}if("("===t){n(a),a="";var s="";for(++i;i<e.length&&")"!==(t=e[i]);++i)s+=t;for(var o=s.split(";"),m=0;m<o.length;++m)r(o[m].trim());++i}else" "!==t&&"("!==t&&(a+=t)}n(a)}function a(e){var r={"Windows NT 10.0":"10","Windows NT 6.3":"8.1","Windows NT 6.2":"8","Windows NT 6.1":"7","Windows NT 6.0":"Vista","Windows NT 5.2":"XP","Windows NT 5.1":"XP","Windows NT 5.0":"2000",10.4:"Tiger",10.5:"Leopard",10.6:"Snow Leopard",10.7:"Lion",10.8:"Mountain Lion",10.9:"Mavericks","10.10":"Yosemite",10.11:"El Capitan",10.12:"Sierra",10.13:"High Sierra",10.14:"Mojave"};function n(e){var n=r[e];return n||null}function a(e){var n=e.substr(e.indexOf("OS X")+5),a=n.indexOf("_")>1?n.split("_"):n.split(".");return a=a.length>=2?a.slice(0,2):a.concat([0]),r[a.join(".")]?a.join(".")+" ("+r[a.join(".")]+")":a.join(".")}function i(e){return e.substr(8).split(".").slice(0,2).join(".")}function t(e){return e.substr(e.indexOf(" OS ")+4).replace(" like Mac OS X","").split("_").slice(0,2).join(".")}var s=[{tag:"Windows NT",name:"Windows",fn:n},{tag:"Intel Mac OS",name:"macOS",fn:a},{tag:"PPC Mac OS",name:"macOS",fn:a},{tag:"Android",name:"Android",fn:i},{tag:"CPU iPhone OS",name:"iOS",fn:t},{tag:"CPU OS",name:"iOS",fn:t},{tag:"Linux"},{tag:"FreeBSD"},{tag:"OpenBSD"},{tag:"NetBSD"},{tag:"SunOS"},{tag:"CrOS",name:"ChromeOS"}],o={name:null,version:null},m=e.reduce((function(e,r){var n=s.find((function(e){return e.tag===r.substr(0,e.tag.length)}));if(n){var a=n.name?n.name:n.tag;e.name=a.split(" ").shift(),e.version=n.fn?n.fn(r):null}return e}),o);return"macOS"===m.name&&(m.name=parseInt(m.version.replace("10.",""),10)<=11?"OS X":"macOS"),m}function i(e,r){function n(e,r){return e|="Chrome"===r,e="EdgiOS"!==r&&"Edge"!==r&&e}var a=null;if(e.reduce(n,!1)){var i=r.Chrome;a={version:parseInt(i,10),fullVersion:i}}return a}function t(e,r){var n=[{seq:["Gecko","Firefox"],name:"Firefox"},{seq:["AppleWebKit","KHTML, like Gecko","Version","Safari"],name:"Safari",ver:"Version"},{seq:["AppleWebKit","CriOS","Mobile","Safari"],name:"Chrome",ver:"CriOS"},{seq:["AppleWebKit","Mobile","Safari","EdgiOS"],name:"Edge",ver:"EdgiOS"},{seq:["AppleWebKit","Chrome","Safari"],name:"Chrome"},{seq:["AppleWebKit","Version","Chrome","Safari"],name:"Chrome"},{seq:["Chrome","Safari","Edge"],name:"Edge"},{seq:["MSIE 6.0"],name:"Internet Explorer",at:"6.0"},{seq:["MSIE 7.0"],name:"Internet Explorer",at:"7.0"},{seq:["Trident/4.0"],name:"Internet Explorer",at:"8.0"},{seq:["Trident/5.0"],name:"Internet Explorer",at:"9.0"},{seq:["Trident/6.0"],name:"Internet Explorer",at:"10.0"},{seq:["Trident/7.0"],name:"Internet Explorer",at:"11.0"},{seq:["AppleWebKit","Silk","Chrome","Safari"],name:"Silk"},{seq:["Chrome","Safari","Vivaldi"],name:"Vivaldi"},{seq:["Chrome","Safari","OPR"],name:"Opera",ver:"OPR"},{seq:["AppleWebKit","Chrome","Safari","EdgA"],name:"Edge",ver:"EdgA"},{seq:["AppleWebKit","SamsungBrowser","Chrome","Safari"],name:"Samsung Browser",ver:"SamsungBrowser"},{seq:["Chrome","UCBrowser","Safari"],name:"UCBrowser"}],a={name:"Unknown",version:null,fullVersion:null,chromeFamily:null},t=r.Mozilla;if("4.0"===t||"5.0"===t){(a=n.reduce((function(n,a){function i(e,r){return e.push(r-e.pop()),e.push(r),e}function t(e){return e>0}if(a.seq.map((function(r){return e.indexOf(r)})).reduce(i,[0]).every(t)){var s=a.ver?a.ver:a.name,o=a.at?a.at:r[s];n.name=a.name,n.version="Edge"===n.name?parseInt(o,10):parseFloat(o),n.fullVersion=o}return n}),a)).chromeFamily=i(e,r);var s=e.find((function(e){return"Tizen"===e.substr(0,5)}));a.name=s?"Tizen":a.name}return a}function s(e){var r=[];return n(e,(function(e,n){r.push({name:e,version:n})})),r}function o(e){var i=[],s={};return n(e,(function(e,r){i.push(e),"string"==typeof r&&(s[e]=r)})),new r(t(i,s),a(i))}r.prototype.toString=function(){var e=this.browser.name;return this.browser.version&&(e+=" "+this.browser.version),this.os.name&&(e+=" on "+this.os.name),this.os.version&&(e+=" "+this.os.version),e},e.analyze=o,e.scan=s,e.version="0.5.0"}(r)}));let s,o,m=e=>e;const l=e(r,"passkey-card");class d extends l{renderBody(){return super.renderBody({title:e=>n(s||(s=m`${0}`),e.credential_id),subtitle:e=>{let r,a;return e.last_login_date&&e.last_login_ua?(r={last_login_date:new Date(e.last_login_date),last_login_ua:t.analyze(e.last_login_ua).toString()},a="subtitle"):(r={},a="subtitle_no_data"),n(o||(o=m`<foxy-i18n infer="" key="${0}" .options="${0}"></foxy-i18n>`),a,r)}})}}customElements.define("foxy-passkey-card",d);export{d as PasskeyCard};
@@ -1 +1 @@
1
- import"./shared-d10d6cba.js";import"./shared-be0fca15.js";import{I as r}from"./shared-8a247f48.js";import"./foxy-spinner.js";import{R as e,a as s}from"./shared-7ff78b4a.js";import{h as a}from"./shared-dc73b9a5.js";import{B as t}from"./shared-b3db7611.js";import"./shared-739f24fe.js";import"./shared-4c611015.js";import"./shared-0a9d860d.js";import"./shared-612ea9ed.js";import"./shared-91c88f14.js";import"./shared-684cd55a.js";import"./shared-61ade33e.js";import"./shared-75d13e1b.js";import"./shared-51c4a6dd.js";import"./shared-6586ffd5.js";import"./shared-343d1fd7.js";import"./shared-3cabd589.js";import"./shared-2b5a3c80.js";import"./shared-9803aa7c.js";import"./shared-fe45779e.js";import"./shared-482b2b86.js";import"./shared-3ab0306f.js";import"./shared-851a7db5.js";import"./shared-79d35787.js";import"./shared-25198d9a.js";import"./shared-03673673.js";import"./shared-6cd4e618.js";import"./shared-4e709717.js";import"./foxy-copy-to-clipboard.js";import"./shared-da2e66a4.js";import"./shared-6b68b3b6.js";import"./shared-bab2ea2c.js";let o,d,i=r=>r;const n=e(s(r,"passkey-form"));class p extends n{get readonlySelector(){return new t(`credential-id last-login-date last-login-ua ${super.readonlySelector.toString()}`)}renderBody(){return this.data?a(d||(d=i` <foxy-internal-text-control infer="credential-id"></foxy-internal-text-control> <foxy-internal-text-control infer="last-login-date"></foxy-internal-text-control> <foxy-internal-text-area-control infer="last-login-ua"></foxy-internal-text-area-control> ${0} `),super.renderBody()):a(o||(o=i` <div class="p-xl flex items-center justify-center"> <foxy-spinner infer="spinner" state="empty" layout="vertical"></foxy-spinner> </div> `))}}customElements.define("foxy-passkey-form",p);export{p as PasskeyForm};
1
+ import"./shared-cb732375.js";import"./shared-292585a0.js";import{I as r}from"./shared-036b25a3.js";import"./foxy-spinner.js";import{R as e,a as s}from"./shared-e989e47e.js";import{h as t}from"./shared-dc73b9a5.js";import{B as a}from"./shared-3c58ddf1.js";import"./shared-328e5fdc.js";import"./shared-f14856e0.js";import"./shared-2f2b5a28.js";import"./shared-4885670b.js";import"./shared-34f4330c.js";import"./shared-0062cab1.js";import"./shared-61ade33e.js";import"./shared-e5f6ca48.js";import"./shared-51c4a6dd.js";import"./shared-ecb7a183.js";import"./shared-343d1fd7.js";import"./shared-2808f43a.js";import"./shared-bd99107c.js";import"./shared-9803aa7c.js";import"./shared-272e7269.js";import"./shared-37391934.js";import"./shared-cd96ff03.js";import"./shared-12e531b8.js";import"./shared-90ddf541.js";import"./shared-39fc8fed.js";import"./shared-2e2d45c4.js";import"./shared-7c819ebc.js";import"./shared-337f2fe9.js";import"./shared-8d7e2e2c.js";import"./shared-4e709717.js";import"./foxy-copy-to-clipboard.js";import"./shared-bac00622.js";import"./shared-a911ab73.js";import"./shared-bab2ea2c.js";let o,d,i=r=>r;const n=e(s(r,"passkey-form"));class p extends n{get readonlySelector(){return new a(`credential-id last-login-date last-login-ua ${super.readonlySelector.toString()}`)}renderBody(){return this.data?t(d||(d=i` <foxy-internal-text-control infer="credential-id"></foxy-internal-text-control> <foxy-internal-text-control infer="last-login-date"></foxy-internal-text-control> <foxy-internal-text-area-control infer="last-login-ua"></foxy-internal-text-area-control> ${0} `),super.renderBody()):t(o||(o=i` <div class="p-xl flex items-center justify-center"> <foxy-spinner infer="spinner" state="empty" layout="vertical"></foxy-spinner> </div> `))}}customElements.define("foxy-passkey-form",p);export{p as PasskeyForm};
@@ -0,0 +1 @@
1
+ import"./foxy-spinner.js";import"./shared-ecb7a183.js";import{_ as e}from"./shared-3c58ddf1.js";import{a as r,T as t}from"./shared-e989e47e.js";import{C as o}from"./shared-bd99107c.js";import{h as s,L as l}from"./shared-dc73b9a5.js";import{P as a}from"./shared-8e75c372.js";import"./shared-5e9395ec.js";import{I as d}from"./shared-2808f43a.js";import{c as i}from"./shared-4e709717.js";import{s as c}from"./shared-39fc8fed.js";import"./shared-a911ab73.js";import"./shared-2f2b5a28.js";import"./shared-bac00622.js";import"./shared-343d1fd7.js";import"./shared-9803aa7c.js";import"./shared-90ddf541.js";let n,u=e=>e;const m=o(r(d(t(l)),"payment-card-embed"));class p extends m{constructor(){super(...arguments),this.url=null,this.__configRefreshInterval=null,this.__embed=null,this.__ready=!1}static get properties(){return e(e({},super.properties),{},{__ready:{attribute:!1},url:{}})}disconnectedCallback(){var e;super.disconnectedCallback(),clearInterval(null!==(e=this.__configRefreshInterval)&&void 0!==e?e:void 0)}connectedCallback(){super.connectedCallback(),this.__configRefreshInterval=setInterval((()=>{var e;const r=this.__config;r&&(null===(e=this.__embed)||void 0===e||e.configure(r))}),1e3)}tokenize(){var e,r;return null!==(r=null===(e=this.__embed)||void 0===e?void 0:e.tokenize())&&void 0!==r?r:Promise.reject()}updated(e){super.updated(e),(e.has("hidden")||e.has("url"))&&this.__setupEmbed()}render(){return s(n||(n=u` <div class="relative"> <div class="${0}" id="iframe-container"></div> <div class="${0}"> <foxy-spinner infer="spinner" layout="no-label"></foxy-spinner> </div> <div class="hidden ml-m mr-s bg-contrast-5 text-contrast-10 h-m w-xs rounded-tr-m rounded-br-s font-lumo text-m leading-xs" style="border-top-color:var(--lumo-primary-color);border-bottom-color:var(--lumo-primary-text-color);border-left-color:var(--lumo-primary-color-50pct);border-right-color:var(--lumo-secondary-text-color)" id="d1"></div> <div class="hidden text-s text-disabled" style="background-color:var(--lumo-body-text-color);border-top-color:var(--lumo-error-text-color);border-bottom-color:var(--lumo-error-color-10pct);border-left-color:var(--lumo-error-color-50pct)" id="d2"></div> <div class="hidden text-contrast-50 text-xs bg-base" id="d3"></div> </div> `),i({"transition-opacity relative":!0,"opacity-0":!this.__ready}),i({"absolute inset-0 flex items-center justify-center":!0,"transition-opacity pointer-events-none":!0,"opacity-0":this.__ready}))}clear(){var e;null===(e=this.__embed)||void 0===e||e.clear()}get __config(){const e=this.renderRoot.querySelector("#d1"),r=this.renderRoot.querySelector("#d2"),t=this.renderRoot.querySelector("#d3");if(!e||!r||!t)return null;const o=getComputedStyle(e),s=getComputedStyle(r),l=getComputedStyle(t),a={"--lumo-space-m":o.marginLeft,"--lumo-space-s":o.marginRight,"--lumo-contrast-5pct":o.backgroundColor,"--lumo-contrast-10pct":o.color,"--lumo-contrast-50pct":l.color,"--lumo-size-m":o.height,"--lumo-size-xs":o.width,"--lumo-border-radius-m":o.borderTopRightRadius,"--lumo-border-radius-s":o.borderBottomRightRadius,"--lumo-font-family":o.fontFamily,"--lumo-font-size-m":o.fontSize,"--lumo-font-size-s":s.fontSize,"--lumo-font-size-xs":l.fontSize,"--lumo-primary-color":o.borderTopColor,"--lumo-primary-text-color":o.borderBottomColor,"--lumo-primary-color-50pct":o.borderLeftColor,"--lumo-secondary-text-color":o.borderRightColor,"--lumo-disabled-text-color":s.color,"--lumo-body-text-color":s.backgroundColor,"--lumo-error-text-color":s.borderTopColor,"--lumo-error-color-10pct":s.borderBottomColor,"--lumo-error-color-50pct":s.borderLeftColor,"--lumo-line-height-xs":o.lineHeight,"--lumo-base-color":l.backgroundColor},d={};return["stripe.label","stripe.status.idle","stripe.status.busy","stripe.status.fail","square.label","square.status.idle","square.status.busy","square.status.fail","default.cc-number.label","default.cc-number.placeholder","default.cc-number.v8n_required","default.cc-number.v8n_invalid","default.cc-number.v8n_unsupported","default.cc-exp.label","default.cc-exp.placeholder","default.cc-exp.v8n_required","default.cc-exp.v8n_invalid","default.cc-exp.v8n_expired","default.cc-csc.label","default.cc-csc.placeholder","default.cc-csc.v8n_required","default.cc-csc.v8n_invalid","default.status.idle","default.status.busy","default.status.fail","default.status.misconfigured"].forEach((e=>c(d,e,this.t(e)))),{translations:d,disabled:this.disabled,readonly:this.readonly,style:a,lang:this.lang}}__setupEmbed(){this.__embed&&this.__embed.unmount();const r=this.__config,t=this.renderRoot.querySelector("#iframe-container"),o=this.url;if(null!==o&&t&&r&&!this.hidden){const s=this.constructor;this.__embed=new s.PaymentCardEmbed(e({url:o},r)),this.__embed.mount(t).then((()=>this.__ready=!0)),this.__embed.onsubmit=()=>this.dispatchEvent(new CustomEvent("submit"))}else this.__ready=!1,this.__embed=null}}p.PaymentCardEmbed=a,customElements.define("foxy-payment-card-embed",p);export{p as PaymentCardEmbedElement};
@@ -1 +1 @@
1
- import"./shared-90877857.js";import"./foxy-nucleon-element.js";import"./shared-6586ffd5.js";import{_ as e}from"./shared-b3db7611.js";import{l as t,u as a}from"./shared-2bf89a21.js";import{a as s}from"./shared-7ff78b4a.js";import{I as r}from"./shared-8b521111.js";import{i as o}from"./shared-9803aa7c.js";import{h as n}from"./shared-dc73b9a5.js";import"./foxy-spinner.js";import"./shared-6b68b3b6.js";import"./shared-0a9d860d.js";import"./shared-da2e66a4.js";import"./shared-3cabd589.js";import"./shared-343d1fd7.js";import"./shared-fe45779e.js";import"./shared-482b2b86.js";import"./shared-3ab0306f.js";import"./shared-851a7db5.js";import"./shared-79d35787.js";import"./shared-4e709717.js";let d,i,l,y,p=e=>e;const u=s(r,"payment-card");class c extends u{constructor(){super(...arguments),this.hostedPaymentGatewaysHelper=null,this.paymentGatewaysHelper=null,this.__hostedPaymentGatewaysLoaderId="hostedPaymentGatewaysLoader",this.__paymentGatewaysLoaderId="paymentGatewaysLoader",this.__transactionLoaderId="transactionLoader",this.__storeLoaderId="storeLoader"}static get properties(){return e(e({},super.properties),{},{hostedPaymentGatewaysHelper:{attribute:"hosted-payment-gateways-helper"},paymentGatewaysHelper:{attribute:"payment-gateways-helper"}})}renderBody(){var e,s,r,u,c,h,_,m,f;const v=this.data,x=`${null!==(e=null==v?void 0:v.amount)&&void 0!==e?e:""} ${this.__currencyCode}`,$={currencyDisplay:this.__currencyDisplay,amount:x},w=null!==(r=null===(s=this.data)||void 0===s?void 0:s.fraud_protection_score)&&void 0!==r?r:0,b=w>0?"text-error":"text-success",L=w>0?"bg-error-10":"bg-success-10",g=(null!==(u=null==v?void 0:v.cc_type)&&void 0!==u?u:"unknown").toLowerCase(),j=null===(c=null==v?void 0:v.cc_exp_year)||void 0===c?void 0:c.substring(2),G=null==v?void 0:v.cc_exp_month,k=null===(h=null==v?void 0:v.cc_number_masked)||void 0===h?void 0:h.replace(/x/gi,"");return n(d||(d=p` <foxy-nucleon infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> <foxy-nucleon infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> <foxy-nucleon infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> <foxy-nucleon infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> <p class="leading-s"> <span class="block font-medium text-m" data-testid="line-1"> <foxy-i18n .options="${0}" infer="" key="price"></foxy-i18n> <span>&nbsp;&bull;&nbsp;</span> <foxy-i18n .options="${0}" infer="" key="date"></foxy-i18n> </span> <span class="block text-s text-secondary"> ${0} </span> ${0} <span class="mt-s flex space-x-s overflow-auto"> ${0} <foxy-i18n class="truncate flex font-medium h-xs items-center px-s rounded-s text-s ${0} ${0}" infer="" key="fraud_risk" .options="${0}"> </foxy-i18n> </span> </p> `),o(null!==(_=this.hostedPaymentGatewaysHelper)&&void 0!==_?_:void 0),this.__hostedPaymentGatewaysLoaderId,(()=>this.requestUpdate()),o(null!==(m=this.paymentGatewaysHelper)&&void 0!==m?m:void 0),this.__paymentGatewaysLoaderId,(()=>this.requestUpdate()),o(null==v?void 0:v._links["fx:transaction"].href),this.__transactionLoaderId,(()=>this.requestUpdate()),o(null==v?void 0:v._links["fx:store"].href),this.__storeLoaderId,(()=>this.requestUpdate()),$,{value:null==v?void 0:v.date_created},this.__gatewayName||n(i||(i=p`<foxy-i18n infer="" key="unknown"></foxy-i18n>`)),["processor_response","paypal_payer_id","third_party_id","purchase_order"].map((e=>{if(!(null==v?void 0:v[e]))return;return n(l||(l=p`<foxy-i18n class="${0}" infer="" key="${0}" .options="${0}"></foxy-i18n>`),"block text-s text-tertiary",e,v)})),G&&j&&k?n(y||(y=p` <span class="truncate flex items-center h-xs rounded-s overflow-hidden bg-contrast-5" data-testid="card-info"> <span class="h-xs">${0}</span> <span class="font-medium px-s">•••• ${0} ${0}/${0}</span> </span> `),null!==(f=t[g])&&void 0!==f?f:a,k,G,j):"",b,L,{score:w})}get isBodyReady(){return!!super.isBodyReady&&(!!this.__currencyCode&&(!!this.__currencyDisplay&&(!this.hostedPaymentGatewaysHelper||!this.paymentGatewaysHelper||!!this.__gatewayName)))}get __hostedPaymentGatewaysLoader(){return this.renderRoot.querySelector(`#${this.__hostedPaymentGatewaysLoaderId}`)}get __paymentGatewaysLoader(){return this.renderRoot.querySelector(`#${this.__paymentGatewaysLoaderId}`)}get __transactionLoader(){return this.renderRoot.querySelector(`#${this.__transactionLoaderId}`)}get __storeLoader(){return this.renderRoot.querySelector(`#${this.__storeLoaderId}`)}get __currencyDisplay(){var e;const t=null===(e=this.__storeLoader)||void 0===e?void 0:e.data;return t?t.use_international_currency_symbol?"code":"symbol":void 0}get __currencyCode(){var e,t;return null===(t=null===(e=this.__transactionLoader)||void 0===e?void 0:e.data)||void 0===t?void 0:t.currency_code}get __gatewayName(){var e,t,a,s,r,o;const n=null===(e=this.data)||void 0===e?void 0:e.gateway_type;if(n){const e=null===(a=null===(t=this.__paymentGatewaysLoader)||void 0===t?void 0:t.data)||void 0===a?void 0:a.values[n],d=null===(r=null===(s=this.__hostedPaymentGatewaysLoader)||void 0===s?void 0:s.data)||void 0===r?void 0:r.values[n];return null!==(o=null==e?void 0:e.name)&&void 0!==o?o:null==d?void 0:d.name}}}customElements.define("foxy-payment-card",c);export{c as PaymentCard};
1
+ import"./shared-102dfbe0.js";import"./foxy-nucleon-element.js";import"./shared-ecb7a183.js";import{_ as e}from"./shared-3c58ddf1.js";import{l as t,u as a}from"./shared-2bf89a21.js";import{a as s}from"./shared-e989e47e.js";import{I as r}from"./shared-f090c63a.js";import{i as o}from"./shared-9803aa7c.js";import{h as n}from"./shared-dc73b9a5.js";import"./foxy-spinner.js";import"./shared-a911ab73.js";import"./shared-2f2b5a28.js";import"./shared-bac00622.js";import"./shared-2808f43a.js";import"./shared-343d1fd7.js";import"./shared-272e7269.js";import"./shared-37391934.js";import"./shared-cd96ff03.js";import"./shared-12e531b8.js";import"./shared-90ddf541.js";import"./shared-39fc8fed.js";import"./shared-2e2d45c4.js";import"./shared-4e709717.js";let d,i,l,p,y=e=>e;const u=s(r,"payment-card");class c extends u{constructor(){super(...arguments),this.hostedPaymentGatewaysHelper=null,this.paymentGatewaysHelper=null,this.__hostedPaymentGatewaysLoaderId="hostedPaymentGatewaysLoader",this.__paymentGatewaysLoaderId="paymentGatewaysLoader",this.__transactionLoaderId="transactionLoader",this.__storeLoaderId="storeLoader"}static get properties(){return e(e({},super.properties),{},{hostedPaymentGatewaysHelper:{attribute:"hosted-payment-gateways-helper"},paymentGatewaysHelper:{attribute:"payment-gateways-helper"}})}renderBody(){var e,s,r,u,c,h,_,m,f;const v=this.data,x=`${null!==(e=null==v?void 0:v.amount)&&void 0!==e?e:""} ${this.__currencyCode}`,$={currencyDisplay:this.__currencyDisplay,amount:x},w=null!==(r=null===(s=this.data)||void 0===s?void 0:s.fraud_protection_score)&&void 0!==r?r:0,L=w>0?"text-error":"text-success",b=w>0?"bg-error-10":"bg-success-10",j=(null!==(u=null==v?void 0:v.cc_type)&&void 0!==u?u:"unknown").toLowerCase(),g=null===(c=null==v?void 0:v.cc_exp_year)||void 0===c?void 0:c.substring(2),G=null==v?void 0:v.cc_exp_month,k=null===(h=null==v?void 0:v.cc_number_masked)||void 0===h?void 0:h.replace(/x/gi,"");return n(d||(d=y` <foxy-nucleon infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> <foxy-nucleon infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> <foxy-nucleon infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> <foxy-nucleon infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> <p class="leading-s"> <span class="block font-medium text-m" data-testid="line-1"> <foxy-i18n .options="${0}" infer="" key="price"></foxy-i18n> <span>&nbsp;&bull;&nbsp;</span> <foxy-i18n .options="${0}" infer="" key="date"></foxy-i18n> </span> <span class="block text-s text-secondary"> ${0} </span> ${0} <span class="mt-s flex space-x-s overflow-auto"> ${0} <foxy-i18n class="truncate flex font-medium h-xs items-center px-s rounded-s text-s ${0} ${0}" infer="" key="fraud_risk" .options="${0}"> </foxy-i18n> </span> </p> `),o(null!==(_=this.hostedPaymentGatewaysHelper)&&void 0!==_?_:void 0),this.__hostedPaymentGatewaysLoaderId,(()=>this.requestUpdate()),o(null!==(m=this.paymentGatewaysHelper)&&void 0!==m?m:void 0),this.__paymentGatewaysLoaderId,(()=>this.requestUpdate()),o(null==v?void 0:v._links["fx:transaction"].href),this.__transactionLoaderId,(()=>this.requestUpdate()),o(null==v?void 0:v._links["fx:store"].href),this.__storeLoaderId,(()=>this.requestUpdate()),$,{value:null==v?void 0:v.date_created},this.__gatewayName||n(i||(i=y`<foxy-i18n infer="" key="unknown"></foxy-i18n>`)),["processor_response","paypal_payer_id","third_party_id","purchase_order"].map((e=>{if(!(null==v?void 0:v[e]))return;return n(l||(l=y`<foxy-i18n class="${0}" infer="" key="${0}" .options="${0}"></foxy-i18n>`),"block text-s text-tertiary",e,v)})),G&&g&&k?n(p||(p=y` <span class="truncate flex items-center h-xs rounded-s overflow-hidden bg-contrast-5" data-testid="card-info"> <span class="h-xs">${0}</span> <span class="font-medium px-s">•••• ${0} ${0}/${0}</span> </span> `),null!==(f=t[j])&&void 0!==f?f:a,k,G,g):"",L,b,{score:w})}get isBodyReady(){return!!super.isBodyReady&&(!!this.__currencyCode&&(!!this.__currencyDisplay&&(!this.hostedPaymentGatewaysHelper||!this.paymentGatewaysHelper||!!this.__gatewayName)))}get __hostedPaymentGatewaysLoader(){return this.renderRoot.querySelector(`#${this.__hostedPaymentGatewaysLoaderId}`)}get __paymentGatewaysLoader(){return this.renderRoot.querySelector(`#${this.__paymentGatewaysLoaderId}`)}get __transactionLoader(){return this.renderRoot.querySelector(`#${this.__transactionLoaderId}`)}get __storeLoader(){return this.renderRoot.querySelector(`#${this.__storeLoaderId}`)}get __currencyDisplay(){var e;const t=null===(e=this.__storeLoader)||void 0===e?void 0:e.data;return t?t.use_international_currency_symbol?"code":"symbol":void 0}get __currencyCode(){var e,t;return null===(t=null===(e=this.__transactionLoader)||void 0===e?void 0:e.data)||void 0===t?void 0:t.currency_code}get __gatewayName(){var e,t,a,s,r,o;const n=null===(e=this.data)||void 0===e?void 0:e.gateway_type;if(n){const e=null===(a=null===(t=this.__paymentGatewaysLoader)||void 0===t?void 0:t.data)||void 0===a?void 0:a.values[n],d=null===(r=null===(s=this.__hostedPaymentGatewaysLoader)||void 0===s?void 0:s.data)||void 0===r?void 0:r.values[n];return null!==(o=null==e?void 0:e.name)&&void 0!==o?o:null==d?void 0:d.name}}}customElements.define("foxy-payment-card",c);export{c as PaymentCard};
@@ -1 +1 @@
1
- import"./shared-6b68b3b6.js";import"./shared-da2e66a4.js";import"./shared-25198d9a.js";import"./shared-03673673.js";import"./shared-51c4a6dd.js";import"./foxy-spinner.js";import"./shared-6586ffd5.js";import{l as e,u as t}from"./shared-2bf89a21.js";import{u as s,h as a,c as i}from"./shared-dc73b9a5.js";import{B as r}from"./shared-b3db7611.js";import{C as n}from"./shared-2b5a3c80.js";import"./foxy-nucleon-element.js";import{T as d,a as o}from"./shared-7ff78b4a.js";import{c as l}from"./shared-4e709717.js";import{N as c}from"./shared-fe45779e.js";import"./shared-0a9d860d.js";import"./shared-4c611015.js";import"./shared-61ade33e.js";import"./shared-6cd4e618.js";import"./shared-482b2b86.js";import"./shared-343d1fd7.js";import"./shared-3cabd589.js";import"./shared-9803aa7c.js";import"./shared-3ab0306f.js";import"./shared-851a7db5.js";import"./shared-79d35787.js";const m=s("\n repeating-radial-gradient(\n circle at -100% 500%,\n rgba(255, 255, 255, 0),\n rgba(255, 255, 255, 0.05) 4px\n )\n"),h=s(Object.entries({unknown:"#797c85",amex:"#2557d6",diners:"#0079be",discover:"#4d4d4d",jcb:"#0e4c96",maestro:"#181818",mastercard:"#16366f",unionpay:"#0dadb5",visa:"#0e4595"}).map((([e,t])=>`.bg-${e} { background: ${t} ${m} }`)).join(" "));let p,f,u,b,v,y,_,g=e=>e;const j=d(n(o(c,"payment-method-card")));class $ extends j{constructor(){super(...arguments),this.templates={},this.__renderActionsDelete=()=>a(p||(p=g` <div class="flex"> ${0} <vaadin-button class="px-xs rounded" theme="icon" style="--lumo-primary-text-color:#fff;--lumo-primary-color-50pct:rgba(255, 255, 255, 0.5);--lumo-contrast-5pct:rgba(255, 255, 255, 0.05)" aria-label="${0}" data-testid="actions:delete" ?disabled="${0}" @click="${0}"> <iron-icon icon="icons:delete"></iron-icon> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("actions:delete:before"),this.t("delete").toString(),this.disabledSelector.matches("actions:delete",!0),this.__handleDelete,this.renderTemplateOrSlot("actions:delete:after")),this.__renderActions=()=>a(f||(f=g` <div class="flex" data-testid="actions"> ${0} ${0} ${0} </div> `),this.renderTemplateOrSlot("actions:before"),this.hiddenSelector.matches("actions:delete",!0)?"":this.__renderActionsDelete(),this.renderTemplateOrSlot("actions:after"))}static get styles(){return[super.styles,h,i(u||(u=g`.ratio-card{padding-top:63%;position:relative;height:0}.ratio-card>*{position:absolute;top:0;right:0;bottom:0;left:0}`))]}render(){var s,i,n,d,o,c;const{data:m,lang:h,ns:p}=this;if(this.in({idle:"template"})||!(null==m?void 0:m.save_cc)||!this.in("idle")){const e=this.in("fail")?"error":this.in("busy")?"busy":"empty";return a(b||(b=g` <div class="ratio-card" aria-live="polite" aria-busy="${0}" data-testid="wrapper"> <div class="h-full bg-contrast-5"></div> <div class="absolute inset-0 flex items-center justify-center"> <foxy-spinner data-testid="spinner" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),this.in("busy"),e,this.lang,p,null!==(i=null===(s=customElements.get("foxy-spinner"))||void 0===s?void 0:s.defaultNS)&&void 0!==i?i:"")}const f=null!==(d=null===(n=m.cc_type)||void 0===n?void 0:n.toLowerCase())&&void 0!==d?d:"unknown",u=null!==(o=e[f])&&void 0!==o?o:t,j=null===(c=m.cc_number_masked)||void 0===c?void 0:c.substring(m.cc_number_masked.length-4);return a(v||(v=g` <foxy-internal-confirm-dialog data-testid="confirm" message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> <div class="ratio-card" data-testid="wrapper" aria-busy="${0}" aria-live="polite"> <div class="flex flex-col justify-between text-base text-m leading-m font-lumo p-m bg-unknown bg-${0}"> <div class="${0}"> ${0} <div class="ml-auto rounded h-m">${0}</div> </div> <div class="font-tnum leading-none flex justify-between"> <div data-testid="expiry"> ${0} </div> <div data-testid="number"> ${0} </div> </div> </div> </div> `),h,p,this.__handleConfirmHide,this.in("busy"),f,l({"flex items-start":!0,"justify-between":this.readonlyControls===r.False,"justify-end":this.readonlyControls===r.True}),this.hiddenSelector.matches("actions",!0)?"":this.__renderActions(),u,m.cc_exp_month&&m.cc_exp_year?a(y||(y=g` <span class="sr-only">${0}&nbsp;</span> <span>${0} / ${0}</span> `),this.t("expires").toString(),m.cc_exp_month,m.cc_exp_year):"",j?a(_||(_=g` <span class="sr-only">${0}&nbsp;</span> <span aria-hidden="true">••••</span> <span>${0}</span> `),this.t("last_4_digits").toString(),j):"")}async _sendDelete(){const e=JSON.stringify({save_cc:!1});await this._fetch(this.href,{method:"PATCH",body:e});return c.Rumour(this.group).share({data:null,source:this.href,related:[this.parent]}),null}__handleDelete(e){this.renderRoot.querySelector("#confirm").show(e.currentTarget)}__handleConfirmHide(e){e.detail.cancelled||this.delete()}}customElements.define("foxy-payment-method-card",$);export{$ as PaymentMethodCard};
1
+ import"./shared-a911ab73.js";import"./shared-bac00622.js";import"./shared-7c819ebc.js";import"./shared-337f2fe9.js";import"./shared-51c4a6dd.js";import"./foxy-update-payment-method-form.js";import"./foxy-form-dialog.js";import"./foxy-spinner.js";import"./shared-ecb7a183.js";import{_ as e,B as t}from"./shared-3c58ddf1.js";import{l as s,u as a}from"./shared-2bf89a21.js";import{C as r}from"./shared-bd99107c.js";import{T as i,a as o}from"./shared-e989e47e.js";import"./foxy-nucleon-element.js";import{u as d,h as n,c as l}from"./shared-dc73b9a5.js";import{i as c}from"./shared-9803aa7c.js";import{c as m}from"./shared-4e709717.js";import{N as p}from"./shared-272e7269.js";import"./shared-2f2b5a28.js";import"./shared-f14856e0.js";import"./shared-61ade33e.js";import"./shared-8d7e2e2c.js";import"./shared-37391934.js";import"./shared-343d1fd7.js";import"./shared-2808f43a.js";import"./shared-c5106605.js";import"./shared-a33be18f.js";import"./shared-8c5b4c81.js";import"./shared-41e9ef02.js";import"./foxy-collection-page.js";import"./shared-a0c6a159.js";import"./shared-99940888.js";import"./shared-cd96ff03.js";import"./shared-12e531b8.js";import"./shared-90ddf541.js";import"./shared-39fc8fed.js";import"./shared-2e2d45c4.js";import"./foxy-swipe-actions.js";import"./foxy-pagination.js";import"./shared-e5f6ca48.js";import"./shared-036b25a3.js";import"./foxy-copy-to-clipboard.js";import"./shared-bab2ea2c.js";import"./foxy-template-set-card.js";import"./shared-8452c492.js";import"./shared-f090c63a.js";import"./foxy-payment-card-embed-element.js";import"./shared-8e75c372.js";import"./shared-5e9395ec.js";const h=d("\n repeating-radial-gradient(\n circle at -100% 500%,\n rgba(255, 255, 255, 0),\n rgba(255, 255, 255, 0.05) 4px\n )\n"),f=d(Object.entries({unknown:"#797c85",amex:"#2557d6",diners:"#0079be",discover:"#4d4d4d",jcb:"#0e4c96",maestro:"#181818",mastercard:"#16366f",unionpay:"#0dadb5",visa:"#0e4595"}).map((([e,t])=>`.bg-${e} { background: ${t} ${h} }`)).join(" "));let u,b,y,j,v,g,$,x,_,S,w=e=>e;const T=i(r(o(p,"payment-method-card")));class k extends T{constructor(){super(...arguments),this.templates={},this.embedUrl=null,this.__renderActionsUpdate=()=>{var e;const t=!!(null===(e=this.data)||void 0===e?void 0:e.save_cc),s=t?"--lumo-primary-text-color: #fff; --lumo-primary-color-50pct: rgba(255, 255, 255, 0.5); --lumo-contrast-5pct: rgba(255, 255, 255, 0.05)":void 0;return n(u||(u=w` <div class="flex"> ${0} <foxy-form-dialog data-testid="update-dialog" readonlycontrols="${0}" disabledcontrols="${0}" hiddencontrols="status ${0}" header="${0}" group="${0}" form="foxy-update-payment-method-form" href="${0}" lang="${0}" ns="${0} dialog" alert close-on-patch .props="${0}"> </foxy-form-dialog> <vaadin-button class="${0}" theme="${0}" style="${0}" aria-label="${0}" data-testid="actions:update" ?disabled="${0}" @click="${0}"> ${0} </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("actions:update:before"),this.readonlySelector.zoom("actions:update:form"),this.disabledSelector.zoom("actions:update:form"),this.hiddenSelector.zoom("actions:update:form"),t?"dialog_header_update":"dialog_header_add",this.group,this.href,this.lang,this.ns,{".embedUrl":this.embedUrl},c(t?"px-xs rounded":void 0),t?"icon":"contrast small",c(s),this.t(t?"update":"add"),this.disabledSelector.matches("actions:update",!0),(e=>{const t=e.currentTarget;t.previousElementSibling.show(t)}),n(t?b||(b=w`<iron-icon icon="icons:create"></iron-icon>`):y||(y=w`<foxy-i18n infer="" key="add"></foxy-i18n>`)),this.renderTemplateOrSlot("actions:update:after"))},this.__renderActionsDelete=()=>n(j||(j=w` <div class="flex"> ${0} <vaadin-button class="px-xs rounded" theme="icon" style="--lumo-primary-text-color:#fff;--lumo-primary-color-50pct:rgba(255, 255, 255, 0.5);--lumo-contrast-5pct:rgba(255, 255, 255, 0.05)" aria-label="${0}" data-testid="actions:delete" ?disabled="${0}" @click="${0}"> <iron-icon icon="icons:delete"></iron-icon> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("actions:delete:before"),this.t("delete").toString(),this.disabledSelector.matches("actions:delete",!0),this.__handleDelete,this.renderTemplateOrSlot("actions:delete:after")),this.__renderActions=()=>{const e=this.hiddenSelector.matches("actions:update",!0)||!this.embedUrl,t=this.hiddenSelector.matches("actions:delete",!0);return n(v||(v=w` <div class="flex gap-s" data-testid="actions"> ${0} ${0} ${0} ${0} </div> `),this.renderTemplateOrSlot("actions:before"),e?"":this.__renderActionsUpdate(),t?"":this.__renderActionsDelete(),this.renderTemplateOrSlot("actions:after"))}}static get properties(){return e(e({},super.properties),{},{embedUrl:{attribute:"embed-url"}})}static get styles(){return[super.styles,f,l(g||(g=w`.ratio-card{padding-top:63%;position:relative;height:0}.ratio-card>*{position:absolute;top:0;right:0;bottom:0;left:0}`))]}render(){var e,r,i,o,d,l;const{data:c,lang:p,ns:h}=this;if(this.in({idle:"template"})||!(null==c?void 0:c.save_cc)||!this.in("idle")){const t=this.in("fail")?"error":this.in("busy")?"busy":"empty",s=this.hiddenSelector.matches("actions:update",!0)||!this.embedUrl||!this.data;return n($||($=w` <div class="ratio-card" aria-live="polite" aria-busy="${0}" data-testid="wrapper"> <div class="h-full bg-contrast-5"></div> <div class="absolute inset-0 flex flex-col gap-m items-center justify-center"> <foxy-spinner data-testid="spinner" layout="vertical" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> ${0} </div> </div> `),this.in("busy"),t,this.lang,h,null!==(r=null===(e=customElements.get("foxy-spinner"))||void 0===e?void 0:e.defaultNS)&&void 0!==r?r:"",s?"":this.__renderActionsUpdate())}const f=null!==(o=null===(i=c.cc_type)||void 0===i?void 0:i.toLowerCase())&&void 0!==o?o:"unknown",u=null!==(d=s[f])&&void 0!==d?d:a,b=null===(l=c.cc_number_masked)||void 0===l?void 0:l.substring(c.cc_number_masked.length-4);return n(x||(x=w` <foxy-internal-confirm-dialog data-testid="confirm" message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> <div class="ratio-card" data-testid="wrapper" aria-busy="${0}" aria-live="polite"> <div class="flex flex-col justify-between text-base text-m leading-m font-lumo p-m bg-unknown bg-${0}"> <div class="${0}"> <div class="mr-auto rounded h-m">${0}</div> ${0} </div> <div class="font-tnum leading-none flex justify-between" style="color:#fff"> <div data-testid="expiry"> ${0} </div> <div data-testid="number"> ${0} </div> </div> </div> </div> `),p,h,this.__handleConfirmHide,this.in("busy"),f,m({"flex items-start":!0,"justify-between":this.readonlyControls===t.False,"justify-end":this.readonlyControls===t.True}),u,this.hiddenSelector.matches("actions",!0)?"":this.__renderActions(),c.cc_exp_month&&c.cc_exp_year?n(_||(_=w` <span class="sr-only">${0}&nbsp;</span> <span>${0} / ${0}</span> `),this.t("expires").toString(),c.cc_exp_month,c.cc_exp_year):"",b?n(S||(S=w` <span class="sr-only">${0}&nbsp;</span> <span aria-hidden="true">••••</span> <span>${0}</span> `),this.t("last_4_digits").toString(),b):"")}async _sendDelete(){const e=JSON.stringify({save_cc:!1});await this._fetch(this.href,{method:"PATCH",body:e});return p.Rumour(this.group).share({data:null,source:this.href,related:[this.parent]}),null}__handleDelete(e){this.renderRoot.querySelector("#confirm").show(e.currentTarget)}__handleConfirmHide(e){e.detail.cancelled||this.delete()}}customElements.define("foxy-payment-method-card",k);export{k as PaymentMethodCard};
@@ -1 +1 @@
1
- import"./shared-51c4a6dd.js";import"./foxy-spinner.js";import"./shared-6586ffd5.js";import{_ as r}from"./shared-b3db7611.js";import{a as e}from"./shared-7ff78b4a.js";import{T as s}from"./shared-4affec66.js";import{h as t}from"./shared-dc73b9a5.js";import"./shared-6b68b3b6.js";import"./shared-0a9d860d.js";import"./shared-da2e66a4.js";import"./shared-3cabd589.js";import"./shared-343d1fd7.js";import"./shared-2b5a3c80.js";import"./shared-9803aa7c.js";import"./shared-8b521111.js";import"./shared-fe45779e.js";import"./shared-482b2b86.js";import"./shared-3ab0306f.js";import"./shared-851a7db5.js";import"./shared-79d35787.js";import"./shared-4e709717.js";let a,i,o,d=r=>r;const m=e(s,"payments-api-fraud-protection-card");class l extends m{constructor(){super(...arguments),this.getImageSrc=null}static get defaultImageSrc(){return"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 44 44'%3E%3Cpath fill='%23fff' d='M0 20.73v-9.9L10.83 0h9.9L0 20.73ZM0 0h9.41L0 9.41V0Zm0 22.14L22.14 0h9.9l-9.43 9.44-.61-.27-10.5 4.66v7-.29L0 32.04v-9.9Zm11.54-.23L0 33.46v9.9l14.14-14.14a15 15 0 0 1-2.6-7.3Zm3.2 8.12L.77 44h9.9l9.7-9.7a13.75 13.75 0 0 1-5.63-4.27Zm6.67 4.64L12.08 44h9.9L44 21.98v-9.9L32.16 23.92C31.01 29.15 27.05 33.6 22 34.83l-.59-.16Zm11.02-12.43L44 10.67V.77L31.42 13.35l1.08.48v7a13 13 0 0 1-.07 1.4Zm-1.99-9.32L43.35 0h-9.9l-9.87 9.87 6.86 3.05ZM23.4 44 44 23.4v9.9L33.3 44h-9.9Zm11.31 0L44 34.71V44h-9.29Z'/%3E%3Cpath fill='%23fff' d='M30.17 21.99H22V11.72l-8.17 3.63V22H22v10.42c4.34-1.34 7.55-5.63 8.17-10.43Z'/%3E%3C/svg%3E"}static get properties(){return r(r({},super.properties),{},{getImageSrc:{attribute:!1}})}renderBody(){var r,e;const s=super.renderBody({title:r=>t(a||(a=d`${0}`),r.helper.name),subtitle:r=>t(i||(i=d`${0}`),r.description)});if(!this.in({idle:"snapshot"}))return s;const m=l.defaultImageSrc,p=this.data;return t(o||(o=d` <figure class="flex items-center" style="gap:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)"> <img class="relative h-s w-s object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs" src="${0}" alt="${0}" @error="${0}"> <figcaption class="min-w-0 flex-1">${0}</figcaption> </figure> `),null!==(e=p?null===(r=this.getImageSrc)||void 0===r?void 0:r.call(this,p.type):null)&&void 0!==e?e:m,this.t("image_alt"),(r=>r.currentTarget.src=m),s)}}customElements.define("foxy-payments-api-fraud-protection-card",l);export{l as PaymentsApiFraudProtectionCard};
1
+ import"./shared-51c4a6dd.js";import"./foxy-spinner.js";import"./shared-ecb7a183.js";import{_ as r}from"./shared-3c58ddf1.js";import{a as e}from"./shared-e989e47e.js";import{T as s}from"./shared-8452c492.js";import{h as t}from"./shared-dc73b9a5.js";import"./shared-a911ab73.js";import"./shared-2f2b5a28.js";import"./shared-bac00622.js";import"./shared-2808f43a.js";import"./shared-343d1fd7.js";import"./shared-bd99107c.js";import"./shared-9803aa7c.js";import"./shared-f090c63a.js";import"./shared-272e7269.js";import"./shared-37391934.js";import"./shared-cd96ff03.js";import"./shared-12e531b8.js";import"./shared-90ddf541.js";import"./shared-39fc8fed.js";import"./shared-2e2d45c4.js";import"./shared-4e709717.js";let a,i,o,d=r=>r;const m=e(s,"payments-api-fraud-protection-card");class p extends m{constructor(){super(...arguments),this.getImageSrc=null}static get defaultImageSrc(){return"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 44 44'%3E%3Cpath fill='%23fff' d='M0 20.73v-9.9L10.83 0h9.9L0 20.73ZM0 0h9.41L0 9.41V0Zm0 22.14L22.14 0h9.9l-9.43 9.44-.61-.27-10.5 4.66v7-.29L0 32.04v-9.9Zm11.54-.23L0 33.46v9.9l14.14-14.14a15 15 0 0 1-2.6-7.3Zm3.2 8.12L.77 44h9.9l9.7-9.7a13.75 13.75 0 0 1-5.63-4.27Zm6.67 4.64L12.08 44h9.9L44 21.98v-9.9L32.16 23.92C31.01 29.15 27.05 33.6 22 34.83l-.59-.16Zm11.02-12.43L44 10.67V.77L31.42 13.35l1.08.48v7a13 13 0 0 1-.07 1.4Zm-1.99-9.32L43.35 0h-9.9l-9.87 9.87 6.86 3.05ZM23.4 44 44 23.4v9.9L33.3 44h-9.9Zm11.31 0L44 34.71V44h-9.29Z'/%3E%3Cpath fill='%23fff' d='M30.17 21.99H22V11.72l-8.17 3.63V22H22v10.42c4.34-1.34 7.55-5.63 8.17-10.43Z'/%3E%3C/svg%3E"}static get properties(){return r(r({},super.properties),{},{getImageSrc:{attribute:!1}})}renderBody(){var r,e;const s=super.renderBody({title:r=>t(a||(a=d`${0}`),r.helper.name),subtitle:r=>t(i||(i=d`${0}`),r.description)});if(!this.in({idle:"snapshot"}))return s;const m=p.defaultImageSrc,l=this.data;return t(o||(o=d` <figure class="flex items-center" style="gap:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)"> <img class="relative h-s w-s object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs" src="${0}" alt="${0}" @error="${0}"> <figcaption class="min-w-0 flex-1">${0}</figcaption> </figure> `),null!==(e=l?null===(r=this.getImageSrc)||void 0===r?void 0:r.call(this,l.type):null)&&void 0!==e?e:m,this.t("image_alt"),(r=>r.currentTarget.src=m),s)}}customElements.define("foxy-payments-api-fraud-protection-card",p);export{p as PaymentsApiFraudProtectionCard};
@@ -1 +1 @@
1
- import"./shared-25198d9a.js";import"./shared-b9ea6d85.js";import"./shared-f0fcd613.js";import"./shared-77258081.js";import"./shared-be0fca15.js";import{I as e}from"./shared-8a247f48.js";import"./foxy-nucleon-element.js";import"./shared-6586ffd5.js";import{_ as t,aM as r,m as o}from"./shared-b3db7611.js";import{a}from"./shared-7ff78b4a.js";import{i}from"./shared-9803aa7c.js";import{h as s}from"./shared-dc73b9a5.js";import{s as l}from"./shared-fe45779e.js";import{h as n}from"./shared-5875cb66.js";import"./shared-4c611015.js";import"./shared-0a9d860d.js";import"./shared-61ade33e.js";import"./shared-ea5fa631.js";import"./shared-91c88f14.js";import"./shared-6b68b3b6.js";import"./shared-75d13e1b.js";import"./shared-51c4a6dd.js";import"./shared-2b5a3c80.js";import"./shared-3cabd589.js";import"./shared-a24b2aa7.js";import"./shared-684cd55a.js";import"./shared-612ea9ed.js";import"./shared-ad11b006.js";import"./shared-285f8cee.js";import"./shared-540063aa.js";import"./shared-28be347b.js";import"./shared-90cbed56.js";import"./shared-651c44fa.js";import"./shared-2314add3.js";import"./shared-03673673.js";import"./shared-6cd4e618.js";import"./shared-482b2b86.js";import"./shared-343d1fd7.js";import"./shared-4e709717.js";import"./foxy-copy-to-clipboard.js";import"./shared-da2e66a4.js";import"./foxy-spinner.js";import"./shared-bab2ea2c.js";import"./shared-3ab0306f.js";import"./shared-851a7db5.js";import"./shared-79d35787.js";let d,c,p,h,f,u,m,v,b,_,j=e=>e;const g=a(e,"payments-api-fraud-protection-form");class x extends g{constructor(){super(...arguments),this.getImageSrc=null,this.templates={},this.__availableFraudProtectionsLoaderId="availableFraudProtections"}static get defaultImageSrc(){return"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 44 44'%3E%3Cpath fill='%23fff' d='M0 20.73v-9.9L10.83 0h9.9L0 20.73ZM0 0h9.41L0 9.41V0Zm0 22.14L22.14 0h9.9l-9.43 9.44-.61-.27-10.5 4.66v7-.29L0 32.04v-9.9Zm11.54-.23L0 33.46v9.9l14.14-14.14a15 15 0 0 1-2.6-7.3Zm3.2 8.12L.77 44h9.9l9.7-9.7a13.75 13.75 0 0 1-5.63-4.27Zm6.67 4.64L12.08 44h9.9L44 21.98v-9.9L32.16 23.92C31.01 29.15 27.05 33.6 22 34.83l-.59-.16Zm11.02-12.43L44 10.67V.77L31.42 13.35l1.08.48v7a13 13 0 0 1-.07 1.4Zm-1.99-9.32L43.35 0h-9.9l-9.87 9.87 6.86 3.05ZM23.4 44 44 23.4v9.9L33.3 44h-9.9Zm11.31 0L44 34.71V44h-9.29Z'/%3E%3Cpath fill='%23fff' d='M30.17 21.99H22V11.72l-8.17 3.63V22H22v10.42c4.34-1.34 7.55-5.63 8.17-10.43Z'/%3E%3C/svg%3E"}static get properties(){return t(t({},super.properties),{},{getImageSrc:{attribute:!1}})}static get v8n(){return[({description:e})=>!e||e.length<=100||"description:v8n_too_long",({type:e})=>!!e||"type:v8n_required",({score_threshold_reject:e})=>"number"!=typeof e||(e<=100&&e>=0||"score-threshold-reject:v8n_out_of_range"),e=>{var t,r,o,a;const i=null!==(o=null===(r=null===(t=e.helper)||void 0===t?void 0:t.json)||void 0===r?void 0:r.blocks)&&void 0!==o?o:[];let s;try{s=JSON.parse(null!==(a=e.json)&&void 0!==a?a:"{}")}catch(e){s={}}for(const e of i)for(const t of e.fields)if("optional"in t&&!t.optional){const r=[e.parent_id,e.id,t.id].filter((e=>!!e));if(!n(s,r)&&"checkbox"!==t.type)return"json:v8n_invalid"}return!0}]}renderBody(){return this.form.type?this.__renderFraudProtectionConfig(this.form.type):this.__renderFraudProtectionSelector()}get __availableFraudProtectionsLoader(){return this.renderRoot.querySelector(`#${this.__availableFraudProtectionsLoaderId}`)}get __availableFraudProtectionsHref(){try{const e=r(/\/payment_presets\/(.+)\//,{presetId:1}),t=new URL(this.href||this.parent).pathname,o=e.exec(t).groups.presetId;return new URL(`/payment_presets/${o}/available_fraud_protections`,this.href||this.parent).toString()}catch(e){}}get __availableFraudProtections(){var e,t;return null===(t=null===(e=this.__availableFraudProtectionsLoader)||void 0===e?void 0:e.data)||void 0===t?void 0:t.values}__renderFraudProtectionSelector(){var e;const t=x.defaultImageSrc;return s(d||(d=j` <foxy-nucleon class="hidden" infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> <foxy-i18n class="block text-xxl font-medium border-b border-contrast-10 pb-m" infer="" key="select_protection_title"> </foxy-i18n> <div data-testid="select-protection-list"> <ul class="-my-s grid grid-cols-1"> ${0} </ul> </div> `),i(this.__availableFraudProtectionsHref),this.__availableFraudProtectionsLoaderId,(()=>this.requestUpdate()),Object.entries(null!==(e=this.__availableFraudProtections)&&void 0!==e?e:{}).map((([e,r])=>{var o,a;return s(c||(c=j` <li class="-mx-s"> <button class="w-full block text-left hover-bg-contrast-5 p-s rounded" @click="${0}"> <figure class="flex items-center gap-m h-m"> <img class="relative h-m w-m object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs" src="${0}" alt="" @error="${0}"> <figcaption class="min-w-0 flex-1 truncate leading-s font-medium"> ${0}&ZeroWidthSpace; </figcaption> </figure> </button> </li> `),(()=>this.edit({type:e,helper:r})),null!==(a=null===(o=this.getImageSrc)||void 0===o?void 0:o.call(this,e))&&void 0!==a?a:t,(e=>{e.currentTarget.src=t}),r.name)})))}__renderFraudProtectionConfig(e){var t,r,o,a,i,l,n,d;const c=x.defaultImageSrc;return s(p||(p=j` <figure data-testid="logo" class="relative flex flex-col gap-m p-m items-center"> <img class="relative h-xl w-xl object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs" src="${0}" alt="" @error="${0}"> <figcaption class="relative min-w-0 font-medium text-xl text-center"> ${0}&ZeroWidthSpace; </figcaption> </figure> <foxy-internal-text-control infer="description"></foxy-internal-text-control> ${0} ${0} ${0} ${0} `),null!==(r=null===(t=this.getImageSrc)||void 0===t?void 0:t.call(this,e))&&void 0!==r?r:c,(e=>e.currentTarget.src=c),null!==(a=null===(o=this.form.helper)||void 0===o?void 0:o.name)&&void 0!==a?a:this.form.type,(null===(i=this.form.helper)||void 0===i?void 0:i.uses_rejection_threshold)?s(h||(h=j` <foxy-internal-integer-control infer="score-threshold-reject"> </foxy-internal-integer-control> `)):"",null===(n=null===(l=this.form.helper)||void 0===l?void 0:l.json)||void 0===n?void 0:n.blocks.map((e=>this.__renderBlock(e))),(null===(d=this.data)||void 0===d?void 0:d.type)?"":s(f||(f=j` <vaadin-button data-testid="select-another-button" theme="contrast" @click="${0}"> <foxy-i18n infer="" key="select_another_button_label"></foxy-i18n> </vaadin-button> `),(()=>this.undo())),super.renderBody())}__renderBlock(e){return s(u||(u=j`${0}`),e.fields.map((t=>{var r,a,i,n,d,c;const p=()=>{var r,a;let i;try{i=JSON.parse(null!==(r=this.form.json)&&void 0!==r?r:"")}catch(e){i={}}const s=[e.parent_id,e.id,t.id].filter((e=>!!e));return null!==(a=o(i,s))&&void 0!==a?a:i.default_value},h=r=>{var o;let a;try{a=JSON.parse(null!==(o=this.form.json)&&void 0!==o?o:"")}catch(e){a={}}const i=[e.parent_id,e.id,t.id].filter((e=>!!e));this.edit({json:JSON.stringify(l(a,i,r))})},f=t.options,u=["json",...[e.parent_id,e.id,t.id].filter((e=>!!e))].join("-").replace(/_/g,"-");return s(m||(m=j` ${0} `),"checkbox"===t.type?s(v||(v=j` <foxy-internal-checkbox-group-control helper-text="${0}" label="" infer="${0}" .options="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-checkbox-group-control> `),null!==(r=t.description)&&void 0!==r?r:"",u,[{label:t.name,value:"checked"}],(()=>p()?["checked"]:[]),(e=>h(e.includes("checked")))):"select"===t.type?s(b||(b=j` <foxy-internal-select-control helper-text="${0}" placeholder="${0}" label="${0}" infer="${0}" .options="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-select-control> `),null!==(a=t.description)&&void 0!==a?a:"",null!==(d=null===(n=null===(i=t.options)||void 0===i?void 0:i.find((e=>e.value===t.default_value)))||void 0===n?void 0:n.name)&&void 0!==d?d:this.t("default_additional_field_placeholder"),t.name,u,f.map((({name:e,value:t})=>({label:e,value:t}))),p,h):s(_||(_=j` <foxy-internal-text-control helper-text="${0}" placeholder="${0}" label="${0}" infer="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> `),null!==(c=t.description)&&void 0!==c?c:"",t.default_value||this.t("default_additional_field_placeholder"),t.name,u,p,h))})))}}customElements.define("foxy-payments-api-fraud-protection-form",x);export{x as PaymentsApiFraudProtectionForm};
1
+ import"./shared-7c819ebc.js";import"./shared-8540c2c7.js";import"./shared-91009494.js";import"./shared-e4403332.js";import"./shared-292585a0.js";import{I as e}from"./shared-036b25a3.js";import"./foxy-nucleon-element.js";import"./shared-ecb7a183.js";import{_ as t,aM as r,l as o}from"./shared-3c58ddf1.js";import{a}from"./shared-e989e47e.js";import{i}from"./shared-9803aa7c.js";import{h as s}from"./shared-dc73b9a5.js";import{s as l}from"./shared-39fc8fed.js";import{h as n}from"./shared-9f5c636a.js";import"./shared-f14856e0.js";import"./shared-2f2b5a28.js";import"./shared-61ade33e.js";import"./shared-b2ce84fa.js";import"./shared-34f4330c.js";import"./shared-a911ab73.js";import"./shared-e5f6ca48.js";import"./shared-51c4a6dd.js";import"./shared-bd99107c.js";import"./shared-2808f43a.js";import"./shared-272e7269.js";import"./shared-37391934.js";import"./shared-343d1fd7.js";import"./shared-cd96ff03.js";import"./shared-12e531b8.js";import"./shared-90ddf541.js";import"./shared-2e2d45c4.js";import"./shared-62f3fc5a.js";import"./shared-0062cab1.js";import"./shared-4885670b.js";import"./shared-b99daf13.js";import"./shared-84215d13.js";import"./shared-8c5b4c81.js";import"./shared-41e9ef02.js";import"./shared-5a18985c.js";import"./shared-651c44fa.js";import"./shared-1ab8b12e.js";import"./shared-337f2fe9.js";import"./shared-8d7e2e2c.js";import"./shared-4e709717.js";import"./foxy-copy-to-clipboard.js";import"./shared-bac00622.js";import"./foxy-spinner.js";import"./shared-bab2ea2c.js";let d,c,p,h,f,u,m,v,_,j,b=e=>e;const g=a(e,"payments-api-fraud-protection-form");class x extends g{constructor(){super(...arguments),this.getImageSrc=null,this.templates={},this.__availableFraudProtectionsLoaderId="availableFraudProtections"}static get defaultImageSrc(){return"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 44 44'%3E%3Cpath fill='%23fff' d='M0 20.73v-9.9L10.83 0h9.9L0 20.73ZM0 0h9.41L0 9.41V0Zm0 22.14L22.14 0h9.9l-9.43 9.44-.61-.27-10.5 4.66v7-.29L0 32.04v-9.9Zm11.54-.23L0 33.46v9.9l14.14-14.14a15 15 0 0 1-2.6-7.3Zm3.2 8.12L.77 44h9.9l9.7-9.7a13.75 13.75 0 0 1-5.63-4.27Zm6.67 4.64L12.08 44h9.9L44 21.98v-9.9L32.16 23.92C31.01 29.15 27.05 33.6 22 34.83l-.59-.16Zm11.02-12.43L44 10.67V.77L31.42 13.35l1.08.48v7a13 13 0 0 1-.07 1.4Zm-1.99-9.32L43.35 0h-9.9l-9.87 9.87 6.86 3.05ZM23.4 44 44 23.4v9.9L33.3 44h-9.9Zm11.31 0L44 34.71V44h-9.29Z'/%3E%3Cpath fill='%23fff' d='M30.17 21.99H22V11.72l-8.17 3.63V22H22v10.42c4.34-1.34 7.55-5.63 8.17-10.43Z'/%3E%3C/svg%3E"}static get properties(){return t(t({},super.properties),{},{getImageSrc:{attribute:!1}})}static get v8n(){return[({description:e})=>!e||e.length<=100||"description:v8n_too_long",({type:e})=>!!e||"type:v8n_required",({score_threshold_reject:e})=>"number"!=typeof e||(e<=100&&e>=0||"score-threshold-reject:v8n_out_of_range"),e=>{var t,r,o,a;const i=null!==(o=null===(r=null===(t=e.helper)||void 0===t?void 0:t.json)||void 0===r?void 0:r.blocks)&&void 0!==o?o:[];let s;try{s=JSON.parse(null!==(a=e.json)&&void 0!==a?a:"{}")}catch(e){s={}}for(const e of i)for(const t of e.fields)if("optional"in t&&!t.optional){const r=[e.parent_id,e.id,t.id].filter((e=>!!e));if(!n(s,r)&&"checkbox"!==t.type)return"json:v8n_invalid"}return!0}]}renderBody(){return this.form.type?this.__renderFraudProtectionConfig(this.form.type):this.__renderFraudProtectionSelector()}get __availableFraudProtectionsLoader(){return this.renderRoot.querySelector(`#${this.__availableFraudProtectionsLoaderId}`)}get __availableFraudProtectionsHref(){try{const e=r(/\/payment_presets\/(.+)\//,{presetId:1}),t=new URL(this.href||this.parent).pathname,o=e.exec(t).groups.presetId;return new URL(`/payment_presets/${o}/available_fraud_protections`,this.href||this.parent).toString()}catch(e){}}get __availableFraudProtections(){var e,t;return null===(t=null===(e=this.__availableFraudProtectionsLoader)||void 0===e?void 0:e.data)||void 0===t?void 0:t.values}__renderFraudProtectionSelector(){var e;const t=x.defaultImageSrc;return s(d||(d=b` <foxy-nucleon class="hidden" infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> <foxy-i18n class="block text-xxl font-medium border-b border-contrast-10 pb-m" infer="" key="select_protection_title"> </foxy-i18n> <div data-testid="select-protection-list"> <ul class="-my-s grid grid-cols-1"> ${0} </ul> </div> `),i(this.__availableFraudProtectionsHref),this.__availableFraudProtectionsLoaderId,(()=>this.requestUpdate()),Object.entries(null!==(e=this.__availableFraudProtections)&&void 0!==e?e:{}).map((([e,r])=>{var o,a;return s(c||(c=b` <li class="-mx-s"> <button class="w-full block text-left hover-bg-contrast-5 p-s rounded" @click="${0}"> <figure class="flex items-center gap-m h-m"> <img class="relative h-m w-m object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs" src="${0}" alt="" @error="${0}"> <figcaption class="min-w-0 flex-1 truncate leading-s font-medium"> ${0}&ZeroWidthSpace; </figcaption> </figure> </button> </li> `),(()=>this.edit({type:e,helper:r})),null!==(a=null===(o=this.getImageSrc)||void 0===o?void 0:o.call(this,e))&&void 0!==a?a:t,(e=>{e.currentTarget.src=t}),r.name)})))}__renderFraudProtectionConfig(e){var t,r,o,a,i,l,n,d;const c=x.defaultImageSrc;return s(p||(p=b` <figure data-testid="logo" class="relative flex flex-col gap-m p-m items-center"> <img class="relative h-xl w-xl object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs" src="${0}" alt="" @error="${0}"> <figcaption class="relative min-w-0 font-medium text-xl text-center"> ${0}&ZeroWidthSpace; </figcaption> </figure> <foxy-internal-text-control infer="description"></foxy-internal-text-control> ${0} ${0} ${0} ${0} `),null!==(r=null===(t=this.getImageSrc)||void 0===t?void 0:t.call(this,e))&&void 0!==r?r:c,(e=>e.currentTarget.src=c),null!==(a=null===(o=this.form.helper)||void 0===o?void 0:o.name)&&void 0!==a?a:this.form.type,(null===(i=this.form.helper)||void 0===i?void 0:i.uses_rejection_threshold)?s(h||(h=b` <foxy-internal-integer-control infer="score-threshold-reject"> </foxy-internal-integer-control> `)):"",null===(n=null===(l=this.form.helper)||void 0===l?void 0:l.json)||void 0===n?void 0:n.blocks.map((e=>this.__renderBlock(e))),(null===(d=this.data)||void 0===d?void 0:d.type)?"":s(f||(f=b` <vaadin-button data-testid="select-another-button" theme="contrast" @click="${0}"> <foxy-i18n infer="" key="select_another_button_label"></foxy-i18n> </vaadin-button> `),(()=>this.undo())),super.renderBody())}__renderBlock(e){return s(u||(u=b`${0}`),e.fields.map((t=>{var r,a,i,n,d,c;const p=()=>{var r,a;let i;try{i=JSON.parse(null!==(r=this.form.json)&&void 0!==r?r:"")}catch(e){i={}}const s=[e.parent_id,e.id,t.id].filter((e=>!!e));return null!==(a=o(i,s))&&void 0!==a?a:i.default_value},h=r=>{var o;let a;try{a=JSON.parse(null!==(o=this.form.json)&&void 0!==o?o:"")}catch(e){a={}}const i=[e.parent_id,e.id,t.id].filter((e=>!!e));this.edit({json:JSON.stringify(l(a,i,r))})},f=t.options,u=["json",...[e.parent_id,e.id,t.id].filter((e=>!!e))].join("-").replace(/_/g,"-");return s(m||(m=b` ${0} `),"checkbox"===t.type?s(v||(v=b` <foxy-internal-checkbox-group-control helper-text="${0}" label="" infer="${0}" .options="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-checkbox-group-control> `),null!==(r=t.description)&&void 0!==r?r:"",u,[{label:t.name,value:"checked"}],(()=>p()?["checked"]:[]),(e=>h(e.includes("checked")))):"select"===t.type?s(_||(_=b` <foxy-internal-select-control helper-text="${0}" placeholder="${0}" label="${0}" infer="${0}" .options="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-select-control> `),null!==(a=t.description)&&void 0!==a?a:"",null!==(d=null===(n=null===(i=t.options)||void 0===i?void 0:i.find((e=>e.value===t.default_value)))||void 0===n?void 0:n.name)&&void 0!==d?d:this.t("default_additional_field_placeholder"),t.name,u,f.map((({name:e,value:t})=>({label:e,value:t}))),p,h):s(j||(j=b` <foxy-internal-text-control helper-text="${0}" placeholder="${0}" label="${0}" infer="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> `),null!==(c=t.description)&&void 0!==c?c:"",t.default_value||this.t("default_additional_field_placeholder"),t.name,u,p,h))})))}}customElements.define("foxy-payments-api-fraud-protection-form",x);export{x as PaymentsApiFraudProtectionForm};
@@ -1 +1 @@
1
- import"./shared-51c4a6dd.js";import"./foxy-spinner.js";import"./shared-6586ffd5.js";import{_ as r}from"./shared-b3db7611.js";import{a as e}from"./shared-7ff78b4a.js";import{T as s}from"./shared-4affec66.js";import{h as t}from"./shared-dc73b9a5.js";import"./shared-6b68b3b6.js";import"./shared-0a9d860d.js";import"./shared-da2e66a4.js";import"./shared-3cabd589.js";import"./shared-343d1fd7.js";import"./shared-2b5a3c80.js";import"./shared-9803aa7c.js";import"./shared-8b521111.js";import"./shared-fe45779e.js";import"./shared-482b2b86.js";import"./shared-3ab0306f.js";import"./shared-851a7db5.js";import"./shared-79d35787.js";import"./shared-4e709717.js";let a,i,d,o=r=>r;const m=e(s,"payments-api-payment-method-card");class l extends m{constructor(){super(...arguments),this.getImageSrc=null}static get defaultImageSrc(){return"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 44 44'%3E%3Cpath fill='%23fff' d='m29.3 14 14-14H32.1l-14 14h11.2Zm2.7 9.9 12-12V.7L30.62 14.1A2 2 0 0 1 32 16v7.9ZM13.31 44h11.18L44 24.5V13.3l-12 12V28a2 2 0 0 1-2 2h-2.69l-14 14Zm-1.41 0H.7l14-14h11.2l-14 14Zm14 0h11.2l6.9-6.9V25.9L25.9 44Zm12.6 0H44v-5.5L38.5 44Z'/%3E%3Cpath fill='%23fff' d='M30 28H14v-6h16v6Zm0-10v-2H14v2h16ZM0 43.3l13.4-13.4A2 2 0 0 1 12 28v-7.9L0 32.12V43.3Z'/%3E%3Cpath fill='%23fff' d='M16.7 14H14c-1.11 0-1.99.89-1.99 2v2.7L0 30.7V19.52L19.52 0H30.7l-14 14Zm1.4-14H6.92L0 6.92V18.1L18.1 0ZM5.5 0H0v5.5L5.5 0Z'/%3E%3C/svg%3E"}static get properties(){return r(r({},super.properties),{},{getImageSrc:{attribute:!1}})}renderBody(){var r,e;const s=super.renderBody({title:r=>t(a||(a=o`${0}`),r.helper.name),subtitle:r=>t(i||(i=o`${0}`),r.description)});if(!this.in({idle:"snapshot"}))return s;const m=l.defaultImageSrc,p=this.data;return t(d||(d=o` <figure class="flex items-center" style="gap:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)"> <img class="relative h-s w-s object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs" src="${0}" alt="${0}" @error="${0}"> <figcaption class="min-w-0 flex-1">${0}</figcaption> </figure> `),null!==(e=p?null===(r=this.getImageSrc)||void 0===r?void 0:r.call(this,p.type):null)&&void 0!==e?e:m,this.t("image_alt"),(r=>r.currentTarget.src=m),s)}}customElements.define("foxy-payments-api-payment-method-card",l);export{l as PaymentsApiPaymentMethodCard};
1
+ import"./shared-51c4a6dd.js";import"./foxy-spinner.js";import"./shared-ecb7a183.js";import{_ as e}from"./shared-3c58ddf1.js";import{a as r}from"./shared-e989e47e.js";import{T as s}from"./shared-8452c492.js";import{h as t}from"./shared-dc73b9a5.js";import"./shared-a911ab73.js";import"./shared-2f2b5a28.js";import"./shared-bac00622.js";import"./shared-2808f43a.js";import"./shared-343d1fd7.js";import"./shared-bd99107c.js";import"./shared-9803aa7c.js";import"./shared-f090c63a.js";import"./shared-272e7269.js";import"./shared-37391934.js";import"./shared-cd96ff03.js";import"./shared-12e531b8.js";import"./shared-90ddf541.js";import"./shared-39fc8fed.js";import"./shared-2e2d45c4.js";import"./shared-4e709717.js";let a,i,d,o=e=>e;const m=r(s,"payments-api-payment-method-card");class l extends m{constructor(){super(...arguments),this.getImageSrc=null}static get defaultImageSrc(){return"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 44 44'%3E%3Cpath fill='%23fff' d='m29.3 14 14-14H32.1l-14 14h11.2Zm2.7 9.9 12-12V.7L30.62 14.1A2 2 0 0 1 32 16v7.9ZM13.31 44h11.18L44 24.5V13.3l-12 12V28a2 2 0 0 1-2 2h-2.69l-14 14Zm-1.41 0H.7l14-14h11.2l-14 14Zm14 0h11.2l6.9-6.9V25.9L25.9 44Zm12.6 0H44v-5.5L38.5 44Z'/%3E%3Cpath fill='%23fff' d='M30 28H14v-6h16v6Zm0-10v-2H14v2h16ZM0 43.3l13.4-13.4A2 2 0 0 1 12 28v-7.9L0 32.12V43.3Z'/%3E%3Cpath fill='%23fff' d='M16.7 14H14c-1.11 0-1.99.89-1.99 2v2.7L0 30.7V19.52L19.52 0H30.7l-14 14Zm1.4-14H6.92L0 6.92V18.1L18.1 0ZM5.5 0H0v5.5L5.5 0Z'/%3E%3C/svg%3E"}static get properties(){return e(e({},super.properties),{},{getImageSrc:{attribute:!1}})}renderBody(){var e,r;const s=super.renderBody({title:e=>t(a||(a=o`${0}`),e.helper.name),subtitle:e=>t(i||(i=o`${0}`),e.description)});if(!this.in({idle:"snapshot"}))return s;const m=l.defaultImageSrc,p=this.data;return t(d||(d=o` <figure class="flex items-center" style="gap:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)"> <img class="relative h-s w-s object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs" src="${0}" alt="${0}" @error="${0}"> <figcaption class="min-w-0 flex-1">${0}</figcaption> </figure> `),null!==(r=p?null===(e=this.getImageSrc)||void 0===e?void 0:e.call(this,p.type):null)&&void 0!==r?r:m,this.t("image_alt"),(e=>e.currentTarget.src=m),s)}}customElements.define("foxy-payments-api-payment-method-card",l);export{l as PaymentsApiPaymentMethodCard};
@@ -1 +1 @@
1
- import"./shared-25198d9a.js";import"./shared-0a8161e5.js";import"./shared-7f60c1c1.js";import"./shared-b9ea6d85.js";import"./shared-1e7639e6.js";import"./shared-77258081.js";import"./shared-be0fca15.js";import{I as e}from"./shared-8a247f48.js";import"./foxy-nucleon-element.js";import"./shared-6586ffd5.js";import{_ as t,aM as r,m as i}from"./shared-b3db7611.js";import{a as o}from"./shared-7ff78b4a.js";import{i as a}from"./shared-9803aa7c.js";import{c as s}from"./shared-4e709717.js";import{h as l}from"./shared-dc73b9a5.js";import{h as n}from"./shared-5875cb66.js";import{s as d}from"./shared-fe45779e.js";import"./shared-4c611015.js";import"./shared-0a9d860d.js";import"./shared-61ade33e.js";import"./shared-684cd55a.js";import"./shared-7b2bd917.js";import"./shared-6b68b3b6.js";import"./shared-2314add3.js";import"./shared-651c44fa.js";import"./shared-28be347b.js";import"./shared-285f8cee.js";import"./shared-540063aa.js";import"./shared-90cbed56.js";import"./shared-612ea9ed.js";import"./shared-91c88f14.js";import"./shared-75d13e1b.js";import"./shared-51c4a6dd.js";import"./shared-2b5a3c80.js";import"./shared-3cabd589.js";import"./shared-482b2b86.js";import"./shared-343d1fd7.js";import"./shared-ea5fa631.js";import"./shared-03673673.js";import"./shared-6cd4e618.js";import"./foxy-copy-to-clipboard.js";import"./shared-da2e66a4.js";import"./foxy-spinner.js";import"./shared-bab2ea2c.js";import"./shared-3ab0306f.js";import"./shared-851a7db5.js";import"./shared-79d35787.js";let c,h,p,f,u,m,_,v,y,b,g,x,$,j,k,S,V,M,w=e=>e;const L=o(e,"payments-api-payment-method-form");class P extends L{constructor(){super(...arguments),this.getImageSrc=null,this.templates={},this.__availablePaymentMethodsLoaderId="availablePaymentMethodsLoader",this.__threeDSecureResponseGetValue=()=>{var e;return(null===(e=this.form.config_3d_secure)||void 0===e?void 0:e.endsWith("require_valid_response"))?["valid_only"]:[]},this.__threeDSecureResponseSetValue=e=>{const t=e.includes("valid_only")?"_require_valid_response":"",r=this.form.config_3d_secure,i=(null==r?void 0:r.startsWith("all_cards"))?"all_cards":"maestro_only";this.edit({config_3d_secure:`${i}${t}`})},this.__threeDSecureResponseOptions=[{value:"valid_only",label:"option_valid_only"}],this.__threeDSecureToggleGetValue=()=>{const e=this.form.config_3d_secure;return(null==e?void 0:e.startsWith("all_cards"))?"all_cards":(null==e?void 0:e.startsWith("maestro_only"))?"maestro_only":"off"},this.__threeDSecureToggleSetValue=e=>{var t;let r="";"all_cards"!==e&&"maestro_only"!==e||(r=(null===(t=this.form.config_3d_secure)||void 0===t?void 0:t.endsWith("require_valid_response"))?`${e}_require_valid_response`:e),this.edit({config_3d_secure:r})},this.__threeDSecureToggleOptions=[{value:"off",label:"option_off"},{value:"all_cards",label:"option_all_cards"},{value:"maestro_only",label:"option_maestro_only"}],this.__tab=0}static get defaultImageSrc(){return"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 44 44'%3E%3Cpath fill='%23fff' d='m29.3 14 14-14H32.1l-14 14h11.2Zm2.7 9.9 12-12V.7L30.62 14.1A2 2 0 0 1 32 16v7.9ZM13.31 44h11.18L44 24.5V13.3l-12 12V28a2 2 0 0 1-2 2h-2.69l-14 14Zm-1.41 0H.7l14-14h11.2l-14 14Zm14 0h11.2l6.9-6.9V25.9L25.9 44Zm12.6 0H44v-5.5L38.5 44Z'/%3E%3Cpath fill='%23fff' d='M30 28H14v-6h16v6Zm0-10v-2H14v2h16ZM0 43.3l13.4-13.4A2 2 0 0 1 12 28v-7.9L0 32.12V43.3Z'/%3E%3Cpath fill='%23fff' d='M16.7 14H14c-1.11 0-1.99.89-1.99 2v2.7L0 30.7V19.52L19.52 0H30.7l-14 14Zm1.4-14H6.92L0 6.92V18.1L18.1 0ZM5.5 0H0v5.5L5.5 0Z'/%3E%3C/svg%3E"}static get properties(){return t(t({},super.properties),{},{__tab:{attribute:!1},getImageSrc:{attribute:!1}})}static get v8n(){return[({description:e})=>!e||e.length<=100||"description:v8n_too_long",({type:e})=>!!e||"type:v8n_required",e=>{var t,r,i,o;const a=null!==(i=null===(r=null===(t=e.helper)||void 0===t?void 0:t.additional_fields)||void 0===r?void 0:r.blocks)&&void 0!==i?i:[];let s;try{s=JSON.parse(null!==(o=e.additional_fields)&&void 0!==o?o:"{}")}catch(e){s={}}for(const e of a)for(const t of e.fields)if("optional"in t&&!t.optional){const r=[e.parent_id,e.id,t.id].filter((e=>!!e));if(!n(s,r)&&"checkbox"!==t.type)return"additional-fields:v8n_invalid"}return!0}]}renderBody(){return this.form.type?this.__renderPaymentMethodConfig(this.form.type):this.__renderPaymentMethodSelector()}get __groupedAvailablePaymentMethods(){var e;return Object.entries(null!==(e=this.__availablePaymentMethods)&&void 0!==e?e:{}).sort(((e,t)=>e[0].localeCompare(t[0],"en"))).reduce(((e,[t,r])=>{const i=t.charAt(0).toUpperCase(),o=!/\w/.test(i)?"#":i,a=e.find((e=>e.name===o));return a?a.items.push({type:t,helper:r}):e.push({name:o,items:[{type:t,helper:r}]}),e}),[])}get __availablePaymentMethodsLoader(){return this.renderRoot.querySelector(`#${this.__availablePaymentMethodsLoaderId}`)}get __availablePaymentMethodsHref(){try{const e=r(/\/payment_presets\/(.+)\//,{presetId:1}),t=new URL(this.href||this.parent).pathname,i=e.exec(t).groups.presetId;return new URL(`/payment_presets/${i}/available_payment_methods`,this.href||this.parent).toString()}catch(e){}}get __availablePaymentMethods(){var e,t;return null===(t=null===(e=this.__availablePaymentMethodsLoader)||void 0===e?void 0:e.data)||void 0===t?void 0:t.values}get __liveBlocks(){var e,t,r;return null!==(r=null===(t=null===(e=this.form.helper)||void 0===e?void 0:e.additional_fields)||void 0===t?void 0:t.blocks.filter((e=>e.is_live)))&&void 0!==r?r:[]}get __testBlocks(){var e,t,r;return null!==(r=null===(t=null===(e=this.form.helper)||void 0===e?void 0:e.additional_fields)||void 0===t?void 0:t.blocks.filter((e=>!e.is_live)))&&void 0!==r?r:[]}__renderPaymentMethodSelector(){return l(c||(c=w` <foxy-nucleon class="hidden" infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> <foxy-i18n class="block text-xxl font-medium border-b border-contrast-10 pb-m" infer="" key="select_method_title"> </foxy-i18n> <section data-testid="select-method-list"> <div class="-my-s"> ${0} </div> </section> `),a(this.__availablePaymentMethodsHref),this.__availablePaymentMethodsLoaderId,(()=>this.requestUpdate()),this.__groupedAvailablePaymentMethods.map((({name:e,items:t})=>l(h||(h=w` <p class="w-m text-center font-medium text-tertiary py-s">${0}</p> <ul class="grid grid-cols-1"> ${0} </ul> `),e,t.map((e=>l(p||(p=w`<li>${0}</li>`),this.__renderPaymentMethodButton(e))))))))}__renderPaymentMethodConfig(e){var t,r,i,o,a,n;const d=P.defaultImageSrc;return l(f||(f=w` <figure data-testid="logo" class="relative flex flex-col gap-m p-m items-center"> <img class="relative h-xl w-xl object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs" src="${0}" alt="" @error="${0}"> <figcaption class="relative min-w-0 font-medium text-xl text-center"> ${0}&ZeroWidthSpace; </figcaption> </figure> <div class="rounded border border-contrast-10"> <vaadin-tabs selected="${0}" theme="centered" @selected-changed="${0}"> <vaadin-tab><foxy-i18n infer="" key="tab_live"></foxy-i18n></vaadin-tab> <vaadin-tab><foxy-i18n infer="" key="tab_test"></foxy-i18n></vaadin-tab> </vaadin-tabs> <div class="overflow-hidden" style="--lumo-border-radius:var(--lumo-border-radius-s)"> <div data-testid="tab-content" class="grid grid-cols-2 gap-m transition-transform transform duration-300" style="${0}"> ${0} </div> </div> </div> <foxy-internal-text-control infer="description"></foxy-internal-text-control> ${0} ${0} ${0} `),null!==(r=null===(t=this.getImageSrc)||void 0===t?void 0:t.call(this,e))&&void 0!==r?r:d,(e=>e.currentTarget.src=d),null!==(o=null===(i=this.form.helper)||void 0===i?void 0:i.name)&&void 0!==o?o:this.form.type,this.__tab,(e=>{var t;const r=e.currentTarget;this.__tab=null!==(t=r.selected)&&void 0!==t?t:0}),s({"width: calc(200% + var(--lumo-space-m));":!0,"--tw-translate-x: 0;":0===this.__tab,"--tw-translate-x: calc(-50% - (var(--lumo-space-m) / 2));":0!==this.__tab}),["live","test"].map(((e,t)=>{var r,i,o;const a=0===t?"":`${e}-`,n=0===t?this.__liveBlocks:this.__testBlocks;return l(u||(u=w` <div class="${0}"> ${0} ${0} ${0} ${0} </div> `),s({"grid grid-cols-1 gap-m p-m transition-opacity duration-300":!0,"opacity-100":this.__tab===t,"opacity-0":this.__tab!==t}),(null===(r=this.form.helper)||void 0===r?void 0:r.id_description)?l(m||(m=w` <foxy-internal-text-control placeholder="${0}" helper-text="" label="${0}" infer="${0}account-id"> </foxy-internal-text-control> `),this.t("default_additional_field_placeholder"),this.form.helper.id_description,a):"",(null===(i=this.form.helper)||void 0===i?void 0:i.third_party_key_description)?l(_||(_=w` <foxy-internal-text-control placeholder="${0}" helper-text="" label="${0}" infer="${0}third-party-key"> </foxy-internal-text-control> `),this.t("default_additional_field_placeholder"),this.form.helper.third_party_key_description,a):"",(null===(o=this.form.helper)||void 0===o?void 0:o.key_description)?l(v||(v=w` <foxy-internal-text-control placeholder="${0}" helper-text="" label="${0}" infer="${0}account-key"> </foxy-internal-text-control> `),this.t("default_additional_field_placeholder"),this.form.helper.key_description,a):"",n.map((e=>this.__renderBlock(e))))})),(null===(a=this.form.helper)||void 0===a?void 0:a.supports_3d_secure)?l(y||(y=w` <foxy-internal-radio-group-control infer="three-d-secure-toggle" class="-mb-s" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-radio-group-control> ${0} `),this.__threeDSecureToggleGetValue,this.__threeDSecureToggleSetValue,this.__threeDSecureToggleOptions,this.form.config_3d_secure?l(b||(b=w` <foxy-internal-checkbox-group-control infer="three-d-secure-response" class="-mb-s" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> `),this.__threeDSecureResponseGetValue,this.__threeDSecureResponseSetValue,this.__threeDSecureResponseOptions):""):"",(null===(n=this.data)||void 0===n?void 0:n.type)?"":l(g||(g=w` <vaadin-button data-testid="select-another-button" theme="contrast" @click="${0}"> <foxy-i18n infer="" key="select_another_button_label"></foxy-i18n> </vaadin-button> `),(()=>this.undo())),super.renderBody())}__renderPaymentMethodButton({type:e,helper:t}){var r,i;const o=P.defaultImageSrc;return l(x||(x=w` <button class="${0}" ?disabled="${0}" @click="${0}"> <figure class="flex items-center gap-m h-m"> <img class="relative h-m w-m object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs" src="${0}" alt="" @error="${0}"> <figcaption class="${0}"> <div class="font-medium">${0}&ZeroWidthSpace;</div> ${0} </figcaption> </figure> </button> `),s({"w-full block text-left p-s rounded -mx-s":!0,"transition-colors hover-bg-contrast-5":!t.conflict,"cursor-default":!!t.conflict}),!!t.conflict,(()=>this.edit({type:e,helper:t})),null!==(i=null===(r=this.getImageSrc)||void 0===r?void 0:r.call(this,e))&&void 0!==i?i:o,(e=>e.currentTarget.src=o),s({"min-w-0 flex-1 truncate leading-s":!0,"text-tertiary":!!t.conflict}),t.name,t.conflict?l($||($=w` <foxy-i18n class="block text-tertiary text-xs" infer="" key="conflict_message" .options="${0}"> </foxy-i18n> `),t.conflict):"")}__renderBlock(e){return l(j||(j=w`${0}`),e.fields.map((t=>{var r,o,a;const s=[e.parent_id,e.id,t.id].filter((e=>!!e)),n=["additional-fields",...s].join("-").replace(/_/g,"-"),c=()=>{var e,r;try{const t=JSON.parse(null!==(e=this.form.additional_fields)&&void 0!==e?e:"{}");return null!==(r=i(t,s))&&void 0!==r?r:t.default_value}catch(e){return t.default_value}},h=e=>{var t;try{const r=JSON.parse(null!==(t=this.form.additional_fields)&&void 0!==t?t:"{}");this.edit({additional_fields:JSON.stringify(d(r,s,e))})}catch(e){return""}},p=t.options;return l(k||(k=w` ${0} `),"checkbox"===t.type?l(S||(S=w` <foxy-internal-checkbox-group-control helper-text="${0}" label="" class="-mb-s" infer="${0}" .options="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-checkbox-group-control> `),null!==(r=t.description)&&void 0!==r?r:"",n,[{label:t.name,value:"checked"}],(()=>c()?["checked"]:[]),(e=>{h(e.includes("checked"))})):"select"===t.type?l(V||(V=w` <foxy-internal-select-control helper-text="${0}" label="${0}" infer="${0}" .options="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-select-control> `),null!==(o=t.description)&&void 0!==o?o:"",t.name,n,p.map((({name:e,value:t})=>({label:e,value:t}))),c,h):l(M||(M=w` <foxy-internal-text-control helper-text="${0}" placeholder="${0}" label="${0}" infer="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> `),null!==(a=t.description)&&void 0!==a?a:"",t.default_value||this.t("default_additional_field_placeholder"),t.name,n,c,h))})))}}customElements.define("foxy-payments-api-payment-method-form",P);export{P as PaymentsApiPaymentMethodForm};
1
+ import"./shared-7c819ebc.js";import"./shared-e2cbc382.js";import"./shared-e10b5dca.js";import"./shared-8540c2c7.js";import"./shared-6dfb57b1.js";import"./shared-e4403332.js";import"./shared-292585a0.js";import{I as e}from"./shared-036b25a3.js";import"./foxy-nucleon-element.js";import"./shared-ecb7a183.js";import{_ as t,aM as r,l as i}from"./shared-3c58ddf1.js";import{a}from"./shared-e989e47e.js";import{i as o}from"./shared-9803aa7c.js";import{c as l}from"./shared-4e709717.js";import{h as s}from"./shared-dc73b9a5.js";import{h as n}from"./shared-9f5c636a.js";import{s as d}from"./shared-39fc8fed.js";import"./shared-f14856e0.js";import"./shared-2f2b5a28.js";import"./shared-61ade33e.js";import"./shared-0062cab1.js";import"./shared-fd95cd52.js";import"./shared-a911ab73.js";import"./shared-1ab8b12e.js";import"./shared-651c44fa.js";import"./shared-41e9ef02.js";import"./shared-84215d13.js";import"./shared-8c5b4c81.js";import"./shared-5a18985c.js";import"./shared-4885670b.js";import"./shared-34f4330c.js";import"./shared-e5f6ca48.js";import"./shared-51c4a6dd.js";import"./shared-bd99107c.js";import"./shared-2808f43a.js";import"./shared-272e7269.js";import"./shared-37391934.js";import"./shared-343d1fd7.js";import"./shared-cd96ff03.js";import"./shared-12e531b8.js";import"./shared-90ddf541.js";import"./shared-2e2d45c4.js";import"./shared-b2ce84fa.js";import"./shared-337f2fe9.js";import"./shared-8d7e2e2c.js";import"./foxy-copy-to-clipboard.js";import"./shared-bac00622.js";import"./foxy-spinner.js";import"./shared-bab2ea2c.js";let c,h,p,f,u,m,_,v,g,y,b,x,$,j,k,S,V,w=e=>e;const M=a(e,"payments-api-payment-method-form");class L extends M{constructor(){super(...arguments),this.getImageSrc=null,this.templates={},this.__availablePaymentMethodsLoaderId="availablePaymentMethodsLoader",this.__threeDSecureResponseGetValue=()=>{var e;return(null===(e=this.form.config_3d_secure)||void 0===e?void 0:e.endsWith("require_valid_response"))?["valid_only"]:[]},this.__threeDSecureResponseSetValue=e=>{const t=e.includes("valid_only")?"_require_valid_response":"",r=this.form.config_3d_secure,i=(null==r?void 0:r.startsWith("all_cards"))?"all_cards":"maestro_only";this.edit({config_3d_secure:`${i}${t}`})},this.__threeDSecureResponseOptions=[{value:"valid_only",label:"option_valid_only"}],this.__threeDSecureToggleGetValue=()=>{const e=this.form.config_3d_secure;return(null==e?void 0:e.startsWith("all_cards"))?"all_cards":(null==e?void 0:e.startsWith("maestro_only"))?"maestro_only":"off"},this.__threeDSecureToggleSetValue=e=>{var t;let r="";"all_cards"!==e&&"maestro_only"!==e||(r=(null===(t=this.form.config_3d_secure)||void 0===t?void 0:t.endsWith("require_valid_response"))?`${e}_require_valid_response`:e),this.edit({config_3d_secure:r})},this.__threeDSecureToggleOptions=[{value:"off",label:"option_off"},{value:"all_cards",label:"option_all_cards"},{value:"maestro_only",label:"option_maestro_only"}],this.__tab=0}static get defaultImageSrc(){return"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 44 44'%3E%3Cpath fill='%23fff' d='m29.3 14 14-14H32.1l-14 14h11.2Zm2.7 9.9 12-12V.7L30.62 14.1A2 2 0 0 1 32 16v7.9ZM13.31 44h11.18L44 24.5V13.3l-12 12V28a2 2 0 0 1-2 2h-2.69l-14 14Zm-1.41 0H.7l14-14h11.2l-14 14Zm14 0h11.2l6.9-6.9V25.9L25.9 44Zm12.6 0H44v-5.5L38.5 44Z'/%3E%3Cpath fill='%23fff' d='M30 28H14v-6h16v6Zm0-10v-2H14v2h16ZM0 43.3l13.4-13.4A2 2 0 0 1 12 28v-7.9L0 32.12V43.3Z'/%3E%3Cpath fill='%23fff' d='M16.7 14H14c-1.11 0-1.99.89-1.99 2v2.7L0 30.7V19.52L19.52 0H30.7l-14 14Zm1.4-14H6.92L0 6.92V18.1L18.1 0ZM5.5 0H0v5.5L5.5 0Z'/%3E%3C/svg%3E"}static get properties(){return t(t({},super.properties),{},{__tab:{attribute:!1},getImageSrc:{attribute:!1}})}static get v8n(){return[({description:e})=>!e||e.length<=100||"description:v8n_too_long",({type:e})=>!!e||"type:v8n_required",e=>{var t,r,i,a;const o=null!==(i=null===(r=null===(t=e.helper)||void 0===t?void 0:t.additional_fields)||void 0===r?void 0:r.blocks)&&void 0!==i?i:[];let l;try{l=JSON.parse(null!==(a=e.additional_fields)&&void 0!==a?a:"{}")}catch(e){l={}}for(const e of o)for(const t of e.fields)if("optional"in t&&!t.optional&&!n(l,t.id)&&"checkbox"!==t.type)return"additional-fields:v8n_invalid";return!0}]}renderBody(){return this.form.type?this.__renderPaymentMethodConfig(this.form.type):this.__renderPaymentMethodSelector()}get __groupedAvailablePaymentMethods(){var e;return Object.entries(null!==(e=this.__availablePaymentMethods)&&void 0!==e?e:{}).sort(((e,t)=>e[0].localeCompare(t[0],"en"))).reduce(((e,[t,r])=>{if(r.is_deprecated)return e;const i=t.charAt(0).toUpperCase(),a=!/\w/.test(i)?"#":i,o=e.find((e=>e.name===a));return o?o.items.push({type:t,helper:r}):e.push({name:a,items:[{type:t,helper:r}]}),e}),[])}get __availablePaymentMethodsLoader(){return this.renderRoot.querySelector(`#${this.__availablePaymentMethodsLoaderId}`)}get __availablePaymentMethodsHref(){try{const e=r(/\/payment_presets\/(.+)\//,{presetId:1}),t=new URL(this.href||this.parent).pathname,i=e.exec(t).groups.presetId;return new URL(`/payment_presets/${i}/available_payment_methods`,this.href||this.parent).toString()}catch(e){}}get __availablePaymentMethods(){var e,t;return null===(t=null===(e=this.__availablePaymentMethodsLoader)||void 0===e?void 0:e.data)||void 0===t?void 0:t.values}get __liveBlocks(){var e,t,r;return null!==(r=null===(t=null===(e=this.form.helper)||void 0===e?void 0:e.additional_fields)||void 0===t?void 0:t.blocks.filter((e=>e.is_live)))&&void 0!==r?r:[]}get __testBlocks(){var e,t,r;return null!==(r=null===(t=null===(e=this.form.helper)||void 0===e?void 0:e.additional_fields)||void 0===t?void 0:t.blocks.filter((e=>!e.is_live)))&&void 0!==r?r:[]}__renderPaymentMethodSelector(){return s(c||(c=w` <figure data-testid="logo" class="relative flex flex-col gap-m p-m items-center"> <img class="relative h-xl w-xl object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs" src="${0}" alt=""> <figcaption class="relative min-w-0 font-medium text-xl text-center"> <foxy-i18n infer="" key="select_method_title"></foxy-i18n> </figcaption> </figure> <section data-testid="select-method-list" class="-mt-m"> ${0} </section> <foxy-nucleon class="hidden" infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> `),L.defaultImageSrc,this.__groupedAvailablePaymentMethods.map((({name:e,items:t})=>s(h||(h=w` <p class="font-medium text-tertiary py-m">${0}</p> <ul class="grid grid-cols-2 gap-m"> ${0} </ul> `),e,t.map((e=>s(p||(p=w`<li>${0}</li>`),this.__renderPaymentMethodButton(e))))))),o(this.__availablePaymentMethodsHref),this.__availablePaymentMethodsLoaderId,(()=>this.requestUpdate()))}__renderPaymentMethodConfig(e){var t,r,i,a,o,n;const d=L.defaultImageSrc;return s(f||(f=w` <figure data-testid="logo" class="relative flex flex-col gap-m p-m items-center"> <img class="relative h-xl w-xl object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs" src="${0}" alt="" @error="${0}"> <figcaption class="relative min-w-0 font-medium text-xl text-center"> <div>${0}&ZeroWidthSpace;</div> ${0} </figcaption> </figure> <div class="rounded border border-contrast-10"> <vaadin-tabs selected="${0}" theme="centered" @selected-changed="${0}"> <vaadin-tab><foxy-i18n infer="" key="tab_live"></foxy-i18n></vaadin-tab> <vaadin-tab><foxy-i18n infer="" key="tab_test"></foxy-i18n></vaadin-tab> </vaadin-tabs> <div class="overflow-hidden" style="--lumo-border-radius:var(--lumo-border-radius-s)"> <div data-testid="tab-content" class="grid grid-cols-2 gap-m transition-transform transform duration-300" style="${0}"> ${0} </div> </div> </div> <foxy-internal-text-control infer="description"></foxy-internal-text-control> ${0} ${0} `),null!==(r=null===(t=this.getImageSrc)||void 0===t?void 0:t.call(this,e))&&void 0!==r?r:d,(e=>e.currentTarget.src=d),null!==(a=null===(i=this.form.helper)||void 0===i?void 0:i.name)&&void 0!==a?a:this.form.type,(null===(o=this.data)||void 0===o?void 0:o.type)?"":s(u||(u=w` <vaadin-button data-testid="select-another-button" theme="tertiary-inline" class="text-m" @click="${0}"> <foxy-i18n infer="" key="select_another_button_label"></foxy-i18n> </vaadin-button> `),(()=>this.undo())),this.__tab,(e=>{var t;const r=e.currentTarget;this.__tab=null!==(t=r.selected)&&void 0!==t?t:0}),l({"width: calc(200% + var(--lumo-space-m));":!0,"--tw-translate-x: 0;":0===this.__tab,"--tw-translate-x: calc(-50% - (var(--lumo-space-m) / 2));":0!==this.__tab}),["live","test"].map(((e,t)=>{var r,i,a;const o=0===t?"":`${e}-`,n=0===t?this.__liveBlocks:this.__testBlocks;return s(m||(m=w` <div class="${0}"> ${0} ${0} ${0} ${0} </div> `),l({"grid grid-cols-1 gap-m p-m transition-opacity duration-300":!0,"opacity-100":this.__tab===t,"opacity-0":this.__tab!==t}),(null===(r=this.form.helper)||void 0===r?void 0:r.id_description)?s(_||(_=w` <foxy-internal-text-control placeholder="${0}" helper-text="" label="${0}" infer="${0}account-id"> </foxy-internal-text-control> `),this.t("default_additional_field_placeholder"),this.form.helper.id_description,o):"",(null===(i=this.form.helper)||void 0===i?void 0:i.third_party_key_description)?s(v||(v=w` <foxy-internal-text-control placeholder="${0}" helper-text="" label="${0}" infer="${0}third-party-key"> </foxy-internal-text-control> `),this.t("default_additional_field_placeholder"),this.form.helper.third_party_key_description,o):"",(null===(a=this.form.helper)||void 0===a?void 0:a.key_description)?s(g||(g=w` <foxy-internal-text-control placeholder="${0}" helper-text="" label="${0}" infer="${0}account-key"> </foxy-internal-text-control> `),this.t("default_additional_field_placeholder"),this.form.helper.key_description,o):"",n.map((e=>this.__renderBlock(e))))})),(null===(n=this.form.helper)||void 0===n?void 0:n.supports_3d_secure)?s(y||(y=w` <foxy-internal-radio-group-control infer="three-d-secure-toggle" class="-mb-s" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-radio-group-control> ${0} `),this.__threeDSecureToggleGetValue,this.__threeDSecureToggleSetValue,this.__threeDSecureToggleOptions,this.form.config_3d_secure?s(b||(b=w` <foxy-internal-checkbox-group-control infer="three-d-secure-response" class="-mb-s" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> `),this.__threeDSecureResponseGetValue,this.__threeDSecureResponseSetValue,this.__threeDSecureResponseOptions):""):"",super.renderBody())}__renderPaymentMethodButton({type:e,helper:t}){var r,i;const a=L.defaultImageSrc,o=null!==(i=null===(r=this.getImageSrc)||void 0===r?void 0:r.call(this,e))&&void 0!==i?i:a,n=e=>e.currentTarget.src=a;return s(x||(x=w` <button class="${0}" ?disabled="${0}" title="${0}" @click="${0}"> <img class="absolute top-0 left-0 w-1-2 h-full object-cover bg-center filter saturate-200 blur-3xl" style="transform:translate3d(0,0,0)" src="${0}" alt="" ?hidden="${0}" @error="${0}"> <figure class="relative flex flex-col gap-m"> <img class="${0}" src="${0}" alt="" @error="${0}"> <figcaption class="${0}"> <div class="font-medium">${0}&ZeroWidthSpace;</div> <div class="text-xs ${0}">${0}</div> </figcaption> </figure> </button> `),l({"relative w-full block text-left p-s rounded bg-contrast-5 overflow-hidden":!0,"focus-outline-none focus-ring-2 focus-ring-primary-50":!0,"transition-colors hover-bg-contrast-10":!t.conflict,"cursor-default":!!t.conflict}),!!t.conflict,t.conflict?this.t("conflict_message",t.conflict):"",(()=>this.edit({type:e,helper:t})),o,!!t.conflict,n,l({"h-m w-m object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs":!0,"filter grayscale":!!t.conflict}),o,n,l({"min-w-0 flex-1 truncate leading-s":!0,"text-disabled":!!t.conflict}),t.name,t.conflict?"":"text-secondary",e)}__renderBlock(e){return s($||($=w`${0}`),e.fields.map((e=>{var t,r,a;const o=["additional-fields",e.id].join("-").replace(/_/g,"-"),l=()=>{var t,r;try{const a=JSON.parse(null!==(t=this.form.additional_fields)&&void 0!==t?t:"{}");return null!==(r=i(a,e.id))&&void 0!==r?r:a.default_value}catch(t){return e.default_value}},n=t=>{var r;try{const i=JSON.parse(null!==(r=this.form.additional_fields)&&void 0!==r?r:"{}");this.edit({additional_fields:JSON.stringify(d(i,e.id,t))})}catch(e){return""}},c=e.options;return s(j||(j=w` ${0} `),"checkbox"===e.type?s(k||(k=w` <foxy-internal-checkbox-group-control helper-text="${0}" label="" class="-mb-s" infer="${0}" .options="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-checkbox-group-control> `),null!==(t=e.description)&&void 0!==t?t:"",o,[{label:e.name,value:"checked"}],(()=>l()?["checked"]:[]),(e=>{n(e.includes("checked"))})):"select"===e.type?s(S||(S=w` <foxy-internal-select-control helper-text="${0}" label="${0}" infer="${0}" .options="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-select-control> `),null!==(r=e.description)&&void 0!==r?r:"",e.name,o,c.map((({name:e,value:t})=>({label:e,value:t}))),l,n):s(V||(V=w` <foxy-internal-text-control helper-text="${0}" placeholder="${0}" label="${0}" infer="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> `),null!==(a=e.description)&&void 0!==a?a:"",e.default_value||this.t("default_additional_field_placeholder"),e.name,o,l,n))})))}}customElements.define("foxy-payments-api-payment-method-form",L);export{L as PaymentsApiPaymentMethodForm};
@@ -1 +1 @@
1
- import"./shared-51c4a6dd.js";import"./foxy-spinner.js";import"./shared-6586ffd5.js";import{a as s}from"./shared-7ff78b4a.js";import{T as r}from"./shared-4affec66.js";import{c as e}from"./shared-4e709717.js";import{h as a}from"./shared-dc73b9a5.js";import"./shared-6b68b3b6.js";import"./shared-0a9d860d.js";import"./shared-da2e66a4.js";import"./shared-b3db7611.js";import"./shared-3cabd589.js";import"./shared-343d1fd7.js";import"./shared-2b5a3c80.js";import"./shared-9803aa7c.js";import"./shared-8b521111.js";import"./shared-fe45779e.js";import"./shared-482b2b86.js";import"./shared-3ab0306f.js";import"./shared-851a7db5.js";import"./shared-79d35787.js";let t,d,i=s=>s;const o=s(r,"payments-api-payment-preset-card");class p extends o{renderBody(){return super.renderBody({title:s=>a(t||(t=i`${0}`),s.description),subtitle:({is_live:s})=>a(d||(d=i` <foxy-i18n class="${0}" infer="" key="status_${0}"> </foxy-i18n> `),e({"text-success":s}),s?"live":"test")})}}customElements.define("foxy-payments-api-payment-preset-card",p);export{p as PaymentsApiPaymentPresetCard};
1
+ import"./shared-51c4a6dd.js";import"./foxy-spinner.js";import"./shared-ecb7a183.js";import{a as s}from"./shared-e989e47e.js";import{T as e}from"./shared-8452c492.js";import{c as r}from"./shared-4e709717.js";import{h as a}from"./shared-dc73b9a5.js";import"./shared-a911ab73.js";import"./shared-2f2b5a28.js";import"./shared-bac00622.js";import"./shared-3c58ddf1.js";import"./shared-2808f43a.js";import"./shared-343d1fd7.js";import"./shared-bd99107c.js";import"./shared-9803aa7c.js";import"./shared-f090c63a.js";import"./shared-272e7269.js";import"./shared-37391934.js";import"./shared-cd96ff03.js";import"./shared-12e531b8.js";import"./shared-90ddf541.js";import"./shared-39fc8fed.js";import"./shared-2e2d45c4.js";let t,d,i=s=>s;const o=s(e,"payments-api-payment-preset-card");class p extends o{renderBody(){return super.renderBody({title:s=>a(t||(t=i`${0}`),s.description),subtitle:({is_live:s})=>a(d||(d=i` <foxy-i18n class="${0}" infer="" key="status_${0}"> </foxy-i18n> `),r({"text-success":s}),s?"live":"test")})}}customElements.define("foxy-payments-api-payment-preset-card",p);export{p as PaymentsApiPaymentPresetCard};
@@ -1 +1 @@
1
- import"./shared-b9ea6d85.js";import"./shared-d222bd1e.js";import"./shared-be0fca15.js";import{I as e}from"./shared-8a247f48.js";import"./foxy-payments-api-fraud-protection-card.js";import"./foxy-payments-api-fraud-protection-form.js";import"./foxy-payments-api-payment-method-card.js";import"./foxy-payments-api-payment-method-form.js";import{_ as t}from"./shared-b3db7611.js";import{a as r}from"./shared-7ff78b4a.js";import{h as a}from"./shared-dc73b9a5.js";import"./shared-ea5fa631.js";import"./shared-4c611015.js";import"./shared-0a9d860d.js";import"./shared-61ade33e.js";import"./shared-91c88f14.js";import"./shared-6b68b3b6.js";import"./shared-75d13e1b.js";import"./shared-51c4a6dd.js";import"./shared-6586ffd5.js";import"./shared-343d1fd7.js";import"./shared-3cabd589.js";import"./shared-2b5a3c80.js";import"./shared-9803aa7c.js";import"./shared-fe45779e.js";import"./shared-482b2b86.js";import"./shared-3ab0306f.js";import"./shared-851a7db5.js";import"./shared-79d35787.js";import"./shared-540063aa.js";import"./shared-28be347b.js";import"./shared-25198d9a.js";import"./foxy-collection-page.js";import"./foxy-spinner.js";import"./shared-da2e66a4.js";import"./shared-a0c6a159.js";import"./shared-99940888.js";import"./foxy-swipe-actions.js";import"./foxy-form-dialog.js";import"./shared-03673673.js";import"./shared-6cd4e618.js";import"./shared-4e709717.js";import"./foxy-pagination.js";import"./shared-612ea9ed.js";import"./shared-684cd55a.js";import"./foxy-copy-to-clipboard.js";import"./shared-bab2ea2c.js";import"./shared-4affec66.js";import"./shared-8b521111.js";import"./shared-f0fcd613.js";import"./shared-a24b2aa7.js";import"./shared-ad11b006.js";import"./shared-77258081.js";import"./shared-285f8cee.js";import"./shared-90cbed56.js";import"./shared-651c44fa.js";import"./shared-2314add3.js";import"./foxy-nucleon-element.js";import"./shared-5875cb66.js";import"./shared-0a8161e5.js";import"./shared-7b2bd917.js";import"./shared-7f60c1c1.js";import"./shared-1e7639e6.js";let s,o,i,p,d,n,m=e=>e;const h=r(e,"payments-api-payment-preset-form");class c extends h{constructor(){super(...arguments),this.getFraudProtectionImageSrc=null,this.getPaymentMethodImageSrc=null,this.templates={},this.__getIsPOEnabledValue=()=>this.form.is_purchase_order_enabled?["true"]:[],this.__setIsPOEnabledValue=e=>{this.edit({is_purchase_order_enabled:e.includes("true")})},this.__getIsLiveValue=()=>this.form.is_live?["live"]:["test"],this.__setIsLiveValue=e=>{this.edit({is_live:e.includes("live")})}}static get properties(){return t(t({},super.properties),{},{getFraudProtectionImageSrc:{attribute:!1},getPaymentMethodImageSrc:{attribute:!1}})}static get v8n(){return[({description:e})=>!!e||"description:v8n_required",({description:e})=>e&&e.length<=100||"description:v8n_too_long"]}renderBody(){const e=this.constructor;return a(s||(s=m` <foxy-internal-text-control infer="description"></foxy-internal-text-control> <div class="-mb-s"> <foxy-internal-checkbox-group-control infer="is-live" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> <foxy-internal-checkbox-group-control infer="is-purchase-order-enabled" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> </div> ${0} ${0} `),this.__getIsLiveValue,this.__setIsLiveValue,e.__isLiveOptions,this.__getIsPOEnabledValue,this.__setIsPOEnabledValue,e.__isPOEnabledOptions,this.data?a(o||(o=m` <foxy-internal-async-list-control infer="payment-methods" first="${0}" limit="5" .item="${0}" .form="${0}"> </foxy-internal-async-list-control> <foxy-internal-async-list-control infer="fraud-protections" first="${0}" limit="5" .item="${0}" .form="${0}"> </foxy-internal-async-list-control> `),this.data._links["fx:payment_methods"].href,(e=>a(i||(i=m` <foxy-payments-api-payment-method-card parent="${0}" infer="payments-api-payment-method-card" href="${0}" .getImageSrc="${0}"> </foxy-payments-api-payment-method-card> `),e.parent,e.href,this.getPaymentMethodImageSrc)),(e=>a(p||(p=m` <foxy-payments-api-payment-method-form parent="${0}" infer="payments-api-payment-method-form" href="${0}" id="form" .getImageSrc="${0}" @fetch="${0}" @update="${0}"> </foxy-payments-api-payment-method-form> `),e.dialog.parent,e.dialog.href,this.getPaymentMethodImageSrc,e.handleFetch,e.handleUpdate)),this.data._links["fx:fraud_protections"].href,(e=>a(d||(d=m` <foxy-payments-api-fraud-protection-card parent="${0}" infer="payments-api-fraud-protection-card" href="${0}" .getImageSrc="${0}"> </foxy-payments-api-fraud-protection-card> `),e.parent,e.href,this.getFraudProtectionImageSrc)),(e=>a(n||(n=m` <foxy-payments-api-fraud-protection-form parent="${0}" infer="payments-api-fraud-protection-form" href="${0}" id="form" .getImageSrc="${0}" @fetch="${0}" @update="${0}"> </foxy-payments-api-fraud-protection-form> `),e.dialog.parent,e.dialog.href,this.getFraudProtectionImageSrc,e.handleFetch,e.handleUpdate))):"",super.renderBody())}}c.__isPOEnabledOptions=[{label:"option_true",value:"true"}],c.__isLiveOptions=[{label:"option_live",value:"live"}],customElements.define("foxy-payments-api-payment-preset-form",c);export{c as PaymentsApiPaymentPresetForm};
1
+ import"./shared-8540c2c7.js";import"./shared-a33be18f.js";import"./shared-292585a0.js";import{I as e}from"./shared-036b25a3.js";import"./foxy-payments-api-fraud-protection-card.js";import"./foxy-payments-api-fraud-protection-form.js";import"./foxy-payments-api-payment-method-card.js";import"./foxy-payments-api-payment-method-form.js";import{_ as t}from"./shared-3c58ddf1.js";import{a as r}from"./shared-e989e47e.js";import{h as a}from"./shared-dc73b9a5.js";import"./shared-b2ce84fa.js";import"./shared-f14856e0.js";import"./shared-2f2b5a28.js";import"./shared-61ade33e.js";import"./shared-34f4330c.js";import"./shared-a911ab73.js";import"./shared-e5f6ca48.js";import"./shared-51c4a6dd.js";import"./shared-ecb7a183.js";import"./shared-343d1fd7.js";import"./shared-2808f43a.js";import"./shared-bd99107c.js";import"./shared-9803aa7c.js";import"./shared-272e7269.js";import"./shared-37391934.js";import"./shared-cd96ff03.js";import"./shared-12e531b8.js";import"./shared-90ddf541.js";import"./shared-39fc8fed.js";import"./shared-2e2d45c4.js";import"./shared-8c5b4c81.js";import"./shared-41e9ef02.js";import"./shared-7c819ebc.js";import"./foxy-collection-page.js";import"./foxy-spinner.js";import"./shared-bac00622.js";import"./shared-a0c6a159.js";import"./shared-99940888.js";import"./foxy-swipe-actions.js";import"./foxy-form-dialog.js";import"./shared-337f2fe9.js";import"./shared-8d7e2e2c.js";import"./shared-4e709717.js";import"./foxy-pagination.js";import"./shared-4885670b.js";import"./shared-0062cab1.js";import"./foxy-copy-to-clipboard.js";import"./shared-bab2ea2c.js";import"./shared-8452c492.js";import"./shared-f090c63a.js";import"./shared-91009494.js";import"./shared-62f3fc5a.js";import"./shared-b99daf13.js";import"./shared-e4403332.js";import"./shared-84215d13.js";import"./shared-5a18985c.js";import"./shared-651c44fa.js";import"./shared-1ab8b12e.js";import"./foxy-nucleon-element.js";import"./shared-9f5c636a.js";import"./shared-e2cbc382.js";import"./shared-fd95cd52.js";import"./shared-e10b5dca.js";import"./shared-6dfb57b1.js";let s,o,i,p,d,n,m=e=>e;const c=r(e,"payments-api-payment-preset-form");class h extends c{constructor(){super(...arguments),this.getFraudProtectionImageSrc=null,this.getPaymentMethodImageSrc=null,this.templates={},this.__getIsPOEnabledValue=()=>this.form.is_purchase_order_enabled?["true"]:[],this.__setIsPOEnabledValue=e=>{this.edit({is_purchase_order_enabled:e.includes("true")})},this.__getIsLiveValue=()=>this.form.is_live?["live"]:["test"],this.__setIsLiveValue=e=>{this.edit({is_live:e.includes("live")})}}static get properties(){return t(t({},super.properties),{},{getFraudProtectionImageSrc:{attribute:!1},getPaymentMethodImageSrc:{attribute:!1}})}static get v8n(){return[({description:e})=>!!e||"description:v8n_required",({description:e})=>e&&e.length<=100||"description:v8n_too_long"]}renderBody(){const e=this.constructor;return a(s||(s=m` <foxy-internal-text-control infer="description"></foxy-internal-text-control> <div class="-mb-s"> <foxy-internal-checkbox-group-control infer="is-live" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> <foxy-internal-checkbox-group-control infer="is-purchase-order-enabled" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> </div> ${0} ${0} `),this.__getIsLiveValue,this.__setIsLiveValue,e.__isLiveOptions,this.__getIsPOEnabledValue,this.__setIsPOEnabledValue,e.__isPOEnabledOptions,this.data?a(o||(o=m` <foxy-internal-async-list-control infer="payment-methods" first="${0}" limit="5" alert .item="${0}" .form="${0}"> </foxy-internal-async-list-control> <foxy-internal-async-list-control infer="fraud-protections" first="${0}" limit="5" .item="${0}" .form="${0}"> </foxy-internal-async-list-control> `),this.data._links["fx:payment_methods"].href,(e=>a(i||(i=m` <foxy-payments-api-payment-method-card parent="${0}" infer="payments-api-payment-method-card" href="${0}" .getImageSrc="${0}"> </foxy-payments-api-payment-method-card> `),e.parent,e.href,this.getPaymentMethodImageSrc)),(e=>a(p||(p=m` <foxy-payments-api-payment-method-form parent="${0}" infer="payments-api-payment-method-form" href="${0}" id="form" .getImageSrc="${0}" @fetch="${0}" @update="${0}"> </foxy-payments-api-payment-method-form> `),e.dialog.parent,e.dialog.href,this.getPaymentMethodImageSrc,e.handleFetch,e.handleUpdate)),this.data._links["fx:fraud_protections"].href,(e=>a(d||(d=m` <foxy-payments-api-fraud-protection-card parent="${0}" infer="payments-api-fraud-protection-card" href="${0}" .getImageSrc="${0}"> </foxy-payments-api-fraud-protection-card> `),e.parent,e.href,this.getFraudProtectionImageSrc)),(e=>a(n||(n=m` <foxy-payments-api-fraud-protection-form parent="${0}" infer="payments-api-fraud-protection-form" href="${0}" id="form" .getImageSrc="${0}" @fetch="${0}" @update="${0}"> </foxy-payments-api-fraud-protection-form> `),e.dialog.parent,e.dialog.href,this.getFraudProtectionImageSrc,e.handleFetch,e.handleUpdate))):"",super.renderBody())}}h.__isPOEnabledOptions=[{label:"option_true",value:"true"}],h.__isLiveOptions=[{label:"option_live",value:"live"}],customElements.define("foxy-payments-api-payment-preset-form",h);export{h as PaymentsApiPaymentPresetForm};
@@ -1 +1 @@
1
- import{L as e}from"./shared-dc73b9a5.js";import{F as t}from"./shared-343d1fd7.js";import{aM as a,aF as s,_ as n}from"./shared-b3db7611.js";import{A as r}from"./shared-482b2b86.js";async function o(e){const t=await e;if(!t.ok)throw new Error(await t.text());return t.json()}async function i(e){var t;let s,n;try{const{hostedPaymentGatewaysHelperUrl:r,paymentGatewaysHelperUrl:i,getPaymentMethodSetUrl:l,request:d,fetch:m}=e;if("GET"!==d.method)throw s=405,new Error("Method not allowed. Allowed methods: GET.");const p=a(/\/payment_presets\/(.+)\/available_payment_methods/,{presetId:1}).exec(new URL(d.url).pathname).groups.presetId,h=o(m(r)),y=o(m(i)),u=null===(t=(await o(m(l(p))))._links["fx:payment_gateway"])||void 0===t?void 0:t.href,f=u?await o(m(u)):void 0,c=function(e){const{hostedPaymentGatewaysHelper:t,paymentGatewaysHelper:a,paymentPresetId:s,paymentGateway:n,base:r}=e,o=new URL(`./payment_presets/${s}/available_payment_methods`,r),i={};return Object.entries(t.values).forEach((([e,t])=>{i[e]=t})),Object.entries(a.values).forEach((([e,t])=>{i[e]=t,n&&(i[e].conflict={type:n.type,name:n.description})})),{_links:{self:{href:o.toString()}},values:i}}({hostedPaymentGatewaysHelper:await h,paymentGatewaysHelper:await y,paymentPresetId:p,paymentGateway:f,base:new URL(d.url).origin});n=JSON.stringify(c),s=200}catch(e){n=e instanceof Error?e.message:String(e),s=null!=s?s:500}return new Response(n,{status:s})}function l(e){const{paymentPresetId:t,base:a}=e;return{_links:{self:{href:new URL(`./payment_presets/${t}/available_fraud_protections`,a).toString()}},values:{minfraud:{name:"MaxMind minFraud",uses_rejection_threshold:!0,json:null},google_recaptcha:{name:"Google reCAPTCHA",uses_rejection_threshold:!1,json:{blocks:[{id:"",parent_id:"",fields:[{id:"config",name:"Configuration",type:"select",description:"Determines how reCAPTCHA is configured to operate.",default_value:"disabled",options:[{name:"Disabled",value:"disabled"},{name:"Always enabled",value:"enabled_always"},{name:"Enabled by errors",value:"enabled_by_errors"}]},{id:"private_key",name:"Private Key",type:"text",optional:!0,description:"If using a custom subdomain, enter your Private Key here.",default_value:""},{id:"site_key",name:"Site Key",type:"text",optional:!0,description:"If using a custom subdomain, enter your Site Key here.",default_value:""}]}]}},custom_precheckout_hook:{name:"Pre-Checkout Webhook",uses_rejection_threshold:!1,json:{blocks:[{id:"",parent_id:"",fields:[{id:"enabled",name:"Enabled",type:"checkbox",default_value:!1},{id:"url",name:"URL",type:"text",description:"Url of your Pre-Checkout Hook",default_value:""},{id:"failure_handling",name:"Failure handling",type:"select",description:"Determines what happens to the checkout submission if your webhook fails to respond correctly.",default_value:"",options:[{name:"Reject",value:"reject"},{name:"Approve",value:"approve"}]}]}]}}}}}async function d(e){let t,s;try{const{request:n}=e;if("GET"!==n.method)throw t=405,new Error("Method not allowed. Allowed methods: GET.");const r=l({paymentPresetId:a(/\/payment_presets\/(.+)\/available_fraud_protections/,{presetId:1}).exec(new URL(n.url).pathname).groups.presetId,base:new URL(n.url).origin});s=JSON.stringify(r),t=200}catch(e){s=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(s,{status:t})}const m=["_links"];function p(e){const{paymentMethodSetFraudProtectionId:t,paymentPresetId:a,fraudProtection:r,base:o}=e,{_links:i}=r,d=s(r,m),p=l({paymentPresetId:a,base:o}),h=`${new URL(i.self.href).pathname.split("/").pop()}C${t}`,y=new URL(`./payment_presets/${a}`,o),u=new URL(`./payment_presets/${a}/fraud_protections/${h}`,o);return n(n({_links:{self:{href:u.toString()},"fx:store":i["fx:store"],"fx:payment_preset":{href:y.toString()}}},d),{},{helper:p.values[r.type]})}async function h(e){var t,s;let n,r;try{const{fraudProtectionsUrl:i,getPaymentMethodSetUrl:l,request:d,fetch:m}=e;if(!["GET","POST"].includes(d.method))throw n=405,new Error("Method not allowed. Allowed methods: GET, POST.");const h=new URL(d.url),y=a(/\/payment_presets\/(.+)\/fraud_protections/,{presetId:1}).exec(h.pathname).groups.presetId,u=await o(m(l(y)));if("GET"===d.method){const e=parseInt(null!==(t=h.searchParams.get("offset"))&&void 0!==t?t:"0"),a=parseInt(null!==(s=h.searchParams.get("limit"))&&void 0!==s?s:"20"),i=new URL(u._links["fx:payment_method_set_fraud_protections"].href);i.searchParams.set("offset",String(Math.max(0,e-1))),i.searchParams.set("limit",String(a));const l=await o(m(i.toString())),f=await Promise.all(l._embedded["fx:payment_method_set_fraud_protections"].map((async e=>o(m(e._links["fx:fraud_protection"].href))))),c=function(e){const{paymentMethodSetFraudProtections:t,fraudProtections:a,paymentPresetId:s,base:n}=e,r=new URL(`/payment_presets/${s}/fraud_protections`,n);r.search=new URL(t._links.self.href).search;const o=new URL(r.toString());o.search=new URL(t._links.first.href).search;const i=new URL(r.toString());i.search=new URL(t._links.last.href).search;const l=new URL(r.toString());l.search=new URL(t._links.prev.href).search;const d=new URL(r.toString());d.search=new URL(t._links.next.href).search;const m=a.map((e=>{const a=t._embedded["fx:payment_method_set_fraud_protections"].find((t=>t.fraud_protection_uri===e._links.self.href));return p({paymentMethodSetFraudProtectionId:new URL(a._links.self.href).pathname.split("/").pop(),fraudProtection:e,paymentPresetId:s,base:n})}));return{_links:{first:{href:o.toString()},last:{href:i.toString()},prev:{href:l.toString()},next:{href:d.toString()},self:{href:r.toString()}},_embedded:{"fx:fraud_protections":m},returned_items:t.returned_items,total_items:t.total_items,offset:t.offset,limit:t.limit}}({paymentMethodSetFraudProtections:l,fraudProtections:f,paymentPresetId:y,base:new URL(d.url).origin});n=200,r=JSON.stringify(c)}else{const e=await d.json();delete e.helper;const t=m(i,{method:"POST",body:JSON.stringify(e)}),a=await o(t),s=await o(m(u._links["fx:payment_method_set_fraud_protections"].href,{method:"POST",body:JSON.stringify({payment_method_set_uri:u._links.self.href,fraud_protection_uri:a._links.self.href})})),l=p({paymentMethodSetFraudProtectionId:new URL(s._links.self.href).pathname.split("/").pop(),fraudProtection:a,paymentPresetId:y,base:new URL(d.url).origin});n=200,r=JSON.stringify(l)}}catch(e){r=e instanceof Error?e.message:String(e),n=null!=n?n:500}return new Response(r,{status:n})}async function y(e){let t,s;try{const{getPaymentMethodSetUrl:n,getFraudProtectionUrl:r,request:i,fetch:l}=e;if(!["GET","PATCH","DELETE"].includes(i.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, PATCH, DELETE.");const d=a(/\/payment_presets\/(.+)\/fraud_protections\/(.+)/,{presetId:1,protectionId:2}),{presetId:m,protectionId:h}=d.exec(i.url).groups,y=n(m),u=h.substring(0,h.indexOf("C"));if("DELETE"===i.method){const e=(await o(l(y)))._links["fx:payment_method_set_fraud_protections"].href,t=new URL(e);t.searchParams.set("fraud_protection_id",u);const a=await o(l(t.toString())),s=a._embedded["fx:payment_method_set_fraud_protections"].map((e=>o(l(e._links.self.href,{method:"DELETE"}))));await Promise.all(s)}let f=await i.text();try{const e=JSON.parse(f);delete e.helper,f=JSON.stringify(e)}catch(e){}const c=l(r(u),{method:i.method,body:"PATCH"===i.method?f:null}),w=await o(c);s="DELETE"===i.method?JSON.stringify({message:"Fraud protection was successfully deleted."}):JSON.stringify(p({paymentMethodSetFraudProtectionId:h.substring(h.indexOf("C")+1),fraudProtection:w,paymentPresetId:m,base:new URL(i.url).origin}))}catch(e){s=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(s,{status:t})}const u=["_links"];function f(e){const{paymentPresetId:t,helper:a,base:r}=e,o="paymentGateway"in e?e.paymentGateway:e.hostedPaymentGateway,{_links:i}=o,l=s(o,u),d=new URL(i.self.href).pathname.split("/").pop();let m;m="paymentMethodSetHostedPaymentGatewayId"in e?`H${d}C${e.paymentMethodSetHostedPaymentGatewayId}`:`R${d}`;const p=new URL(`./payment_presets/${t}`,r),h=new URL(`./payment_presets/${t}/payment_methods/${m}`,r);return n(n({_links:{self:{href:h.toString()},"fx:store":i["fx:store"],"fx:payment_preset":{href:p.toString()}}},l),{},{helper:a})}async function c(e){var t,s,n,r;let i,l;try{const{hostedPaymentGatewaysHelperUrl:d,paymentGatewaysHelperUrl:m,hostedPaymentGatewaysUrl:p,getPaymentMethodSetUrl:h,paymentGatewaysUrl:y,request:u,fetch:c}=e;if(!["GET","POST"].includes(u.method))throw i=405,new Error("Method not allowed. Allowed methods: GET, POST.");const w=new URL(u.url),_=a(/\/payment_presets\/(.+)\/payment_methods/,{presetId:1}).exec(w.pathname).groups.presetId,[g,P,S]=await Promise.all([o(c(d)),o(c(m)),o(c(h(_)))]);if("GET"===u.method){const e=parseInt(null!==(t=w.searchParams.get("offset"))&&void 0!==t?t:"0"),a=parseInt(null!==(s=w.searchParams.get("limit"))&&void 0!==s?s:"20"),r=new URL(S._links["fx:payment_method_set_hosted_payment_gateways"].href);r.searchParams.set("offset",String(Math.max(0,e-1))),r.searchParams.set("limit",String(a));const d=null===(n=S._links["fx:payment_gateway"])||void 0===n?void 0:n.href,[m,p]=await Promise.all([d&&0===e?o(c(d)):null,o(c(r.toString()))]),h=await Promise.all(p._embedded["fx:payment_method_set_hosted_payment_gateways"].map((async e=>o(c(e._links["fx:hosted_payment_gateway"].href))))),y=function(e){var t,a;const{paymentMethodSetHostedPaymentGateways:s,hostedPaymentGatewaysHelper:n,hostedPaymentGateways:r,paymentGatewaysHelper:o,paymentPresetId:i,paymentGateway:l,query:d,base:m}=e,p=new URLSearchParams(d),h=parseInt(null!==(t=p.get("offset"))&&void 0!==t?t:"0"),y=parseInt(null!==(a=p.get("limit"))&&void 0!==a?a:"20"),u=s.total_items+(l?1:0),c=s.returned_items+(l&&"not-on-page"!==l?1:0),w=new URL(`/payment_presets/${i}/payment_methods`,m);w.search=d;const _=new URL(w.toString()),g=new URL(w.toString()),P=new URL(w.toString()),S=new URL(w.toString());_.searchParams.set("limit",String(y)),_.searchParams.set("offset",String(h)),g.searchParams.set("limit",String(y)),g.searchParams.set("offset",String(Math.max(0,u-y))),P.searchParams.set("limit",String(y)),P.searchParams.set("offset",String(Math.max(0,h-y))),S.searchParams.set("limit",String(y)),S.searchParams.set("offset",String(Math.min(h+y,Math.max(0,u-y))));const U=[...l&&"not-on-page"!==l?[l]:[],...r].map((e=>{const t=s._embedded["fx:payment_method_set_hosted_payment_gateways"].find((t=>t.hosted_payment_gateway_uri===e._links.self.href));return f(t?{paymentMethodSetHostedPaymentGatewayId:new URL(t._links.self.href).pathname.split("/").pop(),hostedPaymentGateway:e,paymentPresetId:i,helper:n.values[e.type],base:m}:{paymentPresetId:i,paymentGateway:e,helper:o.values[e.type],base:m})}));return{_links:{first:{href:_.toString()},last:{href:g.toString()},prev:{href:P.toString()},next:{href:S.toString()},self:{href:w.toString()}},_embedded:{"fx:payment_methods":U},returned_items:c,total_items:u,offset:h,limit:y}}({paymentMethodSetHostedPaymentGateways:p,hostedPaymentGatewaysHelper:g,paymentGatewaysHelper:P,hostedPaymentGateways:h,paymentPresetId:_,paymentGateway:m||(d?"not-on-page":void 0),query:new URL(u.url).search,base:new URL(u.url).origin});i=200,l=JSON.stringify(y)}else{const e=await u.clone().json(),t=!!g.values[null!==(r=e.type)&&void 0!==r?r:""];if(delete e.helper,t){const t=await o(c(p,{method:"POST",body:JSON.stringify(e)})),a=await o(c(S._links["fx:payment_method_set_hosted_payment_gateways"].href,{method:"POST",body:JSON.stringify({payment_method_set_uri:S._links.self.href,hosted_payment_gateway_uri:t._links.self.href})})),s=f({paymentMethodSetHostedPaymentGatewayId:new URL(a._links.self.href).pathname.split("/").pop(),hostedPaymentGateway:t,paymentPresetId:_,helper:g.values[t.type],base:new URL(u.url).origin});i=200,l=JSON.stringify(s)}else{const t=c(y,{method:u.method,body:JSON.stringify(e)}),a=await o(t),s={gateway_uri:a._links.self.href};await Promise.all([o(c(S._links.self.href,{method:"PATCH",body:JSON.stringify(s)})),S.gateway_uri?o(c(S.gateway_uri,{method:"DELETE"})):null]);const n=f({paymentPresetId:_,paymentGateway:a,helper:P.values[a.type],base:new URL(u.url).origin});i=200,l=JSON.stringify(n)}}}catch(e){l=e instanceof Error?e.message:String(e),i=null!=i?i:500}return new Response(l,{status:i})}const w=["_links"];function _(e){const{paymentMethodSet:t,base:a}=e,{_links:r}=t,o=s(t,w),i=new URL(t._links.self.href).pathname.split("/").pop(),l=new URL(`./payment_presets/${i}`,a),d=new URL(`./payment_presets/${i}/payment_methods`,a),m=new URL(`./payment_presets/${i}/fraud_protections`,a),p=new URL(`./payment_presets/${i}/available_payment_methods`,a),h=new URL(`./payment_presets/${i}/available_fraud_protections`,a);return n({_links:{self:{href:l.toString()},"fx:store":r["fx:store"],"fx:payment_methods":{href:d.toString()},"fx:fraud_protections":{href:m.toString()},"fx:available_payment_methods":{href:p.toString()},"fx:available_fraud_protections":{href:h.toString()}}},o)}const g=["_embedded","_links"];async function P(e){let t,a;try{const{paymentMethodSetsUrl:r,request:i,fetch:l}=e;if(!["GET","POST"].includes(i.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, POST.");const d=new URL(i.url),m=new URL(r);let p;if(m.search=d.search,"POST"===i.method){const e=l(m.toString(),{method:"POST",body:await i.text()});p=_({paymentMethodSet:await o(e),base:d.origin})}else p=function(e){const{paymentMethodSets:t,base:a}=e,{_embedded:r,_links:o}=t,i=s(t,g),l=new URL("./payment_presets",a),d=new URL(o.first.href);l.search=d.search;const m=new URL("./payment_presets",a),p=new URL(o.last.href);m.search=p.search;const h=new URL("./payment_presets",a),y=new URL(o.prev.href);h.search=y.search;const u=new URL("./payment_presets",a),f=new URL(o.next.href);u.search=f.search;const c=new URL("./payment_presets",a),w=new URL(o.self.href);return c.search=w.search,n(n({},i),{},{_links:{first:{href:l.toString()},last:{href:m.toString()},prev:{href:h.toString()},next:{href:u.toString()},self:{href:c.toString()}},_embedded:{"fx:payment_presets":r["fx:payment_method_sets"].map((e=>_({paymentMethodSet:e,base:a})))}})}({paymentMethodSets:await o(l(m.toString())),base:d.origin});a=JSON.stringify(p),t=200}catch(e){a=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(a,{status:t})}async function S(e){let t,s;try{const{getPaymentMethodSetUrl:n,request:r,fetch:i}=e;if(!["GET","PATCH","DELETE"].includes(r.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, PATCH, DELETE.");const l=a(/payment_presets\/(.+)/,{presetId:1}).exec(r.url).groups.presetId,d=new URL(r.url),m=new URL(n(l));m.search=d.search;const p=await o(i(m.toString(),{method:r.method,body:"PATCH"===r.method?await r.text():null}));s="DELETE"===r.method?JSON.stringify({message:"Payment preset was successfully deleted."}):JSON.stringify(_({paymentMethodSet:p,base:new URL(r.url).origin}))}catch(e){s=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(s,{status:t})}async function U(e){let t,s;try{const{hostedPaymentGatewaysHelperUrl:n,paymentGatewaysHelperUrl:r,getPaymentMethodSetHostedPaymentGatewayUrl:i,getHostedPaymentGatewayUrl:l,getPaymentMethodSetUrl:d,getPaymentGatewayUrl:m,request:p,fetch:h}=e;if(!["GET","PATCH","DELETE"].includes(p.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, PATCH, DELETE.");const y=a(/\/payment_presets\/(.+)\/payment_methods\/(.+)/,{presetId:1,methodId:2}),{presetId:u,methodId:c}=y.exec(p.url).groups,w=c.startsWith("H"),_=d(u),g=c.substring(1,w?c.indexOf("C"):void 0),P=o(h(n)),S=o(h(r));if("DELETE"===p.method)if(w){const e=i(c.substring(c.indexOf("C")+1));await o(h(e,{method:"DELETE"}))}else{const e={gateway_uri:""},t=JSON.stringify(e);await o(h(_,{method:"PATCH",body:t}))}let U=await p.text();try{const e=JSON.parse(U);delete e.helper,U=JSON.stringify(e)}catch(e){}if(w){const e=h(l(g),{method:p.method,body:"PATCH"===p.method?U:null}),t=await P,a=await o(e);s="DELETE"===p.method?JSON.stringify({message:"Payment method was successfully deleted."}):JSON.stringify(f({paymentMethodSetHostedPaymentGatewayId:c.substring(c.indexOf("C")+1),hostedPaymentGateway:a,paymentPresetId:u,helper:t.values[a.type],base:new URL(p.url).origin}))}else{const e=h(m(g),{method:p.method,body:"PATCH"===p.method?U:null}),t=await S,a=await o(e);s="DELETE"===p.method?JSON.stringify({message:"Payment method was successfully deleted."}):JSON.stringify(f({paymentGateway:a,paymentPresetId:u,helper:t.values[a.type],base:new URL(p.url).origin}))}}catch(e){s=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(s,{status:t})}class b extends e{constructor(){super(...arguments),this.paymentMethodSetHostedPaymentGatewayBaseUrl=null,this.paymentMethodSetHostedPaymentGatewaysUrl=null,this.hostedPaymentGatewaysHelperUrl=null,this.hostedPaymentGatewayBaseUrl=null,this.hostedPaymentGatewaysUrl=null,this.paymentGatewaysHelperUrl=null,this.paymentMethodSetBaseUrl=null,this.paymentMethodSetsUrl=null,this.fraudProtectionBaseUrl=null,this.fraudProtectionsUrl=null,this.paymentGatewayBaseUrl=null,this.paymentGatewaysUrl=null,this.__api=new r(this),this.__fetch=this.__api.fetch.bind(this.__api),this.__handleFetch=e=>{var s,n,r,o,l;if(!(e instanceof t))return;if(!e.request.url.startsWith("https://foxy-payments-api.element/"))return;if(e.defaultPrevented)return;const{paymentMethodSetHostedPaymentGatewaysUrl:m,hostedPaymentGatewaysHelperUrl:p,paymentGatewaysHelperUrl:u,hostedPaymentGatewaysUrl:f,paymentMethodSetsUrl:w,fraudProtectionsUrl:_,paymentGatewaysUrl:g}=this,b=null!==(s=this.paymentMethodSetHostedPaymentGatewayBaseUrl)&&void 0!==s?s:this.paymentMethodSetHostedPaymentGatewaysUrl,G=null!==(n=this.hostedPaymentGatewayBaseUrl)&&void 0!==n?n:this.hostedPaymentGatewaysUrl,L=null!==(r=this.paymentMethodSetBaseUrl)&&void 0!==r?r:this.paymentMethodSetsUrl,E=null!==(o=this.fraudProtectionBaseUrl)&&void 0!==o?o:this.fraudProtectionsUrl,R=null!==(l=this.paymentGatewayBaseUrl)&&void 0!==l?l:this.paymentGatewaysUrl;if(null===m)return;if(null===b)return;if(null===p)return;if(null===u)return;if(null===f)return;if(null===G)return;if(null===w)return;if(null===L)return;if(null===_)return;if(null===E)return;if(null===g)return;if(null===R)return;const v=e=>t=>{const a=new URL(e);return a.pathname.endsWith("/")||(a.pathname+="/"),a.pathname+=t,a.toString()},x=function(e){const t=[[a(/\/payment_presets\/(.+)\/payment_methods\/(.+)/,{presetId:1,methodId:2}),U],[a(/\/payment_presets\/(.+)\/available_fraud_protections/,{presetId:1}),d],[a(/\/payment_presets\/(.+)\/available_payment_methods/,{presetId:1}),i],[a(/\/payment_presets\/(.+)\/fraud_protections\/(.+)/,{presetId:1,protectionId:2}),y],[a(/\/payment_presets\/(.+)\/fraud_protections/,{presetId:1}),h],[a(/\/payment_presets\/(.+)\/payment_methods/,{presetId:1}),c],[a(/\/payment_presets\/(.+)/,{presetId:1}),S],[/\/payment_presets/,P]];for(const[a,s]of t)if(a.test(new URL(e.request.url).pathname))return s(e);return null}({hostedPaymentGatewaysHelperUrl:p,paymentGatewaysHelperUrl:u,hostedPaymentGatewaysUrl:f,paymentMethodSetsUrl:w,fraudProtectionsUrl:_,paymentGatewaysUrl:g,getPaymentMethodSetHostedPaymentGatewayUrl:v(m),getHostedPaymentGatewayUrl:v(G),getPaymentMethodSetUrl:v(L),getFraudProtectionUrl:v(E),getPaymentGatewayUrl:v(R),request:e.request,fetch:this.__fetch});x&&(e.preventDefault(),e.respondWith(x))}}static get properties(){return{paymentMethodSetHostedPaymentGatewayBaseUrl:{attribute:"payment-method-set-hosted-payment-gateway-base-url"},paymentMethodSetHostedPaymentGatewaysUrl:{attribute:"payment-method-set-hosted-payment-gateways-url"},hostedPaymentGatewaysHelperUrl:{attribute:"hosted-payment-gateways-helper-url"},hostedPaymentGatewayBaseUrl:{attribute:"hosted-payment-gateway-base-url"},hostedPaymentGatewaysUrl:{attribute:"hosted-payment-gateways-url"},paymentGatewaysHelperUrl:{attribute:"payment-gateways-helper-url"},paymentMethodSetBaseUrl:{attribute:"payment-method-set-base-url"},paymentMethodSetsUrl:{attribute:"payment-method-sets-url"},fraudProtectionBaseUrl:{attribute:"fraud-protection-base-url"},fraudProtectionsUrl:{attribute:"fraud-protections-url"},paymentGatewayBaseUrl:{attribute:"payment-gateway-base-url"},paymentGatewaysUrl:{attribute:"payment-gateways-url"}}}connectedCallback(){super.connectedCallback(),this.addEventListener("fetch",this.__handleFetch)}createRenderRoot(){return this}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("fetch",this.__handleFetch)}}customElements.define("foxy-payments-api",b);export{b as PaymentsApi};
1
+ import{L as e}from"./shared-dc73b9a5.js";import{F as t}from"./shared-343d1fd7.js";import{aM as a,aF as s,_ as n}from"./shared-3c58ddf1.js";import{A as r}from"./shared-37391934.js";async function o(e){const t=await e;if(!t.ok)throw new Error(await t.text());return t.json()}async function i(e){var t;let s,n;try{const{hostedPaymentGatewaysHelperUrl:r,paymentGatewaysHelperUrl:i,getPaymentMethodSetUrl:l,request:d,fetch:m}=e;if("GET"!==d.method)throw s=405,new Error("Method not allowed. Allowed methods: GET.");const p=a(/\/payment_presets\/(.+)\/available_payment_methods/,{presetId:1}).exec(new URL(d.url).pathname).groups.presetId,h=o(m(r)),y=o(m(i)),u=null===(t=(await o(m(l(p))))._links["fx:payment_gateway"])||void 0===t?void 0:t.href,f=u?await o(m(u)):void 0,c=function(e){const{hostedPaymentGatewaysHelper:t,paymentGatewaysHelper:a,paymentPresetId:s,paymentGateway:n,base:r}=e,o=new URL(`./payment_presets/${s}/available_payment_methods`,r),i={};return Object.entries(t.values).forEach((([e,t])=>{i[e]=t})),Object.entries(a.values).forEach((([e,t])=>{i[e]=t,n&&(i[e].conflict={type:n.type,name:n.description})})),{_links:{self:{href:o.toString()}},values:i}}({hostedPaymentGatewaysHelper:await h,paymentGatewaysHelper:await y,paymentPresetId:p,paymentGateway:f,base:new URL(d.url).origin});n=JSON.stringify(c),s=200}catch(e){n=e instanceof Error?e.message:String(e),s=null!=s?s:500}return new Response(n,{status:s})}function l(e){const{paymentPresetId:t,base:a}=e;return{_links:{self:{href:new URL(`./payment_presets/${t}/available_fraud_protections`,a).toString()}},values:{minfraud:{name:"MaxMind minFraud",uses_rejection_threshold:!0,json:null},google_recaptcha:{name:"Google reCAPTCHA",uses_rejection_threshold:!1,json:{blocks:[{id:"",parent_id:"",fields:[{id:"config",name:"Configuration",type:"select",description:"Determines how reCAPTCHA is configured to operate.",default_value:"disabled",options:[{name:"Disabled",value:"disabled"},{name:"Always enabled",value:"enabled_always"},{name:"Enabled by errors",value:"enabled_by_errors"}]},{id:"private_key",name:"Private Key",type:"text",optional:!0,description:"If using a custom subdomain, enter your Private Key here.",default_value:""},{id:"site_key",name:"Site Key",type:"text",optional:!0,description:"If using a custom subdomain, enter your Site Key here.",default_value:""}]}]}},custom_precheckout_hook:{name:"Pre-Checkout Webhook",uses_rejection_threshold:!1,json:{blocks:[{id:"",parent_id:"",fields:[{id:"enabled",name:"Enabled",type:"checkbox",default_value:!1},{id:"url",name:"URL",type:"text",description:"Url of your Pre-Checkout Hook",default_value:""},{id:"failure_handling",name:"Failure handling",type:"select",description:"Determines what happens to the checkout submission if your webhook fails to respond correctly.",default_value:"",options:[{name:"Reject",value:"reject"},{name:"Approve",value:"approve"}]}]}]}}}}}async function d(e){let t,s;try{const{request:n}=e;if("GET"!==n.method)throw t=405,new Error("Method not allowed. Allowed methods: GET.");const r=l({paymentPresetId:a(/\/payment_presets\/(.+)\/available_fraud_protections/,{presetId:1}).exec(new URL(n.url).pathname).groups.presetId,base:new URL(n.url).origin});s=JSON.stringify(r),t=200}catch(e){s=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(s,{status:t})}const m=["_links"];function p(e){const{paymentMethodSetFraudProtectionId:t,paymentPresetId:a,fraudProtection:r,base:o}=e,{_links:i}=r,d=s(r,m),p=l({paymentPresetId:a,base:o}),h=`${new URL(i.self.href).pathname.split("/").pop()}C${t}`,y=new URL(`./payment_presets/${a}`,o),u=new URL(`./payment_presets/${a}/fraud_protections/${h}`,o);return n(n({_links:{self:{href:u.toString()},"fx:store":i["fx:store"],"fx:payment_preset":{href:y.toString()}}},d),{},{helper:p.values[r.type]})}async function h(e){var t,s;let n,r;try{const{fraudProtectionsUrl:i,getPaymentMethodSetUrl:l,request:d,fetch:m}=e;if(!["GET","POST"].includes(d.method))throw n=405,new Error("Method not allowed. Allowed methods: GET, POST.");const h=new URL(d.url),y=a(/\/payment_presets\/(.+)\/fraud_protections/,{presetId:1}).exec(h.pathname).groups.presetId,u=await o(m(l(y)));if("GET"===d.method){const e=parseInt(null!==(t=h.searchParams.get("offset"))&&void 0!==t?t:"0"),a=parseInt(null!==(s=h.searchParams.get("limit"))&&void 0!==s?s:"20"),i=new URL(u._links["fx:payment_method_set_fraud_protections"].href);i.searchParams.set("offset",String(Math.max(0,e-1))),i.searchParams.set("limit",String(a));const l=await o(m(i.toString())),f=await Promise.all(l._embedded["fx:payment_method_set_fraud_protections"].map((async e=>o(m(e._links["fx:fraud_protection"].href))))),c=function(e){const{paymentMethodSetFraudProtections:t,fraudProtections:a,paymentPresetId:s,base:n}=e,r=new URL(`/payment_presets/${s}/fraud_protections`,n);r.search=new URL(t._links.self.href).search;const o=new URL(r.toString());o.search=new URL(t._links.first.href).search;const i=new URL(r.toString());i.search=new URL(t._links.last.href).search;const l=new URL(r.toString());l.search=new URL(t._links.prev.href).search;const d=new URL(r.toString());d.search=new URL(t._links.next.href).search;const m=a.map((e=>{const a=t._embedded["fx:payment_method_set_fraud_protections"].find((t=>t.fraud_protection_uri===e._links.self.href));return p({paymentMethodSetFraudProtectionId:new URL(a._links.self.href).pathname.split("/").pop(),fraudProtection:e,paymentPresetId:s,base:n})}));return{_links:{first:{href:o.toString()},last:{href:i.toString()},prev:{href:l.toString()},next:{href:d.toString()},self:{href:r.toString()}},_embedded:{"fx:fraud_protections":m},returned_items:t.returned_items,total_items:t.total_items,offset:t.offset,limit:t.limit}}({paymentMethodSetFraudProtections:l,fraudProtections:f,paymentPresetId:y,base:new URL(d.url).origin});n=200,r=JSON.stringify(c)}else{const e=await d.json();delete e.helper;const t=m(i,{method:"POST",body:JSON.stringify(e)}),a=await o(t),s=await o(m(u._links["fx:payment_method_set_fraud_protections"].href,{method:"POST",body:JSON.stringify({payment_method_set_uri:u._links.self.href,fraud_protection_uri:a._links.self.href})})),l=p({paymentMethodSetFraudProtectionId:new URL(s._links.self.href).pathname.split("/").pop(),fraudProtection:a,paymentPresetId:y,base:new URL(d.url).origin});n=200,r=JSON.stringify(l)}}catch(e){r=e instanceof Error?e.message:String(e),n=null!=n?n:500}return new Response(r,{status:n})}async function y(e){let t,s;try{const{getPaymentMethodSetUrl:n,getFraudProtectionUrl:r,request:i,fetch:l}=e;if(!["GET","PATCH","DELETE"].includes(i.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, PATCH, DELETE.");const d=a(/\/payment_presets\/(.+)\/fraud_protections\/(.+)/,{presetId:1,protectionId:2}),{presetId:m,protectionId:h}=d.exec(i.url).groups,y=n(m),u=h.substring(0,h.indexOf("C"));if("DELETE"===i.method){const e=(await o(l(y)))._links["fx:payment_method_set_fraud_protections"].href,t=new URL(e);t.searchParams.set("fraud_protection_id",u);const a=await o(l(t.toString())),s=a._embedded["fx:payment_method_set_fraud_protections"].map((e=>o(l(e._links.self.href,{method:"DELETE"}))));await Promise.all(s)}let f=await i.text();try{const e=JSON.parse(f);delete e.helper,f=JSON.stringify(e)}catch(e){}const c=l(r(u),{method:i.method,body:"PATCH"===i.method?f:null}),w=await o(c);s="DELETE"===i.method?JSON.stringify({message:"Fraud protection was successfully deleted."}):JSON.stringify(p({paymentMethodSetFraudProtectionId:h.substring(h.indexOf("C")+1),fraudProtection:w,paymentPresetId:m,base:new URL(i.url).origin}))}catch(e){s=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(s,{status:t})}const u=["_links"];function f(e){const{paymentPresetId:t,helper:a,base:r}=e,o="paymentGateway"in e?e.paymentGateway:e.hostedPaymentGateway,{_links:i}=o,l=s(o,u),d=new URL(i.self.href).pathname.split("/").pop();let m;m="paymentMethodSetHostedPaymentGatewayId"in e?`H${d}C${e.paymentMethodSetHostedPaymentGatewayId}`:`R${d}`;const p=new URL(`./payment_presets/${t}`,r),h=new URL(`./payment_presets/${t}/payment_methods/${m}`,r);return n(n({_links:{self:{href:h.toString()},"fx:store":i["fx:store"],"fx:payment_preset":{href:p.toString()}}},l),{},{helper:a})}async function c(e){var t,s,n,r;let i,l;try{const{hostedPaymentGatewaysHelperUrl:d,paymentGatewaysHelperUrl:m,hostedPaymentGatewaysUrl:p,getPaymentMethodSetUrl:h,paymentGatewaysUrl:y,request:u,fetch:c}=e;if(!["GET","POST"].includes(u.method))throw i=405,new Error("Method not allowed. Allowed methods: GET, POST.");const w=new URL(u.url),_=a(/\/payment_presets\/(.+)\/payment_methods/,{presetId:1}).exec(w.pathname).groups.presetId,[g,P,S]=await Promise.all([o(c(d)),o(c(m)),o(c(h(_)))]);if("GET"===u.method){const e=parseInt(null!==(t=w.searchParams.get("offset"))&&void 0!==t?t:"0"),a=parseInt(null!==(s=w.searchParams.get("limit"))&&void 0!==s?s:"20"),r=new URL(S._links["fx:payment_method_set_hosted_payment_gateways"].href);r.searchParams.set("offset",String(Math.max(0,e-1))),r.searchParams.set("limit",String(a));const d=null===(n=S._links["fx:payment_gateway"])||void 0===n?void 0:n.href,[m,p]=await Promise.all([d&&0===e?o(c(d)):null,o(c(r.toString()))]),h=await Promise.all(p._embedded["fx:payment_method_set_hosted_payment_gateways"].map((async e=>o(c(e._links["fx:hosted_payment_gateway"].href))))),y=function(e){var t,a;const{paymentMethodSetHostedPaymentGateways:s,hostedPaymentGatewaysHelper:n,hostedPaymentGateways:r,paymentGatewaysHelper:o,paymentPresetId:i,paymentGateway:l,query:d,base:m}=e,p=new URLSearchParams(d),h=parseInt(null!==(t=p.get("offset"))&&void 0!==t?t:"0"),y=parseInt(null!==(a=p.get("limit"))&&void 0!==a?a:"20"),u=s.total_items+(l?1:0),c=s.returned_items+(l&&"not-on-page"!==l?1:0),w=new URL(`/payment_presets/${i}/payment_methods`,m);w.search=d;const _=new URL(w.toString()),g=new URL(w.toString()),P=new URL(w.toString()),S=new URL(w.toString());_.searchParams.set("limit",String(y)),_.searchParams.set("offset",String(h)),g.searchParams.set("limit",String(y)),g.searchParams.set("offset",String(Math.max(0,u-y))),P.searchParams.set("limit",String(y)),P.searchParams.set("offset",String(Math.max(0,h-y))),S.searchParams.set("limit",String(y)),S.searchParams.set("offset",String(Math.min(h+y,Math.max(0,u-y))));const U=[...l&&"not-on-page"!==l?[l]:[],...r].map((e=>{const t=s._embedded["fx:payment_method_set_hosted_payment_gateways"].find((t=>t.hosted_payment_gateway_uri===e._links.self.href));return f(t?{paymentMethodSetHostedPaymentGatewayId:new URL(t._links.self.href).pathname.split("/").pop(),hostedPaymentGateway:e,paymentPresetId:i,helper:n.values[e.type],base:m}:{paymentPresetId:i,paymentGateway:e,helper:o.values[e.type],base:m})}));return{_links:{first:{href:_.toString()},last:{href:g.toString()},prev:{href:P.toString()},next:{href:S.toString()},self:{href:w.toString()}},_embedded:{"fx:payment_methods":U},returned_items:c,total_items:u,offset:h,limit:y}}({paymentMethodSetHostedPaymentGateways:p,hostedPaymentGatewaysHelper:g,paymentGatewaysHelper:P,hostedPaymentGateways:h,paymentPresetId:_,paymentGateway:m||(d?"not-on-page":void 0),query:new URL(u.url).search,base:new URL(u.url).origin});i=200,l=JSON.stringify(y)}else{const e=await u.clone().json(),t=!!g.values[null!==(r=e.type)&&void 0!==r?r:""];if(delete e.helper,t){const t=await o(c(p,{method:"POST",body:JSON.stringify(e)})),a=await o(c(S._links["fx:payment_method_set_hosted_payment_gateways"].href,{method:"POST",body:JSON.stringify({payment_method_set_uri:S._links.self.href,hosted_payment_gateway_uri:t._links.self.href})})),s=f({paymentMethodSetHostedPaymentGatewayId:new URL(a._links.self.href).pathname.split("/").pop(),hostedPaymentGateway:t,paymentPresetId:_,helper:g.values[t.type],base:new URL(u.url).origin});i=200,l=JSON.stringify(s)}else{const t=c(y,{method:u.method,body:JSON.stringify(e)}),a=await o(t),s={gateway_uri:a._links.self.href};await Promise.all([o(c(S._links.self.href,{method:"PATCH",body:JSON.stringify(s)})),S.gateway_uri?o(c(S.gateway_uri,{method:"DELETE"})):null]);const n=f({paymentPresetId:_,paymentGateway:a,helper:P.values[a.type],base:new URL(u.url).origin});i=200,l=JSON.stringify(n)}}}catch(e){l=e instanceof Error?e.message:String(e),i=null!=i?i:500}return new Response(l,{status:i})}const w=["_links"];function _(e){const{paymentMethodSet:t,base:a}=e,{_links:r}=t,o=s(t,w),i=new URL(t._links.self.href).pathname.split("/").pop(),l=new URL(`./payment_presets/${i}`,a),d=new URL(`./payment_presets/${i}/payment_methods`,a),m=new URL(`./payment_presets/${i}/fraud_protections`,a),p=new URL(`./payment_presets/${i}/available_payment_methods`,a),h=new URL(`./payment_presets/${i}/available_fraud_protections`,a);return n({_links:{self:{href:l.toString()},"fx:store":r["fx:store"],"fx:payment_methods":{href:d.toString()},"fx:fraud_protections":{href:m.toString()},"fx:available_payment_methods":{href:p.toString()},"fx:available_fraud_protections":{href:h.toString()}}},o)}const g=["_embedded","_links"];async function P(e){let t,a;try{const{paymentMethodSetsUrl:r,request:i,fetch:l}=e;if(!["GET","POST"].includes(i.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, POST.");const d=new URL(i.url),m=new URL(r);let p;if(m.search=d.search,"POST"===i.method){const e=l(m.toString(),{method:"POST",body:await i.text()});p=_({paymentMethodSet:await o(e),base:d.origin})}else p=function(e){const{paymentMethodSets:t,base:a}=e,{_embedded:r,_links:o}=t,i=s(t,g),l=new URL("./payment_presets",a),d=new URL(o.first.href);l.search=d.search;const m=new URL("./payment_presets",a),p=new URL(o.last.href);m.search=p.search;const h=new URL("./payment_presets",a),y=new URL(o.prev.href);h.search=y.search;const u=new URL("./payment_presets",a),f=new URL(o.next.href);u.search=f.search;const c=new URL("./payment_presets",a),w=new URL(o.self.href);return c.search=w.search,n(n({},i),{},{_links:{first:{href:l.toString()},last:{href:m.toString()},prev:{href:h.toString()},next:{href:u.toString()},self:{href:c.toString()}},_embedded:{"fx:payment_presets":r["fx:payment_method_sets"].map((e=>_({paymentMethodSet:e,base:a})))}})}({paymentMethodSets:await o(l(m.toString())),base:d.origin});a=JSON.stringify(p),t=200}catch(e){a=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(a,{status:t})}async function S(e){let t,s;try{const{getPaymentMethodSetUrl:n,request:r,fetch:i}=e;if(!["GET","PATCH","DELETE"].includes(r.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, PATCH, DELETE.");const l=a(/payment_presets\/(.+)/,{presetId:1}).exec(r.url).groups.presetId,d=new URL(r.url),m=new URL(n(l));m.search=d.search;const p=await o(i(m.toString(),{method:r.method,body:"PATCH"===r.method?await r.text():null}));s="DELETE"===r.method?JSON.stringify({message:"Payment preset was successfully deleted."}):JSON.stringify(_({paymentMethodSet:p,base:new URL(r.url).origin}))}catch(e){s=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(s,{status:t})}async function U(e){let t,s;try{const{hostedPaymentGatewaysHelperUrl:n,paymentGatewaysHelperUrl:r,getPaymentMethodSetHostedPaymentGatewayUrl:i,getHostedPaymentGatewayUrl:l,getPaymentMethodSetUrl:d,getPaymentGatewayUrl:m,request:p,fetch:h}=e;if(!["GET","PATCH","DELETE"].includes(p.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, PATCH, DELETE.");const y=a(/\/payment_presets\/(.+)\/payment_methods\/(.+)/,{presetId:1,methodId:2}),{presetId:u,methodId:c}=y.exec(p.url).groups,w=c.startsWith("H"),_=d(u),g=c.substring(1,w?c.indexOf("C"):void 0),P=o(h(n)),S=o(h(r));if("DELETE"===p.method)if(w){const e=i(c.substring(c.indexOf("C")+1));await o(h(e,{method:"DELETE"}))}else{const e={gateway_uri:""},t=JSON.stringify(e);await o(h(_,{method:"PATCH",body:t}))}let U=await p.text();try{const e=JSON.parse(U);delete e.helper,U=JSON.stringify(e)}catch(e){}if(w){const e=h(l(g),{method:p.method,body:"PATCH"===p.method?U:null}),t=await P,a=await o(e);s="DELETE"===p.method?JSON.stringify({message:"Payment method was successfully deleted."}):JSON.stringify(f({paymentMethodSetHostedPaymentGatewayId:c.substring(c.indexOf("C")+1),hostedPaymentGateway:a,paymentPresetId:u,helper:t.values[a.type],base:new URL(p.url).origin}))}else{const e=h(m(g),{method:p.method,body:"PATCH"===p.method?U:null}),t=await S,a=await o(e);s="DELETE"===p.method?JSON.stringify({message:"Payment method was successfully deleted."}):JSON.stringify(f({paymentGateway:a,paymentPresetId:u,helper:t.values[a.type],base:new URL(p.url).origin}))}}catch(e){s=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(s,{status:t})}class b extends e{constructor(){super(...arguments),this.paymentMethodSetHostedPaymentGatewayBaseUrl=null,this.paymentMethodSetHostedPaymentGatewaysUrl=null,this.hostedPaymentGatewaysHelperUrl=null,this.hostedPaymentGatewayBaseUrl=null,this.hostedPaymentGatewaysUrl=null,this.paymentGatewaysHelperUrl=null,this.paymentMethodSetBaseUrl=null,this.paymentMethodSetsUrl=null,this.fraudProtectionBaseUrl=null,this.fraudProtectionsUrl=null,this.paymentGatewayBaseUrl=null,this.paymentGatewaysUrl=null,this.__api=new r(this),this.__fetch=this.__api.fetch.bind(this.__api),this.__handleFetch=e=>{var s,n,r,o,l;if(!(e instanceof t))return;if(!e.request.url.startsWith("https://foxy-payments-api.element/"))return;if(e.defaultPrevented)return;const{paymentMethodSetHostedPaymentGatewaysUrl:m,hostedPaymentGatewaysHelperUrl:p,paymentGatewaysHelperUrl:u,hostedPaymentGatewaysUrl:f,paymentMethodSetsUrl:w,fraudProtectionsUrl:_,paymentGatewaysUrl:g}=this,b=null!==(s=this.paymentMethodSetHostedPaymentGatewayBaseUrl)&&void 0!==s?s:this.paymentMethodSetHostedPaymentGatewaysUrl,G=null!==(n=this.hostedPaymentGatewayBaseUrl)&&void 0!==n?n:this.hostedPaymentGatewaysUrl,L=null!==(r=this.paymentMethodSetBaseUrl)&&void 0!==r?r:this.paymentMethodSetsUrl,E=null!==(o=this.fraudProtectionBaseUrl)&&void 0!==o?o:this.fraudProtectionsUrl,R=null!==(l=this.paymentGatewayBaseUrl)&&void 0!==l?l:this.paymentGatewaysUrl;if(null===m)return;if(null===b)return;if(null===p)return;if(null===u)return;if(null===f)return;if(null===G)return;if(null===w)return;if(null===L)return;if(null===_)return;if(null===E)return;if(null===g)return;if(null===R)return;const v=e=>t=>{const a=new URL(e);return a.pathname.endsWith("/")||(a.pathname+="/"),a.pathname+=t,a.toString()},x=function(e){const t=[[a(/\/payment_presets\/(.+)\/payment_methods\/(.+)/,{presetId:1,methodId:2}),U],[a(/\/payment_presets\/(.+)\/available_fraud_protections/,{presetId:1}),d],[a(/\/payment_presets\/(.+)\/available_payment_methods/,{presetId:1}),i],[a(/\/payment_presets\/(.+)\/fraud_protections\/(.+)/,{presetId:1,protectionId:2}),y],[a(/\/payment_presets\/(.+)\/fraud_protections/,{presetId:1}),h],[a(/\/payment_presets\/(.+)\/payment_methods/,{presetId:1}),c],[a(/\/payment_presets\/(.+)/,{presetId:1}),S],[/\/payment_presets/,P]];for(const[a,s]of t)if(a.test(new URL(e.request.url).pathname))return s(e);return null}({hostedPaymentGatewaysHelperUrl:p,paymentGatewaysHelperUrl:u,hostedPaymentGatewaysUrl:f,paymentMethodSetsUrl:w,fraudProtectionsUrl:_,paymentGatewaysUrl:g,getPaymentMethodSetHostedPaymentGatewayUrl:v(m),getHostedPaymentGatewayUrl:v(G),getPaymentMethodSetUrl:v(L),getFraudProtectionUrl:v(E),getPaymentGatewayUrl:v(R),request:e.request,fetch:this.__fetch});x&&(e.preventDefault(),e.respondWith(x))}}static get properties(){return{paymentMethodSetHostedPaymentGatewayBaseUrl:{attribute:"payment-method-set-hosted-payment-gateway-base-url"},paymentMethodSetHostedPaymentGatewaysUrl:{attribute:"payment-method-set-hosted-payment-gateways-url"},hostedPaymentGatewaysHelperUrl:{attribute:"hosted-payment-gateways-helper-url"},hostedPaymentGatewayBaseUrl:{attribute:"hosted-payment-gateway-base-url"},hostedPaymentGatewaysUrl:{attribute:"hosted-payment-gateways-url"},paymentGatewaysHelperUrl:{attribute:"payment-gateways-helper-url"},paymentMethodSetBaseUrl:{attribute:"payment-method-set-base-url"},paymentMethodSetsUrl:{attribute:"payment-method-sets-url"},fraudProtectionBaseUrl:{attribute:"fraud-protection-base-url"},fraudProtectionsUrl:{attribute:"fraud-protections-url"},paymentGatewayBaseUrl:{attribute:"payment-gateway-base-url"},paymentGatewaysUrl:{attribute:"payment-gateways-url"}}}connectedCallback(){super.connectedCallback(),this.addEventListener("fetch",this.__handleFetch)}createRenderRoot(){return this}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("fetch",this.__handleFetch)}}customElements.define("foxy-payments-api",b);export{b as PaymentsApi};
@@ -1,4 +1,4 @@
1
- import"./shared-da2e66a4.js";import"./shared-6b68b3b6.js";import{_ as e}from"./shared-b3db7611.js";import{s as l,h as t,c as a,L as s}from"./shared-dc73b9a5.js";import{T as n,O as r}from"./shared-8874ec69.js";import{o}from"./shared-8438d4ca.js";import{c as i}from"./shared-4e709717.js";import{i as d}from"./shared-9803aa7c.js";import{a as u}from"./shared-79d0699c.js";import{r as c}from"./shared-a0c6a159.js";import{R as v,T as p,a as b}from"./shared-7ff78b4a.js";import{I as h}from"./shared-3cabd589.js";import{C as f}from"./shared-2b5a3c80.js";import"./shared-0a9d860d.js";let g;const m=l(g||(g=(e=>e)`
1
+ import"./shared-bac00622.js";import"./shared-a911ab73.js";import{_ as e}from"./shared-3c58ddf1.js";import{s as l,h as t,c as a,L as s}from"./shared-dc73b9a5.js";import{T as n,O as r}from"./shared-8874ec69.js";import{o}from"./shared-8438d4ca.js";import{c as i}from"./shared-4e709717.js";import{i as d}from"./shared-9803aa7c.js";import{a as u}from"./shared-79d0699c.js";import{r as c}from"./shared-a0c6a159.js";import{R as v,T as p,a as b}from"./shared-e989e47e.js";import{I as h}from"./shared-2808f43a.js";import{C as f}from"./shared-bd99107c.js";import"./shared-2f2b5a28.js";let g;const m=l(g||(g=(e=>e)`
2
2
  <svg class="w-full h-full" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg">
3
3
  <path d="M26.4 14.7399C26.4 15.2922 25.9523 15.7399 25.4 15.7399H10.6C10.0477 15.7399 9.60001 15.2922 9.60001 14.7399V14.2C9.60001 13.6477 10.0477 13.2 10.6 13.2H25.4C25.9523 13.2 26.4 13.6477 26.4 14.2V14.7399ZM26.4 21.8C26.4 22.3523 25.9523 22.8 25.4 22.8H10.6C10.0477 22.8 9.60001 22.3523 9.60001 21.8V21.2601C9.60001 20.7078 10.0477 20.2601 10.6 20.2601H25.4C25.9523 20.2601 26.4 20.7078 26.4 21.2601V21.8Z" class="fill-current"/>
4
4
  </svg>