PageSourceSearch

https://broslibrerias.cl/cdn/shop/t/13/assets/product_restore_email.js?v=180981458115277363461786984260

js broslibrerias.cl collected 2026-10-04 18:30:38 UTC 46,896 bytes, 723 lines download raw bytes

1(function(){function debounce(delay=500,callback){let timer;return function(){clearTimeout(timer),timer=null,timer=setTimeout(()=>{callback()},delay)}}const initRes=init();if(typeof initRes=="string"){console.log("Init info: ",initRes);return}else importStyles(),console.log("App is on!");const{debug,shopId,baseUrl,MAX_SEARCH_TIMES}=initRes;let{times}=initRes;const btnAndPopupData=initBtnAndPopupData(),{buttonStyleUrl,popupStyleUrl,integrationUrl,floatBtnPosition,buttonData,generalData,formAction}=btnAndPopupData;let{iti,popupData,inlineBtnHeight,inlineBtnWidth,btnRadius,btnFontSize,btnFontWeight,insertEl,insertType,selectedType,selBtnStatus,btnStyleSwitch,popupStyleSwitch,inteStatus}=btnAndPopupData;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;const{variantData,unVariantOptions}=productInfo,payment_button_class=".shopify-payment-button";debug&&console.log("Init data finished"),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())});function init(){const ENV="prod",baseUrl2=ENV.indexOf("dev")===-1?"https://emailnoticeapi.sealapps.com/":"https://emailnoticeapitest.sealapps.com/",debug2=ENV.indexOf("dev")!==-1,{ShopifyAnalytics}=window;if(ShopifyAnalytics&&ShopifyAnalytics.meta&&ShopifyAnalytics.meta.page&&ShopifyAnalytics.meta.page.pageType!=="product")return"Not in product page";if(location.href.indexOf("product")===-1)return"Not in product page";const shopId2=JSON.parse(qa("#shopify-features")[0].outerText).shopId;changeStatus({shopId:shopId2,baseUrl:baseUrl2});const shopMeta=JSON.parse(q("#em_product_metafields").textContent);return shopMeta?JSON.parse(q("#em_product_variants").textContent).some(v=>v.available===!1)?q("#product-restore-email-flag")||q("#product-restore-email-float")||q("#product-restore-email")?"Already enabled":(document.body.insertAdjacentHTML("beforeend",`
2      <div id="product-restore-email-flag" style="display: none;"></div>
3      `),{debug:debug2,shopMeta,shopId:shopId2,baseUrl:baseUrl2,MAX_SEARCH_TIMES:50,times:0}):"All variants are in stock.":"no shopMeta"}function initProductInfo(){const variantData2=JSON.parse(q("#em_product_variants").textContent),hasAvailableV=variantData2.some(v=>v.available===!1),currentVariant2=JSON.parse(q("#em_product_selected_or_first_available_variant").textContent);return{variantData:variantData2,currentVariant:currentVariant2,available:currentVariant2.available,selectVariantId:currentVariant2.id,hasAvailableV,productTitle:"",unVariantOptions:[],currentVariantOption:null,addOptionsStatus:0,initUrl:document.URL,listenVariantFlag:!0}}function initBtnAndPopupData(){return{btnRadius:"",btnFontSize:"",inlineBtnWidth:"",inlineBtnHeight:"",btnFontWeight:"initial",popupStyleUrl:"getPopupStyle",buttonStyleUrl:"getButtonStyle",integrationUrl:"integrate/getIntegration",floatBtnPosition:"float-btn-right",buttonData:{btn_value:"",btn_color:"",font_color:"",btn_margin_top:"",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_border_radius:"0",btn_border_color:"transparent"},popupData:null,frameBtnColor:"#333333",frameBtnFontColor:"#ffffff",insertType:"",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,inline
3EmailDiv: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<allArr.length;i++)if(allArr[i].type=="submit"&&allArr[i].name=="add"||allArr[i].type=="submit"&&allArr[i].name=="button"){soldOutBtn=allArr[i];break}if(!soldOutBtn){for(let i=0;i<allArr.length;i++)if(allArr[i].type=="submit"){soldOutBtn=allArr[i];break}}if(!soldOutBtn){for(let i=0;i<allArr.length;i++)if(allArr[i].disabled){soldOutBtn=allArr[i];break}}soldOutBtn||(soldOutBtn=allArr[0]),soldOutBtn&&getBtnStyle(soldOutBtn)}}function searchParentEl(){return new Promise(resolve=>{const forms=qa("form");for(let i=0;i<forms.length;i++)forms[i].action.indexOf("/cart/add")!==-1&&trueForms.push(forms[i]);if(trueForms.length||resolve({code:501,msg:"Search el failed"}),trueForms.length==1)exactForm=trueForms[0],getSoldOutBtn(trueForms[0]);else for(let i=0;i<trueForms.length&&!soldOutBtn;i++){const formStyle=window.getComputedStyle(trueForms[i],null);if(!(formStyle.visibility!="visible"||formStyle.display=="none"||formStyle.height=="0px"||formStyle.height=="0"||formStyle.width=="0px"||formStyle.width=="0"||formStyle.height=="auto")){if(exactForm=trueForms[i],getSoldOutBtn(trueForms[i]),soldOutBtn){const parent=soldOutBtn.parentElement,parentStyle=window.getComputedStyle(parent,null);if(parentStyle.visibility=="visible"&&parentStyle.display!="none"&&parentStyle.height!=0&&parentStyle.width!=0)break}if(soldOutBtn=trueForms[i].querySelector(payment_button_class),soldOutBtn)break;{const iptSubArr=trueForms[i].querySelectorAll("input[type='submit']");if(iptSubArr.length!=0){soldOutBtn=iptSubArr[0];break}const btnArr=trueForms[i].querySelectorAll("button");for(let j=0;j<btnArr.length;j++)if(btnArr[j].type=="submit"){soldOutBtn=btnArr[j];break}}}}if(soldOutBtn||exactForm){const params={code:200,msg:"success"};soldOutBtn?(insertType="afterend",insertEl=soldOutBtn):(insertType="beforeend",insertEl=exactForm),resolve(params)}else times>=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");if(btnElements.length)for(let i=0;i<btnElements.length;i++){const width=Number(window.getComputedStyle(btnElements[i],null).width.split("px")[0]);if(!isNaN(width)&&width>64)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<parents.length;i++){const style=window.getComputedStyle(parents[i],null);if(!(style.visibility!="visible"||style.display=="none"||style.height=="0px"||style.height=="0"||style.width=="0px"||style.width=="0"||style.height=="auto"))return{type:"beforeend",ele:parents[i]}}return{type:""}}function setInlineBtnWhenErr(el){const res=getParentWithoutForm();res.type&&res.ele.insertAdjacentHTML(res.type,el),getBISEle()}function handleSearchNodeFailed(){return new Promise(resolve=>{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");const{btn_insert_customized,btn_insert_el,btn_insert_type}=buttonData;btn_insert_customized&&(insertEl=q(btn_insert_el)||soldOutBtn,insertType=btn_insert_type||"afterend")}function handleBasicData(){if(debug&&console.log("Handle Basic Data"),soldOutBtn){const parentStyle=window.getComputedStyle(soldOutBtn.parentElement,null);parentStyle.display=="flex"&&parentStyle.flexDirection=="row"&&parentStyle.flexWrap=="nowrap"&&(soldOutBtn.parentElement.style.flexWrap="wrap")}const v1=variantData[0];try{productTitle=v1.name.split(" - ")[0].trim()}catch{v1.public_title&&v1.public_title.length-3>0?productTitle=v1.name.substr(0,v1.name.length-v1.public_title.length-3):productTitle=v1.name}}function getAllStyle(){debug&&console.log("Get All Style");const btnPromise=getButtonStyle(shopId,buttonStyleUrl),popupPromise=getPopupStyle(shopId,popupStyleUrl),intePromise=getIntegration(shopId,integrationUrl);Promise.all([btnPromise,popupPromise,intePromise]).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}).then(res=>{debug&&console.log("Get Button Style Success");const{code,data}=res;code===200&&data&&(btnStyleSwitch=1,Object.keys(buttonData).forEac
3h(key=>{buttonData[key]=data[key]}),Object.keys(generalData).forEach(key=>{generalData[key]=data[key]}),renderSettingStyles(),changeButtonPos())})}function getPopupStyle(shopId2,popupUrl){debug&&console.log("Get Popup Style");const url=baseUrl+"api/v1/"+popupUrl;return request(url,{shopId:shopId2}).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_hover_font_color,btn_hover_color}=generalData;let generalStyles=`
4      .email-me-button {
5        font-size: ${btn_font_size}px !important;
6        font-weight: ${btn_font_weight} !important;
7        font-family: ${btn_font_family} !important;
8        border-color: ${btn_border_color} !important;
9        border-radius: ${btn_border_radius}px !important;
10        border-width: 2px;
11        border-style: solid;
12      }
13      .email-me-inlineButton {
14        margin-top: ${btn_margin_top}px !important;
15      }
16      .email-me-button:hover {
17        color: ${btn_hover_font_color} !important;            
18        background-color: ${btn_hover_color} !important;        
19      }
20    `;btn_hover_animation&&(generalStyles+=`
21      .email-me-inlineButton::after,
22      .email-me-inlineButton::before,
23      .email-me-submitButton::after,
24      .email-me-submitButton::before {
25          content:'';
26          color: ${buttonData.btn_color};
27          font-size: ${btn_font_size}px; 
28          text-align: center; 
29          border-radius: ${btn_border_radius}px;
30          width: 0;
31          height: 100%;
32          background-color: ${btn_hover_color};
33          position: absolute;
34          left:0;
35          transition: all ease-in-out .35s;
36          top:0;
37          z-index: -2;
38      }
39      .email-me-inlineButton::before,
40      .email-me-submitButton::before {
41          z-index: -1;
42          background-color: ${btn_hover_color};
43      }
44      .email-me-inlineButton:hover,
45        .email-me-submitButton:hover {
46          z-index: 1;
47          color: ${btn_hover_font_color} !important;
48          background-color: ${btn_hover_color} !important;
49      }
50      .email-me-button:hover::before,
51      .email-me-button:hover::after
52      {
53          width: 100%;
54      }
55      `);const styles=`
56    <style>
57    ${generalStyles}
58    </style>
59    `;document.head.insertAdjacentHTML("beforeend",styles)}function renderBtnAndPopup(){debug&&console.log("renderBtnAndPopup");const{toggler,ipt,mailingList}=renderSpecificPopup(),mountWindowElement=`       
60      <div class="successSub">
61        <div class="successSub_header">
62            <img src="https://cdn.shopify.com/s/files/1/0576/6063/7389/t/1/assets/success.png?v=1629367773"/>
63            <div class="successSub_header_text">${popupData.success_frame_title}</div>
64            <div class="successSub_close-box">
65                <div class="successSub_frame-close"></div>
66            </div>
67        </div>
68        <div class="successSub_text">
69            ${popupData.success_frame_content}
70        </div>
71      </div>
72      <div id="email-me-frame">
73        <div class="email-frame-content">
74          <div class="close-box">
75                <div class="frame-close"></div>
76          </div>
77          <div class="email-frame-header">
78              <div class="frame-email-logo">
79                  <svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
80                      <path d="M0 5.324V15.5A1.5 1.5 0 001.5 17h17a1.5 1.5 0 001.5-1.5V5.324l-9.496 5.54a1 1 0 01-1.008 0L0 5.324z"
81                            fill="#5C5F62"/>
82                      <path d="M19.443 3.334A1.494 1.494 0 0018.5 3h-17c-.357 0-.686.125-.943.334L10 8.842l9.443-5.508z"
83                            fill="#5C5F62"/>
84                  </svg>
85              </div>
86              <div class="frame-title">${popupData.popup_header_text}</div>
87          </div>
88          <div class="split-line" style="border: 1px solid #d9d9d9;"></div>
89          <div class="email-frame-body">
90            <div class="frame-body-content">
91              <span>${productTitle}</span>
92            </div>
93            <div>
94            <select class="selected-unavailable-variant"></select>
95            </div>
96            ${toggler||""}
97            <div>
98              <input class="buyer-name" type="text" placeholder="${popupData.popup_name_placeholder_text}">
99            </div>
100            ${ipt}
101            ${mailingList||""}
102            <div class="frame-submit">
103              <div class="email-me-button email-me-submitButton" style=" text-align:center; color: ${popupData.popup_btn_font_color}; background-color:  ${popupData.popup_btn_color}; border-radius: ${btnRadius}; font-size: ${btnFontSize}; ">
104                ${popupData.popup_btn_value}
105              </div>
106            </div>
107          </div>
108          <div class="email-frame-footer">
109            <div class="email-footer-tips">
110              <span>${popupData.popup_footer_text}</span>
111            </div>
112          </div>
113          <div class="email-provider" style="display: ${buttonData.is_branding_removed?"none":""};">
114              Powered by <span><a class="email-app-link" target="_blank" href="https://apps.shopify.com/email-1?surface_detail=back+in+stock&surface_inter_position=1&surface_intra_position=10&surface_type=search">Sealapps</a></span>
115          </div>
116        </div>
117      </div>`;document.body.insertAdjacentHTML("beforeend",mountWindowElement),renderButton().then(res=>{debug&&console.log("renderButton success"),res.code===200?(changeButtonPos(),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){const{font_color,btn_color,btn_value,btn_margin_top}=buttonData,mountInlineBtn=` 
118          <div id="product-restore-email" style="margin-top: ${btn_margin_top}px; max-width: ${inlineBtnWidth||"initial"}">
119            <div class="email-me-button email-me-inlineButton" style="text-align:center; margin-top:0; color: ${font_color} ; background-color: ${btn_color} ; height:${inlineBtnHeight} ; border-radius: ${btnRadius||"2px"} ; font-size: ${btnFontSize||"14px"} ; font-weight: ${btnFontWeight||"inherit"};">
120              ${btn_value}
121            </div>
122          </div>`;try{debug&&console.log("insert",insertEl,insertType),insertEl.insertAdjacentHTML(insertType,mountInlineBtn),flag++}catch{setInlineBtnWhenErr(mountInlineBtn),flag++}}if(float_status){const{offset,float_font_color,float_btn_color,float_btn_value}=buttonData,mountFloatBtn=` 
123          <div id="product-restore-email-float" style="top:${offset+"px"}" class="${floatBtnPosition}">
124              <div class="email-me-button email-me-floatButton" style="text-align:center; display:none; color: ${float_font_color} ; background-color:  ${float_btn_color} ; border-radius: ${btnRadius} ; font-size: ${btnFontSize}; font-weight: ${btnFontWeight}; ">
125                  ${float_btn_value}
126              </div>
127          </div>`;document.body.insertAdjacentHTML("afterbegin",mountFloatBtn),flag++}flag>0?resolve({code:200,msg:"Success!"}):resolve({code:404,msg:"Insert failed"})})}
127function renderSpecificPopup(type){let ipt,toggler,mailingList;return type=popupData.popup_option||type,type===1?ipt=`
128        <div>
129          <input class="buyer-email" type="text" placeholder="${popupData.popup_placeholder_text}">
130          <div class="invalid-email-tips">${popupData.popup_validation_text}</div>
131        </div>
132      `:type===2?ipt=`
133        <div>
134          <div class="buyer-phone-container">
135            <input type="text" class="buyer-phone">
136          </div>
137          <div class="invalid-email-tips">${popupData.popup_validation_text}</div>
138        </div>
139      `:type===3&&(ipt=`
140      <div>
141        <input class="buyer-email" type="text" placeholder="${popupData.popup_placeholder_text}">
142        <div class="buyer-phone-container">
143          <input type="text" class="buyer-phone">
144        </div>
145        <div class="invalid-email-tips">${popupData.popup_validation_text}</div>
146      </div>
147      `,toggler=`
148        <div class="notify-type-toggler">
149          <div class="email-type">
150              Email
151          </div>
152          <div class="sms-type">
153              SMS
154          </div>
155        </div>
156      `),renderSpecificStyle(type),inteStatus&&(mailingList=`
157      <div class="join-mailing-container">
158        <input id="join-mailing-list" type="checkbox" checked/>
159        <label for="join-mailing-list" class="join-mailing-listLabel">
160        ${popupData.popup_opt_in_text}
161        </label>
162      </div>
163    `),{ipt,toggler,mailingList}}
163function renderSpecificStyle(type){switch(type){case 1:case 2:addStyle(`<style>
164          #email-me-frame .email-frame-content {
165            max-height: 412px !important;
166          }
167          </style>`);break;case 3:addStyle(`<style>
168          #email-me-frame .email-frame-content {
169            max-height: 459px !important;
170          }
171          </style>`);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=q("#product-restore-email"),floatEmailDiv=q("#product-restore-email-float"),inlineBtnElement=q(".email-me-inlineButton"),floatBtnElement=q(".email-me-floatButton"),mailingCheckbox=q("#join-mailing-list")||{},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"&&currentVariantOption&&currentVariantOption.removeAttribute("selected")}),successFrame.addEventListener("click",function(){successFrame.classList.remove("successSub_active")}),mountedUnVariantOptions(),initInlineAndFloatBtn()}function initInlineAndFloatBtn(){inlineBtnElement&&inlineBtnElement.addEventListener("click",function(){emailFrameElement.style.display="block";const selected_unavailable_variant=emailFrameElement.querySelector(".selected-unavailable-variant");for(let i=0;i<unVariantOptions.length;i++)addOptionsStatus===0&&selected_unavailable_variant.add(unVariantOptions[i]),unVariantOptions[i].getAttribute("value")===selectVariantId.toString()&&(currentVariantOption=selected_unavailable_variant.querySelectorAll("option")[i],currentVariantOption.setAttribute("selected","selected"));addOptionsStatus=1}),floatBtnElement&&floatBtnElement.addEventListener("click",function(){emailFrameElement.style.display="block";for(let i=0;i<unVariantOptions.length;i++)addOptionsStatus===0&&variantSelector.add(unVariantOptions[i]),unVariantOptions[i].getAttribute("value")===selectVariantId.toString()&&(currentVariantOption=variantSelector.querySelectorAll("option")[i],currentVariantOption.setAttribute("selected","selected"));addOptionsStatus=1})}function mountedUnVariantOptions(){let optionIndex=0;for(let i=0;i<variantData.length;i++)variantData[i].available||(variantData[i].title==="Default Title"&&(variantSelector.style.display="none"),unVariantOptions[optionIndex]=create({tag:"option",attributes:{value:variantData[i].id,textContent:variantData[i].title}}),optionIndex++)}function listenVariantChange(){const url=document.URL;listenUrlStatus(),url.indexOf("variant=")===-1&&checkVariantChange()}function checkVariantChange(){debug&&console.log("\u5B9A\u65F6\u5668\u5F00\u542F\uFF0C\u68C0\u67E5variant\u53D8\u5316");const curVariantId=window.ShopifyAnalytics?window.ShopifyAnalytics.meta.selectedVariantId:selectVariantId;handleVariantChange(curVariantId),listenVariantFlag&&setTimeout(checkVariantChange,100)}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,(!available&&!btnStyleSwitch||!popupStyleSwitch)&&getAllStyle(),!available&&!selBtnStatus&&createEmailButton(),selBtnStatus===1&&(
171debug&&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.snsStatus?(selBtnStatus=1,initEmailToMeElement()):selBtnStatus=data.status)})}}function initEmailToMeElement(){if(generalData.btn_display_all){inlineBtnElement&&(inlineBtnElement.style.display="flex",inlineEmailDiv.style.display="flex"),floatBtnElement&&(floatBtnElement.style.display="flex",floatEmailDiv.style.display="flex");return}selBtnStatus===1&&!available?(inlineBtnElement&&(inlineBtnElement.style.display="flex",inlineEmailDiv.style.display="flex"),floatBtnElement&&(floatBtnElement.style.display="flex",floatEmailDiv.style.display="flex")):(inlineBtnElement&&(inlineEmailDiv.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,6}$/).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,6}$/).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},url=baseUrl+"api/v1/sns/insCustomerSnsInfo";submitBtn.parentElement.className="frame-submit loading",request(url,params).then(res=>{const{code}=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)}).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},url=baseUrl+"api/v1/email/insCustomerEmailInfo";submitBtn.parentElement.className="frame-submit loading",request(url,params).then(res=>{const{code}=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="* You are already subscribed to this product."):code===109&&(invalidTip.style.visibility="visible",invalidTip.innerHTML=popupData.popup_validation_text)}).finally(()=>{submitBtn.parentElement.className="frame-submit"})}function formatPhoneNumber(num){const code=iti.getSelectedCountryData().dialCode;return 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"),smsT
171ypeBtn=q(".sms-type");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",`
172              <style>
173              .iti__flag {background-image: url("https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/17.0.16/img/flags.png");}
174              @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
175              .iti__flag {background-image: url("https://cdnjs.cloudflare.com/ajax/libs/intl-tel-input/17.0.16/img/[email protected]");}
176              }
177              .iti.iti--allow-dropdown {
178                  width: 100%;
179                  display: flex;
180                  height: var(--sa-button-height-normal);
181                  margin-top: 10px;
182              }
183              .iti__country {
184                color: #777777;
185              }
186              </style>
187            `),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"}),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("wuhu"),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 request(url,params,callback,method="POST"){return new Promise((resolve,reject)=>{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.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 importStyles(){document.head.insertAdjacentHTML("beforeend",`<style>
188    body {
189      --sa-border-normal: 1px solid #d9d9d9;
190      --sa-border-hover: 2px solid skyblue;
191      --sa-button-height-normal: 44px;
192      --sa-border-radius-input: 4px;
193      --sa-border-radius-button: 4px;
194      --sa-border-color: #d9d9d9;
195      --sa-disabled-bgc: #f2f2f2;
196      --sa-btn-hover-bgc: #f6f6f7;
197      --sa-input-padding: 8px;
198    }
199    #email-me-frame * {
200        box-sizing: border-box;
201    }
202    #email-me-frame *:empty {
203      display: inherit;
204    }
205  .email-me-button{
206    width: 100%;
207    height: var(--sa-button-height-normal);
208    /*background-color: rgb(51, 51, 51);*/
209    /*border-radius: 7px;*/
210    /*color: white;*/
211    border-width: 0px;
212    font-size: 15px;
213    cursor: pointer;
214    letter-spacing: 1px;
215    border-radius: var(--sa-border-radius-button);
216    align-items:center;
217    display: flex;
218    justify-content: center;
219    box-sizing: border-box;
220    transition: all linear .15s;
221    position: relative;
222  }
223  .email-me-inlineButton {
224    display: none;
225  }
226  #email-me-frame {
227    position: fixed;
228    top: 0;
229    left: 0;
230    width: 100%;
231    height: 100%;
232    background-color: rgba(0,0,0,0.2);
233    z-index: 9999999;
234    display: none;
235  }
236
237  #email-me-frame input {
238    background-color: #ffffff;
239    border: 1px solid var(--sa-border-color);
240    border-radius: var(--sa-border-radius-input);
241  }
242  
243  #email-me-frame .email-frame-content{
244    width: 65%;
245    /*height: 358px;*/
246    max-width: 398px;
247    min-width: 300px;
248    background: white;
249    border-radius: 7px;
250    padding-bottom:16px;
251    border: 1px solid var(--sa-border-color);
252    box-shadow: 0 0 18px #00000030;
253    animation: fadeIn .15s linear;
254    position: fixed;
255    top: 50%; left: 50%;
256    bottom: 0;
257    height: 100%;
258    max-height: 508px;
259    transform: translate(-50%, -50%);
260    overflow-y: scroll;
261  }
262  .email-frame-content::-webkit-scrollbar {
263    /*\u6EDA\u52A8\u6761\u6574\u4F53\u6837\u5F0F*/
264    width: 4px; /*\u9AD8\u5BBD\u5206\u522B\u5BF9\u5E94\u6A2A\u7AD6\u6EDA\u52A8\u6761\u7684\u5C3A\u5BF8*/
265    height: 1px;
266  }
267  .email-frame-content::-webkit-scrollbar-thumb {
268    /*\u6EDA\u52A8\u6761\u91CC\u9762\u5C0F\u65B9\u5757*/
269    border-radius: 10px;
270    background: #a9a9a9;
271  }
272  .email-frame-content::-webkit-scrollbar-track {
273    /*\u6EDA\u52A8\u6761\u91CC\u9762\u8F68\u9053*/
274    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
275    background: #ededed;
276    border-radius: 10px;
277  }
278  
279  #email-me-frame .frame-close {
280      margin-top: 10px;
281      margin-bottom: 10px;
282      margin-right: 5px;
283      cursor: pointer;
284      display: inline-block;
285      width: 100%;
286      height: 2px;
287      background: #333;
288      transform: rotate(
289              45deg
290      );
291  }
292  #email-me-frame .frame-close::after{
293      content: "";
294      display: block;
295      height: 2px;
296      background: #333;
297      transform: rotate(
298              -90deg
299      );
300  }
301  
302  #email-me-frame .email-frame-header{
303      display: flex;
304      justify-content: center;
305      clear: both;
306      padding-top: 2px;
307      padding-left: 30px;
308      margin-bottom: 7px;
309      font-family: "Arial",sans-serif;
310  
311  }
312  
313  #email-me-frame .close-box{
314      width: 20px;
315      height: 19px;
316      float: right;
317      margin-right: 5px;
318      margin-top: 5px;
319      cursor: pointer;
320  }
321  
322  #email-me-frame .frame-email-logo svg{
323      background-size: 25px 25px;
324      width: 24px;
325      margin-top: 3px;
326  }
327  
328  #email-me-frame .frame-title{
329      padding-left: 13px;
330      flex: 1;
331      color:#1A1B18;
332      font-size: 16px;
333      font-weight: 600;
334      padding-top: 3px;
335  }
336  
337  #email-me-frame .split-line {
338      border: 1px solid var(--sa-border-color);
339  }
340  
341  #email-me-frame .email-frame-body{
342      padding-left: 30px;
343      padding-right: 30px;
344  }
345  
346  #email-me-frame .frame-body-content{
347      letter-spacing: 0.01rem;
348      line-height: 1.6rem;
349      font-weight: 500;
350      font-size: 15px;
351      margin-top:16px;
352      margin-bottom: 5px;
353      color:#1A1B18;
354  }
355  
356  #email-me-frame .buyer-email,
357  #email-me-frame .buyer-phone-input,
358  #email-me-frame .buyer-name{
359      border-radius: var(--sa-border-radius-input);
360      border: 1px solid var(--sa-border-color);
361      margin: 10px 0 0 0;
362      width: 100%;
363      font-size: 15px ;
364      outline: none !important;
365      height: var(--sa-button-height-normal) !important;
366      color: #000 !important;
367      background: #fff !important;
368      padding: var(--sa-input-padding) !important;
369  }
370  .buyer-phone-input {
371      border-left: none;
372  }
373
374  #email-me-frame .notify-type-toggler {
375      display: flex;
376      align-items: center;
377      justify-content: space-between;
378      width: 100%;
379      font-size: 15px ;
380      height: var(--sa-button-height-normal) !important;
381      color: #000 !important;
382      background: #fff !important;
383      margin-top: 10px;
384  }
385  .notify-type-toggler > div {
386      flex: 1;
387      display: flex;
388      justify-content: center;
389      align-items: center;
390      border: 1px solid var(--sa-border-color);
391      height: 100%;
392      cursor: pointer;
393      transition: all linear .14s;
394  }
395  .notify-type-toggler > div:hover {
396      background: var(--sa-btn-hover-bgc)
397  }
398  .notify-type-toggler > div:nth-child(1) {
399      border-radius: var(--sa-border-radius-button) 0 0 5px;
400  }
401  .notify-type-toggler > div:nth-child(2) {
402      border-left: 0;
403      border-radius: 0 5px 5px 0;
404  }
405  .join-mailing-container {
406    display: flex;
407    align-items: center;
408    font-size: 12px;
409    line-height: 12px;
410    margin-top: 4px;
411  }
412  .join-mailing-listLabel {
413    margin: 0 0 0 8px;
414    color: #333333 !important;
415  }
416  #email-me-frame .buyer-phone-block {
417      display: flex;
418      align-items: center;
419      justify-content: space-between;
420      position: relative;
421      height: var(--sa-button-height-normal);
422      padding: var(--sa-input-padding);
423  }
424  #email-me-frame .country-selector {
425      width: 54px;
426      display: flex;
427      align-items: center;
428      justify-content: center;
429      height: 100%;
430      border: 1px solid var(--sa-border-color);
431      cursor: pointer;
432  }
433  #email-me-frame .country-selector:hover {
434      background: var(--sa-disabled-bgc);
435  }
436  #email-me-frame .country-selector-list {
437      max-width: 120px;
438      position: absolute;
439      border: 1px solid var(--sa-border-color);
440      border-radius: 8px;
441      background-color: #fff;
442      list-style: none;
443      padding: 0px;
444      max-height: 120px;
445      overflow-y: scroll;
446      margin-bottom: 50%;
447  }
448  #email-me-frame .country-selector-list li {
449      display: flex;
450      flex-wrap: nowrap;
451      justify-content: space-between;
452      align-items: center;
453      padding: var(--sa-input-padding);
454      cursor: pointer;
455      transition: all linear .14s;
456      bottom: 0;
457  }
458  #email-me-frame .country-selector-list li:hover {
459      background-color: #eeeeee;
460  }
461  .buyer-phone {
462      outline: none;
463      flex: 1;
464      transition: all linear .14s;
465      border: var(--sa-border-normal);
466      border-radius: var(--sa-border-radius-button);
467  }
468  input::-webkit-input-placeholder{
469      color:gray;
470      font-size:15px;
471  }
472  
473  input::-moz-placeholder{   /* Mozilla Firefox 19+ */
474      color:gray;
475      font-size:15px;
476  }
477  input:-moz-placeholder{    /* Mozilla Firefox 4 to 18 */
478      color:gray;
479      font-size:15px;
480  }
481  input:-ms-input-placeholder{  /* Internet Explorer 10-11 */
482      color:gray;
483      font-size:15px;
484  }
485  
486  
487  #email-me-frame .frame-submit{
488      position: relative;
489  }
490
491  /* loading\u7684\u4EE3\u7801 */
492  .frame-submit.loading {
493    pointer-events: none;
494    cursor: not-allowed;
495  }
496  .frame-submit.loading::after {
497    content: '';
498    width: 20px;
499    height: 20px;
500    border-radius: 50%;
501    border-bottom: 2px solid #ddd;
502    border-right: 2px solid #ddd;
503    animation: spin ease-in-out 0.8s infinite;
504    position: absolute;
505    top: 11px;
506    left: 50%;
507    transform: translate(-50%, -50%);
508  }
509  .frame-submit.loading .email-me-submitButton {
510    opacity: 0;
511  }
512  @keyframes spin {
513    0% {
514      transform: rotate(0deg);
515    }
516    100% {
517      transform: rotate(360deg);
518    }
519  }
520  
521  #email-me-frame .selected-unavailable-variant{
522      border-radius: var(--sa-border-radius-button);
523      border: 1px solid var(--sa-border-color);
524      margin: 10px 0 0 0;
525      width: 100%;
526      height: var(--sa-button-height-normal);
527      font-size: 15px;
528      outline: none;
529      color: #000;
530      padding: var(--sa-input-padding) !important;
531      background: #fff;
532  }
533  
534  #email-me-frame .invalid-email-tips{
535      color: rgb(219, 17, 42);
536      font-weight: 500;
537      letter-spacing: 0;
538      visibility: hidden;
539      line-height: 24px;
540      font-size: 12px;
541  }
542  
543  #email-me-frame .email-frame-footer{
544      padding: 0 30px;
545      margin-top: 20px;
546  }
547  
548  #email-me-frame .email-frame-footer .email-footer-tips{
549      font-size: 14px;
550      font-family: "Arial",sans-serif;
551      line-height: 1.1em;
552      color: #ccc;
553  }
554  #email-me-frame .email-app-link{
555      color: #008ddd;
556  }
557  #email-me-frame .email-app-link:hover{
558      color: #0089d6;
559  }
560  #email-me-frame .email-app-link:visited{
561      color: #008ddd;
562  }
563  #email-me-frame .email-app-link:active{
564      color: #008ddd;
565  }
566  #email-me-frame .email-provider {
567      margin-top: 8px;
568      text-align: center !important;
569      font-family: "Arial",sans-serif;
570      color: black;
571      font-size: 12px;
572  }
573  .successSub_header img {
574    width: 32px;
575    margin: 0;
576}
577  .successSub {
578    transition: width 0.5s ease-out, opacity 0.5s ease-in, visibility 0.5s ease-in;
579    max-width: 350px;
580    background: rgb(255, 255, 255);
581    padding: 20px;
582    border-radius: 7px;
583    border:1px solid #445958 ;
584    display: block;
585    z-index: -1;
586    position: fixed;
587    top: 50%; left: 50%;
588    transform: translate(-50%, -50%);
589    visibility: hidden;
590    opacity: 0;
591    color: #464646;
592}
593.successSub_active {
594    width: 100%;
595    visibility: visible;
596    opacity: 1;
597    z-index: 999999999;
598}
599#product-restore-email img {
600    width: 44px;
601    margin: 0;
602}
603#email-me-frame img {
604    /* width: 100%; */
605    width: 50px;
606    margin-right: 8px;
607}
608.successSub_header {
609    width: 100%;
610    align-items: center;
611    justify-content: space-between;
612    display: flex;
613}
614.successSub_header_text {
615    font-weight: 700;
616    flex: 1;
617    padding-left: 8px;
618}
619.successSub_close-box {
620    width: 20px;
621    height: 20px;
622    padding: 4px;
623    cursor: pointer;
624    display: flex;
625    align-items: center;
626    transform: translate(8px, -16px);
627}
628.successSub_frame-close {
629    margin-bottom: 10px;
630    cursor: pointer;
631    display: inline-block !important;
632    width: 100%;
633    height: 1px;
634    background: #333;
635    transform: rotate( 
636        45deg
637    );
638}
639.successSub_frame-close::after {
640    content: '';
641    display: block;
642    height: 1px;
643    background: #333;
644    transform: rotate( 
645        -90deg
646    );
647}
648.successSub_text {
649    margin-top: 8px;
650    font-size: 20px;
651    font-weight: 500;
652    line-height: 1.5;
653}
654  #product-restore-email{
655      justify-content: flex-start;
656      width: 100%;
657      flex:1;
658  }
659  #product-restore-email input {
660    background: #ffffff;
661  }
662  #product-restore-email-float{
663      display: flex;
664      z-index:99999999999;
665      justify-content: center;
666      position:fixed;
667
668  }
669  .float-btn-left{
670      transform: rotate(90deg) translateY(-100%);
671      transform-origin: 0% 0%;
672      left:0;
673  }
674  .float-btn-right{
675      transform: rotate(-90deg) translateY(-100%);
676      transform-origin: 100% 0%;
677      right:0;
678  }
679  #product-restore-email-float .email-me-button{
680      padding: 0.8rem 1.2rem;
681  }
682  #email-me-frame .email-provider span{
683      color: blue;
684  }
685  @keyframes fadeIn {
686      0% {
687          opacity: .6;
688      }
689      100% {
690          opacity: 1;
691      }
692  }
693  /* \u6EDA\u52A8\u6761\u8BBE\u7F6E\u6CA1\u6709\u751F\u6548 */
694  /* \u6EDA\u52A8\u6761\u6574\u4F53\u90E8\u5206\uFF0C\u53EF\u4EE5\u8BBE\u7F6E\u5BBD\u5EA6\u5565\u7684 */
695  #email-me-frame .country-selector-list ::-webkit-scrollbar {
696    width: 2px;
697    height: 2px;
698  }
699  /* \u6EDA\u52A8\u6761\u4E24\u7AEF\u7684\u6309\u94AE */
700  #email-me-frame .country-selector-list ::-webkit-scrollbar-button {
701    display: none !important;
702  }
703  /* \u5916\u5C42\u8F68\u9053 */
704  #email-me-frame .country-selector-list ::-webkit-scrollbar-track  {
705    display: none !important;
706  }
707  /* \u5185\u5C42\u6EDA\u52A8\u69FD */
708  #email-me-frame .country-selector-list ::-webkit-scrollbar-track-piece{
709    display: none !important;
710  }
711  /* \u6EDA\u52A8\u7684\u6ED1\u5757  */
712  #email-me-frame .country-selector-list ::-webkit-scrollbar-thumb {
713    background-color:#ff9900;
714    background-color:rgba(255,153,0, 0.6);
715    border-radius: 10px;
716  }
717  .type-selected {
718    pointer-events: none;
719    background-color: var(--sa-disabled-bgc);
720  }
721  
722              </style>`)}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,shopId:shopId2}=data,params={id:emailCustomerId,shopId:shopId2,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(c){return document.querySelector(c)}function qa(c){return document.querySelectorAll(c)}})();
723//# sourceMappingURL=/cdn/shop/t/13/assets/product_restore_email.js.map?v=180981458115277363461786984260

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.