@atom-learning/components 6.16.0-beta.4 → 6.16.1-beta.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.
Files changed (98) hide show
  1. package/dist/components/action-icon/ActionIcon.d.ts +0 -1
  2. package/dist/components/action-icon/ActionIcon.js +2 -4
  3. package/dist/components/action-icon/ActionIcon.js.map +1 -1
  4. package/dist/components/banner/banner-regular/BannerRegular.d.ts +0 -1
  5. package/dist/components/banner/banner-regular/BannerRegularDismiss.d.ts +1 -2
  6. package/dist/components/banner/banner-slim/BannerSlim.d.ts +0 -1
  7. package/dist/components/banner/banner-slim/BannerSlimContainer.d.ts +1 -1
  8. package/dist/components/banner/banner-slim/BannerSlimContainer.js +3 -3
  9. package/dist/components/banner/banner-slim/BannerSlimContainer.js.map +1 -1
  10. package/dist/components/banner/banner-slim/BannerSlimDismiss.d.ts +1 -2
  11. package/dist/components/button/Button.d.ts +0 -1
  12. package/dist/components/button/Button.js +13 -17
  13. package/dist/components/button/Button.js.map +1 -1
  14. package/dist/components/data-table/DataTableTable.js +2 -2
  15. package/dist/components/data-table/DataTableTable.js.map +1 -1
  16. package/dist/components/data-table/drag-and-drop/DragAndDropTable.js +6 -3
  17. package/dist/components/data-table/drag-and-drop/DragAndDropTable.js.map +1 -1
  18. package/dist/components/dialog/DialogContent.js +1 -1
  19. package/dist/components/dialog/DialogContent.js.map +1 -1
  20. package/dist/components/dropdown-menu/DropdownMenu.d.ts +1 -2
  21. package/dist/components/dropdown-menu/DropdownMenuLinkItem.d.ts +1 -2
  22. package/dist/components/dropdown-menu/DropdownMenuLinkItem.js +8 -13
  23. package/dist/components/dropdown-menu/DropdownMenuLinkItem.js.map +1 -1
  24. package/dist/components/index.d.ts +2 -1
  25. package/dist/components/link/Link.d.ts +0 -1
  26. package/dist/components/link/Link.js +9 -13
  27. package/dist/components/link/Link.js.map +1 -1
  28. package/dist/components/navigation/NavigationMenu.d.ts +0 -2
  29. package/dist/components/navigation/NavigationMenuDropdownItem.d.ts +0 -1
  30. package/dist/components/navigation/NavigationMenuLink.d.ts +0 -1
  31. package/dist/components/navigation/NavigationMenuLink.js +11 -22
  32. package/dist/components/navigation/NavigationMenuLink.js.map +1 -1
  33. package/dist/components/navigation-menu-vertical/NavigationMenuVertical.d.ts +1 -3
  34. package/dist/components/navigation-menu-vertical/NavigationMenuVerticalLink.d.ts +2 -4
  35. package/dist/components/navigation-menu-vertical/NavigationMenuVerticalLink.js +3 -5
  36. package/dist/components/navigation-menu-vertical/NavigationMenuVerticalLink.js.map +1 -1
  37. package/dist/components/number-input/NumberInput.js +2 -2
  38. package/dist/components/number-input/NumberInput.js.map +1 -1
  39. package/dist/components/number-input/NumberInputStepper.d.ts +1 -2
  40. package/dist/components/pagination/PaginationNextButton.d.ts +1 -2
  41. package/dist/components/pagination/PaginationPreviousButton.d.ts +1 -2
  42. package/dist/components/password-field/PasswordField.js +1 -1
  43. package/dist/components/password-field/PasswordField.js.map +1 -1
  44. package/dist/components/segmented-control/SegmentedControlBadge.js +1 -1
  45. package/dist/components/segmented-control/SegmentedControlBadge.js.map +1 -1
  46. package/dist/components/select-menu/SelectMenu.d.ts +23 -0
  47. package/dist/components/select-menu/SelectMenu.js +26 -0
  48. package/dist/components/select-menu/SelectMenu.js.map +1 -0
  49. package/dist/components/select-menu/SelectMenuContent.d.ts +3 -0
  50. package/dist/components/select-menu/SelectMenuContent.js +66 -0
  51. package/dist/components/select-menu/SelectMenuContent.js.map +1 -0
  52. package/dist/components/select-menu/SelectMenuContext.d.ts +9 -0
  53. package/dist/components/select-menu/SelectMenuContext.js +11 -0
  54. package/dist/components/select-menu/SelectMenuContext.js.map +1 -0
  55. package/dist/components/select-menu/SelectMenuItem.d.ts +3 -0
  56. package/dist/components/select-menu/SelectMenuItem.js +59 -0
  57. package/dist/components/select-menu/SelectMenuItem.js.map +1 -0
  58. package/dist/components/select-menu/SelectMenuLabel.d.ts +8 -0
  59. package/dist/components/select-menu/SelectMenuLabel.js +16 -0
  60. package/dist/components/select-menu/SelectMenuLabel.js.map +1 -0
  61. package/dist/components/select-menu/SelectMenuSeparator.d.ts +4 -0
  62. package/dist/components/select-menu/SelectMenuSeparator.js +13 -0
  63. package/dist/components/select-menu/SelectMenuSeparator.js.map +1 -0
  64. package/dist/components/select-menu/SelectMenuTrigger.d.ts +7 -0
  65. package/dist/components/select-menu/SelectMenuTrigger.js +91 -0
  66. package/dist/components/select-menu/SelectMenuTrigger.js.map +1 -0
  67. package/dist/components/select-menu-field/SelectMenuField.d.ts +14 -0
  68. package/dist/components/select-menu-field/SelectMenuField.js +46 -0
  69. package/dist/components/select-menu-field/SelectMenuField.js.map +1 -0
  70. package/dist/components/skeleton-loader/SkeletonCard.js +1 -1
  71. package/dist/components/skeleton-loader/SkeletonCard.js.map +1 -1
  72. package/dist/components/sortable/Handle.d.ts +1 -2
  73. package/dist/components/tile-interactive/TileInteractive.d.ts +1 -3
  74. package/dist/components/tile-interactive/TileInteractive.js +2 -4
  75. package/dist/components/tile-interactive/TileInteractive.js.map +1 -1
  76. package/dist/components/tile-toggle-group/TileToggleGroupItem.d.ts +1 -3
  77. package/dist/components/tile-toggle-group/TileToggleGroupRoot.js +3 -3
  78. package/dist/components/tile-toggle-group/TileToggleGroupRoot.js.map +1 -1
  79. package/dist/components/toast/ToastProvider.js +2 -1
  80. package/dist/components/toast/ToastProvider.js.map +1 -1
  81. package/dist/components/top-bar/TopBar.d.ts +1 -2
  82. package/dist/components/tree/Tree.d.ts +1 -1
  83. package/dist/components/tree/TreeIcon.js +1 -1
  84. package/dist/components/tree/TreeIcon.js.map +1 -1
  85. package/dist/components/tree/TreeListItem.js +1 -1
  86. package/dist/components/tree/TreeListItem.js.map +1 -1
  87. package/dist/components/tree/TreeText.d.ts +1 -1
  88. package/dist/components/tree/TreeText.js +3 -3
  89. package/dist/components/tree/TreeText.js.map +1 -1
  90. package/dist/docgen.json +1 -1
  91. package/dist/index.cjs.js +345 -110
  92. package/dist/index.cjs.js.map +1 -1
  93. package/dist/index.js +3 -2
  94. package/package.json +3 -1
  95. package/src/index.css +2 -0
  96. package/dist/components/router-provider/RouterProvider.d.ts +0 -16
  97. package/dist/components/router-provider/RouterProvider.js +0 -19
  98. package/dist/components/router-provider/RouterProvider.js.map +0 -1
package/dist/index.cjs.js CHANGED
@@ -82,6 +82,8 @@ let _radix_ui_react_navigation_menu = require("@radix-ui/react-navigation-menu")
82
82
  _radix_ui_react_navigation_menu = __toESM(_radix_ui_react_navigation_menu);
83
83
  let _radix_ui_react_progress = require("@radix-ui/react-progress");
84
84
  _radix_ui_react_progress = __toESM(_radix_ui_react_progress);
85
+ let _radix_ui_react_select = require("@radix-ui/react-select");
86
+ _radix_ui_react_select = __toESM(_radix_ui_react_select);
85
87
  let _radix_ui_react_slider = require("@radix-ui/react-slider");
86
88
  let _radix_ui_react_switch = require("@radix-ui/react-switch");
87
89
  _radix_ui_react_switch = __toESM(_radix_ui_react_switch);
@@ -486,21 +488,6 @@ var getExternalAnchorProps = (url) => isExternalUrl(url) ? {
486
488
  rel: "noopener noreferrer"
487
489
  } : {};
488
490
  //#endregion
489
- //#region src/components/router-provider/RouterProvider.tsx
490
- var RouterContext = react.createContext({});
491
- var RouterProvider = ({ link, children }) => {
492
- const value = react.useMemo(() => ({ link }), [link]);
493
- return /* @__PURE__ */ react.createElement(RouterContext.Provider, { value }, children);
494
- };
495
- var isAbsoluteUrl = (url) => /^https?:\/\//.test(url || "");
496
- var EMPTY = {};
497
- var useRouterLinkProps = (href, { reloadDocument } = {}) => {
498
- const { link } = react.useContext(RouterContext);
499
- if (!link || !href || isAbsoluteUrl(href) || reloadDocument) return EMPTY;
500
- return { as: link };
501
- };
502
- RouterProvider.displayName = "RouterProvider";
503
- //#endregion
504
491
  //#region src/components/action-icon/ActionIcon.constants.ts
505
492
  var ActionIconSizeMap = {
506
493
  xs: "sm",
@@ -605,12 +592,11 @@ var StyledButton$5 = styled("button", {
605
592
  isRounded: { true: ["rounded-full"] }
606
593
  }
607
594
  }, { enabledResponsiveVariants: true });
608
- var ActionIcon = react.forwardRef(({ children, theme = "primary", appearance = "simple", size = "sm", label, href, disabled, hasTooltip = true, tooltipSide, reloadDocument, ...remainingProps }, ref) => {
595
+ var ActionIcon = react.forwardRef(({ children, theme = "primary", appearance = "simple", size = "sm", label, href, disabled, hasTooltip = true, tooltipSide, ...remainingProps }, ref) => {
609
596
  const INVALID_CHILDREN_MESSAGE = `A single ${Icon.displayName} component is permitted as a child of ${ActionIcon.displayName}`;
610
597
  (0, invariant.default)(react.Children.count(children) === 1, INVALID_CHILDREN_MESSAGE);
611
- const routerLinkProps = useRouterLinkProps(href, { reloadDocument });
612
598
  const optionalLinkProps = href ? {
613
- as: routerLinkProps.as || "a",
599
+ as: "a",
614
600
  href: disabled ? void 0 : href,
615
601
  onClick: void 0,
616
602
  "aria-disabled": !!disabled
@@ -864,22 +850,19 @@ var LoaderContentsWrapper = styled("span", {
864
850
  defaultVariants: { size: "md" }
865
851
  }, { enabledResponsiveVariants: true });
866
852
  var WithLoader = ({ size, children }) => /* @__PURE__ */ react.createElement(react.Fragment, null, /* @__PURE__ */ react.createElement(Loader, { className: "absolute" }), /* @__PURE__ */ react.createElement(LoaderContentsWrapper, { size }, children));
867
- var Button = react.forwardRef(({ children, as, href, isLoading = false, onClick, disabled, reloadDocument, ...rest }, ref) => {
868
- const routerLinkProps = useRouterLinkProps(href, { reloadDocument });
869
- return /* @__PURE__ */ react.createElement(StyledButton, {
870
- as: as || routerLinkProps.as || (href ? "a" : void 0),
871
- ...!disabled && !isLoading && {
872
- href,
873
- onClick
874
- },
875
- isLoading,
876
- type: !href ? "button" : void 0,
877
- disabled,
878
- ...rest,
879
- ...getExternalAnchorProps(href),
880
- ref
881
- }, isLoading ? /* @__PURE__ */ react.createElement(WithLoader, { size: rest.size }, children) : children);
882
- });
853
+ var Button = react.forwardRef(({ children, as, href, isLoading = false, onClick, disabled, ...rest }, ref) => /* @__PURE__ */ react.createElement(StyledButton, {
854
+ as: as || (href ? "a" : void 0),
855
+ ...!disabled && !isLoading && {
856
+ href,
857
+ onClick
858
+ },
859
+ isLoading,
860
+ type: !href ? "button" : void 0,
861
+ disabled,
862
+ ...rest,
863
+ ...getExternalAnchorProps(href),
864
+ ref
865
+ }, isLoading ? /* @__PURE__ */ react.createElement(WithLoader, { size: rest.size }, children) : children));
883
866
  Button.displayName = "Button";
884
867
  //#endregion
885
868
  //#region src/components/heading/Heading.tsx
@@ -1998,7 +1981,7 @@ var StyledBannerSlimContainer = styled(BannerContainer, {
1998
1981
  md: ["px-6"]
1999
1982
  } }
2000
1983
  }, { enabledResponsiveVariants: true });
2001
- var BannerSlimContainer = (props) => {
1984
+ var BannerSlimContainer = ({ className, ...rest }) => {
2002
1985
  const { size } = useBannerContext();
2003
1986
  const direction = react.useMemo(() => {
2004
1987
  if (typeof size === "string") return toDirection[size];
@@ -2013,9 +1996,9 @@ var BannerSlimContainer = (props) => {
2013
1996
  return "flex-wrap md:flex-nowrap";
2014
1997
  }, [size]);
2015
1998
  return /* @__PURE__ */ react.createElement(StyledBannerSlimContainer, {
2016
- ...props,
1999
+ ...rest,
2017
2000
  sizeWorkaround: size,
2018
- className: cn(direction, align, "gap-4", wrap, props.className)
2001
+ className: cn(direction, align, "gap-4", wrap, className)
2019
2002
  });
2020
2003
  };
2021
2004
  BannerSlimContainer.displayName = "BannerSlimContainer";
@@ -2431,7 +2414,7 @@ var TreeListItem = react.forwardRef(({ className, ...props }, ref) => /* @__PURE
2431
2414
  ...props,
2432
2415
  ref,
2433
2416
  role: "treeitem",
2434
- className: cn("flex items-center gap-2 not-first:mt-0.5", className)
2417
+ className: cn("flex", "items-center", "gap-2", "not-first:mt-0.5", className)
2435
2418
  }));
2436
2419
  //#endregion
2437
2420
  //#region src/components/tree/TreeCollapsible.tsx
@@ -2486,14 +2469,14 @@ var TreeCollapsibleContent = react.default.forwardRef(({ children, className, ..
2486
2469
  var TreeIcon = ({ className, ...props }) => /* @__PURE__ */ react.createElement(Icon, {
2487
2470
  size: "md",
2488
2471
  ...props,
2489
- className: cn("my-1 shrink-0 self-start", className)
2472
+ className: cn("my-1", "shrink-0", "self-start", className)
2490
2473
  });
2491
2474
  //#endregion
2492
2475
  //#region src/components/tree/TreeText.tsx
2493
- var TreeText = (props) => /* @__PURE__ */ react.default.createElement(Text, {
2476
+ var TreeText = ({ className, ...rest }) => /* @__PURE__ */ react.default.createElement(Text, {
2494
2477
  as: "span",
2495
- ...props,
2496
- className: cn("py-0.5", "whitespace-nowrap", "overflow-x-hidden", "text-ellipsis", props.className),
2478
+ ...rest,
2479
+ className: cn("py-0.5", "whitespace-nowrap", "overflow-x-hidden", "text-ellipsis", className),
2497
2480
  size: "md"
2498
2481
  });
2499
2482
  //#endregion
@@ -3316,18 +3299,15 @@ var StyledLink = styled("a", {
3316
3299
  },
3317
3300
  defaultVariants: { size: "md" }
3318
3301
  }, { enabledResponsiveVariants: true });
3319
- var Link = react.forwardRef(({ as, disabled, href, reloadDocument, ...rest }, ref) => {
3320
- const routerLinkProps = useRouterLinkProps(href, { reloadDocument });
3321
- return /* @__PURE__ */ react.createElement(StyledLink, {
3322
- as: as || routerLinkProps.as || (!href ? "button" : void 0),
3323
- noCapsize: !href ? true : void 0,
3324
- href,
3325
- ...disabled && { disabled: true },
3326
- ...rest,
3327
- ...getExternalAnchorProps(href),
3328
- ref
3329
- });
3330
- });
3302
+ var Link = react.forwardRef(({ as, disabled, href, ...rest }, ref) => /* @__PURE__ */ react.createElement(StyledLink, {
3303
+ as: as || (!href ? "button" : void 0),
3304
+ noCapsize: !href ? true : void 0,
3305
+ href,
3306
+ ...disabled && { disabled: true },
3307
+ ...rest,
3308
+ ...getExternalAnchorProps(href),
3309
+ ref
3310
+ }));
3331
3311
  Link.displayName = "Link";
3332
3312
  //#endregion
3333
3313
  //#region src/components/field-wrapper/FieldWrapper.tsx
@@ -3511,7 +3491,7 @@ var PasswordField = ({ className, hideLabel, label = "Password", name, prompt =
3511
3491
  prompt,
3512
3492
  required: Boolean(validation?.required),
3513
3493
  appearance: formAppearance,
3514
- className: cn(className, "relative")
3494
+ className: cn("relative", className)
3515
3495
  }, /* @__PURE__ */ react.createElement(PasswordInput, {
3516
3496
  autoComplete: "current-password",
3517
3497
  name,
@@ -4753,14 +4733,14 @@ var DataTableTable = ({ sortable, striped, theme = "white", className, scrollOpt
4753
4733
  numberOfStickyColumns: scrollOptions.numberOfStickyColumns,
4754
4734
  scrollContainerCls: scrollOptions.scrollContainerCls,
4755
4735
  scrollContainerkey: buildScrollContainerKey(),
4756
- className: cn(className, isPending && [
4736
+ className: cn(isPending && [
4757
4737
  "opacity-50",
4758
4738
  "pointer-events-none",
4759
4739
  "transition-opacity",
4760
4740
  "duration-250",
4761
4741
  "linear",
4762
4742
  "delay-150"
4763
- ])
4743
+ ], className)
4764
4744
  }, /* @__PURE__ */ react.createElement(DataTableHead, {
4765
4745
  theme,
4766
4746
  sortable,
@@ -4936,11 +4916,14 @@ var DragAndDropTable = ({ idColumn = "id", onDragAndDrop, sortable, striped, the
4936
4916
  sortableIds: rowIds
4937
4917
  }, /* @__PURE__ */ react.createElement(DataTableLoading, null), /* @__PURE__ */ react.createElement(Table, {
4938
4918
  ...props,
4939
- className: cn(className, isPending && [
4919
+ className: cn(isPending && [
4940
4920
  "opacity-50",
4941
4921
  "pointer-events-none",
4942
- "transition-opacity,duration-250,linear,delay-150"
4943
- ])
4922
+ "transition-opacity",
4923
+ "duration-250",
4924
+ "linear",
4925
+ "delay-150"
4926
+ ], className)
4944
4927
  }, /* @__PURE__ */ react.createElement(DataTableHead, {
4945
4928
  theme,
4946
4929
  sortable
@@ -5879,7 +5862,7 @@ var DialogContent = ({ size = "sm", children, closeDialogText = "Close dialog",
5879
5862
  hasTooltip: false,
5880
5863
  size: "md",
5881
5864
  theme: "neutral",
5882
- className: "absolute top-4 right-4 size-12"
5865
+ className: "top-safe-offset-4 right-safe-offset-4 absolute size-12"
5883
5866
  }, /* @__PURE__ */ react.createElement(Icon, { is: _atom_learning_icons.Close })), react.Children.map(children, (child) => child?.type !== DialogBackground && child))));
5884
5867
  //#endregion
5885
5868
  //#region src/components/dialog/DialogFooter.tsx
@@ -6112,18 +6095,14 @@ var DropdownMenuItem = styled(_radix_ui_react_dropdown_menu.Item, { base: [
6112
6095
  //#endregion
6113
6096
  //#region src/components/dropdown-menu/DropdownMenuLinkItem.tsx
6114
6097
  var StyledLink$2 = styled("a", { base: ["no-underline"] });
6115
- var DropdownMenuLinkItem = ({ children, href, reloadDocument, ...props }) => {
6116
- const routerLinkProps = useRouterLinkProps(href, { reloadDocument });
6117
- return /* @__PURE__ */ react.default.createElement(DropdownMenuItem, {
6118
- ...props,
6119
- asChild: true
6120
- }, /* @__PURE__ */ react.default.createElement(StyledLink$2, {
6121
- as: routerLinkProps.as,
6122
- href,
6123
- role: "menuitem",
6124
- ...getExternalAnchorProps(href)
6125
- }, children));
6126
- };
6098
+ var DropdownMenuLinkItem = ({ children, href, ...props }) => /* @__PURE__ */ react.default.createElement(DropdownMenuItem, {
6099
+ ...props,
6100
+ asChild: true
6101
+ }, /* @__PURE__ */ react.default.createElement(StyledLink$2, {
6102
+ href,
6103
+ role: "menuitem",
6104
+ ...getExternalAnchorProps(href)
6105
+ }, children));
6127
6106
  //#endregion
6128
6107
  //#region src/components/dropdown-menu/DropdownMenuSeparator.tsx
6129
6108
  var DropdownMenuSeparator = styled(_radix_ui_react_dropdown_menu.Separator, { base: [
@@ -6707,27 +6686,17 @@ var StyledLink$1 = styled(_radix_ui_react_navigation_menu.Link, {
6707
6686
  ]
6708
6687
  } }
6709
6688
  });
6710
- var NavigationMenuLink = react.default.forwardRef(({ children, href, disabled, className, variant = "link", ref: _ref, reloadDocument, ...props }, forwardedRef) => {
6711
- const RouterLink = useRouterLinkProps(href, { reloadDocument }).as;
6712
- return /* @__PURE__ */ react.default.createElement(ListItem, null, disabled ? /* @__PURE__ */ react.default.createElement(DisabledButton, {
6713
- disabled: true,
6714
- className
6715
- }, children) : RouterLink ? /* @__PURE__ */ react.default.createElement(StyledLink$1, {
6716
- href,
6717
- ref: forwardedRef,
6718
- elementType: variant,
6719
- className,
6720
- asChild: true,
6721
- ...props
6722
- }, /* @__PURE__ */ react.default.createElement(RouterLink, { href }, children)) : /* @__PURE__ */ react.default.createElement(StyledLink$1, {
6723
- href,
6724
- ref: forwardedRef,
6725
- elementType: variant,
6726
- className,
6727
- ...getExternalAnchorProps(href),
6728
- ...props
6729
- }, children));
6730
- });
6689
+ var NavigationMenuLink = react.default.forwardRef(({ children, href, disabled, className, variant = "link", ref: _ref, ...props }, forwardedRef) => /* @__PURE__ */ react.default.createElement(ListItem, null, disabled ? /* @__PURE__ */ react.default.createElement(DisabledButton, {
6690
+ disabled: true,
6691
+ className
6692
+ }, children) : /* @__PURE__ */ react.default.createElement(StyledLink$1, {
6693
+ href,
6694
+ ref: forwardedRef,
6695
+ elementType: variant,
6696
+ className,
6697
+ ...getExternalAnchorProps(href),
6698
+ ...props
6699
+ }, children)));
6731
6700
  NavigationMenuLink.displayName = "NavigationMenuLink";
6732
6701
  //#endregion
6733
6702
  //#region src/components/navigation/NavigationMenuDropdownItem.tsx
@@ -6983,10 +6952,9 @@ var StyledNavigationMenuVerticalLink = styled(_radix_ui_react_navigation_menu.Li
6983
6952
  lg: ["min-h-12"]
6984
6953
  } }
6985
6954
  });
6986
- var NavigationMenuVerticalLink = ({ as, href, children, reloadDocument, ...rest }) => {
6987
- const routerLinkProps = useRouterLinkProps(href, { reloadDocument });
6988
- const Component = as || routerLinkProps.as || (href ? "a" : "button");
6989
- const componentProps = as || routerLinkProps.as ? {} : href ? getExternalAnchorProps(href) : { type: "button" };
6955
+ var NavigationMenuVerticalLink = ({ as, href, children, ...rest }) => {
6956
+ const Component = as || (href ? "a" : "button");
6957
+ const componentProps = as ? {} : href ? getExternalAnchorProps(href) : { type: "button" };
6990
6958
  return /* @__PURE__ */ react.default.createElement(NavigationMenuVerticalItem, null, /* @__PURE__ */ react.default.createElement(StyledNavigationMenuVerticalLink, {
6991
6959
  size: "lg",
6992
6960
  href,
@@ -7246,7 +7214,7 @@ var NumberInput = react.forwardRef(({ value, defaultValue = 0, onValueChange, mi
7246
7214
  }, /* @__PURE__ */ react.createElement(NumberInputStepper, {
7247
7215
  onClick: decrement,
7248
7216
  icon: _atom_learning_icons.Minus,
7249
- className: cn(emphasis !== "bold" && "border-r-none rounded-r-none"),
7217
+ className: cn(emphasis !== "bold" && ["border-r-none", "rounded-r-none"]),
7250
7218
  size: iconSize,
7251
7219
  fieldAppearance: appearance,
7252
7220
  fieldTheme: theme,
@@ -7258,7 +7226,7 @@ var NumberInput = react.forwardRef(({ value, defaultValue = 0, onValueChange, mi
7258
7226
  }), /* @__PURE__ */ react.createElement(Input, inputProps), /* @__PURE__ */ react.createElement(NumberInputStepper, {
7259
7227
  onClick: increment,
7260
7228
  icon: _atom_learning_icons.Plus,
7261
- className: cn(emphasis !== "bold" && "border-l-none rounded-l-none"),
7229
+ className: cn(emphasis !== "bold" && ["border-l-none", "rounded-l-none"]),
7262
7230
  size: iconSize,
7263
7231
  fieldAppearance: appearance,
7264
7232
  fieldTheme: theme,
@@ -7820,6 +7788,272 @@ var SelectField = ({ className, hideLabel, children, name, label, validation, pr
7820
7788
  };
7821
7789
  SelectField.displayName = "SelectField";
7822
7790
  //#endregion
7791
+ //#region src/components/select-menu/SelectMenuContent.tsx
7792
+ var Content$2 = styled(_radix_ui_react_select.Content, {
7793
+ base: [
7794
+ "bg-white",
7795
+ "rounded-md",
7796
+ "shadow-lg",
7797
+ "z-10",
7798
+ "overflow-hidden",
7799
+ "will-change-transform",
7800
+ "will-change-opacity",
7801
+ "[--slide-opacity-out:0]",
7802
+ "data-[side=top]:[--slide-direction-out-y:-4px]",
7803
+ "data-[side=right]:[--slide-direction-out-x:4px]",
7804
+ "data-[side=bottom]:[--slide-direction-out-y:4px]",
7805
+ "data-[side=left]:[--slide-direction-out-x:-4px]",
7806
+ "motion-safe:data-[state=open]:animate-slide-direction-in",
7807
+ "motion-safe:data-[state=closed]:animate-slide-direction-out"
7808
+ ],
7809
+ variants: { position: {
7810
+ popper: ["max-h-(--radix-select-content-available-height)", "min-w-(--radix-select-trigger-width)"],
7811
+ "item-aligned": []
7812
+ } }
7813
+ });
7814
+ var Viewport = styled(_radix_ui_react_select.Viewport, {
7815
+ base: ["p-1", "w-full"],
7816
+ variants: { position: {
7817
+ popper: ["h-(--radix-select-content-available-height)"],
7818
+ "item-aligned": []
7819
+ } }
7820
+ });
7821
+ var ScrollUpButton = styled(_radix_ui_react_select.ScrollUpButton, { base: [
7822
+ "flex",
7823
+ "items-center",
7824
+ "justify-center",
7825
+ "h-6",
7826
+ "cursor-default"
7827
+ ] });
7828
+ var ScrollDownButton = styled(_radix_ui_react_select.ScrollDownButton, { base: [
7829
+ "flex",
7830
+ "items-center",
7831
+ "justify-center",
7832
+ "h-6",
7833
+ "cursor-default"
7834
+ ] });
7835
+ var SelectMenuContent = react.forwardRef(({ children, position = "popper", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ react.createElement(_radix_ui_react_select.Portal, null, /* @__PURE__ */ react.createElement(Content$2, {
7836
+ ref,
7837
+ position,
7838
+ sideOffset,
7839
+ ...props
7840
+ }, /* @__PURE__ */ react.createElement(ScrollUpButton, null, /* @__PURE__ */ react.createElement(Icon, {
7841
+ is: _atom_learning_icons.ChevronUp,
7842
+ className: "text-grey-700 size-4"
7843
+ })), /* @__PURE__ */ react.createElement(Viewport, { position }, children), /* @__PURE__ */ react.createElement(ScrollDownButton, null, /* @__PURE__ */ react.createElement(Icon, {
7844
+ is: _atom_learning_icons.ChevronDown,
7845
+ className: "text-grey-700 size-4"
7846
+ })))));
7847
+ SelectMenuContent.displayName = "SelectMenuContent";
7848
+ //#endregion
7849
+ //#region src/components/select-menu/SelectMenuContext.tsx
7850
+ var SelectMenuContext = react.createContext({
7851
+ size: "md",
7852
+ theme: "grey"
7853
+ });
7854
+ var useSelectMenuContext = () => react.useContext(SelectMenuContext);
7855
+ //#endregion
7856
+ //#region src/components/select-menu/SelectMenuItem.tsx
7857
+ var Item = styled(_radix_ui_react_select.Item, {
7858
+ base: [
7859
+ "relative",
7860
+ "flex",
7861
+ "items-center",
7862
+ "text-grey-1000",
7863
+ "font-body",
7864
+ "font-normal",
7865
+ "cursor-pointer",
7866
+ "rounded-sm",
7867
+ "outline-none",
7868
+ "data-disabled:cursor-not-allowed",
7869
+ "data-disabled:opacity-30",
7870
+ "data-disabled:pointer-events-none",
7871
+ "data-highlighted:bg-grey-100",
7872
+ "data-highlighted:outline-none"
7873
+ ],
7874
+ variants: { size: {
7875
+ sm: [
7876
+ "py-1.5",
7877
+ "pl-7",
7878
+ "pr-4",
7879
+ "text-sm"
7880
+ ],
7881
+ md: [
7882
+ "py-2",
7883
+ "pl-8",
7884
+ "pr-6"
7885
+ ],
7886
+ lg: [
7887
+ "py-2",
7888
+ "pl-8",
7889
+ "pr-6"
7890
+ ]
7891
+ } }
7892
+ });
7893
+ var SelectMenuItem = react.forwardRef(({ children, ...props }, ref) => {
7894
+ const { size } = useSelectMenuContext();
7895
+ return /* @__PURE__ */ react.createElement(Item, {
7896
+ ref,
7897
+ size,
7898
+ ...props
7899
+ }, /* @__PURE__ */ react.createElement(_radix_ui_react_select.ItemIndicator, { className: "absolute left-2 inline-flex items-center" }, /* @__PURE__ */ react.createElement(Icon, {
7900
+ is: _atom_learning_icons.Ok,
7901
+ className: size === "sm" ? "size-3" : "size-4"
7902
+ })), /* @__PURE__ */ react.createElement(_radix_ui_react_select.ItemText, null, children));
7903
+ });
7904
+ SelectMenuItem.displayName = "SelectMenuItem";
7905
+ //#endregion
7906
+ //#region src/components/select-menu/SelectMenuLabel.tsx
7907
+ var SelectMenuLabel = ({ className, ...props }) => /* @__PURE__ */ react.createElement(Text, {
7908
+ as: _radix_ui_react_select.Label,
7909
+ size: "sm",
7910
+ className: cn("p-2", "mb-1", "text-text-subtle", className),
7911
+ ...props
7912
+ });
7913
+ SelectMenuLabel.displayName = "SelectMenuLabel";
7914
+ //#endregion
7915
+ //#region src/components/select-menu/SelectMenuSeparator.tsx
7916
+ var SelectMenuSeparator = styled(_radix_ui_react_select.Separator, { base: [
7917
+ "h-px",
7918
+ "bg-grey-200",
7919
+ "my-2",
7920
+ "mx-1"
7921
+ ] });
7922
+ //#endregion
7923
+ //#region src/components/select-menu/SelectMenuTrigger.tsx
7924
+ var Trigger$2 = styled(_radix_ui_react_select.Trigger, {
7925
+ base: [
7926
+ "appearance-none",
7927
+ "rounded-md",
7928
+ "block",
7929
+ "w-full",
7930
+ "font-body",
7931
+ "font-normal",
7932
+ "leading-[1.4]",
7933
+ "text-grey-1000",
7934
+ "text-left",
7935
+ "relative",
7936
+ "inline-flex",
7937
+ "items-center",
7938
+ "border-none",
7939
+ "hover:cursor-pointer",
7940
+ "disabled:opacity-30",
7941
+ "disabled:cursor-not-allowed",
7942
+ "focus:outline-2",
7943
+ "focus:outline-blue-800",
7944
+ "focus:outline-offset-1",
7945
+ "focus:outline-solid",
7946
+ "focus:z-1"
7947
+ ],
7948
+ variants: {
7949
+ size: {
7950
+ sm: [
7951
+ "h-8",
7952
+ "pl-2",
7953
+ "pr-8",
7954
+ "text-sm"
7955
+ ],
7956
+ md: [
7957
+ "h-10",
7958
+ "pl-3",
7959
+ "pr-10",
7960
+ "text-md"
7961
+ ],
7962
+ lg: [
7963
+ "h-12",
7964
+ "pl-3",
7965
+ "pr-10",
7966
+ "text-md"
7967
+ ]
7968
+ },
7969
+ theme: {
7970
+ white: ["bg-white"],
7971
+ grey: ["bg-grey-100"]
7972
+ },
7973
+ state: { error: ["bg-danger-light", "focus:outline-danger"] }
7974
+ }
7975
+ });
7976
+ var TriggerIcon = styled(Icon, {
7977
+ base: [
7978
+ "absolute",
7979
+ "top-1/2",
7980
+ "-translate-y-1/2",
7981
+ "pointer-events-none",
7982
+ "text-grey-700"
7983
+ ],
7984
+ variants: { size: {
7985
+ sm: ["right-2", "size-4"],
7986
+ md: ["right-3", "size-5"],
7987
+ lg: ["right-3", "size-5"]
7988
+ } }
7989
+ });
7990
+ var SelectMenuTrigger = react.forwardRef(({ placeholder, children, ...props }, ref) => {
7991
+ const { size, theme, state } = useSelectMenuContext();
7992
+ return /* @__PURE__ */ react.createElement(Trigger$2, {
7993
+ ref,
7994
+ size,
7995
+ theme,
7996
+ state,
7997
+ ...props
7998
+ }, /* @__PURE__ */ react.createElement(_radix_ui_react_select.Value, { placeholder }, children), /* @__PURE__ */ react.createElement(TriggerIcon, {
7999
+ is: _atom_learning_icons.ChevronDown,
8000
+ size
8001
+ }));
8002
+ });
8003
+ SelectMenuTrigger.displayName = "SelectMenuTrigger";
8004
+ //#endregion
8005
+ //#region src/components/select-menu/SelectMenu.tsx
8006
+ var SelectMenuRoot = ({ size = "md", theme = "grey", state, children, ...props }) => /* @__PURE__ */ react.createElement(SelectMenuContext.Provider, { value: {
8007
+ size,
8008
+ theme,
8009
+ state
8010
+ } }, /* @__PURE__ */ react.createElement(_radix_ui_react_select.Root, props, children));
8011
+ var SelectMenu = Object.assign(SelectMenuRoot, {
8012
+ Trigger: SelectMenuTrigger,
8013
+ Content: SelectMenuContent,
8014
+ Item: SelectMenuItem,
8015
+ Group: _radix_ui_react_select.Group,
8016
+ Label: SelectMenuLabel,
8017
+ Separator: SelectMenuSeparator
8018
+ });
8019
+ //#endregion
8020
+ //#region src/components/select-menu-field/SelectMenuField.tsx
8021
+ var SelectMenuField = ({ className, hideLabel, children, name, label, validation, prompt, description, theme, size, placeholder, disabled, ...remainingProps }) => {
8022
+ const { control } = (0, react_hook_form.useFormContext)();
8023
+ const context = useFormCustomContext();
8024
+ const { error } = useFieldError(name);
8025
+ const formTheme = context?.theme ?? theme;
8026
+ const { field: { ref, onChange, value } } = (0, react_hook_form.useController)({
8027
+ name,
8028
+ control,
8029
+ rules: validation,
8030
+ defaultValue: ""
8031
+ });
8032
+ return /* @__PURE__ */ react.createElement(FieldWrapper, {
8033
+ className,
8034
+ description,
8035
+ error,
8036
+ fieldId: name,
8037
+ hideLabel,
8038
+ label,
8039
+ prompt,
8040
+ required: Boolean(validation?.required)
8041
+ }, /* @__PURE__ */ react.createElement(SelectMenu, {
8042
+ value,
8043
+ onValueChange: onChange,
8044
+ size,
8045
+ theme: formTheme,
8046
+ disabled,
8047
+ ...error && { state: "error" },
8048
+ ...remainingProps
8049
+ }, /* @__PURE__ */ react.createElement(SelectMenu.Trigger, {
8050
+ ref,
8051
+ placeholder,
8052
+ "aria-label": label
8053
+ }), /* @__PURE__ */ react.createElement(SelectMenu.Content, null, children)));
8054
+ };
8055
+ SelectMenuField.displayName = "SelectMenuField";
8056
+ //#endregion
7823
8057
  //#region src/components/side-bar/SideBarComponents.tsx
7824
8058
  var SideBarHeader = styled("div", { base: [
7825
8059
  "border-b",
@@ -8171,7 +8405,7 @@ var SkeletonTable = ({ numberOfColumns = 4, numberOfRows = 4, columnWidth, class
8171
8405
  };
8172
8406
  //#endregion
8173
8407
  //#region src/components/skeleton-loader/SkeletonCard.tsx
8174
- var SkeletonCard = ({ numberOfRows = 3, withChart, className }) => /* @__PURE__ */ react.default.createElement(Tile, { className: cn("relative", "w-full", "flex-col", "items-center", "gap-6 p-6", className) }, /* @__PURE__ */ react.default.createElement("div", { className: "align-center flex w-full gap-6" }, withChart && /* @__PURE__ */ react.default.createElement(SkeletonDoughnutChart, null), /* @__PURE__ */ react.default.createElement("div", { className: "flex grow flex-col gap-6" }, Array.from({ length: numberOfRows }, (_, index) => index).map((rowNumber) => /* @__PURE__ */ react.default.createElement(SkeletonLoader, {
8408
+ var SkeletonCard = ({ numberOfRows = 3, withChart, className }) => /* @__PURE__ */ react.default.createElement(Tile, { className: cn("relative", "w-full", "flex-col", "items-center", "gap-6", "p-6", className) }, /* @__PURE__ */ react.default.createElement("div", { className: "align-center flex w-full gap-6" }, withChart && /* @__PURE__ */ react.default.createElement(SkeletonDoughnutChart, null), /* @__PURE__ */ react.default.createElement("div", { className: "flex grow flex-col gap-6" }, Array.from({ length: numberOfRows }, (_, index) => index).map((rowNumber) => /* @__PURE__ */ react.default.createElement(SkeletonLoader, {
8175
8409
  key: rowNumber,
8176
8410
  className: "bg-grey-200 h-10 w-full min-w-25 rounded-md"
8177
8411
  })))), /* @__PURE__ */ react.default.createElement(SkeletonButton, null));
@@ -8940,10 +9174,9 @@ var StyledTileInteractive = styled(Tile, { base: [
8940
9174
  "not-disabled:transition-transform",
8941
9175
  "not-disabled:translate-y-0"
8942
9176
  ] });
8943
- var TileInteractive = react.default.forwardRef(({ onClick, href, type = "button", as, reloadDocument, ...rest }, ref) => {
8944
- const routerLinkProps = useRouterLinkProps(href, { reloadDocument });
9177
+ var TileInteractive = react.default.forwardRef(({ onClick, href, type = "button", as, ...rest }, ref) => {
8945
9178
  const elementSpecificProps = !!href ? {
8946
- as: as || routerLinkProps.as || "a",
9179
+ as: as || "a",
8947
9180
  href,
8948
9181
  onClick: void 0
8949
9182
  } : {
@@ -8978,10 +9211,10 @@ var TileToggleGroupItem = ({ children, ...rest }) => /* @__PURE__ */ react.creat
8978
9211
  }, /* @__PURE__ */ react.createElement(StyledTileToggleGroupItem, { as: "button" }, children));
8979
9212
  //#endregion
8980
9213
  //#region src/components/tile-toggle-group/index.ts
8981
- var TileToggleGroup = react.forwardRef((props, ref) => /* @__PURE__ */ react.createElement(ToggleGroup$1.Root, {
9214
+ var TileToggleGroup = react.forwardRef(({ orientation, className, ...rest }, ref) => /* @__PURE__ */ react.createElement(ToggleGroup$1.Root, {
8982
9215
  ref,
8983
- ...props,
8984
- className: cn(props.className, "flex", "gap-2", props.orientation === "horizontal" && "flex-row", props.orientation === "vertical" && "flex-col", "flex-wrap")
9216
+ ...rest,
9217
+ className: cn("flex", "gap-2", orientation === "horizontal" && "flex-row", orientation === "vertical" && "flex-col", "flex-wrap", className)
8985
9218
  }));
8986
9219
  TileToggleGroup.Item = TileToggleGroupItem;
8987
9220
  TileToggleGroup.displayName = "TileToggleGroup";
@@ -9056,7 +9289,8 @@ var ToastProviderBase = styled("div", { base: [
9056
9289
  "z-2147483647",
9057
9290
  "inset-2",
9058
9291
  "pointer-events-none",
9059
- "sm:top-3"
9292
+ "top-safe-or-2",
9293
+ "sm:top-safe-or-3"
9060
9294
  ] });
9061
9295
  var ToastWrapper = styled("div", {
9062
9296
  base: [
@@ -9590,7 +9824,7 @@ var SegmentedControlBadge = ({ className, ...props }) => {
9590
9824
  return /* @__PURE__ */ react.createElement(Badge, {
9591
9825
  ...props,
9592
9826
  size: badgeSizeMap[size],
9593
- className: cn("border-none", className, "font-normal")
9827
+ className: cn("border-none", "font-normal", className)
9594
9828
  });
9595
9829
  };
9596
9830
  //#endregion
@@ -10001,13 +10235,14 @@ exports.RadioButtonField = RadioButtonField;
10001
10235
  exports.RadioButtonGroup = RadioButtonGroup;
10002
10236
  exports.RadioCard = RadioCard;
10003
10237
  exports.RadioCardGroup = RadioCardGroup;
10004
- exports.RouterProvider = RouterProvider;
10005
10238
  exports.SearchField = SearchField;
10006
10239
  exports.SearchInput = SearchInput;
10007
10240
  exports.SectionMessage = SectionMessage;
10008
10241
  exports.SegmentedControl = SegmentedControl;
10009
10242
  exports.Select = Select;
10010
10243
  exports.SelectField = SelectField;
10244
+ exports.SelectMenu = SelectMenu;
10245
+ exports.SelectMenuField = SelectMenuField;
10011
10246
  exports.SideBar = SideBar;
10012
10247
  Object.defineProperty(exports, "Skeleton", {
10013
10248
  enumerable: true,