@vertz/ui-primitives 0.2.41 → 0.2.43

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 (232) hide show
  1. package/dist/shared/chunk-06m8prfg.js +52 -0
  2. package/dist/shared/chunk-0n9jj8xr.js +24 -0
  3. package/dist/shared/chunk-1ben27xq.js +317 -0
  4. package/dist/shared/chunk-1j2mj0sa.js +45 -0
  5. package/dist/shared/chunk-250hj18f.js +243 -0
  6. package/dist/shared/chunk-2h4m9c71.js +38 -0
  7. package/dist/shared/chunk-2sbx20hv.js +128 -0
  8. package/dist/shared/chunk-2ye674gr.js +70 -0
  9. package/dist/shared/chunk-34d8385y.js +15 -0
  10. package/dist/shared/chunk-4d7bm8h0.js +113 -0
  11. package/dist/shared/chunk-4zjgxr7x.js +157 -0
  12. package/dist/shared/chunk-5c150wvr.js +140 -0
  13. package/dist/shared/chunk-5gycdypd.js +58 -0
  14. package/dist/shared/chunk-6mm7fhp8.js +105 -0
  15. package/dist/shared/chunk-6zmnqvh6.js +109 -0
  16. package/dist/shared/{chunk-yy3ft5mb.js → chunk-7amn5d71.js} +2 -2
  17. package/dist/shared/chunk-7pbff2hg.js +118 -0
  18. package/dist/shared/chunk-7zpjshwz.js +194 -0
  19. package/dist/shared/chunk-993ff51d.js +155 -0
  20. package/dist/shared/chunk-9pdt5aw7.js +24 -0
  21. package/dist/shared/chunk-a71m4xkv.js +106 -0
  22. package/dist/shared/chunk-aj8m39pk.js +127 -0
  23. package/dist/shared/chunk-ajawpc05.js +305 -0
  24. package/dist/shared/chunk-b7mzwqhj.js +125 -0
  25. package/dist/shared/chunk-bb887de4.js +200 -0
  26. package/dist/shared/chunk-bfsmbrxc.js +111 -0
  27. package/dist/shared/chunk-c2f63m5n.js +56 -0
  28. package/dist/shared/chunk-c5r3s5km.js +263 -0
  29. package/dist/shared/chunk-caba5bhd.js +427 -0
  30. package/dist/shared/chunk-crym07yc.js +264 -0
  31. package/dist/shared/{chunk-5964gmv0.js → chunk-csjtyvam.js} +62 -88
  32. package/dist/shared/chunk-d6rtejz3.js +128 -0
  33. package/dist/shared/chunk-dvaf0bmq.js +140 -0
  34. package/dist/shared/chunk-dwkv9ya6.js +22 -0
  35. package/dist/shared/chunk-e0ckxrjg.js +41 -0
  36. package/dist/shared/chunk-ennxcymj.js +225 -0
  37. package/dist/shared/{chunk-1jd1n0dt.js → chunk-ey38de46.js} +19 -47
  38. package/dist/shared/chunk-f0v1gs5e.js +52 -0
  39. package/dist/shared/chunk-f86rsf84.js +231 -0
  40. package/dist/shared/{chunk-3sahbk4d.js → chunk-fdse46x5.js} +6 -1
  41. package/dist/shared/chunk-gj4hrssn.js +135 -0
  42. package/dist/shared/chunk-gyvq4gk9.js +24 -0
  43. package/dist/shared/chunk-hbnps9sq.js +229 -0
  44. package/dist/shared/{chunk-fhss32ya.js → chunk-hdmpyeq9.js} +43 -132
  45. package/dist/shared/chunk-hgnkd4he.js +256 -0
  46. package/dist/shared/chunk-hpcyffm7.js +185 -0
  47. package/dist/shared/chunk-hpmvwx0h.js +99 -0
  48. package/dist/shared/chunk-hz0e504p.js +69 -0
  49. package/dist/shared/chunk-hzk4wfq9.js +43 -0
  50. package/dist/shared/chunk-j7znzkpa.js +48 -0
  51. package/dist/shared/chunk-j9kxgrnn.js +167 -0
  52. package/dist/shared/chunk-jetwnv0w.js +130 -0
  53. package/dist/shared/chunk-jjdg26c1.js +155 -0
  54. package/dist/shared/chunk-k0m4yh86.js +123 -0
  55. package/dist/shared/chunk-k43q9cjr.js +82 -0
  56. package/dist/shared/chunk-k9k8tbr5.js +119 -0
  57. package/dist/shared/chunk-meaj7br1.js +232 -0
  58. package/dist/shared/chunk-mgj0n08k.js +34 -0
  59. package/dist/shared/chunk-mjz4rp6c.js +46 -0
  60. package/dist/shared/chunk-n4rr5gme.js +239 -0
  61. package/dist/shared/chunk-nk55etpp.js +65 -0
  62. package/dist/shared/chunk-nkh1ks3k.js +264 -0
  63. package/dist/shared/chunk-pgvpvbpe.js +26 -0
  64. package/dist/shared/chunk-pma8gnv7.js +178 -0
  65. package/dist/shared/chunk-q7xv6xze.js +131 -0
  66. package/dist/shared/chunk-qey801nq.js +22 -0
  67. package/dist/shared/chunk-s6b4c3tj.js +58 -0
  68. package/dist/shared/chunk-sq27a4h0.js +36 -0
  69. package/dist/shared/chunk-taa5pj15.js +103 -0
  70. package/dist/shared/chunk-tc5rpvyx.js +127 -0
  71. package/dist/shared/chunk-tescm0b3.js +192 -0
  72. package/dist/shared/chunk-tkftdwnq.js +71 -0
  73. package/dist/shared/chunk-tqhnjcfp.js +116 -0
  74. package/dist/shared/chunk-vfknb5ht.js +183 -0
  75. package/dist/shared/chunk-vsc369w3.js +185 -0
  76. package/dist/shared/chunk-whq9s8v5.js +301 -0
  77. package/dist/shared/{chunk-hze1f32t.js → chunk-wrqddgaj.js} +1 -1
  78. package/dist/shared/chunk-yzbmkx4r.js +155 -0
  79. package/dist/shared/chunk-zaen0ajc.js +347 -0
  80. package/dist/src/accordion/accordion-composed.js +1 -1
  81. package/dist/src/accordion/accordion.js +1 -1
  82. package/dist/src/alert/alert-composed.js +1 -1
  83. package/dist/src/alert-dialog/alert-dialog-composed.js +1 -1
  84. package/dist/src/alert-dialog/alert-dialog.js +1 -1
  85. package/dist/src/avatar/avatar-composed.js +1 -1
  86. package/dist/src/badge/badge-composed.js +1 -1
  87. package/dist/src/badge/badge.js +1 -1
  88. package/dist/src/breadcrumb/breadcrumb-composed.js +1 -1
  89. package/dist/src/button/button-composed.js +1 -1
  90. package/dist/src/button/button.js +1 -1
  91. package/dist/src/calendar/calendar-composed.js +1 -1
  92. package/dist/src/calendar/calendar.js +1 -1
  93. package/dist/src/card/card-composed.js +1 -1
  94. package/dist/src/carousel/carousel-composed.js +1 -1
  95. package/dist/src/carousel/carousel.js +1 -1
  96. package/dist/src/checkbox/checkbox-composed.js +1 -1
  97. package/dist/src/checkbox/checkbox.js +1 -1
  98. package/dist/src/collapsible/collapsible-composed.js +1 -1
  99. package/dist/src/collapsible/collapsible.js +1 -1
  100. package/dist/src/combobox/combobox-composed.js +1 -1
  101. package/dist/src/combobox/combobox.js +1 -1
  102. package/dist/src/command/command-composed.js +1 -1
  103. package/dist/src/command/command.js +1 -1
  104. package/dist/src/composed/with-styles.js +1 -1
  105. package/dist/src/context-menu/context-menu-composed.js +1 -1
  106. package/dist/src/context-menu/context-menu.js +1 -1
  107. package/dist/src/date-picker/date-picker-composed.js +1 -1
  108. package/dist/src/date-picker/date-picker.js +1 -1
  109. package/dist/src/dialog/dialog-composed.js +1 -1
  110. package/dist/src/dialog/dialog-stack-parts.js +1 -1
  111. package/dist/src/dialog/dialog.js +1 -1
  112. package/dist/src/dropdown-menu/dropdown-menu-composed.js +1 -1
  113. package/dist/src/dropdown-menu/dropdown-menu.js +1 -1
  114. package/dist/src/empty-state/empty-state-composed.js +1 -1
  115. package/dist/src/form-group/form-group-composed.js +1 -1
  116. package/dist/src/hover-card/hover-card-composed.js +1 -1
  117. package/dist/src/hover-card/hover-card.js +1 -1
  118. package/dist/src/input/input-composed.js +1 -1
  119. package/dist/src/label/label-composed.js +1 -1
  120. package/dist/src/list/list-composed.js +1 -1
  121. package/dist/src/menu/menu-composed.js +1 -1
  122. package/dist/src/menu/menu.js +1 -1
  123. package/dist/src/menubar/menubar-composed.js +1 -1
  124. package/dist/src/menubar/menubar.js +1 -1
  125. package/dist/src/navigation-menu/navigation-menu-composed.js +1 -1
  126. package/dist/src/navigation-menu/navigation-menu.js +1 -1
  127. package/dist/src/pagination/pagination-composed.js +1 -1
  128. package/dist/src/popover/popover-composed.js +1 -1
  129. package/dist/src/popover/popover.js +1 -1
  130. package/dist/src/progress/progress-composed.js +1 -1
  131. package/dist/src/progress/progress.js +1 -1
  132. package/dist/src/radio/radio-composed.js +1 -1
  133. package/dist/src/radio/radio.js +1 -1
  134. package/dist/src/resizable-panel/resizable-panel-composed.js +1 -1
  135. package/dist/src/resizable-panel/resizable-panel.js +1 -1
  136. package/dist/src/scroll-area/scroll-area-composed.js +1 -1
  137. package/dist/src/scroll-area/scroll-area.js +1 -1
  138. package/dist/src/select/select-composed.js +1 -1
  139. package/dist/src/select/select.js +1 -1
  140. package/dist/src/separator/separator-composed.js +1 -1
  141. package/dist/src/sheet/sheet-composed.js +1 -1
  142. package/dist/src/sheet/sheet.js +1 -1
  143. package/dist/src/skeleton/skeleton-composed.js +1 -1
  144. package/dist/src/slider/slider-composed.js +1 -1
  145. package/dist/src/slider/slider.js +1 -1
  146. package/dist/src/switch/switch-composed.js +1 -1
  147. package/dist/src/switch/switch.js +1 -1
  148. package/dist/src/table/table-composed.js +1 -1
  149. package/dist/src/tabs/tabs-composed.js +1 -1
  150. package/dist/src/tabs/tabs.js +1 -1
  151. package/dist/src/textarea/textarea-composed.js +1 -1
  152. package/dist/src/toast/toast.js +1 -1
  153. package/dist/src/toggle/toggle-composed.js +1 -1
  154. package/dist/src/toggle/toggle.js +1 -1
  155. package/dist/src/toggle-group/toggle-group-composed.js +1 -1
  156. package/dist/src/toggle-group/toggle-group.js +1 -1
  157. package/dist/src/tooltip/tooltip-composed.js +1 -1
  158. package/dist/src/tooltip/tooltip.js +1 -1
  159. package/package.json +3 -3
  160. package/dist/shared/chunk-144kbnmx.js +0 -95
  161. package/dist/shared/chunk-1ewxfgsa.js +0 -167
  162. package/dist/shared/chunk-1hm0mbke.js +0 -258
  163. package/dist/shared/chunk-22rt6ws9.js +0 -69
  164. package/dist/shared/chunk-2ssqz188.js +0 -162
  165. package/dist/shared/chunk-33he7ay9.js +0 -218
  166. package/dist/shared/chunk-3jack97k.js +0 -509
  167. package/dist/shared/chunk-75pegjs7.js +0 -26
  168. package/dist/shared/chunk-862x7dja.js +0 -398
  169. package/dist/shared/chunk-8pk1pn5h.js +0 -215
  170. package/dist/shared/chunk-8t0nm721.js +0 -152
  171. package/dist/shared/chunk-94twh4s4.js +0 -28
  172. package/dist/shared/chunk-9yb26c0w.js +0 -232
  173. package/dist/shared/chunk-a82r2pnq.js +0 -67
  174. package/dist/shared/chunk-axpbdpgx.js +0 -177
  175. package/dist/shared/chunk-b3j6mym6.js +0 -203
  176. package/dist/shared/chunk-b4zzg457.js +0 -410
  177. package/dist/shared/chunk-b9qxfcsy.js +0 -60
  178. package/dist/shared/chunk-bc2qqkhr.js +0 -194
  179. package/dist/shared/chunk-bv12nkdm.js +0 -149
  180. package/dist/shared/chunk-bvxc1ww4.js +0 -164
  181. package/dist/shared/chunk-czv0kqj4.js +0 -107
  182. package/dist/shared/chunk-d83ag07h.js +0 -189
  183. package/dist/shared/chunk-de18ashk.js +0 -134
  184. package/dist/shared/chunk-dvk4h36t.js +0 -140
  185. package/dist/shared/chunk-dxvnerw2.js +0 -353
  186. package/dist/shared/chunk-e399pzdq.js +0 -241
  187. package/dist/shared/chunk-e4qha9as.js +0 -180
  188. package/dist/shared/chunk-eb2d9v6k.js +0 -68
  189. package/dist/shared/chunk-ect26sp5.js +0 -353
  190. package/dist/shared/chunk-ev367pq3.js +0 -102
  191. package/dist/shared/chunk-fjykbv0v.js +0 -214
  192. package/dist/shared/chunk-gdddk6nh.js +0 -96
  193. package/dist/shared/chunk-ghkw5bjq.js +0 -55
  194. package/dist/shared/chunk-hfjtkytb.js +0 -310
  195. package/dist/shared/chunk-hpvjfj0j.js +0 -31
  196. package/dist/shared/chunk-jpyjk616.js +0 -52
  197. package/dist/shared/chunk-k6d53tne.js +0 -206
  198. package/dist/shared/chunk-knzg86am.js +0 -168
  199. package/dist/shared/chunk-ktbf6xrt.js +0 -179
  200. package/dist/shared/chunk-m8y2p66x.js +0 -252
  201. package/dist/shared/chunk-metxdt5x.js +0 -28
  202. package/dist/shared/chunk-mgae1d93.js +0 -157
  203. package/dist/shared/chunk-mtx2cfbx.js +0 -175
  204. package/dist/shared/chunk-n436p5cb.js +0 -260
  205. package/dist/shared/chunk-nj420k31.js +0 -54
  206. package/dist/shared/chunk-nsmvdxgp.js +0 -213
  207. package/dist/shared/chunk-pcms04vq.js +0 -162
  208. package/dist/shared/chunk-pqskzq8t.js +0 -79
  209. package/dist/shared/chunk-pwr60kyd.js +0 -321
  210. package/dist/shared/chunk-pzknpa1y.js +0 -327
  211. package/dist/shared/chunk-q77y3rg4.js +0 -189
  212. package/dist/shared/chunk-qhnany7w.js +0 -179
  213. package/dist/shared/chunk-rdr0rtpr.js +0 -131
  214. package/dist/shared/chunk-rj52ty6r.js +0 -147
  215. package/dist/shared/chunk-rnqc7735.js +0 -125
  216. package/dist/shared/chunk-rtk30950.js +0 -202
  217. package/dist/shared/chunk-s0xgd8vg.js +0 -266
  218. package/dist/shared/chunk-s415735j.js +0 -357
  219. package/dist/shared/chunk-s62e7jf4.js +0 -30
  220. package/dist/shared/chunk-snd8e6r8.js +0 -418
  221. package/dist/shared/chunk-spng4yb9.js +0 -73
  222. package/dist/shared/chunk-t887wwjc.js +0 -168
  223. package/dist/shared/chunk-tn0m98j8.js +0 -42
  224. package/dist/shared/chunk-v0b5pkcq.js +0 -30
  225. package/dist/shared/chunk-v5tj7veh.js +0 -284
  226. package/dist/shared/chunk-vkscwzpr.js +0 -294
  227. package/dist/shared/chunk-vv187snj.js +0 -112
  228. package/dist/shared/chunk-xv4wd0kf.js +0 -293
  229. package/dist/shared/chunk-y1hpsqzy.js +0 -185
  230. package/dist/shared/chunk-yfzddvxc.js +0 -71
  231. package/dist/shared/chunk-yzgzx2dh.js +0 -311
  232. package/dist/shared/chunk-z5j7ztf2.js +0 -467
@@ -1,311 +0,0 @@
1
- import {
2
- cn
3
- } from "./chunk-q7xbcj9q.js";
4
- import {
5
- linkedIds
6
- } from "./chunk-8y1jf6xr.js";
7
- import {
8
- Keys,
9
- isKey
10
- } from "./chunk-7867pr13.js";
11
- import {
12
- setHiddenAnimated
13
- } from "./chunk-vevfhpc9.js";
14
-
15
- // src/combobox/combobox-composed.tsx
16
- import { computed } from "@vertz/ui";
17
- import { __append, __attr, __child, __discardMountFrame, __element, __enterChildren, __exitChildren, __flushMountFrame, __on, __pushMountFrame, __styleStr } from "@vertz/ui/internals";
18
- import { createContext, ref, useContext } from "@vertz/ui";
19
- var ComboboxContext = createContext(undefined, "@vertz/ui-primitives::ComboboxContext");
20
- function useComboboxContext(componentName) {
21
- const ctx = useContext(ComboboxContext);
22
- if (!ctx) {
23
- throw new Error(`<Combobox.${componentName}> must be used inside <ComposedCombobox>. ` + "Ensure it is a direct or nested child of the ComposedCombobox root component.");
24
- }
25
- return ctx;
26
- }
27
- function ComboboxInput(__props) {
28
- const __mfDepth = __pushMountFrame();
29
- try {
30
- const ctx = useComboboxContext("Input");
31
- const __mfResult0 = (() => {
32
- const __el0 = __element("input");
33
- ctx.inputRef.current = __el0;
34
- __el0.setAttribute("type", "text");
35
- __el0.setAttribute("role", "combobox");
36
- __el0.setAttribute("data-combobox-input", "");
37
- __el0.setAttribute("aria-autocomplete", "list");
38
- {
39
- const __v = ctx.contentId;
40
- if (__v != null && __v !== false)
41
- __el0.setAttribute("aria-controls", __v === true ? "" : __v);
42
- }
43
- __el0.setAttribute("aria-haspopup", "listbox");
44
- __el0.setAttribute("aria-expanded", "false");
45
- {
46
- const __v = ctx.selectedValue();
47
- if (__v != null)
48
- __el0.value = __v;
49
- }
50
- __attr(__el0, "class", () => cn(ctx.classes?.input, __props.className ?? __props.class));
51
- __on(__el0, "input", () => {
52
- const inputEl = ctx.inputRef.current;
53
- if (!inputEl)
54
- return;
55
- if (!ctx.isOpen())
56
- ctx.open();
57
- });
58
- __on(__el0, "focus", () => {
59
- const inputEl = ctx.inputRef.current;
60
- if (!inputEl)
61
- return;
62
- if (!ctx.isOpen() && inputEl.value.length > 0)
63
- ctx.open();
64
- });
65
- __on(__el0, "keydown", (event) => {
66
- if (isKey(event, Keys.Escape)) {
67
- event.preventDefault();
68
- ctx.close();
69
- return;
70
- }
71
- if (isKey(event, Keys.ArrowDown)) {
72
- event.preventDefault();
73
- if (!ctx.isOpen()) {
74
- ctx.open();
75
- }
76
- const contentEl = ctx.contentRef.current;
77
- if (!contentEl)
78
- return;
79
- const options = [...contentEl.querySelectorAll('[role="option"]')];
80
- const next = Math.min(ctx.activeIndex() + 1, options.length - 1);
81
- ctx.setActiveIndex(next);
82
- ctx.updateActiveDescendant(next);
83
- return;
84
- }
85
- if (isKey(event, Keys.ArrowUp)) {
86
- event.preventDefault();
87
- const prev = Math.max(ctx.activeIndex() - 1, 0);
88
- ctx.setActiveIndex(prev);
89
- ctx.updateActiveDescendant(prev);
90
- return;
91
- }
92
- if (isKey(event, Keys.Enter)) {
93
- event.preventDefault();
94
- const idx = ctx.activeIndex();
95
- const contentEl = ctx.contentRef.current;
96
- if (!contentEl)
97
- return;
98
- const options = [...contentEl.querySelectorAll('[role="option"]')];
99
- if (idx >= 0 && idx < options.length) {
100
- const val = options[idx]?.getAttribute("data-value");
101
- if (val != null)
102
- ctx.selectOption(val);
103
- }
104
- return;
105
- }
106
- });
107
- return __el0;
108
- })();
109
- __flushMountFrame();
110
- return __mfResult0;
111
- } catch (__mfErr) {
112
- __discardMountFrame(__mfDepth);
113
- throw __mfErr;
114
- }
115
- }
116
- function ComboboxContent(__props) {
117
- const __mfDepth = __pushMountFrame();
118
- try {
119
- const ctx = useComboboxContext("Content");
120
- const instanceIndex = ctx._contentCount.value++;
121
- if (instanceIndex > 0) {
122
- console.warn("Duplicate <Combobox.Content> detected – only the first is used");
123
- }
124
- const __mfResult0 = (() => {
125
- const __el0 = __element("div");
126
- ctx.contentRef.current = __el0;
127
- __el0.setAttribute("role", "listbox");
128
- {
129
- const __v = ctx.contentId;
130
- if (__v != null && __v !== false)
131
- __el0.setAttribute("id", __v === true ? "" : __v);
132
- }
133
- __el0.setAttribute("data-combobox-content", "");
134
- __el0.setAttribute("aria-hidden", "true");
135
- __el0.setAttribute("data-state", "closed");
136
- {
137
- const __v = { display: "none" };
138
- if (__v != null && __v !== false)
139
- __el0.setAttribute("style", typeof __v === "object" ? __styleStr(__v) : __v === true ? "" : String(__v));
140
- }
141
- __attr(__el0, "class", () => cn(ctx.classes?.content, __props.className ?? __props.class));
142
- __enterChildren(__el0);
143
- __append(__el0, __child(() => __props.children));
144
- __exitChildren();
145
- return __el0;
146
- })();
147
- __flushMountFrame();
148
- return __mfResult0;
149
- } catch (__mfErr) {
150
- __discardMountFrame(__mfDepth);
151
- throw __mfErr;
152
- }
153
- }
154
- function ComboboxOption(__props) {
155
- const __mfDepth = __pushMountFrame();
156
- try {
157
- const ctx = useComboboxContext("Option");
158
- const isSelected = computed(() => ctx.selectedValue() === __props.value);
159
- const optId = computed(() => `${ctx.contentId}-opt-${__props.value}`);
160
- const __mfResult0 = (() => {
161
- const __el0 = __element("div");
162
- __el0.setAttribute("role", "option");
163
- __attr(__el0, "id", () => optId.value);
164
- __el0.setAttribute("data-combobox-option", "");
165
- __attr(__el0, "data-value", () => __props.value);
166
- __attr(__el0, "aria-selected", () => isSelected.value ? "true" : "false");
167
- __attr(__el0, "data-state", () => isSelected.value ? "active" : "inactive");
168
- __attr(__el0, "class", () => cn(ctx.classes?.option, __props.className ?? __props.class));
169
- __on(__el0, "click", () => ctx.selectOption(__props.value));
170
- __enterChildren(__el0);
171
- __append(__el0, __child(() => __props.children ?? __props.value));
172
- __exitChildren();
173
- return __el0;
174
- })();
175
- __flushMountFrame();
176
- return __mfResult0;
177
- } catch (__mfErr) {
178
- __discardMountFrame(__mfDepth);
179
- throw __mfErr;
180
- }
181
- }
182
- function ComposedComboboxRoot(__props) {
183
- const __mfDepth = __pushMountFrame();
184
- try {
185
- let getInputEl = function() {
186
- return inputRef.current ?? null;
187
- }, getContentEl = function() {
188
- return contentRef.current ?? null;
189
- }, open = function() {
190
- state.isOpen = true;
191
- const inputEl = getInputEl();
192
- const contentEl = getContentEl();
193
- if (inputEl) {
194
- inputEl.setAttribute("aria-expanded", "true");
195
- }
196
- if (contentEl) {
197
- contentEl.setAttribute("data-state", "open");
198
- contentEl.setAttribute("aria-hidden", "false");
199
- contentEl.style.display = "";
200
- }
201
- }, close = function() {
202
- state.isOpen = false;
203
- state.activeIndex = -1;
204
- const inputEl = getInputEl();
205
- const contentEl = getContentEl();
206
- if (inputEl) {
207
- inputEl.setAttribute("aria-expanded", "false");
208
- inputEl.removeAttribute("aria-activedescendant");
209
- }
210
- if (contentEl) {
211
- contentEl.setAttribute("data-state", "closed");
212
- setHiddenAnimated(contentEl, true);
213
- }
214
- }, selectOption = function(value) {
215
- state.selectedValue = value;
216
- const inputEl = getInputEl();
217
- if (inputEl) {
218
- inputEl.value = value;
219
- }
220
- const contentEl = getContentEl();
221
- if (contentEl) {
222
- const options = contentEl.querySelectorAll('[role="option"]');
223
- for (const opt of options) {
224
- const isActive = opt.getAttribute("data-value") === value;
225
- opt.setAttribute("aria-selected", isActive ? "true" : "false");
226
- opt.setAttribute("data-state", isActive ? "active" : "inactive");
227
- }
228
- }
229
- __props.onValueChange?.(value);
230
- close();
231
- inputEl?.focus();
232
- }, updateActiveDescendant = function(index) {
233
- const inputEl = getInputEl();
234
- const contentEl = getContentEl();
235
- if (!inputEl || !contentEl)
236
- return;
237
- const options = [...contentEl.querySelectorAll('[role="option"]')];
238
- const opt = options[index];
239
- if (index >= 0 && opt) {
240
- inputEl.setAttribute("aria-activedescendant", opt.id);
241
- for (let i = 0;i < options.length; i++) {
242
- const el = options[i];
243
- if (el)
244
- el.setAttribute("data-state", i === index ? "active" : "inactive");
245
- }
246
- } else {
247
- inputEl.removeAttribute("aria-activedescendant");
248
- }
249
- };
250
- const ids = linkedIds("combobox");
251
- const inputRef = ref();
252
- const contentRef = ref();
253
- const state = {
254
- isOpen: false,
255
- selectedValue: __props.defaultValue ?? "",
256
- activeIndex: -1
257
- };
258
- const ctx = {
259
- isOpen: () => state.isOpen,
260
- selectedValue: () => state.selectedValue,
261
- contentId: ids.contentId,
262
- inputRef,
263
- contentRef,
264
- classes: __props.classes,
265
- open,
266
- close,
267
- selectOption,
268
- activeIndex: () => state.activeIndex,
269
- setActiveIndex: (index) => {
270
- state.activeIndex = index;
271
- },
272
- updateActiveDescendant,
273
- _contentCount: { value: 0 }
274
- };
275
- const origOpen = ctx.open;
276
- ctx.open = () => {
277
- origOpen();
278
- const inputEl = getInputEl();
279
- if (inputEl && __props.onInputChange) {
280
- __props.onInputChange(inputEl.value);
281
- }
282
- };
283
- const __mfResult0 = ComboboxContext.Provider({ get value() {
284
- return ctx;
285
- }, children: () => (() => {
286
- const __el0 = __element("span");
287
- {
288
- const __v = { display: "contents" };
289
- if (__v != null && __v !== false)
290
- __el0.setAttribute("style", typeof __v === "object" ? __styleStr(__v) : __v === true ? "" : String(__v));
291
- }
292
- __el0.setAttribute("data-combobox-root", "");
293
- __enterChildren(__el0);
294
- __append(__el0, __child(() => __props.children));
295
- __exitChildren();
296
- return __el0;
297
- })() });
298
- __flushMountFrame();
299
- return __mfResult0;
300
- } catch (__mfErr) {
301
- __discardMountFrame(__mfDepth);
302
- throw __mfErr;
303
- }
304
- }
305
- var ComposedCombobox = Object.assign(ComposedComboboxRoot, {
306
- Input: ComboboxInput,
307
- Content: ComboboxContent,
308
- Option: ComboboxOption
309
- });
310
-
311
- export { ComposedCombobox };