const lightMasonry=(containerElement,newOptions={})=>{const $masonryWrapper=containerElement,hiddenBox='
',column='
',classItemColumn="light-masonry-item",classWrapper="light-masonry-wrapper",classInitialized="light-masonry-initialized",dataCallback={};let firstExecution=!1,allItems=[];const finalOptions={defaultColumns:4,resizeDelay:0,responsive:{1440:4,834:3,680:2},init:data=>{},afterBreakpoint:data=>{},...newOptions},setOrder=()=>{$masonryWrapper.querySelectorAll(".light-masonry-item").forEach(($element,index)=>{$element.dataset.index=index})},setChildsClass=()=>{Array.from($masonryWrapper.children).forEach($element=>{$element.classList.add(classItemColumn)})},setWrapperClass=()=>{$masonryWrapper.classList.add(classWrapper)},setInitializedClass=()=>{$masonryWrapper.classList.add(classInitialized)},setAttributes=()=>{$masonryWrapper.setAttribute("data-breakpoint",dataCallback.breakpoint),$masonryWrapper.setAttribute("data-columns",dataCallback.columns)},createHiddenBox=()=>{$masonryWrapper.insertAdjacentHTML("beforeend",hiddenBox)},getItems=()=>{$masonryWrapper.querySelectorAll(".light-masonry-item").forEach($element=>{$masonryWrapper.querySelector(".light-masonry-hidden-box").appendChild($element)})},removeColumns=()=>{$masonryWrapper.querySelectorAll(".light-masonry-column").forEach($element=>{$element.remove()})},addColumns=columns=>{for(let i=1;i<=columns;i++)$masonryWrapper.insertAdjacentHTML("beforeend",column)},setItems=()=>{const $arrayIndex=[];$masonryWrapper.querySelectorAll(".light-masonry-item").forEach($element=>{$arrayIndex.push($element.dataset.index)}),allItems=$arrayIndex.sort((a,b)=>a-b);const setItemsInColum=$column=>{allItems.length&&($column.appendChild($masonryWrapper.querySelector(`.light-masonry-item[data-index="${allItems[0]}"]`)),allItems.shift())};for(;allItems.length;)$masonryWrapper.querySelectorAll(".light-masonry-column").forEach(setItemsInColum)},setInitCallback=data=>{firstExecution||(finalOptions.init(data),firstExecution=!0)},setBreakpointCallback=data=>{firstExecution&&finalOptions.afterBreakpoint(data)},setLayout=()=>{let finalColumns=finalOptions.defaultColumns;dataCallback.breakpoint="defaultColumns",finalOptions.responsive!==void 0&&Object.keys(finalOptions.responsive).reverse().forEach(query=>{window.innerWidth>Number(query)||(dataCallback.breakpoint=Number(query),finalColumns=finalOptions.responsive[query])}),dataCallback.columns===finalColumns?(dataCallback.columns=finalColumns,firstExecution||(getItems(),removeColumns(),addColumns(finalColumns),setItems(),setAttributes())):(dataCallback.columns=finalColumns,getItems(),removeColumns(),addColumns(finalColumns),setItems(),setAttributes(),setBreakpointCallback(dataCallback))},debounce=(func,wait,immediate=!1)=>{let timeout;return(...args)=>{let callNow=immediate&&!timeout;clearTimeout(timeout),timeout=setTimeout(()=>{timeout=null,immediate||func.apply(this,args)},wait),callNow&&func.apply(this,args)}};if(!$masonryWrapper){window.console.error("[lightMasonry]: Contenedor no encontrado, coloca un selector v\xE1lido!");return}setWrapperClass(),setChildsClass(),setOrder(),createHiddenBox(),setLayout(),setInitializedClass(),setInitCallback(dataCallback),finalOptions.resizeDelay===0?window.addEventListener("resize",setLayout):window.addEventListener("resize",debounce(setLayout,finalOptions.resizeDelay))};window.lightMasonry=lightMasonry; //# sourceMappingURL=/cdn/shop/t/188/assets/light-masonry.js.map?v=6863379473290106901757088793