PageSourceSearch

https://bondisands.com.au/cdn/shop/t/791/assets/sections.shop-the-look.js?v=25123643275786067031789690513

js bondisands.com.au collected 2026-09-26 08:27:19 UTC 16,100 bytes, 1 lines download raw bytes

1!function(){"use strict";var t,e={8016(t,e,i){i(1517),i(3777),i(4190),i(2359),i(6097),i(7273),i(7415),i(9929),i(7583),i(5122),i(230),i(7268),i(9733);var s=i(4313);const n={xxsmall:"375px",xsmall:"480px",small:"750px",medium:"1100px",large:"1350px",xlarge:"1750px",xxlarge:"2000px"},o=Object.entries(n).reduce((t,e)=>{const[i,s]=e;return t[i]=parseInt(s),t},{}),r=t=>window.innerWidth>=o[t]||0;i(576);const a="heading";function l(t){const e=t.popper;if(!e)return;const i=e.querySelector(".tippy-box"),s=e.querySelector(".tippy-content");i&&(i.setAttribute("data-state","visible"),i.style.opacity="1",i.style.visibility="visible"),s&&(s.setAttribute("data-state","visible"),s.style.opacity="1",s.style.visibility="visible")}function c(){document.querySelectorAll("[data-tooltip]").forEach(t=>{if(t._tippy)return;t.classList.contains("is-initialised")&&t.classList.remove("is-initialised");const e=`\n      ${t.dataset[a]?`\n        <h5 class="o-tooltip__heading o-type--2">\n          ${t.dataset[a]}\n        </h5>\n      `:""}\n      <p class="o-tooltip__content o-type--3">\n        ${t.dataset.tooltip}\n      </p>\n    `;(0,s.Ay)(t,{content:e,allowHTML:!0,theme:"a-tooltip",arrow:!0,placement:"top",animation:!1,duration:[0,0],zIndex:1e5,appendTo:t=>t.closest("dialog")||document.body,popperOptions:{strategy:"fixed"},onMount(t){l(t)},onAfterUpdate(t){t.state.isVisible&&l(t)}}),t.addEventListener("pointerdown",t=>{t.stopPropagation()}),t.addEventListener("click",t=>{t.preventDefault(),t.stopPropagation()}),t.classList.add("is-initialised")})}function h(){c()}"loading"===document.readyState?document.addEventListener("DOMContentLoaded",h):h(),document.addEventListener("shopify:section:load",c);const d="data-section-initialized";class u{static registrations={};static register(t,e){const i=[];return document.querySelectorAll(t).forEach(s=>{if(u.isRegistered(s))return;const n=new e(s,t);i.push(n),n.queryChildren(s),n.init(),n.attachEvents(s)}),this.registrations[t]=e,i}static recheck(t){const e=this.registrations[t];return e?u.register(t,e):[]}static isRegistered(t){return t.hasAttribute(d)}constructor(t,e){if(this.container=t,this.selector=e,this.container.setAttribute(d,"true"),this.shopifyContainer=this.container.parentElement,this.shopifyContainer&&this.shopifyContainer.id)try{this.id=this.shopifyContainer.id.replace(/shopify-section-/,"")}catch(t){console.warn(t)}this.innerHtmlObserver=null}replaceContainer(t){this.container.removeAttribute(d),this.detatchEvents(this.container),this.container.innerHTML=t.innerHTML,this.container.setAttribute(d,"true"),this.queryChildren(this.container),this.init(),this.attachEvents(this.container)}init(){}onInnerHtmlMutationObserved=(t,e)=>{if(!t.length)return;if(!this.shopifyContainer)return;const[i]=t,s=[];i.removedNodes.forEach(t=>s.push(t));-1!==s.findIndex(t=>t===this.shopifyContainer)&&(console.log("Section",this.id,"reloaded."),this.dispose(),u.recheck(this.selector))};dispose(){this.container.removeAttribute(d),this.detatchEvents(this.container),this.innerHtmlObserver&&this.innerHtmlObserver.disconnect()}}const p="is-active",g="is-hidden",v="data-categories-ready";class f{activeIndex=0;resizeTimeout=null;onCategoryChange=null;isPointerDown=!1;didDrag=!1;suppressNextClick=!1;startX=0;startScrollLeft=0;activePointerId=null;dragStarted=!1;onScroll=null;onResize=null;onPointerDown=null;onPointerMove=null;onPointerUp=null;onPointerCancel=null;constructor(t,e){this.container=t,this.categoryButtons=t.querySelectorAll("[data-category-id]"),this.categoriesScroll=t.querySelector("[data-categories-scroll]"),this.progress=t.querySelector("[data-progress]"),this.progressBar=t.querySelector("[data-progress-bar]"),this.pill=t.querySelector("[data-pill]"),this.onCategoryChange=e||null,this.categoryButtons.forEach((t,e)=>{t.classList.contains(p)&&(this.activeIndex=e)}),this.updateProgressBar(),this.updatePillPosition(),this.updateOverflowClass(),this.attachEvents(),this.container.removeAttribute(v),requestAnimationFrame(()=>{this.container.setAttribute(v,"")})}attachEvents(){this.categoryButtons&&(this.categoryButtons.forEach((t,e)=>{t.addEventListener("click",i=>{if(this.suppressNextClick)return i.preventDefault(),i.stopPropagation(),void(this.suppressNextClick=!1);this.switchCategory(e,t)})}),this.categoriesScroll&&(this.onScroll=()=>{this.updateProgressBar(),this.updatePillPosition()},this.categoriesScroll.addEventListener("scroll",this.onScroll),this.setupDragToScroll()),this.onResize=()=>{this.resizeTimeout&&clearTimeout(this.resizeTimeout),this.resizeTimeout=window.setTimeout(()=>{this.updateProgressBar(),this.updatePillPosition(),this.updateOverflowClass()},150)},window.addEventListener("resize",this.onResize),window.Weglot?.on("languageChanged",this.onResize))}updateOverflowClass(){if(!this.categoriesScroll)return;const t=this.categoriesScroll.scrollWidth>this.categoriesScroll.clientWidth+1;this.categoriesScroll.toggleAttribute("data-overflowing",t)}setupDragToScroll(){this.categoriesScroll&&(this.onPointerDown=t=>{this.categoriesScroll&&("mouse"===t.pointerType&&0!==t.button||this.categoriesScroll.scrollWidth<=this.categoriesScroll.clientWidth||(this.isPointerDown=!0,this.didDrag=!1,this.dragStarted=!1,this.startX=t.clientX,this.startScrollLeft=this.categoriesScroll.scrollLeft,this.activePointerId=t.pointerId))},this.onPointerMove=t=>{if(!this.categoriesScroll)return;if(!this.isPointerDown)return;if(null!==this.activePointerId&&t.pointerId!==this.activePointerId)return;const e=t.clientX-this.startX,i="mouse"===t.pointerType?8:12;if(!this.dragStarted&&Math.abs(e)>=i){this.dragStarted=!0,this.didDrag=!0,this.categoriesScroll.setAttribute("data-dragging","");try{this.categoriesScroll.setPointerCapture(t.pointerId)}catch{}}this.dragStarted&&(this.categoriesScroll.scrollLeft=this.startScrollLeft-e,t.preventDefault())},this.onPointerUp=t=>{if(this.categoriesScroll&&this.isPointerDown&&(null===this.activePointerId||t.pointerId===this.activePointerId)){this.isPointerDown=!1,this.categoriesScroll.removeAttribute("data-dragging"),this.updateOverflowClass(),this.didDrag&&(this.suppressNextClick=!0,window.setTimeout(()=>{this.suppressNextClick=!1},0));try{null!==this.activePointerId&&this.categoriesScroll.releasePointerCapture(this.activePointerId)}catch{}this.activePointerId=null,this.dragStarted=!1}},this.onPointerCancel=t=>{this.onPointerUp&&this.onPointerUp(t)},this.categoriesScroll.addEventListener("pointerdown",this.onPointerDown,{passive:!1}),this.categoriesScroll.addEventListener("pointermove",this.onPointerMove,{passive:!1}),this.categoriesScroll.addEventListener("pointerup",this.onPointerUp),this.categoriesScroll.addEventListener("pointercancel",this.onPointerCancel))}switchCategory(t,e){if(t===this.activeIndex)return;const i=e||Array.from(this.categoryButtons)[t];if(!i)return;this.categoryButtons.forEach(t=>{t.classList.remove(p),i.setAttribute("aria-selected","false")}),i.classList.add(p),i.setAttribute("aria-selected","true"),this.activeIndex=t,this.updatePillPosition();const s=i.getAttribute("data-category-id");s&&this.onCategoryChange&&this.onCategoryChange(s,t)}getActiveCategoryId(){const t=Array.from(this.categoryButtons).find(t=>t.classList.contains(p));return t?t.getAttribute("data-category-id"):null}getActiveIndex(){return this.activeIndex}refreshPillPosition(){this.updatePillPosition()}updatePillPosition(){if(!this.pill||!this.categoryButtons||!this.categoriesScroll)return;const t=Array.from(this.categoryButtons).find(t=>t.classList.contains(p));if(!t)return;const e=window.getComputedStyle(this.categoriesScroll),i=Number.parseFloat(e.paddingLeft||"0")||0,s=t.offsetLeft-i,n=t.offsetWidth;this.pill.style.width=`${n}px`,this.pill.style.transform=`translate3d(${s}px, 0, 0)`}updateProgressBar(){if(!this.categoriesScroll||!this.progressBar||!this.progress)return;const t=this.categoriesScroll,e=t.scrollWidth,i=t.clientWidth,s=t.scrollLeft,n=e-i;if(n<=0)this.progress.classList.add(g),this.progressBar.style.width="0%";else{this.progress.classList.remove(g);const t=8+s/n*92;this.progressBar.style.width=`${Math.min(100,Math.max(8,t))}%`}}dispose(){this.resizeTimeout&&(clearTimeout(this.resizeTimeout),this.resizeTimeout=null),this.onResize&&(window.removeEventListener("resize",this.onResize),this.onResize=null),this.categoriesScroll&&this.onScroll&&(this.categoriesScroll.removeEventListener("scroll",this.onScroll),this.onScroll=null),this.categoriesScroll&&this.onPointerDown&&this.onPointerMove&&this.onPointerUp&&this.onPointerCancel&&(this.categoriesScroll.removeEventListener("pointerdown",this.onPointerDown),this.categoriesScroll.removeEventListener("pointermove",this.onPointerMove),this.categoriesScroll.removeEventListener("pointerup",this.onPointerUp),this.categoriesScroll.removeEventListener("pointercancel",this.onPointerCancel))}}var m=i(7367);const b="[data-shop-the-look] [data-shop-the-look-pin]",y="[data-cart-drawer-toggle]";u.register("[data-shop-the-look]",class extends u{categoriesComponent=null;tabs=null;categoriesEl=null;visibilityObserver=null;pins=null;pinInstances=new Map;onDocumentClick=null;boundHandlePinClick=null;mobileHandlersAttached=!1;mediaQuery=null;onMediaChange=null;queryChildren(t){const e=t.querySelector("[data-shop-the-look] [data-categories]");e&&(this.categoriesEl=e,this.tabs=t.querySelectorAll("[data-shop-the-look] [data-category-id]"),this.categoriesComponent=new f(e,(t,e)=>{this.onCategoryChange(t,e)}),this.updateTabVisibility(this.categoriesComponent.getActiveCategoryId()));const i=t.querySelectorAll(b);i&&(this.pins=i,this.initializePins()),this.showTab(),this.openFirstPin()}initializePins(){if(!this.pins)return;const t=!!r("medium");
1this.pins.forEach(e=>{if(t&&this.pinInstances.has(e))return;const i=this.findProductCard(e);if(i&&t){const t=e.closest("[data-shop-the-look] [data-shop-the-look-inner]")||this.container,{placement:n,fallbackPlacements:o,offsets:r}=this.getPinPlacement(e),a=(0,s.Ay)(e,{content:i,allowHTML:!0,placement:n,interactive:!0,trigger:"click",arrow:!1,theme:"shop-the-look-pin",animation:"fade",zIndex:3,appendTo:()=>t,popperOptions:{modifiers:[{name:"preventOverflow",options:{boundary:t,padding:16}},{name:"flip",options:{boundary:t,fallbackPlacements:o}},{name:"eventListeners",options:{scroll:!1,resize:!0}}]},offset:r,onShow:()=>{e.classList.add("is-active"),this.pinInstances.forEach((t,i)=>{i!==e&&t.hide()})},onHide:()=>{e.classList.remove("is-active")}});this.pinInstances.set(e,a)}})}getPinPlacement(t){switch(t.getAttribute("data-shop-the-look-pin-position")){case"right":return{placement:"right",fallbackPlacements:["left","top","bottom"],offsets:[-40,80]};case"center":return{placement:"bottom",fallbackPlacements:["top","left","right"],offsets:[0,40]};default:return{placement:"left",fallbackPlacements:["right","top","bottom"],offsets:[-40,80]}}}openFirstPin(){if(!this.pins||!this.tabs)return;const t=Array.from(this.tabs).find(t=>t.classList.contains("is-active"));if(!t)return;const e=t.querySelector(b);if(!e)return;const i=!!r("medium"),s=new IntersectionObserver(t=>{t.forEach(t=>{if(t.isIntersecting){if(i){const t=this.pinInstances.get(e);t&&t.show()}else e.classList.add("is-active");s.unobserve(t.target)}})},{threshold:1});s.observe(e)}findProductCard(t){const e=t.getAttribute("data-pin-product-for");
1return e?this.container.querySelector(`[data-pin-product-target="${e}"]`):null}onCategoryChange(t,e){this.updateTabVisibility(t),this.openFirstPin()}onViewportChange(){if(!this.pins)return;const t=!!r("medium");this.pins.forEach(t=>t.classList.remove("is-active")),t?(this.detachMobilePinHandlers(),this.initializePins(),this.openFirstPin()):(this.destroyPinInstances(),this.attachMobilePinHandlers(),this.openFirstPin())}attachMobilePinHandlers(){if(!this.pins||this.mobileHandlersAttached)return;this.boundHandlePinClick=this.handlePinClick.bind(this),this.pins.forEach(t=>{t.addEventListener("click",this.boundHandlePinClick)});const t=this.handleOutsideClick.bind(this);this.onDocumentClick=t,document.addEventListener("click",t),this.mobileHandlersAttached=!0}detachMobilePinHandlers(){this.mobileHandlersAttached&&(this.pins&&this.boundHandlePinClick&&(this.pins.forEach(t=>{t.removeEventListener("click",this.boundHandlePinClick)}),this.boundHandlePinClick=null),this.onDocumentClick&&(document.removeEventListener("click",this.onDocumentClick),this.onDocumentClick=null),this.mobileHandlersAttached=!1)}destroyPinInstances(){this.pinInstances.forEach((t,e)=>{const i=t.props.content;t.destroy(),i instanceof HTMLElement&&e.insertAdjacentElement("afterend",i)}),this.pinInstances.clear()}
1updateTabVisibility(t){this.tabs&&t&&this.tabs.forEach(e=>{e.getAttribute("data-category-id")===t?(e.classList.remove(g),e.classList.add("is-active")):(e.classList.add(g),e.classList.remove("is-active"))})}showTab(){this.categoriesEl&&"undefined"!=typeof IntersectionObserver&&(this.visibilityObserver=new IntersectionObserver(t=>{t.forEach(t=>{t.isIntersecting&&(t.target.classList.add("is-visible"),this.visibilityObserver?.unobserve(t.target))})},{threshold:.1}),this.visibilityObserver.observe(this.categoriesEl))}handlePinClick(t){t.stopPropagation();const e=t.target.closest(b);if(!e)return;const i=e.classList.contains("is-active");this.pins?.forEach(t=>{t.classList.remove("is-active")}),i||e.classList.add("is-active")}handleOutsideClick(t){const e=t.target,i=e.closest(b),s=e.closest("[data-shop-the-look] [data-shop-the-look-pin-product]"),n=e.closest(y);i||s||n||this.pins?.forEach(t=>{t.classList.remove("is-active")})}initQuickAdd(t){t.addEventListener("click",async t=>{const e=t.target.closest("[data-shop-the-look] [data-product-quick-add]");if(!e||e.disabled)return;t.preventDefault();const i=e.getAttribute("data-variant-id");if(!i)return;const s=parseInt(i,10);if(Number.isFinite(s)){e.disabled=!0;try{await(0,m.cartAdd)({items:[{id:s,quantity:1}]});const t=document.querySelector(y);t&&t.click()}catch(t){console.error("Shop the look: add to cart failed",t)}finally{e.disabled=!1}}})}attachEvents(t){!!r("medium")||this.attachMobilePinHandlers(),this.mediaQuery=window.matchMedia(`(min-width: ${o["medium"]}px)`),this.onMediaChange=()=>this.onViewportChange(),this.mediaQuery.addEventListener("change",this.onMediaChange),this.initQuickAdd(t)}detatchEvents(t){this.categoriesComponent&&(this.categoriesComponent.dispose(),this.categoriesComponent=null),this.visibilityObserver&&this.categoriesEl&&(this.visibilityObserver.unobserve(this.categoriesEl),this.visibilityObserver.disconnect(),this.visibilityObserver=null),this.mediaQuery&&this.onMediaChange&&(this.mediaQuery.removeEventListener("change",this.onMediaChange),this.mediaQuery=null,this.onMediaChange=null),this.detachMobilePinHandlers(),this.pinInstances.forEach(t=>{t.destroy()}),this.pinInstances.clear(),t.removeEventListener("click",this.initQuickAdd.bind(this))}})},6095(){}},i={};function s(t){var n=i[t];if(void 0!==n)return n.exports;var o=i[t]={exports:{}};return e[t].call(o.exports,o,o.exports,s),o.exports}s.m=e,t=[],s.O=function(e,i,n){if(!i){for(var o=0;o<t.length;o++){i=t[o][0],n=t[o][1];for(var r=!0,a=0;a<i.length;a++)s.O.j(i[a])?i.splice(a--,1):r=!1;if(r){t.splice(o--,1);var l=n();void 0!==l&&(e=l)}}return e}t.push([i,n])},s.d=function(t,e){for(var i in e)s.o(e,i)&&!s.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},s.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),s.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},s.j=3307,function(){var t={3307:0};s.O.j=function(e){return 0===t[e]};var e=function(e,i){var n,o,r=i[0],a=i[1],l=i[2],c=0;if(r.some(function(e){return 0!==t[e]})){for(n in a)s.o(a,n)&&(s.m[n]=a[n]);if(l)var h=l(s)}for(e&&e(i);c<r.length;c++)o=r[c],s.o(t,o)&&t[o]&&t[o][0](),t[o]=0;return s.O(h)},i=self.webpackChunkreflect_boilerplate=self.webpackChunkreflect_boilerplate||[];i.forEach(e.bind(null,0)),i.push=e.bind(null,i.push.bind(i))}(),s.O(void 0,[4121],function(){return s(8016)});var n=s.O(void 0,[4121],function(){return s(6095)});n=s.O(n)}();

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.