@foxy.io/elements 1.25.0 → 1.26.0-beta.2
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.
- package/dist/cdn/foxy-access-recovery-form.js +1 -1
- package/dist/cdn/foxy-address-card.js +1 -1
- package/dist/cdn/foxy-address-form.js +1 -1
- package/dist/cdn/foxy-admin-subscription-card.js +1 -1
- package/dist/cdn/foxy-api-browser.js +1 -1
- package/dist/cdn/foxy-applied-coupon-code-card.js +1 -1
- package/dist/cdn/foxy-applied-coupon-code-form.js +1 -1
- package/dist/cdn/foxy-applied-tax-card.js +1 -1
- package/dist/cdn/foxy-attribute-card.js +1 -1
- package/dist/cdn/foxy-attribute-form.js +1 -1
- package/dist/cdn/foxy-billing-address-card.js +1 -1
- package/dist/cdn/foxy-cancellation-form.js +1 -1
- package/dist/cdn/foxy-cart-card.js +1 -1
- package/dist/cdn/foxy-cart-form.js +1 -1
- package/dist/cdn/foxy-client-card.js +1 -1
- package/dist/cdn/foxy-client-form.js +1 -1
- package/dist/cdn/foxy-collection-page.js +1 -1
- package/dist/cdn/foxy-collection-pages.js +1 -1
- package/dist/cdn/foxy-copy-to-clipboard.js +1 -1
- package/dist/cdn/foxy-coupon-card.js +1 -1
- package/dist/cdn/foxy-coupon-code-form.js +1 -1
- package/dist/cdn/foxy-coupon-codes-form.js +1 -1
- package/dist/cdn/foxy-coupon-detail-card.js +1 -1
- package/dist/cdn/foxy-coupon-form.js +1 -1
- package/dist/cdn/foxy-custom-field-card.js +1 -1
- package/dist/cdn/foxy-custom-field-form.js +1 -1
- package/dist/cdn/foxy-customer-card.js +1 -1
- package/dist/cdn/foxy-customer-form.js +1 -1
- package/dist/cdn/foxy-customer-portal-settings.js +1 -1
- package/dist/cdn/foxy-customer-portal.js +3 -3
- package/dist/cdn/foxy-customer.js +3 -3
- package/dist/cdn/foxy-customers-table.js +1 -1
- package/dist/cdn/foxy-discount-builder.js +1 -1
- package/dist/cdn/foxy-discount-card.js +1 -1
- package/dist/cdn/foxy-discount-detail-card.js +1 -1
- package/dist/cdn/foxy-donation.js +1 -1
- package/dist/cdn/foxy-downloadable-card.js +1 -1
- package/dist/cdn/foxy-downloadable-form.js +1 -1
- package/dist/cdn/foxy-email-template-card.js +1 -1
- package/dist/cdn/foxy-email-template-form.js +1 -1
- package/dist/cdn/foxy-error-entry-card.js +1 -1
- package/dist/cdn/foxy-filter-attribute-card.js +1 -1
- package/dist/cdn/foxy-filter-attribute-form.js +1 -1
- package/dist/cdn/foxy-form-dialog.js +1 -1
- package/dist/cdn/foxy-generate-codes-form.js +1 -1
- package/dist/cdn/foxy-gift-card-card.js +1 -1
- package/dist/cdn/foxy-gift-card-code-form.js +1 -1
- package/dist/cdn/foxy-gift-card-code-log-card.js +1 -1
- package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
- package/dist/cdn/foxy-gift-card-form.js +1 -1
- package/dist/cdn/foxy-i18n-editor.js +2 -2
- package/dist/cdn/foxy-i18n.js +1 -1
- package/dist/cdn/foxy-integration-card.js +1 -1
- package/dist/cdn/foxy-integration-form.js +1 -1
- package/dist/cdn/foxy-item-card.js +1 -1
- package/dist/cdn/foxy-item-category-card.js +1 -1
- package/dist/cdn/foxy-item-category-form.js +1 -1
- package/dist/cdn/foxy-item-form.js +3 -3
- package/dist/cdn/foxy-item-option-card.js +1 -1
- package/dist/cdn/foxy-item-option-form.js +1 -1
- package/dist/cdn/foxy-items-form.js +1 -1
- package/dist/cdn/foxy-native-integration-card.js +1 -1
- package/dist/cdn/foxy-native-integration-form.js +1 -1
- package/dist/cdn/foxy-pagination.js +1 -1
- package/dist/cdn/foxy-passkey-card.js +1 -1
- package/dist/cdn/foxy-passkey-form.js +1 -1
- package/dist/cdn/foxy-payment-card.js +1 -1
- package/dist/cdn/foxy-payment-method-card.js +1 -1
- package/dist/cdn/foxy-payments-api-fraud-protection-card.js +1 -1
- package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-method-card.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-preset-card.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
- package/dist/cdn/foxy-payments-api.js +1 -1
- package/dist/cdn/foxy-query-builder.js +1 -1
- package/dist/cdn/foxy-report-form.js +1 -1
- package/dist/cdn/foxy-reports-table.js +1 -1
- package/dist/cdn/foxy-shipment-card.js +1 -1
- package/dist/cdn/foxy-shipping-method-card.js +1 -1
- package/dist/cdn/foxy-sign-in-form.js +1 -1
- package/dist/cdn/foxy-spinner.js +2 -2
- package/dist/cdn/foxy-store-card.js +1 -1
- package/dist/cdn/foxy-store-form.js +1 -1
- package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
- package/dist/cdn/foxy-subscription-card.js +1 -1
- package/dist/cdn/foxy-subscription-form.js +1 -1
- package/dist/cdn/foxy-subscription-settings-form.js +1 -1
- package/dist/cdn/foxy-subscriptions-table.js +1 -1
- package/dist/cdn/foxy-table.js +1 -1
- package/dist/cdn/foxy-tax-card.js +1 -1
- package/dist/cdn/foxy-tax-form.js +1 -1
- package/dist/cdn/foxy-template-config-form.js +1 -1
- package/dist/cdn/foxy-template-form.js +1 -1
- package/dist/cdn/foxy-template-set-card.js +1 -1
- package/dist/cdn/foxy-template-set-form.js +1 -1
- package/dist/cdn/foxy-transaction-card.js +1 -95
- package/dist/cdn/foxy-transaction.js +1 -1
- package/dist/cdn/foxy-transactions-table.js +4 -4
- package/dist/cdn/foxy-user-card.js +1 -1
- package/dist/cdn/foxy-user-form.js +1 -1
- package/dist/cdn/foxy-users-table.js +1 -1
- package/dist/cdn/foxy-webhook-card.js +1 -1
- package/dist/cdn/foxy-webhook-form.js +1 -1
- package/dist/cdn/foxy-webhook-log-card.js +1 -1
- package/dist/cdn/foxy-webhook-status-card.js +1 -1
- package/dist/cdn/shared-027a9660.js +1 -0
- package/dist/cdn/{shared-dbadd9cf.js → shared-0838fad0.js} +1 -1
- package/dist/cdn/{shared-7deff07c.js → shared-132b2b71.js} +1 -1
- package/dist/cdn/{shared-00c2793e.js → shared-16b391d9.js} +1 -1
- package/dist/cdn/{shared-99c0ae04.js → shared-19732959.js} +1 -1
- package/dist/cdn/{shared-43f449bb.js → shared-1c07b1be.js} +1 -1
- package/dist/cdn/{shared-e39807f8.js → shared-1e3d7d40.js} +1 -1
- package/dist/cdn/{shared-896982f9.js → shared-1f8ae298.js} +1 -1
- package/dist/cdn/{shared-76400719.js → shared-213c60d3.js} +1 -1
- package/dist/cdn/{shared-d21fa1a6.js → shared-2787655b.js} +1 -1
- package/dist/cdn/{shared-a8dc23f1.js → shared-2b68c60f.js} +1 -1
- package/dist/cdn/{shared-c9ba1b64.js → shared-2d40129d.js} +1 -1
- package/dist/cdn/{shared-30d00b64.js → shared-31b7a6ad.js} +1 -1
- package/dist/cdn/{shared-174f37e9.js → shared-360e1c8e.js} +1 -1
- package/dist/cdn/{shared-7e1953f5.js → shared-38499b40.js} +1 -1
- package/dist/cdn/{shared-4462dc70.js → shared-4721aeb1.js} +1 -1
- package/dist/cdn/{shared-7dd17943.js → shared-50a3cb63.js} +1 -1
- package/dist/cdn/{shared-ca4c5f0f.js → shared-51318b75.js} +1 -1
- package/dist/cdn/{shared-9df8f842.js → shared-533c0d6a.js} +1 -1
- package/dist/cdn/{shared-9c08cfab.js → shared-5407617a.js} +1 -1
- package/dist/cdn/{shared-5fa697c4.js → shared-550f9cae.js} +1 -1
- package/dist/cdn/{shared-e91453df.js → shared-55f58244.js} +1 -1
- package/dist/cdn/{shared-2bdc99f4.js → shared-60e167ae.js} +1 -1
- package/dist/cdn/{shared-ac7c5a5e.js → shared-69c67952.js} +3 -3
- package/dist/cdn/{shared-ff8ca16b.js → shared-6d34289d.js} +1 -1
- package/dist/cdn/{shared-8952aeac.js → shared-6da29a49.js} +1 -1
- package/dist/cdn/shared-76812651.js +95 -0
- package/dist/cdn/{shared-e83f2983.js → shared-7d24a3f1.js} +1 -1
- package/dist/cdn/{shared-ad34b6db.js → shared-87f81b69.js} +1 -1
- package/dist/cdn/{shared-029816d7.js → shared-8d51eaa6.js} +1 -1
- package/dist/cdn/{shared-32e736eb.js → shared-8ed04343.js} +1 -1
- package/dist/cdn/{shared-ff9791cf.js → shared-902b0773.js} +1 -1
- package/dist/cdn/{shared-cdd2358f.js → shared-927fa880.js} +1 -1
- package/dist/cdn/{shared-bc0d8d01.js → shared-942ef1fc.js} +2 -2
- package/dist/cdn/{shared-bed7aae1.js → shared-9f039798.js} +1 -1
- package/dist/cdn/{shared-2c8c4b43.js → shared-a26d7f7a.js} +1 -1
- package/dist/cdn/{shared-fc15a882.js → shared-a502026c.js} +1 -1
- package/dist/cdn/{shared-54b0e48f.js → shared-aa4f6a25.js} +1 -1
- package/dist/cdn/{shared-b509bc2c.js → shared-ac62d098.js} +1 -1
- package/dist/cdn/{shared-8201d0b5.js → shared-b06b1473.js} +1 -1
- package/dist/cdn/{shared-b1b8ea67.js → shared-bc113435.js} +1 -1
- package/dist/cdn/{shared-fa4f6cd3.js → shared-be5ef71d.js} +1 -1
- package/dist/cdn/{shared-4c124efc.js → shared-be8c90cc.js} +1 -1
- package/dist/cdn/{shared-4e59fd48.js → shared-c36477d7.js} +1 -1
- package/dist/cdn/{shared-268571df.js → shared-c37707da.js} +1 -1
- package/dist/cdn/{shared-c7b3d22b.js → shared-cadbb2e3.js} +1 -1
- package/dist/cdn/{shared-f9a3d1ff.js → shared-d28b95c6.js} +2 -2
- package/dist/cdn/{shared-4aa4d980.js → shared-d2dc8486.js} +1 -1
- package/dist/cdn/{shared-2f09d4df.js → shared-d7910e16.js} +1 -1
- package/dist/cdn/{shared-6a9ae42e.js → shared-dc8c202b.js} +1 -1
- package/dist/cdn/{shared-02bc0368.js → shared-de59c42c.js} +1 -1
- package/dist/cdn/{shared-ea527e98.js → shared-df8380e1.js} +1 -1
- package/dist/cdn/{shared-8d8bed82.js → shared-e7dffedb.js} +1 -1
- package/dist/cdn/{shared-be7bfbb0.js → shared-eaceb493.js} +1 -1
- package/dist/cdn/{shared-d57fac94.js → shared-ee54f718.js} +1 -1
- package/dist/cdn/{shared-2b27e2e7.js → shared-f1ee9bf9.js} +1 -1
- package/dist/cdn/shared-f2eb454c.js +1 -0
- package/dist/cdn/{shared-20ba4cdc.js → shared-f7365ea5.js} +1 -1
- package/dist/cdn/translations/cart-card/en.json +1 -3
- package/dist/cdn/translations/customer/en.json +6 -6
- package/dist/cdn/translations/customer-portal/en.json +30 -6
- package/dist/cdn/translations/store-form/en.json +1 -1
- package/dist/cdn/translations/subscription-card/en.json +2 -0
- package/dist/cdn/translations/subscription-form/en.json +6 -6
- package/dist/elements/public/AdminSubscriptionCard/AdminSubscriptionCard.d.ts +3 -0
- package/dist/elements/public/AdminSubscriptionCard/AdminSubscriptionCard.js +36 -3
- package/dist/elements/public/AdminSubscriptionCard/AdminSubscriptionCard.js.map +1 -1
- package/dist/elements/public/AdminSubscriptionCard/types.d.ts +5 -3
- package/dist/elements/public/AdminSubscriptionCard/types.js.map +1 -1
- package/dist/elements/public/CartCard/CartCard.d.ts +0 -1
- package/dist/elements/public/CartCard/CartCard.js +13 -10
- package/dist/elements/public/CartCard/CartCard.js.map +1 -1
- package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedOutView.js +0 -4
- package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedOutView.js.map +1 -1
- package/dist/elements/public/PaymentsApi/api/composers/available_fraud_protections.js +1 -1
- package/dist/elements/public/PaymentsApi/api/composers/available_fraud_protections.js.map +1 -1
- package/dist/elements/public/SubscriptionCard/SubscriptionCard.js +9 -1
- package/dist/elements/public/SubscriptionCard/SubscriptionCard.js.map +1 -1
- package/dist/elements/public/SubscriptionCard/index.d.ts +1 -0
- package/dist/elements/public/SubscriptionCard/index.js +1 -0
- package/dist/elements/public/SubscriptionCard/index.js.map +1 -1
- package/dist/elements/public/TemplateConfigForm/TemplateConfigForm.d.ts +5 -0
- package/dist/elements/public/TemplateConfigForm/TemplateConfigForm.js +13 -0
- package/dist/elements/public/TemplateConfigForm/TemplateConfigForm.js.map +1 -1
- package/dist/elements/public/TemplateConfigForm/types.d.ts +2 -0
- package/dist/elements/public/TemplateConfigForm/types.js.map +1 -1
- package/dist/mixins/themeable.js +16 -0
- package/dist/mixins/themeable.js.map +1 -1
- package/package.json +1 -1
- package/dist/cdn/shared-2cf08dd4.js +0 -1
- package/dist/cdn/shared-4c650e5c.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{I as t}from"./shared-
|
|
1
|
+
import{I as t}from"./shared-a502026c.js";import"./shared-cadbb2e3.js";import"./shared-8d51eaa6.js";import{h as e}from"./shared-7f33a83a.js";import"./shared-f7365ea5.js";import{I as r}from"./shared-6d34289d.js";import"./shared-942ef1fc.js";import{_ as s,B as a}from"./shared-1522d76f.js";import{a as i}from"./shared-550f9cae.js";import{d as o,e as n}from"./shared-293771ba.js";import"./shared-f9180815.js";import"./shared-b23c903e.js";import"./shared-d3bf9ac0.js";import"./shared-30cbf0a6.js";import"./shared-6a7f96c4.js";import"./shared-07e9d1fb.js";import"./shared-343d1fd7.js";import"./shared-3ab0306f.js";import"./shared-eb116b3e.js";import"./shared-d28b95c6.js";import"./shared-1c07b1be.js";import"./shared-61ade33e.js";import"./shared-2d40129d.js";import"./shared-ac62d098.js";import"./shared-9f039798.js";import"./shared-2787655b.js";import"./shared-c37707da.js";import"./shared-4e709717.js";import"./foxy-spinner.js";import"./shared-902b0773.js";import"./shared-31b7a6ad.js";import"./shared-bb05cfed.js";import"./shared-79d0699c.js";import"./shared-d519a301.js";let d,l,m=t=>t;customElements.define("foxy-internal-filter-attribute-form-action-control",class extends t{renderControl(){const t=this.nucleon,r=null==t?void 0:t.in({idle:{snapshot:"dirty"}}),s=!!(null==t?void 0:t.data);return e(d||(d=m` <div class="grid grid-cols-2 gap-m"> ${0} <vaadin-button theme="${0}" class="${0}" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="" key="${0}"> </foxy-i18n> </vaadin-button> </div> `),s&&r?e(l||(l=m` <vaadin-button theme="contrast" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="" key="reset"></foxy-i18n> </vaadin-button> `),this.disabled,(()=>null==t?void 0:t.undo())):"",s?r?"secondary":"error":"success",s&&r?"":"col-span-2",this.disabled,(()=>!s||r?null==t?void 0:t.submit():null==t?void 0:t.delete()),s?r?"update":"delete":"create")}});let u,h=t=>t;const c=i(r,"filter-attribute-form");class f extends c{constructor(){super(...arguments),this.pathname=null,this.options=[],this.__filterNameGetValue=()=>{const t=this.constructor;return this.__getValueParam(t.filterNameKey)},this.__filterNameSetValue=t=>{const e=this.constructor;this.__setValueParam(e.filterNameKey,t)}}static get properties(){return s(s({},super.properties),{},{pathname:{},options:{type:Array}})}get hiddenSelector(){const t=[],e=this.constructor,r=this.__getValueParam(e.filterQueryKey),s=!!this.data;return s||t.push("filter-name"),r||s||t.push("action"),new a(`${t.join(" ")} ${super.hiddenSelector}`.trim())}renderBody(){const t=this.constructor;return e(u||(u=h` <foxy-query-builder infer="filter-query" .options="${0}" .value="${0}" @change="${0}"> </foxy-query-builder> <foxy-internal-text-control infer="filter-name" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-filter-attribute-form-action-control infer="action"> </foxy-internal-filter-attribute-form-action-control> `),this.options,this.__getValueParam(t.filterQueryKey),this.__handleFilterQueryChange,this.__filterNameGetValue,this.__filterNameSetValue)}updated(t){var e;if(super.updated(t),"string"==typeof this.form.value){const t=new URL(o(this.form.value),"https://example.com");t.pathname=null!==(e=this.pathname)&&void 0!==e?e:"";const r=n(t.toString().substring(t.origin.length));r!==this.form.value&&this.edit({value:r})}}submit(){const t=this.constructor;this.edit({visibility:t.attributeVisibility,name:t.attributeName}),super.submit()}__getValueParam(t){var e,r;try{return null!==(r=new URL(o(null!==(e=this.form.value)&&void 0!==e?e:""),"https://example.com").searchParams.get(t))&&void 0!==r?r:""}catch(t){return""}}__setValueParam(t,e){var r;try{const s=new URL(o(null!==(r=this.form.value)&&void 0!==r?r:""),"https://example.com");s.searchParams.set(t,e),this.edit({value:n(s.toString().substring(s.origin.length))})}catch(t){}}__handleFilterQueryChange(t){var e;const r=this.constructor,s=t.currentTarget;this.__setValueParam(r.filterQueryKey,null!==(e=s.value)&&void 0!==e?e:"")}}f.attributeVisibility="restricted",f.filterQueryKey="filter_query",f.attributeName="foxy-admin-bookmark",f.filterNameKey="filter_name",customElements.define("foxy-filter-attribute-form",f);export{f as FilterAttributeForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-
|
|
1
|
+
import"./shared-8d51eaa6.js";import"./shared-2787655b.js";import{_ as e}from"./shared-1522d76f.js";import{h as t}from"./shared-7f33a83a.js";import{A as o}from"./shared-07e9d1fb.js";import{D as r}from"./shared-c37707da.js";import{F as n}from"./shared-343d1fd7.js";import{U as s}from"./shared-3ab0306f.js";import{s as i}from"./shared-11c2efc8.js";import"./shared-550f9cae.js";import"./shared-30cbf0a6.js";import"./shared-cadbb2e3.js";import"./shared-d28b95c6.js";import"./shared-1c07b1be.js";import"./shared-61ade33e.js";import"./shared-b23c903e.js";import"./shared-d3bf9ac0.js";import"./shared-4e709717.js";let a,d,p=e=>e;class l extends r{constructor(){super(...arguments),this.keepOpenOnDelete=!1,this.keepOpenOnPost=!1,this.related=[],this.parent="",this.props={},this.group="",this.href="",this.__form=null,this.__renderForm=null,this.__handleFetch=e=>{e instanceof n&&(e.stopImmediatePropagation(),e.preventDefault(),e.respondWith(new o(this).fetch(e.request)))},this.__handleUpdate=e=>{var t;if(!(e instanceof s))return;const o=null===(t=e.detail)||void 0===t?void 0:t.result,r=s.UpdateResult;this.keepOpenOnPost||o!==r.ResourceCreated||(this.open=!1),this.keepOpenOnDelete||o!==r.ResourceDeleted||(this.open=!1);const n=e.currentTarget;this.parent!==n.parent&&(this.parent=n.parent),this.href!==n.href&&(this.href=n.href),this.closable=!n.in("busy"),this.editable=n.in({idle:{template:{clean:"valid"}}})||n.in({idle:{template:{dirty:"valid"}}})||n.in({idle:{snapshot:{dirty:"valid"}}})}}static get properties(){return e(e({},super.properties),{},{href:{type:String},form:{type:String,noAccessor:!0},group:{type:String},props:{type:Object},parent:{type:String},related:{type:Array},keepOpenOnPost:{type:Boolean,attribute:"keep-open-on-post"},keepOpenOnDelete:{type:Boolean,attribute:"keep-open-on-delete"}})}get form(){return this.__form}set form(e){this.__form=e,this.__renderForm="string"==typeof e?new Function("options",`return options.html\`\n <${e}\n id="form"\n ns="\${options.dialog.ns} \${customElements.get('${e}')?.defaultNS ?? ''}"\n href=\${options.dialog.href}\n lang=\${options.dialog.lang}\n group=\${options.dialog.group}\n parent=\${options.dialog.parent}\n disabledcontrols=\${options.dialog.disabledControls.toString()}\n readonlycontrols=\${options.dialog.readonlyControls.toString()}\n hiddencontrols=\${options.dialog.hiddenControls.toString()}\n ?disabled=\${options.dialog.disabled}\n ?readonly=\${options.dialog.readonly}\n ?hidden=\${options.dialog.hidden}\n .templates=\${options.dialog.templates}\n .related=\${options.dialog.related}\n ...=\${options.spread(options.dialog.props)}\n @fetch=\${options.handleFetch}\n @update=\${options.handleUpdate}\n >\n </${e}>\``):e,this.requestUpdate()}render(){return t(a||(a=p` <foxy-internal-confirm-dialog message="undo_message" confirm="undo_confirm" cancel="undo_cancel" header="undo_header" theme="error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> ${0} `),this.lang,this.ns,(e=>!e.detail.cancelled&&super.hide(!0)),super.render((()=>{var e;return t(d||(d=p`${0}`),null===(e=this.__renderForm)||void 0===e?void 0:e.call(this,{handleUpdate:this.__handleUpdate,handleFetch:this.__handleFetch,spread:i,dialog:this,html:t}))})))}async hide(e=!1){if(!e)return super.hide(e);this.renderRoot.querySelector("#confirm").show()}async save(){this.renderRoot.querySelector("#form").submit()}}customElements.define("foxy-form-dialog",l);export{l as FormDialog};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-
|
|
1
|
+
import"./shared-df8380e1.js";import"./shared-2d40129d.js";import"./shared-19732959.js";import"./shared-cadbb2e3.js";import"./shared-f9180815.js";import"./foxy-spinner.js";import"./shared-8d51eaa6.js";import{h as e}from"./shared-7f33a83a.js";import{C as t}from"./shared-b23c903e.js";import{N as r}from"./shared-6a7f96c4.js";import{T as s,a}from"./shared-550f9cae.js";import{c as i}from"./shared-4e709717.js";import"./shared-ac62d098.js";import"./shared-1c07b1be.js";import"./shared-d28b95c6.js";import"./shared-61ade33e.js";import"./shared-902b0773.js";import"./shared-31b7a6ad.js";import"./shared-1522d76f.js";import"./shared-30cbf0a6.js";import"./shared-343d1fd7.js";import"./shared-d3bf9ac0.js";import"./shared-07e9d1fb.js";import"./shared-3ab0306f.js";import"./shared-eb116b3e.js";let n,d,l,o,c,h,m=e=>e;const u=t(s(a(r,"generate-codes-form")));class f extends u{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",({prefix:e})=>!(null==e?void 0:e.includes(" "))||"prefix_has_spaces"]}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"}),u="transition-opacity duration-500",f="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,[u]:!0,[f]: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,[u]:!0,[f]:!c}),a,d,i({"absolute inset-0 flex":!0,[u]:!0,[f]:!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",f);export{f as GenerateCodesForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-f9180815.js";import"./foxy-spinner.js";import"./shared-
|
|
1
|
+
import"./shared-f9180815.js";import"./foxy-spinner.js";import"./shared-8d51eaa6.js";import{h as t}from"./shared-7f33a83a.js";import{C as e}from"./shared-b23c903e.js";import{N as s}from"./shared-6a7f96c4.js";import{T as i,a as r}from"./shared-550f9cae.js";import{c as a}from"./shared-4e709717.js";import"./shared-902b0773.js";import"./shared-1c07b1be.js";import"./shared-31b7a6ad.js";import"./shared-1522d76f.js";import"./shared-30cbf0a6.js";import"./shared-343d1fd7.js";import"./shared-d3bf9ac0.js";import"./shared-07e9d1fb.js";import"./shared-3ab0306f.js";import"./shared-eb116b3e.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-s 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`​`)),d=null!==(r=null===(i=this.data)||void 0===i?void 0:i.currency_code)&&void 0!==r?r:t(n||(n=p`​`));return t(l||(l=p` <div data-testid="title"> ${0} <div class="flex items-center justify-between"> <div class="font-medium 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-secondary" 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-
|
|
1
|
+
import"./shared-df8380e1.js";import"./shared-2d40129d.js";import"./shared-69c67952.js";import"./shared-cadbb2e3.js";import"./shared-0838fad0.js";import"./shared-2787655b.js";import"./shared-f9180815.js";import"./foxy-gift-card-code-log-card.js";import"./foxy-spinner.js";import"./shared-8d51eaa6.js";import{I as e}from"./shared-a502026c.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-b23c903e.js";import{N as a}from"./shared-6a7f96c4.js";import"./shared-902b0773.js";import"./shared-d28b95c6.js";import"./shared-5407617a.js";import{T as s,S as d,a as n}from"./shared-550f9cae.js";import{c as o}from"./shared-4e709717.js";import"./shared-1e3d7d40.js";import"./shared-c37707da.js";import"./shared-be8c90cc.js";import"./shared-19732959.js";import"./shared-87f81b69.js";import"./shared-c36477d7.js";import"./shared-ac62d098.js";import{M as l}from"./shared-60e167ae.js";import"./shared-1c07b1be.js";import"./shared-61ade33e.js";import"./shared-a26d7f7a.js";import"./foxy-collection-page.js";import"./shared-1522d76f.js";import"./shared-343d1fd7.js";import"./shared-d519a301.js";import"./shared-11c2efc8.js";import"./shared-31b7a6ad.js";import"./shared-30cbf0a6.js";import"./shared-07e9d1fb.js";import"./shared-3ab0306f.js";import"./shared-eb116b3e.js";import"./foxy-form-dialog.js";import"./foxy-pagination.js";import"./shared-f2eb454c.js";import"./shared-55f58244.js";import"./foxy-nucleon-element.js";import"./shared-027a9660.js";import"./shared-533c0d6a.js";import"./shared-f1ee9bf9.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,v,b,y,$=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-metadata":l}}static get v8n(){return[({code:e})=>!!e||"code_required",({code:e})=>!e||e.length<=50||"code_too_long",({code:e})=>!(null==e?void 0:e.includes(" "))||"code_has_spaces",({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(v||(v=$` <div> ${0} <x-metadata data-testid="timestamps" .items="${0}"> </x-metadata> ${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(b||(b=$` <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(y||(y=$` <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="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-
|
|
1
|
+
import"./shared-f2eb454c.js";import"./foxy-nucleon-element.js";import"./shared-8d51eaa6.js";import{a as e}from"./shared-550f9cae.js";import{I as t}from"./shared-55f58244.js";import{i as r}from"./shared-d3bf9ac0.js";import{c as s}from"./shared-4e709717.js";import{h as o}from"./shared-7f33a83a.js";import"./foxy-spinner.js";import"./shared-902b0773.js";import"./shared-1c07b1be.js";import"./shared-31b7a6ad.js";import"./shared-1522d76f.js";import"./shared-30cbf0a6.js";import"./shared-343d1fd7.js";import"./shared-6a7f96c4.js";import"./shared-07e9d1fb.js";import"./shared-3ab0306f.js";import"./shared-eb116b3e.js";let a,i=e=>e;const d=e(t,"gift-card-code-log-card");class n extends d{constructor(){super(...arguments),this.__giftCardLoaderId="giftCardLoader",this.__storeLoaderId="storeLoader"}renderBody(){var e,t,d,n;const f=this.data,l=null!==(e=null==f?void 0:f.balance_adjustment)&&void 0!==e?e:0,c="number"==typeof(null==f?void 0:f.transaction_id),_=c?"title_used":"title_updated_via_api",u=c?"subtitle_transaction":"subtitle_no_transaction",p={transaction_id:null==f?void 0:f.transaction_id},h={date_created:null==f?void 0:f.date_created,month:"short"},y={currencyDisplay:(null===(t=this.__store)||void 0===t?void 0:t.use_international_currency_symbol)?"code":"symbol",signDisplay:"exceptZero",amount:`${l} ${null===(d=this.__giftCard)||void 0===d?void 0:d.currency_code}`};return o(a||(a=i` <foxy-nucleon infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> <foxy-nucleon infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> <div class="leading-s"> <div class="flex justify-between items-center"> <span class="text-body font-medium truncate"> <foxy-i18n infer="" key="${0}"></foxy-i18n> </span> <span class="text-s text-tertiary flex-shrink-0"> <foxy-i18n infer="" key="date" .options="${0}"></foxy-i18n> </span> </div> <div class="text-s text-secondary truncate"> <foxy-i18n infer="" key="${0}" .options="${0}"></foxy-i18n> <span class="text-tertiary">•</span> <span class="${0}"> <foxy-i18n infer="" key="adjustment" .options="${0}"></foxy-i18n> </span> </div> </div> `),r(null===(n=null==f?void 0:f._links)||void 0===n?void 0:n["fx:gift_card"].href),this.__giftCardLoaderId,(()=>this.requestUpdate()),r(null==f?void 0:f._links["fx:store"].href),this.__storeLoaderId,(()=>this.requestUpdate()),_,h,u,p,s({"text-tertiary":0===l,"text-success":l>0,"text-error":l<0}),y)}get isBodyReady(){return super.isBodyReady&&!!this.__giftCard&&!!this.__store}get __giftCardLoader(){return this.renderRoot.querySelector(`#${this.__giftCardLoaderId}`)}get __storeLoader(){return this.renderRoot.querySelector(`#${this.__storeLoaderId}`)}get __giftCard(){var e;return null===(e=this.__giftCardLoader)||void 0===e?void 0:e.data}get __store(){var e;return null===(e=this.__storeLoader)||void 0===e?void 0:e.data}}customElements.define("foxy-gift-card-code-log-card",n);export{n as GiftCardCodeLogCard};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-
|
|
1
|
+
import"./shared-df8380e1.js";import"./shared-2d40129d.js";import"./shared-19732959.js";import"./shared-cadbb2e3.js";import"./shared-31b7a6ad.js";import"./shared-902b0773.js";import"./shared-f9180815.js";import"./foxy-spinner.js";import"./shared-8d51eaa6.js";import{h as e}from"./shared-7f33a83a.js";import{C as t}from"./shared-b23c903e.js";import{E as s}from"./shared-be5ef71d.js";import{G as r}from"./shared-2b68c60f.js";import{N as i}from"./shared-6a7f96c4.js";import{T as a,S as n,a as o}from"./shared-550f9cae.js";import{c as d}from"./shared-4e709717.js";import"./shared-ac62d098.js";import"./shared-1c07b1be.js";import"./shared-d28b95c6.js";import"./shared-61ade33e.js";import"./shared-1522d76f.js";import"./shared-30cbf0a6.js";import"./shared-343d1fd7.js";import"./shared-d3bf9ac0.js";import"./shared-f3b35364.js";import"./shared-d519a301.js";import"./shared-07e9d1fb.js";import"./shared-3ab0306f.js";import"./shared-eb116b3e.js";let l,c,m,h,f,u=e=>e;const p=t(a(n(o(i,"gift-card-codes-form"))));class b 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=e=>e.split(/\s/).map((e=>e.trim())).filter((e=>e.length>0)),n=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),n,(e=>{const t=e.currentTarget.items.reduce(((e,t)=>[...e,...a(t.value)]),[]),s=new Set([...i,...t]);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:"",n=a(i);this.edit({gift_card_codes:Array.from(new Set([...s,...n]))})}),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 g,x,y=e=>e;const v=o(a(i));customElements.define("foxy-gift-card-codes-form",b),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(g||(g=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{b as GiftCardCodesForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-c9ba1b64.js";import"./shared-4e59fd48.js";import"./shared-c7b3d22b.js";import"./shared-30d00b64.js";import"./shared-ff9791cf.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-bc0d8d01.js";import"./foxy-pagination.js";import"./foxy-form-dialog.js";import"./foxy-spinner.js";import"./foxy-table.js";import"./shared-029816d7.js";import"./shared-4aa4d980.js";import{I as t}from"./shared-bed7aae1.js";import"./shared-7e1953f5.js";import"./shared-20ba4cdc.js";import{R as i,S as r,T as s,a}from"./shared-5fa697c4.js";import{h as o}from"./shared-7f33a83a.js";import{_ as n}from"./shared-1522d76f.js";import{C as l}from"./shared-b1b8ea67.js";import{C as d}from"./shared-b23c903e.js";import{N as c}from"./shared-6a7f96c4.js";import{i as m}from"./shared-d3bf9ac0.js";import{c as f}from"./shared-4e709717.js";import{E as g}from"./shared-fa4f6cd3.js";import{F as h}from"./shared-e39807f8.js";import{G as u}from"./shared-a8dc23f1.js";import{M as p}from"./shared-2bdc99f4.js";import"./shared-f9a3d1ff.js";import"./shared-43f449bb.js";import"./shared-b509bc2c.js";import"./shared-61ade33e.js";import"./shared-2c8c4b43.js";import"./shared-ea527e98.js";import"./shared-99c0ae04.js";import"./shared-f9180815.js";import"./shared-30cbf0a6.js";import"./shared-343d1fd7.js";import"./shared-07e9d1fb.js";import"./shared-3ab0306f.js";import"./shared-eb116b3e.js";import"./shared-f3b35364.js";import"./shared-d519a301.js";import"./shared-ac7c5a5e.js";import"./shared-4c124efc.js";import"./shared-2b27e2e7.js";import"./shared-dbadd9cf.js";import"./foxy-collection-page.js";import"./shared-11c2efc8.js";import"./shared-fc15a882.js";import"./shared-d21fa1a6.js";import"./shared-268571df.js";import"./foxy-gift-card-code-log-card.js";import"./shared-2cf08dd4.js";import"./shared-e91453df.js";import"./foxy-nucleon-element.js";import"./foxy-item-card.js";import"./shared-4c650e5c.js";import"./shared-9c08cfab.js";import"./shared-ad34b6db.js";import"./shared-9df8f842.js";import"./shared-bb05cfed.js";import"./shared-79d0699c.js";import"./shared-00c2793e.js";import"./shared-4462dc70.js";let y,v,x=e=>e;const b=i(t);customElements.define("foxy-internal-gift-card-form-provisioning-control",class extends b{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):"")}});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>`))})),f({"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,B,G,P,L,Q,U,I,J,M,W,A,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(B||(B=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(G||(G=re`<foxy-i18n lang="${0}" key="date_created" ns="${0}"></foxy-i18n>`),e.lang,e.ns),cell:e=>o(P||(P=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":h,"x-metadata":p,"x-editable-list":g,"x-group":u}}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(M||(M=re` <div class="grid grid-cols-1 sm-grid-cols-3 md-grid-cols-4 gap-m"> ${0} ${0} ${0} </div> `),r?"":o(W||(W=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(),f({"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(A||(A=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:f}=this,g=!this.in("idle")||a.matches("codes",!0),h=this.__codesTableQuery,u=new URL(c._links["fx:gift_card_codes"].href);new URLSearchParams(null!=h?h:"").forEach(((e,t)=>u.searchParams.set(t,e))),u.searchParams.set("limit","5");const p=null===h?"filter":"clear_filters",y="icons:"+(null===h?"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="my-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" 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,f,[u.toString()],a.zoom("codes:form").toString(),n.zoom("codes:form").toString(),l.zoom("codes:form").toString(),u.toString(),d,m,f,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,f,this.renderTemplateOrSlot("codes:before"),m,f,g,(e=>{const t=this.renderRoot.querySelector("#generate-codes-dialog"),i=e.currentTarget;null==t||t.show(i)}),m,f,g,(e=>{const t=this.renderRoot.querySelector("#import-dialog"),i=e.currentTarget;null==t||t.show(i)}),m,f,null===h?"tertiary":"",g,(()=>this.__codesTableQuery=null===h?"":null),m,p,f,y,m,f,null!==(i=null===(t=customElements.get("foxy-query-builder"))||void 0===t?void 0:t.defaultNS)&&void 0!==i?i:"",g,null===h,ae.__codesQueryOptions,null!=h?h:"",(e=>{const t=e.currentTarget;this.__codesTableQuery=t.value}),u.toString(),m,f,null!==(s=null===(r=customElements.get("foxy-pagination"))||void 0===r?void 0:r.defaultNS)&&void 0!==s?s:"",g,d,m,f,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})})))),f({"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 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-metadata data-testid="timestamps" .items="${0}"> </x-metadata> ${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="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-2d40129d.js";import"./shared-c36477d7.js";import"./shared-cadbb2e3.js";import"./shared-31b7a6ad.js";import"./shared-902b0773.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-942ef1fc.js";import"./foxy-pagination.js";import"./foxy-form-dialog.js";import"./foxy-spinner.js";import"./foxy-table.js";import"./shared-8d51eaa6.js";import"./shared-d2dc8486.js";import{I as t}from"./shared-9f039798.js";import"./shared-38499b40.js";import"./shared-f7365ea5.js";import{R as i,S as r,T as s,a}from"./shared-550f9cae.js";import{h as o}from"./shared-7f33a83a.js";import{_ as n}from"./shared-1522d76f.js";import{C as l}from"./shared-bc113435.js";import{C as d}from"./shared-b23c903e.js";import{N as c}from"./shared-6a7f96c4.js";import{i as m}from"./shared-d3bf9ac0.js";import{c as g}from"./shared-4e709717.js";import{E as f}from"./shared-be5ef71d.js";import{F as h}from"./shared-1e3d7d40.js";import{G as u}from"./shared-2b68c60f.js";import{M as p}from"./shared-60e167ae.js";import"./shared-d28b95c6.js";import"./shared-1c07b1be.js";import"./shared-ac62d098.js";import"./shared-61ade33e.js";import"./shared-a26d7f7a.js";import"./shared-df8380e1.js";import"./shared-19732959.js";import"./shared-f9180815.js";import"./shared-30cbf0a6.js";import"./shared-343d1fd7.js";import"./shared-07e9d1fb.js";import"./shared-3ab0306f.js";import"./shared-eb116b3e.js";import"./shared-f3b35364.js";import"./shared-d519a301.js";import"./shared-69c67952.js";import"./shared-be8c90cc.js";import"./shared-f1ee9bf9.js";import"./shared-0838fad0.js";import"./foxy-collection-page.js";import"./shared-11c2efc8.js";import"./shared-a502026c.js";import"./shared-2787655b.js";import"./shared-c37707da.js";import"./foxy-gift-card-code-log-card.js";import"./shared-f2eb454c.js";import"./shared-55f58244.js";import"./foxy-nucleon-element.js";import"./foxy-item-card.js";import"./shared-027a9660.js";import"./shared-5407617a.js";import"./shared-87f81b69.js";import"./shared-533c0d6a.js";import"./shared-bb05cfed.js";import"./shared-79d0699c.js";import"./shared-16b391d9.js";import"./shared-4721aeb1.js";let y,v,x=e=>e;const _=i(t);customElements.define("foxy-internal-gift-card-form-provisioning-control",class extends _{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):"")}});let b,$=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(b||(b=$` <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,B,G,P,L,Q,U,I,J,M,W,A,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(B||(B=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(G||(G=re`<foxy-i18n lang="${0}" key="date_created" ns="${0}"></foxy-i18n>`),e.lang,e.ns),cell:e=>o(P||(P=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":h,"x-metadata":p,"x-editable-list":f,"x-group":u}}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(M||(M=re` <div class="grid grid-cols-1 sm-grid-cols-3 md-grid-cols-4 gap-m"> ${0} ${0} ${0} </div> `),r?"":o(W||(W=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(A||(A=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,f=!this.in("idle")||a.matches("codes",!0),h=this.__codesTableQuery,u=new URL(c._links["fx:gift_card_codes"].href);new URLSearchParams(null!=h?h:"").forEach(((e,t)=>u.searchParams.set(t,e))),u.searchParams.set("limit","5");const p=null===h?"filter":"clear_filters",y="icons:"+(null===h?"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="my-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" 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,[u.toString()],a.zoom("codes:form").toString(),n.zoom("codes:form").toString(),l.zoom("codes:form").toString(),u.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,f,(e=>{const t=this.renderRoot.querySelector("#generate-codes-dialog"),i=e.currentTarget;null==t||t.show(i)}),m,g,f,(e=>{const t=this.renderRoot.querySelector("#import-dialog"),i=e.currentTarget;null==t||t.show(i)}),m,g,null===h?"tertiary":"",f,(()=>this.__codesTableQuery=null===h?"":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:"",f,null===h,ae.__codesQueryOptions,null!=h?h:"",(e=>{const t=e.currentTarget;this.__codesTableQuery=t.value}),u.toString(),m,g,null!==(s=null===(r=customElements.get("foxy-pagination"))||void 0===r?void 0:r.defaultNS)&&void 0!==s?s:"",f,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 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-metadata data-testid="timestamps" .items="${0}"> </x-metadata> ${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="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,2 +1,2 @@
|
|
|
1
|
-
import"./shared-
|
|
2
|
-
</textarea> </div> ${0} </div> </label> <div class="${0}"> <vaadin-button theme="primary success small" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="" key="undo_button"></foxy-i18n> </vaadin-button> <vaadin-button theme="primary success small" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="" key="save_button"></foxy-i18n> </vaadin-button> </div> </div> `),d({"transition-all rounded ring-1 leading-s text-secondary":!0,"ring-contrast-10":!v&&(!c||
|
|
1
|
+
import"./shared-927fa880.js";import"./foxy-nucleon-element.js";import"./foxy-spinner.js";import"./shared-8d51eaa6.js";import"./shared-cadbb2e3.js";import"./shared-31b7a6ad.js";import"./shared-902b0773.js";import{_ as e}from"./shared-1522d76f.js";import{C as t}from"./shared-b23c903e.js";import{R as s,a as r,T as i}from"./shared-550f9cae.js";import{N as a}from"./shared-6a7f96c4.js";import{c as n,h as o}from"./shared-7f33a83a.js";import{c as d}from"./shared-4e709717.js";import{i as l}from"./shared-d3bf9ac0.js";import{r as c}from"./shared-d519a301.js";import"./shared-d28b95c6.js";import"./shared-1c07b1be.js";import"./shared-ac62d098.js";import"./shared-f1ee9bf9.js";import"./shared-a26d7f7a.js";import"./shared-07e9d1fb.js";import"./shared-343d1fd7.js";import"./shared-3ab0306f.js";import"./shared-30cbf0a6.js";import"./shared-eb116b3e.js";import"./shared-61ade33e.js";let u,h,m,p=e=>e;const f=s(r(t(i(a))));customElements.define("foxy-internal-i18n-editor-entry",class extends f{constructor(){super(...arguments),this.defaultValue=null,this.gateway=null,this.code=null}static get properties(){return e(e({},super.properties),{},{defaultValue:{attribute:"default-value"},gateway:{},code:{}})}static get styles(){return[super.styles,n(u||(u=p`:host{--button-height:1.703rem}textarea{-webkit-text-fill-color:var(--lumo-body-text-color)}vaadin-button{height:var(--button-height);--lumo-primary-color-50pct:var(--lumo-success-contrast-color)}.h-bottom-bar{height:calc(var(--button-height) + (var(--lumo-space-xs) * 2))}.h-0{height:0}`))]}render(){var e,t,s;const r=null!==(e=this.form.custom_value)&&void 0!==e?e:this.defaultValue,i=this.in({idle:"snapshot"}),a=this.in({idle:"template"}),n=this.in({idle:{snapshot:"dirty"}}),l=this.in({idle:{template:"dirty"}}),c=n||l,u=!this.in("idle")||this.disabled,f=this.readonly,b=!u&&!f,v=this.in("fail");return o(h||(h=p` <div class="${0}"> <label class="group flex flex-col sm-flex-row"> <div class="flex-1 p-xs break-all" style="max-width:20rem"> <span class="inline-block rounded text-s p-xs font-medium"> ${0} </span> </div> <div class="flex-1 flex"> <div class="relative flex-1"> <div class="opacity-0 text-s p-s font-medium break-all"> <span class="whitespace-pre-wrap">${0}​</span> </div> <textarea class="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" @input="${0}">
|
|
2
|
+
</textarea> </div> ${0} </div> </label> <div class="${0}"> <vaadin-button theme="primary success small" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="" key="undo_button"></foxy-i18n> </vaadin-button> <vaadin-button theme="primary success small" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="" key="save_button"></foxy-i18n> </vaadin-button> </div> </div> `),d({"transition-all rounded ring-1 leading-s text-secondary":!0,"ring-contrast-10":!v&&(!c||f),"ring-success":!v&&c&&!f,"ring-error":v,"opacity-75":u,"hover-ring-contrast-20":!v&&!c&&b,"hover-text-body":!v&&b}),null!==(s=null===(t=this.data)||void 0===t?void 0:t.code)&&void 0!==s?s:this.code,r,d({"absolute inset-0 p-s resize-none":!0,"sm-border-l sm-border-transparent":!0,"break-all text-body transition-colors text-s font-medium":!0,"rounded-b sm-rounded-bl-none sm-rounded-tr":a&&!c,"rounded-bl sm-rounded-bl-none":i&&!c,"sm-rounded-tr":a&&c,"sm-border-contrast-10":f,"bg-contrast-10":!f,"group-hover-bg-contrast-20":b,"focus-outline-none focus-ring-2 focus-ring-inset focus-ring-primary-50":!0}),r,u,f,(e=>{const t=e.currentTarget;this.gateway&&this.edit({gateway:this.gateway}),this.code&&this.edit({code:this.code}),this.edit({custom_value:t.value})}),i?o(m||(m=p` <button class="${0}" title="${0}" theme="contrast icon" ?disabled="${0}" @click="${0}"> <iron-icon class="icon-inline text-xl" icon="icons:restore"></iron-icon> </button> `),d({"flex-shrink-0 w-m flex items-center justify-center":!0,"transition-colors text-tertiary ring-inset":!0,"rounded-br sm-rounded-tr":!c,"sm-rounded-tr":c,"bg-contrast-10":!f,"cursor-default":!b,"cursor-pointer":b,"group-hover-bg-contrast-20 hover-text-body":b,"focus-outline-none focus-ring-2 focus-ring-primary-50":!0}),this.t("delete_button_title"),u||f,(()=>this.delete())):"",d({"transition-all bg-success rounded-b overflow-hidden":!0,"flex items-center justify-end gap-xs px-xs":!0,"h-bottom-bar":c&&!f,"h-0":!c||f}),!b,(()=>this.undo()),!b,(()=>this.submit()))}});let b,v,g,y,x,$,_=e=>e;const j=r(t(i(a)),"i18n-editor");class w extends j{constructor(){super(...arguments),this.languageOverrides=null,this.selectedLanguage=null,this.__selectedTabIndex=0}static get properties(){return e(e({},super.properties),{},{languageOverrides:{attribute:"language-overrides"},selectedLanguage:{attribute:"selected-language"},__selectedTabIndex:{attribute:!1}})}render(){var e,t,s;const r=this.__tabs,i=r[this.__selectedTabIndex],a=null!==(s=null===(e=this.data)||void 0===e?void 0:e.values[null!==(t=this.selectedLanguage)&&void 0!==t?t:""])&&void 0!==s?s:{},n={},u=!this.in({idle:"snapshot"});if(i)if(i.includes("_")){const e=i.substring(0,i.indexOf("_")),t=i.substring(i.indexOf("_")+1),s=a[e][t];for(const r in s)n[`${e}_${t}_${r}`]=s[r]}else for(const e in a)e.startsWith(i)&&(n[e]=a[e]);const h=this.__renderOverridesLoader(),m=h.overrides;return o(b||(b=_` ${0} <div aria-busy="${0}" aria-live="polite" class="relative"> <div class="${0}"> <vaadin-tabs selected="${0}" class="-mx-l" theme="minimal" @selected-changed="${0}"> ${0} </vaadin-tabs> ${0} </div> <div data-testid="spinner" class="${0}"> <foxy-spinner layout="${0}" class="m-auto" state="${0}" infer="spinner"> </foxy-spinner> </div> </div> `),h.template,this.in("busy"),d({"transition-opacity grid grid-cols-1 gap-s":!0,"opacity-0 pointer-events-none":u}),this.__selectedTabIndex,(e=>{var t;const s=e.currentTarget;this.__selectedTabIndex=null!==(t=s.selected)&&void 0!==t?t:0}),r.map((e=>{const t=e.substring(e.indexOf("_")+1).replace(/_/g," "),s=o(v||(v=_`<span class="capitalize">${0}</span>`),t);return o(g||(g=_`<vaadin-tab>${0}</vaadin-tab>`),s)})),c(Object.entries(n),(([e])=>e),(([e,t])=>{var s;let r,a,n;return e.startsWith("gateways_")?(r=e.substring(i.length+1),a=i.substring(9),n=m.find((e=>e.code===r&&e.gateway===a))):(r=e,a=void 0,n=m.find((e=>e.code===r))),o(y||(y=_` <foxy-internal-i18n-editor-entry default-value="${0}" gateway="${0}" parent="${0}" code="${0}" infer="" .data="${0}"> </foxy-internal-i18n-editor-entry> `),t,l(a),l(null!==(s=this.languageOverrides)&&void 0!==s?s:void 0),r,null!=n?n:null)})),d({"transition-opacity absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!u}),this.in("busy")?"no-label":"horizontal",this.in("fail")?"error":this.in({idle:"template"})?"empty":"busy")}get __tabs(){var e;const t=this.selectedLanguage?null===(e=this.data)||void 0===e?void 0:e.values[this.selectedLanguage]:void 0,s=Object.entries(null!=t?t:{}).reduce(((e,[t,s])=>{if("string"==typeof s){const s=t.substring(0,t.indexOf("_"));e.add(s||t)}else Object.entries(s).forEach((([s,r])=>{0!==Object.keys(r).length&&e.add(`${t}_${s}`)}));return e}),new Set);return Array.from(s)}__renderOverridesLoader(){var e;const t=Array.from(this.renderRoot.querySelectorAll("foxy-nucleon")),s=t.reduce(((e,t)=>{var s,r;return[...e,...null!==(r=null===(s=t.data)||void 0===s?void 0:s._embedded["fx:language_overrides"])&&void 0!==r?r:[]]}),[]),r=t[0],i=new Array(Math.ceil(((null===(e=null==r?void 0:r.data)||void 0===e?void 0:e.total_items)||300)/300)).fill(0).map(((e,t)=>{var s;try{const e=new URL(null!==(s=this.languageOverrides)&&void 0!==s?s:"");return e.searchParams.set("offset",String(300*t)),e.searchParams.set("limit","300"),o(x||(x=_` <foxy-nucleon infer="" href="${0}" @update="${0}"> </foxy-nucleon> `),e.toString(),(()=>this.requestUpdate()))}catch(e){return}}));return{template:o($||($=_`<div class="hidden">${0}</div>`),i),overrides:s,loaders:t}}}customElements.define("foxy-i18n-editor",w);export{w as I18nEditor};
|
package/dist/cdn/foxy-i18n.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{I as I18n}from"./shared-
|
|
1
|
+
export{I as I18n}from"./shared-8d51eaa6.js";import"./shared-1522d76f.js";import"./shared-7f33a83a.js";import"./shared-550f9cae.js";import"./shared-343d1fd7.js";import"./shared-30cbf0a6.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-
|
|
1
|
+
import"./shared-f2eb454c.js";import"./shared-8d51eaa6.js";import{a as e}from"./shared-550f9cae.js";import{I as s}from"./shared-55f58244.js";import{c as a}from"./shared-4e709717.js";import{h as t}from"./shared-7f33a83a.js";import"./foxy-spinner.js";import"./shared-902b0773.js";import"./shared-1c07b1be.js";import"./shared-31b7a6ad.js";import"./shared-1522d76f.js";import"./shared-30cbf0a6.js";import"./shared-343d1fd7.js";import"./shared-6a7f96c4.js";import"./shared-07e9d1fb.js";import"./shared-3ab0306f.js";import"./shared-eb116b3e.js";let r,d,i=e=>e;const o=e(s,"integration-card");class n extends o{renderBody(){var e;const s=this.data,o=new Date(1e3*(null!==(e=null==s?void 0:s.expires)&&void 0!==e?e:0)),n=o>new Date;return t(r||(r=i` <div class="flex flex-wrap gap-xs leading-s"> <div class="min-w-full"> <div class="flex justify-between gap-s"> <span class="font-medium truncate min-w-0"> ${0}​ </span> <foxy-i18n class="${0}" infer="" key="status_${0}" .options="${0}"> </foxy-i18n> </div> <div class="text-secondary text-s"> ${0} </div> </div> <div class="text-secondary text-xs bg-contrast-5 rounded overflow-hidden flex"> <span class="font-medium px-xs bg-contrast-5" lang="en">ID</span> <span class="px-xs"><code>${0}</code>​</span> </div> <div class="text-secondary text-xs bg-contrast-5 rounded overflow-hidden flex"> <span class="font-medium px-xs bg-contrast-5" lang="en">Email</span> <span class="px-xs"><code>${0}</code>​</span> </div> </div> `),null==s?void 0:s.project_name,a({"whitespace-nowrap font-tnum text-s":!0,"text-tertiary":n,"text-error":!n}),n?"active":"expired",{date:o,month:"short",day:"2-digit"},(null==s?void 0:s.project_description)?s.project_description:t(d||(d=i`<foxy-i18n infer="" key="no_description"></foxy-i18n>`)),null==s?void 0:s.client_id,null==s?void 0:s.added_by_email)}}customElements.define("foxy-integration-card",n);export{n as IntegrationCard};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-
|
|
1
|
+
import"./shared-cadbb2e3.js";import"./shared-aa4f6a25.js";import{I as e}from"./shared-6d34289d.js";import"./shared-f7365ea5.js";import"./shared-f9180815.js";import"./foxy-copy-to-clipboard.js";import"./shared-8d51eaa6.js";import{_ as t}from"./shared-1522d76f.js";import{a as r}from"./shared-550f9cae.js";import{c as s}from"./shared-4e709717.js";import{h as a}from"./shared-7f33a83a.js";import"./shared-d28b95c6.js";import"./shared-1c07b1be.js";import"./shared-61ade33e.js";import"./shared-533c0d6a.js";import"./shared-2d40129d.js";import"./shared-ac62d098.js";import"./shared-9f039798.js";import"./shared-a502026c.js";import"./shared-b23c903e.js";import"./shared-d3bf9ac0.js";import"./shared-30cbf0a6.js";import"./shared-6a7f96c4.js";import"./shared-07e9d1fb.js";import"./shared-343d1fd7.js";import"./shared-3ab0306f.js";import"./shared-eb116b3e.js";import"./shared-2787655b.js";import"./shared-c37707da.js";import"./foxy-spinner.js";import"./shared-902b0773.js";import"./shared-31b7a6ad.js";let o,n,i,d,l,c,h,p,_,m,b,f,u,y,x=e=>e;const j=r(e,"integration-form");class $ extends j{constructor(){super(...arguments),this.__postResponse=null}static get properties(){return t(t({},super.properties),{},{__postResponse:{attribute:!1}})}static get v8n(){return[({project_name:e})=>!!e||"project-name:v8n_required"]}renderBody(){return this.data?this.__renderSnapshotBody():this.__renderTemplateBody()}async _fetch(...e){var t;const r=this.constructor,s=await new r.API(this).fetch(...e),a="string"==typeof e[0]?null===(t=e[1])||void 0===t?void 0:t.method:e[0].method,o="string"==typeof e[0]?e[0]:e[0].url;if(!s.ok)throw s;const n=await s.json();return"POST"===(null==a?void 0:a.toUpperCase())&&o===this.parent&&(this.__postResponse=n),n}__renderSnapshotBody(){const e=this.hiddenSelector,t=this.__postResponse;return a(o||(o=x` ${0} ${0} ${0} <foxy-internal-delete-control infer="delete"></foxy-internal-delete-control> `),e.matches("header",!0)?"":this.__renderHeader(),e.matches("message",!0)||!t?"":this.__renderMessage(),e.matches("table")?"":this.__renderTable())}__renderTemplateBody(){return a(n||(n=x` <foxy-internal-text-control infer="project-name"></foxy-internal-text-control> <foxy-internal-text-area-control infer="project-description"> </foxy-internal-text-area-control> <foxy-internal-create-control infer="create"></foxy-internal-create-control> `))}__renderMessage(){return a(i||(i=x` ${0} <div class="bg-success-10 text-success p-m pb-s space-y-xs leading-s rounded-t-l rounded-b-l"> <foxy-i18n infer="message" class="block" key="text"></foxy-i18n> <vaadin-button data-testid="message-action" theme="tertiary contrast" class="p-0" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="message" key="action"></foxy-i18n> </vaadin-button> </div> ${0} `),this.renderTemplateOrSlot("message:before"),this.disabledSelector.matches("message",!0),(()=>this.__postResponse=null),this.renderTemplateOrSlot("message:after"))}__renderHeader(){const e=this.data,t=a(d||(d=x`<foxy-i18n infer="header" key="no_description"></foxy-i18n>`));return a(l||(l=x` ${0} <div class="space-y-xs"> <div class="font-medium truncate text-xl">${0}​</div> <div class="text-secondary">${0}</div> </div> ${0} `),this.renderTemplateOrSlot("header:before"),e.project_name,e.project_description||t,this.renderTemplateOrSlot("header:after"))}__renderTable(){var e;const t=this.data,r=new Date(1e3*(null!==(e=t.expires)&&void 0!==e?e:0)),s=this.__postResponse;return a(c||(c=x` ${0} <table class="font-lumo text-m leading-m w-full"> <tbody class="divide-y divide-contrast-10"> ${0} ${0} ${0} ${0} ${0} ${0} ${0} </tbody> </table> ${0} `),this.renderTemplateOrSlot("table:before"),this.__renderTableRow({label:this.__renderTableI18n("added_by"),value:this.__renderMailToLink(t.added_by_email,t.added_by_name)}),this.__renderTableRow({label:this.__renderTableI18n("contact"),value:this.__renderMailToLink(t.contact_email,t.contact_name)}),this.__renderTableRow({label:this.__renderTableI18n("company"),value:this.__renderLink(t.company_url,t.company_name)}),this.__renderTableRow({label:this.__renderTableI18n("expires"),value:this.__renderTableI18n("expires_date",{date:r})}),this.__renderTableRow({label:"Client ID",value:this.__renderCopiableText(t.client_id)}),s?a(h||(h=x` ${0} ${0} ${0} `),this.__renderTableRow({highlight:!0,label:"Client secret",value:this.__renderCopiableText(s.client_secret)}),this.__renderTableRow({highlight:!0,label:"Refresh token",value:this.__renderCopiableText(s.refresh_token)}),this.__renderTableRow({highlight:!0,label:"Access token",value:this.__renderCopiableText(s.access_token)})):"",this.__renderTableRow({label:"Scope",value:a(p||(p=x`<code>${0}</code>`),t.scope)}),this.renderTemplateOrSlot("table:after"))}__renderCopiableText(e){return a(_||(_=x` <div class="flex items-center gap-s"> <code class="truncate flex-1">${0}</code> <foxy-copy-to-clipboard infer="copy-to-clipboard" class="inline-block" text="${0}"> </foxy-copy-to-clipboard> </div> `),e,e)}__renderMailToLink(e,t){return e?this.__renderLink(`mailto:${e}`,t):a(m||(m=x`${0}`),t)}__renderLink(e,t){return e?a(f||(f=x` <a target="_blank" class="font-medium text-primary rounded hover-underline focus-outline-none focus-ring-2 focus-ring-primary-50" href="${0}"> ${0} </a> `),e,t):a(b||(b=x`${0}`),t)}__renderTableRow(e){const{label:t,value:r,highlight:o=!1}=e;return a(u||(u=x` <tr class="${0}"> <td class="max-w-0 truncate py-s text-secondary w-1-3 pr-m">${0}</td> <td class="max-w-0 truncate py-s text-body w-2-3">${0}</td> </tr> `),s({"font-medium text-success":o}),t,r)}__renderTableI18n(e,t){return a(y||(y=x`<foxy-i18n infer="table" key="${0}" .options="${0}"></foxy-i18n>`),e,t)}}customElements.define("foxy-integration-form",$);export{$ as IntegrationForm};
|