neatkit 0.9.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/dist/{Button-DU4j_IED.cjs → Button-CVe9T_Zw.cjs} +1 -1
  2. package/dist/{Button-BV5OUXpc.js → Button-D6rXvcqq.js} +1 -1
  3. package/dist/Button.cjs +1 -1
  4. package/dist/Button.js +1 -1
  5. package/dist/Checkbox.cjs +1 -1
  6. package/dist/Checkbox.js +111 -110
  7. package/dist/Input.cjs +1 -1
  8. package/dist/Input.js +52 -51
  9. package/dist/Markdown.cjs +1 -1
  10. package/dist/Markdown.js +1 -1
  11. package/dist/Modal.cjs +1 -1
  12. package/dist/Modal.js +57 -56
  13. package/dist/PinInput.cjs +1 -1
  14. package/dist/PinInput.js +88 -87
  15. package/dist/Popover.cjs +1 -1
  16. package/dist/Popover.js +2 -2
  17. package/dist/Progress.cjs +1 -0
  18. package/dist/Progress.js +40 -0
  19. package/dist/Radio.cjs +1 -1
  20. package/dist/Radio.js +48 -47
  21. package/dist/Select.cjs +1 -1
  22. package/dist/Select.js +363 -359
  23. package/dist/Sidebar.cjs +1 -1
  24. package/dist/Sidebar.js +44 -44
  25. package/dist/Spinner-BE0F4y2S.cjs +1 -0
  26. package/dist/Spinner-CmxlDlOk.js +23 -0
  27. package/dist/Spinner.cjs +1 -1
  28. package/dist/Spinner.js +1 -1
  29. package/dist/{Table-qetwZpTC.cjs → Table-BqWBgMTU.cjs} +1 -1
  30. package/dist/{Table-CADupJEU.js → Table-DutHfiXR.js} +2 -2
  31. package/dist/Table.cjs +1 -1
  32. package/dist/Table.js +1 -1
  33. package/dist/{Tooltip-B2d5ss7S.cjs → Tooltip-CCuE-hfp.cjs} +1 -1
  34. package/dist/{Tooltip-BK64rkxV.js → Tooltip-CeyRKNv4.js} +1 -1
  35. package/dist/Tooltip.cjs +1 -1
  36. package/dist/Tooltip.js +1 -1
  37. package/dist/components/Portal/hooks/useAnchoredPosition.d.ts +59 -0
  38. package/dist/components/Progress/Progress.d.ts +38 -0
  39. package/dist/components/Progress/index.d.ts +2 -0
  40. package/dist/components/Progress/utils/value.d.ts +25 -0
  41. package/dist/components/Select/Select.d.ts +6 -74
  42. package/dist/components/Select/components/CustomSelect.d.ts +59 -0
  43. package/dist/components/Select/components/NativeSelect.d.ts +26 -0
  44. package/dist/components/Select/components/SelectListbox.d.ts +50 -0
  45. package/dist/components/Select/hooks/useSelectFormReset.d.ts +27 -0
  46. package/dist/components/Select/hooks/useSelectPosition.d.ts +12 -0
  47. package/dist/components/Select/hooks/useTypeahead.d.ts +14 -0
  48. package/dist/components/Select/utils/options.d.ts +38 -0
  49. package/dist/components/Sidebar/Sidebar.d.ts +30 -24
  50. package/dist/components/Sidebar/components/SidebarOverlay.d.ts +3 -4
  51. package/dist/components/Sidebar/components/SidebarPanel.d.ts +2 -2
  52. package/dist/style.css +1 -1
  53. package/dist/useAnchoredPosition-C0VS7hm6.js +105 -0
  54. package/dist/useAnchoredPosition-D7GRFzoX.cjs +1 -0
  55. package/dist/useFloatingPosition-Dq8xpr3E.js +27 -0
  56. package/dist/useFloatingPosition-g5kXywoB.cjs +1 -0
  57. package/dist/useFocusTrap-C0IcCdNf.js +136 -0
  58. package/dist/useFocusTrap-gAK_402D.cjs +1 -0
  59. package/package.json +6 -1
  60. package/dist/Spinner-BXgw60UC.cjs +0 -1
  61. package/dist/Spinner-CVYvk6YK.js +0 -25
  62. package/dist/floating-position-DIjh2wnP.cjs +0 -1
  63. package/dist/floating-position-DvR6e334.js +0 -50
  64. package/dist/useFloatingPosition-B3ZC-v3v.js +0 -43
  65. package/dist/useFloatingPosition-GzkP9dCc.cjs +0 -1
  66. package/dist/useFocusTrap-BrFZdMqQ.cjs +0 -1
  67. package/dist/useFocusTrap-DhVnlboe.js +0 -136
package/dist/Select.cjs CHANGED
@@ -1 +1 @@
1
- "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react/jsx-runtime"),a=require("react"),J=require("./aria-Bntn6ad_.cjs"),$=require("./Icon-BIBzgznI.cjs"),O=require("./usePresence-B5RYv4e1.cjs"),ke=require("./floating-position-DIjh2wnP.cjs"),q=8,B=4,ge=160,Ee=72;function _e(n,t,s){const i=s.bottom-n.bottom-B-q,h=n.top-s.top-B-q,d=i<ge&&h>i,c=Math.max(Ee,d?h:i),m=Math.max(n.width,(t==null?void 0:t.width)??n.width),u=s.left+q,w=Math.min(Math.max(u,n.left),Math.max(u,s.right-q-m)),r=d?Math.max(s.top+q,n.top-B-Math.min((t==null?void 0:t.height)??c,c)):n.bottom+B;return{left:w,maxHeight:c,minWidth:n.width,top:r}}function se(n,t,s){if(n.length===0)return-1;for(let i=1;i<=n.length;i+=1){const h=(t+s*i+n.length)%n.length;if(!n[h].disabled)return h}return-1}function De(n,t,s){for(let i=1;i<=n.length;i+=1){const h=(s+i+n.length)%n.length,d=n[h];if(!d.disabled&&d.label.toLocaleLowerCase().startsWith(t))return h}return-1}function Se(n){const t=new Set;n.forEach(s=>{if(t.has(s.value))throw new Error("Select option values must be unique");t.add(s.value)})}function Re(n,t,s){t.current=n,typeof s=="function"?s(n):s&&(s.current=n)}function je(n){const{"aria-invalid":t,children:s,className:i,defaultValue:h,disabled:d=!1,forwardedReference:c,invalid:m=!1,placeholder:u,style:w,value:r,...k}=n,b=J.resolveAriaInvalid(m,t),x=m||J.hasInvalidState(t);return o.jsxs("span",{className:["nk-select",i].filter(Boolean).join(" "),"data-disabled":d||void 0,"data-invalid":x||void 0,"data-mode":"native",style:w,children:[o.jsxs("select",{...k,ref:c,"aria-invalid":b,className:"nk-select__control",defaultValue:r===void 0?h??(u!==void 0?"":void 0):void 0,disabled:d,value:r,children:[u!==void 0?o.jsx("option",{disabled:!0,value:"",children:u}):null,s]}),o.jsx($.Icon,{className:"nk-select__icon",type:"chevron-down"})]})}function Oe(n,t,s,i){const[h,d]=a.useState(null);return a.useEffect(()=>{if(!n||!t||!i){d(null);return}const c=t.ownerDocument.defaultView;if(!c)return;const m=c;function u(){const k=t==null?void 0:t.getBoundingClientRect(),b=i==null?void 0:i.getBoundingClientRect();if(!k||!b||!i)return;const x=_e(k,s==null?void 0:s.getBoundingClientRect(),ke.getVisibleBounds(b,m.innerWidth,m.innerHeight));d({...x,left:x.left-b.left-i.clientLeft+i.scrollLeft,top:x.top-b.top-i.clientTop+i.scrollTop})}u(),m.addEventListener("scroll",u,!0),m.addEventListener("resize",u);const w=m.ResizeObserver,r=w?new w(u):null;return r==null||r.observe(t),r==null||r.observe(i),s&&(r==null||r.observe(s)),()=>{m.removeEventListener("scroll",u,!0),m.removeEventListener("resize",u),r==null||r.disconnect()}},[n,i,s,t]),h}function Le(n){const{active:t,closeOnEscape:s,closeOnOutsideInteraction:i,highlightedIndex:h,id:d,listboxReference:c,onEscapeDismiss:m,onEscapeKeyDown:u,onHighlight:w,onOutsideDismiss:r,onPointerDownOutside:k,onSelect:b,options:x,ownerDocument:M,position:D,selectedValue:S,state:L,triggerReference:G}=n,v=a.useRef(null),K=O.useBoundary("Select").boundaryElement,R=O.useOverlayLayer(!0,K),U=a.useMemo(()=>[G,v],[G]),X=a.useCallback(f=>{v.current=f,c(f)},[c]);return O.useDismissableLayer({active:t,boundaries:U,boundary:K,dismissOnEscape:s,dismissOnPointerDownOutside:i,layerId:R.id,onEscapeDismiss:m,onEscapeKeyDown:u,onPointerDownOutside:k,onPointerDownOutsideDismiss:r,ownerDocument:M}),o.jsx("div",{"aria-hidden":t?void 0:!0,"aria-labelledby":d,className:"nk-select__listbox","data-state":L,id:`${d}-listbox`,ref:X,role:"listbox",style:D?{left:D.left,maxHeight:D.maxHeight,minWidth:D.minWidth,top:D.top,zIndex:R.zIndex}:{visibility:"hidden",zIndex:R.zIndex},children:x.map((f,H)=>o.jsxs("div",{"aria-disabled":f.disabled||void 0,"aria-selected":f.value===S,className:"nk-select__option","data-highlighted":H===h||void 0,"data-selected":f.value===S||void 0,id:`${d}-option-${H}`,onPointerDown:Z=>{Z.preventDefault(),f.disabled||b(f)},onPointerMove:()=>{f.disabled||w(H)},role:"option",children:[f.icon?o.jsx($.Icon,{type:f.icon}):null,o.jsx("span",{className:"nk-select__option-label",children:f.label}),f.value===S?o.jsx($.Icon,{className:"nk-select__check",type:"checkmark"}):null]},f.value))})}function Pe(n){var oe;const{"aria-invalid":t,className:s,closeOnEscape:i=!0,closeOnOutsideInteraction:h=!0,defaultValue:d="",disabled:c=!1,displayOverride:m,form:u,forwardedReference:w,id:r,invalid:k=!1,name:b,onChange:x,onClick:M,onEscapeKeyDown:D,onKeyDown:S,onOpenChange:L,onPointerDownOutside:G,options:v,placeholder:K,required:R=!1,style:U,value:X,width:f,...H}=n;Se(v);const Z=a.useId(),P=r??Z,g=a.useRef(null),le=a.useRef(null),C=a.useRef(null),F=a.useRef(""),[A,ce]=a.useState(null),[p,re]=a.useState(!1),[E,V]=a.useState(-1),[de,ie]=a.useState(d),N=X!==void 0,j=N?X:de,ue=v.find(e=>e.value===j),fe=k||J.hasInvalidState(t),he=J.resolveAriaInvalid(k,t),ee=O.usePresence(p),W=((oe=g.current)==null?void 0:oe.ownerDocument)??(typeof document>"u"?null:document),me=O.useBoundary("Select").boundaryElement,ve=Oe(ee.present,g.current,A,me),pe=f===void 0?U:{...U,width:f},Q=m??ue,Ie=a.useCallback(e=>{Re(e,g,w)},[w]),I=a.useCallback(e=>{p!==e&&(re(e),L==null||L(e))},[L,p]),z=a.useCallback((e=1)=>{const l=v.findIndex(_=>_.value===j&&!_.disabled),y=e===1?-1:v.length;V(l>=0?l:se(v,y,e)),I(!0)},[v,j,I]),ae=a.useCallback(e=>{var l;c||e.disabled||(N||ie(e.value),I(!1),(l=g.current)==null||l.focus(),x==null||x(e.value))},[c,N,x,I]),xe=a.useCallback(()=>{var e;I(!1),(e=g.current)==null||e.focus()},[I]),ye=a.useCallback(()=>{I(!1)},[I]);function we(e){M==null||M(e),!(e.defaultPrevented||c)&&(p?I(!1):z())}function be(e){if(S==null||S(e),!(e.defaultPrevented||c)){if(e.key==="ArrowDown"||e.key==="ArrowUp"){e.preventDefault();const l=e.key==="ArrowDown"?1:-1;p?V(y=>se(v,y,l)):z(l);return}if(e.key==="Home"||e.key==="End"){if(e.preventDefault(),!p)z(e.key==="Home"?1:-1);else{const l=e.key==="Home"?1:-1,y=l===1?-1:v.length;V(se(v,y,l))}return}if(e.key==="Enter"||e.key===" "){e.preventDefault();const l=v[E];p&&l?ae(l):p||z();return}if(e.key==="Tab"){I(!1);return}if(e.key.length===1&&!e.altKey&&!e.ctrlKey&&!e.metaKey){const l=e.currentTarget.ownerDocument.defaultView;if(!l)return;const y=e.key.toLocaleLowerCase(),_=F.current+y,te=Array.from(_).every(ne=>ne===y);F.current=te?y:_,C.current!==null&&l.clearTimeout(C.current),C.current=l.setTimeout(()=>{F.current="",C.current=null},500);const T=De(v,F.current,E);T>=0&&(e.preventDefault(),p||I(!0),V(T))}}}return a.useEffect(()=>{c&&I(!1)},[c,I]),a.useEffect(()=>{var e;if(p&&E>=0){const l=W==null?void 0:W.getElementById(`${P}-option-${E}`);l&&(A!=null&&A.contains(l))&&((e=l.scrollIntoView)==null||e.call(l,{block:"nearest"}))}},[E,P,A,p]),a.useEffect(()=>{var y;const e=(y=g.current)==null?void 0:y.form;if(!e)return;function l(){const _=le.current,te=N?j:d;if(_){const T=Array.from(_.options),ne=T.find(Y=>Y.value===te)??T[0];T.forEach(Y=>{Y.defaultSelected=Y===ne})}N||ie(d),I(!1)}return e.addEventListener("reset",l),()=>e.removeEventListener("reset",l)},[d,u,N,j,I]),a.useEffect(()=>()=>{var l;const e=(l=g.current)==null?void 0:l.ownerDocument.defaultView;e&&C.current!==null&&e.clearTimeout(C.current)},[]),o.jsxs("span",{className:["nk-select",s].filter(Boolean).join(" "),"data-disabled":c||void 0,"data-invalid":fe||void 0,"data-mode":"custom","data-open":p||void 0,style:pe,children:[o.jsxs("button",{...H,ref:Ie,"aria-activedescendant":p&&E>=0?`${P}-option-${E}`:void 0,"aria-controls":`${P}-listbox`,"aria-expanded":p,"aria-haspopup":"listbox","aria-invalid":he,"aria-required":R||void 0,"aria-autocomplete":"none",className:"nk-select__trigger",disabled:c,form:u,id:P,onClick:we,onKeyDown:be,role:"combobox",type:"button",children:[Q?o.jsxs("span",{className:"nk-select__value",children:[Q.icon?o.jsx($.Icon,{type:Q.icon}):null,o.jsx("span",{className:"nk-select__value-label",children:Q.label})]}):o.jsx("span",{className:"nk-select__placeholder",children:K}),o.jsx($.Icon,{className:"nk-select__icon",type:"chevron-down"})]}),b||R?o.jsxs("select",{ref:le,"aria-hidden":"true",className:"nk-select__form-control",disabled:c,form:u,name:b,onChange:()=>{},onInvalid:e=>{var l;e.preventDefault(),(l=g.current)==null||l.focus()},required:R,tabIndex:-1,value:j,children:[o.jsx("option",{value:""}),v.map(e=>o.jsx("option",{disabled:e.disabled,value:e.value,children:e.label},e.value))]}):null,ee.present&&W?o.jsx(O.Portal,{children:o.jsx(Le,{active:p,closeOnEscape:i,closeOnOutsideInteraction:h,highlightedIndex:E,id:P,listboxReference:ce,onEscapeDismiss:xe,onEscapeKeyDown:D,onHighlight:V,onOutsideDismiss:ye,onPointerDownOutside:G,onSelect:ae,options:v,ownerDocument:W,position:ve,selectedValue:j,state:ee.state==="closing"?"closing":"open",triggerReference:g})}):null]})}const Ce=a.forwardRef(function(t,s){const{options:i}=t;return O.useBoundary("Select"),i!==void 0?o.jsx(Pe,{...t,forwardedReference:s}):o.jsx(je,{...t,forwardedReference:s})});exports.default=Ce;
1
+ "use client";"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const d=require("react/jsx-runtime"),r=require("react"),S=require("./usePresence-B5RYv4e1.cjs"),U=require("./aria-Bntn6ad_.cjs"),ye=require("./reference-C2guRuR0.cjs"),q=require("./Icon-BIBzgznI.cjs"),xe=require("./useAnchoredPosition-D7GRFzoX.cjs");function Ie(t){const{form:n,onReset:s,resetValue:a,triggerReference:o}=t,l=r.useRef(null);return r.useEffect(()=>{var u;const i=(u=o.current)==null?void 0:u.form;if(!i)return;function h(){const b=l.current;if(b){const y=Array.from(b.options),g=y.find(x=>x.value===a)??y[0];y.forEach(x=>{x.defaultSelected=x===g})}s()}return i.addEventListener("reset",h),()=>i.removeEventListener("reset",h)},[n,s,a,o]),l}const H=8,z=4,ge=160,ke=72;function we(t,n,s){const a=s.bottom-t.bottom-z-H,o=t.top-s.top-z-H,l=a<ge&&o>a,i=Math.max(ke,l?o:a),h=Math.max(t.width,(n==null?void 0:n.width)??t.width),u=s.left+H,b=Math.min(Math.max(u,t.left),Math.max(u,s.right-H-h)),y=l?Math.max(s.top+H,t.top-z-Math.min((n==null?void 0:n.height)??i,i)):t.bottom+z;return{left:b,maxHeight:i,minWidth:t.width,top:y}}function Ee(t,n,s,a){const o=r.useCallback(l=>{const{panelBounds:i,triggerBounds:h,visibleBounds:u}=l;return we(h,i,u)},[]);return xe.useAnchoredPosition({active:t,boundary:a,fit:o,panel:s,trigger:n})}const Re=500;function _e(t){const n=r.useRef(""),s=r.useRef(null),a=r.useRef(null);return r.useEffect(()=>()=>{const o=a.current;o&&s.current!==null&&o.clearTimeout(s.current)},[]),r.useCallback(o=>{var u;const l=(u=t.current)==null?void 0:u.ownerDocument.defaultView;if(!l)return null;a.current=l;const i=n.current+o,h=Array.from(i).every(b=>b===o);return n.current=h?o:i,s.current!==null&&l.clearTimeout(s.current),s.current=l.setTimeout(()=>{n.current="",s.current=null},Re),n.current},[t])}function Q(t,n,s){if(t.length===0)return-1;for(let a=1;a<=t.length;a+=1){const o=(n+s*a+t.length)%t.length;if(!t[o].disabled)return o}return-1}function Oe(t,n,s){for(let a=1;a<=t.length;a+=1){const o=(s+a+t.length)%t.length,l=t[o];if(!l.disabled&&l.label.toLocaleLowerCase().startsWith(n))return o}return-1}function Se(t){const n=new Set;t.forEach(s=>{if(n.has(s.value))throw new Error("Select option values must be unique");n.add(s.value)})}function De(t){const{active:n,closeOnEscape:s,closeOnOutsideInteraction:a,highlightedIndex:o,id:l,listboxReference:i,onEscapeDismiss:h,onEscapeKeyDown:u,onHighlight:b,onOutsideDismiss:y,onPointerDownOutside:g,onSelect:x,options:k,ownerDocument:C,position:R,selectedValue:_,state:D,triggerReference:V}=t,m=r.useRef(null),W=S.useBoundary("Select").boundaryElement,O=S.useOverlayLayer(!0,W),$=r.useMemo(()=>[V,m],[V]),G=r.useCallback(f=>{m.current=f,i(f)},[i]);return S.useDismissableLayer({active:n,boundaries:$,boundary:W,dismissOnEscape:s,dismissOnPointerDownOutside:a,layerId:O.id,onEscapeDismiss:h,onEscapeKeyDown:u,onPointerDownOutside:g,onPointerDownOutsideDismiss:y,ownerDocument:C}),d.jsx("div",{"aria-hidden":n?void 0:!0,"aria-labelledby":l,className:"nk-select__listbox","data-state":D,id:`${l}-listbox`,ref:G,role:"listbox",style:R?{left:R.left,maxHeight:R.maxHeight,minWidth:R.minWidth,top:R.top,zIndex:O.zIndex}:{visibility:"hidden",zIndex:O.zIndex},children:k.map((f,N)=>d.jsxs("div",{"aria-disabled":f.disabled||void 0,"aria-selected":f.value===_,className:"nk-select__option","data-highlighted":N===o||void 0,"data-selected":f.value===_||void 0,id:`${l}-option-${N}`,onPointerDown:X=>{X.preventDefault(),f.disabled||x(f)},onPointerMove:()=>{f.disabled||b(N)},role:"option",children:[f.icon?d.jsx(q.Icon,{type:f.icon}):null,d.jsx("span",{className:"nk-select__option-label",children:f.label}),f.value===_?d.jsx(q.Icon,{className:"nk-select__check",type:"checkmark"}):null]},f.value))})}function je(t,n,s){n.current=t,ye.assignElementReference(s,t)}function Le(t){var B;const{"aria-invalid":n,className:s,closeOnEscape:a=!0,closeOnOutsideInteraction:o=!0,defaultValue:l="",disabled:i=!1,displayOverride:h,form:u,forwardedReference:b,id:y,invalid:g=!1,name:x,onChange:k,onClick:C,onEscapeKeyDown:R,onKeyDown:_,onOpenChange:D,onPointerDownOutside:V,options:m,placeholder:W,required:O=!1,style:$,value:G,width:f,...N}=t;Se(m);const X=r.useId(),j=y??X,I=r.useRef(null),[A,te]=r.useState(null),[v,ne]=r.useState(!1),[w,T]=r.useState(-1),[se,J]=r.useState(l),L=G!==void 0,P=L?G:se,ae=m.find(e=>e.value===P),le=g||U.hasInvalidState(n),ie=U.resolveAriaInvalid(g,n),Y=S.usePresence(v),M=((B=I.current)==null?void 0:B.ownerDocument)??(typeof document>"u"?null:document),re=S.useBoundary("Select").boundaryElement,oe=Ee(Y.present,I.current,A,re),ce=_e(I),de=f===void 0?$:{...$,width:f},K=h??ae,ue=r.useCallback(e=>je(e,I,b),[b]),p=r.useCallback(e=>{v!==e&&(ne(e),D==null||D(e))},[D,v]),fe=r.useCallback(()=>{L||J(l),p(!1)},[l,L,p]),me=Ie({form:u,onReset:fe,resetValue:L?P:l,triggerReference:I}),F=r.useCallback((e=1)=>{const c=m.findIndex(ee=>ee.value===P&&!ee.disabled),E=e===1?-1:m.length;T(c>=0?c:Q(m,E,e)),p(!0)},[m,P,p]),Z=r.useCallback(e=>{var c;i||e.disabled||(L||J(e.value),p(!1),(c=I.current)==null||c.focus(),k==null||k(e.value))},[i,L,k,p]),he=r.useCallback(()=>{var e;p(!1),(e=I.current)==null||e.focus()},[p]),ve=r.useCallback(()=>{p(!1)},[p]);function pe(e){C==null||C(e),!(e.defaultPrevented||i)&&(v?p(!1):F())}function be(e){if(_==null||_(e),!(e.defaultPrevented||i)){if(e.key==="ArrowDown"||e.key==="ArrowUp"){e.preventDefault();const c=e.key==="ArrowDown"?1:-1;v?T(E=>Q(m,E,c)):F(c);return}if(e.key==="Home"||e.key==="End"){if(e.preventDefault(),!v)F(e.key==="Home"?1:-1);else{const c=e.key==="Home"?1:-1,E=c===1?-1:m.length;T(Q(m,E,c))}return}if(e.key==="Enter"||e.key===" "){e.preventDefault();const c=m[w];v&&c?Z(c):v||F();return}if(e.key==="Tab"){p(!1);return}if(e.key.length===1&&!e.altKey&&!e.ctrlKey&&!e.metaKey){const c=ce(e.key.toLocaleLowerCase());if(c===null)return;const E=Oe(m,c,w);E>=0&&(e.preventDefault(),v||p(!0),T(E))}}}return r.useEffect(()=>{i&&p(!1)},[i,p]),r.useEffect(()=>{var e;if(v&&w>=0){const c=M==null?void 0:M.getElementById(`${j}-option-${w}`);c&&(A!=null&&A.contains(c))&&((e=c.scrollIntoView)==null||e.call(c,{block:"nearest"}))}},[w,j,A,v]),d.jsxs("span",{className:["nk-select",s].filter(Boolean).join(" "),"data-disabled":i||void 0,"data-invalid":le||void 0,"data-mode":"custom","data-open":v||void 0,style:de,children:[d.jsxs("button",{...N,ref:ue,"aria-activedescendant":v&&w>=0?`${j}-option-${w}`:void 0,"aria-controls":`${j}-listbox`,"aria-expanded":v,"aria-haspopup":"listbox","aria-invalid":ie,"aria-required":O||void 0,"aria-autocomplete":"none",className:"nk-select__trigger",disabled:i,form:u,id:j,onClick:pe,onKeyDown:be,role:"combobox",type:"button",children:[K?d.jsxs("span",{className:"nk-select__value",children:[K.icon?d.jsx(q.Icon,{type:K.icon}):null,d.jsx("span",{className:"nk-select__value-label",children:K.label})]}):d.jsx("span",{className:"nk-select__placeholder",children:W}),d.jsx(q.Icon,{className:"nk-select__icon",type:"chevron-down"})]}),x||O?d.jsxs("select",{ref:me,"aria-hidden":"true",className:"nk-select__form-control",disabled:i,form:u,name:x,onChange:()=>{},onInvalid:e=>{var c;e.preventDefault(),(c=I.current)==null||c.focus()},required:O,tabIndex:-1,value:P,children:[d.jsx("option",{value:""}),m.map(e=>d.jsx("option",{disabled:e.disabled,value:e.value,children:e.label},e.value))]}):null,Y.present&&M?d.jsx(S.Portal,{children:d.jsx(De,{active:v,closeOnEscape:a,closeOnOutsideInteraction:o,highlightedIndex:w,id:j,listboxReference:te,onEscapeDismiss:he,onEscapeKeyDown:R,onHighlight:T,onOutsideDismiss:ve,onPointerDownOutside:V,onSelect:Z,options:m,ownerDocument:M,position:oe,selectedValue:P,state:Y.state==="closing"?"closing":"open",triggerReference:I})}):null]})}function Pe(t){const{"aria-invalid":n,children:s,className:a,defaultValue:o,disabled:l=!1,forwardedReference:i,invalid:h=!1,placeholder:u,style:b,value:y,...g}=t,x=U.resolveAriaInvalid(h,n),k=h||U.hasInvalidState(n);return d.jsxs("span",{className:["nk-select",a].filter(Boolean).join(" "),"data-disabled":l||void 0,"data-invalid":k||void 0,"data-mode":"native",style:b,children:[d.jsxs("select",{...g,ref:i,"aria-invalid":x,className:"nk-select__control",defaultValue:y===void 0?o??(u!==void 0?"":void 0):void 0,disabled:l,value:y,children:[u!==void 0?d.jsx("option",{disabled:!0,value:"",children:u}):null,s]}),d.jsx(q.Icon,{className:"nk-select__icon",type:"chevron-down"})]})}const Ce=r.forwardRef(function(n,s){const{options:a}=n;return S.useBoundary("Select"),a!==void 0?d.jsx(Le,{...n,forwardedReference:s}):d.jsx(Pe,{...n,forwardedReference:s})});exports.default=Ce;