PageSourceSearch

https://www.volero.nl/cdn/shop/t/156/assets/email-signup-klaviyo.js?v=76734912727983876511787682407

js volero.nl collected 2026-09-30 13:38:34 UTC 2,533 bytes, 2 lines download raw bytes

1import{Component}from"@theme/component";import{isValidEmail,subscribeToList,parseConfig}from"@theme/klaviyo-newsletter-api";class EmailSignupKlaviyo extends Component{requiredRefs=["form","emailInput","submitButton","errorMessage","successMessage"];#config=null;connectedCallback(){super.connectedCallback(),this.#config=parseConfig(this)}get companyId(){return this.#config.companyId||""}get listIds(){return this.#config.listIds??[]}get localeData(){return this.#config.locale?{locale:this.#config.locale,language:this.#config.localeLanguage||"",country:this.#config.localeCountry||"",market:this.#config.market||""}:null}handleSubmit=async event=>{event?.preventDefault();const{emailInput,submitButton,successMessage,consentCheckbox}=this.refs;if(this.#hideError(),successMessage.hidden=!0,!emailInput.value||!isValidEmail(emailInput.value)){this.#showError(this.#config.errors?.email),emailInput.focus();return}if(consentCheckbox&&!consentCheckbox.checked){this.#showError(this.#config.errors?.consent),consentCheckbox.focus();return}if(!this.companyId||this.listIds.length===0){console.error("Email signup: missing Klaviyo company ID or list ID."),this.#showError(this.#config.errors?.api);return}submitButton.disabled=!0,submitButton.setAttribute("aria-busy","true");try{await Promise.all(this.listIds.map(listId=>subscribeToList(emailInput.value,listId,this.companyId,this.localeData))),this.#showSuccess()}catch(error){console.error("Klaviyo email signup failed:",error),this.#showError(this.#config.errors?.api)}finally{submitButton.disabled=!1,submitButton.removeAttribute("aria-busy")}};#showError(message){const{errorMessage,emailInput}=this.refs,text=errorMessage.querySelector(".email-signup-block__message-text");text&&(text.textContent=message||""),errorMessage.hidden=!1,emailInput.setAttribute("aria-invalid","true"),emailInput.setAttribute("aria-describedby",errorMessage.id)}#hideError(){const{errorMessage,emailInput}=this.refs;errorMessage.hidden=!0;const text=errorMessage.querySelector(".email-signup-block__message-text");text&&(text.textContent=""),emailInput.removeAttribute("aria-invalid"),emailInput.removeAttribute("aria-describedby")}#showSuccess(){const{emailInput,successMessage}=this.refs;emailInput.value="",successMessage.hidden=!1,successMessage.focus()}}customElements.get("email-signup-klaviyo")||customElements.define("email-signup-klaviyo",EmailSignupKlaviyo);export{EmailSignupKlaviyo};
2//# sourceMappingURL=/cdn/shop/t/156/assets/email-signup-klaviyo.js.map?v=76734912727983876511787682407

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.