@foxy.io/elements 1.35.0-beta.1 → 1.35.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cdn/foxy-admin-subscription-form.js +1 -1
- package/dist/cdn/foxy-cart-form.js +1 -1
- package/dist/cdn/foxy-coupon-code-form.js +1 -1
- package/dist/cdn/foxy-coupon-form.js +1 -1
- package/dist/cdn/foxy-customer-portal.js +1 -1
- package/dist/cdn/foxy-email-template-form.js +1 -1
- package/dist/cdn/foxy-experimental-add-to-cart-builder.js +1 -1
- package/dist/cdn/foxy-gift-card-code-form.js +1 -1
- package/dist/cdn/foxy-gift-card-form.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-form.js +1 -1
- package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
- package/dist/cdn/foxy-store-form.js +1 -1
- package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
- package/dist/cdn/foxy-subscription-settings-form.js +1 -1
- package/dist/cdn/foxy-template-config-form.js +1 -1
- package/dist/cdn/foxy-template-form.js +1 -1
- package/dist/cdn/foxy-transaction.js +1 -1
- package/dist/cdn/foxy-user-invitation-form.js +1 -1
- package/dist/cdn/foxy-webhook-form.js +1 -1
- package/dist/cdn/shared-44118acb.js +1 -0
- package/dist/cdn/translations/experimental-add-to-cart-builder/en.json +445 -432
- package/dist/elements/internal/InternalSummaryControl/InternalSummaryControl.d.ts +1 -1
- package/dist/elements/internal/InternalSummaryControl/InternalSummaryControl.js +3 -3
- package/dist/elements/internal/InternalSummaryControl/InternalSummaryControl.js.map +1 -1
- package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedOutView.js +1 -0
- package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedOutView.js.map +1 -1
- package/dist/elements/public/ExperimentalAddToCartBuilder/ExperimentalAddToCartBuilder.d.ts +6 -0
- package/dist/elements/public/ExperimentalAddToCartBuilder/ExperimentalAddToCartBuilder.js +200 -123
- package/dist/elements/public/ExperimentalAddToCartBuilder/ExperimentalAddToCartBuilder.js.map +1 -1
- package/dist/elements/public/ExperimentalAddToCartBuilder/index.d.ts +2 -0
- package/dist/elements/public/ExperimentalAddToCartBuilder/index.js +2 -0
- package/dist/elements/public/ExperimentalAddToCartBuilder/index.js.map +1 -1
- package/dist/elements/public/ExperimentalAddToCartBuilder/internal/InternalExperimentalAddToCartBuilderCustomOptionCard/InternalExperimentalAddToCartBuilderCustomOptionCard.js +2 -2
- package/dist/elements/public/ExperimentalAddToCartBuilder/internal/InternalExperimentalAddToCartBuilderCustomOptionCard/InternalExperimentalAddToCartBuilderCustomOptionCard.js.map +1 -1
- package/dist/elements/public/ExperimentalAddToCartBuilder/internal/InternalExperimentalAddToCartBuilderCustomOptionCard/types.d.ts +1 -1
- package/dist/elements/public/ExperimentalAddToCartBuilder/internal/InternalExperimentalAddToCartBuilderCustomOptionCard/types.js.map +1 -1
- package/dist/elements/public/ExperimentalAddToCartBuilder/internal/InternalExperimentalAddToCartBuilderCustomOptionForm/InternalExperimentalAddToCartBuilderCustomOptionForm.d.ts +2 -1
- package/dist/elements/public/ExperimentalAddToCartBuilder/internal/InternalExperimentalAddToCartBuilderCustomOptionForm/InternalExperimentalAddToCartBuilderCustomOptionForm.js +50 -49
- package/dist/elements/public/ExperimentalAddToCartBuilder/internal/InternalExperimentalAddToCartBuilderCustomOptionForm/InternalExperimentalAddToCartBuilderCustomOptionForm.js.map +1 -1
- package/dist/elements/public/ExperimentalAddToCartBuilder/internal/InternalExperimentalAddToCartBuilderCustomOptionForm/types.d.ts +1 -1
- package/dist/elements/public/ExperimentalAddToCartBuilder/internal/InternalExperimentalAddToCartBuilderCustomOptionForm/types.js.map +1 -1
- package/dist/elements/public/ExperimentalAddToCartBuilder/internal/InternalExperimentalAddToCartBuilderItemControl/InternalExperimentalAddToCartBuilderItemControl.d.ts +4 -0
- package/dist/elements/public/ExperimentalAddToCartBuilder/internal/InternalExperimentalAddToCartBuilderItemControl/InternalExperimentalAddToCartBuilderItemControl.js +109 -91
- package/dist/elements/public/ExperimentalAddToCartBuilder/internal/InternalExperimentalAddToCartBuilderItemControl/InternalExperimentalAddToCartBuilderItemControl.js.map +1 -1
- package/dist/elements/public/ExperimentalAddToCartBuilder/types.d.ts +30 -27
- package/dist/elements/public/ExperimentalAddToCartBuilder/types.js.map +1 -1
- package/package.json +3 -2
- package/dist/cdn/shared-19cd0786.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-8af5a4f2.js";import"./shared-ebc72d69.js";import"./shared-19cd0786.js";import"./shared-80688cd4.js";import"./shared-80a7903f.js";import{I as e,b as t}from"./shared-44fd89ce.js";import"./foxy-template-set-card.js";import"./foxy-copy-to-clipboard.js";import"./foxy-nucleon-element.js";import"./foxy-spinner.js";import"./shared-57a98543.js";import"./shared-84761b5b.js";import"./shared-51fd39fa.js";import"./shared-7889f2f2.js";import"./shared-2cb3cb3a.js";import"./shared-b0d76785.js";import"./foxy-item-category-card.js";import"./foxy-discount-builder.js";import"./shared-a7617e76.js";import{I as r}from"./shared-238d397f.js";import{h as n,s as i}from"./shared-dc73b9a5.js";import{_ as o,B as a}from"./shared-d1195c27.js";import{a as s,R as l,w as d}from"./shared-5e0b71a2.js";import{i as u}from"./shared-9803aa7c.js";import{e as m,d as c}from"./shared-641786b2.js";import{c as p}from"./shared-4e709717.js";import"./shared-018166d0.js";import"./shared-b16829cd.js";import"./shared-cf0ca582.js";import"./foxy-form-dialog.js";import"./shared-27e2e59a.js";import"./shared-ffc84c84.js";import"./shared-67898669.js";import"./shared-343d1fd7.js";import"./shared-d1cb97c6.js";import"./shared-17a61265.js";import"./shared-cd96ff03.js";import"./shared-99940888.js";import"./shared-bab2ea2c.js";import"./shared-bb3c9e23.js";import"./shared-9cf15285.js";import"./shared-019348d7.js";import"./shared-1aff7995.js";import"./shared-fcdb896f.js";import"./shared-573d6e21.js";import"./shared-525c1936.js";import"./shared-4c4b87c2.js";import"./shared-c5cb7e8a.js";import"./shared-eb7bf7ba.js";import"./shared-6de0e9f3.js";import"./shared-8b838d83.js";import"./shared-e77d8d01.js";import"./shared-a585bfd3.js";import"./shared-651c44fa.js";import"./shared-28b0e29a.js";import"./shared-b04e9753.js";import"./shared-53caa399.js";import"./shared-d3a5cb85.js";import"./shared-b1fa0b61.js";import"./shared-51c4a6dd.js";import"./shared-31d8e958.js";import"./shared-9fcd36e5.js";import"./shared-c5326ab8.js";import"./shared-68fdcf24.js";import"./shared-112e521b.js";import"./shared-ec5b614e.js";import"./foxy-collection-page.js";import"./shared-a0c6a159.js";import"./foxy-swipe-actions.js";import"./foxy-pagination.js";import"./shared-1c4ddc9b.js";import"./shared-32440b17.js";import"./shared-79d0699c.js";import"./shared-43e2c3f6.js";import"./shared-22ba9566.js";import"./shared-8438d4ca.js";let f,y=e=>e;customElements.define("foxy-internal-experimental-add-to-cart-builder-custom-option-card",class extends r{renderBody(){var e,t;return n(f||(f=y` <div class="flex justify-between items-center h-xs"> <span class="font-medium">${0}</span> <span class="text-secondary">${0}</span> </div> `),null===(e=this.data)||void 0===e?void 0:e.name,null===(t=this.data)||void 0===t?void 0:t.value)}});let h,_,x=e=>e;const g=s(e,"internal-experimental-add-to-cart-builder-custom-option-form");customElements.define("foxy-internal-experimental-add-to-cart-builder-custom-option-form",class extends g{constructor(){super(...arguments),this.defaultWeightUnit=null,this.existingOptions=[],this.itemCategories=null,this.currencyCode=null}static get properties(){return o(o({},super.properties),{},{defaultWeightUnit:{attribute:"default-weight-unit"},existingOptions:{type:Array,attribute:"existing-options"},itemCategories:{attribute:"item-categories"},currencyCode:{attribute:"currency-code"}})}get readonlySelector(){const e=[super.readonlySelector.toString()];return this.data&&e.unshift("basics-group"),new a(e.join(" ").trim())}get disabledSelector(){const e=[super.disabledSelector.toString()];return this.data||this.existingOptions.some((e=>e.name===this.form.name))&&e.unshift("basics-group:value-configurable"),new a(e.join(" ").trim())}renderBody(){var e,t,r,i;return n(h||(h=x` <foxy-internal-summary-control infer="basics-group"> <foxy-internal-text-control layout="summary-item" infer="name"></foxy-internal-text-control> <foxy-internal-text-control property="value" layout="summary-item" infer="${0}"> </foxy-internal-text-control> <foxy-internal-switch-control infer="value-configurable"></foxy-internal-switch-control> </foxy-internal-summary-control> ${0} `),this.form.value_configurable?"default-value":"value",this.form.value_configurable?"":n(_||(_=x` <foxy-internal-summary-control infer="price-group"> <foxy-internal-number-control layout="summary-item" suffix="${0}" infer="price"> </foxy-internal-number-control> <foxy-internal-switch-control infer="replace-price"></foxy-internal-switch-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="weight-group"> <foxy-internal-number-control layout="summary-item" suffix="${0}" infer="weight"> </foxy-internal-number-control> <foxy-internal-switch-control infer="replace-weight"></foxy-internal-switch-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="code-group"> <foxy-internal-text-control layout="summary-item" infer="code"> </foxy-internal-text-control> <foxy-internal-switch-control infer="replace-code"></foxy-internal-switch-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="category-group"> <foxy-internal-resource-picker-control layout="summary-item" first="${0}" infer="item-category-uri" item="foxy-item-category-card"> </foxy-internal-resource-picker-control> </foxy-internal-summary-control> <foxy-nucleon infer="" class="hidden" href="${0}" id="itemCategoryLoader" @update="${0}"> </foxy-nucleon> `),u(null!==(e=this.currencyCode)&&void 0!==e?e:void 0),u(null!==(t=this.__resolvedDefaultWeightUnit)&&void 0!==t?t:void 0),u(null!==(r=this.itemCategories)&&void 0!==r?r:void 0),u(null!==(i=this.form.item_category_uri)&&void 0!==i?i:void 0),(()=>this.requestUpdate())))}async _sendPost(e){const t=this.existingOptions.filter((t=>t.name===e.name));if(t.some((e=>e.value_configurable)))throw["error:option_exists_configurable"];if(t.some((t=>t.value===e.value)))throw["error:option_exists"];return super._sendPost(e)}get __resolvedDefaultWeightUnit(){var e,t;const r=this.renderRoot.querySelector("#itemCategoryLoader");return null!==(t=null===(e=null==r?void 0:r.data)||void 0===e?void 0:e.default_weight_unit)&&void 0!==t?t:this.defaultWeightUnit}});let v,b,$,w,S,j,C,q,k,L,P,T,U,F,D=e=>e;customElements.define("foxy-internal-experimental-add-to-cart-builder-item-control",class extends t{constructor(){super(...arguments),this.itemCategories=null,this.currencyCode=null,this.index=0}static get properties(){return o(o({},super.properties),{},{itemCategories:{attribute:"item-categories"},currencyCode:{attribute:"currency-code"},index:{type:Number},store:{}})}renderControl(){var e,t,r,i,o,a,s,l,d;const m=null===(e=this.__itemCategoryLoader)||void 0===e?void 0:e.data,c=this.nucleon,p=this.index,f=null===(t=null==c?void 0:c.form.items)||void 0===t?void 0:t[p];return n(v||(v=D` <div class="space-y-m"> <foxy-internal-summary-control infer="basics-group"> <foxy-internal-text-control property="items.${0}.name" layout="summary-item" infer="name"> </foxy-internal-text-control> <foxy-internal-resource-picker-control property="items.${0}.item_category_uri" layout="summary-item" first="${0}" infer="item-category-uri" item="foxy-item-category-card"> </foxy-internal-resource-picker-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="price-group"> <foxy-internal-number-control property="items.${0}.price" layout="summary-item" suffix="${0}" infer="${0}"> </foxy-internal-number-control> <foxy-internal-switch-control property="items.${0}.price_configurable" layout="summary-item" infer="price-configurable"> </foxy-internal-switch-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="code-group"> <foxy-internal-text-control property="items.${0}.code" layout="summary-item" infer="code"> </foxy-internal-text-control> <foxy-internal-text-control property="items.${0}.parent_code" layout="summary-item" infer="parent-code"> </foxy-internal-text-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="appearance-group" layout="details"> <foxy-internal-text-control property="items.${0}.image" layout="summary-item" infer="image"> </foxy-internal-text-control> ${0} </foxy-internal-summary-control> <foxy-internal-summary-control infer="subscriptions-group" layout="details"> <foxy-internal-switch-control property="items.${0}.sub_enabled" layout="summary-item" infer="sub-enabled"> </foxy-internal-switch-control> ${0} </foxy-internal-summary-control> <foxy-internal-summary-control infer="discount-group" layout="details"> <foxy-internal-text-control property="items.${0}.discount_name" layout="summary-item" infer="discount-name"> </foxy-internal-text-control> ${0} </foxy-internal-summary-control> <foxy-internal-summary-control infer="expires-group" layout="details"> <foxy-internal-select-control property="items.${0}.expires_format" layout="summary-item" infer="expires-format" .options="${0}"> </foxy-internal-select-control> ${0} </foxy-internal-summary-control> <foxy-internal-summary-control infer="quantity-group" layout="details"> <foxy-internal-number-control property="items.${0}.quantity" layout="summary-item" infer="quantity" step="1" min="1"> </foxy-internal-number-control> ${0} </foxy-internal-summary-control> <foxy-internal-summary-control infer="dimensions-group" layout="details"> <foxy-internal-number-control placeholder="${0}" property="items.${0}.weight" layout="summary-item" suffix="${0}" infer="weight" min="0"> </foxy-internal-number-control> <foxy-internal-number-control property="items.${0}.length" layout="summary-item" suffix="${0}" infer="length" min="0"> </foxy-internal-number-control> <foxy-internal-number-control property="items.${0}.width" layout="summary-item" suffix="${0}" infer="width" min="0"> </foxy-internal-number-control> <foxy-internal-number-control property="items.${0}.height" layout="summary-item" suffix="${0}" infer="height" min="0"> </foxy-internal-number-control> </foxy-internal-summary-control> <foxy-internal-async-list-control first="foxy://${0}/form/items/${0}/custom_options" infer="custom-options" form="foxy-internal-experimental-add-to-cart-builder-custom-option-form" item="foxy-internal-experimental-add-to-cart-builder-custom-option-card" alert .formProps="${0}"> </foxy-internal-async-list-control> ${0} <foxy-nucleon infer="" class="hidden" href="${0}" id="itemCategoryLoader" @update="${0}"> </foxy-nucleon> </div> `),p,p,u(null!==(r=this.itemCategories)&&void 0!==r?r:void 0),p,u(null!==(i=this.currencyCode)&&void 0!==i?i:void 0),(null==f?void 0:f.price_configurable)?"price-default":"price",p,p,p,p,(null==f?void 0:f.image)?n(b||(b=D` <foxy-internal-text-control property="items.${0}.url" layout="summary-item" infer="url"> </foxy-internal-text-control> `),p):"",p,(null==f?void 0:f.sub_enabled)?n($||($=D` <foxy-internal-frequency-control property="items.${0}.sub_frequency" layout="summary-item" infer="sub-frequency"> </foxy-internal-frequency-control> <foxy-internal-select-control property="items.${0}.sub_startdate_format" layout="summary-item" infer="sub-startdate-format" .options="${0}"> </foxy-internal-select-control> ${0} <foxy-internal-select-control property="items.${0}.sub_enddate_format" layout="summary-item" infer="sub-enddate-format" .options="${0}"> </foxy-internal-select-control> ${0} `),p,p,[{label:"option_none",value:"none"},{label:"option_yyyymmdd",value:"yyyymmdd"},{label:"option_dd",value:"dd"},{label:"option_duration",value:"duration"}],"yyyymmdd"===f.sub_startdate_format?n(w||(w=D` <foxy-internal-date-control property="items.${0}.sub_startdate" layout="summary-item" infer="sub-startdate-yyyymmdd"> </foxy-internal-date-control> `),p):"duration"===f.sub_startdate_format?n(S||(S=D` <foxy-internal-frequency-control property="items.${0}.sub_startdate" layout="summary-item" infer="sub-startdate-duration"> </foxy-internal-frequency-control> `),p):"dd"===f.sub_startdate_format?n(j||(j=D` <foxy-internal-number-control property="items.${0}.sub_startdate" layout="summary-item" infer="sub-startdate-dd" step="1" min="1" max="31"> </foxy-internal-number-control> `),p):"",p,[{label:"option_none",value:"none"},{label:"option_yyyymmdd",value:"yyyymmdd"},{label:"option_duration",value:"duration"}],"yyyymmdd"===f.sub_enddate_format?n(C||(C=D` <foxy-internal-date-control property="items.${0}.sub_enddate" layout="summary-item" infer="sub-enddate-yyyymmdd"> </foxy-internal-date-control> `),p):"duration"===f.sub_enddate_format?n(q||(q=D` <foxy-internal-frequency-control property="items.${0}.sub_enddate" layout="summary-item" infer="sub-enddate-duration"> </foxy-internal-frequency-control> `),p):""):"",p,(null==f?void 0:f.discount_name)?n(k||(k=D` <foxy-discount-builder infer="discount-builder" .parsedValue="${0}" @change="${0}"> </foxy-discount-builder> `),{details:null!==(o=null==f?void 0:f.discount_details)&&void 0!==o?o:"",type:null!==(a=null==f?void 0:f.discount_type)&&void 0!==a?a:"discount_amount_percentage",name:null!==(s=null==f?void 0:f.discount_name)&&void 0!==s?s:""},(e=>this.__handleDiscountBuilderChange(e,f,p))):"",p,[{label:"option_none",value:"none"},{label:"option_minutes",value:"minutes"},{label:"option_timestamp",value:"timestamp"}],"minutes"===(null==f?void 0:f.expires_format)?n(L||(L=D` <foxy-internal-number-control property="items.${0}.expires_value" layout="summary-item" suffix="min" infer="expires-value-minutes"> </foxy-internal-number-control> `),p):"timestamp"===(null==f?void 0:f.expires_format)?n(P||(P=D` <foxy-internal-date-control property="items.${0}.expires_value" layout="summary-item" format="unix" infer="expires-value-timestamp"> </foxy-internal-date-control> `),p):"",p,"minutes"===(null==f?void 0:f.expires_format)?"":n(T||(T=D` <foxy-internal-number-control property="items.${0}.quantity_min" layout="summary-item" infer="quantity-min" step="1" min="1"> </foxy-internal-number-control> <foxy-internal-number-control property="items.${0}.quantity_max" layout="summary-item" infer="quantity-max" step="1" min="1"> </foxy-internal-number-control> `),p,p),u(null==m?void 0:m.default_weight),p,u(null==m?void 0:m.default_weight_unit),p,u(null==m?void 0:m.default_length_unit),p,u(null==m?void 0:m.default_length_unit),p,u(null==m?void 0:m.default_length_unit),null==c?void 0:c.virtualHost,p,{".defaultWeightUnit":null==m?void 0:m.default_weight_unit,".existingOptions":null!==(l=null==f?void 0:f.custom_options)&&void 0!==l?l:[],".itemCategories":this.itemCategories,".currencyCode":this.currencyCode},1===(null===(d=null==c?void 0:c.form.items)||void 0===d?void 0:d.length)?n(U||(U=D``)):n(F||(F=D` <vaadin-button theme="error" class="w-full" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="delete" key="caption"></foxy-i18n> </vaadin-button> `),this.disabled,(()=>this.dispatchEvent(new CustomEvent("remove")))),u(null==f?void 0:f.item_category_uri),(()=>this.requestUpdate()))}get __itemCategoryLoader(){return this.renderRoot.querySelector("#itemCategoryLoader")}__handleDiscountBuilderChange(e,t,r){var n;const i=e.currentTarget,o=this.nucleon;t.discount_details=i.parsedValue.details,t.discount_type=i.parsedValue.type,t.discount_name=i.parsedValue.name;const a=null!==(n=null==o?void 0:o.form.items)&&void 0!==n?n:[];a.splice(r,1,t),null==o||o.edit({items:[...a]})}});let H,M,A,E,O,z,I,R=e=>e;const B=l(s(e,"experimental-add-to-cart-builder"));class W extends B{constructor(){var e;super(...arguments),e=this,this.defaultDomain=null,this.encodeHelper=null,this.localeCodes=null,this.store=null,this.__signingSeparator=`--${Date.now()}${(1e5*Math.random()).toFixed(0)}--`,this.__signAsync=d((async function(t,r){if(t===e.__previousUnsignedCode&&e.__previousSignedCode)return;const n=()=>t!==e.__previousUnsignedCode;e.__signingState="busy";try{const i=await new W.API(e).fetch(r,{headers:{"Content-Type":"text/plain"},method:"POST",body:t});if(!n())if(i.ok){const t=(await i.json()).result;n()||(e.__signingState="idle",e.__previousSignedCode=t.replace(/value="--OPEN--" data-replace/gi,"value"))}else e.__signingState="fail"}catch(t){n()||(e.__signingState="fail")}}),500),this.__previousUnsignedCode="",this.__previousSignedCode="",this.__signingState="idle",this.__openState=[]}static get properties(){return o(o({},super.properties),{},{defaultDomain:{attribute:"default-domain"},encodeHelper:{attribute:"encode-helper"},localeCodes:{attribute:"locale-codes"},store:{},__previousUnsignedCode:{attribute:!1},__previousSignedCode:{attribute:!1},__signingState:{attribute:!1},__openState:{attribute:!1}})}renderBody(){var e,t,r,o,a,s,l,d,m,c,f,y;const h=this.__getAddToCartCode(),_=null!==(r=null!==(t=null===(e=this.data)||void 0===e?void 0:e._links["fx:store"].href)&&void 0!==t?t:this.store)&&void 0!==r?r:void 0,x=null===(o=this.__storeLoader)||void 0===o?void 0:o.data;return n(H||(H=R` <div class="grid gap-m items-start sm-grid-cols-2 md-grid-cols-3 h-full overflow-auto"> <div class="space-y-m"> ${0} <vaadin-button class="w-full" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="add-product" key="caption"></foxy-i18n> </vaadin-button> </div> <div class="space-y-m md-col-span-2 sticky top-0"> ${0} <foxy-internal-summary-control infer="cart-settings-group"> <foxy-internal-resource-picker-control layout="summary-item" first="${0}" infer="template-set-uri" item="foxy-template-set-card"> </foxy-internal-resource-picker-control> <foxy-internal-select-control layout="summary-item" infer="empty" .options="${0}"> </foxy-internal-select-control> <foxy-internal-switch-control false-alias="add" true-alias="checkout" layout="summary-item" infer="cart"> </foxy-internal-switch-control> </foxy-internal-summary-control> </div> </div> <foxy-nucleon class="hidden" infer="" href="${0}" id="defaultTemplateSetLoader" @update="${0}"> </foxy-nucleon> <foxy-nucleon class="hidden" infer="" href="${0}" id="localeCodesHelperLoader" @update="${0}"> </foxy-nucleon> <foxy-nucleon class="hidden" infer="" href="${0}" id="templateSetLoader" @update="${0}"> </foxy-nucleon> <foxy-nucleon class="hidden" infer="" href="${0}" id="storeLoaderId" @update="${0}"> </foxy-nucleon> ${0} `),null===(a=this.form.items)||void 0===a?void 0:a.map(((e,t)=>{var r;return n(M||(M=R` <foxy-internal-summary-control layout="details" label="${0}" infer="item" ?open="${0}" @toggle="${0}"> <foxy-internal-experimental-add-to-cart-builder-item-control item-categories="${0}" currency-code="${0}" store="${0}" index="${0}" infer="" @remove="${0}"> </foxy-internal-experimental-add-to-cart-builder-item-control> </foxy-internal-summary-control> `),u(e.name.trim()||void 0),u(this.__openState[t]),(e=>{const r=e.currentTarget;this.__openState[t]=r.open,this.__openState=[...this.__openState]}),u(null==x?void 0:x._links["fx:item_categories"].href),u(null!==(r=this.__resolvedCurrencyCode)&&void 0!==r?r:void 0),u(_),t,(()=>{var e;const r=null===(e=this.form.items)||void 0===e?void 0:e.filter(((e,r)=>r!==t));this.edit({items:r}),this.__openState=this.__openState.filter(((e,r)=>r!==t))}))})),this.disabled,(()=>{var e;const t=null!==(e=this.form.items)&&void 0!==e?e:[];this.edit({items:[...t,{name:"",price:0,custom_options:[]}]}),this.__openState=[...new Array(t.length).fill(!1),!0]}),h?n(A||(A=R` <foxy-internal-summary-control infer="preview"> <div class="flex"> <iframe srcdoc="${0}${0}" style="margin:calc(-1 * (.625em + (var(--lumo-border-radius)/ 4) - 1px))" class="${0}" @load="${0}"> </iframe> </div> <div class="flex leading-s text-s min-w-0 relative" style="gap:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)"> <div style="font-family:monospace;max-height:calc(8 * (1em * var(--lumo-line-height-s)))" class="${0}"> <code class="whitespace-pre">${0}</code> </div> <div style="top:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px);right:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)" class="${0}"> <div class="bg-contrast-10 rounded-s"> <foxy-spinner infer="spinner" class="-mx-xs" style="transform:scale(.8)"> </foxy-spinner> </div> </div> <foxy-copy-to-clipboard infer="copy-to-clipboard" text="${0}" class="${0}"> </foxy-copy-to-clipboard> </div> <div class="flex items-start text-xs leading-xs text-secondary" style="gap:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)"> ${0} <p> <foxy-i18n infer="" key="edits_tip"></foxy-i18n> <a target="_blank" class="rounded font-medium underline transition-colors cursor-pointer hover-opacity-80 focus-outline-none focus-ring-2 focus-ring-primary-50" href="https://wiki.foxycart.com/v/2.0/products"> <foxy-i18n infer="" key="edits_docs"></foxy-i18n> </a> </p> </div> </foxy-internal-summary-control> <foxy-internal-summary-control infer="link"> <div class="flex items-center leading-s min-w-0 relative" style="gap:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)"> <foxy-i18n infer="" key="direct_link"></foxy-i18n> <a target="_blank" style="max-width:30rem" href="${0}" class="${0}"> ${0} </a> <div style="top:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px);right:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)" class="${0}"> <div class="bg-contrast-10 rounded-s"> <foxy-spinner infer="spinner" state="${0}" class="-mx-xs" style="transform:scale(.8)"> </foxy-spinner> </div> </div> <foxy-copy-to-clipboard infer="copy-to-clipboard" text="${0}" class="${0}"> </foxy-copy-to-clipboard> </div> </foxy-internal-summary-control> `),'\n <style>\n html {\n line-height: 1.15;\n -webkit-text-size-adjust: 100%;\n }\n\n body {\n margin: 0;\n }\n\n button,\n input,\n optgroup,\n select,\n textarea {\n font-family: inherit;\n font-size: 100%;\n line-height: 1.15;\n margin: 0;\n }\n\n button,\n input {\n overflow: visible;\n }\n\n button,\n select {\n text-transform: none;\n }\n\n button,\n [type="button"],\n [type="reset"],\n [type="submit"] {\n -webkit-appearance: button;\n }\n\n button::-moz-focus-inner,\n [type="button"]::-moz-focus-inner,\n [type="reset"]::-moz-focus-inner,\n [type="submit"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n }\n\n button:-moz-focusring,\n [type="button"]:-moz-focusring,\n [type="reset"]:-moz-focusring,\n [type="submit"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n }\n\n fieldset {\n padding: 0.35em 0.75em 0.625em;\n }\n\n legend {\n box-sizing: border-box;\n color: inherit;\n display: table;\n max-width: 100%;\n padding: 0;\n white-space: normal;\n }\n\n textarea {\n overflow: auto;\n }\n\n [type="checkbox"],\n [type="radio"] {\n box-sizing: border-box;\n padding: 0;\n }\n\n [type="number"]::-webkit-inner-spin-button,\n [type="number"]::-webkit-outer-spin-button {\n height: auto;\n }\n\n [type="search"] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n }\n\n [type="search"]::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n\n ::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n }\n\n [hidden] {\n display: none;\n }\n\n html {\n color-scheme: light dark !important;\n }\n\n body {\n display: flex;\n padding: 2rem;\n }\n\n form {\n flex: 1;\n max-width: 20rem;\n font: normal 0.875rem system-ui;\n display: grid;\n grid-template-columns: auto 1fr;\n grid-gap: 0.5rem;\n align-items: center;\n margin: auto;\n }\n\n form:has(fieldset) {\n grid-gap: 1rem;\n }\n\n fieldset {\n display: grid;\n grid-template-columns: auto 1fr;\n grid-gap: 0.5rem;\n grid-column: 1 / span 2;\n align-items: center;\n margin: 0;\n }\n\n legend {\n white-space: nowrap;\n }\n\n button {\n grid-column: 1 / span 2;\n margin-top: 0.5rem;\n }\n\n form:has(fieldset) button {\n margin-top: 0;\n }\n\n label {\n display: contents;\n }\n </style>\n',h.formHTML,p({"flex-1 transition-all filter":!0,"blur-sm":"idle"!==this.__signingState}),(e=>{var t;const r=e.currentTarget,n=null===(t=r.contentWindow)||void 0===t?void 0:t.document.documentElement;n&&(r.style.height=n.scrollHeight+"px")}),p({"break-all overflow-auto flex-1 min-w-0 transition-all filter":!0,"blur-sm":"idle"!==this.__signingState}),h.formHTML,p({"absolute right-0 bg-base rounded-s transition-opacity":!0,"opacity-0 pointer-events-none":"busy"!==this.__signingState}),h.formHTML,p({"flex-shrink-0 text-m transition-opacity":!0,"opacity-0 pointer-events-none":"busy"===this.__signingState}),i(E||(E=R`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" class="flex-shrink-0 text-contrast-70" style="width: 1.25em"><path fill-rule="evenodd" d="M15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0ZM9 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM6.75 8a.75.75 0 0 0 0 1.5h.75v1.75a.75.75 0 0 0 1.5 0v-2.5A.75.75 0 0 0 8.25 8h-1.5Z" clip-rule="evenodd" /></svg>`)),h.linkHref,p({"font-medium truncate ml-auto min-w-0 rounded-s":!0,"transition-all filter":!0,"hover-underline":!0,"focus-outline-none focus-ring-2 focus-ring-primary-50":!0,"blur-sm":"idle"!==this.__signingState}),h.linkHref,p({"absolute right-0 bg-base rounded-s transition-opacity":!0,"opacity-0 pointer-events-none":"busy"!==this.__signingState}),"fail"===this.__signingState?"error":"busy",h.linkHref,p({"flex-shrink-0 text-m transition-opacity":!0,"opacity-0 pointer-events-none":"busy"===this.__signingState})):n(O||(O=R` <foxy-internal-summary-control infer="preview"> <div class="flex items-center justify-center p-xl"> <foxy-spinner infer="unavailable" state="empty"></foxy-spinner> </div> </foxy-internal-summary-control> `)),u(null===(l=null===(s=this.__storeLoader)||void 0===s?void 0:s.data)||void 0===l?void 0:l._links["fx:template_sets"].href),[{label:"option_false",value:"false"},{label:"option_true",value:"true"},{label:"option_reset",value:"reset"}],u(this.__defaultTemplateSetHref),(()=>this.requestUpdate()),u(this.localeCodes),(()=>this.requestUpdate()),u(null!==(d=this.form.template_set_uri)&&void 0!==d?d:void 0),(()=>this.requestUpdate()),u(null!==(f=null!==(c=null===(m=this.data)||void 0===m?void 0:m._links["fx:store"].href)&&void 0!==c?c:this.store)&&void 0!==f?f:void 0),(()=>this.requestUpdate()),null===(y=this.form.items)||void 0===y?void 0:y.map(((e,t)=>n(z||(z=R` <foxy-nucleon class="hidden" infer="" href="${0}" id="itemCategoryLoaderProduct${0}" @update="${0}"> </foxy-nucleon> ${0} `),u(e.item_category_uri),t,(()=>this.requestUpdate()),e.custom_options.map(((e,r)=>n(I||(I=R` <foxy-nucleon class="hidden" infer="" href="${0}" id="itemCategoryLoaderProduct${0}Option${0}" @update="${0}"> </foxy-nucleon> `),u(e.item_category_uri),t,r,(()=>this.requestUpdate()))))))))}updated(e){var t,r;super.updated(e),this.in("idle")&&!(null===(t=this.form.items)||void 0===t?void 0:t.length)&&(this.edit({items:[{name:"",price:0,custom_options:[]}]}),this.__openState=[!0]),(null===(r=this.form.items)||void 0===r?void 0:r.length)&&!this.__openState.length&&(this.__openState=[!0,...new Array(this.form.items.length-1).fill(!1)])}submit(){}get __defaultTemplateSetHref(){var e,t,r;try{const n=new URL(null!==(r=null===(t=null===(e=this.__storeLoader)||void 0===e?void 0:e.data)||void 0===t?void 0:t._links["fx:template_sets"].href)&&void 0!==r?r:"");return n.searchParams.set("code","DEFAULT"),n.toString()}catch(e){return}}get __resolvedCurrencyCode(){var e,t,r,n;const i=this.renderRoot.querySelector("#localeCodesHelperLoader"),o=null===(e=this.__resolvedTemplateSet)||void 0===e?void 0:e.locale_code,a=null===(t=null==i?void 0:i.data)||void 0===t?void 0:t.values,s=o?null==a?void 0:a[o]:void 0;return s?null===(n=null===(r=/Currency: ([A-Z]{3})/g.exec(s))||void 0===r?void 0:r[1])||void 0===n?void 0:n.toUpperCase():void 0}get __resolvedTemplateSet(){var e,t,r,n;const i=e=>this.renderRoot.querySelector(e);return null!==(t=null===(e=i("#templateSetLoader"))||void 0===e?void 0:e.data)&&void 0!==t?t:null===(n=null===(r=i("#defaultTemplateSetLoader"))||void 0===r?void 0:r.data)||void 0===n?void 0:n._embedded["fx:template_sets"][0]}get __resolvedCartUrl(){var e;const t=null===(e=this.__storeLoader)||void 0===e?void 0:e.data;if(t){if(t.use_remote_domain)return`https://${t.store_domain}/cart`;if(null!==this.defaultDomain)return`https://${t.store_domain}.${this.defaultDomain}/cart`}return null}get __storeLoader(){return this.renderRoot.querySelector("#storeLoaderId")}__getItemCategoryLoader(e,t){const r=`#itemCategoryLoaderProduct${e}`,n="number"==typeof t?`${r}Option${t}`:r;return this.renderRoot.querySelector(n)}__getAddToCartFormHTML(){var e,t,r,n,i,o,a;const s=this.__resolvedCurrencyCode,l=this.__resolvedTemplateSet,d=this.__resolvedCartUrl,u=null===(e=this.__storeLoader)||void 0===e?void 0:e.data;if(!(this.defaultDomain&&l&&u&&s&&d))return"";let c=`<form action="${m(d)}" method="post" target="_blank">`,p=1;const f=()=>`\n${" ".repeat(2*p)}`,y=(e,t)=>{const r=m(t),n=m(e);c+=`${f()}<input type="hidden" name="${n}" value="${r}">`};"DEFAULT"!==l.code&&y("template_set",l.code),this.form.empty&&y("empty",this.form.empty),"checkout"===this.form.cart&&y("cart","checkout");const h=null!==(t=this.form.items)&&void 0!==t?t:[],_=h.length>1;for(let e=0;e<h.length;++e){const t=this.__getItemCategoryLoader(e),l=null==t?void 0:t.data,d=h[e];if(!d.name||!d.price)return"";if(d.item_category_uri&&!l)return"";const x=d.quantity_min!==d.quantity_max,g=d.price_configurable,v=d.custom_options.some(((e,t,r)=>e.value_configurable||r.findIndex((t=>t.name===e.name))!==t)),b=_&&(g||x||v);b&&(c+=`${f()}<fieldset>`,p++,c+=`${f()}<legend>${m(d.name)}</legend>`);const $=0===e?"":`${e+1}:`;y(`${$}name`,d.name);const w=`${d.price}${s}`;if(d.price_configurable){const e=m(w);c+=`${f()}<label>`,p++,c+=`${f()}<span>${m(this.t("preview.price_label"))}</span>`,u.use_cart_validation?c+=`${f()}<input required name="${$}price" value="--OPEN--" data-replace="${e}">`:c+=`${f()}<input required name="${$}price" value="${e}">`,p--,c+=`${f()}</label>`}else y(`${$}price`,w);if(l&&"DEFAULT"!==l.code&&y(`${$}category`,l.code),d.code&&y(`${$}code`,d.code),d.parent_code&&y(`${$}parent_code`,d.parent_code),d.image&&(y(`${$}image`,d.image),d.url&&y(`${$}url`,d.url)),d.sub_enabled&&d.sub_frequency){if(y(`${$}sub_frequency`,d.sub_frequency),d.sub_startdate)if("yyyymmdd"===d.sub_startdate_format){const e=new Date(d.sub_startdate);y(`${$}sub_startdate`,`${e.getFullYear()}${(e.getMonth()+1).toString().padStart(2,"0")}${e.getDate().toString().padStart(2,"0")}`)}else y(`${$}sub_startdate`,String(d.sub_startdate));if(d.sub_enddate)if("yyyymmdd"===d.sub_enddate_format){const e=new Date(d.sub_enddate);y(`${$}sub_enddate`,`${e.getFullYear()}${(e.getMonth()+1).toString().padStart(2,"0")}${e.getDate().toString().padStart(2,"0")}`)}else y(`${$}sub_enddate`,d.sub_enddate)}d.discount_name&&d.discount_type&&d.discount_details&&y(`${$}discount_${d.discount_type}`,`${d.discount_name}{${d.discount_details}}`),d.expires_value&&("timestamp"===d.expires_format?y(`${$}expires`,(d.expires_value/1e3).toFixed(0)):y(`${$}expires`,d.expires_value.toFixed(0))),d.quantity_min||d.quantity_max?(c+=`${f()}<label>`,p++,c+=`${f()}<span>${m(this.t("preview.quantity_label"))}</span>`,c+=`${f()}<input type="number" name="${m(`${$}quantity`)}"`,"minutes"!==d.expires_format&&(d.quantity_min&&(c+=` min="${m(String(d.quantity_min))}"`),d.quantity_max&&(c+=` max="${m(String(d.quantity_max))}"`)),u.use_cart_validation?c+=` value="--OPEN--" data-replace="${m(String(null!==(r=d.quantity)&&void 0!==r?r:1))}">`:c+=` value="${m(String(null!==(n=d.quantity)&&void 0!==n?n:1))}">`,p--,c+=`${f()}</label>`):(null!==(i=d.quantity)&&void 0!==i?i:1)>1&&y(`${$}quantity`,(null!==(o=d.quantity)&&void 0!==o?o:1).toString()),"minutes"!==d.expires_format&&(d.quantity_min&&y(`${$}quantity_min`,d.quantity_min.toFixed(0)),d.quantity_max&&y(`${$}quantity_max`,d.quantity_max.toFixed(0))),d.length&&y(`${$}length`,d.length.toFixed(3)),d.width&&y(`${$}width`,d.width.toFixed(3)),d.height&&y(`${$}height`,d.height.toFixed(3)),d.weight&&y(`${$}weight`,d.weight.toFixed(3)),u.features_multiship&&(c+=`${f()}<label>`,p++,c+=`${f()}<span>${m(this.t("preview.shipto_label"))}</span>`,u.use_cart_validation?c+=`${f()}<input name="${$}shipto" value="--OPEN--" data-replace="">`:c+=`${f()}<input name="${$}shipto" value="">`,p--,c+=`${f()}</label>`);const S=d.custom_options.reduce(((e,t)=>(e[t.name]||(e[t.name]=[]),e[t.name].push(t),e)),{});for(const t in S){const r=S[t];if(1===r.length){const n=d.custom_options.indexOf(r[0]),i=null===(a=this.__getItemCategoryLoader(e,n))||void 0===a?void 0:a.data,o=this.__getOptionModifiers(r[0],null!=i?i:null,s),l=`${r[0].value}${o}`,h=`${$}${t}`;r[0].value_configurable?(c+=`${f()}<label>`,p++,c+=`${f()}<span>${m(t)}:</span>`,c+=`${f()}<input name="${m(h)}" `,u.use_cart_validation?c+=`value="--OPEN--" data-replace="${m(l)}">`:c+=`value="${m(l)}">`,p--,c+=`${f()}</label>`):y(h,l)}else c+=`${f()}<label>`,p++,c+=`${f()}<span>${m(t)}:</span>`,c+=`${f()}<select name="${$}${t}">`,p++,r.forEach((t=>{var r;const n=d.custom_options.indexOf(t),i=null===(r=this.__getItemCategoryLoader(e,n))||void 0===r?void 0:r.data,o=this.__getOptionModifiers(t,null!=i?i:null,s),a=m(`${t.value}${o}`),l=m(t.value);c+=`${f()}<option value="${a}">${l}</option>`})),p--,c+=`${f()}</select>`,p--,c+=`${f()}</label>`}b&&(p--,c+=`${f()}</fieldset>`)}const x=m(this.t("preview.submit_caption"));return c+=`${f()}<button type="submit">${x}</button>`,p--,c+=`${f()}</form>`,c}__getAddToCartLinkHref(){var e,t,r,n,i,o;const a=this.__resolvedCurrencyCode,s=this.__resolvedTemplateSet,l=this.__resolvedCartUrl,d=null===(e=this.__storeLoader)||void 0===e?void 0:e.data;if(!(this.defaultDomain&&s&&d&&a&&l))return"";const u=new URL(l);"DEFAULT"!==s.code&&u.searchParams.set("template_set",s.code),this.form.empty&&u.searchParams.set("empty",this.form.empty),"checkout"===this.form.cart&&u.searchParams.set("cart","checkout");for(let e=0;e<(null!==(r=null===(t=this.form.items)||void 0===t?void 0:t.length)&&void 0!==r?r:0);++e){const t=this.form.items[e],r=0===e?"":`${e+1}:`,s=null===(n=this.__getItemCategoryLoader(e))||void 0===n?void 0:n.data;if(t.item_category_uri&&!s)return"";if(s&&"DEFAULT"!==s.code&&u.searchParams.set(`${r}category`,s.code),u.searchParams.set(`${r}name`,t.name),u.searchParams.set(`${r}price`,`${t.price}${a}`),t.code&&u.searchParams.set(`${r}code`,t.code),t.parent_code&&u.searchParams.set(`${r}parent_code`,t.parent_code),t.image&&(u.searchParams.set(`${r}image`,t.image),t.url&&u.searchParams.set(`${r}url`,t.url)),t.sub_enabled&&t.sub_frequency){if(u.searchParams.set(`${r}sub_frequency`,t.sub_frequency),t.sub_startdate)if("yyyymmdd"===t.sub_startdate_format){const e=new Date(t.sub_startdate),n=e.getFullYear(),i=(e.getMonth()+1).toString().padStart(2,"0"),o=e.getDate().toString().padStart(2,"0");u.searchParams.set(`${r}sub_startdate`,`${n}${i}${o}`)}else u.searchParams.set(`${r}sub_startdate`,String(t.sub_startdate));if(t.sub_enddate)if("yyyymmdd"===t.sub_enddate_format){const e=new Date(t.sub_enddate),n=e.getFullYear(),i=(e.getMonth()+1).toString().padStart(2,"0"),o=e.getDate().toString().padStart(2,"0");u.searchParams.set(`${r}sub_enddate`,`${n}${i}${o}`)}else u.searchParams.set(`${r}sub_enddate`,t.sub_enddate)}t.discount_name&&t.discount_type&&t.discount_details&&u.searchParams.set(`${r}discount_${t.discount_type}`,`${t.discount_name}{${t.discount_details}}`),t.expires_value&&("timestamp"===t.expires_format?u.searchParams.set(`${r}expires`,(t.expires_value/1e3).toFixed(0)):u.searchParams.set(`${r}expires`,t.expires_value.toFixed(0))),(null!==(i=t.quantity)&&void 0!==i?i:1)>1&&u.searchParams.set(`${r}quantity`,(null!==(o=t.quantity)&&void 0!==o?o:1).toFixed(0)),"minutes"!==t.expires_format&&(t.quantity_min&&u.searchParams.set(`${r}quantity_min`,t.quantity_min.toString()),t.quantity_max&&u.searchParams.set(`${r}quantity_max`,t.quantity_max.toString())),t.weight&&u.searchParams.set(`${r}weight`,t.weight.toFixed(3)),t.length&&u.searchParams.set(`${r}length`,t.length.toFixed(3)),t.width&&u.searchParams.set(`${r}width`,t.width.toFixed(3)),t.height&&u.searchParams.set(`${r}height`,t.height.toFixed(3)),t.custom_options.forEach(((t,n)=>{var i,o;const s=null===(i=this.__getItemCategoryLoader(e,n))||void 0===i?void 0:i.data,l=this.__getOptionModifiers(t,null!=s?s:null,a);u.searchParams.set(`${r}${t.name}`,`${null!==(o=t.value)&&void 0!==o?o:""}${l}`)}))}return u.toString()}__getAddToCartCode(){var e;const t=null===(e=this.__storeLoader)||void 0===e?void 0:e.data;if(!this.encodeHelper||!t)return null;const r=this.__getAddToCartFormHTML(),n=this.__getAddToCartLinkHref();if(!r||!n)return null;const i=`<a href="${m(n)}">Add to cart</a>`,o=`${r}${this.__signingSeparator}${i}`;if(o===this.__previousUnsignedCode&&this.__previousSignedCode){const e=this.__previousSignedCode.split(this.__signingSeparator);return{formHTML:e[0],linkHref:c(e[1].substring(9,e[1].length-17))}}return this.__previousUnsignedCode=o,this.__previousSignedCode="",t.use_cart_validation&&this.__signAsync(o,this.encodeHelper),{formHTML:r,linkHref:n}}__getOptionModifiers(e,t,r){if(e.value_configurable)return"";const n=[];if(e.price){const t=e.replace_price?":":-1===Math.sign(e.price)?"-":"+";(e.replace_price||0!==e.price)&&n.push(`p${t}${Math.abs(e.price)}${r}`)}if(e.weight){const t=e.replace_weight?":":-1===Math.sign(e.weight)?"-":"+";(e.replace_weight||0!==e.weight)&&n.push(`w${t}${Math.abs(e.weight)}`)}if(e.item_category_uri&&!t)return"";if(t&&n.push(`y:${t.code}`),e.code){const t=e.replace_code?":":"+";(e.replace_code||""!==e.code)&&n.push(`c${t}${e.code}`)}return n.length?`{${n.join("|")}}`:""}}customElements.define("foxy-experimental-add-to-cart-builder",W);export{W as ExperimentalAddToCartBuilder};
|
|
1
|
+
import"./shared-8af5a4f2.js";import"./shared-ebc72d69.js";import"./shared-504f3c65.js";import"./shared-44118acb.js";import"./shared-80688cd4.js";import"./shared-80a7903f.js";import"./shared-b0d76785.js";import{I as e,b as t}from"./shared-44fd89ce.js";import"./foxy-template-set-card.js";import"./foxy-copy-to-clipboard.js";import"./foxy-nucleon-element.js";import"./foxy-spinner.js";import"./shared-57a98543.js";import"./shared-84761b5b.js";import"./shared-51fd39fa.js";import"./shared-7889f2f2.js";import"./shared-2cb3cb3a.js";import"./foxy-item-category-card.js";import"./foxy-discount-builder.js";import"./shared-a7617e76.js";import{I as r}from"./shared-238d397f.js";import{h as o,s as n}from"./shared-dc73b9a5.js";import{_ as i,B as a}from"./shared-d1195c27.js";import{a as s,R as l,w as d}from"./shared-5e0b71a2.js";import{i as u}from"./shared-9803aa7c.js";import{e as m,d as c}from"./shared-641786b2.js";import{c as p}from"./shared-4e709717.js";import"./shared-018166d0.js";import"./shared-b16829cd.js";import"./shared-cf0ca582.js";import"./foxy-form-dialog.js";import"./shared-27e2e59a.js";import"./shared-ffc84c84.js";import"./shared-67898669.js";import"./shared-343d1fd7.js";import"./shared-d1cb97c6.js";import"./shared-17a61265.js";import"./shared-cd96ff03.js";import"./shared-99940888.js";import"./shared-bab2ea2c.js";import"./shared-bb3c9e23.js";import"./shared-9cf15285.js";import"./shared-019348d7.js";import"./shared-1aff7995.js";import"./shared-fcdb896f.js";import"./shared-573d6e21.js";import"./shared-525c1936.js";import"./shared-4c4b87c2.js";import"./shared-a0c6a159.js";import"./shared-22ba9566.js";import"./shared-c5cb7e8a.js";import"./shared-eb7bf7ba.js";import"./shared-6de0e9f3.js";import"./shared-8b838d83.js";import"./shared-e77d8d01.js";import"./shared-a585bfd3.js";import"./shared-651c44fa.js";import"./shared-28b0e29a.js";import"./shared-b04e9753.js";import"./shared-53caa399.js";import"./shared-d3a5cb85.js";import"./shared-b1fa0b61.js";import"./shared-51c4a6dd.js";import"./shared-31d8e958.js";import"./shared-9fcd36e5.js";import"./shared-c5326ab8.js";import"./shared-68fdcf24.js";import"./shared-112e521b.js";import"./shared-ec5b614e.js";import"./foxy-collection-page.js";import"./foxy-swipe-actions.js";import"./foxy-pagination.js";import"./shared-1c4ddc9b.js";import"./shared-32440b17.js";import"./shared-79d0699c.js";import"./shared-43e2c3f6.js";import"./shared-8438d4ca.js";let f,y=e=>e;customElements.define("foxy-internal-experimental-add-to-cart-builder-custom-option-card",class extends r{renderBody(){var e,t;return o(f||(f=y` <div class="flex justify-between items-center h-xs"> <span class="font-medium">${0}​</span> <span class="text-secondary">${0}​</span> </div> `),null===(e=this.data)||void 0===e?void 0:e.name,null===(t=this.data)||void 0===t?void 0:t.value)}});let h,_=e=>e;const g=s(e,"internal-experimental-add-to-cart-builder-custom-option-form");customElements.define("foxy-internal-experimental-add-to-cart-builder-custom-option-form",class extends g{constructor(){super(...arguments),this.defaultWeightUnit=null,this.existingOptions=[],this.itemCategories=null,this.currencyCode=null}static get properties(){return i(i({},super.properties),{},{defaultWeightUnit:{attribute:"default-weight-unit"},existingOptions:{type:Array,attribute:"existing-options"},itemCategories:{attribute:"item-categories"},currencyCode:{attribute:"currency-code"}})}get readonlySelector(){const e=[super.readonlySelector.toString()];return this.href&&e.unshift("basics-group"),new a(e.join(" ").trim())}get disabledSelector(){const e=[super.disabledSelector.toString()];return!this.href&&this.existingOptions.some((e=>e.name===this.form.name))&&e.unshift("basics-group:value-configurable"),new a(e.join(" ").trim())}get hiddenSelector(){const e=[super.hiddenSelector.toString()];return this.form.value_configurable&&e.unshift("price-group","weight-group","code-group","category-group"),new a(e.join(" ").trim())}renderBody(){var e,t,r,n;return o(h||(h=_` <foxy-internal-summary-control infer="basics-group"> <foxy-internal-text-control layout="summary-item" infer="name"></foxy-internal-text-control> <foxy-internal-text-control property="value" layout="summary-item" infer="${0}"> </foxy-internal-text-control> <foxy-internal-switch-control infer="value-configurable"></foxy-internal-switch-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="price-group"> <foxy-internal-number-control layout="summary-item" suffix="${0}" infer="price"> </foxy-internal-number-control> <foxy-internal-switch-control infer="replace-price"></foxy-internal-switch-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="weight-group"> <foxy-internal-number-control layout="summary-item" suffix="${0}" infer="weight"> </foxy-internal-number-control> <foxy-internal-switch-control infer="replace-weight"></foxy-internal-switch-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="code-group"> <foxy-internal-text-control layout="summary-item" infer="code"> </foxy-internal-text-control> <foxy-internal-switch-control infer="replace-code"></foxy-internal-switch-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="category-group"> <foxy-internal-resource-picker-control layout="summary-item" first="${0}" infer="item-category-uri" item="foxy-item-category-card"> </foxy-internal-resource-picker-control> </foxy-internal-summary-control> <foxy-nucleon infer="" class="hidden" href="${0}" id="itemCategoryLoader" @update="${0}"> </foxy-nucleon> `),this.form.value_configurable?"default-value":"value",u(null!==(e=this.currencyCode)&&void 0!==e?e:void 0),u(null!==(t=this.__resolvedDefaultWeightUnit)&&void 0!==t?t:void 0),u(null!==(r=this.itemCategories)&&void 0!==r?r:void 0),u(null!==(n=this.form.item_category_uri)&&void 0!==n?n:void 0),(()=>this.requestUpdate()))}async _sendPost(e){const t=this.existingOptions.filter((t=>t.name===e.name));if(t.some((e=>e.value_configurable)))throw["error:option_exists_configurable"];if(t.some((t=>t.value===e.value)))throw["error:option_exists"];return super._sendPost(e)}get __resolvedDefaultWeightUnit(){var e,t;const r=this.renderRoot.querySelector("#itemCategoryLoader");return null!==(t=null===(e=null==r?void 0:r.data)||void 0===e?void 0:e.default_weight_unit)&&void 0!==t?t:this.defaultWeightUnit}});let x,v,b,$,w,S,j,C,q,k,L,P,U,T,F,H,D=e=>e;customElements.define("foxy-internal-experimental-add-to-cart-builder-item-control",class extends t{constructor(){super(...arguments),this.defaultItemCategory=null,this.itemCategories=null,this.currencyCode=null,this.index=0}static get properties(){return i(i({},super.properties),{},{defaultItemCategory:{type:Object,attribute:"default-item-category"},itemCategories:{attribute:"item-categories"},currencyCode:{attribute:"currency-code"},index:{type:Number}})}renderControl(){var e,t,r,n,i,a,s,l,d;const m=this.__resolvedItemCategory,c=null==m?void 0:m.item_delivery_type,p=this.nucleon,f=this.index,y=null===(e=null==p?void 0:p.form.items)||void 0===e?void 0:e[f];return o(x||(x=D` <div class="space-y-m"> <foxy-internal-summary-control infer="basics-group"> <foxy-internal-text-control property="items.${0}.name" layout="summary-item" infer="name"> </foxy-internal-text-control> <foxy-internal-resource-picker-control property="items.${0}.item_category_uri" layout="summary-item" first="${0}" infer="item-category-uri" item="foxy-item-category-card"> </foxy-internal-resource-picker-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="price-group"> <foxy-internal-number-control property="items.${0}.price" layout="summary-item" suffix="${0}" infer="${0}"> </foxy-internal-number-control> <foxy-internal-switch-control property="items.${0}.price_configurable" layout="summary-item" infer="price-configurable"> </foxy-internal-switch-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="code-group"> <foxy-internal-text-control property="items.${0}.code" layout="summary-item" infer="code"> </foxy-internal-text-control> <foxy-internal-text-control property="items.${0}.parent_code" layout="summary-item" infer="parent-code"> </foxy-internal-text-control> </foxy-internal-summary-control> ${0} <foxy-internal-summary-control infer="subscriptions-group"> <foxy-internal-switch-control property="items.${0}.sub_enabled" layout="summary-item" infer="sub-enabled"> </foxy-internal-switch-control> ${0} </foxy-internal-summary-control> <foxy-internal-summary-control infer="quantity-group" layout="details"> <foxy-internal-number-control property="items.${0}.quantity" layout="summary-item" infer="quantity" step="1" min="1"> </foxy-internal-number-control> ${0} <foxy-internal-switch-control property="items.${0}.hide_quantity" infer="hide-quantity"> </foxy-internal-switch-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="advanced-group" layout="details"> <foxy-internal-text-control property="items.${0}.discount_name" layout="summary-item" infer="discount-name"> </foxy-internal-text-control> ${0} <foxy-internal-text-control property="items.${0}.image" layout="summary-item" infer="image"> </foxy-internal-text-control> ${0} <foxy-internal-select-control property="items.${0}.expires_format" layout="summary-item" infer="expires-format" .options="${0}"> </foxy-internal-select-control> ${0} ${0} </foxy-internal-summary-control> <foxy-internal-async-list-control first="foxy://${0}/form/items/${0}/custom_options" infer="custom-options" form="foxy-internal-experimental-add-to-cart-builder-custom-option-form" item="foxy-internal-experimental-add-to-cart-builder-custom-option-card" alert .formProps="${0}"> </foxy-internal-async-list-control> ${0} <foxy-nucleon infer="" class="hidden" href="${0}" id="itemCategoryLoader" @update="${0}"> </foxy-nucleon> </div> `),f,f,u(null!==(t=this.itemCategories)&&void 0!==t?t:void 0),f,u(null!==(r=this.currencyCode)&&void 0!==r?r:void 0),(null==y?void 0:y.price_configurable)?"price-default":"price",f,f,f,"notshipped"===c||"downloaded"===c?"":o(v||(v=D` <foxy-internal-summary-control infer="appearance-group"> <foxy-internal-number-control placeholder="${0}" property="items.${0}.weight" layout="summary-item" suffix="${0}" infer="weight" min="0"> </foxy-internal-number-control> </foxy-internal-summary-control> `),u(null==m?void 0:m.default_weight),f,u(null==m?void 0:m.default_weight_unit)),f,(null==y?void 0:y.sub_enabled)?o(b||(b=D` <foxy-internal-frequency-control property="items.${0}.sub_frequency" layout="summary-item" infer="sub-frequency" allow-twice-a-month> </foxy-internal-frequency-control> <foxy-internal-select-control property="items.${0}.sub_startdate_format" layout="summary-item" infer="sub-startdate-format" .options="${0}"> </foxy-internal-select-control> ${0} <foxy-internal-select-control property="items.${0}.sub_enddate_format" layout="summary-item" infer="sub-enddate-format" .options="${0}"> </foxy-internal-select-control> ${0} `),f,f,[{label:"option_none",value:"none"},{label:"option_yyyymmdd",value:"yyyymmdd"},{label:"option_dd",value:"dd"},{label:"option_duration",value:"duration"}],"yyyymmdd"===y.sub_startdate_format?o($||($=D` <foxy-internal-date-control property="items.${0}.sub_startdate" layout="summary-item" infer="sub-startdate-yyyymmdd"> </foxy-internal-date-control> `),f):"duration"===y.sub_startdate_format?o(w||(w=D` <foxy-internal-frequency-control property="items.${0}.sub_startdate" layout="summary-item" infer="sub-startdate-duration"> </foxy-internal-frequency-control> `),f):"dd"===y.sub_startdate_format?o(S||(S=D` <foxy-internal-number-control property="items.${0}.sub_startdate" layout="summary-item" infer="sub-startdate-dd" step="1" min="1" max="31"> </foxy-internal-number-control> `),f):"",f,[{label:"option_none",value:"none"},{label:"option_yyyymmdd",value:"yyyymmdd"},{label:"option_duration",value:"duration"}],"yyyymmdd"===y.sub_enddate_format?o(j||(j=D` <foxy-internal-date-control property="items.${0}.sub_enddate" layout="summary-item" infer="sub-enddate-yyyymmdd"> </foxy-internal-date-control> `),f):"duration"===y.sub_enddate_format?o(C||(C=D` <foxy-internal-frequency-control property="items.${0}.sub_enddate" layout="summary-item" infer="sub-enddate-duration"> </foxy-internal-frequency-control> `),f):""):"",f,"minutes"===(null==y?void 0:y.expires_format)?"":o(q||(q=D` <foxy-internal-number-control property="items.${0}.quantity_min" layout="summary-item" infer="quantity-min" step="1" min="1"> </foxy-internal-number-control> <foxy-internal-number-control property="items.${0}.quantity_max" layout="summary-item" infer="quantity-max" step="1" min="1"> </foxy-internal-number-control> `),f,f),f,f,(null==y?void 0:y.discount_name)?o(k||(k=D` <foxy-discount-builder infer="discount-builder" .parsedValue="${0}" @change="${0}"> </foxy-discount-builder> `),{details:null!==(n=null==y?void 0:y.discount_details)&&void 0!==n?n:"",type:null!==(i=null==y?void 0:y.discount_type)&&void 0!==i?i:"amount_percentage",name:null!==(a=null==y?void 0:y.discount_name)&&void 0!==a?a:""},(e=>{this.__handleDiscountBuilderChange(e,y,f)})):"",f,(null==y?void 0:y.image)?o(L||(L=D` <foxy-internal-text-control property="items.${0}.url" layout="summary-item" infer="url"> </foxy-internal-text-control> `),f):"",f,[{label:"option_none",value:"none"},{label:"option_minutes",value:"minutes"},{label:"option_timestamp",value:"timestamp"}],"minutes"===(null==y?void 0:y.expires_format)?o(P||(P=D` <foxy-internal-number-control property="items.${0}.expires_value" layout="summary-item" suffix="min" infer="expires-value-minutes"> </foxy-internal-number-control> `),f):"timestamp"===(null==y?void 0:y.expires_format)?o(U||(U=D` <foxy-internal-date-control property="items.${0}.expires_value" layout="summary-item" format="unix" infer="expires-value-timestamp"> </foxy-internal-date-control> `),f):"","notshipped"===c||"downloaded"===c?"":o(T||(T=D` <foxy-internal-number-control property="items.${0}.length" layout="summary-item" suffix="${0}" infer="length" min="0"> </foxy-internal-number-control> <foxy-internal-number-control property="items.${0}.width" layout="summary-item" suffix="${0}" infer="width" min="0"> </foxy-internal-number-control> <foxy-internal-number-control property="items.${0}.height" layout="summary-item" suffix="${0}" infer="height" min="0"> </foxy-internal-number-control> `),f,u(null==m?void 0:m.default_length_unit),f,u(null==m?void 0:m.default_length_unit),f,u(null==m?void 0:m.default_length_unit)),null==p?void 0:p.virtualHost,f,{".defaultWeightUnit":null==m?void 0:m.default_weight_unit,".existingOptions":null!==(s=null==y?void 0:y.custom_options)&&void 0!==s?s:[],".itemCategories":this.itemCategories,".currencyCode":this.currencyCode},(null!==(d=null===(l=null==p?void 0:p.form.items)||void 0===l?void 0:l.length)&&void 0!==d?d:0)<=1?o(F||(F=D``)):o(H||(H=D` <vaadin-button theme="error" class="w-full" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="delete" key="caption"></foxy-i18n> </vaadin-button> `),this.disabled,(()=>this.dispatchEvent(new CustomEvent("remove")))),u(null==y?void 0:y.item_category_uri),(()=>this.requestUpdate()))}get __resolvedItemCategory(){var e,t;return null!==(t=null===(e=this.__itemCategoryLoader)||void 0===e?void 0:e.data)&&void 0!==t?t:this.defaultItemCategory}get __itemCategoryLoader(){return this.renderRoot.querySelector("#itemCategoryLoader")}__handleDiscountBuilderChange(e,t,r){var o;const n=e.currentTarget,i=this.nucleon;t.discount_details=n.parsedValue.details,t.discount_type=n.parsedValue.type,t.discount_name=n.parsedValue.name;const a=null!==(o=null==i?void 0:i.form.items)&&void 0!==o?o:[];a.splice(r,1,t),null==i||i.edit({items:[...a]})}});let M,I,O,A,E,z,R,W,B,N,Z=e=>e;const V=l(s(e,"experimental-add-to-cart-builder"));class Y extends V{constructor(){var e;super(...arguments),e=this,this.defaultDomain=null,this.encodeHelper=null,this.localeCodes=null,this.store=null,this.__signingSeparator=`--${Date.now()}${(1e5*Math.random()).toFixed(0)}--`,this.__emptyOptions=[{label:"option_false",value:"false"},{label:"option_true",value:"true"},{label:"option_reset",value:"reset"}],this.__cartOptions=[{label:"option_add",value:"add"},{label:"option_checkout",value:"checkout"},{label:"option_redirect",value:"redirect"}],this.__signAsync=d((async function(t,r){if(t===e.__previousUnsignedCode&&e.__previousSignedCode)return;const o=()=>t!==e.__previousUnsignedCode;e.__signingState="busy";try{const n=await new Y.API(e).fetch(r,{headers:{"Content-Type":"text/plain"},method:"POST",body:t});if(!o())if(n.ok){const t=(await n.json()).result;o()||(e.__signingState="idle",e.__previousSignedCode=t.replace(/value="--OPEN--" data-replace/gi,"value"))}else e.__signingState="fail"}catch(t){o()||(e.__signingState="fail")}}),500),this.__previousUnsignedCode="",this.__previousSignedCode="",this.__signingState="idle",this.__openState=[]}static get properties(){return i(i({},super.properties),{},{defaultDomain:{attribute:"default-domain"},encodeHelper:{attribute:"encode-helper"},localeCodes:{attribute:"locale-codes"},store:{},__previousUnsignedCode:{attribute:!1},__previousSignedCode:{attribute:!1},__signingState:{attribute:!1},__openState:{attribute:!1}})}get hiddenSelector(){const e=[super.hiddenSelector.toString()];return e.unshift("header:copy-id","header:copy-json","undo"),new a(e.join(" ").trim())}renderBody(){var e,t,r,i,a,s,l,d,m,c,f,y,h;const _=this.__getAddToCartCode(),g=null!==(r=null!==(t=null===(e=this.data)||void 0===e?void 0:e._links["fx:store"].href)&&void 0!==t?t:this.store)&&void 0!==r?r:void 0,x=null===(i=this.__storeLoader)||void 0===i?void 0:i.data;return o(M||(M=Z` <div class="grid gap-m items-start sm-grid-cols-2 md-grid-cols-3 h-full overflow-auto"> <foxy-internal-summary-control layout="section" class="space-y-s" infer="items"> ${0} <vaadin-button class="w-full" theme="success" ?disabled="${0}" @click="${0}"> <foxy-i18n infer="add-product" key="caption"></foxy-i18n> </vaadin-button> </foxy-internal-summary-control> <div class="space-y-m md-col-span-2 sticky top-0"> ${0} <foxy-internal-summary-control infer="cart-settings"> <foxy-internal-resource-picker-control layout="summary-item" first="${0}" infer="template-set-uri" item="foxy-template-set-card"> </foxy-internal-resource-picker-control> <foxy-internal-select-control layout="summary-item" infer="empty" .options="${0}"> </foxy-internal-select-control> <foxy-internal-select-control layout="summary-item" infer="cart" .options="${0}"> </foxy-internal-select-control> ${0} <foxy-internal-text-control layout="summary-item" infer="coupon"> </foxy-internal-text-control> </foxy-internal-summary-control> </div> </div> <foxy-nucleon class="hidden" infer="" href="${0}" id="defaultTemplateSetLoader" @update="${0}"> </foxy-nucleon> <foxy-nucleon class="hidden" infer="" href="${0}" id="defaultItemCategoryLoader" @update="${0}"> </foxy-nucleon> <foxy-nucleon class="hidden" infer="" href="${0}" id="localeCodesHelperLoader" @update="${0}"> </foxy-nucleon> <foxy-nucleon class="hidden" infer="" href="${0}" id="templateSetLoader" @update="${0}"> </foxy-nucleon> <foxy-nucleon class="hidden" infer="" href="${0}" id="storeLoaderId" @update="${0}"> </foxy-nucleon> ${0} `),null===(a=this.form.items)||void 0===a?void 0:a.map(((e,t)=>{var r;return o(I||(I=Z` <foxy-internal-summary-control layout="details" label="${0}" infer="item-group" ?open="${0}" @toggle="${0}"> <foxy-internal-experimental-add-to-cart-builder-item-control item-categories="${0}" currency-code="${0}" store="${0}" index="${0}" infer="item" .defaultItemCategory="${0}" @remove="${0}"> </foxy-internal-experimental-add-to-cart-builder-item-control> </foxy-internal-summary-control> `),u(e.name.trim()||void 0),u(this.__openState[t]),(e=>{const r=e.currentTarget;this.__openState[t]=r.open,this.__openState=[...this.__openState]}),u(null==x?void 0:x._links["fx:item_categories"].href),u(null!==(r=this.__resolvedCurrencyCode)&&void 0!==r?r:void 0),u(g),t,this.__defaultItemCategory,(()=>{var e;const r=null===(e=this.form.items)||void 0===e?void 0:e.filter(((e,r)=>r!==t));this.edit({items:r}),this.__openState=this.__openState.filter(((e,r)=>r!==t))}))})),this.disabled,(()=>{var e;const t=null!==(e=this.form.items)&&void 0!==e?e:[];this.edit({items:[...t,{name:"",price:0,custom_options:[],sub_frequency:"1m"}]}),this.__openState=[...new Array(t.length).fill(!1),!0]}),_?o(O||(O=Z` <foxy-internal-summary-control infer="preview"> <div class="flex"> <iframe srcdoc="${0}${0}" style="margin:calc(-1 * (.625em + (var(--lumo-border-radius)/ 4) - 1px))" class="${0}" @load="${0}"> </iframe> </div> <div class="flex leading-s text-s min-w-0 relative" style="gap:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)"> <div style="font-family:monospace;max-height:calc(8 * (1em * var(--lumo-line-height-s)))" class="${0}"> <code class="whitespace-pre">${0}</code> </div> <div style="top:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px);right:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)" class="${0}"> <div class="bg-contrast-10 rounded-s"> <foxy-spinner infer="spinner" class="-mx-xs" style="transform:scale(.8)"> </foxy-spinner> </div> </div> <foxy-copy-to-clipboard infer="copy-to-clipboard" text="${0}" class="${0}"> </foxy-copy-to-clipboard> </div> <div class="flex items-start text-xs leading-xs text-secondary" style="gap:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)"> ${0} <p> <foxy-i18n infer="" key="edits_tip"></foxy-i18n> <a target="_blank" class="rounded font-medium underline transition-colors cursor-pointer hover-opacity-80 focus-outline-none focus-ring-2 focus-ring-primary-50" href="https://wiki.foxycart.com/v/2.0/products"> <foxy-i18n infer="" key="edits_docs"></foxy-i18n> </a> </p> </div> </foxy-internal-summary-control> <foxy-internal-summary-control infer="link"> ${0} </foxy-internal-summary-control> `),'\n <style>\n html {\n line-height: 1.15;\n -webkit-text-size-adjust: 100%;\n }\n\n body {\n margin: 0;\n }\n\n button,\n input,\n optgroup,\n select,\n textarea {\n font-family: inherit;\n font-size: 100%;\n line-height: 1.15;\n margin: 0;\n }\n\n button,\n input {\n overflow: visible;\n }\n\n button,\n select {\n text-transform: none;\n }\n\n button,\n [type="button"],\n [type="reset"],\n [type="submit"] {\n -webkit-appearance: button;\n }\n\n button::-moz-focus-inner,\n [type="button"]::-moz-focus-inner,\n [type="reset"]::-moz-focus-inner,\n [type="submit"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n }\n\n button:-moz-focusring,\n [type="button"]:-moz-focusring,\n [type="reset"]:-moz-focusring,\n [type="submit"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n }\n\n fieldset {\n padding: 0.35em 0.75em 0.625em;\n }\n\n legend {\n box-sizing: border-box;\n color: inherit;\n display: table;\n max-width: 100%;\n padding: 0;\n white-space: normal;\n }\n\n textarea {\n overflow: auto;\n }\n\n [type="checkbox"],\n [type="radio"] {\n box-sizing: border-box;\n padding: 0;\n }\n\n [type="number"]::-webkit-inner-spin-button,\n [type="number"]::-webkit-outer-spin-button {\n height: auto;\n }\n\n [type="search"] {\n -webkit-appearance: textfield;\n outline-offset: -2px;\n }\n\n [type="search"]::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n\n ::-webkit-file-upload-button {\n -webkit-appearance: button;\n font: inherit;\n }\n\n [hidden] {\n display: none;\n }\n\n html {\n color-scheme: light dark !important;\n }\n\n body {\n display: flex;\n padding: 2rem;\n }\n\n form {\n flex: 1;\n max-width: 20rem;\n font: normal 0.875rem system-ui;\n display: grid;\n grid-template-columns: auto 1fr;\n grid-gap: 0.5rem;\n align-items: center;\n margin: auto;\n }\n\n form:has(fieldset) {\n grid-gap: 1rem;\n }\n\n fieldset {\n display: grid;\n grid-template-columns: auto 1fr;\n grid-gap: 0.5rem;\n grid-column: 1 / span 2;\n align-items: center;\n margin: 0;\n }\n\n legend {\n white-space: nowrap;\n }\n\n button {\n grid-column: 1 / span 2;\n margin-top: 0.5rem;\n }\n\n form:has(fieldset) button {\n margin-top: 0;\n }\n\n label {\n display: contents;\n }\n </style>\n',_.formHTML,p({"flex-1 transition-all filter":!0,"blur-sm":"idle"!==this.__signingState}),(e=>{var t;const r=e.currentTarget,o=null===(t=r.contentWindow)||void 0===t?void 0:t.document.documentElement;o&&(r.style.height=o.scrollHeight+"px")}),p({"break-all overflow-auto flex-1 min-w-0 transition-all filter":!0,"blur-sm":"idle"!==this.__signingState}),_.formHTML,p({"absolute right-0 bg-base rounded-s transition-opacity":!0,"opacity-0 pointer-events-none":"busy"!==this.__signingState}),_.formHTML,p({"flex-shrink-0 text-m transition-opacity":!0,"opacity-0 pointer-events-none":"busy"===this.__signingState}),n(A||(A=Z`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" class="flex-shrink-0 text-contrast-70" style="width: 1.25em"><path fill-rule="evenodd" d="M15 8A7 7 0 1 1 1 8a7 7 0 0 1 14 0ZM9 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM6.75 8a.75.75 0 0 0 0 1.5h.75v1.75a.75.75 0 0 0 1.5 0v-2.5A.75.75 0 0 0 8.25 8h-1.5Z" clip-rule="evenodd" /></svg>`)),_.linkHref?o(E||(E=Z` <div class="flex items-center leading-s min-w-0 relative" style="gap:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)"> <foxy-i18n infer="" key="direct_link"></foxy-i18n> <a target="_blank" style="max-width:30rem" href="${0}" class="${0}"> ${0} </a> <div style="top:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px);right:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)" class="${0}"> <div class="bg-contrast-10 rounded-s"> <foxy-spinner infer="spinner" state="${0}" class="-mx-xs" style="transform:scale(.8)"> </foxy-spinner> </div> </div> <foxy-copy-to-clipboard infer="copy-to-clipboard" text="${0}" class="${0}"> </foxy-copy-to-clipboard> </div> `),_.linkHref,p({"font-medium truncate ml-auto min-w-0 rounded-s":!0,"transition-all filter":!0,"hover-underline":!0,"focus-outline-none focus-ring-2 focus-ring-primary-50":!0,"blur-sm":"idle"!==this.__signingState}),_.linkHref,p({"absolute right-0 bg-base rounded-s transition-opacity":!0,"opacity-0 pointer-events-none":"busy"!==this.__signingState}),"fail"===this.__signingState?"error":"busy",_.linkHref,p({"flex-shrink-0 text-m transition-opacity":!0,"opacity-0 pointer-events-none":"busy"===this.__signingState})):o(z||(z=Z` <p class="text-disabled"> <foxy-i18n infer="" key="unavailable"></foxy-i18n> </p> `))):o(R||(R=Z` <foxy-internal-summary-control infer="preview"> <div class="flex items-center justify-center p-xl"> <foxy-spinner infer="unavailable"></foxy-spinner> </div> </foxy-internal-summary-control> `)),u(null===(l=null===(s=this.__storeLoader)||void 0===s?void 0:s.data)||void 0===l?void 0:l._links["fx:template_sets"].href),this.__emptyOptions,this.__cartOptions,"redirect"===this.form.cart?o(W||(W=Z` <foxy-internal-text-control layout="summary-item" infer="redirect"> </foxy-internal-text-control> `)):"",u(this.__defaultTemplateSetHref),(()=>this.requestUpdate()),u(this.__defaultItemCategoryHref),(()=>this.requestUpdate()),u(null!==(d=this.localeCodes)&&void 0!==d?d:void 0),(()=>this.requestUpdate()),u(null!==(m=this.form.template_set_uri)&&void 0!==m?m:void 0),(()=>this.requestUpdate()),u(null!==(y=null!==(f=null===(c=this.data)||void 0===c?void 0:c._links["fx:store"].href)&&void 0!==f?f:this.store)&&void 0!==y?y:void 0),(()=>this.requestUpdate()),null===(h=this.form.items)||void 0===h?void 0:h.map(((e,t)=>{var r;return o(B||(B=Z` <foxy-nucleon class="hidden" infer="" href="${0}" id="itemCategoryLoaderProduct${0}" @update="${0}"> </foxy-nucleon> ${0} `),u(null!==(r=e.item_category_uri)&&void 0!==r?r:void 0),t,(()=>this.requestUpdate()),e.custom_options.map(((e,r)=>{var n;return o(N||(N=Z` <foxy-nucleon class="hidden" infer="" href="${0}" id="itemCategoryLoaderProduct${0}Option${0}" @update="${0}"> </foxy-nucleon> `),u(null!==(n=e.item_category_uri)&&void 0!==n?n:void 0),t,r,(()=>this.requestUpdate()))})))})))}updated(e){var t,r;super.updated(e),this.in("idle")&&!(null===(t=this.form.items)||void 0===t?void 0:t.length)&&(this.edit({items:[{name:"",price:0,sub_frequency:"1m",custom_options:[]}]}),this.__openState=[!0]),(null===(r=this.form.items)||void 0===r?void 0:r.length)&&!this.__openState.length&&(this.__openState=[!0,...new Array(this.form.items.length-1).fill(!1)])}submit(){}get __defaultTemplateSetHref(){var e,t,r;try{const o=new URL(null!==(r=null===(t=null===(e=this.__storeLoader)||void 0===e?void 0:e.data)||void 0===t?void 0:t._links["fx:template_sets"].href)&&void 0!==r?r:"");return o.searchParams.set("code","DEFAULT"),o.toString()}catch(e){return}}get __defaultItemCategoryHref(){var e,t,r;try{const o=new URL(null!==(r=null===(t=null===(e=this.__storeLoader)||void 0===e?void 0:e.data)||void 0===t?void 0:t._links["fx:item_categories"].href)&&void 0!==r?r:"");return o.searchParams.set("code","DEFAULT"),o.toString()}catch(e){return}}get __resolvedCurrencyCode(){var e,t,r,o;const n=this.renderRoot.querySelector("#localeCodesHelperLoader"),i=null===(e=this.__resolvedTemplateSet)||void 0===e?void 0:e.locale_code,a=null===(t=null==n?void 0:n.data)||void 0===t?void 0:t.values,s=i?null==a?void 0:a[i]:void 0;return s?null===(o=null===(r=/Currency: ([A-Z]{3})/g.exec(s))||void 0===r?void 0:r[1])||void 0===o?void 0:o.toUpperCase():void 0}get __resolvedTemplateSet(){var e,t,r,o;const n=e=>this.renderRoot.querySelector(e);return null!==(t=null===(e=n("#templateSetLoader"))||void 0===e?void 0:e.data)&&void 0!==t?t:null===(o=null===(r=n("#defaultTemplateSetLoader"))||void 0===r?void 0:r.data)||void 0===o?void 0:o._embedded["fx:template_sets"][0]}get __defaultItemCategory(){var e,t;return null===(t=null===(e=this.renderRoot.querySelector("#defaultItemCategoryLoader"))||void 0===e?void 0:e.data)||void 0===t?void 0:t._embedded["fx:item_categories"][0]}get __resolvedCartUrl(){var e;const t=null===(e=this.__storeLoader)||void 0===e?void 0:e.data;if(t){if(t.use_remote_domain)return`https://${t.store_domain}/cart`;if(null!==this.defaultDomain)return`https://${t.store_domain}.${this.defaultDomain}/cart`}return null}get __storeLoader(){return this.renderRoot.querySelector("#storeLoaderId")}__getItemCategoryLoader(e,t){const r=`#itemCategoryLoaderProduct${e}`,o="number"==typeof t?`${r}Option${t}`:r;return this.renderRoot.querySelector(o)}__getAddToCartFormHTML(){var e,t,r,o,n,i,a,s,l;const d=this.__resolvedCurrencyCode,u=this.__resolvedTemplateSet,c=this.__resolvedCartUrl,p=null===(e=this.__storeLoader)||void 0===e?void 0:e.data;if(!(this.defaultDomain&&u&&p&&d&&c))return"";let f=!1,y=`<form action="${m(c)}" method="post" target="_blank">`,h=1;const _=()=>`\n${" ".repeat(2*h)}`,g=(e,t)=>{const r=m(t),o=m(e);y+=`${_()}<input type="hidden" name="${o}" value="${r}">`};"DEFAULT"!==u.code&&g("template_set",u.code),this.form.empty&&"false"!==this.form.empty&&g("empty",this.form.empty),"checkout"===this.form.cart&&g("cart","checkout"),this.form.redirect&&g("redirect",this.form.redirect),this.form.coupon&&g("coupon",this.form.coupon);const x=null!==(t=this.form.items)&&void 0!==t?t:[],v=x.length>1;for(let e=0;e<x.length;++e){const t=this.__getItemCategoryLoader(e),u=null==t?void 0:t.data,c=x[e];if(c.item_category_uri&&!u)return"";const b=Math.max(1,null!==(r=c.quantity_min)&&void 0!==r?r:1),$=Math.max(b,null!==(o=c.quantity_max)&&void 0!==o?o:1/0),w=b!==$&&"minutes"!==c.expires_format&&!c.hide_quantity,S=c.price_configurable,j=c.custom_options.some(((e,t,r)=>e.value_configurable||r.findIndex((t=>t.name===e.name))!==t)),C=c.name.trim()||this.t("items.item-group.item.basics-group.name.placeholder"),q=f||v&&(S||w||j);q&&(f=!0,y+=`${_()}<fieldset>`,h++,y+=`${_()}<legend>${m(C)}</legend>`);const k=0===e?"":`${e+1}:`;g(`${k}name`,C);const L=`${c.price}${d}`;if(c.price_configurable){const e=m(c.price.toFixed(2));y+=`${_()}<label>`,h++,y+=`${_()}<span>${m(this.t("preview.price_label"))}</span>`,p.use_cart_validation?y+=`${_()}<input required name="${k}price" value="--OPEN--" data-replace="${e}">`:y+=`${_()}<input required name="${k}price" value="${e}">`,h--,y+=`${_()}</label>`}else g(`${k}price`,L);if(u&&"DEFAULT"!==u.code&&g(`${k}category`,u.code),c.code&&g(`${k}code`,c.code),c.parent_code&&g(`${k}parent_code`,c.parent_code),c.image&&(g(`${k}image`,c.image),c.url&&g(`${k}url`,c.url)),c.sub_enabled&&c.sub_frequency){if(g(`${k}sub_frequency`,c.sub_frequency),c.sub_startdate)if("yyyymmdd"===c.sub_startdate_format){const e=new Date(c.sub_startdate);g(`${k}sub_startdate`,`${e.getFullYear()}${(e.getMonth()+1).toString().padStart(2,"0")}${e.getDate().toString().padStart(2,"0")}`)}else g(`${k}sub_startdate`,String(c.sub_startdate));if(c.sub_enddate)if("yyyymmdd"===c.sub_enddate_format){const e=new Date(c.sub_enddate);g(`${k}sub_enddate`,`${e.getFullYear()}${(e.getMonth()+1).toString().padStart(2,"0")}${e.getDate().toString().padStart(2,"0")}`)}else g(`${k}sub_enddate`,String(c.sub_enddate))}c.discount_name&&c.discount_type&&c.discount_details&&g(`${k}discount_${c.discount_type}`,`${c.discount_name}{${c.discount_details}}`),c.expires_value&&(c.expires_format,g(`${k}expires`,c.expires_value.toFixed(0))),w?(y+=`${_()}<label>`,h++,y+=`${_()}<span>${m(this.t("preview.quantity_label"))}</span>`,y+=`${_()}<input type="number" name="${m(`${k}quantity`)}"`,y+=` min="${m(String(b))}"`,$!==1/0&&(y+=` max="${m(String($))}"`),p.use_cart_validation?y+=` value="--OPEN--" data-replace="${m(String(null!==(n=c.quantity)&&void 0!==n?n:1))}">`:y+=` value="${m(String(null!==(i=c.quantity)&&void 0!==i?i:1))}">`,h--,y+=`${_()}</label>`):(null!==(a=c.quantity)&&void 0!==a?a:1)>1&&g(`${k}quantity`,(null!==(s=c.quantity)&&void 0!==s?s:1).toString()),"minutes"!==c.expires_format&&(1!==b&&g(`${k}quantity_min`,b.toFixed(0)),$!==1/0&&g(`${k}quantity_max`,$.toFixed(0))),c.length&&g(`${k}length`,c.length.toFixed(3)),c.width&&g(`${k}width`,c.width.toFixed(3)),c.height&&g(`${k}height`,c.height.toFixed(3)),c.weight&&g(`${k}weight`,c.weight.toFixed(3)),p.features_multiship&&(y+=`${_()}<label>`,h++,y+=`${_()}<span>${m(this.t("preview.shipto_label"))}</span>`,p.use_cart_validation?y+=`${_()}<input name="${k}shipto" value="--OPEN--" data-replace="">`:y+=`${_()}<input name="${k}shipto" value="">`,h--,y+=`${_()}</label>`);const P=c.custom_options.reduce(((e,t)=>(e[t.name]||(e[t.name]=[]),e[t.name].push(t),e)),{});for(const t in P){const r=P[t];if(1===r.length){const o=c.custom_options.indexOf(r[0]),n=null===(l=this.__getItemCategoryLoader(e,o))||void 0===l?void 0:l.data,i=this.__getOptionModifiers(r[0],null!=n?n:null,d),a=`${r[0].value}${i}`,s=`${k}${t}`;r[0].value_configurable?(y+=`${_()}<label>`,h++,y+=`${_()}<span>${m(t)}:</span>`,y+=`${_()}<input name="${m(s)}" `,p.use_cart_validation?y+=`value="--OPEN--" data-replace="${m(a)}">`:y+=`value="${m(a)}">`,h--,y+=`${_()}</label>`):g(s,a)}else y+=`${_()}<label>`,h++,y+=`${_()}<span>${m(t)}:</span>`,y+=`${_()}<select name="${k}${t}">`,h++,r.forEach((t=>{var r;const o=c.custom_options.indexOf(t),n=null===(r=this.__getItemCategoryLoader(e,o))||void 0===r?void 0:r.data,i=this.__getOptionModifiers(t,null!=n?n:null,d),a=m(`${t.value}${i}`),s=m(t.value);y+=`${_()}<option value="${a}">${s}</option>`})),h--,y+=`${_()}</select>`,h--,y+=`${_()}</label>`}q&&(h--,y+=`${_()}</fieldset>`)}const b=m(this.t("preview.submit_caption"));return y+=`${_()}<button type="submit">${b}</button>`,h--,y+=`${_()}</form>`,y}__getAddToCartLinkHref(){var e,t,r,o,n,i,a,s;const l=this.__resolvedCurrencyCode,d=this.__resolvedTemplateSet,u=this.__resolvedCartUrl,m=null===(e=this.__storeLoader)||void 0===e?void 0:e.data;if(!(this.defaultDomain&&d&&m&&l&&u))return"";const c=new URL(u);"DEFAULT"!==d.code&&c.searchParams.set("template_set",d.code),"checkout"===this.form.cart&&c.searchParams.set("cart","checkout"),this.form.redirect&&c.searchParams.set("redirect",this.form.redirect),this.form.coupon&&c.searchParams.set("coupon",this.form.coupon),this.form.empty&&"false"!==this.form.empty&&c.searchParams.set("empty",this.form.empty);for(let e=0;e<(null!==(r=null===(t=this.form.items)||void 0===t?void 0:t.length)&&void 0!==r?r:0);++e){const t=this.form.items[e],r=0===e?"":`${e+1}:`,d=null===(o=this.__getItemCategoryLoader(e))||void 0===o?void 0:o.data;if(t.item_category_uri&&!d)return"";if(t.price_configurable)return"";if(new Set(t.custom_options.map((e=>e.name))).size<t.custom_options.length)return"";if(d&&"DEFAULT"!==d.code&&c.searchParams.set(`${r}category`,d.code),c.searchParams.set(`${r}name`,t.name),c.searchParams.set(`${r}price`,`${t.price}${l}`),t.code&&c.searchParams.set(`${r}code`,t.code),t.parent_code&&c.searchParams.set(`${r}parent_code`,t.parent_code),t.image&&(c.searchParams.set(`${r}image`,t.image),t.url&&c.searchParams.set(`${r}url`,t.url)),t.sub_enabled&&t.sub_frequency){if(c.searchParams.set(`${r}sub_frequency`,t.sub_frequency),t.sub_startdate)if("yyyymmdd"===t.sub_startdate_format){const e=new Date(t.sub_startdate),o=e.getFullYear(),n=(e.getMonth()+1).toString().padStart(2,"0"),i=e.getDate().toString().padStart(2,"0");c.searchParams.set(`${r}sub_startdate`,`${o}${n}${i}`)}else c.searchParams.set(`${r}sub_startdate`,String(t.sub_startdate));if(t.sub_enddate)if("yyyymmdd"===t.sub_enddate_format){const e=new Date(t.sub_enddate),o=e.getFullYear(),n=(e.getMonth()+1).toString().padStart(2,"0"),i=e.getDate().toString().padStart(2,"0");c.searchParams.set(`${r}sub_enddate`,`${o}${n}${i}`)}else c.searchParams.set(`${r}sub_enddate`,String(t.sub_enddate))}t.discount_name&&t.discount_type&&t.discount_details&&c.searchParams.set(`${r}discount_${t.discount_type}`,`${t.discount_name}{${t.discount_details}}`),t.expires_value&&(t.expires_format,c.searchParams.set(`${r}expires`,t.expires_value.toFixed(0))),(null!==(n=t.quantity)&&void 0!==n?n:1)>1&&c.searchParams.set(`${r}quantity`,(null!==(i=t.quantity)&&void 0!==i?i:1).toFixed(0)),"minutes"!==t.expires_format&&(t.quantity_min&&c.searchParams.set(`${r}quantity_min`,t.quantity_min.toString()),t.quantity_max&&c.searchParams.set(`${r}quantity_max`,t.quantity_max.toString())),t.weight&&c.searchParams.set(`${r}weight`,t.weight.toFixed(3)),t.length&&c.searchParams.set(`${r}length`,t.length.toFixed(3)),t.width&&c.searchParams.set(`${r}width`,t.width.toFixed(3)),t.height&&c.searchParams.set(`${r}height`,t.height.toFixed(3));for(let o=0;o<t.custom_options.length;++o){const n=t.custom_options[o];if(n.value_configurable)return"";const i=null===(a=this.__getItemCategoryLoader(e,o))||void 0===a?void 0:a.data,d=this.__getOptionModifiers(n,null!=i?i:null,l);c.searchParams.set(`${r}${n.name}`,`${null!==(s=n.value)&&void 0!==s?s:""}${d}`)}}return c.toString()}__getAddToCartCode(){var e;const t=null===(e=this.__storeLoader)||void 0===e?void 0:e.data;if(!this.encodeHelper||!t)return null;const r=this.__getAddToCartFormHTML(),o=this.__getAddToCartLinkHref();if(!r&&!o)return null;let n;if(o){const e=`<a href="${m(o)}">Add to cart</a>`;n=`${r}${this.__signingSeparator}${e}`}else n=r;if(n===this.__previousUnsignedCode&&this.__previousSignedCode){const[e,t]=this.__previousSignedCode.split(this.__signingSeparator);return{linkHref:t?c(t.substring(9,t.length-17)):"",formHTML:e}}return this.__previousUnsignedCode=n,this.__previousSignedCode="",t.use_cart_validation&&this.__signAsync(n,this.encodeHelper),{formHTML:r,linkHref:o}}__getOptionModifiers(e,t,r){if(e.value_configurable)return"";const o=[];if(e.price){const t=e.replace_price?":":-1===Math.sign(e.price)?"-":"+";(e.replace_price||0!==e.price)&&o.push(`p${t}${Math.abs(e.price)}${r}`)}if(e.weight){const t=e.replace_weight?":":-1===Math.sign(e.weight)?"-":"+";(e.replace_weight||0!==e.weight)&&o.push(`w${t}${Math.abs(e.weight)}`)}if(e.item_category_uri&&!t)return"";if(t&&o.push(`y:${t.code}`),e.code){const t=e.replace_code?":":"+";(e.replace_code||""!==e.code)&&o.push(`c${t}${e.code}`)}return o.length?`{${o.join("|")}}`:""}}customElements.define("foxy-experimental-add-to-cart-builder",Y);export{Y as ExperimentalAddToCartBuilder};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-ebc72d69.js";import"./shared-51fd39fa.js";import"./shared-
|
|
1
|
+
import"./shared-ebc72d69.js";import"./shared-51fd39fa.js";import"./shared-44118acb.js";import"./shared-7889f2f2.js";import"./shared-2cb3cb3a.js";import"./shared-b0d76785.js";import{I as e}from"./shared-44fd89ce.js";import"./foxy-gift-card-code-log-card.js";import"./foxy-customer-card.js";import{_ as r,B as t}from"./shared-d1195c27.js";import{g as o}from"./shared-bab2ea2c.js";import{a as s}from"./shared-5e0b71a2.js";import{T as a}from"./shared-8874ec69.js";import{i}from"./shared-9803aa7c.js";import{h as d}from"./shared-dc73b9a5.js";import"./shared-8af5a4f2.js";import"./shared-018166d0.js";import"./shared-b16829cd.js";import"./shared-cf0ca582.js";import"./foxy-copy-to-clipboard.js";import"./shared-573d6e21.js";import"./shared-525c1936.js";import"./shared-4c4b87c2.js";import"./shared-9fcd36e5.js";import"./shared-57a98543.js";import"./shared-343d1fd7.js";import"./shared-17a61265.js";import"./shared-d1cb97c6.js";import"./foxy-nucleon-element.js";import"./shared-bb3c9e23.js";import"./shared-67898669.js";import"./shared-cd96ff03.js";import"./shared-9cf15285.js";import"./shared-019348d7.js";import"./shared-1aff7995.js";import"./shared-fcdb896f.js";import"./foxy-form-dialog.js";import"./shared-27e2e59a.js";import"./shared-ffc84c84.js";import"./shared-4e709717.js";import"./shared-99940888.js";import"./shared-ec5b614e.js";import"./shared-eb7bf7ba.js";import"./shared-6de0e9f3.js";import"./shared-8b838d83.js";import"./foxy-collection-page.js";import"./foxy-spinner.js";import"./shared-a0c6a159.js";import"./foxy-swipe-actions.js";import"./foxy-pagination.js";import"./shared-c5326ab8.js";import"./shared-a585bfd3.js";import"./shared-28b0e29a.js";import"./shared-b04e9753.js";import"./shared-53caa399.js";import"./shared-1c4ddc9b.js";import"./shared-e77d8d01.js";import"./shared-32440b17.js";import"./shared-d3a5cb85.js";import"./shared-b1fa0b61.js";import"./shared-79d0699c.js";import"./shared-43e2c3f6.js";import"./shared-22ba9566.js";import"./shared-51c4a6dd.js";import"./shared-a7617e76.js";import"./shared-238d397f.js";let n,l=e=>e;const m=s(e,"gift-card-code-form");class c extends m{constructor(){super(...arguments),this.getCustomerHref=e=>`https://api.foxycart.com/customers/${e}`,this.__customerGetValue=()=>{var e,r,t;const o=null===(t=null===(r=null===(e=this.data)||void 0===e?void 0:e._links)||void 0===r?void 0:r["fx:customer"])||void 0===t?void 0:t.href,s=this.form.customer_id;return void 0===s?o:this.getCustomerHref(s)},this.__customerSetValue=e=>{const r=o(e);this.edit({customer_id:"number"==typeof r?r:""})},this.__customerFilters=[{type:a.String,path:"id",label:"filters.id"},{type:a.String,path:"tax_id",label:"filters.tax_id"},{type:a.String,path:"email",label:"filters.email"},{type:a.String,path:"first_name",label:"filters.first_name"},{type:a.String,path:"last_name",label:"filters.last_name"},{type:a.Boolean,path:"is_anonymous",label:"filters.is_anonymous",list:[{label:"filters.is_anonymous_true",value:"true"},{label:"filters.is_anonymous_false",value:"false"}]},{type:a.Date,path:"last_login_date",label:"filters.last_login_date"},{type:a.Date,path:"date_created",label:"filters.date_created"},{type:a.Date,path:"date_modified",label:"filters.date_modified"}],this.__storeLoaderId="storeLoader"}static get properties(){return r(r({},super.properties),{},{getCustomerHref:{attribute:!1}})}static get v8n(){return[({code:e})=>!!e||"code:v8n_required",({code:e})=>!e||e.length<=50||"code:v8n_too_long",({code:e})=>!(null==e?void 0:e.includes(" "))||"code:v8n_has_spaces",({current_balance:e})=>"number"==typeof e||"current-balance:v8n_required"]}get readonlySelector(){const e=[super.readonlySelector.toString(),"cart-item"];return new t(e.join(" ").trim())}get hiddenSelector(){const e=[super.hiddenSelector.toString()];return this.href||e.push("customer","cart-item","logs"),new t(e.join(" ").trim())}renderBody(){var e,r,t,o,s,a,m,c;let f;try{const o=new URL(null!==(t=null===(r=null===(e=this.data)||void 0===e?void 0:e._links)||void 0===r?void 0:r["fx:provisioned_by_transaction_detail_id"].href)&&void 0!==t?t:"");o.searchParams.set("zoom","item_options"),f=o.toString()}catch(e){f=void 0}return d(n||(n=l` ${0} <foxy-internal-summary-control infer="settings"> <foxy-internal-text-control layout="summary-item" infer="code"></foxy-internal-text-control> <foxy-internal-number-control layout="summary-item" infer="current-balance"> </foxy-internal-number-control> <foxy-internal-date-control layout="summary-item" infer="end-date"> </foxy-internal-date-control> </foxy-internal-summary-control> <foxy-internal-resource-picker-control infer="customer" first="${0}" item="foxy-customer-card" .getValue="${0}" .setValue="${0}" .filters="${0}"> </foxy-internal-resource-picker-control> <foxy-internal-resource-picker-control infer="cart-item" item="foxy-item-card" .getValue="${0}"> </foxy-internal-resource-picker-control> <foxy-internal-async-list-control infer="logs" first="${0}" limit="5" item="foxy-gift-card-code-log-card"> </foxy-internal-async-list-control> ${0} <foxy-nucleon infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> `),this.renderHeader(),i(null===(s=null===(o=this.__storeLoader)||void 0===o?void 0:o.data)||void 0===s?void 0:s._links["fx:customers"].href),this.__customerGetValue,this.__customerSetValue,this.__customerFilters,(()=>f),i(null===(m=null===(a=this.data)||void 0===a?void 0:a._links)||void 0===m?void 0:m["fx:gift_card_code_logs"].href),super.renderBody(),i(null===(c=this.data)||void 0===c?void 0:c._links["fx:store"].href),this.__storeLoaderId,(()=>this.requestUpdate()))}get __storeLoader(){return this.renderRoot.querySelector(`#${this.__storeLoaderId}`)}}customElements.define("foxy-gift-card-code-form",c);export{c as GiftCardCodeForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-ce055dce.js";import"./shared-2f02918d.js";import"./shared-504f3c65.js";import"./shared-51fd39fa.js";import"./shared-84761b5b.js";import"./shared-19cd0786.js";import"./shared-80a7903f.js";import"./shared-80688cd4.js";import"./shared-7889f2f2.js";import"./shared-b0d76785.js";import{I as e}from"./shared-44fd89ce.js";import"./foxy-generate-codes-form.js";import"./foxy-gift-card-codes-form.js";import"./foxy-item-category-card.js";import"./foxy-gift-card-code-card.js";import"./foxy-gift-card-code-form.js";import"./foxy-nucleon-element.js";import"./foxy-attribute-card.js";import"./foxy-attribute-form.js";import{_ as r,B as t}from"./shared-d1195c27.js";import{T as i}from"./shared-8874ec69.js";import{h as o}from"./shared-dc73b9a5.js";import{R as a,a as s}from"./shared-5e0b71a2.js";import{i as n}from"./shared-9803aa7c.js";import"./shared-ec5b614e.js";import"./shared-018166d0.js";import"./shared-b16829cd.js";import"./shared-cf0ca582.js";import"./shared-8af5a4f2.js";import"./foxy-collection-page.js";import"./foxy-spinner.js";import"./shared-525c1936.js";import"./shared-9fcd36e5.js";import"./shared-57a98543.js";import"./shared-343d1fd7.js";import"./shared-17a61265.js";import"./shared-d1cb97c6.js";import"./shared-bb3c9e23.js";import"./shared-67898669.js";import"./shared-cd96ff03.js";import"./shared-9cf15285.js";import"./shared-019348d7.js";import"./shared-1aff7995.js";import"./shared-fcdb896f.js";import"./shared-a0c6a159.js";import"./shared-99940888.js";import"./foxy-pagination.js";import"./shared-4e709717.js";import"./foxy-form-dialog.js";import"./shared-27e2e59a.js";import"./shared-ffc84c84.js";import"./shared-573d6e21.js";import"./shared-4c4b87c2.js";import"./shared-22ba9566.js";import"./shared-eb7bf7ba.js";import"./shared-6de0e9f3.js";import"./shared-8b838d83.js";import"./foxy-swipe-actions.js";import"./shared-c5326ab8.js";import"./shared-a585bfd3.js";import"./shared-28b0e29a.js";import"./shared-b04e9753.js";import"./shared-53caa399.js";import"./shared-68fdcf24.js";import"./shared-112e521b.js";import"./shared-c5cb7e8a.js";import"./shared-e77d8d01.js";import"./shared-651c44fa.js";import"./shared-d3a5cb85.js";import"./shared-b1fa0b61.js";import"./shared-51c4a6dd.js";import"./foxy-copy-to-clipboard.js";import"./shared-bab2ea2c.js";import"./shared-b77e1a8a.js";import"./shared-31d8e958.js";import"./shared-238d397f.js";import"./shared-a7617e76.js";import"./shared-ebc72d69.js";import"./shared-2cb3cb3a.js";import"./shared-1c4ddc9b.js";import"./shared-32440b17.js";import"./shared-79d0699c.js";import"./shared-43e2c3f6.js";import"./foxy-gift-card-code-log-card.js";import"./foxy-customer-card.js";import"./shared-01f85a69.js";const d=["aed","afn","all","amd","ang","aoa","ars","aud","awg","azn","bam","bbd","bdt","bgn","bhd","bif","bmd","bnd","bob","brl","bsd","btc","btn","bwp","byn","bzd","cad","cdf","chf","clf","clp","cnh","cny","cop","crc","cuc","cup","cve","czk","djf","dkk","dop","dzd","egp","ern","etb","eur","fjd","fkp","gbp","gel","ggp","ghs","gip","gmd","gnf","gtq","gyd","hkd","hnl","hrk","htg","huf","idr","ils","imp","inr","iqd","irr","isk","jep","jmd","jod","jpy","kes","kgs","khr","kmf","kpw","krw","kwd","kyd","kzt","lak","lbp","lkr","lrd","lsl","lyd","mad","mdl","mga","mkd","mmk","mnt","mop","mru","mur","mvr","mwk","mxn","myr","mzn","nad","ngn","nio","nok","npr","nzd","omr","pab","pen","pgk","php","pkr","pln","pyg","qar","ron","rsd","rub","rwf","sar","sbd","scr","sdg","sek","sgd","shp","sll","sos","srd","ssp","std","stn","svc","syp","szl","thb","tjs","tmt","tnd","top","try","ttd","twd","tzs","uah","ugx","usd","uyu","uzs","vef","ves","vnd","vuv","wst","xaf","xag","xau","xcd","xdr","xof","xpd","xpf","xpt","yer","zar","zmw","zwl"];let l,c,f=e=>e;const m=a(s(e,"gift-card-form"));class p extends m{constructor(){var e;super(...arguments),e=this,this.getCustomerHref=e=>`https://api.foxycart.com/customers/${e}`,this.__provisioningMaxBalanceValueGetter=()=>{var e;return null===(e=this.form.provisioning_config)||void 0===e?void 0:e.initial_balance_max},this.__provisioningMaxBalanceValueSetter=e=>{var r,t;const i=null!==(t=null===(r=this.form.provisioning_config)||void 0===r?void 0:r.initial_balance_min)&&void 0!==t?t:e;this.edit({provisioning_config:{allow_autoprovisioning:!0,initial_balance_min:i>e?e:i,initial_balance_max:e}})},this.__provisioningMinBalanceValueGetter=()=>{var e;return null===(e=this.form.provisioning_config)||void 0===e?void 0:e.initial_balance_min},this.__provisioningMinBalanceValueSetter=e=>{var r,t;const i=null!==(t=null===(r=this.form.provisioning_config)||void 0===r?void 0:r.initial_balance_max)&&void 0!==t?t:e;this.edit({provisioning_config:{allow_autoprovisioning:!0,initial_balance_min:e,initial_balance_max:i<e?e:i}})},this.__provisioningToggleValueGetter=()=>{var e;return!!(null===(e=this.form.provisioning_config)||void 0===e?void 0:e.allow_autoprovisioning)},this.__provisioningToggleValueSetter=e=>{var r,t,i,o;e?this.edit({provisioning_config:{allow_autoprovisioning:!0,initial_balance_min:null!==(t=null===(r=this.form.provisioning_config)||void 0===r?void 0:r.initial_balance_min)&&void 0!==t?t:0,initial_balance_max:null!==(o=null===(i=this.form.provisioning_config)||void 0===i?void 0:i.initial_balance_max)&&void 0!==o?o:0}}):this.edit({provisioning_config:null})},this.__productCodeRestrictionsGetValue=()=>{var e;return null===(e=this.form.product_code_restrictions)||void 0===e?void 0:e.split(",").filter((e=>!!e.trim())).map((e=>({value:e,label:e.startsWith("-")?this.t("product-code-restrictions.label_block",{value:e.substring(1)}):this.t("product-code-restrictions.label_allow",{value:e})})))},this.__productCodeRestrictionsSetValue=e=>{this.edit({product_code_restrictions:e.map((({value:e,unit:r})=>"block"===r?`-${e}`:e)).filter(((e,r,t)=>!!e&&t.indexOf(e)===r)).join(",")})},this.__currencyCodeGetValue=()=>{var e;return null===(e=this.form.currency_code)||void 0===e?void 0:e.toLowerCase()},this.__storeLoaderId="storeLoader",this.__codesFilters=[{label:"code",path:"code",type:i.String},{label:"current_balance",path:"current_balance",type:i.Number},{label:"end_date",path:"end_date",type:i.Date},{label:"date_created",path:"date_created",type:i.Date},{label:"date_modified",path:"date_modified",type:i.Date}],this.__codesActions=[{theme:"contrast",state:"idle",text:"copy_button_text",onClick:async function(r){e.__codesActions[0].state="busy",e.__codesActions=[...e.__codesActions];try{await navigator.clipboard.writeText(r.code),e.__codesActions[0].state="end"}catch(r){e.__codesActions[0].state="error"}finally{e.__codesActions=[...e.__codesActions],setTimeout((()=>{e.__codesActions[0].state="idle",e.__codesActions=[...e.__codesActions]}),1e3)}}}]}static get properties(){return r(r({},super.properties),{},{getCustomerHref:{attribute:!1}})}static get v8n(){return[({name:e})=>!!e||"name:v8n_required",({name:e})=>!e||e.length<=50||"name:v8n_too_long",e=>{var r;if(null===(r=e.provisioning_config)||void 0===r?void 0:r.allow_autoprovisioning){if(!e.sku)return"sku:v8n_required";if(e.sku.length>200)return"sku:v8n_too_long"}return!0},e=>{var r;const t=null===(r=e.provisioning_config)||void 0===r?void 0:r.initial_balance_min;return!("number"==typeof t&&t<0)||"min-balance:v8n_negative"},e=>{var r;const t=null===(r=e.provisioning_config)||void 0===r?void 0:r.initial_balance_max;return!("number"==typeof t&&t<0)||"max-balance:v8n_negative"},({product_code_restrictions:e})=>!e||e.length<=5e3||"product-code-restrictions:v8n_too_long"]}get hiddenSelector(){var e;const r=[super.hiddenSelector.toString()];return this.data||r.push("codes","category-restrictions","attributes"),(null===(e=this.form.provisioning_config)||void 0===e?void 0:e.allow_autoprovisioning)||r.push("provisioning:sku","provisioning:min-balance","provisioning:max-balance"),new t(r.join(" ").trim())}get headerSubtitleOptions(){return{id:this.headerCopyIdValue}}renderHeaderActions(e){return o(l||(l=f` <foxy-internal-bulk-add-action-control parent="${0}" infer="generate" form="foxy-generate-codes-form" .related="${0}"> </foxy-internal-bulk-add-action-control> <foxy-internal-bulk-add-action-control parent="${0}" infer="import" form="foxy-gift-card-codes-form" .related="${0}"> </foxy-internal-bulk-add-action-control> ${0} `),e._links["fx:generate_codes"].href,[e._links["fx:gift_card_codes"].href],e._links["fx:gift_card_codes"].href,[e._links["fx:gift_card_codes"].href],super.renderHeaderActions(e))}renderBody(){var e,r,t,i,a,s,l,m,p,u;let _;try{const t=new URL(null!==(r=null===(e=this.data)||void 0===e?void 0:e._links["fx:gift_card_codes"].href)&&void 0!==r?r:"");t.searchParams.set("order","date_created desc"),_=t.toString()}catch(e){_=void 0}return o(c||(c=f` ${0} <foxy-internal-summary-control infer="general"> <foxy-internal-text-control layout="summary-item" infer="name"> </foxy-internal-text-control> <foxy-internal-select-control property="currency_code" layout="summary-item" infer="currency" .getValue="${0}" .options="${0}"> </foxy-internal-select-control> <foxy-internal-frequency-control property="expires_after" layout="summary-item" infer="expires"> </foxy-internal-frequency-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="provisioning"> <foxy-internal-switch-control infer="toggle" .getValue="${0}" .setValue="${0}"> </foxy-internal-switch-control> <foxy-internal-text-control layout="summary-item" infer="sku"></foxy-internal-text-control> <foxy-internal-number-control layout="summary-item" suffix="${0}" infer="min-balance" min="0" .getValue="${0}" .setValue="${0}"> </foxy-internal-number-control> <foxy-internal-number-control layout="summary-item" suffix="${0}" infer="max-balance" min="0" .getValue="${0}" .setValue="${0}"> </foxy-internal-number-control> </foxy-internal-summary-control> <foxy-internal-async-list-control first="${0}" limit="5" infer="codes" item="foxy-gift-card-code-card" form="foxy-gift-card-code-form" alert .formProps="${0}" .actions="${0}" .filters="${0}"> </foxy-internal-async-list-control> <foxy-internal-editable-list-control infer="product-code-restrictions" .getValue="${0}" .setValue="${0}" .units="${0}"> </foxy-internal-editable-list-control> <foxy-internal-async-resource-link-list-control foreign-key-for-uri="item_category_uri" foreign-key-for-id="item_category_id" own-key-for-uri="gift_card_uri" options-href="${0}" links-href="${0}" embed-key="fx:gift_card_item_categories" own-uri="${0}" infer="category-restrictions" limit="5" item="foxy-item-category-card"> </foxy-internal-async-resource-link-list-control> <foxy-internal-async-list-control first="${0}" limit="5" infer="attributes" item="foxy-attribute-card" form="foxy-attribute-form" alert> </foxy-internal-async-list-control> ${0} <foxy-nucleon infer="" class="hidden" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> `),this.renderHeader(),this.__currencyCodeGetValue,d.map((e=>({label:this.t(`general.currency.code_${e}`),value:e}))),this.__provisioningToggleValueGetter,this.__provisioningToggleValueSetter,n(null===(t=this.form.currency_code)||void 0===t?void 0:t.toUpperCase()),this.__provisioningMinBalanceValueGetter,this.__provisioningMinBalanceValueSetter,n(null===(i=this.form.currency_code)||void 0===i?void 0:i.toUpperCase()),this.__provisioningMaxBalanceValueGetter,this.__provisioningMaxBalanceValueSetter,_,{".getCustomerHref":this.getCustomerHref},this.__codesActions,this.__codesFilters,this.__productCodeRestrictionsGetValue,this.__productCodeRestrictionsSetValue,[{label:this.t("product-code-restrictions.unit_allow"),value:"allow"},{label:this.t("product-code-restrictions.unit_block"),value:"block"}],n(null===(s=null===(a=this.__storeLoader)||void 0===a?void 0:a.data)||void 0===s?void 0:s._links["fx:item_categories"].href),n(null===(l=this.data)||void 0===l?void 0:l._links["fx:gift_card_item_categories"].href),n(null===(m=this.data)||void 0===m?void 0:m._links.self.href),n(null===(p=this.data)||void 0===p?void 0:p._links["fx:attributes"].href),super.renderBody(),n(null===(u=this.data)||void 0===u?void 0:u._links["fx:store"].href),this.__storeLoaderId,(()=>this.requestUpdate()))}get __storeLoader(){return this.renderRoot.querySelector(`#${this.__storeLoaderId}`)}}customElements.define("foxy-gift-card-form",p);export{p as GiftCardForm};
|
|
1
|
+
import"./shared-ce055dce.js";import"./shared-2f02918d.js";import"./shared-504f3c65.js";import"./shared-51fd39fa.js";import"./shared-84761b5b.js";import"./shared-44118acb.js";import"./shared-80a7903f.js";import"./shared-80688cd4.js";import"./shared-7889f2f2.js";import"./shared-b0d76785.js";import{I as e}from"./shared-44fd89ce.js";import"./foxy-generate-codes-form.js";import"./foxy-gift-card-codes-form.js";import"./foxy-item-category-card.js";import"./foxy-gift-card-code-card.js";import"./foxy-gift-card-code-form.js";import"./foxy-nucleon-element.js";import"./foxy-attribute-card.js";import"./foxy-attribute-form.js";import{_ as r,B as t}from"./shared-d1195c27.js";import{T as i}from"./shared-8874ec69.js";import{h as o}from"./shared-dc73b9a5.js";import{R as a,a as s}from"./shared-5e0b71a2.js";import{i as n}from"./shared-9803aa7c.js";import"./shared-ec5b614e.js";import"./shared-018166d0.js";import"./shared-b16829cd.js";import"./shared-cf0ca582.js";import"./shared-8af5a4f2.js";import"./foxy-collection-page.js";import"./foxy-spinner.js";import"./shared-525c1936.js";import"./shared-9fcd36e5.js";import"./shared-57a98543.js";import"./shared-343d1fd7.js";import"./shared-17a61265.js";import"./shared-d1cb97c6.js";import"./shared-bb3c9e23.js";import"./shared-67898669.js";import"./shared-cd96ff03.js";import"./shared-9cf15285.js";import"./shared-019348d7.js";import"./shared-1aff7995.js";import"./shared-fcdb896f.js";import"./shared-a0c6a159.js";import"./shared-99940888.js";import"./foxy-pagination.js";import"./shared-4e709717.js";import"./foxy-form-dialog.js";import"./shared-27e2e59a.js";import"./shared-ffc84c84.js";import"./shared-573d6e21.js";import"./shared-4c4b87c2.js";import"./shared-22ba9566.js";import"./shared-eb7bf7ba.js";import"./shared-6de0e9f3.js";import"./shared-8b838d83.js";import"./foxy-swipe-actions.js";import"./shared-c5326ab8.js";import"./shared-a585bfd3.js";import"./shared-28b0e29a.js";import"./shared-b04e9753.js";import"./shared-53caa399.js";import"./shared-68fdcf24.js";import"./shared-112e521b.js";import"./shared-c5cb7e8a.js";import"./shared-e77d8d01.js";import"./shared-651c44fa.js";import"./shared-d3a5cb85.js";import"./shared-b1fa0b61.js";import"./shared-51c4a6dd.js";import"./foxy-copy-to-clipboard.js";import"./shared-bab2ea2c.js";import"./shared-b77e1a8a.js";import"./shared-31d8e958.js";import"./shared-238d397f.js";import"./shared-a7617e76.js";import"./shared-ebc72d69.js";import"./shared-2cb3cb3a.js";import"./shared-1c4ddc9b.js";import"./shared-32440b17.js";import"./shared-79d0699c.js";import"./shared-43e2c3f6.js";import"./foxy-gift-card-code-log-card.js";import"./foxy-customer-card.js";import"./shared-01f85a69.js";const d=["aed","afn","all","amd","ang","aoa","ars","aud","awg","azn","bam","bbd","bdt","bgn","bhd","bif","bmd","bnd","bob","brl","bsd","btc","btn","bwp","byn","bzd","cad","cdf","chf","clf","clp","cnh","cny","cop","crc","cuc","cup","cve","czk","djf","dkk","dop","dzd","egp","ern","etb","eur","fjd","fkp","gbp","gel","ggp","ghs","gip","gmd","gnf","gtq","gyd","hkd","hnl","hrk","htg","huf","idr","ils","imp","inr","iqd","irr","isk","jep","jmd","jod","jpy","kes","kgs","khr","kmf","kpw","krw","kwd","kyd","kzt","lak","lbp","lkr","lrd","lsl","lyd","mad","mdl","mga","mkd","mmk","mnt","mop","mru","mur","mvr","mwk","mxn","myr","mzn","nad","ngn","nio","nok","npr","nzd","omr","pab","pen","pgk","php","pkr","pln","pyg","qar","ron","rsd","rub","rwf","sar","sbd","scr","sdg","sek","sgd","shp","sll","sos","srd","ssp","std","stn","svc","syp","szl","thb","tjs","tmt","tnd","top","try","ttd","twd","tzs","uah","ugx","usd","uyu","uzs","vef","ves","vnd","vuv","wst","xaf","xag","xau","xcd","xdr","xof","xpd","xpf","xpt","yer","zar","zmw","zwl"];let l,c,f=e=>e;const m=a(s(e,"gift-card-form"));class p extends m{constructor(){var e;super(...arguments),e=this,this.getCustomerHref=e=>`https://api.foxycart.com/customers/${e}`,this.__provisioningMaxBalanceValueGetter=()=>{var e;return null===(e=this.form.provisioning_config)||void 0===e?void 0:e.initial_balance_max},this.__provisioningMaxBalanceValueSetter=e=>{var r,t;const i=null!==(t=null===(r=this.form.provisioning_config)||void 0===r?void 0:r.initial_balance_min)&&void 0!==t?t:e;this.edit({provisioning_config:{allow_autoprovisioning:!0,initial_balance_min:i>e?e:i,initial_balance_max:e}})},this.__provisioningMinBalanceValueGetter=()=>{var e;return null===(e=this.form.provisioning_config)||void 0===e?void 0:e.initial_balance_min},this.__provisioningMinBalanceValueSetter=e=>{var r,t;const i=null!==(t=null===(r=this.form.provisioning_config)||void 0===r?void 0:r.initial_balance_max)&&void 0!==t?t:e;this.edit({provisioning_config:{allow_autoprovisioning:!0,initial_balance_min:e,initial_balance_max:i<e?e:i}})},this.__provisioningToggleValueGetter=()=>{var e;return!!(null===(e=this.form.provisioning_config)||void 0===e?void 0:e.allow_autoprovisioning)},this.__provisioningToggleValueSetter=e=>{var r,t,i,o;e?this.edit({provisioning_config:{allow_autoprovisioning:!0,initial_balance_min:null!==(t=null===(r=this.form.provisioning_config)||void 0===r?void 0:r.initial_balance_min)&&void 0!==t?t:0,initial_balance_max:null!==(o=null===(i=this.form.provisioning_config)||void 0===i?void 0:i.initial_balance_max)&&void 0!==o?o:0}}):this.edit({provisioning_config:null})},this.__productCodeRestrictionsGetValue=()=>{var e;return null===(e=this.form.product_code_restrictions)||void 0===e?void 0:e.split(",").filter((e=>!!e.trim())).map((e=>({value:e,label:e.startsWith("-")?this.t("product-code-restrictions.label_block",{value:e.substring(1)}):this.t("product-code-restrictions.label_allow",{value:e})})))},this.__productCodeRestrictionsSetValue=e=>{this.edit({product_code_restrictions:e.map((({value:e,unit:r})=>"block"===r?`-${e}`:e)).filter(((e,r,t)=>!!e&&t.indexOf(e)===r)).join(",")})},this.__currencyCodeGetValue=()=>{var e;return null===(e=this.form.currency_code)||void 0===e?void 0:e.toLowerCase()},this.__storeLoaderId="storeLoader",this.__codesFilters=[{label:"code",path:"code",type:i.String},{label:"current_balance",path:"current_balance",type:i.Number},{label:"end_date",path:"end_date",type:i.Date},{label:"date_created",path:"date_created",type:i.Date},{label:"date_modified",path:"date_modified",type:i.Date}],this.__codesActions=[{theme:"contrast",state:"idle",text:"copy_button_text",onClick:async function(r){e.__codesActions[0].state="busy",e.__codesActions=[...e.__codesActions];try{await navigator.clipboard.writeText(r.code),e.__codesActions[0].state="end"}catch(r){e.__codesActions[0].state="error"}finally{e.__codesActions=[...e.__codesActions],setTimeout((()=>{e.__codesActions[0].state="idle",e.__codesActions=[...e.__codesActions]}),1e3)}}}]}static get properties(){return r(r({},super.properties),{},{getCustomerHref:{attribute:!1}})}static get v8n(){return[({name:e})=>!!e||"name:v8n_required",({name:e})=>!e||e.length<=50||"name:v8n_too_long",e=>{var r;if(null===(r=e.provisioning_config)||void 0===r?void 0:r.allow_autoprovisioning){if(!e.sku)return"sku:v8n_required";if(e.sku.length>200)return"sku:v8n_too_long"}return!0},e=>{var r;const t=null===(r=e.provisioning_config)||void 0===r?void 0:r.initial_balance_min;return!("number"==typeof t&&t<0)||"min-balance:v8n_negative"},e=>{var r;const t=null===(r=e.provisioning_config)||void 0===r?void 0:r.initial_balance_max;return!("number"==typeof t&&t<0)||"max-balance:v8n_negative"},({product_code_restrictions:e})=>!e||e.length<=5e3||"product-code-restrictions:v8n_too_long"]}get hiddenSelector(){var e;const r=[super.hiddenSelector.toString()];return this.data||r.push("codes","category-restrictions","attributes"),(null===(e=this.form.provisioning_config)||void 0===e?void 0:e.allow_autoprovisioning)||r.push("provisioning:sku","provisioning:min-balance","provisioning:max-balance"),new t(r.join(" ").trim())}get headerSubtitleOptions(){return{id:this.headerCopyIdValue}}renderHeaderActions(e){return o(l||(l=f` <foxy-internal-bulk-add-action-control parent="${0}" infer="generate" form="foxy-generate-codes-form" .related="${0}"> </foxy-internal-bulk-add-action-control> <foxy-internal-bulk-add-action-control parent="${0}" infer="import" form="foxy-gift-card-codes-form" .related="${0}"> </foxy-internal-bulk-add-action-control> ${0} `),e._links["fx:generate_codes"].href,[e._links["fx:gift_card_codes"].href],e._links["fx:gift_card_codes"].href,[e._links["fx:gift_card_codes"].href],super.renderHeaderActions(e))}renderBody(){var e,r,t,i,a,s,l,m,p,u;let _;try{const t=new URL(null!==(r=null===(e=this.data)||void 0===e?void 0:e._links["fx:gift_card_codes"].href)&&void 0!==r?r:"");t.searchParams.set("order","date_created desc"),_=t.toString()}catch(e){_=void 0}return o(c||(c=f` ${0} <foxy-internal-summary-control infer="general"> <foxy-internal-text-control layout="summary-item" infer="name"> </foxy-internal-text-control> <foxy-internal-select-control property="currency_code" layout="summary-item" infer="currency" .getValue="${0}" .options="${0}"> </foxy-internal-select-control> <foxy-internal-frequency-control property="expires_after" layout="summary-item" infer="expires"> </foxy-internal-frequency-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="provisioning"> <foxy-internal-switch-control infer="toggle" .getValue="${0}" .setValue="${0}"> </foxy-internal-switch-control> <foxy-internal-text-control layout="summary-item" infer="sku"></foxy-internal-text-control> <foxy-internal-number-control layout="summary-item" suffix="${0}" infer="min-balance" min="0" .getValue="${0}" .setValue="${0}"> </foxy-internal-number-control> <foxy-internal-number-control layout="summary-item" suffix="${0}" infer="max-balance" min="0" .getValue="${0}" .setValue="${0}"> </foxy-internal-number-control> </foxy-internal-summary-control> <foxy-internal-async-list-control first="${0}" limit="5" infer="codes" item="foxy-gift-card-code-card" form="foxy-gift-card-code-form" alert .formProps="${0}" .actions="${0}" .filters="${0}"> </foxy-internal-async-list-control> <foxy-internal-editable-list-control infer="product-code-restrictions" .getValue="${0}" .setValue="${0}" .units="${0}"> </foxy-internal-editable-list-control> <foxy-internal-async-resource-link-list-control foreign-key-for-uri="item_category_uri" foreign-key-for-id="item_category_id" own-key-for-uri="gift_card_uri" options-href="${0}" links-href="${0}" embed-key="fx:gift_card_item_categories" own-uri="${0}" infer="category-restrictions" limit="5" item="foxy-item-category-card"> </foxy-internal-async-resource-link-list-control> <foxy-internal-async-list-control first="${0}" limit="5" infer="attributes" item="foxy-attribute-card" form="foxy-attribute-form" alert> </foxy-internal-async-list-control> ${0} <foxy-nucleon infer="" class="hidden" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> `),this.renderHeader(),this.__currencyCodeGetValue,d.map((e=>({label:this.t(`general.currency.code_${e}`),value:e}))),this.__provisioningToggleValueGetter,this.__provisioningToggleValueSetter,n(null===(t=this.form.currency_code)||void 0===t?void 0:t.toUpperCase()),this.__provisioningMinBalanceValueGetter,this.__provisioningMinBalanceValueSetter,n(null===(i=this.form.currency_code)||void 0===i?void 0:i.toUpperCase()),this.__provisioningMaxBalanceValueGetter,this.__provisioningMaxBalanceValueSetter,_,{".getCustomerHref":this.getCustomerHref},this.__codesActions,this.__codesFilters,this.__productCodeRestrictionsGetValue,this.__productCodeRestrictionsSetValue,[{label:this.t("product-code-restrictions.unit_allow"),value:"allow"},{label:this.t("product-code-restrictions.unit_block"),value:"block"}],n(null===(s=null===(a=this.__storeLoader)||void 0===a?void 0:a.data)||void 0===s?void 0:s._links["fx:item_categories"].href),n(null===(l=this.data)||void 0===l?void 0:l._links["fx:gift_card_item_categories"].href),n(null===(m=this.data)||void 0===m?void 0:m._links.self.href),n(null===(p=this.data)||void 0===p?void 0:p._links["fx:attributes"].href),super.renderBody(),n(null===(u=this.data)||void 0===u?void 0:u._links["fx:store"].href),this.__storeLoaderId,(()=>this.requestUpdate()))}get __storeLoader(){return this.renderRoot.querySelector(`#${this.__storeLoaderId}`)}}customElements.define("foxy-gift-card-form",p);export{p as GiftCardForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-ce055dce.js";import"./shared-ebc72d69.js";import"./shared-19cd0786.js";import"./shared-7889f2f2.js";import"./shared-80a7903f.js";import"./shared-b0d76785.js";import{I as e}from"./shared-44fd89ce.js";import"./foxy-email-template-card.js";import"./foxy-discount-builder.js";import"./foxy-tax-card.js";import"./shared-57a98543.js";import{_ as t,B as r}from"./shared-d1195c27.js";import{a as n}from"./shared-5e0b71a2.js";import{i}from"./shared-9803aa7c.js";import{h as o,s as a}from"./shared-dc73b9a5.js";import"./shared-ec5b614e.js";import"./shared-018166d0.js";import"./shared-b16829cd.js";import"./shared-cf0ca582.js";import"./shared-8af5a4f2.js";import"./foxy-collection-page.js";import"./foxy-spinner.js";import"./shared-525c1936.js";import"./shared-9fcd36e5.js";import"./shared-17a61265.js";import"./shared-343d1fd7.js";import"./shared-d1cb97c6.js";import"./shared-bb3c9e23.js";import"./shared-67898669.js";import"./shared-cd96ff03.js";import"./shared-9cf15285.js";import"./shared-019348d7.js";import"./shared-1aff7995.js";import"./shared-fcdb896f.js";import"./shared-a0c6a159.js";import"./shared-99940888.js";import"./foxy-nucleon-element.js";import"./foxy-pagination.js";import"./shared-4e709717.js";import"./shared-51fd39fa.js";import"./shared-eb7bf7ba.js";import"./shared-6de0e9f3.js";import"./shared-8b838d83.js";import"./foxy-swipe-actions.js";import"./foxy-form-dialog.js";import"./shared-27e2e59a.js";import"./shared-ffc84c84.js";import"./foxy-copy-to-clipboard.js";import"./shared-573d6e21.js";import"./shared-4c4b87c2.js";import"./shared-bab2ea2c.js";import"./shared-c5326ab8.js";import"./shared-a585bfd3.js";import"./shared-28b0e29a.js";import"./shared-b04e9753.js";import"./shared-53caa399.js";import"./shared-c5cb7e8a.js";import"./shared-e77d8d01.js";import"./shared-651c44fa.js";import"./shared-d3a5cb85.js";import"./shared-b1fa0b61.js";import"./shared-22ba9566.js";import"./shared-51c4a6dd.js";import"./shared-31d8e958.js";import"./shared-238d397f.js";import"./shared-8438d4ca.js";let l,s,m,d,p,u,f,_,c,y,h,g=e=>e;class x extends(n(e,"item-category-form")){constructor(){super(...arguments),this.emailTemplates=null,this.taxes=null}static get properties(){return t(t({},super.properties),{},{emailTemplates:{attribute:"email-templates"},taxes:{}})}static get v8n(){return[({code:e})=>!!e||"code:v8n_required",({code:e})=>e&&e.length<=50||"code:v8n_too_long",({name:e})=>!!e||"name:v8n_required",({name:e})=>e&&e.length<=50||"name:v8n_too_long",({item_delivery_type:e})=>!!e||"item-delivery-type:v8n_required",({item_delivery_type:e,max_downloads_per_customer:t})=>"downloaded"!==e||"number"==typeof t||"max-downloads-per-customer:v8n_required",({max_downloads_per_customer:e})=>"number"!=typeof e||e>=0||"max-downloads-per-customer:v8n_negative",({item_delivery_type:e,max_downloads_time_period:t})=>"downloaded"!==e||"number"==typeof t||"max-downloads-time-period:v8n_required",({max_downloads_time_period:e})=>"number"!=typeof e||e>=0||"max-downloads-time-period:v8n_negative",({customs_value:e})=>"number"!=typeof e||e>=0||"customs-value:v8n_negative",({item_delivery_type:e,default_weight:t})=>"shipped"!==e||"number"==typeof t||"default-weight:v8n_required",({default_weight:e})=>"number"!=typeof e||e>=0||"default-weight:v8n_negative",({item_delivery_type:e,default_weight_unit:t})=>"shipped"!==e||"string"==typeof t||"default-weight-unit:v8n_required",({item_delivery_type:e,default_length_unit:t})=>"shipped"!==e||"string"==typeof t||"default-length-unit:v8n_required",({item_delivery_type:e,shipping_flat_rate:t})=>"flat_rate"!==e||"number"==typeof t||"shipping-flat-rate:v8n_required",({shipping_flat_rate:e})=>"number"!=typeof e||e>=0||"shipping-flat-rate:v8n_negative",({item_delivery_type:e,shipping_flat_rate_type:t})=>"flat_rate"!==e||"string"==typeof t||"shipping-flat-rate-type:v8n_required",({handling_fee_type:e})=>!!e||"handling-fee-type:v8n_required",({handling_fee_type:e,handling_fee_minimum:t})=>"flat_percent_with_minimum"!==e||"number"==typeof t||"handling-fee-minimum:v8n_required",({handling_fee_minimum:e})=>"number"!=typeof e||e>=0||"handling-fee-minimum:v8n_negative",({handling_fee_type:e,handling_fee_percentage:t})=>"flat_percent_with_minimum"!==e&&"flat_percent"!==e||"number"==typeof t||"handling-fee-percentage:v8n_required",({handling_fee_percentage:e})=>"number"!=typeof e||e>=0||"handling-fee-percentage:v8n_negative"]}get readonlySelector(){var e;const t=[super.readonlySelector.toString()];return"DEFAULT"===(null===(e=this.data)||void 0===e?void 0:e.code)&&t.unshift("code","name"),new r(t.join(" ").trim())}get hiddenSelector(){var e;const t=[super.hiddenSelector.toString()];return this.data||t.unshift("taxes"),"DEFAULT"===(null===(e=this.data)||void 0===e?void 0:e.code)&&t.unshift("delete"),new r(t.join(" ").trim())}renderBody(){var e,t,r,n,d;const p=this.form.item_delivery_type,u=null!==(e=this.form.handling_fee_type)&&void 0!==e?e:"none";return o(l||(l=g` ${0} <foxy-internal-summary-control infer="general"> <foxy-internal-text-control infer="name" layout="summary-item"></foxy-internal-text-control> <foxy-internal-text-control infer="code" layout="summary-item"></foxy-internal-text-control> </foxy-internal-summary-control> <foxy-internal-async-resource-link-list-control foreign-key-for-uri="tax_uri" foreign-key-for-id="tax_id" own-key-for-uri="item_category_uri" options-href="${0}" links-href="${0}" embed-key="fx:tax_item_categories" own-uri="${0}" infer="taxes" limit="5" item="foxy-tax-card"> </foxy-internal-async-resource-link-list-control> <foxy-internal-summary-control infer="delivery"> <foxy-internal-select-control layout="summary-item" infer="item-delivery-type" .options="${0}"> </foxy-internal-select-control> ${0} </foxy-internal-summary-control> <foxy-internal-summary-control infer="handling-and-discount"> <foxy-internal-select-control layout="summary-item" infer="handling-fee-type" .options="${0}"> </foxy-internal-select-control> ${0} <foxy-internal-text-control layout="summary-item" infer="discount-name"> </foxy-internal-text-control> ${0} </foxy-internal-summary-control> <foxy-internal-summary-control infer="emails"> <foxy-internal-resource-picker-control layout="summary-item" first="${0}" infer="gift-recipient-email-template-uri" item="foxy-email-template-card"> </foxy-internal-resource-picker-control> <div class="flex items-start" style="gap:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)"> ${0} <p> <foxy-i18n infer="" key="wip_message"></foxy-i18n> <br> <a target="_blank" class="mt-xs inline-block rounded font-medium text-primary transition-colors cursor-pointer hover-opacity-80 focus-outline-none focus-ring-2 focus-ring-primary-50" href="https://admin.foxycart.com"> admin.foxycart.com </a> </p> </div> </foxy-internal-summary-control> ${0} `),this.renderHeader(),i(null!==(t=this.taxes)&&void 0!==t?t:void 0),i(null===(r=this.data)||void 0===r?void 0:r._links["fx:tax_item_categories"].href),i(null===(n=this.data)||void 0===n?void 0:n._links.self.href),x.__itemDeliveryTypeOptions,"downloaded"===p?this.__renderDownloadDeliveryControls():"flat_rate"===p?[this.__renderFlatRateControls(),this.__renderCustomsValue()]:"shipped"===p?[this.__renderShippingControls(),this.__renderCustomsValue()]:"",x.__handlingFeeTypeOptions,"none"===u?"":o(s||(s=g` ${0} ${0} ${0} `),this.__renderHandlingFee(),u.includes("percent")?this.__renderHandlingFeePercentage():"","flat_percent_with_minimum"===u?this.__renderHandlingFeeMinimum():""),this.form.discount_name?this.__renderDiscountBuilder():"",i(null!==(d=this.emailTemplates)&&void 0!==d?d:void 0),a(m||(m=g`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" class="flex-shrink-0 text-primary" style="width: 1.25em"><path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z" clip-rule="evenodd"></path></svg>`)),super.renderBody())}__renderHandlingFee(){return o(d||(d=g` <foxy-internal-number-control layout="summary-item" infer="handling-fee" min="0"> </foxy-internal-number-control> `))}__renderHandlingFeePercentage(){return o(p||(p=g` <foxy-internal-number-control layout="summary-item" suffix="%" infer="handling-fee-percentage" min="0"> </foxy-internal-number-control> `))}__renderHandlingFeeMinimum(){return o(u||(u=g` <foxy-internal-number-control layout="summary-item" infer="handling-fee-minimum" min="0"> </foxy-internal-number-control> `))}__renderDownloadDeliveryControls(){return o(f||(f=g` <foxy-internal-number-control layout="summary-item" infer="max-downloads-per-customer" step="1" min="0"> </foxy-internal-number-control> <foxy-internal-number-control layout="summary-item" infer="max-downloads-time-period" step="1" min="0"> </foxy-internal-number-control> `))}__renderFlatRateControls(){return o(_||(_=g` <foxy-internal-number-control layout="summary-item" infer="shipping-flat-rate" min="0"> </foxy-internal-number-control> <foxy-internal-select-control layout="summary-item" infer="shipping-flat-rate-type" .options="${0}"> </foxy-internal-select-control> `),x.__shippingFlatRateTypeOptions)}__renderShippingControls(){return o(c||(c=g` <foxy-internal-number-control layout="summary-item" infer="default-weight" min="0"> </foxy-internal-number-control> <foxy-internal-select-control layout="summary-item" infer="default-weight-unit" .options="${0}"> </foxy-internal-select-control> <foxy-internal-select-control layout="summary-item" infer="default-length-unit" .options="${0}"> </foxy-internal-select-control> `),x.__defaultWeightUnitOptions,x.__defaultLengthUnitOptions)}__renderCustomsValue(){return o(y||(y=g` <foxy-internal-number-control layout="summary-item" infer="customs-value" min="0"> </foxy-internal-number-control> `))}__renderDiscountBuilder(){var e,t;const r={name:null!==(e=this.form.discount_name)&&void 0!==e?e:"",type:this.form.discount_type||"quantity_amount",details:null!==(t=this.form.discount_details)&&void 0!==t?t:""};return o(h||(h=g` <foxy-discount-builder infer="discount-builder" class="col-span-2" .parsedValue="${0}" @change="${0}"> </foxy-discount-builder> `),r,(e=>{const t=e.currentTarget;this.edit({discount_name:t.parsedValue.name,discount_type:t.parsedValue.type,discount_details:t.parsedValue.details})}))}}x.__shippingFlatRateTypeOptions=[{label:"option_per_order",value:"per_order"},{label:"option_per_shipment",value:"per_shipment"}],x.__defaultWeightUnitOptions=[{label:"option_lbs",value:"LBS"},{label:"option_kgs",value:"KGS"}],x.__defaultLengthUnitOptions=[{label:"option_in",value:"IN"},{label:"option_cm",value:"CM"}],x.__itemDeliveryTypeOptions=[{label:"option_notshipped",value:"notshipped"},{label:"option_downloaded",value:"downloaded"},{label:"option_flat_rate",value:"flat_rate"},{label:"option_shipped",value:"shipped"},{label:"option_pickup",value:"pickup"}],x.__handlingFeeTypeOptions=[{label:"option_none",value:"none"},{label:"option_flat_per_order",value:"flat_per_order"},{label:"option_flat_per_item",value:"flat_per_item"},{label:"option_flat_percent",value:"flat_percent"},{label:"option_flat_percent_with_minimum",value:"flat_percent_with_minimum"}],customElements.define("foxy-item-category-form",x);export{x as ItemCategoryForm};
|
|
1
|
+
import"./shared-ce055dce.js";import"./shared-ebc72d69.js";import"./shared-44118acb.js";import"./shared-7889f2f2.js";import"./shared-80a7903f.js";import"./shared-b0d76785.js";import{I as e}from"./shared-44fd89ce.js";import"./foxy-email-template-card.js";import"./foxy-discount-builder.js";import"./foxy-tax-card.js";import"./shared-57a98543.js";import{_ as t,B as r}from"./shared-d1195c27.js";import{a as n}from"./shared-5e0b71a2.js";import{i}from"./shared-9803aa7c.js";import{h as o,s as a}from"./shared-dc73b9a5.js";import"./shared-ec5b614e.js";import"./shared-018166d0.js";import"./shared-b16829cd.js";import"./shared-cf0ca582.js";import"./shared-8af5a4f2.js";import"./foxy-collection-page.js";import"./foxy-spinner.js";import"./shared-525c1936.js";import"./shared-9fcd36e5.js";import"./shared-17a61265.js";import"./shared-343d1fd7.js";import"./shared-d1cb97c6.js";import"./shared-bb3c9e23.js";import"./shared-67898669.js";import"./shared-cd96ff03.js";import"./shared-9cf15285.js";import"./shared-019348d7.js";import"./shared-1aff7995.js";import"./shared-fcdb896f.js";import"./shared-a0c6a159.js";import"./shared-99940888.js";import"./foxy-nucleon-element.js";import"./foxy-pagination.js";import"./shared-4e709717.js";import"./shared-51fd39fa.js";import"./shared-eb7bf7ba.js";import"./shared-6de0e9f3.js";import"./shared-8b838d83.js";import"./foxy-swipe-actions.js";import"./foxy-form-dialog.js";import"./shared-27e2e59a.js";import"./shared-ffc84c84.js";import"./foxy-copy-to-clipboard.js";import"./shared-573d6e21.js";import"./shared-4c4b87c2.js";import"./shared-bab2ea2c.js";import"./shared-c5326ab8.js";import"./shared-a585bfd3.js";import"./shared-28b0e29a.js";import"./shared-b04e9753.js";import"./shared-53caa399.js";import"./shared-c5cb7e8a.js";import"./shared-e77d8d01.js";import"./shared-651c44fa.js";import"./shared-d3a5cb85.js";import"./shared-b1fa0b61.js";import"./shared-22ba9566.js";import"./shared-51c4a6dd.js";import"./shared-31d8e958.js";import"./shared-238d397f.js";import"./shared-8438d4ca.js";let l,s,m,d,p,u,f,_,c,y,h,g=e=>e;class x extends(n(e,"item-category-form")){constructor(){super(...arguments),this.emailTemplates=null,this.taxes=null}static get properties(){return t(t({},super.properties),{},{emailTemplates:{attribute:"email-templates"},taxes:{}})}static get v8n(){return[({code:e})=>!!e||"code:v8n_required",({code:e})=>e&&e.length<=50||"code:v8n_too_long",({name:e})=>!!e||"name:v8n_required",({name:e})=>e&&e.length<=50||"name:v8n_too_long",({item_delivery_type:e})=>!!e||"item-delivery-type:v8n_required",({item_delivery_type:e,max_downloads_per_customer:t})=>"downloaded"!==e||"number"==typeof t||"max-downloads-per-customer:v8n_required",({max_downloads_per_customer:e})=>"number"!=typeof e||e>=0||"max-downloads-per-customer:v8n_negative",({item_delivery_type:e,max_downloads_time_period:t})=>"downloaded"!==e||"number"==typeof t||"max-downloads-time-period:v8n_required",({max_downloads_time_period:e})=>"number"!=typeof e||e>=0||"max-downloads-time-period:v8n_negative",({customs_value:e})=>"number"!=typeof e||e>=0||"customs-value:v8n_negative",({item_delivery_type:e,default_weight:t})=>"shipped"!==e||"number"==typeof t||"default-weight:v8n_required",({default_weight:e})=>"number"!=typeof e||e>=0||"default-weight:v8n_negative",({item_delivery_type:e,default_weight_unit:t})=>"shipped"!==e||"string"==typeof t||"default-weight-unit:v8n_required",({item_delivery_type:e,default_length_unit:t})=>"shipped"!==e||"string"==typeof t||"default-length-unit:v8n_required",({item_delivery_type:e,shipping_flat_rate:t})=>"flat_rate"!==e||"number"==typeof t||"shipping-flat-rate:v8n_required",({shipping_flat_rate:e})=>"number"!=typeof e||e>=0||"shipping-flat-rate:v8n_negative",({item_delivery_type:e,shipping_flat_rate_type:t})=>"flat_rate"!==e||"string"==typeof t||"shipping-flat-rate-type:v8n_required",({handling_fee_type:e})=>!!e||"handling-fee-type:v8n_required",({handling_fee_type:e,handling_fee_minimum:t})=>"flat_percent_with_minimum"!==e||"number"==typeof t||"handling-fee-minimum:v8n_required",({handling_fee_minimum:e})=>"number"!=typeof e||e>=0||"handling-fee-minimum:v8n_negative",({handling_fee_type:e,handling_fee_percentage:t})=>"flat_percent_with_minimum"!==e&&"flat_percent"!==e||"number"==typeof t||"handling-fee-percentage:v8n_required",({handling_fee_percentage:e})=>"number"!=typeof e||e>=0||"handling-fee-percentage:v8n_negative"]}get readonlySelector(){var e;const t=[super.readonlySelector.toString()];return"DEFAULT"===(null===(e=this.data)||void 0===e?void 0:e.code)&&t.unshift("code","name"),new r(t.join(" ").trim())}get hiddenSelector(){var e;const t=[super.hiddenSelector.toString()];return this.data||t.unshift("taxes"),"DEFAULT"===(null===(e=this.data)||void 0===e?void 0:e.code)&&t.unshift("delete"),new r(t.join(" ").trim())}renderBody(){var e,t,r,n,d;const p=this.form.item_delivery_type,u=null!==(e=this.form.handling_fee_type)&&void 0!==e?e:"none";return o(l||(l=g` ${0} <foxy-internal-summary-control infer="general"> <foxy-internal-text-control infer="name" layout="summary-item"></foxy-internal-text-control> <foxy-internal-text-control infer="code" layout="summary-item"></foxy-internal-text-control> </foxy-internal-summary-control> <foxy-internal-async-resource-link-list-control foreign-key-for-uri="tax_uri" foreign-key-for-id="tax_id" own-key-for-uri="item_category_uri" options-href="${0}" links-href="${0}" embed-key="fx:tax_item_categories" own-uri="${0}" infer="taxes" limit="5" item="foxy-tax-card"> </foxy-internal-async-resource-link-list-control> <foxy-internal-summary-control infer="delivery"> <foxy-internal-select-control layout="summary-item" infer="item-delivery-type" .options="${0}"> </foxy-internal-select-control> ${0} </foxy-internal-summary-control> <foxy-internal-summary-control infer="handling-and-discount"> <foxy-internal-select-control layout="summary-item" infer="handling-fee-type" .options="${0}"> </foxy-internal-select-control> ${0} <foxy-internal-text-control layout="summary-item" infer="discount-name"> </foxy-internal-text-control> ${0} </foxy-internal-summary-control> <foxy-internal-summary-control infer="emails"> <foxy-internal-resource-picker-control layout="summary-item" first="${0}" infer="gift-recipient-email-template-uri" item="foxy-email-template-card"> </foxy-internal-resource-picker-control> <div class="flex items-start" style="gap:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)"> ${0} <p> <foxy-i18n infer="" key="wip_message"></foxy-i18n> <br> <a target="_blank" class="mt-xs inline-block rounded font-medium text-primary transition-colors cursor-pointer hover-opacity-80 focus-outline-none focus-ring-2 focus-ring-primary-50" href="https://admin.foxycart.com"> admin.foxycart.com </a> </p> </div> </foxy-internal-summary-control> ${0} `),this.renderHeader(),i(null!==(t=this.taxes)&&void 0!==t?t:void 0),i(null===(r=this.data)||void 0===r?void 0:r._links["fx:tax_item_categories"].href),i(null===(n=this.data)||void 0===n?void 0:n._links.self.href),x.__itemDeliveryTypeOptions,"downloaded"===p?this.__renderDownloadDeliveryControls():"flat_rate"===p?[this.__renderFlatRateControls(),this.__renderCustomsValue()]:"shipped"===p?[this.__renderShippingControls(),this.__renderCustomsValue()]:"",x.__handlingFeeTypeOptions,"none"===u?"":o(s||(s=g` ${0} ${0} ${0} `),this.__renderHandlingFee(),u.includes("percent")?this.__renderHandlingFeePercentage():"","flat_percent_with_minimum"===u?this.__renderHandlingFeeMinimum():""),this.form.discount_name?this.__renderDiscountBuilder():"",i(null!==(d=this.emailTemplates)&&void 0!==d?d:void 0),a(m||(m=g`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" class="flex-shrink-0 text-primary" style="width: 1.25em"><path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z" clip-rule="evenodd"></path></svg>`)),super.renderBody())}__renderHandlingFee(){return o(d||(d=g` <foxy-internal-number-control layout="summary-item" infer="handling-fee" min="0"> </foxy-internal-number-control> `))}__renderHandlingFeePercentage(){return o(p||(p=g` <foxy-internal-number-control layout="summary-item" suffix="%" infer="handling-fee-percentage" min="0"> </foxy-internal-number-control> `))}__renderHandlingFeeMinimum(){return o(u||(u=g` <foxy-internal-number-control layout="summary-item" infer="handling-fee-minimum" min="0"> </foxy-internal-number-control> `))}__renderDownloadDeliveryControls(){return o(f||(f=g` <foxy-internal-number-control layout="summary-item" infer="max-downloads-per-customer" step="1" min="0"> </foxy-internal-number-control> <foxy-internal-number-control layout="summary-item" infer="max-downloads-time-period" step="1" min="0"> </foxy-internal-number-control> `))}__renderFlatRateControls(){return o(_||(_=g` <foxy-internal-number-control layout="summary-item" infer="shipping-flat-rate" min="0"> </foxy-internal-number-control> <foxy-internal-select-control layout="summary-item" infer="shipping-flat-rate-type" .options="${0}"> </foxy-internal-select-control> `),x.__shippingFlatRateTypeOptions)}__renderShippingControls(){return o(c||(c=g` <foxy-internal-number-control layout="summary-item" infer="default-weight" min="0"> </foxy-internal-number-control> <foxy-internal-select-control layout="summary-item" infer="default-weight-unit" .options="${0}"> </foxy-internal-select-control> <foxy-internal-select-control layout="summary-item" infer="default-length-unit" .options="${0}"> </foxy-internal-select-control> `),x.__defaultWeightUnitOptions,x.__defaultLengthUnitOptions)}__renderCustomsValue(){return o(y||(y=g` <foxy-internal-number-control layout="summary-item" infer="customs-value" min="0"> </foxy-internal-number-control> `))}__renderDiscountBuilder(){var e,t;const r={name:null!==(e=this.form.discount_name)&&void 0!==e?e:"",type:this.form.discount_type||"quantity_amount",details:null!==(t=this.form.discount_details)&&void 0!==t?t:""};return o(h||(h=g` <foxy-discount-builder infer="discount-builder" class="col-span-2" .parsedValue="${0}" @change="${0}"> </foxy-discount-builder> `),r,(e=>{const t=e.currentTarget;this.edit({discount_name:t.parsedValue.name,discount_type:t.parsedValue.type,discount_details:t.parsedValue.details})}))}}x.__shippingFlatRateTypeOptions=[{label:"option_per_order",value:"per_order"},{label:"option_per_shipment",value:"per_shipment"}],x.__defaultWeightUnitOptions=[{label:"option_lbs",value:"LBS"},{label:"option_kgs",value:"KGS"}],x.__defaultLengthUnitOptions=[{label:"option_in",value:"IN"},{label:"option_cm",value:"CM"}],x.__itemDeliveryTypeOptions=[{label:"option_notshipped",value:"notshipped"},{label:"option_downloaded",value:"downloaded"},{label:"option_flat_rate",value:"flat_rate"},{label:"option_shipped",value:"shipped"},{label:"option_pickup",value:"pickup"}],x.__handlingFeeTypeOptions=[{label:"option_none",value:"none"},{label:"option_flat_per_order",value:"flat_per_order"},{label:"option_flat_per_item",value:"flat_per_item"},{label:"option_flat_percent",value:"flat_percent"},{label:"option_flat_percent_with_minimum",value:"flat_percent_with_minimum"}],customElements.define("foxy-item-category-form",x);export{x as ItemCategoryForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-ebc72d69.js";import"./shared-51fd39fa.js";import"./shared-84761b5b.js";import"./shared-
|
|
1
|
+
import"./shared-ebc72d69.js";import"./shared-51fd39fa.js";import"./shared-84761b5b.js";import"./shared-44118acb.js";import"./shared-7889f2f2.js";import"./shared-b0d76785.js";import"./shared-2cb3cb3a.js";import{I as t}from"./shared-44fd89ce.js";import"./foxy-discount-detail-card.js";import"./foxy-coupon-detail-card.js";import"./foxy-item-category-card.js";import"./foxy-discount-builder.js";import"./foxy-item-option-card.js";import"./foxy-item-option-form.js";import"./foxy-nucleon-element.js";import"./foxy-attribute-card.js";import"./foxy-attribute-form.js";import{_ as r,B as e}from"./shared-d1195c27.js";import{a as o}from"./shared-5e0b71a2.js";import{i}from"./shared-9803aa7c.js";import{c as n}from"./shared-4e709717.js";import{h as s}from"./shared-dc73b9a5.js";import"./shared-8af5a4f2.js";import"./shared-018166d0.js";import"./shared-b16829cd.js";import"./shared-cf0ca582.js";import"./foxy-copy-to-clipboard.js";import"./shared-573d6e21.js";import"./shared-525c1936.js";import"./shared-4c4b87c2.js";import"./shared-9fcd36e5.js";import"./shared-57a98543.js";import"./shared-343d1fd7.js";import"./shared-17a61265.js";import"./shared-d1cb97c6.js";import"./foxy-form-dialog.js";import"./shared-27e2e59a.js";import"./shared-ffc84c84.js";import"./shared-67898669.js";import"./shared-cd96ff03.js";import"./shared-99940888.js";import"./shared-bab2ea2c.js";import"./shared-bb3c9e23.js";import"./shared-9cf15285.js";import"./shared-019348d7.js";import"./shared-1aff7995.js";import"./shared-fcdb896f.js";import"./shared-ec5b614e.js";import"./shared-eb7bf7ba.js";import"./shared-6de0e9f3.js";import"./shared-8b838d83.js";import"./foxy-collection-page.js";import"./foxy-spinner.js";import"./shared-a0c6a159.js";import"./foxy-swipe-actions.js";import"./foxy-pagination.js";import"./shared-c5326ab8.js";import"./shared-a585bfd3.js";import"./shared-28b0e29a.js";import"./shared-b04e9753.js";import"./shared-53caa399.js";import"./shared-68fdcf24.js";import"./shared-112e521b.js";import"./shared-c5cb7e8a.js";import"./shared-e77d8d01.js";import"./shared-651c44fa.js";import"./shared-d3a5cb85.js";import"./shared-b1fa0b61.js";import"./shared-22ba9566.js";import"./shared-1c4ddc9b.js";import"./shared-32440b17.js";import"./shared-79d0699c.js";import"./shared-43e2c3f6.js";import"./shared-51c4a6dd.js";import"./shared-31d8e958.js";import"./shared-238d397f.js";import"./shared-8438d4ca.js";import"./shared-01f85a69.js";import"./shared-b77e1a8a.js";let a,l=t=>t;class m extends(o(t,"item-form")){constructor(){super(...arguments),this.customerAddresses=null,this.itemCategories=null,this.localeCodes=null,this.coupons=null,this.store=null,this.__itemsLink=""}static get properties(){return r(r({},super.properties),{},{customerAddresses:{attribute:"customer-addresses"},itemCategories:{attribute:"item-categories"},localeCodes:{attribute:"locale-codes"},coupons:{},store:{}})}static get v8n(){return[({name:t})=>!!t||"name:v8n_required",({name:t})=>!!t&&t.length<=255||"name:v8n_too_long",({price:t})=>"number"==typeof t&&!isNaN(t)||"price:v8n_required",({price:t})=>"number"==typeof t&&t>=0||"price:v8n_negative",({quantity:t})=>"number"==typeof t&&t>=1||"quantity:v8n_less_than_one"]}get headerSubtitleOptions(){var t;return{context:(null===(t=this.data)||void 0===t?void 0:t.is_future_line_item)?"future_line_item":"regular"}}get readonlySelector(){const t=[super.readonlySelector.toString()];return this.href&&t.unshift("subscriptions"),new e(t.join(" ").trim())}get hiddenSelector(){var t,r;const o=[super.hiddenSelector.toString()];return(null===(r=null===(t=this.__storeLoader)||void 0===t?void 0:t.data)||void 0===r?void 0:r.features_multiship)||o.unshift("general:shipto"),this.data&&!this.data.subscription_frequency&&o.unshift("subscriptions"),this.form.discount_name||o.unshift("discount:discount-builder"),this.href||o.unshift("discount-details","coupon-details","item-options","attributes"),new e(o.join(" ").trim())}renderBody(){var t,r,e,o,m,d,c;return s(a||(a=l` ${0} <foxy-internal-summary-control infer="general"> <foxy-internal-text-control layout="summary-item" infer="name"></foxy-internal-text-control> <foxy-internal-number-control layout="summary-item" infer="price" min="0"> </foxy-internal-number-control> <foxy-internal-number-control layout="summary-item" infer="quantity" step="1" min="1"> </foxy-internal-number-control> <foxy-internal-resource-picker-control layout="summary-item" first="${0}" infer="item-category-uri" item="foxy-item-category-card"> </foxy-internal-resource-picker-control> <foxy-internal-text-control layout="summary-item" infer="code"></foxy-internal-text-control> <foxy-internal-text-control layout="summary-item" infer="parent-code"> </foxy-internal-text-control> <foxy-internal-text-control layout="summary-item" infer="shipto"> </foxy-internal-text-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="subscriptions"> <foxy-internal-frequency-control layout="summary-item" infer="subscription-frequency"> </foxy-internal-frequency-control> <foxy-internal-date-control layout="summary-item" infer="subscription-start-date"> </foxy-internal-date-control> <foxy-internal-date-control layout="summary-item" infer="subscription-end-date"> </foxy-internal-date-control> </foxy-internal-summary-control> <foxy-internal-async-list-control infer="item-options" first="${0}" form="foxy-item-option-form" item="foxy-item-option-card" alert .related="${0}" .itemProps="${0}"> </foxy-internal-async-list-control> <foxy-internal-summary-control infer="dimensions"> <foxy-internal-number-control layout="summary-item" infer="weight" min="0"> </foxy-internal-number-control> <foxy-internal-number-control layout="summary-item" infer="length" min="0"> </foxy-internal-number-control> <foxy-internal-number-control layout="summary-item" infer="width" min="0"> </foxy-internal-number-control> <foxy-internal-number-control layout="summary-item" infer="height" min="0"> </foxy-internal-number-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="meta"> <foxy-internal-text-control layout="summary-item" infer="url"></foxy-internal-text-control> <foxy-internal-text-control layout="summary-item" infer="image"> </foxy-internal-text-control> <foxy-internal-number-control layout="summary-item" infer="quantity-max" step="1" min="1"> </foxy-internal-number-control> <foxy-internal-number-control layout="summary-item" infer="quantity-min" step="1" min="1"> </foxy-internal-number-control> <foxy-internal-date-control layout="summary-item" infer="expires" format="unix"> </foxy-internal-date-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="discount"> <foxy-internal-text-control layout="summary-item" infer="discount-name"> </foxy-internal-text-control> <foxy-discount-builder infer="discount-builder" class="${0}" .parsedValue="${0}" @change="${0}"> </foxy-discount-builder> </foxy-internal-summary-control> <foxy-internal-async-list-control infer="discount-details" first="${0}" item="foxy-discount-detail-card"> </foxy-internal-async-list-control> <foxy-internal-async-list-control infer="coupon-details" first="${0}" item="foxy-coupon-detail-card"> </foxy-internal-async-list-control> <foxy-internal-async-list-control infer="attributes" first="${0}" item="foxy-attribute-card" form="foxy-attribute-form" alert> </foxy-internal-async-list-control> ${0} <foxy-nucleon class="hidden" infer="" href="${0}" id="storeLoader" @update="${0}"> </foxy-nucleon> `),this.renderHeader(),i(null!==(t=null==this?void 0:this.itemCategories)&&void 0!==t?t:void 0),i(null===(r=this.data)||void 0===r?void 0:r._links["fx:item_options"].href),this.__itemOptionRelatedUrls,{"locale-codes":null!==(e=this.localeCodes)&&void 0!==e?e:""},n({hidden:this.hiddenSelector.matches("discount-builder",!0)}),this.__discountBuilderParsedValue,this.__handleDiscountBuilderChange,i(null===(o=this.data)||void 0===o?void 0:o._links["fx:discount_details"].href),i(null===(m=this.data)||void 0===m?void 0:m._links["fx:coupon_details"].href),i(null===(d=this.data)||void 0===d?void 0:d._links["fx:attributes"].href),super.renderBody(),i(null!==(c=this.store)&&void 0!==c?c:void 0),(()=>this.requestUpdate()))}async _sendGet(){const t=await super._sendGet();if(t._links["fx:subscription"]){const r=t._links["fx:subscription"].href,e=(await super._fetch(r))._links["fx:transaction_template"].href,o=await super._fetch(e);return this.__itemsLink=o._links["fx:items"].href,t}if(t._links["fx:transaction"]){const r=await super._fetch(t._links["fx:transaction"].href);return this.__itemsLink=r._links["fx:items"].href,t}if(t._links["fx:cart"]){const r=await super._fetch(t._links["fx:cart"].href);return this.__itemsLink=r._links["fx:items"].href,t}return t}get __discountBuilderParsedValue(){return{details:this.form.discount_details,type:this.form.discount_type,name:this.form.discount_name}}get __itemOptionRelatedUrls(){var t,r;const e=null!==(r=null===(t=this.data)||void 0===t?void 0:t._links)&&void 0!==r?r:{},o=[];return e["fx:subscription"]&&o.push(e["fx:subscription"].href),e["fx:transaction"]&&o.push(e["fx:transaction"].href),e["fx:shipment"]&&o.push(e["fx:shipment"].href),e["fx:cart"]&&o.push(e["fx:cart"].href),this.__itemsLink&&o.push(this.__itemsLink),o}get __storeLoader(){return this.renderRoot.querySelector("#storeLoader")}__handleDiscountBuilderChange(t){const r=t.currentTarget.parsedValue;this.edit({discount_details:r.details,discount_type:r.type,discount_name:r.name})}}customElements.define("foxy-item-form",m);export{m as ItemForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-
|
|
1
|
+
import"./shared-44118acb.js";import"./shared-7889f2f2.js";import"./shared-b0d76785.js";import{I as r}from"./shared-44fd89ce.js";import{a as e}from"./shared-5e0b71a2.js";import{h as o}from"./shared-dc73b9a5.js";import"./shared-57a98543.js";import"./shared-d1195c27.js";import"./shared-343d1fd7.js";import"./shared-17a61265.js";import"./shared-c5326ab8.js";import"./shared-a585bfd3.js";import"./shared-b16829cd.js";import"./shared-018166d0.js";import"./shared-28b0e29a.js";import"./shared-b04e9753.js";import"./shared-53caa399.js";import"./shared-8af5a4f2.js";import"./shared-cf0ca582.js";import"./shared-9803aa7c.js";import"./shared-4e709717.js";import"./shared-22ba9566.js";import"./shared-1aff7995.js";import"./shared-019348d7.js";import"./shared-51c4a6dd.js";import"./shared-d1cb97c6.js";import"./shared-bb3c9e23.js";import"./shared-67898669.js";import"./shared-cd96ff03.js";import"./shared-9cf15285.js";import"./shared-fcdb896f.js";import"./shared-27e2e59a.js";import"./shared-ffc84c84.js";import"./foxy-copy-to-clipboard.js";import"./shared-573d6e21.js";import"./shared-525c1936.js";import"./shared-4c4b87c2.js";import"./shared-9fcd36e5.js";import"./foxy-spinner.js";import"./shared-bab2ea2c.js";let a,t=r=>r;class s extends(e(r,"item-option-form")){static get v8n(){return[({name:r})=>!!r||"name:v8n_required",({name:r})=>!!r&&r.length<=100||"name:v8n_too_long",({value:r})=>!!r||"value:v8n_required",({value:r})=>!!r&&r.length<=1024||"value:v8n_too_long"]}renderBody(){return o(a||(a=t` ${0} <foxy-internal-summary-control infer="general"> <foxy-internal-text-control layout="summary-item" infer="name"></foxy-internal-text-control> <foxy-internal-text-control layout="summary-item" infer="value"> </foxy-internal-text-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="mods"> <foxy-internal-number-control layout="summary-item" infer="price-mod"> </foxy-internal-number-control> <foxy-internal-number-control layout="summary-item" infer="weight-mod"> </foxy-internal-number-control> </foxy-internal-summary-control> ${0} `),this.renderHeader(),super.renderBody())}}customElements.define("foxy-item-option-form",s);export{s as ItemOptionForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./shared-8af5a4f2.js";import"./shared-
|
|
1
|
+
import"./shared-8af5a4f2.js";import"./shared-44118acb.js";import"./shared-80688cd4.js";import"./shared-7889f2f2.js";import"./shared-80a7903f.js";import"./shared-b0d76785.js";import{I as e}from"./shared-44fd89ce.js";import"./foxy-nucleon-element.js";import"./shared-57a98543.js";import{_ as t,B as r,aM as o,l as a}from"./shared-d1195c27.js";import{a as i}from"./shared-5e0b71a2.js";import{i as s}from"./shared-9803aa7c.js";import{c as n}from"./shared-4e709717.js";import{h as l}from"./shared-dc73b9a5.js";import{s as d}from"./shared-1aff7995.js";import{h as c}from"./shared-56ba2d28.js";import"./shared-018166d0.js";import"./shared-b16829cd.js";import"./shared-cf0ca582.js";import"./shared-573d6e21.js";import"./shared-525c1936.js";import"./shared-4c4b87c2.js";import"./shared-c5326ab8.js";import"./shared-a585bfd3.js";import"./shared-28b0e29a.js";import"./shared-b04e9753.js";import"./shared-53caa399.js";import"./shared-c5cb7e8a.js";import"./shared-eb7bf7ba.js";import"./shared-6de0e9f3.js";import"./shared-8b838d83.js";import"./shared-e77d8d01.js";import"./shared-651c44fa.js";import"./shared-d3a5cb85.js";import"./shared-b1fa0b61.js";import"./shared-22ba9566.js";import"./shared-51c4a6dd.js";import"./shared-d1cb97c6.js";import"./shared-17a61265.js";import"./shared-bb3c9e23.js";import"./shared-67898669.js";import"./shared-343d1fd7.js";import"./shared-cd96ff03.js";import"./shared-9cf15285.js";import"./shared-019348d7.js";import"./shared-fcdb896f.js";import"./shared-27e2e59a.js";import"./shared-ffc84c84.js";import"./foxy-copy-to-clipboard.js";import"./shared-9fcd36e5.js";import"./foxy-spinner.js";import"./shared-bab2ea2c.js";let p,h,f,u,m,v,b,y,j,_,g,$,x,L,w,F,P=e=>e;const S=i(e,"payments-api-fraud-protection-form");class I extends S{constructor(){super(...arguments),this.getImageSrc=null,this.__availableFraudProtectionsLoaderId="availableFraudProtections"}static get defaultImageSrc(){return"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 44 44'%3E%3Cpath fill='%23fff' d='M0 20.73v-9.9L10.83 0h9.9L0 20.73ZM0 0h9.41L0 9.41V0Zm0 22.14L22.14 0h9.9l-9.43 9.44-.61-.27-10.5 4.66v7-.29L0 32.04v-9.9Zm11.54-.23L0 33.46v9.9l14.14-14.14a15 15 0 0 1-2.6-7.3Zm3.2 8.12L.77 44h9.9l9.7-9.7a13.75 13.75 0 0 1-5.63-4.27Zm6.67 4.64L12.08 44h9.9L44 21.98v-9.9L32.16 23.92C31.01 29.15 27.05 33.6 22 34.83l-.59-.16Zm11.02-12.43L44 10.67V.77L31.42 13.35l1.08.48v7a13 13 0 0 1-.07 1.4Zm-1.99-9.32L43.35 0h-9.9l-9.87 9.87 6.86 3.05ZM23.4 44 44 23.4v9.9L33.3 44h-9.9Zm11.31 0L44 34.71V44h-9.29Z'/%3E%3Cpath fill='%23fff' d='M30.17 21.99H22V11.72l-8.17 3.63V22H22v10.42c4.34-1.34 7.55-5.63 8.17-10.43Z'/%3E%3C/svg%3E"}static get properties(){return t(t({},super.properties),{},{getImageSrc:{attribute:!1}})}static get v8n(){return[({description:e})=>!e||e.length<=100||"description:v8n_too_long",({type:e})=>!!e||"type:v8n_required",({score_threshold_reject:e})=>"number"!=typeof e||(e<=100&&e>=0||"score-threshold-reject:v8n_out_of_range"),e=>{var t,r,o,a;const i=null!==(o=null===(r=null===(t=e.helper)||void 0===t?void 0:t.json)||void 0===r?void 0:r.blocks)&&void 0!==o?o:[];let s;try{s=JSON.parse(null!==(a=e.json)&&void 0!==a?a:"{}")}catch(e){s={}}for(const e of i)for(const t of e.fields)if("optional"in t&&!t.optional){const r=[e.parent_id,e.id,t.id].filter((e=>!!e));if(!c(s,r)&&"checkbox"!==t.type)return"json:v8n_invalid"}return!0}]}get hiddenSelector(){return new r(`header:copy-json ${super.hiddenSelector}`.trimEnd())}get headerTitleOptions(){var e;return t(t({},this.data),{},{context:null!==(e=this.form.type)&&void 0!==e?e:"new"})}get headerSubtitleOptions(){return{id:this.headerCopyIdValue}}renderHeader(...e){var t;return l(p||(p=P` <div> ${0} ${0} </div> `),super.renderHeader(...e),(null===(t=this.data)||void 0===t?void 0:t.type)||!this.form.type?l(h||(h=P``)):l(f||(f=P` <vaadin-button data-testid="select-another-button" theme="tertiary-inline" @click="${0}"> <foxy-i18n infer="" key="select_another_button_label"></foxy-i18n> </vaadin-button> `),(()=>this.undo())))}renderBody(){const e=l(u||(u=P` <foxy-nucleon class="hidden" infer="" href="${0}" id="${0}" @update="${0}"> </foxy-nucleon> `),s(this.__availableFraudProtectionsHref),this.__availableFraudProtectionsLoaderId,(()=>this.requestUpdate()));return l(m||(m=P`${0}${0}${0}`),this.renderHeader(),this.form.type?this.__renderFraudProtectionConfig():this.__renderFraudProtectionSelector(),e)}get __availableFraudProtectionsLoader(){return this.renderRoot.querySelector(`#${this.__availableFraudProtectionsLoaderId}`)}get __availableFraudProtectionsHref(){try{const e=o(/\/payment_presets\/(.+)\//,{presetId:1}),t=new URL(this.href||this.parent).pathname,r=e.exec(t).groups.presetId;return new URL(`/payment_presets/${r}/available_fraud_protections`,this.href||this.parent).toString()}catch(e){}}get __availableFraudProtections(){var e,t;return null===(t=null===(e=this.__availableFraudProtectionsLoader)||void 0===e?void 0:e.data)||void 0===t?void 0:t.values}__renderFraudProtectionSelector(){var e;const t=this.__availableFraudProtectionsLoader;return l(v||(v=P` ${0} `),(null==t?void 0:t.data)?l(b||(b=P` <div class="grid grid-cols-2 gap-m" data-testid="select-protection-list"> ${0} </div> `),Object.entries(null!==(e=this.__availableFraudProtections)&&void 0!==e?e:{}).map((([e,t])=>this.__renderFraudProtectionButton({type:e,helper:t})))):l(y||(y=P` <foxy-spinner infer="list-spinner" state="${0}"> </foxy-spinner> `),(null==t?void 0:t.in("fail"))?"error":"busy"))}__renderFraudProtectionButton({type:e,helper:t}){var r,o;const a=I.defaultImageSrc,i=null!==(o=null===(r=this.getImageSrc)||void 0===r?void 0:r.call(this,e))&&void 0!==o?o:a,d=e=>e.currentTarget.src=a;return l(j||(j=P` <button class="${0}" ?disabled="${0}" title="${0}" @click="${0}"> <img class="absolute top-0 left-0 w-1-2 h-full object-cover bg-center filter saturate-200 blur-3xl" style="transform:translate3d(0,0,0)" src="${0}" alt="" ?hidden="${0}" @error="${0}"> <figure class="relative flex flex-col gap-m"> <img class="${0}" src="${0}" alt="" @error="${0}"> <figcaption class="${0}"> <div class="font-medium">${0}​</div> <div class="text-xs ${0}">${0}</div> </figcaption> </figure> </button> `),n({"relative w-full block text-left p-s rounded bg-contrast-5 overflow-hidden":!0,"focus-outline-none focus-ring-2 focus-ring-primary-50":!0,"transition-colors hover-bg-contrast-10":!t.conflict,"cursor-default":!!t.conflict}),!!t.conflict,s(t.conflict?this.t("conflict_message"):void 0),(()=>this.edit({type:e,helper:t})),i,!!t.conflict,d,n({"h-m w-m object-cover rounded-full bg-contrast-20 flex-shrink-0 shadow-xs":!0,"filter grayscale":!!t.conflict}),i,d,n({"min-w-0 flex-1 truncate leading-s":!0,"text-disabled":!!t.conflict}),t.name,t.conflict?"":"text-secondary",e)}__renderFraudProtectionConfig(){var e,t,r;return l(_||(_=P` <foxy-internal-summary-control infer="general"> <foxy-internal-text-control layout="summary-item" infer="description"> </foxy-internal-text-control> </foxy-internal-summary-control> <foxy-internal-summary-control infer="setup"> ${0} ${0} </foxy-internal-summary-control> ${0} `),(null===(e=this.form.helper)||void 0===e?void 0:e.uses_rejection_threshold)?l(g||(g=P` <foxy-internal-number-control layout="summary-item" infer="score-threshold-reject"> </foxy-internal-number-control> `)):"",null===(r=null===(t=this.form.helper)||void 0===t?void 0:t.json)||void 0===r?void 0:r.blocks.map((e=>this.__renderBlock(e))),super.renderBody())}__renderBlock(e){return l($||($=P`${0}`),e.fields.map((t=>{var r,o,i;const s=()=>{var r,o;let i;try{i=JSON.parse(null!==(r=this.form.json)&&void 0!==r?r:"")}catch(e){i={}}const s=[e.parent_id,e.id,t.id].filter((e=>!!e));return null!==(o=a(i,s))&&void 0!==o?o:i.default_value},n=r=>{var o;let a;try{a=JSON.parse(null!==(o=this.form.json)&&void 0!==o?o:"")}catch(e){a={}}const i=[e.parent_id,e.id,t.id].filter((e=>!!e));this.edit({json:JSON.stringify(d(a,i,r))})},c=t.options,p=["json",...[e.parent_id,e.id,t.id].filter((e=>!!e))].join("-").replace(/_/g,"-");return l(x||(x=P` ${0} `),"checkbox"===t.type?l(L||(L=P` <foxy-internal-switch-control helper-text="${0}" label="${0}" infer="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-switch-control> `),null!==(r=t.description)&&void 0!==r?r:"",t.name,p,s,n):"select"===t.type?l(w||(w=P` <foxy-internal-select-control helper-text="${0}" placeholder="${0}" layout="summary-item" label="${0}" infer="${0}" .options="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-select-control> `),null!==(o=t.description)&&void 0!==o?o:"",this.t("default_additional_field_placeholder"),t.name,p,c.map((({name:e,value:t})=>({label:e,value:t}))),s,n):l(F||(F=P` <foxy-internal-text-control helper-text="${0}" placeholder="${0}" layout="summary-item" label="${0}" infer="${0}" .getValue="${0}" .setValue="${0}"> </foxy-internal-text-control> `),null!==(i=t.description)&&void 0!==i?i:"",t.default_value||this.t("default_additional_field_placeholder"),t.name,p,s,n))})))}}customElements.define("foxy-payments-api-fraud-protection-form",I);export{I as PaymentsApiFraudProtectionForm};
|