@uniformdev/design-system 20.7.1-alpha.26 → 20.7.1-alpha.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1495,6 +1495,7 @@ __export(src_exports, {
1495
1495
  ProgressList: () => ProgressList,
1496
1496
  ProgressListItem: () => ProgressListItem,
1497
1497
  ResolveIcon: () => ResolveIcon,
1498
+ ResponsiveTableContainer: () => ResponsiveTableContainer,
1498
1499
  RichTextToolbarIcon: () => RichTextToolbarIcon,
1499
1500
  ScrollableList: () => ScrollableList,
1500
1501
  ScrollableListInputItem: () => ScrollableListInputItem,
@@ -1620,6 +1621,7 @@ __export(src_exports, {
1620
1621
  uniformStatusDraftIcon: () => uniformStatusDraftIcon,
1621
1622
  uniformStatusModifiedIcon: () => uniformStatusModifiedIcon,
1622
1623
  uniformStatusPublishedIcon: () => uniformStatusPublishedIcon,
1624
+ uniformUsageStatusIcon: () => uniformUsageStatusIcon,
1623
1625
  useBreakpoint: () => useBreakpoint,
1624
1626
  useButtonStyles: () => useButtonStyles,
1625
1627
  useCloseCurrentDrawer: () => useCloseCurrentDrawer,
@@ -5097,6 +5099,24 @@ var uniformStatusPublishedIcon = (0, import_all_files2.GenIcon)({
5097
5099
  }
5098
5100
  ]
5099
5101
  });
5102
+ var uniformUsageStatusIcon = (0, import_all_files2.GenIcon)({
5103
+ tag: "svg",
5104
+ attr: {
5105
+ role: "img",
5106
+ viewBox: "0 0 12 12",
5107
+ fill: "none"
5108
+ },
5109
+ child: [
5110
+ {
5111
+ tag: "path",
5112
+ attr: {
5113
+ fill: "currentColor",
5114
+ d: "M9.37501 7.12499C9.04355 7.12482 8.72146 7.23498 8.45954 7.43812L7.37626 6.59437C7.45804 6.40689 7.50017 6.20453 7.50001 5.99999C7.50001 5.96531 7.50001 5.93062 7.49626 5.8964L8.11641 5.68968C8.31261 5.99228 8.61126 6.21406 8.95766 6.3144C9.30406 6.41474 9.67501 6.38692 10.0026 6.23604C10.3301 6.08516 10.5924 5.82131 10.7412 5.49284C10.8901 5.16436 10.9157 4.79324 10.8132 4.44747C10.7107 4.10169 10.4871 3.8044 10.1833 3.61006C9.87954 3.41572 9.5159 3.33733 9.15902 3.38926C8.80214 3.44119 8.47592 3.61996 8.2401 3.89281C8.00429 4.16567 7.87468 4.51436 7.87501 4.87499C7.87501 4.90968 7.87501 4.94437 7.87876 4.97859L7.2586 5.18531C7.12265 4.97514 6.93627 4.80233 6.71644 4.68263C6.49661 4.56293 6.25031 4.50014 6.00001 4.49999C5.91724 4.50017 5.83462 4.50706 5.75297 4.52062L5.43235 3.79687C5.7092 3.57566 5.8988 3.26358 5.96753 2.91594C6.03626 2.5683 5.9797 2.20755 5.80786 1.89763C5.63602 1.58771 5.36 1.34863 5.02873 1.22278C4.69746 1.09693 4.33233 1.09243 3.99805 1.21007C3.66378 1.32771 3.38195 1.5599 3.20251 1.86549C3.02308 2.17108 2.95763 2.53032 3.01777 2.87956C3.07791 3.22879 3.25975 3.54545 3.53106 3.77342C3.80237 4.00139 4.14563 4.12594 4.50001 4.12499C4.58277 4.12482 4.66539 4.11792 4.74704 4.10437L5.06766 4.82624C4.79577 5.04144 4.60706 5.34439 4.53378 5.68331C4.46051 6.02223 4.50722 6.37608 4.66594 6.68437L3.46079 7.75499C3.1575 7.55053 2.79005 7.4637 2.42732 7.51078C2.06459 7.55785 1.73148 7.7356 1.49043 8.01071C1.24938 8.28581 1.11693 8.63939 1.11793 9.00516C1.11892 9.37093 1.25327 9.72379 1.49581 9.99758C1.73835 10.2714 2.07242 10.4473 2.4354 10.4924C2.79838 10.5375 3.16535 10.4487 3.46753 10.2426C3.7697 10.0365 3.98634 9.72728 4.07683 9.37288C4.16732 9.01847 4.12545 8.64323 3.95907 8.31749L5.16422 7.24687C5.42516 7.42256 5.73485 7.51152 6.04925 7.50108C6.36365 7.49064 6.66676 7.38135 6.91547 7.18874L7.99876 8.03249C7.91723 8.21939 7.8751 8.42109 7.87501 8.62499C7.87501 8.92167 7.96298 9.21168 8.1278 9.45835C8.29262 9.70502 8.52689 9.89728 8.80098 10.0108C9.07507 10.1243 9.37667 10.154 9.66764 10.0962C9.95861 10.0383 10.2259 9.89543 10.4357 9.68565C10.6454 9.47588 10.7883 9.2086 10.8462 8.91763C10.9041 8.62666 10.8744 8.32506 10.7608 8.05097C10.6473 7.77688 10.455 7.54261 10.2084 7.37779C9.96169 7.21297 9.67168 7.12499 9.37501 7.12499ZM9.37501 4.12499C9.52334 4.12499 9.66835 4.16898 9.79168 4.25139C9.91502 4.3338 10.0112 4.45094 10.0679 4.58798C10.1247 4.72503 10.1395 4.87583 10.1106 5.02131C10.0817 5.1668 10.0102 5.30044 9.90534 5.40532C9.80045 5.51021 9.66681 5.58164 9.52132 5.61058C9.37584 5.63952 9.22504 5.62467 9.08799 5.5679C8.95095 5.51114 8.83382 5.41501 8.7514 5.29167C8.66899 5.16833 8.62501 5.02333 8.62501 4.87499C8.62501 4.67608 8.70402 4.48532 8.84468 4.34466C8.98533 4.20401 9.17609 4.12499 9.37501 4.12499ZM3.75001 2.62499C3.75001 2.47666 3.79399 2.33165 3.8764 2.20832C3.95881 2.08498 4.07595 1.98885 4.21299 1.93208C4.35004 1.87532 4.50084 1.86047 4.64632 1.88941C4.79181 1.91834 4.92545 1.98978 5.03034 2.09466C5.13522 2.19955 5.20666 2.33319 5.23559 2.47868C5.26453 2.62416 5.24968 2.77496 5.19292 2.91201C5.13615 3.04905 5.04002 3.16619 4.91668 3.2486C4.79335 3.33101 4.64834 3.37499 4.50001 3.37499C4.30109 3.37499 4.11033 3.29598 3.96968 3.15532C3.82902 3.01467 3.75001 2.82391 3.75001 2.62499ZM2.62501 9.74999C2.47667 9.74999 2.33167 9.70601 2.20833 9.6236C2.08499 9.54119 1.98886 9.42405 1.9321 9.28701C1.87533 9.14996 1.86048 8.99916 1.88942 8.85368C1.91836 8.70819 1.98979 8.57455 2.09468 8.46966C2.19957 8.36478 2.3332 8.29334 2.47869 8.26441C2.62417 8.23547 2.77497 8.25032 2.91202 8.30708C3.04906 8.36385 3.1662 8.45998 3.24861 8.58332C3.33102 8.70665 3.37501 8.85166 3.37501 8.99999C3.37501 9.19891 3.29599 9.38967 3.15534 9.53032C3.01468 9.67098 2.82392 9.74999 2.62501 9.74999ZM9.37501 9.37499C9.22667 9.37499 9.08167 9.33101 8.95833 9.2486C8.83499 9.16619 8.73886 9.04905 8.6821 8.91201C8.62533 8.77496 8.61048 8.62416 8.63942 8.47868C8.66836 8.33319 8.73979 8.19955 8.84468 8.09466C8.94957 7.98978 9.0832 7.91834 9.22869 7.88941C9.37417 7.86047 9.52497 7.87532 9.66202 7.93208C9.79906 7.98885 9.9162 8.08498 9.99861 8.20832C10.081 8.33165 10.125 8.47666 10.125 8.62499C10.125 8.82391 10.046 9.01467 9.90534 9.15532C9.76468 9.29598 9.57392 9.37499 9.37501 9.37499Z"
5115
+ },
5116
+ child: []
5117
+ }
5118
+ ]
5119
+ });
5100
5120
 
5101
5121
  // src/components/AddListButton/AddListButton.styles.ts
5102
5122
  init_emotion_jsx_shim();
@@ -8256,7 +8276,7 @@ var ChipContainer = import_react67.css`
8256
8276
  `;
8257
8277
  var ChipText = import_react67.css`
8258
8278
  align-self: center;
8259
- line-height: 1;
8279
+ line-height: 1.1;
8260
8280
  text-wrap: nowrap;
8261
8281
  `;
8262
8282
  var ChipIcon = import_react67.css`
@@ -9559,7 +9579,7 @@ function renderDrawerId(drawer) {
9559
9579
  }
9560
9580
  var DrawerProvider = ({ children }) => {
9561
9581
  const [drawersRegistry, setDrawersRegistry] = (0, import_react81.useState)([]);
9562
- const providerId = (0, import_react81.useRef)(crypto.randomUUID());
9582
+ const providerId = (0, import_react81.useId)();
9563
9583
  const [drawerTakeoverStackId, setDrawerTakeoverStackId] = (0, import_react81.useState)(void 0);
9564
9584
  useShortcut({
9565
9585
  handler: () => {
@@ -9641,7 +9661,7 @@ var DrawerProvider = ({ children }) => {
9641
9661
  drawersRegistry,
9642
9662
  registerDrawer,
9643
9663
  unregisterDrawer,
9644
- providerId: providerId.current,
9664
+ providerId,
9645
9665
  drawerTakeoverStackId,
9646
9666
  registerTakeoverStackId,
9647
9667
  unregisterTakeoverStackId
@@ -9697,7 +9717,7 @@ var DrawerInner = ({
9697
9717
  instanceKey,
9698
9718
  onRequestClose,
9699
9719
  leftAligned,
9700
- width,
9720
+ width = "medium",
9701
9721
  testId = "side-dialog"
9702
9722
  }) => {
9703
9723
  const { registerDrawer, unregisterDrawer, providerId } = useDrawer();
@@ -9850,9 +9870,13 @@ var DrawerRenderer = ({
9850
9870
  if (withoutFluidWidth) {
9851
9871
  return rendererWidth;
9852
9872
  }
9853
- const drawerWidths = [rendererWidth, ...drawersToRender.map(({ width: width2 }) => width2)].filter(
9854
- (v) => typeof v === "string"
9855
- );
9873
+ const drawerWidths = [
9874
+ rendererWidth,
9875
+ ...drawersToRender.map(({ width: width2 }) => {
9876
+ var _a2;
9877
+ return width2 ? (_a2 = drawerWidth[width2]) != null ? _a2 : width2 : null;
9878
+ })
9879
+ ].filter((v) => typeof v === "string");
9856
9880
  return `max(${drawerWidths.join()})`;
9857
9881
  }, [drawersToRender, width, withoutFluidWidth]);
9858
9882
  if (drawersToRender.length === 0) {
@@ -9913,6 +9937,7 @@ var DrawerWrapper = ({
9913
9937
  {
9914
9938
  css: [drawerWrapperStyles, leftAligned ? drawerWrapperLeftAlignedStyles : null],
9915
9939
  style: { width: calculatedWidth, minWidth, maxWidth },
9940
+ "data-testid": "drawer-wrapper",
9916
9941
  children
9917
9942
  }
9918
9943
  )
@@ -10103,7 +10128,7 @@ function Image({
10103
10128
  if (src === "") {
10104
10129
  setLoading(false);
10105
10130
  } else {
10106
- const url = String(src).startsWith("//") ? `${location.protocol}${src}` : String(src);
10131
+ const url = String(src).startsWith("//") ? `https://${src}` : String(src);
10107
10132
  if (!isValidUrl(url, { allowRelative: true, isSecure: true })) {
10108
10133
  throw Error(errorText);
10109
10134
  }
@@ -10692,21 +10717,28 @@ var import_react97 = require("react");
10692
10717
  init_emotion_jsx_shim();
10693
10718
  var import_react96 = require("@emotion/react");
10694
10719
  var tileBorderSize = "1px";
10720
+ var tileBorderRadius = "var(--rounded-2xl)";
10721
+ var tileBorderColor = "var(--gray-300)";
10695
10722
  var Tile = import_react96.css`
10696
10723
  background: var(--white);
10697
10724
  cursor: pointer;
10698
- border: ${tileBorderSize} solid var(--gray-300);
10699
- display: grid;
10725
+ border: ${tileBorderSize} solid var(--tile-border-color, ${tileBorderColor});
10726
+ display: flex;
10727
+ flex-direction: column;
10700
10728
  padding: var(--spacing-base);
10701
- place-items: center;
10702
- place-content: center;
10729
+ align-items: center;
10730
+ justify-content: center;
10703
10731
  gap: var(--spacing-sm);
10704
- transition: background-color var(--duration-fast) var(--timing-ease-out);
10705
- min-height: 128px;
10732
+ border-radius: var(--tile-border-radius, ${tileBorderRadius});
10733
+ transition:
10734
+ background-color var(--duration-fast) var(--timing-ease-out),
10735
+ border-color var(--duration-fast) var(--timing-ease-out);
10706
10736
 
10707
10737
  &:hover,
10708
10738
  &:focus {
10709
10739
  background: var(--gray-50);
10740
+ border-color: var(--tile-border-color-hover, var(--accent-dark));
10741
+ z-index: 1;
10710
10742
  }
10711
10743
 
10712
10744
  &[aria-disabled='true'],
@@ -10722,28 +10754,56 @@ var TileIsSelected = import_react96.css`
10722
10754
  border: calc(${tileBorderSize} + 1px) solid var(--primary-action-active);
10723
10755
  z-index: 1; // Used to elevate active state border over other Tile borders
10724
10756
  `;
10757
+ var TileHorizontal = import_react96.css`
10758
+ flex-direction: row;
10759
+ justify-content: flex-start;
10760
+ `;
10725
10761
 
10726
10762
  // src/components/Tiles/LinkTile.tsx
10727
10763
  var import_jsx_runtime83 = require("@emotion/react/jsx-runtime");
10728
10764
  var LinkTile2 = (0, import_react97.forwardRef)(
10729
- ({ children, ...props }, ref) => {
10765
+ ({ orientation = "vertical", children, ...props }, ref) => {
10730
10766
  if ("linkManagerComponent" in props) {
10731
10767
  const { linkManagerComponent: LinkManager, ...rest } = props;
10732
- return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(LinkManager, { css: [Tile, LinkTile], ref, ...rest, children });
10768
+ return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(
10769
+ LinkManager,
10770
+ {
10771
+ css: [
10772
+ Tile,
10773
+ LinkTile,
10774
+ orientation === "horizontal" ? TileHorizontal : void 0
10775
+ ],
10776
+ ref,
10777
+ ...rest,
10778
+ children
10779
+ }
10780
+ );
10733
10781
  }
10734
- return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)("a", { ref, css: [Tile, LinkTile], ...props, children });
10782
+ return /* @__PURE__ */ (0, import_jsx_runtime83.jsx)(
10783
+ "a",
10784
+ {
10785
+ ref,
10786
+ css: [Tile, LinkTile, orientation === "horizontal" ? TileHorizontal : void 0],
10787
+ ...props,
10788
+ children
10789
+ }
10790
+ );
10735
10791
  }
10736
10792
  );
10737
10793
 
10738
10794
  // src/components/Tiles/Tile.tsx
10739
10795
  init_emotion_jsx_shim();
10740
10796
  var import_jsx_runtime84 = require("@emotion/react/jsx-runtime");
10741
- var Tile2 = ({ children, disabled: disabled2, isSelected, ...props }) => {
10797
+ var Tile2 = ({ children, disabled: disabled2, isSelected, orientation = "vertical", ...props }) => {
10742
10798
  return /* @__PURE__ */ (0, import_jsx_runtime84.jsx)(
10743
10799
  "button",
10744
10800
  {
10745
10801
  type: "button",
10746
- css: [Tile, isSelected ? TileIsSelected : void 0],
10802
+ css: [
10803
+ Tile,
10804
+ orientation === "horizontal" ? TileHorizontal : void 0,
10805
+ isSelected ? TileIsSelected : void 0
10806
+ ],
10747
10807
  disabled: disabled2,
10748
10808
  ...props,
10749
10809
  children
@@ -10762,17 +10822,46 @@ var TileContainerWrapper = (theme, padding) => import_react98.css`
10762
10822
  padding: ${padding != "none" ? `var(--spacing-${padding})` : "0"};
10763
10823
  `;
10764
10824
  var TileContainerInner = (gap, templateColumns) => import_react98.css`
10825
+ /* We remove the border radius from the tiles when used inside TileContainer */
10826
+ --tile-border-radius: 0;
10827
+ --tile-border-color: ${tileBorderColor};
10828
+ /* We don't want the tiles to change border color on hover, because of the border radius we have on the container-level */
10829
+ --tile-border-color-hover: ${tileBorderColor};
10830
+
10831
+ position: relative;
10765
10832
  display: grid;
10766
10833
  grid-template-columns: ${templateColumns};
10834
+ grid-auto-rows: 1fr;
10767
10835
  gap: var(--spacing-${gap});
10836
+ background-color: var(--gray-5);
10768
10837
  margin-top: ${tileBorderSize};
10769
10838
  margin-left: ${tileBorderSize};
10839
+ border-radius: ${tileBorderRadius};
10840
+ overflow: hidden;
10841
+
10842
+ /* This is used to create a border around the tiles */
10843
+ &::after {
10844
+ content: '';
10845
+ position: absolute;
10846
+ inset: 0;
10847
+ border-radius: ${tileBorderRadius};
10848
+ border: ${tileBorderSize} solid var(--tile-border-color);
10849
+ pointer-events: none;
10850
+ z-index: 1;
10851
+ }
10770
10852
 
10771
10853
  > * {
10772
10854
  margin-top: -${tileBorderSize};
10773
10855
  margin-left: -${tileBorderSize};
10774
10856
  }
10775
10857
  `;
10858
+ var TileContainerInnerWithoutGrouping = import_react98.css`
10859
+ overflow: visible;
10860
+
10861
+ &::after {
10862
+ display: none;
10863
+ }
10864
+ `;
10776
10865
 
10777
10866
  // src/components/Tiles/TileContainer.tsx
10778
10867
  var import_jsx_runtime85 = require("@emotion/react/jsx-runtime");
@@ -10782,9 +10871,19 @@ var TileContainer = ({
10782
10871
  gap = "base",
10783
10872
  gridTemplateColumns = "repeat(auto-fill, minmax(13rem, 1fr))",
10784
10873
  children,
10874
+ withoutGrouping = false,
10785
10875
  ...props
10786
10876
  }) => {
10787
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { css: TileContainerWrapper(bgColor, containerPadding), ...props, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { css: TileContainerInner(gap, gridTemplateColumns), children }) });
10877
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)("div", { css: TileContainerWrapper(bgColor, containerPadding), ...props, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
10878
+ "div",
10879
+ {
10880
+ css: [
10881
+ TileContainerInner(gap, gridTemplateColumns),
10882
+ withoutGrouping ? TileContainerInnerWithoutGrouping : void 0
10883
+ ],
10884
+ children
10885
+ }
10886
+ ) });
10788
10887
  };
10789
10888
 
10790
10889
  // src/components/Tiles/TileText.tsx
@@ -12511,24 +12610,23 @@ var CoverSelectedChip = import_react119.css`
12511
12610
  var import_jsx_runtime101 = require("@emotion/react/jsx-runtime");
12512
12611
  var ObjectGridItemCardCover = (props) => {
12513
12612
  if ("imageUrl" in props && props.imageUrl) {
12514
- const { imageUrl, srcSet, ...otherProps } = props;
12613
+ const { imageUrl, srcSet, alt } = props;
12515
12614
  return /* @__PURE__ */ (0, import_jsx_runtime101.jsx)("div", { css: CoverContainer, children: /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
12516
12615
  "img",
12517
12616
  {
12518
12617
  src: imageUrl,
12519
12618
  srcSet,
12520
- alt: props.alt,
12521
12619
  css: CoverImage,
12522
12620
  loading: "lazy",
12523
12621
  role: "presentation",
12524
12622
  "data-testid": "object-grid-item-thumbnail",
12525
- ...otherProps
12623
+ alt
12526
12624
  }
12527
12625
  ) });
12528
12626
  }
12529
12627
  if ("icon" in props && props.icon) {
12530
- const { icon, iconColor, ...rest } = props;
12531
- return /* @__PURE__ */ (0, import_jsx_runtime101.jsx)("div", { css: CoverContainer, children: /* @__PURE__ */ (0, import_jsx_runtime101.jsxs)("div", { css: CoverIconWrapper, "data-testid": "object-grid-item-thumbnail", ...rest, children: [
12628
+ const { icon, iconColor } = props;
12629
+ return /* @__PURE__ */ (0, import_jsx_runtime101.jsx)("div", { css: CoverContainer, children: /* @__PURE__ */ (0, import_jsx_runtime101.jsxs)("div", { css: CoverIconWrapper, "data-testid": "object-grid-item-thumbnail", children: [
12532
12630
  /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Icon, { icon, iconColor: iconColor != null ? iconColor : "currentColor", css: CoverIconGhost }),
12533
12631
  /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Icon, { icon, iconColor: iconColor != null ? iconColor : "currentColor", size: 48 })
12534
12632
  ] }) });
@@ -12755,7 +12853,7 @@ var ObjectListItemRightSlot = import_react123.css`
12755
12853
  gap: var(--spacing-sm);
12756
12854
  `;
12757
12855
  var ObjectListItemContainer = import_react123.css`
12758
- > [role='listitem'] {
12856
+ > [role='listitem']:not(:first-of-type) {
12759
12857
  border-top: 1px solid var(--gray-200);
12760
12858
  }
12761
12859
  `;
@@ -17381,8 +17479,8 @@ var SegmentedControl = ({
17381
17479
  segmentedControlStyles,
17382
17480
  orientation === "vertical" ? segmentedControlVerticalStyles : void 0
17383
17481
  ],
17384
- ...props,
17385
17482
  "data-testid": "segmented-control",
17483
+ ...props,
17386
17484
  children: options.map((option, index) => {
17387
17485
  var _a;
17388
17486
  if (!option) {
@@ -18118,14 +18216,13 @@ var Switch = (0, import_react171.forwardRef)(
18118
18216
  }
18119
18217
  );
18120
18218
 
18121
- // src/components/Table/Table.tsx
18219
+ // src/components/Table/ResponsiveTableContainer.tsx
18122
18220
  init_emotion_jsx_shim();
18123
- var React21 = __toESM(require("react"));
18124
18221
 
18125
18222
  // src/components/Table/Table.styles.ts
18126
18223
  init_emotion_jsx_shim();
18127
18224
  var import_react172 = require("@emotion/react");
18128
- var table = ({ cellPadding = "var(--spacing-sm) var(--spacing-md)" }) => import_react172.css`
18225
+ var table = ({ cellPadding = "var(--spacing-sm)" }) => import_react172.css`
18129
18226
  border-bottom: 1px solid var(--gray-400);
18130
18227
  border-collapse: collapse;
18131
18228
  min-width: 100%;
@@ -18135,10 +18232,11 @@ var table = ({ cellPadding = "var(--spacing-sm) var(--spacing-md)" }) => import_
18135
18232
  th,
18136
18233
  td {
18137
18234
  padding: ${cellPadding};
18235
+ vertical-align: top;
18138
18236
  }
18139
18237
 
18140
18238
  thead tr {
18141
- border-color: var(--gray-300);
18239
+ border-color: var(--gray-200);
18142
18240
  }
18143
18241
 
18144
18242
  tbody tr:hover {
@@ -18150,49 +18248,77 @@ var tableHead = import_react172.css`
18150
18248
  text-align: left;
18151
18249
  `;
18152
18250
  var tableRow = import_react172.css`
18153
- border-bottom: 1px solid var(--gray-100);
18251
+ border-bottom: 1px solid var(--gray-200);
18252
+ vertical-align: top;
18253
+ font-size: var(--fs-sm);
18154
18254
  `;
18155
18255
  var tableCellHead = import_react172.css`
18156
18256
  font-size: var(--fs-sm);
18157
- text-transform: uppercase;
18158
- font-weight: var(--fw-bold);
18257
+ font-weight: var(--fw-regular);
18258
+ line-height: 1.2;
18259
+ }
18159
18260
  `;
18261
+ var responsiveTableContainer = import_react172.css`
18262
+ max-width: calc(100vw - var(--spacing-md) * 2);
18263
+ overflow-x: auto;
18264
+ ${scrollbarStyles}
18160
18265
 
18161
- // src/components/Table/Table.tsx
18266
+ > table {
18267
+ display: block;
18268
+ overflow-x: auto;
18269
+ white-space: nowrap;
18270
+ ${scrollbarStyles}
18271
+
18272
+ ${mq("lg")} {
18273
+ display: table;
18274
+ white-space: initial;
18275
+ }
18276
+ }
18277
+ `;
18278
+
18279
+ // src/components/Table/ResponsiveTableContainer.tsx
18162
18280
  var import_jsx_runtime138 = require("@emotion/react/jsx-runtime");
18281
+ var ResponsiveTableContainer = ({ children }) => {
18282
+ return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)("div", { css: responsiveTableContainer, children });
18283
+ };
18284
+
18285
+ // src/components/Table/Table.tsx
18286
+ init_emotion_jsx_shim();
18287
+ var React21 = __toESM(require("react"));
18288
+ var import_jsx_runtime139 = require("@emotion/react/jsx-runtime");
18163
18289
  var Table = React21.forwardRef(
18164
18290
  ({ children, cellPadding, ...otherProps }, ref) => {
18165
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)("table", { ref, css: table({ cellPadding }), ...otherProps, children });
18291
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("table", { ref, css: table({ cellPadding }), ...otherProps, children });
18166
18292
  }
18167
18293
  );
18168
18294
  var TableHead = React21.forwardRef(
18169
18295
  ({ children, ...otherProps }, ref) => {
18170
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)("thead", { ref, css: tableHead, ...otherProps, children });
18296
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("thead", { ref, css: tableHead, ...otherProps, children });
18171
18297
  }
18172
18298
  );
18173
18299
  var TableBody = React21.forwardRef(
18174
18300
  ({ children, ...otherProps }, ref) => {
18175
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)("tbody", { ref, ...otherProps, children });
18301
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("tbody", { ref, ...otherProps, children });
18176
18302
  }
18177
18303
  );
18178
18304
  var TableFoot = React21.forwardRef(
18179
18305
  ({ children, ...otherProps }, ref) => {
18180
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)("tfoot", { ref, ...otherProps, children });
18306
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("tfoot", { ref, ...otherProps, children });
18181
18307
  }
18182
18308
  );
18183
18309
  var TableRow = React21.forwardRef(
18184
18310
  ({ children, ...otherProps }, ref) => {
18185
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)("tr", { ref, css: tableRow, ...otherProps, children });
18311
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("tr", { ref, css: tableRow, ...otherProps, children });
18186
18312
  }
18187
18313
  );
18188
18314
  var TableCellHead = React21.forwardRef(
18189
18315
  ({ children, ...otherProps }, ref) => {
18190
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)("th", { ref, css: tableCellHead, ...otherProps, children });
18316
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("th", { ref, css: tableCellHead, ...otherProps, children });
18191
18317
  }
18192
18318
  );
18193
18319
  var TableCellData = React21.forwardRef(
18194
18320
  ({ children, ...otherProps }, ref) => {
18195
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)("td", { ref, ...otherProps, children });
18321
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("td", { ref, ...otherProps, children });
18196
18322
  }
18197
18323
  );
18198
18324
 
@@ -18228,7 +18354,7 @@ var tabButtonGroupStyles = import_react173.css`
18228
18354
  `;
18229
18355
 
18230
18356
  // src/components/Tabs/Tabs.tsx
18231
- var import_jsx_runtime139 = require("@emotion/react/jsx-runtime");
18357
+ var import_jsx_runtime140 = require("@emotion/react/jsx-runtime");
18232
18358
  var useCurrentTab = () => {
18233
18359
  const context = (0, import_react174.useTabStore)();
18234
18360
  if (!context) {
@@ -18259,23 +18385,23 @@ var Tabs = ({
18259
18385
  },
18260
18386
  [onSelectedIdChange, useHashForState]
18261
18387
  );
18262
- return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(import_react174.TabProvider, { selectedId: selected, selectOnMove: !manual, setSelectedId: onTabSelect, ...props, children });
18388
+ return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(import_react174.TabProvider, { selectedId: selected, selectOnMove: !manual, setSelectedId: onTabSelect, ...props, children });
18263
18389
  };
18264
18390
  var TabButtonGroup = ({ children, ...props }) => {
18265
- return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(import_react174.TabList, { ...props, css: tabButtonGroupStyles, children });
18391
+ return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(import_react174.TabList, { ...props, css: tabButtonGroupStyles, children });
18266
18392
  };
18267
18393
  var TabButton = ({
18268
18394
  children,
18269
18395
  id,
18270
18396
  ...props
18271
18397
  }) => {
18272
- return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(import_react174.Tab, { type: "button", id, ...props, css: tabButtonStyles, children });
18398
+ return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(import_react174.Tab, { type: "button", id, ...props, css: tabButtonStyles, children });
18273
18399
  };
18274
18400
  var TabContent = ({
18275
18401
  children,
18276
18402
  ...props
18277
18403
  }) => {
18278
- return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(import_react174.TabPanel, { ...props, children });
18404
+ return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(import_react174.TabPanel, { ...props, children });
18279
18405
  };
18280
18406
 
18281
18407
  // src/components/Validation/StatusBullet.tsx
@@ -18361,7 +18487,7 @@ var StatusDeleted = import_react176.css`
18361
18487
  `;
18362
18488
 
18363
18489
  // src/components/Validation/StatusBullet.tsx
18364
- var import_jsx_runtime140 = require("@emotion/react/jsx-runtime");
18490
+ var import_jsx_runtime141 = require("@emotion/react/jsx-runtime");
18365
18491
  var StatusBullet = ({
18366
18492
  status,
18367
18493
  hideText = false,
@@ -18382,7 +18508,7 @@ var StatusBullet = ({
18382
18508
  Deleted: StatusDeleted
18383
18509
  };
18384
18510
  const statusSize = size === "base" ? StatusBulletBase : StatusBulletSmall;
18385
- const StatusComponent = () => /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
18511
+ const StatusComponent = () => /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
18386
18512
  "span",
18387
18513
  {
18388
18514
  role: "status",
@@ -18392,9 +18518,9 @@ var StatusBullet = ({
18392
18518
  }
18393
18519
  );
18394
18520
  if (compact) {
18395
- return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(StatusComponent, {});
18521
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(StatusComponent, {});
18396
18522
  }
18397
- return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(Tooltip, { title: message != null ? message : status, children: /* @__PURE__ */ (0, import_jsx_runtime140.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(StatusComponent, {}) }) });
18523
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(Tooltip, { title: message != null ? message : status, children: /* @__PURE__ */ (0, import_jsx_runtime141.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(StatusComponent, {}) }) });
18398
18524
  };
18399
18525
  // Annotate the CommonJS export names for ESM import in node:
18400
18526
  0 && (module.exports = {
@@ -18533,6 +18659,7 @@ var StatusBullet = ({
18533
18659
  ProgressList,
18534
18660
  ProgressListItem,
18535
18661
  ResolveIcon,
18662
+ ResponsiveTableContainer,
18536
18663
  RichTextToolbarIcon,
18537
18664
  ScrollableList,
18538
18665
  ScrollableListInputItem,
@@ -18658,6 +18785,7 @@ var StatusBullet = ({
18658
18785
  uniformStatusDraftIcon,
18659
18786
  uniformStatusModifiedIcon,
18660
18787
  uniformStatusPublishedIcon,
18788
+ uniformUsageStatusIcon,
18661
18789
  useBreakpoint,
18662
18790
  useButtonStyles,
18663
18791
  useCloseCurrentDrawer,
package/package.json CHANGED
@@ -1,8 +1,20 @@
1
1
  {
2
2
  "name": "@uniformdev/design-system",
3
- "version": "20.7.1-alpha.26+03c49728b3",
3
+ "version": "20.7.1-alpha.32+616e77445e",
4
4
  "description": "Uniform design system components",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
+ "exports": {
7
+ ".": {
8
+ "import": {
9
+ "types": "./dist/index.d.ts",
10
+ "default": "./dist/esm/index.js"
11
+ },
12
+ "require": {
13
+ "types": "./dist/index.d.cts",
14
+ "default": "./dist/index.js"
15
+ }
16
+ }
17
+ },
6
18
  "main": "./dist/index.js",
7
19
  "module": "./dist/esm/index.js",
8
20
  "types": "./dist/index.d.ts",
@@ -11,12 +23,12 @@
11
23
  "build": "tsup",
12
24
  "dev": "tsup --watch",
13
25
  "clean": "rimraf dist",
14
- "test": "jest",
15
- "test:coverage": "jest --coverage",
26
+ "test": "vitest",
27
+ "test:coverage": "vitest run --coverage",
16
28
  "lint": "eslint \"src/**/*.{js,ts,tsx}\"",
17
29
  "format": "prettier --write \"src/**/*.{js,ts,tsx}\"",
18
30
  "create:component": "hygen component with-prompt",
19
- "document": "api-extractor run --local"
31
+ "document:prebuild": "api-extractor run --local"
20
32
  },
21
33
  "devDependencies": {
22
34
  "@emotion/jest": "11.13.0",
@@ -26,15 +38,17 @@
26
38
  "@storybook/theming": "^8.3.3",
27
39
  "@types/react": "18.3.11",
28
40
  "@types/react-dom": "18.3.1",
29
- "@uniformdev/canvas": "^20.7.1-alpha.26+03c49728b3",
30
- "@uniformdev/richtext": "^20.7.1-alpha.26+03c49728b3",
31
- "autoprefixer": "10.4.16",
41
+ "@uniformdev/canvas": "^20.7.1-alpha.32+616e77445e",
42
+ "@uniformdev/richtext": "^20.7.1-alpha.32+616e77445e",
43
+ "@vitest/coverage-v8": "^3.1.2",
44
+ "autoprefixer": "10.4.21",
32
45
  "hygen": "6.2.11",
33
- "postcss": "8.4.47",
46
+ "postcss": "8.5.3",
34
47
  "react": "18.3.1",
35
48
  "react-dom": "18.3.1",
36
49
  "react-select-event": "^5.5.1",
37
- "tsup": "8.3.0"
50
+ "tsup": "8.3.0",
51
+ "vitest": "^3.1.2"
38
52
  },
39
53
  "dependencies": {
40
54
  "@ariakit/react": "^0.4.15",
@@ -44,7 +58,7 @@
44
58
  "@dnd-kit/utilities": "^3.2.2",
45
59
  "@emotion/css": "11.13.5",
46
60
  "@emotion/react": "11.13.5",
47
- "@internationalized/date": "^3.5.2",
61
+ "@internationalized/date": "^3.7.0",
48
62
  "@lexical/code": "0.25.0",
49
63
  "@lexical/link": "0.25.0",
50
64
  "@lexical/list": "0.25.0",
@@ -68,8 +82,8 @@
68
82
  "zod-to-json-schema": "3.21.4"
69
83
  },
70
84
  "peerDependencies": {
71
- "react": ">=17 || 17 || 18",
72
- "react-dom": ">=17"
85
+ "react": ">=18",
86
+ "react-dom": ">=18"
73
87
  },
74
88
  "files": [
75
89
  "/dist"
@@ -77,5 +91,5 @@
77
91
  "publishConfig": {
78
92
  "access": "public"
79
93
  },
80
- "gitHead": "03c49728b3fb82b57e64265bde2f950f12ee7cb6"
94
+ "gitHead": "616e77445e7f75fca783616a70b359a2fb7bdfab"
81
95
  }