{"version":3,"file":"Randomizer.Dg5S_n-R.mjs","names":["useRef"],"sources":["https:/framerusercontent.com/modules/xVEb1yiyVgI6XFsyped7/LJMgE4fnAdPV5yRXi40A/Randomizer.js"],"sourcesContent":["// RandomizeCMSDOM.tsx\n// Apply to CMS List / Collection List wrapper\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef}from\"react\";function shuffle(arr){const a=arr.slice();for(let i=a.length-1;i>0;i--){const j=Math.floor(Math.random()*(i+1));[a[i],a[j]]=[a[j],a[i]];}return a;}export const withRandomCMSDOM=Component=>{return props=>{const ref=useRef(null);// ⭐ change this if needed\nconst DISPLAY_COUNT=3;useEffect(()=>{const container=ref.current;if(!container)return;// ⭐ IMPORTANT: prevent running again\nif(container.dataset.randomized===\"true\")return;container.dataset.randomized=\"true\";// wait until CMS fully renders\nsetTimeout(()=>{let nodes=Array.from(container.children);if(!nodes.length)return;// auto detect slug\nconst currentSlug=typeof window!==\"undefined\"?window.location.pathname.split(\"/\").pop():\"\";// -----------------------\n// EXCLUDE CURRENT ITEM\n// -----------------------\nnodes=nodes.filter(node=>{const links=Array.from(node.querySelectorAll(\"a\"));return!links.some(a=>(a.getAttribute(\"href\")||\"\").includes(currentSlug||\"\"));});if(!nodes.length)return;// -----------------------\n// RANDOMIZE FULL POOL\n// -----------------------\nnodes=shuffle(nodes);// -----------------------\n// KEEP ONLY FIRST N\n// -----------------------\nconst keep=nodes.slice(0,DISPLAY_COUNT);const remove=nodes.slice(DISPLAY_COUNT);// remove extras permanently\nremove.forEach(node=>node.remove());// re-append kept items in order\nkeep.forEach(node=>container.appendChild(node));},120)// small delay ensures CMS finished rendering\n;},[]);return /*#__PURE__*/_jsx(Component,{ref:ref,...props});};};\nexport const __FramerMetadata__ = {\"exports\":{\"withRandomCMSDOM\":{\"type\":\"reactHoc\",\"name\":\"withRandomCMSDOM\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Randomizer.map"],"mappings":"uIAE+E,SAAS,EAAQ,EAAI,CAAC,IAAM,EAAE,EAAI,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,IAAM,EAAE,KAAK,MAAM,KAAK,QAAQ,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,CAAE,OAAO,yBAApL,IAAoC,CAAgK,EAAiB,GAAmB,GAAO,CAAC,IAAM,EAAIA,EAAO,KAAK,CAgB1S,OAfe,MAAc,CAAC,IAAM,EAAU,EAAI,QAAY,GAClE,EAAU,QAAQ,aAAa,SAAc,EAAU,QAAQ,WAAW,OAC7E,eAAe,CAAC,IAAI,EAAM,MAAM,KAAK,EAAU,SAAS,CAAC,GAAG,CAAC,EAAM,OAAO,OAC1E,IAAM,EAAmB,IAAS,OAAsD,GAA1C,EAAO,SAAS,SAAS,MAAM,IAAI,CAAC,KAAK,CAGsE,GAA7J,EAAM,EAAM,OAAO,GAAgE,CAA7C,MAAM,KAAK,EAAK,iBAAiB,IAAI,CAAC,CAAc,KAAK,IAAI,EAAE,aAAa,OAAO,EAAE,IAAI,SAAS,GAAa,GAAG,CAAC,CAAG,CAAI,CAAC,EAAM,OAAO,OAG9K,EAAM,EAAQ,EAAM,CAGpB,IAAM,EAAK,EAAM,MAAM,EAAE,EAAc,CAAc,EAAM,MAAM,EAAc,CACxE,QAAQ,GAAM,EAAK,QAAQ,CAAC,CACnC,EAAK,QAAQ,GAAM,EAAU,YAAY,EAAK,CAAC,EAAG,IAAI,GACnD,EAAE,CAAC,CAAqB,EAAK,EAAU,CAAK,MAAI,GAAG,EAAM,CAAC"}