- Redesign KPI cards to look like stock tickers - Add ticker ID (e.g. ВЫРУЧК:KPI, AOV:KPI) - Arrow up/down SVG indicators for change direction - Mini trend-line (50px) inside each card - Change color: green (#16a34a) for up, red (#e21d1d) for down - Remove sparkline background area, keep only line - Fix duplicate arrowUp variable naming (bArrowUp/bArrowDown/bArrowNeutral)
1 line
19 KiB
JavaScript
1 line
19 KiB
JavaScript
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6342],{93075:function(e,t,n){let r;n.d(t,{NI:function(){return ea},Y$:function(){return x},YF:function(){return el},Y_:function(){return ep},hU:function(){return em},ll:function(){return $},qq:function(){return f},qs:function(){return es},wD:function(){return er}});var l,u=n(67294),o=n(97145),i=n(37317),a=n(88388),c=n(73935),s=n(1371);function f(e){return u.useMemo(()=>e.every(e=>null==e)?null:t=>{e.forEach(e=>{"function"==typeof e?e(t):null!=e&&(e.current=t)})},e)}let d={...l||(l=n.t(u,2))},m=d.useInsertionEffect||(e=>e());function p(e){let t=u.useRef(()=>{});return m(()=>{t.current=e}),u.useCallback(function(){for(var e=arguments.length,n=Array(e),r=0;r<e;r++)n[r]=arguments[r];return null==t.current?void 0:t.current(...n)},[])}var v="undefined"!=typeof document?u.useLayoutEffect:u.useEffect;function b(){return(b=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}let g=!1,h=0,y=()=>"floating-ui-"+Math.random().toString(36).slice(2,6)+h++,E=d.useId||function(){let[e,t]=u.useState(()=>g?y():void 0);return v(()=>{null==e&&t(y())},[]),u.useEffect(()=>{g=!0},[]),e},x=u.forwardRef(function(e,t){let{context:{placement:n,elements:{floating:r},middlewareData:{arrow:l,shift:o}},width:a=14,height:c=7,tipRadius:s=0,strokeWidth:f=0,staticOffset:d,stroke:m,d:p,style:{transform:g,...h}={},...y}=e,x=E(),[R,k]=u.useState(!1);if(v(()=>{r&&"rtl"===(0,i.Dx)(r).direction&&k(!0)},[r]),!r)return null;let[M,w]=n.split("-"),A="top"===M||"bottom"===M,C=d;(A&&null!=o&&o.x||!A&&null!=o&&o.y)&&(C=null);let S=2*f,O=S/2,L=a/2*(-(s/8)+1),q=c/2*s/4,F=!!p,I=C&&"end"===w?"bottom":"top",T=C&&"end"===w?"right":"left";C&&R&&(T="end"===w?"left":"right");let W=(null==l?void 0:l.x)!=null?C||l.x:"",j=(null==l?void 0:l.y)!=null?C||l.y:"",N=p||"M0,0 H"+a+" L"+(a-L)+","+(c-q)+(" Q"+a/2+","+c+" ")+L+","+(c-q)+" Z",P={top:F?"rotate(180deg)":"",left:F?"rotate(90deg)":"rotate(-90deg)",bottom:F?"":"rotate(180deg)",right:F?"rotate(-90deg)":"rotate(90deg)"}[M];return u.createElement("svg",b({},y,{"aria-hidden":!0,ref:t,width:F?a:a+S,height:a,viewBox:"0 0 "+a+" "+(c>a?c:a),style:{position:"absolute",pointerEvents:"none",[T]:W,[I]:j,[M]:A||F?"100%":"calc(100% - "+S/2+"px)",transform:[P,g].filter(e=>!!e).join(" "),...h}}),S>0&&u.createElement("path",{clipPath:"url(#"+x+")",fill:"none",stroke:m,strokeWidth:S+(p?0:1),d:N}),u.createElement("path",{stroke:S&&!p?y.fill:"none",d:N}),u.createElement("clipPath",{id:x},u.createElement("rect",{x:-O,y:O*(F?-1:1),width:a+S,height:a})))}),R=u.createContext(null),k=u.createContext(null),M=()=>{var e;return(null==(e=u.useContext(R))?void 0:e.id)||null},w=()=>u.useContext(k);function A(e){return"data-floating-ui-"+e}function C(e){let t=(0,u.useRef)(e);return v(()=>{t.current=e}),t}let S=0;function O(e,t){void 0===t&&(t={});let{preventScroll:n=!1,cancelPrevious:r=!0,sync:l=!1}=t;r&&cancelAnimationFrame(S);let u=()=>null==e?void 0:e.focus({preventScroll:n});l?u():S=requestAnimationFrame(u)}function L(e,t){let n=e.filter(e=>{var n;return e.parentId===t&&(null==(n=e.context)?void 0:n.open)}),r=n;for(;r.length;)r=e.filter(e=>{var t;return null==(t=r)?void 0:t.some(t=>{var n;return e.parentId===t.id&&(null==(n=e.context)?void 0:n.open)})}),n=n.concat(r);return n}let q=new WeakMap,F=new WeakSet,I={},T=0,W=()=>"undefined"!=typeof HTMLElement&&"inert"in HTMLElement.prototype,j=e=>e&&(e.host||j(e.parentNode)),N=(e,t)=>t.map(t=>{if(e.contains(t))return t;let n=j(t);return e.contains(n)?n:null}).filter(e=>null!=e);function P(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=!1);let r=(0,o.Me)(e[0]).body;return function(e,t,n,r){let l="data-floating-ui-inert",u=r?"inert":n?"aria-hidden":null,o=N(t,e),a=new Set,c=new Set(o),s=[];I[l]||(I[l]=new WeakMap);let f=I[l];return o.forEach(function e(t){!(!t||a.has(t))&&(a.add(t),t.parentNode&&e(t.parentNode))}),function e(t){!t||c.has(t)||[].forEach.call(t.children,t=>{if("script"!==(0,i.wk)(t)){if(a.has(t))e(t);else{let e=u?t.getAttribute(u):null,n=null!==e&&"false"!==e,r=(q.get(t)||0)+1,o=(f.get(t)||0)+1;q.set(t,r),f.set(t,o),s.push(t),1===r&&n&&F.add(t),1===o&&t.setAttribute(l,""),!n&&u&&t.setAttribute(u,"true")}}})}(t),a.clear(),T++,()=>{s.forEach(e=>{let t=(q.get(e)||0)-1,n=(f.get(e)||0)-1;q.set(e,t),f.set(e,n),t||(!F.has(e)&&u&&e.removeAttribute(u),F.delete(e)),n||e.removeAttribute(l)}),--T||(q=new WeakMap,q=new WeakMap,F=new WeakSet,I={})}}(e.concat(Array.from(r.querySelectorAll("[aria-live]"))),r,t,n)}let K=()=>({getShadowRoot:!0,displayCheck:"function"==typeof ResizeObserver&&ResizeObserver.toString().includes("[native code]")?"full":"none"});function D(e,t){let n=(0,a.tabbable)(e,K());"prev"===t&&n.reverse();let r=n.indexOf((0,o.AW)((0,o.Me)(e)));return n.slice(r+1)[0]}function B(){return D(document.body,"next")}function _(){return D(document.body,"prev")}function Y(e,t){let n=t||e.currentTarget,r=e.relatedTarget;return!r||!(0,o.r3)(n,r)}function Z(e){e.querySelectorAll("[data-tabindex]").forEach(e=>{let t=e.dataset.tabindex;delete e.dataset.tabindex,t?e.setAttribute("tabindex",t):e.removeAttribute("tabindex")})}let z={border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"fixed",whiteSpace:"nowrap",width:"1px",top:0,left:0};function H(e){"Tab"===e.key&&(e.target,clearTimeout(r))}let U=u.forwardRef(function(e,t){let[n,r]=u.useState();v(()=>((0,o.G6)()&&r("button"),document.addEventListener("keydown",H),()=>{document.removeEventListener("keydown",H)}),[]);let l={ref:t,tabIndex:0,role:n,"aria-hidden":!n||void 0,[A("focus-guard")]:"",style:z};return u.createElement("span",b({},e,l))}),G=u.createContext(null),Q=A("portal");function $(e){let{children:t,id:n,root:r,preserveTabOrder:l=!0}=e,o=function(e){void 0===e&&(e={});let{id:t,root:n}=e,r=E(),l=J(),[o,a]=u.useState(null),c=u.useRef(null);return v(()=>()=>{null==o||o.remove(),queueMicrotask(()=>{c.current=null})},[o]),v(()=>{if(!r||c.current)return;let e=t?document.getElementById(t):null;if(!e)return;let n=document.createElement("div");n.id=r,n.setAttribute(Q,""),e.appendChild(n),c.current=n,a(n)},[t,r]),v(()=>{if(null===n||!r||c.current)return;let e=n||(null==l?void 0:l.portalNode);e&&!(0,i.kK)(e)&&(e=e.current),e=e||document.body;let u=null;t&&((u=document.createElement("div")).id=t,e.appendChild(u));let o=document.createElement("div");o.id=r,o.setAttribute(Q,""),(e=u||e).appendChild(o),c.current=o,a(o)},[t,n,r,l]),o}({id:n,root:r}),[s,f]=u.useState(null),d=u.useRef(null),m=u.useRef(null),p=u.useRef(null),b=u.useRef(null),g=null==s?void 0:s.modal,h=null==s?void 0:s.open,y=!!s&&!s.modal&&s.open&&l&&!!(r||o);return u.useEffect(()=>{if(o&&l&&!g)return o.addEventListener("focusin",e,!0),o.addEventListener("focusout",e,!0),()=>{o.removeEventListener("focusin",e,!0),o.removeEventListener("focusout",e,!0)};function e(e){o&&Y(e)&&("focusin"===e.type?Z:function(e){(0,a.tabbable)(e,K()).forEach(e=>{e.dataset.tabindex=e.getAttribute("tabindex")||"",e.setAttribute("tabindex","-1")})})(o)}},[o,l,g]),u.useEffect(()=>{o&&(h||Z(o))},[h,o]),u.createElement(G.Provider,{value:u.useMemo(()=>({preserveTabOrder:l,beforeOutsideRef:d,afterOutsideRef:m,beforeInsideRef:p,afterInsideRef:b,portalNode:o,setFocusManagerState:f}),[l,o])},y&&o&&u.createElement(U,{"data-type":"outside",ref:d,onFocus:e=>{if(Y(e,o)){var t;null==(t=p.current)||t.focus()}else{let e=_()||(null==s?void 0:s.refs.domReference.current);null==e||e.focus()}}}),y&&o&&u.createElement("span",{"aria-owns":o.id,style:z}),o&&c.createPortal(t,o),y&&o&&u.createElement(U,{"data-type":"outside",ref:m,onFocus:e=>{if(Y(e,o)){var t;null==(t=b.current)||t.focus()}else{let t=B()||(null==s?void 0:s.refs.domReference.current);null==t||t.focus(),(null==s?void 0:s.closeOnFocusOut)&&(null==s||s.onOpenChange(!1,e.nativeEvent,"focus-out"))}}}))}let J=()=>u.useContext(G),V="data-floating-ui-focusable",X=[];function ee(e){X=X.filter(e=>e.isConnected);let t=e;if(t&&"body"!==(0,i.wk)(t)){if(!(0,a.isTabbable)(t,K())){let e=(0,a.tabbable)(t,K())[0];e&&(t=e)}X.push(t),X.length>20&&(X=X.slice(-20))}}function et(){return X.slice().reverse().find(e=>e.isConnected)}let en=u.forwardRef(function(e,t){return u.createElement("button",b({},e,{type:"button",ref:t,tabIndex:-1,style:z}))});function er(e){let{context:t,children:n,disabled:r=!1,order:l=["content"],guards:c=!0,initialFocus:s=0,returnFocus:f=!0,restoreFocus:d=!1,modal:m=!0,visuallyHiddenDismiss:b=!1,closeOnFocusOut:g=!0}=e,{open:h,refs:y,nodeId:E,onOpenChange:x,events:R,dataRef:k,floatingId:M,elements:{domReference:S,floating:q}}=t,F="number"==typeof s&&s<0,I=(0,o.Ie)(S)&&F,T=!W()||c,j=C(l),N=C(s),D=C(f),Z=w(),H=J(),G=u.useRef(null),Q=u.useRef(null),$=u.useRef(!1),X=u.useRef(!1),er=u.useRef(-1),el=null!=H,eu=q?q.hasAttribute(V)?q:q.querySelector("["+V+"]")||q:null,eo=p(function(e){return void 0===e&&(e=eu),e?(0,a.tabbable)(e,K()):[]}),ei=p(e=>{let t=eo(e);return j.current.map(e=>S&&"reference"===e?S:eu&&"floating"===e?eu:t).filter(Boolean).flat()});function ea(e){return!r&&b&&m?u.createElement(en,{ref:"start"===e?G:Q,onClick:e=>x(!1,e.nativeEvent)},"string"==typeof b?b:"Dismiss"):null}u.useEffect(()=>{if(r||!m)return;function e(e){if("Tab"===e.key){(0,o.r3)(eu,(0,o.AW)((0,o.Me)(eu)))&&0===eo().length&&!I&&(0,o.p7)(e);let t=ei(),n=(0,o.U9)(e);"reference"===j.current[0]&&n===S&&((0,o.p7)(e),e.shiftKey?O(t[t.length-1]):O(t[1])),"floating"===j.current[1]&&n===eu&&e.shiftKey&&((0,o.p7)(e),O(t[0]))}}let t=(0,o.Me)(eu);return t.addEventListener("keydown",e),()=>{t.removeEventListener("keydown",e)}},[r,S,eu,m,j,I,eo,ei]),u.useEffect(()=>{if(!r&&q)return q.addEventListener("focusin",e),()=>{q.removeEventListener("focusin",e)};function e(e){let t=(0,o.U9)(e),n=eo().indexOf(t);-1!==n&&(er.current=n)}},[r,q,eo]),u.useEffect(()=>{if(!r&&g&&q&&(0,i.Re)(S))return S.addEventListener("focusout",t),S.addEventListener("pointerdown",e),q.addEventListener("focusout",t),()=>{S.removeEventListener("focusout",t),S.removeEventListener("pointerdown",e),q.removeEventListener("focusout",t)};function e(){X.current=!0,setTimeout(()=>{X.current=!1})}function t(e){let t=e.relatedTarget;queueMicrotask(()=>{let n=!((0,o.r3)(S,t)||(0,o.r3)(q,t)||(0,o.r3)(t,q)||(0,o.r3)(null==H?void 0:H.portalNode,t)||null!=t&&t.hasAttribute(A("focus-guard"))||Z&&(L(Z.nodesRef.current,E).find(e=>{var n,r;return(0,o.r3)(null==(n=e.context)?void 0:n.elements.floating,t)||(0,o.r3)(null==(r=e.context)?void 0:r.elements.domReference,t)})||(function(e,t){var n;let r=[],l=null==(n=e.find(e=>e.id===t))?void 0:n.parentId;for(;l;){let t=e.find(e=>e.id===l);l=null==t?void 0:t.parentId,t&&(r=r.concat(t))}return r})(Z.nodesRef.current,E).find(e=>{var n,r;return(null==(n=e.context)?void 0:n.elements.floating)===t||(null==(r=e.context)?void 0:r.elements.domReference)===t})));if(d&&n&&(0,o.AW)((0,o.Me)(eu))===(0,o.Me)(eu).body){(0,i.Re)(eu)&&eu.focus();let e=er.current,t=eo(),n=t[e]||t[t.length-1]||eu;(0,i.Re)(n)&&n.focus()}(I||!m)&&t&&n&&!X.current&&t!==et()&&($.current=!0,x(!1,e,"focus-out"))})}},[r,S,q,eu,m,E,Z,H,x,g,d,eo,I]),u.useEffect(()=>{var e;if(r)return;let t=Array.from((null==H||null==(e=H.portalNode)?void 0:e.querySelectorAll("["+A("portal")+"]"))||[]);if(q){let e=[q,...t,G.current,Q.current,j.current.includes("reference")||I?S:null].filter(e=>null!=e),n=m||I?P(e,T,!T):P(e);return()=>{n()}}},[r,S,q,m,j,H,I,T]),v(()=>{if(r||!(0,i.Re)(eu))return;let e=(0,o.Me)(eu),t=(0,o.AW)(e);queueMicrotask(()=>{let e=ei(eu),n=N.current,r=("number"==typeof n?e[n]:n.current)||eu,l=(0,o.r3)(eu,t);F||l||!h||O(r,{preventScroll:r===eu})})},[r,h,eu,F,ei,N]),v(()=>{if(r||!eu)return;let e=!1,t=(0,o.Me)(eu),n=(0,o.AW)(t),l=k.current.openEvent;function u(t){let{open:n,reason:r,event:u,nested:i}=t;n&&(l=u),"escape-key"===r&&y.domReference.current&&ee(y.domReference.current),"hover"===r&&"mouseleave"===u.type&&($.current=!0),"outside-press"===r&&(i?($.current=!1,e=!0):$.current=!((0,o.Zj)(u)||(0,o.cr)(u)))}ee(n),R.on("openchange",u);let a=t.createElement("span");return a.setAttribute("tabindex","-1"),a.setAttribute("aria-hidden","true"),Object.assign(a.style,z),el&&S&&S.insertAdjacentElement("afterend",a),()=>{R.off("openchange",u);let n=(0,o.AW)(t),r=(0,o.r3)(q,n)||Z&&L(Z.nodesRef.current,E).some(e=>{var t;return(0,o.r3)(null==(t=e.context)?void 0:t.elements.floating,n)});(r||l&&["click","mousedown"].includes(l.type))&&y.domReference.current&&ee(y.domReference.current);let c="boolean"==typeof D.current?et()||a:D.current.current||a;queueMicrotask(()=>{D.current&&!$.current&&(0,i.Re)(c)&&(c===n||n===t.body||r)&&c.focus({preventScroll:e}),a.remove()})}},[r,q,eu,D,k,y,R,Z,E,el,S]),u.useEffect(()=>{queueMicrotask(()=>{$.current=!1})},[r]),v(()=>{if(!r&&H)return H.setFocusManagerState({modal:m,closeOnFocusOut:g,open:h,onOpenChange:x,refs:y}),()=>{H.setFocusManagerState(null)}},[r,H,m,h,x,y,g]),v(()=>{if(r||!eu||"function"!=typeof MutationObserver||F)return;let e=()=>{let e=eu.getAttribute("tabindex"),t=eo(),n=(0,o.AW)((0,o.Me)(q)),r=t.indexOf(n);-1!==r&&(er.current=r),j.current.includes("floating")||n!==y.domReference.current&&0===t.length?"0"!==e&&eu.setAttribute("tabindex","0"):"-1"!==e&&eu.setAttribute("tabindex","-1")};e();let t=new MutationObserver(e);return t.observe(eu,{childList:!0,subtree:!0,attributes:!0}),()=>{t.disconnect()}},[r,q,eu,y,j,eo,F]);let ec=!r&&T&&(!m||!I)&&(el||m);return u.createElement(u.Fragment,null,ec&&u.createElement(U,{"data-type":"inside",ref:null==H?void 0:H.beforeInsideRef,onFocus:e=>{if(m){let e=ei();O("reference"===l[0]?e[0]:e[e.length-1])}else if(null!=H&&H.preserveTabOrder&&H.portalNode){if($.current=!1,Y(e,H.portalNode)){let e=B()||S;null==e||e.focus()}else{var t;null==(t=H.beforeOutsideRef.current)||t.focus()}}}}),!I&&ea("start"),n,ea("end"),ec&&u.createElement(U,{"data-type":"inside",ref:null==H?void 0:H.afterInsideRef,onFocus:e=>{if(m)O(ei()[0]);else if(null!=H&&H.preserveTabOrder&&H.portalNode){if(g&&($.current=!0),Y(e,H.portalNode)){let e=_()||S;null==e||e.focus()}else{var t;null==(t=H.afterOutsideRef.current)||t.focus()}}}}))}function el(e){void 0===e&&(e={});let{nodeId:t}=e,n=function(e){let{open:t=!1,onOpenChange:n,elements:r}=e,l=E(),o=u.useRef({}),[i]=u.useState(()=>(function(){let e=new Map;return{emit(t,n){var r;null==(r=e.get(t))||r.forEach(e=>e(n))},on(t,n){e.set(t,[...e.get(t)||[],n])},off(t,n){var r;e.set(t,(null==(r=e.get(t))?void 0:r.filter(e=>e!==n))||[])}}})()),a=null!=M(),[c,s]=u.useState(r.reference),f=p((e,t,r)=>{o.current.openEvent=e?t:void 0,i.emit("openchange",{open:e,event:t,reason:r,nested:a}),null==n||n(e,t,r)}),d=u.useMemo(()=>({setPositionReference:s}),[]),m=u.useMemo(()=>({reference:c||r.reference||null,floating:r.floating||null,domReference:r.reference}),[c,r.reference,r.floating]);return u.useMemo(()=>({dataRef:o,open:t,onOpenChange:f,elements:m,events:i,floatingId:l,refs:d}),[t,f,m,i,l,d])}({...e,elements:{reference:null,floating:null,...e.elements}}),r=e.rootContext||n,l=r.elements,[o,a]=u.useState(null),[c,f]=u.useState(null),d=(null==l?void 0:l.domReference)||o,m=u.useRef(null),b=w();v(()=>{d&&(m.current=d)},[d]);let g=(0,s.YF)({...e,elements:{...l,...c&&{reference:c}}}),h=u.useCallback(e=>{let t=(0,i.kK)(e)?{getBoundingClientRect:()=>e.getBoundingClientRect(),contextElement:e}:e;f(t),g.refs.setReference(t)},[g.refs]),y=u.useCallback(e=>{((0,i.kK)(e)||null===e)&&(m.current=e,a(e)),((0,i.kK)(g.refs.reference.current)||null===g.refs.reference.current||null!==e&&!(0,i.kK)(e))&&g.refs.setReference(e)},[g.refs]),x=u.useMemo(()=>({...g.refs,setReference:y,setPositionReference:h,domReference:m}),[g.refs,y,h]),R=u.useMemo(()=>({...g.elements,domReference:d}),[g.elements,d]),k=u.useMemo(()=>({...g,...r,refs:x,elements:R,nodeId:t}),[g,x,R,t,r]);return v(()=>{r.dataRef.current.floatingContext=k;let e=null==b?void 0:b.nodesRef.current.find(e=>e.id===t);e&&(e.context=k)}),u.useMemo(()=>({...g,context:k,refs:x,elements:R}),[g,x,R,k])}let eu="active",eo="selected";function ei(e,t,n){let r=new Map,l="item"===n,u=e;if(l&&e){let{[eu]:t,[eo]:n,...r}=e;u=r}return{..."floating"===n&&{tabIndex:-1,[V]:""},...u,...t.map(t=>{let r=t?t[n]:null;return"function"==typeof r?e?r(e):null:r}).concat(e).reduce((e,t)=>(t&&Object.entries(t).forEach(t=>{let[n,u]=t;if(!(l&&[eu,eo].includes(n))){if(0===n.indexOf("on")){if(r.has(n)||r.set(n,[]),"function"==typeof u){var o;null==(o=r.get(n))||o.push(u),e[n]=function(){for(var e,t=arguments.length,l=Array(t),u=0;u<t;u++)l[u]=arguments[u];return null==(e=r.get(n))?void 0:e.map(e=>e(...l)).find(e=>void 0!==e)}}}else e[n]=u}}),e),{})}}function ea(e){void 0===e&&(e=[]);let t=e.map(e=>null==e?void 0:e.reference),n=e.map(e=>null==e?void 0:e.floating),r=e.map(e=>null==e?void 0:e.item),l=u.useCallback(t=>ei(t,e,"reference"),t),o=u.useCallback(t=>ei(t,e,"floating"),n),i=u.useCallback(t=>ei(t,e,"item"),r);return u.useMemo(()=>({getReferenceProps:l,getFloatingProps:o,getItemProps:i}),[l,o,i])}let ec=new Map([["select","listbox"],["combobox","listbox"],["label",!1]]);function es(e,t){var n;void 0===t&&(t={});let{open:r,floatingId:l}=e,{enabled:o=!0,role:i="dialog"}=t,a=null!=(n=ec.get(i))?n:i,c=E(),s=null!=M(),f=u.useMemo(()=>"tooltip"===a||"label"===i?{["aria-"+("label"===i?"labelledby":"describedby")]:r?l:void 0}:{"aria-expanded":r?"true":"false","aria-haspopup":"alertdialog"===a?"dialog":a,"aria-controls":r?l:void 0,..."listbox"===a&&{role:"combobox"},..."menu"===a&&{id:c},..."menu"===a&&s&&{role:"menuitem"},..."select"===i&&{"aria-autocomplete":"none"},..."combobox"===i&&{"aria-autocomplete":"list"}},[a,l,s,r,c,i]),d=u.useMemo(()=>{let e={id:l,...a&&{role:a}};return"tooltip"===a||"label"===i?e:{...e,..."menu"===a&&{"aria-labelledby":c}}},[a,l,c,i]),m=u.useCallback(e=>{let{active:t,selected:n}=e,r={role:"option",...t&&{id:l+"-option"}};switch(i){case"select":return{...r,"aria-selected":t&&n};case"combobox":return{...r,...t&&{"aria-selected":!0}}}return{}},[l,i]);return u.useMemo(()=>o?{reference:f,floating:d,item:m}:{},[o,f,d,m])}let ef=e=>e.replace(/[A-Z]+(?![a-z])|[A-Z]/g,(e,t)=>(t?"-":"")+e.toLowerCase());function ed(e,t){return"function"==typeof e?e(t):e}function em(e,t){void 0===t&&(t={});let{open:n,elements:{floating:r}}=e,{duration:l=250}=t,o=("number"==typeof l?l:l.close)||0,[i,a]=u.useState("unmounted"),c=function(e,t){let[n,r]=u.useState(e);return e&&!n&&r(!0),u.useEffect(()=>{if(!e&&n){let e=setTimeout(()=>r(!1),t);return()=>clearTimeout(e)}},[e,n,t]),n}(n,o);return c||"close"!==i||a("unmounted"),v(()=>{if(r){if(n){a("initial");let e=requestAnimationFrame(()=>{a("open")});return()=>{cancelAnimationFrame(e)}}a("close")}},[n,r]),{isMounted:c,status:i}}function ep(e,t){void 0===t&&(t={});let{initial:n={opacity:0},open:r,close:l,common:o,duration:i=250}=t,a=e.placement,c=a.split("-")[0],s=u.useMemo(()=>({side:c,placement:a}),[c,a]),f="number"==typeof i,d=(f?i:i.open)||0,m=(f?i:i.close)||0,[p,b]=u.useState(()=>({...ed(o,s),...ed(n,s)})),{isMounted:g,status:h}=em(e,{duration:i}),y=C(n),E=C(r),x=C(l),R=C(o);return v(()=>{let e=ed(y.current,s),t=ed(x.current,s),n=ed(R.current,s),r=ed(E.current,s)||Object.keys(e).reduce((e,t)=>(e[t]="",e),{});if("initial"===h&&b(t=>({transitionProperty:t.transitionProperty,...n,...e})),"open"===h&&b({transitionProperty:Object.keys(r).map(ef).join(","),transitionDuration:d+"ms",...n,...r}),"close"===h){let r=t||e;b({transitionProperty:Object.keys(r).map(ef).join(","),transitionDuration:m+"ms",...n,...r})}},[m,x,y,E,R,d,h,s]),{isMounted:g,styles:p}}}}]); |