@vygruppen/spor-react 12.24.14 → 12.24.16

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.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { useSlotRecipe, Accordion as Accordion$1, Stack, Box, HStack, Progress, defineRecipe, chakra, Text, useRecipe, Circle, Skeleton as Skeleton$1, Button as Button$1, Group, Badge as Badge$1, Code as Code$1, Clipboard as Clipboard$1, IconButton as IconButton$1, useDisclosure, Alert as Alert$1, Span, Flex, Breadcrumb as Breadcrumb$1, RadioCard as RadioCard$1, Separator as Separator$1, ClientOnly, Field, defineStyle, PopoverAnchor, useFieldContext, Popover as Popover$1, Portal, Dialog, createContext as createContext$1, useDialogContext, Drawer as Drawer$1, InputElement, Input as Input$1, Combobox, useComboboxContext, usePopoverContext, Checkbox as Checkbox$1, CheckboxCard, Fieldset as Fieldset$1, NativeSelect as NativeSelect$1, useControllableState, createListCollection, RadioGroup as RadioGroup$1, Select as Select$1, useSelectContext, Switch as Switch$1, Textarea as Textarea$1, Link, List as List$1, Center, PopoverCloseTrigger, Pagination as Pagination$1, usePaginationContext, createToaster, Tabs as Tabs$1, Table as Table$1, defineSemanticTokens, defineSlotRecipe, defineTokens, defineAnimationStyles, defineGlobalStyles, defineTextStyles, createSystem, defaultBaseConfig, Tooltip as Tooltip$1, VisuallyHidden as VisuallyHidden$1, defineConfig, useFilter, useListCollection, useCombobox, CheckboxGroup as CheckboxGroup$1, ListItem, ChakraProvider, Toaster as Toaster$1, Toast } from '@chakra-ui/react';
1
+ import { useSlotRecipe, Accordion as Accordion$1, Stack, Box, HStack, Progress, defineRecipe, chakra, Text, useRecipe, Circle, Skeleton as Skeleton$1, Button as Button$1, Group, Badge as Badge$1, Code as Code$1, Clipboard as Clipboard$1, IconButton as IconButton$1, useDisclosure, Alert as Alert$1, Span, Flex, Breadcrumb as Breadcrumb$1, RadioCard as RadioCard$1, Separator as Separator$1, ClientOnly, Field, defineStyle, PopoverAnchor, useFieldContext, Popover as Popover$1, Portal, Dialog, createContext as createContext$1, useDialogContext, Drawer as Drawer$1, InputElement, Input as Input$1, useFilter, useListCollection, useCombobox, Combobox, useComboboxContext, usePopoverContext, Checkbox as Checkbox$1, CheckboxCard, Fieldset as Fieldset$1, Menu as Menu$1, useMenuContext as useMenuContext$1, NativeSelect as NativeSelect$1, useControllableState, createListCollection, RadioGroup as RadioGroup$1, Select as Select$1, useSelectContext, Switch as Switch$1, Textarea as Textarea$1, Link, List as List$1, Center, PopoverCloseTrigger, Pagination as Pagination$1, usePaginationContext, createToaster, Tabs as Tabs$1, Table as Table$1, defineSemanticTokens, defineSlotRecipe, defineTokens, defineAnimationStyles, defineGlobalStyles, defineTextStyles, createSystem, defaultBaseConfig, Tooltip as Tooltip$1, VisuallyHidden as VisuallyHidden$1, defineConfig, CheckboxGroup as CheckboxGroup$1, ListItem, ChakraProvider, Toaster as Toaster$1, Toast } from '@chakra-ui/react';
2
2
  export { AspectRatio, Box, BreadcrumbCurrentLink, BreadcrumbEllipsis, BreadcrumbLink, Center, ClientOnly, Collapsible, Container, Em, Flex, For, FormatByte, FormatNumber, Grid, GridItem, HStack, Icon, Image, Kbd, LocaleProvider, Portal, Show, SimpleGrid, Spacer, Span, Stack, TableCaption, TableCell, TableColumn, TableColumnGroup, TableFooter, TableHeader, TableRoot, TableRow, VStack, VisuallyHidden, Wrap, createIcon, createListCollection, createSystem, defineConfig, defineRecipe, defineSlotRecipe, defineStyle, mergeConfigs, chakra as spor, useBreakpointValue, useCheckbox, useClipboard, useControllableProp, useDisclosure, useMediaQuery, useRecipe, useSlotRecipe, useToken } from '@chakra-ui/react';
3
3
  import * as spor_icon_react_star from '@vygruppen/spor-icon-react';
4
4
  import { DropdownDownFill24Icon, CopyOutline18Icon, CheckmarkFill18Icon, CloseFill18Icon, CloseFill30Icon, CloseFill24Icon, InformationFill24Icon, ServiceFill24Icon, QuestionFill24Icon, ErrorOutline24Icon, ErrorFill24Icon, AltTransportFill24Icon, WarningFill24Icon, SuccessFill24Icon, DropdownDownFill18Icon, DropdownRightFill18Icon, CalendarOutline24Icon, ArrowLeftFill24Icon, ChangeDirectionOutline24Icon, CloseOutline24Icon, SearchOutline24Icon, Forward15MediaControllerFill30Icon, Backward15MediaControllerFill30Icon, PauseMediaControllerFill24Icon, PlayMediaControllerFill24Icon, NextMediaControllerFill30Icon, PreviousMediaControllerFill30Icon, ArrowRightFill18Icon, DropdownLeftOutline18Icon, DropdownRightOutline18Icon, ArrowUpFill18Icon, ArrowDownFill18Icon, ChangeDirectionFill18Icon, WalkFill30Icon, WalkFill24Icon, WalkFill18Icon, AltTransportFill30Icon, AltTransportFill18Icon, TramFill30Icon, TramFill24Icon, TramFill18Icon, SubwayFill30Icon, SubwayFill24Icon, SubwayFill18Icon, FerryFill30Icon, FerryFill24Icon, FerryFill18Icon, BusFill30Icon, BusFill24Icon, BusFill18Icon, ExpressBusFill30Icon, ExpressBusFill24Icon, ExpressBusFill18Icon, TrainFill30Icon, TrainFill24Icon, TrainFill18Icon, InformationFill18Icon, WarningFill18Icon, ErrorFill18Icon, LinkOutOutline24Icon, LinkOutOutline18Icon, ArrowLeftOutline24Icon, ArrowRightOutline24Icon, DropdownLeftFill18Icon } from '@vygruppen/spor-icon-react';
@@ -46,9 +46,9 @@ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "defau
46
46
  var warnAboutMismatchingIcon = ({
47
47
  icon
48
48
  }) => {
49
- var _a5, _b4;
49
+ var _a6, _b5;
50
50
  if (process.env.NODE_ENV !== "production") {
51
- const displayName = (_b4 = (_a5 = icon == null ? void 0 : icon.type) == null ? void 0 : _a5.render) == null ? void 0 : _b4.displayName;
51
+ const displayName = (_b5 = (_a6 = icon == null ? void 0 : icon.type) == null ? void 0 : _a6.render) == null ? void 0 : _b5.displayName;
52
52
  if (!displayName) {
53
53
  return;
54
54
  }
@@ -1504,21 +1504,26 @@ function CalendarProvider(props) {
1504
1504
  ref
1505
1505
  );
1506
1506
  const getRangeStartValue = () => {
1507
- var _a5, _b4;
1508
- if ((_a5 = rangeState.highlightedRange) == null ? void 0 : _a5.start) {
1507
+ var _a6, _b5;
1508
+ if ((_a6 = rangeState.highlightedRange) == null ? void 0 : _a6.start) {
1509
1509
  return toCalendarDate(rangeState.highlightedRange.start);
1510
1510
  }
1511
- if ((_b4 = rangeState == null ? void 0 : rangeState.value) == null ? void 0 : _b4.start) {
1511
+ if ((_b5 = rangeState == null ? void 0 : rangeState.value) == null ? void 0 : _b5.start) {
1512
1512
  return toCalendarDate(rangeState.value.start);
1513
1513
  }
1514
1514
  return null;
1515
1515
  };
1516
1516
  const getRangeEndValue = () => {
1517
- var _a5, _b4;
1518
- if ((_a5 = rangeState.highlightedRange) == null ? void 0 : _a5.end) {
1517
+ var _a6, _b5;
1518
+ if ((_a6 = rangeState.highlightedRange) == null ? void 0 : _a6.end) {
1519
+ if (rangeState.anchorDate && rangeState.highlightedRange.start && rangeState.highlightedRange.end.compare(
1520
+ rangeState.highlightedRange.start
1521
+ ) === 0) {
1522
+ return null;
1523
+ }
1519
1524
  return toCalendarDate(rangeState.highlightedRange.end);
1520
1525
  }
1521
- if ((_b4 = rangeState == null ? void 0 : rangeState.value) == null ? void 0 : _b4.end) {
1526
+ if ((_b5 = rangeState == null ? void 0 : rangeState.value) == null ? void 0 : _b5.end) {
1522
1527
  return toCalendarDate(rangeState.value.end);
1523
1528
  }
1524
1529
  return null;
@@ -1619,16 +1624,36 @@ var StaticCard = forwardRef(
1619
1624
  }
1620
1625
  );
1621
1626
  StaticCard.displayName = "StaticCard";
1627
+ var _a2, _b;
1628
+ var IS_TOUCH_PRIMARY = globalThis.window !== void 0 && ((_b = (_a2 = globalThis.window).matchMedia) == null ? void 0 : _b.call(_a2, "(pointer: coarse)").matches);
1629
+ function isPhantomPointer(event) {
1630
+ return IS_TOUCH_PRIMARY && event.pointerType === "mouse";
1631
+ }
1622
1632
  function CalendarCell({ date, currentMonth }) {
1623
- var _a5, _b4;
1633
+ var _a6, _b5;
1624
1634
  const { mode, state } = useCalendar();
1625
1635
  const ref = useRef(null);
1626
1636
  const { cellProps, buttonProps, isSelected, isDisabled, formattedDate } = useCalendarCell({ date }, state, ref);
1627
1637
  const isOutsideMonth = !isSameMonth(currentMonth, date);
1628
- const isSelectionStart = mode === "range" && ((_a5 = state.highlightedRange) == null ? void 0 : _a5.start) ? isSameDay(date, state.highlightedRange.start) : false;
1629
- const isSelectionEnd = mode === "range" && ((_b4 = state.highlightedRange) == null ? void 0 : _b4.end) ? isSameDay(date, state.highlightedRange.end) : false;
1630
- const isSingleModeSelected = mode === "single" && isSelected;
1638
+ const isSelectionStart = mode === "range" && ((_a6 = state.highlightedRange) == null ? void 0 : _a6.start) ? isSameDay(date, state.highlightedRange.start) : false;
1639
+ const isSelectionEnd = mode === "range" && ((_b5 = state.highlightedRange) == null ? void 0 : _b5.end) ? isSameDay(date, state.highlightedRange.end) : false;
1640
+ const isEdge = mode === "single" && isSelected || isSelectionStart || isSelectionEnd;
1641
+ const isMiddle = isSelected && !isEdge && mode === "range";
1631
1642
  const { focusProps, isFocusVisible } = useFocusRing();
1643
+ const merged = mergeProps(buttonProps, focusProps);
1644
+ const interactionProps = mode === "range" && IS_TOUCH_PRIMARY ? {
1645
+ ...merged,
1646
+ onPointerEnter: (event) => {
1647
+ var _a7;
1648
+ if (!isPhantomPointer(event))
1649
+ (_a7 = merged.onPointerEnter) == null ? void 0 : _a7.call(merged, event);
1650
+ },
1651
+ onPointerMove: (event) => {
1652
+ var _a7;
1653
+ if (!isPhantomPointer(event))
1654
+ (_a7 = merged.onPointerMove) == null ? void 0 : _a7.call(merged, event);
1655
+ }
1656
+ } : merged;
1632
1657
  return /* @__PURE__ */ jsx(
1633
1658
  "td",
1634
1659
  {
@@ -1640,7 +1665,7 @@ function CalendarCell({ date, currentMonth }) {
1640
1665
  children: /* @__PURE__ */ jsx(
1641
1666
  Box,
1642
1667
  {
1643
- ...mergeProps(buttonProps, focusProps),
1668
+ ...interactionProps,
1644
1669
  ref,
1645
1670
  hidden: isOutsideMonth,
1646
1671
  width: ["54px", null, "70px"],
@@ -1656,32 +1681,10 @@ function CalendarCell({ date, currentMonth }) {
1656
1681
  alignItems: "center",
1657
1682
  justifyContent: "center",
1658
1683
  borderRadius: "sm",
1659
- css: {
1660
- cursor: "pointer",
1661
- color: isDisabled ? "text.disabled" : void 0,
1662
- // Single mode: Selected styling
1663
- ...isSingleModeSelected && {
1664
- backgroundColor: "brand.surface",
1665
- color: "text.inverted"
1666
- },
1667
- // Range mode: Selection start/end styling
1668
- ...(isSelectionStart || isSelectionEnd) && {
1669
- backgroundColor: "brand.surface",
1670
- color: "text.inverted"
1671
- },
1672
- // Range mode: Middle range styling
1673
- ...isSelected && !(isSelectionStart || isSelectionEnd) && mode === "range" && {
1674
- backgroundColor: "surface.secondary",
1675
- color: "text"
1676
- },
1677
- // Non-selected hover state
1678
- ...!isSelected && !isDisabled && {
1679
- "&:hover": {
1680
- backgroundColor: "surface.secondary",
1681
- color: "text"
1682
- }
1683
- }
1684
- },
1684
+ css: cellStyles,
1685
+ "data-disabled": isDisabled || void 0,
1686
+ "data-edge": isEdge || void 0,
1687
+ "data-middle": isMiddle || void 0,
1685
1688
  children: /* @__PURE__ */ jsx(Text3, { variant: "sm", children: formattedDate })
1686
1689
  }
1687
1690
  )
@@ -1690,6 +1693,30 @@ function CalendarCell({ date, currentMonth }) {
1690
1693
  }
1691
1694
  );
1692
1695
  }
1696
+ var cellStyles = {
1697
+ cursor: "pointer",
1698
+ // Disabled
1699
+ "&[data-disabled]": {
1700
+ color: "text.disabled"
1701
+ },
1702
+ // Selection edge (single-mode selected OR range start/end)
1703
+ "&[data-edge]": {
1704
+ backgroundColor: "brand.surface",
1705
+ color: "text.inverted"
1706
+ },
1707
+ // Range middle
1708
+ "&[data-middle]": {
1709
+ backgroundColor: "surface.secondary",
1710
+ color: "text"
1711
+ },
1712
+ // Hover for non-selected, non-disabled cells on devices that support hover
1713
+ "@media (hover: hover)": {
1714
+ "&:not([data-edge]):not([data-middle]):not([data-disabled]):hover": {
1715
+ backgroundColor: "surface.secondary",
1716
+ color: "text"
1717
+ }
1718
+ }
1719
+ };
1693
1720
  var weekDays = {
1694
1721
  nb: ["Ma", "Ti", "On", "To", "Fr", "L\xF8", "S\xF8"],
1695
1722
  nn: ["Ma", "Ti", "On", "To", "Fr", "L\xF8", "S\xF8"],
@@ -1892,10 +1919,20 @@ function ScrollCalendar(boxProps) {
1892
1919
  if (monthIndex > 0 && monthIndex < monthCount) {
1893
1920
  const element = monthReferences.current[monthIndex];
1894
1921
  if (element) {
1895
- element.scrollIntoView({
1896
- behavior: "instant",
1897
- block: "start"
1898
- });
1922
+ const selectedCell = element.querySelector(
1923
+ '[aria-selected="true"]'
1924
+ );
1925
+ if (selectedCell) {
1926
+ selectedCell.scrollIntoView({
1927
+ behavior: "instant",
1928
+ block: "center"
1929
+ });
1930
+ } else {
1931
+ element.scrollIntoView({
1932
+ behavior: "instant",
1933
+ block: "start"
1934
+ });
1935
+ }
1899
1936
  }
1900
1937
  }
1901
1938
  hasScrolledRef.current = true;
@@ -2129,8 +2166,8 @@ function CalendarCell2({
2129
2166
  stateProps["data-unavailable"] = true;
2130
2167
  }
2131
2168
  useEffect(() => {
2132
- var _a5;
2133
- (_a5 = ref.current) == null ? void 0 : _a5.addEventListener(
2169
+ var _a6;
2170
+ (_a6 = ref.current) == null ? void 0 : _a6.addEventListener(
2134
2171
  "touchend",
2135
2172
  (event) => {
2136
2173
  event.preventDefault();
@@ -2466,7 +2503,7 @@ function createCalendar3(identifier) {
2466
2503
  }
2467
2504
  var DateField = forwardRef(
2468
2505
  (props, externalRef) => {
2469
- var _a5;
2506
+ var _a6;
2470
2507
  const locale = useCurrentLocale();
2471
2508
  const recipe = useSlotRecipe({
2472
2509
  key: "datePicker"
@@ -2504,7 +2541,7 @@ var DateField = forwardRef(
2504
2541
  "input",
2505
2542
  {
2506
2543
  type: "hidden",
2507
- value: ((_a5 = state.value) == null ? void 0 : _a5.toString()) ?? "",
2544
+ value: ((_a6 = state.value) == null ? void 0 : _a6.toString()) ?? "",
2508
2545
  name: props.name,
2509
2546
  id: props.id
2510
2547
  }
@@ -2621,11 +2658,11 @@ var DatePicker = forwardRef(
2621
2658
  const locale = useCurrentLocale();
2622
2659
  const shouldShowCalendar = state.isOpen && !props.isDisabled && !props.noCalendar;
2623
2660
  const onFieldClick = () => {
2624
- var _a5;
2661
+ var _a6;
2625
2662
  if (!props.noCalendar) {
2626
2663
  state.setOpen(true);
2627
2664
  }
2628
- (_a5 = props.onClick) == null ? void 0 : _a5.call(props);
2665
+ (_a6 = props.onClick) == null ? void 0 : _a6.call(props);
2629
2666
  };
2630
2667
  const popoverContent = /* @__PURE__ */ jsx(Popover$1.Positioner, { children: /* @__PURE__ */ jsx(Popover$1.Content, { css: styles.calendarPopover, children: /* @__PURE__ */ jsx(Popover$1.Body, { minWidth: "20rem", children: /* @__PURE__ */ jsx(
2631
2668
  Calendar2,
@@ -3399,91 +3436,95 @@ var Input = forwardRef(
3399
3436
  }
3400
3437
  );
3401
3438
  Input.displayName = "Input";
3402
- var Autocomplete = ({
3403
- variant = "core",
3404
- children,
3405
- label,
3406
- leftIcon,
3407
- onInputValueChange,
3408
- invalid,
3409
- helperText,
3410
- errorText,
3411
- required,
3412
- filteredExternally,
3413
- loading,
3414
- disabled,
3415
- emptyLabel,
3416
- onFocus,
3417
- openOnClick = true,
3418
- openOnFocus = true,
3419
- ...rest
3420
- }) => {
3421
- const { contains } = useFilter({ sensitivity: "base" });
3422
- const { t } = useTranslation();
3423
- const extractedItems = React20__default.useMemo(
3424
- () => extractItemsFromChildren(children),
3425
- [children]
3426
- );
3427
- const { collection, filter, reset } = useListCollection({
3428
- initialItems: extractedItems,
3429
- filter: filteredExternally ? void 0 : contains
3430
- });
3431
- React20__default.useEffect(() => {
3432
- if (filteredExternally)
3433
- reset();
3434
- }, [extractedItems, reset, filteredExternally]);
3435
- const filteredChildren = React20__default.useMemo(
3436
- () => filterChildren(children, collection.items),
3437
- [children, collection.items]
3438
- );
3439
- const combobox = useCombobox({
3440
- collection,
3441
- openOnClick: filteredChildren.length > 0 ? openOnClick : false,
3442
- onInputValueChange: (event) => {
3443
- if (!filteredExternally) {
3444
- filter(event.inputValue);
3445
- }
3446
- onInputValueChange == null ? void 0 : onInputValueChange(event);
3447
- },
3448
- positioning: {
3449
- placement: "bottom",
3450
- offset: {
3451
- mainAxis: 3,
3452
- crossAxis: -1
3453
- },
3454
- flip: false
3455
- },
3439
+ var Autocomplete = forwardRef(
3440
+ function Autocomplete2({
3441
+ variant = "core",
3442
+ children,
3443
+ css,
3444
+ label,
3445
+ leftIcon,
3446
+ onInputValueChange,
3447
+ invalid,
3448
+ helperText,
3449
+ errorText,
3450
+ required,
3451
+ filteredExternally,
3452
+ loading,
3456
3453
  disabled,
3454
+ emptyLabel,
3455
+ onFocus,
3456
+ openOnClick = true,
3457
+ openOnFocus = true,
3457
3458
  ...rest
3458
- });
3459
- return /* @__PURE__ */ jsxs(Combobox.RootProvider, { value: combobox, children: [
3460
- /* @__PURE__ */ jsxs(Combobox.Control, { children: [
3461
- /* @__PURE__ */ jsx(Combobox.Input, { asChild: true, children: /* @__PURE__ */ jsx(
3462
- Input,
3463
- {
3464
- label: /* @__PURE__ */ jsx(Combobox.Label, { children: label }),
3465
- variant,
3466
- labelAsChild: true,
3467
- startElement: leftIcon,
3468
- invalid,
3469
- helperText,
3470
- errorText,
3471
- required,
3472
- onFocus: (event) => {
3473
- onFocus == null ? void 0 : onFocus(event);
3474
- if (openOnFocus && filteredChildren.length > 0)
3475
- combobox.setOpen(true);
3459
+ }, ref) {
3460
+ const { contains } = useFilter({ sensitivity: "base" });
3461
+ const { t } = useTranslation();
3462
+ const extractedItems = React20__default.useMemo(
3463
+ () => extractItemsFromChildren(children),
3464
+ [children]
3465
+ );
3466
+ const { collection, filter, reset } = useListCollection({
3467
+ initialItems: extractedItems,
3468
+ filter: filteredExternally ? void 0 : contains
3469
+ });
3470
+ React20__default.useEffect(() => {
3471
+ if (filteredExternally)
3472
+ reset();
3473
+ }, [extractedItems, reset, filteredExternally]);
3474
+ const filteredChildren = React20__default.useMemo(
3475
+ () => filterChildren(children, collection.items),
3476
+ [children, collection.items]
3477
+ );
3478
+ const combobox = useCombobox({
3479
+ collection,
3480
+ openOnClick: filteredChildren.length > 0 ? openOnClick : false,
3481
+ onInputValueChange: (event) => {
3482
+ if (!filteredExternally) {
3483
+ filter(event.inputValue);
3484
+ }
3485
+ onInputValueChange == null ? void 0 : onInputValueChange(event);
3486
+ },
3487
+ positioning: {
3488
+ placement: "bottom",
3489
+ offset: {
3490
+ mainAxis: 3,
3491
+ crossAxis: -1
3492
+ },
3493
+ flip: false
3494
+ },
3495
+ disabled,
3496
+ ...rest
3497
+ });
3498
+ return /* @__PURE__ */ jsxs(Combobox.RootProvider, { value: combobox, children: [
3499
+ /* @__PURE__ */ jsxs(Combobox.Control, { css, children: [
3500
+ /* @__PURE__ */ jsx(Combobox.Input, { asChild: true, children: /* @__PURE__ */ jsx(
3501
+ Input,
3502
+ {
3503
+ ref,
3504
+ label: /* @__PURE__ */ jsx(Combobox.Label, { children: label }),
3505
+ variant,
3506
+ labelAsChild: true,
3507
+ startElement: leftIcon,
3508
+ invalid,
3509
+ helperText,
3510
+ errorText,
3511
+ required,
3512
+ onFocus: (event) => {
3513
+ onFocus == null ? void 0 : onFocus(event);
3514
+ if (openOnFocus && filteredChildren.length > 0)
3515
+ combobox.setOpen(true);
3516
+ }
3476
3517
  }
3477
- }
3478
- ) }),
3479
- /* @__PURE__ */ jsx(Combobox.IndicatorGroup, { children: /* @__PURE__ */ jsx(Combobox.ClearTrigger, { asChild: true, "aria-label": t(texts14.clearValue), children: /* @__PURE__ */ jsx(CloseButton, { size: "xs", tabIndex: 0 }) }) })
3480
- ] }),
3481
- /* @__PURE__ */ jsx(Combobox.Positioner, { children: /* @__PURE__ */ jsxs(Combobox.Content, { children: [
3482
- !loading && /* @__PURE__ */ jsx(Combobox.Empty, { children: emptyLabel ?? t(texts14.noItemsFound) }),
3483
- loading ? /* @__PURE__ */ jsx(ColorSpinner, { width: "1.5rem", p: "2" }) : filteredChildren
3484
- ] }) })
3485
- ] });
3486
- };
3518
+ ) }),
3519
+ /* @__PURE__ */ jsx(Combobox.IndicatorGroup, { children: /* @__PURE__ */ jsx(Combobox.ClearTrigger, { asChild: true, "aria-label": t(texts14.clearValue), children: /* @__PURE__ */ jsx(CloseButton, { size: "xs", tabIndex: 0 }) }) })
3520
+ ] }),
3521
+ /* @__PURE__ */ jsx(Combobox.Positioner, { children: /* @__PURE__ */ jsxs(Combobox.Content, { children: [
3522
+ !loading && /* @__PURE__ */ jsx(Combobox.Empty, { children: emptyLabel ?? t(texts14.noItemsFound) }),
3523
+ loading ? /* @__PURE__ */ jsx(ColorSpinner, { width: "1.5rem", p: "2" }) : filteredChildren
3524
+ ] }) })
3525
+ ] });
3526
+ }
3527
+ );
3487
3528
  var AutocompleteItemGroup = Combobox.ItemGroup;
3488
3529
  var AutocompleteItemGroupLabel = Combobox.ItemGroupLabel;
3489
3530
  var AutocompleteItem = forwardRef(
@@ -3501,7 +3542,7 @@ var AutocompleteItem = forwardRef(
3501
3542
  var filterChildren = (children, collectionItems) => {
3502
3543
  const collectionValues = new Set(collectionItems.map((item) => item.value));
3503
3544
  return React20__default.Children.toArray(children).map((child) => {
3504
- var _a5;
3545
+ var _a6;
3505
3546
  if (!React20__default.isValidElement(child))
3506
3547
  return null;
3507
3548
  if (child.type === AutocompleteItemGroup) {
@@ -3520,7 +3561,7 @@ var filterChildren = (children, collectionItems) => {
3520
3561
  children: filteredGroupChildren
3521
3562
  });
3522
3563
  }
3523
- const itemProps = (_a5 = child.props) == null ? void 0 : _a5.item;
3564
+ const itemProps = (_a6 = child.props) == null ? void 0 : _a6.item;
3524
3565
  if (itemProps) {
3525
3566
  return collectionValues.has(itemProps.value) ? child : null;
3526
3567
  }
@@ -3661,7 +3702,7 @@ var Popover = forwardRef(
3661
3702
  hasBackdrop = true,
3662
3703
  containerPadding = 12
3663
3704
  }, ref) => {
3664
- var _a5;
3705
+ var _a6;
3665
3706
  const internalRef = useRef(null);
3666
3707
  const popoverRef = ref ?? internalRef;
3667
3708
  const { popoverProps, underlayProps } = usePopover(
@@ -3682,7 +3723,7 @@ var Popover = forwardRef(
3682
3723
  {
3683
3724
  ...popoverProps,
3684
3725
  ref: popoverRef,
3685
- minWidth: ((_a5 = triggerRef.current) == null ? void 0 : _a5.clientWidth) ?? "auto",
3726
+ minWidth: ((_a6 = triggerRef.current) == null ? void 0 : _a6.clientWidth) ?? "auto",
3686
3727
  children: [
3687
3728
  /* @__PURE__ */ jsx(DismissButton, { onDismiss: state.close }),
3688
3729
  children,
@@ -3977,8 +4018,8 @@ function Option({ item, state }) {
3977
4018
  dataFields["data-focus-visible"] = true;
3978
4019
  }
3979
4020
  useEffect(() => {
3980
- var _a5;
3981
- (_a5 = ref == null ? void 0 : ref.current) == null ? void 0 : _a5.addEventListener(
4021
+ var _a6;
4022
+ (_a6 = ref == null ? void 0 : ref.current) == null ? void 0 : _a6.addEventListener(
3982
4023
  "touchend",
3983
4024
  (event) => {
3984
4025
  event.preventDefault();
@@ -4007,7 +4048,7 @@ var useOptionContext = () => {
4007
4048
  return useContext(OptionContext);
4008
4049
  };
4009
4050
  function ListBoxSection({ section, state }) {
4010
- var _a5, _b4;
4051
+ var _a6, _b5;
4011
4052
  const { itemProps, headingProps, groupProps } = useListBoxSection({
4012
4053
  heading: section.rendered,
4013
4054
  "aria-label": section["aria-label"]
@@ -4029,11 +4070,132 @@ function ListBoxSection({ section, state }) {
4029
4070
  children: section.rendered
4030
4071
  }
4031
4072
  ),
4032
- /* @__PURE__ */ jsx(List, { ...groupProps, padding: 0, listStyleType: "none", children: Array.from(((_b4 = (_a5 = state.collection).getChildren) == null ? void 0 : _b4.call(_a5, section.key)) ?? []).map(
4073
+ /* @__PURE__ */ jsx(List, { ...groupProps, padding: 0, listStyleType: "none", children: Array.from(((_b5 = (_a6 = state.collection).getChildren) == null ? void 0 : _b5.call(_a6, section.key)) ?? []).map(
4033
4074
  (item) => /* @__PURE__ */ jsx(Option, { item, state }, item.key)
4034
4075
  ) })
4035
4076
  ] }) });
4036
4077
  }
4078
+ var CustomMenuContext = createContext({
4079
+ variant: "core"
4080
+ });
4081
+ var useMenuContext = () => useContext(CustomMenuContext);
4082
+ var Menu = ({ children, ...props }) => {
4083
+ return /* @__PURE__ */ jsx(
4084
+ CustomMenuContext.Provider,
4085
+ {
4086
+ value: {
4087
+ variant: props.variant
4088
+ },
4089
+ children: /* @__PURE__ */ jsx(Menu$1.Root, { ...props, children })
4090
+ }
4091
+ );
4092
+ };
4093
+ var MenuContent = forwardRef(
4094
+ ({ children, ...props }, ref) => {
4095
+ return /* @__PURE__ */ jsx(Portal, { children: /* @__PURE__ */ jsx(Menu$1.Positioner, { children: /* @__PURE__ */ jsx(Menu$1.Content, { ref, ...props, children }) }) });
4096
+ }
4097
+ );
4098
+ MenuContent.displayName = "MenuContent";
4099
+ var MenuTrigger = forwardRef(
4100
+ ({ icon, size, children, ...props }, ref) => {
4101
+ const { variant } = useMenuContext();
4102
+ const { open } = useMenuContext$1();
4103
+ const ChevronIcon = size === "sm" ? DropdownDownFill18Icon : DropdownDownFill24Icon;
4104
+ const getButtonVariant = () => {
4105
+ if (variant === "floating")
4106
+ return "floating";
4107
+ if (variant === "accent")
4108
+ return "secondary";
4109
+ return "tertiary";
4110
+ };
4111
+ return /* @__PURE__ */ jsx(Menu$1.Trigger, { asChild: true, ref, children: /* @__PURE__ */ jsx(
4112
+ Button,
4113
+ {
4114
+ leftIcon: icon,
4115
+ variant: getButtonVariant(),
4116
+ size,
4117
+ ...props,
4118
+ rightIcon: /* @__PURE__ */ jsx(
4119
+ ChevronIcon,
4120
+ {
4121
+ transform: open ? "rotate(180deg)" : void 0,
4122
+ transition: "transform 0.3s"
4123
+ }
4124
+ ),
4125
+ children
4126
+ }
4127
+ ) });
4128
+ }
4129
+ );
4130
+ MenuTrigger.displayName = "MenuTrigger";
4131
+ var MenuItem = forwardRef(
4132
+ ({ itemCommand, children, value, leftIcon, rightIcon, ...props }, ref) => {
4133
+ return /* @__PURE__ */ jsxs(Menu$1.Item, { value, ...props, ref, children: [
4134
+ leftIcon,
4135
+ children,
4136
+ itemCommand && /* @__PURE__ */ jsx(Menu$1.ItemCommand, { children: itemCommand }),
4137
+ rightIcon
4138
+ ] });
4139
+ }
4140
+ );
4141
+ MenuItem.displayName = "MenuItem";
4142
+ var MenuTriggerItem = forwardRef(
4143
+ ({ children, leftIcon, rightIcon, ...props }, ref) => {
4144
+ return /* @__PURE__ */ jsxs(Menu$1.TriggerItem, { ...props, ref, children: [
4145
+ leftIcon,
4146
+ children,
4147
+ rightIcon
4148
+ ] });
4149
+ }
4150
+ );
4151
+ MenuTriggerItem.displayName = "MenuTriggerItem";
4152
+ var MenuRadioItemGroup = forwardRef(({ children, ...props }) => {
4153
+ return /* @__PURE__ */ jsx(Menu$1.RadioItemGroup, { ...props, children });
4154
+ });
4155
+ MenuRadioItemGroup.displayName = "MenuRadioItemGroup";
4156
+ var MenuRadioItem = forwardRef(
4157
+ ({ children, ...props }, ref) => {
4158
+ return /* @__PURE__ */ jsxs(Menu$1.RadioItem, { ...props, ref, children: [
4159
+ children,
4160
+ /* @__PURE__ */ jsx(Flex, { w: "1.25rem", justify: "center", align: "center", children: /* @__PURE__ */ jsx(Menu$1.ItemIndicator, {}) })
4161
+ ] });
4162
+ }
4163
+ );
4164
+ MenuRadioItem.displayName = "MenuRadioItem";
4165
+ var MenuItemGroup = forwardRef(
4166
+ ({ children, label, ...props }, ref) => {
4167
+ return /* @__PURE__ */ jsxs(Menu$1.ItemGroup, { ...props, ref, children: [
4168
+ label && /* @__PURE__ */ jsx(Menu$1.ItemGroupLabel, { children: label }),
4169
+ children
4170
+ ] });
4171
+ }
4172
+ );
4173
+ MenuItemGroup.displayName = "MenuItemGroup";
4174
+ var MenuCheckboxItem = forwardRef(({ children, closeOnSelect = false, ...props }, ref) => {
4175
+ return /* @__PURE__ */ jsx(
4176
+ Menu$1.CheckboxItem,
4177
+ {
4178
+ ...props,
4179
+ ref,
4180
+ closeOnSelect,
4181
+ checked: props.checked,
4182
+ onCheckedChange: props.onCheckedChange,
4183
+ children: /* @__PURE__ */ jsx(
4184
+ Checkbox,
4185
+ {
4186
+ checked: props.checked,
4187
+ onCheckedChange: () => props.onCheckedChange,
4188
+ children
4189
+ }
4190
+ )
4191
+ }
4192
+ );
4193
+ });
4194
+ MenuCheckboxItem.displayName = "MenuCheckboxItem";
4195
+ var MenuSeparator = forwardRef(({ ...props }) => {
4196
+ return /* @__PURE__ */ jsx(Menu$1.Separator, { ...props });
4197
+ });
4198
+ MenuSeparator.displayName = "MenuSeparator";
4037
4199
  var NativeSelect = React20.forwardRef(function NativeSelect2(props, ref) {
4038
4200
  const {
4039
4201
  children,
@@ -4115,8 +4277,8 @@ var NumericStepper = React20__default.forwardRef((props, ref) => {
4115
4277
  });
4116
4278
  const clampedStepSize = Math.max(Math.min(stepSize, 10), 1);
4117
4279
  const focusOnAddButton = () => {
4118
- var _a5;
4119
- (_a5 = addButtonRef.current) == null ? void 0 : _a5.focus();
4280
+ var _a6;
4281
+ (_a6 = addButtonRef.current) == null ? void 0 : _a6.focus();
4120
4282
  };
4121
4283
  return /* @__PURE__ */ jsxs(
4122
4284
  Field3,
@@ -4388,8 +4550,8 @@ var CountryCodeSelect = forwardRef((props, ref) => {
4388
4550
  return allCallingCodes;
4389
4551
  const filteredItems = allCallingCodes.items.filter(
4390
4552
  (callingCode) => {
4391
- var _a5;
4392
- return (_a5 = props.allowedCountryCodes) == null ? void 0 : _a5.includes(callingCode.label);
4553
+ var _a6;
4554
+ return (_a6 = props.allowedCountryCodes) == null ? void 0 : _a6.includes(callingCode.label);
4393
4555
  }
4394
4556
  );
4395
4557
  return createListCollection({ items: filteredItems });
@@ -4890,8 +5052,8 @@ var LinjeTagIcon = ({
4890
5052
  size,
4891
5053
  css
4892
5054
  }) => {
4893
- var _a5;
4894
- const IconComponent2 = ((_a5 = icons[variant]) == null ? void 0 : _a5[size]) ?? Box;
5055
+ var _a6;
5056
+ const IconComponent2 = ((_a6 = icons[variant]) == null ? void 0 : _a6[size]) ?? Box;
4895
5057
  return /* @__PURE__ */ jsx(Box, { css, asChild: true, children: /* @__PURE__ */ jsx(IconComponent2, {}) });
4896
5058
  };
4897
5059
  var LineIcon = forwardRef(
@@ -6412,15 +6574,15 @@ var getNextSortState = (current, columnIndex) => {
6412
6574
  return { direction: "asc", columnIndex: null };
6413
6575
  };
6414
6576
  var getColumnIndex = (element) => {
6415
- var _a5;
6416
- return Array.prototype.indexOf.call((_a5 = element.parentElement) == null ? void 0 : _a5.children, element);
6577
+ var _a6;
6578
+ return Array.prototype.indexOf.call((_a6 = element.parentElement) == null ? void 0 : _a6.children, element);
6417
6579
  };
6418
6580
  var getCellSortText = (row, columnIndex) => {
6419
- var _a5;
6581
+ var _a6;
6420
6582
  const cell = row.cells[columnIndex];
6421
6583
  if (!cell)
6422
6584
  return "";
6423
- return cell.dataset.sort || ((_a5 = cell.textContent) == null ? void 0 : _a5.trim()) || "";
6585
+ return cell.dataset.sort || ((_a6 = cell.textContent) == null ? void 0 : _a6.trim()) || "";
6424
6586
  };
6425
6587
  var applyDomSort = (tbody, sortState, originalRows) => {
6426
6588
  if (sortState.columnIndex == null) {
@@ -7184,7 +7346,7 @@ var staticCardRecipe = defineRecipe({
7184
7346
  colorPalette: "white"
7185
7347
  }
7186
7348
  });
7187
- var _a2, _b;
7349
+ var _a3, _b2;
7188
7350
  var textareaRecipe = defineRecipe({
7189
7351
  className: "spor-textarea",
7190
7352
  base: {
@@ -7201,10 +7363,10 @@ var textareaRecipe = defineRecipe({
7201
7363
  variants: {
7202
7364
  variant: {
7203
7365
  core: {
7204
- ...(_a2 = inputRecipe.variants) == null ? void 0 : _a2.variant.core
7366
+ ...(_a3 = inputRecipe.variants) == null ? void 0 : _a3.variant.core
7205
7367
  },
7206
7368
  floating: {
7207
- ...(_b = inputRecipe.variants) == null ? void 0 : _b.variant.floating
7369
+ ...(_b2 = inputRecipe.variants) == null ? void 0 : _b2.variant.floating
7208
7370
  }
7209
7371
  }
7210
7372
  }
@@ -7541,6 +7703,19 @@ var comboboxAnatomy = comboboxAnatomy$1.extendWith(
7541
7703
  "indicatorGroup",
7542
7704
  "empty"
7543
7705
  );
7706
+ var menuAnatomy = createAnatomy("menu").parts(
7707
+ "trigger",
7708
+ "content",
7709
+ "item",
7710
+ "itemGroup",
7711
+ "triggerItem",
7712
+ "itemCommand",
7713
+ "itemGroupLabel",
7714
+ "separator",
7715
+ "radioItem",
7716
+ "triggerItem",
7717
+ "checkboxItem"
7718
+ );
7544
7719
 
7545
7720
  // src/theme/slot-recipes/accordion.ts
7546
7721
  var accordionSlotRecipe = defineSlotRecipe({
@@ -9416,7 +9591,7 @@ var travelTagSlotRecipe = defineSlotRecipe({
9416
9591
  });
9417
9592
 
9418
9593
  // src/theme/slot-recipes/info-tag.ts
9419
- var _a3, _b2, _c, _d;
9594
+ var _a4, _b3, _c, _d;
9420
9595
  var infoTagSlotRecipe = defineSlotRecipe({
9421
9596
  slots: infoTagAnatomy.keys(),
9422
9597
  className: "spor-info-tag",
@@ -9453,9 +9628,9 @@ var infoTagSlotRecipe = defineSlotRecipe({
9453
9628
  "local-bus": {}
9454
9629
  },
9455
9630
  size: {
9456
- ...(_a3 = travelTagSlotRecipe.variants) == null ? void 0 : _a3.size,
9631
+ ...(_a4 = travelTagSlotRecipe.variants) == null ? void 0 : _a4.size,
9457
9632
  sm: {
9458
- ...(_b2 = travelTagSlotRecipe.variants) == null ? void 0 : _b2.size.sm,
9633
+ ...(_b3 = travelTagSlotRecipe.variants) == null ? void 0 : _b3.size.sm,
9459
9634
  iconContainer: {
9460
9635
  borderRadius: "0.375rem"
9461
9636
  }
@@ -9829,7 +10004,108 @@ var mediaControllerSlotRecipe = defineSlotRecipe({
9829
10004
  }
9830
10005
  ]
9831
10006
  });
9832
- var _a4, _b3;
10007
+ var menuSlotRecipe = defineSlotRecipe({
10008
+ className: "menu",
10009
+ slots: menuAnatomy.keys(),
10010
+ base: {
10011
+ content: {
10012
+ bg: "bg",
10013
+ borderRadius: "sm",
10014
+ boxShadow: "sm",
10015
+ width: "fit-content",
10016
+ padding: "1",
10017
+ display: "flex",
10018
+ flexDirection: "column",
10019
+ gap: "0.5",
10020
+ zIndex: "dropdown",
10021
+ _open: {
10022
+ animationStyle: "slide-fade-in",
10023
+ animationDuration: "fast",
10024
+ zIndex: "popover",
10025
+ outline: "none"
10026
+ }
10027
+ },
10028
+ itemGroup: {
10029
+ display: "flex",
10030
+ flexDirection: "column",
10031
+ gap: "0.5"
10032
+ },
10033
+ item: {
10034
+ borderRadius: "9px",
10035
+ padding: "2",
10036
+ display: "flex",
10037
+ justifyContent: "space-between",
10038
+ gap: 1.5,
10039
+ _hover: {
10040
+ backgroundColor: "accent.surface.hover"
10041
+ },
10042
+ "&:active": {
10043
+ backgroundColor: "accent.surface.active"
10044
+ },
10045
+ _checked: {
10046
+ backgroundColor: "accent.surface"
10047
+ },
10048
+ _highlighted: {
10049
+ backgroundColor: "ghost.surface.hover"
10050
+ }
10051
+ },
10052
+ itemGroupLabel: {
10053
+ paddingY: "1",
10054
+ fontWeight: "bold",
10055
+ fontSize: "xs"
10056
+ },
10057
+ itemCommand: {
10058
+ fontSize: "2xs"
10059
+ },
10060
+ separator: {
10061
+ color: "outline"
10062
+ },
10063
+ radioItem: {
10064
+ display: "flex",
10065
+ justifyContent: "space-between",
10066
+ gap: 2
10067
+ },
10068
+ triggerItem: {
10069
+ display: "flex",
10070
+ justifyContent: "space-between",
10071
+ gap: 1.5,
10072
+ alignItems: "center"
10073
+ },
10074
+ checkboxItem: {
10075
+ display: "flex",
10076
+ gap: 2,
10077
+ alignItems: "center",
10078
+ width: "full"
10079
+ }
10080
+ },
10081
+ variants: {
10082
+ variant: {
10083
+ core: {
10084
+ content: {
10085
+ border: "1px solid",
10086
+ borderColor: "core.outline"
10087
+ }
10088
+ },
10089
+ accent: {
10090
+ content: {
10091
+ border: "1px solid",
10092
+ borderColor: "core.outline"
10093
+ }
10094
+ },
10095
+ floating: {
10096
+ content: {
10097
+ border: "sm",
10098
+ borderColor: "floating.outline",
10099
+ boxShadow: "lg"
10100
+ }
10101
+ }
10102
+ }
10103
+ },
10104
+ defaultVariants: {
10105
+ variant: "core"
10106
+ }
10107
+ });
10108
+ var _a5, _b4;
9833
10109
  var nativeSelectSlotRecipe = defineSlotRecipe({
9834
10110
  slots: NativeSelectAnatomy.keys(),
9835
10111
  className: "spor-nativeSelect",
@@ -9873,12 +10149,12 @@ var nativeSelectSlotRecipe = defineSlotRecipe({
9873
10149
  variant: {
9874
10150
  core: {
9875
10151
  field: {
9876
- ...(_a4 = inputRecipe.variants) == null ? void 0 : _a4.variant.core
10152
+ ...(_a5 = inputRecipe.variants) == null ? void 0 : _a5.variant.core
9877
10153
  }
9878
10154
  },
9879
10155
  floating: {
9880
10156
  field: {
9881
- ...(_b3 = inputRecipe.variants) == null ? void 0 : _b3.variant.floating
10157
+ ...(_b4 = inputRecipe.variants) == null ? void 0 : _b4.variant.floating
9882
10158
  }
9883
10159
  }
9884
10160
  }
@@ -11192,7 +11468,8 @@ var slotRecipes = {
11192
11468
  toast: toastSlotRecipe,
11193
11469
  checkboxCard: choiceChipSlotRecipe,
11194
11470
  collapsible: collapsibleSlotRecipe,
11195
- tooltip: popoverSlotRecipe
11471
+ tooltip: popoverSlotRecipe,
11472
+ menu: menuSlotRecipe
11196
11473
  };
11197
11474
  var animations = defineTokens.animations({
11198
11475
  spin: {
@@ -12035,6 +12312,6 @@ var TooltipContent = forwardRef(
12035
12312
  );
12036
12313
  TooltipContent.displayName = "TooltipContent";
12037
12314
 
12038
- export { Accordion, AccordionItem, AccordionItemContent, AccordionItemTrigger, Alert, AttachedInputs, Autocomplete, AutocompleteItem, AutocompleteItemGroup, AutocompleteItemGroupLabel, Badge, Brand, Breadcrumb, Button, ButtonGroup, Calendar, CalendarCell, CalendarGrid, CalendarHeader, CalendarProvider, CardSelect, CardSelectContent, CardSelectTrigger, CargonetLogo, Checkbox, CheckboxGroup, ChoiceChip, Clipboard, ClipboardButton, CloseButton, CloseDrawerLine, Code, ColorInlineLoader, ColorModeButton, ColorModeIcon, ColorModeProvider, ColorSpinner, Combobox2 as Combobox, ContentLoader, DarkFullScreenLoader, DarkInlineLoader, DarkSpinner, DatePicker, DateRangePicker, DialogActionTrigger, DialogBackdrop, DialogBody, DialogCloseTrigger, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogRoot, DialogTitle, DialogTrigger, Drawer, DrawerActionTrigger, DrawerBackTrigger, DrawerBackdrop, DrawerBody, DrawerCloseTrigger, DrawerContent, DrawerFooter, DrawerFullScreenHeader, DrawerHeader, DrawerTitle, DrawerTrigger, Expandable, ExpandableAlert, ExpandableItem, Field3 as Field, FieldErrorText, FieldLabel, Fieldset, FieldsetContent, FieldsetErrorText, FieldsetHelperText, FieldsetLegend, FloatingActionButton, Heading, IconButton, InfoTag, Input, ItemDescription, ItemLabel, JumpButton, Language, LanguageProvider, LightFullScreenLoader, LightInlineLoader, LightSpinner, LineIcon, List, ListBox, ListIndicator, ListItem2 as ListItem, NativeSelect, Nudge, NudgeActions, NudgeCloseTrigger, NudgeContent, NudgeTrigger, NudgeWizardStep, NumericStepper, Pagination, PaginationEllipsis, PaginationItem, PaginationItems, PaginationNextTrigger, PaginationPrevTrigger, PasswordInput, PhoneNumberInput, PlayPauseButton, Popover2 as Popover, PopoverContent, PopoverTrigger, PressableCard, ProgressBar, ProgressIndicator, ProgressLoader, Radio, RadioCard, RadioCardGroup, RadioCardLabel, RadioGroup, RangeCalendar, ScrollCalendar, SearchInput, Select, SelectContent, SelectItem, SelectItemGroup, SelectItemText, SelectLabel, SelectRoot, SelectTrigger, SelectValueText, Separator, ServiceAlert, Skeleton, SkeletonCircle, SkeletonText, SkipButton, SporProvider, StaticCard, Stepper, StepperStep, SvgBox, Switch, Table, TableBody, TableColumnHeader, Tabs, TabsContent, TabsIndicator, TabsList, TabsTrigger, Text3 as Text, TextLink, Textarea, TimePicker, Tooltip, TooltipContent, TooltipTrigger, TravelTag, VyLogo, VyLogoPride, createTexts, createToast, fontFaces, slugify, system, themes, useCalendar, useColorMode, useColorModeValue, useTableSort, useTranslation };
12315
+ export { Accordion, AccordionItem, AccordionItemContent, AccordionItemTrigger, Alert, AttachedInputs, Autocomplete, AutocompleteItem, AutocompleteItemGroup, AutocompleteItemGroupLabel, Badge, Brand, Breadcrumb, Button, ButtonGroup, Calendar, CalendarCell, CalendarGrid, CalendarHeader, CalendarProvider, CardSelect, CardSelectContent, CardSelectTrigger, CargonetLogo, Checkbox, CheckboxGroup, ChoiceChip, Clipboard, ClipboardButton, CloseButton, CloseDrawerLine, Code, ColorInlineLoader, ColorModeButton, ColorModeIcon, ColorModeProvider, ColorSpinner, Combobox2 as Combobox, ContentLoader, DarkFullScreenLoader, DarkInlineLoader, DarkSpinner, DatePicker, DateRangePicker, DialogActionTrigger, DialogBackdrop, DialogBody, DialogCloseTrigger, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogRoot, DialogTitle, DialogTrigger, Drawer, DrawerActionTrigger, DrawerBackTrigger, DrawerBackdrop, DrawerBody, DrawerCloseTrigger, DrawerContent, DrawerFooter, DrawerFullScreenHeader, DrawerHeader, DrawerTitle, DrawerTrigger, Expandable, ExpandableAlert, ExpandableItem, Field3 as Field, FieldErrorText, FieldLabel, Fieldset, FieldsetContent, FieldsetErrorText, FieldsetHelperText, FieldsetLegend, FloatingActionButton, Heading, IconButton, InfoTag, Input, ItemDescription, ItemLabel, JumpButton, Language, LanguageProvider, LightFullScreenLoader, LightInlineLoader, LightSpinner, LineIcon, List, ListBox, ListIndicator, ListItem2 as ListItem, Menu, MenuCheckboxItem, MenuContent, MenuItem, MenuItemGroup, MenuRadioItem, MenuRadioItemGroup, MenuSeparator, MenuTrigger, MenuTriggerItem, NativeSelect, Nudge, NudgeActions, NudgeCloseTrigger, NudgeContent, NudgeTrigger, NudgeWizardStep, NumericStepper, Pagination, PaginationEllipsis, PaginationItem, PaginationItems, PaginationNextTrigger, PaginationPrevTrigger, PasswordInput, PhoneNumberInput, PlayPauseButton, Popover2 as Popover, PopoverContent, PopoverTrigger, PressableCard, ProgressBar, ProgressIndicator, ProgressLoader, Radio, RadioCard, RadioCardGroup, RadioCardLabel, RadioGroup, RangeCalendar, ScrollCalendar, SearchInput, Select, SelectContent, SelectItem, SelectItemGroup, SelectItemText, SelectLabel, SelectRoot, SelectTrigger, SelectValueText, Separator, ServiceAlert, Skeleton, SkeletonCircle, SkeletonText, SkipButton, SporProvider, StaticCard, Stepper, StepperStep, SvgBox, Switch, Table, TableBody, TableColumnHeader, Tabs, TabsContent, TabsIndicator, TabsList, TabsTrigger, Text3 as Text, TextLink, Textarea, TimePicker, Tooltip, TooltipContent, TooltipTrigger, TravelTag, VyLogo, VyLogoPride, createTexts, createToast, fontFaces, slugify, system, themes, useCalendar, useColorMode, useColorModeValue, useMenuContext, useTableSort, useTranslation };
12039
12316
  //# sourceMappingURL=out.js.map
12040
12317
  //# sourceMappingURL=index.mjs.map