@foxy.io/elements 1.18.0-beta.10 → 1.18.0-beta.11

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 (99) hide show
  1. package/dist/cdn/foxy-access-recovery-form.js +1 -1
  2. package/dist/cdn/foxy-address-card.js +1 -1
  3. package/dist/cdn/foxy-address-form.js +1 -1
  4. package/dist/cdn/foxy-api-browser.js +1 -1
  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-coupon-card.js +1 -1
  12. package/dist/cdn/foxy-coupon-code-form.js +1 -1
  13. package/dist/cdn/foxy-coupon-codes-form.js +1 -1
  14. package/dist/cdn/foxy-coupon-detail-card.js +1 -1
  15. package/dist/cdn/foxy-coupon-form.js +1 -1
  16. package/dist/cdn/foxy-custom-field-card.js +1 -1
  17. package/dist/cdn/foxy-custom-field-form.js +1 -1
  18. package/dist/cdn/foxy-customer-api.js +1 -1
  19. package/dist/cdn/foxy-customer-card.js +1 -1
  20. package/dist/cdn/foxy-customer-form.js +1 -1
  21. package/dist/cdn/foxy-customer-portal.js +1 -1
  22. package/dist/cdn/foxy-customer.js +1 -1
  23. package/dist/cdn/foxy-customers-table.js +1 -1
  24. package/dist/cdn/foxy-discount-card.js +1 -1
  25. package/dist/cdn/foxy-discount-detail-card.js +1 -1
  26. package/dist/cdn/foxy-email-template-card.js +1 -1
  27. package/dist/cdn/foxy-email-template-form.js +1 -1
  28. package/dist/cdn/foxy-error-entry-card.js +1 -1
  29. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  30. package/dist/cdn/foxy-gift-card-card.js +1 -1
  31. package/dist/cdn/foxy-gift-card-code-form.js +1 -1
  32. package/dist/cdn/foxy-gift-card-code-log-card.js +1 -1
  33. package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
  34. package/dist/cdn/foxy-gift-card-form.js +1 -1
  35. package/dist/cdn/foxy-item-card.js +1 -1
  36. package/dist/cdn/foxy-item-category-card.js +1 -1
  37. package/dist/cdn/foxy-item-category-form.js +1 -1
  38. package/dist/cdn/foxy-item-form.js +1 -1
  39. package/dist/cdn/foxy-item-option-card.js +1 -1
  40. package/dist/cdn/foxy-item-option-form.js +1 -1
  41. package/dist/cdn/foxy-nucleon-element.js +1 -1
  42. package/dist/cdn/foxy-pagination.js +1 -1
  43. package/dist/cdn/foxy-payment-card.js +1 -1
  44. package/dist/cdn/foxy-payment-method-card.js +1 -1
  45. package/dist/cdn/foxy-payments-api-fraud-protection-card.js +1 -1
  46. package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
  47. package/dist/cdn/foxy-payments-api-payment-method-card.js +1 -1
  48. package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
  49. package/dist/cdn/foxy-payments-api-payment-preset-card.js +1 -1
  50. package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
  51. package/dist/cdn/foxy-report-form.js +1 -1
  52. package/dist/cdn/foxy-reports-table.js +1 -1
  53. package/dist/cdn/foxy-shipment-card.js +1 -1
  54. package/dist/cdn/foxy-sign-in-form.js +1 -1
  55. package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
  56. package/dist/cdn/foxy-subscription-card.js +1 -1
  57. package/dist/cdn/foxy-subscription-form.js +1 -1
  58. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  59. package/dist/cdn/foxy-table.js +1 -1
  60. package/dist/cdn/foxy-tax-card.js +1 -1
  61. package/dist/cdn/foxy-tax-form.js +1 -1
  62. package/dist/cdn/foxy-template-config-form.js +1 -1
  63. package/dist/cdn/foxy-template-form.js +1 -1
  64. package/dist/cdn/foxy-transaction-card.js +1 -1
  65. package/dist/cdn/foxy-transaction.js +1 -1
  66. package/dist/cdn/foxy-transactions-table.js +1 -1
  67. package/dist/cdn/foxy-user-form.js +1 -1
  68. package/dist/cdn/foxy-users-table.js +1 -1
  69. package/dist/cdn/foxy-webhook-card.js +1 -1
  70. package/dist/cdn/foxy-webhook-form.js +1 -1
  71. package/dist/cdn/foxy-webhook-log-card.js +1 -1
  72. package/dist/cdn/foxy-webhook-status-card.js +1 -1
  73. package/dist/cdn/{shared-c9a9077a.js → shared-0008cf8e.js} +1 -1
  74. package/dist/cdn/{shared-17e9778d.js → shared-14afc5c6.js} +1 -1
  75. package/dist/cdn/{shared-c677ca5a.js → shared-27089ebf.js} +1 -1
  76. package/dist/cdn/{shared-a694a204.js → shared-39cb3be1.js} +1 -1
  77. package/dist/cdn/{shared-8116ab4c.js → shared-3ba0d0e8.js} +1 -1
  78. package/dist/cdn/shared-425d906a.js +1 -0
  79. package/dist/cdn/{shared-e7736e8d.js → shared-4a4eab8b.js} +1 -1
  80. package/dist/cdn/{shared-cfe61b3f.js → shared-54deb3dc.js} +1 -1
  81. package/dist/cdn/{shared-beb9cddd.js → shared-5a823202.js} +1 -1
  82. package/dist/cdn/{shared-649c195a.js → shared-6d69487b.js} +1 -1
  83. package/dist/cdn/{shared-3e3ba16e.js → shared-73ac094b.js} +1 -1
  84. package/dist/cdn/{shared-9e6fc72e.js → shared-a2efb819.js} +1 -1
  85. package/dist/cdn/{shared-c5091857.js → shared-a93f4ae9.js} +1 -1
  86. package/dist/cdn/{shared-40ff320f.js → shared-b866f3a7.js} +1 -1
  87. package/dist/cdn/{shared-b52e1d97.js → shared-d187b584.js} +1 -1
  88. package/dist/cdn/{shared-cb26f86e.js → shared-d5ef2683.js} +1 -1
  89. package/dist/cdn/{shared-4029be54.js → shared-dbb66347.js} +1 -1
  90. package/dist/cdn/{shared-9fce92c9.js → shared-dfdf021a.js} +1 -1
  91. package/dist/cdn/{shared-acb90deb.js → shared-ea58e244.js} +1 -1
  92. package/dist/elements/public/CustomerApi/CustomerApi.d.ts +2 -0
  93. package/dist/elements/public/CustomerApi/CustomerApi.js +14 -0
  94. package/dist/elements/public/CustomerApi/CustomerApi.js.map +1 -1
  95. package/dist/elements/public/NucleonElement/NucleonElement.d.ts +1 -1
  96. package/dist/elements/public/NucleonElement/NucleonElement.js +9 -5
  97. package/dist/elements/public/NucleonElement/NucleonElement.js.map +1 -1
  98. package/package.json +1 -1
  99. package/dist/cdn/shared-60425d2e.js +0 -1
@@ -1 +1 @@
1
- import{k as e,_ as s}from"./shared-a8ced8bf.js";import{L as t,c as r,h as a}from"./shared-7f33a83a.js";import{T as i,a as n,S as o}from"./shared-1c9fd2b1.js";import{c as l}from"./shared-4e709717.js";import{G as d}from"./shared-3c7489d6.js";import"./foxy-nucleon-element.js";import{N as c}from"./shared-60425d2e.js";import"./shared-7c8b3ce0.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-4f037e43.js";import"./shared-b0ba62ff.js";let p,u,m,f=e=>e;class x extends(i(t)){constructor(){super(...arguments),this.data=[]}static get properties(){return{data:{type:Array}}}static get styles(){return[super.styles,r(p||(p=f`dd,dt{display:inline-block;overflow:hidden;vertical-align:top;overflow-wrap:anywhere}dt{min-width:calc(5 * var(--lumo-size-l));padding-right:.5em}dd{max-width:calc(15 * var(--lumo-size-l));min-width:calc(10 * var(--lumo-size-l))}`))]}render(){return a(u||(u=f` <dl class="space-y-s"> ${0} </dl> `),this.data.map((e=>{const s=String(e[1]).trim();return a(m||(m=f` <div> <dt class="text-secondary truncate">${0}</dt> <dd class="${0}">${0}</dd> </div> `),e[0],l({"text-tertiary":!s}),s||"–")})))}}let y,h,g=e=>e;const v=["_links","_embedded"],$=n(i(o(c)));class _ extends ${static get scopedElements(){return{"foxy-spinner":customElements.get("foxy-spinner"),"x-data-list":x}}render(){if(this.in({idle:"snapshot"})){const s=this.data,t=e(s,v);return a(y||(y=g` <x-data-list aria-live="polite" aria-busy="false" class="leading-s text-s" data="${0}"> </x-data-list> `),JSON.stringify(Array.from(Object.entries(t))))}const s=this.in("busy");return a(h||(h=g` <div aria-live="polite" aria-busy="${0}" data-testid="wrapper" class="flex justify-center"> <foxy-spinner data-testid="spinner" layout="horizontal" state="${0}" lang="${0}" ns="${0}"> </foxy-spinner> </div> `),s,this.in("fail")?"error":s?"busy":"empty",this.lang,this.ns)}}let b,j,w,k,S,E,O,N,T,z=e=>e;const G=n(i(o(c)),"error-entry-card");class J extends G{constructor(){super(...arguments),this.open=!1}static get scopedElements(){return{"x-resource-viewer":_,"foxy-spinner":customElements.get("foxy-spinner"),"x-data-list":x,"iron-icon":customElements.get("iron-icon"),"foxy-i18n":customElements.get("foxy-i18n"),"x-group":d}}static get properties(){return s(s({},super.properties),{},{open:{type:Boolean,reflect:!0}})}render(){var e,s;const t=this.data,r=this.in("busy");if(t){const{hide_error:e}=t,{open:s}=this;return a(b||(b=z` <details aria-busy="${0}" aria-live="polite" class="text-body w-full" ?open="${0}" @toggle="${0}"> <summary class="rounded-s ring-offset-4 ring-offset-base ring-primary-50 focus-outline-none focus-ring-2"> <div style="padding-left:calc(var(--lumo-space-xs) + var(--lumo-space-s) - 1px)" class="${0}"> ${0} </div> </summary> ${0} </details> `),r,s,this.__handleToggle,l({"border-l-2 leading-s relative cursor-pointer":!0,"border-contrast":e&&!s,"border-primary":!e,"border-error":e&&s,"h-l":!s}),this.__renderSummary(t),s?this.__renderDetails(t):"")}return a(j||(j=z` <div aria-busy="${0}" aria-live="polite" style="padding-left:calc(var(--lumo-space-xs) + var(--lumo-space-s) - 1px)" class="flex items-center justify-center border-l-2 leading-s relative border-contrast-10 h-l"> <foxy-spinner data-testid="spinner" layout="horizontal" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> `),r,r?"busy":this.in("fail")?"error":"empty",this.lang,this.ns,null!==(s=null===(e=customElements.get("foxy-spinner"))||void 0===e?void 0:e.defaultNS)&&void 0!==s?s:"")}__renderGetOrPostValues(e,s){const t=e||s,r=new URLSearchParams(this.__decodeHtml(t));return a(w||(w=z` <div class="relative leading-xs pt-s"> <div class="absolute font-semibold right-0 text-tertiary text-xs top-0 mt-s">${0}</div> <x-data-list data="${0}"></x-data-list> </div> `),e?"GET":"POST",JSON.stringify(Array.from(r.entries())))}__renderReferrer(e){return a(k||(k=z` <span class="text-secondary">Navigated from</span> <a target="_blank" class="font-semibold text-primary hover-underline" href="${0}" rel="nofollow noopener noreferrer"> ${0} </a> `),e,e)}__renderSummary(e){return a(S||(S=z` <div class="text-s absolute right-0 top-0 text-tertiary"> <iron-icon icon="icons:expand-${0}"></iron-icon> </div> <div class="text-s mb-xs ${0}"> <foxy-i18n options="${0}" lang="${0}" key="date" ns="${0}"> </foxy-i18n> <foxy-i18n options="${0}" lang="${0}" key="time" ns="${0}"> </foxy-i18n> </div> <p class="${0} overflow-hidden font-medium"> ${0} </p> `),this.open?"less":"more",e.hide_error?"text-error":"text-primary",JSON.stringify({value:e.date_created}),this.lang,this.ns,JSON.stringify({value:e.date_created}),this.lang,this.ns,this.open?"":"truncate",e.error_message)}__renderDetails(e){return a(E||(E=z` <div class="space-y-m pt-m"> <x-group frame> <foxy-i18n slot="header" lang="${0}" key="request" ns="${0}"></foxy-i18n> <div class="mx-xs p-s text-s divide-y divide-contrast-10 space-y-s"> <p> <span class="block font-semibold">${0}</span> ${0} </p> ${0} </div> </x-group> <x-group frame> <foxy-i18n slot="header" lang="${0}" key="client" ns="${0}"></foxy-i18n> <div class="text-s flex flex-col mx-xs p-s"> <span class="font-semibold"> ${0} ${0} </span> ${0} </div> </x-group> ${0} </div> `),this.lang,this.ns,e.url,e.referrer?this.__renderReferrer(e.referrer):"",e.get_values||e.post_values?this.__renderGetOrPostValues(e.get_values,e.post_values):"",this.lang,this.ns,e.ip_address,e.ip_country?a(O||(O=z`<span class="text-tertiary"> • </span>${0}`),e.ip_country):"",e.user_agent?a(N||(N=z`<span class="text-secondary">${0}</span>`),e.user_agent):"",Object.entries(e._links).map((([e,s])=>["self","fx:store","curies"].includes(e)?"":a(T||(T=z` <x-group frame> <foxy-i18n slot="header" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> <x-resource-viewer class="p-s mx-xs" href="${0}" lang="${0}" ns="${0}"> </x-resource-viewer> </x-group> `),this.lang,e.substr(3),this.ns,s.href,this.lang,this.ns))))}__handleToggle(e){var s;const t=e.target;t.open&&!1===(null===(s=this.data)||void 0===s?void 0:s.hide_error)&&(this.edit({hide_error:!0}),this.submit()),this.open=t.open}__decodeHtml(e){const s=document.createElement("textarea");return s.innerHTML=e,s.value}}customElements.define("foxy-error-entry-card",J);export{J as ErrorEntryCard};
1
+ import{k as e,_ as s}from"./shared-a8ced8bf.js";import{L as t,c as r,h as a}from"./shared-7f33a83a.js";import{T as i,a as n,S as o}from"./shared-1c9fd2b1.js";import{c as l}from"./shared-4e709717.js";import{G as d}from"./shared-3c7489d6.js";import"./foxy-nucleon-element.js";import{N as c}from"./shared-425d906a.js";import"./shared-7c8b3ce0.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-4f037e43.js";import"./shared-b0ba62ff.js";let p,u,m,f=e=>e;class x extends(i(t)){constructor(){super(...arguments),this.data=[]}static get properties(){return{data:{type:Array}}}static get styles(){return[super.styles,r(p||(p=f`dd,dt{display:inline-block;overflow:hidden;vertical-align:top;overflow-wrap:anywhere}dt{min-width:calc(5 * var(--lumo-size-l));padding-right:.5em}dd{max-width:calc(15 * var(--lumo-size-l));min-width:calc(10 * var(--lumo-size-l))}`))]}render(){return a(u||(u=f` <dl class="space-y-s"> ${0} </dl> `),this.data.map((e=>{const s=String(e[1]).trim();return a(m||(m=f` <div> <dt class="text-secondary truncate">${0}</dt> <dd class="${0}">${0}</dd> </div> `),e[0],l({"text-tertiary":!s}),s||"–")})))}}let y,h,g=e=>e;const v=["_links","_embedded"],$=n(i(o(c)));class _ extends ${static get scopedElements(){return{"foxy-spinner":customElements.get("foxy-spinner"),"x-data-list":x}}render(){if(this.in({idle:"snapshot"})){const s=this.data,t=e(s,v);return a(y||(y=g` <x-data-list aria-live="polite" aria-busy="false" class="leading-s text-s" data="${0}"> </x-data-list> `),JSON.stringify(Array.from(Object.entries(t))))}const s=this.in("busy");return a(h||(h=g` <div aria-live="polite" aria-busy="${0}" data-testid="wrapper" class="flex justify-center"> <foxy-spinner data-testid="spinner" layout="horizontal" state="${0}" lang="${0}" ns="${0}"> </foxy-spinner> </div> `),s,this.in("fail")?"error":s?"busy":"empty",this.lang,this.ns)}}let b,j,w,k,S,E,O,N,T,z=e=>e;const G=n(i(o(c)),"error-entry-card");class J extends G{constructor(){super(...arguments),this.open=!1}static get scopedElements(){return{"x-resource-viewer":_,"foxy-spinner":customElements.get("foxy-spinner"),"x-data-list":x,"iron-icon":customElements.get("iron-icon"),"foxy-i18n":customElements.get("foxy-i18n"),"x-group":d}}static get properties(){return s(s({},super.properties),{},{open:{type:Boolean,reflect:!0}})}render(){var e,s;const t=this.data,r=this.in("busy");if(t){const{hide_error:e}=t,{open:s}=this;return a(b||(b=z` <details aria-busy="${0}" aria-live="polite" class="text-body w-full" ?open="${0}" @toggle="${0}"> <summary class="rounded-s ring-offset-4 ring-offset-base ring-primary-50 focus-outline-none focus-ring-2"> <div style="padding-left:calc(var(--lumo-space-xs) + var(--lumo-space-s) - 1px)" class="${0}"> ${0} </div> </summary> ${0} </details> `),r,s,this.__handleToggle,l({"border-l-2 leading-s relative cursor-pointer":!0,"border-contrast":e&&!s,"border-primary":!e,"border-error":e&&s,"h-l":!s}),this.__renderSummary(t),s?this.__renderDetails(t):"")}return a(j||(j=z` <div aria-busy="${0}" aria-live="polite" style="padding-left:calc(var(--lumo-space-xs) + var(--lumo-space-s) - 1px)" class="flex items-center justify-center border-l-2 leading-s relative border-contrast-10 h-l"> <foxy-spinner data-testid="spinner" layout="horizontal" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> `),r,r?"busy":this.in("fail")?"error":"empty",this.lang,this.ns,null!==(s=null===(e=customElements.get("foxy-spinner"))||void 0===e?void 0:e.defaultNS)&&void 0!==s?s:"")}__renderGetOrPostValues(e,s){const t=e||s,r=new URLSearchParams(this.__decodeHtml(t));return a(w||(w=z` <div class="relative leading-xs pt-s"> <div class="absolute font-semibold right-0 text-tertiary text-xs top-0 mt-s">${0}</div> <x-data-list data="${0}"></x-data-list> </div> `),e?"GET":"POST",JSON.stringify(Array.from(r.entries())))}__renderReferrer(e){return a(k||(k=z` <span class="text-secondary">Navigated from</span> <a target="_blank" class="font-semibold text-primary hover-underline" href="${0}" rel="nofollow noopener noreferrer"> ${0} </a> `),e,e)}__renderSummary(e){return a(S||(S=z` <div class="text-s absolute right-0 top-0 text-tertiary"> <iron-icon icon="icons:expand-${0}"></iron-icon> </div> <div class="text-s mb-xs ${0}"> <foxy-i18n options="${0}" lang="${0}" key="date" ns="${0}"> </foxy-i18n> <foxy-i18n options="${0}" lang="${0}" key="time" ns="${0}"> </foxy-i18n> </div> <p class="${0} overflow-hidden font-medium"> ${0} </p> `),this.open?"less":"more",e.hide_error?"text-error":"text-primary",JSON.stringify({value:e.date_created}),this.lang,this.ns,JSON.stringify({value:e.date_created}),this.lang,this.ns,this.open?"":"truncate",e.error_message)}__renderDetails(e){return a(E||(E=z` <div class="space-y-m pt-m"> <x-group frame> <foxy-i18n slot="header" lang="${0}" key="request" ns="${0}"></foxy-i18n> <div class="mx-xs p-s text-s divide-y divide-contrast-10 space-y-s"> <p> <span class="block font-semibold">${0}</span> ${0} </p> ${0} </div> </x-group> <x-group frame> <foxy-i18n slot="header" lang="${0}" key="client" ns="${0}"></foxy-i18n> <div class="text-s flex flex-col mx-xs p-s"> <span class="font-semibold"> ${0} ${0} </span> ${0} </div> </x-group> ${0} </div> `),this.lang,this.ns,e.url,e.referrer?this.__renderReferrer(e.referrer):"",e.get_values||e.post_values?this.__renderGetOrPostValues(e.get_values,e.post_values):"",this.lang,this.ns,e.ip_address,e.ip_country?a(O||(O=z`<span class="text-tertiary"> • </span>${0}`),e.ip_country):"",e.user_agent?a(N||(N=z`<span class="text-secondary">${0}</span>`),e.user_agent):"",Object.entries(e._links).map((([e,s])=>["self","fx:store","curies"].includes(e)?"":a(T||(T=z` <x-group frame> <foxy-i18n slot="header" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> <x-resource-viewer class="p-s mx-xs" href="${0}" lang="${0}" ns="${0}"> </x-resource-viewer> </x-group> `),this.lang,e.substr(3),this.ns,s.href,this.lang,this.ns))))}__handleToggle(e){var s;const t=e.target;t.open&&!1===(null===(s=this.data)||void 0===s?void 0:s.hide_error)&&(this.edit({hide_error:!0}),this.submit()),this.open=t.open}__decodeHtml(e){const s=document.createElement("textarea");return s.innerHTML=e,s.value}}customElements.define("foxy-error-entry-card",J);export{J as ErrorEntryCard};
@@ -1 +1 @@
1
- import"./shared-5f751bfc.js";import"./shared-c99a75d8.js";import"./shared-3fd94d2f.js";import"./shared-66a0263f.js";import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-d9c5e26e.js";import{h as e}from"./shared-7f33a83a.js";import{C as t}from"./shared-24d650cd.js";import{N as r}from"./shared-60425d2e.js";import{T as s,a}from"./shared-1c9fd2b1.js";import{c as i}from"./shared-4e709717.js";import"./shared-4a2e1638.js";import"./shared-0ca312eb.js";import"./shared-0ffa1afb.js";import"./shared-b1304f5b.js";import"./shared-a8ced8bf.js";import"./shared-4f037e43.js";import"./shared-7c8b3ce0.js";import"./shared-d3bf9ac0.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";let n,d,l,o,c,h,m=e=>e;const f=t(s(a(r,"generate-codes-form")));class u extends f{constructor(){super(...arguments),this.templates={}}static get v8n(){return[({number_of_codes:e})=>e&&e>0||"number_of_codes_required",({current_balance:e})=>!e||e>=0||"current_balance_negative",({length:e})=>e&&e>0||"length_required"]}render(){var t,r;const{hiddenSelector:s,lang:a,ns:d}=this,l=this.in("busy"),o=this.in("fail"),c=this.in({idle:"snapshot"}),h=this.in({idle:"template"}),f="transition-opacity duration-500",u="opacity-0 pointer-events-none";return e(n||(n=m` <div aria-busy="${0}" aria-live="polite" class="relative"> <div class="${0}"> ${0} ${0} ${0} ${0} ${0} </div> <div class="${0}"> <div class="mx-auto flex mb-m w-l h-l rounded-t-l rounded-b-l bg-success"> <iron-icon icon="icons:done-all" class="m-auto text-success-contrast"></iron-icon> </div> <foxy-i18n class="block" lang="${0}" key="generate_codes_done" ns="${0}"></foxy-i18n> </div> <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),l,i({"grid grid-cols-2 gap-m":!0,[f]:!0,[u]:c}),s.matches("length",!0)?"":this.__renderLength(),s.matches("number-of-codes",!0)?"":this.__renderNumberOfCodes(),s.matches("current-balance",!0)?"":this.__renderCurrentBalance(),s.matches("prefix",!0)?"":this.__renderPrefix(),s.matches("generate",!0)?"":this.__renderGenerate(),i({"absolute inset-0 flex flex-col items-center justify-center":!0,"text-center text-m text-secondary leading-m":!0,[f]:!0,[u]:!c}),a,d,i({"absolute inset-0 flex":!0,[f]:!0,[u]:!l&&!o}),o?"error":h?"empty":"busy",a,d,null!==(r=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==r?r:"")}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")):""}__getValidator(e){return()=>!this.errors.some((t=>t.startsWith(e)))}__renderLength(){const t=this.in({idle:"template"});return e(d||(d=m` <div> ${0} <vaadin-integer-field error-message="${0}" data-testid="length" label="${0}" class="w-full" min="1" ?disabled="${0}" ?readonly="${0}" prevent-invalid-input has-controls .checkValidity="${0}" .value="${0}" @keydown="${0}" @change="${0}"> </vaadin-integer-field> ${0} </div> `),this.renderTemplateOrSlot("length:before"),this.__getErrorMessage("length"),this.t("length"),!t||this.disabledSelector.matches("length",!0),this.readonlySelector.matches("length",!0),this.__getValidator("length"),t?this.form.length:"",(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget;this.edit({length:parseInt(t.value)})}),this.renderTemplateOrSlot("length:after"))}__renderNumberOfCodes(){const t=this.in({idle:"template"});return e(l||(l=m` <div> ${0} <vaadin-integer-field error-message="${0}" data-testid="number-of-codes" label="${0}" class="w-full" min="1" ?disabled="${0}" ?readonly="${0}" prevent-invalid-input has-controls .checkValidity="${0}" .value="${0}" @keydown="${0}" @change="${0}"> </vaadin-integer-field> ${0} </div> `),this.renderTemplateOrSlot("number-of-codes:before"),this.__getErrorMessage("number_of_codes"),this.t("number_of_codes"),!t||this.disabledSelector.matches("number-of-codes",!0),this.readonlySelector.matches("number-of-codes",!0),this.__getValidator("number_of_codes"),t?this.form.number_of_codes:"",(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget;this.edit({number_of_codes:parseInt(t.value)})}),this.renderTemplateOrSlot("number-of-codes:after"))}__renderCurrentBalance(){var t;const r=this.in({idle:"template"});return e(o||(o=m` <div class="col-span-2"> ${0} <vaadin-integer-field error-message="${0}" data-testid="current-balance" label="${0}" class="w-full" min="0" ?disabled="${0}" ?readonly="${0}" prevent-invalid-input has-controls .checkValidity="${0}" .value="${0}" @keydown="${0}" @change="${0}"> </vaadin-integer-field> ${0} </div> `),this.renderTemplateOrSlot("current-balance:before"),this.__getErrorMessage("current_balance"),this.t("balance"),!r||this.disabledSelector.matches("current-balance",!0),this.readonlySelector.matches("current-balance",!0),this.__getValidator("current_balance"),r?null!==(t=this.form.current_balance)&&void 0!==t?t:0:"",(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget;this.edit({current_balance:parseInt(t.value)})}),this.renderTemplateOrSlot("current-balance:after"))}__renderPrefix(){const t=this.in({idle:"template"});return e(c||(c=m` <div class="col-span-2"> ${0} <vaadin-text-field helper-text="${0}" data-testid="prefix" label="${0}" class="w-full" min="1" ?disabled="${0}" ?readonly="${0}" clear-button-visible .value="${0}" @keydown="${0}" @change="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot("prefix:before"),this.t("leave_empty_for_random_codes"),this.t("prefix"),!t||this.disabledSelector.matches("prefix",!0),this.readonlySelector.matches("prefix",!0),t?this.form.prefix:"",(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget;this.edit({prefix:t.value})}),this.renderTemplateOrSlot("prefix:after"))}__renderGenerate(){const t=this.in({idle:{template:{dirty:"valid"}}});return e(h||(h=m` <div class="col-span-2 mt-m"> ${0} <vaadin-button data-testid="generate" class="w-full" theme="success primary" ?disabled="${0}" @click="${0}"> <foxy-i18n lang="${0}" key="generate" ns="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("generate:before"),!t||this.disabledSelector.matches("generate",!0),(()=>this.submit()),this.lang,this.ns,this.renderTemplateOrSlot("generate:after"))}}customElements.define("foxy-generate-codes-form",u);export{u as GenerateCodesForm};
1
+ import"./shared-5f751bfc.js";import"./shared-c99a75d8.js";import"./shared-3fd94d2f.js";import"./shared-66a0263f.js";import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-d9c5e26e.js";import{h as e}from"./shared-7f33a83a.js";import{C as t}from"./shared-24d650cd.js";import{N as r}from"./shared-425d906a.js";import{T as s,a}from"./shared-1c9fd2b1.js";import{c as i}from"./shared-4e709717.js";import"./shared-4a2e1638.js";import"./shared-0ca312eb.js";import"./shared-0ffa1afb.js";import"./shared-b1304f5b.js";import"./shared-a8ced8bf.js";import"./shared-4f037e43.js";import"./shared-7c8b3ce0.js";import"./shared-d3bf9ac0.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";let n,d,l,o,c,h,m=e=>e;const f=t(s(a(r,"generate-codes-form")));class u extends f{constructor(){super(...arguments),this.templates={}}static get v8n(){return[({number_of_codes:e})=>e&&e>0||"number_of_codes_required",({current_balance:e})=>!e||e>=0||"current_balance_negative",({length:e})=>e&&e>0||"length_required"]}render(){var t,r;const{hiddenSelector:s,lang:a,ns:d}=this,l=this.in("busy"),o=this.in("fail"),c=this.in({idle:"snapshot"}),h=this.in({idle:"template"}),f="transition-opacity duration-500",u="opacity-0 pointer-events-none";return e(n||(n=m` <div aria-busy="${0}" aria-live="polite" class="relative"> <div class="${0}"> ${0} ${0} ${0} ${0} ${0} </div> <div class="${0}"> <div class="mx-auto flex mb-m w-l h-l rounded-t-l rounded-b-l bg-success"> <iron-icon icon="icons:done-all" class="m-auto text-success-contrast"></iron-icon> </div> <foxy-i18n class="block" lang="${0}" key="generate_codes_done" ns="${0}"></foxy-i18n> </div> <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),l,i({"grid grid-cols-2 gap-m":!0,[f]:!0,[u]:c}),s.matches("length",!0)?"":this.__renderLength(),s.matches("number-of-codes",!0)?"":this.__renderNumberOfCodes(),s.matches("current-balance",!0)?"":this.__renderCurrentBalance(),s.matches("prefix",!0)?"":this.__renderPrefix(),s.matches("generate",!0)?"":this.__renderGenerate(),i({"absolute inset-0 flex flex-col items-center justify-center":!0,"text-center text-m text-secondary leading-m":!0,[f]:!0,[u]:!c}),a,d,i({"absolute inset-0 flex":!0,[f]:!0,[u]:!l&&!o}),o?"error":h?"empty":"busy",a,d,null!==(r=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==r?r:"")}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")):""}__getValidator(e){return()=>!this.errors.some((t=>t.startsWith(e)))}__renderLength(){const t=this.in({idle:"template"});return e(d||(d=m` <div> ${0} <vaadin-integer-field error-message="${0}" data-testid="length" label="${0}" class="w-full" min="1" ?disabled="${0}" ?readonly="${0}" prevent-invalid-input has-controls .checkValidity="${0}" .value="${0}" @keydown="${0}" @change="${0}"> </vaadin-integer-field> ${0} </div> `),this.renderTemplateOrSlot("length:before"),this.__getErrorMessage("length"),this.t("length"),!t||this.disabledSelector.matches("length",!0),this.readonlySelector.matches("length",!0),this.__getValidator("length"),t?this.form.length:"",(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget;this.edit({length:parseInt(t.value)})}),this.renderTemplateOrSlot("length:after"))}__renderNumberOfCodes(){const t=this.in({idle:"template"});return e(l||(l=m` <div> ${0} <vaadin-integer-field error-message="${0}" data-testid="number-of-codes" label="${0}" class="w-full" min="1" ?disabled="${0}" ?readonly="${0}" prevent-invalid-input has-controls .checkValidity="${0}" .value="${0}" @keydown="${0}" @change="${0}"> </vaadin-integer-field> ${0} </div> `),this.renderTemplateOrSlot("number-of-codes:before"),this.__getErrorMessage("number_of_codes"),this.t("number_of_codes"),!t||this.disabledSelector.matches("number-of-codes",!0),this.readonlySelector.matches("number-of-codes",!0),this.__getValidator("number_of_codes"),t?this.form.number_of_codes:"",(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget;this.edit({number_of_codes:parseInt(t.value)})}),this.renderTemplateOrSlot("number-of-codes:after"))}__renderCurrentBalance(){var t;const r=this.in({idle:"template"});return e(o||(o=m` <div class="col-span-2"> ${0} <vaadin-integer-field error-message="${0}" data-testid="current-balance" label="${0}" class="w-full" min="0" ?disabled="${0}" ?readonly="${0}" prevent-invalid-input has-controls .checkValidity="${0}" .value="${0}" @keydown="${0}" @change="${0}"> </vaadin-integer-field> ${0} </div> `),this.renderTemplateOrSlot("current-balance:before"),this.__getErrorMessage("current_balance"),this.t("balance"),!r||this.disabledSelector.matches("current-balance",!0),this.readonlySelector.matches("current-balance",!0),this.__getValidator("current_balance"),r?null!==(t=this.form.current_balance)&&void 0!==t?t:0:"",(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget;this.edit({current_balance:parseInt(t.value)})}),this.renderTemplateOrSlot("current-balance:after"))}__renderPrefix(){const t=this.in({idle:"template"});return e(c||(c=m` <div class="col-span-2"> ${0} <vaadin-text-field helper-text="${0}" data-testid="prefix" label="${0}" class="w-full" min="1" ?disabled="${0}" ?readonly="${0}" clear-button-visible .value="${0}" @keydown="${0}" @change="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot("prefix:before"),this.t("leave_empty_for_random_codes"),this.t("prefix"),!t||this.disabledSelector.matches("prefix",!0),this.readonlySelector.matches("prefix",!0),t?this.form.prefix:"",(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget;this.edit({prefix:t.value})}),this.renderTemplateOrSlot("prefix:after"))}__renderGenerate(){const t=this.in({idle:{template:{dirty:"valid"}}});return e(h||(h=m` <div class="col-span-2 mt-m"> ${0} <vaadin-button data-testid="generate" class="w-full" theme="success primary" ?disabled="${0}" @click="${0}"> <foxy-i18n lang="${0}" key="generate" ns="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("generate:before"),!t||this.disabledSelector.matches("generate",!0),(()=>this.submit()),this.lang,this.ns,this.renderTemplateOrSlot("generate:after"))}}customElements.define("foxy-generate-codes-form",u);export{u as GenerateCodesForm};
@@ -1 +1 @@
1
- import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-d9c5e26e.js";import{h as t}from"./shared-7f33a83a.js";import{C as e}from"./shared-24d650cd.js";import{N as s}from"./shared-60425d2e.js";import{T as i,a as r}from"./shared-1c9fd2b1.js";import{c as a}from"./shared-4e709717.js";import"./shared-0ffa1afb.js";import"./shared-0ca312eb.js";import"./shared-b1304f5b.js";import"./shared-a8ced8bf.js";import"./shared-4f037e43.js";import"./shared-7c8b3ce0.js";import"./shared-d3bf9ac0.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";let d,o,n,l,c,p=t=>t;const h=i(e(r(s,"gift-card-card")));class m extends h{constructor(){super(...arguments),this.templates={}}render(){var e,s;const i=this.hiddenSelector;return t(d||(d=p` <div aria-busy="${0}" aria-live="polite" class="relative leading-m font-lumo text-m"> <div class="${0}"> ${0} ${0} </div> <div class="${0}"> <foxy-spinner data-testid="spinner" state="${0}" class="m-auto" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),this.in("busy"),a({"transition-opacity":!0,"opacity-0":!this.data}),i.matches("title",!0)?"":this.__renderTitle(),i.matches("status",!0)?"":this.__renderStatus(),a({"pointer-events-none absolute inset-0 flex transition-opacity":!0,"opacity-0":!!this.data}),this.in("fail")?"error":this.in({idle:"template"})?"empty":"busy",this.lang,this.ns,null!==(s=null===(e=customElements.get("foxy-spinner"))||void 0===e?void 0:e.defaultNS)&&void 0!==s?s:"")}__renderTitle(){var e,s,i,r;const a=null!==(s=null===(e=this.data)||void 0===e?void 0:e.name)&&void 0!==s?s:t(o||(o=p`&ZeroWidthSpace;`)),d=null!==(r=null===(i=this.data)||void 0===i?void 0:i.currency_code)&&void 0!==r?r:t(n||(n=p`&ZeroWidthSpace;`));return t(l||(l=p` <div data-testid="title"> ${0} <div class="flex items-center justify-between"> <div class="font-semibold truncate">${0}</div> <div class="text-tertiary uppercase text-s flex-shrink-0">${0}</div> </div> ${0} </div> `),this.renderTemplateOrSlot("title:before"),a,d,this.renderTemplateOrSlot("title:after"))}__renderStatus(){var e;const s=null===(e=this.data)||void 0===e?void 0:e.expires_after;return t(c||(c=p` <div data-testid="status"> ${0} <foxy-i18n options="${0}" class="block truncate text-s text-tertiary" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> ${0} </div> `),this.renderTemplateOrSlot("status:before"),JSON.stringify({value:s}),this.lang,s?"expires_after_value":"never_expires",this.ns,this.renderTemplateOrSlot("status:after"))}}customElements.define("foxy-gift-card-card",m);export{m as GiftCardCard};
1
+ import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-d9c5e26e.js";import{h as t}from"./shared-7f33a83a.js";import{C as e}from"./shared-24d650cd.js";import{N as s}from"./shared-425d906a.js";import{T as i,a as r}from"./shared-1c9fd2b1.js";import{c as a}from"./shared-4e709717.js";import"./shared-0ffa1afb.js";import"./shared-0ca312eb.js";import"./shared-b1304f5b.js";import"./shared-a8ced8bf.js";import"./shared-4f037e43.js";import"./shared-7c8b3ce0.js";import"./shared-d3bf9ac0.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";let d,o,n,l,c,p=t=>t;const h=i(e(r(s,"gift-card-card")));class m extends h{constructor(){super(...arguments),this.templates={}}render(){var e,s;const i=this.hiddenSelector;return t(d||(d=p` <div aria-busy="${0}" aria-live="polite" class="relative leading-m font-lumo text-m"> <div class="${0}"> ${0} ${0} </div> <div class="${0}"> <foxy-spinner data-testid="spinner" state="${0}" class="m-auto" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),this.in("busy"),a({"transition-opacity":!0,"opacity-0":!this.data}),i.matches("title",!0)?"":this.__renderTitle(),i.matches("status",!0)?"":this.__renderStatus(),a({"pointer-events-none absolute inset-0 flex transition-opacity":!0,"opacity-0":!!this.data}),this.in("fail")?"error":this.in({idle:"template"})?"empty":"busy",this.lang,this.ns,null!==(s=null===(e=customElements.get("foxy-spinner"))||void 0===e?void 0:e.defaultNS)&&void 0!==s?s:"")}__renderTitle(){var e,s,i,r;const a=null!==(s=null===(e=this.data)||void 0===e?void 0:e.name)&&void 0!==s?s:t(o||(o=p`&ZeroWidthSpace;`)),d=null!==(r=null===(i=this.data)||void 0===i?void 0:i.currency_code)&&void 0!==r?r:t(n||(n=p`&ZeroWidthSpace;`));return t(l||(l=p` <div data-testid="title"> ${0} <div class="flex items-center justify-between"> <div class="font-semibold truncate">${0}</div> <div class="text-tertiary uppercase text-s flex-shrink-0">${0}</div> </div> ${0} </div> `),this.renderTemplateOrSlot("title:before"),a,d,this.renderTemplateOrSlot("title:after"))}__renderStatus(){var e;const s=null===(e=this.data)||void 0===e?void 0:e.expires_after;return t(c||(c=p` <div data-testid="status"> ${0} <foxy-i18n options="${0}" class="block truncate text-s text-tertiary" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> ${0} </div> `),this.renderTemplateOrSlot("status:before"),JSON.stringify({value:s}),this.lang,s?"expires_after_value":"never_expires",this.ns,this.renderTemplateOrSlot("status:after"))}}customElements.define("foxy-gift-card-card",m);export{m as GiftCardCard};
@@ -1 +1 @@
1
- import"./shared-5f751bfc.js";import"./shared-c99a75d8.js";import"./shared-4e2e233c.js";import"./shared-66a0263f.js";import"./shared-4029be54.js";import"./shared-f00d31e0.js";import"./shared-0479553e.js";import"./foxy-gift-card-code-log-card.js";import"./foxy-spinner.js";import"./shared-d9c5e26e.js";import{I as e}from"./shared-b52e1d97.js";import"./foxy-item-card.js";import{i as t}from"./shared-d3bf9ac0.js";import{h as r}from"./shared-7f33a83a.js";import{C as i}from"./shared-24d650cd.js";import{N as a}from"./shared-60425d2e.js";import"./shared-0ffa1afb.js";import"./shared-4a2e1638.js";import"./shared-ccb96675.js";import{T as s,S as d,a as n}from"./shared-1c9fd2b1.js";import{c as o}from"./shared-4e709717.js";import"./shared-02c6c308.js";import"./shared-164a791e.js";import"./shared-3214ee1b.js";import"./shared-3fd94d2f.js";import"./shared-8dd640bf.js";import{P as l}from"./shared-a6263179.js";import"./shared-0ca312eb.js";import"./shared-61174bec.js";import"./foxy-collection-page.js";import"./shared-a8ced8bf.js";import"./shared-7c8b3ce0.js";import"./shared-d519a301.js";import"./shared-11c2efc8.js";import"./shared-b1304f5b.js";import"./shared-4f037e43.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";import"./foxy-form-dialog.js";import"./foxy-pagination.js";import"./shared-17e9778d.js";import"./shared-3d245899.js";let c,m=e=>e;customElements.define("foxy-internal-gift-card-code-form-item-control",class extends e{renderControl(){var e,i,a;let s;try{const t=new URL(null!==(a=null===(i=null===(e=this.nucleon)||void 0===e?void 0:e.form._links)||void 0===i?void 0:i["fx:provisioned_by_transaction_detail_id"].href)&&void 0!==a?a:"");t.searchParams.set("zoom","item_options"),s=t.toString()}catch(e){s=void 0}return r(c||(c=m` <foxy-internal-details summary="title" infer="" open> <foxy-item-card infer="item-card" class="p-m" href="${0}"></foxy-item-card> </foxy-internal-details> `),t(s))}});let h,f,u,_,p,g,b,y,v,$=e=>e;const x=i(s(d(n(a,"gift-card-code-form"))));class j extends x{constructor(){super(...arguments),this.templates={}}static get scopedElements(){return{"vaadin-number-field":customElements.get("vaadin-number-field"),"vaadin-date-picker":customElements.get("vaadin-date-picker"),"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-button":customElements.get("vaadin-button"),"foxy-internal-gift-card-code-form-item-control":customElements.get("foxy-internal-gift-card-code-form-item-control"),"foxy-internal-async-details-control":customElements.get("foxy-internal-async-details-control"),"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n"),"x-property-table":l}}static get v8n(){return[({code:e})=>!!e||"code_required",({code:e})=>!e||e.length<=50||"code_too_long",({current_balance:e})=>!!e||"current_balance_required",({current_balance:e})=>!e||!isNaN(e)||"current_balance_required"]}render(){var e,t;return r(h||(h=$` <div class="relative space-y-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="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),this.__isCodeHidden?null:this.__renderCode(),this.__isCurrentBalanceHidden?null:this.__renderCurrentBalance(),this.__isEndDateHidden?null:this.__renderEndDate(),this.__isLogsControlHidden?null:this.__renderLogsControl(),this.__isCartItemHidden?null:this.__renderCartItem(),this.__isTimestampsHidden?null:this.__renderTimestamps(),this.__isCreateHidden?null:this.__renderCreate(),this.__isDeleteHidden?null:this.__renderDelete(),o({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":this.in("idle")}),this.in("fail")?"error":this.in("busy")?"busy":"empty",this.lang,this.ns,null!==(t=null===(e=customElements.get("foxy-spinner"))||void 0===e?void 0:e.defaultNS)&&void 0!==t?t:"")}get __isCodeHidden(){return this.hiddenSelector.matches("code",!0)}get __isCurrentBalanceHidden(){return this.hiddenSelector.matches("current-balance",!0)}get __isEndDateHidden(){return this.hiddenSelector.matches("end-date",!0)}get __isLogsControlHidden(){var e;return!(null===(e=this.form._links)||void 0===e?void 0:e["fx:gift_card_code_logs"].href)}get __isCartItemHidden(){var e;return!(null===(e=this.form._links)||void 0===e?void 0:e["fx:provisioned_by_transaction_detail_id"])}get __isTimestampsHidden(){return!!this.hiddenSelector.matches("timestamps",!0)||!this.data}get __isCreateHidden(){return!!this.hiddenSelector.matches("create",!0)||!!this.data}get __isDeleteHidden(){return!!this.hiddenSelector.matches("delete",!0)||!this.data}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")).toString():""}__getValidator(e){return()=>!this.errors.some((t=>t.startsWith(e)))}__renderCode(){return r(f||(f=$` <div> ${0} <vaadin-text-field data-testid="code" class="w-full" label="${0}" .checkValidity="${0}" .errorMessage="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" required @keydown="${0}" @input="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot("code:before"),this.t("code"),this.__getValidator("code"),this.__getErrorMessage("code"),this.form.code,!this.in("idle")||this.disabledSelector.matches("code",!0),this.readonlySelector.matches("code",!0),(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget.value;this.edit({code:t})}),this.renderTemplateOrSlot("code:after"))}__renderCurrentBalance(){return r(u||(u=$` <div> ${0} <vaadin-number-field data-testid="current-balance" class="w-full" label="${0}" min="0" .checkValidity="${0}" .errorMessage="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" prevent-invalid-input has-controls required @keydown="${0}" @change="${0}"> </vaadin-number-field> ${0} </div> `),this.renderTemplateOrSlot("current-balance:before"),this.t("current_balance"),this.__getValidator("current_balance"),this.__getErrorMessage("current_balance"),this.form.current_balance,!this.in("idle")||this.disabledSelector.matches("current-balance",!0),this.readonlySelector.matches("current-balance",!0),(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget.value;this.edit({current_balance:parseFloat(t)})}),this.renderTemplateOrSlot("current-balance:after"))}__renderEndDate(){return r(_||(_=$` <div> ${0} <vaadin-date-picker data-testid="end-date" class="w-full" label="${0}" min="0" .checkValidity="${0}" .errorMessage="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" @keydown="${0}" @change="${0}"> </vaadin-date-picker> ${0} </div> `),this.renderTemplateOrSlot("end-date:before"),this.t("end_date"),this.__getValidator("end_date"),this.__getErrorMessage("end_date"),this.form.end_date,!this.in("idle")||this.disabledSelector.matches("end-date",!0),this.readonlySelector.matches("end-date",!0),(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget.value;this.edit({end_date:t})}),this.renderTemplateOrSlot("end-date:after"))}__renderLogsControl(){var e;return r(p||(p=$` <foxy-internal-async-details-control infer="logs" first="${0}" limit="5" item="foxy-gift-card-code-log-card" open> </foxy-internal-async-details-control> `),t(null===(e=this.form._links)||void 0===e?void 0:e["fx:gift_card_code_logs"].href))}__renderCartItem(){return r(g||(g=$` <foxy-internal-gift-card-code-form-item-control infer="cart-item"> </foxy-internal-gift-card-code-form-item-control> `))}__renderTimestamps(){return r(b||(b=$` <div> ${0} <x-property-table data-testid="timestamps" .items="${0}"> </x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}})),this.renderTemplateOrSlot("timestamps:after"))}__renderCreate(){const e=this.in({idle:{template:{clean:"invalid"}}}),t=this.in({idle:{template:{dirty:"invalid"}}}),i=this.in({idle:{snapshot:{clean:"invalid"}}}),a=this.in({idle:{snapshot:{dirty:"invalid"}}}),s=e||t||(i||a),d=this.in("idle");return r(y||(y=$` <div> ${0} <vaadin-button data-testid="create" class="w-full" theme="primary success" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="create" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("create:before"),!d||s||this.disabledSelector.matches("create",!0),(()=>this.submit()),this.ns,this.lang,this.renderTemplateOrSlot("create:after"))}__renderDelete(){return r(v||(v=$` <div> <foxy-internal-confirm-dialog data-testid="confirm" message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> ${0} <vaadin-button data-testid="delete" theme="primary error" class="w-full" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="delete" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.lang,this.ns,(e=>!e.detail.cancelled&&this.delete()),this.renderTemplateOrSlot("delete:before"),this.in("busy")||this.disabledSelector.matches("delete",!0),(e=>{this.renderRoot.querySelector("#confirm").show(e.currentTarget)}),this.ns,this.lang,this.renderTemplateOrSlot("delete:after"))}}customElements.define("foxy-gift-card-code-form",j);export{j as GiftCardCodeForm};
1
+ import"./shared-5f751bfc.js";import"./shared-c99a75d8.js";import"./shared-4e2e233c.js";import"./shared-66a0263f.js";import"./shared-dbb66347.js";import"./shared-f00d31e0.js";import"./shared-0479553e.js";import"./foxy-gift-card-code-log-card.js";import"./foxy-spinner.js";import"./shared-d9c5e26e.js";import{I as e}from"./shared-d187b584.js";import"./foxy-item-card.js";import{i as t}from"./shared-d3bf9ac0.js";import{h as r}from"./shared-7f33a83a.js";import{C as i}from"./shared-24d650cd.js";import{N as a}from"./shared-425d906a.js";import"./shared-0ffa1afb.js";import"./shared-4a2e1638.js";import"./shared-ccb96675.js";import{T as s,S as d,a as n}from"./shared-1c9fd2b1.js";import{c as o}from"./shared-4e709717.js";import"./shared-02c6c308.js";import"./shared-164a791e.js";import"./shared-3214ee1b.js";import"./shared-3fd94d2f.js";import"./shared-8dd640bf.js";import{P as l}from"./shared-a6263179.js";import"./shared-0ca312eb.js";import"./shared-61174bec.js";import"./foxy-collection-page.js";import"./shared-a8ced8bf.js";import"./shared-7c8b3ce0.js";import"./shared-d519a301.js";import"./shared-11c2efc8.js";import"./shared-b1304f5b.js";import"./shared-4f037e43.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";import"./foxy-form-dialog.js";import"./foxy-pagination.js";import"./shared-14afc5c6.js";import"./shared-3d245899.js";let c,m=e=>e;customElements.define("foxy-internal-gift-card-code-form-item-control",class extends e{renderControl(){var e,i,a;let s;try{const t=new URL(null!==(a=null===(i=null===(e=this.nucleon)||void 0===e?void 0:e.form._links)||void 0===i?void 0:i["fx:provisioned_by_transaction_detail_id"].href)&&void 0!==a?a:"");t.searchParams.set("zoom","item_options"),s=t.toString()}catch(e){s=void 0}return r(c||(c=m` <foxy-internal-details summary="title" infer="" open> <foxy-item-card infer="item-card" class="p-m" href="${0}"></foxy-item-card> </foxy-internal-details> `),t(s))}});let h,f,u,_,p,g,b,y,v,$=e=>e;const x=i(s(d(n(a,"gift-card-code-form"))));class j extends x{constructor(){super(...arguments),this.templates={}}static get scopedElements(){return{"vaadin-number-field":customElements.get("vaadin-number-field"),"vaadin-date-picker":customElements.get("vaadin-date-picker"),"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-button":customElements.get("vaadin-button"),"foxy-internal-gift-card-code-form-item-control":customElements.get("foxy-internal-gift-card-code-form-item-control"),"foxy-internal-async-details-control":customElements.get("foxy-internal-async-details-control"),"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n"),"x-property-table":l}}static get v8n(){return[({code:e})=>!!e||"code_required",({code:e})=>!e||e.length<=50||"code_too_long",({current_balance:e})=>!!e||"current_balance_required",({current_balance:e})=>!e||!isNaN(e)||"current_balance_required"]}render(){var e,t;return r(h||(h=$` <div class="relative space-y-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="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),this.__isCodeHidden?null:this.__renderCode(),this.__isCurrentBalanceHidden?null:this.__renderCurrentBalance(),this.__isEndDateHidden?null:this.__renderEndDate(),this.__isLogsControlHidden?null:this.__renderLogsControl(),this.__isCartItemHidden?null:this.__renderCartItem(),this.__isTimestampsHidden?null:this.__renderTimestamps(),this.__isCreateHidden?null:this.__renderCreate(),this.__isDeleteHidden?null:this.__renderDelete(),o({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":this.in("idle")}),this.in("fail")?"error":this.in("busy")?"busy":"empty",this.lang,this.ns,null!==(t=null===(e=customElements.get("foxy-spinner"))||void 0===e?void 0:e.defaultNS)&&void 0!==t?t:"")}get __isCodeHidden(){return this.hiddenSelector.matches("code",!0)}get __isCurrentBalanceHidden(){return this.hiddenSelector.matches("current-balance",!0)}get __isEndDateHidden(){return this.hiddenSelector.matches("end-date",!0)}get __isLogsControlHidden(){var e;return!(null===(e=this.form._links)||void 0===e?void 0:e["fx:gift_card_code_logs"].href)}get __isCartItemHidden(){var e;return!(null===(e=this.form._links)||void 0===e?void 0:e["fx:provisioned_by_transaction_detail_id"])}get __isTimestampsHidden(){return!!this.hiddenSelector.matches("timestamps",!0)||!this.data}get __isCreateHidden(){return!!this.hiddenSelector.matches("create",!0)||!!this.data}get __isDeleteHidden(){return!!this.hiddenSelector.matches("delete",!0)||!this.data}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")).toString():""}__getValidator(e){return()=>!this.errors.some((t=>t.startsWith(e)))}__renderCode(){return r(f||(f=$` <div> ${0} <vaadin-text-field data-testid="code" class="w-full" label="${0}" .checkValidity="${0}" .errorMessage="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" required @keydown="${0}" @input="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot("code:before"),this.t("code"),this.__getValidator("code"),this.__getErrorMessage("code"),this.form.code,!this.in("idle")||this.disabledSelector.matches("code",!0),this.readonlySelector.matches("code",!0),(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget.value;this.edit({code:t})}),this.renderTemplateOrSlot("code:after"))}__renderCurrentBalance(){return r(u||(u=$` <div> ${0} <vaadin-number-field data-testid="current-balance" class="w-full" label="${0}" min="0" .checkValidity="${0}" .errorMessage="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" prevent-invalid-input has-controls required @keydown="${0}" @change="${0}"> </vaadin-number-field> ${0} </div> `),this.renderTemplateOrSlot("current-balance:before"),this.t("current_balance"),this.__getValidator("current_balance"),this.__getErrorMessage("current_balance"),this.form.current_balance,!this.in("idle")||this.disabledSelector.matches("current-balance",!0),this.readonlySelector.matches("current-balance",!0),(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget.value;this.edit({current_balance:parseFloat(t)})}),this.renderTemplateOrSlot("current-balance:after"))}__renderEndDate(){return r(_||(_=$` <div> ${0} <vaadin-date-picker data-testid="end-date" class="w-full" label="${0}" min="0" .checkValidity="${0}" .errorMessage="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" @keydown="${0}" @change="${0}"> </vaadin-date-picker> ${0} </div> `),this.renderTemplateOrSlot("end-date:before"),this.t("end_date"),this.__getValidator("end_date"),this.__getErrorMessage("end_date"),this.form.end_date,!this.in("idle")||this.disabledSelector.matches("end-date",!0),this.readonlySelector.matches("end-date",!0),(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget.value;this.edit({end_date:t})}),this.renderTemplateOrSlot("end-date:after"))}__renderLogsControl(){var e;return r(p||(p=$` <foxy-internal-async-details-control infer="logs" first="${0}" limit="5" item="foxy-gift-card-code-log-card" open> </foxy-internal-async-details-control> `),t(null===(e=this.form._links)||void 0===e?void 0:e["fx:gift_card_code_logs"].href))}__renderCartItem(){return r(g||(g=$` <foxy-internal-gift-card-code-form-item-control infer="cart-item"> </foxy-internal-gift-card-code-form-item-control> `))}__renderTimestamps(){return r(b||(b=$` <div> ${0} <x-property-table data-testid="timestamps" .items="${0}"> </x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}})),this.renderTemplateOrSlot("timestamps:after"))}__renderCreate(){const e=this.in({idle:{template:{clean:"invalid"}}}),t=this.in({idle:{template:{dirty:"invalid"}}}),i=this.in({idle:{snapshot:{clean:"invalid"}}}),a=this.in({idle:{snapshot:{dirty:"invalid"}}}),s=e||t||(i||a),d=this.in("idle");return r(y||(y=$` <div> ${0} <vaadin-button data-testid="create" class="w-full" theme="primary success" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="create" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("create:before"),!d||s||this.disabledSelector.matches("create",!0),(()=>this.submit()),this.ns,this.lang,this.renderTemplateOrSlot("create:after"))}__renderDelete(){return r(v||(v=$` <div> <foxy-internal-confirm-dialog data-testid="confirm" message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> ${0} <vaadin-button data-testid="delete" theme="primary error" class="w-full" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="delete" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.lang,this.ns,(e=>!e.detail.cancelled&&this.delete()),this.renderTemplateOrSlot("delete:before"),this.in("busy")||this.disabledSelector.matches("delete",!0),(e=>{this.renderRoot.querySelector("#confirm").show(e.currentTarget)}),this.ns,this.lang,this.renderTemplateOrSlot("delete:after"))}}customElements.define("foxy-gift-card-code-form",j);export{j as GiftCardCodeForm};
@@ -1 +1 @@
1
- import"./shared-b1304f5b.js";import"./shared-0ffa1afb.js";import{I as t}from"./shared-17e9778d.js";import"./shared-d9c5e26e.js";import{a as s}from"./shared-1c9fd2b1.js";import{i as e}from"./shared-d3bf9ac0.js";import{c as i}from"./shared-4e709717.js";import{h as r}from"./shared-7f33a83a.js";import"./shared-0ca312eb.js";import"./foxy-spinner.js";import"./shared-a8ced8bf.js";import"./shared-4f037e43.js";import"./shared-7c8b3ce0.js";import"./shared-60425d2e.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";let o,n,a=t=>t;const d=s(t,"gift-card-code-log-card");class c extends d{constructor(){super(...arguments),this.__giftCard=null,this.__store=null}renderBody(){var t,s,d,c,l;const f=null!==(t=this.form.balance_adjustment)&&void 0!==t?t:0,m="number"==typeof this.form.transaction_id,u=m?"status_used":"status_updated_via_api",h=null===(s=this.__giftCard)||void 0===s?void 0:s.currency_code,p=m?"icons:shopping-cart":"icons:settings",_=this.lang||"en";let y;try{y=f.toLocaleString(_,{maximumFractionDigits:2,minimumFractionDigits:2,currencyDisplay:(null===(d=this.__store)||void 0===d?void 0:d.use_international_currency_symbol)?"code":"symbol",signDisplay:"exceptZero",currency:h,style:"currency"})}catch(t){y=String(f)}return r(o||(o=a` <foxy-nucleon infer="" href="${0}" @update="${0}"> </foxy-nucleon> <foxy-nucleon infer="" href="${0}" @update="${0}"> </foxy-nucleon> <div class="flex items-start gap-s leading-none"> <iron-icon class="icon-inline text-m" icon="${0}"></iron-icon> <div class="flex-1"> <foxy-i18n infer="" class="block mb-xs font-semibold" key="title" .options="${0}"> </foxy-i18n> <div class="text-secondary"> <foxy-i18n infer="" key="${0}"></foxy-i18n> ${0} </div> </div> <div class="${0}"> ${0} </div> </div> `),e(null===(c=this.form._links)||void 0===c?void 0:c["fx:gift_card"].href),(t=>{const s=t.currentTarget;this.__giftCard=s.data,this.requestUpdate()}),e(null===(l=this.form._links)||void 0===l?void 0:l["fx:store"].href),(t=>{const s=t.currentTarget;this.__store=s.data,this.requestUpdate()}),p,{date:this.form.date_created},u,m?r(n||(n=a` &bull; <button class="underline" @click="${0}"> #${0} </button> `),(()=>{var t;const s=new CustomEvent("navigation",{composed:!0,bubbles:!0,detail:null===(t=this.form._links)||void 0===t?void 0:t["fx:transaction"].href});this.dispatchEvent(s)}),this.form.transaction_id):"",i({"font-semibold font-tnum":!0,"text-success":f>0,"text-error":f<0}),y)}}customElements.define("foxy-gift-card-code-log-card",c);export{c as GiftCardCodeLogCard};
1
+ import"./shared-b1304f5b.js";import"./shared-0ffa1afb.js";import{I as t}from"./shared-14afc5c6.js";import"./shared-d9c5e26e.js";import{a as s}from"./shared-1c9fd2b1.js";import{i as e}from"./shared-d3bf9ac0.js";import{c as i}from"./shared-4e709717.js";import{h as r}from"./shared-7f33a83a.js";import"./shared-0ca312eb.js";import"./foxy-spinner.js";import"./shared-a8ced8bf.js";import"./shared-4f037e43.js";import"./shared-7c8b3ce0.js";import"./shared-425d906a.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";let o,a,n=t=>t;const d=s(t,"gift-card-code-log-card");class c extends d{constructor(){super(...arguments),this.__giftCard=null,this.__store=null}renderBody(){var t,s,d,c,f;const l=null!==(t=this.form.balance_adjustment)&&void 0!==t?t:0,m="number"==typeof this.form.transaction_id,u=m?"status_used":"status_updated_via_api",h=null===(s=this.__giftCard)||void 0===s?void 0:s.currency_code,p=m?"icons:shopping-cart":"icons:settings",_=this.lang||"en";let y;try{y=l.toLocaleString(_,{maximumFractionDigits:2,minimumFractionDigits:2,currencyDisplay:(null===(d=this.__store)||void 0===d?void 0:d.use_international_currency_symbol)?"code":"symbol",signDisplay:"exceptZero",currency:h,style:"currency"})}catch(t){y=String(l)}return r(o||(o=n` <foxy-nucleon infer="" href="${0}" @update="${0}"> </foxy-nucleon> <foxy-nucleon infer="" href="${0}" @update="${0}"> </foxy-nucleon> <div class="flex items-start gap-s leading-none"> <iron-icon class="icon-inline text-m" icon="${0}"></iron-icon> <div class="flex-1"> <foxy-i18n infer="" class="block mb-xs font-semibold" key="title" .options="${0}"> </foxy-i18n> <div class="text-secondary"> <foxy-i18n infer="" key="${0}"></foxy-i18n> ${0} </div> </div> <div class="${0}"> ${0} </div> </div> `),e(null===(c=this.form._links)||void 0===c?void 0:c["fx:gift_card"].href),(t=>{const s=t.currentTarget;this.__giftCard=s.data,this.requestUpdate()}),e(null===(f=this.form._links)||void 0===f?void 0:f["fx:store"].href),(t=>{const s=t.currentTarget;this.__store=s.data,this.requestUpdate()}),p,{date:this.form.date_created},u,m?r(a||(a=n` &bull; <button class="underline" @click="${0}"> #${0} </button> `),(()=>{var t;const s=new CustomEvent("navigation",{composed:!0,bubbles:!0,detail:null===(t=this.form._links)||void 0===t?void 0:t["fx:transaction"].href});this.dispatchEvent(s)}),this.form.transaction_id):"",i({"font-semibold font-tnum":!0,"text-success":l>0,"text-error":l<0}),y)}}customElements.define("foxy-gift-card-code-log-card",c);export{c as GiftCardCodeLogCard};
@@ -1 +1 @@
1
- import"./shared-5f751bfc.js";import"./shared-c99a75d8.js";import"./shared-3fd94d2f.js";import"./shared-66a0263f.js";import"./shared-b1304f5b.js";import"./shared-0ffa1afb.js";import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-d9c5e26e.js";import{h as e}from"./shared-7f33a83a.js";import{C as t}from"./shared-24d650cd.js";import{E as s}from"./shared-9aab51c0.js";import{G as r}from"./shared-3c7489d6.js";import{N as i}from"./shared-60425d2e.js";import{T as a,S as n,a as o}from"./shared-1c9fd2b1.js";import{c as d}from"./shared-4e709717.js";import"./shared-4a2e1638.js";import"./shared-0ca312eb.js";import"./shared-a8ced8bf.js";import"./shared-4f037e43.js";import"./shared-7c8b3ce0.js";import"./shared-d3bf9ac0.js";import"./shared-f3b35364.js";import"./shared-d519a301.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";let l,c,m,h,f,u=e=>e;const p=t(a(n(o(i,"gift-card-codes-form"))));class g extends p{constructor(){super(...arguments),this.templates={}}static get scopedElements(){return{"vaadin-integer-field":customElements.get("vaadin-integer-field"),"vaadin-button":customElements.get("vaadin-button"),"iron-icon":customElements.get("iron-icon"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n"),"x-editable-list":s,"x-group":r}}static get v8n(){return[({gift_card_codes:e})=>e&&e.length>0||"gift_card_codes_required",({current_balance:e})=>!e||e>=0||"current_balance_negative"]}render(){var t,s;const{hiddenSelector:r,lang:i,ns:a}=this,n=this.in("busy"),o=this.in("fail"),c=this.in({idle:"snapshot"}),m=this.in({idle:"template"}),h="transition-opacity duration-500",f="opacity-0 pointer-events-none";return e(l||(l=u` <div class="relative"> <div class="${0}"> ${0} ${0} ${0} </div> <div class="${0}"> <div class="mx-auto flex mb-m w-l h-l rounded-t-l rounded-b-l bg-success"> <iron-icon icon="icons:done-all" class="m-auto text-success-contrast"></iron-icon> </div> <foxy-i18n class="block" lang="${0}" key="import_codes_done" ns="${0}"></foxy-i18n> </div> <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),d({"relative space-y-m":!0,[h]:!0,[f]:c}),r.matches("codes",!0)?"":this.__renderCodes(),r.matches("current-balance",!0)?"":this.__renderCurrentBalance(),r.matches("import",!0)?"":this.__renderImport(),d({"absolute inset-0 flex flex-col items-center justify-center":!0,"text-center text-m text-secondary leading-m":!0,[h]:!0,[f]:!c}),i,a,d({"absolute inset-0 flex":!0,[h]:!0,[f]:!n&&!o}),o?"error":m?"empty":"busy",i,a,null!==(s=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==s?s:"")}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")):""}__getValidator(e){return()=>!this.errors.some((t=>t.startsWith(e)))}__renderCodes(){var t;const s=null!==(t=this.form.gift_card_codes)&&void 0!==t?t:[],r=s.length>16?s.slice(-16):s,i=s.length>16?s.slice(0,-16):[],a=r.map((t=>{let s;try{const e=new URL(this.parent);e.searchParams.set("code",t),s=e.toString()}catch(e){s=this.parent}return{value:t,label:e(c||(c=u` <foxy-internal-gift-card-codes-form-list-item group="${0}" href="${0}" lang="${0}" ns="${0}"> </foxy-internal-gift-card-codes-form-list-item> `),this.group,s,this.lang,this.ns)}}));return e(m||(m=u` <div data-testid="codes"> ${0} <x-group class="mb-xs" frame> <foxy-i18n slot="header" lang="${0}" key="code_plural" ns="${0}"></foxy-i18n> <x-editable-list data-testid="codes:list" lang="${0}" ns="${0}" ?disabled="${0}" ?readonly="${0}" .items="${0}" @change="${0}" @paste="${0}"> <div class="ml-m py-s border-b border-contrast-10 font-lumo" ?hidden="${0}"> <foxy-i18n options="${0}" class="block text-body text-m mb-xs" lang="${0}" key="hidden_codes_header" ns="${0}"> </foxy-i18n> <foxy-i18n class="block text-xs text-tertiary" lang="${0}" key="hidden_codes_explainer" ns="${0}"> </foxy-i18n> </div> </x-editable-list> </x-group> <foxy-i18n class="block text-xs text-tertiary leading-s" lang="${0}" key="code_import_hint" ns="${0}"> </foxy-i18n> ${0} </div> `),this.renderTemplateOrSlot("codes:before"),this.lang,this.ns,this.lang,this.ns,!this.in("idle")||this.disabledSelector.matches("codes",!0),this.readonlySelector.matches("codes",!0),a,(e=>{const t=e.currentTarget,s=new Set([...i,...t.items.map((e=>e.value))]);this.edit({gift_card_codes:[...s]})}),(e=>{var t,r;e.preventDefault();const i=(null!==(r=null===(t=e.clipboardData)||void 0===t?void 0:t.getData("text"))&&void 0!==r?r:"").split(/\s/).map((e=>e.trim())).filter((e=>e.length>0));this.edit({gift_card_codes:Array.from(new Set([...s,...i]))})}),0===i.length,JSON.stringify({count:i.length}),this.lang,this.ns,this.lang,this.ns,this.lang,this.ns,this.renderTemplateOrSlot("codes:after"))}__renderCurrentBalance(){var t;const s=this.in({idle:"template"});return e(h||(h=u` <div> ${0} <vaadin-integer-field error-message="${0}" data-testid="current-balance" label="${0}" class="w-full" min="0" ?disabled="${0}" ?readonly="${0}" prevent-invalid-input has-controls .checkValidity="${0}" .value="${0}" @keydown="${0}" @change="${0}"> </vaadin-integer-field> ${0} </div> `),this.renderTemplateOrSlot("current-balance:before"),this.__getErrorMessage("current_balance"),this.t("balance"),!s||this.disabledSelector.matches("current-balance",!0),this.readonlySelector.matches("current-balance",!0),this.__getValidator("current_balance"),s?null!==(t=this.form.current_balance)&&void 0!==t?t:0:"",(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget;this.edit({current_balance:parseInt(t.value)})}),this.renderTemplateOrSlot("current-balance:after"))}__renderImport(){const t=this.in({idle:{template:{dirty:"valid"}}}),s=this.in({idle:{snapshot:{dirty:"valid"}}}),r=t||s;return e(f||(f=u` <div> ${0} <vaadin-button data-testid="import" class="w-full mb-xs" theme="primary success" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="import" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("import:before"),!r||!this.in("idle")||this.disabledSelector.matches("import",!0),(()=>this.submit()),this.ns,this.lang,this.renderTemplateOrSlot("import:after"))}}let b,x,y=e=>e;const v=o(a(i));customElements.define("foxy-gift-card-codes-form",g),customElements.define("foxy-internal-gift-card-codes-form-list-item",class extends v{render(){var t,s;let r;try{r=null!==(t=new URL(this.href).searchParams.get("code"))&&void 0!==t?t:""}catch(t){return e(b||(b=y``))}let i,a="text-tertiary bg-contrast-5",n="text-body";return this.in("fail")?i="loading_error":this.in("busy")?i="loading_busy":0===(null===(s=this.data)||void 0===s?void 0:s.returned_items)?(a="text-success bg-success-10",i="unique"):(a="text-error bg-error-10",i="duplicate",n="text-error"),e(x||(x=y` <div class="flex justify-between items-center font-lumo leading-m"> <div class="text-m ${0}">${0}</div> <foxy-i18n class="text-xs font-medium px-xs rounded ${0}" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> </div> `),n,r,a,this.lang,i,this.ns)}});export{g as GiftCardCodesForm};
1
+ import"./shared-5f751bfc.js";import"./shared-c99a75d8.js";import"./shared-3fd94d2f.js";import"./shared-66a0263f.js";import"./shared-b1304f5b.js";import"./shared-0ffa1afb.js";import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-d9c5e26e.js";import{h as e}from"./shared-7f33a83a.js";import{C as t}from"./shared-24d650cd.js";import{E as s}from"./shared-9aab51c0.js";import{G as r}from"./shared-3c7489d6.js";import{N as i}from"./shared-425d906a.js";import{T as a,S as n,a as o}from"./shared-1c9fd2b1.js";import{c as d}from"./shared-4e709717.js";import"./shared-4a2e1638.js";import"./shared-0ca312eb.js";import"./shared-a8ced8bf.js";import"./shared-4f037e43.js";import"./shared-7c8b3ce0.js";import"./shared-d3bf9ac0.js";import"./shared-f3b35364.js";import"./shared-d519a301.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";let l,c,m,h,f,u=e=>e;const p=t(a(n(o(i,"gift-card-codes-form"))));class g extends p{constructor(){super(...arguments),this.templates={}}static get scopedElements(){return{"vaadin-integer-field":customElements.get("vaadin-integer-field"),"vaadin-button":customElements.get("vaadin-button"),"iron-icon":customElements.get("iron-icon"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n"),"x-editable-list":s,"x-group":r}}static get v8n(){return[({gift_card_codes:e})=>e&&e.length>0||"gift_card_codes_required",({current_balance:e})=>!e||e>=0||"current_balance_negative"]}render(){var t,s;const{hiddenSelector:r,lang:i,ns:a}=this,n=this.in("busy"),o=this.in("fail"),c=this.in({idle:"snapshot"}),m=this.in({idle:"template"}),h="transition-opacity duration-500",f="opacity-0 pointer-events-none";return e(l||(l=u` <div class="relative"> <div class="${0}"> ${0} ${0} ${0} </div> <div class="${0}"> <div class="mx-auto flex mb-m w-l h-l rounded-t-l rounded-b-l bg-success"> <iron-icon icon="icons:done-all" class="m-auto text-success-contrast"></iron-icon> </div> <foxy-i18n class="block" lang="${0}" key="import_codes_done" ns="${0}"></foxy-i18n> </div> <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),d({"relative space-y-m":!0,[h]:!0,[f]:c}),r.matches("codes",!0)?"":this.__renderCodes(),r.matches("current-balance",!0)?"":this.__renderCurrentBalance(),r.matches("import",!0)?"":this.__renderImport(),d({"absolute inset-0 flex flex-col items-center justify-center":!0,"text-center text-m text-secondary leading-m":!0,[h]:!0,[f]:!c}),i,a,d({"absolute inset-0 flex":!0,[h]:!0,[f]:!n&&!o}),o?"error":m?"empty":"busy",i,a,null!==(s=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==s?s:"")}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")):""}__getValidator(e){return()=>!this.errors.some((t=>t.startsWith(e)))}__renderCodes(){var t;const s=null!==(t=this.form.gift_card_codes)&&void 0!==t?t:[],r=s.length>16?s.slice(-16):s,i=s.length>16?s.slice(0,-16):[],a=r.map((t=>{let s;try{const e=new URL(this.parent);e.searchParams.set("code",t),s=e.toString()}catch(e){s=this.parent}return{value:t,label:e(c||(c=u` <foxy-internal-gift-card-codes-form-list-item group="${0}" href="${0}" lang="${0}" ns="${0}"> </foxy-internal-gift-card-codes-form-list-item> `),this.group,s,this.lang,this.ns)}}));return e(m||(m=u` <div data-testid="codes"> ${0} <x-group class="mb-xs" frame> <foxy-i18n slot="header" lang="${0}" key="code_plural" ns="${0}"></foxy-i18n> <x-editable-list data-testid="codes:list" lang="${0}" ns="${0}" ?disabled="${0}" ?readonly="${0}" .items="${0}" @change="${0}" @paste="${0}"> <div class="ml-m py-s border-b border-contrast-10 font-lumo" ?hidden="${0}"> <foxy-i18n options="${0}" class="block text-body text-m mb-xs" lang="${0}" key="hidden_codes_header" ns="${0}"> </foxy-i18n> <foxy-i18n class="block text-xs text-tertiary" lang="${0}" key="hidden_codes_explainer" ns="${0}"> </foxy-i18n> </div> </x-editable-list> </x-group> <foxy-i18n class="block text-xs text-tertiary leading-s" lang="${0}" key="code_import_hint" ns="${0}"> </foxy-i18n> ${0} </div> `),this.renderTemplateOrSlot("codes:before"),this.lang,this.ns,this.lang,this.ns,!this.in("idle")||this.disabledSelector.matches("codes",!0),this.readonlySelector.matches("codes",!0),a,(e=>{const t=e.currentTarget,s=new Set([...i,...t.items.map((e=>e.value))]);this.edit({gift_card_codes:[...s]})}),(e=>{var t,r;e.preventDefault();const i=(null!==(r=null===(t=e.clipboardData)||void 0===t?void 0:t.getData("text"))&&void 0!==r?r:"").split(/\s/).map((e=>e.trim())).filter((e=>e.length>0));this.edit({gift_card_codes:Array.from(new Set([...s,...i]))})}),0===i.length,JSON.stringify({count:i.length}),this.lang,this.ns,this.lang,this.ns,this.lang,this.ns,this.renderTemplateOrSlot("codes:after"))}__renderCurrentBalance(){var t;const s=this.in({idle:"template"});return e(h||(h=u` <div> ${0} <vaadin-integer-field error-message="${0}" data-testid="current-balance" label="${0}" class="w-full" min="0" ?disabled="${0}" ?readonly="${0}" prevent-invalid-input has-controls .checkValidity="${0}" .value="${0}" @keydown="${0}" @change="${0}"> </vaadin-integer-field> ${0} </div> `),this.renderTemplateOrSlot("current-balance:before"),this.__getErrorMessage("current_balance"),this.t("balance"),!s||this.disabledSelector.matches("current-balance",!0),this.readonlySelector.matches("current-balance",!0),this.__getValidator("current_balance"),s?null!==(t=this.form.current_balance)&&void 0!==t?t:0:"",(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget;this.edit({current_balance:parseInt(t.value)})}),this.renderTemplateOrSlot("current-balance:after"))}__renderImport(){const t=this.in({idle:{template:{dirty:"valid"}}}),s=this.in({idle:{snapshot:{dirty:"valid"}}}),r=t||s;return e(f||(f=u` <div> ${0} <vaadin-button data-testid="import" class="w-full mb-xs" theme="primary success" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="import" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("import:before"),!r||!this.in("idle")||this.disabledSelector.matches("import",!0),(()=>this.submit()),this.ns,this.lang,this.renderTemplateOrSlot("import:after"))}}let b,x,y=e=>e;const v=o(a(i));customElements.define("foxy-gift-card-codes-form",g),customElements.define("foxy-internal-gift-card-codes-form-list-item",class extends v{render(){var t,s;let r;try{r=null!==(t=new URL(this.href).searchParams.get("code"))&&void 0!==t?t:""}catch(t){return e(b||(b=y``))}let i,a="text-tertiary bg-contrast-5",n="text-body";return this.in("fail")?i="loading_error":this.in("busy")?i="loading_busy":0===(null===(s=this.data)||void 0===s?void 0:s.returned_items)?(a="text-success bg-success-10",i="unique"):(a="text-error bg-error-10",i="duplicate",n="text-error"),e(x||(x=y` <div class="flex justify-between items-center font-lumo leading-m"> <div class="text-m ${0}">${0}</div> <foxy-i18n class="text-xs font-medium px-xs rounded ${0}" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> </div> `),n,r,a,this.lang,i,this.ns)}});export{g as GiftCardCodesForm};
@@ -1 +1 @@
1
- import"./shared-c99a75d8.js";import"./shared-8dd640bf.js";import"./shared-66a0263f.js";import"./shared-b1304f5b.js";import"./shared-0ffa1afb.js";import"./foxy-generate-codes-form.js";import"./foxy-gift-card-codes-form.js";import"./foxy-gift-card-code-form.js";import"./foxy-copy-to-clipboard.js";import{T as e}from"./shared-b7787aae.js";import"./foxy-pagination.js";import"./foxy-form-dialog.js";import"./foxy-spinner.js";import"./foxy-table.js";import"./shared-d9c5e26e.js";import"./shared-40ff320f.js";import"./shared-9e6fc72e.js";import"./shared-3e3ba16e.js";import{I as t}from"./shared-b52e1d97.js";import{R as i,S as r,T as s,a}from"./shared-1c9fd2b1.js";import{h as o}from"./shared-7f33a83a.js";import{_ as n}from"./shared-a8ced8bf.js";import{C as l}from"./shared-19bdb896.js";import{C as d}from"./shared-24d650cd.js";import{N as c}from"./shared-60425d2e.js";import{i as m}from"./shared-d3bf9ac0.js";import{c as g}from"./shared-4e709717.js";import{E as u}from"./shared-9aab51c0.js";import{F as f}from"./shared-02c6c308.js";import{G as h}from"./shared-3c7489d6.js";import{P as p}from"./shared-a6263179.js";import"./shared-4a2e1638.js";import"./shared-0ca312eb.js";import"./shared-5f751bfc.js";import"./shared-3fd94d2f.js";import"./shared-0479553e.js";import"./shared-4f037e43.js";import"./shared-7c8b3ce0.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";import"./shared-f3b35364.js";import"./shared-d519a301.js";import"./shared-4e2e233c.js";import"./shared-61174bec.js";import"./shared-4029be54.js";import"./foxy-collection-page.js";import"./shared-11c2efc8.js";import"./shared-f00d31e0.js";import"./shared-164a791e.js";import"./foxy-gift-card-code-log-card.js";import"./shared-17e9778d.js";import"./foxy-item-card.js";import"./shared-ccb96675.js";import"./shared-3214ee1b.js";import"./shared-3d245899.js";import"./shared-e6f3e9f0.js";import"./shared-bc7f58ef.js";import"./shared-c5091857.js";import"./foxy-nucleon-element.js";import"./shared-f0591b3e.js";import"./shared-a694a204.js";let y,v,x=e=>e;class b extends(i(t)){constructor(){super(...arguments),this.__maxBalanceValueGetter=()=>{var e,t;return null===(t=null===(e=this.nucleon)||void 0===e?void 0:e.form.provisioning_config)||void 0===t?void 0:t.initial_balance_max},this.__maxBalanceValueSetter=e=>{var t,i,r,s;const a=null!==(r=null===(i=null===(t=this.nucleon)||void 0===t?void 0:t.form.provisioning_config)||void 0===i?void 0:i.initial_balance_min)&&void 0!==r?r:e;null===(s=this.nucleon)||void 0===s||s.edit({provisioning_config:{allow_autoprovisioning:!0,initial_balance_min:a>e?e:a,initial_balance_max:e}})},this.__minBalanceValueGetter=()=>{var e,t;return null===(t=null===(e=this.nucleon)||void 0===e?void 0:e.form.provisioning_config)||void 0===t?void 0:t.initial_balance_min},this.__minBalanceValueSetter=e=>{var t,i,r,s;const a=null!==(r=null===(i=null===(t=this.nucleon)||void 0===t?void 0:t.form.provisioning_config)||void 0===i?void 0:i.initial_balance_max)&&void 0!==r?r:e;null===(s=this.nucleon)||void 0===s||s.edit({provisioning_config:{allow_autoprovisioning:!0,initial_balance_min:e,initial_balance_max:a<e?e:a}})},this.__toggleValueGetter=()=>{var e,t;return(null===(t=null===(e=this.nucleon)||void 0===e?void 0:e.form.provisioning_config)||void 0===t?void 0:t.allow_autoprovisioning)?["allow"]:[]},this.__toggleValueSetter=e=>{var t,i,r,s,a,o,n,l;e.includes("allow")?null===(t=this.nucleon)||void 0===t||t.edit({provisioning_config:{allow_autoprovisioning:!0,initial_balance_min:null!==(s=null===(r=null===(i=this.nucleon)||void 0===i?void 0:i.form.provisioning_config)||void 0===r?void 0:r.initial_balance_min)&&void 0!==s?s:0,initial_balance_max:null!==(n=null===(o=null===(a=this.nucleon)||void 0===a?void 0:a.form.provisioning_config)||void 0===o?void 0:o.initial_balance_max)&&void 0!==n?n:0}}):null===(l=this.nucleon)||void 0===l||l.edit({provisioning_config:null})},this.__toggleOptions=[{label:"text",value:"allow"}]}renderControl(){var e,t;return o(y||(y=x` <foxy-internal-checkbox-group-control infer="toggle" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} `),this.__toggleValueGetter,this.__toggleValueSetter,this.__toggleOptions,(null===(t=null===(e=this.nucleon)||void 0===e?void 0:e.form.provisioning_config)||void 0===t?void 0:t.allow_autoprovisioning)?o(v||(v=x` <div class="grid grid-cols-2 sm-grid-cols-4 gap-m mt-s"> <foxy-internal-text-control infer="sku" class="col-span-2"> </foxy-internal-text-control> <foxy-internal-integer-control infer="min-balance" .getValue="${0}" .setValue="${0}"> </foxy-internal-integer-control> <foxy-internal-integer-control infer="max-balance" .getValue="${0}" .setValue="${0}"> </foxy-internal-integer-control> </div> `),this.__minBalanceValueGetter,this.__minBalanceValueSetter,this.__maxBalanceValueGetter,this.__maxBalanceValueSetter):"")}}customElements.define("foxy-internal-gift-card-form-provisioning-control",b);let _,$=e=>e;const k=d(r(s(c)));class S extends k{constructor(){super(...arguments),this.itemCategory="",this.giftCard=""}static get scopedElements(){return{"x-checkbox":l}}static get properties(){return n(n({},super.properties),{},{itemCategory:{type:String,attribute:"item-category"},giftCard:{type:String,attribute:"gift-card"}})}render(){return o(_||(_=$` <div class="h-full flex items-center"> <x-checkbox data-testid="checkbox" ?disabled="${0}" ?readonly="${0}" ?checked="${0}" @change="${0}"> <slot></slot> </x-checkbox> </div> `),!this.in("idle")||this.disabled,this.readonly,!!this.data,(e=>{e.detail?(this.edit({item_category_uri:this.itemCategory,gift_card_uri:this.giftCard}),this.submit()):this.delete()}))}}let j,w=e=>e;const C=d(r(s(c)));class T extends C{constructor(){super(...arguments),this.itemCategory="",this.giftCard=""}static get scopedElements(){return{"foxy-spinner":customElements.get("foxy-spinner"),"x-category-restrictions-page-item-content":S}}static get properties(){return n(n({},super.properties),{},{itemCategory:{type:String,attribute:"item-category"},giftCard:{type:String,attribute:"gift-card"}})}render(){var e;const t=null===(e=this.data)||void 0===e?void 0:e._embedded["fx:gift_card_item_categories"][0],i=t?void 0:this.href,r=t?t._links.self.href:void 0;return o(j||(j=w` <x-category-restrictions-page-item-content item-category="${0}" data-testid="content" gift-card="${0}" parent="${0}" class="h-full" group="${0}" href="${0}" ?disabled="${0}" ?readonly="${0}"> <slot></slot> </x-category-restrictions-page-item-content> `),this.itemCategory,this.giftCard,m(i),this.group,m(r),!this.in("idle")||this.disabled,this.readonly)}}let E,O,z,V=e=>e;const q=d(r(s(a(c))));class R extends q{constructor(){super(...arguments),this.giftCardItemCategories="",this.giftCard=""}static get scopedElements(){return{"foxy-spinner":customElements.get("foxy-spinner"),"x-category-restrictions-page-item":T}}static get properties(){return n(n({},super.properties),{},{giftCardItemCategories:{type:String,attribute:"gift-card-item-categories"},giftCard:{type:String,attribute:"gift-card"}})}render(){var e,t,i,r,s;const a=null!==(t=null===(e=this.data)||void 0===e?void 0:e._embedded["fx:item_categories"])&&void 0!==t?t:[];let n=20;try{const e=parseInt(null!==(i=new URL(this.href).searchParams.get("limit"))&&void 0!==i?i:"");isNaN(e)||(n=e)}catch(e){}return o(E||(E=V` <div class="relative"> <div class="relative divide-y divide-contrast-10 ml-m"> ${0} </div> <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" state="${0}" class="m-auto p-m bg-base rounded-t-l rounded-b-l shadow-xs" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),new Array(n).fill(0).map(((e,t)=>{const i=a[t];let r;if(i)try{const e=new URL(this.giftCardItemCategories),t=new URL(i._links.self.href).pathname.split("/").pop();e.searchParams.set("item_category_id",t),e.searchParams.set("limit","1"),r=e.toString()}catch(e){}return r?o(z||(z=V` <x-category-restrictions-page-item data-testclass="item" item-category="${0}" gift-card="${0}" class="h-l" group="${0}" href="${0}" ?disabled="${0}" ?readonly="${0}"> ${0} </x-category-restrictions-page-item> `),i._links.self.href,this.giftCard,this.group,r,!this.in("idle")||this.disabled,this.readonly,null==i?void 0:i.name):o(O||(O=V`<div class="h-l"></div>`))})),g({"pointer-events-none absolute inset-0 flex transition-opacity":!0,"opacity-0":!!this.data}),this.in("fail")?"error":this.in({idle:"template"})?"empty":"busy",this.lang,this.ns,null!==(s=null===(r=customElements.get("foxy-spinner"))||void 0===r?void 0:r.defaultNS)&&void 0!==s?s:"")}}const N=["aed","afn","all","amd","ang","aoa","ars","aud","awg","azn","bam","bbd","bdt","bgn","bhd","bif","bmd","bnd","bob","brl","bsd","btc","btn","bwp","byn","bzd","cad","cdf","chf","clf","clp","cnh","cny","cop","crc","cuc","cup","cve","czk","djf","dkk","dop","dzd","egp","ern","etb","eur","fjd","fkp","gbp","gel","ggp","ghs","gip","gmd","gnf","gtq","gyd","hkd","hnl","hrk","htg","huf","idr","ils","imp","inr","iqd","irr","isk","jep","jmd","jod","jpy","kes","kgs","khr","kmf","kpw","krw","kwd","kyd","kzt","lak","lbp","lkr","lrd","lsl","lyd","mad","mdl","mga","mkd","mmk","mnt","mop","mru","mur","mvr","mwk","mxn","myr","mzn","nad","ngn","nio","nok","npr","nzd","omr","pab","pen","pgk","php","pkr","pln","pyg","qar","ron","rsd","rub","rwf","sar","sbd","scr","sdg","sek","sgd","shp","sll","sos","srd","ssp","std","stn","svc","syp","szl","thb","tjs","tmt","tnd","top","try","ttd","twd","tzs","uah","ugx","usd","uyu","uzs","vef","ves","vnd","vuv","wst","xaf","xag","xau","xcd","xdr","xof","xpd","xpf","xpt","yer","zar","zmw","zwl"];let D,P,B,G,L,Q,U,I,J,W,A,M,F,H,K,X,Y,Z,ee,te,ie,re=e=>e;const se=r(s(d(i(a(c,"gift-card-form")))));class ae extends se{constructor(){super(...arguments),this.__codesTableColumns=[{header:e=>o(D||(D=re`<foxy-i18n lang="${0}" key="code" ns="${0}"></foxy-i18n>`),e.lang,e.ns),cell:e=>{const t=!this.in("idle")||this.disabledSelector.matches("codes",!0);return o(P||(P=re` <div class="flex items-center gap-xs"> <vaadin-button theme="tertiary-inline contrast" class="p-0" ?disabled="${0}" @click="${0}"> <span class="font-tnum">${0}</span> </vaadin-button> <foxy-copy-to-clipboard ?disabled="${0}" text="${0}" lang="${0}" ns="${0} copy-to-clipboard"> </foxy-copy-to-clipboard> </div> `),t,(t=>{const i=this.renderRoot.querySelector("#code-dialog"),r=t.currentTarget;i.href=e.data._links.self.href,i.show(r)}),e.data.code,t,e.data.code,e.lang,e.ns)}},{header:e=>o(B||(B=re`<foxy-i18n lang="${0}" key="date_created" ns="${0}"></foxy-i18n>`),e.lang,e.ns),cell:e=>o(G||(G=re` <foxy-i18n options="${0}" class="text-tertiary" lang="${0}" key="date" ns="${0}"> </foxy-i18n> `),JSON.stringify({value:e.data.date_created}),e.lang,e.ns)},{hideBelow:"sm",header:e=>o(L||(L=re`<foxy-i18n lang="${0}" key="end_date" ns="${0}"></foxy-i18n>`),e.lang,e.ns),cell:e=>o(Q||(Q=re` <foxy-i18n options="${0}" class="text-tertiary" lang="${0}" key="date" ns="${0}"> </foxy-i18n> `),JSON.stringify({value:e.data.end_date}),e.lang,e.ns)},{header:e=>o(U||(U=re`<foxy-i18n lang="${0}" key="current_balance" ns="${0}"></foxy-i18n>`),e.lang,e.ns),cell:e=>{var t;return o(I||(I=re` <foxy-i18n options="${0}" lang="${0}" key="price" ns="${0}"> </foxy-i18n> `),JSON.stringify({amount:`${e.data.current_balance} ${null===(t=this.data)||void 0===t?void 0:t.currency_code}`,currencyDisplay:this.__currencyDisplay}),e.lang,e.ns)}}],this.__codesTableQuery=null,this.__currencyDisplay="",this.__itemCategories=""}static get scopedElements(){return{"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-combo-box":customElements.get("vaadin-combo-box"),"vaadin-button":customElements.get("vaadin-button"),"iron-icon":customElements.get("iron-icon"),"foxy-internal-gift-card-form-provisioning-control":customElements.get("foxy-internal-gift-card-form-provisioning-control"),"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"foxy-query-builder":customElements.get("foxy-query-builder"),"foxy-form-dialog":customElements.get("foxy-form-dialog"),"foxy-pagination":customElements.get("foxy-pagination"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-table":customElements.get("foxy-table"),"foxy-i18n":customElements.get("foxy-i18n"),"x-category-restrictions-page":R,"x-frequency-input":f,"x-property-table":p,"x-editable-list":u,"x-group":h}}static get properties(){return n(n({},super.properties),{},{__codesTableQuery:{attribute:!1},__itemCategories:{attribute:!1}})}static get v8n(){return[({name:e})=>!!e||"name_required",({name:e})=>!e||e.length<=50||"name_too_long",e=>{var t;if(null===(t=e.provisioning_config)||void 0===t?void 0:t.allow_autoprovisioning){if(!e.sku)return"sku:v8n_required";if(e.sku.length>200)return"sku:v8n_too_long"}return!0},e=>{var t;const i=null===(t=e.provisioning_config)||void 0===t?void 0:t.initial_balance_min;return!("number"==typeof i&&i<=0)||"min-balance:v8n_negative"},e=>{var t;const i=null===(t=e.provisioning_config)||void 0===t?void 0:t.initial_balance_max;return!("number"==typeof i&&i<=0)||"max-balance:v8n_negative"}]}render(){var e,t;const i=this.hiddenSelector,r=i.matches("name",!0),s=i.matches("currency",!0),a=i.matches("expires",!0);return o(J||(J=re` <div class="relative space-y-l"> ${0} <foxy-internal-gift-card-form-provisioning-control infer="provisioning"> </foxy-internal-gift-card-form-provisioning-control> ${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="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),r&&s&&a?"":o(W||(W=re` <div class="grid grid-cols-1 sm-grid-cols-3 md-grid-cols-4 gap-m"> ${0} ${0} ${0} </div> `),r?"":o(A||(A=re`<div class="md-col-span-2">${0}</div>`),this.__renderName()),s?"":this.__renderCurrency(),a?"":this.__renderExpires()),i.matches("codes",!0)||!this.data?"":this.__renderCodes(),i.matches("product-restrictions",!0)?"":this.__renderProductRestrictions(),i.matches("category-restrictions",!0)||!this.data?"":this.__renderCategoryRestrictions(),i.matches("timestamps",!0)?"":this.__renderTimestamps(),i.matches("create",!0)||this.data?"":this.__renderCreate(),i.matches("delete",!0)||!this.data?"":this.__renderDelete(),g({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!this.in("busy")&&!this.in("fail")}),this.in("fail")?"error":this.in("busy")?"busy":"empty",this.lang,this.ns,null!==(t=null===(e=customElements.get("foxy-spinner"))||void 0===e?void 0:e.defaultNS)&&void 0!==t?t:"")}async _sendGet(){const e=await super._sendGet(),t=await super._fetch(e._links["fx:store"].href),i=new URL(t._links["fx:item_categories"].href);return i.searchParams.set("limit","5"),this.__currencyDisplay=t.use_international_currency_symbol?"code":"symbol",this.__itemCategories=i.toString(),e}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")).toString():""}__getValidator(e){return()=>!this.errors.some((t=>t.startsWith(e)))}__renderName(){var e;return o(M||(M=re` <div> ${0} <vaadin-text-field error-message="${0}" helper-text="${0}" data-testid="name" class="w-full" label="${0}" .checkValidity="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" required @keydown="${0}" @input="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot("name:before"),this.__getErrorMessage("name"),this.t("gift_card_name_helper_text"),this.t("name"),this.__getValidator("name"),null!==(e=this.form.name)&&void 0!==e?e:"",!this.in("idle")||this.disabledSelector.matches("name",!0),this.readonlySelector.matches("name",!0),(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget.value;this.edit({name:t})}),this.renderTemplateOrSlot("name:after"))}__renderCurrency(){var e,t;return o(F||(F=re` <div> ${0} <vaadin-combo-box item-label-path="label" item-value-path="value" item-id-path="value" data-testid="currency" class="w-full" label="${0}" ?disabled="${0}" ?readonly="${0}" .value="${0}" .items="${0}" @change="${0}"> </vaadin-combo-box> ${0} </div> `),this.renderTemplateOrSlot("currency:before"),this.t("currency"),!this.in("idle")||this.disabledSelector.matches("currency",!0),this.readonlySelector.matches("currency",!0),null!==(t=null===(e=this.form.currency_code)||void 0===e?void 0:e.toLowerCase())&&void 0!==t?t:"",N.map((e=>({label:`${this.t(`currency_${e}`)} (${e.toUpperCase()})`,value:e}))),(e=>{const t=e.currentTarget;this.edit({currency_code:t.value})}),this.renderTemplateOrSlot("currency:after"))}__renderExpires(){var e;return o(H||(H=re` <div> ${0} <x-frequency-input placeholder="${0}" data-testid="expires" label="${0}" class="w-full" lang="${0}" ns="${0}" ?disabled="${0}" ?readonly="${0}" .value="${0}" @change="${0}"> </x-frequency-input> ${0} </div> `),this.renderTemplateOrSlot("expires:before"),this.t("select"),this.t("expires_after"),this.lang,this.ns,!this.in("idle")||this.disabledSelector.matches("expires",!0),this.readonlySelector.matches("expires",!0),null!==(e=this.form.expires_after)&&void 0!==e?e:"",(e=>{const t=e.currentTarget;this.edit({expires_after:t.value})}),this.renderTemplateOrSlot("expires:after"))}__renderCodes(){var e,t,i,r,s;const{disabledSelector:a,readonlySelector:n,hiddenSelector:l,group:d,data:c,lang:m,ns:g}=this,u=!this.in("idle")||a.matches("codes",!0),f=this.__codesTableQuery,h=new URL(c._links["fx:gift_card_codes"].href);new URLSearchParams(null!=f?f:"").forEach(((e,t)=>h.searchParams.set(t,e))),h.searchParams.set("limit","5");const p=null===f?"filter":"clear_filters",y="icons:"+(null===f?"filter-list":"clear");return o(K||(K=re` <div data-testid="codes"> <foxy-form-dialog disabledcontrols="${0}" readonlycontrols="${0}" hiddencontrols="save-button ${0}" header="generate" parent="${0}" group="${0}" lang="${0}" form="foxy-generate-codes-form" ns="${0}" id="generate-codes-dialog" alert .related="${0}"> </foxy-form-dialog> <foxy-form-dialog disabledcontrols="${0}" readonlycontrols="${0}" hiddencontrols="${0}" header="code" parent="${0}" group="${0}" lang="${0}" form="foxy-gift-card-code-form" ns="${0}" id="code-dialog"> </foxy-form-dialog> <foxy-form-dialog disabledcontrols="${0}" readonlycontrols="${0}" hiddencontrols="save-button ${0}" header="import" parent="${0}" group="${0}" lang="${0}" form="foxy-gift-card-codes-form" ns="${0}" id="import-dialog"> </foxy-form-dialog> ${0} <div class="flex items-center justify-between mb-xs space-x-s"> <foxy-i18n class="text-s font-medium text-secondary leading-none flex-1" lang="${0}" key="code_plural" ns="${0}"> </foxy-i18n> <vaadin-button data-testid="codes:generate-button" theme="success tertiary small" ?disabled="${0}" @click="${0}"> <foxy-i18n class="text-s" lang="${0}" key="generate" ns="${0}"></foxy-i18n> <iron-icon class="icon-inline text-s" icon="icons:add"></iron-icon> </vaadin-button> <vaadin-button data-testid="codes:import-button" theme="contrast tertiary small" ?disabled="${0}" @click="${0}"> <foxy-i18n class="text-s" lang="${0}" key="import" ns="${0}"></foxy-i18n> <iron-icon class="icon-inline text-s" icon="icons:open-in-browser"></iron-icon> </vaadin-button> <vaadin-button data-testid="codes:filter-button" theme="contrast ${0} small" ?disabled="${0}" @click="${0}"> <foxy-i18n class="text-s" lang="${0}" key="${0}" ns="${0}"></foxy-i18n> <iron-icon class="icon-inline text-s" icon="${0}"></iron-icon> </vaadin-button> </div> <foxy-query-builder class="bg-contrast-5 rounded-tl-l rounded-tr-s rounded-b-l p-m mb-s" lang="${0}" ns="${0} ${0}" ?disabled="${0}" ?hidden="${0}" .options="${0}" .value="${0}" @change="${0}"> </foxy-query-builder> <foxy-pagination first="${0}" lang="${0}" ns="${0} ${0}" ?disabled="${0}"> <foxy-table class="px-m mb-s border border-contrast-10 rounded-t-l rounded-b-l" group="${0}" lang="${0}" ns="${0}" .columns="${0}"> </foxy-table> </foxy-pagination> ${0} </div> `),a.zoom("codes:generate:form").toString(),n.zoom("codes:generate:form").toString(),l.zoom("codes:generate:form").toString(),null!==(e=null==c?void 0:c._links["fx:generate_codes"].href)&&void 0!==e?e:"",d,m,g,[h.toString()],a.zoom("codes:form").toString(),n.zoom("codes:form").toString(),l.zoom("codes:form").toString(),h.toString(),d,m,g,a.zoom("codes:import:form").toString(),n.zoom("codes:import:form").toString(),l.zoom("codes:import:form").toString(),c._links["fx:gift_card_codes"].href,d,m,g,this.renderTemplateOrSlot("codes:before"),m,g,u,(e=>{const t=this.renderRoot.querySelector("#generate-codes-dialog"),i=e.currentTarget;null==t||t.show(i)}),m,g,u,(e=>{const t=this.renderRoot.querySelector("#import-dialog"),i=e.currentTarget;null==t||t.show(i)}),m,g,null===f?"tertiary":"",u,(()=>this.__codesTableQuery=null===f?"":null),m,p,g,y,m,g,null!==(i=null===(t=customElements.get("foxy-query-builder"))||void 0===t?void 0:t.defaultNS)&&void 0!==i?i:"",u,null===f,ae.__codesQueryOptions,null!=f?f:"",(e=>{const t=e.currentTarget;this.__codesTableQuery=t.value}),h.toString(),m,g,null!==(s=null===(r=customElements.get("foxy-pagination"))||void 0===r?void 0:r.defaultNS)&&void 0!==s?s:"",u,d,m,g,this.__codesTableColumns,this.renderTemplateOrSlot("codes:after"))}__renderProductRestrictions(){var e;const t="product-restrictions",i=!this.in("idle")||this.disabledSelector.matches(t,!0),r=this.readonlySelector.matches(t,!0),s=null!==(e=this.form.product_code_restrictions)&&void 0!==e?e:"",a=[{header:"allow",items:[]},{header:"block",items:[]}];return s&&s.split(",").forEach((e=>{const t=e.startsWith("-"),i=t?1:0,r=t?e.substring(1):e;a[i].items.push({label:r,value:e})})),o(X||(X=re` <div data-testid="product-restrictions"> ${0} <div class="space-y-s"> <x-group frame> <foxy-i18n class="${0}" slot="header" lang="${0}" key="product_restrictions" ns="${0}"> </foxy-i18n> <div class="grid sm-grid-cols-2 bg-contrast-10" style="gap:1px"> ${0} </div> </x-group> <foxy-i18n class="${0}" lang="${0}" key="gift_card_product_restrictions_explainer" ns="${0}"> </foxy-i18n> </div> ${0} </div> `),this.renderTemplateOrSlot("product-restrictions:before"),i?"text-disabled":"text-secondary",this.lang,this.ns,a.map(((e,t)=>o(Y||(Y=re` <x-group class="bg-base pt-m"> <foxy-i18n class="${0}" slot="header" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> <x-editable-list data-testid="product-restrictions:${0}" lang="${0}" ns="${0}" ?disabled="${0}" ?readonly="${0}" .items="${0}" @change="${0}"> </x-editable-list> </x-group> `),i?"text-disabled":"text-tertiary",this.lang,e.header,this.ns,e.header,this.lang,this.ns,i,r,e.items,(e=>{const i=[0===t?e.currentTarget.items:a[0].items,1===t?e.currentTarget.items:a[1].items].map((e=>e.map((e=>e.value.replace(/^[\s-]*/,"").trimEnd())))).map((e=>e.filter((e=>!!e)))).map((e=>Array.from(new Set(e)))),r=i[0].concat(i[1].map((e=>`-${e}`))).join(",");this.edit({product_code_restrictions:r})})))),g({"block text-xs leading-s transition-colors":!0,"text-secondary":!i,"text-disabled":i}),this.lang,this.ns,this.renderTemplateOrSlot("product-restrictions:after"))}__renderCategoryRestrictions(){var e,t,i;const r="category-restrictions",s=!this.in("idle")||this.disabledSelector.matches(r,!0),a=this.readonlySelector.matches(r,!0),n=null===(e=this.data)||void 0===e?void 0:e._links["fx:gift_card_item_categories"].href;return o(Z||(Z=re` <div data-testid="category-restrictions"> ${0} <div class="space-y-xs"> <foxy-pagination first="${0}" lang="${0}" ns="${0} ${0}" ?disabled="${0}"> <foxy-i18n class="block text-s font-medium text-secondary leading-none mb-s" lang="${0}" key="category_restrictions" ns="${0}"> </foxy-i18n> <x-category-restrictions-page gift-card-item-categories="${0}" data-testid="category-restrictions:page" gift-card="${0}" class="border border-contrast-10 rounded-t-l rounded-b-l mb-s" group="${0}" lang="${0}" ns="${0}" ?disabled="${0}" ?readonly="${0}"> </x-category-restrictions-page> </foxy-pagination> <foxy-i18n class="block text-xs leading-s text-secondary" lang="${0}" key="gift_card_category_restrictions_helper_text" ns="${0}"> </foxy-i18n> </div> ${0} </div> `),this.renderTemplateOrSlot(`${r}:before`),this.__itemCategories,this.lang,this.ns,null!==(i=null===(t=customElements.get("foxy-pagination"))||void 0===t?void 0:t.defaultNS)&&void 0!==i?i:"",s,this.lang,this.ns,m(n),this.href,this.group,this.lang,this.ns,s,a,this.lang,this.ns,this.renderTemplateOrSlot(`${r}:after`))}__renderTimestamps(){return o(ee||(ee=re` <div> ${0} <x-property-table data-testid="timestamps" .items="${0}"> </x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}})),this.renderTemplateOrSlot("timestamps:after"))}__renderCreate(){const e=this.in({idle:{template:{clean:"invalid"}}}),t=this.in({idle:{template:{dirty:"invalid"}}}),i=this.in({idle:{snapshot:{clean:"invalid"}}}),r=this.in({idle:{snapshot:{dirty:"invalid"}}}),s=e||t||(i||r),a=this.in("busy");return o(te||(te=re` <div> ${0} <vaadin-button data-testid="create" class="w-full" theme="primary success" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="create" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("create:before"),a||s||this.disabledSelector.matches("create",!0),this.submit,this.ns,this.lang,this.renderTemplateOrSlot("create:after"))}__renderDelete(){return o(ie||(ie=re` <div> <foxy-internal-confirm-dialog data-testid="confirm" message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> ${0} <vaadin-button data-testid="delete" theme="primary error" class="w-full" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="delete" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.lang,this.ns,(e=>!e.detail.cancelled&&this.delete()),this.renderTemplateOrSlot("delete:before"),!this.in("idle")||this.disabledSelector.matches("delete",!0),(e=>{this.renderRoot.querySelector("#confirm").show(e.currentTarget)}),this.ns,this.lang,this.renderTemplateOrSlot("delete:after"))}}ae.__codesQueryOptions=[{label:"code",path:"code",type:e.String},{label:"current_balance",path:"current_balance",type:e.Number},{label:"end_date",path:"end_date",type:e.Date},{label:"date_created",path:"date_created",type:e.Date},{label:"date_modified",path:"date_modified",type:e.Date}],customElements.define("foxy-gift-card-form",ae);export{ae as GiftCardForm};
1
+ import"./shared-c99a75d8.js";import"./shared-8dd640bf.js";import"./shared-66a0263f.js";import"./shared-b1304f5b.js";import"./shared-0ffa1afb.js";import"./foxy-generate-codes-form.js";import"./foxy-gift-card-codes-form.js";import"./foxy-gift-card-code-form.js";import"./foxy-copy-to-clipboard.js";import{T as e}from"./shared-b7787aae.js";import"./foxy-pagination.js";import"./foxy-form-dialog.js";import"./foxy-spinner.js";import"./foxy-table.js";import"./shared-d9c5e26e.js";import"./shared-b866f3a7.js";import"./shared-a2efb819.js";import"./shared-73ac094b.js";import{I as t}from"./shared-d187b584.js";import{R as i,S as r,T as s,a}from"./shared-1c9fd2b1.js";import{h as o}from"./shared-7f33a83a.js";import{_ as n}from"./shared-a8ced8bf.js";import{C as l}from"./shared-19bdb896.js";import{C as d}from"./shared-24d650cd.js";import{N as c}from"./shared-425d906a.js";import{i as m}from"./shared-d3bf9ac0.js";import{c as g}from"./shared-4e709717.js";import{E as u}from"./shared-9aab51c0.js";import{F as f}from"./shared-02c6c308.js";import{G as h}from"./shared-3c7489d6.js";import{P as p}from"./shared-a6263179.js";import"./shared-4a2e1638.js";import"./shared-0ca312eb.js";import"./shared-5f751bfc.js";import"./shared-3fd94d2f.js";import"./shared-0479553e.js";import"./shared-4f037e43.js";import"./shared-7c8b3ce0.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";import"./shared-f3b35364.js";import"./shared-d519a301.js";import"./shared-4e2e233c.js";import"./shared-61174bec.js";import"./shared-dbb66347.js";import"./foxy-collection-page.js";import"./shared-11c2efc8.js";import"./shared-f00d31e0.js";import"./shared-164a791e.js";import"./foxy-gift-card-code-log-card.js";import"./shared-14afc5c6.js";import"./foxy-item-card.js";import"./shared-ccb96675.js";import"./shared-3214ee1b.js";import"./shared-3d245899.js";import"./shared-e6f3e9f0.js";import"./shared-bc7f58ef.js";import"./shared-a93f4ae9.js";import"./foxy-nucleon-element.js";import"./shared-f0591b3e.js";import"./shared-39cb3be1.js";let y,b,v=e=>e;class x extends(i(t)){constructor(){super(...arguments),this.__maxBalanceValueGetter=()=>{var e,t;return null===(t=null===(e=this.nucleon)||void 0===e?void 0:e.form.provisioning_config)||void 0===t?void 0:t.initial_balance_max},this.__maxBalanceValueSetter=e=>{var t,i,r,s;const a=null!==(r=null===(i=null===(t=this.nucleon)||void 0===t?void 0:t.form.provisioning_config)||void 0===i?void 0:i.initial_balance_min)&&void 0!==r?r:e;null===(s=this.nucleon)||void 0===s||s.edit({provisioning_config:{allow_autoprovisioning:!0,initial_balance_min:a>e?e:a,initial_balance_max:e}})},this.__minBalanceValueGetter=()=>{var e,t;return null===(t=null===(e=this.nucleon)||void 0===e?void 0:e.form.provisioning_config)||void 0===t?void 0:t.initial_balance_min},this.__minBalanceValueSetter=e=>{var t,i,r,s;const a=null!==(r=null===(i=null===(t=this.nucleon)||void 0===t?void 0:t.form.provisioning_config)||void 0===i?void 0:i.initial_balance_max)&&void 0!==r?r:e;null===(s=this.nucleon)||void 0===s||s.edit({provisioning_config:{allow_autoprovisioning:!0,initial_balance_min:e,initial_balance_max:a<e?e:a}})},this.__toggleValueGetter=()=>{var e,t;return(null===(t=null===(e=this.nucleon)||void 0===e?void 0:e.form.provisioning_config)||void 0===t?void 0:t.allow_autoprovisioning)?["allow"]:[]},this.__toggleValueSetter=e=>{var t,i,r,s,a,o,n,l;e.includes("allow")?null===(t=this.nucleon)||void 0===t||t.edit({provisioning_config:{allow_autoprovisioning:!0,initial_balance_min:null!==(s=null===(r=null===(i=this.nucleon)||void 0===i?void 0:i.form.provisioning_config)||void 0===r?void 0:r.initial_balance_min)&&void 0!==s?s:0,initial_balance_max:null!==(n=null===(o=null===(a=this.nucleon)||void 0===a?void 0:a.form.provisioning_config)||void 0===o?void 0:o.initial_balance_max)&&void 0!==n?n:0}}):null===(l=this.nucleon)||void 0===l||l.edit({provisioning_config:null})},this.__toggleOptions=[{label:"text",value:"allow"}]}renderControl(){var e,t;return o(y||(y=v` <foxy-internal-checkbox-group-control infer="toggle" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} `),this.__toggleValueGetter,this.__toggleValueSetter,this.__toggleOptions,(null===(t=null===(e=this.nucleon)||void 0===e?void 0:e.form.provisioning_config)||void 0===t?void 0:t.allow_autoprovisioning)?o(b||(b=v` <div class="grid grid-cols-2 sm-grid-cols-4 gap-m mt-s"> <foxy-internal-text-control infer="sku" class="col-span-2"> </foxy-internal-text-control> <foxy-internal-integer-control infer="min-balance" .getValue="${0}" .setValue="${0}"> </foxy-internal-integer-control> <foxy-internal-integer-control infer="max-balance" .getValue="${0}" .setValue="${0}"> </foxy-internal-integer-control> </div> `),this.__minBalanceValueGetter,this.__minBalanceValueSetter,this.__maxBalanceValueGetter,this.__maxBalanceValueSetter):"")}}customElements.define("foxy-internal-gift-card-form-provisioning-control",x);let _,$=e=>e;const k=d(r(s(c)));class S extends k{constructor(){super(...arguments),this.itemCategory="",this.giftCard=""}static get scopedElements(){return{"x-checkbox":l}}static get properties(){return n(n({},super.properties),{},{itemCategory:{type:String,attribute:"item-category"},giftCard:{type:String,attribute:"gift-card"}})}render(){return o(_||(_=$` <div class="h-full flex items-center"> <x-checkbox data-testid="checkbox" ?disabled="${0}" ?readonly="${0}" ?checked="${0}" @change="${0}"> <slot></slot> </x-checkbox> </div> `),!this.in("idle")||this.disabled,this.readonly,!!this.data,(e=>{e.detail?(this.edit({item_category_uri:this.itemCategory,gift_card_uri:this.giftCard}),this.submit()):this.delete()}))}}let j,w=e=>e;const C=d(r(s(c)));class T extends C{constructor(){super(...arguments),this.itemCategory="",this.giftCard=""}static get scopedElements(){return{"foxy-spinner":customElements.get("foxy-spinner"),"x-category-restrictions-page-item-content":S}}static get properties(){return n(n({},super.properties),{},{itemCategory:{type:String,attribute:"item-category"},giftCard:{type:String,attribute:"gift-card"}})}render(){var e;const t=null===(e=this.data)||void 0===e?void 0:e._embedded["fx:gift_card_item_categories"][0],i=t?void 0:this.href,r=t?t._links.self.href:void 0;return o(j||(j=w` <x-category-restrictions-page-item-content item-category="${0}" data-testid="content" gift-card="${0}" parent="${0}" class="h-full" group="${0}" href="${0}" ?disabled="${0}" ?readonly="${0}"> <slot></slot> </x-category-restrictions-page-item-content> `),this.itemCategory,this.giftCard,m(i),this.group,m(r),!this.in("idle")||this.disabled,this.readonly)}}let E,O,z,V=e=>e;const q=d(r(s(a(c))));class R extends q{constructor(){super(...arguments),this.giftCardItemCategories="",this.giftCard=""}static get scopedElements(){return{"foxy-spinner":customElements.get("foxy-spinner"),"x-category-restrictions-page-item":T}}static get properties(){return n(n({},super.properties),{},{giftCardItemCategories:{type:String,attribute:"gift-card-item-categories"},giftCard:{type:String,attribute:"gift-card"}})}render(){var e,t,i,r,s;const a=null!==(t=null===(e=this.data)||void 0===e?void 0:e._embedded["fx:item_categories"])&&void 0!==t?t:[];let n=20;try{const e=parseInt(null!==(i=new URL(this.href).searchParams.get("limit"))&&void 0!==i?i:"");isNaN(e)||(n=e)}catch(e){}return o(E||(E=V` <div class="relative"> <div class="relative divide-y divide-contrast-10 ml-m"> ${0} </div> <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" state="${0}" class="m-auto p-m bg-base rounded-t-l rounded-b-l shadow-xs" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),new Array(n).fill(0).map(((e,t)=>{const i=a[t];let r;if(i)try{const e=new URL(this.giftCardItemCategories),t=new URL(i._links.self.href).pathname.split("/").pop();e.searchParams.set("item_category_id",t),e.searchParams.set("limit","1"),r=e.toString()}catch(e){}return r?o(z||(z=V` <x-category-restrictions-page-item data-testclass="item" item-category="${0}" gift-card="${0}" class="h-l" group="${0}" href="${0}" ?disabled="${0}" ?readonly="${0}"> ${0} </x-category-restrictions-page-item> `),i._links.self.href,this.giftCard,this.group,r,!this.in("idle")||this.disabled,this.readonly,null==i?void 0:i.name):o(O||(O=V`<div class="h-l"></div>`))})),g({"pointer-events-none absolute inset-0 flex transition-opacity":!0,"opacity-0":!!this.data}),this.in("fail")?"error":this.in({idle:"template"})?"empty":"busy",this.lang,this.ns,null!==(s=null===(r=customElements.get("foxy-spinner"))||void 0===r?void 0:r.defaultNS)&&void 0!==s?s:"")}}const N=["aed","afn","all","amd","ang","aoa","ars","aud","awg","azn","bam","bbd","bdt","bgn","bhd","bif","bmd","bnd","bob","brl","bsd","btc","btn","bwp","byn","bzd","cad","cdf","chf","clf","clp","cnh","cny","cop","crc","cuc","cup","cve","czk","djf","dkk","dop","dzd","egp","ern","etb","eur","fjd","fkp","gbp","gel","ggp","ghs","gip","gmd","gnf","gtq","gyd","hkd","hnl","hrk","htg","huf","idr","ils","imp","inr","iqd","irr","isk","jep","jmd","jod","jpy","kes","kgs","khr","kmf","kpw","krw","kwd","kyd","kzt","lak","lbp","lkr","lrd","lsl","lyd","mad","mdl","mga","mkd","mmk","mnt","mop","mru","mur","mvr","mwk","mxn","myr","mzn","nad","ngn","nio","nok","npr","nzd","omr","pab","pen","pgk","php","pkr","pln","pyg","qar","ron","rsd","rub","rwf","sar","sbd","scr","sdg","sek","sgd","shp","sll","sos","srd","ssp","std","stn","svc","syp","szl","thb","tjs","tmt","tnd","top","try","ttd","twd","tzs","uah","ugx","usd","uyu","uzs","vef","ves","vnd","vuv","wst","xaf","xag","xau","xcd","xdr","xof","xpd","xpf","xpt","yer","zar","zmw","zwl"];let D,P,B,G,L,Q,U,I,J,W,A,M,F,H,K,X,Y,Z,ee,te,ie,re=e=>e;const se=r(s(d(i(a(c,"gift-card-form")))));class ae extends se{constructor(){super(...arguments),this.__codesTableColumns=[{header:e=>o(D||(D=re`<foxy-i18n lang="${0}" key="code" ns="${0}"></foxy-i18n>`),e.lang,e.ns),cell:e=>{const t=!this.in("idle")||this.disabledSelector.matches("codes",!0);return o(P||(P=re` <div class="flex items-center gap-xs"> <vaadin-button theme="tertiary-inline contrast" class="p-0" ?disabled="${0}" @click="${0}"> <span class="font-tnum">${0}</span> </vaadin-button> <foxy-copy-to-clipboard ?disabled="${0}" text="${0}" lang="${0}" ns="${0} copy-to-clipboard"> </foxy-copy-to-clipboard> </div> `),t,(t=>{const i=this.renderRoot.querySelector("#code-dialog"),r=t.currentTarget;i.href=e.data._links.self.href,i.show(r)}),e.data.code,t,e.data.code,e.lang,e.ns)}},{header:e=>o(B||(B=re`<foxy-i18n lang="${0}" key="date_created" ns="${0}"></foxy-i18n>`),e.lang,e.ns),cell:e=>o(G||(G=re` <foxy-i18n options="${0}" class="text-tertiary" lang="${0}" key="date" ns="${0}"> </foxy-i18n> `),JSON.stringify({value:e.data.date_created}),e.lang,e.ns)},{hideBelow:"sm",header:e=>o(L||(L=re`<foxy-i18n lang="${0}" key="end_date" ns="${0}"></foxy-i18n>`),e.lang,e.ns),cell:e=>o(Q||(Q=re` <foxy-i18n options="${0}" class="text-tertiary" lang="${0}" key="date" ns="${0}"> </foxy-i18n> `),JSON.stringify({value:e.data.end_date}),e.lang,e.ns)},{header:e=>o(U||(U=re`<foxy-i18n lang="${0}" key="current_balance" ns="${0}"></foxy-i18n>`),e.lang,e.ns),cell:e=>{var t;return o(I||(I=re` <foxy-i18n options="${0}" lang="${0}" key="price" ns="${0}"> </foxy-i18n> `),JSON.stringify({amount:`${e.data.current_balance} ${null===(t=this.data)||void 0===t?void 0:t.currency_code}`,currencyDisplay:this.__currencyDisplay}),e.lang,e.ns)}}],this.__codesTableQuery=null,this.__currencyDisplay="",this.__itemCategories=""}static get scopedElements(){return{"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-combo-box":customElements.get("vaadin-combo-box"),"vaadin-button":customElements.get("vaadin-button"),"iron-icon":customElements.get("iron-icon"),"foxy-internal-gift-card-form-provisioning-control":customElements.get("foxy-internal-gift-card-form-provisioning-control"),"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"foxy-query-builder":customElements.get("foxy-query-builder"),"foxy-form-dialog":customElements.get("foxy-form-dialog"),"foxy-pagination":customElements.get("foxy-pagination"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-table":customElements.get("foxy-table"),"foxy-i18n":customElements.get("foxy-i18n"),"x-category-restrictions-page":R,"x-frequency-input":f,"x-property-table":p,"x-editable-list":u,"x-group":h}}static get properties(){return n(n({},super.properties),{},{__codesTableQuery:{attribute:!1},__itemCategories:{attribute:!1}})}static get v8n(){return[({name:e})=>!!e||"name_required",({name:e})=>!e||e.length<=50||"name_too_long",e=>{var t;if(null===(t=e.provisioning_config)||void 0===t?void 0:t.allow_autoprovisioning){if(!e.sku)return"sku:v8n_required";if(e.sku.length>200)return"sku:v8n_too_long"}return!0},e=>{var t;const i=null===(t=e.provisioning_config)||void 0===t?void 0:t.initial_balance_min;return!("number"==typeof i&&i<=0)||"min-balance:v8n_negative"},e=>{var t;const i=null===(t=e.provisioning_config)||void 0===t?void 0:t.initial_balance_max;return!("number"==typeof i&&i<=0)||"max-balance:v8n_negative"}]}render(){var e,t;const i=this.hiddenSelector,r=i.matches("name",!0),s=i.matches("currency",!0),a=i.matches("expires",!0);return o(J||(J=re` <div class="relative space-y-l"> ${0} <foxy-internal-gift-card-form-provisioning-control infer="provisioning"> </foxy-internal-gift-card-form-provisioning-control> ${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="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),r&&s&&a?"":o(W||(W=re` <div class="grid grid-cols-1 sm-grid-cols-3 md-grid-cols-4 gap-m"> ${0} ${0} ${0} </div> `),r?"":o(A||(A=re`<div class="md-col-span-2">${0}</div>`),this.__renderName()),s?"":this.__renderCurrency(),a?"":this.__renderExpires()),i.matches("codes",!0)||!this.data?"":this.__renderCodes(),i.matches("product-restrictions",!0)?"":this.__renderProductRestrictions(),i.matches("category-restrictions",!0)||!this.data?"":this.__renderCategoryRestrictions(),i.matches("timestamps",!0)?"":this.__renderTimestamps(),i.matches("create",!0)||this.data?"":this.__renderCreate(),i.matches("delete",!0)||!this.data?"":this.__renderDelete(),g({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!this.in("busy")&&!this.in("fail")}),this.in("fail")?"error":this.in("busy")?"busy":"empty",this.lang,this.ns,null!==(t=null===(e=customElements.get("foxy-spinner"))||void 0===e?void 0:e.defaultNS)&&void 0!==t?t:"")}async _sendGet(){const e=await super._sendGet(),t=await super._fetch(e._links["fx:store"].href),i=new URL(t._links["fx:item_categories"].href);return i.searchParams.set("limit","5"),this.__currencyDisplay=t.use_international_currency_symbol?"code":"symbol",this.__itemCategories=i.toString(),e}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")).toString():""}__getValidator(e){return()=>!this.errors.some((t=>t.startsWith(e)))}__renderName(){var e;return o(M||(M=re` <div> ${0} <vaadin-text-field error-message="${0}" helper-text="${0}" data-testid="name" class="w-full" label="${0}" .checkValidity="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" required @keydown="${0}" @input="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot("name:before"),this.__getErrorMessage("name"),this.t("gift_card_name_helper_text"),this.t("name"),this.__getValidator("name"),null!==(e=this.form.name)&&void 0!==e?e:"",!this.in("idle")||this.disabledSelector.matches("name",!0),this.readonlySelector.matches("name",!0),(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget.value;this.edit({name:t})}),this.renderTemplateOrSlot("name:after"))}__renderCurrency(){var e,t;return o(F||(F=re` <div> ${0} <vaadin-combo-box item-label-path="label" item-value-path="value" item-id-path="value" data-testid="currency" class="w-full" label="${0}" ?disabled="${0}" ?readonly="${0}" .value="${0}" .items="${0}" @change="${0}"> </vaadin-combo-box> ${0} </div> `),this.renderTemplateOrSlot("currency:before"),this.t("currency"),!this.in("idle")||this.disabledSelector.matches("currency",!0),this.readonlySelector.matches("currency",!0),null!==(t=null===(e=this.form.currency_code)||void 0===e?void 0:e.toLowerCase())&&void 0!==t?t:"",N.map((e=>({label:`${this.t(`currency_${e}`)} (${e.toUpperCase()})`,value:e}))),(e=>{const t=e.currentTarget;this.edit({currency_code:t.value})}),this.renderTemplateOrSlot("currency:after"))}__renderExpires(){var e;return o(H||(H=re` <div> ${0} <x-frequency-input placeholder="${0}" data-testid="expires" label="${0}" class="w-full" lang="${0}" ns="${0}" ?disabled="${0}" ?readonly="${0}" .value="${0}" @change="${0}"> </x-frequency-input> ${0} </div> `),this.renderTemplateOrSlot("expires:before"),this.t("select"),this.t("expires_after"),this.lang,this.ns,!this.in("idle")||this.disabledSelector.matches("expires",!0),this.readonlySelector.matches("expires",!0),null!==(e=this.form.expires_after)&&void 0!==e?e:"",(e=>{const t=e.currentTarget;this.edit({expires_after:t.value})}),this.renderTemplateOrSlot("expires:after"))}__renderCodes(){var e,t,i,r,s;const{disabledSelector:a,readonlySelector:n,hiddenSelector:l,group:d,data:c,lang:m,ns:g}=this,u=!this.in("idle")||a.matches("codes",!0),f=this.__codesTableQuery,h=new URL(c._links["fx:gift_card_codes"].href);new URLSearchParams(null!=f?f:"").forEach(((e,t)=>h.searchParams.set(t,e))),h.searchParams.set("limit","5");const p=null===f?"filter":"clear_filters",y="icons:"+(null===f?"filter-list":"clear");return o(K||(K=re` <div data-testid="codes"> <foxy-form-dialog disabledcontrols="${0}" readonlycontrols="${0}" hiddencontrols="save-button ${0}" header="generate" parent="${0}" group="${0}" lang="${0}" form="foxy-generate-codes-form" ns="${0}" id="generate-codes-dialog" alert .related="${0}"> </foxy-form-dialog> <foxy-form-dialog disabledcontrols="${0}" readonlycontrols="${0}" hiddencontrols="${0}" header="code" parent="${0}" group="${0}" lang="${0}" form="foxy-gift-card-code-form" ns="${0}" id="code-dialog"> </foxy-form-dialog> <foxy-form-dialog disabledcontrols="${0}" readonlycontrols="${0}" hiddencontrols="save-button ${0}" header="import" parent="${0}" group="${0}" lang="${0}" form="foxy-gift-card-codes-form" ns="${0}" id="import-dialog"> </foxy-form-dialog> ${0} <div class="flex items-center justify-between mb-xs space-x-s"> <foxy-i18n class="text-s font-medium text-secondary leading-none flex-1" lang="${0}" key="code_plural" ns="${0}"> </foxy-i18n> <vaadin-button data-testid="codes:generate-button" theme="success tertiary small" ?disabled="${0}" @click="${0}"> <foxy-i18n class="text-s" lang="${0}" key="generate" ns="${0}"></foxy-i18n> <iron-icon class="icon-inline text-s" icon="icons:add"></iron-icon> </vaadin-button> <vaadin-button data-testid="codes:import-button" theme="contrast tertiary small" ?disabled="${0}" @click="${0}"> <foxy-i18n class="text-s" lang="${0}" key="import" ns="${0}"></foxy-i18n> <iron-icon class="icon-inline text-s" icon="icons:open-in-browser"></iron-icon> </vaadin-button> <vaadin-button data-testid="codes:filter-button" theme="contrast ${0} small" ?disabled="${0}" @click="${0}"> <foxy-i18n class="text-s" lang="${0}" key="${0}" ns="${0}"></foxy-i18n> <iron-icon class="icon-inline text-s" icon="${0}"></iron-icon> </vaadin-button> </div> <foxy-query-builder class="bg-contrast-5 rounded-tl-l rounded-tr-s rounded-b-l p-m mb-s" lang="${0}" ns="${0} ${0}" ?disabled="${0}" ?hidden="${0}" .options="${0}" .value="${0}" @change="${0}"> </foxy-query-builder> <foxy-pagination first="${0}" lang="${0}" ns="${0} ${0}" ?disabled="${0}"> <foxy-table class="px-m mb-s border border-contrast-10 rounded-t-l rounded-b-l" group="${0}" lang="${0}" ns="${0}" .columns="${0}"> </foxy-table> </foxy-pagination> ${0} </div> `),a.zoom("codes:generate:form").toString(),n.zoom("codes:generate:form").toString(),l.zoom("codes:generate:form").toString(),null!==(e=null==c?void 0:c._links["fx:generate_codes"].href)&&void 0!==e?e:"",d,m,g,[h.toString()],a.zoom("codes:form").toString(),n.zoom("codes:form").toString(),l.zoom("codes:form").toString(),h.toString(),d,m,g,a.zoom("codes:import:form").toString(),n.zoom("codes:import:form").toString(),l.zoom("codes:import:form").toString(),c._links["fx:gift_card_codes"].href,d,m,g,this.renderTemplateOrSlot("codes:before"),m,g,u,(e=>{const t=this.renderRoot.querySelector("#generate-codes-dialog"),i=e.currentTarget;null==t||t.show(i)}),m,g,u,(e=>{const t=this.renderRoot.querySelector("#import-dialog"),i=e.currentTarget;null==t||t.show(i)}),m,g,null===f?"tertiary":"",u,(()=>this.__codesTableQuery=null===f?"":null),m,p,g,y,m,g,null!==(i=null===(t=customElements.get("foxy-query-builder"))||void 0===t?void 0:t.defaultNS)&&void 0!==i?i:"",u,null===f,ae.__codesQueryOptions,null!=f?f:"",(e=>{const t=e.currentTarget;this.__codesTableQuery=t.value}),h.toString(),m,g,null!==(s=null===(r=customElements.get("foxy-pagination"))||void 0===r?void 0:r.defaultNS)&&void 0!==s?s:"",u,d,m,g,this.__codesTableColumns,this.renderTemplateOrSlot("codes:after"))}__renderProductRestrictions(){var e;const t="product-restrictions",i=!this.in("idle")||this.disabledSelector.matches(t,!0),r=this.readonlySelector.matches(t,!0),s=null!==(e=this.form.product_code_restrictions)&&void 0!==e?e:"",a=[{header:"allow",items:[]},{header:"block",items:[]}];return s&&s.split(",").forEach((e=>{const t=e.startsWith("-"),i=t?1:0,r=t?e.substring(1):e;a[i].items.push({label:r,value:e})})),o(X||(X=re` <div data-testid="product-restrictions"> ${0} <div class="space-y-s"> <x-group frame> <foxy-i18n class="${0}" slot="header" lang="${0}" key="product_restrictions" ns="${0}"> </foxy-i18n> <div class="grid sm-grid-cols-2 bg-contrast-10" style="gap:1px"> ${0} </div> </x-group> <foxy-i18n class="${0}" lang="${0}" key="gift_card_product_restrictions_explainer" ns="${0}"> </foxy-i18n> </div> ${0} </div> `),this.renderTemplateOrSlot("product-restrictions:before"),i?"text-disabled":"text-secondary",this.lang,this.ns,a.map(((e,t)=>o(Y||(Y=re` <x-group class="bg-base pt-m"> <foxy-i18n class="${0}" slot="header" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> <x-editable-list data-testid="product-restrictions:${0}" lang="${0}" ns="${0}" ?disabled="${0}" ?readonly="${0}" .items="${0}" @change="${0}"> </x-editable-list> </x-group> `),i?"text-disabled":"text-tertiary",this.lang,e.header,this.ns,e.header,this.lang,this.ns,i,r,e.items,(e=>{const i=[0===t?e.currentTarget.items:a[0].items,1===t?e.currentTarget.items:a[1].items].map((e=>e.map((e=>e.value.replace(/^[\s-]*/,"").trimEnd())))).map((e=>e.filter((e=>!!e)))).map((e=>Array.from(new Set(e)))),r=i[0].concat(i[1].map((e=>`-${e}`))).join(",");this.edit({product_code_restrictions:r})})))),g({"block text-xs leading-s transition-colors":!0,"text-secondary":!i,"text-disabled":i}),this.lang,this.ns,this.renderTemplateOrSlot("product-restrictions:after"))}__renderCategoryRestrictions(){var e,t,i;const r="category-restrictions",s=!this.in("idle")||this.disabledSelector.matches(r,!0),a=this.readonlySelector.matches(r,!0),n=null===(e=this.data)||void 0===e?void 0:e._links["fx:gift_card_item_categories"].href;return o(Z||(Z=re` <div data-testid="category-restrictions"> ${0} <div class="space-y-xs"> <foxy-pagination first="${0}" lang="${0}" ns="${0} ${0}" ?disabled="${0}"> <foxy-i18n class="block text-s font-medium text-secondary leading-none mb-s" lang="${0}" key="category_restrictions" ns="${0}"> </foxy-i18n> <x-category-restrictions-page gift-card-item-categories="${0}" data-testid="category-restrictions:page" gift-card="${0}" class="border border-contrast-10 rounded-t-l rounded-b-l mb-s" group="${0}" lang="${0}" ns="${0}" ?disabled="${0}" ?readonly="${0}"> </x-category-restrictions-page> </foxy-pagination> <foxy-i18n class="block text-xs leading-s text-secondary" lang="${0}" key="gift_card_category_restrictions_helper_text" ns="${0}"> </foxy-i18n> </div> ${0} </div> `),this.renderTemplateOrSlot(`${r}:before`),this.__itemCategories,this.lang,this.ns,null!==(i=null===(t=customElements.get("foxy-pagination"))||void 0===t?void 0:t.defaultNS)&&void 0!==i?i:"",s,this.lang,this.ns,m(n),this.href,this.group,this.lang,this.ns,s,a,this.lang,this.ns,this.renderTemplateOrSlot(`${r}:after`))}__renderTimestamps(){return o(ee||(ee=re` <div> ${0} <x-property-table data-testid="timestamps" .items="${0}"> </x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}})),this.renderTemplateOrSlot("timestamps:after"))}__renderCreate(){const e=this.in({idle:{template:{clean:"invalid"}}}),t=this.in({idle:{template:{dirty:"invalid"}}}),i=this.in({idle:{snapshot:{clean:"invalid"}}}),r=this.in({idle:{snapshot:{dirty:"invalid"}}}),s=e||t||(i||r),a=this.in("busy");return o(te||(te=re` <div> ${0} <vaadin-button data-testid="create" class="w-full" theme="primary success" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="create" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("create:before"),a||s||this.disabledSelector.matches("create",!0),this.submit,this.ns,this.lang,this.renderTemplateOrSlot("create:after"))}__renderDelete(){return o(ie||(ie=re` <div> <foxy-internal-confirm-dialog data-testid="confirm" message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> ${0} <vaadin-button data-testid="delete" theme="primary error" class="w-full" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="delete" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.lang,this.ns,(e=>!e.detail.cancelled&&this.delete()),this.renderTemplateOrSlot("delete:before"),!this.in("idle")||this.disabledSelector.matches("delete",!0),(e=>{this.renderRoot.querySelector("#confirm").show(e.currentTarget)}),this.ns,this.lang,this.renderTemplateOrSlot("delete:after"))}}ae.__codesQueryOptions=[{label:"code",path:"code",type:e.String},{label:"current_balance",path:"current_balance",type:e.Number},{label:"end_date",path:"end_date",type:e.Date},{label:"date_created",path:"date_created",type:e.Date},{label:"date_modified",path:"date_modified",type:e.Date}],customElements.define("foxy-gift-card-form",ae);export{ae as GiftCardForm};
@@ -1 +1 @@
1
- import{I as e}from"./shared-17e9778d.js";import"./shared-d9c5e26e.js";import{_ as i}from"./shared-a8ced8bf.js";import{a as t}from"./shared-1c9fd2b1.js";import{h as s}from"./shared-7f33a83a.js";import{i as r}from"./shared-d3bf9ac0.js";import{C as a}from"./shared-24d650cd.js";import"./foxy-spinner.js";import"./shared-0ffa1afb.js";import"./shared-0ca312eb.js";import"./shared-b1304f5b.js";import"./shared-4f037e43.js";import"./shared-7c8b3ce0.js";import"./shared-60425d2e.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";import"./shared-4e709717.js";let d,l,o,c,n,h,p=e=>e;const f=a(t(e,"item-card"));class u extends f{constructor(){super(...arguments),this.__currencyDisplay="",this.__currency=""}static get properties(){return i(i({},super.properties),{},{__currencyDisplay:{attribute:!1},__currency:{attribute:!1}})}renderBody(){var e,i,t,a,f,m,v,y,_;const x=null!==(i=null===(e=this.data)||void 0===e?void 0:e.quantity)&&void 0!==i?i:0,w=null!==(a=null===(t=this.data)||void 0===t?void 0:t.price)&&void 0!==a?a:0,L=x*w,C=null===(m=null===(f=this.data)||void 0===f?void 0:f._embedded)||void 0===m?void 0:m["fx:item_options"];return s(d||(d=p` <div class="flex items-start space-x-m leading-m"> <div class="w-l h-l relative flex-shrink-0"> <img class="relative w-full h-full object-cover rounded" src="${0}" alt="" @error="${0}"> <div class="border border-contrast-10 absolute inset-0 rounded"></div> </div> <div class="flex-1 min-w-0"> <div class="flex-1 h-l flex items-center"> <div class="flex-1 leading-s"> <div class="font-semibold text-m truncate">${0}</div> <div class="text-secondary text-m truncate"> ${0} &times; <foxy-i18n options="${0}" key="price" infer=""> </foxy-i18n> &equals; <foxy-i18n options="${0}" key="price" infer=""> </foxy-i18n> </div> </div> ${0} </div> ${0} </div> </div> `),r(null===(v=this.data)||void 0===v?void 0:v.image),(e=>{e.currentTarget.src=u.__placeholder}),null===(y=this.data)||void 0===y?void 0:y.name,x,JSON.stringify({amount:`${w} ${this.__currency}`,currencyDisplay:this.__currencyDisplay}),JSON.stringify({amount:`${L} ${this.__currency}`,currencyDisplay:this.__currencyDisplay}),(null===(_=this.data)||void 0===_?void 0:_.subscription_frequency)?s(l||(l=p` <div class="w-xs h-xs flex items-center justify-center rounded-full bg-contrast-5"> <iron-icon icon="icons:autorenew" class="icon-inline text-s"></iron-icon> </div> `)):"",C&&C.length>0?s(o||(o=p` <div class="mt-s"> ${0} </div> `),C.map((e=>s(c||(c=p` <div data-testclass="option" class="flex items-center text-m space-x-xs leading-m"> <div class="flex-1 text-tertiary truncate"> ${0}: ${0} </div> ${0} ${0} </div> `),e.name,e.value,e.price_mod?s(n||(n=p` <div class="${0} rounded px-xs truncate"> <foxy-i18n options="${0}" key="price" infer=""> </foxy-i18n> </div> `),e.price_mod>0?"text-success":"text-error",JSON.stringify({amount:`${e.price_mod} ${this.__currency}`,currencyDisplay:this.__currencyDisplay})):"",e.weight_mod?s(h||(h=p` <div class="${0} rounded px-xs truncate"> ${0} <foxy-i18n key="wgt" infer=""></foxy-i18n> </div> `),e.price_mod>0?"text-success":"text-error",e.weight_mod):"")))):"")}async _sendGet(){const e=await super._sendGet(),[i,t]=await Promise.all([super._fetch(e._links["fx:transaction"].href),super._fetch(e._links["fx:store"].href)]);return this.__currency=i.currency_code,this.__currencyDisplay=t.use_international_currency_symbol?"code":"symbol",e}}u.__placeholder='data:image/svg+xml,%3Csvg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Crect width="40" height="40" fill="%23E8E8E8"/%3E%3Cpath d="M31.5143 0H24.5476L0 24.5476V31.5143L11.7046 19.8097L11.9841 17.0782C12.0983 15.9624 13.0131 15.1154 14.1038 15.1154H15.7373V12.1923C15.7373 10.9815 16.6915 10 17.8687 10H21.5143L31.5143 0Z" fill="white"/%3E%3Cpath d="M11.5434 21.3852L0 32.9285V39.8953L11.5822 28.3131C11.172 27.8663 10.9438 27.2444 11.012 26.5782L11.5434 21.3852Z" fill="white"/%3E%3Cpath d="M12.4305 28.879L1.30951 40H8.27631L19.2763 29H13.1316C12.8853 29 12.6495 28.9573 12.4305 28.879Z" fill="white"/%3E%3Cpath d="M28.3113 19.965L28.0159 17.0782C27.9116 16.0591 27.1395 15.2642 26.1754 15.1341L40 1.3095V8.27627L28.3113 19.965Z" fill="white"/%3E%3Cpath d="M20.6905 29L9.69049 40H16.6572L27.9755 28.6817C27.6541 28.8832 27.2756 29 26.8684 29H20.6905Z" fill="white"/%3E%3Cpath d="M28.6572 28C28.9128 27.5952 29.0415 27.1003 28.988 26.5782L28.4426 21.2479L40 9.69053V16.6572L28.6572 28Z" fill="white"/%3E%3Cpath d="M25.0381 40H18.0715L40 18.0715V25.0381L25.0381 40Z" fill="white"/%3E%3Cpath d="M26.4524 40H33.4191L40 33.4191V26.4524L26.4524 40Z" fill="white"/%3E%3Cpath d="M40 40H34.8333L40 34.8333V40Z" fill="white"/%3E%3Cpath d="M16.1666 0H23.1334L0 23.1334V16.1666L16.1666 0Z" fill="white"/%3E%3Cpath d="M14.7524 0H7.78571L0 7.78573V14.7524L14.7524 0Z" fill="white"/%3E%3Cpath d="M0 0H6.37152L0 6.37151V0Z" fill="white"/%3E%3Cpath d="M21.467 11.4615H17.8687C17.4763 11.4615 17.1582 11.7887 17.1582 12.1923V15.1154H22.8418V12.1923C22.8418 11.7887 22.5237 11.4615 22.1313 11.4615H21.467Z" fill="white"/%3E%3Cpath d="M24.7798 15.1154H24.2627V12.1923C24.2627 11.227 23.6562 10.4075 22.8138 10.1148L32.9286 0H39.89L24.7798 15.1154Z" fill="white"/%3E%3C/svg%3E',customElements.define("foxy-item-card",u);export{u as ItemCard};
1
+ import{I as e}from"./shared-14afc5c6.js";import"./shared-d9c5e26e.js";import{_ as i}from"./shared-a8ced8bf.js";import{a as t}from"./shared-1c9fd2b1.js";import{h as s}from"./shared-7f33a83a.js";import{i as r}from"./shared-d3bf9ac0.js";import{C as a}from"./shared-24d650cd.js";import"./foxy-spinner.js";import"./shared-0ffa1afb.js";import"./shared-0ca312eb.js";import"./shared-b1304f5b.js";import"./shared-4f037e43.js";import"./shared-7c8b3ce0.js";import"./shared-425d906a.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";import"./shared-4e709717.js";let d,l,c,o,n,h,f=e=>e;const p=a(t(e,"item-card"));class u extends p{constructor(){super(...arguments),this.__currencyDisplay="",this.__currency=""}static get properties(){return i(i({},super.properties),{},{__currencyDisplay:{attribute:!1},__currency:{attribute:!1}})}renderBody(){var e,i,t,a,p,m,v,y,_;const x=null!==(i=null===(e=this.data)||void 0===e?void 0:e.quantity)&&void 0!==i?i:0,w=null!==(a=null===(t=this.data)||void 0===t?void 0:t.price)&&void 0!==a?a:0,L=x*w,C=null===(m=null===(p=this.data)||void 0===p?void 0:p._embedded)||void 0===m?void 0:m["fx:item_options"];return s(d||(d=f` <div class="flex items-start space-x-m leading-m"> <div class="w-l h-l relative flex-shrink-0"> <img class="relative w-full h-full object-cover rounded" src="${0}" alt="" @error="${0}"> <div class="border border-contrast-10 absolute inset-0 rounded"></div> </div> <div class="flex-1 min-w-0"> <div class="flex-1 h-l flex items-center"> <div class="flex-1 leading-s"> <div class="font-semibold text-m truncate">${0}</div> <div class="text-secondary text-m truncate"> ${0} &times; <foxy-i18n options="${0}" key="price" infer=""> </foxy-i18n> &equals; <foxy-i18n options="${0}" key="price" infer=""> </foxy-i18n> </div> </div> ${0} </div> ${0} </div> </div> `),r(null===(v=this.data)||void 0===v?void 0:v.image),(e=>{e.currentTarget.src=u.__placeholder}),null===(y=this.data)||void 0===y?void 0:y.name,x,JSON.stringify({amount:`${w} ${this.__currency}`,currencyDisplay:this.__currencyDisplay}),JSON.stringify({amount:`${L} ${this.__currency}`,currencyDisplay:this.__currencyDisplay}),(null===(_=this.data)||void 0===_?void 0:_.subscription_frequency)?s(l||(l=f` <div class="w-xs h-xs flex items-center justify-center rounded-full bg-contrast-5"> <iron-icon icon="icons:autorenew" class="icon-inline text-s"></iron-icon> </div> `)):"",C&&C.length>0?s(c||(c=f` <div class="mt-s"> ${0} </div> `),C.map((e=>s(o||(o=f` <div data-testclass="option" class="flex items-center text-m space-x-xs leading-m"> <div class="flex-1 text-tertiary truncate"> ${0}: ${0} </div> ${0} ${0} </div> `),e.name,e.value,e.price_mod?s(n||(n=f` <div class="${0} rounded px-xs truncate"> <foxy-i18n options="${0}" key="price" infer=""> </foxy-i18n> </div> `),e.price_mod>0?"text-success":"text-error",JSON.stringify({amount:`${e.price_mod} ${this.__currency}`,currencyDisplay:this.__currencyDisplay})):"",e.weight_mod?s(h||(h=f` <div class="${0} rounded px-xs truncate"> ${0} <foxy-i18n key="wgt" infer=""></foxy-i18n> </div> `),e.price_mod>0?"text-success":"text-error",e.weight_mod):"")))):"")}async _sendGet(){const e=await super._sendGet(),[i,t]=await Promise.all([super._fetch(e._links["fx:transaction"].href),super._fetch(e._links["fx:store"].href)]);return this.__currency=i.currency_code,this.__currencyDisplay=t.use_international_currency_symbol?"code":"symbol",e}}u.__placeholder='data:image/svg+xml,%3Csvg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Crect width="40" height="40" fill="%23E8E8E8"/%3E%3Cpath d="M31.5143 0H24.5476L0 24.5476V31.5143L11.7046 19.8097L11.9841 17.0782C12.0983 15.9624 13.0131 15.1154 14.1038 15.1154H15.7373V12.1923C15.7373 10.9815 16.6915 10 17.8687 10H21.5143L31.5143 0Z" fill="white"/%3E%3Cpath d="M11.5434 21.3852L0 32.9285V39.8953L11.5822 28.3131C11.172 27.8663 10.9438 27.2444 11.012 26.5782L11.5434 21.3852Z" fill="white"/%3E%3Cpath d="M12.4305 28.879L1.30951 40H8.27631L19.2763 29H13.1316C12.8853 29 12.6495 28.9573 12.4305 28.879Z" fill="white"/%3E%3Cpath d="M28.3113 19.965L28.0159 17.0782C27.9116 16.0591 27.1395 15.2642 26.1754 15.1341L40 1.3095V8.27627L28.3113 19.965Z" fill="white"/%3E%3Cpath d="M20.6905 29L9.69049 40H16.6572L27.9755 28.6817C27.6541 28.8832 27.2756 29 26.8684 29H20.6905Z" fill="white"/%3E%3Cpath d="M28.6572 28C28.9128 27.5952 29.0415 27.1003 28.988 26.5782L28.4426 21.2479L40 9.69053V16.6572L28.6572 28Z" fill="white"/%3E%3Cpath d="M25.0381 40H18.0715L40 18.0715V25.0381L25.0381 40Z" fill="white"/%3E%3Cpath d="M26.4524 40H33.4191L40 33.4191V26.4524L26.4524 40Z" fill="white"/%3E%3Cpath d="M40 40H34.8333L40 34.8333V40Z" fill="white"/%3E%3Cpath d="M16.1666 0H23.1334L0 23.1334V16.1666L16.1666 0Z" fill="white"/%3E%3Cpath d="M14.7524 0H7.78571L0 7.78573V14.7524L14.7524 0Z" fill="white"/%3E%3Cpath d="M0 0H6.37152L0 6.37151V0Z" fill="white"/%3E%3Cpath d="M21.467 11.4615H17.8687C17.4763 11.4615 17.1582 11.7887 17.1582 12.1923V15.1154H22.8418V12.1923C22.8418 11.7887 22.5237 11.4615 22.1313 11.4615H21.467Z" fill="white"/%3E%3Cpath d="M24.7798 15.1154H24.2627V12.1923C24.2627 11.227 23.6562 10.4075 22.8138 10.1148L32.9286 0H39.89L24.7798 15.1154Z" fill="white"/%3E%3C/svg%3E',customElements.define("foxy-item-card",u);export{u as ItemCard};
@@ -1 +1 @@
1
- import{I as e}from"./shared-17e9778d.js";import{h as s}from"./shared-7f33a83a.js";import"./foxy-spinner.js";import"./shared-0ffa1afb.js";import"./shared-0ca312eb.js";import"./shared-1c9fd2b1.js";import"./shared-a8ced8bf.js";import"./shared-b1304f5b.js";import"./shared-d9c5e26e.js";import"./shared-7c8b3ce0.js";import"./shared-4f037e43.js";import"./shared-60425d2e.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";import"./shared-4e709717.js";let r,d,a=e=>e;class t extends e{renderBody(){const e=this.data;return s(r||(r=a` <div class="flex justify-between gap-s"> <div class="font-semibold truncate flex-shrink-0">${0}&ZeroWidthSpace;</div> ${0} </div> `),null==e?void 0:e.name,(null==e?void 0:e.name)!==(null==e?void 0:e.code)?s(d||(d=a`<div class="truncate text-tertiary">${0}</div>`),null==e?void 0:e.code):"")}}customElements.define("foxy-item-category-card",t);export{t as ItemCategoryCard};
1
+ import{I as e}from"./shared-14afc5c6.js";import{h as s}from"./shared-7f33a83a.js";import"./foxy-spinner.js";import"./shared-0ffa1afb.js";import"./shared-0ca312eb.js";import"./shared-1c9fd2b1.js";import"./shared-a8ced8bf.js";import"./shared-b1304f5b.js";import"./shared-d9c5e26e.js";import"./shared-7c8b3ce0.js";import"./shared-4f037e43.js";import"./shared-425d906a.js";import"./shared-a03d948d.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";import"./shared-4e709717.js";let r,a,d=e=>e;class t extends e{renderBody(){const e=this.data;return s(r||(r=d` <div class="flex justify-between gap-s"> <div class="font-semibold truncate flex-shrink-0">${0}&ZeroWidthSpace;</div> ${0} </div> `),null==e?void 0:e.name,(null==e?void 0:e.name)!==(null==e?void 0:e.code)?s(a||(a=d`<div class="truncate text-tertiary">${0}</div>`),null==e?void 0:e.code):"")}}customElements.define("foxy-item-category-card",t);export{t as ItemCategoryCard};
@@ -1 +1 @@
1
- import"./shared-e7736e8d.js";import"./shared-9e6fc72e.js";import"./shared-c677ca5a.js";import"./shared-cb26f86e.js";import"./shared-3e3ba16e.js";import{I as e}from"./shared-beb9cddd.js";import"./foxy-discount-builder.js";import{I as t}from"./shared-b52e1d97.js";import"./foxy-collection-page.js";import"./foxy-pagination.js";import"./shared-f0591b3e.js";import"./foxy-nucleon-element.js";import{TaxCard as n}from"./foxy-tax-card.js";import{_ as r}from"./shared-a8ced8bf.js";import{i}from"./shared-d3bf9ac0.js";import{h as o}from"./shared-7f33a83a.js";import{a}from"./shared-1c9fd2b1.js";import"./shared-8dd640bf.js";import"./shared-4a2e1638.js";import"./shared-0ca312eb.js";import"./shared-c99a75d8.js";import"./shared-0ffa1afb.js";import"./shared-a694a204.js";import"./shared-a03d948d.js";import"./shared-7c8b3ce0.js";import"./shared-5f751bfc.js";import"./shared-3fd94d2f.js";import"./shared-61174bec.js";import"./shared-d9c5e26e.js";import"./shared-4f037e43.js";import"./shared-66a0263f.js";import"./shared-f00d31e0.js";import"./shared-164a791e.js";import"./shared-24d650cd.js";import"./shared-4e709717.js";import"./foxy-spinner.js";import"./shared-b1304f5b.js";import"./shared-60425d2e.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";import"./shared-d519a301.js";import"./shared-e6f3e9f0.js";import"./shared-0479553e.js";import"./shared-11c2efc8.js";import"./shared-17e9778d.js";let l,s=e=>e;customElements.define("foxy-internal-item-category-form-taxes-control-item",class extends n{constructor(){super(...arguments),this.taxItemCategories=null,this.itemCategory=null,this.__resourceElementIsBusy=!1,this.__queryElementData=null}static get properties(){return r(r({},super.properties),{},{taxItemCategories:{type:String,attribute:"tax-item-categories"},itemCategory:{type:String,attribute:"item-category"}})}render(){var e,t,n,r,a;const d=null===(n=null===(t=null===(e=this.__queryElementData)||void 0===e?void 0:e._embedded)||void 0===t?void 0:t["fx:tax_item_categories"])||void 0===n?void 0:n[0];let m;try{const e=new URL(null!==(r=this.taxItemCategories)&&void 0!==r?r:""),t=new URL(this.href).pathname.split("/").pop();if(!t)throw new Error;e.searchParams.set("tax_id",t),e.searchParams.set("limit","1"),m=e.toString()}catch(e){m=void 0}return o(l||(l=s` <foxy-nucleon href="${0}" id="query" @update="${0}"> <foxy-nucleon parent="${0}" href="${0}" id="resource" @update="${0}"> </foxy-nucleon> </foxy-nucleon> <vaadin-checkbox class="px-m py-s block overflow-hidden" ?disabled="${0}" ?checked="${0}" @change="${0}"> ${0} </vaadin-checkbox> `),i(m),(e=>{const t=e.currentTarget;this.__queryElementData=t.data,this.requestUpdate()}),i(null!==(a=this.taxItemCategories)&&void 0!==a?a:void 0),i(null==d?void 0:d._links.self.href),(e=>{const t=e.currentTarget;this.__resourceElementIsBusy=!t.in("idle"),this.requestUpdate()}),!this.__queryElementData||this.__resourceElementIsBusy||this.disabled,!!d,(e=>{const t=e.currentTarget,n=this.renderRoot.querySelector("#resource");t.checked?(n.edit({tax_uri:this.data._links.self.href,item_category_uri:this.itemCategory}),n.submit()):n.delete()}),super.render())}});let d,m=e=>e;customElements.define("foxy-internal-item-category-form-taxes-control",class extends t{constructor(){super(...arguments),this.taxes=null}static get properties(){return r(r({},super.properties),{},{taxes:{type:String}})}renderControl(){var e,t,n,r;const i=this.nucleon;let a;try{const t=new URL(null!==(e=this.taxes)&&void 0!==e?e:"");t.searchParams.set("limit","5"),a=t.toString()}catch(e){a=null!==(t=this.taxes)&&void 0!==t?t:""}return o(d||(d=m` <foxy-i18n class="block text-s font-medium text-secondary leading-none mb-s" infer="" key="title"> </foxy-i18n> <foxy-pagination first="${0}" infer="pagination"> <foxy-collection-page class="block mb-s divide-y divide-contrast-10 border border-contrast-10 rounded-t-l rounded-b-l" infer="" item="foxy-internal-item-category-form-taxes-control-item" .props="${0}"> </foxy-collection-page> </foxy-pagination> <foxy-i18n class="block text-xs text-secondary leading-xs mt-xs" infer="" key="helper_text"> </foxy-i18n> `),a,{"tax-item-categories":null!==(r=null===(n=null==i?void 0:i.form._links)||void 0===n?void 0:n["fx:tax_item_categories"].href)&&void 0!==r?r:"","item-category":null==i?void 0:i.href})}});let p,c,_,f,u,h,y,g,x,v,b,j,$,w=e=>e;class q extends(a(e,"item-category-form")){constructor(){super(...arguments),this.emailTemplates=null,this.taxes=null}static get properties(){return r(r({},super.properties),{},{emailTemplates:{type:String,attribute:"email-templates"},taxes:{type:String}})}static get v8n(){return[({code:e})=>!!e||"code:v8n_required",({code:e})=>e&&e.length<=50||"code:v8n_too_long",({name:e})=>!!e||"name:v8n_required",({name:e})=>e&&e.length<=50||"name:v8n_too_long",({item_delivery_type:e})=>!!e||"item-delivery-type:v8n_required",({item_delivery_type:e,max_downloads_per_customer:t})=>"downloaded"!==e||"number"==typeof t||"max-downloads-per-customer:v8n_required",({max_downloads_per_customer:e})=>"number"!=typeof e||e>=0||"max-downloads-per-customer:v8n_negative",({item_delivery_type:e,max_downloads_time_period:t})=>"downloaded"!==e||"number"==typeof t||"max-downloads-time-period:v8n_required",({max_downloads_time_period:e})=>"number"!=typeof e||e>=0||"max-downloads-time-period:v8n_negative",({customs_value:e})=>"number"!=typeof e||e>=0||"customs-value:v8n_negative",({item_delivery_type:e,default_weight:t})=>"shipped"!==e||"number"==typeof t||"default-weight:v8n_required",({default_weight:e})=>"number"!=typeof e||e>=0||"default-weight:v8n_negative",({item_delivery_type:e,default_weight_unit:t})=>"shipped"!==e||"string"==typeof t||"default-weight-unit:v8n_required",({item_delivery_type:e,default_length_unit:t})=>"shipped"!==e||"string"==typeof t||"default-length-unit:v8n_required",({item_delivery_type:e,shipping_flat_rate:t})=>"flat_rate"!==e||"number"==typeof t||"shipping-flat-rate:v8n_required",({shipping_flat_rate:e})=>"number"!=typeof e||e>=0||"shipping-flat-rate:v8n_negative",({item_delivery_type:e,shipping_flat_rate_type:t})=>"flat_rate"!==e||"string"==typeof t||"shipping-flat-rate-type:v8n_required",({handling_fee_type:e})=>!!e||"handling-fee-type:v8n_required",({handling_fee_type:e,handling_fee_minimum:t})=>"flat_percent_with_minimum"!==e||"number"==typeof t||"handling-fee-minimum:v8n_required",({handling_fee_minimum:e})=>"number"!=typeof e||e>=0||"handling-fee-minimum:v8n_negative",({handling_fee_type:e,handling_fee_percentage:t})=>"flat_percent_with_minimum"!==e&&"flat_percent"!==e||"number"==typeof t||"handling-fee-percentage:v8n_required",({handling_fee_percentage:e})=>"number"!=typeof e||e>=0||"handling-fee-percentage:v8n_negative",({send_admin_email:e,admin_email:t})=>!e||!!t||"admin-email:v8n_required"]}renderBody(){var e,t,n,r;const a=this.form.item_delivery_type,l=null!==(e=this.form.handling_fee_type)&&void 0!==e?e:"none",s=!this.hiddenSelector.matches("dividers",!0),d=o(p||(p=w`<div class="border-t border-contrast-10 col-span-2"></div>`));return o(c||(c=w` <div class="grid grid-cols-2 gap-m"> <foxy-internal-text-control infer="name" class="col-span-2"></foxy-internal-text-control> <foxy-internal-text-control infer="code" class="col-span-2"></foxy-internal-text-control> ${0} <foxy-internal-select-control infer="handling-fee-type" class="col-span-2" .options="${0}"> </foxy-internal-select-control> ${0} ${0} <foxy-internal-select-control infer="item-delivery-type" class="col-span-2" .options="${0}"> </foxy-internal-select-control> ${0} ${0} ${0} <foxy-internal-text-control infer="discount-name" class="col-span-2"> </foxy-internal-text-control> ${0} ${0} <foxy-internal-async-combo-box-control item-label-path="description" item-value-path="_links.self.href" first="${0}" infer="admin-email-template-uri" class="${0}" @change="${0}"> </foxy-internal-async-combo-box-control> ${0} <foxy-internal-async-combo-box-control item-label-path="description" item-value-path="_links.self.href" first="${0}" infer="customer-email-template-uri" class="col-span-2" @change="${0}"> </foxy-internal-async-combo-box-control> <foxy-internal-async-combo-box-control item-label-path="description" item-value-path="_links.self.href" first="${0}" infer="gift-recipient-email-template-uri" class="col-span-2"> </foxy-internal-async-combo-box-control> ${0} ${0} </div> ${0} `),s?d:"",q.__handlingFeeTypeOptions,"none"===l?"":o(_||(_=w` ${0} ${0} ${0} `),this.__renderHandlingFee(),l.includes("percent")?this.__renderHandlingFeePercentage():"","flat_percent_with_minimum"===l?this.__renderHandlingFeeMinimum():""),s?d:"",q.__itemDeliveryTypeOptions,"downloaded"===a?this.__renderDownloadDeliveryControls():"flat_rate"===a?this.__renderFlatRateControls():"shipped"===a?this.__renderShippingControls():"","shipped"===a||"flat_rate"===a?this.__renderCustomsValue():"",s?d:"",this.form.discount_name?this.__renderDiscountBuilder():"",s?d:"",i(null!==(t=this.emailTemplates)&&void 0!==t?t:void 0),this.form.send_admin_email?"":"col-span-2",(e=>{this.edit({send_admin_email:!!e.detail,admin_email:e.detail?this.form.admin_email:""})}),this.form.send_admin_email?this.__renderAdminEmail():"",i(null!==(n=this.emailTemplates)&&void 0!==n?n:void 0),(e=>this.edit({send_customer_email:!!e.detail})),i(null!==(r=this.emailTemplates)&&void 0!==r?r:void 0),s?d:"",this.data?this.__renderTaxes():"",super.renderBody())}__renderHandlingFee(){return o(f||(f=w` <foxy-internal-number-control infer="handling-fee" class="${0}"> </foxy-internal-number-control> `),"flat_percent"===this.form.handling_fee_type?"":"col-span-2")}__renderHandlingFeePercentage(){return o(u||(u=w` <foxy-internal-number-control infer="handling-fee-percentage"> </foxy-internal-number-control> `))}__renderHandlingFeeMinimum(){return o(h||(h=w` <foxy-internal-number-control infer="handling-fee-minimum"> </foxy-internal-number-control> `))}__renderDownloadDeliveryControls(){return o(y||(y=w` <foxy-internal-integer-control infer="max-downloads-per-customer"> </foxy-internal-integer-control> <foxy-internal-integer-control infer="max-downloads-time-period"> </foxy-internal-integer-control> `))}__renderFlatRateControls(){return o(g||(g=w` <foxy-internal-number-control infer="shipping-flat-rate"> </foxy-internal-number-control> <foxy-internal-select-control infer="shipping-flat-rate-type" .options="${0}"> </foxy-internal-select-control> `),q.__shippingFlatRateTypeOptions)}__renderShippingControls(){return o(x||(x=w` <foxy-internal-integer-control infer="default-weight" class="col-span-2"> </foxy-internal-integer-control> <foxy-internal-select-control infer="default-weight-unit" .options="${0}"> </foxy-internal-select-control> <foxy-internal-select-control infer="default-length-unit" .options="${0}"> </foxy-internal-select-control> `),q.__defaultWeightUnitOptions,q.__defaultLengthUnitOptions)}__renderCustomsValue(){return o(v||(v=w` <foxy-internal-number-control infer="customs-value" class="col-span-2"> </foxy-internal-number-control> `))}__renderDiscountBuilder(){var e,t;const n={name:null!==(e=this.form.discount_name)&&void 0!==e?e:"",type:this.form.discount_type||"quantity_amount",details:null!==(t=this.form.discount_details)&&void 0!==t?t:""};return o(b||(b=w` <foxy-discount-builder infer="discount-builder" class="col-span-2" .parsedValue="${0}" @change="${0}"> </foxy-discount-builder> `),n,(e=>{const t=e.currentTarget;this.edit({discount_name:t.parsedValue.name,discount_type:t.parsedValue.type,discount_details:t.parsedValue.details})}))}__renderAdminEmail(){return o(j||(j=w`<foxy-internal-text-control infer="admin-email"> </foxy-internal-text-control>`))}__renderTaxes(){var e;return o($||($=w` <foxy-internal-item-category-form-taxes-control taxes="${0}" class="col-span-2" infer="taxes"> </foxy-internal-item-category-form-taxes-control> `),i(null!==(e=this.taxes)&&void 0!==e?e:void 0))}}q.__shippingFlatRateTypeOptions=[{label:"option_per_order",value:"per_order"},{label:"option_per_shipment",value:"per_shipment"}],q.__defaultWeightUnitOptions=[{label:"option_lbs",value:"LBS"},{label:"option_kgs",value:"KGS"}],q.__defaultLengthUnitOptions=[{label:"option_in",value:"IN"},{label:"option_cm",value:"CM"}],q.__itemDeliveryTypeOptions=[{label:"option_notshipped",value:"notshipped"},{label:"option_downloaded",value:"downloaded"},{label:"option_flat_rate",value:"flat_rate"},{label:"option_shipped",value:"shipped"},{label:"option_pickup",value:"pickup"}],q.__handlingFeeTypeOptions=[{label:"option_none",value:"none"},{label:"option_flat_per_order",value:"flat_per_order"},{label:"option_flat_per_item",value:"flat_per_item"},{label:"option_flat_percent",value:"flat_percent"},{label:"option_flat_percent_with_minimum",value:"flat_percent_with_minimum"}],customElements.define("foxy-item-category-form",q);export{q as ItemCategoryForm};
1
+ import"./shared-4a4eab8b.js";import"./shared-a2efb819.js";import"./shared-27089ebf.js";import"./shared-d5ef2683.js";import"./shared-73ac094b.js";import{I as e}from"./shared-5a823202.js";import"./foxy-discount-builder.js";import{I as t}from"./shared-d187b584.js";import"./foxy-collection-page.js";import"./foxy-pagination.js";import"./shared-f0591b3e.js";import"./foxy-nucleon-element.js";import{TaxCard as n}from"./foxy-tax-card.js";import{_ as r}from"./shared-a8ced8bf.js";import{i}from"./shared-d3bf9ac0.js";import{h as o}from"./shared-7f33a83a.js";import{a}from"./shared-1c9fd2b1.js";import"./shared-8dd640bf.js";import"./shared-4a2e1638.js";import"./shared-0ca312eb.js";import"./shared-c99a75d8.js";import"./shared-0ffa1afb.js";import"./shared-39cb3be1.js";import"./shared-a03d948d.js";import"./shared-7c8b3ce0.js";import"./shared-5f751bfc.js";import"./shared-3fd94d2f.js";import"./shared-61174bec.js";import"./shared-d9c5e26e.js";import"./shared-4f037e43.js";import"./shared-66a0263f.js";import"./shared-f00d31e0.js";import"./shared-164a791e.js";import"./shared-24d650cd.js";import"./shared-4e709717.js";import"./foxy-spinner.js";import"./shared-b1304f5b.js";import"./shared-425d906a.js";import"./shared-7684cb05.js";import"./shared-b0ba62ff.js";import"./shared-d519a301.js";import"./shared-e6f3e9f0.js";import"./shared-0479553e.js";import"./shared-11c2efc8.js";import"./shared-14afc5c6.js";let l,s=e=>e;customElements.define("foxy-internal-item-category-form-taxes-control-item",class extends n{constructor(){super(...arguments),this.taxItemCategories=null,this.itemCategory=null,this.__resourceElementIsBusy=!1,this.__queryElementData=null}static get properties(){return r(r({},super.properties),{},{taxItemCategories:{type:String,attribute:"tax-item-categories"},itemCategory:{type:String,attribute:"item-category"}})}render(){var e,t,n,r,a;const d=null===(n=null===(t=null===(e=this.__queryElementData)||void 0===e?void 0:e._embedded)||void 0===t?void 0:t["fx:tax_item_categories"])||void 0===n?void 0:n[0];let m;try{const e=new URL(null!==(r=this.taxItemCategories)&&void 0!==r?r:""),t=new URL(this.href).pathname.split("/").pop();if(!t)throw new Error;e.searchParams.set("tax_id",t),e.searchParams.set("limit","1"),m=e.toString()}catch(e){m=void 0}return o(l||(l=s` <foxy-nucleon href="${0}" id="query" @update="${0}"> <foxy-nucleon parent="${0}" href="${0}" id="resource" @update="${0}"> </foxy-nucleon> </foxy-nucleon> <vaadin-checkbox class="px-m py-s block overflow-hidden" ?disabled="${0}" ?checked="${0}" @change="${0}"> ${0} </vaadin-checkbox> `),i(m),(e=>{const t=e.currentTarget;this.__queryElementData=t.data,this.requestUpdate()}),i(null!==(a=this.taxItemCategories)&&void 0!==a?a:void 0),i(null==d?void 0:d._links.self.href),(e=>{const t=e.currentTarget;this.__resourceElementIsBusy=!t.in("idle"),this.requestUpdate()}),!this.__queryElementData||this.__resourceElementIsBusy||this.disabled,!!d,(e=>{const t=e.currentTarget,n=this.renderRoot.querySelector("#resource");t.checked?(n.edit({tax_uri:this.data._links.self.href,item_category_uri:this.itemCategory}),n.submit()):n.delete()}),super.render())}});let d,m=e=>e;customElements.define("foxy-internal-item-category-form-taxes-control",class extends t{constructor(){super(...arguments),this.taxes=null}static get properties(){return r(r({},super.properties),{},{taxes:{type:String}})}renderControl(){var e,t,n,r;const i=this.nucleon;let a;try{const t=new URL(null!==(e=this.taxes)&&void 0!==e?e:"");t.searchParams.set("limit","5"),a=t.toString()}catch(e){a=null!==(t=this.taxes)&&void 0!==t?t:""}return o(d||(d=m` <foxy-i18n class="block text-s font-medium text-secondary leading-none mb-s" infer="" key="title"> </foxy-i18n> <foxy-pagination first="${0}" infer="pagination"> <foxy-collection-page class="block mb-s divide-y divide-contrast-10 border border-contrast-10 rounded-t-l rounded-b-l" infer="" item="foxy-internal-item-category-form-taxes-control-item" .props="${0}"> </foxy-collection-page> </foxy-pagination> <foxy-i18n class="block text-xs text-secondary leading-xs mt-xs" infer="" key="helper_text"> </foxy-i18n> `),a,{"tax-item-categories":null!==(r=null===(n=null==i?void 0:i.form._links)||void 0===n?void 0:n["fx:tax_item_categories"].href)&&void 0!==r?r:"","item-category":null==i?void 0:i.href})}});let p,c,_,f,u,h,y,g,x,v,b,j,$,w=e=>e;class q extends(a(e,"item-category-form")){constructor(){super(...arguments),this.emailTemplates=null,this.taxes=null}static get properties(){return r(r({},super.properties),{},{emailTemplates:{type:String,attribute:"email-templates"},taxes:{type:String}})}static get v8n(){return[({code:e})=>!!e||"code:v8n_required",({code:e})=>e&&e.length<=50||"code:v8n_too_long",({name:e})=>!!e||"name:v8n_required",({name:e})=>e&&e.length<=50||"name:v8n_too_long",({item_delivery_type:e})=>!!e||"item-delivery-type:v8n_required",({item_delivery_type:e,max_downloads_per_customer:t})=>"downloaded"!==e||"number"==typeof t||"max-downloads-per-customer:v8n_required",({max_downloads_per_customer:e})=>"number"!=typeof e||e>=0||"max-downloads-per-customer:v8n_negative",({item_delivery_type:e,max_downloads_time_period:t})=>"downloaded"!==e||"number"==typeof t||"max-downloads-time-period:v8n_required",({max_downloads_time_period:e})=>"number"!=typeof e||e>=0||"max-downloads-time-period:v8n_negative",({customs_value:e})=>"number"!=typeof e||e>=0||"customs-value:v8n_negative",({item_delivery_type:e,default_weight:t})=>"shipped"!==e||"number"==typeof t||"default-weight:v8n_required",({default_weight:e})=>"number"!=typeof e||e>=0||"default-weight:v8n_negative",({item_delivery_type:e,default_weight_unit:t})=>"shipped"!==e||"string"==typeof t||"default-weight-unit:v8n_required",({item_delivery_type:e,default_length_unit:t})=>"shipped"!==e||"string"==typeof t||"default-length-unit:v8n_required",({item_delivery_type:e,shipping_flat_rate:t})=>"flat_rate"!==e||"number"==typeof t||"shipping-flat-rate:v8n_required",({shipping_flat_rate:e})=>"number"!=typeof e||e>=0||"shipping-flat-rate:v8n_negative",({item_delivery_type:e,shipping_flat_rate_type:t})=>"flat_rate"!==e||"string"==typeof t||"shipping-flat-rate-type:v8n_required",({handling_fee_type:e})=>!!e||"handling-fee-type:v8n_required",({handling_fee_type:e,handling_fee_minimum:t})=>"flat_percent_with_minimum"!==e||"number"==typeof t||"handling-fee-minimum:v8n_required",({handling_fee_minimum:e})=>"number"!=typeof e||e>=0||"handling-fee-minimum:v8n_negative",({handling_fee_type:e,handling_fee_percentage:t})=>"flat_percent_with_minimum"!==e&&"flat_percent"!==e||"number"==typeof t||"handling-fee-percentage:v8n_required",({handling_fee_percentage:e})=>"number"!=typeof e||e>=0||"handling-fee-percentage:v8n_negative",({send_admin_email:e,admin_email:t})=>!e||!!t||"admin-email:v8n_required"]}renderBody(){var e,t,n,r;const a=this.form.item_delivery_type,l=null!==(e=this.form.handling_fee_type)&&void 0!==e?e:"none",s=!this.hiddenSelector.matches("dividers",!0),d=o(p||(p=w`<div class="border-t border-contrast-10 col-span-2"></div>`));return o(c||(c=w` <div class="grid grid-cols-2 gap-m"> <foxy-internal-text-control infer="name" class="col-span-2"></foxy-internal-text-control> <foxy-internal-text-control infer="code" class="col-span-2"></foxy-internal-text-control> ${0} <foxy-internal-select-control infer="handling-fee-type" class="col-span-2" .options="${0}"> </foxy-internal-select-control> ${0} ${0} <foxy-internal-select-control infer="item-delivery-type" class="col-span-2" .options="${0}"> </foxy-internal-select-control> ${0} ${0} ${0} <foxy-internal-text-control infer="discount-name" class="col-span-2"> </foxy-internal-text-control> ${0} ${0} <foxy-internal-async-combo-box-control item-label-path="description" item-value-path="_links.self.href" first="${0}" infer="admin-email-template-uri" class="${0}" @change="${0}"> </foxy-internal-async-combo-box-control> ${0} <foxy-internal-async-combo-box-control item-label-path="description" item-value-path="_links.self.href" first="${0}" infer="customer-email-template-uri" class="col-span-2" @change="${0}"> </foxy-internal-async-combo-box-control> <foxy-internal-async-combo-box-control item-label-path="description" item-value-path="_links.self.href" first="${0}" infer="gift-recipient-email-template-uri" class="col-span-2"> </foxy-internal-async-combo-box-control> ${0} ${0} </div> ${0} `),s?d:"",q.__handlingFeeTypeOptions,"none"===l?"":o(_||(_=w` ${0} ${0} ${0} `),this.__renderHandlingFee(),l.includes("percent")?this.__renderHandlingFeePercentage():"","flat_percent_with_minimum"===l?this.__renderHandlingFeeMinimum():""),s?d:"",q.__itemDeliveryTypeOptions,"downloaded"===a?this.__renderDownloadDeliveryControls():"flat_rate"===a?this.__renderFlatRateControls():"shipped"===a?this.__renderShippingControls():"","shipped"===a||"flat_rate"===a?this.__renderCustomsValue():"",s?d:"",this.form.discount_name?this.__renderDiscountBuilder():"",s?d:"",i(null!==(t=this.emailTemplates)&&void 0!==t?t:void 0),this.form.send_admin_email?"":"col-span-2",(e=>{this.edit({send_admin_email:!!e.detail,admin_email:e.detail?this.form.admin_email:""})}),this.form.send_admin_email?this.__renderAdminEmail():"",i(null!==(n=this.emailTemplates)&&void 0!==n?n:void 0),(e=>this.edit({send_customer_email:!!e.detail})),i(null!==(r=this.emailTemplates)&&void 0!==r?r:void 0),s?d:"",this.data?this.__renderTaxes():"",super.renderBody())}__renderHandlingFee(){return o(f||(f=w` <foxy-internal-number-control infer="handling-fee" class="${0}"> </foxy-internal-number-control> `),"flat_percent"===this.form.handling_fee_type?"":"col-span-2")}__renderHandlingFeePercentage(){return o(u||(u=w` <foxy-internal-number-control infer="handling-fee-percentage"> </foxy-internal-number-control> `))}__renderHandlingFeeMinimum(){return o(h||(h=w` <foxy-internal-number-control infer="handling-fee-minimum"> </foxy-internal-number-control> `))}__renderDownloadDeliveryControls(){return o(y||(y=w` <foxy-internal-integer-control infer="max-downloads-per-customer"> </foxy-internal-integer-control> <foxy-internal-integer-control infer="max-downloads-time-period"> </foxy-internal-integer-control> `))}__renderFlatRateControls(){return o(g||(g=w` <foxy-internal-number-control infer="shipping-flat-rate"> </foxy-internal-number-control> <foxy-internal-select-control infer="shipping-flat-rate-type" .options="${0}"> </foxy-internal-select-control> `),q.__shippingFlatRateTypeOptions)}__renderShippingControls(){return o(x||(x=w` <foxy-internal-integer-control infer="default-weight" class="col-span-2"> </foxy-internal-integer-control> <foxy-internal-select-control infer="default-weight-unit" .options="${0}"> </foxy-internal-select-control> <foxy-internal-select-control infer="default-length-unit" .options="${0}"> </foxy-internal-select-control> `),q.__defaultWeightUnitOptions,q.__defaultLengthUnitOptions)}__renderCustomsValue(){return o(v||(v=w` <foxy-internal-number-control infer="customs-value" class="col-span-2"> </foxy-internal-number-control> `))}__renderDiscountBuilder(){var e,t;const n={name:null!==(e=this.form.discount_name)&&void 0!==e?e:"",type:this.form.discount_type||"quantity_amount",details:null!==(t=this.form.discount_details)&&void 0!==t?t:""};return o(b||(b=w` <foxy-discount-builder infer="discount-builder" class="col-span-2" .parsedValue="${0}" @change="${0}"> </foxy-discount-builder> `),n,(e=>{const t=e.currentTarget;this.edit({discount_name:t.parsedValue.name,discount_type:t.parsedValue.type,discount_details:t.parsedValue.details})}))}__renderAdminEmail(){return o(j||(j=w`<foxy-internal-text-control infer="admin-email"> </foxy-internal-text-control>`))}__renderTaxes(){var e;return o($||($=w` <foxy-internal-item-category-form-taxes-control taxes="${0}" class="col-span-2" infer="taxes"> </foxy-internal-item-category-form-taxes-control> `),i(null!==(e=this.taxes)&&void 0!==e?e:void 0))}}q.__shippingFlatRateTypeOptions=[{label:"option_per_order",value:"per_order"},{label:"option_per_shipment",value:"per_shipment"}],q.__defaultWeightUnitOptions=[{label:"option_lbs",value:"LBS"},{label:"option_kgs",value:"KGS"}],q.__defaultLengthUnitOptions=[{label:"option_in",value:"IN"},{label:"option_cm",value:"CM"}],q.__itemDeliveryTypeOptions=[{label:"option_notshipped",value:"notshipped"},{label:"option_downloaded",value:"downloaded"},{label:"option_flat_rate",value:"flat_rate"},{label:"option_shipped",value:"shipped"},{label:"option_pickup",value:"pickup"}],q.__handlingFeeTypeOptions=[{label:"option_none",value:"none"},{label:"option_flat_per_order",value:"flat_per_order"},{label:"option_flat_per_item",value:"flat_per_item"},{label:"option_flat_percent",value:"flat_percent"},{label:"option_flat_percent_with_minimum",value:"flat_percent_with_minimum"}],customElements.define("foxy-item-category-form",q);export{q as ItemCategoryForm};