UNPKG

@anoki/fse-ui

Version:

FSE UI components library

3 lines (2 loc) 1.6 kB
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var k=function(r){if(typeof document>"u")return null;var u=Array.isArray(r)?r[0]:r;return u.ownerDocument.body},f=new WeakMap,v=new WeakMap,p={},h=0,b=function(r){return r&&(r.host||b(r.parentNode))},O=function(r,u){return u.map(function(e){if(r.contains(e))return e;var n=b(e);return n&&r.contains(n)?n:(console.error("aria-hidden",e,"in not contained inside",r,". Doing nothing"),null)}).filter(function(e){return!!e})},D=function(r,u,e,n){var i=O(u,Array.isArray(r)?r:[r]);p[e]||(p[e]=new WeakMap);var s=p[e],l=[],o=new Set,S=new Set(i),y=function(t){!t||o.has(t)||(o.add(t),y(t.parentNode))};i.forEach(y);var A=function(t){!t||S.has(t)||Array.prototype.forEach.call(t.children,function(a){if(o.has(a))A(a);else try{var c=a.getAttribute(n),d=c!==null&&c!=="false",w=(f.get(a)||0)+1,M=(s.get(a)||0)+1;f.set(a,w),s.set(a,M),l.push(a),w===1&&d&&v.set(a,!0),M===1&&a.setAttribute(e,"true"),d||a.setAttribute(n,"true")}catch(W){console.error("aria-hidden: cannot operate on ",a,W)}})};return A(u),o.clear(),h++,function(){l.forEach(function(t){var a=f.get(t)-1,c=s.get(t)-1;f.set(t,a),s.set(t,c),a||(v.has(t)||t.removeAttribute(n),v.delete(t)),c||t.removeAttribute(e)}),h--,h||(f=new WeakMap,f=new WeakMap,v=new WeakMap,p={})}},E=function(r,u,e){e===void 0&&(e="data-aria-hidden");var n=Array.from(Array.isArray(r)?r:[r]),i=k(r);return i?(n.push.apply(n,Array.from(i.querySelectorAll("[aria-live], script"))),D(n,i,e,"aria-hidden")):function(){return null}};exports.hideOthers=E; //# sourceMappingURL=index.cjs490.js.map