@vertz/ui-primitives 0.2.22 → 0.2.24

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 (236) hide show
  1. package/dist/shared/chunk-00fqgnq1.js +218 -0
  2. package/dist/shared/chunk-1hm0mbke.js +258 -0
  3. package/dist/shared/chunk-20kwns82.js +293 -0
  4. package/dist/shared/chunk-3jack97k.js +509 -0
  5. package/dist/shared/chunk-455p0jbk.js +241 -0
  6. package/dist/shared/chunk-4gyg71bn.js +178 -0
  7. package/dist/shared/chunk-4z006v1j.js +467 -0
  8. package/dist/shared/chunk-585ysr70.js +149 -0
  9. package/dist/shared/chunk-67sn29eh.js +125 -0
  10. package/dist/shared/chunk-75pegjs7.js +26 -0
  11. package/dist/shared/chunk-7a2nqmeh.js +167 -0
  12. package/dist/shared/chunk-7wem1bhb.js +252 -0
  13. package/dist/shared/chunk-8evj43jn.js +284 -0
  14. package/dist/shared/chunk-8t0nm721.js +152 -0
  15. package/dist/shared/chunk-94twh4s4.js +28 -0
  16. package/dist/shared/chunk-98y1sw9y.js +398 -0
  17. package/dist/shared/chunk-99tk72t3.js +69 -0
  18. package/dist/shared/chunk-9eedsnnk.js +164 -0
  19. package/dist/shared/chunk-9hv3vc72.js +215 -0
  20. package/dist/shared/chunk-aa3w85hn.js +321 -0
  21. package/dist/shared/chunk-axpbdpgx.js +177 -0
  22. package/dist/shared/chunk-b4zzg457.js +410 -0
  23. package/dist/shared/chunk-brk0drrk.js +202 -0
  24. package/dist/shared/chunk-czv0kqj4.js +107 -0
  25. package/dist/shared/chunk-d83ag07h.js +189 -0
  26. package/dist/shared/chunk-de18ashk.js +134 -0
  27. package/dist/shared/chunk-dvk4h36t.js +140 -0
  28. package/dist/shared/chunk-e1jcf22s.js +79 -0
  29. package/dist/shared/chunk-e3h0ddmx.js +168 -0
  30. package/dist/shared/chunk-e6660g7e.js +179 -0
  31. package/dist/shared/chunk-eq4d9b0w.js +147 -0
  32. package/dist/shared/chunk-ev367pq3.js +102 -0
  33. package/dist/shared/chunk-f0wy7k56.js +183 -0
  34. package/dist/shared/chunk-fjykbv0v.js +214 -0
  35. package/dist/shared/chunk-ghkw5bjq.js +55 -0
  36. package/dist/shared/chunk-gqb1n1hj.js +60 -0
  37. package/dist/shared/chunk-hdvdfd1c.js +96 -0
  38. package/dist/shared/chunk-hfjtkytb.js +310 -0
  39. package/dist/shared/chunk-hpvjfj0j.js +31 -0
  40. package/dist/shared/chunk-hxmxvp56.js +67 -0
  41. package/dist/shared/chunk-j9m2f0rd.js +162 -0
  42. package/dist/shared/chunk-jdygp28a.js +260 -0
  43. package/dist/shared/chunk-jpyjk616.js +52 -0
  44. package/dist/shared/chunk-jqre4qtw.js +180 -0
  45. package/dist/shared/{chunk-myq79qew.js → chunk-jsa3byag.js} +48 -28
  46. package/dist/shared/chunk-jzy1bkdk.js +203 -0
  47. package/dist/shared/chunk-knzg86am.js +168 -0
  48. package/dist/shared/chunk-kskxxc2q.js +228 -0
  49. package/dist/shared/chunk-metxdt5x.js +28 -0
  50. package/dist/shared/chunk-mhn2aazf.js +353 -0
  51. package/dist/shared/chunk-mtx2cfbx.js +175 -0
  52. package/dist/shared/chunk-nj420k31.js +54 -0
  53. package/dist/shared/chunk-nsmvdxgp.js +213 -0
  54. package/dist/shared/{chunk-w9dag6ce.js → chunk-pdzmg245.js} +133 -85
  55. package/dist/shared/chunk-pzknpa1y.js +327 -0
  56. package/dist/shared/chunk-q1ff3xp3.js +95 -0
  57. package/dist/shared/chunk-q7xbcj9q.js +7 -0
  58. package/dist/shared/chunk-qhnany7w.js +179 -0
  59. package/dist/shared/chunk-qrm43tr3.js +357 -0
  60. package/dist/shared/{chunk-jda3v59q.js → chunk-qsp7sfhp.js} +2 -2
  61. package/dist/shared/{chunk-dhyr0s9n.js → chunk-qwqnjjg8.js} +1 -1
  62. package/dist/shared/chunk-r0rz7z03.js +266 -0
  63. package/dist/shared/chunk-r3ngaa64.js +418 -0
  64. package/dist/shared/chunk-r3pffzss.js +13 -0
  65. package/dist/shared/chunk-rrt62bp0.js +353 -0
  66. package/dist/shared/chunk-s24gkmna.js +131 -0
  67. package/dist/shared/chunk-s62e7jf4.js +30 -0
  68. package/dist/shared/chunk-spng4yb9.js +73 -0
  69. package/dist/shared/chunk-tn0m98j8.js +42 -0
  70. package/dist/shared/chunk-v0b5pkcq.js +30 -0
  71. package/dist/shared/chunk-v11kd39k.js +162 -0
  72. package/dist/shared/{chunk-0mcr52hc.js → chunk-vef3sepw.js} +17 -1
  73. package/dist/shared/chunk-vkscwzpr.js +294 -0
  74. package/dist/shared/chunk-vv187snj.js +112 -0
  75. package/dist/shared/chunk-vy874zxe.js +68 -0
  76. package/dist/shared/chunk-wqsek87j.js +311 -0
  77. package/dist/shared/chunk-wtkxz2te.js +157 -0
  78. package/dist/shared/chunk-y1hpsqzy.js +185 -0
  79. package/dist/shared/chunk-y4mmmayp.js +206 -0
  80. package/dist/shared/chunk-yfzddvxc.js +71 -0
  81. package/dist/src/accordion/accordion-composed.d.ts +30 -0
  82. package/dist/src/accordion/accordion-composed.js +6 -0
  83. package/dist/src/accordion/accordion.js +1 -1
  84. package/dist/src/alert/alert-composed.d.ts +26 -0
  85. package/dist/src/alert/alert-composed.js +6 -0
  86. package/dist/src/alert-dialog/alert-dialog-composed.d.ts +40 -0
  87. package/dist/src/alert-dialog/alert-dialog-composed.js +6 -0
  88. package/dist/src/alert-dialog/alert-dialog.js +1 -1
  89. package/dist/src/avatar/avatar-composed.d.ts +33 -0
  90. package/dist/src/avatar/avatar-composed.js +6 -0
  91. package/dist/src/badge/badge-composed.d.ts +33 -0
  92. package/dist/src/badge/badge-composed.js +6 -0
  93. package/dist/src/badge/badge.js +1 -1
  94. package/dist/src/breadcrumb/breadcrumb-composed.d.ts +34 -0
  95. package/dist/src/breadcrumb/breadcrumb-composed.js +6 -0
  96. package/dist/src/button/button-composed.d.ts +34 -0
  97. package/dist/src/button/button-composed.js +6 -0
  98. package/dist/src/button/button.js +1 -1
  99. package/dist/src/calendar/calendar-composed.d.ts +42 -0
  100. package/dist/src/calendar/calendar-composed.js +6 -0
  101. package/dist/src/calendar/calendar.js +1 -1
  102. package/dist/src/card/card-composed.d.ts +34 -0
  103. package/dist/src/card/card-composed.js +6 -0
  104. package/dist/src/carousel/carousel-composed.d.ts +32 -0
  105. package/dist/src/carousel/carousel-composed.js +6 -0
  106. package/dist/src/carousel/carousel.js +1 -1
  107. package/dist/src/checkbox/checkbox-composed.d.ts +18 -0
  108. package/dist/src/checkbox/checkbox-composed.js +6 -0
  109. package/dist/src/checkbox/checkbox.js +1 -1
  110. package/dist/src/collapsible/collapsible-composed.d.ts +26 -0
  111. package/dist/src/collapsible/collapsible-composed.js +6 -0
  112. package/dist/src/collapsible/collapsible.js +1 -1
  113. package/dist/src/combobox/combobox-composed.d.ts +30 -0
  114. package/dist/src/combobox/combobox-composed.js +6 -0
  115. package/dist/src/combobox/combobox.js +1 -1
  116. package/dist/src/command/command-composed.d.ts +67 -0
  117. package/dist/src/command/command-composed.js +6 -0
  118. package/dist/src/command/command.js +1 -1
  119. package/dist/src/composed/with-styles.d.ts +38 -0
  120. package/dist/src/composed/with-styles.js +6 -0
  121. package/dist/src/context-menu/context-menu-composed.d.ts +51 -0
  122. package/dist/src/context-menu/context-menu-composed.js +6 -0
  123. package/dist/src/context-menu/context-menu.js +1 -1
  124. package/dist/src/date-picker/date-picker-composed.d.ts +77 -0
  125. package/dist/src/date-picker/date-picker-composed.js +6 -0
  126. package/dist/src/date-picker/date-picker.js +1 -1
  127. package/dist/src/dialog/dialog-composed.d.ts +36 -0
  128. package/dist/src/dialog/dialog-composed.js +6 -0
  129. package/dist/src/dialog/dialog-stack-parts.d.ts +16 -0
  130. package/dist/src/dialog/dialog-stack-parts.js +18 -0
  131. package/dist/src/dialog/dialog.js +1 -1
  132. package/dist/src/dropdown-menu/dropdown-menu-composed.d.ts +51 -0
  133. package/dist/src/dropdown-menu/dropdown-menu-composed.js +6 -0
  134. package/dist/src/dropdown-menu/dropdown-menu.js +1 -1
  135. package/dist/src/empty-state/empty-state-composed.d.ts +30 -0
  136. package/dist/src/empty-state/empty-state-composed.js +6 -0
  137. package/dist/src/form-group/form-group-composed.d.ts +24 -0
  138. package/dist/src/form-group/form-group-composed.js +6 -0
  139. package/dist/src/hover-card/hover-card-composed.d.ts +38 -0
  140. package/dist/src/hover-card/hover-card-composed.js +6 -0
  141. package/dist/src/hover-card/hover-card.js +1 -1
  142. package/dist/src/index.d.ts +1284 -804
  143. package/dist/src/index.js +78 -5281
  144. package/dist/src/input/input-composed.d.ts +35 -0
  145. package/dist/src/input/input-composed.js +6 -0
  146. package/dist/src/label/label-composed.d.ts +32 -0
  147. package/dist/src/label/label-composed.js +6 -0
  148. package/dist/src/menu/menu-composed.d.ts +51 -0
  149. package/dist/src/menu/menu-composed.js +6 -0
  150. package/dist/src/menu/menu.js +1 -1
  151. package/dist/src/menubar/menubar-composed.d.ts +56 -0
  152. package/dist/src/menubar/menubar-composed.js +6 -0
  153. package/dist/src/menubar/menubar.js +1 -1
  154. package/dist/src/navigation-menu/navigation-menu-composed.d.ts +56 -0
  155. package/dist/src/navigation-menu/navigation-menu-composed.js +6 -0
  156. package/dist/src/navigation-menu/navigation-menu.js +1 -1
  157. package/dist/src/pagination/pagination-composed.d.ts +30 -0
  158. package/dist/src/pagination/pagination-composed.js +6 -0
  159. package/dist/src/popover/popover-composed.d.ts +36 -0
  160. package/dist/src/popover/popover-composed.js +6 -0
  161. package/dist/src/popover/popover.js +1 -1
  162. package/dist/src/progress/progress-composed.d.ts +17 -0
  163. package/dist/src/progress/progress-composed.js +6 -0
  164. package/dist/src/progress/progress.js +1 -1
  165. package/dist/src/radio/radio-composed.d.ts +24 -0
  166. package/dist/src/radio/radio-composed.js +6 -0
  167. package/dist/src/radio/radio.js +1 -1
  168. package/dist/src/resizable-panel/resizable-panel-composed.d.ts +33 -0
  169. package/dist/src/resizable-panel/resizable-panel-composed.js +6 -0
  170. package/dist/src/resizable-panel/resizable-panel.js +1 -1
  171. package/dist/src/scroll-area/scroll-area-composed.d.ts +17 -0
  172. package/dist/src/scroll-area/scroll-area-composed.js +6 -0
  173. package/dist/src/scroll-area/scroll-area.js +1 -1
  174. package/dist/src/select/select-composed.d.ts +53 -0
  175. package/dist/src/select/select-composed.js +6 -0
  176. package/dist/src/select/select.js +1 -1
  177. package/dist/src/separator/separator-composed.d.ts +32 -0
  178. package/dist/src/separator/separator-composed.js +6 -0
  179. package/dist/src/sheet/sheet-composed.d.ts +34 -0
  180. package/dist/src/sheet/sheet-composed.js +6 -0
  181. package/dist/src/sheet/sheet.js +1 -1
  182. package/dist/src/skeleton/skeleton-composed.d.ts +65 -0
  183. package/dist/src/skeleton/skeleton-composed.js +6 -0
  184. package/dist/src/slider/slider-composed.d.ts +22 -0
  185. package/dist/src/slider/slider-composed.js +6 -0
  186. package/dist/src/slider/slider.js +1 -1
  187. package/dist/src/switch/switch-composed.d.ts +17 -0
  188. package/dist/src/switch/switch-composed.js +6 -0
  189. package/dist/src/switch/switch.js +1 -1
  190. package/dist/src/table/table-composed.d.ts +34 -0
  191. package/dist/src/table/table-composed.js +6 -0
  192. package/dist/src/tabs/tabs-composed.d.ts +33 -0
  193. package/dist/src/tabs/tabs-composed.js +6 -0
  194. package/dist/src/tabs/tabs.js +1 -1
  195. package/dist/src/textarea/textarea-composed.d.ts +35 -0
  196. package/dist/src/textarea/textarea-composed.js +6 -0
  197. package/dist/src/toast/toast.js +1 -1
  198. package/dist/src/toggle/toggle-composed.d.ts +16 -0
  199. package/dist/src/toggle/toggle-composed.js +6 -0
  200. package/dist/src/toggle/toggle.js +1 -1
  201. package/dist/src/toggle-group/toggle-group-composed.d.ts +24 -0
  202. package/dist/src/toggle-group/toggle-group-composed.js +6 -0
  203. package/dist/src/toggle-group/toggle-group.js +1 -1
  204. package/dist/src/tooltip/tooltip-composed.d.ts +36 -0
  205. package/dist/src/tooltip/tooltip-composed.js +6 -0
  206. package/dist/src/tooltip/tooltip.js +1 -1
  207. package/dist/src/utils.js +1 -1
  208. package/package.json +3 -3
  209. package/dist/shared/chunk-07yzsaaw.js +0 -165
  210. package/dist/shared/chunk-279bzynx.js +0 -132
  211. package/dist/shared/chunk-27xs9apd.js +0 -288
  212. package/dist/shared/chunk-2k8gxzdf.js +0 -151
  213. package/dist/shared/chunk-3rp73gkd.js +0 -175
  214. package/dist/shared/chunk-4rf1m34c.js +0 -267
  215. package/dist/shared/chunk-56reyd5r.js +0 -64
  216. package/dist/shared/chunk-7bxsf80c.js +0 -60
  217. package/dist/shared/chunk-8qtexw5s.js +0 -199
  218. package/dist/shared/chunk-9ezgd78r.js +0 -142
  219. package/dist/shared/chunk-ajpj10z0.js +0 -282
  220. package/dist/shared/chunk-c46v0fsw.js +0 -117
  221. package/dist/shared/chunk-e4mm5e59.js +0 -178
  222. package/dist/shared/chunk-fqa5bwn1.js +0 -128
  223. package/dist/shared/chunk-g8hnc95b.js +0 -219
  224. package/dist/shared/chunk-j2tdpxgc.js +0 -185
  225. package/dist/shared/chunk-k8nabsxm.js +0 -330
  226. package/dist/shared/chunk-kcnq15je.js +0 -175
  227. package/dist/shared/chunk-mqs4qq0b.js +0 -46
  228. package/dist/shared/chunk-pg2yjn8f.js +0 -88
  229. package/dist/shared/chunk-rb53v045.js +0 -71
  230. package/dist/shared/chunk-s6a2yph8.js +0 -239
  231. package/dist/shared/chunk-vhx3sqw6.js +0 -196
  232. package/dist/shared/chunk-w318par6.js +0 -204
  233. package/dist/shared/chunk-wcdq7bew.js +0 -133
  234. package/dist/shared/chunk-z0gwkzgp.js +0 -34
  235. package/dist/shared/chunk-z850et33.js +0 -161
  236. package/dist/shared/chunk-zyfc6cx3.js +0 -61
@@ -0,0 +1,357 @@
1
+ import {
2
+ cn
3
+ } from "./chunk-q7xbcj9q.js";
4
+ import {
5
+ Keys,
6
+ isKey
7
+ } from "./chunk-7867pr13.js";
8
+ import {
9
+ uniqueId
10
+ } from "./chunk-8y1jf6xr.js";
11
+
12
+ // src/command/command-composed.tsx
13
+ import { computed } from "@vertz/ui";
14
+ import { __append, __attr, __child, __discardMountFrame, __element, __enterChildren, __exitChildren, __flushMountFrame, __on, __pushMountFrame } from "@vertz/ui/internals";
15
+ import { createContext, useContext } from "@vertz/ui";
16
+ var CommandContext = createContext(undefined, "@vertz/ui-primitives::CommandContext");
17
+ function useCommandContext(componentName) {
18
+ const ctx = useContext(CommandContext);
19
+ if (!ctx) {
20
+ throw new Error(`<Command.${componentName}> must be used inside <Command>. ` + "Ensure it is a direct or nested child of the Command root component.");
21
+ }
22
+ return ctx;
23
+ }
24
+ function CommandInput(__props) {
25
+ const __mfDepth = __pushMountFrame();
26
+ try {
27
+ const ctx = useCommandContext("Input");
28
+ const __mfResult0 = (() => {
29
+ const __el0 = __element("input");
30
+ __el0.setAttribute("type", "text");
31
+ __el0.setAttribute("role", "combobox");
32
+ __el0.setAttribute("aria-autocomplete", "list");
33
+ __el0.setAttribute("aria-expanded", "true");
34
+ {
35
+ const __v = ctx.listId;
36
+ if (__v != null && __v !== false)
37
+ __el0.setAttribute("aria-controls", __v === true ? "" : __v);
38
+ }
39
+ __el0.setAttribute("data-command-input", "");
40
+ {
41
+ const __v = ctx.placeholder;
42
+ if (__v != null && __v !== false)
43
+ __el0.setAttribute("placeholder", __v === true ? "" : __v);
44
+ }
45
+ __attr(__el0, "class", () => cn(ctx.classes?.input, __props.className ?? __props.class));
46
+ __on(__el0, "input", (e) => {
47
+ ctx.handleInput(e.target);
48
+ });
49
+ __on(__el0, "keydown", (e) => {
50
+ ctx.handleKeydown(e, e.target);
51
+ });
52
+ return __el0;
53
+ })();
54
+ __flushMountFrame();
55
+ return __mfResult0;
56
+ } catch (__mfErr) {
57
+ __discardMountFrame(__mfDepth);
58
+ throw __mfErr;
59
+ }
60
+ }
61
+ function CommandList(__props) {
62
+ const __mfDepth = __pushMountFrame();
63
+ try {
64
+ const ctx = useCommandContext("List");
65
+ const __mfResult0 = (() => {
66
+ const __el0 = __element("div");
67
+ __el0.setAttribute("role", "listbox");
68
+ {
69
+ const __v = ctx.listId;
70
+ if (__v != null && __v !== false)
71
+ __el0.setAttribute("id", __v === true ? "" : __v);
72
+ }
73
+ __attr(__el0, "class", () => cn(ctx.classes?.list, __props.className ?? __props.class));
74
+ __enterChildren(__el0);
75
+ __append(__el0, __child(() => __props.children));
76
+ __exitChildren();
77
+ return __el0;
78
+ })();
79
+ __flushMountFrame();
80
+ return __mfResult0;
81
+ } catch (__mfErr) {
82
+ __discardMountFrame(__mfDepth);
83
+ throw __mfErr;
84
+ }
85
+ }
86
+ function CommandEmpty(__props) {
87
+ const __mfDepth = __pushMountFrame();
88
+ try {
89
+ const ctx = useCommandContext("Empty");
90
+ const __mfResult0 = (() => {
91
+ const __el0 = __element("div");
92
+ __el0.setAttribute("data-part", "command-empty");
93
+ __el0.setAttribute("data-command-empty", "");
94
+ __el0.setAttribute("aria-hidden", "true");
95
+ __el0.setAttribute("style", "display: none");
96
+ __attr(__el0, "class", () => cn(ctx.classes?.empty, __props.className ?? __props.class));
97
+ __enterChildren(__el0);
98
+ __append(__el0, __child(() => __props.children));
99
+ __exitChildren();
100
+ return __el0;
101
+ })();
102
+ __flushMountFrame();
103
+ return __mfResult0;
104
+ } catch (__mfErr) {
105
+ __discardMountFrame(__mfDepth);
106
+ throw __mfErr;
107
+ }
108
+ }
109
+ function CommandItem(__props) {
110
+ const __mfDepth = __pushMountFrame();
111
+ try {
112
+ const ctx = useCommandContext("Item");
113
+ const isInitialActive = ctx.claimInitialActive();
114
+ const __mfResult0 = (() => {
115
+ const __el0 = __element("div");
116
+ __el0.setAttribute("role", "option");
117
+ __attr(__el0, "data-value", () => __props.value);
118
+ {
119
+ const __v = isInitialActive ? "true" : "false";
120
+ if (__v != null && __v !== false)
121
+ __el0.setAttribute("aria-selected", __v === true ? "" : __v);
122
+ }
123
+ __attr(__el0, "data-keywords", () => __props.keywords && __props.keywords.length > 0 ? __props.keywords.join(" ") : undefined);
124
+ __attr(__el0, "class", () => cn(ctx.classes?.item, __props.className ?? __props.class));
125
+ __on(__el0, "click", () => {
126
+ ctx.getOnSelect()?.(__props.value);
127
+ });
128
+ __enterChildren(__el0);
129
+ __append(__el0, __child(() => __props.children));
130
+ __exitChildren();
131
+ return __el0;
132
+ })();
133
+ __flushMountFrame();
134
+ return __mfResult0;
135
+ } catch (__mfErr) {
136
+ __discardMountFrame(__mfDepth);
137
+ throw __mfErr;
138
+ }
139
+ }
140
+ function CommandGroup(__props) {
141
+ const __mfDepth = __pushMountFrame();
142
+ try {
143
+ const ctx = useCommandContext("Group");
144
+ const headingId = uniqueId("command-group");
145
+ const __mfResult0 = (() => {
146
+ const __el0 = __element("div");
147
+ __el0.setAttribute("role", "group");
148
+ {
149
+ const __v = headingId;
150
+ if (__v != null && __v !== false)
151
+ __el0.setAttribute("aria-labelledby", __v === true ? "" : __v);
152
+ }
153
+ __el0.setAttribute("data-command-group", "");
154
+ __attr(__el0, "class", () => cn(ctx.classes?.group, __props.className ?? __props.class));
155
+ __enterChildren(__el0);
156
+ __append(__el0, (() => {
157
+ const __el1 = __element("div");
158
+ {
159
+ const __v = headingId;
160
+ if (__v != null && __v !== false)
161
+ __el1.setAttribute("id", __v === true ? "" : __v);
162
+ }
163
+ __el1.setAttribute("data-command-group-heading", "");
164
+ {
165
+ const __v = cn(ctx.classes?.groupHeading);
166
+ if (__v != null && __v !== false)
167
+ __el1.setAttribute("class", __v === true ? "" : __v);
168
+ }
169
+ __enterChildren(__el1);
170
+ __append(__el1, __child(() => __props.label));
171
+ __exitChildren();
172
+ return __el1;
173
+ })());
174
+ __append(__el0, __child(() => __props.children));
175
+ __exitChildren();
176
+ return __el0;
177
+ })();
178
+ __flushMountFrame();
179
+ return __mfResult0;
180
+ } catch (__mfErr) {
181
+ __discardMountFrame(__mfDepth);
182
+ throw __mfErr;
183
+ }
184
+ }
185
+ function CommandSeparator(__props) {
186
+ const __mfDepth = __pushMountFrame();
187
+ try {
188
+ const ctx = useCommandContext("Separator");
189
+ const __mfResult0 = (() => {
190
+ const __el0 = __element("hr");
191
+ __el0.setAttribute("role", "separator");
192
+ __attr(__el0, "class", () => cn(ctx.classes?.separator, __props.className ?? __props.class));
193
+ return __el0;
194
+ })();
195
+ __flushMountFrame();
196
+ return __mfResult0;
197
+ } catch (__mfErr) {
198
+ __discardMountFrame(__mfDepth);
199
+ throw __mfErr;
200
+ }
201
+ }
202
+ function ComposedCommandRoot(__props) {
203
+ const __mfDepth = __pushMountFrame();
204
+ try {
205
+ let claimInitialActive = function() {
206
+ if (state.initialClaimed)
207
+ return false;
208
+ state.initialClaimed = true;
209
+ return true;
210
+ }, findRoot = function(el) {
211
+ let current = el;
212
+ while (current) {
213
+ if (current.id === rootId)
214
+ return current;
215
+ current = current.parentElement;
216
+ }
217
+ return null;
218
+ }, getItemsFrom = function(root) {
219
+ return [...root.querySelectorAll('[role="option"]')];
220
+ }, getVisibleItemsFrom = function(root) {
221
+ return getItemsFrom(root).filter((item) => item.getAttribute("aria-hidden") !== "true");
222
+ }, updateActiveItemIn = function(root) {
223
+ const allItems = getItemsFrom(root);
224
+ const visible = getVisibleItemsFrom(root);
225
+ for (const item of allItems) {
226
+ item.setAttribute("aria-selected", "false");
227
+ }
228
+ if (visible.length > 0 && state.activeIndex >= 0 && state.activeIndex < visible.length) {
229
+ visible[state.activeIndex]?.setAttribute("aria-selected", "true");
230
+ }
231
+ }, runFilterFrom = function(inputEl, root) {
232
+ const search = inputEl.value ?? "";
233
+ const allItems = getItemsFrom(root);
234
+ let visibleCount = 0;
235
+ for (const item of allItems) {
236
+ const value = item.getAttribute("data-value") ?? "";
237
+ const text = item.textContent ?? "";
238
+ const keywords = item.getAttribute("data-keywords") ?? "";
239
+ const searchable = `${value} ${text} ${keywords}`;
240
+ const matches = search === "" || filterFn.value(searchable, search);
241
+ item.setAttribute("aria-hidden", String(!matches));
242
+ item.style.display = matches ? "" : "none";
243
+ if (matches)
244
+ visibleCount++;
245
+ }
246
+ const groups = root.querySelectorAll("[data-command-group]");
247
+ for (const group of groups) {
248
+ const groupItems = group.querySelectorAll('[role="option"]');
249
+ const hasVisible = [...groupItems].some((item) => item.getAttribute("aria-hidden") !== "true");
250
+ const heading = group.querySelector("[data-command-group-heading]");
251
+ if (heading) {
252
+ heading.setAttribute("aria-hidden", String(!hasVisible));
253
+ heading.style.display = hasVisible ? "" : "none";
254
+ }
255
+ group.style.display = hasVisible ? "" : "none";
256
+ }
257
+ const emptyEl = root.querySelector("[data-command-empty]");
258
+ if (emptyEl) {
259
+ const hide = visibleCount > 0;
260
+ emptyEl.setAttribute("aria-hidden", String(hide));
261
+ emptyEl.style.display = hide ? "none" : "";
262
+ }
263
+ state.activeIndex = 0;
264
+ updateActiveItemIn(root);
265
+ }, handleInput = function(inputEl) {
266
+ const root = findRoot(inputEl);
267
+ if (!root)
268
+ return;
269
+ __props.onInputChange?.(inputEl.value);
270
+ runFilterFrom(inputEl, root);
271
+ }, handleKeydown = function(event, inputEl) {
272
+ const root = findRoot(inputEl);
273
+ if (!root)
274
+ return;
275
+ const visible = getVisibleItemsFrom(root);
276
+ if (isKey(event, Keys.ArrowDown)) {
277
+ event.preventDefault();
278
+ const next = Math.min(state.activeIndex + 1, visible.length - 1);
279
+ state.activeIndex = next;
280
+ updateActiveItemIn(root);
281
+ return;
282
+ }
283
+ if (isKey(event, Keys.ArrowUp)) {
284
+ event.preventDefault();
285
+ const prev = Math.max(state.activeIndex - 1, 0);
286
+ state.activeIndex = prev;
287
+ updateActiveItemIn(root);
288
+ return;
289
+ }
290
+ if (isKey(event, Keys.Enter)) {
291
+ event.preventDefault();
292
+ const active = visible[state.activeIndex];
293
+ if (active) {
294
+ const val = active.getAttribute("data-value");
295
+ if (val !== null) {
296
+ __props.onSelect?.(val);
297
+ }
298
+ }
299
+ return;
300
+ }
301
+ if (isKey(event, Keys.Escape)) {
302
+ event.preventDefault();
303
+ inputEl.value = "";
304
+ __props.onInputChange?.("");
305
+ runFilterFrom(inputEl, root);
306
+ }
307
+ };
308
+ const rootId = uniqueId("command");
309
+ const listId = uniqueId("command-list");
310
+ const defaultFilter = (value, search) => value.toLowerCase().includes(search.toLowerCase());
311
+ const filterFn = computed(() => __props.filter ?? defaultFilter);
312
+ const state = {
313
+ activeIndex: 0,
314
+ initialClaimed: false
315
+ };
316
+ const ctx = {
317
+ rootId,
318
+ listId,
319
+ classes: __props.classes,
320
+ getOnSelect: () => __props.onSelect,
321
+ placeholder: __props.placeholder,
322
+ handleInput,
323
+ handleKeydown,
324
+ claimInitialActive
325
+ };
326
+ const __mfResult0 = CommandContext.Provider({ get value() {
327
+ return ctx;
328
+ }, children: () => (() => {
329
+ const __el0 = __element("div");
330
+ {
331
+ const __v = rootId;
332
+ if (__v != null && __v !== false)
333
+ __el0.setAttribute("id", __v === true ? "" : __v);
334
+ }
335
+ __attr(__el0, "class", () => cn(__props.classes?.root));
336
+ __enterChildren(__el0);
337
+ __append(__el0, __child(() => __props.children));
338
+ __exitChildren();
339
+ return __el0;
340
+ })() });
341
+ __flushMountFrame();
342
+ return __mfResult0;
343
+ } catch (__mfErr) {
344
+ __discardMountFrame(__mfDepth);
345
+ throw __mfErr;
346
+ }
347
+ }
348
+ var ComposedCommand = Object.assign(ComposedCommandRoot, {
349
+ Input: CommandInput,
350
+ List: CommandList,
351
+ Empty: CommandEmpty,
352
+ Item: CommandItem,
353
+ Group: CommandGroup,
354
+ Separator: CommandSeparator
355
+ });
356
+
357
+ export { ComposedCommand };
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  Calendar
3
- } from "./chunk-k8nabsxm.js";
3
+ } from "./chunk-b4zzg457.js";
4
4
  import {
5
5
  Popover
6
- } from "./chunk-9ezgd78r.js";
6
+ } from "./chunk-585ysr70.js";
7
7
 
8
8
  // src/date-picker/date-picker.ts
9
9
  import { signal } from "@vertz/ui";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Menu
3
- } from "./chunk-4rf1m34c.js";
3
+ } from "./chunk-r0rz7z03.js";
4
4
 
5
5
  // src/dropdown-menu/dropdown-menu.ts
6
6
  var DropdownMenu = {
@@ -0,0 +1,266 @@
1
+ import {
2
+ createDismiss
3
+ } from "./chunk-a6wp8c32.js";
4
+ import {
5
+ createFloatingPosition
6
+ } from "./chunk-vef3sepw.js";
7
+ import {
8
+ Keys,
9
+ handleListNavigation,
10
+ isKey
11
+ } from "./chunk-7867pr13.js";
12
+ import {
13
+ setDataState,
14
+ setExpanded,
15
+ setHidden,
16
+ setHiddenAnimated
17
+ } from "./chunk-vevfhpc9.js";
18
+ import {
19
+ linkedIds
20
+ } from "./chunk-8y1jf6xr.js";
21
+ import {
22
+ applyAttrs
23
+ } from "./chunk-2db2dnp3.js";
24
+
25
+ // src/menu/menu.tsx
26
+ import { __discardMountFrame, __element, __enterChildren, __exitChildren, __flushMountFrame, __insert, __on, __pushMountFrame, __styleStr } from "@vertz/ui/internals";
27
+ import { signal } from "@vertz/ui";
28
+ function MenuRoot(options = {}) {
29
+ const __mfDepth = __pushMountFrame();
30
+ try {
31
+ let handleClickOutside = function(event) {
32
+ const target = event.target;
33
+ if (!trigger.contains(target) && !content.contains(target)) {
34
+ close();
35
+ }
36
+ }, open = function(activateFirst = false) {
37
+ state.open.value = true;
38
+ setExpanded(trigger, true);
39
+ setHidden(content, false);
40
+ setDataState(trigger, "open");
41
+ setDataState(content, "open");
42
+ onOpenChange?.(true);
43
+ if (positioning) {
44
+ const ref = positioning.referenceElement ?? trigger;
45
+ const result = createFloatingPosition(ref, content, positioning);
46
+ floatingCleanup = result.cleanup;
47
+ dismissCleanup = createDismiss({
48
+ onDismiss: close,
49
+ insideElements: [ref, trigger, content],
50
+ escapeKey: false
51
+ });
52
+ } else {
53
+ document.addEventListener("mousedown", handleClickOutside);
54
+ }
55
+ if (activateFirst && items.length > 0) {
56
+ state.activeIndex.value = 0;
57
+ updateActiveItem(0);
58
+ items[0]?.focus();
59
+ } else {
60
+ state.activeIndex.value = -1;
61
+ updateActiveItem(-1);
62
+ content.focus();
63
+ }
64
+ }, close = function() {
65
+ state.open.value = false;
66
+ setExpanded(trigger, false);
67
+ setDataState(trigger, "closed");
68
+ setDataState(content, "closed");
69
+ setHiddenAnimated(content, true);
70
+ onOpenChange?.(false);
71
+ if (positioning) {
72
+ floatingCleanup?.();
73
+ floatingCleanup = null;
74
+ dismissCleanup?.();
75
+ dismissCleanup = null;
76
+ } else {
77
+ document.removeEventListener("mousedown", handleClickOutside);
78
+ }
79
+ trigger.focus();
80
+ }, updateActiveItem = function(index) {
81
+ for (let i = 0;i < items.length; i++) {
82
+ items[i]?.setAttribute("tabindex", i === index ? "0" : "-1");
83
+ }
84
+ }, createItem = function(value, label) {
85
+ const item = (() => {
86
+ const __el2 = __element("div");
87
+ __el2.setAttribute("role", "menuitem");
88
+ {
89
+ const __v = value;
90
+ if (__v != null && __v !== false)
91
+ __el2.setAttribute("data-value", __v === true ? "" : __v);
92
+ }
93
+ __el2.setAttribute("tabindex", "-1");
94
+ __on(__el2, "click", () => {
95
+ onSelect?.(value);
96
+ close();
97
+ });
98
+ __enterChildren(__el2);
99
+ __insert(__el2, label ?? value);
100
+ __exitChildren();
101
+ return __el2;
102
+ })();
103
+ items.push(item);
104
+ return item;
105
+ }, Item = function(value, label) {
106
+ return createItem(value, label);
107
+ }, Group = function(label) {
108
+ const el = (() => {
109
+ const __el3 = __element("div");
110
+ __el3.setAttribute("role", "group");
111
+ {
112
+ const __v = label;
113
+ if (__v != null && __v !== false)
114
+ __el3.setAttribute("aria-label", __v === true ? "" : __v);
115
+ }
116
+ return __el3;
117
+ })();
118
+ return {
119
+ el,
120
+ Item: (value, itemLabel) => createItem(value, itemLabel)
121
+ };
122
+ }, Separator = function() {
123
+ return (() => {
124
+ const __el4 = __element("hr");
125
+ __el4.setAttribute("data-v-id", "MenuRoot");
126
+ __el4.setAttribute("role", "separator");
127
+ return __el4;
128
+ })();
129
+ }, Label = function(text) {
130
+ return (() => {
131
+ const __el5 = __element("div");
132
+ __el5.setAttribute("role", "none");
133
+ __enterChildren(__el5);
134
+ __insert(__el5, text);
135
+ __exitChildren();
136
+ return __el5;
137
+ })();
138
+ };
139
+ const { onSelect, onOpenChange, positioning, ...attrs } = options;
140
+ const ids = linkedIds("menu");
141
+ const state = {
142
+ open: signal(false),
143
+ activeIndex: signal(-1)
144
+ };
145
+ const items = [];
146
+ let floatingCleanup = null;
147
+ let dismissCleanup = null;
148
+ const trigger = (() => {
149
+ const __el0 = __element("button");
150
+ __el0.setAttribute("type", "button");
151
+ {
152
+ const __v = ids.triggerId;
153
+ if (__v != null && __v !== false)
154
+ __el0.setAttribute("id", __v === true ? "" : __v);
155
+ }
156
+ {
157
+ const __v = ids.contentId;
158
+ if (__v != null && __v !== false)
159
+ __el0.setAttribute("aria-controls", __v === true ? "" : __v);
160
+ }
161
+ __el0.setAttribute("aria-haspopup", "menu");
162
+ __el0.setAttribute("aria-expanded", "false");
163
+ __el0.setAttribute("data-state", "closed");
164
+ __on(__el0, "click", () => {
165
+ if (state.open.peek()) {
166
+ close();
167
+ } else {
168
+ open();
169
+ }
170
+ });
171
+ __on(__el0, "keydown", (event) => {
172
+ if (isKey(event, Keys.ArrowDown, Keys.Enter, Keys.Space)) {
173
+ event.preventDefault();
174
+ if (!state.open.peek())
175
+ open(true);
176
+ }
177
+ });
178
+ return __el0;
179
+ })();
180
+ const content = (() => {
181
+ const __el1 = __element("div");
182
+ __el1.setAttribute("role", "menu");
183
+ __el1.setAttribute("tabindex", "-1");
184
+ {
185
+ const __v = ids.contentId;
186
+ if (__v != null && __v !== false)
187
+ __el1.setAttribute("id", __v === true ? "" : __v);
188
+ }
189
+ __el1.setAttribute("aria-hidden", "true");
190
+ __el1.setAttribute("data-state", "closed");
191
+ {
192
+ const __v = { display: "none" };
193
+ if (__v != null && __v !== false)
194
+ __el1.setAttribute("style", typeof __v === "object" ? __styleStr(__v) : __v === true ? "" : String(__v));
195
+ }
196
+ __on(__el1, "keydown", (event) => {
197
+ if (isKey(event, Keys.Escape)) {
198
+ event.preventDefault();
199
+ close();
200
+ return;
201
+ }
202
+ if (isKey(event, Keys.Enter, Keys.Space)) {
203
+ event.preventDefault();
204
+ const active = items[state.activeIndex.peek()];
205
+ if (active) {
206
+ const val = active.getAttribute("data-value");
207
+ if (val !== null) {
208
+ onSelect?.(val);
209
+ close();
210
+ }
211
+ }
212
+ return;
213
+ }
214
+ if (state.activeIndex.peek() === -1) {
215
+ if (isKey(event, Keys.ArrowDown)) {
216
+ event.preventDefault();
217
+ state.activeIndex.value = 0;
218
+ updateActiveItem(0);
219
+ items[0]?.focus();
220
+ return;
221
+ }
222
+ if (isKey(event, Keys.ArrowUp)) {
223
+ event.preventDefault();
224
+ const last = items.length - 1;
225
+ state.activeIndex.value = last;
226
+ updateActiveItem(last);
227
+ items[last]?.focus();
228
+ return;
229
+ }
230
+ }
231
+ const result = handleListNavigation(event, items, { orientation: "vertical" });
232
+ if (result) {
233
+ const idx = items.indexOf(result);
234
+ if (idx >= 0) {
235
+ state.activeIndex.value = idx;
236
+ updateActiveItem(idx);
237
+ }
238
+ return;
239
+ }
240
+ if (event.key.length === 1 && !event.ctrlKey && !event.metaKey && !event.altKey) {
241
+ const char = event.key.toLowerCase();
242
+ const match = items.find((item) => item.textContent?.toLowerCase().startsWith(char));
243
+ if (match) {
244
+ const idx = items.indexOf(match);
245
+ state.activeIndex.value = idx;
246
+ updateActiveItem(idx);
247
+ match.focus();
248
+ }
249
+ }
250
+ });
251
+ return __el1;
252
+ })();
253
+ applyAttrs(trigger, attrs);
254
+ const __mfResult0 = { trigger, content, state, Item, Group, Separator, Label };
255
+ __flushMountFrame();
256
+ return __mfResult0;
257
+ } catch (__mfErr) {
258
+ __discardMountFrame(__mfDepth);
259
+ throw __mfErr;
260
+ }
261
+ }
262
+ var Menu = {
263
+ Root: MenuRoot
264
+ };
265
+
266
+ export { Menu };