(async function(){function debounce(delay=500,callback){let timer;return function(){clearTimeout(timer),timer=null,timer=setTimeout(()=>{callback()},delay)}}let isProPage=!1,isCollPage=!1,productId=0,insertEls=[],collVariants=[],observer=null,oldCollElsCount=0,proPosition=[],locale,customStyle="",customPosition=null,customFeature=null,collectionAccess=!1;const themeId=Shopify.theme.id;let executeDelay=0,firstExecute=!1,insertType="afterend",emailStyle=null;const isMobile=/(iPhone|iPad|iPod|iOS|Android|SymbianOS|Windows Phone|webOS|BlackBerry)/i.test(navigator.userAgent);typeof ShopifyAnalytics>"u"&&await new Promise((res,rej)=>{setTimeout(()=>{res()},1500)}),typeof email_custom_info<"u"&&(email_custom_info.css_code&&(customStyle+=email_custom_info.css_code),email_custom_info.selector&&(customPosition={selector:email_custom_info.selector,position:email_custom_info.position})),window.ShopifyAnalytics&&ShopifyAnalytics.meta.product?productId=ShopifyAnalytics.meta.product.id:Shopify.designMode&&(q("#em_product_id")||await new Promise((res,rej)=>{setTimeout(()=>{res()},1e3)}),productId=JSON.parse(q("#em_product_id").textContent));let shopId=0;qa("#shopify-features")?shopId=JSON.parse(qa("#shopify-features")[0].outerText).shopId:window.ShopifyAnalytics&&ShopifyAnalytics.lib&&ShopifyAnalytics.lib.config&&(shopId=ShopifyAnalytics.lib.config.Trekkie.defaultAttributes.shopId),locale=Shopify.locale;let requests={getProsVariantsData(p){const url=baseUrl+"api/v1/customer/getVariantBtStatus";let params={shopId};return Object.assign(params,p),request(url,params)},getCollBtnStyle(){const url=baseUrl+"api/v1/getCollectionButtonStyle";return request(url,{shopId,shop_language:locale})}};const domain=Shopify.shop,debug=isDebug,baseUrl=apiBaseUrl;let customerInfo={},showVariants=[];getCustomerInfo();const btnAndPopupData=initBtnAndPopupData(),{buttonStyleUrl,collButtonStyleUrl,popupStyleUrl,integrationUrl,floatBtnPosition,buttonData,generalData,formAction}=btnAndPopupData;let{iti,popupData,inlineBtnHeight,inlineBtnWidth,btnRadius,btnFontSize,btnFontWeight,insertEl,selectedType,selBtnStatus,btnStyleSwitch,popupStyleSwitch,inteStatus}=btnAndPopupData;const initRes=await init();importStyles(),typeof initRes=="string"?console.log("Init info: ",initRes):console.log("App is on!");const{MAX_SEARCH_TIMES}=initRes;let{times}=initRes;const elements=initElement();let{inlineBtnElement,floatBtnElement,emailFrameElement,inlineEmailDiv,floatEmailDiv,invalidTip,successFrame,variantSelector,closeBox,submitBtn,emailInput,nameInput,smsInput,mailingCheckbox,soldOutBtn,exactForm}=elements;const{trueForms}=elements,productInfo=initProductInfo();let{currentVariant,available,selectVariantId,productTitle,currentVariantOption,addOptionsStatus,initUrl,listenVariantFlag}=productInfo,{variantData,unVariantOptions}=productInfo;const payment_button_class=".shopify-payment-button";debug&&console.log("Init data finished"),execute(),getUserConfig();async function init(){const{ShopifyAnalytics:ShopifyAnalytics2}=window,pageType=ShopifyAnalytics2&&ShopifyAnalytics2.meta&&ShopifyAnalytics2.meta.page&&ShopifyAnalytics2.meta.page.pageType;let proParams={},prosEle=[];if(isProPage=pageType==="product"||q("#sealapps-bis-widget"),isCollPage=pageType==="collection"||collectionAccess,addCustomModify(),executeDelay!==0&&await new Promise((res,rej)=>{setTimeout(()=>{res()},executeDelay)}),isProPage)productId&&(proParams.productIds=[productId],proParams.type=2);else if(isCollPage&&(await getButtonStyle(shopId,collButtonStyleUrl),prosEle=await getProsEle(),debug&&console.log(prosEle),prosEle!==null)){oldCollElsCount=prosEle.length;const lists=getProductsANodes(prosEle);prosEle=lists.prosEle,proParams.handles=getProsHandles(lists.aNodeList),proParams.type=1}if(!isCollPage&&!isProPage)return"not collectionPage or productPage";if(changeStatus({baseUrl}),Object.keys(proParams).length!==0){const res=await requests.getProsVariantsData(proParams);if(debug&&console.log("res",res),!(shopId==48441458840&&proParams.type===1)){if(res.btStatus!==1)return"collectionPage btn disable"}const{apiCode,products}=res;isProPage?apiCode===200&&products&&(showVariants=products[0].variants.map(variant=>variant.variantRid)):isCollPage&&products.forEach((i,inx)=>{i.productStatus===1&&(insertEls.push(prosEle[inx]),proPosition.push(inx),collVariants.push({proId:i.productId,productName:i.productName,variants:i.variants}))}),debug&&console.log("Get Product Status Success")}if((showVariants.length||collVariants.length)==0)return isCollPage&&checkVariantChange(),"All btn of variants are hidden.";const nodes=qa(`#product-restore-email-flag, #product-restore-email-float,.product-restore-email`);return nodes.length!==0?isCollPage||nodes.forEach(i=>i.remove()):document.body.insertAdjacentHTML("beforeend",` `),{debug,baseUrl,MAX_SEARCH_TIMES:50,times:0}}async function execute(){isProPage?searchParentEl().then(res=>{debug&&console.log("SearchParentEl finished");const{code}=res;if(code===501){console.log("Search Node Failed"),handleSearchNodeFailed().then(searchRes=>{searchRes.code===200&&(handleBasicData(),getAllStyle())});return}code===200&&(debug&&console.log("SearchParentEl success"),handleBasicData(),getAllStyle())}):isCollPage&&getAllStyle()}async function getProsEle(){const themeStoreId=Shopify.theme.theme_store_id;let selector="";if(buttonData.btn_insert_el)selector=buttonData.btn_insert_el;else switch(themeStoreId){case 887:case 1567:case 1356:case 1363:case 1368:case 1431:case 1434:case 1500:case 1499:case 1399:{selector=".card-information .price";break}case 829:{selector=".card__info>.card__price";break}case 775:{selector=".product-card__info>.product-card__price";break}case 796:{selector=".product-card>.price";break}case 730:{selector=".grid__item .grid-product__price-wrap";break}case 679:{selector=".grid-item .product-item--price";break}case 380:{selector=".grid__item .grid-link__meta";break}case 578:{selector=".grid__item .product__prices";break}case 857:{selector=".grid__item .grid-product__price";break}case 765:{selector=".product--details";break}case 849:{selector=".product-block__info";break}case 459:{selector=".product-info-inner .price";break}default:if(q("body.warehouse--v1"))selector=".product-item .product-item__price-list";else{switch(themeId){case 129555497130:selector=".collection-grid-item__meta";break;case 139843010841:selector=".product-item-meta";break;case 117705834682:selector=".grid-view-item";break;case 3639214169:{selector=".product-index .product-info";break}}shopId===3639214169&&themeId===139935711534?selector=".product-index .product-info":shopId===61058973863&&themeId===130619900071?selector=".product-block .product-info":shopId===71594410265&&themeId===143828386073?selector=".product-item__info-inner":shopId===68210557218&&themeId===142585594146?selector=".card-information .price":shopId===25981404&&themeId===132703387810||shopId===66663121193&&themeId===139562189097?selector=".product-item-meta":shopId===2797404227&&themeId===122716946499?selector=".price.price--sold-out":shopId===73514025266&&themeId===146007327026?selector=".product-item__price-list.price-list":shopId===25981404&&themeId===132868636834&&(selector=".product-item__cta.button.button--secondary.hidden-phone")}}if(shopId===72470462767&&themeStoreId===1399&&(selector=".card-information__button",insertType="afterbegin"),selector){const nodes=Array.from(qa(selector));return nodes.length==0&&await new Promise((res,rej)=>{setTimeout(()=>{res()},1500)}),nodes.filter(i=>i.offsetParent!==null&&!i.getAttribute("bis-inserted"))}else return null}function getProsHandles(nodes){let productHandleStrings="",handleArr=[];if(nodes.length){let tarEle="A";for(let i=0;iv.available===!1),currentVariant2=JSON.parse(q("#em_product_selected_or_first_available_variant").textContent);Object.assign(info,{variantData:variantData2,currentVariant:currentVariant2,available:currentVariant2.available,selectVariantId:currentVariant2.id,hasAvailableV,listenVariantFlag:!0})}return info}function initBtnAndPopupData(){return{btnRadius:"",btnFontSize:"",inlineBtnWidth:"",inlineBtnHeight:"",btnFontWeight:"initial",popupStyleUrl:"getPopupStyle",buttonStyleUrl:"getButtonStyle",collButtonStyleUrl:"getCollectionButtonStyle",integrationUrl:"integrate/getIntegration",floatBtnPosition:"float-btn-right",buttonData:{btn_value:"",btn_color:"",font_color:"",btn_margin_top:"",btn_margin_bottom:"",collection_btn_value:"",collection_is_show:0,inline_status:0,float_btn_value:"",float_btn_color:"",float_font_color:"",btn_insert_customized:0,btn_insert_el:"",btn_insert_type:"",offset:0,float_status:0,is_branding_removed:0},generalData:{btn_display_all:0,btn_font_family:"inherit",btn_font_size:"14",btn_font_weight:"inherit",btn_hover_animation:0,btn_hover_color:"#333333",btn_hover_font_color:"#ffffff",btn_margin_top:"0",btn_margin_bottom:"0",btn_border_radius:"0",btn_border_color:"transparent",btn_customize_css:""},popupData:null,frameBtnColor:"#333333",frameBtnFontColor:"#ffffff",insertType:"afterend",insertEl:null,selectedType:{},iti:null,selBtnStatus:0,btnStyleSwitch:0,popupStyleSwitch:0,inteStatus:0,formAction:"https://"+document.domain+"/cart/add"}}function initElement(){return{inlineBtnElement:null,floatBtnElement:null,emailFrameElement:null,inlineEmailDiv:null,floatEmailDiv:null,invalidTip:null,successFrame:null,variantSelector:null,closeBox:null,submitBtn:null,soldOutBtn:null,emailInput:null,nameInput:null,smsInput:null,mailingCheckbox:null,trueForms:[],exactForm:null}}function getBtnStyle(btn){if(btn.tagName=="DIV"&&(btn=btn.querySelector("button")),!btn)return;const btnStyle=window.getComputedStyle(btn,null);btnStyle.width=="auto"||!btnStyle.width?inlineBtnWidth="":btnStyle.width.indexOf("px")!==-1&&parseFloat(btnStyle.width)>120&&(inlineBtnWidth=btnStyle.width),btnStyle.height=="auto"||!btnStyle.height?inlineBtnHeight="":inlineBtnHeight=btnStyle.height,btnRadius=btnStyle.borderRadius,btnFontSize=btnStyle.fontSize,btnFontWeight=btnStyle.fontWeight}function getSoldOutBtn(trueForm){const btnArr=trueForm.querySelectorAll("button"),iptArr=[...trueForm.querySelectorAll("input[type='submit']"),...trueForm.querySelectorAll("input[type='button']")],allArr=[...btnArr,...iptArr];if(allArr.length){for(let i=0;i{const forms=qa("form");for(let i=0;i=MAX_SEARCH_TIMES?resolve({code:501,msg:"Search el failed"}):(times++,setTimeout(()=>{searchParentEl().then(res=>resolve(res))},50))})}function getParentWithoutForm(){const btnElements=qa(`.action-button, [class*=add-to-cart], [class*=add_to_cart], [id*=add_to_card], [id*=add-to-card], [data-add-to-cart], .sold-out, #out-of-stock-gl,.option-selectors`);if(btnElements.length)for(let i=0;i64)return{type:"afterend",ele:btnElements[i]}}const parents=qa(".action-button, .tt-swatches-container.tt-swatches-container-js");if(parents.length)for(let i=0;i{getButtonStyle(shopId,buttonStyleUrl).then(()=>{buttonData.btn_insert_el?resolve({code:200}):getParentWithoutForm().type?resolve({code:200}):resolve({code:404})})})}function changeButtonPos(){debug&&console.log("changeButtonPos");let{btn_insert_customized,btn_insert_el,btn_insert_type}=buttonData;if(!btn_insert_customized&&!btn_insert_el&&customPosition&&(btn_insert_customized=1,btn_insert_el=customPosition.selector,btn_insert_type=customPosition.position),btn_insert_customized&&btn_insert_el){if(shopId===53793915066&&themeId===136421834975&&(btn_insert_el=".product__submit__item.product__submit__item--inline"),isProPage)insertEl=q(btn_insert_el)||soldOutBtn;else if(isCollPage){insertEls=qa(btn_insert_el),insertEls=Array.from(insertEls);let insertElsCopy=insertEls;insertEls=[];for(let inx=0;inx0?productTitle=v1.name.substr(0,v1.name.length-v1.public_title.length-3):productTitle=v1.name}}function getAllStyle(){debug&&console.log("Get All Style"),document.head.insertAdjacentHTML("beforeend",''),emailStyle=document.querySelector(".email-style");let btnPromise,styUrl="";debug&&console.log("isProPage",isProPage),debug&&console.log("collButtonStyleUrl",collButtonStyleUrl),debug&&console.log("btnPromise",btnPromise);const popupPromise=getPopupStyle(shopId,popupStyleUrl),intePromise=getIntegration(shopId,integrationUrl),promises=[popupPromise,intePromise];isProPage&&promises.push(getButtonStyle(shopId,buttonStyleUrl)),Promise.all(promises).then(()=>{renderBtnAndPopup()})}function getButtonStyle(shopId2,btnurl){if(btnStyleSwitch)return new Promise(resolve=>{resolve({code:200})});debug&&console.log("Get Button Style");const url=baseUrl+"api/v1/"+btnurl;return request(url,{shopId:shopId2,shop_language:locale}).then(res=>{debug&&console.log("Get Button Style Success");const{code,data}=res;code===200&&data&&(btnStyleSwitch=1,Object.keys(buttonData).forEach(key=>{buttonData[key]=data[key]}),q("#sealapps-bis-widget")&&(buttonData.inline_status=1),Object.keys(generalData).forEach(key=>{generalData[key]=data[key]}),isCollPage&&(generalData.btn_font_family=generalData.btn_font_weight="inherit"),renderSettingStyles(),changeButtonPos())})}function getPopupStyle(shopId2,popupUrl){debug&&console.log("Get Popup Style");const url=baseUrl+"api/v1/"+popupUrl;return request(url,{shopId:shopId2,shop_language:locale}).then(res=>{debug&&console.log("Get Popup Style Success");const{code,data}=res;if(code===200&&data)switch(popupStyleSwitch=1,popupData=JSON.parse(JSON.stringify(data)),popupData.popup_option){case 1:selectedType.type="email";break;case 2:selectedType.type="sms";break;case 3:selectedType.type="email";break}})}function getIntegration(shopId2,inteUrl){debug&&console.log("Get Integration");const url=baseUrl+"api/v1/"+inteUrl;return request(url,{shopId:shopId2}).then(res=>{debug&&console.log("Get Integration Success");const{code,data}=res;code===200&&data&&(debug&&console.log("inte",data),inteStatus=data.find(o=>o.is_enable))})}function renderSettingStyles(){debug&&console.log("renderSettingStyles");const{btn_font_size,btn_hover_animation,btn_border_radius,btn_border_color,btn_font_weight,btn_font_family,btn_margin_top,btn_margin_bottom,btn_hover_font_color,btn_hover_color,btn_customize_css}=generalData;let generalStyles=` .email-me-button { font-size: ${btn_font_size}px !important; font-weight: ${btn_font_weight} !important; font-family: ${btn_font_family} !important; border-color: ${btn_border_color} !important; border-radius: ${btn_border_radius}px !important; border-width: 2px; border-style: solid; } .email-me-inlineButton { margin-top: ${btn_margin_top}px !important; margin-bottom: ${btn_margin_bottom}px !important; } .email-me-button:hover { color: ${btn_hover_font_color} !important; background-color: ${btn_hover_color} !important; } ${btn_customize_css} `;btn_hover_animation&&(generalStyles+=` .email-me-inlineButton::after, .email-me-inlineButton::before, .email-me-submitButton::after, .email-me-submitButton::before { content:''; color: ${buttonData.btn_color}; font-size: ${btn_font_size}px; text-align: center; border-radius: ${btn_border_radius}px; width: 0; height: 100%; background-color: ${btn_hover_color}; position: absolute; left:0; transition: all ease-in-out .35s; top:0; z-index: -2; } .email-me-inlineButton::before, .email-me-submitButton::before { z-index: -1; background-color: ${btn_hover_color}; } .email-me-inlineButton:hover, .email-me-submitButton:hover { z-index: 1; color: ${btn_hover_font_color} !important; background-color: ${btn_hover_color} !important; } .email-me-button:hover::before, .email-me-button:hover::after { width: 100%; } `);const styles=` `;document.head.insertAdjacentHTML("beforeend",styles)}function renderBtnAndPopup(){debug&&console.log("renderBtnAndPopup");const{toggler,ipt,mailingList}=renderSpecificPopup(),mountWindowElement=`
${popupData.success_frame_title}
${popupData.success_frame_content}
`;document.body.insertAdjacentHTML("beforeend",mountWindowElement),document.querySelector("#sealapps-bis-widget")&&soldOutBtn&&getComputedStyle(soldOutBtn.parentNode).textAlign==="center"&&(emailStyle.textContent+="#sealapps-bis-widget{justify-content:center}"),renderButton().then(res=>{debug&&console.log("renderButton success"),res.code===200?(createEmailButton(),listenVariantChange(),getBISEle(),popupData.popup_option!==1&&initSms()):debug&&console.log("Insert failed")})}function renderButton(){return new Promise(resolve=>{const{inline_status,float_status}=buttonData;let flag=0;if(inline_status||isCollPage){const{font_color,btn_color,btn_value,collection_btn_value,btn_margin_top,btn_margin_bottom}=buttonData;let btnText="";isProPage?btnText=btn_value:isCollPage&&(btnText=collection_btn_value);const mountInlineBtn=`
`;if(isProPage)try{debug&&console.log("insert",insertEl,insertType),insertEl.insertAdjacentHTML(insertType,mountInlineBtn),flag++}catch{setInlineBtnWhenErr(mountInlineBtn),flag++}else isCollPage&&(insertEls.forEach((i,inx)=>{if(iparentNode=i.parentNode,qa(".product-restore-email",iparentNode).length==0){const wrapper=document.createElement("div");wrapper.setAttribute("proId",collVariants[inx].proId),wrapper.innerHTML=mountInlineBtn,wrapper.style.position="relative",wrapper.style.zIndex="1",wrapper.className="restore-email-wrapper",i.insertAdjacentElement(insertType,wrapper),i.setAttribute("bis-inserted",!0)}}),flag++)}if(float_status){const{offset,float_font_color,float_btn_color,float_btn_value}=buttonData,mountFloatBtn=`
`;document.body.insertAdjacentHTML("afterbegin",mountFloatBtn),flag++}flag>0?resolve({code:200,msg:"Success!"}):resolve({code:404,msg:"Insert failed"})})}function renderSpecificPopup(type){let ipt,toggler,mailingList;if(type=popupData.popup_option||type,type===1)ipt=`
${popupData.popup_validation_text}
`;else if(type===2)ipt=`
${popupData.popup_validation_text}
`;else if(type===3){ipt=`
${popupData.popup_validation_text}
`;const email=``,sms=`
${popupData.popup_tab_sms}
`;let content="";shopId===56661573841?content=sms+email:content=email+sms,toggler=`
${content}
`}return renderSpecificStyle(type),inteStatus&&(mailingList=`
`),{ipt,toggler,mailingList}}function renderSpecificStyle(type){switch(type){case 1:case 2:addStyle(``);break;case 3:addStyle(``);break;default:break}}function getBISEle(){switch(popupData.popup_option){case 1:emailInput=q(".buyer-email");break;case 2:smsInput=q(".buyer-phone");break;case 3:emailInput=q(".buyer-email"),smsInput=q(".buyer-phone");break}nameInput=q(".email-frame-body .buyer-name"),successFrame=q(".successSub"),invalidTip=q(".invalid-email-tips"),emailFrameElement=q("#email-me-frame"),closeBox=q("#email-me-frame .close-box"),submitBtn=q(".frame-submit .email-me-button"),variantSelector=q(".selected-unavailable-variant"),inlineEmailDiv=qa(".product-restore-email"),floatEmailDiv=q("#product-restore-email-float"),inlineBtnElement=qa(".email-me-inlineButton"),floatBtnElement=q(".email-me-floatButton"),mailingCheckbox=q("#join-mailing-list")||{},insertStyle=q("#email-insert-style"),handleEleEvent()}function handleEleEvent(){switch(popupData.popup_option){case 1:emailInput.addEventListener("blur",verifyEmail);break;case 2:break;case 3:emailInput.addEventListener("blur",verifyEmail);break}submitBtn.addEventListener("click",subEmail),closeBox.addEventListener("click",function(){emailFrameElement.style.display="none",variantSelector.style.display!=="none"&¤tVariantOption&¤tVariantOption.removeAttribute("selected")}),successFrame.addEventListener("click",function(){successFrame.classList.remove("successSub_active")}),isProPage&&mountedUnVariantOptions(),initInlineAndFloatBtn()}function initInlineAndFloatBtn(){inlineBtnElement.length&&inlineBtnElement.forEach((i,inx)=>{i.addEventListener("click",function(e){e.preventDefault(),autoInput();let curProId=0;emailFrameElement.style.display="block";const selected_unavailable_variant=emailFrameElement.querySelector(".selected-unavailable-variant");if(isCollPage){curProId=this.parentNode.parentNode.getAttribute("proId");let oldProId=selected_unavailable_variant.getAttribute("proId");oldProId?oldProId!==curProId&&(addOptionsStatus=0,variantData=collVariants.find(i2=>i2.proId==curProId).variants,unVariantOptions=[],mountedUnVariantOptions(),selected_unavailable_variant.innerHTML="",selected_unavailable_variant.setAttribute("proId",curProId)):(unVariantOptions=[],variantData=collVariants.find(i2=>i2.proId==curProId).variants,mountedUnVariantOptions(),selected_unavailable_variant.setAttribute("proId",curProId))}for(let i2=0;i2{observer.disconnect();const curEls=await getProsEle(),bns=qa(".product-restore-email").length;curEls.length!==oldCollElsCount||!bns?(debug&&console.log("\u76D1\u542C\u6210\u529F\uFF0C\u5F00\u59CB\u8FD0\u884C"),insertEls=[],selBtnStatus=0,await init(),execute()):checkVariantChange()});function listenVariantChange(){if(isProPage){const url=document.URL;listenUrlStatus(),(url.indexOf("variant=")===-1||shopId==1742274613)&&checkVariantChange()}else isCollPage&&setTimeout(()=>{checkVariantChange()},1e3)}function checkVariantChange(){let targetNode;if(isProPage?shopId==55013703857?targetNode=q(".select-selected, select[name=id]"):shopId==1742274613?targetNode=q(".option-1"):shopId==42547151016&&themeId===122478428328?targetNode=q(".swatch-variants-wrapper"):shopId==57593233596&&themeId===132009820348?targetNode=q(".swatches-select.swatch__list_pr"):shopId==16708787&&themeId===141528334609?targetNode=q(".shopify-product-form"):shopId==56342347836&&themeId===148975190351?targetNode=q("form .t4s-swatch"):shopId==23566876752&&themeId===122101039184?targetNode=q(".swatches-select"):shopId==63893045484&&themeId===136267792620?targetNode=q(".option-selectors"):shopId==55224107147&&themeId===123578253451?targetNode=q(".product-select-simple-wrapper"):targetNode=q("input[name=id], select[name=id]"):isCollPage&&(targetNode=q("main"),shopId===25981404&&themeId===132868636834&&(targetNode=q("#main"))),targetNode){const config={attributes:!0,childList:!0,subtree:!0};observer=new MutationObserver(observerCallback),observer.observe(targetNode,config),debug&&console.log("\u76D1\u542C\u5668\u542F\u52A8\u4E2D")}}function observerCallback(){if(isProPage){debug&&console.log("\u76D1\u542C\u5230\u5143\u7D20\u53D8\u5316\uFF0C\u68C0\u67E5variant\u53D8\u5316");let curVariantId;if(shopId==55013703857){const selectedTitle=q(".select-selected").innerText;curVariantId=variantData.find(o=>o.title==selectedTitle).id}else if(shopId==1742274613){const option1Node=q(".option-0"),option2Node=q(".option-1"),option1Title=option1Node.querySelector(".selected_val").innerText,option2Title=option2Node.querySelector(".selected_val").innerText;curVariantId=variantData.find(o=>o.option1==option1Title&&o.option2==option2Title).id}else shopId===56342347836?curVariantId=q(".t4s-product__select.t4s-d-none").value:curVariantId=q("input[name=id], select[name=id]").value;handleVariantChange(curVariantId)}else isCollPage&&observeDebounce()}function listenUrlStatus(){overwritePushstate(),window.addEventListener("locationchange",()=>{if(document.URL!==initUrl){const currentUrl2=document.URL,vid=new URL(currentUrl2).searchParams.get("variant");debug&&console.log("vid",vid),initUrl=currentUrl2,vid&&handleVariantChange(vid),listenVariantFlag=!1,debug&&console.log("\u6E05\u9664\u5B9A\u65F6\u5668")}})}function handleVariantChange(vid){vid&&String(selectVariantId)!==String(vid)&&(selectVariantId=vid,currentVariant=variantData.find(o=>o.id==vid),available=currentVariant.available,(showVariants.includes(String(selectVariantId))&&!btnStyleSwitch||!popupStyleSwitch)&&getAllStyle(),showVariants.includes(String(selectVariantId))&&!selBtnStatus&&createEmailButton(),selBtnStatus===1&&(debug&&console.log("initEmailToMeEle"),debug&&console.log(currentVariant),initEmailToMeElement()))}function createEmailButton(){if(debug&&console.log("createEmailButton"),selBtnStatus===0){const url=baseUrl+"api/v1/email/selBtnStatus";request(url,{shopId}).then(res=>{const{code,data}=res;code===200&&(data.status==1||data.status==2||data.status==0||data.snsStatus?(selBtnStatus=1,initEmailToMeElement()):selBtnStatus=data.status)})}}function initEmailToMeElement(){selBtnStatus===1&&(showVariants.includes(String(selectVariantId))&&isProPage||isCollPage)?(customFeature&&customFeature(),inlineBtnElement&&(inlineBtnElement.forEach(i=>i.style.display="flex"),inlineEmailDiv.forEach(i=>i.style.display="flex")),floatBtnElement&&(floatBtnElement.style.display="flex",floatEmailDiv.style.display="flex")):(inlineBtnElement&&inlineEmailDiv.forEach(i=>{i.style.display="none"}),floatBtnElement&&(floatEmailDiv.style.display="none"))}function verifyEmail(){const email=emailInput.value;new RegExp(/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,}$/).test(email)?invalidTip.style.visibility="hidden":toggleInvalidTip(!0,{type:"email",info:popupData.popup_validation_text})}function create({tag,appendTo,children=[],attributes={},events={}}){const element=document.createElement(tag);return Object.entries(attributes).forEach(([key,value])=>{element[key]=value}),Object.entries(events).forEach(([key,value])=>{element.addEventListener(key,value)}),appendTo&&appendTo.appendChild(element),children.forEach(child=>element.appendChild(child)),element}function subEmail(){const{popup_validation_text}=popupData;let buyerName;switch(nameInput&&(buyerName=nameInput.value),selectedType.type){case"sms":smsInput&&smsInput.value||""?iti.isValidNumber()?(toggleInvalidTip(!1),subscribeSms({buyerName})):toggleInvalidTip(!0,{type:"sms",info:popup_validation_text}):toggleInvalidTip(!0,{type:"sms",info:popup_validation_text});break;case"email":const email=emailInput.value;email?new RegExp(/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,}$/).test(email)?(toggleInvalidTip(!1),subscribeEmail({buyerName})):toggleInvalidTip(!0,{type:"email",info:popup_validation_text}):toggleInvalidTip(!0,{type:"email",info:popup_validation_text});break;default:return}}function toggleInvalidTip(show,data){const style=getComputedStyle(invalidTip),{type,info}=data||{type:selectedType.type,info:popupData.popup_validation_text};switch(type){case"sms":style.visibility==="hidden"?(invalidTip.style.visibility="visible",invalidTip.innerHTML=info):invalidTip.style.visibility="hidden";break;case"email":style.visibility==="hidden"?(invalidTip.style.visibility="visible",invalidTip.innerHTML=info):invalidTip.style.visibility="hidden";break;default:invalidTip.style.visibility="hidden";break}debug&&console.log(invalidTip),show?invalidTip.style.visibility="visible":show===!1&&(invalidTip.style.visibility="hidden")}function subscribeSms(data){const params={shopId,variant_rid:variantSelector.value,receiver_number:formatPhoneNumber(smsInput.value.trim()),region:iti.getSelectedCountryData().iso2.toUpperCase(),is_integration:Number(mailingCheckbox.checked||!1),receiver_name:data.buyerName||"customer",customer_rid:0,shop_language:locale},url=baseUrl+"api/v1/sns/insCustomerSnsInfo";submitBtn.parentElement.className="frame-submit loading",request(url,params).then(res=>{const{code,message}=res;code===200?(emailFrameElement.style.display="none",successFrame.classList.add("successSub_active"),setTimeout(function(){successFrame.classList.remove("successSub_active")},4e3)):code===108||code===107?(invalidTip.style.visibility="visible",invalidTip.innerHTML=popupData.popup_subscribed_text):code===109?(invalidTip.style.visibility="visible",invalidTip.innerHTML=popupData.popup_validation_text):(invalidTip.style.visibility="visible",invalidTip.innerHTML=message)}).finally(()=>{submitBtn.parentElement.className="frame-submit"})}function subscribeEmail(data){const params={shopId,variant_rid:variantSelector.value,receiver_email:document.getElementsByClassName("buyer-email")[0].value,receiver_name:data.buyerName||"customer",is_integration:Number(mailingCheckbox.checked||!1),customer_rid:0,shop_language:locale},url=baseUrl+"api/v1/email/insCustomerEmailInfo";submitBtn.parentElement.className="frame-submit loading",request(url,params).then(res=>{const{code,message}=res;code===200?(emailFrameElement.style.display="none",successFrame.classList.add("successSub_active"),setTimeout(function(){successFrame.classList.remove("successSub_active")},4e3)):code===108||code===107?(invalidTip.style.visibility="visible",invalidTip.innerHTML=popupData.popup_subscribed_text):code===109?(invalidTip.style.visibility="visible",invalidTip.innerHTML=popupData.popup_validation_text):(invalidTip.style.visibility="visible",invalidTip.innerHTML=message)}).finally(()=>{submitBtn.parentElement.className="frame-submit"})}function formatPhoneNumber(num){const code=iti.getSelectedCountryData().dialCode;return num=num.replace(/\b(0+)/gi,""),num.startsWith(code)?num:code+num}function initSms(){const emailInput2=q(".buyer-email"),phoneInput=q(".buyer-phone"),phoneContainer=q(".buyer-phone-container"),emailTypeBtn=q(".email-type"),smsTypeBtn=q(".sms-type");q(".iti--allow-dropdown")||initPhoneInput().then(res=>{res.code===200&&popupData.popup_option===3&&(selectedType=new Proxy({type:"email"},{set(target,key,newVal){return debug&&console.log(target,key,newVal),target[key]=newVal,toggleInput(newVal),!0}}),toggleInput(selectedType.type),emailTypeBtn.addEventListener("click",()=>{selectedType.type="email"}),smsTypeBtn.addEventListener("click",()=>{selectedType.type="sms"}))});function initPhoneInput(){return new Promise(resolve=>{addScript("https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/17.0.16/css/intlTelInput.css").then(cssRes=>{cssRes.code===200&&(document.head.insertAdjacentHTML("beforeend",` `),addScript("https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/17.0.16/js/intlTelInput.min.js",!0).then(script=>{script.onload=function(){iti=window.intlTelInput(phoneInput,{utilsScript:"https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/17.0.16/js/utils.min.js",autoPlaceholder:"aggressive",initialCountry:popupData.sms_default_region||""}),debug&&console.log("Script Loaded"),debug&&console.log(phoneInput),phoneInput.addEventListener("input",e=>{debug&&console.log("getNumber",iti.getNumber()),debug&&console.log("getSelectedCountryData",iti.getSelectedCountryData()),iti.isValidNumber()?toggleInvalidTip(!1):toggleInvalidTip(!0)}),phoneInput.addEventListener("blur",e=>{debug&&console.log("isValidNumber",iti.isValidNumber()),iti.isValidNumber()?toggleInvalidTip(!1):toggleInvalidTip(!0)})},document.body.appendChild(script),resolve({code:200})}))})})}function toggleInput(type){switch(invalidTip.style.visibility="hidden",type){case"sms":emailInput2.style.display="none",phoneContainer.style.display="flex",emailTypeBtn.className="email-type",smsTypeBtn.className="sms-type type-selected";break;case"email":smsTypeBtn.className="sms-type",emailInput2.style.display="block",phoneContainer.style.display="none",emailTypeBtn.className="email-type type-selected";break;default:invalidTip.style.visibility="hidden";break}}}function addScript(url,returnWithScript=!1){return new Promise((resolve,reject)=>{try{const type=url.endsWith(".js")&&"js"||"css";if(type==="js"){const script=document.createElement("script");script.setAttribute("type","text/javascript"),script.setAttribute("src",url),returnWithScript&&resolve(script),document.head.appendChild(script),resolve({code:200,data:script,type:"script"})}else if(type==="css"){const link=document.createElement("link");link.setAttribute("rel","stylesheet"),link.setAttribute("href",url),returnWithScript&&resolve(link),document.head.appendChild(link),resolve({code:200,data:link,type:"style"})}}catch(err){reject({code:600,err})}})}function createRequestId(length){length=length&&length<64?length:63;let result="";const chars="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_";for(let i=0;i{url||resolve({code:999,data:"\u6CA1\u6709\u4F20api\u5730\u5740"});try{const finalParams=params||{};(params&&!Object.keys(params).includes("shopId")||!params)&&(finalParams.shopId=shopId);const xmlHttp=new XMLHttpRequest;xmlHttp.open(method,url,!0),xmlHttp.setRequestHeader("Content-Type","application/json"),xmlHttp.setRequestHeader("authorization",domain),xmlHttp.setRequestHeader("Org-Request-ID",createRequestId(37)),xmlHttp.setRequestHeader("Org-Request-URL",window.location.href),xmlHttp.send(JSON.stringify(finalParams)),xmlHttp.onreadystatechange=function(){if(xmlHttp.readyState==4&&xmlHttp.status==200||xmlHttp.status==304){const json=JSON.parse(this.responseText),{code,data}=json;code===200?(callback&&callback(data),resolve(json)):code!==500&&resolve(json)}}}catch(err){reject(err)}})}function getUserConfig(){const params={type:"user_config"},url=baseUrl+"api/v1/collect/config";request(url,params)}async function getProductStatus(baseApiUrl){debug&&console.log("getProductStatus");let productIds=[];if(window.ShopifyAnalytics&&ShopifyAnalytics.meta.product){const productId2=ShopifyAnalytics.meta.product.id;productIds.push(productId2)}else return;const params={shopId,productIds,type:2},url=baseApiUrl+"api/v1/customer/getVariantBtStatus";await request(url,params).then(res=>{debug&&console.log("Get Prodcut Status Success");const{apiCode,products}=res;apiCode===200&&products&&(showVariants=products[0].variants.map(variant=>variant.variantRid))})}function getCustomerInfo(){let id="";if(window.ShopifyAnalytics&&ShopifyAnalytics.meta.page.customerId)id=ShopifyAnalytics.meta.page.customerId;else return;const params={shopId,customerId:id},url=baseUrl+"api/v1/customer/getCustomerInfo";request(url,params).then(res=>{const{apiCode,customer}=res;apiCode===200&&customer&&(debug&&console.log("Get Customer Info Success"),customerInfo=JSON.parse(JSON.stringify(customer)))})}function importStyles(){const styles=``;document.head.insertAdjacentHTML("beforeend",styles),document.head.insertAdjacentHTML("beforeend",'')}function addStyle(style){typeof style=="string"?document.head.insertAdjacentHTML("beforeend",style):document.head.appendChild(style)}function getQueryString(name){const reg=new RegExp("(^|&)"+name+"=([^&]*)(&|$)","i"),r=window.location.search.substr(1).match(reg);return r!=null?unescape(r[2]):null}function changeStatus(data){const emailCustomerId=getQueryString("emailCustomerId");if(!emailCustomerId)return;const variantId=getQueryString("variant");if(!variantId)return;const{baseUrl:baseUrl2}=data,params={id:emailCustomerId,shopId,variantId},url=baseUrl2+"api/v1/email/changeEmailStatus";request(url,params)}function overwritePushstate(){const oldPushState=history.pushState;history.pushState=function(){const ret=oldPushState.apply(this,arguments);return window.dispatchEvent(new Event("pushstate")),window.dispatchEvent(new Event("locationchange")),ret};const oldReplaceState=history.replaceState;history.replaceState=function(){const ret=oldReplaceState.apply(this,arguments);return window.dispatchEvent(new Event("replacestate")),window.dispatchEvent(new Event("locationchange")),ret},window.addEventListener("popstate",()=>{window.dispatchEvent(new Event("locationchange"))})}function q(selector,context){let node;return context?node=context.querySelector(selector):node=document.querySelector(selector),node}function qa(selector,context){let nodes;return context?nodes=context.querySelectorAll(selector):nodes=document.querySelectorAll(selector),nodes}function shopLanguageCallback(){locale=q(".notranslate").querySelector(".selected img[alt]").alt}function collRednerProName(curProId){productTitle=collVariants.find(i=>i.proId==curProId).productName;const productTitleEl=q(".frame-body-content");productTitleEl.innerText=productTitle}function addCustomModify(){switch(shopId){case 55605198922:{customStyle+=`#email-me-frame .frame-title, #email-me-frame input { font-family: 'Sabon Next'; }`;break}case 66366374137:{isCollPage&&(isMobile&&(customStyle+=`@media only screen and (min-width: 280px) and (max-width: 757px) { .product-restore-email{ max-width: initial !important; } .email-me-inlineButton{line-height: calc(1 + .2 / var(--font-body-scale));height:auto !important;padding: 6px;}}`),customStyle+=`.quick-add__submit[disabled] { display: none; }.email-me-inlineButton{min-height: calc(4.5rem + var(--buttons-border-width) * 2);}`);break}case 66697953568:isProPage&&(customFeature=function(){const n=document.querySelector(".product_payments_btns .shopify-payment-button__button[disabled]");n&&(n.closest(".product_payments_btns").style.display="none");const available2=document.querySelectorAll(".swatch.clearfix .available");document.querySelectorAll(".swatch.clearfix .soldout").forEach(it=>it.style.display="none"),available2.length===0&&(document.querySelector(".swatch.clearfix").style.display="none")});case 57581600963:customStyle+=` #email-me-frame{font-family: synthese, sans-serif !important;} #email-me-frame .frame-title { padding-left: 0px !important; color: #0d3860 !important; font-size: 11px !important; font-weight: 400 !important; padding-top: 3px !important; text-transform: capitalize; } #email-me-frame .frame-body-content { font-weight: 300 !important; font-size: 11px !important; color: #0d3860 !important; } button .email-me-inlineButton { font-weight: 400 !important; border-width: 1px; }`,isCollPage&&(customStyle+=` #email-me-frame .email-frame-content { border-radius: 0px !important; border: 0 !important; box-shadow: none !important; } #email-me-frame .frame-title { padding-left: 0px !important; font-family: synthese, sans-serif !important; color: #0d3860 !important; font-size: 16px !important; font-weight: 400 !important; padding-top: 0px; padding-bottom: 6px; text-transform: capitalize; }`);case 73514025266:{themeId===146007327026&&isCollPage&&(customStyle+=".product-restore-email {width: 80% !important;margin: 0 auto;}");break}case 58193838255:{isMobile&&isCollPage&&(customStyle+=`.email-me-button.email-me-inlineButton { letter-spacing: 0px; }`);break}case 53793915066:{themeId===136421834975&&(customStyle+=".product-restore-email{max-width:initial !important}");break}case 61285925123:{customStyle+=`#email-me-frame div.frame-title { padding: 0 13px 0 0; flex: initial; }div.notify-type-toggler > div:nth-child(2) { border-left: 1px solid var(--sa-border-color); }.restore-email-wrapper { width: 100%; top: -30px; }.collection-grid__wrapper .grid-item.grid-product { flex-wrap: wrap; }#email-me-frame div.email-frame-header { justify-content: initial !important; padding: 0 30px 0 0; }.email-frame-body input::placeholder { opacity: 1; }#email-me-frame .email-footer-tips span { color: #222; }#email-me-frame .frame-close { margin-right: 0 !important; }#email-me-frame .close-box { margin: 0 !important; }`;break}case 11881800:customFeature=function(){insertStyle.textContent+=`button.custom_pers.product-add-to-cart-btn { background-color: #fff !important; color: #000; }`,inlineEmailDiv[0].insertAdjacentHTML("beforebegin",`
GET NOTIFIED WHERE BACK IN STOCK
`)};case 67088286014:{customFeature=function(){q("#email-me-frame")&&(q(".frame-email-logo").innerHTML=` `)};break}case 52260241573:{customFeature=function(){const n=q("#email-me-frame .frame-submit");n&&n.insertAdjacentHTML("afterend","

By signing up, you agree to receive promotional and marketing information from Mango People

")};break}case 56661573841:{customFeature=function(){if(document.querySelector(".sms-type")){let me=new Event("click");document.querySelector(".sms-type").dispatchEvent(me)}};break}case 71669449038:{customFeature=function(){qa(".email-frame-body input").forEach(i=>i.removeAttribute("type"))};break}case 72470462767:{isProPage?customFeature=function(){let targetNode;if(shopId==72470462767&&themeId===158979948847&&(targetNode=q("section.page-width.section--padding.product.productSection"),targetNode)){const config={attributes:!0,childList:!0,subtree:!0},observer2=new MutationObserver(debounce(500,()=>{setTimeout(async()=>{q(".product-restore-email")||(soldOutBtn=null,insertEl=null,selBtnStatus=0,insertStyle.textContent+=`.email-me-button.email-me-inlineButton { height: 60px !important; }`,qa("#email-me-frame,.successSub").forEach(it=>it.remove()),await init(),execute(),observer2.disconnect())},400)}));observer2.observe(targetNode,config)}}:isCollPage&&(customStyle+=`.card-information__button button[disabled] { display: none;}.restore-email-wrapper{width:100%}.product-restore-email,.product-restore-email .email-me-inlineButton{margin:0 !important} .restore-email-wrapper+.item_cart_items { display: none; }.email-me-button.email-me-inlineButton { font-weight: 600 !important; }@media only screen and (max-width: 768px){ .email-me-button.email-me-inlineButton { font-size: 12px !important; } }`);break}case 19073267:{customFeature=function(){q("#join-mailing-list")&&q("#join-mailing-list").removeAttribute("checked")};break}case 66072805644:{customFeature=function(){setTimeout(()=>{const n=q("#email-me-frame .buyer-phone");n&&(n.placeholder=n.placeholder.substring(1))},2e3)};break}case 48441458840:if(ShopifyAnalytics.meta.page.pageType==="collection"){themeId===137027780861&&(customStyle+=".quick-add__submit.button.button--full-width.button--secondary[disabled]{display:none}"),customFeature=function(){qa(".product-restore-email").forEach(i=>i.parentNode.style.gridRowStart=3)};break}case 73761816874:collectionAccess=!0}}})(); //# sourceMappingURL=/cdn/shop/t/10/assets/product_restore_email.js.map?v=6baec83eeee061b96868f8a71045ce21