@epilot/zenith-react 0.3.0-next.2 → 0.3.0-next.20

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.
package/CHANGELOG.md CHANGED
@@ -5,14 +5,31 @@ history belongs to the source project and remains available through Git.
5
5
 
6
6
  ## Unreleased
7
7
 
8
- ## [0.3.0-next.2] - 2026-10-30
8
+ ## [0.3.0-next.20] - 2026-11-02
9
9
 
10
- - changed: @epilot/zenith-react depends on @epilot/zenith-runtime ^0.2.0 so compatible runtime releases reach consumers independently. — @wmolinari ([!153](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/153))
11
- - changed: **BREAKING**: FieldCombobox and Command, the search list inside it, run on Base UI's Autocomplete instead of `cmdk`. Options are data: pass them as `items` on `FieldComboboxContent` and render them with a function in `FieldComboboxList` (and in `FieldComboboxCollection` inside each `FieldComboboxGroup`, which takes its group's `items`). `FieldComboboxItem`'s `value` is the item, and `onClick`, which also runs on Enter, replaces `onSelect`. `items` is required on `FieldComboboxContent`. The search text moves from `FieldComboboxInput`'s `value`/`onValueChange` to `FieldComboboxContent`'s, `FieldComboboxGroupLabel` replaces `FieldComboboxGroup`'s `heading`, and filtering is a case-insensitive "contains" that keeps the items' order. The Combobox page's "Changed in this version" section shows the new form (#106) — @wmolinari ([!151](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)) (experiment: https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)
12
- - removed: **BREAKING**: from FieldCombobox and Command: `FieldComboboxItem`'s `keywords` and `forceMount` (pass `filter={null}` for items the caller already filtered), `FieldComboboxLoading`'s `progress` and `label`, `FieldComboboxSeparator`'s `alwaysRender`, `FieldComboboxList`'s `label` (pass `aria-label`), `id` on `FieldComboboxList` and `FieldComboboxItem` (Base UI's ids are what `aria-controls` and `aria-activedescendant` point at), `asChild` on every search part, Label's props on `FieldComboboxGroupLabel` (now a `<div>`), cmdk's fuzzy ranking, Home/End, Ctrl+N/J/P/K and the Alt/Meta arrow jumps, the `cmdk-*` attributes, and the `cmdk` dependency, so `dist/` bundles no `@radix-ui` module (#106) — @wmolinari ([!151](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)) (experiment: https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)
10
+ - changed: Release preparation takes the changelog version from the package manifest, validates fragments by one rule that the merge request gate shares, checks the real packed tarball and keeps it for publishing, keeps the host bundle out of the runtime package, and stops a React-only release on unpublished runtime changes. Private workspace versions no longer need to follow the React release. — @wmolinari ([!164](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/164))
11
+ - **BREAKING**: `@epilot/zenith-react/tokens.json` no longer has a `version` field; read the version from `@epilot/zenith-react/package.json`. — @wmolinari ([!164](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/164))
12
+ - changed: **BREAKING**: FieldCombobox and Command, the search list inside it, run on Base UI's Autocomplete instead of `cmdk`. Options are data: pass them as `items` on `FieldComboboxContent` and render them with a function in `FieldComboboxList` (and in `FieldComboboxCollection` inside each `FieldComboboxGroup`, which takes its group's `items`). `FieldComboboxItem`'s `value` is the item, and `onClick`, which also runs on Enter, replaces `onSelect`. `items` is required on `FieldComboboxContent`. The search text moves from `FieldComboboxInput`'s `value`, `defaultValue` and `onValueChange` to `FieldComboboxContent`'s, `FieldComboboxGroupLabel` replaces `FieldComboboxGroup`'s `heading`, and filtering is a case-insensitive "contains" that keeps the items' order. The Combobox page's "Changed in this version" section shows the new form (#106) — @wmolinari ([!151](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)) (experiment: https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)
13
+ - removed: **BREAKING**: from FieldCombobox and Command: `FieldComboboxItem`'s `keywords` and `forceMount` (pass `filter={null}` for items the caller already filtered), `FieldComboboxGroup`'s `value` and `forceMount` (a group is its data, `{ value, items }`: key and label it with that `value`, and pass `filter={null}` with the caller's own filtering to keep a group that cmdk force-mounted), `FieldComboboxLoading`'s `progress` and `label`, `FieldComboboxSeparator`'s `alwaysRender`, `FieldComboboxList`'s `label` (pass `aria-label`), `id` on `FieldComboboxList` and `FieldComboboxItem` (Base UI's ids are what `aria-controls` and `aria-activedescendant` point at), `asChild` on every search part, Label's props on `FieldComboboxGroupLabel` (now a `<div>`), cmdk's fuzzy ranking, Home/End, Ctrl+N/J/P/K and the Alt/Meta arrow jumps, the `cmdk-*` attributes, and the `cmdk` dependency, so `dist/` bundles no `@radix-ui` module (#106) — @wmolinari ([!151](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)) (experiment: https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)
13
14
  - changed: `FieldLabel` inside a `Field` renders with an id (a caller's own `id` wins), and `FieldComboboxList` points its `aria-labelledby` at the Field's label that names the trigger (the one whose `htmlFor` is the trigger's id, else the first `FieldLabel`), so the list carries the trigger's name (#106) — @wmolinari ([!151](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)) (experiment: https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)
14
- - added: `FieldComboboxCollection`, and `@epilot/zenith-runtime/v1` serves Base UI's `autocomplete`; publish the runtime before `@epilot/zenith-react` (#106) — @wmolinari ([!151](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)) (experiment: https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)
15
+ - added: `FieldComboboxCollection`, which renders a `FieldComboboxGroup`'s matches. This release requires `@epilot/zenith-runtime` 0.3.0 or later (serves autocomplete); release the runtime and deploy root-config first (#106) — @wmolinari ([!151](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)) (experiment: https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)
16
+ - changed: the combobox search row draws no focus frame. The caret marks focus, and the placeholder and typed text stay clear of the row's edges (#106) — @wmolinari ([!151](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)) (experiment: https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/151)
17
+
18
+ ## [0.2.2] - 2026-10-30
19
+
20
+ React still depends on `@epilot/zenith-runtime` `^0.2.0`. The runtime is unchanged, so hosts keep
21
+ serving 0.2.0 and only `@epilot/zenith-react` is published.
22
+
23
+ - fixed: `FieldComboboxContent` is capped to the height available on its side of the trigger and scrolls its list under the search input, so a combobox with many options no longer runs off screen — @josh.stewart.epilot ([!162](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/162))
24
+ - fixed: `FieldComboboxInput` draws its focus ring around the whole search row instead of inset on the input, so the placeholder and typed text no longer start under the ring — @josh.stewart.epilot ([!163](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/163))
25
+ - fixed: `DropdownMenuTrigger` with `asChild` keeps its child's own text colour, so a `Button` used as the trigger (a split button's chevron, say) no longer turns blue; a bare trigger keeps its accent colour — @josh.stewart.epilot ([!165](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/165))
26
+
27
+ ## [0.2.1] - 2026-10-30
28
+
29
+ - changed: @epilot/zenith-react depends on @epilot/zenith-runtime ^0.2.0 so compatible runtime releases reach consumers independently. — @wmolinari ([!153](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/153))
15
30
  - fixed: CalloutAction no longer runs past the right edge of its Callout when the callout has an icon; its width is no longer forced to 100% on top of the icon indent, so a wrapping label or full-width row now wraps inside the callout (#61) — @wmolinari ([!139](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/139))
31
+ - fixed: a `List` row whose children are not all React nodes, such as react-i18next's `<Trans>` with `{{ name }}` interpolation, no longer crashes the list; `0.3.0-next.1` was affected — @wmolinari ([!158](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/158))
32
+ - changed: `TooltipContent` wraps long text at about 40 characters (`max-width: 40ch`) instead of stretching across the page, and spaces wrapped lines with a 1.35 line height; one-line tooltips are 4 px taller — @wmolinari ([!158](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/158))
16
33
  - fixed: the Radix to Base UI codemod reads the parameter count of an imported handler declared with `satisfies`, so a zero-parameter handler no longer gets an event argument — @wmolinari ([!149](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/149))
17
34
  - fixed: `SortableList` keeps the lifted row under the pointer and drops it where the pointer is inside a transformed container, such as a `PopoverContent` — @josh.stewart.epilot ([!155](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/155))
18
35
  - changed: `SortableList` drag grips are named after the row's text instead of its `value`; the new `ListItem` `textValue` names rows without text — @josh.stewart.epilot ([!155](https://gitlab.com/e-pilot/product/frontend/zenith/-/merge_requests/155))
package/README.md CHANGED
@@ -151,8 +151,8 @@ page in the documentation's setup section has the steps for each agent.
151
151
 
152
152
  ## Which version you get
153
153
 
154
- `npm install @epilot/zenith-react` resolves the `latest` dist-tag, which points
155
- at `0.2.0` — published to `next`, verified, then promoted by hand.
154
+ `npm install @epilot/zenith-react` resolves the `latest` dist-tag, which is
155
+ moved by hand; the automatic `next` builds never move `latest`.
156
156
 
157
157
  Unproven builds stay on `next` with a prerelease version:
158
158
 
@@ -1,12 +1,12 @@
1
- import { jsx as a, jsxs as B } from "react/jsx-runtime";
2
- import * as d from "react";
1
+ import { jsx as n, jsxs as B } from "react/jsx-runtime";
2
+ import * as i from "react";
3
3
  import { Autocomplete as g } from "../../_virtual/_zenith-runtime-family_autocomplete.js";
4
- import { mergeClasses as l, SLOT_ATTR as r, shorthands as u } from "@epilot/zenith-runtime/v1";
4
+ import { mergeClasses as l, SLOT_ATTR as r, shorthands as h } from "@epilot/zenith-runtime/v1";
5
5
  import { makeZenithStyles as z } from "../../styles/make-styles.js";
6
6
  import { boxModel as s } from "../../styles/host-reset.js";
7
- import { spacingElement3 as f, spacingElement2 as m, fontWeightMedium as E, grayA11 as h, leadingXs as H, textXs as $, accentA3 as A, grayA12 as N, leadingSm as q, textSm as I, spacingElement1 as x, graySoft as Y, focusRing as M, body as O, radiusSm as P, radiusMd as W, grayA3 as Z } from "../../tokens/index.js";
8
- import { Dialog as j, DialogHeader as _, DialogTitle as F, DialogDescription as J, DialogContent as K } from "../dialog/dialog.js";
9
- const Q = (i) => /* @__PURE__ */ a(
7
+ import { spacingElement3 as f, spacingElement2 as m, fontWeightMedium as E, grayA11 as u, leadingXs as H, textXs as $, accentA3 as A, grayA12 as N, leadingSm as q, textSm as I, spacingElement1 as x, graySoft as Y, body as M, radiusSm as P, radiusMd as X, grayA3 as O } from "../../tokens/index.js";
8
+ import { Dialog as Z, DialogHeader as j, DialogTitle as _, DialogDescription as F, DialogContent as J } from "../dialog/dialog.js";
9
+ const K = (d) => /* @__PURE__ */ n(
10
10
  "svg",
11
11
  {
12
12
  xmlns: "http://www.w3.org/2000/svg",
@@ -14,13 +14,13 @@ const Q = (i) => /* @__PURE__ */ a(
14
14
  viewBox: "0 -960 960 960",
15
15
  width: "24px",
16
16
  fill: "currentColor",
17
- ...i,
18
- children: /* @__PURE__ */ a("path", { d: "M380-320q-109 0-184.5-75.5T120-580q0-109 75.5-184.5T380-840q109 0 184.5 75.5T640-580q0 44-14 83t-38 69l224 224q11 11 11 28t-11 28q-11 11-28 11t-28-11L532-372q-30 24-69 38t-83 14Zm0-80q75 0 127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75 0-127.5 52.5T200-580q0 75 52.5 127.5T380-400Z" })
17
+ ...d,
18
+ children: /* @__PURE__ */ n("path", { d: "M380-320q-109 0-184.5-75.5T120-580q0-109 75.5-184.5T380-840q109 0 184.5 75.5T640-580q0 44-14 83t-38 69l224 224q11 11 11 28t-11 28q-11 11-28 11t-28-11L532-372q-30 24-69 38t-83 14Zm0-80q75 0 127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75 0-127.5 52.5T200-580q0 75 52.5 127.5T380-400Z" })
19
19
  }
20
20
  ), c = z({
21
21
  root: {
22
22
  ...s,
23
- backgroundColor: O,
23
+ backgroundColor: M,
24
24
  color: N,
25
25
  display: "flex",
26
26
  height: "100%",
@@ -28,16 +28,18 @@ const Q = (i) => /* @__PURE__ */ a(
28
28
  flexDirection: "column",
29
29
  overflowX: "hidden",
30
30
  overflowY: "hidden",
31
- ...u.borderRadius(W)
31
+ ...h.borderRadius(X)
32
32
  },
33
33
  inputWrapper: {
34
34
  ...s,
35
35
  display: "flex",
36
36
  alignItems: "center",
37
- ...u.gap(m),
38
- ...u.borderBottom("1px", "solid", Z),
37
+ ...h.gap(m),
38
+ ...h.borderBottom("1px", "solid", O),
39
39
  paddingLeft: f,
40
40
  paddingRight: f
41
+ // No focus frame: the caret marks focus, the example WCAG 2.4.7's Understanding gives for a
42
+ // text field. The row's padding keeps the text clear of the edges; the input keeps outline none.
41
43
  },
42
44
  searchIcon: {
43
45
  ...s,
@@ -51,24 +53,15 @@ const Q = (i) => /* @__PURE__ */ a(
51
53
  height: "3rem",
52
54
  display: "flex",
53
55
  width: "100%",
54
- ...u.borderRadius(W),
56
+ ...h.borderRadius(X),
55
57
  backgroundColor: "transparent",
56
58
  paddingTop: f,
57
59
  paddingBottom: f,
58
60
  fontSize: I,
59
61
  lineHeight: q,
60
62
  outlineStyle: "none",
61
- ":focus-visible": {
62
- outlineWidth: "2px",
63
- outlineStyle: "solid",
64
- // Inset (negative), not the outward +2px every other audited control uses: this input sits
65
- // flush against the top edge of the Command root, which clips overflow for its rounded
66
- // corners.
67
- outlineOffset: "-2px",
68
- outlineColor: M
69
- },
70
63
  "::placeholder": {
71
- color: h
64
+ color: u
72
65
  },
73
66
  ":disabled": {
74
67
  cursor: "not-allowed",
@@ -88,7 +81,7 @@ const Q = (i) => /* @__PURE__ */ a(
88
81
  textAlign: "center",
89
82
  fontSize: I,
90
83
  lineHeight: q,
91
- color: h,
84
+ color: u,
92
85
  // Base UI keeps the empty state mounted as a live region and empties it while items match.
93
86
  ":empty": {
94
87
  paddingTop: 0,
@@ -100,11 +93,11 @@ const Q = (i) => /* @__PURE__ */ a(
100
93
  color: N,
101
94
  overflowX: "hidden",
102
95
  overflowY: "hidden",
103
- ...u.padding(x)
96
+ ...h.padding(x)
104
97
  },
105
98
  groupLabel: {
106
99
  ...s,
107
- color: h,
100
+ color: u,
108
101
  paddingLeft: m,
109
102
  paddingRight: m,
110
103
  paddingTop: "0.375rem",
@@ -126,8 +119,8 @@ const Q = (i) => /* @__PURE__ */ a(
126
119
  display: "flex",
127
120
  cursor: "default",
128
121
  alignItems: "center",
129
- ...u.gap(m),
130
- ...u.borderRadius(P),
122
+ ...h.gap(m),
123
+ ...h.borderRadius(P),
131
124
  paddingLeft: m,
132
125
  paddingRight: m,
133
126
  paddingTop: "0.375rem",
@@ -154,28 +147,28 @@ const Q = (i) => /* @__PURE__ */ a(
154
147
  height: "1rem"
155
148
  },
156
149
  "& svg:not([class*='text-'])": {
157
- color: h
150
+ color: u
158
151
  }
159
152
  },
160
153
  shortcut: {
161
- color: h,
154
+ color: u,
162
155
  marginLeft: "auto",
163
156
  fontSize: $,
164
157
  lineHeight: H,
165
158
  letterSpacing: "0.1em"
166
159
  },
167
160
  loading: {
168
- color: h
161
+ color: u
169
162
  },
170
163
  dialogContent: {
171
164
  ...s,
172
165
  overflowX: "hidden",
173
166
  overflowY: "hidden",
174
- ...u.padding(0)
167
+ ...h.padding(0)
175
168
  },
176
169
  dialogCommand: {
177
170
  [`& [${r}="command-group-label"]`]: {
178
- color: h,
171
+ color: u,
179
172
  paddingLeft: m,
180
173
  paddingRight: m,
181
174
  fontWeight: E
@@ -218,14 +211,14 @@ const Q = (i) => /* @__PURE__ */ a(
218
211
  overflowY: "hidden",
219
212
  clip: "rect(0, 0, 0, 0)",
220
213
  whiteSpace: "nowrap",
221
- ...u.borderWidth(0)
214
+ ...h.borderWidth(0)
222
215
  }
223
- }), X = d.createContext(""), U = d.forwardRef(
216
+ }), G = i.createContext(""), Q = i.forwardRef(
224
217
  function({
225
218
  className: e,
226
219
  "data-slot": o = "command",
227
220
  items: t,
228
- filter: n,
221
+ filter: a,
229
222
  itemToStringValue: p,
230
223
  limit: y,
231
224
  value: b,
@@ -234,8 +227,8 @@ const Q = (i) => /* @__PURE__ */ a(
234
227
  children: R,
235
228
  ...v
236
229
  }, L) {
237
- const T = c(), [k, C] = d.useState(S ?? ""), G = b ?? k;
238
- return /* @__PURE__ */ a(
230
+ const T = c(), [k, C] = i.useState(S ?? ""), W = b ?? k;
231
+ return /* @__PURE__ */ n(
239
232
  g.Root,
240
233
  {
241
234
  inline: !0,
@@ -243,7 +236,7 @@ const Q = (i) => /* @__PURE__ */ a(
243
236
  autoHighlight: "always",
244
237
  keepHighlight: !0,
245
238
  items: t,
246
- filter: n,
239
+ filter: a,
247
240
  itemToStringValue: p,
248
241
  limit: y,
249
242
  value: b,
@@ -251,7 +244,7 @@ const Q = (i) => /* @__PURE__ */ a(
251
244
  onValueChange: (D) => {
252
245
  C(D), w == null || w(D);
253
246
  },
254
- children: /* @__PURE__ */ a(X.Provider, { value: G, children: /* @__PURE__ */ a(
247
+ children: /* @__PURE__ */ n(G.Provider, { value: W, children: /* @__PURE__ */ n(
255
248
  "div",
256
249
  {
257
250
  ref: L,
@@ -266,12 +259,12 @@ const Q = (i) => /* @__PURE__ */ a(
266
259
  );
267
260
  }
268
261
  );
269
- d.forwardRef(
262
+ i.forwardRef(
270
263
  function({
271
264
  title: e = "Command Palette",
272
265
  description: o = "Search for a command to run...",
273
266
  children: t,
274
- className: n,
267
+ className: a,
275
268
  showCloseButton: p = !0,
276
269
  items: y,
277
270
  filter: b,
@@ -283,18 +276,18 @@ d.forwardRef(
283
276
  ...T
284
277
  }, k) {
285
278
  const C = c();
286
- return /* @__PURE__ */ B(j, { ...T, children: [
287
- /* @__PURE__ */ B(_, { className: C.srOnly, children: [
288
- /* @__PURE__ */ a(F, { children: e }),
289
- /* @__PURE__ */ a(J, { children: o })
279
+ return /* @__PURE__ */ B(Z, { ...T, children: [
280
+ /* @__PURE__ */ B(j, { className: C.srOnly, children: [
281
+ /* @__PURE__ */ n(_, { children: e }),
282
+ /* @__PURE__ */ n(F, { children: o })
290
283
  ] }),
291
- /* @__PURE__ */ a(
292
- K,
284
+ /* @__PURE__ */ n(
285
+ J,
293
286
  {
294
- className: l(C.dialogContent, n),
287
+ className: l(C.dialogContent, a),
295
288
  showCloseButton: p,
296
- children: /* @__PURE__ */ a(
297
- U,
289
+ children: /* @__PURE__ */ n(
290
+ Q,
298
291
  {
299
292
  className: C.dialogCommand,
300
293
  items: y,
@@ -312,7 +305,7 @@ d.forwardRef(
312
305
  ] });
313
306
  }
314
307
  );
315
- const io = d.forwardRef(function({ className: e, wrapperClassName: o, ...t }, n) {
308
+ const ro = i.forwardRef(function({ className: e, wrapperClassName: o, ...t }, a) {
316
309
  const p = c();
317
310
  return /* @__PURE__ */ B(
318
311
  "div",
@@ -321,11 +314,11 @@ const io = d.forwardRef(function({ className: e, wrapperClassName: o, ...t }, n)
321
314
  [r]: "command-input-wrapper",
322
315
  className: l(p.inputWrapper, o),
323
316
  children: [
324
- /* @__PURE__ */ a(Q, { className: p.searchIcon }),
325
- /* @__PURE__ */ a(
317
+ /* @__PURE__ */ n(K, { className: p.searchIcon }),
318
+ /* @__PURE__ */ n(
326
319
  g.Input,
327
320
  {
328
- ref: n,
321
+ ref: a,
329
322
  "data-slot": "command-input",
330
323
  [r]: "command-input",
331
324
  className: l(p.input, e),
@@ -335,15 +328,15 @@ const io = d.forwardRef(function({ className: e, wrapperClassName: o, ...t }, n)
335
328
  ]
336
329
  }
337
330
  );
338
- }), mo = d.forwardRef(
331
+ }), io = i.forwardRef(
339
332
  function({
340
333
  className: e,
341
334
  "aria-label": o,
342
335
  "aria-labelledby": t,
343
- ...n
336
+ ...a
344
337
  }, p) {
345
338
  const y = c();
346
- return /* @__PURE__ */ a(
339
+ return /* @__PURE__ */ n(
347
340
  g.List,
348
341
  {
349
342
  ref: p,
@@ -352,114 +345,114 @@ const io = d.forwardRef(function({ className: e, wrapperClassName: o, ...t }, n)
352
345
  className: l(y.list, e),
353
346
  "aria-labelledby": t,
354
347
  "aria-label": o ?? (t ? void 0 : "Suggestions"),
355
- ...n
348
+ ...a
356
349
  }
357
350
  );
358
351
  }
359
- ), lo = d.forwardRef(
352
+ ), mo = i.forwardRef(
360
353
  function({ className: e, ...o }, t) {
361
- const n = c();
362
- return /* @__PURE__ */ a(
354
+ const a = c();
355
+ return /* @__PURE__ */ n(
363
356
  g.Empty,
364
357
  {
365
358
  ref: t,
366
359
  "data-slot": "command-empty",
367
360
  [r]: "command-empty",
368
- className: l(n.empty, e),
361
+ className: l(a.empty, e),
369
362
  ...o
370
363
  }
371
364
  );
372
365
  }
373
- ), so = d.forwardRef(
366
+ ), lo = i.forwardRef(
374
367
  function({ className: e, ...o }, t) {
375
- const n = c();
376
- return /* @__PURE__ */ a(
368
+ const a = c();
369
+ return /* @__PURE__ */ n(
377
370
  g.Group,
378
371
  {
379
372
  ref: t,
380
373
  "data-slot": "command-group",
381
374
  [r]: "command-group",
382
- className: l(n.group, e),
375
+ className: l(a.group, e),
383
376
  ...o
384
377
  }
385
378
  );
386
379
  }
387
- ), co = d.forwardRef(function({ className: e, ...o }, t) {
388
- const n = c();
389
- return /* @__PURE__ */ a(
380
+ ), so = i.forwardRef(function({ className: e, ...o }, t) {
381
+ const a = c();
382
+ return /* @__PURE__ */ n(
390
383
  g.GroupLabel,
391
384
  {
392
385
  ref: t,
393
386
  "data-slot": "command-group-label",
394
387
  [r]: "command-group-label",
395
- className: l(n.groupLabel, e),
388
+ className: l(a.groupLabel, e),
396
389
  ...o
397
390
  }
398
391
  );
399
- }), po = ({ children: i }) => /* @__PURE__ */ a(g.Collection, { children: i }), go = d.forwardRef(function({ className: e, ...o }, t) {
400
- const n = c();
401
- return d.useContext(X).trim() !== "" ? null : /* @__PURE__ */ a(
392
+ }), co = ({ children: d }) => /* @__PURE__ */ n(g.Collection, { children: d }), po = i.forwardRef(function({ className: e, ...o }, t) {
393
+ const a = c();
394
+ return i.useContext(G).trim() !== "" ? null : /* @__PURE__ */ n(
402
395
  g.Separator,
403
396
  {
404
397
  ref: t,
405
398
  "data-slot": "command-separator",
406
399
  [r]: "command-separator",
407
- className: l(n.separator, e),
400
+ className: l(a.separator, e),
408
401
  ...o
409
402
  }
410
403
  );
411
- }), uo = d.forwardRef(
404
+ }), go = i.forwardRef(
412
405
  function({ className: e, ...o }, t) {
413
- const n = c();
414
- return /* @__PURE__ */ a(
406
+ const a = c();
407
+ return /* @__PURE__ */ n(
415
408
  g.Item,
416
409
  {
417
410
  ref: t,
418
411
  "data-slot": "command-item",
419
412
  [r]: "command-item",
420
- className: l(n.item, e),
413
+ className: l(a.item, e),
421
414
  ...o
422
415
  }
423
416
  );
424
417
  }
425
418
  );
426
- d.forwardRef(function({ className: e, ...o }, t) {
427
- const n = c();
428
- return /* @__PURE__ */ a(
419
+ i.forwardRef(function({ className: e, ...o }, t) {
420
+ const a = c();
421
+ return /* @__PURE__ */ n(
429
422
  "span",
430
423
  {
431
424
  ref: t,
432
425
  "data-slot": "command-shortcut",
433
426
  [r]: "command-shortcut",
434
- className: l(n.shortcut, e),
427
+ className: l(a.shortcut, e),
435
428
  ...o
436
429
  }
437
430
  );
438
431
  });
439
- const ho = d.forwardRef(function({ className: e, ...o }, t) {
440
- const n = c();
441
- return /* @__PURE__ */ a(
432
+ const ho = i.forwardRef(function({ className: e, ...o }, t) {
433
+ const a = c();
434
+ return /* @__PURE__ */ n(
442
435
  g.Status,
443
436
  {
444
437
  ref: t,
445
438
  "data-slot": "command-loading",
446
439
  [r]: "command-loading",
447
- className: l(n.loading, e),
440
+ className: l(a.loading, e),
448
441
  ...o
449
442
  }
450
443
  );
451
444
  });
452
445
  export {
453
- U as Command,
454
- po as CommandCollection,
455
- lo as CommandEmpty,
456
- so as CommandGroup,
457
- co as CommandGroupLabel,
458
- io as CommandInput,
459
- uo as CommandItem,
460
- mo as CommandList,
446
+ Q as Command,
447
+ co as CommandCollection,
448
+ mo as CommandEmpty,
449
+ lo as CommandGroup,
450
+ so as CommandGroupLabel,
451
+ ro as CommandInput,
452
+ go as CommandItem,
453
+ io as CommandList,
461
454
  ho as CommandLoading,
462
- U as CommandRoot,
463
- go as CommandSeparator
455
+ Q as CommandRoot,
456
+ po as CommandSeparator
464
457
  };
465
458
  //# sourceMappingURL=command.js.map