@gntik-ai/ui 0.10.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,13 +1,13 @@
1
1
  'use client';
2
- import { A as createFormatters, C as builtInMessages, D as catalogs, E as usePortalDir, F as cn, M as interpolate, N as localeDirection, O as es, P as tv, S as I18nProvider, T as useOptionalI18n, _ as buttonVariants, a as FieldLabel, b as DensityContext, c as FieldsetLegend, d as useAnnounce, f as useHasLiveAnnouncer, g as BUTTON_ICON_SIZE, h as IconButton, i as FieldItem, j as formatBytes, k as en, l as fieldVariants, m as Button, n as FieldDescription, o as Fieldset, p as liveAnnouncerVariants, r as FieldError, s as FieldsetDescription, t as Field, u as LiveAnnouncer, v as Spinner, w as useI18n, x as useDensity, y as RTL_FLIP } from "./Field-knzMlyzO.js";
2
+ import { A as createFormatters, C as builtInMessages, D as catalogs, E as usePortalDir, F as cn, M as interpolate, N as localeDirection, O as es, P as tv, S as I18nProvider, T as useOptionalI18n, _ as buttonVariants, a as FieldLabel, b as DensityContext, c as FieldsetLegend, d as useAnnounce, f as useHasLiveAnnouncer, g as BUTTON_ICON_SIZE, h as IconButton, i as FieldItem, j as formatBytes, k as en, l as fieldVariants, m as Button, n as FieldDescription, o as Fieldset, p as liveAnnouncerVariants, r as FieldError, s as FieldsetDescription, t as Field, u as LiveAnnouncer, v as Spinner, w as useI18n, x as useDensity, y as RTL_FLIP } from "./Field-fY45gbLU.js";
3
3
  import { themeScript } from "./theme-script.js";
4
4
  import { Children, Fragment, cloneElement, createContext, createElement, isValidElement, useCallback, useContext, useEffect, useEffectEvent, useId, useImperativeHandle, useLayoutEffect, useMemo, useRef, useState, useSyncExternalStore } from "react";
5
5
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
6
+ import { useRender } from "@base-ui/react/use-render";
6
7
  import { Accordion as Accordion$1 } from "@base-ui/react/accordion";
7
8
  import { AlertCircle, AlertTriangle, ArrowDown, ArrowLeft, ArrowRight, ArrowUp, Ban, Bell, BellOff, CalendarClock, CalendarDays, Check, CheckCheck, ChevronDown, ChevronLeft, ChevronRight, ChevronUp, ChevronsLeft, ChevronsRight, ChevronsUpDown, CircleAlert, CircleCheck, ClipboardPaste, Clock, Contrast, Copy, CornerDownRight, ExternalLink, Eye, EyeOff, File, FileArchive, FileAudio, FileCode, FileImage, FileSpreadsheet, FileText, FileVideo, FolderPlus, GripHorizontal, GripVertical, Info, ListFilter, Lock, LockOpen, LogOut, Menu as Menu$1, Minus, Monitor, Moon, MoreHorizontal, MoveHorizontal, Palette, PanelLeft, PanelLeftClose, PanelLeftOpen, PanelRight, Pause, Pin, Play, Plus, Quote, RefreshCw, RotateCw, Search, Sun, Trash2, TriangleAlert, WrapText, X, ZoomIn, ZoomOut } from "lucide-react";
8
9
  import { AlertDialog as AlertDialog$1 } from "@base-ui/react/alert-dialog";
9
10
  import { mergeProps } from "@base-ui/react/merge-props";
10
- import { useRender } from "@base-ui/react/use-render";
11
11
  import { Avatar as Avatar$1 } from "@base-ui/react/avatar";
12
12
  import { Drawer as Drawer$1 } from "@base-ui/react/drawer";
13
13
  import { Select as Select$1 } from "@base-ui/react/select";
@@ -258,6 +258,12 @@ const THEME_CLASS = {
258
258
  };
259
259
  const ALL_CLASSES = ["dark", "high_contrast"];
260
260
  const SYSTEM_QUERIES = ["(prefers-color-scheme: light)", "(prefers-contrast: more)"];
261
+ const DEFAULT_THEME = {
262
+ mode: "dark",
263
+ resolved: "dark",
264
+ setMode: () => {},
265
+ brand: gntikPreset
266
+ };
261
267
  const ThemeContext = createContext(null);
262
268
  function systemTheme() {
263
269
  if (typeof window === "undefined" || !window.matchMedia) return "dark";
@@ -297,13 +303,13 @@ const serverSystem = () => "dark";
297
303
  * useSyncExternalStore, so they apply right after hydration without a mismatch. To avoid a
298
304
  * flash on load, inline `themeScript()` in the document <head>.
299
305
  */
300
- function ThemeProvider({ children, defaultMode = "dark", initialMode, brand = gntikPreset, storageKey = "gntik-theme", target = () => typeof document === "undefined" ? null : document.documentElement }) {
306
+ function ThemeProvider({ children, defaultMode = "dark", initialMode, forcedMode, brand = gntikPreset, storageKey = "gntik-theme", target = () => typeof document === "undefined" ? null : document.documentElement }) {
301
307
  const [localMode, setLocalMode] = useState(initialMode ?? defaultMode);
302
308
  const getStored = useCallback(() => storageKey ? readStored(storageKey) : null, [storageKey]);
303
309
  const stored = useSyncExternalStore(subscribeStored, getStored, serverStored);
304
310
  const system = useSyncExternalStore(subscribeSystem, systemTheme, serverSystem);
305
311
  const mode = stored ?? localMode;
306
- const resolved = mode === "system" ? system : mode;
312
+ const resolved = forcedMode ?? (mode === "system" ? system : mode);
307
313
  useEffect(() => {
308
314
  const el = target();
309
315
  if (!el) return;
@@ -343,12 +349,7 @@ function ThemeProvider({ children, defaultMode = "dark", initialMode, brand = gn
343
349
  }
344
350
  /** Current theme and brand. Outside a provider it reports the dark default and the gntik preset. */
345
351
  function useTheme() {
346
- return useContext(ThemeContext) ?? {
347
- mode: "dark",
348
- resolved: "dark",
349
- setMode: () => {},
350
- brand: gntikPreset
351
- };
352
+ return useContext(ThemeContext) ?? DEFAULT_THEME;
352
353
  }
353
354
  //#endregion
354
355
  //#region src/theme/Logo.tsx
@@ -373,6 +374,56 @@ function Logo({ size = 28, wordmark = false, brand, className, ...props }) {
373
374
  });
374
375
  }
375
376
  //#endregion
377
+ //#region src/utils/portal.ts
378
+ /** Undefined preserves Base UI's document.body default outside a scope. */
379
+ const PortalContainerContext = createContext(void 0);
380
+ function usePortalContainer() {
381
+ return useContext(PortalContainerContext);
382
+ }
383
+ //#endregion
384
+ //#region src/theme/ThemeScope.tsx
385
+ /** Applies a theme to a subtree and its overlays; mode/setMode still control the page. */
386
+ function ThemeScope({ theme, children, className, render, ref, ...props }) {
387
+ const page = useTheme();
388
+ const value = useMemo(() => ({
389
+ ...page,
390
+ resolved: theme
391
+ }), [page, theme]);
392
+ const [container, setContainer] = useState();
393
+ const initialTheme = useRef(theme);
394
+ useEffect(() => {
395
+ const portal = document.createElement("div");
396
+ portal.className = initialTheme.current;
397
+ portal.dataset.themeScopePortal = initialTheme.current;
398
+ document.body.appendChild(portal);
399
+ setContainer(portal);
400
+ return () => portal.remove();
401
+ }, []);
402
+ useEffect(() => {
403
+ if (!container) return;
404
+ container.setAttribute("class", theme);
405
+ container.setAttribute("data-theme-scope-portal", theme);
406
+ }, [container, theme]);
407
+ const element = useRender({
408
+ defaultTagName: "div",
409
+ render,
410
+ ref,
411
+ props: {
412
+ ...props,
413
+ className: cn(theme, className),
414
+ "data-theme-scope": theme,
415
+ children
416
+ }
417
+ });
418
+ return /* @__PURE__ */ jsx(ThemeContext.Provider, {
419
+ value,
420
+ children: /* @__PURE__ */ jsx(PortalContainerContext.Provider, {
421
+ value: container,
422
+ children: element
423
+ })
424
+ });
425
+ }
426
+ //#endregion
376
427
  //#region src/components/Accordion/accordion.variants.ts
377
428
  const accordionVariants = tv({
378
429
  slots: {
@@ -747,10 +798,11 @@ const AlertDialogTrigger = AlertDialog$1.Trigger;
747
798
  * focus returns to the trigger. Unlike Dialog, an outside press does not dismiss it.
748
799
  */
749
800
  function AlertDialogContent({ size = "sm", className, container, children, ...props }) {
801
+ const portalContainer = usePortalContainer();
750
802
  const dir = usePortalDir();
751
803
  const v = dialogVariants({ size });
752
804
  return /* @__PURE__ */ jsxs(AlertDialog$1.Portal, {
753
- container,
805
+ container: container ?? portalContainer,
754
806
  children: [/* @__PURE__ */ jsx(AlertDialog$1.Backdrop, { className: v.backdrop() }), /* @__PURE__ */ jsx(AlertDialog$1.Viewport, {
755
807
  dir,
756
808
  className: v.viewport(),
@@ -1626,11 +1678,12 @@ function SheetHandle() {
1626
1678
  * optional header (title, description), scrollable content and a fixed footer.
1627
1679
  */
1628
1680
  function BottomSheetContent({ className, title, description, footer, showClose = true, container, children, ...props }) {
1681
+ const portalContainer = usePortalContainer();
1629
1682
  const ctx = useContext(SheetContext);
1630
1683
  const { t } = useI18n();
1631
1684
  const s = bottomSheetVariants();
1632
1685
  return /* @__PURE__ */ jsxs(Drawer$1.Portal, {
1633
- container,
1686
+ container: container ?? portalContainer,
1634
1687
  children: [/* @__PURE__ */ jsx(Drawer$1.Backdrop, { className: s.backdrop() }), /* @__PURE__ */ jsx(Drawer$1.Viewport, {
1635
1688
  className: s.viewport(),
1636
1689
  children: /* @__PURE__ */ jsxs(Drawer$1.Popup, {
@@ -2520,13 +2573,14 @@ function SelectTrigger({ size, className, placeholder, children, ref, ...props }
2520
2573
  }
2521
2574
  /** The popup: portal, positioner, popup surface and listbox. */
2522
2575
  function SelectContent({ className, alignItemWithTrigger = false, side = "bottom", align = "start", sideOffset = 6, container, status, children, ...props }) {
2576
+ const portalContainer = usePortalContainer();
2523
2577
  const dir = usePortalDir();
2524
2578
  const context = useContext(SelectTriggerContext);
2525
2579
  const labelledBy = useTriggerAttribute(context?.trigger ?? null, "aria-labelledby");
2526
2580
  const ariaLabel = useTriggerAttribute(context?.trigger ?? null, "aria-label");
2527
2581
  const explicitName = props["aria-label"] !== void 0 || props["aria-labelledby"] !== void 0;
2528
2582
  return /* @__PURE__ */ jsx(Select$1.Portal, {
2529
- container,
2583
+ container: container ?? portalContainer,
2530
2584
  children: /* @__PURE__ */ jsx(Select$1.Positioner, {
2531
2585
  dir,
2532
2586
  className: s$25.positioner(),
@@ -4840,6 +4894,7 @@ function ComboboxChipsInput({ label, className, placeholder, getLabel = defaultL
4840
4894
  }
4841
4895
  /** The popup: portal, positioner, popup surface, async status, empty state and listbox. */
4842
4896
  function ComboboxContent({ className, emptyText: emptyTextProp, side = "bottom", align = "start", sideOffset = 6, container, children, itemHeight, estimatedItemHeight, overscan, ...props }) {
4897
+ const portalContainer = usePortalContainer();
4843
4898
  const { t } = useI18n();
4844
4899
  const emptyText = emptyTextProp ?? t("common.noMatches");
4845
4900
  const dir = usePortalDir();
@@ -4851,7 +4906,7 @@ function ComboboxContent({ className, emptyText: emptyTextProp, side = "bottom",
4851
4906
  const busy = !!enh && (enh.loading || !!enh.error);
4852
4907
  const errorText = typeof enh?.errorText === "function" ? enh.errorText(enh.error) : enh?.errorText ?? t("combobox.loadFailed");
4853
4908
  return /* @__PURE__ */ jsx(Combobox$1.Portal, {
4854
- container,
4909
+ container: container ?? portalContainer,
4855
4910
  children: /* @__PURE__ */ jsx(Combobox$1.Positioner, {
4856
4911
  dir,
4857
4912
  className: s$20.positioner(),
@@ -5285,6 +5340,7 @@ function CommandPalette({ groups, recent, recentLabel: recentLabelProp, onSelect
5285
5340
  }),
5286
5341
  "”"
5287
5342
  ] }), footer, className, children }) {
5343
+ const portalContainer = usePortalContainer();
5288
5344
  const { t, locale } = useI18n();
5289
5345
  const recentLabel = recentLabelProp ?? t("commandPalette.recent");
5290
5346
  const label = labelProp ?? t("commandPalette.label");
@@ -5311,75 +5367,78 @@ function CommandPalette({ groups, recent, recentLabel: recentLabelProp, onSelect
5311
5367
  return /* @__PURE__ */ jsxs(Dialog$1.Root, {
5312
5368
  open,
5313
5369
  onOpenChange: (next) => setOpen(next),
5314
- children: [children, /* @__PURE__ */ jsxs(Dialog$1.Portal, { children: [/* @__PURE__ */ jsx(Dialog$1.Backdrop, { className: s$19.backdrop() }), /* @__PURE__ */ jsx(Dialog$1.Viewport, {
5315
- dir,
5316
- className: s$19.viewport(),
5317
- children: /* @__PURE__ */ jsx(Dialog$1.Popup, {
5318
- "aria-label": label,
5319
- className: cn(s$19.popup(), className),
5320
- children: /* @__PURE__ */ jsxs(Autocomplete.Root, {
5321
- open: true,
5322
- inline: true,
5323
- items: visible,
5324
- filter: null,
5325
- value: query,
5326
- onValueChange: (v, details) => {
5327
- if (details.reason === "item-press") return;
5328
- setQuery(v);
5329
- },
5330
- itemToStringValue: (entry) => entry.item.label,
5331
- autoHighlight: "always",
5332
- keepHighlight: true,
5333
- children: [
5334
- /* @__PURE__ */ jsxs("div", {
5335
- className: s$19.inputRow(),
5336
- children: [
5337
- /* @__PURE__ */ jsx(Search, {
5338
- size: 17,
5339
- "aria-hidden": true,
5340
- className: s$19.inputIcon()
5341
- }),
5342
- /* @__PURE__ */ jsx(Autocomplete.Input, {
5343
- "aria-label": placeholder.replace(/…$/, ""),
5344
- "aria-describedby": footer === false ? void 0 : hintsId,
5345
- placeholder,
5346
- className: s$19.input()
5347
- }),
5348
- /* @__PURE__ */ jsx(Kbd, {
5349
- size: "sm",
5350
- label: "Escape",
5351
- children: "esc"
5352
- })
5353
- ]
5354
- }),
5355
- /* @__PURE__ */ jsxs("div", {
5356
- className: s$19.results(),
5357
- children: [/* @__PURE__ */ jsx(Autocomplete.Empty, {
5358
- className: s$19.empty(),
5359
- children: count === 0 && query.trim() ? emptyText(query.trim()) : null
5360
- }), /* @__PURE__ */ jsx(Autocomplete.List, {
5361
- className: s$19.list(),
5362
- children: (group) => /* @__PURE__ */ jsxs(Autocomplete.Group, {
5363
- items: group.items,
5364
- className: s$19.group(),
5365
- children: [/* @__PURE__ */ jsx(Autocomplete.GroupLabel, {
5366
- className: s$19.groupLabel(),
5367
- children: group.value
5368
- }), /* @__PURE__ */ jsx(Autocomplete.Collection, { children: (entry) => /* @__PURE__ */ jsx(CommandRow, {
5369
- entry,
5370
- onRun: run
5371
- }, entry.key) })]
5372
- }, group.value)
5373
- })]
5374
- }),
5375
- footer === false ? null : footer ?? /* @__PURE__ */ jsx(DefaultFooter, {
5376
- count,
5377
- id: hintsId
5378
- })
5379
- ]
5370
+ children: [children, /* @__PURE__ */ jsxs(Dialog$1.Portal, {
5371
+ container: portalContainer,
5372
+ children: [/* @__PURE__ */ jsx(Dialog$1.Backdrop, { className: s$19.backdrop() }), /* @__PURE__ */ jsx(Dialog$1.Viewport, {
5373
+ dir,
5374
+ className: s$19.viewport(),
5375
+ children: /* @__PURE__ */ jsx(Dialog$1.Popup, {
5376
+ "aria-label": label,
5377
+ className: cn(s$19.popup(), className),
5378
+ children: /* @__PURE__ */ jsxs(Autocomplete.Root, {
5379
+ open: true,
5380
+ inline: true,
5381
+ items: visible,
5382
+ filter: null,
5383
+ value: query,
5384
+ onValueChange: (v, details) => {
5385
+ if (details.reason === "item-press") return;
5386
+ setQuery(v);
5387
+ },
5388
+ itemToStringValue: (entry) => entry.item.label,
5389
+ autoHighlight: "always",
5390
+ keepHighlight: true,
5391
+ children: [
5392
+ /* @__PURE__ */ jsxs("div", {
5393
+ className: s$19.inputRow(),
5394
+ children: [
5395
+ /* @__PURE__ */ jsx(Search, {
5396
+ size: 17,
5397
+ "aria-hidden": true,
5398
+ className: s$19.inputIcon()
5399
+ }),
5400
+ /* @__PURE__ */ jsx(Autocomplete.Input, {
5401
+ "aria-label": placeholder.replace(/…$/, ""),
5402
+ "aria-describedby": footer === false ? void 0 : hintsId,
5403
+ placeholder,
5404
+ className: s$19.input()
5405
+ }),
5406
+ /* @__PURE__ */ jsx(Kbd, {
5407
+ size: "sm",
5408
+ label: "Escape",
5409
+ children: "esc"
5410
+ })
5411
+ ]
5412
+ }),
5413
+ /* @__PURE__ */ jsxs("div", {
5414
+ className: s$19.results(),
5415
+ children: [/* @__PURE__ */ jsx(Autocomplete.Empty, {
5416
+ className: s$19.empty(),
5417
+ children: count === 0 && query.trim() ? emptyText(query.trim()) : null
5418
+ }), /* @__PURE__ */ jsx(Autocomplete.List, {
5419
+ className: s$19.list(),
5420
+ children: (group) => /* @__PURE__ */ jsxs(Autocomplete.Group, {
5421
+ items: group.items,
5422
+ className: s$19.group(),
5423
+ children: [/* @__PURE__ */ jsx(Autocomplete.GroupLabel, {
5424
+ className: s$19.groupLabel(),
5425
+ children: group.value
5426
+ }), /* @__PURE__ */ jsx(Autocomplete.Collection, { children: (entry) => /* @__PURE__ */ jsx(CommandRow, {
5427
+ entry,
5428
+ onRun: run
5429
+ }, entry.key) })]
5430
+ }, group.value)
5431
+ })]
5432
+ }),
5433
+ footer === false ? null : footer ?? /* @__PURE__ */ jsx(DefaultFooter, {
5434
+ count,
5435
+ id: hintsId
5436
+ })
5437
+ ]
5438
+ })
5380
5439
  })
5381
- })
5382
- })] })]
5440
+ })]
5441
+ })]
5383
5442
  });
5384
5443
  }
5385
5444
  /** Search-style button that opens the palette; place it inside <CommandPalette>. */
@@ -5529,8 +5588,9 @@ function ContextMenuTrigger({ className, tabIndex = 0, hint = "Press Shift+F10 f
5529
5588
  }
5530
5589
  /** The floating list (role `menu`) placed at the pointer; same look as MenuContent. */
5531
5590
  function ContextMenuContent({ className, container, children, ...props }) {
5591
+ const portalContainer = usePortalContainer();
5532
5592
  return /* @__PURE__ */ jsx(ContextMenu$1.Portal, {
5533
- container,
5593
+ container: container ?? portalContainer,
5534
5594
  children: /* @__PURE__ */ jsx(ContextMenu$1.Positioner, {
5535
5595
  className: s$18.positioner(),
5536
5596
  children: /* @__PURE__ */ jsx(ContextMenu$1.Popup, {
@@ -5627,10 +5687,11 @@ const Tooltip = Tooltip$1.Root;
5627
5687
  const TooltipTrigger = Tooltip$1.Trigger;
5628
5688
  /** The floating hint. Opens on hover (after the delay) and on keyboard focus; Escape hides it. */
5629
5689
  function TooltipContent({ variant, side = "top", align = "center", sideOffset = 8, arrow = true, kbd, className, container, children, ...props }) {
5690
+ const portalContainer = usePortalContainer();
5630
5691
  const dir = usePortalDir();
5631
5692
  const v = tooltipVariants({ variant });
5632
5693
  return /* @__PURE__ */ jsx(Tooltip$1.Portal, {
5633
- container,
5694
+ container: container ?? portalContainer,
5634
5695
  children: /* @__PURE__ */ jsx(Tooltip$1.Positioner, {
5635
5696
  dir,
5636
5697
  className: v.positioner(),
@@ -5881,10 +5942,11 @@ const PopoverTrigger = Popover$1.Trigger;
5881
5942
  * close it and focus returns to the trigger.
5882
5943
  */
5883
5944
  function PopoverContent({ side = "bottom", align = "center", sideOffset = 8, alignOffset, arrow = false, padding, className, container, children, ...props }) {
5945
+ const portalContainer = usePortalContainer();
5884
5946
  const dir = usePortalDir();
5885
5947
  const v = popoverVariants({ padding });
5886
5948
  return /* @__PURE__ */ jsx(Popover$1.Portal, {
5887
- container,
5949
+ container: container ?? portalContainer,
5888
5950
  children: /* @__PURE__ */ jsx(Popover$1.Positioner, {
5889
5951
  dir,
5890
5952
  className: v.positioner(),
@@ -8085,6 +8147,7 @@ const DialogClose = Dialog$1.Close;
8085
8147
  * inside, Escape and an outside press close it, and focus returns to the trigger.
8086
8148
  */
8087
8149
  function DialogContent({ size, presentation, className, showClose = true, closeLabel: closeLabelProp, container, children, ...props }) {
8150
+ const portalContainer = usePortalContainer();
8088
8151
  const { t } = useI18n();
8089
8152
  const closeLabel = closeLabelProp ?? t("common.close");
8090
8153
  const dir = usePortalDir();
@@ -8093,7 +8156,7 @@ function DialogContent({ size, presentation, className, showClose = true, closeL
8093
8156
  presentation
8094
8157
  });
8095
8158
  return /* @__PURE__ */ jsxs(Dialog$1.Portal, {
8096
- container,
8159
+ container: container ?? portalContainer,
8097
8160
  children: [/* @__PURE__ */ jsx(Dialog$1.Backdrop, { className: v.backdrop() }), /* @__PURE__ */ jsx(Dialog$1.Viewport, {
8098
8161
  dir,
8099
8162
  className: v.viewport(),
@@ -8984,6 +9047,7 @@ const DrawerClose = Drawer$1.Close;
8984
9047
  * to the trigger. Lay out the inside with DrawerHeader, DrawerBody and DrawerFooter.
8985
9048
  */
8986
9049
  function DrawerContent({ size, className, showClose = true, closeLabel, container, children, ...props }) {
9050
+ const portalContainer = usePortalContainer();
8987
9051
  const dir = usePortalDir();
8988
9052
  const { t } = useI18n();
8989
9053
  const side = useContext(SideContext);
@@ -8992,7 +9056,7 @@ function DrawerContent({ size, className, showClose = true, closeLabel, containe
8992
9056
  size
8993
9057
  });
8994
9058
  return /* @__PURE__ */ jsxs(Drawer$1.Portal, {
8995
- container,
9059
+ container: container ?? portalContainer,
8996
9060
  children: [/* @__PURE__ */ jsx(Drawer$1.Backdrop, { className: v.backdrop() }), /* @__PURE__ */ jsx(Drawer$1.Viewport, {
8997
9061
  dir,
8998
9062
  className: v.viewport(),
@@ -9527,9 +9591,10 @@ function HoverCardTrigger({ className, delay = 500, closeDelay = 250, ...props }
9527
9591
  * also be reachable at the trigger's destination. Escape closes it.
9528
9592
  */
9529
9593
  function HoverCardContent({ side = "bottom", align = "center", sideOffset = 8, arrow = false, className, container, children, ...props }) {
9594
+ const portalContainer = usePortalContainer();
9530
9595
  const dir = usePortalDir();
9531
9596
  return /* @__PURE__ */ jsx(PreviewCard.Portal, {
9532
- container,
9597
+ container: container ?? portalContainer,
9533
9598
  children: /* @__PURE__ */ jsx(PreviewCard.Positioner, {
9534
9599
  dir,
9535
9600
  className: s$14.positioner(),
@@ -11860,6 +11925,7 @@ const lightboxVariants = tv({ slots: {
11860
11925
  * closes and focus returns to whatever opened it.
11861
11926
  */
11862
11927
  function Lightbox({ items, open, defaultOpen = false, onOpenChange, index, defaultIndex = 0, onIndexChange, loop = false, showThumbnails = true, maxZoom = 4, labels: labelsProp, container }) {
11928
+ const portalContainer = usePortalContainer();
11863
11929
  const { t } = useI18n();
11864
11930
  const labels = {
11865
11931
  title: t("lightbox.title"),
@@ -11943,7 +12009,7 @@ function Lightbox({ items, open, defaultOpen = false, onOpenChange, index, defau
11943
12009
  open: isOpen,
11944
12010
  onOpenChange: (next) => setOpen(next),
11945
12011
  children: /* @__PURE__ */ jsxs(Dialog$1.Portal, {
11946
- container,
12012
+ container: container ?? portalContainer,
11947
12013
  children: [/* @__PURE__ */ jsx(Dialog$1.Backdrop, { className: s.backdrop() }), /* @__PURE__ */ jsxs(Dialog$1.Popup, {
11948
12014
  className: s.popup(),
11949
12015
  onKeyDown,
@@ -12638,6 +12704,7 @@ function TopLink({ item, currentHref, onNavigate }) {
12638
12704
  * marked. Pair it with StackedLayout (as its sub-nav row) and `megaMenuNavItems` for MobileNav.
12639
12705
  */
12640
12706
  function MegaMenu({ items, label: labelProp, currentHref, onNavigate, className }) {
12707
+ const portalContainer = usePortalContainer();
12641
12708
  const { t } = useI18n();
12642
12709
  const label = labelProp === void 0 ? t("megaMenu.label") : labelProp;
12643
12710
  return /* @__PURE__ */ jsxs(NavigationMenu.Root, {
@@ -12667,17 +12734,20 @@ function MegaMenu({ items, label: labelProp, currentHref, onNavigate, className
12667
12734
  onNavigate
12668
12735
  })
12669
12736
  }, item.id ?? item.label))
12670
- }), /* @__PURE__ */ jsx(NavigationMenu.Portal, { children: /* @__PURE__ */ jsx(NavigationMenu.Positioner, {
12671
- className: s$10.positioner(),
12672
- sideOffset: 8,
12673
- align: "start",
12674
- collisionPadding: 16,
12675
- collisionAvoidance: { side: "none" },
12676
- children: /* @__PURE__ */ jsx(NavigationMenu.Popup, {
12677
- className: s$10.popup(),
12678
- children: /* @__PURE__ */ jsx(NavigationMenu.Viewport, { className: s$10.viewport() })
12737
+ }), /* @__PURE__ */ jsx(NavigationMenu.Portal, {
12738
+ container: portalContainer,
12739
+ children: /* @__PURE__ */ jsx(NavigationMenu.Positioner, {
12740
+ className: s$10.positioner(),
12741
+ sideOffset: 8,
12742
+ align: "start",
12743
+ collisionPadding: 16,
12744
+ collisionAvoidance: { side: "none" },
12745
+ children: /* @__PURE__ */ jsx(NavigationMenu.Popup, {
12746
+ className: s$10.popup(),
12747
+ children: /* @__PURE__ */ jsx(NavigationMenu.Viewport, { className: s$10.viewport() })
12748
+ })
12679
12749
  })
12680
- }) })]
12750
+ })]
12681
12751
  });
12682
12752
  }
12683
12753
  //#endregion
@@ -12722,9 +12792,10 @@ const MenuRadioGroup = Menu$2.RadioGroup;
12722
12792
  const MenuSub = Menu$2.SubmenuRoot;
12723
12793
  /** The floating list (role `menu`): portal, positioner and popup. */
12724
12794
  function MenuContent({ side, align = "start", sideOffset = 8, alignOffset, className, container, children, ...props }) {
12795
+ const portalContainer = usePortalContainer();
12725
12796
  const dir = usePortalDir();
12726
12797
  return /* @__PURE__ */ jsx(Menu$2.Portal, {
12727
- container,
12798
+ container: container ?? portalContainer,
12728
12799
  children: /* @__PURE__ */ jsx(Menu$2.Positioner, {
12729
12800
  dir,
12730
12801
  className: s$9.positioner(),
@@ -13502,6 +13573,7 @@ const matches = (o, q, locale) => o === SELECT_ALL ? q.trim() === "" : matchText
13502
13573
  * (extra ones collapse into "+N"), an optional "Select all" row and a clear button.
13503
13574
  */
13504
13575
  function MultiSelect({ options, value, defaultValue, onValueChange, label, placeholder: placeholderProp, maxVisibleChips = 3, showSelectAll = true, selectAllLabel: selectAllLabelProp, deselectAllLabel: deselectAllLabelProp, clearLabel: clearLabelProp, triggerLabel: triggerLabelProp, emptyText: emptyTextProp, removeLabel: removeLabelProp, renderOption, name, id, disabled, invalid, size = "md", className, ref, "aria-label": ariaLabel, "aria-describedby": ariaDescribedBy, loadOptions, debounceMs, onCreate, createLabel, loadingText, errorText, virtualized = false, itemHeight, estimatedItemHeight, overscan }) {
13576
+ const portalContainer = usePortalContainer();
13505
13577
  const { t, locale } = useI18n();
13506
13578
  const placeholder = placeholderProp ?? t("common.searchPlaceholder");
13507
13579
  const selectAllLabel = selectAllLabelProp ?? t("common.selectAll");
@@ -13667,76 +13739,79 @@ function MultiSelect({ options, value, defaultValue, onValueChange, label, place
13667
13739
  })
13668
13740
  ]
13669
13741
  }),
13670
- /* @__PURE__ */ jsx(Combobox$1.Portal, { children: /* @__PURE__ */ jsx(Combobox$1.Positioner, {
13671
- dir,
13672
- className: cb.positioner(),
13673
- side: "bottom",
13674
- align: "start",
13675
- sideOffset: 6,
13676
- children: /* @__PURE__ */ jsxs(Combobox$1.Popup, {
13677
- className: cn(cb.popup(), virtualized && "flex flex-col overflow-hidden"),
13678
- children: [
13679
- (loadOptions || onCreate) && /* @__PURE__ */ jsx(Combobox$1.Status, {
13680
- className: cn(cb.status(), !!remote.error && !remote.loading && cb.statusError()),
13681
- children: remote.loading ? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(Spinner, { size: 13 }), loadingText ?? t("common.loading")] }) : remote.error ? errorText ?? t("combobox.loadFailed") : null
13682
- }),
13683
- /* @__PURE__ */ jsx(Combobox$1.Empty, {
13684
- className: cb.empty(),
13685
- children: busy ? null : emptyText
13686
- }),
13687
- /* @__PURE__ */ jsx(List, {
13688
- ...virtualized ? {
13689
- itemHeight,
13690
- estimatedItemHeight,
13691
- overscan
13692
- } : { className: cb.list() },
13693
- "aria-busy": remote.loading || void 0,
13694
- children: (o) => isSpecialItem(o) ? /* @__PURE__ */ jsx(ComboboxSpecialItem, {
13695
- item: o,
13696
- createLabel
13697
- }, `${o.__gntikSpecial}:${o.value}`) : o === SELECT_ALL ? /* @__PURE__ */ jsxs(Combobox$1.Item, {
13698
- value: o,
13699
- className: cn(cb.item(), s.selectAll()),
13700
- children: [/* @__PURE__ */ jsx("span", {
13701
- className: cb.itemContent(),
13702
- children: allSelected ? deselectAllLabel : selectAllLabel
13703
- }), /* @__PURE__ */ jsx("span", {
13704
- className: s.check(),
13705
- children: allSelected && /* @__PURE__ */ jsx(Check, {
13706
- size: 15,
13707
- strokeWidth: 2.4,
13708
- "aria-hidden": true
13709
- })
13710
- })]
13711
- }, o.value) : /* @__PURE__ */ jsxs(Combobox$1.Item, {
13712
- value: o,
13713
- disabled: o.disabled,
13714
- className: cb.item(),
13715
- children: [/* @__PURE__ */ jsx("span", {
13716
- className: cb.itemContent(),
13717
- children: renderOption ? renderOption(o) : /* @__PURE__ */ jsxs("span", {
13718
- className: "min-w-0",
13719
- children: [/* @__PURE__ */ jsx("span", {
13720
- className: "block truncate",
13721
- children: o.label
13722
- }), o.description && /* @__PURE__ */ jsx("span", {
13723
- className: s.description(),
13724
- children: o.description
13725
- })]
13726
- })
13727
- }), /* @__PURE__ */ jsx(Combobox$1.ItemIndicator, {
13728
- className: cb.indicator(),
13729
- children: /* @__PURE__ */ jsx(Check, {
13730
- size: 15,
13731
- strokeWidth: 2.4,
13732
- "aria-hidden": true
13733
- })
13734
- })]
13735
- }, o.value)
13736
- })
13737
- ]
13742
+ /* @__PURE__ */ jsx(Combobox$1.Portal, {
13743
+ container: portalContainer,
13744
+ children: /* @__PURE__ */ jsx(Combobox$1.Positioner, {
13745
+ dir,
13746
+ className: cb.positioner(),
13747
+ side: "bottom",
13748
+ align: "start",
13749
+ sideOffset: 6,
13750
+ children: /* @__PURE__ */ jsxs(Combobox$1.Popup, {
13751
+ className: cn(cb.popup(), virtualized && "flex flex-col overflow-hidden"),
13752
+ children: [
13753
+ (loadOptions || onCreate) && /* @__PURE__ */ jsx(Combobox$1.Status, {
13754
+ className: cn(cb.status(), !!remote.error && !remote.loading && cb.statusError()),
13755
+ children: remote.loading ? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(Spinner, { size: 13 }), loadingText ?? t("common.loading")] }) : remote.error ? errorText ?? t("combobox.loadFailed") : null
13756
+ }),
13757
+ /* @__PURE__ */ jsx(Combobox$1.Empty, {
13758
+ className: cb.empty(),
13759
+ children: busy ? null : emptyText
13760
+ }),
13761
+ /* @__PURE__ */ jsx(List, {
13762
+ ...virtualized ? {
13763
+ itemHeight,
13764
+ estimatedItemHeight,
13765
+ overscan
13766
+ } : { className: cb.list() },
13767
+ "aria-busy": remote.loading || void 0,
13768
+ children: (o) => isSpecialItem(o) ? /* @__PURE__ */ jsx(ComboboxSpecialItem, {
13769
+ item: o,
13770
+ createLabel
13771
+ }, `${o.__gntikSpecial}:${o.value}`) : o === SELECT_ALL ? /* @__PURE__ */ jsxs(Combobox$1.Item, {
13772
+ value: o,
13773
+ className: cn(cb.item(), s.selectAll()),
13774
+ children: [/* @__PURE__ */ jsx("span", {
13775
+ className: cb.itemContent(),
13776
+ children: allSelected ? deselectAllLabel : selectAllLabel
13777
+ }), /* @__PURE__ */ jsx("span", {
13778
+ className: s.check(),
13779
+ children: allSelected && /* @__PURE__ */ jsx(Check, {
13780
+ size: 15,
13781
+ strokeWidth: 2.4,
13782
+ "aria-hidden": true
13783
+ })
13784
+ })]
13785
+ }, o.value) : /* @__PURE__ */ jsxs(Combobox$1.Item, {
13786
+ value: o,
13787
+ disabled: o.disabled,
13788
+ className: cb.item(),
13789
+ children: [/* @__PURE__ */ jsx("span", {
13790
+ className: cb.itemContent(),
13791
+ children: renderOption ? renderOption(o) : /* @__PURE__ */ jsxs("span", {
13792
+ className: "min-w-0",
13793
+ children: [/* @__PURE__ */ jsx("span", {
13794
+ className: "block truncate",
13795
+ children: o.label
13796
+ }), o.description && /* @__PURE__ */ jsx("span", {
13797
+ className: s.description(),
13798
+ children: o.description
13799
+ })]
13800
+ })
13801
+ }), /* @__PURE__ */ jsx(Combobox$1.ItemIndicator, {
13802
+ className: cb.indicator(),
13803
+ children: /* @__PURE__ */ jsx(Check, {
13804
+ size: 15,
13805
+ strokeWidth: 2.4,
13806
+ "aria-hidden": true
13807
+ })
13808
+ })]
13809
+ }, o.value)
13810
+ })
13811
+ ]
13812
+ })
13738
13813
  })
13739
- }) })
13814
+ })
13740
13815
  ]
13741
13816
  });
13742
13817
  }
@@ -15196,6 +15271,7 @@ const TYPED = /^([\w.-]+)\s*(!=|>=|<=|!~|=|~|:|>|<)(.*)$/s;
15196
15271
  * terms. Emits a typed query AST (`{ type: 'and', terms }`); see `matchPowerSearch`.
15197
15272
  */
15198
15273
  function PowerSearch({ fields, value, defaultValue, onValueChange, onSubmit, allowFreeText = true, placeholder = "Filter by field or search…", name, disabled, labels: labelsProp, operatorLabels: opLabelsProp, className, "aria-label": ariaLabel }) {
15274
+ const portalContainer = usePortalContainer();
15199
15275
  const { locale } = useI18n();
15200
15276
  const labels = {
15201
15277
  ...defaultLabels,
@@ -15498,43 +15574,46 @@ function PowerSearch({ fields, value, defaultValue, onValueChange, onSubmit, all
15498
15574
  placeholder: query.terms.length || field ? void 0 : placeholder,
15499
15575
  className: s.input(),
15500
15576
  onKeyDown
15501
- }), /* @__PURE__ */ jsx(Combobox$1.Portal, { children: /* @__PURE__ */ jsx(Combobox$1.Positioner, {
15502
- className: s.positioner(),
15503
- side: "bottom",
15504
- align: "start",
15505
- sideOffset: 8,
15506
- anchor: rootRef,
15507
- children: /* @__PURE__ */ jsxs(Combobox$1.Popup, {
15508
- className: s.popup(),
15509
- children: [/* @__PURE__ */ jsx(Combobox$1.Empty, {
15510
- className: s.empty(),
15511
- children: stage === "value" ? labels.typeValue : null
15512
- }), /* @__PURE__ */ jsx(Combobox$1.List, {
15513
- className: "outline-none data-empty:hidden",
15514
- children: (item) => /* @__PURE__ */ jsx(Combobox$1.Item, {
15515
- value: item,
15516
- className: s.item(),
15517
- children: /* @__PURE__ */ jsxs("span", {
15518
- className: s.itemMain(),
15519
- children: [
15520
- item.code && /* @__PURE__ */ jsx("span", {
15521
- className: s.itemCode(),
15522
- children: item.code
15523
- }),
15524
- /* @__PURE__ */ jsx("span", {
15525
- className: "truncate",
15526
- children: item.label
15527
- }),
15528
- item.hint && /* @__PURE__ */ jsx("span", {
15529
- className: s.itemHint(),
15530
- children: item.hint
15531
- })
15532
- ]
15533
- })
15534
- }, item.id)
15535
- })]
15577
+ }), /* @__PURE__ */ jsx(Combobox$1.Portal, {
15578
+ container: portalContainer,
15579
+ children: /* @__PURE__ */ jsx(Combobox$1.Positioner, {
15580
+ className: s.positioner(),
15581
+ side: "bottom",
15582
+ align: "start",
15583
+ sideOffset: 8,
15584
+ anchor: rootRef,
15585
+ children: /* @__PURE__ */ jsxs(Combobox$1.Popup, {
15586
+ className: s.popup(),
15587
+ children: [/* @__PURE__ */ jsx(Combobox$1.Empty, {
15588
+ className: s.empty(),
15589
+ children: stage === "value" ? labels.typeValue : null
15590
+ }), /* @__PURE__ */ jsx(Combobox$1.List, {
15591
+ className: "outline-none data-empty:hidden",
15592
+ children: (item) => /* @__PURE__ */ jsx(Combobox$1.Item, {
15593
+ value: item,
15594
+ className: s.item(),
15595
+ children: /* @__PURE__ */ jsxs("span", {
15596
+ className: s.itemMain(),
15597
+ children: [
15598
+ item.code && /* @__PURE__ */ jsx("span", {
15599
+ className: s.itemCode(),
15600
+ children: item.code
15601
+ }),
15602
+ /* @__PURE__ */ jsx("span", {
15603
+ className: "truncate",
15604
+ children: item.label
15605
+ }),
15606
+ item.hint && /* @__PURE__ */ jsx("span", {
15607
+ className: s.itemHint(),
15608
+ children: item.hint
15609
+ })
15610
+ ]
15611
+ })
15612
+ }, item.id)
15613
+ })]
15614
+ })
15536
15615
  })
15537
- }) })]
15616
+ })]
15538
15617
  }),
15539
15618
  query.terms.length > 0 && /* @__PURE__ */ jsx("button", {
15540
15619
  type: "button",
@@ -21197,13 +21276,14 @@ function useToast() {
21197
21276
  * hovering or focusing it pauses auto-dismiss.
21198
21277
  */
21199
21278
  function Toaster({ className, closeLabel: closeLabelProp, container }) {
21279
+ const portalContainer = usePortalContainer();
21200
21280
  const { t } = useI18n();
21201
21281
  const closeLabel = closeLabelProp ?? t("toast.dismiss");
21202
21282
  const dir = usePortalDir();
21203
21283
  const { toasts } = Toast.useToastManager();
21204
21284
  const s = toastVariants();
21205
21285
  return /* @__PURE__ */ jsx(Toast.Portal, {
21206
- container,
21286
+ container: container ?? portalContainer,
21207
21287
  children: /* @__PURE__ */ jsx(Toast.Viewport, {
21208
21288
  dir,
21209
21289
  className: cn(s.viewport(), className),
@@ -21912,6 +21992,7 @@ const centre = { getBoundingClientRect: () => {
21912
21992
  * outline (no overlay).
21913
21993
  */
21914
21994
  function Tour({ steps, open, defaultOpen = false, onOpenChange, step, defaultStep = 0, onStepChange, onFinish, highlight = true, labels: labelsProp, className }) {
21995
+ const portalContainer = usePortalContainer();
21915
21996
  const { t } = useI18n();
21916
21997
  const labels = {
21917
21998
  skip: t("tour.skip"),
@@ -21995,69 +22076,72 @@ function Tour({ steps, open, defaultOpen = false, onOpenChange, step, defaultSte
21995
22076
  if (details.reason === "outside-press" || details.reason === "focus-out") return;
21996
22077
  end(false);
21997
22078
  },
21998
- children: /* @__PURE__ */ jsx(Popover$1.Portal, { children: /* @__PURE__ */ jsx(Popover$1.Positioner, {
21999
- className: s.positioner(),
22000
- anchor: () => resolve(target) ?? centre,
22001
- side: current?.side ?? "bottom",
22002
- align: current?.align ?? "center",
22003
- sideOffset: 14,
22004
- collisionPadding: 12,
22005
- children: /* @__PURE__ */ jsxs(Popover$1.Popup, {
22006
- className: cn(s.popup(), className),
22007
- initialFocus: primaryRef,
22008
- onKeyDown,
22009
- children: [
22010
- /* @__PURE__ */ jsx(Popover$1.Arrow, { className: s.arrow() }),
22011
- /* @__PURE__ */ jsx("p", {
22012
- className: s.counter(),
22013
- children: labels.counter(index, steps.length)
22014
- }),
22015
- /* @__PURE__ */ jsx(Popover$1.Title, {
22016
- className: s.title(),
22017
- children: current?.title
22018
- }),
22019
- current?.content != null && /* @__PURE__ */ jsx(Popover$1.Description, {
22020
- className: s.description(),
22021
- children: current.content
22022
- }),
22023
- /* @__PURE__ */ jsx("button", {
22024
- type: "button",
22025
- "aria-label": labels.close,
22026
- className: s.close(),
22027
- onClick: () => end(false),
22028
- children: /* @__PURE__ */ jsx(X, {
22029
- size: 14,
22030
- "aria-hidden": true
22031
- })
22032
- }),
22033
- /* @__PURE__ */ jsxs("div", {
22034
- className: s.footer(),
22035
- children: [
22036
- !last && /* @__PURE__ */ jsx(Button, {
22037
- size: "sm",
22038
- variant: "ghost",
22039
- className: s.skip(),
22040
- onClick: () => end(false),
22041
- children: labels.skip
22042
- }),
22043
- last && /* @__PURE__ */ jsx("span", { className: s.skip() }),
22044
- index > 0 && /* @__PURE__ */ jsx(Button, {
22045
- size: "sm",
22046
- variant: "secondary",
22047
- onClick: () => goTo(index - 1),
22048
- children: labels.back
22049
- }),
22050
- /* @__PURE__ */ jsx(Button, {
22051
- ref: primaryRef,
22052
- size: "sm",
22053
- onClick: () => last ? end(true) : goTo(index + 1),
22054
- children: last ? labels.finish : labels.next
22079
+ children: /* @__PURE__ */ jsx(Popover$1.Portal, {
22080
+ container: portalContainer,
22081
+ children: /* @__PURE__ */ jsx(Popover$1.Positioner, {
22082
+ className: s.positioner(),
22083
+ anchor: () => resolve(target) ?? centre,
22084
+ side: current?.side ?? "bottom",
22085
+ align: current?.align ?? "center",
22086
+ sideOffset: 14,
22087
+ collisionPadding: 12,
22088
+ children: /* @__PURE__ */ jsxs(Popover$1.Popup, {
22089
+ className: cn(s.popup(), className),
22090
+ initialFocus: primaryRef,
22091
+ onKeyDown,
22092
+ children: [
22093
+ /* @__PURE__ */ jsx(Popover$1.Arrow, { className: s.arrow() }),
22094
+ /* @__PURE__ */ jsx("p", {
22095
+ className: s.counter(),
22096
+ children: labels.counter(index, steps.length)
22097
+ }),
22098
+ /* @__PURE__ */ jsx(Popover$1.Title, {
22099
+ className: s.title(),
22100
+ children: current?.title
22101
+ }),
22102
+ current?.content != null && /* @__PURE__ */ jsx(Popover$1.Description, {
22103
+ className: s.description(),
22104
+ children: current.content
22105
+ }),
22106
+ /* @__PURE__ */ jsx("button", {
22107
+ type: "button",
22108
+ "aria-label": labels.close,
22109
+ className: s.close(),
22110
+ onClick: () => end(false),
22111
+ children: /* @__PURE__ */ jsx(X, {
22112
+ size: 14,
22113
+ "aria-hidden": true
22055
22114
  })
22056
- ]
22057
- })
22058
- ]
22115
+ }),
22116
+ /* @__PURE__ */ jsxs("div", {
22117
+ className: s.footer(),
22118
+ children: [
22119
+ !last && /* @__PURE__ */ jsx(Button, {
22120
+ size: "sm",
22121
+ variant: "ghost",
22122
+ className: s.skip(),
22123
+ onClick: () => end(false),
22124
+ children: labels.skip
22125
+ }),
22126
+ last && /* @__PURE__ */ jsx("span", { className: s.skip() }),
22127
+ index > 0 && /* @__PURE__ */ jsx(Button, {
22128
+ size: "sm",
22129
+ variant: "secondary",
22130
+ onClick: () => goTo(index - 1),
22131
+ children: labels.back
22132
+ }),
22133
+ /* @__PURE__ */ jsx(Button, {
22134
+ ref: primaryRef,
22135
+ size: "sm",
22136
+ onClick: () => last ? end(true) : goTo(index + 1),
22137
+ children: last ? labels.finish : labels.next
22138
+ })
22139
+ ]
22140
+ })
22141
+ ]
22142
+ })
22059
22143
  })
22060
- }) })
22144
+ })
22061
22145
  }), isOpen && highlight && typeof document !== "undefined" && createPortal(/* @__PURE__ */ jsx("div", {
22062
22146
  ref: ringRef,
22063
22147
  "aria-hidden": true,
@@ -23079,6 +23163,7 @@ const CREATE_ID = "__create-workspace__";
23079
23163
  const s$1 = workspaceSwitcherVariants();
23080
23164
  /** Searchable variant of WorkspaceSwitcher: a combobox with the input inside its popup. */
23081
23165
  function WorkspaceSearch({ className, workspaces, current, onSelect, onCreate, createLabel, label, searchPlaceholder: searchPlaceholderProp, emptyText: emptyTextProp }) {
23166
+ const portalContainer = usePortalContainer();
23082
23167
  const { t, locale } = useI18n();
23083
23168
  const searchPlaceholder = searchPlaceholderProp ?? t("workspace.search");
23084
23169
  const emptyText = emptyTextProp ?? t("workspace.empty");
@@ -23108,67 +23193,70 @@ function WorkspaceSearch({ className, workspaces, current, onSelect, onCreate, c
23108
23193
  "aria-label": triggerLabel(current, label),
23109
23194
  className: cn(s$1.trigger(), className),
23110
23195
  children: /* @__PURE__ */ jsx(WorkspaceTriggerContent, { workspace: current })
23111
- }), /* @__PURE__ */ jsx(Combobox$1.Portal, { children: /* @__PURE__ */ jsx(Combobox$1.Positioner, {
23112
- dir,
23113
- className: "z-50 outline-none",
23114
- align: "start",
23115
- sideOffset: 8,
23116
- children: /* @__PURE__ */ jsxs(Combobox$1.Popup, {
23117
- className: s$1.searchPopup(),
23118
- "aria-label": label,
23119
- children: [
23120
- /* @__PURE__ */ jsxs("div", {
23121
- className: s$1.searchField(),
23122
- children: [/* @__PURE__ */ jsx(Search, {
23123
- size: 15,
23124
- "aria-hidden": true,
23125
- className: s$1.searchIcon()
23126
- }), /* @__PURE__ */ jsx(Combobox$1.Input, {
23127
- "aria-label": searchPlaceholder.replace(/…$/, ""),
23128
- placeholder: searchPlaceholder,
23129
- className: s$1.searchInput()
23130
- })]
23131
- }),
23132
- /* @__PURE__ */ jsx(Combobox$1.Empty, {
23133
- className: s$1.searchEmpty(),
23134
- children: emptyText
23135
- }),
23136
- /* @__PURE__ */ jsx(Combobox$1.List, {
23137
- className: s$1.searchList(),
23138
- children: (w) => w.id === CREATE_ID ? /* @__PURE__ */ jsx(Combobox$1.Item, {
23139
- value: w,
23140
- className: s$1.searchItem(),
23141
- children: /* @__PURE__ */ jsxs("span", {
23142
- className: s$1.optionBody(),
23143
- children: [/* @__PURE__ */ jsx("span", {
23144
- className: s$1.createIcon(),
23145
- children: /* @__PURE__ */ jsx(Plus, {
23196
+ }), /* @__PURE__ */ jsx(Combobox$1.Portal, {
23197
+ container: portalContainer,
23198
+ children: /* @__PURE__ */ jsx(Combobox$1.Positioner, {
23199
+ dir,
23200
+ className: "z-50 outline-none",
23201
+ align: "start",
23202
+ sideOffset: 8,
23203
+ children: /* @__PURE__ */ jsxs(Combobox$1.Popup, {
23204
+ className: s$1.searchPopup(),
23205
+ "aria-label": label,
23206
+ children: [
23207
+ /* @__PURE__ */ jsxs("div", {
23208
+ className: s$1.searchField(),
23209
+ children: [/* @__PURE__ */ jsx(Search, {
23210
+ size: 15,
23211
+ "aria-hidden": true,
23212
+ className: s$1.searchIcon()
23213
+ }), /* @__PURE__ */ jsx(Combobox$1.Input, {
23214
+ "aria-label": searchPlaceholder.replace(/…$/, ""),
23215
+ placeholder: searchPlaceholder,
23216
+ className: s$1.searchInput()
23217
+ })]
23218
+ }),
23219
+ /* @__PURE__ */ jsx(Combobox$1.Empty, {
23220
+ className: s$1.searchEmpty(),
23221
+ children: emptyText
23222
+ }),
23223
+ /* @__PURE__ */ jsx(Combobox$1.List, {
23224
+ className: s$1.searchList(),
23225
+ children: (w) => w.id === CREATE_ID ? /* @__PURE__ */ jsx(Combobox$1.Item, {
23226
+ value: w,
23227
+ className: s$1.searchItem(),
23228
+ children: /* @__PURE__ */ jsxs("span", {
23229
+ className: s$1.optionBody(),
23230
+ children: [/* @__PURE__ */ jsx("span", {
23231
+ className: s$1.createIcon(),
23232
+ children: /* @__PURE__ */ jsx(Plus, {
23233
+ size: 15,
23234
+ "aria-hidden": true
23235
+ })
23236
+ }), /* @__PURE__ */ jsx("span", {
23237
+ className: s$1.optionName(),
23238
+ children: w.name
23239
+ })]
23240
+ })
23241
+ }, w.id) : /* @__PURE__ */ jsxs(Combobox$1.Item, {
23242
+ value: w,
23243
+ className: s$1.searchItem(),
23244
+ children: [/* @__PURE__ */ jsx(WorkspaceOptionBody, {
23245
+ workspace: w,
23246
+ current: w.id === current?.id
23247
+ }), /* @__PURE__ */ jsx(Combobox$1.ItemIndicator, {
23248
+ className: s$1.searchIndicator(),
23249
+ children: /* @__PURE__ */ jsx(Check, {
23146
23250
  size: 15,
23147
23251
  "aria-hidden": true
23148
23252
  })
23149
- }), /* @__PURE__ */ jsx("span", {
23150
- className: s$1.optionName(),
23151
- children: w.name
23152
23253
  })]
23153
- })
23154
- }, w.id) : /* @__PURE__ */ jsxs(Combobox$1.Item, {
23155
- value: w,
23156
- className: s$1.searchItem(),
23157
- children: [/* @__PURE__ */ jsx(WorkspaceOptionBody, {
23158
- workspace: w,
23159
- current: w.id === current?.id
23160
- }), /* @__PURE__ */ jsx(Combobox$1.ItemIndicator, {
23161
- className: s$1.searchIndicator(),
23162
- children: /* @__PURE__ */ jsx(Check, {
23163
- size: 15,
23164
- "aria-hidden": true
23165
- })
23166
- })]
23167
- }, w.id)
23168
- })
23169
- ]
23254
+ }, w.id)
23255
+ })
23256
+ ]
23257
+ })
23170
23258
  })
23171
- }) })]
23259
+ })]
23172
23260
  });
23173
23261
  }
23174
23262
  //#endregion
@@ -25850,6 +25938,6 @@ const doc$59 = {
25850
25938
  ]
25851
25939
  };
25852
25940
  //#endregion
25853
- export { ANSI_BG_CLASS, ANSI_TEXT_CLASS, Accordion, AccordionItem, AccordionPanel, AccordionTrigger, Alert, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger, AspectRatio, AuthLayout, Avatar, AvatarGroup, Badge, Blockquote, BottomSheet, BottomSheetClose, BottomSheetContent, BottomSheetTrigger, Breadcrumbs, Button, COL_SPAN, COL_SPAN_FULL, Calendar, CanvasLayout, Card, CardAction, CardBody, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, Center, Checkbox, CheckboxGroup, ClickableCard, Code, CodeBlock, Collapsible, CollapsiblePanel, CollapsibleTrigger, Combobox, ComboboxChipsInput, ComboboxContent, ComboboxInput, ComboboxItem, CommandPalette, CommandPaletteTrigger, ContextMenu, ContextMenuContent, ContextMenuTrigger, CopyButton, CursorPagination, DEFAULT_DATE_RANGE_PRESETS, DEFAULT_STATUSES, DEFAULT_STRENGTH_LABELS, DEFAULT_TIME_RANGE_PRESETS, DateField, DatePicker, DateRangeField, DateRangeInput, DateRangePicker, DateTimeRangePicker, DensityProvider, Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, DiffViewer, DocsLayout, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, EMPTY_STATE_ICON_SIZE, ENV_KEY_PATTERN, EmptyState, Field, FieldDescription, FieldError, FieldItem, FieldLabel, Fieldset, FieldsetDescription, FieldsetLegend, GAP_CLASSES, GRID_COLS, Grid, GridItem, HStack, Heading, HoverCard, HoverCardContent, HoverCardTrigger, I18nProvider, INPUT_ICON_SIZE, IconButton, InfoTip, Input, InputKbd, InspectorLayout, InspectorToggle, JsonViewer, KEY_NAMES, KanbanBoard, Kbd, KbdCombo, KeyValueEditor, Lightbox, Link, LinkProvider, ListInput, LiveAnnouncer, Logo, MASK_CHAR, MegaMenu, Menu, MenuCheckboxItem, MenuContent, MenuGroup, MenuGroupLabel, MenuItem, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuSub, MenuSubContent, MenuSubTrigger, MenuTrigger, Meter, MobileNav, MoreMenu, MultiSelect, NUMBER_INPUT_ICON_SIZE, NavList, NotificationsPopover, NumberInput, OtpInput, Outline, OverflowList, PASSWORD_SEGMENT_FILL, POWER_SEARCH_OPERATORS, Page, PageBreak, Pagination, PaginationCompact, PasswordInput, PeriodCalendar, PeriodPicker, PermissionMatrix, Popover, PopoverClose, PopoverContent, PopoverDescription, PopoverTitle, PopoverTrigger, PowerSearch, PowerSearchChip, PrintLayout, Progress, QUERY_OPERATORS, QueryBuilder, QueryValueEditor, Radio, RadioGroup, ResizablePanel, ResizablePanelGroup, ResizeHandle, ScheduleInput, ScrollArea, SecretField, Section, Select, SelectContent, SelectGroup, SelectGroupLabel, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectableCard, SelectableCardGroup, Separator, SettingsLayout, SidebarLayout, SimpleSelect, SimpleTooltip, Skeleton, SkipLink, Slider, Sparkline, Spinner, SplitButton, SplitLayout, Stack, StackedLayout, StatusDot, StatusLayout, StatusTag, Stepper, Switch, THEME_OPTIONS, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsIndicator, TabsList, TabsPanel, TabsTab, Terminal, Text, Textarea, ThemeCycleButton, ThemeProvider, ThemeSwitcher, Thumbnail, ThumbnailList, TimePicker, Timer, Timestamp, ToastProvider, Toaster, Toggle, ToggleGroup, Token, TokenInput, TokenInputChip, Toolbar, ToolbarButton, ToolbarCenter, ToolbarEnd, ToolbarGroup, ToolbarInput, ToolbarLink, ToolbarSeparator, ToolbarStart, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, Tour, TransferList, TransferListPane, TreeList, UserMenu, VStack, VirtualList, VisuallyHidden, WizardLayout, WorkspaceSwitcher, doc as accordionDoc, accordionVariants, doc$1 as alertDialogDoc, alertDialogVariants, doc$2 as alertDoc, alertVariants, ansiClassName, doc$3 as aspectRatioDoc, aspectRatioVariants, doc$4 as authLayoutDoc, authLayoutVariants, doc$5 as avatarDoc, avatarVariants, doc$6 as badgeDoc, badgeVariants, doc$7 as blockquoteDoc, blockquoteVariants, doc$8 as bottomSheetDoc, bottomSheetVariants, doc$9 as breadcrumbsDoc, breadcrumbsVariants, builtInMessages, doc$10 as buttonDoc, buttonVariants, doc$11 as calendarDoc, calendarVariants, doc$12 as canvasLayoutDoc, canvasLayoutVariants, doc$13 as cardDoc, cardVariants, doc$14 as carouselDoc, carouselVariants, catalogs, centerVariants, doc$15 as checkboxDoc, checkboxVariants, doc$16 as choiceCardDoc, clickableCardVariants, cn, doc$17 as codeBlockDoc, codeBlockVariants, codeVariants, coerceValue as coercePowerSearchValue, doc$18 as collapsibleDoc, collapsibleVariants, doc$19 as comboboxDoc, comboboxVariants, doc$20 as commandPaletteDoc, commandPaletteVariants, computeOffsets, doc$21 as contextMenuDoc, contextMenuVariants, doc$22 as copyButtonDoc, copyButtonVariants, copyToClipboard, createFormatters, createKeyValueRow, createListInputRow, createQueryCondition, createQueryGroup, cronErrorMessage, cronFromSchedule, doc$23 as cursorPaginationDoc, cursorPaginationVariants, doc$24 as dateFieldDoc, dateFieldVariants, doc$25 as datePickerDoc, datePickerVariants, doc$26 as dateTimeRangePickerDoc, dateTimeRangePickerVariants, describeCron, describeTrend, doc$27 as dialogDoc, dialogVariants, diffJson, diffLines, diffStats, doc$28 as diffViewerDoc, diffViewerVariants, diffWords, doc$29 as docsLayoutDoc, docsLayoutVariants, doc$30 as drawerDoc, drawerVariants, emptyPowerSearchQuery, doc$31 as emptyStateDoc, emptyStateVariants, en, es, evaluateQuery, falconePreset, doc$32 as fieldDoc, fieldVariants, fileKind, filterCommandGroups, flattenVisible, foldText, formatBytes, formatClock, formatCompact, formatDateRange, formatListInputPairs, formatPowerSearch, formatRelative, formatTimeOfDay, getDefaultPeriodPresets, getInitials, getMeterLevel, getOs, getPageRange, gntikPreset, doc$33 as gridDoc, gridVariants, headingVariants, doc$34 as hoverCardDoc, hoverCardVariants, doc$35 as infoTipDoc, infoTipVariants, doc$36 as inputDoc, inputVariants, doc$37 as inspectorLayoutDoc, inspectorLayoutVariants, interpolate, isConditionComplete, isConditionValid, isNavItemCurrent, isSameTimeRange, isSupportedLanguage, joinPath, jsonType, jsonTypeClass, doc$38 as jsonViewerDoc, jsonViewerVariants, doc$39 as kanbanBoardDoc, kanbanBoardVariants, doc$40 as kbdDoc, kbdVariants, doc$41 as keyValueEditorDoc, keyValueEditorVariants, doc$42 as lightboxDoc, lightboxVariants, doc$43 as linkDoc, linkVariants, doc$44 as listInputDoc, listInputVariants, doc$45 as liveAnnouncerDoc, liveAnnouncerVariants, localeDirection, localeHourCycle, localeWeekStart, maskSecret, matchAncestors, matchPowerSearch, matchRanges, matchText, measureJsonDisplay, doc$46 as megaMenuDoc, megaMenuNavItems, megaMenuVariants, doc$47 as menuDoc, menuVariants, mergeEnvRows, doc$48 as meterDoc, meterVariants, doc$49 as mobileNavDoc, mobileNavVariants, moveKanbanCard, doc$50 as multiSelectDoc, multiSelectVariants, musematicPreset, doc$51 as navListDoc, navListVariants, nextRuns, nextSortDirection, doc$52 as notificationsPopoverDoc, notificationsPopoverVariants, doc$53 as numberInputDoc, numberInputVariants, operatorArity, operatorsFor, doc$54 as otpInputDoc, otpInputVariants, outlineVariants, doc$55 as overflowListDoc, overflowListVariants, doc$56 as pageDoc, pageVariants, doc$57 as paginationDoc, paginationVariants, parseAnsi, parseCron, parseEnv, parseListInputPairs, parsePowerSearch, parsePowerSearchFilter, parseTimeOfDay, doc$58 as passwordInputDoc, passwordInputVariants, doc$59 as periodPickerDoc, periodPickerVariants, doc$60 as permissionMatrixDoc, permissionMatrixVariants, doc$61 as popoverDoc, popoverVariants, doc$62 as powerSearchDoc, defaultOperatorLabels as powerSearchOperatorLabels, operatorsFor$1 as powerSearchOperatorsFor, powerSearchVariants, presets, previewSortable, doc$63 as printLayoutDoc, printLayoutVariants, doc$64 as progressDoc, progressVariants, doc$65 as queryBuilderDoc, queryBuilderVariants, queryToString, doc$66 as radioGroupDoc, radioGroupVariants, relativeTimeRangeLabel, doc$67 as resizableDoc, resizableVariants, resolveStepStatus, resolveTimeRange, rowAt, scheduleFromCron, doc$68 as scheduleInputDoc, scheduleInputVariants, scoreCommand, scorePassword, doc$69 as scrollAreaDoc, scrollAreaVariants, doc$70 as secretFieldDoc, secretFieldVariants, doc$71 as sectionDoc, sectionVariants, doc$72 as selectDoc, selectVariants, selectableCardVariants, doc$73 as separatorDoc, separatorVariants, serializeEnv, doc$74 as settingsLayoutDoc, settingsLayoutVariants, doc$75 as sidebarLayoutDoc, sidebarLayoutVariants, doc$76 as skeletonDoc, skeletonVariants, skipLinkVariants, doc$77 as sliderDoc, sliderVariants, doc$78 as sparklineDoc, sparklineVariants, doc$79 as spinnerDoc, doc$80 as splitButtonDoc, splitButtonVariants, doc$81 as splitLayoutDoc, splitLayoutVariants, splitLines, stableStringify, doc$82 as stackDoc, stackVariants, doc$83 as stackedLayoutDoc, stackedLayoutVariants, doc$84 as statusDotDoc, statusDotVariants, doc$85 as statusLayoutDoc, statusLayoutVariants, doc$86 as statusTagDoc, statusTagVariants, doc$87 as stepperDoc, stepperVariants, stripAnsi, doc$88 as switchDoc, switchVariants, doc$89 as tableDoc, tableVariants, doc$90 as tabsDoc, tabsVariants, doc$91 as terminalDoc, terminalVariants, doc$92 as textDoc, textVariants, doc$93 as textareaDoc, textareaVariants, themeScript, doc$94 as themeSwitcherDoc, themeSwitcherVariants, doc$95 as thumbnailDoc, thumbnailVariants, doc$96 as timePickerDoc, timePickerVariants, doc$97 as timerDoc, timerVariants, doc$98 as timestampDoc, timestampVariants, toDate, toIsoDuration, toJsonText, doc$99 as toastDoc, toastVariants, doc$100 as toggleGroupDoc, toggleGroupVariants, toggleVariants, tokenClass, doc$101 as tokenDoc, doc$102 as tokenInputDoc, tokenInputVariants, tokenVariants, tokenize, tokenizeLines, doc$103 as toolbarDoc, toolbarVariants, doc$104 as tooltipDoc, tooltipVariants, doc$105 as tourDoc, tourVariants, doc$106 as transferListDoc, transferListVariants, doc$107 as treeListDoc, treeListVariants, tv, useAnnounce, useAsyncOptions, useCommandPaletteShortcut, useDensity, useFitCount, useHasLiveAnnouncer, useI18n, useInspectorLayout, useLinkComponent, useOptionalI18n, useOs, usePortalDir, useSidebarLayout, useSortable, useTheme, useThemeOptions, useToast, useTreeList, useVirtualWindow, doc$108 as userMenuDoc, userMenuVariants, validateKeyValueRows, doc$109 as virtualListDoc, virtualListVariants, doc$110 as visuallyHiddenDoc, visuallyHiddenVariants, doc$111 as wizardLayoutDoc, wizardLayoutVariants, doc$112 as workspaceSwitcherDoc, workspaceSwitcherVariants };
25941
+ export { ANSI_BG_CLASS, ANSI_TEXT_CLASS, Accordion, AccordionItem, AccordionPanel, AccordionTrigger, Alert, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger, AspectRatio, AuthLayout, Avatar, AvatarGroup, Badge, Blockquote, BottomSheet, BottomSheetClose, BottomSheetContent, BottomSheetTrigger, Breadcrumbs, Button, COL_SPAN, COL_SPAN_FULL, Calendar, CanvasLayout, Card, CardAction, CardBody, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, Center, Checkbox, CheckboxGroup, ClickableCard, Code, CodeBlock, Collapsible, CollapsiblePanel, CollapsibleTrigger, Combobox, ComboboxChipsInput, ComboboxContent, ComboboxInput, ComboboxItem, CommandPalette, CommandPaletteTrigger, ContextMenu, ContextMenuContent, ContextMenuTrigger, CopyButton, CursorPagination, DEFAULT_DATE_RANGE_PRESETS, DEFAULT_STATUSES, DEFAULT_STRENGTH_LABELS, DEFAULT_TIME_RANGE_PRESETS, DateField, DatePicker, DateRangeField, DateRangeInput, DateRangePicker, DateTimeRangePicker, DensityProvider, Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, DiffViewer, DocsLayout, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, EMPTY_STATE_ICON_SIZE, ENV_KEY_PATTERN, EmptyState, Field, FieldDescription, FieldError, FieldItem, FieldLabel, Fieldset, FieldsetDescription, FieldsetLegend, GAP_CLASSES, GRID_COLS, Grid, GridItem, HStack, Heading, HoverCard, HoverCardContent, HoverCardTrigger, I18nProvider, INPUT_ICON_SIZE, IconButton, InfoTip, Input, InputKbd, InspectorLayout, InspectorToggle, JsonViewer, KEY_NAMES, KanbanBoard, Kbd, KbdCombo, KeyValueEditor, Lightbox, Link, LinkProvider, ListInput, LiveAnnouncer, Logo, MASK_CHAR, MegaMenu, Menu, MenuCheckboxItem, MenuContent, MenuGroup, MenuGroupLabel, MenuItem, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuSub, MenuSubContent, MenuSubTrigger, MenuTrigger, Meter, MobileNav, MoreMenu, MultiSelect, NUMBER_INPUT_ICON_SIZE, NavList, NotificationsPopover, NumberInput, OtpInput, Outline, OverflowList, PASSWORD_SEGMENT_FILL, POWER_SEARCH_OPERATORS, Page, PageBreak, Pagination, PaginationCompact, PasswordInput, PeriodCalendar, PeriodPicker, PermissionMatrix, Popover, PopoverClose, PopoverContent, PopoverDescription, PopoverTitle, PopoverTrigger, PowerSearch, PowerSearchChip, PrintLayout, Progress, QUERY_OPERATORS, QueryBuilder, QueryValueEditor, Radio, RadioGroup, ResizablePanel, ResizablePanelGroup, ResizeHandle, ScheduleInput, ScrollArea, SecretField, Section, Select, SelectContent, SelectGroup, SelectGroupLabel, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectableCard, SelectableCardGroup, Separator, SettingsLayout, SidebarLayout, SimpleSelect, SimpleTooltip, Skeleton, SkipLink, Slider, Sparkline, Spinner, SplitButton, SplitLayout, Stack, StackedLayout, StatusDot, StatusLayout, StatusTag, Stepper, Switch, THEME_OPTIONS, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsIndicator, TabsList, TabsPanel, TabsTab, Terminal, Text, Textarea, ThemeCycleButton, ThemeProvider, ThemeScope, ThemeSwitcher, Thumbnail, ThumbnailList, TimePicker, Timer, Timestamp, ToastProvider, Toaster, Toggle, ToggleGroup, Token, TokenInput, TokenInputChip, Toolbar, ToolbarButton, ToolbarCenter, ToolbarEnd, ToolbarGroup, ToolbarInput, ToolbarLink, ToolbarSeparator, ToolbarStart, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, Tour, TransferList, TransferListPane, TreeList, UserMenu, VStack, VirtualList, VisuallyHidden, WizardLayout, WorkspaceSwitcher, doc as accordionDoc, accordionVariants, doc$1 as alertDialogDoc, alertDialogVariants, doc$2 as alertDoc, alertVariants, ansiClassName, doc$3 as aspectRatioDoc, aspectRatioVariants, doc$4 as authLayoutDoc, authLayoutVariants, doc$5 as avatarDoc, avatarVariants, doc$6 as badgeDoc, badgeVariants, doc$7 as blockquoteDoc, blockquoteVariants, doc$8 as bottomSheetDoc, bottomSheetVariants, doc$9 as breadcrumbsDoc, breadcrumbsVariants, builtInMessages, doc$10 as buttonDoc, buttonVariants, doc$11 as calendarDoc, calendarVariants, doc$12 as canvasLayoutDoc, canvasLayoutVariants, doc$13 as cardDoc, cardVariants, doc$14 as carouselDoc, carouselVariants, catalogs, centerVariants, doc$15 as checkboxDoc, checkboxVariants, doc$16 as choiceCardDoc, clickableCardVariants, cn, doc$17 as codeBlockDoc, codeBlockVariants, codeVariants, coerceValue as coercePowerSearchValue, doc$18 as collapsibleDoc, collapsibleVariants, doc$19 as comboboxDoc, comboboxVariants, doc$20 as commandPaletteDoc, commandPaletteVariants, computeOffsets, doc$21 as contextMenuDoc, contextMenuVariants, doc$22 as copyButtonDoc, copyButtonVariants, copyToClipboard, createFormatters, createKeyValueRow, createListInputRow, createQueryCondition, createQueryGroup, cronErrorMessage, cronFromSchedule, doc$23 as cursorPaginationDoc, cursorPaginationVariants, doc$24 as dateFieldDoc, dateFieldVariants, doc$25 as datePickerDoc, datePickerVariants, doc$26 as dateTimeRangePickerDoc, dateTimeRangePickerVariants, describeCron, describeTrend, doc$27 as dialogDoc, dialogVariants, diffJson, diffLines, diffStats, doc$28 as diffViewerDoc, diffViewerVariants, diffWords, doc$29 as docsLayoutDoc, docsLayoutVariants, doc$30 as drawerDoc, drawerVariants, emptyPowerSearchQuery, doc$31 as emptyStateDoc, emptyStateVariants, en, es, evaluateQuery, falconePreset, doc$32 as fieldDoc, fieldVariants, fileKind, filterCommandGroups, flattenVisible, foldText, formatBytes, formatClock, formatCompact, formatDateRange, formatListInputPairs, formatPowerSearch, formatRelative, formatTimeOfDay, getDefaultPeriodPresets, getInitials, getMeterLevel, getOs, getPageRange, gntikPreset, doc$33 as gridDoc, gridVariants, headingVariants, doc$34 as hoverCardDoc, hoverCardVariants, doc$35 as infoTipDoc, infoTipVariants, doc$36 as inputDoc, inputVariants, doc$37 as inspectorLayoutDoc, inspectorLayoutVariants, interpolate, isConditionComplete, isConditionValid, isNavItemCurrent, isSameTimeRange, isSupportedLanguage, joinPath, jsonType, jsonTypeClass, doc$38 as jsonViewerDoc, jsonViewerVariants, doc$39 as kanbanBoardDoc, kanbanBoardVariants, doc$40 as kbdDoc, kbdVariants, doc$41 as keyValueEditorDoc, keyValueEditorVariants, doc$42 as lightboxDoc, lightboxVariants, doc$43 as linkDoc, linkVariants, doc$44 as listInputDoc, listInputVariants, doc$45 as liveAnnouncerDoc, liveAnnouncerVariants, localeDirection, localeHourCycle, localeWeekStart, maskSecret, matchAncestors, matchPowerSearch, matchRanges, matchText, measureJsonDisplay, doc$46 as megaMenuDoc, megaMenuNavItems, megaMenuVariants, doc$47 as menuDoc, menuVariants, mergeEnvRows, doc$48 as meterDoc, meterVariants, doc$49 as mobileNavDoc, mobileNavVariants, moveKanbanCard, doc$50 as multiSelectDoc, multiSelectVariants, musematicPreset, doc$51 as navListDoc, navListVariants, nextRuns, nextSortDirection, doc$52 as notificationsPopoverDoc, notificationsPopoverVariants, doc$53 as numberInputDoc, numberInputVariants, operatorArity, operatorsFor, doc$54 as otpInputDoc, otpInputVariants, outlineVariants, doc$55 as overflowListDoc, overflowListVariants, doc$56 as pageDoc, pageVariants, doc$57 as paginationDoc, paginationVariants, parseAnsi, parseCron, parseEnv, parseListInputPairs, parsePowerSearch, parsePowerSearchFilter, parseTimeOfDay, doc$58 as passwordInputDoc, passwordInputVariants, doc$59 as periodPickerDoc, periodPickerVariants, doc$60 as permissionMatrixDoc, permissionMatrixVariants, doc$61 as popoverDoc, popoverVariants, doc$62 as powerSearchDoc, defaultOperatorLabels as powerSearchOperatorLabels, operatorsFor$1 as powerSearchOperatorsFor, powerSearchVariants, presets, previewSortable, doc$63 as printLayoutDoc, printLayoutVariants, doc$64 as progressDoc, progressVariants, doc$65 as queryBuilderDoc, queryBuilderVariants, queryToString, doc$66 as radioGroupDoc, radioGroupVariants, relativeTimeRangeLabel, doc$67 as resizableDoc, resizableVariants, resolveStepStatus, resolveTimeRange, rowAt, scheduleFromCron, doc$68 as scheduleInputDoc, scheduleInputVariants, scoreCommand, scorePassword, doc$69 as scrollAreaDoc, scrollAreaVariants, doc$70 as secretFieldDoc, secretFieldVariants, doc$71 as sectionDoc, sectionVariants, doc$72 as selectDoc, selectVariants, selectableCardVariants, doc$73 as separatorDoc, separatorVariants, serializeEnv, doc$74 as settingsLayoutDoc, settingsLayoutVariants, doc$75 as sidebarLayoutDoc, sidebarLayoutVariants, doc$76 as skeletonDoc, skeletonVariants, skipLinkVariants, doc$77 as sliderDoc, sliderVariants, doc$78 as sparklineDoc, sparklineVariants, doc$79 as spinnerDoc, doc$80 as splitButtonDoc, splitButtonVariants, doc$81 as splitLayoutDoc, splitLayoutVariants, splitLines, stableStringify, doc$82 as stackDoc, stackVariants, doc$83 as stackedLayoutDoc, stackedLayoutVariants, doc$84 as statusDotDoc, statusDotVariants, doc$85 as statusLayoutDoc, statusLayoutVariants, doc$86 as statusTagDoc, statusTagVariants, doc$87 as stepperDoc, stepperVariants, stripAnsi, doc$88 as switchDoc, switchVariants, doc$89 as tableDoc, tableVariants, doc$90 as tabsDoc, tabsVariants, doc$91 as terminalDoc, terminalVariants, doc$92 as textDoc, textVariants, doc$93 as textareaDoc, textareaVariants, themeScript, doc$94 as themeSwitcherDoc, themeSwitcherVariants, doc$95 as thumbnailDoc, thumbnailVariants, doc$96 as timePickerDoc, timePickerVariants, doc$97 as timerDoc, timerVariants, doc$98 as timestampDoc, timestampVariants, toDate, toIsoDuration, toJsonText, doc$99 as toastDoc, toastVariants, doc$100 as toggleGroupDoc, toggleGroupVariants, toggleVariants, tokenClass, doc$101 as tokenDoc, doc$102 as tokenInputDoc, tokenInputVariants, tokenVariants, tokenize, tokenizeLines, doc$103 as toolbarDoc, toolbarVariants, doc$104 as tooltipDoc, tooltipVariants, doc$105 as tourDoc, tourVariants, doc$106 as transferListDoc, transferListVariants, doc$107 as treeListDoc, treeListVariants, tv, useAnnounce, useAsyncOptions, useCommandPaletteShortcut, useDensity, useFitCount, useHasLiveAnnouncer, useI18n, useInspectorLayout, useLinkComponent, useOptionalI18n, useOs, usePortalDir, useSidebarLayout, useSortable, useTheme, useThemeOptions, useToast, useTreeList, useVirtualWindow, doc$108 as userMenuDoc, userMenuVariants, validateKeyValueRows, doc$109 as virtualListDoc, virtualListVariants, doc$110 as visuallyHiddenDoc, visuallyHiddenVariants, doc$111 as wizardLayoutDoc, wizardLayoutVariants, doc$112 as workspaceSwitcherDoc, workspaceSwitcherVariants };
25854
25942
 
25855
25943
  //# sourceMappingURL=index.js.map