@foxy.io/elements 1.18.0-beta.15 → 1.18.0-beta.17

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 (243) hide show
  1. package/dist/cdn/foxy-access-recovery-form.js +1 -1
  2. package/dist/cdn/foxy-address-card.js +2 -2
  3. package/dist/cdn/foxy-address-form.js +1 -1
  4. package/dist/cdn/foxy-api-browser.js +3 -3
  5. package/dist/cdn/foxy-applied-tax-card.js +1 -1
  6. package/dist/cdn/foxy-attribute-card.js +1 -1
  7. package/dist/cdn/foxy-attribute-form.js +1 -1
  8. package/dist/cdn/foxy-cancellation-form.js +1 -1
  9. package/dist/cdn/foxy-collection-page.js +1 -1
  10. package/dist/cdn/foxy-collection-pages.js +1 -1
  11. package/dist/cdn/foxy-copy-to-clipboard.js +1 -1
  12. package/dist/cdn/foxy-coupon-card.js +1 -1
  13. package/dist/cdn/foxy-coupon-code-form.js +1 -1
  14. package/dist/cdn/foxy-coupon-codes-form.js +1 -1
  15. package/dist/cdn/foxy-coupon-detail-card.js +1 -1
  16. package/dist/cdn/foxy-coupon-form.js +1 -1
  17. package/dist/cdn/foxy-custom-field-card.js +1 -1
  18. package/dist/cdn/foxy-custom-field-form.js +1 -1
  19. package/dist/cdn/foxy-customer-api.js +1 -1
  20. package/dist/cdn/foxy-customer-card.js +1 -1
  21. package/dist/cdn/foxy-customer-form.js +1 -1
  22. package/dist/cdn/foxy-customer-portal-settings.js +1 -1
  23. package/dist/cdn/foxy-customer-portal.js +2 -2
  24. package/dist/cdn/foxy-customer.js +1 -1
  25. package/dist/cdn/foxy-customers-table.js +1 -1
  26. package/dist/cdn/foxy-discount-builder.js +1 -1
  27. package/dist/cdn/foxy-discount-card.js +1 -1
  28. package/dist/cdn/foxy-discount-detail-card.js +1 -1
  29. package/dist/cdn/foxy-donation.js +1 -1
  30. package/dist/cdn/foxy-email-template-card.js +1 -1
  31. package/dist/cdn/foxy-email-template-form.js +1 -1
  32. package/dist/cdn/foxy-error-entry-card.js +1 -1
  33. package/dist/cdn/foxy-form-dialog.js +1 -1
  34. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  35. package/dist/cdn/foxy-gift-card-card.js +1 -1
  36. package/dist/cdn/foxy-gift-card-code-form.js +1 -1
  37. package/dist/cdn/foxy-gift-card-code-log-card.js +1 -1
  38. package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
  39. package/dist/cdn/foxy-gift-card-form.js +1 -1
  40. package/dist/cdn/foxy-i18n-editor.js +2 -0
  41. package/dist/cdn/foxy-i18n.js +1 -1
  42. package/dist/cdn/foxy-integration-card.js +1 -0
  43. package/dist/cdn/foxy-integration-form.js +1 -0
  44. package/dist/cdn/foxy-item-card.js +1 -1
  45. package/dist/cdn/foxy-item-category-card.js +1 -1
  46. package/dist/cdn/foxy-item-category-form.js +1 -1
  47. package/dist/cdn/foxy-item-form.js +1 -1
  48. package/dist/cdn/foxy-item-option-card.js +1 -1
  49. package/dist/cdn/foxy-item-option-form.js +1 -1
  50. package/dist/cdn/foxy-items-form.js +1 -1
  51. package/dist/cdn/foxy-nucleon-element.js +1 -1
  52. package/dist/cdn/foxy-pagination.js +1 -1
  53. package/dist/cdn/foxy-payment-card.js +1 -1
  54. package/dist/cdn/foxy-payment-method-card.js +1 -1
  55. package/dist/cdn/foxy-payments-api-fraud-protection-card.js +1 -1
  56. package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
  57. package/dist/cdn/foxy-payments-api-payment-method-card.js +1 -1
  58. package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
  59. package/dist/cdn/foxy-payments-api-payment-preset-card.js +1 -1
  60. package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
  61. package/dist/cdn/foxy-payments-api.js +1 -1
  62. package/dist/cdn/foxy-query-builder.js +1 -1
  63. package/dist/cdn/foxy-report-form.js +1 -1
  64. package/dist/cdn/foxy-reports-table.js +1 -1
  65. package/dist/cdn/foxy-shipment-card.js +1 -1
  66. package/dist/cdn/foxy-shipping-method-card.js +1 -1
  67. package/dist/cdn/foxy-sign-in-form.js +1 -1
  68. package/dist/cdn/foxy-spinner.js +2 -2
  69. package/dist/cdn/foxy-store-form.js +1 -1
  70. package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
  71. package/dist/cdn/foxy-subscription-card.js +1 -1
  72. package/dist/cdn/foxy-subscription-form.js +4 -4
  73. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  74. package/dist/cdn/foxy-table.js +1 -1
  75. package/dist/cdn/foxy-tax-card.js +1 -1
  76. package/dist/cdn/foxy-tax-form.js +1 -1
  77. package/dist/cdn/foxy-template-card.js +1 -1
  78. package/dist/cdn/foxy-template-config-form.js +1 -1
  79. package/dist/cdn/foxy-template-form.js +1 -1
  80. package/dist/cdn/foxy-template-set-card.js +1 -1
  81. package/dist/cdn/foxy-template-set-form.js +1 -1
  82. package/dist/cdn/foxy-transaction-card.js +1 -1
  83. package/dist/cdn/foxy-transaction.js +1 -1
  84. package/dist/cdn/foxy-transactions-table.js +1 -1
  85. package/dist/cdn/foxy-user-form.js +1 -1
  86. package/dist/cdn/foxy-users-table.js +1 -1
  87. package/dist/cdn/foxy-webhook-card.js +1 -1
  88. package/dist/cdn/foxy-webhook-form.js +1 -1
  89. package/dist/cdn/foxy-webhook-log-card.js +1 -1
  90. package/dist/cdn/foxy-webhook-status-card.js +1 -1
  91. package/dist/cdn/shared-002b788f.js +15 -0
  92. package/dist/cdn/shared-0672e78b.js +1 -0
  93. package/dist/cdn/{shared-d58e7670.js → shared-162fc285.js} +1 -1
  94. package/dist/cdn/shared-1b3e1a0d.js +1 -0
  95. package/dist/cdn/{shared-45418f3b.js → shared-2215e6c8.js} +5 -5
  96. package/dist/cdn/shared-236d9b7e.js +1 -0
  97. package/dist/cdn/{shared-890a22af.js → shared-29376ba1.js} +1 -1
  98. package/dist/cdn/{shared-a5000f1f.js → shared-29e21467.js} +3 -3
  99. package/dist/cdn/{shared-4ff7174f.js → shared-2c842660.js} +1 -1
  100. package/dist/cdn/{shared-23e0d67e.js → shared-2d3027f4.js} +1 -1
  101. package/dist/cdn/{shared-0d91f648.js → shared-2f1e04ae.js} +1 -1
  102. package/dist/cdn/{shared-398b3c49.js → shared-34b11d34.js} +1 -1
  103. package/dist/cdn/{shared-0953a0e7.js → shared-3a3878c9.js} +1 -1
  104. package/dist/cdn/{shared-5c837b54.js → shared-40537775.js} +1 -1
  105. package/dist/cdn/{shared-38df92f3.js → shared-40d82f6b.js} +1 -1
  106. package/dist/cdn/{shared-abf68928.js → shared-4457dc27.js} +1 -1
  107. package/dist/cdn/{shared-760cc838.js → shared-4975f86f.js} +1 -1
  108. package/dist/cdn/{shared-ffea7639.js → shared-4c338ca6.js} +1 -1
  109. package/dist/cdn/shared-515f00b1.js +1 -0
  110. package/dist/cdn/{shared-8704e701.js → shared-5504f415.js} +2 -2
  111. package/dist/cdn/{shared-dee53530.js → shared-55e20d5b.js} +1 -1
  112. package/dist/cdn/{shared-a8966936.js → shared-5ad8c9a0.js} +1 -1
  113. package/dist/cdn/{shared-b6a37360.js → shared-5b55627c.js} +1 -1
  114. package/dist/cdn/{shared-2a56246b.js → shared-6003864d.js} +1 -1
  115. package/dist/cdn/shared-6b8874a7.js +1 -0
  116. package/dist/cdn/shared-6bf8883f.js +1 -0
  117. package/dist/cdn/{shared-fd124dfd.js → shared-6d2064e9.js} +3 -3
  118. package/dist/cdn/{shared-7ab9beb2.js → shared-6e6ed30a.js} +1 -1
  119. package/dist/cdn/shared-71deb26e.js +1 -0
  120. package/dist/cdn/{shared-3425791b.js → shared-74277a73.js} +5 -5
  121. package/dist/cdn/{shared-f22d1ed9.js → shared-7661b51a.js} +15 -15
  122. package/dist/cdn/{shared-7ca327ea.js → shared-7b167fe9.js} +1 -1
  123. package/dist/cdn/{shared-93c15291.js → shared-85f9051e.js} +1 -1
  124. package/dist/cdn/{shared-a6339611.js → shared-8a5e01ae.js} +1 -1
  125. package/dist/cdn/shared-8d533e0c.js +1 -0
  126. package/dist/cdn/shared-923da875.js +6 -0
  127. package/dist/cdn/shared-92926b1d.js +1 -0
  128. package/dist/cdn/{shared-081ad02f.js → shared-92bd849f.js} +1 -1
  129. package/dist/cdn/shared-a46a2f49.js +1 -0
  130. package/dist/cdn/{shared-8dee6348.js → shared-a86761d3.js} +2 -2
  131. package/dist/cdn/{shared-0565ecbc.js → shared-ad8141c4.js} +1 -1
  132. package/dist/cdn/{shared-a8ada44e.js → shared-b28dbc68.js} +27 -51
  133. package/dist/cdn/{shared-4610cbdb.js → shared-b5cbbdd8.js} +1 -1
  134. package/dist/cdn/{shared-15278fe0.js → shared-b7423eab.js} +1 -1
  135. package/dist/cdn/{shared-63671948.js → shared-b7f7f15f.js} +1 -1
  136. package/dist/cdn/{shared-3ef5c283.js → shared-b8e9b536.js} +1 -1
  137. package/dist/cdn/{shared-88924652.js → shared-bb522838.js} +1 -1
  138. package/dist/cdn/{shared-34cd3a01.js → shared-bd194cdf.js} +1 -1
  139. package/dist/cdn/{shared-6dafebaf.js → shared-c484320b.js} +1 -1
  140. package/dist/cdn/{shared-86be537c.js → shared-c52d3772.js} +1 -1
  141. package/dist/cdn/{shared-6b471536.js → shared-cced7800.js} +1 -1
  142. package/dist/cdn/{shared-bd4b0759.js → shared-cfec6ec1.js} +1 -1
  143. package/dist/cdn/{shared-9195959e.js → shared-d302ad2c.js} +1 -1
  144. package/dist/cdn/{shared-eefa4103.js → shared-d43fc5cc.js} +1 -1
  145. package/dist/cdn/shared-dc798bf4.js +1 -0
  146. package/dist/cdn/{shared-4a796610.js → shared-dcbf57e0.js} +1 -1
  147. package/dist/cdn/{shared-1d34726a.js → shared-e119731e.js} +1 -1
  148. package/dist/cdn/shared-e396ec04.js +25 -0
  149. package/dist/cdn/{shared-d1b62ccd.js → shared-e3ce88dc.js} +12 -17
  150. package/dist/cdn/{shared-74b7438a.js → shared-ea316e64.js} +1 -1
  151. package/dist/cdn/{shared-cd14b0cc.js → shared-ef0fc329.js} +1 -1
  152. package/dist/cdn/{shared-8328826e.js → shared-f022673a.js} +7 -7
  153. package/dist/cdn/{shared-d8b14272.js → shared-f23d122e.js} +3 -3
  154. package/dist/cdn/{shared-8033b140.js → shared-f2d19582.js} +1 -1
  155. package/dist/cdn/{shared-a861c770.js → shared-facfe95a.js} +4 -4
  156. package/dist/cdn/{shared-779795c5.js → shared-ff2f84c7.js} +1 -1
  157. package/dist/cdn/translations/api-browser/en.json +1 -0
  158. package/dist/cdn/translations/email-template-form/en.json +5 -0
  159. package/dist/cdn/translations/i18n-editor/en.json +10 -0
  160. package/dist/cdn/translations/integration-card/en.json +13 -0
  161. package/dist/cdn/translations/integration-form/en.json +41 -0
  162. package/dist/cdn/translations/store-form/en.json +1 -1
  163. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.d.ts +4 -0
  164. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.js +33 -17
  165. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.js.map +1 -1
  166. package/dist/elements/public/ApiBrowser/ApiBrowser.d.ts +2 -1
  167. package/dist/elements/public/ApiBrowser/ApiBrowser.js +38 -15
  168. package/dist/elements/public/ApiBrowser/ApiBrowser.js.map +1 -1
  169. package/dist/elements/public/EmailTemplateForm/EmailTemplateForm.d.ts +1 -0
  170. package/dist/elements/public/EmailTemplateForm/EmailTemplateForm.js +22 -13
  171. package/dist/elements/public/EmailTemplateForm/EmailTemplateForm.js.map +1 -1
  172. package/dist/elements/public/EmailTemplateForm/index.d.ts +1 -0
  173. package/dist/elements/public/EmailTemplateForm/index.js +1 -0
  174. package/dist/elements/public/EmailTemplateForm/index.js.map +1 -1
  175. package/dist/elements/public/I18n/format/date.js +5 -4
  176. package/dist/elements/public/I18n/format/date.js.map +1 -1
  177. package/dist/elements/public/I18nEditor/I18nEditor.d.ts +18 -0
  178. package/dist/elements/public/I18nEditor/I18nEditor.js +173 -0
  179. package/dist/elements/public/I18nEditor/I18nEditor.js.map +1 -0
  180. package/dist/elements/public/I18nEditor/index.d.ts +7 -0
  181. package/dist/elements/public/I18nEditor/index.js +9 -0
  182. package/dist/elements/public/I18nEditor/index.js.map +1 -0
  183. package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/InternalI18nEditorEntry.d.ts +17 -0
  184. package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/InternalI18nEditorEntry.js +169 -0
  185. package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/InternalI18nEditorEntry.js.map +1 -0
  186. package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/index.d.ts +6 -0
  187. package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/index.js +8 -0
  188. package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/index.js.map +1 -0
  189. package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/types.d.ts +3 -0
  190. package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/types.js +2 -0
  191. package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/types.js.map +1 -0
  192. package/dist/elements/public/I18nEditor/types.d.ts +4 -0
  193. package/dist/elements/public/I18nEditor/types.js +2 -0
  194. package/dist/elements/public/I18nEditor/types.js.map +1 -0
  195. package/dist/elements/public/IntegrationCard/IntegrationCard.d.ts +10 -0
  196. package/dist/elements/public/IntegrationCard/IntegrationCard.js +49 -0
  197. package/dist/elements/public/IntegrationCard/IntegrationCard.js.map +1 -0
  198. package/dist/elements/public/IntegrationCard/index.d.ts +4 -0
  199. package/dist/elements/public/IntegrationCard/index.js +6 -0
  200. package/dist/elements/public/IntegrationCard/index.js.map +1 -0
  201. package/dist/elements/public/IntegrationCard/types.d.ts +3 -0
  202. package/dist/elements/public/IntegrationCard/types.js +2 -0
  203. package/dist/elements/public/IntegrationCard/types.js.map +1 -0
  204. package/dist/elements/public/IntegrationForm/IntegrationForm.d.ts +18 -0
  205. package/dist/elements/public/IntegrationForm/IntegrationForm.js +220 -0
  206. package/dist/elements/public/IntegrationForm/IntegrationForm.js.map +1 -0
  207. package/dist/elements/public/IntegrationForm/index.d.ts +10 -0
  208. package/dist/elements/public/IntegrationForm/index.js +12 -0
  209. package/dist/elements/public/IntegrationForm/index.js.map +1 -0
  210. package/dist/elements/public/IntegrationForm/types.d.ts +21 -0
  211. package/dist/elements/public/IntegrationForm/types.js +2 -0
  212. package/dist/elements/public/IntegrationForm/types.js.map +1 -0
  213. package/dist/elements/public/ItemCategoryForm/internal/InternalItemCategoryFormTaxesControlItem/InternalItemCategoryFormTaxesControlItem.js +0 -2
  214. package/dist/elements/public/ItemCategoryForm/internal/InternalItemCategoryFormTaxesControlItem/InternalItemCategoryFormTaxesControlItem.js.map +1 -1
  215. package/dist/elements/public/StoreForm/StoreForm.js +2 -10
  216. package/dist/elements/public/StoreForm/StoreForm.js.map +1 -1
  217. package/dist/elements/public/TemplateSetForm/TemplateSetForm.d.ts +1 -0
  218. package/dist/elements/public/TemplateSetForm/TemplateSetForm.js +29 -18
  219. package/dist/elements/public/TemplateSetForm/TemplateSetForm.js.map +1 -1
  220. package/dist/elements/public/TemplateSetForm/index.d.ts +1 -0
  221. package/dist/elements/public/TemplateSetForm/index.js +1 -0
  222. package/dist/elements/public/TemplateSetForm/index.js.map +1 -1
  223. package/dist/elements/public/index.d.ts +3 -0
  224. package/dist/elements/public/index.defined.d.ts +3 -0
  225. package/dist/elements/public/index.defined.js +3 -0
  226. package/dist/elements/public/index.defined.js.map +1 -1
  227. package/dist/elements/public/index.js +3 -0
  228. package/dist/elements/public/index.js.map +1 -1
  229. package/dist/mixins/responsive.js +3 -3
  230. package/dist/mixins/responsive.js.map +1 -1
  231. package/dist/mixins/themeable.js +280 -0
  232. package/dist/mixins/themeable.js.map +1 -1
  233. package/package.json +2 -2
  234. package/dist/cdn/shared-10dbb9d7.js +0 -1
  235. package/dist/cdn/shared-2af327d0.js +0 -15
  236. package/dist/cdn/shared-5606cd36.js +0 -1
  237. package/dist/cdn/shared-8ab29d7d.js +0 -1
  238. package/dist/cdn/shared-a420358e.js +0 -1
  239. package/dist/cdn/shared-b567541a.js +0 -1
  240. package/dist/cdn/shared-b98f0ad9.js +0 -1
  241. package/dist/cdn/shared-c29811ec.js +0 -1
  242. package/dist/cdn/shared-d82f3ba0.js +0 -1
  243. package/dist/cdn/shared-fdf6ca55.js +0 -1
@@ -1 +1 @@
1
- import"./shared-0565ecbc.js";import"./shared-3ef5c283.js";import"./shared-74b7438a.js";import"./shared-6dafebaf.js";import"./foxy-collection-page.js";import"./foxy-swipe-actions.js";import"./foxy-form-dialog.js";import"./foxy-pagination.js";import"./shared-b98f0ad9.js";import"./shared-cd14b0cc.js";import{I as e}from"./shared-ffea7639.js";import{_ as t}from"./shared-a8ced8bf.js";import{c as r}from"./shared-4e709717.js";import{h as i}from"./shared-7f33a83a.js";import"./shared-b567541a.js";import{I as o}from"./shared-081ad02f.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{a}from"./shared-a5000f1f.js";import"./shared-93c15291.js";import"./shared-7ca327ea.js";import"./shared-86be537c.js";import"./shared-45418f3b.js";import"./shared-10dbb9d7.js";import"./shared-d3bf9ac0.js";import"./foxy-spinner.js";import"./shared-4f037e43.js";import"./shared-2af327d0.js";import"./shared-a8966936.js";import"./shared-15278fe0.js";import"./shared-a420358e.js";import"./shared-d6276c83.js";import"./shared-4a796610.js";import"./shared-d519a301.js";import"./shared-11c2efc8.js";import"./shared-760cc838.js";import"./shared-0479553e.js";import"./shared-7ab9beb2.js";import"./shared-8328826e.js";import"./shared-d82f3ba0.js";import"./shared-d1b62ccd.js";import"./shared-a8ada44e.js";import"./shared-0d91f648.js";import"./shared-bd4b0759.js";import"./shared-38df92f3.js";import"./shared-eefa4103.js";import"./shared-398b3c49.js";import"./shared-34cd3a01.js";let s,n,d,l,c,m,p=e=>e;customElements.define("foxy-internal-async-list-control",class extends e{constructor(){super(...arguments),this.related=[],this.limit=20,this.first="",this.form="",this.item="",this.wide=!1,this.hideDeleteButton=!1,this.hideCreateButton=!1,this.__deletionConfimationCallback=null,this.__cachedCardRenderer=null,this.__itemRenderer=e=>{if(!this.form||!e.data)return this.__cardRenderer(e);const t=this.disabledSelector.matches("card",!0),o=i(s||(s=p` <button ?disabled="${0}" class="${0}" @click="${0}"> ${0} </button> `),t,r({"rounded-t-l":!e.previous,"rounded-b-l":!e.next,"focus-outline-none focus-ring-2 focus-ring-inset focus-ring-primary-50":!0,"text-left w-full block transition-colors":!0,"hover-bg-contrast-5":!t}),(t=>{const r=t.currentTarget,i=this.__dialog;i.header="header_update",i.href=e.href,i.show(r)}),this.__cardRenderer(e));return this.hideDeleteButton?o:i(n||(n=p` <foxy-swipe-actions class="block"> ${0} <vaadin-button theme="primary error" class="h-full rounded-t-l rounded-b-l" slot="action" @click="${0}"> <foxy-i18n infer="" key="delete_button_text"></foxy-i18n> </vaadin-button> </foxy-swipe-actions> `),o,(e=>{const t=e.currentTarget;this.renderRoot.querySelector("#confirm").show(t),this.__deletionConfimationCallback=()=>{const e=t.previousElementSibling.querySelector("[href]");null==e||e.delete(),this.__deletionConfimationCallback=null}}))}}static get properties(){return t(t({},super.properties),{},{hideDeleteButton:{type:Boolean,attribute:"hide-delete-button"},hideCreateButton:{type:Boolean,attribute:"hide-create-button"},related:{type:Array},first:{type:String},limit:{type:Number},form:{type:String},item:{type:String},wide:{type:Boolean}})}renderControl(){let e;try{const t=new URL(this.first);t.searchParams.set("limit",String(this.limit)),e=t.toString()}catch(t){e=this.first}return i(d||(d=p` ${0} <foxy-pagination first="${0}" infer="pagination"> <foxy-collection-page class="mb-s block divide-y divide-contrast-5 rounded-t-l rounded-b-l overflow-hidden bg-contrast-5" infer="card" .related="${0}" .item="${0}"> </foxy-collection-page> ${0} </foxy-pagination> `),this.form?i(l||(l=p` <foxy-form-dialog parent="${0}" infer="dialog" id="form" ?wide="${0}" .related="${0}" .form="${0}"> </foxy-form-dialog> ${0} `),e,this.wide,this.related,this.form,this.hideDeleteButton?"":i(c||(c=p` <foxy-internal-confirm-dialog message="delete_message" confirm="delete_confirm" cancel="delete_cancel" header="delete_header" theme="error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> `),this.lang,this.ns,(e=>{var t;e.detail.cancelled||null===(t=this.__deletionConfimationCallback)||void 0===t||t.call(this)}))):"",e,this.related,this.__itemRenderer,!this.form||this.readonly||this.hideCreateButton?"":i(m||(m=p` <vaadin-button class="mb-s bg-success-10 w-full rounded-t-l rounded-b-l" theme="success" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="" key="create_button_text"></foxy-i18n> <iron-icon class="icon-inline" icon="icons:add"></iron-icon> </vaadin-button> `),this.disabled,(e=>{e.preventDefault(),e.stopPropagation();const t=this.__dialog,r=e.currentTarget;t.header="header_create",t.href="",t.show(r)})))}get __dialog(){return this.renderRoot.querySelector("#form")}get __cardRenderer(){var e;return(null===(e=this.__cachedCardRenderer)||void 0===e?void 0:e.item)!==this.item&&(this.__cachedCardRenderer={item:this.item,render:"string"==typeof this.item?new Function("ctx",`return ctx.html\`<${this.item} related=\${JSON.stringify(ctx.related)} parent=\${ctx.parent} class="p-m" infer href=\${ctx.href}></${this.item}>\``):this.item}),this.__cachedCardRenderer.render}});let h,f,u,y,g,_,x=e=>e;const b=a(o,"payments-api-payment-preset-form");class $ extends b{constructor(){super(...arguments),this.getFraudProtectionImageSrc=null,this.getPaymentMethodImageSrc=null,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 i(h||(h=x` <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?i(f||(f=x` <div class="grid grid-cols-1 gap-s"> <foxy-i18n class="text-s font-medium text-secondary" infer="payment-methods" key="title"> </foxy-i18n> <foxy-internal-async-list-control infer="payment-methods" first="${0}" limit="5" .item="${0}" .form="${0}"> </foxy-internal-async-list-control> </div> <div class="grid grid-cols-1 gap-s"> <foxy-i18n class="text-s font-medium text-secondary" infer="fraud-protections" key="title"> </foxy-i18n> <foxy-internal-async-list-control infer="fraud-protections" first="${0}" limit="5" .item="${0}" .form="${0}"> </foxy-internal-async-list-control> </div> `),this.data._links["fx:payment_methods"].href,(e=>i(u||(u=x` <foxy-payments-api-payment-method-card parent="${0}" infer="payments-api-payment-method-card" class="px-m py-s" href="${0}" .getImageSrc="${0}"> </foxy-payments-api-payment-method-card> `),e.parent,e.href,this.getPaymentMethodImageSrc)),(e=>i(y||(y=x` <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=>i(g||(g=x` <foxy-payments-api-fraud-protection-card parent="${0}" infer="payments-api-fraud-protection-card" class="px-m py-s" href="${0}" .getImageSrc="${0}"> </foxy-payments-api-fraud-protection-card> `),e.parent,e.href,this.getFraudProtectionImageSrc)),(e=>i(_||(_=x` <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())}}$.__isPOEnabledOptions=[{label:"option_true",value:"true"}],$.__isLiveOptions=[{label:"option_live",value:"live"}],customElements.define("foxy-payments-api-payment-preset-form",$);export{$ as PaymentsApiPaymentPresetForm};
1
+ import"./shared-ad8141c4.js";import"./shared-b8e9b536.js";import"./shared-ea316e64.js";import"./shared-c484320b.js";import"./foxy-collection-page.js";import"./foxy-swipe-actions.js";import"./foxy-form-dialog.js";import"./foxy-pagination.js";import"./shared-0672e78b.js";import"./shared-ef0fc329.js";import{I as e}from"./shared-4c338ca6.js";import{_ as t}from"./shared-a8ced8bf.js";import{c as r}from"./shared-4e709717.js";import{h as i}from"./shared-7f33a83a.js";import"./shared-71deb26e.js";import{I as s}from"./shared-92bd849f.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{a as o}from"./shared-29e21467.js";import"./shared-85f9051e.js";import"./shared-7b167fe9.js";import"./shared-c52d3772.js";import"./shared-2215e6c8.js";import"./shared-6b8874a7.js";import"./shared-d3bf9ac0.js";import"./foxy-spinner.js";import"./shared-4f037e43.js";import"./shared-002b788f.js";import"./shared-5ad8c9a0.js";import"./shared-b7423eab.js";import"./shared-dc798bf4.js";import"./shared-d6276c83.js";import"./shared-dcbf57e0.js";import"./shared-d519a301.js";import"./shared-11c2efc8.js";import"./shared-4975f86f.js";import"./shared-0479553e.js";import"./shared-6e6ed30a.js";import"./shared-f022673a.js";import"./shared-923da875.js";import"./shared-e396ec04.js";import"./shared-2f1e04ae.js";import"./shared-b28dbc68.js";import"./shared-cfec6ec1.js";import"./shared-40d82f6b.js";import"./shared-d43fc5cc.js";import"./shared-34b11d34.js";import"./shared-bd194cdf.js";import"./shared-e3ce88dc.js";import"./shared-515f00b1.js";import"./shared-92926b1d.js";let a,n,d,l,c,h,m,p,f=e=>e;customElements.define("foxy-internal-async-list-control",class extends e{constructor(){super(...arguments),this.related=[],this.limit=20,this.first="",this.form="",this.item="",this.wide=!1,this.alert=!1,this.hideDeleteButton=!1,this.hideCreateButton=!1,this.getPageHref=null,this.__deletionConfimationCallback=null,this.__cachedCardRenderer=null,this.__itemRenderer=e=>{if(!this.form&&!this.getPageHref||!e.data)return this.__cardRenderer(e);const t=this.disabledSelector.matches("card",!0),s=this.__cardRenderer(e);let o;const c=r({"rounded-t-l":!e.previous,"rounded-b-l":!e.next,"focus-outline-none focus-ring-2 focus-ring-inset focus-ring-primary-50":!0,"text-left w-full block transition-colors":!0,"hover-bg-contrast-5":!t});if(this.getPageHref)if(t)o=i(a||(a=f`<div class="${0}">${0}</div>`),c,s);else{const t=this.getPageHref(e.href);o=i(n||(n=f`<a class="${0}" href="${0}">${0}</a>`),c,t,s)}else{o=i(d||(d=f` <button ?disabled="${0}" class="${0}" @click="${0}">${0}</button> `),t,c,(t=>{const r=t.currentTarget,i=this.__dialog;i.header="header_update",i.href=e.href,i.show(r)}),s)}return this.hideDeleteButton?o:i(l||(l=f` <foxy-swipe-actions class="block"> ${0} <vaadin-button theme="primary error" class="h-full rounded-t-l rounded-b-l" slot="action" @click="${0}"> <foxy-i18n infer="" key="delete_button_text"></foxy-i18n> </vaadin-button> </foxy-swipe-actions> `),o,(e=>{const t=e.currentTarget;this.renderRoot.querySelector("#confirm").show(t),this.__deletionConfimationCallback=()=>{const e=t.previousElementSibling.querySelector("[href]");null==e||e.delete(),this.__deletionConfimationCallback=null}}))}}static get properties(){return t(t({},super.properties),{},{hideDeleteButton:{type:Boolean,attribute:"hide-delete-button"},hideCreateButton:{type:Boolean,attribute:"hide-create-button"},getPageHref:{attribute:!1},related:{type:Array},first:{type:String},limit:{type:Number},form:{type:String},item:{type:String},wide:{type:Boolean},alert:{type:Boolean}})}renderControl(){let e;try{const t=new URL(this.first);t.searchParams.set("limit",String(this.limit)),e=t.toString()}catch(t){e=this.first}return i(c||(c=f` ${0} <foxy-pagination first="${0}" infer="pagination"> <foxy-collection-page class="mb-s block divide-y divide-contrast-5 rounded-t-l rounded-b-l overflow-hidden bg-contrast-5" infer="card" .related="${0}" .item="${0}"> </foxy-collection-page> ${0} </foxy-pagination> `),this.form?i(h||(h=f` <foxy-form-dialog parent="${0}" infer="dialog" id="form" ?wide="${0}" ?alert="${0}" .related="${0}" .form="${0}"> </foxy-form-dialog> ${0} `),e,this.wide,this.alert,this.related,this.form,this.hideDeleteButton?"":i(m||(m=f` <foxy-internal-confirm-dialog message="delete_message" confirm="delete_confirm" cancel="delete_cancel" header="delete_header" theme="error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> `),this.lang,this.ns,(e=>{var t;e.detail.cancelled||null===(t=this.__deletionConfimationCallback)||void 0===t||t.call(this)}))):"",e,this.related,this.__itemRenderer,!this.form||this.readonly||this.hideCreateButton?"":i(p||(p=f` <vaadin-button class="mb-s bg-success-10 w-full rounded-t-l rounded-b-l" theme="success" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="" key="create_button_text"></foxy-i18n> <iron-icon class="icon-inline" icon="icons:add"></iron-icon> </vaadin-button> `),this.disabled,(e=>{e.preventDefault(),e.stopPropagation();const t=this.__dialog,r=e.currentTarget;t.header="header_create",t.href="",t.show(r)})))}get __dialog(){return this.renderRoot.querySelector("#form")}get __cardRenderer(){var e;return(null===(e=this.__cachedCardRenderer)||void 0===e?void 0:e.item)!==this.item&&(this.__cachedCardRenderer={item:this.item,render:"string"==typeof this.item?new Function("ctx",`return ctx.html\`<${this.item} related=\${JSON.stringify(ctx.related)} parent=\${ctx.parent} class="p-m" infer href=\${ctx.href}></${this.item}>\``):this.item}),this.__cachedCardRenderer.render}});let u,y,g,_,b,x,$=e=>e;const j=o(s,"payments-api-payment-preset-form");class v extends j{constructor(){super(...arguments),this.getFraudProtectionImageSrc=null,this.getPaymentMethodImageSrc=null,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 i(u||(u=$` <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?i(y||(y=$` <div class="grid grid-cols-1 gap-s"> <foxy-i18n class="text-s font-medium text-secondary" infer="payment-methods" key="title"> </foxy-i18n> <foxy-internal-async-list-control infer="payment-methods" first="${0}" limit="5" .item="${0}" .form="${0}"> </foxy-internal-async-list-control> </div> <div class="grid grid-cols-1 gap-s"> <foxy-i18n class="text-s font-medium text-secondary" infer="fraud-protections" key="title"> </foxy-i18n> <foxy-internal-async-list-control infer="fraud-protections" first="${0}" limit="5" .item="${0}" .form="${0}"> </foxy-internal-async-list-control> </div> `),this.data._links["fx:payment_methods"].href,(e=>i(g||(g=$` <foxy-payments-api-payment-method-card parent="${0}" infer="payments-api-payment-method-card" class="px-m py-s" href="${0}" .getImageSrc="${0}"> </foxy-payments-api-payment-method-card> `),e.parent,e.href,this.getPaymentMethodImageSrc)),(e=>i(_||(_=$` <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=>i(b||(b=$` <foxy-payments-api-fraud-protection-card parent="${0}" infer="payments-api-fraud-protection-card" class="px-m py-s" href="${0}" .getImageSrc="${0}"> </foxy-payments-api-fraud-protection-card> `),e.parent,e.href,this.getFraudProtectionImageSrc)),(e=>i(x||(x=$` <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())}}v.__isPOEnabledOptions=[{label:"option_true",value:"true"}],v.__isLiveOptions=[{label:"option_live",value:"live"}],customElements.define("foxy-payments-api-payment-preset-form",v);export{v as PaymentsApiPaymentPresetForm};
@@ -1 +1 @@
1
- import{L as e,h as t}from"./shared-7f33a83a.js";import{F as a}from"./shared-2af327d0.js";import{l as s,_ as n,k as r}from"./shared-a8ced8bf.js";import{A as o}from"./shared-a420358e.js";async function i(e){const t=await e;if(!t.ok)throw new Error(await t.text());return t.json()}async function l(e){var t;let a,n;try{const{hostedPaymentGatewaysHelperUrl:r,paymentGatewaysHelperUrl:o,getPaymentMethodSetUrl:l,request:d,fetch:m}=e;if("GET"!==d.method)throw a=405,new Error("Method not allowed. Allowed methods: GET.");const p=s(/\/payment_presets\/(.+)\/available_payment_methods/,{presetId:1}).exec(new URL(d.url).pathname).groups.presetId,h=i(m(r)),y=i(m(o)),f=null===(t=(await i(m(l(p))))._links["fx:payment_gateway"])||void 0===t?void 0:t.href,c=f?await i(m(f)):void 0,u=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:c,base:new URL(d.url).origin});n=JSON.stringify(u),a=200}catch(e){n=e instanceof Error?e.message:String(e),a=null!=a?a:500}return new Response(n,{status:a})}function d(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 if your webhook fails.",default_value:"",options:[{name:"Reject",value:"reject"},{name:"Approve",value:"approve"}]}]}]}}}}}async function m(e){let t,a;try{const{request:n}=e;if("GET"!==n.method)throw t=405,new Error("Method not allowed. Allowed methods: GET.");const r=d({paymentPresetId:s(/\/payment_presets\/(.+)\/available_fraud_protections/,{presetId:1}).exec(new URL(n.url).pathname).groups.presetId,base:new URL(n.url).origin});a=JSON.stringify(r),t=200}catch(e){a=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(a,{status:t})}const p=["_links"];function h(e){const{paymentMethodSetFraudProtectionId:t,paymentPresetId:a,fraudProtection:s,base:o}=e,{_links:i}=s,l=r(s,p),m=d({paymentPresetId:a,base:o}),h=`${new URL(i.self.href).pathname.split("/").pop()}C${t}`,y=new URL(`./payment_presets/${a}`,o),f=new URL(`./payment_presets/${a}/fraud_protections/${h}`,o);return n(n({_links:{self:{href:f.toString()},"fx:store":i["fx:store"],"fx:payment_preset":{href:y.toString()}}},l),{},{helper:m.values[s.type]})}async function y(e){var t,a;let n,r;try{const{fraudProtectionsUrl:o,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 p=new URL(d.url),y=s(/\/payment_presets\/(.+)\/fraud_protections/,{presetId:1}).exec(p.pathname).groups.presetId,f=await i(m(l(y)));if("GET"===d.method){const e=parseInt(null!==(t=p.searchParams.get("offset"))&&void 0!==t?t:"0"),s=parseInt(null!==(a=p.searchParams.get("limit"))&&void 0!==a?a:"20"),o=new URL(f._links["fx:payment_method_set_fraud_protections"].href);o.searchParams.set("offset",String(Math.max(0,e-1))),o.searchParams.set("limit",String(s));const l=await i(m(o.toString())),c=await Promise.all(l._embedded["fx:payment_method_set_fraud_protections"].map((async e=>i(m(e._links["fx:fraud_protection"].href))))),u=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 h({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:c,paymentPresetId:y,base:new URL(d.url).origin});n=200,r=JSON.stringify(u)}else{const e=await d.json();delete e.helper;const t=m(o,{method:"POST",body:JSON.stringify(e)}),a=await i(t),s=await i(m(f._links["fx:payment_method_set_fraud_protections"].href,{method:"POST",body:JSON.stringify({payment_method_set_uri:f._links.self.href,fraud_protection_uri:a._links.self.href})})),l=h({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 f(e){let t,a;try{const{getPaymentMethodSetUrl:n,getFraudProtectionUrl:r,request:o,fetch:l}=e;if(!["GET","PATCH","DELETE"].includes(o.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, PATCH, DELETE.");const d=s(/\/payment_presets\/(.+)\/fraud_protections\/(.+)/,{presetId:1,protectionId:2}),{presetId:m,protectionId:p}=d.exec(o.url).groups,y=n(m),f=p.substring(0,p.indexOf("C"));if("DELETE"===o.method){const e=(await i(l(y)))._links["fx:payment_method_set_fraud_protections"].href,t=new URL(e);t.searchParams.set("fraud_protection_id",f);const a=await i(l(t.toString())),s=a._embedded["fx:payment_method_set_fraud_protections"].map((e=>i(l(e._links.self.href,{method:"DELETE"}))));await Promise.all(s)}let c=await o.text();try{const e=JSON.parse(c);delete e.helper,c=JSON.stringify(e)}catch(e){}const u=l(r(f),{method:o.method,body:"PATCH"===o.method?c:null}),_=await i(u);a="DELETE"===o.method?JSON.stringify({message:"Fraud protection was successfully deleted."}):JSON.stringify(h({paymentMethodSetFraudProtectionId:p.substring(p.indexOf("C")+1),fraudProtection:_,paymentPresetId:m,base:new URL(o.url).origin}))}catch(e){a=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(a,{status:t})}const c=["_links"];function u(e){const{paymentPresetId:t,helper:a,base:s}=e,o="paymentGateway"in e?e.paymentGateway:e.hostedPaymentGateway,{_links:i}=o,l=r(o,c),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}`,s),h=new URL(`./payment_presets/${t}/payment_methods/${m}`,s);return n(n({_links:{self:{href:h.toString()},"fx:store":i["fx:store"],"fx:payment_preset":{href:p.toString()}}},l),{},{helper:a})}async function _(e){var t,a,n,r;let o,l;try{const{hostedPaymentGatewaysHelperUrl:d,paymentGatewaysHelperUrl:m,hostedPaymentGatewaysUrl:p,getPaymentMethodSetUrl:h,paymentGatewaysUrl:y,request:f,fetch:c}=e;if(!["GET","POST"].includes(f.method))throw o=405,new Error("Method not allowed. Allowed methods: GET, POST.");const _=new URL(f.url),w=s(/\/payment_presets\/(.+)\/payment_methods/,{presetId:1}).exec(_.pathname).groups.presetId,[g,P,S]=await Promise.all([i(c(d)),i(c(m)),i(c(h(w)))]);if("GET"===f.method){const e=parseInt(null!==(t=_.searchParams.get("offset"))&&void 0!==t?t:"0"),s=parseInt(null!==(a=_.searchParams.get("limit"))&&void 0!==a?a:"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(s));const d=null===(n=S._links["fx:payment_gateway"])||void 0===n?void 0:n.href,[m,p]=await Promise.all([d&&0===e?i(c(d)):null,i(c(r.toString()))]),h=await Promise.all(p._embedded["fx:payment_method_set_hosted_payment_gateways"].map((async e=>i(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"),f=s.total_items+(l?1:0),c=s.returned_items+(l&&"not-on-page"!==l?1:0),_=new URL(`/payment_presets/${i}/payment_methods`,m);_.search=d;const w=new URL(_.toString()),g=new URL(_.toString()),P=new URL(_.toString()),S=new URL(_.toString());w.searchParams.set("limit",String(y)),w.searchParams.set("offset",String(h)),g.searchParams.set("limit",String(y)),g.searchParams.set("offset",String(Math.max(0,f-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,f-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 u(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:w.toString()},last:{href:g.toString()},prev:{href:P.toString()},next:{href:S.toString()},self:{href:_.toString()}},_embedded:{"fx:payment_methods":U},returned_items:c,total_items:f,offset:h,limit:y}}({paymentMethodSetHostedPaymentGateways:p,hostedPaymentGatewaysHelper:g,paymentGatewaysHelper:P,hostedPaymentGateways:h,paymentPresetId:w,paymentGateway:m||(d?"not-on-page":void 0),query:new URL(f.url).search,base:new URL(f.url).origin});o=200,l=JSON.stringify(y)}else{const e=await f.clone().json(),t=!!g.values[null!==(r=e.type)&&void 0!==r?r:""];if(delete e.helper,t){const t=await i(c(p,{method:"POST",body:JSON.stringify(e)})),a=await i(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=u({paymentMethodSetHostedPaymentGatewayId:new URL(a._links.self.href).pathname.split("/").pop(),hostedPaymentGateway:t,paymentPresetId:w,helper:g.values[t.type],base:new URL(f.url).origin});o=200,l=JSON.stringify(s)}else{const t=c(y,{method:f.method,body:JSON.stringify(e)}),a=await i(t),s={gateway_uri:a._links.self.href};await Promise.all([i(c(S._links.self.href,{method:"PATCH",body:JSON.stringify(s)})),S.gateway_uri?i(c(S.gateway_uri,{method:"DELETE"})):null]);const n=u({paymentPresetId:w,paymentGateway:a,helper:P.values[a.type],base:new URL(f.url).origin});o=200,l=JSON.stringify(n)}}}catch(e){l=e instanceof Error?e.message:String(e),o=null!=o?o:500}return new Response(l,{status:o})}const w=["_links"];function g(e){const{paymentMethodSet:t,base:a}=e,{_links:s}=t,o=r(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":s["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 P=["_embedded","_links"];async function S(e){let t,a;try{const{paymentMethodSetsUrl:s,request:o,fetch:l}=e;if(!["GET","POST"].includes(o.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, POST.");const d=new URL(o.url),m=new URL(s);let p;if(m.search=d.search,"POST"===o.method){const e=l(m.toString(),{method:"POST",body:await o.text()});p=g({paymentMethodSet:await i(e),base:d.origin})}else p=function(e){const{paymentMethodSets:t,base:a}=e,{_embedded:s,_links:o}=t,i=r(t,P),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 f=new URL("./payment_presets",a),c=new URL(o.next.href);f.search=c.search;const u=new URL("./payment_presets",a),_=new URL(o.self.href);return u.search=_.search,n(n({},i),{},{_links:{first:{href:l.toString()},last:{href:m.toString()},prev:{href:h.toString()},next:{href:f.toString()},self:{href:u.toString()}},_embedded:{"fx:payment_presets":s["fx:payment_method_sets"].map((e=>g({paymentMethodSet:e,base:a})))}})}({paymentMethodSets:await i(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 U(e){let t,a;try{const{getPaymentMethodSetUrl:n,request:r,fetch:o}=e;if(!["GET","PATCH","DELETE"].includes(r.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, PATCH, DELETE.");const l=s(/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 i(o(m.toString(),{method:r.method,body:"PATCH"===r.method?await r.text():null}));a="DELETE"===r.method?JSON.stringify({message:"Payment preset was successfully deleted."}):JSON.stringify(g({paymentMethodSet:p,base:new URL(r.url).origin}))}catch(e){a=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(a,{status:t})}async function b(e){let t,a;try{const{hostedPaymentGatewaysHelperUrl:n,paymentGatewaysHelperUrl:r,getPaymentMethodSetHostedPaymentGatewayUrl:o,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=s(/\/payment_presets\/(.+)\/payment_methods\/(.+)/,{presetId:1,methodId:2}),{presetId:f,methodId:c}=y.exec(p.url).groups,_=c.startsWith("H"),w=d(f),g=c.substring(1,_?c.indexOf("C"):void 0),P=i(h(n)),S=i(h(r));if("DELETE"===p.method)if(_){const e=o(c.substring(c.indexOf("C")+1));await i(h(e,{method:"DELETE"}))}else{const e={gateway_uri:""},t=JSON.stringify(e);await i(h(w,{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(_){const e=h(l(g),{method:p.method,body:"PATCH"===p.method?U:null}),t=await P,s=await i(e);a="DELETE"===p.method?JSON.stringify({message:"Payment method was successfully deleted."}):JSON.stringify(u({paymentMethodSetHostedPaymentGatewayId:c.substring(c.indexOf("C")+1),hostedPaymentGateway:s,paymentPresetId:f,helper:t.values[s.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,s=await i(e);a="DELETE"===p.method?JSON.stringify({message:"Payment method was successfully deleted."}):JSON.stringify(u({paymentGateway:s,paymentPresetId:f,helper:t.values[s.type],base:new URL(p.url).origin}))}}catch(e){a=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(a,{status:t})}let L,E=e=>e;class G extends e{constructor(){super(...arguments),this.paymentMethodSetHostedPaymentGatewaysUrl=null,this.hostedPaymentGatewaysHelperUrl=null,this.hostedPaymentGatewaysUrl=null,this.paymentGatewaysHelperUrl=null,this.paymentMethodSetsUrl=null,this.fraudProtectionsUrl=null,this.paymentGatewaysUrl=null,this.__api=new o(this),this.__fetch=this.__api.fetch.bind(this.__api),this.__handleFetch=e=>{if(!(e instanceof a))return;if(!e.request.url.startsWith("https://foxy-payments-api.element/"))return;if(e.defaultPrevented)return;const{paymentMethodSetHostedPaymentGatewaysUrl:t,hostedPaymentGatewaysHelperUrl:n,paymentGatewaysHelperUrl:r,hostedPaymentGatewaysUrl:o,paymentMethodSetsUrl:i,fraudProtectionsUrl:d,paymentGatewaysUrl:p}=this;if(null===t)return;if(null===n)return;if(null===r)return;if(null===o)return;if(null===i)return;if(null===d)return;if(null===p)return;const h=e=>t=>{const a=new URL(e);return a.pathname.endsWith("/")||(a.pathname+="/"),a.pathname+=t,a.toString()},c=function(e){const t=[[s(/\/payment_presets\/(.+)\/payment_methods\/(.+)/,{presetId:1,methodId:2}),b],[s(/\/payment_presets\/(.+)\/available_fraud_protections/,{presetId:1}),m],[s(/\/payment_presets\/(.+)\/available_payment_methods/,{presetId:1}),l],[s(/\/payment_presets\/(.+)\/fraud_protections\/(.+)/,{presetId:1,protectionId:2}),f],[s(/\/payment_presets\/(.+)\/fraud_protections/,{presetId:1}),y],[s(/\/payment_presets\/(.+)\/payment_methods/,{presetId:1}),_],[s(/\/payment_presets\/(.+)/,{presetId:1}),U],[/\/payment_presets/,S]];for(const[a,s]of t)if(a.test(new URL(e.request.url).pathname))return s(e);return null}({hostedPaymentGatewaysHelperUrl:n,paymentGatewaysHelperUrl:r,hostedPaymentGatewaysUrl:o,paymentMethodSetsUrl:i,fraudProtectionsUrl:d,paymentGatewaysUrl:p,getPaymentMethodSetHostedPaymentGatewayUrl:h(t),getHostedPaymentGatewayUrl:h(o),getPaymentMethodSetUrl:h(i),getFraudProtectionUrl:h(d),getPaymentGatewayUrl:h(p),request:e.request,fetch:this.__fetch});c&&(e.preventDefault(),e.respondWith(c))}}static get properties(){return{paymentMethodSetHostedPaymentGatewaysUrl:{attribute:"payment-method-set-hosted-payment-gateways-url"},hostedPaymentGatewaysHelperUrl:{attribute:"hosted-payment-gateways-helper-url"},hostedPaymentGatewaysUrl:{attribute:"hosted-payment-gateways-url"},paymentGatewaysHelperUrl:{attribute:"payment-gateways-helper-url"},paymentMethodSetsUrl:{attribute:"payment-method-sets-url"},fraudProtectionsUrl:{attribute:"fraud-protections-url"},paymentGatewaysUrl:{attribute:"payment-gateways-url"}}}connectedCallback(){super.connectedCallback(),this.addEventListener("fetch",this.__handleFetch)}render(){return t(L||(L=E`<slot></slot>`))}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("fetch",this.__handleFetch)}}customElements.define("foxy-payments-api",G);export{G as PaymentsApi};
1
+ import{L as e,h as t}from"./shared-7f33a83a.js";import{F as a}from"./shared-002b788f.js";import{l as s,_ as n,k as r}from"./shared-a8ced8bf.js";import{A as o}from"./shared-dc798bf4.js";async function i(e){const t=await e;if(!t.ok)throw new Error(await t.text());return t.json()}async function l(e){var t;let a,n;try{const{hostedPaymentGatewaysHelperUrl:r,paymentGatewaysHelperUrl:o,getPaymentMethodSetUrl:l,request:d,fetch:m}=e;if("GET"!==d.method)throw a=405,new Error("Method not allowed. Allowed methods: GET.");const p=s(/\/payment_presets\/(.+)\/available_payment_methods/,{presetId:1}).exec(new URL(d.url).pathname).groups.presetId,h=i(m(r)),y=i(m(o)),f=null===(t=(await i(m(l(p))))._links["fx:payment_gateway"])||void 0===t?void 0:t.href,c=f?await i(m(f)):void 0,u=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:c,base:new URL(d.url).origin});n=JSON.stringify(u),a=200}catch(e){n=e instanceof Error?e.message:String(e),a=null!=a?a:500}return new Response(n,{status:a})}function d(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 if your webhook fails.",default_value:"",options:[{name:"Reject",value:"reject"},{name:"Approve",value:"approve"}]}]}]}}}}}async function m(e){let t,a;try{const{request:n}=e;if("GET"!==n.method)throw t=405,new Error("Method not allowed. Allowed methods: GET.");const r=d({paymentPresetId:s(/\/payment_presets\/(.+)\/available_fraud_protections/,{presetId:1}).exec(new URL(n.url).pathname).groups.presetId,base:new URL(n.url).origin});a=JSON.stringify(r),t=200}catch(e){a=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(a,{status:t})}const p=["_links"];function h(e){const{paymentMethodSetFraudProtectionId:t,paymentPresetId:a,fraudProtection:s,base:o}=e,{_links:i}=s,l=r(s,p),m=d({paymentPresetId:a,base:o}),h=`${new URL(i.self.href).pathname.split("/").pop()}C${t}`,y=new URL(`./payment_presets/${a}`,o),f=new URL(`./payment_presets/${a}/fraud_protections/${h}`,o);return n(n({_links:{self:{href:f.toString()},"fx:store":i["fx:store"],"fx:payment_preset":{href:y.toString()}}},l),{},{helper:m.values[s.type]})}async function y(e){var t,a;let n,r;try{const{fraudProtectionsUrl:o,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 p=new URL(d.url),y=s(/\/payment_presets\/(.+)\/fraud_protections/,{presetId:1}).exec(p.pathname).groups.presetId,f=await i(m(l(y)));if("GET"===d.method){const e=parseInt(null!==(t=p.searchParams.get("offset"))&&void 0!==t?t:"0"),s=parseInt(null!==(a=p.searchParams.get("limit"))&&void 0!==a?a:"20"),o=new URL(f._links["fx:payment_method_set_fraud_protections"].href);o.searchParams.set("offset",String(Math.max(0,e-1))),o.searchParams.set("limit",String(s));const l=await i(m(o.toString())),c=await Promise.all(l._embedded["fx:payment_method_set_fraud_protections"].map((async e=>i(m(e._links["fx:fraud_protection"].href))))),u=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 h({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:c,paymentPresetId:y,base:new URL(d.url).origin});n=200,r=JSON.stringify(u)}else{const e=await d.json();delete e.helper;const t=m(o,{method:"POST",body:JSON.stringify(e)}),a=await i(t),s=await i(m(f._links["fx:payment_method_set_fraud_protections"].href,{method:"POST",body:JSON.stringify({payment_method_set_uri:f._links.self.href,fraud_protection_uri:a._links.self.href})})),l=h({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 f(e){let t,a;try{const{getPaymentMethodSetUrl:n,getFraudProtectionUrl:r,request:o,fetch:l}=e;if(!["GET","PATCH","DELETE"].includes(o.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, PATCH, DELETE.");const d=s(/\/payment_presets\/(.+)\/fraud_protections\/(.+)/,{presetId:1,protectionId:2}),{presetId:m,protectionId:p}=d.exec(o.url).groups,y=n(m),f=p.substring(0,p.indexOf("C"));if("DELETE"===o.method){const e=(await i(l(y)))._links["fx:payment_method_set_fraud_protections"].href,t=new URL(e);t.searchParams.set("fraud_protection_id",f);const a=await i(l(t.toString())),s=a._embedded["fx:payment_method_set_fraud_protections"].map((e=>i(l(e._links.self.href,{method:"DELETE"}))));await Promise.all(s)}let c=await o.text();try{const e=JSON.parse(c);delete e.helper,c=JSON.stringify(e)}catch(e){}const u=l(r(f),{method:o.method,body:"PATCH"===o.method?c:null}),_=await i(u);a="DELETE"===o.method?JSON.stringify({message:"Fraud protection was successfully deleted."}):JSON.stringify(h({paymentMethodSetFraudProtectionId:p.substring(p.indexOf("C")+1),fraudProtection:_,paymentPresetId:m,base:new URL(o.url).origin}))}catch(e){a=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(a,{status:t})}const c=["_links"];function u(e){const{paymentPresetId:t,helper:a,base:s}=e,o="paymentGateway"in e?e.paymentGateway:e.hostedPaymentGateway,{_links:i}=o,l=r(o,c),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}`,s),h=new URL(`./payment_presets/${t}/payment_methods/${m}`,s);return n(n({_links:{self:{href:h.toString()},"fx:store":i["fx:store"],"fx:payment_preset":{href:p.toString()}}},l),{},{helper:a})}async function _(e){var t,a,n,r;let o,l;try{const{hostedPaymentGatewaysHelperUrl:d,paymentGatewaysHelperUrl:m,hostedPaymentGatewaysUrl:p,getPaymentMethodSetUrl:h,paymentGatewaysUrl:y,request:f,fetch:c}=e;if(!["GET","POST"].includes(f.method))throw o=405,new Error("Method not allowed. Allowed methods: GET, POST.");const _=new URL(f.url),w=s(/\/payment_presets\/(.+)\/payment_methods/,{presetId:1}).exec(_.pathname).groups.presetId,[g,P,S]=await Promise.all([i(c(d)),i(c(m)),i(c(h(w)))]);if("GET"===f.method){const e=parseInt(null!==(t=_.searchParams.get("offset"))&&void 0!==t?t:"0"),s=parseInt(null!==(a=_.searchParams.get("limit"))&&void 0!==a?a:"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(s));const d=null===(n=S._links["fx:payment_gateway"])||void 0===n?void 0:n.href,[m,p]=await Promise.all([d&&0===e?i(c(d)):null,i(c(r.toString()))]),h=await Promise.all(p._embedded["fx:payment_method_set_hosted_payment_gateways"].map((async e=>i(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"),f=s.total_items+(l?1:0),c=s.returned_items+(l&&"not-on-page"!==l?1:0),_=new URL(`/payment_presets/${i}/payment_methods`,m);_.search=d;const w=new URL(_.toString()),g=new URL(_.toString()),P=new URL(_.toString()),S=new URL(_.toString());w.searchParams.set("limit",String(y)),w.searchParams.set("offset",String(h)),g.searchParams.set("limit",String(y)),g.searchParams.set("offset",String(Math.max(0,f-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,f-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 u(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:w.toString()},last:{href:g.toString()},prev:{href:P.toString()},next:{href:S.toString()},self:{href:_.toString()}},_embedded:{"fx:payment_methods":U},returned_items:c,total_items:f,offset:h,limit:y}}({paymentMethodSetHostedPaymentGateways:p,hostedPaymentGatewaysHelper:g,paymentGatewaysHelper:P,hostedPaymentGateways:h,paymentPresetId:w,paymentGateway:m||(d?"not-on-page":void 0),query:new URL(f.url).search,base:new URL(f.url).origin});o=200,l=JSON.stringify(y)}else{const e=await f.clone().json(),t=!!g.values[null!==(r=e.type)&&void 0!==r?r:""];if(delete e.helper,t){const t=await i(c(p,{method:"POST",body:JSON.stringify(e)})),a=await i(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=u({paymentMethodSetHostedPaymentGatewayId:new URL(a._links.self.href).pathname.split("/").pop(),hostedPaymentGateway:t,paymentPresetId:w,helper:g.values[t.type],base:new URL(f.url).origin});o=200,l=JSON.stringify(s)}else{const t=c(y,{method:f.method,body:JSON.stringify(e)}),a=await i(t),s={gateway_uri:a._links.self.href};await Promise.all([i(c(S._links.self.href,{method:"PATCH",body:JSON.stringify(s)})),S.gateway_uri?i(c(S.gateway_uri,{method:"DELETE"})):null]);const n=u({paymentPresetId:w,paymentGateway:a,helper:P.values[a.type],base:new URL(f.url).origin});o=200,l=JSON.stringify(n)}}}catch(e){l=e instanceof Error?e.message:String(e),o=null!=o?o:500}return new Response(l,{status:o})}const w=["_links"];function g(e){const{paymentMethodSet:t,base:a}=e,{_links:s}=t,o=r(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":s["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 P=["_embedded","_links"];async function S(e){let t,a;try{const{paymentMethodSetsUrl:s,request:o,fetch:l}=e;if(!["GET","POST"].includes(o.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, POST.");const d=new URL(o.url),m=new URL(s);let p;if(m.search=d.search,"POST"===o.method){const e=l(m.toString(),{method:"POST",body:await o.text()});p=g({paymentMethodSet:await i(e),base:d.origin})}else p=function(e){const{paymentMethodSets:t,base:a}=e,{_embedded:s,_links:o}=t,i=r(t,P),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 f=new URL("./payment_presets",a),c=new URL(o.next.href);f.search=c.search;const u=new URL("./payment_presets",a),_=new URL(o.self.href);return u.search=_.search,n(n({},i),{},{_links:{first:{href:l.toString()},last:{href:m.toString()},prev:{href:h.toString()},next:{href:f.toString()},self:{href:u.toString()}},_embedded:{"fx:payment_presets":s["fx:payment_method_sets"].map((e=>g({paymentMethodSet:e,base:a})))}})}({paymentMethodSets:await i(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 U(e){let t,a;try{const{getPaymentMethodSetUrl:n,request:r,fetch:o}=e;if(!["GET","PATCH","DELETE"].includes(r.method))throw t=405,new Error("Method not allowed. Allowed methods: GET, PATCH, DELETE.");const l=s(/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 i(o(m.toString(),{method:r.method,body:"PATCH"===r.method?await r.text():null}));a="DELETE"===r.method?JSON.stringify({message:"Payment preset was successfully deleted."}):JSON.stringify(g({paymentMethodSet:p,base:new URL(r.url).origin}))}catch(e){a=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(a,{status:t})}async function b(e){let t,a;try{const{hostedPaymentGatewaysHelperUrl:n,paymentGatewaysHelperUrl:r,getPaymentMethodSetHostedPaymentGatewayUrl:o,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=s(/\/payment_presets\/(.+)\/payment_methods\/(.+)/,{presetId:1,methodId:2}),{presetId:f,methodId:c}=y.exec(p.url).groups,_=c.startsWith("H"),w=d(f),g=c.substring(1,_?c.indexOf("C"):void 0),P=i(h(n)),S=i(h(r));if("DELETE"===p.method)if(_){const e=o(c.substring(c.indexOf("C")+1));await i(h(e,{method:"DELETE"}))}else{const e={gateway_uri:""},t=JSON.stringify(e);await i(h(w,{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(_){const e=h(l(g),{method:p.method,body:"PATCH"===p.method?U:null}),t=await P,s=await i(e);a="DELETE"===p.method?JSON.stringify({message:"Payment method was successfully deleted."}):JSON.stringify(u({paymentMethodSetHostedPaymentGatewayId:c.substring(c.indexOf("C")+1),hostedPaymentGateway:s,paymentPresetId:f,helper:t.values[s.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,s=await i(e);a="DELETE"===p.method?JSON.stringify({message:"Payment method was successfully deleted."}):JSON.stringify(u({paymentGateway:s,paymentPresetId:f,helper:t.values[s.type],base:new URL(p.url).origin}))}}catch(e){a=e instanceof Error?e.message:String(e),t=null!=t?t:500}return new Response(a,{status:t})}let L,E=e=>e;class G extends e{constructor(){super(...arguments),this.paymentMethodSetHostedPaymentGatewaysUrl=null,this.hostedPaymentGatewaysHelperUrl=null,this.hostedPaymentGatewaysUrl=null,this.paymentGatewaysHelperUrl=null,this.paymentMethodSetsUrl=null,this.fraudProtectionsUrl=null,this.paymentGatewaysUrl=null,this.__api=new o(this),this.__fetch=this.__api.fetch.bind(this.__api),this.__handleFetch=e=>{if(!(e instanceof a))return;if(!e.request.url.startsWith("https://foxy-payments-api.element/"))return;if(e.defaultPrevented)return;const{paymentMethodSetHostedPaymentGatewaysUrl:t,hostedPaymentGatewaysHelperUrl:n,paymentGatewaysHelperUrl:r,hostedPaymentGatewaysUrl:o,paymentMethodSetsUrl:i,fraudProtectionsUrl:d,paymentGatewaysUrl:p}=this;if(null===t)return;if(null===n)return;if(null===r)return;if(null===o)return;if(null===i)return;if(null===d)return;if(null===p)return;const h=e=>t=>{const a=new URL(e);return a.pathname.endsWith("/")||(a.pathname+="/"),a.pathname+=t,a.toString()},c=function(e){const t=[[s(/\/payment_presets\/(.+)\/payment_methods\/(.+)/,{presetId:1,methodId:2}),b],[s(/\/payment_presets\/(.+)\/available_fraud_protections/,{presetId:1}),m],[s(/\/payment_presets\/(.+)\/available_payment_methods/,{presetId:1}),l],[s(/\/payment_presets\/(.+)\/fraud_protections\/(.+)/,{presetId:1,protectionId:2}),f],[s(/\/payment_presets\/(.+)\/fraud_protections/,{presetId:1}),y],[s(/\/payment_presets\/(.+)\/payment_methods/,{presetId:1}),_],[s(/\/payment_presets\/(.+)/,{presetId:1}),U],[/\/payment_presets/,S]];for(const[a,s]of t)if(a.test(new URL(e.request.url).pathname))return s(e);return null}({hostedPaymentGatewaysHelperUrl:n,paymentGatewaysHelperUrl:r,hostedPaymentGatewaysUrl:o,paymentMethodSetsUrl:i,fraudProtectionsUrl:d,paymentGatewaysUrl:p,getPaymentMethodSetHostedPaymentGatewayUrl:h(t),getHostedPaymentGatewayUrl:h(o),getPaymentMethodSetUrl:h(i),getFraudProtectionUrl:h(d),getPaymentGatewayUrl:h(p),request:e.request,fetch:this.__fetch});c&&(e.preventDefault(),e.respondWith(c))}}static get properties(){return{paymentMethodSetHostedPaymentGatewaysUrl:{attribute:"payment-method-set-hosted-payment-gateways-url"},hostedPaymentGatewaysHelperUrl:{attribute:"hosted-payment-gateways-helper-url"},hostedPaymentGatewaysUrl:{attribute:"hosted-payment-gateways-url"},paymentGatewaysHelperUrl:{attribute:"payment-gateways-helper-url"},paymentMethodSetsUrl:{attribute:"payment-method-sets-url"},fraudProtectionsUrl:{attribute:"fraud-protections-url"},paymentGatewaysUrl:{attribute:"payment-gateways-url"}}}connectedCallback(){super.connectedCallback(),this.addEventListener("fetch",this.__handleFetch)}render(){return t(L||(L=E`<slot></slot>`))}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("fetch",this.__handleFetch)}}customElements.define("foxy-payments-api",G);export{G as PaymentsApi};
@@ -1 +1 @@
1
- import"./shared-74b7438a.js";import"./shared-6dafebaf.js";export{Q as QueryBuilder}from"./shared-8dee6348.js";import"./shared-86be537c.js";import"./shared-a5000f1f.js";import"./shared-a8ced8bf.js";import"./shared-7f33a83a.js";import"./shared-e6f3e9f0.js";import"./shared-4e709717.js";import"./shared-d3bf9ac0.js";import"./shared-bc7f58ef.js";import"./shared-d519a301.js";import"./shared-4f037e43.js";
1
+ import"./shared-ea316e64.js";import"./shared-c484320b.js";export{Q as QueryBuilder}from"./shared-a86761d3.js";import"./shared-c52d3772.js";import"./shared-29e21467.js";import"./shared-a8ced8bf.js";import"./shared-7f33a83a.js";import"./shared-e6f3e9f0.js";import"./shared-4e709717.js";import"./shared-d3bf9ac0.js";import"./shared-bc7f58ef.js";import"./shared-d519a301.js";import"./shared-4f037e43.js";
@@ -1,4 +1,4 @@
1
- import{C as e}from"./shared-88924652.js";import{D as t,a as i}from"./shared-f22d1ed9.js";import{C as a,e as s,c as n}from"./shared-a8ada44e.js";import{h as r,B as d,P as l}from"./shared-86be537c.js";import{T as o,E as h,C as m}from"./shared-7ca327ea.js";import{T as _}from"./shared-45418f3b.js";import"./shared-93c15291.js";import"./shared-3ef5c283.js";import"./shared-d1b62ccd.js";import"./shared-cd14b0cc.js";import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-b98f0ad9.js";import{_ as c}from"./shared-a8ced8bf.js";import"./shared-6dafebaf.js";import"./shared-8033b140.js";import{h as u,f as p}from"./shared-7f33a83a.js";import{S as g,R as v,T as f,a as b}from"./shared-a5000f1f.js";import{c as y}from"./shared-4e709717.js";import{C as k,a as T}from"./shared-5606cd36.js";import"./shared-760cc838.js";import"./shared-8704e701.js";import"./shared-eefa4103.js";import"./shared-398b3c49.js";import{G as x}from"./shared-0953a0e7.js";import{P as $}from"./shared-d58e7670.js";import{C as D}from"./shared-a8966936.js";import{N as E}from"./shared-15278fe0.js";import{i as w}from"./shared-d3bf9ac0.js";import{l as S}from"./shared-f3b35364.js";import"./shared-74b7438a.js";import"./shared-4f037e43.js";import"./shared-2af327d0.js";import"./shared-fd124dfd.js";import"./shared-11c2efc8.js";import"./shared-4a796610.js";import"./shared-a420358e.js";import"./shared-d6276c83.js";
1
+ import{C as e}from"./shared-bb522838.js";import{D as t,a as i}from"./shared-7661b51a.js";import{C as a,b as s,a as n}from"./shared-b28dbc68.js";import{h as r,B as d,P as l}from"./shared-c52d3772.js";import{T as o,E as h,C as m}from"./shared-7b167fe9.js";import{T as _}from"./shared-2215e6c8.js";import"./shared-6b8874a7.js";import"./shared-85f9051e.js";import"./shared-b8e9b536.js";import"./shared-e3ce88dc.js";import"./shared-ef0fc329.js";import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-0672e78b.js";import{_ as c}from"./shared-a8ced8bf.js";import"./shared-c484320b.js";import"./shared-f2d19582.js";import{h as u,f as p}from"./shared-7f33a83a.js";import{S as g,R as v,T as f,a as b}from"./shared-29e21467.js";import{c as y}from"./shared-4e709717.js";import{C as k,a as T}from"./shared-1b3e1a0d.js";import"./shared-4975f86f.js";import"./shared-5504f415.js";import"./shared-d43fc5cc.js";import"./shared-34b11d34.js";import{G as x}from"./shared-3a3878c9.js";import{P as $}from"./shared-162fc285.js";import{C as D}from"./shared-5ad8c9a0.js";import{N as E}from"./shared-b7423eab.js";import{i as w}from"./shared-d3bf9ac0.js";import{l as S}from"./shared-f3b35364.js";import"./shared-e396ec04.js";import"./shared-923da875.js";import"./shared-ea316e64.js";import"./shared-4f037e43.js";import"./shared-002b788f.js";import"./shared-6d2064e9.js";import"./shared-11c2efc8.js";import"./shared-dcbf57e0.js";import"./shared-dc798bf4.js";import"./shared-d6276c83.js";
2
2
  /**
3
3
  @license
4
4
  Copyright (c) 2017 Vaadin Ltd.
@@ -1,4 +1,4 @@
1
- import"./foxy-spinner.js";import"./shared-b98f0ad9.js";import{T as n}from"./shared-6b471536.js";import{a as e}from"./shared-a5000f1f.js";import"./shared-6dafebaf.js";import"./shared-86be537c.js";import"./shared-74b7438a.js";import"./shared-a8ced8bf.js";import"./shared-7f33a83a.js";import"./shared-4f037e43.js";import"./shared-2af327d0.js";import"./shared-a8966936.js";import"./shared-d3bf9ac0.js";import"./foxy-nucleon-element.js";import"./shared-15278fe0.js";import"./shared-a420358e.js";import"./shared-d6276c83.js";import"./shared-4a796610.js";import"./shared-4e709717.js";let a,s,o,r,t,l,i,d,m,f,y,h=n=>n;class p extends(e(n,"reports-table")){constructor(){super(...arguments),this.columns=[p.nameColumn,p.startColumn,p.endColumn,p.createdOnColumn,p.linkColumn]}}p.nameColumn={header:({html:n,lang:e,ns:s})=>n(a||(a=h`<foxy-i18n lang=${0} key="report_name" ns=${0}></foxy-i18n>`),e,s),cell:({html:n,data:e,lang:a,ns:o})=>{const r=`report_name_${e.name}`;return n(s||(s=h`<foxy-i18n class="font-semibold" lang=${0} key=${0} ns=${0}></foxy-i18n>`),a,r,o)}},p.startColumn={hideBelow:"md",header:({html:n,lang:e,ns:a})=>n(o||(o=h`<foxy-i18n lang=${0} key="range_start" ns=${0}></foxy-i18n>`),e,a),cell:({html:n,data:e,lang:a,ns:s})=>n(r||(r=h`
1
+ import"./foxy-spinner.js";import"./shared-0672e78b.js";import{T as n}from"./shared-cced7800.js";import{a as e}from"./shared-29e21467.js";import"./shared-c484320b.js";import"./shared-c52d3772.js";import"./shared-ea316e64.js";import"./shared-a8ced8bf.js";import"./shared-7f33a83a.js";import"./shared-4f037e43.js";import"./shared-002b788f.js";import"./shared-5ad8c9a0.js";import"./shared-d3bf9ac0.js";import"./foxy-nucleon-element.js";import"./shared-b7423eab.js";import"./shared-dc798bf4.js";import"./shared-d6276c83.js";import"./shared-dcbf57e0.js";import"./shared-4e709717.js";let a,s,o,r,t,l,i,d,m,f,y,h=n=>n;class p extends(e(n,"reports-table")){constructor(){super(...arguments),this.columns=[p.nameColumn,p.startColumn,p.endColumn,p.createdOnColumn,p.linkColumn]}}p.nameColumn={header:({html:n,lang:e,ns:s})=>n(a||(a=h`<foxy-i18n lang=${0} key="report_name" ns=${0}></foxy-i18n>`),e,s),cell:({html:n,data:e,lang:a,ns:o})=>{const r=`report_name_${e.name}`;return n(s||(s=h`<foxy-i18n class="font-semibold" lang=${0} key=${0} ns=${0}></foxy-i18n>`),a,r,o)}},p.startColumn={hideBelow:"md",header:({html:n,lang:e,ns:a})=>n(o||(o=h`<foxy-i18n lang=${0} key="range_start" ns=${0}></foxy-i18n>`),e,a),cell:({html:n,data:e,lang:a,ns:s})=>n(r||(r=h`
2
2
  <foxy-i18n
3
3
  options=${0}
4
4
  lang=${0}
@@ -1,4 +1,4 @@
1
- import"./foxy-address-card.js";import"./foxy-item-form.js";import"./foxy-item-card.js";import"./shared-b98f0ad9.js";import"./shared-5c837b54.js";import{I as s}from"./shared-7ab9beb2.js";import{_ as r}from"./shared-a8ced8bf.js";import{h as e}from"./shared-7f33a83a.js";import{i as t}from"./shared-d3bf9ac0.js";import{a as i}from"./shared-a5000f1f.js";import{B as o}from"./shared-2af327d0.js";import{C as a}from"./shared-a8966936.js";import"./shared-6dafebaf.js";import"./shared-86be537c.js";import"./shared-74b7438a.js";import"./shared-4610cbdb.js";import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-4f037e43.js";import"./shared-15278fe0.js";import"./shared-a420358e.js";import"./shared-d6276c83.js";import"./shared-4a796610.js";import"./shared-4e709717.js";import"./shared-38df92f3.js";import"./shared-eefa4103.js";import"./shared-45418f3b.js";import"./shared-7ca327ea.js";import"./shared-398b3c49.js";import"./shared-10dbb9d7.js";import"./shared-ffea7639.js";import"./shared-abf68928.js";import"./shared-b567541a.js";import"./shared-081ad02f.js";import"./shared-3ef5c283.js";import"./shared-cd14b0cc.js";import"./shared-760cc838.js";import"./foxy-discount-detail-card.js";import"./shared-2a56246b.js";import"./foxy-coupon-detail-card.js";import"./foxy-item-option-card.js";import"./foxy-item-option-form.js";import"./foxy-attribute-card.js";import"./foxy-attribute-form.js";import"./shared-fd124dfd.js";import"./shared-8033b140.js";import"./shared-5606cd36.js";import"./shared-88924652.js";import"./shared-a8ada44e.js";import"./shared-11c2efc8.js";import"./shared-8704e701.js";import"./shared-d1b62ccd.js";import"./shared-0953a0e7.js";import"./shared-d58e7670.js";import"./foxy-coupon-card.js";import"./shared-0d91f648.js";import"./foxy-discount-builder.js";import"./shared-d519a301.js";import"./shared-e6f3e9f0.js";import"./shared-890a22af.js";import"./shared-f22d1ed9.js";import"./shared-bc7f58ef.js";import"./shared-b6a37360.js";import"./foxy-subscription-card.js";import"./shared-8ab29d7d.js";import"./foxy-subscription-form.js";import"./foxy-cancellation-form.js";import"./foxy-collection-pages.js";import"./foxy-collection-page.js";import"./foxy-form-dialog.js";import"./shared-c29811ec.js";import"./shared-1d34726a.js";import"./foxy-table.js";import"./shared-6b471536.js";import"./foxy-nucleon-element.js";import"./shared-9195959e.js";import"./shared-75e78c70.js";import"./shared-a861c770.js";import"./foxy-pagination.js";let d,m,p=s=>s;const c=a(i(s,"shipment-card"));class n extends c{constructor(){super(...arguments),this.__customerAddresses="",this.__currencyDisplay="",this.__itemCategories="",this.__editable=!1,this.__currency="",this.__coupons=""}static get properties(){return r(r({},super.properties),{},{__customerAddresses:{attribute:!1},__currencyDisplay:{attribute:!1},__itemCategories:{attribute:!1},__editable:{attribute:!1},__currency:{attribute:!1},__coupons:{attribute:!1}})}get hiddenSelector(){return new o(`address:not=full-address ${super.hiddenSelector.toString()}`)}get readonlySelector(){return this.__editable?super.readonlySelector:o.True}renderBody(){var s,r,i;let o;if(this.data)try{const s=new URL(this.data._links["fx:items"].href);s.searchParams.set("zoom","item_options"),o=s.toString()}catch(s){}return e(m||(m=p` <div class="space-y-m"> <foxy-address-card infer="address" href="${0}"> <div slot="full-address:after" class="flex items-center text-m space-x-s text-secondary"> <iron-icon icon="maps:local-shipping" class="icon-inline flex-shrink-0"></iron-icon> <span class="truncate"> ${0} &bull; <foxy-i18n options="${0}" key="price" infer=""> </foxy-i18n> </span> </div> </foxy-address-card> <foxy-internal-async-details-control infer="items" first="${0}" limit="5" item="foxy-item-card" open .form="${0}"> </foxy-internal-async-details-control> </div> `),t(null===(s=this.data)||void 0===s?void 0:s._links["fx:customer_address"].href),null===(r=this.data)||void 0===r?void 0:r.shipping_service_description,JSON.stringify({amount:`${null===(i=this.data)||void 0===i?void 0:i.total_shipping} ${this.__currency}`,currencyDisplay:this.__currencyDisplay}),t(o),(({html:s,dialog:r,handleFetch:e,handleUpdate:t})=>s(d||(d=p`
1
+ import"./foxy-address-card.js";import"./foxy-item-form.js";import"./foxy-item-card.js";import"./shared-0672e78b.js";import"./shared-40537775.js";import{I as s}from"./shared-6e6ed30a.js";import{_ as r}from"./shared-a8ced8bf.js";import{h as e}from"./shared-7f33a83a.js";import{i as t}from"./shared-d3bf9ac0.js";import{a as i}from"./shared-29e21467.js";import{B as o}from"./shared-002b788f.js";import{C as a}from"./shared-5ad8c9a0.js";import"./shared-c484320b.js";import"./shared-c52d3772.js";import"./shared-ea316e64.js";import"./shared-b5cbbdd8.js";import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-4f037e43.js";import"./shared-b7423eab.js";import"./shared-dc798bf4.js";import"./shared-d6276c83.js";import"./shared-dcbf57e0.js";import"./shared-4e709717.js";import"./shared-40d82f6b.js";import"./shared-d43fc5cc.js";import"./shared-6b8874a7.js";import"./shared-7b167fe9.js";import"./shared-2215e6c8.js";import"./shared-34b11d34.js";import"./shared-71deb26e.js";import"./shared-4c338ca6.js";import"./shared-4457dc27.js";import"./shared-92bd849f.js";import"./shared-b8e9b536.js";import"./shared-ef0fc329.js";import"./shared-4975f86f.js";import"./foxy-discount-detail-card.js";import"./shared-6003864d.js";import"./foxy-coupon-detail-card.js";import"./foxy-item-option-card.js";import"./foxy-item-option-form.js";import"./foxy-attribute-card.js";import"./foxy-attribute-form.js";import"./shared-6d2064e9.js";import"./shared-f2d19582.js";import"./shared-1b3e1a0d.js";import"./shared-bb522838.js";import"./shared-b28dbc68.js";import"./shared-e396ec04.js";import"./shared-11c2efc8.js";import"./shared-5504f415.js";import"./shared-e3ce88dc.js";import"./shared-923da875.js";import"./shared-3a3878c9.js";import"./shared-162fc285.js";import"./foxy-coupon-card.js";import"./shared-2f1e04ae.js";import"./foxy-discount-builder.js";import"./shared-d519a301.js";import"./shared-e6f3e9f0.js";import"./shared-29376ba1.js";import"./shared-7661b51a.js";import"./shared-bc7f58ef.js";import"./shared-5b55627c.js";import"./foxy-subscription-card.js";import"./shared-236d9b7e.js";import"./foxy-subscription-form.js";import"./foxy-cancellation-form.js";import"./foxy-collection-pages.js";import"./foxy-collection-page.js";import"./foxy-form-dialog.js";import"./shared-6bf8883f.js";import"./shared-e119731e.js";import"./foxy-table.js";import"./shared-cced7800.js";import"./foxy-nucleon-element.js";import"./shared-d302ad2c.js";import"./shared-75e78c70.js";import"./shared-facfe95a.js";import"./foxy-pagination.js";let d,c,m=s=>s;const p=a(i(s,"shipment-card"));class n extends p{constructor(){super(...arguments),this.__customerAddresses="",this.__currencyDisplay="",this.__itemCategories="",this.__editable=!1,this.__currency="",this.__coupons=""}static get properties(){return r(r({},super.properties),{},{__customerAddresses:{attribute:!1},__currencyDisplay:{attribute:!1},__itemCategories:{attribute:!1},__editable:{attribute:!1},__currency:{attribute:!1},__coupons:{attribute:!1}})}get hiddenSelector(){return new o(`address:not=full-address ${super.hiddenSelector.toString()}`)}get readonlySelector(){return this.__editable?super.readonlySelector:o.True}renderBody(){var s,r,i;let o;if(this.data)try{const s=new URL(this.data._links["fx:items"].href);s.searchParams.set("zoom","item_options"),o=s.toString()}catch(s){}return e(c||(c=m` <div class="space-y-m"> <foxy-address-card infer="address" href="${0}"> <div slot="full-address:after" class="flex items-center text-m space-x-s text-secondary"> <iron-icon icon="maps:local-shipping" class="icon-inline flex-shrink-0"></iron-icon> <span class="truncate"> ${0} &bull; <foxy-i18n options="${0}" key="price" infer=""> </foxy-i18n> </span> </div> </foxy-address-card> <foxy-internal-async-details-control infer="items" first="${0}" limit="5" item="foxy-item-card" open .form="${0}"> </foxy-internal-async-details-control> </div> `),t(null===(s=this.data)||void 0===s?void 0:s._links["fx:customer_address"].href),null===(r=this.data)||void 0===r?void 0:r.shipping_service_description,JSON.stringify({amount:`${null===(i=this.data)||void 0===i?void 0:i.total_shipping} ${this.__currency}`,currencyDisplay:this.__currencyDisplay}),t(o),(({html:s,dialog:r,handleFetch:e,handleUpdate:t})=>s(d||(d=m`
2
2
  <foxy-item-form
3
3
  customer-addresses=${0}
4
4
  item-categories=${0}
@@ -1 +1 @@
1
- import{I as t}from"./shared-7ab9beb2.js";import"./foxy-nucleon-element.js";import{_ as e}from"./shared-a8ced8bf.js";import{a as s}from"./shared-a5000f1f.js";import{i}from"./shared-d3bf9ac0.js";import{h as r}from"./shared-7f33a83a.js";import"./foxy-spinner.js";import"./shared-6dafebaf.js";import"./shared-86be537c.js";import"./shared-74b7438a.js";import"./shared-b98f0ad9.js";import"./shared-2af327d0.js";import"./shared-4f037e43.js";import"./shared-15278fe0.js";import"./shared-a420358e.js";import"./shared-d6276c83.js";import"./shared-4a796610.js";import"./shared-4e709717.js";let a,d,o,h=t=>t;const l=s(t,"shipping-method-card");class c extends l{constructor(){super(...arguments),this.storeShippingMethods=null,this.getImageSrc=null}static get defaultImageSrc(){return"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' fill='none' viewBox='0 0 40 40'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill='%23E8E8E8' d='M0 0h40v40H0z'/%3E%3Cpath fill='%23fff' d='M0 14.81V7.88L7.88 0h6.93L0 14.81ZM0 0h6.47L0 6.47V0Zm16.22 0L0 16.22v6.93l9-9V14c0-.55.2-1.02.59-1.41.39-.4.86-.59 1.41-.59h.15l12-12h-6.93ZM9 15.57l-9 9v6.93l9-9v-6.93Zm.15 8.19L0 32.91v6.93l12.33-12.33a3.28 3.28 0 0 1-.46-.39A2.9 2.9 0 0 1 11 25c-.55 0-1.02-.2-1.41-.59a2 2 0 0 1-.44-.65Zm4.17 4.17L1.26 40h6.92L23 25.18V25h-6c0 .83-.3 1.54-.88 2.13A2.9 2.9 0 0 1 14 28a3.2 3.2 0 0 1-.68-.07Zm11.85-3.5.26-.26A.98.98 0 0 1 26 24c.28 0 .52.1.71.29.2.19.29.43.29.71 0 .28-.1.52-.29.71A.94.94 0 0 1 26 26a.97.97 0 0 1-.71-.29A.97.97 0 0 1 25 25a1 1 0 0 1 .17-.57Z'/%3E%3Cpath fill='%23fff' d='M23.29 26.31 9.59 40h6.94L40 16.53V9.6l-9.6 9.6.4.53c.07.08.12.17.15.27s.05.2.05.32V24c0 .28-.1.52-.29.71A.94.94 0 0 1 30 25h-1c0 .83-.3 1.54-.88 2.13A2.9 2.9 0 0 1 26 28a3 3 0 0 1-2.71-1.69Zm6.51-7.92L40 8.19V1.25L25.26 16h2.24a1 1 0 0 1 .45.1 1 1 0 0 1 .35.3l1.5 1.99ZM25 14.84 39.84 0h-6.93l-12 12H23c.55 0 1.02.2 1.41.59.4.39.59.86.59 1.41v.84ZM19.5 12l12-12h-6.93l-12 12h6.93Zm-1.56 28L40 17.94v6.93L24.87 40h-6.93ZM40 26.29 26.29 40h6.93L40 33.22v-6.93ZM34.63 40 40 34.63V40h-5.37ZM13 25c0 .28.1.52.29.71.19.2.43.29.71.29.28 0 .52-.1.71-.29.2-.19.29-.43.29-.71 0-.28-.1-.52-.29-.71A.97.97 0 0 0 14 24c-.07 0-.14 0-.2.02a.95.95 0 0 0-.51.27.95.95 0 0 0-.29.71Z'/%3E%3Cpath fill='%23fff' d='M25 18v3h4.21l-.85-1.18-.68-.91L27 18h-2Z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h40v40H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E"}static get properties(){return e(e({},super.properties),{},{storeShippingMethods:{type:String,attribute:"store-shipping-methods"},getImageSrc:{attribute:!1}})}renderBody(){var t,e,s,l,n;const p=c.defaultImageSrc,f=this.data,m=this.renderRoot.querySelector("#methods"),g=1===(null===(s=null===(e=null===(t=null==m?void 0:m.data)||void 0===t?void 0:t._embedded)||void 0===e?void 0:e["fx:store_shipping_methods"])||void 0===s?void 0:s.length);let u;try{const t=new URL(this.storeShippingMethods);t.searchParams.set("shipping_method_id",this.href.split("/").pop()),t.searchParams.set("limit","1"),u=t.toString()}catch(t){u=void 0}return r(a||(a=h` ${0} <figure class="flex items-center gap-m h-m"> <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"> <dl class="flex justify-between gap-s"> <dt class="sr-only">${0}</dt> <dd class="font-semibold truncate flex-shrink-0">${0}&ZeroWidthSpace;</dd> ${0} </dl> </figcaption> </figure> `),"string"==typeof u?r(d||(d=h` <foxy-nucleon class="hidden" infer="" href="${0}" id="methods" @update="${0}"> </foxy-nucleon> `),i(u),(()=>this.requestUpdate())):"",null!==(n=f?null===(l=this.getImageSrc)||void 0===l?void 0:l.call(this,f.code):null)&&void 0!==n?n:p,this.t("image_alt"),(t=>t.currentTarget.src=p),this.t("title_description"),null==f?void 0:f.name,g?r(o||(o=h` <dt class="sr-only">${0}</dt> <dd class="truncate text-tertiary">${0}</dd> `),this.t("subtitle_description"),this.t("status_active")):"")}}customElements.define("foxy-shipping-method-card",c);export{c as ShippingMethodCard};
1
+ import{I as t}from"./shared-6e6ed30a.js";import"./foxy-nucleon-element.js";import{_ as e}from"./shared-a8ced8bf.js";import{a as s}from"./shared-29e21467.js";import{i}from"./shared-d3bf9ac0.js";import{h as r}from"./shared-7f33a83a.js";import"./foxy-spinner.js";import"./shared-c484320b.js";import"./shared-c52d3772.js";import"./shared-ea316e64.js";import"./shared-0672e78b.js";import"./shared-002b788f.js";import"./shared-4f037e43.js";import"./shared-b7423eab.js";import"./shared-dc798bf4.js";import"./shared-d6276c83.js";import"./shared-dcbf57e0.js";import"./shared-4e709717.js";let a,d,o,h=t=>t;const l=s(t,"shipping-method-card");class c extends l{constructor(){super(...arguments),this.storeShippingMethods=null,this.getImageSrc=null}static get defaultImageSrc(){return"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' fill='none' viewBox='0 0 40 40'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill='%23E8E8E8' d='M0 0h40v40H0z'/%3E%3Cpath fill='%23fff' d='M0 14.81V7.88L7.88 0h6.93L0 14.81ZM0 0h6.47L0 6.47V0Zm16.22 0L0 16.22v6.93l9-9V14c0-.55.2-1.02.59-1.41.39-.4.86-.59 1.41-.59h.15l12-12h-6.93ZM9 15.57l-9 9v6.93l9-9v-6.93Zm.15 8.19L0 32.91v6.93l12.33-12.33a3.28 3.28 0 0 1-.46-.39A2.9 2.9 0 0 1 11 25c-.55 0-1.02-.2-1.41-.59a2 2 0 0 1-.44-.65Zm4.17 4.17L1.26 40h6.92L23 25.18V25h-6c0 .83-.3 1.54-.88 2.13A2.9 2.9 0 0 1 14 28a3.2 3.2 0 0 1-.68-.07Zm11.85-3.5.26-.26A.98.98 0 0 1 26 24c.28 0 .52.1.71.29.2.19.29.43.29.71 0 .28-.1.52-.29.71A.94.94 0 0 1 26 26a.97.97 0 0 1-.71-.29A.97.97 0 0 1 25 25a1 1 0 0 1 .17-.57Z'/%3E%3Cpath fill='%23fff' d='M23.29 26.31 9.59 40h6.94L40 16.53V9.6l-9.6 9.6.4.53c.07.08.12.17.15.27s.05.2.05.32V24c0 .28-.1.52-.29.71A.94.94 0 0 1 30 25h-1c0 .83-.3 1.54-.88 2.13A2.9 2.9 0 0 1 26 28a3 3 0 0 1-2.71-1.69Zm6.51-7.92L40 8.19V1.25L25.26 16h2.24a1 1 0 0 1 .45.1 1 1 0 0 1 .35.3l1.5 1.99ZM25 14.84 39.84 0h-6.93l-12 12H23c.55 0 1.02.2 1.41.59.4.39.59.86.59 1.41v.84ZM19.5 12l12-12h-6.93l-12 12h6.93Zm-1.56 28L40 17.94v6.93L24.87 40h-6.93ZM40 26.29 26.29 40h6.93L40 33.22v-6.93ZM34.63 40 40 34.63V40h-5.37ZM13 25c0 .28.1.52.29.71.19.2.43.29.71.29.28 0 .52-.1.71-.29.2-.19.29-.43.29-.71 0-.28-.1-.52-.29-.71A.97.97 0 0 0 14 24c-.07 0-.14 0-.2.02a.95.95 0 0 0-.51.27.95.95 0 0 0-.29.71Z'/%3E%3Cpath fill='%23fff' d='M25 18v3h4.21l-.85-1.18-.68-.91L27 18h-2Z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h40v40H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E"}static get properties(){return e(e({},super.properties),{},{storeShippingMethods:{type:String,attribute:"store-shipping-methods"},getImageSrc:{attribute:!1}})}renderBody(){var t,e,s,l,n;const p=c.defaultImageSrc,m=this.data,f=this.renderRoot.querySelector("#methods"),g=1===(null===(s=null===(e=null===(t=null==f?void 0:f.data)||void 0===t?void 0:t._embedded)||void 0===e?void 0:e["fx:store_shipping_methods"])||void 0===s?void 0:s.length);let u;try{const t=new URL(this.storeShippingMethods);t.searchParams.set("shipping_method_id",this.href.split("/").pop()),t.searchParams.set("limit","1"),u=t.toString()}catch(t){u=void 0}return r(a||(a=h` ${0} <figure class="flex items-center gap-m h-m"> <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"> <dl class="flex justify-between gap-s"> <dt class="sr-only">${0}</dt> <dd class="font-semibold truncate flex-shrink-0">${0}&ZeroWidthSpace;</dd> ${0} </dl> </figcaption> </figure> `),"string"==typeof u?r(d||(d=h` <foxy-nucleon class="hidden" infer="" href="${0}" id="methods" @update="${0}"> </foxy-nucleon> `),i(u),(()=>this.requestUpdate())):"",null!==(n=m?null===(l=this.getImageSrc)||void 0===l?void 0:l.call(this,m.code):null)&&void 0!==n?n:p,this.t("image_alt"),(t=>t.currentTarget.src=p),this.t("title_description"),null==m?void 0:m.name,g?r(o||(o=h` <dt class="sr-only">${0}</dt> <dd class="truncate text-tertiary">${0}</dd> `),this.t("subtitle_description"),this.t("status_active")):"")}}customElements.define("foxy-shipping-method-card",c);export{c as ShippingMethodCard};
@@ -1 +1 @@
1
- import"./shared-a6339611.js";import"./shared-45418f3b.js";import"./shared-d8b14272.js";import"./shared-93c15291.js";import"./shared-3ef5c283.js";import"./shared-7ca327ea.js";import"./shared-6dafebaf.js";import"./shared-8033b140.js";import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-b98f0ad9.js";import{_ as e}from"./shared-a8ced8bf.js";import{h as t}from"./shared-7f33a83a.js";import{C as r}from"./shared-a8966936.js";import{N as i}from"./shared-15278fe0.js";import{T as n,a}from"./shared-a5000f1f.js";import{c as o}from"./shared-4e709717.js";import{i as s}from"./shared-d3bf9ac0.js";import{v as d}from"./shared-b738ee96.js";import"./shared-86be537c.js";import"./shared-74b7438a.js";import"./shared-4f037e43.js";import"./shared-2af327d0.js";import"./shared-a420358e.js";import"./shared-d6276c83.js";import"./shared-4a796610.js";!function(e){var t={};function r(i){if(t[i])return t[i].exports;var n=t[i]={i:i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(i,n,function(t){return e[t]}.bind(null,n));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=1)}([function(e,t,r){var i,n;void 0===(n="function"==typeof(i=function(){for(var e=[null,[[10,7,17,13],[1,1,1,1],[]],[[16,10,28,22],[1,1,1,1],[4,16]],[[26,15,22,18],[1,1,2,2],[4,20]],[[18,20,16,26],[2,1,4,2],[4,24]],[[24,26,22,18],[2,1,4,4],[4,28]],[[16,18,28,24],[4,2,4,4],[4,32]],[[18,20,26,18],[4,2,5,6],[4,20,36]],[[22,24,26,22],[4,2,6,6],[4,22,40]],[[22,30,24,20],[5,2,8,8],[4,24,44]],[[26,18,28,24],[5,4,8,8],[4,26,48]],[[30,20,24,28],[5,4,11,8],[4,28,52]],[[22,24,28,26],[8,4,11,10],[4,30,56]],[[22,26,22,24],[9,4,16,12],[4,32,60]],[[24,30,24,20],[9,4,16,16],[4,24,44,64]],[[24,22,24,30],[10,6,18,12],[4,24,46,68]],[[28,24,30,24],[10,6,16,17],[4,24,48,72]],[[28,28,28,28],[11,6,19,16],[4,28,52,76]],[[26,30,28,28],[13,6,21,18],[4,28,54,80]],[[26,28,26,26],[14,7,25,21],[4,28,56,84]],[[26,28,28,30],[16,8,25,20],[4,32,60,88]],[[26,28,30,28],[17,8,25,23],[4,26,48,70,92]],[[28,28,24,30],[17,9,34,23],[4,24,48,72,96]],[[28,30,30,30],[18,9,30,25],[4,28,52,76,100]],[[28,30,30,30],[20,10,32,27],[4,26,52,78,104]],[[28,26,30,30],[21,12,35,29],[4,30,56,82,108]],[[28,28,30,28],[23,12,37,34],[4,28,56,84,112]],[[28,30,30,30],[25,12,40,34],[4,32,60,88,116]],[[28,30,30,30],[26,13,42,35],[4,24,48,72,96,120]],[[28,30,30,30],[28,14,45,38],[4,28,52,76,100,124]],[[28,30,30,30],[29,15,48,40],[4,24,50,76,102,128]],[[28,30,30,30],[31,16,51,43],[4,28,54,80,106,132]],[[28,30,30,30],[33,17,54,45],[4,32,58,84,110,136]],[[28,30,30,30],[35,18,57,48],[4,28,56,84,112,140]],[[28,30,30,30],[37,19,60,51],[4,32,60,88,116,144]],[[28,30,30,30],[38,19,63,53],[4,28,52,76,100,124,148]],[[28,30,30,30],[40,20,66,56],[4,22,48,74,100,126,152]],[[28,30,30,30],[43,21,70,59],[4,26,52,78,104,130,156]],[[28,30,30,30],[45,22,74,62],[4,30,56,82,108,134,160]],[[28,30,30,30],[47,24,77,65],[4,24,52,80,108,136,164]],[[28,30,30,30],[49,25,81,68],[4,28,56,84,112,140,168]]],t=/^\d*$/,r=/^[A-Za-z0-9 $%*+\-.\/:]*$/,i=/^[A-Z0-9 $%*+\-.\/:]*$/,n=[],a=[-1],o=0,s=1;o<255;++o)n.push(s),a[s]=o,s=2*s^(s>=128?285:0);var d=[[]];for(o=0;o<30;++o){for(var l=d[o],u=[],c=0;c<=o;++c){var f=c<o?n[l[c]]:0,h=n[(o+(l[c-1]||0))%255];u.push(a[f^h])}d.push(u)}var m={};for(o=0;o<45;++o)m["0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:".charAt(o)]=o;var p=[function(e,t){return(e+t)%2==0},function(e,t){return e%2==0},function(e,t){return t%3==0},function(e,t){return(e+t)%3==0},function(e,t){return((e/2|0)+(t/3|0))%2==0},function(e,t){return e*t%2+e*t%3==0},function(e,t){return(e*t%2+e*t%3)%2==0},function(e,t){return((e+t)%2+e*t%3)%2==0}],v=function(e){return e>6},b=function(t,r){var i=-8&function(t){var r=e[t],i=16*t*t+128*t+64;return v(t)&&(i-=36),r[2].length&&(i-=25*r[2].length*r[2].length-10*r[2].length-55),i}(t),n=e[t];return i-8*n[0][r]*n[1][r]},g=function(e,t){switch(t){case 1:return e<10?10:e<27?12:14;case 2:return e<10?9:e<27?11:13;case 4:return e<10?8:16;case 8:return e<10?8:e<27?10:12}},y=function(e,t,r){var i=b(e,r)-4-g(e,t);switch(t){case 1:return 3*(i/10|0)+(i%10<4?0:i%10<7?1:2);case 2:return 2*(i/11|0)+(i%11<6?0:1);case 4:return i/8|0;case 8:return i/13|0}},_=function(e,t){for(var r=e.slice(0),i=e.length,o=t.length,s=0;s<o;++s)r.push(0);for(s=0;s<i;){var d=a[r[s++]];if(d>=0)for(var l=0;l<o;++l)r[s+l]^=n[(d+t[l])%255]}return r.slice(i)},w=function(e,t,r,i){for(var n=e<<i,a=t-1;a>=0;--a)n>>i+a&1&&(n^=r<<a);return e<<i|n},$=function(e,t,r){for(var i=p[r],n=e.length,a=0;a<n;++a)for(var o=0;o<n;++o)t[a][o]||(e[a][o]^=i(a,o));return e},S=function(e,t,r,i){for(var n=e.length,a=21522^w(r<<3|i,5,1335,10),o=0;o<15;++o){var s=[n-1,n-2,n-3,n-4,n-5,n-6,n-7,n-8,7,5,4,3,2,1,0][o];e[[0,1,2,3,4,5,7,8,n-7,n-6,n-5,n-4,n-3,n-2,n-1][o]][8]=e[8][s]=a>>o&1}return e},x=function(e){for(var t=function(e){for(var t=0,r=0;r<e.length;++r)e[r]>=5&&(t+=e[r]-5+3);for(r=5;r<e.length;r+=2){var i=e[r];e[r-1]==i&&e[r-2]==3*i&&e[r-3]==i&&e[r-4]==i&&(e[r-5]>=4*i||e[r+1]>=4*i)&&(t+=40)}return t},r=e.length,i=0,n=0,a=0;a<r;++a){var o,s=e[a];o=[0];for(var d=0;d<r;){for(l=0;d<r&&s[d];++l)++d;for(o.push(l),l=0;d<r&&!s[d];++l)++d;o.push(l)}i+=t(o),o=[0];for(d=0;d<r;){var l;for(l=0;d<r&&e[d][a];++l)++d;for(o.push(l),l=0;d<r&&!e[d][a];++l)++d;o.push(l)}i+=t(o);var u=e[a+1]||[];n+=s[0];for(d=1;d<r;++d){var c=s[d];n+=c,s[d-1]==c&&u[d]===c&&u[d-1]===c&&(i+=3)}}return i+10*(Math.abs(n/r/r-.5)/.05|0)},k=function(t,r,i,n,a){var o=e[r],s=function(e,t,r,i){var n=[],a=0,o=8,s=r.length,d=function(e,t){if(t>=o){for(n.push(a|e>>(t-=o));t>=8;)n.push(e>>(t-=8)&255);a=0,o=8}t>0&&(a|=(e&(1<<t)-1)<<(o-=t))},l=g(e,t);switch(d(t,4),d(s,l),t){case 1:for(var u=2;u<s;u+=3)d(parseInt(r.substring(u-2,u+1),10),10);d(parseInt(r.substring(u-2),10),[0,4,7][s%3]);break;case 2:for(u=1;u<s;u+=2)d(45*m[r.charAt(u-1)]+m[r.charAt(u)],11);s%2==1&&d(m[r.charAt(u-1)],6);break;case 4:for(u=0;u<s;++u)d(r[u],8)}for(d(0,4),o<8&&n.push(a);n.length+1<i;)n.push(236,17);return n.length<i&&n.push(236),n}(r,i,t,b(r,n)>>3);s=function(e,t,r){for(var i=[],n=e.length/t|0,a=0,o=t-e.length%t,s=0;s<o;++s)i.push(a),a+=n;for(s=o;s<t;++s)i.push(a),a+=n+1;i.push(a);var d=[];for(s=0;s<t;++s)d.push(_(e.slice(i[s],i[s+1]),r));var l=[],u=e.length/t|0;for(s=0;s<u;++s)for(var c=0;c<t;++c)l.push(e[i[c]+s]);for(c=o;c<t;++c)l.push(e[i[c+1]-1]);for(s=0;s<r.length;++s)for(c=0;c<t;++c)l.push(d[c][s]);return l}(s,o[1][n],d[o[0][n]]);var l=function(t){for(var r=e[t],i=function(e){return 4*e+17}(t),n=[],a=[],o=0;o<i;++o)n.push([]),a.push([]);var s=function(e,t,r,i,o){for(var s=0;s<r;++s)for(var d=0;d<i;++d)n[e+s][t+d]=o[s]>>d&1,a[e+s][t+d]=1};s(0,0,9,9,[127,65,93,93,93,65,383,0,64]),s(i-8,0,8,9,[256,127,65,93,93,93,65,127]),s(0,i-8,9,8,[254,130,186,186,186,130,254,0,0]);for(o=9;o<i-8;++o)n[6][o]=n[o][6]=1&~o,a[6][o]=a[o][6]=1;var d=r[2],l=d.length;for(o=0;o<l;++o)for(var u=0==o?l-1:l,c=0==o||o==l-1?1:0;c<u;++c)s(d[o],d[c],5,5,[31,17,21,17,31]);if(v(t)){var f=w(t,6,7973,12),h=0;for(o=0;o<6;++o)for(c=0;c<3;++c)n[o][i-11+c]=n[i-11+c][o]=f>>h++&1,a[o][i-11+c]=a[i-11+c][o]=1}return{matrix:n,reserved:a}}(r),u=l.matrix,c=l.reserved;if(function(e,t,r){for(var i=e.length,n=0,a=-1,o=i-1;o>=0;o-=2){6==o&&--o;for(var s=a<0?i-1:0,d=0;d<i;++d){for(var l=o;l>o-2;--l)t[s][l]||(e[s][l]=r[n>>3]>>(7&~n)&1,++n);s+=a}a=-a}}(u,c,s),a<0){$(u,c,0),S(u,0,n,0);var f=0,h=x(u);for($(u,c,0),a=1;a<8;++a){$(u,c,a),S(u,0,n,a);var p=x(u);h>p&&(h=p,f=a),$(u,c,a)}a=f}return $(u,c,a),S(u,0,n,a),u},j={generate:function(e,n){var a=(n=n||{}).version||-1,o={L:1,M:0,Q:3,H:2}[(n.ecclevel||"L").toUpperCase()],s=n.mode?{numeric:1,alphanumeric:2,octet:4}[n.mode.toLowerCase()]:-1,d="mask"in n?n.mask:-1;if(s<0)s="string"==typeof e?e.match(t)?1:e.match(i)?2:4:4;else if(1!=s&&2!=s&&4!=s)throw"invalid or unsupported mode";if(null===(e=function(e,i){switch(e){case 1:return i.match(t)?i:null;case 2:return i.match(r)?i.toUpperCase():null;case 4:if("string"==typeof i){for(var n=[],a=0;a<i.length;++a){var o=i.charCodeAt(a);o<128?n.push(o):o<2048?n.push(192|o>>6,128|63&o):o<65536?n.push(224|o>>12,128|o>>6&63,128|63&o):n.push(240|o>>18,128|o>>12&63,128|o>>6&63,128|63&o)}return n}return i}}(s,e)))throw"invalid data format";if(o<0||o>3)throw"invalid ECC level";if(a<0){for(a=1;a<=40&&!(e.length<=y(a,s,o));++a);if(a>40)throw"too large data"}else if(a<1||a>40)throw"invalid version";if(-1!=d&&(d<0||d>8))throw"invalid mask";return k(e,a,s,o,d)},generateHTML:function(e,t){t=t||{};for(var r=j.generate(e,t),i=Math.max(t.modulesize||5,.5),n=Math.max(null!==t.margin?t.margin:4,0),a=document.createElement("div"),o=r.length,s=['<table border="0" cellspacing="0" cellpadding="0" style="border:'+i*n+'px solid #fff;background:#fff">'],d=0;d<o;++d){s.push("<tr>");for(var l=0;l<o;++l)s.push('<td style="width:'+i+"px;height:"+i+"px"+(r[d][l]?";background:#000":"")+'"></td>');s.push("</tr>")}return a.className="qrcode",a.innerHTML=s.join("")+"</table>",a},generateSVG:function(e,t){t=t||{};var r=j.generate(e,t),i=r.length,n=Math.max(t.modulesize||5,.5),a=Math.max(null!==t.margin?t.margin:4,0),o=n*(i+2*a),s=' class= "fg" width="'+n+'" height="'+n+'"/>',d=document.createElementNS("http://www.w3.org/2000/svg","svg");d.setAttribute("viewBox","0 0 "+o+" "+o),d.setAttribute("style","shape-rendering:crispEdges"),t.modulesize&&(d.setAttribute("width",o),d.setAttribute("height",o));for(var l=["<style scoped>.bg{fill:#FFF}.fg{fill:#000}</style>",'<rect class="bg" x="0" y="0"','width="'+o+'" height="'+o+'"/>'],u=a*n,c=0;c<i;++c){for(var f=a*n,h=0;h<i;++h)r[c][h]&&l.push('<rect x="'+f+'" y="'+u+'"',s),f+=n;u+=n}return d.innerHTML=l.join(""),d},generatePNG:function(e,t){t=t||{};var r,i=j.generate(e,t),n=Math.max(t.modulesize||5,.5),a=Math.max(null!==t.margin?t.margin:4,0),o=i.length,s=n*(o+2*a),d=document.createElement("canvas");if(d.width=d.height=s,!(r=d.getContext("2d")))throw"canvas support is needed for PNG output";r.fillStyle="#fff",r.fillRect(0,0,s,s),r.fillStyle="#000";for(var l=0;l<o;++l)for(var u=0;u<o;++u)i[l][u]&&r.fillRect(n*(a+u),n*(a+l),n,n);return d.toDataURL()}};return j})?i.apply(t,[]):i)||(e.exports=n)},function(e,t,r){r.r(t);var i=r(0),n=r.n(i);function a(e){return(a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function s(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function d(e){var t="function"==typeof Map?new Map:void 0;return(d=function(e){if(null===e||(r=e,-1===Function.toString.call(r).indexOf("[native code]")))return e;var r;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,i)}function i(){return l(e,arguments,c(this).constructor)}return i.prototype=Object.create(e.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),u(i,e)})(e)}function l(e,t,r){return(l=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}()?Reflect.construct:function(e,t,r){var i=[null];i.push.apply(i,t);var n=new(Function.bind.apply(e,i));return r&&u(n,r.prototype),n}).apply(null,arguments)}function u(e,t){return(u=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(e){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var f=function(e){function t(){var e,r;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),this,(e=!(r=c(t).call(this))||"object"!==a(r)&&"function"!=typeof r?s(this):r)._defineProperty=e._defineProperty.bind(s(e)),e.attachShadow({mode:"open"}),Object.keys(t.defaultAttributes).map(e._defineProperty),e}var r,i,l;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&u(e,t)}(t,d(HTMLElement)),r=t,l=[{key:"defaultAttributes",get:function(){return{data:null,format:"png",modulesize:5,margin:4}}},{key:"observedAttributes",get:function(){return Object.keys(t.defaultAttributes)}}],(i=[{key:"attributeChangedCallback",value:function(e,t,r){var i=this[e+"Changed"];i&&"function"==typeof i&&i.call(this,t,r),this.generate()}},{key:"_defineProperty",value:function(e){var r=this;Object.defineProperty(this,e,{get:function(){var i=r.getAttribute(e);return null===i?t.defaultAttributes[e]:i},set:function(t){r.setAttribute(e,t)}})}},{key:"getOptions",value:function(){var e=this.modulesize,t=this.margin;return{modulesize:null!==e?parseInt(e):e,margin:null!==t?parseInt(t):t}}},{key:"generate",value:function(){null!==this.data?"png"===this.format?this.generatePNG():"html"===this.format?this.generateHTML():"svg"===this.format?this.generateSVG():this.shadowRoot.innerHTML="<div>qr-code: "+this.format+" not supported!</div>":this.shadowRoot.innerHTML="<div>qr-code: no data!</div>"}},{key:"generatePNG",value:function(){try{var e=document.createElement("img");e.src=n.a.generatePNG(this.data,this.getOptions()),this.clear(),this.shadowRoot.appendChild(e)}catch(e){this.shadowRoot.innerHTML="<div>qr-code: no canvas support!</div>"}}},{key:"generateHTML",value:function(){var e=n.a.generateHTML(this.data,this.getOptions());this.clear(),this.shadowRoot.appendChild(e)}},{key:"generateSVG",value:function(){var e=n.a.generateSVG(this.data,this.getOptions());this.clear(),this.shadowRoot.appendChild(e)}},{key:"clear",value:function(){for(;this.shadowRoot.lastChild;)this.shadowRoot.removeChild(this.shadowRoot.lastChild)}}])&&o(r.prototype,i),l&&o(r,l),t}();customElements.define("qr-code",f)}]);let l,u,c,f,h,m,p,v,b,g=e=>e;const y=n(r(a(i,"sign-in-form")));class _ extends y{constructor(){super(...arguments),this.templates={},this.issuer="Unknown",this.__emailValidator=()=>!this.errors.some((e=>e.startsWith("email"))),this.__passwordValidator=()=>!this.errors.some((e=>e.startsWith("password"))),this.__newPasswordValidator=()=>!this.errors.some((e=>e.startsWith("new_password")&&!e.endsWith("_error"))),this.__mfaTotpCodeValidator=()=>!this.errors.some((e=>e.startsWith("mfa_totp_code")&&!e.endsWith("_error"))),this.__renderEmail=()=>{var e;const{disabledSelector:r,readonlySelector:i,errors:n}=this,a=n.find((e=>e.startsWith("email"))),o=null==a?void 0:a.replace("email","v8n"),d=o?this.t(o).toString():"",u=this.in("busy");return t(l||(l=g` <div> ${0} <vaadin-email-field error-message="${0}" data-testid="email" class="w-full mb-m" label="${0}" value="${0}" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" @keydown="${0}" @input="${0}"> </vaadin-email-field> ${0} </div> `),this.renderTemplateOrSlot("email:before"),d,this.t("email").toString(),s(null===(e=this.form.credential)||void 0===e?void 0:e.email),u||r.matches("email",!0),i.matches("email",!0),this.__emailValidator,(e=>"Enter"===e.key&&this.submit()),(e=>{var t,r;const i=e.target.value,n=null!==(r=null===(t=this.form.credential)||void 0===t?void 0:t.password)&&void 0!==r?r:"";this.edit({credential:{email:i,password:n},type:"password"})}),this.renderTemplateOrSlot("email:after"))},this.__renderPassword=()=>{var e;const{disabledSelector:r,readonlySelector:i,errors:n}=this,a=n.find((e=>e.startsWith("password"))),o=null==a?void 0:a.replace("password","v8n"),d=o?this.t(o).toString():"",l=this.in("busy");return t(u||(u=g` <div> ${0} <vaadin-password-field error-message="${0}" data-testid="password" class="w-full mb-m" label="${0}" value="${0}" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" @keydown="${0}" @input="${0}"> </vaadin-password-field> ${0} </div> `),this.renderTemplateOrSlot("password:before"),d,this.t("password").toString(),s(null===(e=this.form.credential)||void 0===e?void 0:e.password),l||r.matches("password",!0),i.matches("password",!0),this.__passwordValidator,(e=>"Enter"===e.key&&this.submit()),(e=>{var t,r;const i=null!==(r=null===(t=this.form.credential)||void 0===t?void 0:t.email)&&void 0!==r?r:"",n=e.target.value;this.edit({credential:{email:i,password:n},type:"password"})}),this.renderTemplateOrSlot("password:after"))},this.__renderNewPassword=()=>{var e;const{disabledSelector:r,readonlySelector:i,errors:n}=this,a=n.find((e=>e.startsWith("new_password")&&!e.endsWith("_error"))),o=null==a?void 0:a.replace("new_password","v8n"),d=o?this.t(o).toString():"",l=this.in("busy");return t(c||(c=g` <div> ${0} <vaadin-password-field error-message="${0}" data-testid="new-password" class="w-full mb-m" label="${0}" value="${0}" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" @keydown="${0}" @input="${0}"> </vaadin-password-field> ${0} </div> `),this.renderTemplateOrSlot("new-password:before"),d,this.t("new_password").toString(),s(null===(e=this.form.credential)||void 0===e?void 0:e.new_password),l||r.matches("new-password",!0),i.matches("new-password",!0),this.__newPasswordValidator,(e=>"Enter"===e.key&&this.submit()),(e=>{var t,r,i,n;this.edit({type:"password",credential:{email:null!==(r=null===(t=this.form.credential)||void 0===t?void 0:t.email)&&void 0!==r?r:"",password:null!==(n=null===(i=this.form.credential)||void 0===i?void 0:i.password)&&void 0!==n?n:"",new_password:e.target.value}})}),this.renderTemplateOrSlot("new-password:after"))},this.__renderMfaTotpCode=()=>{var r;const{disabledSelector:i,readonlySelector:n,errors:a}=this,o=this.__mfaSecretCode,d="mfa_totp_code",l="mfa-totp-code",u=a.find((e=>e.startsWith(d)&&!e.endsWith("_error"))),c=null==u?void 0:u.replace(d,"v8n"),h=c?this.t(c).toString():"",m=this.in("busy");return t(f||(f=g` <div> ${0} <vaadin-text-field error-message="${0}" helper-text="${0}" placeholder="123456" data-testid="${0}" class="w-full mb-m" label="${0}" value="${0}" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" autofocus @keydown="${0}" @input="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot(`${l}:before`),h,o?this.t("mfa_totp_code_hint"):"",l,this.t(d).toString(),s(null===(r=this.form.credential)||void 0===r?void 0:r.mfa_totp_code),m||i.matches(l,!0),n.matches(l,!0),this.__mfaTotpCodeValidator,(e=>"Enter"===e.key&&this.submit()),(t=>{const r=t.target.value,i=e(e({},this.form.credential),{},{mfa_totp_code:r});o&&(i.mfa_secret_code=o),this.edit({type:"password",credential:i})}),this.renderTemplateOrSlot(`${l}:after`))},this.__renderMfaSecretCode=()=>{var e,r;const i="mfa-secret-code",n=this.__mfaSecretCode,a=encodeURIComponent(this.issuer),o=encodeURIComponent(null!==(r=null===(e=this.form.credential)||void 0===e?void 0:e.email)&&void 0!==r?r:""),s=new URL(`otpauth://totp/${a}:${o}`);return s.searchParams.set("secret",n),s.searchParams.set("issuer",this.issuer),t(h||(h=g` <div> ${0} <div data-testid="${0}" class="flex space-x-m overflow-hidden rounded border p-m mb-m border-contrast-10" style="background:#fff;color:#000"> <qr-code modulesize="2" margin="0" format="svg" class="inline-flex" data="${0}"> </qr-code> <div class="break-all font-semibold leading-s text-xs tracking-widest"> ${0} </div> </div> ${0} </div> `),this.renderTemplateOrSlot(`${i}:before`),i,s.toString(),n,this.renderTemplateOrSlot(`${i}:after`))},this.__renderMfaRememberDevice=()=>{var r;const{__mfaSecretCode:i,form:n,lang:a,ns:o}=this,s="mfa-remember-device",d=this.in("busy")||this.disabledSelector.matches(s,!0);return t(m||(m=g` <div> ${0} <vaadin-checkbox data-testid="${0}" class="mb-m" ?disabled="${0}" ?checked="${0}" @change="${0}"> <foxy-i18n class="block" lang="${0}" key="mfa_remember_device" ns="${0}"></foxy-i18n> <foxy-i18n class="block text-xs ${0}" lang="${0}" key="mfa_remember_device_hint" ns="${0}"> </foxy-i18n> </vaadin-checkbox> ${0} </div> `),this.renderTemplateOrSlot(`${s}:before`),s,d,!!(null===(r=n.credential)||void 0===r?void 0:r.mfa_remember_device),(t=>{var r,a;const o=t.currentTarget,s=e(e({},n.credential),{},{mfa_remember_device:o.checked,mfa_totp_code:null!==(a=null===(r=n.credential)||void 0===r?void 0:r.mfa_totp_code)&&void 0!==a?a:""});i&&(s.mfa_secret_code=i),this.edit({credential:s})}),a,o,d?"text-disabled":"text-secondary",a,o,this.renderTemplateOrSlot(`${s}:after`))},this.__renderError=()=>t(p||(p=g` <div> ${0} <p class="leading-s flex items-start text-s rounded p-s bg-error-10 text-error"> <iron-icon class="flex-shrink-0 mr-s icon-inline text-l" icon="lumo:error"></iron-icon> <foxy-i18n data-testid="error" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> </p> ${0} </div> `),this.renderTemplateOrSlot("error:before"),this.lang,this.errors[0],this.ns,this.renderTemplateOrSlot("error:after")),this.__renderSubmit=()=>{const e=this.in({idle:{snapshot:{dirty:"valid"}}})||this.in({idle:{snapshot:{clean:"valid"}}})||this.in({idle:{template:{dirty:"valid"}}})||this.in({idle:{template:{clean:"valid"}}});return t(v||(v=g` <div> ${0} <vaadin-button data-testid="submit" class="w-full mt-m" theme="primary" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" lang="${0}" key="sign_in"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("submit:before"),!e||this.in("busy")||this.disabledSelector.matches("submit",!0),(()=>this.submit()),this.ns,this.lang,this.renderTemplateOrSlot("submit:after"))}}static get properties(){return e(e({},super.properties),{},{issuer:{type:String}})}static get v8n(){return[({credential:e})=>!!(null==e?void 0:e.email)||"email_required",({credential:e})=>{var t;return d(null!==(t=null==e?void 0:e.email)&&void 0!==t?t:"")||"email_invalid_email"},({credential:e})=>!!(null==e?void 0:e.password)||"password_required",({credential:e})=>{var t;return 0!==(null===(t=null==e?void 0:e.new_password)||void 0===t?void 0:t.length)||"new_password_required"},({credential:e})=>{var t;return 0!==(null===(t=null==e?void 0:e.mfa_totp_code)||void 0===t?void 0:t.length)||"mfa_totp_code_required"}]}render(){var e,r,i,n;const{hiddenSelector:a,errors:s,lang:d,form:l,ns:u}=this,c=this.__mfaSecretCode,f=null===(e=l.credential)||void 0===e?void 0:e.mfa_totp_code,h=!!c||!!f||s.some((e=>e.startsWith("mfa"))),m="string"==typeof(null===(r=this.form.credential)||void 0===r?void 0:r.new_password)||s.some((e=>e.startsWith("new_password_"))),p=!h&&!f||a.matches("mfa-totp-code",!0),v=!h||h&&c||a.matches("mfa-remember-device",!0),y=!c||a.matches("mfa-secret-code",!0),_=h||a.matches("new-password",!0),w=s.some((e=>e.endsWith("_error"))),$=this.in("busy");return t(b||(b=g` <main aria-live="polite" aria-busy="${0}" class="relative font-lumo text-m leading-m"> ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="busy" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </main> `),$,a.matches("email",!0)?"":this.__renderEmail(),h||a.matches("password",!0)?"":this.__renderPassword(),_||!m?"":this.__renderNewPassword(),p?"":this.__renderMfaTotpCode(),y?"":this.__renderMfaSecretCode(),v?"":this.__renderMfaRememberDevice(),a.matches("error",!0)||!w?"":this.__renderError(),a.matches("submit",!0)?"":this.__renderSubmit(),o({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!$}),d,u,null!==(n=null===(i=customElements.get("foxy-spinner"))||void 0===i?void 0:i.defaultNS)&&void 0!==n?n:"")}async _fetch(...e){try{return await super._fetch(...e)}catch(e){let t="unknown_error";try{const r=(await e.json())._embedded["fx:errors"][0].code;"string"==typeof r&&(t=r)}catch(e){}throw[t]}}get __mfaSecretCode(){var e;const t=null===(e=this.form.credential)||void 0===e?void 0:e.mfa_secret_code;if(t)return t;const r="mfa_required",i=this.errors.find((e=>e.startsWith(r)));return null==i?void 0:i.replace(r,"").trim()}}customElements.define("foxy-sign-in-form",_);export{_ as SignInForm};
1
+ import"./shared-8a5e01ae.js";import"./shared-2215e6c8.js";import"./shared-f23d122e.js";import"./shared-85f9051e.js";import"./shared-b8e9b536.js";import"./shared-7b167fe9.js";import"./shared-c484320b.js";import"./shared-f2d19582.js";import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-0672e78b.js";import{_ as e}from"./shared-a8ced8bf.js";import{h as t}from"./shared-7f33a83a.js";import{C as r}from"./shared-5ad8c9a0.js";import{N as i}from"./shared-b7423eab.js";import{T as n,a as o}from"./shared-29e21467.js";import{c as a}from"./shared-4e709717.js";import{i as s}from"./shared-d3bf9ac0.js";import{v as d}from"./shared-b738ee96.js";import"./shared-c52d3772.js";import"./shared-6b8874a7.js";import"./shared-ea316e64.js";import"./shared-4f037e43.js";import"./shared-002b788f.js";import"./shared-dc798bf4.js";import"./shared-d6276c83.js";import"./shared-dcbf57e0.js";!function(e){var t={};function r(i){if(t[i])return t[i].exports;var n=t[i]={i:i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(i,n,function(t){return e[t]}.bind(null,n));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=1)}([function(e,t,r){var i,n;void 0===(n="function"==typeof(i=function(){for(var e=[null,[[10,7,17,13],[1,1,1,1],[]],[[16,10,28,22],[1,1,1,1],[4,16]],[[26,15,22,18],[1,1,2,2],[4,20]],[[18,20,16,26],[2,1,4,2],[4,24]],[[24,26,22,18],[2,1,4,4],[4,28]],[[16,18,28,24],[4,2,4,4],[4,32]],[[18,20,26,18],[4,2,5,6],[4,20,36]],[[22,24,26,22],[4,2,6,6],[4,22,40]],[[22,30,24,20],[5,2,8,8],[4,24,44]],[[26,18,28,24],[5,4,8,8],[4,26,48]],[[30,20,24,28],[5,4,11,8],[4,28,52]],[[22,24,28,26],[8,4,11,10],[4,30,56]],[[22,26,22,24],[9,4,16,12],[4,32,60]],[[24,30,24,20],[9,4,16,16],[4,24,44,64]],[[24,22,24,30],[10,6,18,12],[4,24,46,68]],[[28,24,30,24],[10,6,16,17],[4,24,48,72]],[[28,28,28,28],[11,6,19,16],[4,28,52,76]],[[26,30,28,28],[13,6,21,18],[4,28,54,80]],[[26,28,26,26],[14,7,25,21],[4,28,56,84]],[[26,28,28,30],[16,8,25,20],[4,32,60,88]],[[26,28,30,28],[17,8,25,23],[4,26,48,70,92]],[[28,28,24,30],[17,9,34,23],[4,24,48,72,96]],[[28,30,30,30],[18,9,30,25],[4,28,52,76,100]],[[28,30,30,30],[20,10,32,27],[4,26,52,78,104]],[[28,26,30,30],[21,12,35,29],[4,30,56,82,108]],[[28,28,30,28],[23,12,37,34],[4,28,56,84,112]],[[28,30,30,30],[25,12,40,34],[4,32,60,88,116]],[[28,30,30,30],[26,13,42,35],[4,24,48,72,96,120]],[[28,30,30,30],[28,14,45,38],[4,28,52,76,100,124]],[[28,30,30,30],[29,15,48,40],[4,24,50,76,102,128]],[[28,30,30,30],[31,16,51,43],[4,28,54,80,106,132]],[[28,30,30,30],[33,17,54,45],[4,32,58,84,110,136]],[[28,30,30,30],[35,18,57,48],[4,28,56,84,112,140]],[[28,30,30,30],[37,19,60,51],[4,32,60,88,116,144]],[[28,30,30,30],[38,19,63,53],[4,28,52,76,100,124,148]],[[28,30,30,30],[40,20,66,56],[4,22,48,74,100,126,152]],[[28,30,30,30],[43,21,70,59],[4,26,52,78,104,130,156]],[[28,30,30,30],[45,22,74,62],[4,30,56,82,108,134,160]],[[28,30,30,30],[47,24,77,65],[4,24,52,80,108,136,164]],[[28,30,30,30],[49,25,81,68],[4,28,56,84,112,140,168]]],t=/^\d*$/,r=/^[A-Za-z0-9 $%*+\-.\/:]*$/,i=/^[A-Z0-9 $%*+\-.\/:]*$/,n=[],o=[-1],a=0,s=1;a<255;++a)n.push(s),o[s]=a,s=2*s^(s>=128?285:0);var d=[[]];for(a=0;a<30;++a){for(var l=d[a],u=[],c=0;c<=a;++c){var f=c<a?n[l[c]]:0,h=n[(a+(l[c-1]||0))%255];u.push(o[f^h])}d.push(u)}var m={};for(a=0;a<45;++a)m["0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:".charAt(a)]=a;var p=[function(e,t){return(e+t)%2==0},function(e,t){return e%2==0},function(e,t){return t%3==0},function(e,t){return(e+t)%3==0},function(e,t){return((e/2|0)+(t/3|0))%2==0},function(e,t){return e*t%2+e*t%3==0},function(e,t){return(e*t%2+e*t%3)%2==0},function(e,t){return((e+t)%2+e*t%3)%2==0}],v=function(e){return e>6},b=function(t,r){var i=-8&function(t){var r=e[t],i=16*t*t+128*t+64;return v(t)&&(i-=36),r[2].length&&(i-=25*r[2].length*r[2].length-10*r[2].length-55),i}(t),n=e[t];return i-8*n[0][r]*n[1][r]},g=function(e,t){switch(t){case 1:return e<10?10:e<27?12:14;case 2:return e<10?9:e<27?11:13;case 4:return e<10?8:16;case 8:return e<10?8:e<27?10:12}},y=function(e,t,r){var i=b(e,r)-4-g(e,t);switch(t){case 1:return 3*(i/10|0)+(i%10<4?0:i%10<7?1:2);case 2:return 2*(i/11|0)+(i%11<6?0:1);case 4:return i/8|0;case 8:return i/13|0}},_=function(e,t){for(var r=e.slice(0),i=e.length,a=t.length,s=0;s<a;++s)r.push(0);for(s=0;s<i;){var d=o[r[s++]];if(d>=0)for(var l=0;l<a;++l)r[s+l]^=n[(d+t[l])%255]}return r.slice(i)},w=function(e,t,r,i){for(var n=e<<i,o=t-1;o>=0;--o)n>>i+o&1&&(n^=r<<o);return e<<i|n},$=function(e,t,r){for(var i=p[r],n=e.length,o=0;o<n;++o)for(var a=0;a<n;++a)t[o][a]||(e[o][a]^=i(o,a));return e},S=function(e,t,r,i){for(var n=e.length,o=21522^w(r<<3|i,5,1335,10),a=0;a<15;++a){var s=[n-1,n-2,n-3,n-4,n-5,n-6,n-7,n-8,7,5,4,3,2,1,0][a];e[[0,1,2,3,4,5,7,8,n-7,n-6,n-5,n-4,n-3,n-2,n-1][a]][8]=e[8][s]=o>>a&1}return e},x=function(e){for(var t=function(e){for(var t=0,r=0;r<e.length;++r)e[r]>=5&&(t+=e[r]-5+3);for(r=5;r<e.length;r+=2){var i=e[r];e[r-1]==i&&e[r-2]==3*i&&e[r-3]==i&&e[r-4]==i&&(e[r-5]>=4*i||e[r+1]>=4*i)&&(t+=40)}return t},r=e.length,i=0,n=0,o=0;o<r;++o){var a,s=e[o];a=[0];for(var d=0;d<r;){for(l=0;d<r&&s[d];++l)++d;for(a.push(l),l=0;d<r&&!s[d];++l)++d;a.push(l)}i+=t(a),a=[0];for(d=0;d<r;){var l;for(l=0;d<r&&e[d][o];++l)++d;for(a.push(l),l=0;d<r&&!e[d][o];++l)++d;a.push(l)}i+=t(a);var u=e[o+1]||[];n+=s[0];for(d=1;d<r;++d){var c=s[d];n+=c,s[d-1]==c&&u[d]===c&&u[d-1]===c&&(i+=3)}}return i+10*(Math.abs(n/r/r-.5)/.05|0)},k=function(t,r,i,n,o){var a=e[r],s=function(e,t,r,i){var n=[],o=0,a=8,s=r.length,d=function(e,t){if(t>=a){for(n.push(o|e>>(t-=a));t>=8;)n.push(e>>(t-=8)&255);o=0,a=8}t>0&&(o|=(e&(1<<t)-1)<<(a-=t))},l=g(e,t);switch(d(t,4),d(s,l),t){case 1:for(var u=2;u<s;u+=3)d(parseInt(r.substring(u-2,u+1),10),10);d(parseInt(r.substring(u-2),10),[0,4,7][s%3]);break;case 2:for(u=1;u<s;u+=2)d(45*m[r.charAt(u-1)]+m[r.charAt(u)],11);s%2==1&&d(m[r.charAt(u-1)],6);break;case 4:for(u=0;u<s;++u)d(r[u],8)}for(d(0,4),a<8&&n.push(o);n.length+1<i;)n.push(236,17);return n.length<i&&n.push(236),n}(r,i,t,b(r,n)>>3);s=function(e,t,r){for(var i=[],n=e.length/t|0,o=0,a=t-e.length%t,s=0;s<a;++s)i.push(o),o+=n;for(s=a;s<t;++s)i.push(o),o+=n+1;i.push(o);var d=[];for(s=0;s<t;++s)d.push(_(e.slice(i[s],i[s+1]),r));var l=[],u=e.length/t|0;for(s=0;s<u;++s)for(var c=0;c<t;++c)l.push(e[i[c]+s]);for(c=a;c<t;++c)l.push(e[i[c+1]-1]);for(s=0;s<r.length;++s)for(c=0;c<t;++c)l.push(d[c][s]);return l}(s,a[1][n],d[a[0][n]]);var l=function(t){for(var r=e[t],i=function(e){return 4*e+17}(t),n=[],o=[],a=0;a<i;++a)n.push([]),o.push([]);var s=function(e,t,r,i,a){for(var s=0;s<r;++s)for(var d=0;d<i;++d)n[e+s][t+d]=a[s]>>d&1,o[e+s][t+d]=1};s(0,0,9,9,[127,65,93,93,93,65,383,0,64]),s(i-8,0,8,9,[256,127,65,93,93,93,65,127]),s(0,i-8,9,8,[254,130,186,186,186,130,254,0,0]);for(a=9;a<i-8;++a)n[6][a]=n[a][6]=1&~a,o[6][a]=o[a][6]=1;var d=r[2],l=d.length;for(a=0;a<l;++a)for(var u=0==a?l-1:l,c=0==a||a==l-1?1:0;c<u;++c)s(d[a],d[c],5,5,[31,17,21,17,31]);if(v(t)){var f=w(t,6,7973,12),h=0;for(a=0;a<6;++a)for(c=0;c<3;++c)n[a][i-11+c]=n[i-11+c][a]=f>>h++&1,o[a][i-11+c]=o[i-11+c][a]=1}return{matrix:n,reserved:o}}(r),u=l.matrix,c=l.reserved;if(function(e,t,r){for(var i=e.length,n=0,o=-1,a=i-1;a>=0;a-=2){6==a&&--a;for(var s=o<0?i-1:0,d=0;d<i;++d){for(var l=a;l>a-2;--l)t[s][l]||(e[s][l]=r[n>>3]>>(7&~n)&1,++n);s+=o}o=-o}}(u,c,s),o<0){$(u,c,0),S(u,0,n,0);var f=0,h=x(u);for($(u,c,0),o=1;o<8;++o){$(u,c,o),S(u,0,n,o);var p=x(u);h>p&&(h=p,f=o),$(u,c,o)}o=f}return $(u,c,o),S(u,0,n,o),u},j={generate:function(e,n){var o=(n=n||{}).version||-1,a={L:1,M:0,Q:3,H:2}[(n.ecclevel||"L").toUpperCase()],s=n.mode?{numeric:1,alphanumeric:2,octet:4}[n.mode.toLowerCase()]:-1,d="mask"in n?n.mask:-1;if(s<0)s="string"==typeof e?e.match(t)?1:e.match(i)?2:4:4;else if(1!=s&&2!=s&&4!=s)throw"invalid or unsupported mode";if(null===(e=function(e,i){switch(e){case 1:return i.match(t)?i:null;case 2:return i.match(r)?i.toUpperCase():null;case 4:if("string"==typeof i){for(var n=[],o=0;o<i.length;++o){var a=i.charCodeAt(o);a<128?n.push(a):a<2048?n.push(192|a>>6,128|63&a):a<65536?n.push(224|a>>12,128|a>>6&63,128|63&a):n.push(240|a>>18,128|a>>12&63,128|a>>6&63,128|63&a)}return n}return i}}(s,e)))throw"invalid data format";if(a<0||a>3)throw"invalid ECC level";if(o<0){for(o=1;o<=40&&!(e.length<=y(o,s,a));++o);if(o>40)throw"too large data"}else if(o<1||o>40)throw"invalid version";if(-1!=d&&(d<0||d>8))throw"invalid mask";return k(e,o,s,a,d)},generateHTML:function(e,t){t=t||{};for(var r=j.generate(e,t),i=Math.max(t.modulesize||5,.5),n=Math.max(null!==t.margin?t.margin:4,0),o=document.createElement("div"),a=r.length,s=['<table border="0" cellspacing="0" cellpadding="0" style="border:'+i*n+'px solid #fff;background:#fff">'],d=0;d<a;++d){s.push("<tr>");for(var l=0;l<a;++l)s.push('<td style="width:'+i+"px;height:"+i+"px"+(r[d][l]?";background:#000":"")+'"></td>');s.push("</tr>")}return o.className="qrcode",o.innerHTML=s.join("")+"</table>",o},generateSVG:function(e,t){t=t||{};var r=j.generate(e,t),i=r.length,n=Math.max(t.modulesize||5,.5),o=Math.max(null!==t.margin?t.margin:4,0),a=n*(i+2*o),s=' class= "fg" width="'+n+'" height="'+n+'"/>',d=document.createElementNS("http://www.w3.org/2000/svg","svg");d.setAttribute("viewBox","0 0 "+a+" "+a),d.setAttribute("style","shape-rendering:crispEdges"),t.modulesize&&(d.setAttribute("width",a),d.setAttribute("height",a));for(var l=["<style scoped>.bg{fill:#FFF}.fg{fill:#000}</style>",'<rect class="bg" x="0" y="0"','width="'+a+'" height="'+a+'"/>'],u=o*n,c=0;c<i;++c){for(var f=o*n,h=0;h<i;++h)r[c][h]&&l.push('<rect x="'+f+'" y="'+u+'"',s),f+=n;u+=n}return d.innerHTML=l.join(""),d},generatePNG:function(e,t){t=t||{};var r,i=j.generate(e,t),n=Math.max(t.modulesize||5,.5),o=Math.max(null!==t.margin?t.margin:4,0),a=i.length,s=n*(a+2*o),d=document.createElement("canvas");if(d.width=d.height=s,!(r=d.getContext("2d")))throw"canvas support is needed for PNG output";r.fillStyle="#fff",r.fillRect(0,0,s,s),r.fillStyle="#000";for(var l=0;l<a;++l)for(var u=0;u<a;++u)i[l][u]&&r.fillRect(n*(o+u),n*(o+l),n,n);return d.toDataURL()}};return j})?i.apply(t,[]):i)||(e.exports=n)},function(e,t,r){r.r(t);var i=r(0),n=r.n(i);function o(e){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function a(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function s(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function d(e){var t="function"==typeof Map?new Map:void 0;return(d=function(e){if(null===e||(r=e,-1===Function.toString.call(r).indexOf("[native code]")))return e;var r;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,i)}function i(){return l(e,arguments,c(this).constructor)}return i.prototype=Object.create(e.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),u(i,e)})(e)}function l(e,t,r){return(l=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}()?Reflect.construct:function(e,t,r){var i=[null];i.push.apply(i,t);var n=new(Function.bind.apply(e,i));return r&&u(n,r.prototype),n}).apply(null,arguments)}function u(e,t){return(u=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(e){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var f=function(e){function t(){var e,r;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),this,(e=!(r=c(t).call(this))||"object"!==o(r)&&"function"!=typeof r?s(this):r)._defineProperty=e._defineProperty.bind(s(e)),e.attachShadow({mode:"open"}),Object.keys(t.defaultAttributes).map(e._defineProperty),e}var r,i,l;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&u(e,t)}(t,d(HTMLElement)),r=t,l=[{key:"defaultAttributes",get:function(){return{data:null,format:"png",modulesize:5,margin:4}}},{key:"observedAttributes",get:function(){return Object.keys(t.defaultAttributes)}}],(i=[{key:"attributeChangedCallback",value:function(e,t,r){var i=this[e+"Changed"];i&&"function"==typeof i&&i.call(this,t,r),this.generate()}},{key:"_defineProperty",value:function(e){var r=this;Object.defineProperty(this,e,{get:function(){var i=r.getAttribute(e);return null===i?t.defaultAttributes[e]:i},set:function(t){r.setAttribute(e,t)}})}},{key:"getOptions",value:function(){var e=this.modulesize,t=this.margin;return{modulesize:null!==e?parseInt(e):e,margin:null!==t?parseInt(t):t}}},{key:"generate",value:function(){null!==this.data?"png"===this.format?this.generatePNG():"html"===this.format?this.generateHTML():"svg"===this.format?this.generateSVG():this.shadowRoot.innerHTML="<div>qr-code: "+this.format+" not supported!</div>":this.shadowRoot.innerHTML="<div>qr-code: no data!</div>"}},{key:"generatePNG",value:function(){try{var e=document.createElement("img");e.src=n.a.generatePNG(this.data,this.getOptions()),this.clear(),this.shadowRoot.appendChild(e)}catch(e){this.shadowRoot.innerHTML="<div>qr-code: no canvas support!</div>"}}},{key:"generateHTML",value:function(){var e=n.a.generateHTML(this.data,this.getOptions());this.clear(),this.shadowRoot.appendChild(e)}},{key:"generateSVG",value:function(){var e=n.a.generateSVG(this.data,this.getOptions());this.clear(),this.shadowRoot.appendChild(e)}},{key:"clear",value:function(){for(;this.shadowRoot.lastChild;)this.shadowRoot.removeChild(this.shadowRoot.lastChild)}}])&&a(r.prototype,i),l&&a(r,l),t}();customElements.define("qr-code",f)}]);let l,u,c,f,h,m,p,v,b,g=e=>e;const y=n(r(o(i,"sign-in-form")));class _ extends y{constructor(){super(...arguments),this.templates={},this.issuer="Unknown",this.__emailValidator=()=>!this.errors.some((e=>e.startsWith("email"))),this.__passwordValidator=()=>!this.errors.some((e=>e.startsWith("password"))),this.__newPasswordValidator=()=>!this.errors.some((e=>e.startsWith("new_password")&&!e.endsWith("_error"))),this.__mfaTotpCodeValidator=()=>!this.errors.some((e=>e.startsWith("mfa_totp_code")&&!e.endsWith("_error"))),this.__renderEmail=()=>{var e;const{disabledSelector:r,readonlySelector:i,errors:n}=this,o=n.find((e=>e.startsWith("email"))),a=null==o?void 0:o.replace("email","v8n"),d=a?this.t(a).toString():"",u=this.in("busy");return t(l||(l=g` <div> ${0} <vaadin-email-field error-message="${0}" data-testid="email" class="w-full mb-m" label="${0}" value="${0}" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" @keydown="${0}" @input="${0}"> </vaadin-email-field> ${0} </div> `),this.renderTemplateOrSlot("email:before"),d,this.t("email").toString(),s(null===(e=this.form.credential)||void 0===e?void 0:e.email),u||r.matches("email",!0),i.matches("email",!0),this.__emailValidator,(e=>"Enter"===e.key&&this.submit()),(e=>{var t,r;const i=e.target.value,n=null!==(r=null===(t=this.form.credential)||void 0===t?void 0:t.password)&&void 0!==r?r:"";this.edit({credential:{email:i,password:n},type:"password"})}),this.renderTemplateOrSlot("email:after"))},this.__renderPassword=()=>{var e;const{disabledSelector:r,readonlySelector:i,errors:n}=this,o=n.find((e=>e.startsWith("password"))),a=null==o?void 0:o.replace("password","v8n"),d=a?this.t(a).toString():"",l=this.in("busy");return t(u||(u=g` <div> ${0} <vaadin-password-field error-message="${0}" data-testid="password" class="w-full mb-m" label="${0}" value="${0}" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" @keydown="${0}" @input="${0}"> </vaadin-password-field> ${0} </div> `),this.renderTemplateOrSlot("password:before"),d,this.t("password").toString(),s(null===(e=this.form.credential)||void 0===e?void 0:e.password),l||r.matches("password",!0),i.matches("password",!0),this.__passwordValidator,(e=>"Enter"===e.key&&this.submit()),(e=>{var t,r;const i=null!==(r=null===(t=this.form.credential)||void 0===t?void 0:t.email)&&void 0!==r?r:"",n=e.target.value;this.edit({credential:{email:i,password:n},type:"password"})}),this.renderTemplateOrSlot("password:after"))},this.__renderNewPassword=()=>{var e;const{disabledSelector:r,readonlySelector:i,errors:n}=this,o=n.find((e=>e.startsWith("new_password")&&!e.endsWith("_error"))),a=null==o?void 0:o.replace("new_password","v8n"),d=a?this.t(a).toString():"",l=this.in("busy");return t(c||(c=g` <div> ${0} <vaadin-password-field error-message="${0}" data-testid="new-password" class="w-full mb-m" label="${0}" value="${0}" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" @keydown="${0}" @input="${0}"> </vaadin-password-field> ${0} </div> `),this.renderTemplateOrSlot("new-password:before"),d,this.t("new_password").toString(),s(null===(e=this.form.credential)||void 0===e?void 0:e.new_password),l||r.matches("new-password",!0),i.matches("new-password",!0),this.__newPasswordValidator,(e=>"Enter"===e.key&&this.submit()),(e=>{var t,r,i,n;this.edit({type:"password",credential:{email:null!==(r=null===(t=this.form.credential)||void 0===t?void 0:t.email)&&void 0!==r?r:"",password:null!==(n=null===(i=this.form.credential)||void 0===i?void 0:i.password)&&void 0!==n?n:"",new_password:e.target.value}})}),this.renderTemplateOrSlot("new-password:after"))},this.__renderMfaTotpCode=()=>{var r;const{disabledSelector:i,readonlySelector:n,errors:o}=this,a=this.__mfaSecretCode,d="mfa_totp_code",l="mfa-totp-code",u=o.find((e=>e.startsWith(d)&&!e.endsWith("_error"))),c=null==u?void 0:u.replace(d,"v8n"),h=c?this.t(c).toString():"",m=this.in("busy");return t(f||(f=g` <div> ${0} <vaadin-text-field error-message="${0}" helper-text="${0}" placeholder="123456" data-testid="${0}" class="w-full mb-m" label="${0}" value="${0}" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" autofocus @keydown="${0}" @input="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot(`${l}:before`),h,a?this.t("mfa_totp_code_hint"):"",l,this.t(d).toString(),s(null===(r=this.form.credential)||void 0===r?void 0:r.mfa_totp_code),m||i.matches(l,!0),n.matches(l,!0),this.__mfaTotpCodeValidator,(e=>"Enter"===e.key&&this.submit()),(t=>{const r=t.target.value,i=e(e({},this.form.credential),{},{mfa_totp_code:r});a&&(i.mfa_secret_code=a),this.edit({type:"password",credential:i})}),this.renderTemplateOrSlot(`${l}:after`))},this.__renderMfaSecretCode=()=>{var e,r;const i="mfa-secret-code",n=this.__mfaSecretCode,o=encodeURIComponent(this.issuer),a=encodeURIComponent(null!==(r=null===(e=this.form.credential)||void 0===e?void 0:e.email)&&void 0!==r?r:""),s=new URL(`otpauth://totp/${o}:${a}`);return s.searchParams.set("secret",n),s.searchParams.set("issuer",this.issuer),t(h||(h=g` <div> ${0} <div data-testid="${0}" class="flex space-x-m overflow-hidden rounded border p-m mb-m border-contrast-10" style="background:#fff;color:#000"> <qr-code modulesize="2" margin="0" format="svg" class="inline-flex" data="${0}"> </qr-code> <div class="break-all font-semibold leading-s text-xs tracking-widest"> ${0} </div> </div> ${0} </div> `),this.renderTemplateOrSlot(`${i}:before`),i,s.toString(),n,this.renderTemplateOrSlot(`${i}:after`))},this.__renderMfaRememberDevice=()=>{var r;const{__mfaSecretCode:i,form:n,lang:o,ns:a}=this,s="mfa-remember-device",d=this.in("busy")||this.disabledSelector.matches(s,!0);return t(m||(m=g` <div> ${0} <vaadin-checkbox data-testid="${0}" class="mb-m" ?disabled="${0}" ?checked="${0}" @change="${0}"> <foxy-i18n class="block" lang="${0}" key="mfa_remember_device" ns="${0}"></foxy-i18n> <foxy-i18n class="block text-xs ${0}" lang="${0}" key="mfa_remember_device_hint" ns="${0}"> </foxy-i18n> </vaadin-checkbox> ${0} </div> `),this.renderTemplateOrSlot(`${s}:before`),s,d,!!(null===(r=n.credential)||void 0===r?void 0:r.mfa_remember_device),(t=>{var r,o;const a=t.currentTarget,s=e(e({},n.credential),{},{mfa_remember_device:a.checked,mfa_totp_code:null!==(o=null===(r=n.credential)||void 0===r?void 0:r.mfa_totp_code)&&void 0!==o?o:""});i&&(s.mfa_secret_code=i),this.edit({credential:s})}),o,a,d?"text-disabled":"text-secondary",o,a,this.renderTemplateOrSlot(`${s}:after`))},this.__renderError=()=>t(p||(p=g` <div> ${0} <p class="leading-s flex items-start text-s rounded p-s bg-error-10 text-error"> <iron-icon class="flex-shrink-0 mr-s icon-inline text-l" icon="lumo:error"></iron-icon> <foxy-i18n data-testid="error" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> </p> ${0} </div> `),this.renderTemplateOrSlot("error:before"),this.lang,this.errors[0],this.ns,this.renderTemplateOrSlot("error:after")),this.__renderSubmit=()=>{const e=this.in({idle:{snapshot:{dirty:"valid"}}})||this.in({idle:{snapshot:{clean:"valid"}}})||this.in({idle:{template:{dirty:"valid"}}})||this.in({idle:{template:{clean:"valid"}}});return t(v||(v=g` <div> ${0} <vaadin-button data-testid="submit" class="w-full mt-m" theme="primary" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" lang="${0}" key="sign_in"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("submit:before"),!e||this.in("busy")||this.disabledSelector.matches("submit",!0),(()=>this.submit()),this.ns,this.lang,this.renderTemplateOrSlot("submit:after"))}}static get properties(){return e(e({},super.properties),{},{issuer:{type:String}})}static get v8n(){return[({credential:e})=>!!(null==e?void 0:e.email)||"email_required",({credential:e})=>{var t;return d(null!==(t=null==e?void 0:e.email)&&void 0!==t?t:"")||"email_invalid_email"},({credential:e})=>!!(null==e?void 0:e.password)||"password_required",({credential:e})=>{var t;return 0!==(null===(t=null==e?void 0:e.new_password)||void 0===t?void 0:t.length)||"new_password_required"},({credential:e})=>{var t;return 0!==(null===(t=null==e?void 0:e.mfa_totp_code)||void 0===t?void 0:t.length)||"mfa_totp_code_required"}]}render(){var e,r,i,n;const{hiddenSelector:o,errors:s,lang:d,form:l,ns:u}=this,c=this.__mfaSecretCode,f=null===(e=l.credential)||void 0===e?void 0:e.mfa_totp_code,h=!!c||!!f||s.some((e=>e.startsWith("mfa"))),m="string"==typeof(null===(r=this.form.credential)||void 0===r?void 0:r.new_password)||s.some((e=>e.startsWith("new_password_"))),p=!h&&!f||o.matches("mfa-totp-code",!0),v=!h||h&&c||o.matches("mfa-remember-device",!0),y=!c||o.matches("mfa-secret-code",!0),_=h||o.matches("new-password",!0),w=s.some((e=>e.endsWith("_error"))),$=this.in("busy");return t(b||(b=g` <main aria-live="polite" aria-busy="${0}" class="relative font-lumo text-m leading-m"> ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="busy" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </main> `),$,o.matches("email",!0)?"":this.__renderEmail(),h||o.matches("password",!0)?"":this.__renderPassword(),_||!m?"":this.__renderNewPassword(),p?"":this.__renderMfaTotpCode(),y?"":this.__renderMfaSecretCode(),v?"":this.__renderMfaRememberDevice(),o.matches("error",!0)||!w?"":this.__renderError(),o.matches("submit",!0)?"":this.__renderSubmit(),a({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!$}),d,u,null!==(n=null===(i=customElements.get("foxy-spinner"))||void 0===i?void 0:i.defaultNS)&&void 0!==n?n:"")}async _fetch(...e){try{return await super._fetch(...e)}catch(e){let t="unknown_error";try{const r=(await e.json())._embedded["fx:errors"][0].code;"string"==typeof r&&(t=r)}catch(e){}throw[t]}}get __mfaSecretCode(){var e;const t=null===(e=this.form.credential)||void 0===e?void 0:e.mfa_secret_code;if(t)return t;const r="mfa_required",i=this.errors.find((e=>e.startsWith(r)));return null==i?void 0:i.replace(r,"").trim()}}customElements.define("foxy-sign-in-form",_);export{_ as SignInForm};
@@ -1,5 +1,5 @@
1
- import"./shared-6dafebaf.js";import"./shared-74b7438a.js";import"./shared-b98f0ad9.js";import{_ as t}from"./shared-a8ced8bf.js";import{h as e,s,L as i}from"./shared-7f33a83a.js";import{I as r}from"./shared-4f037e43.js";import{a as o,T as a}from"./shared-a5000f1f.js";import"./shared-86be537c.js";import"./shared-2af327d0.js";let n,c,l,d,p,h,x=t=>t;const f=o(a(r(i)),"spinner");class m extends f{constructor(){super(...arguments),this.layout="horizontal",this.state="busy"}static get properties(){return t(t({},super.properties),{},{layout:{type:String},state:{type:String}})}render(){let t,i,r,o;return"end"===this.state?(i=e(n||(n=x`<iron-icon data-testid="icon" icon="icons:done-all"></iron-icon>`)),r="loading_end",o="text-tertiary"):"error"===this.state?(i=e(c||(c=x`<iron-icon data-testid="icon" icon="icons:error-outline"></iron-icon>`)),r="loading_error",o="text-error"):"paused"===this.state?(i=e(l||(l=x`<iron-icon data-testid="icon" icon="icons:more-horiz"></iron-icon>`)),r="loading_paused",o="text-tertiary"):"empty"===this.state?(i=e(d||(d=x`<iron-icon data-testid="icon" icon="icons:info-outline"></iron-icon>`)),r="loading_empty",o="text-tertiary"):(i=s(p||(p=x`
1
+ import"./shared-c484320b.js";import"./shared-ea316e64.js";import"./shared-0672e78b.js";import{_ as t}from"./shared-a8ced8bf.js";import{h as e,s,L as i}from"./shared-7f33a83a.js";import{I as r}from"./shared-4f037e43.js";import{a as o,T as n}from"./shared-29e21467.js";import"./shared-c52d3772.js";import"./shared-002b788f.js";let a,c,l,d,p,h,x=t=>t;const m=o(n(r(i)),"spinner");class y extends m{constructor(){super(...arguments),this.layout="horizontal",this.state="busy"}static get properties(){return t(t({},super.properties),{},{layout:{type:String},state:{type:String}})}render(){let t,i,r,o;return"end"===this.state?(i=e(a||(a=x`<iron-icon data-testid="icon" icon="icons:done-all"></iron-icon>`)),r="loading_end",o="text-tertiary"):"error"===this.state?(i=e(c||(c=x`<iron-icon data-testid="icon" icon="icons:error-outline"></iron-icon>`)),r="loading_error",o="text-error"):"paused"===this.state?(i=e(l||(l=x`<iron-icon data-testid="icon" icon="icons:more-horiz"></iron-icon>`)),r="loading_paused",o="text-tertiary"):"empty"===this.state?(i=e(d||(d=x`<iron-icon data-testid="icon" icon="icons:info-outline"></iron-icon>`)),r="loading_empty",o="text-tertiary"):(i=s(p||(p=x`
2
2
  <svg data-testid="icon" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 22 22" preserveAspectRatio="xMidYMid" class="animate-spin h-full w-full">
3
3
  <circle cx="11" cy="11" fill="none" stroke="#e15b64" stroke-width="2" r="8" stroke-dasharray="24 12" class="stroke-current"></circle>
4
4
  </svg>
5
- `)),r="loading_busy",o="text-tertiary"),t="horizontal"===this.layout?"flex items-center space-x-s h-xxs":"flex flex-col items-center space-y-s",e(h||(h=x` <div class="font-lumo leading-none text-s ${0} ${0}"> <div class="w-xxs h-xss flex items-center justify-center">${0}</div> <foxy-i18n data-testid="text" class="${0}" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> </div> `),t,o,i,"no-label"===this.layout?"sr-only":"",this.lang,r,this.ns)}}customElements.define("foxy-spinner",m);export{m as Spinner};
5
+ `)),r="loading_busy",o="text-tertiary"),t="horizontal"===this.layout?"flex items-center space-x-s h-xxs":"flex flex-col items-center space-y-s",e(h||(h=x` <div class="font-lumo leading-none text-s ${0} ${0}"> <div class="w-xxs h-xss flex items-center justify-center">${0}</div> <foxy-i18n data-testid="text" class="${0}" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> </div> `),t,o,i,"no-label"===this.layout?"sr-only":"",this.lang,r,this.ns)}}customElements.define("foxy-spinner",y);export{y as Spinner};