PageSourceSearch

https://bonia.com/cdn/shop/t/73/assets/convx.js?v=58916866750516070411781231599

js bonia.com collected 2026-10-03 21:22:47 UTC 3,118 bytes, 2 lines download raw bytes

1"use strict";class ScrollButtons{constructor(root){this.root=root,this.target=this.root.querySelector("[data-scroll-buttons-target]"),this.leftButton=this.root.querySelector("[data-scroll-buttons-left]"),this.rightButton=this.root.querySelector("[data-scroll-buttons-right]"),this.leftButton.addEventListener("click",this.scrollLeft.bind(this)),this.rightButton.addEventListener("click",this.scrollRight.bind(this))}scrollLeft(){this.target.scrollTo({left:this.target.scrollLeft-this.target.clientWidth,behavior:"smooth"})}scrollRight(){this.target.scrollTo({left:this.target.scrollLeft+this.target.clientWidth,behavior:"smooth"})}}class TabSwitcher{constructor(root){this.root=root,this.tabButtons=Array.from(this.root.querySelectorAll('[role="tab"]')),this.tabPanels=Array.from(this.root.querySelectorAll('[role="tabpanel"]')),this.tabButtons.forEach(button=>{button.addEventListener("click",this.tabButtonClicked.bind(this))})}tabButtonClicked(event){const tabButton=event.currentTarget,tabPanel=document.getElementById(tabButton.getAttribute("aria-controls"));this.tabButtons.forEach(x=>{x.removeAttribute("aria-selected")}),this.tabPanels.forEach(x=>{x.hidden=!0}),tabButton.setAttribute("aria-selected","true"),tabPanel.hidden=!1}}window.customElements.define("country-selector",class extends HTMLElement{connectedCallback(){this.modal=this.querySelector("[data-country-selector-modal]"),this.modalOverlay=this.querySelector("[data-country-selector-modal-overlay]"),this.modalOverlay.addEventListener("click",this.onModalOverlayClick.bind(this));for(const button of this.querySelectorAll("[data-country-selector-submit-button]"))button.addEventListener("click",this.onSubmitButtonClick.bind(this));for(const button of this.querySelectorAll("[data-country-selector-open-button]"))button.addEventListener("click",this.onOpenButtonClick.bind(this));for(const button of this.querySelectorAll("[data-country-selector-close-button]"))button.addEventListener("click",this.onCloseButtonClick.bind(this))}onSubmitButtonClick(event){const checkedInput=this.querySelector('input[name="currency_code"]:checked');if(checkedInput){const value=checkedInput.value;value==="ml"?(window.location.replace("https://www.bonia.com.my/"),event.preventDefault()):value==="sg"?(window.location.replace("https://bonia.com.sg/"),event.preventDefault()):value==="id"&&(window.location.replace("https://bonia.co.id/"),event.preventDefault())}}onOpenButtonClick(){this.modal.classList.add("active"),this.modalOverlay.classList.add("active")}onCloseButtonClick(){this.modal.classList.remove("active"),this.modalOverlay.classList.remove("active")}onModalOverlayClick(event){event.target===this.modalOverlay&&(this.modal.classList.remove("active"),this.modalOverlay.classList.remove("active"))}});function main(){for(const element of document.querySelectorAll("[data-tab-switcher]"))element.tabSwitcher=new TabSwitcher(element);for(const element of document.querySelectorAll("[data-scroll-buttons]"))element.scrollButtons=new ScrollButtons(element)}main();
2//# sourceMappingURL=/cdn/shop/t/73/assets/convx.js.map?v=58916866750516070411781231599

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.