@bazza-ui/react 0.1.0-canary.15 → 0.1.0-canary.17

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 (146) hide show
  1. package/dist/combobox/index.cjs +1 -1
  2. package/dist/combobox/index.cjs.map +1 -1
  3. package/dist/combobox/index.d.ts +842 -834
  4. package/dist/combobox/index.js +1 -1
  5. package/dist/combobox/index.js.map +1 -1
  6. package/dist/command-menu/index.cjs +1 -1
  7. package/dist/command-menu/index.cjs.map +1 -1
  8. package/dist/command-menu/index.d.ts +123 -96
  9. package/dist/command-menu/index.js +1 -1
  10. package/dist/command-menu/index.js.map +1 -1
  11. package/dist/context-menu/index.cjs +1 -1
  12. package/dist/context-menu/index.cjs.map +1 -1
  13. package/dist/context-menu/index.d.ts +701 -658
  14. package/dist/context-menu/index.js +1 -1
  15. package/dist/context-menu/index.js.map +1 -1
  16. package/dist/dropdown-menu/index.cjs +1 -1
  17. package/dist/dropdown-menu/index.cjs.map +1 -1
  18. package/dist/dropdown-menu/index.d.ts +723 -680
  19. package/dist/dropdown-menu/index.js +1 -1
  20. package/dist/dropdown-menu/index.js.map +1 -1
  21. package/dist/events-DDOsDu4X.d.ts +2091 -0
  22. package/dist/index-Cabqj7qI.d.ts +2003 -0
  23. package/dist/index-D8OrKThQ.d.ts +977 -0
  24. package/dist/internal/listbox/index.cjs +1 -2
  25. package/dist/internal/listbox/index.d.ts +2 -272
  26. package/dist/internal/listbox/index.js +1 -2
  27. package/dist/internal/popup-menu/index.cjs +1 -2
  28. package/dist/internal/popup-menu/index.d.ts +4 -238
  29. package/dist/internal/popup-menu/index.js +1 -2
  30. package/dist/items-CD2hw6-3.js +2 -0
  31. package/dist/items-CD2hw6-3.js.map +1 -0
  32. package/dist/items-DYDljwnt.cjs +2 -0
  33. package/dist/items-DYDljwnt.cjs.map +1 -0
  34. package/dist/{items-B6HeFO_8.d.cts → items-ceX--VIv.d.ts} +21 -19
  35. package/dist/kbd/index.cjs +1 -1
  36. package/dist/kbd/index.cjs.map +1 -1
  37. package/dist/kbd/index.d.ts +35 -35
  38. package/dist/kbd/index.js +1 -1
  39. package/dist/kbd/index.js.map +1 -1
  40. package/dist/listbox-CnwUlLZA.js +2 -0
  41. package/dist/listbox-CnwUlLZA.js.map +1 -0
  42. package/dist/listbox-DYvJTiF6.cjs +2 -0
  43. package/dist/listbox-DYvJTiF6.cjs.map +1 -0
  44. package/dist/loaders/index.cjs +1 -1
  45. package/dist/loaders/index.cjs.map +1 -1
  46. package/dist/loaders/index.d.ts +218 -188
  47. package/dist/loaders/index.js +1 -1
  48. package/dist/loaders/index.js.map +1 -1
  49. package/dist/merge-element-props-0mpNO7ZH.cjs +2 -0
  50. package/dist/merge-element-props-0mpNO7ZH.cjs.map +1 -0
  51. package/dist/merge-element-props-PxUvRHax.js +2 -0
  52. package/dist/merge-element-props-PxUvRHax.js.map +1 -0
  53. package/dist/platform-C-sxBTRa.cjs +2 -0
  54. package/dist/platform-C-sxBTRa.cjs.map +1 -0
  55. package/dist/platform-C4_cGUkS.js +2 -0
  56. package/dist/platform-C4_cGUkS.js.map +1 -0
  57. package/dist/popup-menu-BBAzAXIe.cjs +2 -0
  58. package/dist/popup-menu-BBAzAXIe.cjs.map +1 -0
  59. package/dist/popup-menu-HmBMJEZc.js +2 -0
  60. package/dist/popup-menu-HmBMJEZc.js.map +1 -0
  61. package/dist/resolve-state-props-C-zbhdXd.cjs +2 -0
  62. package/dist/resolve-state-props-C-zbhdXd.cjs.map +1 -0
  63. package/dist/resolve-state-props-D31kizRZ.js +2 -0
  64. package/dist/resolve-state-props-D31kizRZ.js.map +1 -0
  65. package/dist/rolldown-runtime-5lHFv1cW.cjs +1 -0
  66. package/dist/rolldown-runtime-DK3Fl9T5.js +1 -0
  67. package/dist/select/index.cjs +1 -1
  68. package/dist/select/index.cjs.map +1 -1
  69. package/dist/select/index.d.ts +835 -828
  70. package/dist/select/index.js +1 -1
  71. package/dist/select/index.js.map +1 -1
  72. package/dist/suggestion-menu/index.cjs +4 -0
  73. package/dist/suggestion-menu/index.cjs.map +1 -0
  74. package/dist/suggestion-menu/index.d.ts +359 -0
  75. package/dist/suggestion-menu/index.js +4 -0
  76. package/dist/suggestion-menu/index.js.map +1 -0
  77. package/dist/types-BbN28E3_.d.ts +50 -0
  78. package/dist/video-player/index.cjs +2 -2
  79. package/dist/video-player/index.cjs.map +1 -1
  80. package/dist/video-player/index.d.ts +964 -1000
  81. package/dist/video-player/index.js +2 -2
  82. package/dist/video-player/index.js.map +1 -1
  83. package/package.json +14 -5
  84. package/dist/ListboxStore-B8oTpM57.d.cts +0 -453
  85. package/dist/ListboxStore-CV5vPUUc.d.ts +0 -453
  86. package/dist/chunk-4C666HHU.js +0 -2
  87. package/dist/chunk-4C666HHU.js.map +0 -1
  88. package/dist/chunk-5T5B5SPR.cjs +0 -2
  89. package/dist/chunk-5T5B5SPR.cjs.map +0 -1
  90. package/dist/chunk-A4Z5BY7H.js +0 -2
  91. package/dist/chunk-A4Z5BY7H.js.map +0 -1
  92. package/dist/chunk-BEWVWSAW.cjs +0 -2
  93. package/dist/chunk-BEWVWSAW.cjs.map +0 -1
  94. package/dist/chunk-EDZTZHQ4.js +0 -2
  95. package/dist/chunk-EDZTZHQ4.js.map +0 -1
  96. package/dist/chunk-IT372NHF.js +0 -2
  97. package/dist/chunk-IT372NHF.js.map +0 -1
  98. package/dist/chunk-JFEVUUPC.cjs +0 -2
  99. package/dist/chunk-JFEVUUPC.cjs.map +0 -1
  100. package/dist/chunk-KO3DXT3Y.js +0 -2
  101. package/dist/chunk-KO3DXT3Y.js.map +0 -1
  102. package/dist/chunk-LXXK4S4Q.js +0 -2
  103. package/dist/chunk-LXXK4S4Q.js.map +0 -1
  104. package/dist/chunk-M4G6J7DP.cjs +0 -2
  105. package/dist/chunk-M4G6J7DP.cjs.map +0 -1
  106. package/dist/chunk-SCDHQZFI.cjs +0 -2
  107. package/dist/chunk-SCDHQZFI.cjs.map +0 -1
  108. package/dist/chunk-XMZZ62VJ.cjs +0 -2
  109. package/dist/chunk-XMZZ62VJ.cjs.map +0 -1
  110. package/dist/combobox/index.d.cts +0 -1066
  111. package/dist/command-menu/index.d.cts +0 -154
  112. package/dist/command-score-CTJ9NV6n.d.cts +0 -23
  113. package/dist/command-score-CTJ9NV6n.d.ts +0 -23
  114. package/dist/context-menu/index.d.cts +0 -696
  115. package/dist/dropdown-menu/index.d.cts +0 -723
  116. package/dist/events-BTHQ2OoH.d.ts +0 -1860
  117. package/dist/events-DVcrtGe3.d.cts +0 -1860
  118. package/dist/input-C95v6jB0.d.cts +0 -46
  119. package/dist/input-CYweYB_i.d.ts +0 -46
  120. package/dist/internal/listbox/index.cjs.map +0 -1
  121. package/dist/internal/listbox/index.d.cts +0 -272
  122. package/dist/internal/listbox/index.js.map +0 -1
  123. package/dist/internal/popup-menu/index.cjs.map +0 -1
  124. package/dist/internal/popup-menu/index.d.cts +0 -238
  125. package/dist/internal/popup-menu/index.js.map +0 -1
  126. package/dist/items-B6HeFO_8.d.ts +0 -37
  127. package/dist/kbd/index.d.cts +0 -61
  128. package/dist/loaders/index.d.cts +0 -363
  129. package/dist/loading-C6WZGUc3.d.cts +0 -29
  130. package/dist/loading-CC4n55sR.d.ts +0 -29
  131. package/dist/resolve-B-j0eW24.d.cts +0 -406
  132. package/dist/resolve-B1F-a3P1.d.ts +0 -406
  133. package/dist/scroll-arrow-BBoKckL_.d.cts +0 -544
  134. package/dist/scroll-arrow-fl3B5sVO.d.ts +0 -544
  135. package/dist/select/index.d.cts +0 -1005
  136. package/dist/separator-Dn15rte3.d.ts +0 -275
  137. package/dist/separator-NjsBVzek.d.cts +0 -275
  138. package/dist/surface-context-CGLDpMej.d.ts +0 -14
  139. package/dist/surface-context-CN4Lb_6F.d.cts +0 -14
  140. package/dist/type-guards-BHHzjRvZ.d.cts +0 -351
  141. package/dist/type-guards-C0e_GpeY.d.ts +0 -351
  142. package/dist/types-DT4FOOa2.d.cts +0 -51
  143. package/dist/types-DT4FOOa2.d.ts +0 -51
  144. package/dist/use-listbox-item-NzZuY34-.d.cts +0 -212
  145. package/dist/use-listbox-item-NzZuY34-.d.ts +0 -212
  146. package/dist/video-player/index.d.cts +0 -1391
@@ -1,2 +1,2 @@
1
- import{a as vo,b as Vo,c as Mo,d as Eo,e as Lo,f as te,g as wo}from"../chunk-KO3DXT3Y.js";import{K as io,L as po,M as Ct,O as mo,P as co,Q as bo,R as xo,S as N,T as F,U as fo,V as Co,X as go,a as ro,ba as gt,ca as ho,d as de,ea as Po,fa as Io,ga as Ro,q as ao,ra as So,s as so,t as lo,ua as yo,v as uo,w as D,x as ft}from"../chunk-EDZTZHQ4.js";import{a as oe,p as mt,q as ct,w as bt,x as dt,y as xt}from"../chunk-A4Z5BY7H.js";import{a as pt}from"../chunk-4C666HHU.js";var zo={};pt(zo,{Arrow:()=>so,Backdrop:()=>lo,Clear:()=>Me,Empty:()=>Co,Group:()=>So,GroupLabel:()=>go,Icon:()=>fo,Input:()=>we,InputWrapper:()=>ke,Item:()=>Te,ItemIndicator:()=>He,ItemLabel:()=>Oe,List:()=>ho,Popup:()=>io,Portal:()=>po,Positioner:()=>De,Root:()=>Ae,ScrollDownArrow:()=>Io,ScrollUpArrow:()=>Po,Separator:()=>yo,Surface:()=>Fe,useComboboxPositionerContext:()=>Ee});import{useRender as ht}from"@base-ui/react/use-render";import*as _ from"react";var ko={slot:"bazzaui-combobox-clear"};var Me=_.forwardRef(function(e,o){let{keepMounted:i=!1,disabled:u,render:s,className:p,style:c,onClick:a,onPointerDown:t,...P}=e,m=D(),b=u??m.disabled,I=m.multiple?m.values.length>0:m.value!=="",d=_.useCallback(R=>{a?.(R),!R.defaultPrevented&&(m.multiple?m.onValuesChange([]):m.onValueChange(""),m.onInputValueChange(""))},[a,m]),g=_.useCallback(R=>{R.preventDefault(),t?.(R)},[t]),l=_.useMemo(()=>({hasValue:I,disabled:b}),[I,b]),S=ht({render:s,ref:o,state:l,props:{...P,[ko.slot]:"",type:"button",tabIndex:-1,"aria-label":"Clear selection",disabled:b||!I,className:p,style:c,onClick:d,onPointerDown:g},enabled:i||I,defaultTagName:"button"});return!i&&!I?null:S});import*as xe from"react";var fe=xe.createContext(null);function Ee(){return xe.useContext(fe)}import{useRender as Pt}from"@base-ui/react/use-render";import*as ne from"react";import*as Ce from"react";var Le=Ce.createContext(!1);function To(){return Ce.useContext(Le)}var Q={slot:"bazzaui-combobox-input",open:"data-open",closed:"data-closed",disabled:"data-disabled",placeholder:"data-placeholder"};import*as se from"react";function Ho(x){let{comboboxContext:e,open:o}=x,i=e.multiple?e.values.length>0:!xo(e.value),u=se.useCallback(c=>{let a=F(c,e.itemToStringValue),t=e.itemTextRegistry.get(a);if(t!==void 0)return t;let P=te(e.items,a);if(typeof P=="string")return P;let m=N(c,e.itemToStringLabel);if(m&&m!==a)return m},[e.itemTextRegistry,e.items,e.itemToStringLabel,e.itemToStringValue]),s=se.useMemo(()=>{if(!i)return"";if(e.multiple){let t=e.values.map(P=>{let m=u(P);return m!==void 0?m:N(P,e.itemToStringLabel)||F(P,e.itemToStringValue)}).filter(Boolean);return t.length<=2?t.join(", "):`${t.length} selected`}let c=e.value;if(c==null)return"";let a=u(c);return a!==void 0?a:N(c,e.itemToStringLabel)||F(c,e.itemToStringValue)},[i,e.multiple,e.value,e.values,e.itemToStringLabel,e.itemToStringValue,u]),p=se.useMemo(()=>o?e.inputValue:s,[o,s,e.inputValue]);return{hasValue:i,displayValue:p,selectedLabel:s,getValueText:u}}import*as T from"react";function Oo(x){let{comboboxContext:e,store:o,focusOwnerStore:i,open:u,disabled:s,cursorBehavior:p,hasValue:c,getValueText:a,onFocus:t,onBlur:P,onClick:m,onKeyDown:b}=x,I=T.useRef(!1),d=T.useRef(!1),g=T.useRef(!1),l=T.useRef(null),S=T.useRef(null),R=T.useRef(null);T.useEffect(()=>{if(!u)return;let n=f=>{let r=e.inputRef.current,v=e.inputWrapperRef.current,y=document.getElementById(e.listId),O=f.target,W=r?.contains(O),z=v?.contains(O),ee=y?.contains(O);!W&&!z&&!ee&&(R.current=f)};return document.addEventListener("pointerdown",n,!0),()=>{document.removeEventListener("pointerdown",n,!0),R.current=null}},[u,e.inputRef,e.inputWrapperRef,e.listId]),T.useLayoutEffect(()=>{let n=e.inputRef.current;if(n&&u&&S.current){let{start:f,end:r}=S.current,v=n.selectionStart,y=n.value.length;v===y&&f!==y&&n.setSelectionRange(f,r),S.current=null}});let L=T.useRef(u);T.useLayoutEffect(()=>{if(u&&!L.current){if(I.current){I.current=!1,L.current=u;return}if(g.current){g.current=!1,d.current=!1,l.current=null,L.current=u;return}if(d.current&&p==="none"){let f=e.inputRef.current,r=l.current;f&&r!==null&&requestAnimationFrame(()=>{let v=f.value.length,y=Math.min(r,v);f.setSelectionRange(y,y)}),d.current=!1,l.current=null,L.current=u;return}c&&e.multiple&&e.onInputValueChange("");let n=e.inputRef.current;if(n){let f=n.value.length;p==="select-all"&&f>0?requestAnimationFrame(()=>{n.setSelectionRange(0,n.value.length)}):p==="end"&&f>0&&requestAnimationFrame(()=>{n.setSelectionRange(n.value.length,n.value.length)})}}L.current=u},[u,e,c,p]);let w=T.useCallback(n=>{let f=n.target,r=f.value,v=f.selectionStart,y=f.selectionEnd;v!==null&&y!==null&&(S.current={start:v,end:y}),e.onInputValueChange(r),e.setFilterActive(),o.setSearch(r),o.state.open||(I.current=!0,e.openCombobox())},[e,o]),k=T.useCallback(n=>{if(t?.(n),n.defaultPrevented)return;let f=o.state.open;if(f&&(g.current=!0),e.openOnFocus&&!s&&!f){if(c&&!e.multiple){let r=a(e.value)??N(e.value,e.itemToStringLabel);e.onInputValueChange(r)}e.openCombobox()}},[t,e,s,o,c,a]),V=T.useCallback(n=>{P?.(n),!n.defaultPrevented&&requestAnimationFrame(()=>{let f=document.activeElement,v=document.getElementById(e.listId)?.contains(f),y=f===e.inputRef.current;if(!v&&!y){g.current=!1;let O=R.current,W=O?oe.outsidePress:oe.focusOut;R.current=null,e.closeCombobox(W,O??void 0)}})},[P,e]),A=T.useCallback(n=>{if(m?.(n),n.defaultPrevented)return;let f=o.state.open;if(!s&&!f){let r=n.target;if(p==="none"){let v=r.selectionStart;l.current=v,d.current=!0}if(c&&!e.multiple){let v=a(e.value)??N(e.value,e.itemToStringLabel);e.onInputValueChange(v)}e.openCombobox()}else f&&(g.current=!0)},[m,e,s,o,p,c,a]),K=T.useCallback(n=>{if(b?.(n),!n.defaultPrevented){if(u&&n.key==="Escape"){n.preventDefault(),e.closeCombobox(oe.escapeKey);return}if(!u&&(n.key==="ArrowDown"||n.key==="ArrowUp"||n.key==="Enter")){if(n.preventDefault(),c&&!e.multiple){let f=a(e.value)??N(e.value,e.itemToStringLabel);e.onInputValueChange(f)}e.openCombobox();return}}},[u,e,b,c,a]),{handleKeyDown:j}=bo({store:o,surfaceId:"combobox-input",focusOwnerStore:i,depth:0,submenuContext:null,subpageContext:null,enabled:u,enableTypeToSearch:!1,onKeyDown:K,closeAll:e.closeCombobox,skipFocusOwnerCheck:!0});return{handleChange:w,handleFocus:k,handleBlur:V,handleClick:A,handleKeyDown:j,selectionRef:S}}var we=ne.forwardRef(function(e,o){let{placeholder:i,disabled:u,cursorBehavior:s="none",render:p,className:c,style:a,onFocus:t,onBlur:P,onClick:m,onKeyDown:b,...I}=e,d=D(),g=de(),l=ro(),S=To(),R=(u??d.disabled)||g.disabled,L=te(d.items,""),w=i??(typeof L=="string"?L:void 0)??d.placeholder,k=g.store.useState("open"),{hasValue:V,displayValue:A,getValueText:K}=Ho({comboboxContext:d,open:k}),{handleChange:j,handleFocus:n,handleBlur:f,handleClick:r,handleKeyDown:v}=Oo({comboboxContext:d,store:g.store,focusOwnerStore:l,open:k,disabled:R,cursorBehavior:s,hasValue:V,getValueText:K,onFocus:t,onBlur:P,onClick:m,onKeyDown:b}),y={[Q.slot]:""};k?y[Q.open]="":y[Q.closed]="",R&&(y[Q.disabled]=""),V||(y[Q.placeholder]=""),d.layout==="input-embedded"&&(y["data-input-embedded"]="");let O=ne.useCallback(M=>{d.setInputElement(M),typeof o=="function"?o(M):o&&(o.current=M)},[o,d]),W=ne.useMemo(()=>({open:k,disabled:R,placeholder:!V}),[k,R,V]),z=d.layout==="input-embedded"&&!S?{position:"relative",zIndex:1}:void 0;return Pt({render:p,ref:O,state:W,props:{...I,...y,type:"text",role:"combobox","aria-autocomplete":"list","aria-expanded":k,"aria-controls":d.listId,"aria-haspopup":"listbox",autoComplete:"off",autoCorrect:"off",spellCheck:!1,disabled:R,placeholder:V?void 0:w,className:c,style:{...z,...a},value:A,onChange:j,onFocus:n,onBlur:f,onClick:r,onKeyDown:v},defaultTagName:"input"})});import{useRender as It}from"@base-ui/react/use-render";import*as re from"react";var ge={slot:"bazzaui-combobox-input-wrapper",open:"data-open"};import{jsx as St}from"react/jsx-runtime";var Rt={open:x=>x?{[ge.open]:""}:null},ke=re.forwardRef(function(e,o){let{render:i,className:u,style:s,children:p,...c}=e,{store:a}=de(),t=D(),P=a.useState("open"),m=re.useMemo(()=>({open:P}),[P]),b=t.layout==="input-embedded"?{position:"relative",zIndex:1}:{position:"relative"},I=re.useCallback(g=>{t.setInputWrapperElement(g),typeof o=="function"?o(g):o&&(o.current=g)},[o,t]),d=It({render:i,ref:I,state:m,stateAttributesMapping:Rt,props:{...c,[ge.slot]:"",className:u,style:{...b,...s},children:p},defaultTagName:"div"});return St(Le.Provider,{value:!0,children:d})});import{useRender as vt}from"@base-ui/react/use-render";import*as E from"react";var q={slot:"bazzaui-combobox-item",highlighted:"data-highlighted",disabled:"data-disabled",selected:"data-selected",first:"data-first",last:"data-last",firstInGroup:"data-first-in-group",lastInGroup:"data-last-in-group"};import*as le from"react";var he=le.createContext(null);function ue(){let x=le.useContext(he);if(!x)throw new Error("ComboboxItem child components must be used within a Combobox.Item");return x}function yt(){return le.useContext(he)}import{jsx as Et}from"react/jsx-runtime";var Vt={highlighted:x=>x?{[q.highlighted]:""}:null,disabled:x=>x?{[q.disabled]:""}:null,selected:x=>x?{[q.selected]:""}:null,first:x=>x?{[q.first]:""}:null,last:x=>x?{[q.last]:""}:null,firstInGroup:x=>x?{[q.firstInGroup]:""}:null,lastInGroup:x=>x?{[q.lastInGroup]:""}:null};function Mt(x,e){let{value:o,textValue:i,keywords:u,disabled:s=!1,onSelect:p,forceMount:c=!1,render:a,className:t,style:P,onClick:m,onPointerDown:b,onPointerMove:I,children:d,...g}=x,l=D(),S=E.useMemo(()=>F(o,l.itemToStringValue),[o,l.itemToStringValue]),R=E.useId(),L=o===null?`combobox-clear-${R}`:void 0,w=E.useMemo(()=>Lo(l.items,S),[l.items,S]),k=w?.label,V=E.useMemo(()=>N(o,l.itemToStringLabel),[o,l.itemToStringLabel]),A=E.useMemo(()=>{if(i!==void 0)return i;if(typeof k=="string")return k;if(V&&V!==S)return V},[i,k,V,S]),K=E.useMemo(()=>wo(u,[typeof k=="string"?k:V&&V!==S?V:void 0,...w?.keywords??[]]),[u,k,V,S,w]),j=E.useRef(A),n=l.multiple?Mo(l.values,o,l.isItemEqualToValue):l.value!==""&&Vo(l.value,o,l.isItemEqualToValue),f=l.closeOnSelect,r=co({id:L,value:S,keywords:K,disabled:s,forceMount:c,closeOnClick:f,children:d});E.useEffect(()=>{let M=()=>{if(!s){if(l.multiple)if(o==null)l.onValuesChange([]);else{let me=n?Eo(l.values,o,l.isItemEqualToValue):[...l.values,o];l.onValuesChange(me)}else l.onValueChange(o);p?.()}};return r.registerSelect(M)},[s,l,o,n,p,r]),E.useEffect(()=>{let M=j.current;if(M)return l.registerItemText(S,M)},[S,l]),E.useEffect(()=>{!A&&typeof d=="string"&&(j.current=d,l.registerItemText(S,d))},[d,A,S,l]);let v=E.useMemo(()=>({highlighted:r.isHighlighted,disabled:s,selected:n,first:r.positional.first,last:r.positional.last,firstInGroup:r.positional.firstInGroup,lastInGroup:r.positional.lastInGroup}),[r.isHighlighted,s,n,r.positional]),y=E.useMemo(()=>({id:r.id,value:o,textValue:A,highlighted:r.isHighlighted,disabled:s,selected:n}),[r.id,o,A,r.isHighlighted,s,n]),O=E.useCallback(M=>{m?.(M),M.defaultPrevented||r.handlers.onClick(M)},[m,r.handlers]),W=E.useCallback(M=>{r.handlers.onPointerDown(M),b?.(M)},[r.handlers,b]),z=E.useCallback(M=>{I?.(M),M.defaultPrevented||r.handlers.onPointerMove(M)},[I,r.handlers]),ee=vt({render:a,ref:[r.ref,r.rowRef,e],state:v,stateAttributesMapping:Vt,props:{...g,[q.slot]:"",id:r.id,role:"option",tabIndex:-1,"aria-selected":n,"aria-disabled":s||void 0,className:t,style:P,onClick:O,onPointerMove:z,onPointerDown:W,children:d},enabled:r.isVisible,defaultTagName:"div"});return r.isVisible?Et(he.Provider,{value:y,children:ee}):null}var Te=E.forwardRef(Mt);import{useRender as Lt}from"@base-ui/react/use-render";import*as Ie from"react";var Pe={slot:"bazzaui-combobox-item-indicator",selected:"data-selected"};var wt={selected:x=>x?{[Pe.selected]:""}:null},He=Ie.forwardRef(function(e,o){let{keepMounted:i=!1,render:u,className:s,style:p,...c}=e,a=ue(),t=Ie.useMemo(()=>({selected:a.selected}),[a.selected]),P=Lt({render:u,ref:o,state:t,stateAttributesMapping:wt,props:{...c,[Pe.slot]:"","aria-hidden":!0,className:s,style:p},enabled:i||a.selected,defaultTagName:"span"});return!i&&!a.selected?null:P});import{useRender as kt}from"@base-ui/react/use-render";import*as Y from"react";var Do={slot:"bazzaui-combobox-item-label"};var Oe=Y.forwardRef(function(e,o){let{render:i,className:u,style:s,children:p,...c}=e,a=D(),t=ue(),P=F(t.value,a.itemToStringValue),m=Y.useMemo(()=>{if(p!==void 0)return p;let I=te(a.items,P);return I!==void 0?I:t.textValue!==void 0?t.textValue:P},[p,a.items,P,t.textValue]),b=Y.useMemo(()=>({value:P,selected:t.selected,highlighted:t.highlighted,disabled:t.disabled}),[P,t.selected,t.highlighted,t.disabled]);return Y.useEffect(()=>{if(typeof m=="string")return a.registerItemText(P,m)},[m,a,P]),kt({render:i,ref:o,state:b,props:{...c,[Do.slot]:"",className:u,style:s,children:m},defaultTagName:"span"})});import{Popover as Ao}from"@base-ui/react/popover";import*as U from"react";var Re={slot:"bazzaui-combobox-positioner"};import{jsx as ie}from"react/jsx-runtime";function Tt(x,e,o,i){let u=o+i*2;if(x==="top"){let c=-(e+i),a=e+i;return{width:u,marginBottom:c,paddingTop:i,paddingLeft:i,paddingRight:i,paddingBottom:a}}let s=-(e+i),p=e+i;return{width:u,marginTop:s,paddingTop:p,paddingLeft:i,paddingRight:i,paddingBottom:i}}var De=U.forwardRef(function(e,o){let{layout:i,popupPadding:u=8,side:s="bottom",align:p,sideOffset:c=4,anchor:a,className:t,style:P,children:m,...b}=e,I=D(),d=i??I.layout,g=d==="input-embedded",l=a??I.inputWrapperRef.current?I.inputWrapperRef:I.inputRef,S=g?0:c,R=g?"center":p??"start",{inputHeight:L,inputWidth:w}=I,k=w+u*2,V={...P,...g?{zIndex:0}:{}};if(g)return ie(Ao.Positioner,{ref:o,side:s,align:R,sideOffset:S,anchor:l,className:t,style:V,"data-input-embedded":"",[Re.slot]:"",...b,render:(n,f)=>{let r=f.side,v={layout:d,side:r,align:f.align,inputHeight:I.inputHeight},y={"--combobox-input-height":`${L}px`,"--combobox-input-width":`${w}px`,"--combobox-popup-padding":`${u}px`,"--combobox-popup-width":`${k}px`},O=Tt(r,L,w,u),W=U.Children.map(m,z=>U.isValidElement(z)?U.cloneElement(z,{style:{...O,...z.props.style},"data-side":r}):z);return ie(fe.Provider,{value:v,children:ie("div",{...n,style:{...n.style,...y},"data-side":r,children:W})})}});let A={layout:d,side:s,align:R,inputHeight:I.inputHeight},K={"--combobox-input-height":`${L}px`,"--combobox-input-width":`${w}px`},j={...V,...K};return ie(fe.Provider,{value:A,children:ie(Ao.Positioner,{ref:o,side:s,align:R,sideOffset:S,anchor:l,className:t,style:j,[Re.slot]:"",...b,children:m})})});import{Popover as Ht}from"@base-ui/react/popover";import*as h from"react";import{jsx as pe,jsxs as Ot}from"react/jsx-runtime";function Ae(x){let{open:e,onOpenChange:o,actionsRef:i,defaultOpen:u=!1,value:s,defaultValue:p,onValueChange:c,multiple:a=!1,values:t,defaultValues:P,onValuesChange:m,isItemEqualToValue:b=vo,itemToStringLabel:I,itemToStringValue:d,inputValue:g,defaultInputValue:l="",onInputValueChange:S,name:R,form:L,required:w,disabled:k=!1,placeholder:V="Search...",items:A,modal:K=!1,closeOnSelect:j,openOnFocus:n=!0,virtualized:f=!1,virtualItems:r,onHighlightChange:v,layout:y="floating",onOpenChangeComplete:O,debug:W,children:z,...ee}=x,M=h.useCallback((C,H,G,be)=>v?.(C,G,be),[v]),me=h.useId(),ce=h.useRef(null),Se=h.useRef(null),[ze,Be]=h.useState(0),[We,je]=h.useState(0),Ge=h.useCallback(C=>{if(ce.current=C,C&&!Se.current){let H=C.getBoundingClientRect();Be(H.height),je(H.width)}},[]),Ne=h.useCallback(C=>{if(Se.current=C,C){let H=C.getBoundingClientRect();Be(H.height),je(H.width)}},[]),{store:B,focusOwnerStore:$o,openChainStore:Jo,registerSurface:Xo,closeAll:_o,virtualization:Qo,handleOpenChange:qe,disabled:$,setDisabled:Ke,menuTreeResolver:Yo}=ao({onOpenChange:o,defaultOpen:u,virtualized:f,items:r,onHighlightChange:M,disabled:k}),ye=h.useRef(null);h.useImperativeHandle(i,()=>({close:()=>{ye.current?.close()},unmount:()=>{ye.current?.unmount()},setDisabled:Ke}),[Ke]),B.useControlledProp("openProp",e);let Zo=B.useState("open"),Ue=h.useCallback((C,H,G)=>{$&&H!==oe.imperativeAction||!C&&ce.current&&document.activeElement===ce.current||qe(C,H,G)},[qe,$]),et=h.useCallback(C=>{!C&&B.context.clearSearchOnClose==="after-exit"&&(B.clearSearch(),B.setInputActive(!1)),C||B.clearHighlight(),O?.(C)},[B,O]),ot=h.useCallback((C,H)=>{Ue(C,H.reason,H.event)},[Ue]),[tt,nt]=h.useState(p!==void 0?p:null),J=s!==void 0?s:tt,$e=h.useCallback(C=>{s===void 0&&nt(C),c?.(C)},[s,c]),[rt,at]=h.useState(P??[]),ae=t!==void 0?t:rt,Je=h.useCallback(C=>{t===void 0&&at(C),m?.(C)},[t,m]),[ve,st]=h.useState(l),Xe=g!==void 0?g:ve,_e=h.useCallback(C=>{g===void 0&&st(C),S?.(C)},[g,S]),Qe=h.useRef(new Map),Ye=h.useCallback((C,H)=>(Qe.current.set(C,H),()=>{}),[]),Ze=j??!a,Ve=h.useRef({type:"active"}),[,lt]=h.useState({type:"active"}),X=h.useCallback(C=>{Ve.current=C,lt(C)},[]),eo=Ve.current,oo=h.useCallback(()=>{X({type:"active"})},[X]),to=h.useCallback(()=>{$||(!a&&J!=null?X({type:"showAll"}):X({type:"active"}),B.setOpen(!0))},[$,B,a,J,X]),no=h.useCallback((C,H)=>{let G=Ve.current,be=G.type==="active"?ve:G.type==="showAll"?"":G.search;X({type:"frozen",search:be}),B.setOpen(!1,C,H)},[B,X,ve]),ut=h.useMemo(()=>({multiple:a,value:J,values:ae,onValueChange:$e,onValuesChange:Je,isItemEqualToValue:b,itemToStringLabel:I,itemToStringValue:d,inputValue:Xe,onInputValueChange:_e,name:R,form:L,required:w,disabled:$,placeholder:V,items:A,itemTextRegistry:Qe.current,registerItemText:Ye,listId:me,inputRef:ce,setInputElement:Ge,inputWrapperRef:Se,setInputWrapperElement:Ne,closeOnSelect:Ze,openOnFocus:n,openCombobox:to,closeCombobox:no,filterMode:eo,setFilterActive:oo,inputHeight:ze,inputWidth:We,layout:y}),[a,J,ae,$e,Je,b,I,d,Xe,_e,R,L,w,$,V,A,Ye,me,Ge,Ne,Ze,n,to,no,eo,oo,ze,We,y]),it=h.useMemo(()=>R?a?ae.length>0?ae.map((C,H)=>{let G=F(C,d);return pe("input",{type:"hidden",name:R,value:G,form:L,required:w&&H===0},G)}):pe("input",{type:"hidden",name:R,value:"",form:L,required:w}):pe("input",{type:"hidden",name:R,value:J!=null?F(J,d):"",form:L,required:w}):null,[R,L,w,a,J,ae,d]);return pe(uo.Provider,{value:ut,children:Ot(mo,{menuTreeResolver:Yo,store:B,focusOwnerStore:$o,openChainStore:Jo,disabled:$,depth:0,closeAll:_o,registerSurface:Xo,virtualization:Qo,menuType:"dropdown",componentName:"combobox",debug:W,children:[it,pe(Ht.Root,{...ee,open:Zo,onOpenChange:ot,onOpenChangeComplete:et,modal:K,actionsRef:i?ye:void 0,children:z})]})})}import*as Z from"react";var Fo={slot:"bazzaui-combobox-surface"};import{jsx as Dt}from"react/jsx-runtime";var Fe=Z.forwardRef(function(e,o){let{autoHighlightFirst:i,clearSearchOnClose:u=!0,search:s,onSearchChange:p,onPointerMove:c,...a}=e,t=D(),P=Z.useCallback(g=>{c?.(g);let l=t.inputRef.current;l&&document.activeElement!==l&&l.focus()},[c,t.inputRef]),m=Z.useMemo(()=>{let g=i??!0;if(g==="selected"){let l=t.multiple?t.values[0]:t.value;return l!=null?F(l,t.itemToStringValue):!0}return g},[i,t.multiple,t.value,t.values,t.itemToStringValue]),{filterMode:b}=t,I=s??(b.type==="active"?t.inputValue:b.type==="showAll"?"":b.search),d=Z.useCallback(g=>{t.onInputValueChange(g),p?.(g)},[t,p]);return Dt(Ro,{ref:o,autoHighlightFirst:m,clearSearchOnClose:u,search:I,onSearchChange:d,onPointerMove:P,skipAutoFocus:!0,[Fo.slot]:"",...a})});var Bo=(p=>(p.slot="bazzaui-combobox-arrow",p.open="data-open",p.closed="data-closed",p.side="data-side",p.align="data-align",p.uncentered="data-uncentered",p))(Bo||{});var Wo=(s=>(s.slot="bazzaui-combobox-backdrop",s.open="data-open",s.closed="data-closed",s.startingStyle="data-starting-style",s.endingStyle="data-ending-style",s))(Wo||{});var jo=(e=>(e.slot="bazzaui-combobox-empty",e))(jo||{});var Go=(e=>(e.slot="bazzaui-combobox-group",e))(Go||{});var No=(e=>(e.slot="bazzaui-combobox-group-label",e))(No||{});var At={slot:"bazzaui-combobox-icon",open:"data-popup-open"};var qo=(o=>(o.slot="bazzaui-combobox-list",o.list="data-popup-menu-list",o))(qo||{});var Ko=(b=>(b.slot="bazzaui-combobox-popup",b.open="data-open",b.closed="data-closed",b.side="data-side",b.align="data-align",b.startingStyle="data-starting-style",b.endingStyle="data-ending-style",b.instant="data-instant",b.focused="data-focused",b.hasOpenSubmenu="data-has-open-submenu",b.submenu="data-submenu",b.navigating="data-navigating",b))(Ko||{});var Ft={slotUp:"bazzaui-combobox-scroll-up-arrow",slotDown:"bazzaui-combobox-scroll-down-arrow",direction:"data-direction",side:"data-side"};var Uo=(e=>(e.slot="bazzaui-combobox-separator",e))(Uo||{});export{zo as Combobox,Bo as ComboboxArrowDataAttributes,Wo as ComboboxBackdropDataAttributes,Me as ComboboxClear,jo as ComboboxEmptyDataAttributes,Go as ComboboxGroupDataAttributes,No as ComboboxGroupLabelDataAttributes,At as ComboboxIconDataAttributes,we as ComboboxInput,Q as ComboboxInputDataAttributes,ke as ComboboxInputWrapper,ge as ComboboxInputWrapperDataAttributes,Te as ComboboxItem,q as ComboboxItemDataAttributes,He as ComboboxItemIndicator,Pe as ComboboxItemIndicatorDataAttributes,Oe as ComboboxItemLabel,gt as ComboboxListCssVars,qo as ComboboxListDataAttributes,Ko as ComboboxPopupDataAttributes,De as ComboboxPositioner,Ct as ComboboxPositionerCssVars,Re as ComboboxPositionerDataAttributes,Ae as ComboboxRoot,Ft as ComboboxScrollArrowDataAttributes,Uo as ComboboxSeparatorDataAttributes,xt as ComboboxStore,Fe as ComboboxSurface,bt as commandScore,dt as defaultFilter,D as useComboboxContext,ue as useComboboxItemContext,Ee as useComboboxPositionerContext,ft as useMaybeComboboxContext,yt as useMaybeComboboxItemContext,ct as useMaybeSurfaceContext,mt as useSurfaceContext};
1
+ import{t as e}from"../rolldown-runtime-DK3Fl9T5.js";import{$ as t,A as n,D as r,G as i,It as a,J as o,K as s,M as c,N as l,Rt as u,St as d,U as f,V as p,W as m,X as h,Z as g,_t as _,bt as v,et as y,f as b,gt as x,h as S,ht as C,k as w,q as T,tt as E,yt as D}from"../popup-menu-HmBMJEZc.js";import{D as O,E as k,M as A,d as ee,n as j,r as M,t as N,u as P}from"../listbox-CnwUlLZA.js";import{n as F,r as I,t as te}from"../resolve-state-props-D31kizRZ.js";import{a as ne,i as re,n as ie,o as L,r as R,s as ae,t as oe}from"../items-CD2hw6-3.js";import*as z from"react";import{Popover as se}from"@base-ui/react/popover";import{jsx as B,jsxs as ce}from"react/jsx-runtime";import{useRender as V}from"@base-ui/react/use-render";const le={slot:`bazzaui-combobox-clear`},H=z.forwardRef(function(e,t){let{keepMounted:n=!1,disabled:r,render:a,className:o,style:s,onClick:c,onPointerDown:l,...u}=e,d=x(),f=r??d.disabled,p=d.multiple?d.values.length>0:!i(d.value),m=z.useCallback(e=>{c?.(e),!e.defaultPrevented&&(d.multiple?d.onValuesChange([]):d.onValueChange(``),d.onInputValueChange(``))},[c,d]),h=z.useCallback(e=>{e.preventDefault(),l?.(e)},[l]),g=z.useMemo(()=>({hasValue:p,disabled:f}),[p,f]),_=V({render:a,ref:t,state:g,props:{...u,[le.slot]:``,type:`button`,tabIndex:-1,"aria-label":`Clear selection`,disabled:f||!p,className:F(o,g),style:I(s,g),onClick:m,onPointerDown:h},enabled:n||p,defaultTagName:`button`});return!n&&!p?null:_}),U=z.createContext(null);function W(){return z.useContext(U)}const ue=z.createContext(!1);function de(){return z.useContext(ue)}const G={slot:`bazzaui-combobox-input`,open:`data-open`,closed:`data-closed`,disabled:`data-disabled`,placeholder:`data-placeholder`};function fe(e){let{comboboxContext:t,open:n}=e,r=t.multiple?t.values.length>0:!i(t.value),a=z.useCallback(e=>{let n=T(e,t.itemToStringValue),r=t.itemTextRegistry.get(n);if(r!==void 0)return r;let i=R(t.items,n);if(typeof i==`string`)return i;let a=s(e,t.itemToStringLabel);if(a&&a!==n)return a},[t.itemTextRegistry,t.items,t.itemToStringLabel,t.itemToStringValue]),o=z.useMemo(()=>{if(!r)return``;if(t.multiple){let e=t.values.map(e=>{let n=a(e);return n===void 0?s(e,t.itemToStringLabel)||T(e,t.itemToStringValue):n}).filter(Boolean);return e.length<=2?e.join(`, `):`${e.length} selected`}let e=t.value;if(e==null)return``;let n=a(e);return n===void 0?s(e,t.itemToStringLabel)||T(e,t.itemToStringValue):n},[r,t.multiple,t.value,t.values,t.itemToStringLabel,t.itemToStringValue,a]);return{hasValue:r,displayValue:z.useMemo(()=>n?t.inputValue:o,[n,o,t.inputValue]),selectedLabel:o,getValueText:a}}function pe(e){let{comboboxContext:t,store:n,focusOwnerStore:r,open:i,disabled:a,cursorBehavior:o,hasValue:c,getValueText:l,onFocus:u,onBlur:d,onClick:f,onKeyDown:p}=e,m=z.useRef(!1),g=z.useRef(!1),_=z.useRef(!1),v=z.useRef(null),y=z.useRef(null),b=z.useRef(null);z.useEffect(()=>{if(!i)return;let e=e=>{let n=t.inputRef.current,r=t.inputWrapperRef.current,i=document.getElementById(t.listId),a=e.target,o=n?.contains(a),s=r?.contains(a),c=i?.contains(a);!o&&!s&&!c&&(b.current=e)};return document.addEventListener(`pointerdown`,e,!0),()=>{document.removeEventListener(`pointerdown`,e,!0),b.current=null}},[i,t.inputRef,t.inputWrapperRef,t.listId]),z.useLayoutEffect(()=>{let e=t.inputRef.current;if(e&&i&&y.current){let{start:t,end:n}=y.current,r=e.selectionStart,i=e.value.length;r===i&&t!==i&&e.setSelectionRange(t,n),y.current=null}});let x=z.useRef(i);z.useLayoutEffect(()=>{if(i&&!x.current){if(m.current){m.current=!1,x.current=i;return}if(_.current){_.current=!1,g.current=!1,v.current=null,x.current=i;return}if(g.current&&o===`none`){let e=t.inputRef.current,n=v.current;e&&n!==null&&requestAnimationFrame(()=>{let t=e.value.length,r=Math.min(n,t);e.setSelectionRange(r,r)}),g.current=!1,v.current=null,x.current=i;return}c&&t.multiple&&t.onInputValueChange(``);let e=t.inputRef.current;if(e){let t=e.value.length;o===`select-all`&&t>0?requestAnimationFrame(()=>{e.setSelectionRange(0,e.value.length)}):o===`end`&&t>0&&requestAnimationFrame(()=>{e.setSelectionRange(e.value.length,e.value.length)})}}x.current=i},[i,t,c,o]);let S=z.useCallback(e=>{let r=e.target,i=r.value,a=r.selectionStart,o=r.selectionEnd;a!==null&&o!==null&&(y.current={start:a,end:o}),t.onInputValueChange(i),t.setFilterActive(),n.setSearch(i),n.select(`open`)||(m.current=!0,t.openCombobox())},[t,n]),C=z.useCallback(e=>{if(u?.(e),e.defaultPrevented)return;let r=n.select(`open`);if(r&&(_.current=!0),t.openOnFocus&&!a&&!r){if(c&&!t.multiple){let e=l(t.value)??s(t.value,t.itemToStringLabel);t.onInputValueChange(e)}t.openCombobox()}},[u,t,a,n,c,l]),w=z.useCallback(e=>{d?.(e),!e.defaultPrevented&&requestAnimationFrame(()=>{let e=document.activeElement,n=document.getElementById(t.listId)?.contains(e),r=e===t.inputRef.current;if(!n&&!r){_.current=!1;let e=b.current,n=e?A:O;b.current=null,t.closeCombobox(n,e??void 0)}})},[d,t]),T=z.useCallback(e=>{if(f?.(e),e.defaultPrevented)return;let r=n.select(`open`);if(!a&&!r){let n=e.target;if(o===`none`){let e=n.selectionStart;v.current=e,g.current=!0}if(c&&!t.multiple){let e=l(t.value)??s(t.value,t.itemToStringLabel);t.onInputValueChange(e)}t.openCombobox()}else r&&(_.current=!0)},[f,t,a,n,o,c,l]),E=z.useCallback(e=>{if(p?.(e),!e.defaultPrevented){if(i&&e.key===`Escape`){e.preventDefault(),t.closeCombobox(k);return}if(!i&&(e.key===`ArrowDown`||e.key===`ArrowUp`||e.key===`Enter`)){if(e.preventDefault(),c&&!t.multiple){let e=l(t.value)??s(t.value,t.itemToStringLabel);t.onInputValueChange(e)}t.openCombobox();return}}},[i,t,p,c,l]),{handleKeyDown:D}=h({store:n,surfaceId:`combobox-input`,focusOwnerStore:r,depth:0,submenuContext:null,subpageContext:null,enabled:i,enableTypeToSearch:!1,onKeyDown:E,closeAll:t.closeCombobox,skipFocusOwnerCheck:!0});return{handleChange:S,handleFocus:C,handleBlur:w,handleClick:T,handleKeyDown:D,selectionRef:y}}const me=z.forwardRef(function(e,t){let{placeholder:n,disabled:r,cursorBehavior:i=`none`,render:o,className:s,style:c,onFocus:l,onBlur:d,onClick:f,onKeyDown:p,...m}=e,h=x(),g=a(),_=u(),v=de(),y=(r??h.disabled)||g.disabled,b=R(h.items,``),S=n??(typeof b==`string`?b:void 0)??h.placeholder,C=g.store.useState(`open`),{hasValue:w,displayValue:T,getValueText:E}=fe({comboboxContext:h,open:C}),{handleChange:D,handleFocus:O,handleBlur:k,handleClick:A,handleKeyDown:ee}=pe({comboboxContext:h,store:g.store,focusOwnerStore:_,open:C,disabled:y,cursorBehavior:i,hasValue:w,getValueText:E,onFocus:l,onBlur:d,onClick:f,onKeyDown:p}),j={[G.slot]:``};C?j[G.open]=``:j[G.closed]=``,y&&(j[G.disabled]=``),w||(j[G.placeholder]=``),h.layout===`input-embedded`&&(j[`data-input-embedded`]=``);let M=z.useCallback(e=>{h.setInputElement(e),typeof t==`function`?t(e):t&&(t.current=e)},[t,h]),N=z.useMemo(()=>({open:C,disabled:y,placeholder:!w}),[C,y,w]),P=h.layout===`input-embedded`&&!v?{position:`relative`,zIndex:1}:void 0;return V({render:o,ref:M,state:N,props:{...m,...j,type:`text`,role:`combobox`,"aria-autocomplete":`list`,"aria-expanded":C,"aria-controls":h.listId,"aria-haspopup":`listbox`,autoComplete:`off`,autoCorrect:`off`,spellCheck:!1,disabled:y,placeholder:w?void 0:S,className:F(s,N),style:{...P,...I(c,N)},value:T,onChange:D,onFocus:O,onBlur:k,onClick:A,onKeyDown:ee},defaultTagName:`input`})}),K={slot:`bazzaui-combobox-input-wrapper`,open:`data-open`},he={open:e=>e?{[K.open]:``}:null},ge=z.forwardRef(function(e,t){let{render:n,className:r,style:i,children:o,...s}=e,{store:c}=a(),l=x(),u=c.useState(`open`),d=z.useMemo(()=>({open:u}),[u]),f=l.layout===`input-embedded`?{position:`relative`,zIndex:1}:{position:`relative`},p=z.useCallback(e=>{l.setInputWrapperElement(e),typeof t==`function`?t(e):t&&(t.current=e)},[t,l]),m=V({render:n,ref:p,state:d,stateAttributesMapping:he,props:{...s,[K.slot]:``,className:F(r,d),style:{...f,...I(i,d)},children:o},defaultTagName:`div`});return/* @__PURE__ */ B(ue.Provider,{value:!0,children:m})}),q={slot:`bazzaui-combobox-item`,highlighted:`data-highlighted`,disabled:`data-disabled`,selected:`data-selected`,first:`data-first`,last:`data-last`,firstInGroup:`data-first-in-group`,lastInGroup:`data-last-in-group`},_e=z.createContext(null);function J(){let e=z.useContext(_e);if(!e)throw Error(`ComboboxItem child components must be used within a Combobox.Item`);return e}function ve(){return z.useContext(_e)}const ye={highlighted:e=>e?{[q.highlighted]:``}:null,disabled:e=>e?{[q.disabled]:``}:null,selected:e=>e?{[q.selected]:``}:null,first:e=>e?{[q.first]:``}:null,last:e=>e?{[q.last]:``}:null,firstInGroup:e=>e?{[q.firstInGroup]:``}:null,lastInGroup:e=>e?{[q.lastInGroup]:``}:null};function be(e,t){let{value:n,textValue:r,keywords:i,disabled:a=!1,onSelect:c,forceMount:l=!1,render:u,className:d,style:f,onClick:p,onPointerDown:m,onPointerMove:h,children:g,..._}=e,v=x(),y=z.useMemo(()=>T(n,v.itemToStringValue),[n,v.itemToStringValue]),b=z.useId(),S=n===null?`combobox-clear-${b}`:void 0,C=z.useMemo(()=>ie(v.items,y),[v.items,y]),w=C?.label,E=z.useMemo(()=>s(n,v.itemToStringLabel),[n,v.itemToStringLabel]),D=z.useMemo(()=>{if(r!==void 0)return r;if(typeof w==`string`)return w;if(E&&E!==y)return E},[r,w,E,y]),O=z.useMemo(()=>oe(i,[typeof w==`string`?w:E&&E!==y?E:void 0,...C?.keywords??[]]),[i,w,E,y,C]),k=z.useRef(D),A=v.multiple?L(v.values,n,v.isItemEqualToValue):v.value!==``&&re(v.value,n,v.isItemEqualToValue),ee=v.closeOnSelect,j=o({id:S,value:y,keywords:O,disabled:a,forceMount:l,closeOnClick:ee,children:g});z.useEffect(()=>j.registerSelect(()=>{if(!a){if(v.multiple){if(n==null)v.onValuesChange([]);else{let e=A?ae(v.values,n,v.isItemEqualToValue):[...v.values,n];v.onValuesChange(e)}}else v.onValueChange(n);c?.()}}),[a,v,n,A,c,j]),z.useEffect(()=>{let e=k.current;if(e)return v.registerItemText(y,e)},[y,v]),z.useEffect(()=>{!D&&typeof g==`string`&&(k.current=g,v.registerItemText(y,g))},[g,D,y,v]);let M=z.useMemo(()=>({highlighted:j.isHighlighted,disabled:a,selected:A,first:j.positional.first,last:j.positional.last,firstInGroup:j.positional.firstInGroup,lastInGroup:j.positional.lastInGroup}),[j.isHighlighted,a,A,j.positional]),N=z.useMemo(()=>({id:j.id,value:n,textValue:D,highlighted:j.isHighlighted,disabled:a,selected:A}),[j.id,n,D,j.isHighlighted,a,A]),P=z.useCallback(e=>{p?.(e),e.defaultPrevented||j.handlers.onClick(e)},[p,j.handlers]),te=z.useCallback(e=>{j.handlers.onPointerDown(e),m?.(e)},[j.handlers,m]),ne=z.useCallback(e=>{h?.(e),e.defaultPrevented||j.handlers.onPointerMove(e)},[h,j.handlers]),R=V({render:u,ref:[j.ref,j.rowRef,t],state:M,stateAttributesMapping:ye,props:{..._,[q.slot]:``,id:j.id,role:`option`,tabIndex:-1,"aria-selected":A,"aria-disabled":a||void 0,className:F(d,M),style:I(f,M),onClick:P,onPointerMove:ne,onPointerDown:te,children:g},enabled:j.isVisible,defaultTagName:`div`});return j.isVisible?/* @__PURE__ */ B(_e.Provider,{value:N,children:R}):null}const xe=z.forwardRef(be),Y={slot:`bazzaui-combobox-item-indicator`,selected:`data-selected`},Se={selected:e=>e?{[Y.selected]:``}:null},Ce=z.forwardRef(function(e,t){let{keepMounted:n=!1,render:r,className:i,style:a,...o}=e,s=J(),c=z.useMemo(()=>({selected:s.selected}),[s.selected]),l=V({render:r,ref:t,state:c,stateAttributesMapping:Se,props:{...o,[Y.slot]:``,"aria-hidden":!0,className:F(i,c),style:I(a,c)},enabled:n||s.selected,defaultTagName:`span`});return!n&&!s.selected?null:l}),we={slot:`bazzaui-combobox-item-label`},X=z.forwardRef(function(e,t){let{render:n,className:r,style:i,children:a,...o}=e,s=x(),c=J(),l=T(c.value,s.itemToStringValue),u=z.useMemo(()=>{if(a!==void 0)return a;let e=R(s.items,l);return e===void 0?c.textValue===void 0?l:c.textValue:e},[a,s.items,l,c.textValue]),d=z.useMemo(()=>({value:l,selected:c.selected,highlighted:c.highlighted,disabled:c.disabled}),[l,c.selected,c.highlighted,c.disabled]);return z.useEffect(()=>{if(typeof u==`string`)return s.registerItemText(l,u)},[u,s,l]),V({render:n,ref:t,state:d,props:{...o,[we.slot]:``,className:F(r,d),style:I(i,d),children:u},defaultTagName:`span`})}),Z={slot:`bazzaui-combobox-positioner`};function Q(e,t,n,r){let i=n+r*2;return e===`top`?{width:i,marginBottom:-(t+r),paddingTop:r,paddingLeft:r,paddingRight:r,paddingBottom:t+r}:{width:i,marginTop:-(t+r),paddingTop:t+r,paddingLeft:r,paddingRight:r,paddingBottom:r}}function Te({render:e,state:t,props:n}){return V({render:typeof e==`function`?n=>e(n,t):e,props:n,defaultTagName:`div`})}const Ee=z.forwardRef(function(e,t){let{layout:n,popupPadding:r=8,side:i=`bottom`,align:a,sideOffset:o=4,anchor:s,className:c,style:l,children:u,render:d,...f}=e,p=x(),m=n??p.layout,h=m===`input-embedded`,g=s??p.inputWrapperRef.current?p.inputWrapperRef:p.inputRef,_=h?0:o,v=h?`center`:a??`start`,{inputHeight:y,inputWidth:b}=p,S=b+r*2,C=te(l,e=>({...e,...h?{zIndex:0}:{}}));if(h)return/* @__PURE__ */ B(se.Positioner,{ref:t,side:i,align:v,sideOffset:_,anchor:g,className:c,style:C,"data-input-embedded":``,[Z.slot]:``,...f,render:(e,t)=>{let n=t.side,i={layout:m,side:n,align:t.align,inputHeight:p.inputHeight},a={"--combobox-input-height":`${y}px`,"--combobox-input-width":`${b}px`,"--combobox-popup-padding":`${r}px`,"--combobox-popup-width":`${S}px`},o=Q(n,y,b,r),s=z.Children.map(u,e=>z.isValidElement(e)?z.cloneElement(e,{style:{...o,...e.props.style},"data-side":n}):e);return/* @__PURE__ */ B(U.Provider,{value:i,children:/* @__PURE__ */ B(Te,{render:d,state:t,props:{...e,style:{...e.style,...a},"data-side":n,children:s}})})}});let w={layout:m,side:i,align:v,inputHeight:p.inputHeight},T={"--combobox-input-height":`${y}px`,"--combobox-input-width":`${b}px`},E=te(l,e=>({...e,...T}));return/* @__PURE__ */ B(U.Provider,{value:w,children:/* @__PURE__ */ B(se.Positioner,{ref:t,side:i,align:v,sideOffset:_,anchor:g,className:c,style:E,[Z.slot]:``,...f,render:d,children:u})})});function De(e){let{open:t,onOpenChange:n,actionsRef:r,defaultOpen:i=!1,value:a,defaultValue:o,onValueChange:s,multiple:c=!1,values:l,defaultValues:u,onValuesChange:f,isItemEqualToValue:p=ne,itemToStringLabel:m,itemToStringValue:h,inputValue:_,defaultInputValue:v=``,onInputValueChange:y,name:b,form:x,required:S,disabled:w=!1,placeholder:E=`Search...`,items:D,modal:O=!1,closeOnSelect:k,openOnFocus:A=!0,virtualized:ee=!1,virtualItems:j,onHighlightChange:M,layout:N=`floating`,onOpenChangeComplete:P,debug:F,children:I,...te}=e,re=z.useCallback((e,t,n,r)=>M?.(e,n,r),[M]),ie=z.useId(),L=z.useRef(null),R=z.useRef(null),[ae,oe]=z.useState(0),[V,le]=z.useState(0),H=z.useCallback(e=>{if(L.current=e,e&&!R.current){let t=e.getBoundingClientRect();oe(t.height),le(t.width)}},[]),U=z.useCallback(e=>{if(R.current=e,e){let t=e.getBoundingClientRect();oe(t.height),le(t.width)}},[]),{store:W,focusOwnerStore:ue,openChainStore:de,registerSurface:G,closeAll:fe,virtualization:pe,handleOpenChange:me,disabled:K,setDisabled:he,menuTreeResolver:ge}=d({onOpenChange:n,defaultOpen:i,virtualized:ee,items:j,onHighlightChange:re,disabled:w}),q=z.useRef(null);z.useImperativeHandle(r,()=>({close:()=>{q.current?.close()},unmount:()=>{q.current?.unmount()},setDisabled:he}),[he]),W.useControlledProp(`openProp`,t);let _e=W.useState(`open`),J=z.useCallback((e,t,n)=>{K&&t!==`imperative-action`||(e||!L.current||document.activeElement!==L.current)&&me(e,t,n)},[me,K]),ve=z.useCallback(e=>{!e&&W.context.clearSearchOnClose===`after-exit`&&(W.clearSearch(),W.setInputActive(!1)),e||W.clearHighlight(),P?.(e)},[W,P]),ye=z.useCallback((e,t)=>{J(e,t.reason,t.event)},[J]),[be,xe]=z.useState(o===void 0?null:o),Y=a===void 0?be:a,Se=z.useCallback(e=>{a===void 0&&xe(e),s?.(e)},[a,s]),[Ce,we]=z.useState(u??[]),X=l===void 0?Ce:l,Z=z.useCallback(e=>{l===void 0&&we(e),f?.(e)},[l,f]),[Q,Te]=z.useState(v),Ee=_===void 0?Q:_,De=z.useCallback(e=>{_===void 0&&Te(e),y?.(e)},[_,y]),Oe=z.useRef(/* @__PURE__ */ new Map),ke=z.useCallback((e,t)=>(Oe.current.set(e,t),()=>{}),[]),Ae=k??!c,je=z.useRef({type:`active`}),[,Me]=z.useState({type:`active`}),$=z.useCallback(e=>{je.current=e,Me(e)},[]),Ne=je.current,Pe=z.useCallback(()=>{$({type:`active`})},[$]),Fe=z.useCallback(()=>{K||($(!c&&Y!=null?{type:`showAll`}:{type:`active`}),W.setOpen(!0))},[K,W,c,Y,$]),Ie=z.useCallback((e,t)=>{let n=je.current,r=n.type===`active`?Q:n.type===`showAll`?``:n.search;$({type:`frozen`,search:r}),W.setOpen(!1,e,t)},[W,$,Q]),Le=z.useMemo(()=>({multiple:c,value:Y,values:X,onValueChange:Se,onValuesChange:Z,isItemEqualToValue:p,itemToStringLabel:m,itemToStringValue:h,inputValue:Ee,onInputValueChange:De,name:b,form:x,required:S,disabled:K,placeholder:E,items:D,itemTextRegistry:Oe.current,registerItemText:ke,listId:ie,inputRef:L,setInputElement:H,inputWrapperRef:R,setInputWrapperElement:U,closeOnSelect:Ae,openOnFocus:A,openCombobox:Fe,closeCombobox:Ie,filterMode:Ne,setFilterActive:Pe,inputHeight:ae,inputWidth:V,layout:N}),[c,Y,X,Se,Z,p,m,h,Ee,De,b,x,S,K,E,D,ke,ie,H,U,Ae,A,Fe,Ie,Ne,Pe,ae,V,N]),Re=z.useMemo(()=>b?c?X.length>0?X.map((e,t)=>{let n=T(e,h);return/* @__PURE__ */ B(`input`,{type:`hidden`,name:b,value:n,form:x,required:S&&t===0},n)}):/* @__PURE__ */ B(`input`,{type:`hidden`,name:b,value:``,form:x,required:S}):/* @__PURE__ */ B(`input`,{type:`hidden`,name:b,value:Y==null?``:T(Y,h),form:x,required:S}):null,[b,x,S,c,Y,X,h]);return/* @__PURE__ */ B(C.Provider,{value:Le,children:/* @__PURE__ */ ce(g,{menuTreeResolver:ge,store:W,focusOwnerStore:ue,openChainStore:de,disabled:K,depth:0,closeAll:fe,registerSurface:G,virtualization:pe,menuType:`dropdown`,externalFocus:!0,componentName:`combobox`,debug:F,children:[Re,/* @__PURE__ */ B(se.Root,{...te,open:_e,onOpenChange:ye,onOpenChangeComplete:ve,modal:O,actionsRef:r?q:void 0,children:I})]})})}const Oe={slot:`bazzaui-combobox-surface`},ke=z.forwardRef(function(e,t){let{autoHighlightFirst:n,clearSearchOnClose:i=!0,search:a,onSearchChange:o,onPointerMove:s,...c}=e,l=x(),u=z.useCallback(e=>{s?.(e);let t=l.inputRef.current;t&&document.activeElement!==t&&t.focus()},[s,l.inputRef]),d=z.useMemo(()=>{let e=n??!0;if(e===`selected`){let e=l.multiple?l.values[0]:l.value;return e==null||T(e,l.itemToStringValue)}return e},[n,l.multiple,l.value,l.values,l.itemToStringValue]),{filterMode:f}=l,p=a??(f.type===`active`?l.inputValue:f.type===`showAll`?``:f.search),m=z.useCallback(e=>{l.onInputValueChange(e),o?.(e)},[l,o]);return/* @__PURE__ */ B(r,{ref:t,autoHighlightFirst:d,clearSearchOnClose:i,search:p,onSearchChange:m,onPointerMove:u,skipAutoFocus:!0,[Oe.slot]:``,...c})});var Ae=/* @__PURE__ */ e({Arrow:()=>v,Backdrop:()=>D,Clear:()=>H,Empty:()=>f,Group:()=>S,GroupLabel:()=>p,Icon:()=>m,Input:()=>me,InputWrapper:()=>ge,Item:()=>xe,ItemIndicator:()=>Ce,ItemLabel:()=>X,List:()=>c,Popup:()=>E,Portal:()=>y,Positioner:()=>Ee,Root:()=>De,ScrollDownArrow:()=>w,ScrollUpArrow:()=>n,Separator:()=>b,Surface:()=>ke,useComboboxPositionerContext:()=>W});let je=/* @__PURE__ */ function(e){return e.slot=`bazzaui-combobox-arrow`,e.open=`data-open`,e.closed=`data-closed`,e.side=`data-side`,e.align=`data-align`,e.uncentered=`data-uncentered`,e}({}),Me=/* @__PURE__ */ function(e){return e.slot=`bazzaui-combobox-backdrop`,e.open=`data-open`,e.closed=`data-closed`,e.startingStyle=`data-starting-style`,e.endingStyle=`data-ending-style`,e}({}),$=/* @__PURE__ */ function(e){return e.slot=`bazzaui-combobox-empty`,e}({}),Ne=/* @__PURE__ */ function(e){return e.slot=`bazzaui-combobox-group`,e}({}),Pe=/* @__PURE__ */ function(e){return e.slot=`bazzaui-combobox-group-label`,e}({});const Fe={slot:`bazzaui-combobox-icon`,open:`data-popup-open`};let Ie=/* @__PURE__ */ function(e){return e.slot=`bazzaui-combobox-list`,e.list=`data-popup-menu-list`,e}({}),Le=/* @__PURE__ */ function(e){return e.slot=`bazzaui-combobox-popup`,e.open=`data-open`,e.closed=`data-closed`,e.side=`data-side`,e.align=`data-align`,e.startingStyle=`data-starting-style`,e.endingStyle=`data-ending-style`,e.instant=`data-instant`,e.focused=`data-focused`,e.hasOpenSubmenu=`data-has-open-submenu`,e.submenu=`data-submenu`,e.navigating=`data-navigating`,e}({});const Re={slotUp:`bazzaui-combobox-scroll-up-arrow`,slotDown:`bazzaui-combobox-scroll-down-arrow`,direction:`data-direction`,side:`data-side`};let ze=/* @__PURE__ */ function(e){return e.slot=`bazzaui-combobox-separator`,e}({});export{Ae as Combobox,je as ComboboxArrowDataAttributes,Me as ComboboxBackdropDataAttributes,H as ComboboxClear,$ as ComboboxEmptyDataAttributes,Ne as ComboboxGroupDataAttributes,Pe as ComboboxGroupLabelDataAttributes,Fe as ComboboxIconDataAttributes,me as ComboboxInput,G as ComboboxInputDataAttributes,ge as ComboboxInputWrapper,K as ComboboxInputWrapperDataAttributes,xe as ComboboxItem,q as ComboboxItemDataAttributes,Ce as ComboboxItemIndicator,Y as ComboboxItemIndicatorDataAttributes,X as ComboboxItemLabel,l as ComboboxListCssVars,Ie as ComboboxListDataAttributes,Le as ComboboxPopupDataAttributes,Ee as ComboboxPositioner,t as ComboboxPositionerCssVars,Z as ComboboxPositionerDataAttributes,De as ComboboxRoot,Re as ComboboxScrollArrowDataAttributes,ze as ComboboxSeparatorDataAttributes,N as ComboboxStore,ke as ComboboxSurface,j as commandScore,M as defaultFilter,x as useComboboxContext,J as useComboboxItemContext,W as useComboboxPositionerContext,_ as useMaybeComboboxContext,ve as useMaybeComboboxItemContext,P as useMaybeSurfaceContext,ee as useSurfaceContext};
2
2
  //# sourceMappingURL=index.js.map