UNPKG

1.75 kBJavaScriptView Raw
1!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).htwoo=e.htwoo||{},e.htwoo.overflow={}))}(this,(function(e){"use strict";const t=[],l=(e,l)=>{e.target.parentElement.querySelectorAll(".hoo-overflow > *");((e,l,o,r)=>{let n=t[r].filter((t=>t.overallWidth>e-40)),i=t[r].filter((t=>t.overallWidth<e-40)),f=o.querySelector(".hoo-buttonicon-overflow .hoo-buttonflyout");if(f&&f.children.length<n.length)for(let e=0;e<n.length;e++)if(null!==o.querySelector("[data-ref="+n[e].ref+"]")){let t=document.createElement("li");t.appendChild(o.querySelector("[data-ref="+n[e].ref+"]")),f.appendChild(t)}var h;if(0!==f.children.length?(h=f.closest(".hoo-buttonicon-overflow"))&&h.classList.add("is-active"):(h=f.closest(".hoo-buttonicon-overflow"))&&h.classList.remove("is-active"),f&&f.children.length>n.length)for(let e=0;e<i.length;e++)if(null!==f.querySelector("[data-ref="+i[e].ref+"]")){let t=f.querySelector("[data-ref="+i[e].ref+"]");o.appendChild(t)}for(let e=0;e<f.children.length;e++)0===f.children[e].children.length&&f.children[e].remove()})(e.target.parentElement.clientWidth,0,e.target,l)},o=(e,t)=>{e.forEach(((e,t)=>{r(e.target.children,t),l(e,t)}))},r=(e,l)=>{let o=0;if(t.length<=l){t[l]=[];for(let r=0;r<e.length;r++)if(o+=e[r].clientWidth,!e[r].classList.contains("hoo-buttonicon-overflow")){let n={chlld:e[r],ref:"ref-"+l+"-"+r,width:e[r].clientWidth,overallWidth:o};e[r].dataset.ref=n.ref,t[l].push(n)}}};e.init=()=>{let e=document.querySelectorAll(".hoo-overflow");if(0!==e.length){const t=new ResizeObserver(o);e.forEach((e=>{t.observe(e)}))}},Object.defineProperty(e,"__esModule",{value:!0})}));