FileMaster
Search
Toggle Dark Mode
Home
/
.
/
wp-content
/
plugins
/
surecart
/
dist
/
components
/
surecart
Edit File: p-562fbfe1.entry.js
import{r as i,h as o,F as t,a as r}from"./p-e97fde0a.js";import{g as s}from"./p-2f193d80.js";import{u as e,s as n,o as a}from"./p-53e7f7d7.js";import{g as l}from"./p-93127aa7.js";import{u as c,a as d}from"./p-75e76c8c.js";import{c as u}from"./p-1f60f497.js";import{i as p,a as v}from"./p-9dbc54d6.js";import"./p-2805073a.js";import"./p-401e165e.js";import"./p-03631502.js";import"./p-d3366af3.js";import"./p-830ab1a3.js";import"./p-ec182234.js";import"./p-3f6362a4.js";import"./p-95325ec5.js";import"./p-4df6e0c5.js";import"./p-dd3464cd.js";const h="sc-checkout-product-price-variant-selector{display:block}.sc-form-label{font-family:var(--sc-font-sans);font-size:var(--sc-font-size-medium);font-weight:var(--sc-font-weight-normal);margin-bottom:var(--sc-input-label-margin);display:inline-block;color:var(--sc-input-label-color);font-weight:var(--sc-input-label-font-weight);text-transform:var(--sc-input-label-text-transform, none);letter-spacing:var(--sc-input-label-letter-spacing, 0)}.sc-form-select{--sc-form-select-bg-img:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23374151' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");display:block;width:100%;padding:0 var(--sc-input-spacing-medium);height:calc(var(--sc-input-height-medium) - var(--sc-input-border-width) * 2);font-size:var(--sc-input-font-size-medium);font-family:var(--sc-input-font-family);font-weight:var(--sc-input-font-weight);color:var(--sc-color-gray-700);box-sizing:border-box;background-color:var(--sc-input-background-color);background-image:var(--sc-form-select-bg-img), var(--sc-form-select-bg-icon, none);background-repeat:no-repeat;background-position:right calc(var(--sc-input-spacing-medium) - 2px) center;background-size:16px 12px;border:var(--sc-input-border-width) solid var(--sc-input-border-color);border-radius:var(--sc-border-radius-medium);box-shadow:var(--sc-input-box-shadow);transition:var(--sc-input-transition, var(--sc-transition-medium)) color, var(--sc-input-transition, var(--sc-transition-medium)) border, var(--sc-input-transition, var(--sc-transition-medium)) box-shadow;appearance:none}.sc-form-select:hover{color:var(--sc-input-color-hover);background-color:var(--sc-input-background-color-hover);border-color:var(--sc-input-border-color-hover);z-index:7}.sc-form-select:focus{color:var(--sc-input-color-focus);background-color:var(--sc-input-background-color-focus) !important;border-color:var(--sc-input-border-color-focus) !important;outline:0;box-shadow:0 0 0 var(--sc-focus-ring-width) var(--sc-focus-ring-color-primary)}.sc-form-select[multiple],.sc-form-select[size]:not([size=\"1\"]){padding-right:var(--sc-input-spacing-medium);background-image:none}.sc-form-select:disabled{color:var(--sc-input-color-disabled);background-color:var(--sc-input-background-color-disabled);border-color:var(--sc-input-border-color-disabled)}.sc-form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--sc-input-color)}.form-select-sm{padding-top:var(--sc-input-spacing-small);padding-bottom:var(--sc-input-spacing-small);padding-left:var(--sc-input-spacing-small);font-size:var(--sc-input-font-size-small);border-radius:var(--sc-border-radius-small)}.form-select-lg{padding-top:var(--sc-input-spacing-large);padding-bottom:var(--sc-input-spacing-large);padding-left:var(--sc-input-spacing-large);font-size:var(--sc-input-font-size-large);border-radius:var(--sc-border-radius-large)}.sc-checkout-product-price-variant-selector{position:relative}.sc-checkout-product-price-variant-selector>*:not(:last-child){display:block;margin-bottom:var(--sc-form-row-spacing, 0.75em)}.sc-checkout-product-price-variant-selector__pills-wrapper{display:flex;flex-wrap:wrap;gap:var(--sc-spacing-x-small)}.sc-checkout-product-price-variant-selector__hidden-input{position:absolute !important;top:0 !important;left:0 !important;opacity:0 !important;padding:0px !important;margin:0px !important;pointer-events:none !important;width:0 !important}";const m=h;const f=class{constructor(o){i(this,o);this.product=undefined;this.label=undefined;this.selectorTitle=undefined;this.selectedVariant=undefined;this.selectedPrice=undefined;this.option1=undefined;this.option2=undefined;this.option3=undefined}handleOptionChange(){var i,o;this.selectedVariant=l({variants:(o=(i=this.product)===null||i===void 0?void 0:i.variants)===null||o===void 0?void 0:o.data,values:{...this.option1?{option_1:this.option1}:{},...this.option2?{option_2:this.option2}:{},...this.option3?{option_3:this.option3}:{}}})}isSelectedVariantOutOfStock(){var i,o;return((i=this.product)===null||i===void 0?void 0:i.stock_enabled)&&this.hasVariants()&&!((o=this.product)===null||o===void 0?void 0:o.allow_out_of_stock_purchases)&&this.selectedVariant.available_stock<1}hasRequiredSelectedVariant(){var i;if(!this.hasVariants()){return true}return(i=this.selectedVariant)===null||i===void 0?void 0:i.id}async reportValidity(){this.input.setCustomValidity("");if(!this.hasVariants()){return this.input.reportValidity()}if(!this.hasRequiredSelectedVariant()){this.input.setCustomValidity(wp.i18n.__("Please choose an available option.","surecart"));return this.input.reportValidity()}if(this.isSelectedVariantOutOfStock()){this.input.setCustomValidity(wp.i18n.__("This selection is not available.","surecart"));return this.input.reportValidity()}return this.input.reportValidity()}getSelectedPrice(){var i,o,t,r,s;if(((t=(o=(i=this.product)===null||i===void 0?void 0:i.prices)===null||o===void 0?void 0:o.data)===null||t===void 0?void 0:t.length)===1){return(s=(r=this.product)===null||r===void 0?void 0:r.prices)===null||s===void 0?void 0:s.data[0]}return this.selectedPrice}async updateLineItems(){var i,o,t,r,s;const a=this.getSelectedPrice();if(!(a===null||a===void 0?void 0:a.id))return;const l=this.lineItem();if(((i=l===null||l===void 0?void 0:l.price)===null||i===void 0?void 0:i.id)===(a===null||a===void 0?void 0:a.id)&&((o=l===null||l===void 0?void 0:l.variant)===null||o===void 0?void 0:o.id)===((t=this.selectedVariant)===null||t===void 0?void 0:t.id))return;if(!this.hasRequiredSelectedVariant())return;if(this.isSelectedVariantOutOfStock())return;try{e("FETCH");if(l===null||l===void 0?void 0:l.id){n.checkout=await c({id:l===null||l===void 0?void 0:l.id,data:{variant:(r=this.selectedVariant)===null||r===void 0?void 0:r.id,price:a===null||a===void 0?void 0:a.id,quantity:1}})}else{n.checkout=await d({checkout:n.checkout,data:{variant:(s=this.selectedVariant)===null||s===void 0?void 0:s.id,price:a===null||a===void 0?void 0:a.id,quantity:1}})}e("RESOLVE")}catch(i){console.error(i);u(i);e("REJECT")}}componentWillLoad(){this.removeListener=a("checkout",(()=>{var i,o,t;const r=this.lineItem();this.selectedVariant=r===null||r===void 0?void 0:r.variant;this.selectedPrice=r===null||r===void 0?void 0:r.price;this.option1=(i=r===null||r===void 0?void 0:r.variant)===null||i===void 0?void 0:i.option_1;this.option2=(o=r===null||r===void 0?void 0:r.variant)===null||o===void 0?void 0:o.option_2;this.option3=(t=r===null||r===void 0?void 0:r.variant)===null||t===void 0?void 0:t.option_3}))}disconnectedCallback(){this.removeListener()}lineItem(){var i;return s((i=this.product)===null||i===void 0?void 0:i.id)}hasVariants(){var i,o,t;return((t=(o=(i=this.product)===null||i===void 0?void 0:i.variants)===null||o===void 0?void 0:o.data)===null||t===void 0?void 0:t.length)>0}isProductInCheckout(){var i,o;return(((o=(i=n.checkout)===null||i===void 0?void 0:i.line_items)===null||o===void 0?void 0:o.data)||[]).some((i=>{var o,t,r;return((t=(o=i.price)===null||o===void 0?void 0:o.product)===null||t===void 0?void 0:t.id)===((r=this.product)===null||r===void 0?void 0:r.id)}))}renderDropdown({name:i,values:r,index:s}){if(!this.isProductInCheckout()){return null}return o("div",{class:"sc-select-option__wrapper"},o("label",{class:"sc-form-label"},i),o("select",{class:"sc-form-select",onChange:i=>this[`option${s+1}`]=i.target.value},r.map((i=>{const r=p.apply(void 0,[s+1,i,{...this.option1?{option_1:this.option1}:{},...this.option2?{option_2:this.option2}:{},...this.option3?{option_3:this.option3}:{}},this.product])||v.apply(void 0,[s+1,i,{...this.option1?{option_1:this.option1}:{},...this.option2?{option_2:this.option2}:{},...this.option3?{option_3:this.option3}:{}},this.product]);return o("option",{value:i,selected:this[`option${s+1}`]===i},i," ",r&&o(t,null," ",wp.i18n.__("(unavailable)","surecart")))}))))}renderPills({name:i,values:r,index:s}){if(!this.isProductInCheckout()){return null}return o("sc-form-control",{label:i},o("div",{class:"sc-checkout-product-price-variant-selector__pills-wrapper"},(r||[]).map((r=>{const e=[s+1,r,{...this.option1?{option_1:this.option1}:{},...this.option2?{option_2:this.option2}:{},...this.option3?{option_3:this.option3}:{}},this.product];const n=p.apply(void 0,e)||v.apply(void 0,e);return o("sc-pill-option",{isUnavailable:n,isSelected:this[`option${s+1}`]===r,onClick:()=>this[`option${s+1}`]=r},o("span",{"aria-hidden":"true"},r),o("sc-visually-hidden",null,wp.i18n.sprintf(wp.i18n.__("Select %s: %s","surecart"),i,r),n&&o(t,null," ",wp.i18n.__("(option unavailable)","surecart"))))}))))}render(){var i,t,r,s,e;return o("sc-form-control",{key:"461b978789aa5d4cbedf2a73e751690fce87a686",class:"sc-checkout-product-price-variant-selector",label:this.selectorTitle},(this.product.variant_options.data||[]).map((({name:i,values:o,display_type:t},r)=>{if(t==="dropdown"){return this.renderDropdown({name:i,values:o,index:r})}return this.renderPills({name:i,values:o,index:r})})),((r=(t=(i=this.product)===null||i===void 0?void 0:i.prices)===null||t===void 0?void 0:t.data)===null||r===void 0?void 0:r.length)>1&&o("sc-form-control",{key:"710dacae832e154690c7a29c0badb450a0b4552a",label:!!((s=this.product.variant_options.data)===null||s===void 0?void 0:s.length)?this.label:null},o("sc-choices",{key:"bae8821a607043516f2c572f51689e0dad21aa37"},(this.product.prices.data||[]).sort(((i,o)=>(i===null||i===void 0?void 0:i.position)-(o===null||o===void 0?void 0:o.position))).map((i=>{var t,r,s;return o("sc-price-choice-container",{required:true,price:i,label:(i===null||i===void 0?void 0:i.name)||((t=this.product)===null||t===void 0?void 0:t.name),checked:((s=(r=this.lineItem())===null||r===void 0?void 0:r.price)===null||s===void 0?void 0:s.id)===(i===null||i===void 0?void 0:i.id),onScChange:o=>{if(o.target.checked){this.selectedPrice=i}}})})))),o("input",{key:"2ce25324f8defdd723d576e21d87d2ecefbfafa1",class:"sc-checkout-product-price-variant-selector__hidden-input",ref:i=>this.input=i,value:(e=this.selectedVariant)===null||e===void 0?void 0:e.id}))}get el(){return r(this)}static get watchers(){return{option1:["handleOptionChange"],option2:["handleOptionChange"],option3:["handleOptionChange"],selectedVariant:["updateLineItems"],selectedPrice:["updateLineItems"]}}};f.style=m;export{f as sc_checkout_product_price_variant_selector}; //# sourceMappingURL=p-562fbfe1.entry.js.map
Save
Back