@uniformdev/design-system 20.72.3-alpha.5 → 20.72.3-alpha.52

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/esm/index.js CHANGED
@@ -3034,13 +3034,13 @@ var ToastEntry = ({ toast: entry }) => {
3034
3034
  const duration = (_a = entry.timeout) != null ? _a : defaultTimeoutMs;
3035
3035
  const showCountdown = duration > 0 && entry.type !== "loading" && (data == null ? void 0 : data.kind) !== "progress";
3036
3036
  if ((data == null ? void 0 : data.kind) === "progress") {
3037
- return /* @__PURE__ */ jsxs6(BaseToast.Root, { toast: entry, css: toastRootStyles, children: [
3037
+ return /* @__PURE__ */ jsxs6(BaseToast.Root, { toast: entry, css: toastRootStyles, "data-testid": "toast", children: [
3038
3038
  /* @__PURE__ */ jsx14("div", { css: toastBodyStyles, "data-testid": "toast-body", children: /* @__PURE__ */ jsx14(BaseToast.Description, { css: toastDescriptionStyles, children: data.label }) }),
3039
3039
  /* @__PURE__ */ jsx14(Progress.Root, { value: Math.max(0, Math.min(1, data.progress)) * 100, css: toastProgressRootStyles, children: /* @__PURE__ */ jsx14(Progress.Track, { css: toastProgressTrackStyles, children: /* @__PURE__ */ jsx14(Progress.Indicator, { css: toastProgressIndicatorStyles }) }) })
3040
3040
  ] });
3041
3041
  }
3042
3042
  if ((data == null ? void 0 : data.kind) === "undoable") {
3043
- return /* @__PURE__ */ jsxs6(BaseToast.Root, { toast: entry, css: toastRootStyles, children: [
3043
+ return /* @__PURE__ */ jsxs6(BaseToast.Root, { toast: entry, css: toastRootStyles, "data-testid": "toast", children: [
3044
3044
  /* @__PURE__ */ jsx14(ToastTypeIcon, { type: entry.type }),
3045
3045
  /* @__PURE__ */ jsxs6("div", { css: toastBodyStyles, "data-testid": "toast-body", children: [
3046
3046
  /* @__PURE__ */ jsx14(BaseToast.Description, { css: toastDescriptionStyles, children: data.description }),
@@ -3049,6 +3049,7 @@ var ToastEntry = ({ toast: entry }) => {
3049
3049
  {
3050
3050
  type: "button",
3051
3051
  css: toastUndoButtonStyles,
3052
+ "data-testid": "toast-undo-button",
3052
3053
  onClick: () => {
3053
3054
  data.onUndo();
3054
3055
  toastManager.close(entry.id);
@@ -3057,14 +3058,14 @@ var ToastEntry = ({ toast: entry }) => {
3057
3058
  }
3058
3059
  )
3059
3060
  ] }),
3060
- /* @__PURE__ */ jsx14(BaseToast.Close, { css: toastCloseButtonStyles, "aria-label": "Close", children: /* @__PURE__ */ jsx14(Icon, { icon: CgClose, size: "1rem", iconColor: "currentColor" }) }),
3061
+ /* @__PURE__ */ jsx14(BaseToast.Close, { css: toastCloseButtonStyles, "aria-label": "Close", "data-testid": "toast-close-button", children: /* @__PURE__ */ jsx14(Icon, { icon: CgClose, size: "1rem", iconColor: "currentColor" }) }),
3061
3062
  showCountdown ? /* @__PURE__ */ jsx14(ToastCountdownBar, { duration }) : null
3062
3063
  ] });
3063
3064
  }
3064
- return /* @__PURE__ */ jsxs6(BaseToast.Root, { toast: entry, css: toastRootStyles, children: [
3065
+ return /* @__PURE__ */ jsxs6(BaseToast.Root, { toast: entry, css: toastRootStyles, "data-testid": "toast", children: [
3065
3066
  /* @__PURE__ */ jsx14(ToastTypeIcon, { type: entry.type }),
3066
3067
  /* @__PURE__ */ jsx14("div", { css: toastBodyStyles, "data-testid": "toast-body", children: /* @__PURE__ */ jsx14(BaseToast.Description, { css: toastDescriptionStyles, children: entry.description }) }),
3067
- /* @__PURE__ */ jsx14(BaseToast.Close, { css: toastCloseButtonStyles, "aria-label": "Close", children: /* @__PURE__ */ jsx14(Icon, { icon: CgClose, size: "1rem", iconColor: "currentColor" }) }),
3068
+ /* @__PURE__ */ jsx14(BaseToast.Close, { css: toastCloseButtonStyles, "aria-label": "Close", "data-testid": "toast-close-button", children: /* @__PURE__ */ jsx14(Icon, { icon: CgClose, size: "1rem", iconColor: "currentColor" }) }),
3068
3069
  showCountdown ? /* @__PURE__ */ jsx14(ToastCountdownBar, { duration }) : null
3069
3070
  ] });
3070
3071
  };
@@ -3158,6 +3159,13 @@ function useShortcut({
3158
3159
  import { Tooltip as BaseUITooltip } from "@base-ui/react/tooltip";
3159
3160
  import { useState as useState3 } from "react";
3160
3161
 
3162
+ // src/components/Modal/ModalPortalContext.ts
3163
+ import { createContext as createContext2, useContext as useContext2 } from "react";
3164
+ var ModalPortalContext = createContext2(null);
3165
+ function useModalPortalContainer() {
3166
+ return useContext2(ModalPortalContext);
3167
+ }
3168
+
3161
3169
  // src/components/parsePlacement.ts
3162
3170
  function parsePlacement(placement) {
3163
3171
  const [side, alignment] = placement.split("-");
@@ -3252,6 +3260,7 @@ function Tooltip({
3252
3260
  ...popupProps
3253
3261
  }) {
3254
3262
  const [inlineContainer, setInlineContainer] = useState3(null);
3263
+ const modalContainer = useModalPortalContainer();
3255
3264
  if (!title) {
3256
3265
  return children;
3257
3266
  }
@@ -3269,7 +3278,7 @@ function Tooltip({
3269
3278
  style: { position: "absolute", width: 0, height: 0, overflow: "visible" }
3270
3279
  }
3271
3280
  ),
3272
- /* @__PURE__ */ jsx15(BaseUITooltip.Portal, { container: withoutPortal ? inlineContainer : void 0, children: positionerContent })
3281
+ /* @__PURE__ */ jsx15(BaseUITooltip.Portal, { container: withoutPortal ? inlineContainer : modalContainer != null ? modalContainer : void 0, children: positionerContent })
3273
3282
  ] });
3274
3283
  }
3275
3284
 
@@ -4943,13 +4952,6 @@ import { Menu as BaseUIMenu } from "@base-ui/react/menu";
4943
4952
  import * as React8 from "react";
4944
4953
  import { createContext as createContext3, useContext as useContext3, useState as useState5 } from "react";
4945
4954
 
4946
- // src/components/Modal/ModalPortalContext.ts
4947
- import { createContext as createContext2, useContext as useContext2 } from "react";
4948
- var ModalPortalContext = createContext2(null);
4949
- function useModalPortalContainer() {
4950
- return useContext2(ModalPortalContext);
4951
- }
4952
-
4953
4955
  // src/components/Menu/filterMenuSeparators.ts
4954
4956
  import React7, { isValidElement as isValidElement2 } from "react";
4955
4957
 
@@ -5825,10 +5827,10 @@ var Input = forwardRef9(
5825
5827
  id,
5826
5828
  css: [
5827
5829
  prefix ? inputInPrefixGroup : input("nowrap"),
5830
+ typeof classNameControl === "object" ? classNameControl : void 0,
5828
5831
  prefix && icon ? inputInPrefixGroupWithIcon : void 0,
5829
5832
  !prefix && errorMessage ? inputError : void 0,
5830
- !prefix && icon ? inputWithIcon : "",
5831
- typeof classNameControl === "object" ? classNameControl : void 0
5833
+ !prefix && icon ? inputWithIcon : ""
5832
5834
  ],
5833
5835
  "aria-label": showLabel || typeof label2 !== "string" ? void 0 : label2,
5834
5836
  className: typeof classNameControl === "string" ? classNameControl : "",
@@ -7700,18 +7702,38 @@ var Link = React13.forwardRef(
7700
7702
  );
7701
7703
  Link.displayName = "Link";
7702
7704
  var LinkWithRef = React13.forwardRef(
7703
- ({ linkManagerComponent: LinkManager, href, as, onClick, linkColor = "default", children, text, ...props }, ref) => /* @__PURE__ */ jsx55(
7704
- LinkManager,
7705
- {
7706
- ...props,
7707
- as,
7708
- href,
7709
- ref,
7710
- css: [link, textColor[linkColor]],
7711
- onClick,
7712
- children: text != null ? text : children
7713
- }
7714
- )
7705
+ ({
7706
+ linkManagerComponent: LinkManager,
7707
+ href,
7708
+ as,
7709
+ onClick,
7710
+ external,
7711
+ linkColor = "default",
7712
+ children,
7713
+ text,
7714
+ ...props
7715
+ }, ref) => {
7716
+ const externalAttrs = external ? {
7717
+ target: "_blank",
7718
+ rel: "noreferrer noopener"
7719
+ } : {};
7720
+ return /* @__PURE__ */ jsxs37(
7721
+ LinkManager,
7722
+ {
7723
+ ...props,
7724
+ ...externalAttrs,
7725
+ as,
7726
+ href,
7727
+ ref,
7728
+ css: [link, textColor[linkColor]],
7729
+ onClick,
7730
+ children: [
7731
+ text != null ? text : children,
7732
+ external ? /* @__PURE__ */ jsx55(Icon, { icon: CgExternal, iconColor: "currentColor", size: 20 }) : null
7733
+ ]
7734
+ }
7735
+ );
7736
+ }
7715
7737
  );
7716
7738
  LinkWithRef.displayName = "LinkWithRef";
7717
7739
 
@@ -9283,7 +9305,9 @@ var descriptionListLabelStyles = css55`
9283
9305
  `;
9284
9306
  var descriptionListValueStyles = css55`
9285
9307
  display: flex;
9308
+ min-width: 0;
9286
9309
  margin: 0;
9310
+ overflow-wrap: anywhere;
9287
9311
  `;
9288
9312
 
9289
9313
  // src/components/DescriptionList/DescriptionList.tsx
@@ -11042,9 +11066,11 @@ var IntegrationModalHeader = ({ icon, name, menu, children }) => {
11042
11066
 
11043
11067
  // src/components/JsonEditor/JsonEditor.tsx
11044
11068
  import MonacoEditor from "@monaco-editor/react";
11069
+ import * as React19 from "react";
11045
11070
  import { jsx as jsx94 } from "@emotion/react/jsx-runtime";
11046
11071
  var minEditorHeightPx = 150;
11047
11072
  var JsonEditor = ({ defaultValue, onChange, jsonSchema, height, readOnly }) => {
11073
+ const modelPath = `${React19.useId()}.json`;
11048
11074
  let effectiveHeight = height;
11049
11075
  if (typeof height === "number" && height < 0) {
11050
11076
  effectiveHeight = typeof window === "undefined" ? "100%" : window.innerHeight + height;
@@ -11057,6 +11083,7 @@ var JsonEditor = ({ defaultValue, onChange, jsonSchema, height, readOnly }) => {
11057
11083
  {
11058
11084
  height: effectiveHeight,
11059
11085
  className: "uniform-json-editor",
11086
+ path: modelPath,
11060
11087
  defaultLanguage: "json",
11061
11088
  defaultValue,
11062
11089
  options: {
@@ -12927,7 +12954,7 @@ var LoadingIndicator = ({ size = "lg", color = "gray", ...props }) => {
12927
12954
 
12928
12955
  // src/components/Modal/Modal.tsx
12929
12956
  import { CgClose as CgClose6 } from "@react-icons/all-files/cg/CgClose";
12930
- import React19, { useCallback as useCallback11, useEffect as useEffect17, useRef as useRef11, useState as useState21 } from "react";
12957
+ import React20, { useCallback as useCallback11, useEffect as useEffect17, useRef as useRef11, useState as useState21 } from "react";
12931
12958
 
12932
12959
  // src/components/Modal/Modal.styles.ts
12933
12960
  import { css as css83 } from "@emotion/react";
@@ -13022,7 +13049,7 @@ var modalDialogInnerStyles = css83`
13022
13049
  import { jsx as jsx109, jsxs as jsxs75 } from "@emotion/react/jsx-runtime";
13023
13050
  var defaultModalWidth = "75rem";
13024
13051
  var defaultModalHeight = "51rem";
13025
- var Modal = React19.forwardRef(
13052
+ var Modal = React20.forwardRef(
13026
13053
  ({
13027
13054
  header: header2,
13028
13055
  children,
@@ -13284,6 +13311,20 @@ var ObjectGridItemSubtitle = css85`
13284
13311
  text-overflow: ellipsis;
13285
13312
  max-width: 100%;
13286
13313
  `;
13314
+ var ObjectGridItemRevealMenu = css85`
13315
+ display: inline-flex;
13316
+ opacity: 0;
13317
+ transition: opacity var(--duration-fast) var(--timing-ease-out);
13318
+
13319
+ [data-object-grid-item]:hover &,
13320
+ [data-object-grid-item]:focus-within &,
13321
+ &:hover,
13322
+ &:focus-within,
13323
+ &:has([aria-expanded='true']),
13324
+ &:has([data-popup-open]) {
13325
+ opacity: 1;
13326
+ }
13327
+ `;
13287
13328
 
13288
13329
  // src/components/Objects/ObjectGridItem.tsx
13289
13330
  import { jsx as jsx112, jsxs as jsxs77 } from "@emotion/react/jsx-runtime";
@@ -13295,6 +13336,7 @@ var ObjectGridItem2 = ({
13295
13336
  isSelected,
13296
13337
  children,
13297
13338
  menuTestId,
13339
+ revealMenuOnHover,
13298
13340
  ...props
13299
13341
  }) => {
13300
13342
  const hasOnClick = props.onClick;
@@ -13331,14 +13373,14 @@ var ObjectGridItem2 = ({
13331
13373
  onClick: hasOnClick ? onStopPropagation : void 0,
13332
13374
  children: [
13333
13375
  rightSlot,
13334
- menuItems ? /* @__PURE__ */ jsx112(
13376
+ menuItems ? /* @__PURE__ */ jsx112("span", { css: revealMenuOnHover ? ObjectGridItemRevealMenu : void 0, children: /* @__PURE__ */ jsx112(
13335
13377
  Menu,
13336
13378
  {
13337
13379
  menuTrigger: /* @__PURE__ */ jsx112(MenuThreeDots, { "data-testid": menuTestId != null ? menuTestId : "object-grid-item-menu-btn" }),
13338
13380
  placement: "bottom-end",
13339
13381
  children: menuItems
13340
13382
  }
13341
- ) : null
13383
+ ) }) : null
13342
13384
  ]
13343
13385
  }
13344
13386
  ) : null
@@ -14015,7 +14057,7 @@ var ObjectListSubText2 = ({ children, ...props }) => {
14015
14057
  };
14016
14058
 
14017
14059
  // src/components/Pagination/Pagination.tsx
14018
- import * as React20 from "react";
14060
+ import * as React21 from "react";
14019
14061
  import Paginate from "react-paginate";
14020
14062
 
14021
14063
  // src/components/Pagination/Pagination.styles.ts
@@ -14151,7 +14193,7 @@ function Pagination({
14151
14193
  total,
14152
14194
  onPageChange
14153
14195
  }) {
14154
- const containerRef = React20.useRef(null);
14196
+ const containerRef = React21.useRef(null);
14155
14197
  const pageCount = limit >= 1 ? Math.ceil(total / limit) : 0;
14156
14198
  const currentPage = limit >= 1 ? Math.ceil(offset / limit) : 0;
14157
14199
  const { marginPagesDisplayed, pageRangeDisplayed } = usePaginationDisplayRange(containerRef, pageCount);
@@ -14268,7 +14310,7 @@ var LabelLeadingIcon = ({
14268
14310
  };
14269
14311
 
14270
14312
  // src/components/ParameterInputs/ParameterActionButton.tsx
14271
- import React21 from "react";
14313
+ import React22 from "react";
14272
14314
 
14273
14315
  // src/components/ParameterInputs/styles/ParameterActionButton.styles.ts
14274
14316
  import { css as css94 } from "@emotion/react";
@@ -14372,7 +14414,7 @@ var ParameterActionButton = ({
14372
14414
  children
14373
14415
  }
14374
14416
  );
14375
- if (tooltip && (typeof tooltip === "string" || React21.isValidElement(tooltip))) {
14417
+ if (tooltip && (typeof tooltip === "string" || React22.isValidElement(tooltip))) {
14376
14418
  return /* @__PURE__ */ jsx125(Tooltip, { title: tooltip, ...tooltipProps, children: buttonElement });
14377
14419
  }
14378
14420
  return buttonElement;
@@ -20248,7 +20290,7 @@ function StackedModalProvider({ children, totalSteps, initialStep }) {
20248
20290
  }
20249
20291
 
20250
20292
  // src/components/StackedModal/StackedModal.tsx
20251
- import React25 from "react";
20293
+ import React26 from "react";
20252
20294
 
20253
20295
  // src/components/StackedModal/styles/StackedModal.styles.ts
20254
20296
  import { css as css115, keyframes as keyframes7 } from "@emotion/react";
@@ -20430,18 +20472,18 @@ function StackedModalStep({ children, buttonGroup }) {
20430
20472
  // src/components/StackedModal/StackedModal.tsx
20431
20473
  import { jsx as jsx158 } from "@emotion/react/jsx-runtime";
20432
20474
  function filterSteps(children) {
20433
- return React25.Children.toArray(children).filter(
20434
- (child) => React25.isValidElement(child) && child.type === StackedModalStep
20475
+ return React26.Children.toArray(children).filter(
20476
+ (child) => React26.isValidElement(child) && child.type === StackedModalStep
20435
20477
  );
20436
20478
  }
20437
- var StackedModal = React25.forwardRef(
20479
+ var StackedModal = React26.forwardRef(
20438
20480
  ({ children, initialStep = 0, ...rest }, ref) => {
20439
20481
  const steps = filterSteps(children);
20440
20482
  return /* @__PURE__ */ jsx158(StackedModalProvider, { totalSteps: steps.length, initialStep, children: /* @__PURE__ */ jsx158(StackedModalInner, { ref, steps, ...rest }) });
20441
20483
  }
20442
20484
  );
20443
20485
  StackedModal.displayName = "StackedModal";
20444
- var StackedModalInner = React25.forwardRef(
20486
+ var StackedModalInner = React26.forwardRef(
20445
20487
  ({ steps, onRequestClose, modalSize = "lg", width, height, "data-testid": dataTestId }, ref) => {
20446
20488
  return /* @__PURE__ */ jsx158("div", { css: stackedModalRootStyles, children: /* @__PURE__ */ jsx158(
20447
20489
  Modal,
@@ -20745,39 +20787,39 @@ var ResponsiveTableContainer = ({ children }) => {
20745
20787
  };
20746
20788
 
20747
20789
  // src/components/Table/Table.tsx
20748
- import * as React26 from "react";
20790
+ import * as React27 from "react";
20749
20791
  import { jsx as jsx162 } from "@emotion/react/jsx-runtime";
20750
- var Table = React26.forwardRef(
20792
+ var Table = React27.forwardRef(
20751
20793
  ({ children, cellPadding, ...otherProps }, ref) => {
20752
20794
  return /* @__PURE__ */ jsx162("table", { ref, css: table({ cellPadding }), ...otherProps, children });
20753
20795
  }
20754
20796
  );
20755
- var TableHead = React26.forwardRef(
20797
+ var TableHead = React27.forwardRef(
20756
20798
  ({ children, ...otherProps }, ref) => {
20757
20799
  return /* @__PURE__ */ jsx162("thead", { ref, css: tableHead, ...otherProps, children });
20758
20800
  }
20759
20801
  );
20760
- var TableBody = React26.forwardRef(
20802
+ var TableBody = React27.forwardRef(
20761
20803
  ({ children, ...otherProps }, ref) => {
20762
20804
  return /* @__PURE__ */ jsx162("tbody", { ref, ...otherProps, children });
20763
20805
  }
20764
20806
  );
20765
- var TableFoot = React26.forwardRef(
20807
+ var TableFoot = React27.forwardRef(
20766
20808
  ({ children, ...otherProps }, ref) => {
20767
20809
  return /* @__PURE__ */ jsx162("tfoot", { ref, ...otherProps, children });
20768
20810
  }
20769
20811
  );
20770
- var TableRow = React26.forwardRef(
20812
+ var TableRow = React27.forwardRef(
20771
20813
  ({ children, ...otherProps }, ref) => {
20772
20814
  return /* @__PURE__ */ jsx162("tr", { ref, css: tableRow, ...otherProps, children });
20773
20815
  }
20774
20816
  );
20775
- var TableCellHead = React26.forwardRef(
20817
+ var TableCellHead = React27.forwardRef(
20776
20818
  ({ children, ...otherProps }, ref) => {
20777
20819
  return /* @__PURE__ */ jsx162("th", { ref, css: tableCellHead, ...otherProps, children });
20778
20820
  }
20779
20821
  );
20780
- var TableCellData = React26.forwardRef(
20822
+ var TableCellData = React27.forwardRef(
20781
20823
  ({ children, ...otherProps }, ref) => {
20782
20824
  return /* @__PURE__ */ jsx162("td", { ref, ...otherProps, children });
20783
20825
  }
package/dist/index.d.mts CHANGED
@@ -3715,6 +3715,9 @@ type ObjectGridItemProps = Omit<ObjectItemProps, 'leftSlot'> & {
3715
3715
  * @default 'object-grid-item-menu-btn'
3716
3716
  */
3717
3717
  menuTestId?: string;
3718
+ /** When true, the context menu is hidden at rest and revealed on card
3719
+ * hover/focus (and while the menu is open), matching the favorite star. */
3720
+ revealMenuOnHover?: boolean;
3718
3721
  } & HTMLAttributes<HTMLDivElement>;
3719
3722
  /**
3720
3723
  * A card-style grid item for displaying an object with cover media, heading, subtitle, and optional context menu.
@@ -3734,7 +3737,7 @@ type ObjectGridItemProps = Omit<ObjectItemProps, 'leftSlot'> & {
3734
3737
  * />
3735
3738
  * ```
3736
3739
  */
3737
- declare const ObjectGridItem: ({ header, cover, rightSlot, menuItems, isSelected, children, menuTestId, ...props }: ObjectGridItemProps) => _emotion_react_jsx_runtime.JSX.Element;
3740
+ declare const ObjectGridItem: ({ header, cover, rightSlot, menuItems, isSelected, children, menuTestId, revealMenuOnHover, ...props }: ObjectGridItemProps) => _emotion_react_jsx_runtime.JSX.Element;
3738
3741
 
3739
3742
  /**
3740
3743
  * Props for {@link ObjectGridItemCardCover}.
package/dist/index.d.ts CHANGED
@@ -3715,6 +3715,9 @@ type ObjectGridItemProps = Omit<ObjectItemProps, 'leftSlot'> & {
3715
3715
  * @default 'object-grid-item-menu-btn'
3716
3716
  */
3717
3717
  menuTestId?: string;
3718
+ /** When true, the context menu is hidden at rest and revealed on card
3719
+ * hover/focus (and while the menu is open), matching the favorite star. */
3720
+ revealMenuOnHover?: boolean;
3718
3721
  } & HTMLAttributes<HTMLDivElement>;
3719
3722
  /**
3720
3723
  * A card-style grid item for displaying an object with cover media, heading, subtitle, and optional context menu.
@@ -3734,7 +3737,7 @@ type ObjectGridItemProps = Omit<ObjectItemProps, 'leftSlot'> & {
3734
3737
  * />
3735
3738
  * ```
3736
3739
  */
3737
- declare const ObjectGridItem: ({ header, cover, rightSlot, menuItems, isSelected, children, menuTestId, ...props }: ObjectGridItemProps) => _emotion_react_jsx_runtime.JSX.Element;
3740
+ declare const ObjectGridItem: ({ header, cover, rightSlot, menuItems, isSelected, children, menuTestId, revealMenuOnHover, ...props }: ObjectGridItemProps) => _emotion_react_jsx_runtime.JSX.Element;
3738
3741
 
3739
3742
  /**
3740
3743
  * Props for {@link ObjectGridItemCardCover}.
package/dist/index.js CHANGED
@@ -3021,7 +3021,7 @@ var buttonSoftAccentPrimary = import_react12.css`
3021
3021
 
3022
3022
  // src/components/Input/styles/Inputs.styles.ts
3023
3023
  init_emotion_jsx_shim();
3024
- var import_react22 = require("@emotion/react");
3024
+ var import_react23 = require("@emotion/react");
3025
3025
 
3026
3026
  // src/components/Button/Button.tsx
3027
3027
  init_emotion_jsx_shim();
@@ -4795,13 +4795,13 @@ var ToastEntry = ({ toast: entry }) => {
4795
4795
  const duration = (_a = entry.timeout) != null ? _a : defaultTimeoutMs;
4796
4796
  const showCountdown = duration > 0 && entry.type !== "loading" && (data == null ? void 0 : data.kind) !== "progress";
4797
4797
  if ((data == null ? void 0 : data.kind) === "progress") {
4798
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_toast.Toast.Root, { toast: entry, css: toastRootStyles, children: [
4798
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_toast.Toast.Root, { toast: entry, css: toastRootStyles, "data-testid": "toast", children: [
4799
4799
  /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { css: toastBodyStyles, "data-testid": "toast-body", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_toast.Toast.Description, { css: toastDescriptionStyles, children: data.label }) }),
4800
4800
  /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_progress.Progress.Root, { value: Math.max(0, Math.min(1, data.progress)) * 100, css: toastProgressRootStyles, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_progress.Progress.Track, { css: toastProgressTrackStyles, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_progress.Progress.Indicator, { css: toastProgressIndicatorStyles }) }) })
4801
4801
  ] });
4802
4802
  }
4803
4803
  if ((data == null ? void 0 : data.kind) === "undoable") {
4804
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_toast.Toast.Root, { toast: entry, css: toastRootStyles, children: [
4804
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_toast.Toast.Root, { toast: entry, css: toastRootStyles, "data-testid": "toast", children: [
4805
4805
  /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(ToastTypeIcon, { type: entry.type }),
4806
4806
  /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { css: toastBodyStyles, "data-testid": "toast-body", children: [
4807
4807
  /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_toast.Toast.Description, { css: toastDescriptionStyles, children: data.description }),
@@ -4810,6 +4810,7 @@ var ToastEntry = ({ toast: entry }) => {
4810
4810
  {
4811
4811
  type: "button",
4812
4812
  css: toastUndoButtonStyles,
4813
+ "data-testid": "toast-undo-button",
4813
4814
  onClick: () => {
4814
4815
  data.onUndo();
4815
4816
  toastManager.close(entry.id);
@@ -4818,14 +4819,14 @@ var ToastEntry = ({ toast: entry }) => {
4818
4819
  }
4819
4820
  )
4820
4821
  ] }),
4821
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_toast.Toast.Close, { css: toastCloseButtonStyles, "aria-label": "Close", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Icon, { icon: import_CgClose2.CgClose, size: "1rem", iconColor: "currentColor" }) }),
4822
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_toast.Toast.Close, { css: toastCloseButtonStyles, "aria-label": "Close", "data-testid": "toast-close-button", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Icon, { icon: import_CgClose2.CgClose, size: "1rem", iconColor: "currentColor" }) }),
4822
4823
  showCountdown ? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(ToastCountdownBar, { duration }) : null
4823
4824
  ] });
4824
4825
  }
4825
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_toast.Toast.Root, { toast: entry, css: toastRootStyles, children: [
4826
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_toast.Toast.Root, { toast: entry, css: toastRootStyles, "data-testid": "toast", children: [
4826
4827
  /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(ToastTypeIcon, { type: entry.type }),
4827
4828
  /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { css: toastBodyStyles, "data-testid": "toast-body", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_toast.Toast.Description, { css: toastDescriptionStyles, children: entry.description }) }),
4828
- /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_toast.Toast.Close, { css: toastCloseButtonStyles, "aria-label": "Close", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Icon, { icon: import_CgClose2.CgClose, size: "1rem", iconColor: "currentColor" }) }),
4829
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_toast.Toast.Close, { css: toastCloseButtonStyles, "aria-label": "Close", "data-testid": "toast-close-button", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Icon, { icon: import_CgClose2.CgClose, size: "1rem", iconColor: "currentColor" }) }),
4829
4830
  showCountdown ? /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(ToastCountdownBar, { duration }) : null
4830
4831
  ] });
4831
4832
  };
@@ -4919,7 +4920,15 @@ function useShortcut({
4919
4920
  // src/components/Tooltip/Tooltip.tsx
4920
4921
  init_emotion_jsx_shim();
4921
4922
  var import_tooltip = require("@base-ui/react/tooltip");
4922
- var import_react20 = require("react");
4923
+ var import_react21 = require("react");
4924
+
4925
+ // src/components/Modal/ModalPortalContext.ts
4926
+ init_emotion_jsx_shim();
4927
+ var import_react19 = require("react");
4928
+ var ModalPortalContext = (0, import_react19.createContext)(null);
4929
+ function useModalPortalContainer() {
4930
+ return (0, import_react19.useContext)(ModalPortalContext);
4931
+ }
4923
4932
 
4924
4933
  // src/components/parsePlacement.ts
4925
4934
  init_emotion_jsx_shim();
@@ -4933,11 +4942,11 @@ function parsePlacement(placement) {
4933
4942
 
4934
4943
  // src/components/Tooltip/Tooltip.styles.ts
4935
4944
  init_emotion_jsx_shim();
4936
- var import_react19 = require("@emotion/react");
4937
- var TooltipPositionerStyles = import_react19.css`
4945
+ var import_react20 = require("@emotion/react");
4946
+ var TooltipPositionerStyles = import_react20.css`
4938
4947
  z-index: var(--z-tooltip);
4939
4948
  `;
4940
- var TooltipContainer = import_react19.css`
4949
+ var TooltipContainer = import_react20.css`
4941
4950
  border: 2px solid var(--gray-300);
4942
4951
  border-radius: var(--rounded-base);
4943
4952
  padding: var(--spacing-xs) var(--spacing-sm);
@@ -4946,7 +4955,7 @@ var TooltipContainer = import_react19.css`
4946
4955
  background: var(--white);
4947
4956
  position: relative;
4948
4957
  `;
4949
- var TooltipArrowStyles = import_react19.css`
4958
+ var TooltipArrowStyles = import_react20.css`
4950
4959
  display: flex;
4951
4960
 
4952
4961
  &[data-side='top'] {
@@ -4969,13 +4978,13 @@ var TooltipArrowStyles = import_react19.css`
4969
4978
  rotate: -90deg;
4970
4979
  }
4971
4980
  `;
4972
- var TooltipArrowFill = import_react19.css`
4981
+ var TooltipArrowFill = import_react20.css`
4973
4982
  fill: var(--gray-300);
4974
4983
  `;
4975
- var TooltipArrowOuterStroke = import_react19.css`
4984
+ var TooltipArrowOuterStroke = import_react20.css`
4976
4985
  fill: var(--gray-300);
4977
4986
  `;
4978
- var TooltipArrowInnerStroke = import_react19.css`
4987
+ var TooltipArrowInnerStroke = import_react20.css`
4979
4988
  fill: var(--gray-300);
4980
4989
  `;
4981
4990
 
@@ -5016,7 +5025,8 @@ function Tooltip({
5016
5025
  gutter = 10,
5017
5026
  ...popupProps
5018
5027
  }) {
5019
- const [inlineContainer, setInlineContainer] = (0, import_react20.useState)(null);
5028
+ const [inlineContainer, setInlineContainer] = (0, import_react21.useState)(null);
5029
+ const modalContainer = useModalPortalContainer();
5020
5030
  if (!title) {
5021
5031
  return children;
5022
5032
  }
@@ -5034,7 +5044,7 @@ function Tooltip({
5034
5044
  style: { position: "absolute", width: 0, height: 0, overflow: "visible" }
5035
5045
  }
5036
5046
  ),
5037
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_tooltip.Tooltip.Portal, { container: withoutPortal ? inlineContainer : void 0, children: positionerContent })
5047
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_tooltip.Tooltip.Portal, { container: withoutPortal ? inlineContainer : modalContainer != null ? modalContainer : void 0, children: positionerContent })
5038
5048
  ] });
5039
5049
  }
5040
5050
 
@@ -5142,8 +5152,8 @@ var React6 = __toESM(require("react"));
5142
5152
 
5143
5153
  // src/components/Button/LinkButton.styles.ts
5144
5154
  init_emotion_jsx_shim();
5145
- var import_react21 = require("@emotion/react");
5146
- var linkButton = import_react21.css`
5155
+ var import_react22 = require("@emotion/react");
5156
+ var linkButton = import_react22.css`
5147
5157
  background: transparent;
5148
5158
  border: none;
5149
5159
  padding: 0;
@@ -5161,13 +5171,13 @@ var linkButton = import_react21.css`
5161
5171
  outline: none;
5162
5172
  }
5163
5173
  `;
5164
- var linkButtonDisabled = import_react21.css`
5174
+ var linkButtonDisabled = import_react22.css`
5165
5175
  opacity: var(--opacity-50);
5166
5176
  filter: saturate(0.5);
5167
5177
  cursor: default;
5168
5178
  pointer-events: none;
5169
5179
  `;
5170
- var linkButtonTruncated = import_react21.css`
5180
+ var linkButtonTruncated = import_react22.css`
5171
5181
  display: block;
5172
5182
  width: 100%;
5173
5183
  overflow: hidden;
@@ -5197,15 +5207,15 @@ var LinkButton = React6.forwardRef(
5197
5207
  );
5198
5208
 
5199
5209
  // src/components/Input/styles/Inputs.styles.ts
5200
- var inputContainer = import_react22.css`
5210
+ var inputContainer = import_react23.css`
5201
5211
  position: relative;
5202
5212
  `;
5203
- var labelText = import_react22.css`
5213
+ var labelText = import_react23.css`
5204
5214
  display: flex;
5205
5215
  margin: 0 0 var(--spacing-xs);
5206
5216
  align-items: center;
5207
5217
  `;
5208
- var input = (whiteSpaceWrap) => import_react22.css`
5218
+ var input = (whiteSpaceWrap) => import_react23.css`
5209
5219
  --input-padding: 12px var(--spacing-base) 12px var(--spacing-sm);
5210
5220
  appearance: none;
5211
5221
  background-color: var(--white);
@@ -5290,7 +5300,7 @@ var input = (whiteSpaceWrap) => import_react22.css`
5290
5300
  }
5291
5301
  }
5292
5302
  `;
5293
- var inputError = import_react22.css`
5303
+ var inputError = import_react23.css`
5294
5304
  border-color: var(--action-destructive-default);
5295
5305
  box-shadow: var(--elevation-100);
5296
5306
 
@@ -5298,7 +5308,7 @@ var inputError = import_react22.css`
5298
5308
  border-color: var(--action-destructive-hover);
5299
5309
  }
5300
5310
  `;
5301
- var inputPrefixGroup = import_react22.css`
5311
+ var inputPrefixGroup = import_react23.css`
5302
5312
  align-items: center;
5303
5313
  background-color: var(--white);
5304
5314
  border: 1px solid var(--gray-200);
@@ -5330,7 +5340,7 @@ var inputPrefixGroup = import_react22.css`
5330
5340
  color: var(--gray-300);
5331
5341
  }
5332
5342
  `;
5333
- var inputPrefixGroupError = import_react22.css`
5343
+ var inputPrefixGroupError = import_react23.css`
5334
5344
  border-color: var(--action-destructive-default);
5335
5345
  box-shadow: var(--elevation-100);
5336
5346
 
@@ -5338,7 +5348,7 @@ var inputPrefixGroupError = import_react22.css`
5338
5348
  border-color: var(--action-destructive-hover);
5339
5349
  }
5340
5350
  `;
5341
- var inputPrefixSlot = import_react22.css`
5351
+ var inputPrefixSlot = import_react23.css`
5342
5352
  color: var(--gray-300);
5343
5353
  flex: none;
5344
5354
  font-size: 1rem;
@@ -5346,7 +5356,7 @@ var inputPrefixSlot = import_react22.css`
5346
5356
  pointer-events: none;
5347
5357
  white-space: nowrap;
5348
5358
  `;
5349
- var inputInPrefixGroup = import_react22.css`
5359
+ var inputInPrefixGroup = import_react23.css`
5350
5360
  appearance: none;
5351
5361
  background: transparent;
5352
5362
  border: 0;
@@ -5376,19 +5386,19 @@ var inputInPrefixGroup = import_react22.css`
5376
5386
  color: var(--gray-300);
5377
5387
  }
5378
5388
  `;
5379
- var inputInPrefixGroupWithIcon = import_react22.css`
5389
+ var inputInPrefixGroupWithIcon = import_react23.css`
5380
5390
  padding-right: var(--spacing-2xl);
5381
5391
  `;
5382
- var inputIcon = import_react22.css`
5392
+ var inputIcon = import_react23.css`
5383
5393
  align-items: center;
5384
5394
  display: flex;
5385
5395
  position: absolute;
5386
5396
  inset: 0 var(--spacing-base) 0 auto;
5387
5397
  `;
5388
- var inputWithIcon = import_react22.css`
5398
+ var inputWithIcon = import_react23.css`
5389
5399
  padding-right: var(--spacing-2xl);
5390
5400
  `;
5391
- var inputSelect = import_react22.css`
5401
+ var inputSelect = import_react23.css`
5392
5402
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%0A%3E%3Cpath d='M6.34317 7.75732L4.92896 9.17154L12 16.2426L19.0711 9.17157L17.6569 7.75735L12 13.4142L6.34317 7.75732Z' fill='currentColor' /%3E%3C/svg%3E");
5393
5403
  background-position: right var(--spacing-sm) center;
5394
5404
  background-repeat: no-repeat;
@@ -5399,13 +5409,13 @@ var inputSelect = import_react22.css`
5399
5409
  color: var(--gray-300);
5400
5410
  }
5401
5411
  `;
5402
- var inputSearchCloseBtn = import_react22.css`
5412
+ var inputSearchCloseBtn = import_react23.css`
5403
5413
  background: none;
5404
5414
  border: none;
5405
5415
  padding: 0;
5406
5416
  pointer-events: all;
5407
5417
  `;
5408
- var inputToggleLabel = import_react22.css`
5418
+ var inputToggleLabel = import_react23.css`
5409
5419
  align-items: flex-start;
5410
5420
  cursor: pointer;
5411
5421
  display: inline-flex;
@@ -5416,7 +5426,7 @@ var inputToggleLabel = import_react22.css`
5416
5426
  position: relative;
5417
5427
  min-height: var(--spacing-md);
5418
5428
  `;
5419
- var toggleInput = import_react22.css`
5429
+ var toggleInput = import_react23.css`
5420
5430
  appearance: none;
5421
5431
  border: 1px solid var(--gray-200);
5422
5432
  background: var(--white);
@@ -5462,7 +5472,7 @@ var toggleInput = import_react22.css`
5462
5472
  no-repeat center center;
5463
5473
  }
5464
5474
  `;
5465
- var inlineLabel = import_react22.css`
5475
+ var inlineLabel = import_react23.css`
5466
5476
  padding-left: var(--spacing-lg);
5467
5477
 
5468
5478
  > a {
@@ -5473,20 +5483,20 @@ var inlineLabel = import_react22.css`
5473
5483
  }
5474
5484
  }
5475
5485
  `;
5476
- var labelNormal = import_react22.css`
5486
+ var labelNormal = import_react23.css`
5477
5487
  font-weight: var(--fw-regular);
5478
5488
  `;
5479
- var labelMedium = import_react22.css`
5489
+ var labelMedium = import_react23.css`
5480
5490
  font-weight: var(--fw-medium);
5481
5491
  `;
5482
- var labelBold = import_react22.css`
5492
+ var labelBold = import_react23.css`
5483
5493
  font-weight: var(--fw-bold);
5484
5494
  `;
5485
- var inputDisabled = import_react22.css`
5495
+ var inputDisabled = import_react23.css`
5486
5496
  cursor: not-allowed;
5487
5497
  color: var(--gray-400);
5488
5498
  `;
5489
- var inputToggleMessageContainer = import_react22.css`
5499
+ var inputToggleMessageContainer = import_react23.css`
5490
5500
  display: flex;
5491
5501
  flex-direction: column;
5492
5502
  flex-basis: 100%;
@@ -5494,11 +5504,11 @@ var inputToggleMessageContainer = import_react22.css`
5494
5504
  margin-top: -0.5rem;
5495
5505
  line-height: 1.15;
5496
5506
  `;
5497
- var textarea = import_react22.css`
5507
+ var textarea = import_react23.css`
5498
5508
  ${input("wrap")};
5499
5509
  display: block;
5500
5510
  `;
5501
- var inputSelectCompact = import_react22.css`
5511
+ var inputSelectCompact = import_react23.css`
5502
5512
  font-size: var(--fs-xs);
5503
5513
  padding: var(--spacing-2xs) var(--spacing-md) var(--spacing-2xs) var(--spacing-xs);
5504
5514
  border-color: var(--gray-200);
@@ -5508,8 +5518,8 @@ var inputSelectCompact = import_react22.css`
5508
5518
 
5509
5519
  // src/styles/Accessibility.styles.ts
5510
5520
  init_emotion_jsx_shim();
5511
- var import_react23 = require("@emotion/react");
5512
- var accessibleHidden = import_react23.css`
5521
+ var import_react24 = require("@emotion/react");
5522
+ var accessibleHidden = import_react24.css`
5513
5523
  clip: rect(0, 0, 0, 0);
5514
5524
  position: absolute;
5515
5525
  width: 1px;
@@ -5519,17 +5529,17 @@ var accessibleHidden = import_react23.css`
5519
5529
 
5520
5530
  // src/hooks/useImageLoadFallback.ts
5521
5531
  init_emotion_jsx_shim();
5522
- var import_react24 = require("react");
5532
+ var import_react25 = require("react");
5523
5533
  function useImageLoadFallback({
5524
5534
  src,
5525
5535
  srcSet,
5526
5536
  errorFallbackSrc,
5527
5537
  logContext
5528
5538
  }) {
5529
- const [currentSrc, setCurrentSrc] = (0, import_react24.useState)(src);
5530
- const [currentSrcSet, setCurrentSrcSet] = (0, import_react24.useState)(srcSet);
5531
- const [usedFallback, setUsedFallback] = (0, import_react24.useState)(false);
5532
- (0, import_react24.useEffect)(() => {
5539
+ const [currentSrc, setCurrentSrc] = (0, import_react25.useState)(src);
5540
+ const [currentSrcSet, setCurrentSrcSet] = (0, import_react25.useState)(srcSet);
5541
+ const [usedFallback, setUsedFallback] = (0, import_react25.useState)(false);
5542
+ (0, import_react25.useEffect)(() => {
5533
5543
  setCurrentSrc(src);
5534
5544
  setCurrentSrcSet(srcSet);
5535
5545
  setUsedFallback(false);
@@ -5551,8 +5561,8 @@ function useImageLoadFallback({
5551
5561
 
5552
5562
  // src/styles/Animations.styles.ts
5553
5563
  init_emotion_jsx_shim();
5554
- var import_react25 = require("@emotion/react");
5555
- var growSubtle = import_react25.keyframes`
5564
+ var import_react26 = require("@emotion/react");
5565
+ var growSubtle = import_react26.keyframes`
5556
5566
  0%,
5557
5567
  100% {
5558
5568
  transform: scale(1);
@@ -5563,7 +5573,7 @@ var growSubtle = import_react25.keyframes`
5563
5573
  opacity: 1;
5564
5574
  }
5565
5575
  `;
5566
- var fadeInBottom = import_react25.keyframes`
5576
+ var fadeInBottom = import_react26.keyframes`
5567
5577
  0% {
5568
5578
  opacity: 0;
5569
5579
  transform: translateY(10px);
@@ -5573,7 +5583,7 @@ var fadeInBottom = import_react25.keyframes`
5573
5583
  transform: translateY(0);
5574
5584
  }
5575
5585
  `;
5576
- var fadeInTop = import_react25.keyframes`
5586
+ var fadeInTop = import_react26.keyframes`
5577
5587
  0% {
5578
5588
  opacity: 0;
5579
5589
  transform: translateY(-10px);
@@ -5583,7 +5593,7 @@ var fadeInTop = import_react25.keyframes`
5583
5593
  transform: translateY(0);
5584
5594
  }
5585
5595
  `;
5586
- var fadeOutBottom = import_react25.keyframes`
5596
+ var fadeOutBottom = import_react26.keyframes`
5587
5597
  0% {
5588
5598
  opacity: 1;
5589
5599
  transform: translateY(0);
@@ -5593,7 +5603,7 @@ var fadeOutBottom = import_react25.keyframes`
5593
5603
  transform: translateY(10px);
5594
5604
  }
5595
5605
  `;
5596
- var fadeIn = import_react25.keyframes`
5606
+ var fadeIn = import_react26.keyframes`
5597
5607
  0% {
5598
5608
  opacity: 0;
5599
5609
  }
@@ -5601,11 +5611,11 @@ var fadeIn = import_react25.keyframes`
5601
5611
  opacity: 1;
5602
5612
  }
5603
5613
  `;
5604
- var ripple = import_react25.keyframes`
5614
+ var ripple = import_react26.keyframes`
5605
5615
  to {
5606
5616
  transform: scale(4);
5607
5617
  }`;
5608
- var skeletonLoading = import_react25.keyframes`
5618
+ var skeletonLoading = import_react26.keyframes`
5609
5619
  0% {
5610
5620
  background-color: var(--gray-100);
5611
5621
  }
@@ -5613,7 +5623,7 @@ var skeletonLoading = import_react25.keyframes`
5613
5623
  background-color: var(--gray-200);
5614
5624
  }
5615
5625
  `;
5616
- var fadeInLtr = import_react25.keyframes`
5626
+ var fadeInLtr = import_react26.keyframes`
5617
5627
  from {
5618
5628
  opacity: 0;
5619
5629
  transform: translateX(-10px);
@@ -5623,7 +5633,7 @@ to {
5623
5633
  transform: translateX(0);
5624
5634
  }
5625
5635
  `;
5626
- var fadeInRtl = import_react25.keyframes`
5636
+ var fadeInRtl = import_react26.keyframes`
5627
5637
  from {
5628
5638
  opacity: 0;
5629
5639
  transform: translateX(10px);
@@ -5633,7 +5643,7 @@ to {
5633
5643
  transform: translateX(0);
5634
5644
  }
5635
5645
  `;
5636
- var slideInTtb = import_react25.keyframes`
5646
+ var slideInTtb = import_react26.keyframes`
5637
5647
  from {
5638
5648
  transform: translateY(-100%);
5639
5649
  }
@@ -5641,7 +5651,7 @@ to {
5641
5651
  transform: translateY(0);
5642
5652
  }
5643
5653
  `;
5644
- var slideInRtl = import_react25.keyframes`
5654
+ var slideInRtl = import_react26.keyframes`
5645
5655
  from {
5646
5656
  transform: translateX(100%);
5647
5657
  }
@@ -5649,7 +5659,7 @@ to {
5649
5659
  transform: translateX(0);
5650
5660
  }
5651
5661
  `;
5652
- var spin2 = import_react25.keyframes`
5662
+ var spin2 = import_react26.keyframes`
5653
5663
  from {
5654
5664
  transform: rotateZ(0deg);
5655
5665
  }
@@ -5663,8 +5673,8 @@ init_emotion_jsx_shim();
5663
5673
 
5664
5674
  // src/components/AddButton/AddButton.styles.ts
5665
5675
  init_emotion_jsx_shim();
5666
- var import_react26 = require("@emotion/react");
5667
- var addButton = import_react26.css`
5676
+ var import_react27 = require("@emotion/react");
5677
+ var addButton = import_react27.css`
5668
5678
  --max-size: clamp(2.5rem, 100vw, 3.5rem);
5669
5679
  align-items: center;
5670
5680
  box-shadow: var(--shadow-base);
@@ -5750,8 +5760,8 @@ var import_CgMathPlus2 = require("@react-icons/all-files/cg/CgMathPlus");
5750
5760
 
5751
5761
  // src/components/AddListButton/AddListButton.styles.ts
5752
5762
  init_emotion_jsx_shim();
5753
- var import_react27 = require("@emotion/react");
5754
- var AddListButtonBtn = import_react27.css`
5763
+ var import_react28 = require("@emotion/react");
5764
+ var AddListButtonBtn = import_react28.css`
5755
5765
  align-items: center;
5756
5766
  background: transparent;
5757
5767
  border: none;
@@ -5770,20 +5780,20 @@ var AddListButtonBtn = import_react27.css`
5770
5780
  box-shadow: var(--shadow-base);
5771
5781
  }
5772
5782
  `;
5773
- var AddListButtonTheme = (theme) => import_react27.css`
5783
+ var AddListButtonTheme = (theme) => import_react28.css`
5774
5784
  color: ${theme};
5775
5785
  `;
5776
- var AddListButtonBtnSmall = import_react27.css`
5786
+ var AddListButtonBtnSmall = import_react28.css`
5777
5787
  font-size: var(--fs-xs);
5778
5788
  font-weight: var(--fw-regular);
5779
5789
  `;
5780
- var AddListButtonIconMathPlus = (disabled2, theme) => import_react27.css`
5790
+ var AddListButtonIconMathPlus = (disabled2, theme) => import_react28.css`
5781
5791
  box-sizing: border-box;
5782
5792
  background: ${disabled2 ? "var(--gray-300)" : theme};
5783
5793
  color: var(--white);
5784
5794
  padding: calc(var(--spacing-xs) - 0.15rem);
5785
5795
  `;
5786
- var AddListButtonIcon = import_react27.css`
5796
+ var AddListButtonIcon = import_react28.css`
5787
5797
  border-radius: var(--rounded-full);
5788
5798
  transition: box-shadow var(--duration-fast) var(--timing-ease-out);
5789
5799
  `;
@@ -5839,7 +5849,7 @@ var import_CgProfile2 = require("@react-icons/all-files/cg/CgProfile");
5839
5849
 
5840
5850
  // src/components/Avatar/Avatar.styles.ts
5841
5851
  init_emotion_jsx_shim();
5842
- var import_react28 = require("@emotion/react");
5852
+ var import_react29 = require("@emotion/react");
5843
5853
  var AVATAR_SIZE_2XS = "1rem";
5844
5854
  var AVATAR_SIZE_XS = "1.5rem";
5845
5855
  var AVATAR_SIZE_SM = "2rem";
@@ -5848,7 +5858,7 @@ var AVATAR_SIZE_LG = "3rem";
5848
5858
  var AVATAR_SIZE_XL = "4rem";
5849
5859
  var AVATAR_SIZE_2XL = "5rem";
5850
5860
  var AVATAR_SIZE_3XL = "6rem";
5851
- var avatarStyles = import_react28.css`
5861
+ var avatarStyles = import_react29.css`
5852
5862
  display: flex;
5853
5863
  justify-content: center;
5854
5864
  align-items: center;
@@ -5862,33 +5872,33 @@ var avatarStyles = import_react28.css`
5862
5872
  font-weight: var(--fw-bold);
5863
5873
  overflow: hidden;
5864
5874
  `;
5865
- var avatarImageStyles = import_react28.css`
5875
+ var avatarImageStyles = import_react29.css`
5866
5876
  width: 100%;
5867
5877
  height: 100%;
5868
5878
  object-fit: cover;
5869
5879
  `;
5870
- var avatarSize2xsStyles = import_react28.css`
5880
+ var avatarSize2xsStyles = import_react29.css`
5871
5881
  width: ${AVATAR_SIZE_2XS};
5872
5882
  `;
5873
- var avatarSizeXsStyles = import_react28.css`
5883
+ var avatarSizeXsStyles = import_react29.css`
5874
5884
  width: ${AVATAR_SIZE_XS};
5875
5885
  `;
5876
- var avatarSizeSmStyles = import_react28.css`
5886
+ var avatarSizeSmStyles = import_react29.css`
5877
5887
  width: ${AVATAR_SIZE_SM};
5878
5888
  `;
5879
- var avatarSizeMdStyles = import_react28.css`
5889
+ var avatarSizeMdStyles = import_react29.css`
5880
5890
  width: ${AVATAR_SIZE_MD};
5881
5891
  `;
5882
- var avatarSizeLgStyles = import_react28.css`
5892
+ var avatarSizeLgStyles = import_react29.css`
5883
5893
  width: ${AVATAR_SIZE_LG};
5884
5894
  `;
5885
- var avatarSizeXlStyles = import_react28.css`
5895
+ var avatarSizeXlStyles = import_react29.css`
5886
5896
  width: ${AVATAR_SIZE_XL};
5887
5897
  `;
5888
- var avatarSize2xlStyles = import_react28.css`
5898
+ var avatarSize2xlStyles = import_react29.css`
5889
5899
  width: ${AVATAR_SIZE_2XL};
5890
5900
  `;
5891
- var avatarSize3xlStyles = import_react28.css`
5901
+ var avatarSize3xlStyles = import_react29.css`
5892
5902
  width: ${AVATAR_SIZE_3XL};
5893
5903
  `;
5894
5904
 
@@ -5926,8 +5936,8 @@ init_emotion_jsx_shim();
5926
5936
 
5927
5937
  // src/components/Avatar/AvatarGroup.styles.ts
5928
5938
  init_emotion_jsx_shim();
5929
- var import_react29 = require("@emotion/react");
5930
- var avatarGroupStyles = import_react29.css`
5939
+ var import_react30 = require("@emotion/react");
5940
+ var avatarGroupStyles = import_react30.css`
5931
5941
  display: flex;
5932
5942
  flex-wrap: nowrap;
5933
5943
 
@@ -5935,7 +5945,7 @@ var avatarGroupStyles = import_react29.css`
5935
5945
  margin-left: calc(-1 * var(--spacing-sm));
5936
5946
  }
5937
5947
  `;
5938
- var avatarGroupMaxStyles = (numberOfItemsToRender) => import_react29.css`
5948
+ var avatarGroupMaxStyles = (numberOfItemsToRender) => import_react30.css`
5939
5949
  & > *:nth-of-type(n + ${numberOfItemsToRender + 1}) {
5940
5950
  display: none;
5941
5951
  }
@@ -5997,8 +6007,8 @@ var import_CgClose3 = require("@react-icons/all-files/cg/CgClose");
5997
6007
 
5998
6008
  // src/components/Banner/Banner.styles.ts
5999
6009
  init_emotion_jsx_shim();
6000
- var import_react30 = require("@emotion/react");
6001
- var bannerStyles = import_react30.css`
6010
+ var import_react31 = require("@emotion/react");
6011
+ var bannerStyles = import_react31.css`
6002
6012
  ${functionalColors}
6003
6013
 
6004
6014
  --border-color: var(--utility-caution-icon);
@@ -6032,11 +6042,11 @@ var bannerStyles = import_react30.css`
6032
6042
  --background-color: var(--utility-success-container);
6033
6043
  }
6034
6044
  `;
6035
- var bannerAnimatedStyles = import_react30.css`
6045
+ var bannerAnimatedStyles = import_react31.css`
6036
6046
  animation: ${slideInTtb} var(--duration-xfast) ease-out;
6037
6047
  `;
6038
- var bannerContentStyles = import_react30.css``;
6039
- var bannerDismissButtonStyles = import_react30.css`
6048
+ var bannerContentStyles = import_react31.css``;
6049
+ var bannerDismissButtonStyles = import_react31.css`
6040
6050
  display: flex;
6041
6051
  align-items: center;
6042
6052
  justify-content: center;
@@ -6089,15 +6099,15 @@ init_emotion_jsx_shim();
6089
6099
 
6090
6100
  // src/components/Brand/UniformLogo.styles.ts
6091
6101
  init_emotion_jsx_shim();
6092
- var import_react31 = require("@emotion/react");
6093
- var SVG = import_react31.css`
6102
+ var import_react32 = require("@emotion/react");
6103
+ var SVG = import_react32.css`
6094
6104
  display: block;
6095
6105
  `;
6096
- var SVGLight = import_react31.css`
6106
+ var SVGLight = import_react32.css`
6097
6107
  background: transparent;
6098
6108
  color: var(--typography-base);
6099
6109
  `;
6100
- var SVGDark = import_react31.css`
6110
+ var SVGDark = import_react32.css`
6101
6111
  background: var(--gray-800);
6102
6112
  color: var(--white);
6103
6113
  `;
@@ -6310,36 +6320,36 @@ init_emotion_jsx_shim();
6310
6320
 
6311
6321
  // src/components/LoadingOverlay/LoadingOverlay.styles.ts
6312
6322
  init_emotion_jsx_shim();
6313
- var import_react32 = require("@emotion/react");
6314
- var loadingOverlayContainer = import_react32.css`
6323
+ var import_react33 = require("@emotion/react");
6324
+ var loadingOverlayContainer = import_react33.css`
6315
6325
  inset: 0;
6316
6326
  overflow: hidden;
6317
6327
  justify-content: center;
6318
6328
  padding: var(--spacing-xl);
6319
6329
  overflow-y: auto;
6320
6330
  `;
6321
- var loadingOverlayVisible = import_react32.css`
6331
+ var loadingOverlayVisible = import_react33.css`
6322
6332
  display: flex;
6323
6333
  `;
6324
- var loadingOverlayHidden = import_react32.css`
6334
+ var loadingOverlayHidden = import_react33.css`
6325
6335
  display: none;
6326
6336
  `;
6327
- var loadingOverlayBackground = (bgColor) => import_react32.css`
6337
+ var loadingOverlayBackground = (bgColor) => import_react33.css`
6328
6338
  background: ${bgColor};
6329
6339
  opacity: 0.92;
6330
6340
  position: absolute;
6331
6341
  inset: 0 0;
6332
6342
  `;
6333
- var loadingOverlayBody = import_react32.css`
6343
+ var loadingOverlayBody = import_react33.css`
6334
6344
  align-items: center;
6335
6345
  display: flex;
6336
6346
  flex-direction: column;
6337
6347
  `;
6338
- var loadingOverlayMessage = import_react32.css`
6348
+ var loadingOverlayMessage = import_react33.css`
6339
6349
  color: var(--gray-600);
6340
6350
  margin: var(--spacing-base) 0 0;
6341
6351
  `;
6342
- var loaderAnimationContainer = import_react32.css`
6352
+ var loaderAnimationContainer = import_react33.css`
6343
6353
  aspect-ratio: 1/1;
6344
6354
  position: relative;
6345
6355
  transition: filter var(--duration-xslow) ease-in-out;
@@ -6667,17 +6677,17 @@ var LoadingIcon = ({ height, width, ...props }) => {
6667
6677
 
6668
6678
  // src/components/Menu/DropdownStyleMenuTrigger.tsx
6669
6679
  init_emotion_jsx_shim();
6670
- var import_react33 = require("@emotion/react");
6680
+ var import_react34 = require("@emotion/react");
6671
6681
  var import_CgChevronDown2 = require("@react-icons/all-files/cg/CgChevronDown");
6672
- var import_react34 = require("react");
6682
+ var import_react35 = require("react");
6673
6683
  var import_jsx_runtime25 = require("@emotion/react/jsx-runtime");
6674
- var buttonStyle = (bgColor) => import_react33.css`
6684
+ var buttonStyle = (bgColor) => import_react34.css`
6675
6685
  background-color: ${bgColor};
6676
6686
  display: block;
6677
6687
  font-size: var(--fs-sm);
6678
6688
  line-height: 1.5;
6679
6689
  `;
6680
- var ghostButtonStyle = import_react33.css`
6690
+ var ghostButtonStyle = import_react34.css`
6681
6691
  border: 0;
6682
6692
  transition:
6683
6693
  background-color var(--duration-fast) var(--timing-ease-out),
@@ -6694,7 +6704,7 @@ var ghostButtonStyle = import_react33.css`
6694
6704
  color: var(--gray-400);
6695
6705
  }
6696
6706
  `;
6697
- var outlineButtonStyle = import_react33.css`
6707
+ var outlineButtonStyle = import_react34.css`
6698
6708
  align-items: center;
6699
6709
  border: 1px solid var(--gray-200);
6700
6710
  border-radius: var(--rounded-sm);
@@ -6715,7 +6725,7 @@ var outlineButtonStyle = import_react33.css`
6715
6725
  }
6716
6726
  `;
6717
6727
  var DropdownStyleMenuTrigger = markNativeButton(
6718
- (0, import_react34.forwardRef)(function DropdownStyleMenuTrigger2({ bgColor = "var(--white)", variant = "ghost", children, ...buttonProps }, ref) {
6728
+ (0, import_react35.forwardRef)(function DropdownStyleMenuTrigger2({ bgColor = "var(--white)", variant = "ghost", children, ...buttonProps }, ref) {
6719
6729
  var _a;
6720
6730
  const buttonVariantStyle = variant === "ghost" ? ghostButtonStyle : outlineButtonStyle;
6721
6731
  return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
@@ -6740,14 +6750,6 @@ var import_menu = require("@base-ui/react/menu");
6740
6750
  var React8 = __toESM(require("react"));
6741
6751
  var import_react40 = require("react");
6742
6752
 
6743
- // src/components/Modal/ModalPortalContext.ts
6744
- init_emotion_jsx_shim();
6745
- var import_react35 = require("react");
6746
- var ModalPortalContext = (0, import_react35.createContext)(null);
6747
- function useModalPortalContainer() {
6748
- return (0, import_react35.useContext)(ModalPortalContext);
6749
- }
6750
-
6751
6753
  // src/components/Menu/filterMenuSeparators.ts
6752
6754
  init_emotion_jsx_shim();
6753
6755
  var import_react38 = __toESM(require("react"));
@@ -7657,10 +7659,10 @@ var Input = (0, import_react49.forwardRef)(
7657
7659
  id,
7658
7660
  css: [
7659
7661
  prefix ? inputInPrefixGroup : input("nowrap"),
7662
+ typeof classNameControl === "object" ? classNameControl : void 0,
7660
7663
  prefix && icon ? inputInPrefixGroupWithIcon : void 0,
7661
7664
  !prefix && errorMessage ? inputError : void 0,
7662
- !prefix && icon ? inputWithIcon : "",
7663
- typeof classNameControl === "object" ? classNameControl : void 0
7665
+ !prefix && icon ? inputWithIcon : ""
7664
7666
  ],
7665
7667
  "aria-label": showLabel || typeof label2 !== "string" ? void 0 : label2,
7666
7668
  className: typeof classNameControl === "string" ? classNameControl : "",
@@ -9545,18 +9547,38 @@ var Link = React13.forwardRef(
9545
9547
  );
9546
9548
  Link.displayName = "Link";
9547
9549
  var LinkWithRef = React13.forwardRef(
9548
- ({ linkManagerComponent: LinkManager, href, as, onClick, linkColor = "default", children, text, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
9549
- LinkManager,
9550
- {
9551
- ...props,
9552
- as,
9553
- href,
9554
- ref,
9555
- css: [link, textColor[linkColor]],
9556
- onClick,
9557
- children: text != null ? text : children
9558
- }
9559
- )
9550
+ ({
9551
+ linkManagerComponent: LinkManager,
9552
+ href,
9553
+ as,
9554
+ onClick,
9555
+ external,
9556
+ linkColor = "default",
9557
+ children,
9558
+ text,
9559
+ ...props
9560
+ }, ref) => {
9561
+ const externalAttrs = external ? {
9562
+ target: "_blank",
9563
+ rel: "noreferrer noopener"
9564
+ } : {};
9565
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(
9566
+ LinkManager,
9567
+ {
9568
+ ...props,
9569
+ ...externalAttrs,
9570
+ as,
9571
+ href,
9572
+ ref,
9573
+ css: [link, textColor[linkColor]],
9574
+ onClick,
9575
+ children: [
9576
+ text != null ? text : children,
9577
+ external ? /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(Icon, { icon: import_CgExternal2.CgExternal, iconColor: "currentColor", size: 20 }) : null
9578
+ ]
9579
+ }
9580
+ );
9581
+ }
9560
9582
  );
9561
9583
  LinkWithRef.displayName = "LinkWithRef";
9562
9584
 
@@ -11165,7 +11187,9 @@ var descriptionListLabelStyles = import_react84.css`
11165
11187
  `;
11166
11188
  var descriptionListValueStyles = import_react84.css`
11167
11189
  display: flex;
11190
+ min-width: 0;
11168
11191
  margin: 0;
11192
+ overflow-wrap: anywhere;
11169
11193
  `;
11170
11194
 
11171
11195
  // src/components/DescriptionList/DescriptionList.tsx
@@ -12992,9 +13016,11 @@ var IntegrationModalHeader = ({ icon, name, menu, children }) => {
12992
13016
  // src/components/JsonEditor/JsonEditor.tsx
12993
13017
  init_emotion_jsx_shim();
12994
13018
  var import_react112 = __toESM(require("@monaco-editor/react"));
13019
+ var React19 = __toESM(require("react"));
12995
13020
  var import_jsx_runtime94 = require("@emotion/react/jsx-runtime");
12996
13021
  var minEditorHeightPx = 150;
12997
13022
  var JsonEditor = ({ defaultValue, onChange, jsonSchema, height, readOnly }) => {
13023
+ const modelPath = `${React19.useId()}.json`;
12998
13024
  let effectiveHeight = height;
12999
13025
  if (typeof height === "number" && height < 0) {
13000
13026
  effectiveHeight = typeof window === "undefined" ? "100%" : window.innerHeight + height;
@@ -13007,6 +13033,7 @@ var JsonEditor = ({ defaultValue, onChange, jsonSchema, height, readOnly }) => {
13007
13033
  {
13008
13034
  height: effectiveHeight,
13009
13035
  className: "uniform-json-editor",
13036
+ path: modelPath,
13010
13037
  defaultLanguage: "json",
13011
13038
  defaultValue,
13012
13039
  options: {
@@ -15251,6 +15278,20 @@ var ObjectGridItemSubtitle = import_react133.css`
15251
15278
  text-overflow: ellipsis;
15252
15279
  max-width: 100%;
15253
15280
  `;
15281
+ var ObjectGridItemRevealMenu = import_react133.css`
15282
+ display: inline-flex;
15283
+ opacity: 0;
15284
+ transition: opacity var(--duration-fast) var(--timing-ease-out);
15285
+
15286
+ [data-object-grid-item]:hover &,
15287
+ [data-object-grid-item]:focus-within &,
15288
+ &:hover,
15289
+ &:focus-within,
15290
+ &:has([aria-expanded='true']),
15291
+ &:has([data-popup-open]) {
15292
+ opacity: 1;
15293
+ }
15294
+ `;
15254
15295
 
15255
15296
  // src/components/Objects/ObjectGridItem.tsx
15256
15297
  var import_jsx_runtime112 = require("@emotion/react/jsx-runtime");
@@ -15262,6 +15303,7 @@ var ObjectGridItem2 = ({
15262
15303
  isSelected,
15263
15304
  children,
15264
15305
  menuTestId,
15306
+ revealMenuOnHover,
15265
15307
  ...props
15266
15308
  }) => {
15267
15309
  const hasOnClick = props.onClick;
@@ -15298,14 +15340,14 @@ var ObjectGridItem2 = ({
15298
15340
  onClick: hasOnClick ? onStopPropagation : void 0,
15299
15341
  children: [
15300
15342
  rightSlot,
15301
- menuItems ? /* @__PURE__ */ (0, import_jsx_runtime112.jsx)(
15343
+ menuItems ? /* @__PURE__ */ (0, import_jsx_runtime112.jsx)("span", { css: revealMenuOnHover ? ObjectGridItemRevealMenu : void 0, children: /* @__PURE__ */ (0, import_jsx_runtime112.jsx)(
15302
15344
  Menu,
15303
15345
  {
15304
15346
  menuTrigger: /* @__PURE__ */ (0, import_jsx_runtime112.jsx)(MenuThreeDots, { "data-testid": menuTestId != null ? menuTestId : "object-grid-item-menu-btn" }),
15305
15347
  placement: "bottom-end",
15306
15348
  children: menuItems
15307
15349
  }
15308
- ) : null
15350
+ ) }) : null
15309
15351
  ]
15310
15352
  }
15311
15353
  ) : null
@@ -16009,7 +16051,7 @@ var ObjectListSubText2 = ({ children, ...props }) => {
16009
16051
 
16010
16052
  // src/components/Pagination/Pagination.tsx
16011
16053
  init_emotion_jsx_shim();
16012
- var React20 = __toESM(require("react"));
16054
+ var React21 = __toESM(require("react"));
16013
16055
  var import_react_paginate = __toESM(require("react-paginate"));
16014
16056
 
16015
16057
  // src/components/Pagination/Pagination.styles.ts
@@ -16147,7 +16189,7 @@ function Pagination({
16147
16189
  total,
16148
16190
  onPageChange
16149
16191
  }) {
16150
- const containerRef = React20.useRef(null);
16192
+ const containerRef = React21.useRef(null);
16151
16193
  const pageCount = limit >= 1 ? Math.ceil(total / limit) : 0;
16152
16194
  const currentPage = limit >= 1 ? Math.ceil(offset / limit) : 0;
16153
16195
  const { marginPagesDisplayed, pageRangeDisplayed } = usePaginationDisplayRange(containerRef, pageCount);
@@ -22748,39 +22790,39 @@ var ResponsiveTableContainer = ({ children }) => {
22748
22790
 
22749
22791
  // src/components/Table/Table.tsx
22750
22792
  init_emotion_jsx_shim();
22751
- var React26 = __toESM(require("react"));
22793
+ var React27 = __toESM(require("react"));
22752
22794
  var import_jsx_runtime162 = require("@emotion/react/jsx-runtime");
22753
- var Table = React26.forwardRef(
22795
+ var Table = React27.forwardRef(
22754
22796
  ({ children, cellPadding, ...otherProps }, ref) => {
22755
22797
  return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("table", { ref, css: table({ cellPadding }), ...otherProps, children });
22756
22798
  }
22757
22799
  );
22758
- var TableHead = React26.forwardRef(
22800
+ var TableHead = React27.forwardRef(
22759
22801
  ({ children, ...otherProps }, ref) => {
22760
22802
  return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("thead", { ref, css: tableHead, ...otherProps, children });
22761
22803
  }
22762
22804
  );
22763
- var TableBody = React26.forwardRef(
22805
+ var TableBody = React27.forwardRef(
22764
22806
  ({ children, ...otherProps }, ref) => {
22765
22807
  return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("tbody", { ref, ...otherProps, children });
22766
22808
  }
22767
22809
  );
22768
- var TableFoot = React26.forwardRef(
22810
+ var TableFoot = React27.forwardRef(
22769
22811
  ({ children, ...otherProps }, ref) => {
22770
22812
  return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("tfoot", { ref, ...otherProps, children });
22771
22813
  }
22772
22814
  );
22773
- var TableRow = React26.forwardRef(
22815
+ var TableRow = React27.forwardRef(
22774
22816
  ({ children, ...otherProps }, ref) => {
22775
22817
  return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("tr", { ref, css: tableRow, ...otherProps, children });
22776
22818
  }
22777
22819
  );
22778
- var TableCellHead = React26.forwardRef(
22820
+ var TableCellHead = React27.forwardRef(
22779
22821
  ({ children, ...otherProps }, ref) => {
22780
22822
  return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("th", { ref, css: tableCellHead, ...otherProps, children });
22781
22823
  }
22782
22824
  );
22783
- var TableCellData = React26.forwardRef(
22825
+ var TableCellData = React27.forwardRef(
22784
22826
  ({ children, ...otherProps }, ref) => {
22785
22827
  return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("td", { ref, ...otherProps, children });
22786
22828
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uniformdev/design-system",
3
- "version": "20.72.3-alpha.5+87cd60cb2e",
3
+ "version": "20.72.3-alpha.52+f01685e1ef",
4
4
  "description": "Uniform design system components",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "exports": {
@@ -34,8 +34,8 @@
34
34
  "@storybook/react-vite": "10.4.6",
35
35
  "@types/react": "19.2.17",
36
36
  "@types/react-dom": "19.2.3",
37
- "@uniformdev/canvas": "^20.72.3-alpha.5+87cd60cb2e",
38
- "@uniformdev/richtext": "^20.72.3-alpha.5+87cd60cb2e",
37
+ "@uniformdev/canvas": "^20.72.3-alpha.52+f01685e1ef",
38
+ "@uniformdev/richtext": "^20.72.3-alpha.52+f01685e1ef",
39
39
  "autoprefixer": "10.5.0",
40
40
  "hygen": "6.2.11",
41
41
  "jsdom": "29.1.1",
@@ -82,5 +82,5 @@
82
82
  "publishConfig": {
83
83
  "access": "public"
84
84
  },
85
- "gitHead": "87cd60cb2eae75aac26c8c51566e66281c3921f9"
85
+ "gitHead": "f01685e1ef0aeb05dc200ccdcdd5aba6f6cfc437"
86
86
  }