UNPKG

p3x-redis-ui-material

Version:

💿 P3X Redis UI triple frontend — Angular + React/MUI + Vue/Vuetify with 54 languages, 7 themes, Socket.IO, desktop notifications, and full feature parity

1 lines • 5.28 kB
import{i as e}from"./rolldown-runtime-Dd_uD5pT.js";import{M as t,N as n,j as r,m as i,q as a}from"./Box-DSXpVc0K.js";import{o}from"./i18n.store-ZJjZbIIr.js";function s(e,t=166){let n;function r(...r){clearTimeout(n),n=setTimeout(()=>{e.apply(this,r)},t)}return r.clear=()=>{clearTimeout(n)},r}function c(e){return r(e).defaultView||window}var l=a,u=r;function d(e){let t=e.activeElement;for(;t?.shadowRoot?.activeElement!=null;)t=t.shadowRoot.activeElement;return t}var f=d,p=s,m=c;function h(e,t){if(!e||!t)return!1;if(e.contains(t))return!0;let n=t.getRootNode?.();if(n&&n instanceof ShadowRoot){let n=t;for(;n;){if(e===n)return!0;n=n.parentNode??n.host??null}}return!1}var g=h,_=e(o(),1),v=_.createContext(void 0);function y(){let e=_.useContext(v);if(e===void 0)throw Error(`MUI: RovingTabIndexContext is missing. Roving tab index items must be placed within a roving tab index provider.`);return e}var b=Object.is;function x(e,t){if(e===t)return!0;if(!(e instanceof Object)||!(t instanceof Object))return!1;let n=0,r=0;for(let r in e)if(n+=1,!b(e[r],t[r])||!(r in t))return!1;for(let e in t)r+=1;return n===r}var S=[`ArrowRight`,`ArrowLeft`,`ArrowUp`,`ArrowDown`,`Home`,`End`];function C(e){let{activeItemId:n,getDefaultActiveItemId:i,orientation:a,isRtl:o=!1,isItemFocusable:s=L,wrap:c=!0}=e,[l,u]=_.useState(n),[f,p]=_.useState(n),m=l;n!==f&&(p(n),n!==void 0&&n!==l&&(m=n,u(n)));let h=_.useRef(null),g=_.useRef(new Map),[v,y]=_.useState(0),b=_.useMemo(()=>P(g.current),[v]),C=T(m,b,s,i),w=_.useRef(C);w.current=C;let E=_.useCallback(()=>{let e=P(g.current);return j(e,T(w.current,e,s,i))},[i,s]),D=_.useCallback(()=>g.current,[]),A=t(e=>{x(g.current.get(e.id)??null,e)||(g.current.set(e.id,e),y(e=>e+1))}),M=t(e=>{g.current.delete(e)&&y(e=>e+1)}),I=t(e=>{u(e)}),R=_.useCallback(e=>w.current===e,[]),z=_.useCallback((e,t,n,r)=>{let i=k(F(g.current),e,t,n,r??s);return i?(i.element?.focus(),u(i.id),i):null},[s]),V=_.useCallback((e,t,n)=>({onFocus:e=>{t?.(e);let n=F(g.current),r=N(n,e.target);r!==-1&&u(n[r].id)},onKeyDown:e=>{if(n?.(e),e.defaultPrevented||e.altKey||e.shiftKey||e.ctrlKey||e.metaKey||!S.includes(e.key))return;let t=a===`horizontal`?`ArrowLeft`:`ArrowUp`,i=a===`horizontal`?`ArrowRight`:`ArrowDown`;a===`horizontal`&&o&&(t=`ArrowRight`,i=`ArrowLeft`);let s=F(g.current),l=d(r(h.current)),u=l===h.current,f=O(s,l,w.current),p=`next`;switch(e.key){case t:p=`previous`,e.preventDefault(),u&&(f=s.length);break;case i:e.preventDefault(),u&&(f=-1);break;case`Home`:e.preventDefault(),f=-1;break;case`End`:e.preventDefault(),p=`previous`,f=s.length;break;default:return}z(f,p,c)},ref:B(e,e=>{h.current=e})}),[z,o,a,c]),H=_.useCallback(e=>{let t=F(g.current),n=d(r(h.current)),i=n===h.current?-1:O(t,n,w.current);return z(i,`next`,!0,e)?.id??null},[z]);return _.useMemo(()=>({activeItemId:C,focusNext:H,getActiveItem:E,getContainerProps:V,getItemMap:D,isItemActive:R,registerItem:A,setActiveItemId:I,unregisterItem:M}),[C,H,E,V,D,R,A,I,M])}function w(e){let{activeItemId:t,registerItem:r,unregisterItem:i}=y(),o=_.useRef(null),s=_.useMemo(()=>({disabled:e.disabled??!1,element:null,focusableWhenDisabled:e.focusableWhenDisabled??!1,id:e.id,selected:e.selected??!1,textValue:e.textValue}),[e.disabled,e.focusableWhenDisabled,e.id,e.selected,e.textValue]),c=_.useRef(s);c.current=s;let l=_.useCallback(t=>{if(o.current=t,t==null){queueMicrotask(()=>{o.current??i(e.id)});return}r({...c.current,element:t})},[e.id,r,i]),u=n(e.ref,l);return a(()=>{o.current&&r({...s,element:o.current})},[s,r]),a(()=>{let t=e.id;return()=>{i(t)}},[e.id,i]),{ref:u,tabIndex:t===e.id?0:-1}}function T(e,t,n,r){return e==null?D(t,n,r):E(e,t,n)}function E(e,t,n){let r=M(t,e);return r===-1?A(t,n):n(t[r])?t[r].id:k(t,r,`next`,!1,n)?.id??null}function D(e,t,n){let r=n?.(e);if(r!=null){let n=j(e,r);if(n&&t(n))return n.id}return A(e,t)}function O(e,t,n){if(t){let n=N(e,t);if(n!==-1)return n}return M(e,n)}function k(e,t,n,r,i){let a=e.length-1;if(a===-1)return null;let o=!1,s=I(t,a,n,r),c=s;for(;s!==-1;){if(s===c){if(o)return null;o=!0}let t=e[s];if(!t||!i(t))s=I(s,a,n,r);else return t}return null}function A(e,t){return e.find(e=>t(e))?.id??null}function j(e,t){return t==null?null:e.find(e=>e.id===t)??null}function M(e,t){return t==null?-1:e.findIndex(e=>e.id===t)}function N(e,t){return t?e.findIndex(e=>e.element===t||e.element?.contains(t)):-1}function P(e){let t=Array.from(e.values());if(t.every(e=>e.element==null))return t;let n=t.filter(R).sort((e,t)=>z(e.element,t.element)),r=t.filter(e=>!R(e));return[...n,...r]}function F(e){return P(e).filter(R)}function I(e,t,n,r=!0){return n===`next`?e===t?r?0:-1:e+1:e===0?r?t:-1:e-1}function L(e){return e.element?e.focusableWhenDisabled?!0:!e.disabled&&!e.element.hasAttribute(`disabled`)&&e.element.getAttribute(`aria-disabled`)!==`true`&&e.element.hasAttribute(`tabindex`):!1}function R(e){return e.element!=null&&e.element.isConnected}function z(e,t){if(e===t)return 0;let n=e.compareDocumentPosition(t);return n&Node.DOCUMENT_POSITION_FOLLOWING||n&Node.DOCUMENT_POSITION_CONTAINED_BY?-1:n&Node.DOCUMENT_POSITION_PRECEDING||n&Node.DOCUMENT_POSITION_CONTAINS?1:0}function B(...e){return t=>{e.forEach(e=>{i(e??null,t)})}}export{y as a,m as c,u as d,l as f,v as i,p as l,s as m,w as n,g as o,c as p,C as r,h as s,L as t,f as u};