@foxy.io/elements 1.18.0-beta.15 → 1.18.0-beta.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/foxy-access-recovery-form.js +1 -1
- package/dist/cdn/foxy-address-card.js +2 -2
- package/dist/cdn/foxy-address-form.js +1 -1
- package/dist/cdn/foxy-api-browser.js +3 -3
- 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-cancellation-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-api.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 +2 -2
- package/dist/cdn/foxy-customer.js +1 -1
- 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-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-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 -0
- package/dist/cdn/foxy-i18n.js +1 -1
- package/dist/cdn/foxy-integration-card.js +1 -0
- package/dist/cdn/foxy-integration-form.js +1 -0
- 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 +1 -1
- 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-nucleon-element.js +1 -1
- package/dist/cdn/foxy-pagination.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-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 +4 -4
- 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-card.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 -1
- package/dist/cdn/foxy-transaction.js +1 -1
- package/dist/cdn/foxy-transactions-table.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-002b788f.js +15 -0
- package/dist/cdn/shared-0672e78b.js +1 -0
- package/dist/cdn/{shared-d58e7670.js → shared-162fc285.js} +1 -1
- package/dist/cdn/shared-1b3e1a0d.js +1 -0
- package/dist/cdn/{shared-45418f3b.js → shared-2215e6c8.js} +5 -5
- package/dist/cdn/shared-236d9b7e.js +1 -0
- package/dist/cdn/{shared-890a22af.js → shared-29376ba1.js} +1 -1
- package/dist/cdn/{shared-a5000f1f.js → shared-29e21467.js} +3 -3
- package/dist/cdn/{shared-4ff7174f.js → shared-2c842660.js} +1 -1
- package/dist/cdn/{shared-23e0d67e.js → shared-2d3027f4.js} +1 -1
- package/dist/cdn/{shared-0d91f648.js → shared-2f1e04ae.js} +1 -1
- package/dist/cdn/{shared-398b3c49.js → shared-34b11d34.js} +1 -1
- package/dist/cdn/{shared-0953a0e7.js → shared-3a3878c9.js} +1 -1
- package/dist/cdn/{shared-5c837b54.js → shared-40537775.js} +1 -1
- package/dist/cdn/{shared-38df92f3.js → shared-40d82f6b.js} +1 -1
- package/dist/cdn/{shared-abf68928.js → shared-4457dc27.js} +1 -1
- package/dist/cdn/{shared-760cc838.js → shared-4975f86f.js} +1 -1
- package/dist/cdn/{shared-ffea7639.js → shared-4c338ca6.js} +1 -1
- package/dist/cdn/shared-515f00b1.js +1 -0
- package/dist/cdn/{shared-8704e701.js → shared-5504f415.js} +2 -2
- package/dist/cdn/{shared-dee53530.js → shared-55e20d5b.js} +1 -1
- package/dist/cdn/{shared-a8966936.js → shared-5ad8c9a0.js} +1 -1
- package/dist/cdn/{shared-b6a37360.js → shared-5b55627c.js} +1 -1
- package/dist/cdn/{shared-2a56246b.js → shared-6003864d.js} +1 -1
- package/dist/cdn/shared-6b8874a7.js +1 -0
- package/dist/cdn/shared-6bf8883f.js +1 -0
- package/dist/cdn/{shared-fd124dfd.js → shared-6d2064e9.js} +3 -3
- package/dist/cdn/{shared-7ab9beb2.js → shared-6e6ed30a.js} +1 -1
- package/dist/cdn/shared-71deb26e.js +1 -0
- package/dist/cdn/{shared-3425791b.js → shared-74277a73.js} +5 -5
- package/dist/cdn/{shared-f22d1ed9.js → shared-7661b51a.js} +15 -15
- package/dist/cdn/{shared-7ca327ea.js → shared-7b167fe9.js} +1 -1
- package/dist/cdn/{shared-93c15291.js → shared-85f9051e.js} +1 -1
- package/dist/cdn/{shared-a6339611.js → shared-8a5e01ae.js} +1 -1
- package/dist/cdn/shared-8d533e0c.js +1 -0
- package/dist/cdn/shared-923da875.js +6 -0
- package/dist/cdn/shared-92926b1d.js +1 -0
- package/dist/cdn/{shared-081ad02f.js → shared-92bd849f.js} +1 -1
- package/dist/cdn/shared-a46a2f49.js +1 -0
- package/dist/cdn/{shared-8dee6348.js → shared-a86761d3.js} +2 -2
- package/dist/cdn/{shared-0565ecbc.js → shared-ad8141c4.js} +1 -1
- package/dist/cdn/{shared-a8ada44e.js → shared-b28dbc68.js} +27 -51
- package/dist/cdn/{shared-4610cbdb.js → shared-b5cbbdd8.js} +1 -1
- package/dist/cdn/{shared-15278fe0.js → shared-b7423eab.js} +1 -1
- package/dist/cdn/{shared-63671948.js → shared-b7f7f15f.js} +1 -1
- package/dist/cdn/{shared-3ef5c283.js → shared-b8e9b536.js} +1 -1
- package/dist/cdn/{shared-88924652.js → shared-bb522838.js} +1 -1
- package/dist/cdn/{shared-34cd3a01.js → shared-bd194cdf.js} +1 -1
- package/dist/cdn/{shared-6dafebaf.js → shared-c484320b.js} +1 -1
- package/dist/cdn/{shared-86be537c.js → shared-c52d3772.js} +1 -1
- package/dist/cdn/{shared-6b471536.js → shared-cced7800.js} +1 -1
- package/dist/cdn/{shared-bd4b0759.js → shared-cfec6ec1.js} +1 -1
- package/dist/cdn/{shared-9195959e.js → shared-d302ad2c.js} +1 -1
- package/dist/cdn/{shared-eefa4103.js → shared-d43fc5cc.js} +1 -1
- package/dist/cdn/shared-dc798bf4.js +1 -0
- package/dist/cdn/{shared-4a796610.js → shared-dcbf57e0.js} +1 -1
- package/dist/cdn/{shared-1d34726a.js → shared-e119731e.js} +1 -1
- package/dist/cdn/shared-e396ec04.js +25 -0
- package/dist/cdn/{shared-d1b62ccd.js → shared-e3ce88dc.js} +12 -17
- package/dist/cdn/{shared-74b7438a.js → shared-ea316e64.js} +1 -1
- package/dist/cdn/{shared-cd14b0cc.js → shared-ef0fc329.js} +1 -1
- package/dist/cdn/{shared-8328826e.js → shared-f022673a.js} +7 -7
- package/dist/cdn/{shared-d8b14272.js → shared-f23d122e.js} +3 -3
- package/dist/cdn/{shared-8033b140.js → shared-f2d19582.js} +1 -1
- package/dist/cdn/{shared-a861c770.js → shared-facfe95a.js} +4 -4
- package/dist/cdn/{shared-779795c5.js → shared-ff2f84c7.js} +1 -1
- package/dist/cdn/translations/api-browser/en.json +1 -0
- package/dist/cdn/translations/email-template-form/en.json +5 -0
- package/dist/cdn/translations/i18n-editor/en.json +10 -0
- package/dist/cdn/translations/integration-card/en.json +13 -0
- package/dist/cdn/translations/integration-form/en.json +41 -0
- package/dist/cdn/translations/store-form/en.json +1 -1
- package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.d.ts +4 -0
- package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.js +33 -17
- package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.js.map +1 -1
- package/dist/elements/public/ApiBrowser/ApiBrowser.d.ts +2 -1
- package/dist/elements/public/ApiBrowser/ApiBrowser.js +38 -15
- package/dist/elements/public/ApiBrowser/ApiBrowser.js.map +1 -1
- package/dist/elements/public/EmailTemplateForm/EmailTemplateForm.d.ts +1 -0
- package/dist/elements/public/EmailTemplateForm/EmailTemplateForm.js +22 -13
- package/dist/elements/public/EmailTemplateForm/EmailTemplateForm.js.map +1 -1
- package/dist/elements/public/EmailTemplateForm/index.d.ts +1 -0
- package/dist/elements/public/EmailTemplateForm/index.js +1 -0
- package/dist/elements/public/EmailTemplateForm/index.js.map +1 -1
- package/dist/elements/public/I18n/format/date.js +5 -4
- package/dist/elements/public/I18n/format/date.js.map +1 -1
- package/dist/elements/public/I18nEditor/I18nEditor.d.ts +18 -0
- package/dist/elements/public/I18nEditor/I18nEditor.js +173 -0
- package/dist/elements/public/I18nEditor/I18nEditor.js.map +1 -0
- package/dist/elements/public/I18nEditor/index.d.ts +7 -0
- package/dist/elements/public/I18nEditor/index.js +9 -0
- package/dist/elements/public/I18nEditor/index.js.map +1 -0
- package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/InternalI18nEditorEntry.d.ts +17 -0
- package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/InternalI18nEditorEntry.js +169 -0
- package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/InternalI18nEditorEntry.js.map +1 -0
- package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/index.d.ts +6 -0
- package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/index.js +8 -0
- package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/index.js.map +1 -0
- package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/types.d.ts +3 -0
- package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/types.js +2 -0
- package/dist/elements/public/I18nEditor/internal/InternalI18nEditorEntry/types.js.map +1 -0
- package/dist/elements/public/I18nEditor/types.d.ts +4 -0
- package/dist/elements/public/I18nEditor/types.js +2 -0
- package/dist/elements/public/I18nEditor/types.js.map +1 -0
- package/dist/elements/public/IntegrationCard/IntegrationCard.d.ts +10 -0
- package/dist/elements/public/IntegrationCard/IntegrationCard.js +49 -0
- package/dist/elements/public/IntegrationCard/IntegrationCard.js.map +1 -0
- package/dist/elements/public/IntegrationCard/index.d.ts +4 -0
- package/dist/elements/public/IntegrationCard/index.js +6 -0
- package/dist/elements/public/IntegrationCard/index.js.map +1 -0
- package/dist/elements/public/IntegrationCard/types.d.ts +3 -0
- package/dist/elements/public/IntegrationCard/types.js +2 -0
- package/dist/elements/public/IntegrationCard/types.js.map +1 -0
- package/dist/elements/public/IntegrationForm/IntegrationForm.d.ts +18 -0
- package/dist/elements/public/IntegrationForm/IntegrationForm.js +220 -0
- package/dist/elements/public/IntegrationForm/IntegrationForm.js.map +1 -0
- package/dist/elements/public/IntegrationForm/index.d.ts +10 -0
- package/dist/elements/public/IntegrationForm/index.js +12 -0
- package/dist/elements/public/IntegrationForm/index.js.map +1 -0
- package/dist/elements/public/IntegrationForm/types.d.ts +21 -0
- package/dist/elements/public/IntegrationForm/types.js +2 -0
- package/dist/elements/public/IntegrationForm/types.js.map +1 -0
- package/dist/elements/public/ItemCategoryForm/internal/InternalItemCategoryFormTaxesControlItem/InternalItemCategoryFormTaxesControlItem.js +0 -2
- package/dist/elements/public/ItemCategoryForm/internal/InternalItemCategoryFormTaxesControlItem/InternalItemCategoryFormTaxesControlItem.js.map +1 -1
- package/dist/elements/public/StoreForm/StoreForm.js +2 -10
- package/dist/elements/public/StoreForm/StoreForm.js.map +1 -1
- package/dist/elements/public/TemplateSetForm/TemplateSetForm.d.ts +1 -0
- package/dist/elements/public/TemplateSetForm/TemplateSetForm.js +29 -18
- package/dist/elements/public/TemplateSetForm/TemplateSetForm.js.map +1 -1
- package/dist/elements/public/TemplateSetForm/index.d.ts +1 -0
- package/dist/elements/public/TemplateSetForm/index.js +1 -0
- package/dist/elements/public/TemplateSetForm/index.js.map +1 -1
- package/dist/elements/public/index.d.ts +3 -0
- package/dist/elements/public/index.defined.d.ts +3 -0
- package/dist/elements/public/index.defined.js +3 -0
- package/dist/elements/public/index.defined.js.map +1 -1
- package/dist/elements/public/index.js +3 -0
- package/dist/elements/public/index.js.map +1 -1
- package/dist/mixins/responsive.js +3 -3
- package/dist/mixins/responsive.js.map +1 -1
- package/dist/mixins/themeable.js +280 -0
- package/dist/mixins/themeable.js.map +1 -1
- package/package.json +2 -2
- package/dist/cdn/shared-10dbb9d7.js +0 -1
- package/dist/cdn/shared-2af327d0.js +0 -15
- package/dist/cdn/shared-5606cd36.js +0 -1
- package/dist/cdn/shared-8ab29d7d.js +0 -1
- package/dist/cdn/shared-a420358e.js +0 -1
- package/dist/cdn/shared-b567541a.js +0 -1
- package/dist/cdn/shared-b98f0ad9.js +0 -1
- package/dist/cdn/shared-c29811ec.js +0 -1
- package/dist/cdn/shared-d82f3ba0.js +0 -1
- package/dist/cdn/shared-fdf6ca55.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-0565ecbc.js";import"./shared-0d91f648.js";import{I as e}from"./shared-10dbb9d7.js";import{_ as t}from"./shared-a8ced8bf.js";import{c as o}from"./shared-4e709717.js";import{r as i}from"./shared-d519a301.js";import{l as r}from"./shared-f3b35364.js";import{h as s}from"./shared-7f33a83a.js";import"./shared-bd4b0759.js";import"./shared-890a22af.js";import"./shared-d8b14272.js";import"./shared-45418f3b.js";import{i as n}from"./shared-d3bf9ac0.js";import"./shared-38df92f3.js";import"./shared-abf68928.js";import"./shared-34cd3a01.js";import"./shared-b567541a.js";import{I as a}from"./shared-081ad02f.js";import"./foxy-nucleon-element.js";import"./shared-b98f0ad9.js";import{R as l,a as c}from"./shared-a5000f1f.js";import{c as d}from"./shared-779795c5.js";import"./shared-93c15291.js";import"./shared-7ca327ea.js";import"./shared-86be537c.js";import"./shared-6dafebaf.js";import"./shared-a8ada44e.js";import"./shared-a420358e.js";import"./shared-2af327d0.js";import"./shared-ffea7639.js";import"./shared-0479553e.js";import"./shared-a8966936.js";import"./shared-4f037e43.js";import"./shared-15278fe0.js";import"./shared-d6276c83.js";import"./shared-4a796610.js";import"./shared-eefa4103.js";import"./shared-398b3c49.js";import"./shared-88924652.js";import"./shared-d1b62ccd.js";import"./shared-3ef5c283.js";import"./shared-cd14b0cc.js";import"./shared-760cc838.js";import"./foxy-spinner.js";import"./shared-74b7438a.js";import"./shared-d82f3ba0.js";let u,_,p,h=e=>e;customElements.define("foxy-internal-editable-list-control",class extends e{constructor(){super(...arguments),this.options=[],this.__newItem=""}static get properties(){return t(t({},super.properties),{},{options:{type:Array},__newItem:{attribute:!1}})}render(){const e=o({"w-xs h-xs mr-xs rounded-full transition-colors flex-shrink-0":!0,"focus-outline-none focus-ring-2 ring-inset ring-error-50":!0,"text-tertiary hover-bg-error-10 hover-text-error":!this.disabled,"cursor-default text-disabled":this.disabled,"flex items-center justify-center":!this.readonly,hidden:this.readonly}),t=o({"transition-colors h-m ml-s flex items-center":!0,"text-secondary":this.readonly,"text-disabled":this.disabled}),n=this.disabled||!this.__newItem,a=()=>{this.__newItem&&(this._value=[...this._value,{value:this.__newItem}],this.__newItem="")};return s(u||(u=h` <div class="group"> <div class="transition-colors mb-xs font-medium text-s text-secondary group-hover-text-body"> ${0} </div> <div class="border border-contrast-10 rounded transition-colors group-hover-border-contrast-20"> <ol class="transition-colors divide-y divide-contrast-10 font-medium group-hover-divide-contrast-20"> ${0} </ol> <div style="${0}" class="${0}"> <input placeholder="${0}" class="w-full bg-transparent appearance-none h-m font-medium focus-outline-none" list="list" .value="${0}" ?disabled="${0}" ?readonly="${0}" @keydown="${0}" @change="${0}" @input="${0}"> <datalist id="list"> ${0} </datalist> <div class="transition-opacity ${0}"> <button aria-label="${0}" class="${0}" ?disabled="${0}" @click="${0}"> <iron-icon icon="lumo:plus" class="icon-inline text-l"></iron-icon> </button> </div> </div> </div> <div class="transition-colors mt-xs text-xs text-secondary group-hover-text-body"> ${0} </div> </div> `),this.label,i(this._value,(e=>e.value),((o,i)=>{var r;return s(_||(_=h` <li class="${0}"> <div class="flex-1 mr-s">${0}</div> <button aria-label="${0}" class="${0}" ?disabled="${0}" @click="${0}"> <iron-icon icon="lumo:cross" class="icon-inline text-xl"></iron-icon> </button> </li> `),t,null!==(r=o.label)&&void 0!==r?r:o.value,this.t("delete"),e,this.disabled,(()=>{this._value=this._value.filter(((e,t)=>t!==i))}))})),0===this._value.length?"border-radius: calc(var(--lumo-border-radius-m) - 1px)":"border-radius: 0 0 calc(var(--lumo-border-radius-m) - 1px) calc(var(--lumo-border-radius-m) - 1px)",o({"transition-colors bg-contrast-10 pl-s h-m flex items-center":!0,"focus-within-ring-2 focus-within-ring-primary-50":!0,"group-hover-bg-contrast-20":!0,flex:!this.readonly,hidden:this.readonly}),this.placeholder,r(this.__newItem),this.disabled,this.readonly,(e=>"Enter"===e.key&&a()),(e=>e.stopPropagation()),(e=>{this.__newItem=e.currentTarget.value.trim()}),this.options.map((({label:e,value:t})=>{if(!this._value.some((e=>e.value===t)))return s(p||(p=h`<option value="${0}">${0}</option>`),t,null!=e?e:t)})),this.__newItem?"opacity-100":"opacity-0",this.t("submit"),o({"w-xs h-xs mr-xs flex-shrink-0 ring-inset ring-success-50 focus-outline-none":!0,"flex items-center justify-center rounded-full transition-colors":!0,"bg-contrast-5 text-disabled cursor-default":n,"bg-success-10 text-success cursor-pointer":!n,"hover-bg-success hover-text-success-contrast":!n,"focus-ring-2":!n}),n,a,this.helperText)}get _value(){var e;return null!==(e=super._value)&&void 0!==e?e:[]}set _value(e){super._value=e}});let m,f=e=>e;customElements.define("foxy-internal-password-control",class extends e{renderControl(){return s(m||(m=f` <vaadin-password-field error-message="${0}" helper-text="${0}" placeholder="${0}" label="${0}" class="w-full" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" .value="${0}" @keydown="${0}" @input="${0}"> </vaadin-password-field> `),n(this._errorMessage),this.helperText,this.placeholder,this.label,this.disabled,this.readonly,this._checkValidity,this._value,(e=>{var t;return"Enter"===e.key&&(null===(t=this.nucleon)||void 0===t?void 0:t.submit())}),(e=>{const t=e.currentTarget;this._value=t.value}))}get _value(){var e;return null!==(e=super._value)&&void 0!==e?e:""}set _value(e){super._value=e}});let g,y,x,v,b,$,k,V,j,w,S,q,O,C,U,E,N,I,R,T,M=e=>e;const J=l(c(a,"store-form"));class P extends J{constructor(){super(...arguments),this.customerPasswordHashTypes=null,this.shippingAddressTypes=null,this.storeVersions=null,this.checkoutTypes=null,this.localeCodes=null,this.languages=null,this.timezones=null,this.countries=null,this.regions=null,this.__singleCheckboxGroupOptions=[{label:"option_checked",value:"checked"}],this.__appSessionTimeOptions=[{value:"s",label:"second"},{value:"m",label:"minute"},{value:"h",label:"hour"},{value:"d",label:"day"}],this.__getStoreEmailValue=()=>{var e;return(null!==(e=this.form.store_email)&&void 0!==e?e:"").split(",").map((e=>({value:e.trim()}))).filter((({value:e})=>e.length>0))},this.__setStoreEmailValue=e=>{this.edit({store_email:e.map((e=>e.value)).join(",")})},this.__getBccOnReceiptEmailValue=()=>this.form.bcc_on_receipt_email?["checked"]:[],this.__setBccOnReceiptEmailValue=e=>{this.edit({bcc_on_receipt_email:e.includes("checked")})},this.__getUseEmailDnsValue=()=>this.form.use_email_dns?["checked"]:[],this.__setUseEmailDnsValue=e=>{this.edit({use_email_dns:e.includes("checked")})},this.__getUseSmtpConfigValue=()=>this.form.smtp_config?["checked"]:[],this.__setUseSmtpConfigValue=e=>{e.includes("checked")?this.edit({smtp_config:JSON.stringify({username:"",password:"",security:"",host:"",port:""})}):this.edit({smtp_config:""})},this.__getFeaturesMultishipValue=()=>this.form.features_multiship?["checked"]:[],this.__setFeaturesMultishipValue=e=>{this.edit({features_multiship:e.includes("checked")})},this.__getRequireSignedShippingRatesValue=()=>this.form.require_signed_shipping_rates?["checked"]:[],this.__setRequireSignedShippingRatesValue=e=>{this.edit({require_signed_shipping_rates:e.includes("checked")})},this.__getAppSessionTimeValue=()=>{const e=this.form.app_session_time||43200;return e%86400==0?e/86400+"d":e%3600==0?e/3600+"h":e%60==0?e/60+"m":`${e}s`},this.__setAppSessionTimeValue=e=>{const t=e[e.length-1],o=parseInt(e.substring(0,e.length-1));this.edit({app_session_time:{d:86400,h:3600,m:60,s:1}[t]*o})},this.__getProductsRequireExpiresPropertyValue=()=>this.form.products_require_expires_property?["checked"]:[],this.__setProductsRequireExpiresPropertyValue=e=>{this.edit({products_require_expires_property:e.includes("checked")})},this.__getUseCartValidationValue=()=>this.form.use_cart_validation?["checked"]:[],this.__setUseCartValidationValue=e=>{this.edit({use_cart_validation:e.includes("checked")})},this.__getSingleSignOnUrlValue=()=>{var e;return this.form.use_single_sign_on&&null!==(e=this.form.single_sign_on_url)&&void 0!==e?e:""},this.__setSingleSignOnUrlValue=e=>{this.edit({use_single_sign_on:!!e,single_sign_on_url:e})},this.__getWebhookUrlValue=()=>{var e;return this.form.use_webhook&&null!==(e=this.form.webhook_url)&&void 0!==e?e:""},this.__setWebhookUrlValue=e=>{this.edit({use_webhook:!!e,webhook_url:e})},this.__setStoreDomainValue=e=>{if(e.endsWith(".foxycart.com")){const t=e.substring(0,e.length-13);this.edit({store_domain:t,use_remote_domain:t.includes(".")})}else this.edit({store_domain:e,use_remote_domain:e.includes(".")})}}static get properties(){return t(t({},super.properties),{},{customerPasswordHashTypes:{attribute:"customer-password-hash-types"},shippingAddressTypes:{attribute:"shipping-address-types"},storeVersions:{attribute:"store-versions"},checkoutTypes:{attribute:"checkout-types"},localeCodes:{attribute:"locale-codes"},languages:{},timezones:{},countries:{},regions:{}})}static get v8n(){return[({store_name:e})=>!!e||"store-name:v8n_required",({store_name:e})=>e&&e.length<=50||"store-name:v8n_too_long",({store_domain:e})=>!!e||"store-domain:v8n_required",({store_domain:e})=>e&&e.length<=50||"store-domain:v8n_too_long",({store_url:e})=>!!e||"store-url:v8n_required",({store_url:e})=>e&&e.length<=300||"store-url:v8n_too_long",({receipt_continue_url:e})=>!e||e.length<=300||"receipt-continue-url:v8n_too_long",({store_email:e})=>!!e||"store-email:v8n_required",({store_email:e})=>e&&e.length<=300||"store-email:v8n_too_long",({from_email:e})=>!e||e.length<=100||"from-email:v8n_too_long",({smtp_config:e})=>!e||e.length<=1e3||"use-smtp-config:v8n_too_long",({postal_code:e})=>!!e||"postal-code:v8n_required",({postal_code:e})=>e&&e.length<=50||"postal-code:v8n_too_long",({region:e})=>!!e||"region:v8n_required",({region:e})=>e&&e.length<=100||"region:v8n_too_long",({country:e})=>!!e||"country:v8n_required",({logo_url:e})=>!e||e.length<=100||"logo-url:v8n_too_long",({webhook_url:e,use_webhook:t})=>!t||!!e||"webhook-url:v8n_required",({webhook_url:e,use_webhook:t})=>!t||e&&e.length<=300||"webhook-url:too_long",({webhook_key:e,use_webhook:t,use_cart_validation:o})=>!t&&!o||!!e||"webhook-key:v8n_required",({webhook_url:e,use_webhook:t,use_cart_validation:o})=>!t&&!o||e&&e.length<=200||"webhook-key:v8n_too_long",({single_sign_on_url:e,use_single_sign_on:t})=>!t||!!e||"single-sign-on-url:v8n_required",({single_sign_on_url:e,use_single_sign_on:t})=>!t||e&&e.length<=300||"single-sign-on-url:too_long",({customer_password_hash_config:e})=>!e||String(e).length<=100||"customer-password-hash-config:v8n_too_long",({unified_order_entry_password:e})=>!e||String(e).length<=100||"unified-order-entry-password:v8n_too_long",({custom_display_id_config:e})=>!e||String(e).length<=100||"custom-display-id-config-enabled:v8n_too_long"]}renderBody(){var e,t,o,i,r,a,l,c,d,u,_,p,h,m,f,v,b,$,k,V,j,w,S;const q=this.form.use_email_dns&&!(null===(e=this.data)||void 0===e?void 0:e.use_email_dns)&&!this.hiddenSelector.matches("use-email-dns",!0),O=this.form.require_signed_shipping_rates&&!(null===(t=this.data)||void 0===t?void 0:t.require_signed_shipping_rates)&&!this.hiddenSelector.matches("require-signed-shipping-rates",!0),C=this.form.products_require_expires_property&&!(null===(o=this.data)||void 0===o?void 0:o.products_require_expires_property)&&!this.hiddenSelector.matches("products-require-expires-property",!0),U=this.form.use_cart_validation&&!(null===(i=this.data)||void 0===i?void 0:i.use_cart_validation)&&!this.hiddenSelector.matches("use-cart-validation",!0),E=this.t(this.form.use_remote_domain&&!(null===(r=this.data)||void 0===r?void 0:r.use_remote_domain)?"store-domain.custom_domain_note":"store-domain.helper_text"),N=!this.form.store_domain||this.form.store_domain.includes(".")?"":".foxycart.com",I=this.__renderLoader(1),R=this.__renderLoader(2),T=this.__renderLoader(3),J=this.__renderLoader(4),P=this.__renderLoader(5),D=this.__renderLoader(6),L=this.__renderLoader(7),A=this.__renderLoader(8),W=this.__renderLoader(9),B=Object.entries(null!==(l=null===(a=null==R?void 0:R.data)||void 0===a?void 0:a.values)&&void 0!==l?l:{}),G=null==J?void 0:J.data,z=null==P?void 0:P.data,F=null==D?void 0:D.data,H=null!==(d=null===(c=null==L?void 0:L.data)||void 0===c?void 0:c.values.timezone)&&void 0!==d?d:[],K=Object.values(null!==(_=null===(u=null==A?void 0:A.data)||void 0===u?void 0:u.values)&&void 0!==_?_:{}),Q=Object.values(null!==(h=null===(p=null==W?void 0:W.data)||void 0===p?void 0:p.values)&&void 0!==h?h:{}),X=Object.entries(null!==(f=null===(m=null==I?void 0:I.data)||void 0===m?void 0:m.values)&&void 0!==f?f:{}),Y=Object.entries(null!==(b=null===(v=null==T?void 0:T.data)||void 0===v?void 0:v.values)&&void 0!==b?b:{}),Z=Object.entries(null!==($=null==z?void 0:z.values)&&void 0!==$?$:{}),ee=Object.entries(null!==(k=null==F?void 0:F.values)&&void 0!==k?k:{}),te=X.map((e=>({label:e[1].description,value:e[0]}))),oe=B.map((([e,t])=>({label:t,value:e}))),ie=Y.map((([e,t])=>({label:t,value:e}))),re=Z.map((([e,t])=>({value:e,label:t}))),se=ee.map((([e,t])=>({value:e,label:t}))),ne=H.map((e=>({label:e.description,value:e.timezone}))),ae=K.map((e=>({label:e.default,value:e.cc2}))),le=Q.map((e=>({label:e.default,value:e.code})));let ce;try{const e=new URL(null!==(V=this.regions)&&void 0!==V?V:""),t=this.form.country;t&&e.searchParams.set("country_code",t),ce=e.toString()}catch(e){ce=void 0}return s(g||(g=M` ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} <div class="grid gap-m grid-cols-1 sm-grid-cols-2"> <foxy-internal-text-control infer="store-name"></foxy-internal-text-control> <foxy-internal-text-control infer="logo-url"></foxy-internal-text-control> <foxy-internal-text-control helper-text="${0}" suffix="${0}" infer="store-domain" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="store-url"></foxy-internal-text-control> <foxy-internal-editable-list-control infer="store-email" class="sm-col-span-2" .getValue="${0}" .setValue="${0}"> </foxy-internal-editable-list-control> <foxy-internal-select-control infer="timezone" class="sm-col-span-2" .options="${0}"> </foxy-internal-select-control> <foxy-internal-async-combo-box-control item-label-path="version" item-value-path="_links.self.href" infer="store-version-uri" first="${0}" .selectedItem="${0}"> </foxy-internal-async-combo-box-control> <foxy-internal-text-control infer="from-email" class="sm-col-span-2" placeholder="${0}"> </foxy-internal-text-control> <foxy-internal-checkbox-group-control infer="bcc-on-receipt-email" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> <foxy-internal-checkbox-group-control infer="use-email-dns" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} <foxy-internal-checkbox-group-control infer="use-smtp-config" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} <foxy-internal-select-control infer="country" .options="${0}"> </foxy-internal-select-control> <foxy-internal-select-control infer="region" .options="${0}"> </foxy-internal-select-control> <foxy-internal-text-control infer="postal-code"></foxy-internal-text-control> <foxy-internal-select-control infer="shipping-address-type" .options="${0}"> </foxy-internal-select-control> <foxy-internal-checkbox-group-control infer="features-multiship" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> <foxy-internal-checkbox-group-control infer="require-signed-shipping-rates" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} <foxy-internal-select-control infer="language" .options="${0}"> </foxy-internal-select-control> <foxy-internal-select-control infer="locale-code" .options="${0}"> </foxy-internal-select-control> ${0} ${0} <foxy-internal-text-control class="sm-col-span-2" infer="receipt-continue-url"> </foxy-internal-text-control> <foxy-internal-frequency-control class="sm-col-span-2" infer="app-session-time" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-frequency-control> <foxy-internal-checkbox-group-control infer="products-require-expires-property" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} <foxy-internal-checkbox-group-control infer="use-cart-validation" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} <foxy-internal-select-control infer="checkout-type" class="sm-col-span-2" .options="${0}"> </foxy-internal-select-control> <foxy-internal-select-control infer="customer-password-hash-type" .options="${0}" .setValue="${0}"> </foxy-internal-select-control> ${0} <foxy-internal-password-control infer="unified-order-entry-password"> </foxy-internal-password-control> <foxy-internal-text-control infer="single-sign-on-url" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="webhook-url" class="sm-col-span-2" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> ${0} ${0} </div> ${0} `),I.render(this.customerPasswordHashTypes),R.render(this.shippingAddressTypes),T.render(this.checkoutTypes),J.render(this.form.store_version_uri),P.render(this.localeCodes),L.render(this.timezones),A.render(this.countries),D.render(this.languages),W.render(ce),E,N,this.__setStoreDomainValue,this.__getStoreEmailValue,this.__setStoreEmailValue,ne,n(null!==(j=this.storeVersions)&&void 0!==j?j:void 0),G,null!==(S=null===(w=this.__getStoreEmailValue()[0])||void 0===w?void 0:w.value)&&void 0!==S?S:this.t("from-email.placeholder"),this.__getBccOnReceiptEmailValue,this.__setBccOnReceiptEmailValue,this.__singleCheckboxGroupOptions,this.__getUseEmailDnsValue,this.__setUseEmailDnsValue,this.__singleCheckboxGroupOptions,q?this.__renderWarning("use_email_dns_helper_text",{href:"https://wiki.foxycart.com/v/1.1/emails#how_emails_are_sent_spf_dkim_dmarc_etc",caption:"How Emails Are Sent (SPF, DKIM, DMARC, etc.)"}):"",this.__getUseSmtpConfigValue,this.__setUseSmtpConfigValue,this.__singleCheckboxGroupOptions,this.form.smtp_config&&!this.hiddenSelector.matches("smtp-config",!0)?this.__renderSmtpConfig():"",ae,le,oe,this.__getFeaturesMultishipValue,this.__setFeaturesMultishipValue,this.__singleCheckboxGroupOptions,this.__getRequireSignedShippingRatesValue,this.__setRequireSignedShippingRatesValue,this.__singleCheckboxGroupOptions,O?this.__renderWarning("require_signed_shipping_rates_helper_text"):"",se,re,this.hiddenSelector.matches("currency-style",!0)?"":this.__renderCurrencyStyleSelector(),this.hiddenSelector.matches("custom-display-id-config",!0)?"":this.__renderCustomIDSettings(),this.__getAppSessionTimeValue,this.__setAppSessionTimeValue,this.__appSessionTimeOptions,this.__getProductsRequireExpiresPropertyValue,this.__setProductsRequireExpiresPropertyValue,this.__singleCheckboxGroupOptions,C?this.__renderWarning("products_require_expires_property_helper_text"):"",this.__getUseCartValidationValue,this.__setUseCartValidationValue,this.__singleCheckboxGroupOptions,U?this.__renderWarning("use_cart_validation_helper_text",{href:"https://wiki.foxycart.com/v/2.0/hmac_validation",caption:"HMAC Product Verification: Locking Down your Add-To-Cart Links and Forms"}):"",ie,te,(e=>{var t;const o=X.find((([t])=>t===e));this.edit({customer_password_hash_type:e,customer_password_hash_config:null!==(t=null==o?void 0:o[1].config)&&void 0!==t?t:""})}),"number"==typeof this.form.customer_password_hash_config?s(y||(y=M` <foxy-internal-number-control infer="customer-password-hash-config"> </foxy-internal-number-control> `)):s(x||(x=M` <foxy-internal-text-control infer="customer-password-hash-config"> </foxy-internal-text-control> `)),this.__getSingleSignOnUrlValue,this.__setSingleSignOnUrlValue,this.__getWebhookUrlValue,this.__setWebhookUrlValue,this.__renderWebhookKey(),this.data&&!this.hiddenSelector.matches("is-maintenance-mode",!0)?this.__renderMaintenanceModeSwitch():"",super.renderBody())}__renderWebhookKey(){var e,t;let o;try{o=JSON.parse(null!==(e=this.form.webhook_key)&&void 0!==e?e:"")}catch(e){const i=null!==(t=this.form.webhook_key)&&void 0!==t?t:"";o={cart_signing:i,xml_datafeed:i,api_legacy:i,sso:i}}return Object.keys(o).map((e=>s(v||(v=M` <foxy-internal-password-control infer="webhook-key-${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-password-control> `),e.replace("_","-"),(()=>o[e]),(t=>{o[e]=t,this.edit({webhook_key:JSON.stringify(o)})}))))}__renderMaintenanceModeSwitch(){var e;const t=!!(null===(e=this.data)||void 0===e?void 0:e.is_maintenance_mode),i=(t?"disable":"enable")+"_maintenance_mode",r=`maintenance_mode_${t?"on":"off"}_explainer`;return s(b||(b=M` <div class="${0}"> <foxy-i18n infer="" class="block mb-s" key="${0}"></foxy-i18n> <vaadin-button theme="tertiary small ${0}" class="p-0" @click="${0}"> <foxy-i18n infer="" key="${0}"></foxy-i18n> </vaadin-button> </div> `),o({"rounded-t-l rounded-b-l leading-s text-s sm-col-span-2":!0,"text-tertiary":!t,"text-error":t}),r,t?"contrast":"",(()=>{this.edit({is_maintenance_mode:!this.form.is_maintenance_mode}),this.submit()}),i)}__renderCurrencyStyleSelector(){const e={101:0,100:0,"001":1,"000":2,111:3,110:3,"011":4,"010":5},t=[this.form.hide_currency_symbol,this.form.hide_decimal_characters,this.form.use_international_currency_symbol].map((e=>Number(Boolean(e)))).join(""),i=e[t];return s($||($=M` <div class="grid grid-cols-1 gap-xs transition-colors text-secondary hover-text-body sm-col-span-2"> <foxy-i18n infer="" class="font-medium text-s" key="currency_style_label"> </foxy-i18n> <div class="grid grid-cols-3 bg-contrast-10" style="gap:1px;padding:1px;border-radius:calc(var(--lumo-border-radius-m) + 1px)"> ${0} </div> <foxy-i18n infer="" class="text-xs" key="currency_style_helper_text"> </foxy-i18n> </div> `),["12.34","$12.34","USD 12.34","12","$12","USD 12"].map(((t,r)=>s(k||(k=M` <label class="${0}"> <span class="font-medium font-tnum">${0}</span> <input class="sr-only" value="${0}" type="radio" name="currency-style" ?checked="${0}" @change="${0}"> </label> `),o({"relative z-0 px-s h-m flex items-center transition-colors":!0,"hover-cursor-pointer":!0,"focus-within-z-10 focus-within-ring-2 focus-within-ring-primary-50":!0,"bg-base text-body hover-bg-transparent":r!==i,"bg-primary text-primary-contrast":r===i,"rounded-tl":0===r,"rounded-tr":2===r,"rounded-bl":3===r,"rounded-br":5===r}),t,r,r===i,(()=>{const t=Object.entries(e).find((e=>e[1]===r))[0];this.edit({hide_currency_symbol:Boolean(Number(t[0])),hide_decimal_characters:Boolean(Number(t[1])),use_international_currency_symbol:Boolean(Number(t[2]))})})))))}__renderCustomIDSettings(){var e;const t={enabled:!1,start:"0",length:"0",prefix:"",suffix:"",transaction_journal_entries:{enabled:!1,transaction_separator:"",log_detail_request_types:{transaction_authcapture:{prefix:""},transaction_capture:{prefix:""},transaction_refund:{prefix:""},transaction_void:{prefix:""}}}};let o;try{o=JSON.parse(null!==(e=this.form.custom_display_id_config)&&void 0!==e?e:"")}catch(e){o=d(t)}const i=parseInt(o.start||"0"),r=parseInt(o.length||"0")-o.prefix.length-o.suffix.length,n=Math.min(i+Math.floor(Math.random()*Math.pow(10,r)),Math.pow(10,r)-1),a=`${o.prefix}${n.toString().padStart(r,"0")}${o.suffix}`,l=Math.floor(1e3*Math.random()),c=String(l).padStart(3,"0");return s(V||(V=M` <foxy-internal-checkbox-group-control infer="custom-display-id-config-enabled" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} `),(()=>o.enabled?["checked"]:[]),(e=>{o.enabled=e.includes("checked"),this.edit({custom_display_id_config:JSON.stringify(o)})}),this.__singleCheckboxGroupOptions,o.enabled?s(j||(j=M` <div class="rounded-t-l rounded-b-l border border-contrast-10 p-m grid grid-cols-2 gap-m sm-col-span-2"> <foxy-internal-integer-control infer="custom-display-id-config-start" min="0" .getValue="${0}" .setValue="${0}"> </foxy-internal-integer-control> <foxy-internal-integer-control infer="custom-display-id-config-length" min="0" .getValue="${0}" .setValue="${0}"> </foxy-internal-integer-control> <foxy-internal-text-control infer="custom-display-id-config-prefix" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="custom-display-id-config-suffix" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> ${0} </div> <foxy-internal-checkbox-group-control infer="custom-display-id-config-transaction-journal-entries-enabled" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} `),(()=>parseInt(o.start||"0")),(e=>{o.start=String(e),this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>parseInt(o.length||"0")),(e=>{o.length=String(e),this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>o.prefix),(e=>{o.prefix=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>o.suffix),(e=>{o.suffix=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),o.start&&o.length&&i/10<=r?s(w||(w=M` <table style="font-family:monospace" class="col-span-2 text-xs text-secondary whitespace-nowrap"> <tbody> <tr> <td style="width:1%"> <foxy-i18n infer="" key="custom-display-id-config-first-example"> </foxy-i18n> </td> <td> ${0}${0}${0} </td> </tr> <tr style="width:1%"> <td> <foxy-i18n infer="" key="custom-display-id-config-random-example"> </foxy-i18n> </td> <td>${0}</td> </tr> </tbody> </table> `),o.prefix,i.toString().padStart(r,"0"),o.suffix,a):"",(()=>o.transaction_journal_entries.enabled?["checked"]:[]),(e=>{o.transaction_journal_entries.enabled=e.includes("checked"),this.edit({custom_display_id_config:JSON.stringify(o)})}),this.__singleCheckboxGroupOptions,o.transaction_journal_entries.enabled?s(S||(S=M` <div class="rounded-t-l rounded-b-l border border-contrast-10 p-m grid grid-cols-2 gap-m sm-col-span-2"> <foxy-internal-text-control infer="custom-display-id-config-transaction-journal-entries-transaction-separator" class="col-span-2" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="custom-display-id-config-transaction-journal-entries-log-detail-request-types-transaction-authcapture-prefix" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="custom-display-id-config-transaction-journal-entries-log-detail-request-types-transaction-capture-prefix" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="custom-display-id-config-transaction-journal-entries-log-detail-request-types-transaction-void-prefix" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="custom-display-id-config-transaction-journal-entries-log-detail-request-types-transaction-refund-prefix" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> ${0} </div> `),(()=>o.transaction_journal_entries.transaction_separator),(e=>{o.transaction_journal_entries.transaction_separator=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>o.transaction_journal_entries.log_detail_request_types.transaction_authcapture.prefix),(e=>{o.transaction_journal_entries.log_detail_request_types.transaction_authcapture.prefix=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>o.transaction_journal_entries.log_detail_request_types.transaction_capture.prefix),(e=>{o.transaction_journal_entries.log_detail_request_types.transaction_capture.prefix=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>o.transaction_journal_entries.log_detail_request_types.transaction_void.prefix),(e=>{o.transaction_journal_entries.log_detail_request_types.transaction_void.prefix=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>o.transaction_journal_entries.log_detail_request_types.transaction_refund.prefix),(e=>{o.transaction_journal_entries.log_detail_request_types.transaction_refund.prefix=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),o.start&&o.length&&i/10<=r?s(q||(q=M` <table style="font-family:monospace" class="col-span-2 text-xs text-secondary whitespace-nowrap"> <tbody> <tr> <td style="width:1%"> <foxy-i18n infer="" key="custom-display-id-config-transaction-journal-entries-authcapture-example"> </foxy-i18n> </td> <td> ${0}${0}${0}${0} </td> </tr> <tr> <td style="width:1%"> <foxy-i18n infer="" key="custom-display-id-config-transaction-journal-entries-capture-example"> </foxy-i18n> </td> <td> ${0}${0}${0}${0} </td> </tr> <tr> <td style="width:1%"> <foxy-i18n infer="" key="custom-display-id-config-transaction-journal-entries-void-example"> </foxy-i18n> </td> <td> ${0}${0}${0}${0} </td> </tr> <tr> <td style="width:1%"> <foxy-i18n infer="" key="custom-display-id-config-transaction-journal-entries-refund-example"> </foxy-i18n> </td> <td> ${0}${0}${0}${0} </td> </tr> </tbody> </table> `),a,o.transaction_journal_entries.transaction_separator,o.transaction_journal_entries.log_detail_request_types.transaction_authcapture.prefix,c,a,o.transaction_journal_entries.transaction_separator,o.transaction_journal_entries.log_detail_request_types.transaction_capture.prefix,c,a,o.transaction_journal_entries.transaction_separator,o.transaction_journal_entries.log_detail_request_types.transaction_void.prefix,c,a,o.transaction_journal_entries.transaction_separator,o.transaction_journal_entries.log_detail_request_types.transaction_refund.prefix,c):""):""):"")}__renderSmtpConfig(){return s(O||(O=M` <div class="grid grid-cols-2 gap-m p-m rounded-t-l rounded-b-l border border-contrast-10 sm-col-span-2"> ${0} </div> `),["host","port","username","password","security"].map((e=>{const t=()=>JSON.parse(this.form.smtp_config||"{}")[e],o=t=>{var o,i,r,s,n;const a=JSON.parse(this.form.smtp_config||"{}");this.edit({smtp_config:JSON.stringify({username:null!==(o=a.username)&&void 0!==o?o:"",password:null!==(i=a.password)&&void 0!==i?i:"",security:null!==(r=a.security)&&void 0!==r?r:"",host:null!==(s=a.host)&&void 0!==s?s:"",port:null!==(n=a.port)&&void 0!==n?n:"",[e]:t})})},i=`smtp-config-${e}`;return"password"===e?s(C||(C=M` <foxy-internal-password-control infer="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-password-control> `),i,t,o):"port"===e?s(U||(U=M` <foxy-internal-integer-control infer="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-integer-control> `),i,t,o):"security"===e?s(E||(E=M` <foxy-internal-radio-group-control infer="${0}" class="-mt-xs -mx-xs -mb-m col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-radio-group-control> `),i,t,o,[{label:"option_ssl",value:"ssl"},{label:"option_tls",value:"tls"},{label:"option_none",value:""}]):s(N||(N=M` <foxy-internal-text-control infer="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> `),i,t,o)})))}__renderWarning(e,t){return s(I||(I=M` <div class="p-s leading-m text-s rounded bg-primary-10 text-primary sm-col-span-2"> <foxy-i18n infer="" key="${0}"></foxy-i18n> ${0} </div> `),e,t?s(R||(R=M` <a target="_blank" class="font-semibold hover-underline rounded focus-outline-none focus-ring-2 focus-ring-primary" href="${0}" lang="en"> ${0} <iron-icon class="icon-inline" icon="icons:open-in-new"></iron-icon> </a> `),t.href,t.caption):"")}__renderLoader(e){var t;const o=`loader-${e}`;return{data:null===(t=this.renderRoot.querySelector(`#${o}`))||void 0===t?void 0:t.data,render:e=>s(T||(T=M` <foxy-nucleon class="hidden" infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> `),n(null!=e?e:void 0),o,(()=>this.requestUpdate()))}}}customElements.define("foxy-store-form",P);export{P as StoreForm};
|
|
1
|
+
import"./shared-ad8141c4.js";import"./shared-2f1e04ae.js";import{I as e}from"./shared-71deb26e.js";import{_ as t}from"./shared-a8ced8bf.js";import{c as o}from"./shared-4e709717.js";import{r as i}from"./shared-d519a301.js";import{l as r}from"./shared-f3b35364.js";import{h as s}from"./shared-7f33a83a.js";import"./shared-cfec6ec1.js";import"./shared-29376ba1.js";import"./shared-f23d122e.js";import"./shared-2215e6c8.js";import{i as n}from"./shared-d3bf9ac0.js";import"./shared-40d82f6b.js";import"./shared-4457dc27.js";import"./shared-bd194cdf.js";import{I as a}from"./shared-92bd849f.js";import"./foxy-nucleon-element.js";import"./shared-0672e78b.js";import{R as l,a as c}from"./shared-29e21467.js";import{c as d}from"./shared-ff2f84c7.js";import"./shared-85f9051e.js";import"./shared-7b167fe9.js";import"./shared-c52d3772.js";import"./shared-c484320b.js";import"./shared-b28dbc68.js";import"./shared-6b8874a7.js";import"./shared-e396ec04.js";import"./shared-dc798bf4.js";import"./shared-002b788f.js";import"./shared-4c338ca6.js";import"./shared-0479553e.js";import"./shared-5ad8c9a0.js";import"./shared-4f037e43.js";import"./shared-b7423eab.js";import"./shared-d6276c83.js";import"./shared-dcbf57e0.js";import"./shared-d43fc5cc.js";import"./shared-34b11d34.js";import"./shared-bb522838.js";import"./shared-e3ce88dc.js";import"./shared-923da875.js";import"./shared-b8e9b536.js";import"./shared-ef0fc329.js";import"./shared-4975f86f.js";import"./foxy-spinner.js";import"./shared-ea316e64.js";import"./shared-92926b1d.js";let u,_,p,h=e=>e;customElements.define("foxy-internal-editable-list-control",class extends e{constructor(){super(...arguments),this.options=[],this.__newItem=""}static get properties(){return t(t({},super.properties),{},{options:{type:Array},__newItem:{attribute:!1}})}render(){const e=o({"w-xs h-xs mr-xs rounded-full transition-colors flex-shrink-0":!0,"focus-outline-none focus-ring-2 ring-inset ring-error-50":!0,"text-tertiary hover-bg-error-10 hover-text-error":!this.disabled,"cursor-default text-disabled":this.disabled,"flex items-center justify-center":!this.readonly,hidden:this.readonly}),t=o({"transition-colors h-m ml-s flex items-center":!0,"text-secondary":this.readonly,"text-disabled":this.disabled}),n=this.disabled||!this.__newItem,a=()=>{this.__newItem&&(this._value=[...this._value,{value:this.__newItem}],this.__newItem="")};return s(u||(u=h` <div class="group"> <div class="transition-colors mb-xs font-medium text-s text-secondary group-hover-text-body"> ${0} </div> <div class="border border-contrast-10 rounded transition-colors group-hover-border-contrast-20"> <ol class="transition-colors divide-y divide-contrast-10 font-medium group-hover-divide-contrast-20"> ${0} </ol> <div style="${0}" class="${0}"> <input placeholder="${0}" class="w-full bg-transparent appearance-none h-m font-medium focus-outline-none" list="list" .value="${0}" ?disabled="${0}" ?readonly="${0}" @keydown="${0}" @change="${0}" @input="${0}"> <datalist id="list"> ${0} </datalist> <div class="transition-opacity ${0}"> <button aria-label="${0}" class="${0}" ?disabled="${0}" @click="${0}"> <iron-icon icon="lumo:plus" class="icon-inline text-l"></iron-icon> </button> </div> </div> </div> <div class="transition-colors mt-xs text-xs text-secondary group-hover-text-body"> ${0} </div> </div> `),this.label,i(this._value,(e=>e.value),((o,i)=>{var r;return s(_||(_=h` <li class="${0}"> <div class="flex-1 mr-s">${0}</div> <button aria-label="${0}" class="${0}" ?disabled="${0}" @click="${0}"> <iron-icon icon="lumo:cross" class="icon-inline text-xl"></iron-icon> </button> </li> `),t,null!==(r=o.label)&&void 0!==r?r:o.value,this.t("delete"),e,this.disabled,(()=>{this._value=this._value.filter(((e,t)=>t!==i))}))})),0===this._value.length?"border-radius: calc(var(--lumo-border-radius-m) - 1px)":"border-radius: 0 0 calc(var(--lumo-border-radius-m) - 1px) calc(var(--lumo-border-radius-m) - 1px)",o({"transition-colors bg-contrast-10 pl-s h-m flex items-center":!0,"focus-within-ring-2 focus-within-ring-primary-50":!0,"group-hover-bg-contrast-20":!0,flex:!this.readonly,hidden:this.readonly}),this.placeholder,r(this.__newItem),this.disabled,this.readonly,(e=>"Enter"===e.key&&a()),(e=>e.stopPropagation()),(e=>{this.__newItem=e.currentTarget.value.trim()}),this.options.map((({label:e,value:t})=>{if(!this._value.some((e=>e.value===t)))return s(p||(p=h`<option value="${0}">${0}</option>`),t,null!=e?e:t)})),this.__newItem?"opacity-100":"opacity-0",this.t("submit"),o({"w-xs h-xs mr-xs flex-shrink-0 ring-inset ring-success-50 focus-outline-none":!0,"flex items-center justify-center rounded-full transition-colors":!0,"bg-contrast-5 text-disabled cursor-default":n,"bg-success-10 text-success cursor-pointer":!n,"hover-bg-success hover-text-success-contrast":!n,"focus-ring-2":!n}),n,a,this.helperText)}get _value(){var e;return null!==(e=super._value)&&void 0!==e?e:[]}set _value(e){super._value=e}});let m,f=e=>e;customElements.define("foxy-internal-password-control",class extends e{renderControl(){return s(m||(m=f` <vaadin-password-field error-message="${0}" helper-text="${0}" placeholder="${0}" label="${0}" class="w-full" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" .value="${0}" @keydown="${0}" @input="${0}"> </vaadin-password-field> `),n(this._errorMessage),this.helperText,this.placeholder,this.label,this.disabled,this.readonly,this._checkValidity,this._value,(e=>{var t;return"Enter"===e.key&&(null===(t=this.nucleon)||void 0===t?void 0:t.submit())}),(e=>{const t=e.currentTarget;this._value=t.value}))}get _value(){var e;return null!==(e=super._value)&&void 0!==e?e:""}set _value(e){super._value=e}});let g,y,x,v,b,$,k,V,j,w,S,q,O,C,U,E,N,I,R,T,M=e=>e;const J=l(c(a,"store-form"));class P extends J{constructor(){super(...arguments),this.customerPasswordHashTypes=null,this.shippingAddressTypes=null,this.storeVersions=null,this.checkoutTypes=null,this.localeCodes=null,this.languages=null,this.timezones=null,this.countries=null,this.regions=null,this.__singleCheckboxGroupOptions=[{label:"option_checked",value:"checked"}],this.__appSessionTimeOptions=[{value:"s",label:"second"},{value:"m",label:"minute"},{value:"h",label:"hour"},{value:"d",label:"day"}],this.__getStoreEmailValue=()=>{var e;return(null!==(e=this.form.store_email)&&void 0!==e?e:"").split(",").map((e=>({value:e.trim()}))).filter((({value:e})=>e.length>0))},this.__setStoreEmailValue=e=>{this.edit({store_email:e.map((e=>e.value)).join(",")})},this.__getBccOnReceiptEmailValue=()=>this.form.bcc_on_receipt_email?["checked"]:[],this.__setBccOnReceiptEmailValue=e=>{this.edit({bcc_on_receipt_email:e.includes("checked")})},this.__getUseEmailDnsValue=()=>this.form.use_email_dns?["checked"]:[],this.__setUseEmailDnsValue=e=>{this.edit({use_email_dns:e.includes("checked")})},this.__getUseSmtpConfigValue=()=>this.form.smtp_config?["checked"]:[],this.__setUseSmtpConfigValue=e=>{e.includes("checked")?this.edit({smtp_config:JSON.stringify({username:"",password:"",security:"",host:"",port:""})}):this.edit({smtp_config:""})},this.__getFeaturesMultishipValue=()=>this.form.features_multiship?["checked"]:[],this.__setFeaturesMultishipValue=e=>{this.edit({features_multiship:e.includes("checked")})},this.__getRequireSignedShippingRatesValue=()=>this.form.require_signed_shipping_rates?["checked"]:[],this.__setRequireSignedShippingRatesValue=e=>{this.edit({require_signed_shipping_rates:e.includes("checked")})},this.__getAppSessionTimeValue=()=>{const e=this.form.app_session_time||43200;return e%86400==0?e/86400+"d":e%3600==0?e/3600+"h":e%60==0?e/60+"m":`${e}s`},this.__setAppSessionTimeValue=e=>{const t=e[e.length-1],o=parseInt(e.substring(0,e.length-1));this.edit({app_session_time:{d:86400,h:3600,m:60,s:1}[t]*o})},this.__getProductsRequireExpiresPropertyValue=()=>this.form.products_require_expires_property?["checked"]:[],this.__setProductsRequireExpiresPropertyValue=e=>{this.edit({products_require_expires_property:e.includes("checked")})},this.__getUseCartValidationValue=()=>this.form.use_cart_validation?["checked"]:[],this.__setUseCartValidationValue=e=>{this.edit({use_cart_validation:e.includes("checked")})},this.__getSingleSignOnUrlValue=()=>{var e;return this.form.use_single_sign_on&&null!==(e=this.form.single_sign_on_url)&&void 0!==e?e:""},this.__setSingleSignOnUrlValue=e=>{this.edit({use_single_sign_on:!!e,single_sign_on_url:e})},this.__getWebhookUrlValue=()=>{var e;return this.form.use_webhook&&null!==(e=this.form.webhook_url)&&void 0!==e?e:""},this.__setWebhookUrlValue=e=>{this.edit({use_webhook:!!e,webhook_url:e})},this.__setStoreDomainValue=e=>{if(e.endsWith(".foxycart.com")){const t=e.substring(0,e.length-13);this.edit({store_domain:t,use_remote_domain:t.includes(".")})}else this.edit({store_domain:e,use_remote_domain:e.includes(".")})}}static get properties(){return t(t({},super.properties),{},{customerPasswordHashTypes:{attribute:"customer-password-hash-types"},shippingAddressTypes:{attribute:"shipping-address-types"},storeVersions:{attribute:"store-versions"},checkoutTypes:{attribute:"checkout-types"},localeCodes:{attribute:"locale-codes"},languages:{},timezones:{},countries:{},regions:{}})}static get v8n(){return[({store_name:e})=>!!e||"store-name:v8n_required",({store_name:e})=>e&&e.length<=50||"store-name:v8n_too_long",({store_domain:e})=>!!e||"store-domain:v8n_required",({store_domain:e})=>e&&e.length<=50||"store-domain:v8n_too_long",({store_url:e})=>!!e||"store-url:v8n_required",({store_url:e})=>e&&e.length<=300||"store-url:v8n_too_long",({receipt_continue_url:e})=>!e||e.length<=300||"receipt-continue-url:v8n_too_long",({store_email:e})=>!!e||"store-email:v8n_required",({store_email:e})=>e&&e.length<=300||"store-email:v8n_too_long",({from_email:e})=>!e||e.length<=100||"from-email:v8n_too_long",({smtp_config:e})=>!e||e.length<=1e3||"use-smtp-config:v8n_too_long",({postal_code:e})=>!!e||"postal-code:v8n_required",({postal_code:e})=>e&&e.length<=50||"postal-code:v8n_too_long",({region:e})=>!!e||"region:v8n_required",({region:e})=>e&&e.length<=100||"region:v8n_too_long",({country:e})=>!!e||"country:v8n_required",({logo_url:e})=>!e||e.length<=100||"logo-url:v8n_too_long",({webhook_url:e,use_webhook:t})=>!t||!!e||"webhook-url:v8n_required",({webhook_url:e,use_webhook:t})=>!t||e&&e.length<=300||"webhook-url:too_long",({webhook_key:e,use_webhook:t,use_cart_validation:o})=>!t&&!o||!!e||"webhook-key:v8n_required",({webhook_url:e,use_webhook:t,use_cart_validation:o})=>!t&&!o||e&&e.length<=200||"webhook-key:v8n_too_long",({single_sign_on_url:e,use_single_sign_on:t})=>!t||!!e||"single-sign-on-url:v8n_required",({single_sign_on_url:e,use_single_sign_on:t})=>!t||e&&e.length<=300||"single-sign-on-url:too_long",({customer_password_hash_config:e})=>!e||String(e).length<=100||"customer-password-hash-config:v8n_too_long",({unified_order_entry_password:e})=>!e||String(e).length<=100||"unified-order-entry-password:v8n_too_long",({custom_display_id_config:e})=>!e||String(e).length<=100||"custom-display-id-config-enabled:v8n_too_long"]}renderBody(){var e,t,o,i,r,a,l,c,d,u,_,p,h,m,f,v,b,$,k,V,j,w,S;const q=this.form.use_email_dns&&!(null===(e=this.data)||void 0===e?void 0:e.use_email_dns)&&!this.hiddenSelector.matches("use-email-dns",!0),O=this.form.require_signed_shipping_rates&&!(null===(t=this.data)||void 0===t?void 0:t.require_signed_shipping_rates)&&!this.hiddenSelector.matches("require-signed-shipping-rates",!0),C=this.form.products_require_expires_property&&!(null===(o=this.data)||void 0===o?void 0:o.products_require_expires_property)&&!this.hiddenSelector.matches("products-require-expires-property",!0),U=this.form.use_cart_validation&&!(null===(i=this.data)||void 0===i?void 0:i.use_cart_validation)&&!this.hiddenSelector.matches("use-cart-validation",!0),E=this.t(this.form.use_remote_domain&&!(null===(r=this.data)||void 0===r?void 0:r.use_remote_domain)?"store-domain.custom_domain_note":"store-domain.helper_text"),N=!this.form.store_domain||this.form.store_domain.includes(".")?"":".foxycart.com",I=this.__renderLoader(1),R=this.__renderLoader(2),T=this.__renderLoader(3),J=this.__renderLoader(4),P=this.__renderLoader(5),D=this.__renderLoader(6),L=this.__renderLoader(7),A=this.__renderLoader(8),W=this.__renderLoader(9),B=Object.entries(null!==(l=null===(a=null==R?void 0:R.data)||void 0===a?void 0:a.values)&&void 0!==l?l:{}),G=null==J?void 0:J.data,z=null==P?void 0:P.data,F=null==D?void 0:D.data,H=null!==(d=null===(c=null==L?void 0:L.data)||void 0===c?void 0:c.values.timezone)&&void 0!==d?d:[],K=Object.values(null!==(_=null===(u=null==A?void 0:A.data)||void 0===u?void 0:u.values)&&void 0!==_?_:{}),Q=Object.values(null!==(h=null===(p=null==W?void 0:W.data)||void 0===p?void 0:p.values)&&void 0!==h?h:{}),X=Object.entries(null!==(f=null===(m=null==I?void 0:I.data)||void 0===m?void 0:m.values)&&void 0!==f?f:{}),Y=Object.entries(null!==(b=null===(v=null==T?void 0:T.data)||void 0===v?void 0:v.values)&&void 0!==b?b:{}),Z=Object.entries(null!==($=null==z?void 0:z.values)&&void 0!==$?$:{}),ee=Object.entries(null!==(k=null==F?void 0:F.values)&&void 0!==k?k:{}),te=X.map((e=>({label:e[1].description,value:e[0]}))),oe=B.map((([e,t])=>({label:t,value:e}))),ie=Y.map((([e,t])=>({label:t,value:e}))),re=Z.map((([e,t])=>({value:e,label:t}))),se=ee.map((([e,t])=>({value:e,label:t}))),ne=H.map((e=>({label:e.description,value:e.timezone}))),ae=K.map((e=>({label:e.default,value:e.cc2}))),le=Q.map((e=>({label:e.default,value:e.code})));let ce;try{const e=new URL(null!==(V=this.regions)&&void 0!==V?V:""),t=this.form.country;t&&e.searchParams.set("country_code",t),ce=e.toString()}catch(e){ce=void 0}return s(g||(g=M` ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} <div class="grid gap-m grid-cols-1 sm-grid-cols-2"> <foxy-internal-text-control infer="store-name"></foxy-internal-text-control> <foxy-internal-text-control infer="logo-url"></foxy-internal-text-control> <foxy-internal-text-control helper-text="${0}" suffix="${0}" infer="store-domain" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="store-url"></foxy-internal-text-control> <foxy-internal-editable-list-control infer="store-email" class="sm-col-span-2" .getValue="${0}" .setValue="${0}"> </foxy-internal-editable-list-control> <foxy-internal-select-control infer="timezone" class="sm-col-span-2" .options="${0}"> </foxy-internal-select-control> <foxy-internal-async-combo-box-control item-label-path="version" item-value-path="_links.self.href" infer="store-version-uri" first="${0}" .selectedItem="${0}"> </foxy-internal-async-combo-box-control> <foxy-internal-text-control infer="from-email" class="sm-col-span-2" placeholder="${0}"> </foxy-internal-text-control> <foxy-internal-checkbox-group-control infer="bcc-on-receipt-email" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> <foxy-internal-checkbox-group-control infer="use-email-dns" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} <foxy-internal-checkbox-group-control infer="use-smtp-config" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} <foxy-internal-select-control infer="country" .options="${0}"> </foxy-internal-select-control> <foxy-internal-select-control infer="region" .options="${0}"> </foxy-internal-select-control> <foxy-internal-text-control infer="postal-code"></foxy-internal-text-control> <foxy-internal-select-control infer="shipping-address-type" .options="${0}"> </foxy-internal-select-control> <foxy-internal-checkbox-group-control infer="features-multiship" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> <foxy-internal-checkbox-group-control infer="require-signed-shipping-rates" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} <foxy-internal-select-control infer="language" .options="${0}"> </foxy-internal-select-control> <foxy-internal-select-control infer="locale-code" .options="${0}"> </foxy-internal-select-control> ${0} ${0} <foxy-internal-text-control class="sm-col-span-2" infer="receipt-continue-url"> </foxy-internal-text-control> <foxy-internal-frequency-control class="sm-col-span-2" infer="app-session-time" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-frequency-control> <foxy-internal-checkbox-group-control infer="products-require-expires-property" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} <foxy-internal-checkbox-group-control infer="use-cart-validation" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} <foxy-internal-select-control infer="checkout-type" class="sm-col-span-2" .options="${0}"> </foxy-internal-select-control> <foxy-internal-select-control infer="customer-password-hash-type" .options="${0}" .setValue="${0}"> </foxy-internal-select-control> ${0} <foxy-internal-password-control infer="unified-order-entry-password"> </foxy-internal-password-control> <foxy-internal-text-control infer="single-sign-on-url" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="webhook-url" class="sm-col-span-2" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> ${0} ${0} </div> ${0} `),I.render(this.customerPasswordHashTypes),R.render(this.shippingAddressTypes),T.render(this.checkoutTypes),J.render(this.form.store_version_uri),P.render(this.localeCodes),L.render(this.timezones),A.render(this.countries),D.render(this.languages),W.render(ce),E,N,this.__setStoreDomainValue,this.__getStoreEmailValue,this.__setStoreEmailValue,ne,n(null!==(j=this.storeVersions)&&void 0!==j?j:void 0),G,null!==(S=null===(w=this.__getStoreEmailValue()[0])||void 0===w?void 0:w.value)&&void 0!==S?S:this.t("from-email.placeholder"),this.__getBccOnReceiptEmailValue,this.__setBccOnReceiptEmailValue,this.__singleCheckboxGroupOptions,this.__getUseEmailDnsValue,this.__setUseEmailDnsValue,this.__singleCheckboxGroupOptions,q?this.__renderWarning("use_email_dns_helper_text",{href:"https://wiki.foxycart.com/v/1.1/emails#how_emails_are_sent_spf_dkim_dmarc_etc",caption:"How Emails Are Sent (SPF, DKIM, DMARC, etc.)"}):"",this.__getUseSmtpConfigValue,this.__setUseSmtpConfigValue,this.__singleCheckboxGroupOptions,this.form.smtp_config&&!this.hiddenSelector.matches("smtp-config",!0)?this.__renderSmtpConfig():"",ae,le,oe,this.__getFeaturesMultishipValue,this.__setFeaturesMultishipValue,this.__singleCheckboxGroupOptions,this.__getRequireSignedShippingRatesValue,this.__setRequireSignedShippingRatesValue,this.__singleCheckboxGroupOptions,O?this.__renderWarning("require_signed_shipping_rates_helper_text"):"",se,re,this.hiddenSelector.matches("currency-style",!0)?"":this.__renderCurrencyStyleSelector(),this.hiddenSelector.matches("custom-display-id-config",!0)?"":this.__renderCustomIDSettings(),this.__getAppSessionTimeValue,this.__setAppSessionTimeValue,this.__appSessionTimeOptions,this.__getProductsRequireExpiresPropertyValue,this.__setProductsRequireExpiresPropertyValue,this.__singleCheckboxGroupOptions,C?this.__renderWarning("products_require_expires_property_helper_text"):"",this.__getUseCartValidationValue,this.__setUseCartValidationValue,this.__singleCheckboxGroupOptions,U?this.__renderWarning("use_cart_validation_helper_text",{href:"https://wiki.foxycart.com/v/2.0/hmac_validation",caption:"HMAC Product Verification: Locking Down your Add-To-Cart Links and Forms"}):"",ie,te,(e=>{var t;const o=X.find((([t])=>t===e));this.edit({customer_password_hash_type:e,customer_password_hash_config:null!==(t=null==o?void 0:o[1].config)&&void 0!==t?t:""})}),"number"==typeof this.form.customer_password_hash_config?s(y||(y=M` <foxy-internal-number-control infer="customer-password-hash-config"> </foxy-internal-number-control> `)):s(x||(x=M` <foxy-internal-text-control infer="customer-password-hash-config"> </foxy-internal-text-control> `)),this.__getSingleSignOnUrlValue,this.__setSingleSignOnUrlValue,this.__getWebhookUrlValue,this.__setWebhookUrlValue,this.__renderWebhookKey(),this.data&&!this.hiddenSelector.matches("is-maintenance-mode",!0)?this.__renderMaintenanceModeSwitch():"",super.renderBody())}__renderWebhookKey(){var e,t;let o;try{o=JSON.parse(null!==(e=this.form.webhook_key)&&void 0!==e?e:"")}catch(e){const i=null!==(t=this.form.webhook_key)&&void 0!==t?t:"";o={cart_signing:i,xml_datafeed:i,api_legacy:i,sso:i}}return Object.keys(o).map((e=>s(v||(v=M` <foxy-internal-password-control infer="webhook-key-${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-password-control> `),e.replace("_","-"),(()=>o[e]),(t=>{o[e]=t,this.edit({webhook_key:JSON.stringify(o)})}))))}__renderMaintenanceModeSwitch(){var e;const t=!!(null===(e=this.data)||void 0===e?void 0:e.is_maintenance_mode),i=(t?"disable":"enable")+"_maintenance_mode",r=`maintenance_mode_${t?"on":"off"}_explainer`;return s(b||(b=M` <div class="${0}"> <foxy-i18n infer="" class="block mb-s" key="${0}"></foxy-i18n> <vaadin-button theme="tertiary small ${0}" class="p-0" @click="${0}"> <foxy-i18n infer="" key="${0}"></foxy-i18n> </vaadin-button> </div> `),o({"rounded-t-l rounded-b-l leading-s text-s sm-col-span-2":!0,"text-tertiary":!t,"text-error":t}),r,t?"contrast":"",(()=>{this.edit({is_maintenance_mode:!this.form.is_maintenance_mode}),this.submit()}),i)}__renderCurrencyStyleSelector(){const e={101:0,100:0,"001":1,"000":2,111:3,110:3,"011":4,"010":5},t=[this.form.hide_currency_symbol,this.form.hide_decimal_characters,this.form.use_international_currency_symbol].map((e=>Number(Boolean(e)))).join(""),i=e[t];return s($||($=M` <div class="grid grid-cols-1 gap-xs transition-colors text-secondary hover-text-body sm-col-span-2"> <foxy-i18n infer="" class="font-medium text-s" key="currency_style_label"> </foxy-i18n> <div class="grid grid-cols-3 bg-contrast-10" style="gap:1px;padding:1px;border-radius:calc(var(--lumo-border-radius-m) + 1px)"> ${0} </div> <foxy-i18n infer="" class="text-xs" key="currency_style_helper_text"> </foxy-i18n> </div> `),["12.34","$12.34","USD 12.34","12","$12","USD 12"].map(((t,r)=>s(k||(k=M` <label class="${0}"> <span class="font-medium font-tnum">${0}</span> <input class="sr-only" value="${0}" type="radio" name="currency-style" ?checked="${0}" @change="${0}"> </label> `),o({"relative z-0 px-s h-m flex items-center transition-colors":!0,"hover-cursor-pointer":!0,"focus-within-z-10 focus-within-ring-2 focus-within-ring-primary-50":!0,"bg-base text-body hover-bg-transparent":r!==i,"bg-primary text-primary-contrast":r===i,"rounded-tl":0===r,"rounded-tr":2===r,"rounded-bl":3===r,"rounded-br":5===r}),t,r,r===i,(()=>{const t=Object.entries(e).find((e=>e[1]===r))[0];this.edit({hide_currency_symbol:Boolean(Number(t[0])),hide_decimal_characters:Boolean(Number(t[1])),use_international_currency_symbol:Boolean(Number(t[2]))})})))))}__renderCustomIDSettings(){var e;const t={enabled:!1,start:"0",length:"0",prefix:"",suffix:"",transaction_journal_entries:{enabled:!1,transaction_separator:"",log_detail_request_types:{transaction_authcapture:{prefix:""},transaction_capture:{prefix:""},transaction_refund:{prefix:""},transaction_void:{prefix:""}}}};let o;try{o=JSON.parse(null!==(e=this.form.custom_display_id_config)&&void 0!==e?e:"")}catch(e){o=d(t)}const i=parseInt(o.start||"0"),r=parseInt(o.length||"0")-o.prefix.length-o.suffix.length,n=Math.min(i+Math.floor(Math.random()*Math.pow(10,r)),Math.pow(10,r)-1),a=`${o.prefix}${n.toString().padStart(r,"0")}${o.suffix}`,l=Math.floor(1e3*Math.random()),c=String(l).padStart(3,"0");return s(V||(V=M` <foxy-internal-checkbox-group-control infer="custom-display-id-config-enabled" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} `),(()=>o.enabled?["checked"]:[]),(e=>{o.enabled=e.includes("checked"),this.edit({custom_display_id_config:JSON.stringify(o)})}),this.__singleCheckboxGroupOptions,o.enabled?s(j||(j=M` <div class="rounded-t-l rounded-b-l border border-contrast-10 p-m grid grid-cols-2 gap-m sm-col-span-2"> <foxy-internal-integer-control infer="custom-display-id-config-start" min="0" .getValue="${0}" .setValue="${0}"> </foxy-internal-integer-control> <foxy-internal-integer-control infer="custom-display-id-config-length" min="0" .getValue="${0}" .setValue="${0}"> </foxy-internal-integer-control> <foxy-internal-text-control infer="custom-display-id-config-prefix" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="custom-display-id-config-suffix" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> ${0} </div> <foxy-internal-checkbox-group-control infer="custom-display-id-config-transaction-journal-entries-enabled" class="-mt-xs -mb-m sm-col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> ${0} `),(()=>parseInt(o.start||"0")),(e=>{o.start=String(e),this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>parseInt(o.length||"0")),(e=>{o.length=String(e),this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>o.prefix),(e=>{o.prefix=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>o.suffix),(e=>{o.suffix=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),o.start&&o.length&&i/10<=r?s(w||(w=M` <table style="font-family:monospace" class="col-span-2 text-xs text-secondary whitespace-nowrap"> <tbody> <tr> <td style="width:1%"> <foxy-i18n infer="" key="custom-display-id-config-first-example"> </foxy-i18n> </td> <td> ${0}${0}${0} </td> </tr> <tr style="width:1%"> <td> <foxy-i18n infer="" key="custom-display-id-config-random-example"> </foxy-i18n> </td> <td>${0}</td> </tr> </tbody> </table> `),o.prefix,i.toString().padStart(r,"0"),o.suffix,a):"",(()=>o.transaction_journal_entries.enabled?["checked"]:[]),(e=>{o.transaction_journal_entries.enabled=e.includes("checked"),this.edit({custom_display_id_config:JSON.stringify(o)})}),this.__singleCheckboxGroupOptions,o.transaction_journal_entries.enabled?s(S||(S=M` <div class="rounded-t-l rounded-b-l border border-contrast-10 p-m grid grid-cols-2 gap-m sm-col-span-2"> <foxy-internal-text-control infer="custom-display-id-config-transaction-journal-entries-transaction-separator" class="col-span-2" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="custom-display-id-config-transaction-journal-entries-log-detail-request-types-transaction-authcapture-prefix" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="custom-display-id-config-transaction-journal-entries-log-detail-request-types-transaction-capture-prefix" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="custom-display-id-config-transaction-journal-entries-log-detail-request-types-transaction-void-prefix" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> <foxy-internal-text-control infer="custom-display-id-config-transaction-journal-entries-log-detail-request-types-transaction-refund-prefix" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> ${0} </div> `),(()=>o.transaction_journal_entries.transaction_separator),(e=>{o.transaction_journal_entries.transaction_separator=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>o.transaction_journal_entries.log_detail_request_types.transaction_authcapture.prefix),(e=>{o.transaction_journal_entries.log_detail_request_types.transaction_authcapture.prefix=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>o.transaction_journal_entries.log_detail_request_types.transaction_capture.prefix),(e=>{o.transaction_journal_entries.log_detail_request_types.transaction_capture.prefix=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>o.transaction_journal_entries.log_detail_request_types.transaction_void.prefix),(e=>{o.transaction_journal_entries.log_detail_request_types.transaction_void.prefix=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),(()=>o.transaction_journal_entries.log_detail_request_types.transaction_refund.prefix),(e=>{o.transaction_journal_entries.log_detail_request_types.transaction_refund.prefix=e,this.edit({custom_display_id_config:JSON.stringify(o)})}),o.start&&o.length&&i/10<=r?s(q||(q=M` <table style="font-family:monospace" class="col-span-2 text-xs text-secondary whitespace-nowrap"> <tbody> <tr> <td style="width:1%"> <foxy-i18n infer="" key="custom-display-id-config-transaction-journal-entries-authcapture-example"> </foxy-i18n> </td> <td> ${0}${0}${0}${0} </td> </tr> <tr> <td style="width:1%"> <foxy-i18n infer="" key="custom-display-id-config-transaction-journal-entries-capture-example"> </foxy-i18n> </td> <td> ${0}${0}${0}${0} </td> </tr> <tr> <td style="width:1%"> <foxy-i18n infer="" key="custom-display-id-config-transaction-journal-entries-void-example"> </foxy-i18n> </td> <td> ${0}${0}${0}${0} </td> </tr> <tr> <td style="width:1%"> <foxy-i18n infer="" key="custom-display-id-config-transaction-journal-entries-refund-example"> </foxy-i18n> </td> <td> ${0}${0}${0}${0} </td> </tr> </tbody> </table> `),a,o.transaction_journal_entries.transaction_separator,o.transaction_journal_entries.log_detail_request_types.transaction_authcapture.prefix,c,a,o.transaction_journal_entries.transaction_separator,o.transaction_journal_entries.log_detail_request_types.transaction_capture.prefix,c,a,o.transaction_journal_entries.transaction_separator,o.transaction_journal_entries.log_detail_request_types.transaction_void.prefix,c,a,o.transaction_journal_entries.transaction_separator,o.transaction_journal_entries.log_detail_request_types.transaction_refund.prefix,c):""):""):"")}__renderSmtpConfig(){return s(O||(O=M` <div class="grid grid-cols-2 gap-m p-m rounded-t-l rounded-b-l border border-contrast-10 sm-col-span-2"> ${0} </div> `),["host","port","username","password","security"].map((e=>{const t=()=>JSON.parse(this.form.smtp_config||"{}")[e],o=t=>{var o,i,r,s,n;const a=JSON.parse(this.form.smtp_config||"{}");this.edit({smtp_config:JSON.stringify({username:null!==(o=a.username)&&void 0!==o?o:"",password:null!==(i=a.password)&&void 0!==i?i:"",security:null!==(r=a.security)&&void 0!==r?r:"",host:null!==(s=a.host)&&void 0!==s?s:"",port:null!==(n=a.port)&&void 0!==n?n:"",[e]:t})})},i=`smtp-config-${e}`;return"password"===e?s(C||(C=M` <foxy-internal-password-control infer="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-password-control> `),i,t,o):"port"===e?s(U||(U=M` <foxy-internal-integer-control infer="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-integer-control> `),i,t,o):"security"===e?s(E||(E=M` <foxy-internal-radio-group-control infer="${0}" class="-mt-xs -mx-xs -mb-m col-span-2" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-radio-group-control> `),i,t,o,[{label:"option_ssl",value:"ssl"},{label:"option_tls",value:"tls"},{label:"option_none",value:""}]):s(N||(N=M` <foxy-internal-text-control infer="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> `),i,t,o)})))}__renderWarning(e,t){return s(I||(I=M` <div class="p-s leading-m text-s rounded bg-primary-10 text-primary sm-col-span-2"> <foxy-i18n infer="" key="${0}"></foxy-i18n> ${0} </div> `),e,t?s(R||(R=M` <a target="_blank" class="font-semibold hover-underline rounded focus-outline-none focus-ring-2 focus-ring-primary" href="${0}" lang="en"> ${0} <iron-icon class="icon-inline" icon="icons:open-in-new"></iron-icon> </a> `),t.href,t.caption):"")}__renderLoader(e){var t;const o=`loader-${e}`;return{data:null===(t=this.renderRoot.querySelector(`#${o}`))||void 0===t?void 0:t.data,render:e=>s(T||(T=M` <foxy-nucleon class="hidden" infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> `),n(null!=e?e:void 0),o,(()=>this.requestUpdate()))}}}customElements.define("foxy-store-form",P);export{P as StoreForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-4610cbdb.js";import"./shared-6dafebaf.js";import"./shared-0d91f648.js";import"./shared-0565ecbc.js";import"./shared-fd124dfd.js";import"./shared-45418f3b.js";import{I as e}from"./shared-10dbb9d7.js";import{i}from"./shared-d3bf9ac0.js";import{h as t}from"./shared-7f33a83a.js";import"./shared-b567541a.js";import{I as r}from"./shared-081ad02f.js";import"./foxy-nucleon-element.js";import"./shared-b98f0ad9.js";import{I as s}from"./shared-ffea7639.js";import"./foxy-pagination.js";import"./foxy-spinner.js";import"./shared-93c15291.js";import{_ as n}from"./shared-a8ced8bf.js";import{C as o}from"./shared-a8966936.js";import{N as a}from"./shared-15278fe0.js";import{T as d,a as l}from"./shared-a5000f1f.js";import{c as p}from"./shared-4e709717.js";import{B as h}from"./shared-2af327d0.js";import"./shared-86be537c.js";import"./shared-a8ada44e.js";import"./shared-7ca327ea.js";import"./shared-a420358e.js";import"./shared-3ef5c283.js";import"./shared-cd14b0cc.js";import"./shared-760cc838.js";import"./shared-4f037e43.js";import"./shared-d6276c83.js";import"./shared-4a796610.js";import"./shared-0479553e.js";import"./shared-74b7438a.js";let c,m=e=>e;customElements.define("foxy-internal-text-area-control",class extends e{renderControl(){return t(c||(c=m` <vaadin-text-area error-message="${0}" helper-text="${0}" placeholder="${0}" label="${0}" class="w-full" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" .value="${0}" @keydown="${0}" @input="${0}"> </vaadin-text-area> `),i(this._errorMessage),this.helperText,this.placeholder,this.label,this.disabled,this.readonly,this._checkValidity,this._value,(e=>{var i;return"Enter"===e.key&&(null===(i=this.nucleon)||void 0===i?void 0:i.submit())}),(e=>{const i=e.currentTarget;this._value=i.value}))}get _value(){var e;return null!==(e=super._value)&&void 0!==e?e:""}set _value(e){super._value=e}});let u,f=e=>e;const g=o(d(a));customElements.define("foxy-internal-store-shipping-method-form-services-page-item-content",class extends g{constructor(){super(...arguments),this.shippingServiceUri=null,this.shippingMethodUri=null}static get properties(){return n(n({},super.properties),{},{shippingServiceUri:{type:String,attribute:"shipping-service-uri"},shippingMethodUri:{type:String,attribute:"shipping-method-uri"}})}render(){return t(u||(u=f` <div class="h-full flex items-center"> <vaadin-checkbox data-testid="checkbox" class="w-full" ?disabled="${0}" ?readonly="${0}" ?checked="${0}" @change="${0}"> <slot></slot> </vaadin-checkbox> </div> `),!this.in("idle")||this.disabled,this.readonly,!!this.data,(e=>{var i,t;e.currentTarget.checked?(this.edit({shipping_service_uri:null!==(i=this.shippingServiceUri)&&void 0!==i?i:"",shipping_method_uri:null!==(t=this.shippingMethodUri)&&void 0!==t?t:""}),this.submit()):this.delete()}))}});let v,_=e=>e;const x=o(d(a));customElements.define("foxy-internal-store-shipping-method-form-services-page-item",class extends x{constructor(){super(...arguments),this.internationalAllowed=!1,this.shippingServiceUri=null,this.shippingMethodUri=null}static get properties(){return n(n({},super.properties),{},{internationalAllowed:{type:Boolean,attribute:"international-allowed"},shippingServiceUri:{type:String,attribute:"shipping-service-uri"},shippingMethodUri:{type:String,attribute:"shipping-method-uri"}})}render(){var e,r,s;const n=null===(e=this.data)||void 0===e?void 0:e._embedded["fx:store_shipping_services"][0],o=n?void 0:this.href,a=n?n._links.self.href:void 0;return t(v||(v=_` <foxy-internal-store-shipping-method-form-services-page-item-content shipping-service-uri="${0}" shipping-method-uri="${0}" data-testid="content" parent="${0}" class="h-full" infer="" href="${0}"> <slot></slot> <span class="${0}"> <slot name="suffix"></slot> </span> </foxy-internal-store-shipping-method-form-services-page-item-content> `),i(null!==(r=this.shippingServiceUri)&&void 0!==r?r:void 0),i(null!==(s=this.shippingMethodUri)&&void 0!==s?s:void 0),i(o),i(a),this.internationalAllowed||!a?"text-tertiary":"text-error")}});let y,b,$,S,j=e=>e;const U=o(d(l(a)));customElements.define("foxy-internal-store-shipping-method-form-services-page",class extends U{constructor(){super(...arguments),this.storeShippingServicesUri=null,this.internationalAllowed=!1,this.shippingMethodUri=null}static get properties(){return n(n({},super.properties),{},{storeShippingServicesUri:{type:String,attribute:"store-shipping-services-uri"},internationalAllowed:{type:Boolean,attribute:"international-allowed"},shippingMethodUri:{type:String,attribute:"shipping-method-uri"}})}render(){var e,r,s;const n=null!==(r=null===(e=this.data)||void 0===e?void 0:e._embedded["fx:shipping_services"])&&void 0!==r?r:[];let o=20;try{const e=parseInt(null!==(s=new URL(this.href).searchParams.get("limit"))&&void 0!==s?s:"");isNaN(e)||(o=e)}catch(e){}return t(y||(y=j` <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" infer=""> </foxy-spinner> </div> </div> `),new Array(o).fill(0).map(((e,r)=>{var s,o;const a=n[r];let d;if(a)try{const e=new URL(null!==(s=this.storeShippingServicesUri)&&void 0!==s?s:""),i=new URL(a._links.self.href).pathname.split("/").pop();e.searchParams.set("shipping_service_id",i),e.searchParams.set("limit","1"),d=e.toString()}catch(e){}return d?t($||($=j` <foxy-internal-store-shipping-method-form-services-page-item shipping-service-uri="${0}" shipping-method-uri="${0}" data-testclass="item" class="h-l truncate" infer="" href="${0}" ?international-allowed="${0}"> ${0} ${0} </foxy-internal-store-shipping-method-form-services-page-item> `),a._links.self.href,i(null!==(o=this.shippingMethodUri)&&void 0!==o?o:void 0),d,this.internationalAllowed,null==a?void 0:a.name,a.is_international?t(S||(S=j`<foxy-i18n infer="" slot="suffix" key="international_only"></foxy-i18n>`)):""):t(b||(b=j`<div class="h-l"></div>`))})),p({"pointer-events-none absolute inset-0 flex transition-opacity":!0,"opacity-0":!!this.data}),this.in("fail")?"error":this.in({idle:"template"})?"empty":"busy")}});let k,w,T=e=>e;customElements.define("foxy-internal-store-shipping-method-form-services-control",class extends s{renderControl(){var e,i;const r=null===(e=this.nucleon)||void 0===e?void 0:e.data,s=null===(i=this.nucleon)||void 0===i?void 0:i.form;if(!r)return t(k||(k=T``));const n=new URL(r._links["fx:shipping_services"].href);return n.searchParams.set("limit","10"),t(w||(w=T` <foxy-pagination first="${0}" infer=""> <foxy-i18n class="block text-s font-medium text-secondary leading-none mb-s" infer="" key="header"> </foxy-i18n> <foxy-internal-store-shipping-method-form-services-page store-shipping-services-uri="${0}" shipping-method-uri="${0}" class="border border-contrast-10 rounded-t-l rounded-b-l mb-s" infer="" ?international-allowed="${0}"> </foxy-internal-store-shipping-method-form-services-page> </foxy-pagination> `),n.toString(),r._links["fx:store_shipping_services"].href,r._links["fx:shipping_method"].href,!!s.use_for_international)}});let M,P,E=e=>e;const I=l(r,"store-shipping-method-form"),O=e=>{try{return new URL(e),!0}catch(e){return!1}};class C extends I{constructor(){super(...arguments),this.shippingMethods=null,this.__destinations=[{value:"domestic",label:"domestic"},{value:"international",label:"international"}],this.__getDestinations=()=>{const e=[];return this.form.use_for_domestic&&e.push("domestic"),this.form.use_for_international&&e.push("international"),e},this.__setDestinations=e=>{this.edit({use_for_domestic:e.includes("domestic"),use_for_international:e.includes("international")})}}static get properties(){return n(n({},super.properties),{},{shippingMethods:{type:String,attribute:"shipping-methods"}})}static get v8n(){return[({shipping_method_uri:e})=>e&&O(e)||"shipping-method-uri:required",({accountid:e})=>!e||e.length<=50||"accountid:too_long",({password:e})=>!e||e.length<=50||"password:too_long",({meter_number:e})=>!e||e.length<=50||"meter-number:too_long",({authentication_key:e})=>!e||e.length<=50||"authentication-key:too_long",({custom_code:e})=>!e||new Blob([e]).size/1024<=64||"custom-code:too_long",e=>{var i;return"CUSTOM-ENDPOINT-POST"!==(null===(i=e._embedded)||void 0===i?void 0:i["fx:shipping_method"].code)||(e.accountid&&O(e.accountid)||"endpoint:required")},e=>{var i;const t=e.shipping_container_uri,r=null===(i=e._embedded)||void 0===i?void 0:i["fx:shipping_method"].code;return!r||!["USPS","FedEx","UPS"].includes(r)||(t&&O(t)||"shipping-container-uri:required")},e=>{var i;const t=e.shipping_drop_type_uri,r=null===(i=e._embedded)||void 0===i?void 0:i["fx:shipping_method"].code;return!r||!["FedEx","UPS"].includes(r)||(t&&O(t)||"shipping-drop-type-uri:required")}]}get hiddenSelector(){var e;const i=null===(e=this.form._embedded)||void 0===e?void 0:e["fx:shipping_method"].code;if(!i)return new h("not=shipping-method-uri,timestamps,create,delete");const t=["shipping-container-uri","shipping-drop-type-uri","destinations"],r=["authentication-key","meter-number","accountid","password"],s={"CUSTOM-ENDPOINT-POST":["endpoint"],"CUSTOM-CODE":["custom-code"],CUSTOM:["destinations","services"],FedEx:[...t,...r,"services"],USPS:[...t,"services"],UPS:[...t,...r,"services"]};if(s[i]){const e=["shipping-method-uri",...s[i],"timestamps","delete","create"];return new h(`not=${e.join()} ${super.hiddenSelector}`)}return super.hiddenSelector}renderBody(){var e,r,s,o,a,d;const l=null===(e=this.form._embedded)||void 0===e?void 0:e["fx:shipping_method"];return t(M||(M=E` ${0} <foxy-internal-async-combo-box-control item-value-path="_links.self.href" item-label-path="name" first="${0}" infer="shipping-method-uri" .selectedItem="${0}" @selected-item-changed="${0}"> </foxy-internal-async-combo-box-control> <foxy-internal-async-combo-box-control item-value-path="_links.self.href" item-label-path="name" first="${0}" infer="shipping-container-uri" .selectedItem="${0}" @selected-item-changed="${0}"> </foxy-internal-async-combo-box-control> <foxy-internal-async-combo-box-control item-value-path="_links.self.href" item-label-path="name" first="${0}" infer="shipping-drop-type-uri" .selectedItem="${0}" @selected-item-changed="${0}"> </foxy-internal-async-combo-box-control> <foxy-internal-checkbox-group-control infer="destinations" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> <foxy-internal-text-control infer="authentication-key"> </foxy-internal-text-control> <foxy-internal-text-control infer="meter-number"></foxy-internal-text-control> <foxy-internal-text-control infer="${0}" property="accountid"> </foxy-internal-text-control> <foxy-internal-text-control infer="password"></foxy-internal-text-control> <foxy-internal-text-area-control infer="custom-code"></foxy-internal-text-area-control> <foxy-internal-store-shipping-method-form-services-control infer="services"> </foxy-internal-store-shipping-method-form-services-control> ${0} `),["method","container","drop_type"].map((e=>{var i;const r=`fx:shipping_${e}`,s=`shipping_${e}_uri`;if(!(null===(i=this.form._embedded)||void 0===i?void 0:i[r])&&this.form[s])return t(P||(P=E` <foxy-nucleon class="hidden" infer="" href="${0}" @update="${0}"> </foxy-nucleon> `),this.form[s],(e=>{const i=e.currentTarget.data;if(i){const e=n(n({},this.form._embedded),{},{[r]:i});this.edit({_embedded:e})}}))})),i(null!==(r=this.shippingMethods)&&void 0!==r?r:null===(s=this.form._links)||void 0===s?void 0:s["fx:shipping_methods"].href),null===(o=this.form._embedded)||void 0===o?void 0:o["fx:shipping_method"],(e=>{const{selectedItem:i}=e.currentTarget,t={"fx:shipping_method":i};this.edit({_embedded:t,shipping_container_uri:"",shipping_drop_type_uri:""})}),i(null==l?void 0:l._links["fx:shipping_containers"].href),null===(a=this.form._embedded)||void 0===a?void 0:a["fx:shipping_container"],(e=>{const{selectedItem:i}=e.currentTarget,t=n(n({},this.form._embedded),{},{"fx:shipping_container":i});this.edit({_embedded:t})}),i(null==l?void 0:l._links["fx:shipping_drop_types"].href),null===(d=this.form._embedded)||void 0===d?void 0:d["fx:shipping_drop_type"],(e=>{const{selectedItem:i}=e.currentTarget,t=n(n({},this.form._embedded),{},{"fx:shipping_drop_type":i});this.edit({_embedded:t})}),this.__getDestinations,this.__setDestinations,this.__destinations,"CUSTOM-ENDPOINT-POST"===(null==l?void 0:l.code)?"endpoint":"accountid",super.renderBody())}}customElements.define("foxy-store-shipping-method-form",C);export{C as StoreShippingMethodForm};
|
|
1
|
+
import"./shared-b5cbbdd8.js";import"./shared-c484320b.js";import"./shared-2f1e04ae.js";import"./shared-ad8141c4.js";import"./shared-8d533e0c.js";import"./shared-71deb26e.js";import{I as e}from"./shared-92bd849f.js";import"./foxy-nucleon-element.js";import"./shared-0672e78b.js";import{I as i}from"./shared-4c338ca6.js";import"./foxy-pagination.js";import"./foxy-spinner.js";import"./shared-85f9051e.js";import{_ as t}from"./shared-a8ced8bf.js";import{h as r}from"./shared-7f33a83a.js";import{C as s}from"./shared-5ad8c9a0.js";import{N as n}from"./shared-b7423eab.js";import{T as o,a as d}from"./shared-29e21467.js";import{i as a}from"./shared-d3bf9ac0.js";import{c as p}from"./shared-4e709717.js";import{B as l}from"./shared-002b788f.js";import"./shared-c52d3772.js";import"./shared-b28dbc68.js";import"./shared-7b167fe9.js";import"./shared-6b8874a7.js";import"./shared-e396ec04.js";import"./shared-2215e6c8.js";import"./shared-dc798bf4.js";import"./shared-6d2064e9.js";import"./shared-b8e9b536.js";import"./shared-ef0fc329.js";import"./shared-4975f86f.js";import"./shared-4f037e43.js";import"./shared-d6276c83.js";import"./shared-dcbf57e0.js";import"./shared-0479553e.js";import"./shared-ea316e64.js";let h,c=e=>e;const m=s(o(n));customElements.define("foxy-internal-store-shipping-method-form-services-page-item-content",class extends m{constructor(){super(...arguments),this.shippingServiceUri=null,this.shippingMethodUri=null}static get properties(){return t(t({},super.properties),{},{shippingServiceUri:{type:String,attribute:"shipping-service-uri"},shippingMethodUri:{type:String,attribute:"shipping-method-uri"}})}render(){return r(h||(h=c` <div class="h-full flex items-center"> <vaadin-checkbox data-testid="checkbox" class="w-full" ?disabled="${0}" ?readonly="${0}" ?checked="${0}" @change="${0}"> <slot></slot> </vaadin-checkbox> </div> `),!this.in("idle")||this.disabled,this.readonly,!!this.data,(e=>{var i,t;e.currentTarget.checked?(this.edit({shipping_service_uri:null!==(i=this.shippingServiceUri)&&void 0!==i?i:"",shipping_method_uri:null!==(t=this.shippingMethodUri)&&void 0!==t?t:""}),this.submit()):this.delete()}))}});let f,u=e=>e;const g=s(o(n));customElements.define("foxy-internal-store-shipping-method-form-services-page-item",class extends g{constructor(){super(...arguments),this.internationalAllowed=!1,this.shippingServiceUri=null,this.shippingMethodUri=null}static get properties(){return t(t({},super.properties),{},{internationalAllowed:{type:Boolean,attribute:"international-allowed"},shippingServiceUri:{type:String,attribute:"shipping-service-uri"},shippingMethodUri:{type:String,attribute:"shipping-method-uri"}})}render(){var e,i,t;const s=null===(e=this.data)||void 0===e?void 0:e._embedded["fx:store_shipping_services"][0],n=s?void 0:this.href,o=s?s._links.self.href:void 0;return r(f||(f=u` <foxy-internal-store-shipping-method-form-services-page-item-content shipping-service-uri="${0}" shipping-method-uri="${0}" data-testid="content" parent="${0}" class="h-full" infer="" href="${0}"> <slot></slot> <span class="${0}"> <slot name="suffix"></slot> </span> </foxy-internal-store-shipping-method-form-services-page-item-content> `),a(null!==(i=this.shippingServiceUri)&&void 0!==i?i:void 0),a(null!==(t=this.shippingMethodUri)&&void 0!==t?t:void 0),a(n),a(o),this.internationalAllowed||!o?"text-tertiary":"text-error")}});let v,_,x,y,b=e=>e;const $=s(o(d(n)));customElements.define("foxy-internal-store-shipping-method-form-services-page",class extends ${constructor(){super(...arguments),this.storeShippingServicesUri=null,this.internationalAllowed=!1,this.shippingMethodUri=null}static get properties(){return t(t({},super.properties),{},{storeShippingServicesUri:{type:String,attribute:"store-shipping-services-uri"},internationalAllowed:{type:Boolean,attribute:"international-allowed"},shippingMethodUri:{type:String,attribute:"shipping-method-uri"}})}render(){var e,i,t;const s=null!==(i=null===(e=this.data)||void 0===e?void 0:e._embedded["fx:shipping_services"])&&void 0!==i?i:[];let n=20;try{const e=parseInt(null!==(t=new URL(this.href).searchParams.get("limit"))&&void 0!==t?t:"");isNaN(e)||(n=e)}catch(e){}return r(v||(v=b` <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" infer=""> </foxy-spinner> </div> </div> `),new Array(n).fill(0).map(((e,i)=>{var t,n;const o=s[i];let d;if(o)try{const e=new URL(null!==(t=this.storeShippingServicesUri)&&void 0!==t?t:""),i=new URL(o._links.self.href).pathname.split("/").pop();e.searchParams.set("shipping_service_id",i),e.searchParams.set("limit","1"),d=e.toString()}catch(e){}return d?r(x||(x=b` <foxy-internal-store-shipping-method-form-services-page-item shipping-service-uri="${0}" shipping-method-uri="${0}" data-testclass="item" class="h-l truncate" infer="" href="${0}" ?international-allowed="${0}"> ${0} ${0} </foxy-internal-store-shipping-method-form-services-page-item> `),o._links.self.href,a(null!==(n=this.shippingMethodUri)&&void 0!==n?n:void 0),d,this.internationalAllowed,null==o?void 0:o.name,o.is_international?r(y||(y=b`<foxy-i18n infer="" slot="suffix" key="international_only"></foxy-i18n>`)):""):r(_||(_=b`<div class="h-l"></div>`))})),p({"pointer-events-none absolute inset-0 flex transition-opacity":!0,"opacity-0":!!this.data}),this.in("fail")?"error":this.in({idle:"template"})?"empty":"busy")}});let S,j,U=e=>e;customElements.define("foxy-internal-store-shipping-method-form-services-control",class extends i{renderControl(){var e,i;const t=null===(e=this.nucleon)||void 0===e?void 0:e.data,s=null===(i=this.nucleon)||void 0===i?void 0:i.form;if(!t)return r(S||(S=U``));const n=new URL(t._links["fx:shipping_services"].href);return n.searchParams.set("limit","10"),r(j||(j=U` <foxy-pagination first="${0}" infer=""> <foxy-i18n class="block text-s font-medium text-secondary leading-none mb-s" infer="" key="header"> </foxy-i18n> <foxy-internal-store-shipping-method-form-services-page store-shipping-services-uri="${0}" shipping-method-uri="${0}" class="border border-contrast-10 rounded-t-l rounded-b-l mb-s" infer="" ?international-allowed="${0}"> </foxy-internal-store-shipping-method-form-services-page> </foxy-pagination> `),n.toString(),t._links["fx:store_shipping_services"].href,t._links["fx:shipping_method"].href,!!s.use_for_international)}});let k,w,M=e=>e;const T=d(e,"store-shipping-method-form"),P=e=>{try{return new URL(e),!0}catch(e){return!1}};class E extends T{constructor(){super(...arguments),this.shippingMethods=null,this.__destinations=[{value:"domestic",label:"domestic"},{value:"international",label:"international"}],this.__getDestinations=()=>{const e=[];return this.form.use_for_domestic&&e.push("domestic"),this.form.use_for_international&&e.push("international"),e},this.__setDestinations=e=>{this.edit({use_for_domestic:e.includes("domestic"),use_for_international:e.includes("international")})}}static get properties(){return t(t({},super.properties),{},{shippingMethods:{type:String,attribute:"shipping-methods"}})}static get v8n(){return[({shipping_method_uri:e})=>e&&P(e)||"shipping-method-uri:required",({accountid:e})=>!e||e.length<=50||"accountid:too_long",({password:e})=>!e||e.length<=50||"password:too_long",({meter_number:e})=>!e||e.length<=50||"meter-number:too_long",({authentication_key:e})=>!e||e.length<=50||"authentication-key:too_long",({custom_code:e})=>!e||new Blob([e]).size/1024<=64||"custom-code:too_long",e=>{var i;return"CUSTOM-ENDPOINT-POST"!==(null===(i=e._embedded)||void 0===i?void 0:i["fx:shipping_method"].code)||(e.accountid&&P(e.accountid)||"endpoint:required")},e=>{var i;const t=e.shipping_container_uri,r=null===(i=e._embedded)||void 0===i?void 0:i["fx:shipping_method"].code;return!r||!["USPS","FedEx","UPS"].includes(r)||(t&&P(t)||"shipping-container-uri:required")},e=>{var i;const t=e.shipping_drop_type_uri,r=null===(i=e._embedded)||void 0===i?void 0:i["fx:shipping_method"].code;return!r||!["FedEx","UPS"].includes(r)||(t&&P(t)||"shipping-drop-type-uri:required")}]}get hiddenSelector(){var e;const i=null===(e=this.form._embedded)||void 0===e?void 0:e["fx:shipping_method"].code;if(!i)return new l("not=shipping-method-uri,timestamps,create,delete");const t=["shipping-container-uri","shipping-drop-type-uri","destinations"],r=["authentication-key","meter-number","accountid","password"],s={"CUSTOM-ENDPOINT-POST":["endpoint"],"CUSTOM-CODE":["custom-code"],CUSTOM:["destinations","services"],FedEx:[...t,...r,"services"],USPS:[...t,"services"],UPS:[...t,...r,"services"]};if(s[i]){const e=["shipping-method-uri",...s[i],"timestamps","delete","create"];return new l(`not=${e.join()} ${super.hiddenSelector}`)}return super.hiddenSelector}renderBody(){var e,i,s,n,o,d;const p=null===(e=this.form._embedded)||void 0===e?void 0:e["fx:shipping_method"];return r(k||(k=M` ${0} <foxy-internal-async-combo-box-control item-value-path="_links.self.href" item-label-path="name" first="${0}" infer="shipping-method-uri" .selectedItem="${0}" @selected-item-changed="${0}"> </foxy-internal-async-combo-box-control> <foxy-internal-async-combo-box-control item-value-path="_links.self.href" item-label-path="name" first="${0}" infer="shipping-container-uri" .selectedItem="${0}" @selected-item-changed="${0}"> </foxy-internal-async-combo-box-control> <foxy-internal-async-combo-box-control item-value-path="_links.self.href" item-label-path="name" first="${0}" infer="shipping-drop-type-uri" .selectedItem="${0}" @selected-item-changed="${0}"> </foxy-internal-async-combo-box-control> <foxy-internal-checkbox-group-control infer="destinations" .getValue="${0}" .setValue="${0}" .options="${0}"> </foxy-internal-checkbox-group-control> <foxy-internal-text-control infer="authentication-key"> </foxy-internal-text-control> <foxy-internal-text-control infer="meter-number"></foxy-internal-text-control> <foxy-internal-text-control infer="${0}" property="accountid"> </foxy-internal-text-control> <foxy-internal-text-control infer="password"></foxy-internal-text-control> <foxy-internal-text-area-control infer="custom-code"></foxy-internal-text-area-control> <foxy-internal-store-shipping-method-form-services-control infer="services"> </foxy-internal-store-shipping-method-form-services-control> ${0} `),["method","container","drop_type"].map((e=>{var i;const s=`fx:shipping_${e}`,n=`shipping_${e}_uri`;if(!(null===(i=this.form._embedded)||void 0===i?void 0:i[s])&&this.form[n])return r(w||(w=M` <foxy-nucleon class="hidden" infer="" href="${0}" @update="${0}"> </foxy-nucleon> `),this.form[n],(e=>{const i=e.currentTarget.data;if(i){const e=t(t({},this.form._embedded),{},{[s]:i});this.edit({_embedded:e})}}))})),a(null!==(i=this.shippingMethods)&&void 0!==i?i:null===(s=this.form._links)||void 0===s?void 0:s["fx:shipping_methods"].href),null===(n=this.form._embedded)||void 0===n?void 0:n["fx:shipping_method"],(e=>{const{selectedItem:i}=e.currentTarget,t={"fx:shipping_method":i};this.edit({_embedded:t,shipping_container_uri:"",shipping_drop_type_uri:""})}),a(null==p?void 0:p._links["fx:shipping_containers"].href),null===(o=this.form._embedded)||void 0===o?void 0:o["fx:shipping_container"],(e=>{const{selectedItem:i}=e.currentTarget,r=t(t({},this.form._embedded),{},{"fx:shipping_container":i});this.edit({_embedded:r})}),a(null==p?void 0:p._links["fx:shipping_drop_types"].href),null===(d=this.form._embedded)||void 0===d?void 0:d["fx:shipping_drop_type"],(e=>{const{selectedItem:i}=e.currentTarget,r=t(t({},this.form._embedded),{},{"fx:shipping_drop_type":i});this.edit({_embedded:r})}),this.__getDestinations,this.__setDestinations,this.__destinations,"CUSTOM-ENDPOINT-POST"===(null==p?void 0:p.code)?"endpoint":"accountid",super.renderBody())}}customElements.define("foxy-store-shipping-method-form",E);export{E as StoreShippingMethodForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-
|
|
1
|
+
import"./shared-ea316e64.js";import"./shared-c484320b.js";import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-0672e78b.js";import{_ as t}from"./shared-a8ced8bf.js";import{h as s}from"./shared-7f33a83a.js";import{C as e}from"./shared-5ad8c9a0.js";import{N as i}from"./shared-b7423eab.js";import{R as a,T as r,a as n}from"./shared-29e21467.js";import{c as o}from"./shared-4e709717.js";import{p as d}from"./shared-236d9b7e.js";import"./shared-c52d3772.js";import"./shared-4f037e43.js";import"./shared-002b788f.js";import"./shared-d3bf9ac0.js";import"./shared-dc798bf4.js";import"./shared-d6276c83.js";import"./shared-dcbf57e0.js";let l,c=t=>t;const m=e(a(r(n(i,"subscription-card"))));class p extends m{render(){var t,e,i,a,r;const n=!!(null===(t=this.data)||void 0===t?void 0:t.is_active),d=!!(null===(e=this.data)||void 0===e?void 0:e.first_failed_transaction_date);return s(l||(l=c` <div class="relative text-left"> <div class="${0}"> <div class="${0}"> <iron-icon class="m-auto" icon="${0}"> </iron-icon> </div> <div class="flex-1 min-w-0 leading-xs flex flex-col sm-flex-row sm-items-center"> <div class="order-1 sm-order-0"> <div class="text-body font-semibold origin-top-left text-m"> <foxy-i18n data-testid="summary" options="${0}" lang="${0}" key="transaction_summary" ns="${0}"> </foxy-i18n> ​ </div> <div class="${0}"> <foxy-i18n data-testid="status" options="${0}" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> ​ </div> </div> <div class="flex-1 font-semibold leading-xs mb-xs sm-mb-0 sm-text-right text-xxs sm-text-l tracking-wide sm-tracking-normal uppercase sm-normal-case order-0 sm-order-1 font-tnum text-secondary sm-text-body"> <foxy-i18n data-testid="price" options="${0}" lang="${0}" key="price_${0}" ns="${0}"> </foxy-i18n> ​ </div> </div> </div> <div data-testid="spinner" class="${0}"> <foxy-spinner state="${0}" class="m-auto" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> ${0} `),o({"flex items-start sm-items-center space-x-m transition duration-150 ease-in-out":!0,"opacity-0":!this.in({idle:"snapshot"})}),o({"min-w-0 flex-shrink-0 rounded-full relative flex p-s":!0,"text-success bg-success-10":n&&!d,"text-body bg-contrast-5":!n&&!d,"text-error bg-error-10":d}),d?"error-outline":n?"done":"done-all",JSON.stringify(this.__getSummaryOptions()),this.lang,this.ns,o({"text-m":!0,"text-tertiary":!n&&!d,"text-success":n&&!d,"text-error":d}),JSON.stringify(this.__getStatusOptions()),this.lang,this.__getStatusKey(),this.ns,JSON.stringify(this.__getPriceOptions()),this.lang,".5m"===(null===(i=this.data)||void 0===i?void 0:i.frequency)?"twice_a_month":"recurring",this.ns,o({"pointer-events-none absolute inset-0 flex transition ease-in-out duration-150":!0,"opacity-0":this.in({idle:"snapshot"})}),this.in("fail")?"error":this.in({idle:"template"})?"empty":"busy",this.lang,this.ns,null!==(r=null===(a=customElements.get("foxy-spinner"))||void 0===a?void 0:a.defaultNS)&&void 0!==r?r:"",this.renderTemplateOrSlot())}__getSummaryOptions(){if(!this.in({idle:"snapshot"}))return{};const t=this.data._embedded["fx:transaction_template"]._embedded["fx:items"];return{most_expensive_item:[...t].sort(((t,s)=>t.price-s.price))[0],count:t.length}}__getStatusOptions(){var t,s;return this.in({idle:"snapshot"})?{date:null!==(s=null!==(t=this.data.first_failed_transaction_date)&&void 0!==t?t:this.data.end_date)&&void 0!==s?s:this.data.next_transaction_date}:{}}__getPriceOptions(){if(!this.in({idle:"snapshot"}))return{};const s=this.data._embedded["fx:last_transaction"],e=`${s.total_order} ${s.currency_code}`;return t(t({},d(this.data.frequency)),{},{amount:e})}__getStatusKey(){var t,s,e;if(null===(t=this.data)||void 0===t?void 0:t.first_failed_transaction_date)return"subscription_failed";if(null===(s=this.data)||void 0===s?void 0:s.end_date){return new Date(this.data.end_date).getTime()>Date.now()?"subscription_will_be_cancelled":"subscription_cancelled"}return"subscription_"+((null===(e=this.data)||void 0===e?void 0:e.is_active)?"active":"inactive")}}customElements.define("foxy-subscription-card",p);export{p as SubscriptionCard};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{P as e,h as t}from"./shared-
|
|
1
|
+
import{P as e,h as t}from"./shared-c52d3772.js";import{E as s,T as i}from"./shared-7b167fe9.js";import"./shared-c484320b.js";import"./shared-f2d19582.js";import{y as a,S as n,T as o,a as r}from"./shared-29e21467.js";import{c as d,h as l}from"./shared-7f33a83a.js";import"./shared-b28dbc68.js";import"./shared-b8e9b536.js";import"./shared-ea316e64.js";import"./foxy-cancellation-form.js";import"./shared-0479553e.js";import"./foxy-collection-pages.js";import"./foxy-form-dialog.js";import{P as c}from"./shared-6bf8883f.js";import"./foxy-spinner.js";import"./foxy-table.js";import"./shared-0672e78b.js";import{_ as h,k as u}from"./shared-a8ced8bf.js";import{c as m}from"./shared-4e709717.js";import{C as f}from"./shared-1b3e1a0d.js";import"./shared-4975f86f.js";import{S as p}from"./shared-5504f415.js";import"./shared-d43fc5cc.js";import"./shared-2215e6c8.js";import"./shared-34b11d34.js";import"./shared-bb522838.js";import{G as b}from"./shared-3a3878c9.js";import"./shared-6b8874a7.js";import{p as y}from"./shared-d302ad2c.js";import{j as g}from"./shared-75e78c70.js";import{C as _}from"./shared-5ad8c9a0.js";import"./foxy-nucleon-element.js";import{T as v}from"./shared-facfe95a.js";import{i as x}from"./shared-d3bf9ac0.js";import{p as $}from"./shared-236d9b7e.js";import{s as w}from"./shared-bc7f58ef.js";import{N as j}from"./shared-b7423eab.js";import"./shared-e396ec04.js";import"./shared-5b55627c.js";import"./shared-4f037e43.js";import"./shared-002b788f.js";import"./shared-6d2064e9.js";import"./shared-11c2efc8.js";import"./shared-dcbf57e0.js";import"./shared-dc798bf4.js";import"./shared-e3ce88dc.js";import"./shared-923da875.js";import"./shared-d6276c83.js";import"./foxy-collection-page.js";import"./shared-d519a301.js";import"./shared-ef0fc329.js";import"./shared-e119731e.js";import"./shared-cced7800.js";a("vcf-tooltip",d`
|
|
2
2
|
:host {
|
|
3
3
|
/* Sizing */
|
|
4
4
|
--lumo-tooltip-size: var(--lumo-size-m);
|
|
@@ -11,7 +11,7 @@ import{P as e,h as t}from"./shared-86be537c.js";import{E as s,T as i}from"./shar
|
|
|
11
11
|
-webkit-font-smoothing: antialiased;
|
|
12
12
|
-moz-osx-font-smoothing: grayscale;
|
|
13
13
|
}
|
|
14
|
-
`,{include:["lumo-color","lumo-typography"]});class
|
|
14
|
+
`,{include:["lumo-color","lumo-typography"]});class T extends(s(i(e))){static get template(){return t`
|
|
15
15
|
<style>
|
|
16
16
|
:host {
|
|
17
17
|
box-sizing: border-box;
|
|
@@ -92,7 +92,7 @@ import{P as e,h as t}from"./shared-86be537c.js";import{E as s,T as i}from"./shar
|
|
|
92
92
|
<iron-icon icon="lumo:cross"></iron-icon>
|
|
93
93
|
</vaadin-button>
|
|
94
94
|
</div>
|
|
95
|
-
`}static get is(){return"vcf-tooltip"}static get version(){return"1.3.15"}static get properties(){return{for:{type:String},position:{type:String,value:"top"},align:{type:String,value:"center"},hidden:{type:Boolean,value:!0,notify:!0,reflectToAttribute:!0,observer:"_hiddenChanged"},manual:{type:Boolean,value:!1,reflectToAttribute:!0},targetElement:{type:Object,observer:"_attachToTarget"},closeButton:{type:Boolean,value:!1,reflectToAttribute:!0},theme:{type:String,reflectToAttribute:!0}}}static get observers(){return["_setPosition(targetElement, hidden, position, align)","_updateTarget(for)","_manualObserver(manual)"]}constructor(){super(),this._boundShow=this.show.bind(this),this._boundHide=this.hide.bind(this),this._boundOnKeyup=this._onKeyup.bind(this)}connectedCallback(){super.connectedCallback(),this._attachToTarget(),this._setDefaultId()}ready(){super.ready(),window.addEventListener("resize",(()=>{clearTimeout(this._resizeTimeout),this._resizeTimeout=setTimeout((()=>{const{targetElement:e,hidden:t,position:s}=this;this.hidden||this._setPosition(e,t,s)}),100)})),this.getAttribute("theme")||this.setAttribute("theme","dark")}disconnectedCallback(){super.disconnectedCallback(),this._detachFromTarget()}_manualObserver(){this.manual?this._removeEvents():this._addEvents()}_attachToTarget(e,t){t&&(this._removeTargetEvents(t),t.describedby&&(t.removeAttribute("aria-describedby"),delete t.describedby)),e&&(this._addEvents(),e.getAttribute("aria-describedby")||(e.setAttribute("aria-describedby",this.id),e.describedby=!0))}_addEvents(){this.targetElement&&!this.manual&&(this.targetElement.addEventListener("mouseenter",this._boundShow),this.targetElement.addEventListener("focus",this._boundShow),this.targetElement.addEventListener("mouseleave",this._boundHide),this.targetElement.addEventListener("blur",this._boundHide),this.targetElement.addEventListener("tap",this._boundHide)),this.manual||(this.addEventListener("mouseenter",this._boundShow),this.addEventListener("mouseleave",this._boundHide))}_detachFromTarget(){this.manual||this._removeEvents(),this.targetElement&&this.targetElement.describedby&&(this.targetElement.removeAttribute("aria-describedby"),delete this.targetElement.describedby)}_removeEvents(){this.targetElement&&this._removeTargetEvents(this.targetElement),this.removeEventListener("mouseenter",this._boundShow),this.removeEventListener("mouseleave",this._boundHide)}_removeTargetEvents(e){e.removeEventListener("mouseenter",this._boundShow),e.removeEventListener("focus",this._boundShow),e.removeEventListener("mouseleave",this._boundHide),e.removeEventListener("blur",this._boundHide),e.removeEventListener("tap",this._boundHide)}_updateTarget(){this.targetElement=this.parentNode.querySelector(`#${this.for}`)}_setPosition(e,t,s){if(e&&!t){let e=window.innerHeight,t=window.innerWidth;this.offsetParent&&(e=this.offsetParent.scrollHeight,t=this.offsetParent.scrollWidth);const i=this.targetElement.getBoundingClientRect(),a=this.getBoundingClientRect(),n=(i.width-a.width)/2,o=(i.height-a.height)/2;let r,d,l=i.left,c=i.top,h=window.pageYOffset;switch(this._parentPostioned&&(c=this.targetElement.offsetTop,l=this.targetElement.offsetLeft,h=0),s){case"top":d=c-a.height+h,r=this._calculateLeft(l,i,a,n);break;case"bottom":d=c+i.height+h,r=this._calculateLeft(l,i,a,n);break;case"left":r=l-a.width,d=this._calculateTop(c,i,a,o,h);break;case"right":r=l+i.width,d=this._calculateTop(c,i,a,o,h)}this._setPositionInVisibleBounds(e,t,r,d,a)}}get _parentPostioned(){return"static"!==window.getComputedStyle(this.offsetParent).position}_setPositionInVisibleBounds(e,t,s,i,a){s+a.width>t?(this.style.right="0px",this.style.left="auto"):(this.style.left=Math.max(0,s)+"px",this.style.right="auto"),i+a.height>e?(this.style.bottom=e+"px",this.style.top="auto"):(this.style.top=Math.max(0,i)+"px",this.style.bottom="auto")}_calculateLeft(e,t,s,i){switch(this.align){case"left":return e;case"right":return t.left+t.width-s.width;default:return e+i}}_calculateTop(e,t,s,i,a){switch(this.align){case"top":return e+a;case"bottom":return e+t.height-s.height+a;default:return e+i+a}}show(){this.hidden=!1}hide(){this.hidden=!0}_hiddenChanged(e){e?(this.setAttribute("aria-hidden",!0),window.removeEventListener("keyup",this._boundOnKeyup)):(this.setAttribute("aria-hidden",!1),window.addEventListener("keyup",this._boundOnKeyup))}_onKeyup(e){27===e.keyCode&&this.hide()}_setDefaultId(){this.id||(Vaadin.tooltipIndex||(Vaadin.tooltipIndex=0),this.id="vcf-tooltip"+ ++Vaadin.tooltipIndex)}}function E(e){return function*(e){const t=[];for(const s of e.settings.subscriptions.allowFrequencyModification)if(g(s.jsonataQuery).evaluate(e.subscription))for(const e of s.values)!t.includes(e)&&(t.push(e),yield e)}({settings:{subscriptions:{allowFrequencyModification:e.settings.subscriptions.allow_frequency_modification.map((e=>({jsonataQuery:e.jsonata_query,values:e.values})))}},subscription:e.subscription})}customElements.define(j.is,j),window.Vaadin.VcfTooltip=j;class S extends Error{constructor(e){super(`Invalid frequency "${e}".`)}}function q(e){const t=864e5,s=31*t;if(".5m"===e)return s/2;const i=parseInt(e.substring(0,e.length-1));if(isNaN(i))throw new S(e);if(e.endsWith("y"))return 31536e6*i;if(e.endsWith("m"))return i*s;if(e.endsWith("w"))return 6048e5*i;if(e.endsWith("d"))return i*t;throw new S(e)}function D(e,t){if("boolean"==typeof t)return t;const s=t.filter((t=>Boolean(g(t.jsonataQuery).evaluate(e)))).reduce(((e,t)=>{var s,i,a,n,o;if(t.min){const s=e.min?q(e.min):1/0;q(t.min)<s&&(e.min=t.min)}if(t.max){const s=e.max?q(e.max):-1/0;q(t.max)>s&&(e.max=t.max)}if("day"===(null===(s=t.allowedDays)||void 0===s?void 0:s.type)){const s=[...null!==(i=e.allowedDaysOfWeek)&&void 0!==i?i:[],...t.allowedDays.days];e.allowedDaysOfWeek=Array.from(new Set(s))}if("month"===(null===(a=t.allowedDays)||void 0===a?void 0:a.type)){const s=[...null!==(n=e.allowedDaysOfMonth)&&void 0!==n?n:[],...t.allowedDays.days];e.allowedDaysOfMonth=Array.from(new Set(s))}if(t.disallowedDates){const s=[...null!==(o=e.disallowedDates)&&void 0!==o?o:[],...t.disallowedDates];e.disallowedDates=Array.from(new Set(s))}return e}),{});return 0!==Object.keys(s).length&&s}function k(e){const[t,s,i]=e.split("-").map((e=>parseInt(e)));return new Date(t,s-1,i)}function O(e){const t=e.settings.subscriptions.allow_next_date_modification;let s;return s="boolean"==typeof t?t:t.map((e=>({allowedDays:e.allowed_days,disallowedDates:e.disallowed_dates,jsonataQuery:e.jsonata_query,max:e.max,min:e.min}))),function(e){var t,s;const i=k(e.value),a=i.getTime(),n=D(e.subscription,e.settings.subscriptions.allowNextDateModification);if("boolean"==typeof n)return n;if(!1===(null===(t=n.allowedDaysOfMonth)||void 0===t?void 0:t.includes(i.getDate())))return!1;if(!1===(null===(s=n.allowedDaysOfWeek)||void 0===s?void 0:s.includes(i.getDay())))return!1;if(n.disallowedDates&&n.disallowedDates.find((e=>{const[t,s]=e.split("..").map((e=>k(e).getTime()));return a===t||void 0!==s&&a>=t&&a<=s})))return!1;if(n.min){const e=b(n.min);if(null!==e&&Date.now()+e>=a)return!1}if(n.max){const e=b(n.max);if(null!==e&&Date.now()+e<=a)return!1}return!0}({settings:{subscriptions:{allowNextDateModification:s}},subscription:e.subscription,value:e.value})}const A=["html"];let L,z,I,C,H,N,P,F,V,B,M,W,K,Q,R,J,G,Y,U,X,Z,ee=e=>e;const te=n(o(_(r(T,"subscription-form"))));class se extends te{constructor(){super(...arguments),this.settings=null,this.templates={},this.__renderHeaderSubtitle=()=>{var e;const{data:t,lang:s,ns:i}=this;if(t){let a,n,o="text-secondary";if(t.first_failed_transaction_date)o="text-error",a=t.first_failed_transaction_date,n="subscription_failed";else if(t.end_date){a=t.end_date;n=new Date(a).getTime()>Date.now()?"subscription_will_be_cancelled":"subscription_cancelled"}else a=null!==(e=t.next_transaction_date)&&void 0!==e?e:(new Date).toISOString(),n="subscription_"+(t.is_active?"active":"inactive");const r=l(L||(L=ee` <foxy-i18n data-testid="header-subtitle" options="${0}" class="${0}" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> `),JSON.stringify({date:a}),o,s,n,i);return t.first_failed_transaction_date?l(z||(z=ee` <span id="status" class="flex items-center space-x-xs ${0}"> ${0}<iron-icon icon="icons:info-outline" class="icon-inline"></iron-icon> </span> <vcf-tooltip for="status" position="bottom"> <span class="text-s">${0}</span> </vcf-tooltip> `),o,r,t.error_message):r}return l(I||(I=ee`<x-skeleton class="w-full" variant="static"> </x-skeleton>`))},this.__renderHeaderTitle=()=>{const{data:e,lang:t,ns:s}=this;if(e){const i=$(e.frequency),a=e._embedded["fx:last_transaction"].currency_code,n=e._embedded["fx:last_transaction"].total_order;return l(C||(C=ee` <foxy-i18n data-testid="header-title" options="${0}" lang="${0}" key="price_${0}" ns="${0}"> </foxy-i18n> `),JSON.stringify(h(h({},i),{},{amount:`${n} ${a}`})),t,".5m"===e.frequency?"twice_a_month":"recurring",s)}return l(H||(H=ee`<x-skeleton class="w-full" variant="static"> </x-skeleton>`))},this.__renderHeader=()=>l(N||(N=ee` <div data-testid="header"> ${0} <div class="leading-xs text-xxl font-bold">${0}</div> <div class="leading-xs text-l">${0}</div> ${0} </div> `),this.renderTemplateOrSlot("header:before"),this.__renderHeaderTitle(),this.__renderHeaderSubtitle(),this.renderTemplateOrSlot("header:after")),this.__renderItemsActions=()=>l(P||(P=ee` <div class="flex" data-testid="items:actions"> ${0} <foxy-i18n data-testid="items:actions-label" class="flex-1" lang="${0}" key="item_plural" ns="${0}"> </foxy-i18n> ${0} </div> `),this.renderTemplateOrSlot("items:actions:before"),this.lang,this.ns,this.renderTemplateOrSlot("items:actions:after")),this.__renderItemsItem=e=>{const t=e.price.toLocaleString(this.lang||"en",{style:"currency",currency:this.data._embedded["fx:last_transaction"].currency_code});let s;return s=e.quantity>1?l(F||(F=ee` <div data-testclass="item-quantity" class="px-s h-xs rounded bg-contrast-5 flex items-center font-tnum text-contrast text-s font-bold"> ${0} </div> `),e.quantity):l(V||(V=ee``)),l(B||(B=ee` <figure class="flex items-center space-x-m py-s pr-m" data-testclass="item"> <x-preview data-testclass="item-preview" class="w-l h-l" .quantity="${0}" .image="${0}"> </x-preview> <figcaption class="leading-s flex-1 flex justify-between items-center"> <div class="flex flex-col"> <span class="font-medium" data-testclass="item-name">${0}</span> <span class="text-secondary text-s" data-testclass="item-price">${0}</span> </div> ${0} </figcaption> </figure> `),e.quantity,e.image,e.name,t,s)},this.__renderItems=()=>{var e,t;const s=this.hiddenSelector,i=null!==(t=null===(e=this.data)||void 0===e?void 0:e._embedded["fx:transaction_template"]._embedded["fx:items"])&&void 0!==t?t:[],a=s.matches("items:actions",!0)?"":this.__renderItemsActions();return l(M||(M=ee` <div data-testid="items"> ${0} <x-group frame> <div slot="header">${0}</div> <div class="divide-y divide-contrast-10 pl-s">${0}</div> </x-group> ${0} </div> `),this.renderTemplateOrSlot("items:before"),a,i.map(this.__renderItemsItem),this.renderTemplateOrSlot("items:after"))},this.__renderEndDate=()=>{const{disabledSelector:e,lang:t,ns:s}=this,i=this.hiddenSelector.zoom("end-date:form").toString();return l(W||(W=ee` <div> ${0} <foxy-form-dialog readonlycontrols="${0}" disabledcontrols="${0}" hiddencontrols="save-button ${0}" data-testid="cancellation-form" parent="${0}" header="end_subscription" alert form="foxy-cancellation-form" href="${0}" lang="${0}" id="end-date-form" ns="${0}" .templates="${0}"> </foxy-form-dialog> <vaadin-button data-testid="end-date" theme="error" class="w-full" ?disabled="${0}" @click="${0}"> <foxy-i18n key="end_subscription" ns="${0}" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("end-date:before"),this.readonlySelector.zoom("end-date:form").toString(),e.zoom("end-date:form").toString(),i,this.parent,this.href,t,s,this.getNestedTemplates("end-date:form"),!this.data||e.matches("end-date",!0),(e=>{this.renderRoot.querySelector("#end-date-form").show(e.currentTarget)}),s,t,this.renderTemplateOrSlot("end-date:after"))},this.__checkNextTransactionDateAvailability=e=>{const{settings:t,data:s}=this;if(t&&s){return O({value:w(e),settings:t,subscription:s})}return e.getTime()>=Date.now()},this.__renderNextTransactionDate=()=>{const{data:e,lang:t,ns:s}=this,i=!!(null==e?void 0:e.is_active);return l(K||(K=ee` <div data-testid="next-transaction-date"> ${0} <x-group frame> <foxy-i18n key="next_transaction_date" ns="${0}" lang="${0}" slot="header"></foxy-i18n> <foxy-internal-calendar start="${0}" value="${0}" lang="${0}" ?readonly="${0}" ?disabled="${0}" .checkAvailability="${0}" @change="${0}"> </foxy-internal-calendar> </x-group> ${0} </div> `),this.renderTemplateOrSlot("next-transaction-date:before"),s,t,x(null==e?void 0:e.next_transaction_date.substr(0,10)),x(null==e?void 0:e.next_transaction_date),t,!i||this.readonlySelector.matches("next-transaction-date",!0),!e||this.disabledSelector.matches("next-transaction-date",!0),this.__checkNextTransactionDateAvailability,(e=>{const t=e.target;this.edit({next_transaction_date:t.value})}),this.renderTemplateOrSlot("next-transaction-date:after"))},this.__renderFrequencyAsDropdown=()=>{const{data:e}=this,t=!!(null==e?void 0:e.is_active),s=this.__frequencies.map((e=>({label:this.t(".5m"===e?"twice_a_month":"frequency",$(e)),value:e})));return l(Q||(Q=ee` <vaadin-combo-box item-value-path="value" item-label-path="label" data-testid="frequency" ?disabled="${0}" ?readonly="${0}" class="w-full" label="${0}" value="${0}" .items="${0}" @change="${0}"> </vaadin-combo-box> `),!e||this.disabledSelector.matches("frequency",!0),e&&(!t||this.readonlySelector.matches("frequency",!0)),this.t("frequency_label").toString(),x(this.form.frequency),s,(e=>{this.edit({frequency:e.target.value})}))},this.__renderFrequencyAsRadioList=()=>{var e;const{data:t,lang:s,ns:i}=this;return l(R||(R=ee` <x-group frame> <foxy-i18n key="frequency_label" ns="${0}" lang="${0}" slot="header"></foxy-i18n> <x-choice default-custom-value="1d" data-testid="frequency" type="frequency" ns="${0}" ?custom="${0}" .items="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" @change="${0}"> ${0} </x-choice> </x-group> `),i,s,i,null===this.settings,this.__frequencies,null!==(e=this.form.frequency)&&void 0!==e?e:null,!t||this.disabledSelector.matches("frequency",!0),t&&(!t.is_active||this.readonlySelector.matches("frequency",!0)),(e=>{this.edit({frequency:e.target.value})}),this.__frequencies.map((e=>l(J||(J=ee` <foxy-i18n options="${0}" slot="${0}-label" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> `),JSON.stringify($(e)),e,s,".5m"===e?"twice_a_month":"frequency",i))))},this.__renderFrequency=()=>l(G||(G=ee` <div> ${0} ${0} ${0} </div> `),this.renderTemplateOrSlot("frequency:before"),this.settings&&this.__frequencies.length>4?this.__renderFrequencyAsDropdown():this.__renderFrequencyAsRadioList(),this.renderTemplateOrSlot("frequency:after")),this.__transactionsTableColumns=[{cell(e){var t;const s=v.statusColumn.cell(e),i=v.priceColumn.cell(e),a=null!==(t={declined:"text-error",rejected:"text-error"}[e.data.status])&&void 0!==t?t:"text-body";return e.html(Y||(Y=ee`
|
|
95
|
+
`}static get is(){return"vcf-tooltip"}static get version(){return"1.3.15"}static get properties(){return{for:{type:String},position:{type:String,value:"top"},align:{type:String,value:"center"},hidden:{type:Boolean,value:!0,notify:!0,reflectToAttribute:!0,observer:"_hiddenChanged"},manual:{type:Boolean,value:!1,reflectToAttribute:!0},targetElement:{type:Object,observer:"_attachToTarget"},closeButton:{type:Boolean,value:!1,reflectToAttribute:!0},theme:{type:String,reflectToAttribute:!0}}}static get observers(){return["_setPosition(targetElement, hidden, position, align)","_updateTarget(for)","_manualObserver(manual)"]}constructor(){super(),this._boundShow=this.show.bind(this),this._boundHide=this.hide.bind(this),this._boundOnKeyup=this._onKeyup.bind(this)}connectedCallback(){super.connectedCallback(),this._attachToTarget(),this._setDefaultId()}ready(){super.ready(),window.addEventListener("resize",(()=>{clearTimeout(this._resizeTimeout),this._resizeTimeout=setTimeout((()=>{const{targetElement:e,hidden:t,position:s}=this;this.hidden||this._setPosition(e,t,s)}),100)})),this.getAttribute("theme")||this.setAttribute("theme","dark")}disconnectedCallback(){super.disconnectedCallback(),this._detachFromTarget()}_manualObserver(){this.manual?this._removeEvents():this._addEvents()}_attachToTarget(e,t){t&&(this._removeTargetEvents(t),t.describedby&&(t.removeAttribute("aria-describedby"),delete t.describedby)),e&&(this._addEvents(),e.getAttribute("aria-describedby")||(e.setAttribute("aria-describedby",this.id),e.describedby=!0))}_addEvents(){this.targetElement&&!this.manual&&(this.targetElement.addEventListener("mouseenter",this._boundShow),this.targetElement.addEventListener("focus",this._boundShow),this.targetElement.addEventListener("mouseleave",this._boundHide),this.targetElement.addEventListener("blur",this._boundHide),this.targetElement.addEventListener("tap",this._boundHide)),this.manual||(this.addEventListener("mouseenter",this._boundShow),this.addEventListener("mouseleave",this._boundHide))}_detachFromTarget(){this.manual||this._removeEvents(),this.targetElement&&this.targetElement.describedby&&(this.targetElement.removeAttribute("aria-describedby"),delete this.targetElement.describedby)}_removeEvents(){this.targetElement&&this._removeTargetEvents(this.targetElement),this.removeEventListener("mouseenter",this._boundShow),this.removeEventListener("mouseleave",this._boundHide)}_removeTargetEvents(e){e.removeEventListener("mouseenter",this._boundShow),e.removeEventListener("focus",this._boundShow),e.removeEventListener("mouseleave",this._boundHide),e.removeEventListener("blur",this._boundHide),e.removeEventListener("tap",this._boundHide)}_updateTarget(){this.targetElement=this.parentNode.querySelector(`#${this.for}`)}_setPosition(e,t,s){if(e&&!t){let e=window.innerHeight,t=window.innerWidth;this.offsetParent&&(e=this.offsetParent.scrollHeight,t=this.offsetParent.scrollWidth);const i=this.targetElement.getBoundingClientRect(),a=this.getBoundingClientRect(),n=(i.width-a.width)/2,o=(i.height-a.height)/2;let r,d,l=i.left,c=i.top,h=window.pageYOffset;switch(this._parentPostioned&&(c=this.targetElement.offsetTop,l=this.targetElement.offsetLeft,h=0),s){case"top":d=c-a.height+h,r=this._calculateLeft(l,i,a,n);break;case"bottom":d=c+i.height+h,r=this._calculateLeft(l,i,a,n);break;case"left":r=l-a.width,d=this._calculateTop(c,i,a,o,h);break;case"right":r=l+i.width,d=this._calculateTop(c,i,a,o,h)}this._setPositionInVisibleBounds(e,t,r,d,a)}}get _parentPostioned(){return"static"!==window.getComputedStyle(this.offsetParent).position}_setPositionInVisibleBounds(e,t,s,i,a){s+a.width>t?(this.style.right="0px",this.style.left="auto"):(this.style.left=Math.max(0,s)+"px",this.style.right="auto"),i+a.height>e?(this.style.bottom=e+"px",this.style.top="auto"):(this.style.top=Math.max(0,i)+"px",this.style.bottom="auto")}_calculateLeft(e,t,s,i){switch(this.align){case"left":return e;case"right":return t.left+t.width-s.width;default:return e+i}}_calculateTop(e,t,s,i,a){switch(this.align){case"top":return e+a;case"bottom":return e+t.height-s.height+a;default:return e+i+a}}show(){this.hidden=!1}hide(){this.hidden=!0}_hiddenChanged(e){e?(this.setAttribute("aria-hidden",!0),window.removeEventListener("keyup",this._boundOnKeyup)):(this.setAttribute("aria-hidden",!1),window.addEventListener("keyup",this._boundOnKeyup))}_onKeyup(e){27===e.keyCode&&this.hide()}_setDefaultId(){this.id||(Vaadin.tooltipIndex||(Vaadin.tooltipIndex=0),this.id="vcf-tooltip"+ ++Vaadin.tooltipIndex)}}function E(e){return function*(e){const t=[];for(const s of e.settings.subscriptions.allowFrequencyModification)if(g(s.jsonataQuery).evaluate(e.subscription))for(const e of s.values)!t.includes(e)&&(t.push(e),yield e)}({settings:{subscriptions:{allowFrequencyModification:e.settings.subscriptions.allow_frequency_modification.map((e=>({jsonataQuery:e.jsonata_query,values:e.values})))}},subscription:e.subscription})}customElements.define(T.is,T),window.Vaadin.VcfTooltip=T;class S extends Error{constructor(e){super(`Invalid frequency "${e}".`)}}function q(e){const t=864e5,s=31*t;if(".5m"===e)return s/2;const i=parseInt(e.substring(0,e.length-1));if(isNaN(i))throw new S(e);if(e.endsWith("y"))return 31536e6*i;if(e.endsWith("m"))return i*s;if(e.endsWith("w"))return 6048e5*i;if(e.endsWith("d"))return i*t;throw new S(e)}function D(e,t){if("boolean"==typeof t)return t;const s=t.filter((t=>Boolean(g(t.jsonataQuery).evaluate(e)))).reduce(((e,t)=>{var s,i,a,n,o;if(t.min){const s=e.min?q(e.min):1/0;q(t.min)<s&&(e.min=t.min)}if(t.max){const s=e.max?q(e.max):-1/0;q(t.max)>s&&(e.max=t.max)}if("day"===(null===(s=t.allowedDays)||void 0===s?void 0:s.type)){const s=[...null!==(i=e.allowedDaysOfWeek)&&void 0!==i?i:[],...t.allowedDays.days];e.allowedDaysOfWeek=Array.from(new Set(s))}if("month"===(null===(a=t.allowedDays)||void 0===a?void 0:a.type)){const s=[...null!==(n=e.allowedDaysOfMonth)&&void 0!==n?n:[],...t.allowedDays.days];e.allowedDaysOfMonth=Array.from(new Set(s))}if(t.disallowedDates){const s=[...null!==(o=e.disallowedDates)&&void 0!==o?o:[],...t.disallowedDates];e.disallowedDates=Array.from(new Set(s))}return e}),{});return 0!==Object.keys(s).length&&s}function k(e){const[t,s,i]=e.split("-").map((e=>parseInt(e)));return new Date(t,s-1,i)}function O(e){const t=e.settings.subscriptions.allow_next_date_modification;let s;return s="boolean"==typeof t?t:t.map((e=>({allowedDays:e.allowed_days,disallowedDates:e.disallowed_dates,jsonataQuery:e.jsonata_query,max:e.max,min:e.min}))),function(e){var t,s;const i=k(e.value),a=i.getTime(),n=D(e.subscription,e.settings.subscriptions.allowNextDateModification);if("boolean"==typeof n)return n;if(!1===(null===(t=n.allowedDaysOfMonth)||void 0===t?void 0:t.includes(i.getDate())))return!1;if(!1===(null===(s=n.allowedDaysOfWeek)||void 0===s?void 0:s.includes(i.getDay())))return!1;if(n.disallowedDates&&n.disallowedDates.find((e=>{const[t,s]=e.split("..").map((e=>k(e).getTime()));return a===t||void 0!==s&&a>=t&&a<=s})))return!1;if(n.min){const e=y(n.min);if(null!==e&&Date.now()+e>=a)return!1}if(n.max){const e=y(n.max);if(null!==e&&Date.now()+e<=a)return!1}return!0}({settings:{subscriptions:{allowNextDateModification:s}},subscription:e.subscription,value:e.value})}const A=["html"];let L,I,z,C,H,N,P,F,V,B,M,W,K,Q,R,J,G,Y,U,X,Z,ee=e=>e;const te=n(o(_(r(j,"subscription-form"))));class se extends te{constructor(){super(...arguments),this.settings=null,this.templates={},this.__renderHeaderSubtitle=()=>{var e;const{data:t,lang:s,ns:i}=this;if(t){let a,n,o="text-secondary";if(t.first_failed_transaction_date)o="text-error",a=t.first_failed_transaction_date,n="subscription_failed";else if(t.end_date){a=t.end_date;n=new Date(a).getTime()>Date.now()?"subscription_will_be_cancelled":"subscription_cancelled"}else a=null!==(e=t.next_transaction_date)&&void 0!==e?e:(new Date).toISOString(),n="subscription_"+(t.is_active?"active":"inactive");const r=l(L||(L=ee` <foxy-i18n data-testid="header-subtitle" options="${0}" class="${0}" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> `),JSON.stringify({date:a}),o,s,n,i);return t.first_failed_transaction_date?l(I||(I=ee` <span id="status" class="flex items-center space-x-xs ${0}"> ${0}<iron-icon icon="icons:info-outline" class="icon-inline"></iron-icon> </span> <vcf-tooltip for="status" position="bottom"> <span class="text-s">${0}</span> </vcf-tooltip> `),o,r,t.error_message):r}return l(z||(z=ee`<x-skeleton class="w-full" variant="static"> </x-skeleton>`))},this.__renderHeaderTitle=()=>{const{data:e,lang:t,ns:s}=this;if(e){const i=$(e.frequency),a=e._embedded["fx:last_transaction"].currency_code,n=e._embedded["fx:last_transaction"].total_order;return l(C||(C=ee` <foxy-i18n data-testid="header-title" options="${0}" lang="${0}" key="price_${0}" ns="${0}"> </foxy-i18n> `),JSON.stringify(h(h({},i),{},{amount:`${n} ${a}`})),t,".5m"===e.frequency?"twice_a_month":"recurring",s)}return l(H||(H=ee`<x-skeleton class="w-full" variant="static"> </x-skeleton>`))},this.__renderHeader=()=>l(N||(N=ee` <div data-testid="header"> ${0} <div class="leading-xs text-xxl font-bold">${0}</div> <div class="leading-xs text-l">${0}</div> ${0} </div> `),this.renderTemplateOrSlot("header:before"),this.__renderHeaderTitle(),this.__renderHeaderSubtitle(),this.renderTemplateOrSlot("header:after")),this.__renderItemsActions=()=>l(P||(P=ee` <div class="flex" data-testid="items:actions"> ${0} <foxy-i18n data-testid="items:actions-label" class="flex-1" lang="${0}" key="item_plural" ns="${0}"> </foxy-i18n> ${0} </div> `),this.renderTemplateOrSlot("items:actions:before"),this.lang,this.ns,this.renderTemplateOrSlot("items:actions:after")),this.__renderItemsItem=e=>{const t=e.price.toLocaleString(this.lang||"en",{style:"currency",currency:this.data._embedded["fx:last_transaction"].currency_code});let s;return s=e.quantity>1?l(F||(F=ee` <div data-testclass="item-quantity" class="px-s h-xs rounded bg-contrast-5 flex items-center font-tnum text-contrast text-s font-bold"> ${0} </div> `),e.quantity):l(V||(V=ee``)),l(B||(B=ee` <figure class="flex items-center space-x-m py-s pr-m" data-testclass="item"> <x-preview data-testclass="item-preview" class="w-l h-l" .quantity="${0}" .image="${0}"> </x-preview> <figcaption class="leading-s flex-1 flex justify-between items-center"> <div class="flex flex-col"> <span class="font-medium" data-testclass="item-name">${0}</span> <span class="text-secondary text-s" data-testclass="item-price">${0}</span> </div> ${0} </figcaption> </figure> `),e.quantity,e.image,e.name,t,s)},this.__renderItems=()=>{var e,t;const s=this.hiddenSelector,i=null!==(t=null===(e=this.data)||void 0===e?void 0:e._embedded["fx:transaction_template"]._embedded["fx:items"])&&void 0!==t?t:[],a=s.matches("items:actions",!0)?"":this.__renderItemsActions();return l(M||(M=ee` <div data-testid="items"> ${0} <x-group frame> <div slot="header">${0}</div> <div class="divide-y divide-contrast-10 pl-s">${0}</div> </x-group> ${0} </div> `),this.renderTemplateOrSlot("items:before"),a,i.map(this.__renderItemsItem),this.renderTemplateOrSlot("items:after"))},this.__renderEndDate=()=>{const{disabledSelector:e,lang:t,ns:s}=this,i=this.hiddenSelector.zoom("end-date:form").toString();return l(W||(W=ee` <div> ${0} <foxy-form-dialog readonlycontrols="${0}" disabledcontrols="${0}" hiddencontrols="save-button ${0}" data-testid="cancellation-form" parent="${0}" header="end_subscription" alert form="foxy-cancellation-form" href="${0}" lang="${0}" id="end-date-form" ns="${0}" .templates="${0}"> </foxy-form-dialog> <vaadin-button data-testid="end-date" theme="error" class="w-full" ?disabled="${0}" @click="${0}"> <foxy-i18n key="end_subscription" ns="${0}" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("end-date:before"),this.readonlySelector.zoom("end-date:form").toString(),e.zoom("end-date:form").toString(),i,this.parent,this.href,t,s,this.getNestedTemplates("end-date:form"),!this.data||e.matches("end-date",!0),(e=>{this.renderRoot.querySelector("#end-date-form").show(e.currentTarget)}),s,t,this.renderTemplateOrSlot("end-date:after"))},this.__checkNextTransactionDateAvailability=e=>{const{settings:t,data:s}=this;if(t&&s){return O({value:w(e),settings:t,subscription:s})}return e.getTime()>=Date.now()},this.__renderNextTransactionDate=()=>{const{data:e,lang:t,ns:s}=this,i=!!(null==e?void 0:e.is_active);return l(K||(K=ee` <div data-testid="next-transaction-date"> ${0} <x-group frame> <foxy-i18n key="next_transaction_date" ns="${0}" lang="${0}" slot="header"></foxy-i18n> <foxy-internal-calendar start="${0}" value="${0}" lang="${0}" ?readonly="${0}" ?disabled="${0}" .checkAvailability="${0}" @change="${0}"> </foxy-internal-calendar> </x-group> ${0} </div> `),this.renderTemplateOrSlot("next-transaction-date:before"),s,t,x(null==e?void 0:e.next_transaction_date.substr(0,10)),x(null==e?void 0:e.next_transaction_date),t,!i||this.readonlySelector.matches("next-transaction-date",!0),!e||this.disabledSelector.matches("next-transaction-date",!0),this.__checkNextTransactionDateAvailability,(e=>{const t=e.target;this.edit({next_transaction_date:t.value})}),this.renderTemplateOrSlot("next-transaction-date:after"))},this.__renderFrequencyAsDropdown=()=>{const{data:e}=this,t=!!(null==e?void 0:e.is_active),s=this.__frequencies.map((e=>({label:this.t(".5m"===e?"twice_a_month":"frequency",$(e)),value:e})));return l(Q||(Q=ee` <vaadin-combo-box item-value-path="value" item-label-path="label" data-testid="frequency" ?disabled="${0}" ?readonly="${0}" class="w-full" label="${0}" value="${0}" .items="${0}" @change="${0}"> </vaadin-combo-box> `),!e||this.disabledSelector.matches("frequency",!0),e&&(!t||this.readonlySelector.matches("frequency",!0)),this.t("frequency_label").toString(),x(this.form.frequency),s,(e=>{this.edit({frequency:e.target.value})}))},this.__renderFrequencyAsRadioList=()=>{var e;const{data:t,lang:s,ns:i}=this;return l(R||(R=ee` <x-group frame> <foxy-i18n key="frequency_label" ns="${0}" lang="${0}" slot="header"></foxy-i18n> <x-choice default-custom-value="1d" data-testid="frequency" type="frequency" ns="${0}" ?custom="${0}" .items="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" @change="${0}"> ${0} </x-choice> </x-group> `),i,s,i,null===this.settings,this.__frequencies,null!==(e=this.form.frequency)&&void 0!==e?e:null,!t||this.disabledSelector.matches("frequency",!0),t&&(!t.is_active||this.readonlySelector.matches("frequency",!0)),(e=>{this.edit({frequency:e.target.value})}),this.__frequencies.map((e=>l(J||(J=ee` <foxy-i18n options="${0}" slot="${0}-label" lang="${0}" key="${0}" ns="${0}"> </foxy-i18n> `),JSON.stringify($(e)),e,s,".5m"===e?"twice_a_month":"frequency",i))))},this.__renderFrequency=()=>l(G||(G=ee` <div> ${0} ${0} ${0} </div> `),this.renderTemplateOrSlot("frequency:before"),this.settings&&this.__frequencies.length>4?this.__renderFrequencyAsDropdown():this.__renderFrequencyAsRadioList(),this.renderTemplateOrSlot("frequency:after")),this.__transactionsTableColumns=[{cell(e){var t;const s=v.statusColumn.cell(e),i=v.priceColumn.cell(e),a=null!==(t={declined:"text-error",rejected:"text-error"}[e.data.status])&&void 0!==t?t:"text-body";return e.html(Y||(Y=ee`
|
|
96
96
|
<span class="sr-only">${0}</span>
|
|
97
97
|
<span class="${0} text-s">${0}</span>
|
|
98
98
|
`),s,a,i)}},{cell:v.idColumn.cell,hideBelow:"sm"},{cell:v.dateColumn.cell},{cell:v.receiptColumn.cell}],this.__renderTransactionsPage=e=>{let{html:t}=e,s=u(e,A);return t(U||(U=ee`
|
|
@@ -104,7 +104,7 @@ import{P as e,h as t}from"./shared-86be537c.js";import{E as s,T as i}from"./shar
|
|
|
104
104
|
.columns=${0}
|
|
105
105
|
>
|
|
106
106
|
</foxy-table>
|
|
107
|
-
`),s.group,s.lang,s.href,s.ns,this.__transactionsTableColumns)},this.__renderTransactions=()=>{var e,t;const{lang:s,ns:i}=this;return l(X||(X=ee` <div data-testid="transactions"> ${0} <x-group frame> <foxy-i18n lang="${0}" slot="header" key="transaction_plural" ns="${0}"></foxy-i18n> <foxy-collection-pages group="${0}" class="block divide-y divide-contrast-10 px-m" first="${0}" lang="${0}" ns="${0}" .page="${0}"> </foxy-collection-pages> </x-group> ${0} </div> `),this.renderTemplateOrSlot("transactions:before"),s,i,this.group,null!==(t=null===(e=this.data)||void 0===e?void 0:e._links["fx:transactions"].href)&&void 0!==t?t:"",s,i,this.__renderTransactionsPage,this.renderTemplateOrSlot("transactions:after"))}}static get scopedElements(){return{"foxy-internal-calendar":customElements.get("foxy-internal-calendar"),"foxy-collection-pages":customElements.get("foxy-collection-pages"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"vaadin-combo-box":customElements.get("vaadin-combo-box"),"foxy-form-dialog":customElements.get("foxy-form-dialog"),"vaadin-button":customElements.get("vaadin-button"),"foxy-spinner":customElements.get("foxy-spinner"),"vcf-tooltip":customElements.get("vcf-tooltip"),"foxy-table":customElements.get("foxy-table"),"foxy-i18n":customElements.get("foxy-i18n"),"iron-icon":customElements.get("iron-icon"),"x-skeleton":p,"x-preview":c,"x-choice":f,"x-group":
|
|
107
|
+
`),s.group,s.lang,s.href,s.ns,this.__transactionsTableColumns)},this.__renderTransactions=()=>{var e,t;const{lang:s,ns:i}=this;return l(X||(X=ee` <div data-testid="transactions"> ${0} <x-group frame> <foxy-i18n lang="${0}" slot="header" key="transaction_plural" ns="${0}"></foxy-i18n> <foxy-collection-pages group="${0}" class="block divide-y divide-contrast-10 px-m" first="${0}" lang="${0}" ns="${0}" .page="${0}"> </foxy-collection-pages> </x-group> ${0} </div> `),this.renderTemplateOrSlot("transactions:before"),s,i,this.group,null!==(t=null===(e=this.data)||void 0===e?void 0:e._links["fx:transactions"].href)&&void 0!==t?t:"",s,i,this.__renderTransactionsPage,this.renderTemplateOrSlot("transactions:after"))}}static get scopedElements(){return{"foxy-internal-calendar":customElements.get("foxy-internal-calendar"),"foxy-collection-pages":customElements.get("foxy-collection-pages"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"vaadin-combo-box":customElements.get("vaadin-combo-box"),"foxy-form-dialog":customElements.get("foxy-form-dialog"),"vaadin-button":customElements.get("vaadin-button"),"foxy-spinner":customElements.get("foxy-spinner"),"vcf-tooltip":customElements.get("vcf-tooltip"),"foxy-table":customElements.get("foxy-table"),"foxy-i18n":customElements.get("foxy-i18n"),"iron-icon":customElements.get("iron-icon"),"x-skeleton":p,"x-preview":c,"x-choice":f,"x-group":b}}static get properties(){return h(h({},super.properties),{},{settings:{type:Object}})}render(){var e,t;const s=this.in("busy"),i=this.in("fail");return l(Z||(Z=ee` <div data-testid="wrapper" aria-busy="${0}" aria-live="polite" class="relative space-y-l text-body font-lumo text-m leading-m"> ${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> `),s,this.hiddenSelector.matches("header",!0)?"":this.__renderHeader(),this.hiddenSelector.matches("items",!0)?"":this.__renderItems(),this.hiddenSelector.matches("end-date",!0)?"":this.__renderEndDate(),this.__isNextTransactionDateVisible?this.__renderNextTransactionDate():"",this.__isFrequencyVisible?this.__renderFrequency():"",this.hiddenSelector.matches("transactions",!0)?"":this.__renderTransactions(),m({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!s&&!i}),i?"error":s?"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 __isNextTransactionDateVisible(){if(this.hiddenSelector.matches("next-transaction-date",!0))return!1;if(null===this.data)return!1;if(this.data.end_date&&new Date(this.data.end_date).getTime()<=Date.now())return!1;if(!1===this.data.is_active)return!1;if(null===this.settings)return!0;const e=this.settings.subscriptions.allow_next_date_modification;return!!function(e,t){let s;return s="boolean"==typeof t?t:t.map((e=>({allowedDays:e.allowed_days,disallowedDates:e.disallowed_dates,jsonataQuery:e.jsonata_query,max:e.max,min:e.min}))),D(e,s)}(this.data,e)}get __isFrequencyVisible(){if(this.hiddenSelector.matches("frequency",!0))return!1;if(null===this.data)return!1;if(this.data.end_date&&new Date(this.data.end_date).getTime()<=Date.now())return!1;if(!1===this.data.is_active)return!1;if(null===this.settings)return!0;return!E({subscription:this.data,settings:this.settings}).next().done}get __frequencies(){if(!this.settings||!this.data)return[".5m","1m","1y"];const e=E({subscription:this.data,settings:this.settings});return Array.from(e)}}let ie;a("vcf-tooltip",d(ie||(ie=(e=>e)`
|
|
108
108
|
:host([hidden]) [part='container']{
|
|
109
109
|
display:none !important;
|
|
110
110
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./foxy-spinner.js";import"./shared-
|
|
1
|
+
import"./foxy-spinner.js";import"./shared-0672e78b.js";import{S as s}from"./shared-74277a73.js";export{S as SubscriptionsTable}from"./shared-74277a73.js";import"./shared-c484320b.js";import"./shared-c52d3772.js";import"./shared-29e21467.js";import"./shared-a8ced8bf.js";import"./shared-7f33a83a.js";import"./shared-ea316e64.js";import"./shared-4f037e43.js";import"./shared-002b788f.js";import"./shared-cced7800.js";import"./shared-5ad8c9a0.js";import"./shared-d3bf9ac0.js";import"./foxy-nucleon-element.js";import"./shared-b7423eab.js";import"./shared-dc798bf4.js";import"./shared-d6276c83.js";import"./shared-dcbf57e0.js";import"./shared-4e709717.js";import"./shared-236d9b7e.js";customElements.define("foxy-subscriptions-table",s);
|
package/dist/cdn/foxy-table.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-0479553e.js";import"./foxy-spinner.js";import{T as s}from"./shared-
|
|
1
|
+
import"./shared-0479553e.js";import"./foxy-spinner.js";import{T as s}from"./shared-cced7800.js";export{T as Table}from"./shared-cced7800.js";import"./shared-7f33a83a.js";import"./shared-c484320b.js";import"./shared-c52d3772.js";import"./shared-29e21467.js";import"./shared-a8ced8bf.js";import"./shared-ea316e64.js";import"./shared-0672e78b.js";import"./shared-002b788f.js";import"./shared-4f037e43.js";import"./shared-5ad8c9a0.js";import"./shared-d3bf9ac0.js";import"./foxy-nucleon-element.js";import"./shared-b7423eab.js";import"./shared-dc798bf4.js";import"./shared-d6276c83.js";import"./shared-dcbf57e0.js";import"./shared-4e709717.js";customElements.define("foxy-table",s);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{I as a}from"./shared-
|
|
1
|
+
import{I as a}from"./shared-6e6ed30a.js";import{h as t}from"./shared-7f33a83a.js";import{a as e}from"./shared-29e21467.js";import{C as r}from"./shared-5ad8c9a0.js";import"./foxy-spinner.js";import"./shared-c484320b.js";import"./shared-c52d3772.js";import"./shared-ea316e64.js";import"./shared-0672e78b.js";import"./shared-a8ced8bf.js";import"./shared-002b788f.js";import"./shared-4f037e43.js";import"./shared-b7423eab.js";import"./shared-dc798bf4.js";import"./shared-d6276c83.js";import"./shared-dcbf57e0.js";import"./shared-4e709717.js";import"./shared-d3bf9ac0.js";let s,i=a=>a;class o extends(e(r(a),"tax-card")){renderBody(){const a=this.data;return t(s||(s=i` <div class="flex justify-between gap-s"> <div class="font-semibold truncate flex-shrink-0">${0}​</div> <div class="truncate text-tertiary">${0} • ${0}</div> </div> `),null==a?void 0:a.name,this.__typeLabel,this.__rateLabel)}get __typeLabel(){var a;const{type:t,country:e,region:r,city:s}=null!==(a=this.data)&&void 0!==a?a:{};return"global"===t?this.t("tax_global"):"union"===t?this.t("tax_union"):"country"===t?e:"region"===t?`${e}, ${r}`:"local"===t?`${e}, ${r}, ${s}`:void 0}get __rateLabel(){var a,t;if(!1===(null===(a=this.data)||void 0===a?void 0:a.is_live))return this.t("percent",{fraction:this.data.rate/100});const e=null===(t=this.data)||void 0===t?void 0:t.service_provider;return"onesource"===e?"Thomson Reuters ONESOURCE":"avalara"===e?"Avalara AvaTax 15":"taxjar"===e?"TaxJar":this.t("tax_rate_provider_default")}}customElements.define("foxy-tax-card",o);export{o as TaxCard};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-cd14b0cc.js";import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-b98f0ad9.js";import"./shared-eefa4103.js";import"./shared-45418f3b.js";import"./shared-398b3c49.js";import"./shared-a8ada44e.js";import"./shared-3ef5c283.js";import"./shared-d1b62ccd.js";import{_ as e}from"./shared-a8ced8bf.js";import{C as t}from"./shared-4ff7174f.js";import"./shared-5606cd36.js";import"./shared-760cc838.js";import{D as i}from"./shared-8704e701.js";import{h as r}from"./shared-7f33a83a.js";import{T as s,S as a,a as n}from"./shared-a5000f1f.js";import"./shared-88924652.js";import"./shared-7ca327ea.js";import"./shared-6dafebaf.js";import"./shared-8033b140.js";import{P as o}from"./shared-d58e7670.js";import{c as d}from"./shared-4e709717.js";import{a as l}from"./shared-2af327d0.js";import{C as h}from"./shared-a8966936.js";import{N as c}from"./shared-15278fe0.js";import{i as _}from"./shared-d3bf9ac0.js";import{i as m}from"./shared-4a796610.js";import"./shared-74b7438a.js";import"./shared-86be537c.js";import"./shared-4f037e43.js";import"./shared-fd124dfd.js";import"./shared-11c2efc8.js";import"./shared-a420358e.js";import"./shared-d6276c83.js";let p,u,y,g,v,f,$,x,b,S,T,E,k,j,O=e=>e;const C=["US","CA","AT","BE","BG","CY","CZ","DE","DK","EE","ES","FI","FR","GB","GR","HR","HU","IE","IM","IT","LT","LU","LV","MC","MT","NL","PL","PT","RO","SE","SI","SK"],w=[...C,"AU"],H=h(s(a(n(c,"tax-form"))));class A extends H{constructor(){var e;super(...arguments),e=this,this.templates={},this.__previousCountry=void 0,this.__countries="",this.__regions="",this.__countriesService=m(l.withConfig({services:{sendGet:async function(){const t=await new A.API(e).fetch(e.countries);if(!t.ok)throw new Error(await t.text());return await t.json()}}})),this.__regionsService=m(l.withConfig({services:{sendGet:async function(){var t;const i=new URL(e.regions);i.searchParams.set("country_code",null!==(t=e.form.country)&&void 0!==t?t:"US");const r=await new A.API(e).fetch(i.toString());if(!r.ok)throw new Error(await r.text());return await r.json()}}}))}static get scopedElements(){return{"vaadin-integer-field":customElements.get("vaadin-integer-field"),"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-combo-box":customElements.get("vaadin-combo-box"),"vaadin-button":customElements.get("vaadin-button"),"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n"),"x-property-table":o,"x-checkbox":t,"x-dropdown":i}}static get properties(){return e(e({},super.properties),{},{countries:{type:String,noAccessor:!0},regions:{type:String,noAccessor:!0}})}static get v8n(){return[({name:e})=>!!e||"name_required",({name:e})=>!e||e.length<=30||"name_too_long",({country:e,type:t})=>"country"!==t||!!e||"country_required",({country:e,type:t})=>"region"!==t||!!e||"country_required",({country:e,use_origin_rates:t})=>!t||!!e||"country_required",({country:e})=>!e||!!e.match(/[A-Z]{2}/)||"country_invalid",({region:e,type:t})=>"region"!=t||!!e||"region_required",({region:e})=>!e||e.length<=20||"region_too_long",({city:e})=>!e||e.length<=50||"city_too_long",({city:e,type:t})=>"local"!=t||!!e||"city_required",({rate:e})=>!e||e<=100||"rate_invalid"]}get countries(){return this.__countries}set countries(e){this.__countries=e,e?this.__countriesService.send({type:"FETCH"}):this.__countriesService.send({type:"SET_DATA",data:null})}get regions(){return this.__regions}set regions(e){this.__regions=e,e?this.__regionsService.send({type:"FETCH"}):this.__regionsService.send({type:"SET_DATA",data:null})}connectedCallback(){super.connectedCallback(),this.__countriesService.onTransition((({changed:e})=>e&&this.requestUpdate())),this.__countriesService.onChange((()=>this.requestUpdate())),this.__countriesService.start(),this.__regionsService.onTransition((({changed:e})=>e&&this.requestUpdate())),this.__regionsService.onChange((()=>this.requestUpdate())),this.__regionsService.start()}render(){var e,t;return r(p||(p=O` <div class="relative space-y-m"> ${0} ${0} ${0} ${0} ${0} ${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.__isNameHidden?null:this.__renderName(),this.__isTypeHidden?null:this.__renderType(),this.__isCountryHidden?null:this.__renderCountry(),this.__isRegionHidden?null:this.__renderRegion(),this.__isCityHidden?null:this.__renderCity(),this.__isProviderHidden?null:this.__renderProvider(),this.__isRateHidden?null:this.__renderRate(),this.__isApplyToShippingHidden?null:this.__renderApplyToShipping(),this.__isUseOriginRatesHidden?null:this.__renderUseOriginRates(),this.__isExemptAllCustomerTaxIdsHidden?null:this.__renderExemptAllCustomerTaxIds(),this.__isTimestampsHidden?null:this.__renderTimestamps(),this.__isCreateHidden?null:this.__renderCreate(),this.__isDeleteHidden?null:this.__renderDelete(),d({"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:"")}updated(e){super.updated(e),this.form.country!==this.__previousCountry&&(this.__previousCountry=this.form.country,this.__regionsService.send({type:"FETCH"})),this.renderRoot.querySelectorAll("vaadin-combo-box").forEach((e=>e.validate()))}disconnectedCallback(){super.disconnectedCallback(),this.__countriesService.stop(),this.__regionsService.stop()}get __isNameHidden(){return this.hiddenSelector.matches("name",!0)}get __isTypeHidden(){return this.hiddenSelector.matches("type",!0)}get __isCountryHidden(){return!!this.hiddenSelector.matches("country",!0)||("union"===this.form.type?!this.form.use_origin_rates:!["country","region","local"].includes(this.form.type))}get __isRegionHidden(){return!!this.hiddenSelector.matches("region",!0)||"local"!==this.form.type&&"region"!==this.form.type}get __isCityHidden(){return!!this.hiddenSelector.matches("city",!0)||"local"!==this.form.type}get __isProviderHidden(){return!!this.hiddenSelector.matches("provider",!0)||(!this.form.type||"global"===this.form.type||"local"===this.form.type)}get __isRateHidden(){return!!this.hiddenSelector.matches("rate",!0)||(!this.form.type||!0===this.form.is_live)}get __isApplyToShippingHidden(){return!!this.hiddenSelector.matches("apply-to-shipping",!0)||(void 0===this.form.type||!!this.form.is_live&&C.includes(this.form.country))}get __isUseOriginRatesHidden(){return!!this.hiddenSelector.matches("use-origin-rates",!0)||("union"!==this.form.type||!this.form.is_live||!!this.form.service_provider)}get __isExemptAllCustomerTaxIdsHidden(){if(this.hiddenSelector.matches("exempt-all-customer-tax-ids",!0))return!0;const e=this.form.service_provider;return void 0===e||"onesource"===e||"avalara"===e}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)))}__renderName(){return r(u||(u=O` <div> ${0} <vaadin-text-field data-testid="name" class="w-full" label="${0}" value="${0}" .checkValidity="${0}" .errorMessage="${0}" ?disabled="${0}" ?readonly="${0}" required @keydown="${0}" @input="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot("name:before"),this.t("name"),_(this.form.name),this.__getValidator("name"),this.__getErrorMessage("name"),!this.in("idle")||this.disabledSelector.matches("name",!0),this.readonlySelector.matches("name",!0),this.__submitOnEnter,(e=>{const t=e.currentTarget.value;this.edit({name:t})}),this.renderTemplateOrSlot("name:after"))}__renderType(){return this.form.type||this.edit({type:"global"}),r(y||(y=O` <div> ${0} <x-dropdown data-testid="type" label="${0}" value="${0}" class="w-full" .items="${0}" .getText="${0}" ?disabled="${0}" ?readonly="${0}" @change="${0}"> </x-dropdown> ${0} </div> `),this.renderTemplateOrSlot("type:before"),this.t("type"),_(this.form.type),["global","union","country","region","local"],(e=>this.t(`tax_${e}`)),!this.in("idle")||this.disabledSelector.matches("type",!0),this.readonlySelector.matches("type",!0),(e=>{this.edit({type:e.detail,country:"",region:"",city:"",service_provider:"",apply_to_shipping:!1,use_origin_rates:!1,exempt_all_customer_tax_ids:!1,is_live:!1,rate:0})}),this.renderTemplateOrSlot("type:after"))}__renderCountry(){var e;const t=this.__countriesService.state.matches("busy"),i=this.in("busy"),s=t||i,a=this.in("fail"),n=this.__countriesService.state.context.data,o=Object.values(null!==(e=null==n?void 0:n.values)&&void 0!==e?e:{});return r(g||(g=O` <div> ${0} <vaadin-combo-box item-value-path="cc2" item-label-path="default" item-id-path="cc2" data-testid="country" label="${0}${0}" value="${0}" class="w-full" .checkValidity="${0}" .errorMessage="${0}" .items="${0}" ?allow-custom-value="${0}" ?disabled="${0}" ?readonly="${0}" required @change="${0}"> </vaadin-combo-box> ${0} </div> `),this.renderTemplateOrSlot("country:before"),this.t("country"),t?` • ${this.t("loading_busy")}`:"",_(t?void 0:this.form.country),this.__getValidator("country"),this.__getErrorMessage("country"),o,0===o.length,a||s||this.disabledSelector.matches("country",!0),this.readonlySelector.matches("country",!0),(e=>{this.edit({country:e.currentTarget.value,region:"",city:"",is_live:!1,service_provider:""}),this.__isApplyToShippingHidden&&this.edit({apply_to_shipping:!1}),this.__regionsService.send({type:"FETCH"})}),this.renderTemplateOrSlot("country:after"))}__renderRegion(){var e;const t=this.__regionsService.state.matches("busy"),i=this.in("busy"),s=t||i,a=this.in("fail"),n=this.__regionsService.state.context.data,o=Object.values(null!==(e=null==n?void 0:n.values)&&void 0!==e?e:{});return r(v||(v=O` <div> ${0} <vaadin-combo-box item-value-path="code" item-label-path="default" item-id-path="code" data-testid="region" label="${0}${0}" value="${0}" class="w-full" .checkValidity="${0}" .errorMessage="${0}" .items="${0}" ?allow-custom-value="${0}" ?disabled="${0}" ?readonly="${0}" required @change="${0}"> </vaadin-combo-box> ${0} </div> `),this.renderTemplateOrSlot("region:before"),this.t("region"),t?` • ${this.t("loading_busy")}`:"",_(t?void 0:this.form.region),this.__getValidator("region"),this.__getErrorMessage("region"),o,0===o.length,a||s||this.disabledSelector.matches("region",!0),this.readonlySelector.matches("region",!0),(e=>{const t=e.currentTarget.value;this.edit({region:t,city:""})}),this.renderTemplateOrSlot("region:after"))}__renderCity(){return r(f||(f=O` <div> ${0} <vaadin-text-field data-testid="city" class="w-full" label="${0}" value="${0}" .checkValidity="${0}" .errorMessage="${0}" ?disabled="${0}" ?readonly="${0}" required @keydown="${0}" @input="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot("city:before"),this.t("city"),_(this.form.city),this.__getValidator("city"),this.__getErrorMessage("city"),!this.in("idle")||this.disabledSelector.matches("city",!0),this.readonlySelector.matches("city",!0),this.__submitOnEnter,(e=>{const t=e.currentTarget.value;this.edit({city:t})}),this.renderTemplateOrSlot("city:after"))}__renderProvider(){const e=[{label:this.t("tax_rate_provider_none"),value:"none"},{label:"Avalara AvaTax 15",value:"avalara"},{label:"Thomson Reuters ONESOURCE",value:"onesource"}];return("union"===this.form.type||C.includes(this.form.country))&&e.push({label:this.t("tax_rate_provider_default"),value:"default"}),w.includes(this.form.country)&&e.push({label:"TaxJar",value:"taxjar"}),r($||($=O` <div> ${0} <x-dropdown data-testid="provider" label="${0}" value="${0}" class="w-full" .items="${0}" .getText="${0}" ?disabled="${0}" ?readonly="${0}" @change="${0}"> </x-dropdown> ${0} </div> `),this.renderTemplateOrSlot("provider:before"),this.t("tax_rate_provider"),this.form.service_provider||(this.form.is_live?"default":"none"),e.map((e=>e.value)),(t=>{var i;return null===(i=e.find((e=>e.value===t)))||void 0===i?void 0:i.label}),!this.in("idle")||this.disabledSelector.matches("provider",!0),this.readonlySelector.matches("provider",!0),(e=>{const t=e.detail,i=["none","default"].includes(t)?"":t;this.edit({service_provider:i,is_live:"none"!==t}),this.__isExemptAllCustomerTaxIdsHidden&&this.edit({exempt_all_customer_tax_ids:!1}),this.__isApplyToShippingHidden&&this.edit({apply_to_shipping:!1}),this.__isUseOriginRatesHidden&&this.edit({use_origin_rates:!1})}),this.renderTemplateOrSlot("provider:after"))}__renderRate(){return r(x||(x=O` <div> ${0} <vaadin-integer-field data-testid="rate" class="w-full" label="${0}" value="${0}" min="0" prevent-invalid-input has-controls .checkValidity="${0}" .errorMessage="${0}" ?disabled="${0}" ?readonly="${0}" required @keydown="${0}" @change="${0}"> </vaadin-integer-field> ${0} </div> `),this.renderTemplateOrSlot("rate:before"),this.t("tax_rate"),_(this.form.rate),this.__getValidator("rate"),this.__getErrorMessage("rate"),!this.in("idle")||this.disabledSelector.matches("rate",!0),this.readonlySelector.matches("rate",!0),this.__submitOnEnter,(e=>{const t=parseInt(e.currentTarget.value);this.edit({rate:t})}),this.renderTemplateOrSlot("rate:after"))}__renderApplyToShipping(){return r(b||(b=O` <div> ${0} <x-checkbox data-testid="apply-to-shipping" class="leading-s" ?disabled="${0}" ?readonly="${0}" ?checked="${0}" @change="${0}"> <foxy-i18n class="block text-m text-body" lang="${0}" key="tax_apply_to_shipping" ns="${0}"> </foxy-i18n> <foxy-i18n class="block text-s text-secondary" lang="${0}" key="tax_apply_to_shipping_explainer" ns="${0}"> </foxy-i18n> </x-checkbox> ${0} </div> `),this.renderTemplateOrSlot("apply-to-shipping:before"),!this.in("idle")||this.disabledSelector.matches("apply-to-shipping",!0),this.readonlySelector.matches("apply-to-shipping",!0),!!this.form.apply_to_shipping,(e=>this.edit({apply_to_shipping:e.detail})),this.lang,this.ns,this.lang,this.ns,this.renderTemplateOrSlot("apply-to-shipping:after"))}__renderUseOriginRates(){return r(S||(S=O` <div> ${0} <x-checkbox data-testid="use-origin-rates" class="leading-s" ?disabled="${0}" ?readonly="${0}" ?checked="${0}" @change="${0}"> <foxy-i18n class="block text-m text-body" lang="${0}" key="tax_use_origin_rates" ns="${0}"> </foxy-i18n> <foxy-i18n class="block text-s text-secondary" lang="${0}" key="tax_use_origin_rates_explainer" ns="${0}"> </foxy-i18n> </x-checkbox> ${0} </div> `),this.renderTemplateOrSlot("use-origin-rates:before"),!this.in("idle")||this.disabledSelector.matches("use-origin-rates",!0),this.readonlySelector.matches("use-origin-rates",!0),!!this.form.use_origin_rates,(e=>this.edit({use_origin_rates:e.detail})),this.lang,this.ns,this.lang,this.ns,this.renderTemplateOrSlot("use-origin-rates:after"))}__renderExemptAllCustomerTaxIds(){const e="exempt-all-customer-tax-ids";return r(T||(T=O` <div> ${0} <x-checkbox data-testid="${0}" class="leading-s" ?disabled="${0}" ?readonly="${0}" ?checked="${0}" @change="${0}"> <foxy-i18n class="block text-m text-body" lang="${0}" key="tax_exempt_all_customer_tax_ids" ns="${0}"> </foxy-i18n> <foxy-i18n class="block text-s text-secondary" lang="${0}" key="tax_exempt_all_customer_tax_ids_explainer" ns="${0}"> </foxy-i18n> </x-checkbox> ${0} </div> `),this.renderTemplateOrSlot(`${e}:before`),e,!this.in("idle")||this.disabledSelector.matches(e,!0),this.readonlySelector.matches(e,!0),!!this.form.exempt_all_customer_tax_ids,(e=>{this.edit({exempt_all_customer_tax_ids:e.detail})}),this.lang,this.ns,this.lang,this.ns,this.renderTemplateOrSlot(`${e}:after`))}__renderTimestamps(){return r(E||(E=O` <div> ${0} <x-property-table data-testid="timestamps" .items="${0}"> </x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}})),this.renderTemplateOrSlot("timestamps:after"))}__renderCreate(){const e=this.in({idle:{template:{clean:"invalid"}}}),t=this.in({idle:{template:{dirty:"invalid"}}}),i=this.in({idle:{snapshot:{clean:"invalid"}}}),s=this.in({idle:{snapshot:{dirty:"invalid"}}}),a=e||t||(i||s),n=this.in("idle");return r(k||(k=O` <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"),!n||a||this.disabledSelector.matches("create",!0),this.submit,this.ns,this.lang,this.renderTemplateOrSlot("create:after"))}__renderDelete(){return r(j||(j=O` <div> <foxy-internal-confirm-dialog data-testid="confirm" message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> ${0} <vaadin-button data-testid="delete" theme="primary error" class="w-full" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="delete" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.lang,this.ns,(e=>!e.detail.cancelled&&this.delete()),this.renderTemplateOrSlot("delete:before"),!this.in("idle")||this.disabledSelector.matches("delete",!0),(e=>{this.renderRoot.querySelector("#confirm").show(e.currentTarget)}),this.ns,this.lang,this.renderTemplateOrSlot("delete:after"))}__submitOnEnter(e){"Enter"===e.key&&this.submit()}}customElements.define("foxy-tax-form",A);export{A as TaxForm};
|
|
1
|
+
import"./shared-ef0fc329.js";import"./shared-0479553e.js";import"./foxy-spinner.js";import"./shared-0672e78b.js";import"./shared-d43fc5cc.js";import"./shared-2215e6c8.js";import"./shared-34b11d34.js";import"./shared-b28dbc68.js";import"./shared-b8e9b536.js";import"./shared-e3ce88dc.js";import{_ as e}from"./shared-a8ced8bf.js";import{C as t}from"./shared-2c842660.js";import"./shared-1b3e1a0d.js";import"./shared-4975f86f.js";import{D as i}from"./shared-5504f415.js";import{h as r}from"./shared-7f33a83a.js";import{T as s,S as a,a as n}from"./shared-29e21467.js";import"./shared-bb522838.js";import"./shared-7b167fe9.js";import"./shared-6b8874a7.js";import"./shared-c484320b.js";import"./shared-f2d19582.js";import{P as o}from"./shared-162fc285.js";import{c as d}from"./shared-4e709717.js";import{a as l}from"./shared-002b788f.js";import{C as h}from"./shared-5ad8c9a0.js";import{N as c}from"./shared-b7423eab.js";import{i as _}from"./shared-d3bf9ac0.js";import{i as m}from"./shared-dcbf57e0.js";import"./shared-ea316e64.js";import"./shared-c52d3772.js";import"./shared-4f037e43.js";import"./shared-e396ec04.js";import"./shared-923da875.js";import"./shared-6d2064e9.js";import"./shared-11c2efc8.js";import"./shared-dc798bf4.js";import"./shared-d6276c83.js";let p,u,y,g,v,f,$,b,x,S,T,E,j,k,O=e=>e;const C=["US","CA","AT","BE","BG","CY","CZ","DE","DK","EE","ES","FI","FR","GB","GR","HR","HU","IE","IM","IT","LT","LU","LV","MC","MT","NL","PL","PT","RO","SE","SI","SK"],w=[...C,"AU"],H=h(s(a(n(c,"tax-form"))));class A extends H{constructor(){var e;super(...arguments),e=this,this.templates={},this.__previousCountry=void 0,this.__countries="",this.__regions="",this.__countriesService=m(l.withConfig({services:{sendGet:async function(){const t=await new A.API(e).fetch(e.countries);if(!t.ok)throw new Error(await t.text());return await t.json()}}})),this.__regionsService=m(l.withConfig({services:{sendGet:async function(){var t;const i=new URL(e.regions);i.searchParams.set("country_code",null!==(t=e.form.country)&&void 0!==t?t:"US");const r=await new A.API(e).fetch(i.toString());if(!r.ok)throw new Error(await r.text());return await r.json()}}}))}static get scopedElements(){return{"vaadin-integer-field":customElements.get("vaadin-integer-field"),"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-combo-box":customElements.get("vaadin-combo-box"),"vaadin-button":customElements.get("vaadin-button"),"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n"),"x-property-table":o,"x-checkbox":t,"x-dropdown":i}}static get properties(){return e(e({},super.properties),{},{countries:{type:String,noAccessor:!0},regions:{type:String,noAccessor:!0}})}static get v8n(){return[({name:e})=>!!e||"name_required",({name:e})=>!e||e.length<=30||"name_too_long",({country:e,type:t})=>"country"!==t||!!e||"country_required",({country:e,type:t})=>"region"!==t||!!e||"country_required",({country:e,use_origin_rates:t})=>!t||!!e||"country_required",({country:e})=>!e||!!e.match(/[A-Z]{2}/)||"country_invalid",({region:e,type:t})=>"region"!=t||!!e||"region_required",({region:e})=>!e||e.length<=20||"region_too_long",({city:e})=>!e||e.length<=50||"city_too_long",({city:e,type:t})=>"local"!=t||!!e||"city_required",({rate:e})=>!e||e<=100||"rate_invalid"]}get countries(){return this.__countries}set countries(e){this.__countries=e,e?this.__countriesService.send({type:"FETCH"}):this.__countriesService.send({type:"SET_DATA",data:null})}get regions(){return this.__regions}set regions(e){this.__regions=e,e?this.__regionsService.send({type:"FETCH"}):this.__regionsService.send({type:"SET_DATA",data:null})}connectedCallback(){super.connectedCallback(),this.__countriesService.onTransition((({changed:e})=>e&&this.requestUpdate())),this.__countriesService.onChange((()=>this.requestUpdate())),this.__countriesService.start(),this.__regionsService.onTransition((({changed:e})=>e&&this.requestUpdate())),this.__regionsService.onChange((()=>this.requestUpdate())),this.__regionsService.start()}render(){var e,t;return r(p||(p=O` <div class="relative space-y-m"> ${0} ${0} ${0} ${0} ${0} ${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.__isNameHidden?null:this.__renderName(),this.__isTypeHidden?null:this.__renderType(),this.__isCountryHidden?null:this.__renderCountry(),this.__isRegionHidden?null:this.__renderRegion(),this.__isCityHidden?null:this.__renderCity(),this.__isProviderHidden?null:this.__renderProvider(),this.__isRateHidden?null:this.__renderRate(),this.__isApplyToShippingHidden?null:this.__renderApplyToShipping(),this.__isUseOriginRatesHidden?null:this.__renderUseOriginRates(),this.__isExemptAllCustomerTaxIdsHidden?null:this.__renderExemptAllCustomerTaxIds(),this.__isTimestampsHidden?null:this.__renderTimestamps(),this.__isCreateHidden?null:this.__renderCreate(),this.__isDeleteHidden?null:this.__renderDelete(),d({"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:"")}updated(e){super.updated(e),this.form.country!==this.__previousCountry&&(this.__previousCountry=this.form.country,this.__regionsService.send({type:"FETCH"})),this.renderRoot.querySelectorAll("vaadin-combo-box").forEach((e=>e.validate()))}disconnectedCallback(){super.disconnectedCallback(),this.__countriesService.stop(),this.__regionsService.stop()}get __isNameHidden(){return this.hiddenSelector.matches("name",!0)}get __isTypeHidden(){return this.hiddenSelector.matches("type",!0)}get __isCountryHidden(){return!!this.hiddenSelector.matches("country",!0)||("union"===this.form.type?!this.form.use_origin_rates:!["country","region","local"].includes(this.form.type))}get __isRegionHidden(){return!!this.hiddenSelector.matches("region",!0)||"local"!==this.form.type&&"region"!==this.form.type}get __isCityHidden(){return!!this.hiddenSelector.matches("city",!0)||"local"!==this.form.type}get __isProviderHidden(){return!!this.hiddenSelector.matches("provider",!0)||(!this.form.type||"global"===this.form.type||"local"===this.form.type)}get __isRateHidden(){return!!this.hiddenSelector.matches("rate",!0)||(!this.form.type||!0===this.form.is_live)}get __isApplyToShippingHidden(){return!!this.hiddenSelector.matches("apply-to-shipping",!0)||(void 0===this.form.type||!!this.form.is_live&&C.includes(this.form.country))}get __isUseOriginRatesHidden(){return!!this.hiddenSelector.matches("use-origin-rates",!0)||("union"!==this.form.type||!this.form.is_live||!!this.form.service_provider)}get __isExemptAllCustomerTaxIdsHidden(){if(this.hiddenSelector.matches("exempt-all-customer-tax-ids",!0))return!0;const e=this.form.service_provider;return void 0===e||"onesource"===e||"avalara"===e}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)))}__renderName(){return r(u||(u=O` <div> ${0} <vaadin-text-field data-testid="name" class="w-full" label="${0}" value="${0}" .checkValidity="${0}" .errorMessage="${0}" ?disabled="${0}" ?readonly="${0}" required @keydown="${0}" @input="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot("name:before"),this.t("name"),_(this.form.name),this.__getValidator("name"),this.__getErrorMessage("name"),!this.in("idle")||this.disabledSelector.matches("name",!0),this.readonlySelector.matches("name",!0),this.__submitOnEnter,(e=>{const t=e.currentTarget.value;this.edit({name:t})}),this.renderTemplateOrSlot("name:after"))}__renderType(){return this.form.type||this.edit({type:"global"}),r(y||(y=O` <div> ${0} <x-dropdown data-testid="type" label="${0}" value="${0}" class="w-full" .items="${0}" .getText="${0}" ?disabled="${0}" ?readonly="${0}" @change="${0}"> </x-dropdown> ${0} </div> `),this.renderTemplateOrSlot("type:before"),this.t("type"),_(this.form.type),["global","union","country","region","local"],(e=>this.t(`tax_${e}`)),!this.in("idle")||this.disabledSelector.matches("type",!0),this.readonlySelector.matches("type",!0),(e=>{this.edit({type:e.detail,country:"",region:"",city:"",service_provider:"",apply_to_shipping:!1,use_origin_rates:!1,exempt_all_customer_tax_ids:!1,is_live:!1,rate:0})}),this.renderTemplateOrSlot("type:after"))}__renderCountry(){var e;const t=this.__countriesService.state.matches("busy"),i=this.in("busy"),s=t||i,a=this.in("fail"),n=this.__countriesService.state.context.data,o=Object.values(null!==(e=null==n?void 0:n.values)&&void 0!==e?e:{});return r(g||(g=O` <div> ${0} <vaadin-combo-box item-value-path="cc2" item-label-path="default" item-id-path="cc2" data-testid="country" label="${0}${0}" value="${0}" class="w-full" .checkValidity="${0}" .errorMessage="${0}" .items="${0}" ?allow-custom-value="${0}" ?disabled="${0}" ?readonly="${0}" required @change="${0}"> </vaadin-combo-box> ${0} </div> `),this.renderTemplateOrSlot("country:before"),this.t("country"),t?` • ${this.t("loading_busy")}`:"",_(t?void 0:this.form.country),this.__getValidator("country"),this.__getErrorMessage("country"),o,0===o.length,a||s||this.disabledSelector.matches("country",!0),this.readonlySelector.matches("country",!0),(e=>{this.edit({country:e.currentTarget.value,region:"",city:"",is_live:!1,service_provider:""}),this.__isApplyToShippingHidden&&this.edit({apply_to_shipping:!1}),this.__regionsService.send({type:"FETCH"})}),this.renderTemplateOrSlot("country:after"))}__renderRegion(){var e;const t=this.__regionsService.state.matches("busy"),i=this.in("busy"),s=t||i,a=this.in("fail"),n=this.__regionsService.state.context.data,o=Object.values(null!==(e=null==n?void 0:n.values)&&void 0!==e?e:{});return r(v||(v=O` <div> ${0} <vaadin-combo-box item-value-path="code" item-label-path="default" item-id-path="code" data-testid="region" label="${0}${0}" value="${0}" class="w-full" .checkValidity="${0}" .errorMessage="${0}" .items="${0}" ?allow-custom-value="${0}" ?disabled="${0}" ?readonly="${0}" required @change="${0}"> </vaadin-combo-box> ${0} </div> `),this.renderTemplateOrSlot("region:before"),this.t("region"),t?` • ${this.t("loading_busy")}`:"",_(t?void 0:this.form.region),this.__getValidator("region"),this.__getErrorMessage("region"),o,0===o.length,a||s||this.disabledSelector.matches("region",!0),this.readonlySelector.matches("region",!0),(e=>{const t=e.currentTarget.value;this.edit({region:t,city:""})}),this.renderTemplateOrSlot("region:after"))}__renderCity(){return r(f||(f=O` <div> ${0} <vaadin-text-field data-testid="city" class="w-full" label="${0}" value="${0}" .checkValidity="${0}" .errorMessage="${0}" ?disabled="${0}" ?readonly="${0}" required @keydown="${0}" @input="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot("city:before"),this.t("city"),_(this.form.city),this.__getValidator("city"),this.__getErrorMessage("city"),!this.in("idle")||this.disabledSelector.matches("city",!0),this.readonlySelector.matches("city",!0),this.__submitOnEnter,(e=>{const t=e.currentTarget.value;this.edit({city:t})}),this.renderTemplateOrSlot("city:after"))}__renderProvider(){const e=[{label:this.t("tax_rate_provider_none"),value:"none"},{label:"Avalara AvaTax 15",value:"avalara"},{label:"Thomson Reuters ONESOURCE",value:"onesource"}];return("union"===this.form.type||C.includes(this.form.country))&&e.push({label:this.t("tax_rate_provider_default"),value:"default"}),w.includes(this.form.country)&&e.push({label:"TaxJar",value:"taxjar"}),r($||($=O` <div> ${0} <x-dropdown data-testid="provider" label="${0}" value="${0}" class="w-full" .items="${0}" .getText="${0}" ?disabled="${0}" ?readonly="${0}" @change="${0}"> </x-dropdown> ${0} </div> `),this.renderTemplateOrSlot("provider:before"),this.t("tax_rate_provider"),this.form.service_provider||(this.form.is_live?"default":"none"),e.map((e=>e.value)),(t=>{var i;return null===(i=e.find((e=>e.value===t)))||void 0===i?void 0:i.label}),!this.in("idle")||this.disabledSelector.matches("provider",!0),this.readonlySelector.matches("provider",!0),(e=>{const t=e.detail,i=["none","default"].includes(t)?"":t;this.edit({service_provider:i,is_live:"none"!==t}),this.__isExemptAllCustomerTaxIdsHidden&&this.edit({exempt_all_customer_tax_ids:!1}),this.__isApplyToShippingHidden&&this.edit({apply_to_shipping:!1}),this.__isUseOriginRatesHidden&&this.edit({use_origin_rates:!1})}),this.renderTemplateOrSlot("provider:after"))}__renderRate(){return r(b||(b=O` <div> ${0} <vaadin-integer-field data-testid="rate" class="w-full" label="${0}" value="${0}" min="0" prevent-invalid-input has-controls .checkValidity="${0}" .errorMessage="${0}" ?disabled="${0}" ?readonly="${0}" required @keydown="${0}" @change="${0}"> </vaadin-integer-field> ${0} </div> `),this.renderTemplateOrSlot("rate:before"),this.t("tax_rate"),_(this.form.rate),this.__getValidator("rate"),this.__getErrorMessage("rate"),!this.in("idle")||this.disabledSelector.matches("rate",!0),this.readonlySelector.matches("rate",!0),this.__submitOnEnter,(e=>{const t=parseInt(e.currentTarget.value);this.edit({rate:t})}),this.renderTemplateOrSlot("rate:after"))}__renderApplyToShipping(){return r(x||(x=O` <div> ${0} <x-checkbox data-testid="apply-to-shipping" class="leading-s" ?disabled="${0}" ?readonly="${0}" ?checked="${0}" @change="${0}"> <foxy-i18n class="block text-m text-body" lang="${0}" key="tax_apply_to_shipping" ns="${0}"> </foxy-i18n> <foxy-i18n class="block text-s text-secondary" lang="${0}" key="tax_apply_to_shipping_explainer" ns="${0}"> </foxy-i18n> </x-checkbox> ${0} </div> `),this.renderTemplateOrSlot("apply-to-shipping:before"),!this.in("idle")||this.disabledSelector.matches("apply-to-shipping",!0),this.readonlySelector.matches("apply-to-shipping",!0),!!this.form.apply_to_shipping,(e=>this.edit({apply_to_shipping:e.detail})),this.lang,this.ns,this.lang,this.ns,this.renderTemplateOrSlot("apply-to-shipping:after"))}__renderUseOriginRates(){return r(S||(S=O` <div> ${0} <x-checkbox data-testid="use-origin-rates" class="leading-s" ?disabled="${0}" ?readonly="${0}" ?checked="${0}" @change="${0}"> <foxy-i18n class="block text-m text-body" lang="${0}" key="tax_use_origin_rates" ns="${0}"> </foxy-i18n> <foxy-i18n class="block text-s text-secondary" lang="${0}" key="tax_use_origin_rates_explainer" ns="${0}"> </foxy-i18n> </x-checkbox> ${0} </div> `),this.renderTemplateOrSlot("use-origin-rates:before"),!this.in("idle")||this.disabledSelector.matches("use-origin-rates",!0),this.readonlySelector.matches("use-origin-rates",!0),!!this.form.use_origin_rates,(e=>this.edit({use_origin_rates:e.detail})),this.lang,this.ns,this.lang,this.ns,this.renderTemplateOrSlot("use-origin-rates:after"))}__renderExemptAllCustomerTaxIds(){const e="exempt-all-customer-tax-ids";return r(T||(T=O` <div> ${0} <x-checkbox data-testid="${0}" class="leading-s" ?disabled="${0}" ?readonly="${0}" ?checked="${0}" @change="${0}"> <foxy-i18n class="block text-m text-body" lang="${0}" key="tax_exempt_all_customer_tax_ids" ns="${0}"> </foxy-i18n> <foxy-i18n class="block text-s text-secondary" lang="${0}" key="tax_exempt_all_customer_tax_ids_explainer" ns="${0}"> </foxy-i18n> </x-checkbox> ${0} </div> `),this.renderTemplateOrSlot(`${e}:before`),e,!this.in("idle")||this.disabledSelector.matches(e,!0),this.readonlySelector.matches(e,!0),!!this.form.exempt_all_customer_tax_ids,(e=>{this.edit({exempt_all_customer_tax_ids:e.detail})}),this.lang,this.ns,this.lang,this.ns,this.renderTemplateOrSlot(`${e}:after`))}__renderTimestamps(){return r(E||(E=O` <div> ${0} <x-property-table data-testid="timestamps" .items="${0}"> </x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}})),this.renderTemplateOrSlot("timestamps:after"))}__renderCreate(){const e=this.in({idle:{template:{clean:"invalid"}}}),t=this.in({idle:{template:{dirty:"invalid"}}}),i=this.in({idle:{snapshot:{clean:"invalid"}}}),s=this.in({idle:{snapshot:{dirty:"invalid"}}}),a=e||t||(i||s),n=this.in("idle");return r(j||(j=O` <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"),!n||a||this.disabledSelector.matches("create",!0),this.submit,this.ns,this.lang,this.renderTemplateOrSlot("create:after"))}__renderDelete(){return r(k||(k=O` <div> <foxy-internal-confirm-dialog data-testid="confirm" message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> ${0} <vaadin-button data-testid="delete" theme="primary error" class="w-full" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="delete" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.lang,this.ns,(e=>!e.detail.cancelled&&this.delete()),this.renderTemplateOrSlot("delete:before"),!this.in("idle")||this.disabledSelector.matches("delete",!0),(e=>{this.renderRoot.querySelector("#confirm").show(e.currentTarget)}),this.ns,this.lang,this.renderTemplateOrSlot("delete:after"))}__submitOnEnter(e){"Enter"===e.key&&this.submit()}}customElements.define("foxy-tax-form",A);export{A as TaxForm};
|