1const e=".js-check-balance-link",t=".js-balance-form-info",a=".js-balance-success",i=".js-balance-alert",s=".js-gift-card-number",c=".js-loader",n=".js-card-submit",h=".js-balance-result",l=".js-balance-form",r=".js-recaptcha";class d extends HTMLElement{connectedCallback(){this.submitUrl=this.getAttribute("data-submit-url"),this.checkBalanceLink=this.querySelector(e),this.giftCardBalanceFormInfo=this.querySelector(t),this.giftCardBalanceSuccess=this.querySelector(a),this.checkBalanceAlert=this.querySelector(i),this.giftCardNumber=this.querySelector(s),this.submitCardBalanceLoader=this.querySelector(c),this.submitCardBalance=this.querySelector(n),this.giftCardBalanceResult=this.querySelector(h),this.checkBalanceForm=this.querySelector(l),this.recaptcha=this.querySelector(r),this.recaptchaWidgetId=null,this.isLoading=!1,this._eventRemover=[],this.init()}disconnectedCallback(){this._eventRemover.forEach(e=>e())}init(){this.initCaptcha(),this.attachCheckBalanceLinkEvent(),this.attachSubmitEvent()}initCaptcha(){window.RECAPTCHA_SITE_KEY&&this.recaptcha&&(window.captchaCallbacks||(window.captchaCallbacks=[]),window.captchaCallbacks.push(()=>{this.recaptchaWidgetId=window.grecaptcha.render(this.recaptcha,{sitekey:window.RECAPTCHA_SITE_KEY})}))}attachCheckBalanceLinkEvent(){if(!this.checkBalanceLink||!this.giftCardBalanceSuccess)return;const e=()=>{this.giftCardBalanceSuccess.style.display="none"};this.checkBalanceLink.addEventListener("click",e),this._eventRemover.push(()=>{this.checkBalanceLink.removeEventListener("click",e)})}attachSubmitEvent(){this.checkBalanceForm&&(this.checkBalanceForm.addEventListener("submit",this.handleSubmit.bind(this)),this._eventRemover.push(()=>{this.checkBalanceForm.removeEventListener("submit",this.handleSubmit.bind(this))}))}handleSubmit(e){if(e.preventDefault(),this.checkBalanceAlert.style.display="none",this.giftCardNumber.classList.remove("alert"),0===this.giftCardNumber.value.trim().length)return void this.giftCardNumber.classList.add("alert");if(this.isLoading||null===this.recaptchaWidgetId)return;if(window.grecaptcha.getResponse(this.recaptchaWidgetId).length>0){this.isLoading=!0,this.submitCardBalanceLoader.style.display="flex",this.submitCardBalance.style.display="none";let e={giftCardNumber:this.giftCardNumber.value};fetch(this.submitUrl,{method:"POST",headers:{"Content-Type":"application/json; charset=utf-8"},body:JSON.stringify(e)}).then(e=>e.json()).then(e=>{e.success?e.balance&&(this.giftCardBalanceResult.innerHTML="$"+e.balance,this.giftCardBalanceFormInfo.style.display="none",this.giftCardBalanceSuccess.style.display="block"):"gift card not found"===e.msg&&(this.checkBalanceAlert.innerHTML=window.giftCardLookupStrings.giftCardNotFound,this.checkBalanceAlert.style.display="block")}).catch(e=>{}).finally(()=>{this.isLoading=!1,this.submitCardBalanceLoader.style.display="none",this.submitCardBalance.style.display=""})}}}customElements.define("gift-card-lookup",d);
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.