UNPKG

@nethesis/phone-island

Version:
3 lines (2 loc) 3.44 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../dom/dist/floating-ui.dom.mjs.js"),t=require("react"),r=require("react-dom"),n=require("../../core/dist/floating-ui.core.mjs.js");function o(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var u=o(t),i=o(r),s="undefined"!=typeof document?t.useLayoutEffect:t.useEffect;function f(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if("function"==typeof e&&e.toString()===t.toString())return!0;let r,n,o;if(e&&t&&"object"==typeof e){if(Array.isArray(e)){if(r=e.length,r!==t.length)return!1;for(n=r;0!=n--;)if(!f(e[n],t[n]))return!1;return!0}if(o=Object.keys(e),r=o.length,r!==Object.keys(t).length)return!1;for(n=r;0!=n--;)if(!{}.hasOwnProperty.call(t,o[n]))return!1;for(n=r;0!=n--;){const r=o[n];if(("_owner"!==r||!e.$$typeof)&&!f(e[r],t[r]))return!1}return!0}return e!=e&&t!=t}function c(e){if("undefined"==typeof window)return 1;return(e.ownerDocument.defaultView||window).devicePixelRatio||1}function l(e,t){const r=c(e);return Math.round(t*r)/r}function a(e){const t=u.useRef(e);return s((()=>{t.current=e})),t}exports.autoUpdate=e.autoUpdate,exports.computePosition=e.computePosition,exports.platform=e.platform,exports.detectOverflow=n.detectOverflow,exports.flip=(t,r)=>({...e.flip(t),options:[t,r]}),exports.offset=(e,t)=>({...n.offset(e),options:[e,t]}),exports.shift=(t,r)=>({...e.shift(t),options:[t,r]}),exports.size=(t,r)=>({...e.size(t),options:[t,r]}),exports.useFloating=function(t){void 0===t&&(t={});const{placement:r="bottom",strategy:n="absolute",middleware:o=[],platform:p,elements:{reference:d,floating:m}={},transform:g=!0,whileElementsMounted:y,open:w}=t,[x,b]=u.useState({x:0,y:0,strategy:n,placement:r,middlewareData:{},isPositioned:!1}),[h,j]=u.useState(o);f(h,o)||j(o);const[P,O]=u.useState(null),[v,M]=u.useState(null),S=u.useCallback((e=>{e!==q.current&&(q.current=e,O(e))}),[]),R=u.useCallback((e=>{e!==C.current&&(C.current=e,M(e))}),[]),k=d||P,_=m||v,q=u.useRef(null),C=u.useRef(null),E=u.useRef(x),z=null!=y,D=a(y),A=a(p),F=a(w),U=u.useCallback((()=>{if(!q.current||!C.current)return;const t={placement:r,strategy:n,middleware:h};A.current&&(t.platform=A.current),e.computePosition(q.current,C.current,t).then((e=>{const t={...e,isPositioned:!1!==F.current};$.current&&!f(E.current,t)&&(E.current=t,i.flushSync((()=>{b(t)})))}))}),[h,r,n,A,F]);s((()=>{!1===w&&E.current.isPositioned&&(E.current.isPositioned=!1,b((e=>({...e,isPositioned:!1}))))}),[w]);const $=u.useRef(!1);s((()=>($.current=!0,()=>{$.current=!1})),[]),s((()=>{if(k&&(q.current=k),_&&(C.current=_),k&&_){if(D.current)return D.current(k,_,U);U()}}),[k,_,U,D,z]);const L=u.useMemo((()=>({reference:q,floating:C,setReference:S,setFloating:R})),[S,R]),V=u.useMemo((()=>({reference:k,floating:_})),[k,_]),B=u.useMemo((()=>{const e={position:n,left:0,top:0};if(!V.floating)return e;const t=l(V.floating,x.x),r=l(V.floating,x.y);return g?{...e,transform:"translate("+t+"px, "+r+"px)",...c(V.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:t,top:r}}),[n,g,V.floating,x.x,x.y]);return u.useMemo((()=>({...x,update:U,refs:L,elements:V,floatingStyles:B})),[x,U,L,V,B])}; //# sourceMappingURL=floating-ui.react-dom.mjs.js.map