@drivenets/design-system 0.15.0 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/dist/index.cjs +1092 -381
  3. package/dist/index.d.cts +886 -1204
  4. package/dist/index.d.cts.map +1 -1
  5. package/dist/index.d.ts +886 -1204
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +1076 -377
  8. package/dist/index.js.map +1 -1
  9. package/dist/index.min.css +1 -1
  10. package/package.json +36 -34
  11. package/src/components/ds-alert-banner/ds-alert-banner.tsx +16 -6
  12. package/src/components/ds-autocomplete/ds-autocomplete.figma.ts +36 -0
  13. package/src/components/ds-autocomplete/ds-autocomplete.tsx +2 -0
  14. package/src/components/ds-avatar/ds-avatar.figma.ts +30 -0
  15. package/src/components/ds-avatar/ds-avatar.tsx +6 -1
  16. package/src/components/ds-avatar/ds-avatar.types.ts +5 -2
  17. package/src/components/ds-avatar-group/ds-avatar-group.figma.ts +27 -0
  18. package/src/components/ds-avatar-group/ds-avatar-group.tsx +6 -1
  19. package/src/components/ds-avatar-group/ds-avatar-group.types.ts +3 -1
  20. package/src/components/ds-breadcrumb/ds-breadcrumb.figma.ts +19 -0
  21. package/src/components/ds-breadcrumb/ds-breadcrumb.tsx +2 -0
  22. package/src/components/ds-button/ds-button.tsx +2 -0
  23. package/src/components/ds-button-v3/ds-button-v3.figma.ts +3 -3
  24. package/src/components/ds-button-v3/ds-button-v3.tsx +6 -0
  25. package/src/components/ds-button-v3/index.ts +2 -0
  26. package/src/components/ds-card/ds-card.tsx +7 -3
  27. package/src/components/ds-card/figma/ds-card-content.figma.ts +2 -2
  28. package/src/components/ds-card/figma/ds-card-footer.figma.ts +2 -2
  29. package/src/components/ds-card/figma/ds-card-header.figma.ts +2 -2
  30. package/src/components/ds-card/figma/ds-card.figma.ts +2 -2
  31. package/src/components/ds-catalog-layout/ds-catalog-layout.figma.ts +51 -0
  32. package/src/components/ds-catalog-layout/ds-catalog-layout.tsx +15 -6
  33. package/src/components/ds-checkbox/ds-checkbox-level-2.figma.ts +40 -0
  34. package/src/components/ds-checkbox/ds-checkbox.figma.ts +45 -0
  35. package/src/components/ds-checkbox/ds-checkbox.module.scss +1 -1
  36. package/src/components/ds-checkbox/ds-checkbox.tsx +9 -1
  37. package/src/components/ds-checkbox-group/ds-checkbox-group.figma.ts +15 -0
  38. package/src/components/ds-checkbox-group/ds-checkbox-group.tsx +2 -0
  39. package/src/components/ds-chip/ds-chip.tsx +2 -0
  40. package/src/components/ds-chip-group/ds-chip-group.tsx +2 -0
  41. package/src/components/ds-comment-bubble/components/ds-comment-thread/ds-comment-thread.tsx +1 -0
  42. package/src/components/ds-comment-bubble/components/ds-thread-item/ds-thread-item.tsx +1 -0
  43. package/src/components/ds-comment-bubble/ds-comment-bubble.tsx +1 -0
  44. package/src/components/ds-comment-card/ds-comment-card.tsx +1 -0
  45. package/src/components/ds-comment-indicator/ds-comment-indicator.tsx +1 -0
  46. package/src/components/ds-comments-drawer/components/comments-filter-modal/index.ts +0 -1
  47. package/src/components/ds-comments-drawer/ds-comments-drawer.tsx +1 -0
  48. package/src/components/ds-confirmation/ds-confirmation.tsx +13 -10
  49. package/src/components/ds-date-input/ds-date-input.tsx +2 -0
  50. package/src/components/ds-date-picker/ds-date-picker.figma.ts +2 -2
  51. package/src/components/ds-date-picker/ds-date-picker.tsx +9 -0
  52. package/src/components/ds-date-picker/ds-date-picker.types.ts +1 -1
  53. package/src/components/ds-date-range-picker/ds-date-range-picker.tsx +2 -0
  54. package/src/components/ds-dialog/ds-dialog.tsx +9 -0
  55. package/src/components/ds-dialog/ds-dialog.types.ts +1 -1
  56. package/src/components/ds-divider/ds-divider.figma.ts +19 -0
  57. package/src/components/ds-divider/ds-divider.tsx +2 -0
  58. package/src/components/ds-drawer/ds-drawer.tsx +19 -8
  59. package/src/components/ds-drawer/figma/ds-drawer-content.figma.ts +15 -0
  60. package/src/components/ds-drawer/figma/ds-drawer-footer.figma.ts +19 -0
  61. package/src/components/ds-drawer/figma/ds-drawer-header.figma.ts +16 -0
  62. package/src/components/ds-drawer/figma/ds-drawer.figma.ts +36 -0
  63. package/src/components/ds-dropdown-menu/ds-dropdown-menu.module.scss +12 -3
  64. package/src/components/ds-dropdown-menu/ds-dropdown-menu.tsx +24 -6
  65. package/src/components/ds-dropdown-menu/ds-dropdown-menu.types.ts +10 -1
  66. package/src/components/ds-dropdown-menu/figma/ds-dropdown-menu-footer.figma.ts +11 -0
  67. package/src/components/ds-dropdown-menu/figma/ds-dropdown-menu-group.figma.ts +23 -0
  68. package/src/components/ds-dropdown-menu/figma/ds-dropdown-menu-item.figma.ts +29 -0
  69. package/src/components/ds-dropdown-menu/figma/ds-dropdown-menu-separator.figma.ts +11 -0
  70. package/src/components/ds-dropdown-menu/figma/ds-dropdown-menu.figma.ts +24 -0
  71. package/src/components/ds-expandable-text-input/ds-expandable-text-input.figma.ts +24 -0
  72. package/src/components/ds-expandable-text-input/ds-expandable-text-input.tsx +1 -0
  73. package/src/components/ds-file-upload/components/file-upload-item/index.ts +0 -1
  74. package/src/components/ds-file-upload/ds-file-upload.figma.ts +29 -0
  75. package/src/components/ds-file-upload/ds-file-upload.tsx +2 -0
  76. package/src/components/ds-filter-status-icon/ds-filter-status-icon.figma.ts +22 -0
  77. package/src/components/ds-filter-status-icon/ds-filter-status-icon.tsx +1 -0
  78. package/src/components/ds-form-control/ds-form-control.figma.ts +2 -2
  79. package/src/components/ds-form-control/ds-form-control.tsx +16 -11
  80. package/src/components/ds-grid/index.ts +3 -0
  81. package/src/components/ds-icon/ds-icon.tsx +2 -0
  82. package/src/components/ds-icon/figma/ds-icon-material.figma.batch.ts +1 -1
  83. package/src/components/ds-icon/figma/ds-icon-special.figma.batch.ts +1 -1
  84. package/src/components/ds-key-value-pair/ds-key-value-pair.figma.ts +24 -0
  85. package/src/components/ds-key-value-pair/ds-key-value-pair.tsx +2 -0
  86. package/src/components/ds-loader/ds-loader.figma.ts +11 -0
  87. package/src/components/ds-loader/ds-loader.tsx +2 -0
  88. package/src/components/ds-modal/ds-modal.tsx +17 -7
  89. package/src/components/ds-modal/figma/ds-modal-content.figma.ts +2 -2
  90. package/src/components/ds-modal/figma/ds-modal-footer.figma.ts +2 -2
  91. package/src/components/ds-modal/figma/ds-modal-header.figma.ts +2 -2
  92. package/src/components/ds-modal/figma/ds-modal.figma.ts +2 -2
  93. package/src/components/ds-number-input/ds-number-input.tsx +3 -0
  94. package/src/components/ds-panel/ds-panel.figma.ts +16 -0
  95. package/src/components/ds-panel/index.ts +2 -0
  96. package/src/components/ds-password-input/ds-password-input.tsx +2 -0
  97. package/src/components/ds-popover/ds-popover.tsx +9 -0
  98. package/src/components/ds-popover/figma/ds-popover-content-item.figma.ts +18 -0
  99. package/src/components/ds-popover/figma/ds-popover-content.figma.ts +15 -0
  100. package/src/components/ds-popover/figma/ds-popover-footer.figma.ts +19 -0
  101. package/src/components/ds-popover/figma/ds-popover-header.figma.ts +16 -0
  102. package/src/components/ds-popover/figma/ds-popover.figma.ts +34 -0
  103. package/src/components/ds-progress-arc/ds-progress-arc.figma.ts +23 -0
  104. package/src/components/ds-progress-arc/ds-progress-arc.tsx +2 -0
  105. package/src/components/ds-progress-donut/ds-progress-donut.figma.ts +45 -0
  106. package/src/components/ds-progress-donut/ds-progress-donut.tsx +2 -0
  107. package/src/components/ds-progress-linear/ds-progress-linear.figma.ts +26 -0
  108. package/src/components/ds-progress-linear/ds-progress-linear.tsx +2 -0
  109. package/src/components/ds-progress-task-bar/ds-progress-task-bar.figma.ts +2 -2
  110. package/src/components/ds-progress-task-bar/ds-progress-task-bar.tsx +2 -0
  111. package/src/components/ds-radio-group/ds-radio-group.tsx +3 -0
  112. package/src/components/ds-radio-group/figma/ds-radio-group-item.figma.ts +24 -0
  113. package/src/components/ds-radio-group/figma/ds-radio-group.figma.ts +14 -0
  114. package/src/components/ds-segment-group/ds-segment-group.tsx +3 -0
  115. package/src/components/ds-segment-group/figma/ds-segment-group-item.figma.ts +25 -0
  116. package/src/components/ds-segment-group/figma/ds-segment-group.figma.ts +23 -0
  117. package/src/components/ds-select/ds-select.figma.ts +2 -2
  118. package/src/components/ds-select/ds-select.tsx +2 -0
  119. package/src/components/ds-site-node/ds-site-node.figma.ts +27 -0
  120. package/src/components/ds-site-node/ds-site-node.module.scss +59 -0
  121. package/src/components/ds-site-node/ds-site-node.tsx +73 -0
  122. package/src/components/ds-site-node/ds-site-node.types.ts +36 -0
  123. package/src/components/ds-site-node/hooks/use-is-overflowing.ts +31 -0
  124. package/src/components/ds-site-node/index.ts +3 -0
  125. package/src/components/ds-skeleton/ds-skeleton-circle.tsx +2 -0
  126. package/src/components/ds-skeleton/ds-skeleton-rect.tsx +2 -0
  127. package/src/components/ds-skeleton/ds-skeleton-text.tsx +2 -0
  128. package/src/components/ds-skeleton/ds-skeleton.ts +7 -1
  129. package/src/components/ds-smart-tabs/ds-smart-tabs.tsx +7 -2
  130. package/src/components/ds-spinner/ds-spinner.figma.ts +19 -0
  131. package/src/components/ds-spinner/ds-spinner.tsx +2 -0
  132. package/src/components/ds-split-button/ds-split-button.figma.ts +2 -2
  133. package/src/components/ds-split-button/ds-split-button.tsx +6 -0
  134. package/src/components/ds-status-badge/ds-status-badge.tsx +2 -0
  135. package/src/components/ds-status-badge-v2/ds-status-badge-v2.figma.ts +2 -2
  136. package/src/components/ds-status-badge-v2/index.ts +2 -0
  137. package/src/components/ds-stepper/components/ds-step-content.tsx +2 -0
  138. package/src/components/ds-stepper/components/ds-step-next-button.tsx +2 -0
  139. package/src/components/ds-stepper/components/ds-step.tsx +2 -0
  140. package/src/components/ds-stepper/ds-stepper.figma.ts +38 -0
  141. package/src/components/ds-stepper/ds-stepper.tsx +1 -0
  142. package/src/components/ds-system-status/ds-system-status.tsx +2 -0
  143. package/src/components/ds-table/components/ds-table-group-header-cell/index.ts +0 -1
  144. package/src/components/ds-table/components/ds-table-header/ds-table-header.module.scss +2 -2
  145. package/src/components/ds-table/components/ds-table-header/ds-table-header.tsx +2 -4
  146. package/src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-checkbox.tsx +1 -0
  147. package/src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-date.tsx +1 -0
  148. package/src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-number.tsx +1 -0
  149. package/src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-select.tsx +1 -0
  150. package/src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-text.tsx +1 -0
  151. package/src/components/ds-table/components/edit/ds-table-editable-cell/ds-table-editable-cell.tsx +1 -0
  152. package/src/components/ds-table/components/edit/ds-table-editing-cell/ds-table-editing-cell.tsx +1 -0
  153. package/src/components/ds-table/ds-table.module.scss +15 -0
  154. package/src/components/ds-table/ds-table.tsx +39 -34
  155. package/src/components/ds-table/ds-table.types.ts +6 -0
  156. package/src/components/ds-table/figma/ds-table-expandable.figma.ts +2 -2
  157. package/src/components/ds-table/figma/ds-table.figma.ts +2 -2
  158. package/src/components/ds-table/index.ts +3 -0
  159. package/src/components/ds-tabs/components/ds-tabs-content/ds-tabs-content.tsx +2 -0
  160. package/src/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.tsx +2 -0
  161. package/src/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.tsx +2 -0
  162. package/src/components/ds-tabs/ds-tabs.tsx +2 -0
  163. package/src/components/ds-tabs/figma/ds-tabs-tab-vertical.figma.ts +2 -2
  164. package/src/components/ds-tabs/figma/ds-tabs-tab.figma.ts +2 -2
  165. package/src/components/ds-tabs/figma/ds-tabs-vertical.figma.ts +2 -2
  166. package/src/components/ds-tabs/figma/ds-tabs.figma.ts +2 -2
  167. package/src/components/ds-tag/ds-tag.tsx +2 -0
  168. package/src/components/ds-tag-filter/ds-tag-filter.tsx +2 -0
  169. package/src/components/ds-text-input/ds-input-field-v02.figma.ts +87 -0
  170. package/src/components/ds-text-input/ds-text-input.figma.ts +2 -2
  171. package/src/components/ds-text-input/ds-text-input.tsx +2 -0
  172. package/src/components/ds-textarea/ds-textarea.tsx +2 -0
  173. package/src/components/ds-time-picker/ds-time-picker.figma.ts +2 -2
  174. package/src/components/ds-time-picker/ds-time-picker.tsx +2 -0
  175. package/src/components/ds-toast/ds-toast-context.tsx +1 -0
  176. package/src/components/ds-toast/ds-toast.figma.ts +34 -0
  177. package/src/components/ds-toast/ds-toast.tsx +3 -0
  178. package/src/components/ds-toggle/ds-toggle.figma.ts +39 -0
  179. package/src/components/ds-toggle/ds-toggle.tsx +2 -0
  180. package/src/components/ds-tooltip/ds-tooltip.figma.ts +16 -0
  181. package/src/components/ds-tooltip/ds-tooltip.module.scss +8 -1
  182. package/src/components/ds-tooltip/ds-tooltip.tsx +35 -15
  183. package/src/components/ds-tooltip/ds-tooltip.types.ts +40 -0
  184. package/src/components/ds-tree/ds-tree.module.scss +2 -2
  185. package/src/components/ds-tree/ds-tree.tsx +22 -0
  186. package/src/components/ds-tree/ds-tree.types.ts +16 -0
  187. package/src/components/ds-typography/ds-typography.config.ts +1 -1
  188. package/src/components/ds-typography/ds-typography.figma.ts +63 -0
  189. package/src/components/ds-typography/ds-typography.module.scss +16 -0
  190. package/src/components/ds-typography/ds-typography.tsx +64 -7
  191. package/src/components/ds-typography/ds-typography.types.ts +13 -0
  192. package/src/components/ds-typography/hooks/use-truncation.ts +151 -0
  193. package/src/components/ds-user-card/ds-user-card.figma.ts +16 -0
  194. package/src/components/ds-user-card/ds-user-card.module.scss +25 -0
  195. package/src/components/ds-user-card/ds-user-card.tsx +31 -0
  196. package/src/components/ds-user-card/ds-user-card.types.ts +26 -0
  197. package/src/components/ds-user-card/index.ts +2 -0
  198. package/src/components/ds-vertical-tabs/ds-vertical-tabs.tsx +17 -4
  199. package/src/components/ds-workspace-layout/ds-workspace-layout.tsx +19 -8
  200. package/src/index.ts +2 -0
  201. package/src/styles/_root.scss +468 -363
  202. package/src/styles/shared/_dropdown.scss +2 -2
  203. package/src/styles/styles.scss +0 -3
  204. package/src/styles/_colors.scss +0 -65
  205. package/src/styles/_root_new.scss +0 -451
  206. package/src/styles/_spacing.scss +0 -47
package/dist/index.js CHANGED
@@ -4,12 +4,12 @@ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
4
4
  import * as React$1 from "react";
5
5
  import React, { Children, Fragment as Fragment$1, createContext, createElement, isValidElement, useCallback, useContext, useEffect, useId, useImperativeHandle, useLayoutEffect, useMemo, useRef, useState, useSyncExternalStore } from "react";
6
6
  import { FileUpload as FileUpload$1, NumberInput, PasswordInput, Progress, Toast, Toaster, ark, createToaster } from "@ark-ui/react";
7
+ import { Tooltip } from "@ark-ui/react/tooltip";
8
+ import { Portal } from "@ark-ui/react/portal";
7
9
  import { Combobox, createListCollection } from "@ark-ui/react/combobox";
8
10
  import { useFilter } from "@ark-ui/react/locale";
9
11
  import { Highlight } from "@ark-ui/react/highlight";
10
- import { Portal } from "@ark-ui/react/portal";
11
12
  import { Avatar } from "@ark-ui/react/avatar";
12
- import * as Tooltip from "@radix-ui/react-tooltip";
13
13
  import { Link, useLocation } from "@tanstack/react-router";
14
14
  import * as DropdownMenu from "@radix-ui/react-dropdown-menu";
15
15
  import { Menu } from "@ark-ui/react/menu";
@@ -28,7 +28,7 @@ import { RadioGroup } from "@ark-ui/react/radio-group";
28
28
  import { SegmentGroup } from "@ark-ui/react/segment-group";
29
29
  import * as steps from "@zag-js/steps";
30
30
  import { normalizeProps, useMachine } from "@zag-js/react";
31
- import { defaultColumnSizing, flexRender, getCoreRowModel, getExpandedRowModel, getFilteredRowModel, getSortedRowModel, useReactTable } from "@tanstack/react-table";
31
+ import { createColumnHelper, defaultColumnSizing, flexRender, getCoreRowModel, getExpandedRowModel, getFilteredRowModel, getSortedRowModel, useReactTable } from "@tanstack/react-table";
32
32
  import { SortableContext, arrayMove, useSortable, verticalListSortingStrategy } from "@dnd-kit/sortable";
33
33
  import { CSS } from "@dnd-kit/utilities";
34
34
  import { DndContext, KeyboardSensor, MouseSensor, TouchSensor, closestCenter, useSensor, useSensors } from "@dnd-kit/core";
@@ -2858,6 +2858,7 @@ const DsIcon = (t0) => {
2858
2858
  } else t8 = $[29];
2859
2859
  return t8;
2860
2860
  };
2861
+ DsIcon.displayName = "DsIcon";
2861
2862
  //#endregion
2862
2863
  //#region src/components/ds-typography/ds-typography.config.ts
2863
2864
  const typographyVariantConfig = {
@@ -2954,7 +2955,7 @@ const typographyVariantConfig = {
2954
2955
  component: ark.h4
2955
2956
  }
2956
2957
  };
2957
- /** Semantic text colors backed by `--font-*` tokens in `_root_new.scss`. */
2958
+ /** Semantic text colors backed by `--font-*` tokens in `_root.scss`. */
2958
2959
  const typographyColors = [
2959
2960
  "main",
2960
2961
  "secondary",
@@ -2974,6 +2975,228 @@ const typographyColors = [
2974
2975
  "code"
2975
2976
  ];
2976
2977
  //#endregion
2978
+ //#region src/components/ds-typography/hooks/use-truncation.ts
2979
+ const OVERFLOW_TOLERANCE_PX = 1;
2980
+ const FALLBACK_LINE_HEIGHT_RATIO = 1.2;
2981
+ const DEFAULT_FONT_SIZE_PX = 16;
2982
+ const ELLIPSIS = "…";
2983
+ const ellipsisWidthCache = /* @__PURE__ */ new Map();
2984
+ let ellipsisMeasureSpan = null;
2985
+ const measureEllipsisWidth = (computed) => {
2986
+ const cacheKey = `${computed.fontStyle}|${computed.fontWeight}|${computed.fontSize}|${computed.fontFamily}|${computed.letterSpacing}`;
2987
+ const cached = ellipsisWidthCache.get(cacheKey);
2988
+ if (cached !== void 0) return cached;
2989
+ ellipsisMeasureSpan ??= document.createElement("span");
2990
+ const span = ellipsisMeasureSpan;
2991
+ span.textContent = ELLIPSIS;
2992
+ span.style.position = "absolute";
2993
+ span.style.visibility = "hidden";
2994
+ span.style.whiteSpace = "pre";
2995
+ span.style.fontStyle = computed.fontStyle;
2996
+ span.style.fontWeight = computed.fontWeight;
2997
+ span.style.fontSize = computed.fontSize;
2998
+ span.style.fontFamily = computed.fontFamily;
2999
+ span.style.letterSpacing = computed.letterSpacing;
3000
+ document.body.appendChild(span);
3001
+ const width = span.getBoundingClientRect().width;
3002
+ span.remove();
3003
+ ellipsisWidthCache.set(cacheKey, width);
3004
+ return width;
3005
+ };
3006
+ let measureRange = null;
3007
+ const measureFittingPrefixRight = (textNode, maxRight) => {
3008
+ measureRange ??= document.createRange();
3009
+ const range = measureRange;
3010
+ let low = 0;
3011
+ let high = textNode.length;
3012
+ let fittingLength = 0;
3013
+ while (low <= high) {
3014
+ const mid = low + high >>> 1;
3015
+ range.setStart(textNode, 0);
3016
+ range.setEnd(textNode, mid);
3017
+ if (range.getBoundingClientRect().right <= maxRight) {
3018
+ fittingLength = mid;
3019
+ low = mid + 1;
3020
+ } else high = mid - 1;
3021
+ }
3022
+ range.setStart(textNode, 0);
3023
+ range.setEnd(textNode, fittingLength);
3024
+ return range.getBoundingClientRect().right;
3025
+ };
3026
+ const getFirstTextNode = (element) => element.firstChild instanceof Text ? element.firstChild : null;
3027
+ const useTruncation = (ref, enabled, deps = []) => {
3028
+ const [isTruncated, setIsTruncated] = useState(false);
3029
+ useLayoutEffect(() => {
3030
+ const element = ref.current;
3031
+ if (!enabled || !element) {
3032
+ setIsTruncated(false);
3033
+ return;
3034
+ }
3035
+ const measure = () => {
3036
+ const overflowsHorizontally = element.scrollWidth - element.clientWidth > OVERFLOW_TOLERANCE_PX;
3037
+ const overflowsVertically = element.scrollHeight - element.clientHeight > OVERFLOW_TOLERANCE_PX;
3038
+ setIsTruncated(overflowsHorizontally || overflowsVertically);
3039
+ };
3040
+ const rafId = requestAnimationFrame(measure);
3041
+ const resizeObserver = new ResizeObserver(() => requestAnimationFrame(measure));
3042
+ resizeObserver.observe(element);
3043
+ return () => {
3044
+ cancelAnimationFrame(rafId);
3045
+ resizeObserver.disconnect();
3046
+ };
3047
+ }, [
3048
+ ref,
3049
+ enabled,
3050
+ ...deps
3051
+ ]);
3052
+ return {
3053
+ isTruncated,
3054
+ getAnchorRect: useCallback(() => {
3055
+ const element = ref.current;
3056
+ if (!element) return null;
3057
+ const rect = element.getBoundingClientRect();
3058
+ const computed = getComputedStyle(element);
3059
+ const paddingRight = parseFloat(computed.paddingRight) || 0;
3060
+ const borderRight = parseFloat(computed.borderRightWidth) || 0;
3061
+ const paddingBottom = parseFloat(computed.paddingBottom) || 0;
3062
+ const borderBottom = parseFloat(computed.borderBottomWidth) || 0;
3063
+ const fontSize = parseFloat(computed.fontSize) || DEFAULT_FONT_SIZE_PX;
3064
+ const lineHeight = parseFloat(computed.lineHeight) || fontSize * FALLBACK_LINE_HEIGHT_RATIO;
3065
+ const contentRight = rect.right - paddingRight - borderRight;
3066
+ const ellipsisWidth = measureEllipsisWidth(computed);
3067
+ const textNode = getFirstTextNode(element);
3068
+ return {
3069
+ x: computed.whiteSpace === "nowrap" && textNode ? measureFittingPrefixRight(textNode, contentRight - ellipsisWidth) + ellipsisWidth / 2 : contentRight - ellipsisWidth / 2,
3070
+ y: rect.bottom - paddingBottom - borderBottom - lineHeight,
3071
+ width: 0,
3072
+ height: lineHeight
3073
+ };
3074
+ }, [ref])
3075
+ };
3076
+ };
3077
+ //#endregion
3078
+ //#region src/utils/merge-refs.ts
3079
+ const mergeRefs = (...refs) => {
3080
+ return (value) => {
3081
+ refs.filter((r) => !!r).forEach((ref) => {
3082
+ if (typeof ref === "function") ref(value);
3083
+ else ref.current = value;
3084
+ });
3085
+ };
3086
+ };
3087
+ //#endregion
3088
+ //#region src/components/ds-tooltip/ds-tooltip.module.scss
3089
+ var ds_tooltip_module_default = {
3090
+ "arrow": "rUPoLa_arrow",
3091
+ "text": "rUPoLa_text",
3092
+ "tooltip": "rUPoLa_tooltip"
3093
+ };
3094
+ //#endregion
3095
+ //#region src/components/ds-tooltip/ds-tooltip.tsx
3096
+ const OPEN_DELAY_MS = 200;
3097
+ const CLOSE_DELAY_MS = 0;
3098
+ const TOOLTIP_GUTTER_PX = 0;
3099
+ const DsTooltip = (t0) => {
3100
+ const $ = c(19);
3101
+ const { content, children, placement: t1, disabled: t2, getAnchorRect, slotProps } = t0;
3102
+ const placement = t1 === void 0 ? "top" : t1;
3103
+ const disabled = t2 === void 0 ? false : t2;
3104
+ if (content === void 0) return children;
3105
+ const t3 = getAnchorRect ?? void 0;
3106
+ let t4;
3107
+ if ($[0] !== placement || $[1] !== t3) {
3108
+ t4 = {
3109
+ placement,
3110
+ gutter: TOOLTIP_GUTTER_PX,
3111
+ getAnchorRect: t3
3112
+ };
3113
+ $[0] = placement;
3114
+ $[1] = t3;
3115
+ $[2] = t4;
3116
+ } else t4 = $[2];
3117
+ let t5;
3118
+ if ($[3] !== children) {
3119
+ t5 = /* @__PURE__ */ jsx(Tooltip.Trigger, {
3120
+ asChild: true,
3121
+ children
3122
+ });
3123
+ $[3] = children;
3124
+ $[4] = t5;
3125
+ } else t5 = $[4];
3126
+ const t6 = slotProps?.content?.className;
3127
+ let t7;
3128
+ if ($[5] !== t6) {
3129
+ t7 = classNames(ds_tooltip_module_default.tooltip, t6);
3130
+ $[5] = t6;
3131
+ $[6] = t7;
3132
+ } else t7 = $[6];
3133
+ const t8 = slotProps?.content?.style;
3134
+ let t9;
3135
+ if ($[7] !== content) {
3136
+ t9 = isValidElement(content) ? content : /* @__PURE__ */ jsx("span", {
3137
+ className: ds_tooltip_module_default.text,
3138
+ children: content
3139
+ });
3140
+ $[7] = content;
3141
+ $[8] = t9;
3142
+ } else t9 = $[8];
3143
+ let t10;
3144
+ if ($[9] === Symbol.for("react.memo_cache_sentinel")) {
3145
+ t10 = /* @__PURE__ */ jsx(Tooltip.Arrow, {
3146
+ className: ds_tooltip_module_default.arrow,
3147
+ children: /* @__PURE__ */ jsx(Tooltip.ArrowTip, {})
3148
+ });
3149
+ $[9] = t10;
3150
+ } else t10 = $[9];
3151
+ let t11;
3152
+ if ($[10] !== t7 || $[11] !== t8 || $[12] !== t9) {
3153
+ t11 = /* @__PURE__ */ jsx(Portal, { children: /* @__PURE__ */ jsx(Tooltip.Positioner, { children: /* @__PURE__ */ jsxs(Tooltip.Content, {
3154
+ className: t7,
3155
+ style: t8,
3156
+ children: [t9, t10]
3157
+ }) }) });
3158
+ $[10] = t7;
3159
+ $[11] = t8;
3160
+ $[12] = t9;
3161
+ $[13] = t11;
3162
+ } else t11 = $[13];
3163
+ let t12;
3164
+ if ($[14] !== disabled || $[15] !== t11 || $[16] !== t4 || $[17] !== t5) {
3165
+ t12 = /* @__PURE__ */ jsxs(Tooltip.Root, {
3166
+ openDelay: OPEN_DELAY_MS,
3167
+ closeDelay: CLOSE_DELAY_MS,
3168
+ disabled,
3169
+ positioning: t4,
3170
+ lazyMount: true,
3171
+ unmountOnExit: true,
3172
+ children: [t5, t11]
3173
+ });
3174
+ $[14] = disabled;
3175
+ $[15] = t11;
3176
+ $[16] = t4;
3177
+ $[17] = t5;
3178
+ $[18] = t12;
3179
+ } else t12 = $[18];
3180
+ return t12;
3181
+ };
3182
+ DsTooltip.displayName = "DsTooltip";
3183
+ //#endregion
3184
+ //#region src/components/ds-tooltip/ds-tooltip.types.ts
3185
+ const tooltipPlacements = [
3186
+ "top",
3187
+ "top-start",
3188
+ "top-end",
3189
+ "bottom",
3190
+ "bottom-start",
3191
+ "bottom-end",
3192
+ "left",
3193
+ "left-start",
3194
+ "left-end",
3195
+ "right",
3196
+ "right-start",
3197
+ "right-end"
3198
+ ];
3199
+ //#endregion
2977
3200
  //#region src/components/ds-typography/ds-typography.module.scss
2978
3201
  var ds_typography_module_default = {
2979
3202
  "body-md-bold": "X6xyRq_body-md-bold",
@@ -2998,14 +3221,17 @@ var ds_typography_module_default = {
2998
3221
  "heading1": "X6xyRq_heading1",
2999
3222
  "heading2": "X6xyRq_heading2",
3000
3223
  "heading3": "X6xyRq_heading3",
3001
- "heading4": "X6xyRq_heading4"
3224
+ "heading4": "X6xyRq_heading4",
3225
+ "truncateMultiline": "X6xyRq_truncateMultiline",
3226
+ "truncateSingle": "X6xyRq_truncateSingle"
3002
3227
  };
3003
3228
  //#endregion
3004
3229
  //#region src/components/ds-typography/ds-typography.tsx
3005
3230
  const semanticColorSet = new Set(typographyColors);
3006
3231
  const resolveColor = (color) => semanticColorSet.has(color) ? `var(--font-${color})` : color;
3232
+ const resolveLineClamp = (truncate) => typeof truncate === "number" ? Math.max(1, Math.floor(truncate)) : 1;
3007
3233
  const DsTypography = (t0) => {
3008
- const $ = c(23);
3234
+ const $ = c(34);
3009
3235
  let children;
3010
3236
  let className;
3011
3237
  let color;
@@ -3013,9 +3239,12 @@ const DsTypography = (t0) => {
3013
3239
  let ref;
3014
3240
  let style;
3015
3241
  let t1;
3242
+ let t2;
3243
+ let t3;
3244
+ let tooltipContent;
3016
3245
  let variant;
3017
3246
  if ($[0] !== t0) {
3018
- ({ref, variant, asChild: t1, className, style, color, children, ...props} = t0);
3247
+ ({ref, variant, asChild: t1, className, style, color, truncate: t2, tooltip: t3, tooltipContent, children, ...props} = t0);
3019
3248
  $[0] = t0;
3020
3249
  $[1] = children;
3021
3250
  $[2] = className;
@@ -3024,7 +3253,10 @@ const DsTypography = (t0) => {
3024
3253
  $[5] = ref;
3025
3254
  $[6] = style;
3026
3255
  $[7] = t1;
3027
- $[8] = variant;
3256
+ $[8] = t2;
3257
+ $[9] = t3;
3258
+ $[10] = tooltipContent;
3259
+ $[11] = variant;
3028
3260
  } else {
3029
3261
  children = $[1];
3030
3262
  className = $[2];
@@ -3033,56 +3265,102 @@ const DsTypography = (t0) => {
3033
3265
  ref = $[5];
3034
3266
  style = $[6];
3035
3267
  t1 = $[7];
3036
- variant = $[8];
3268
+ t2 = $[8];
3269
+ t3 = $[9];
3270
+ tooltipContent = $[10];
3271
+ variant = $[11];
3037
3272
  }
3038
3273
  const asChild = t1 === void 0 ? false : t1;
3274
+ const truncate = t2 === void 0 ? false : t2;
3275
+ const tooltip = t3 === void 0 ? false : t3;
3039
3276
  const Component = typographyVariantConfig[variant].component;
3040
- const t2 = ds_typography_module_default[variant];
3041
- let t3;
3042
- if ($[9] !== className || $[10] !== t2) {
3043
- t3 = classNames(t2, className);
3044
- $[9] = className;
3045
- $[10] = t2;
3046
- $[11] = t3;
3047
- } else t3 = $[11];
3277
+ const internalRef = useRef(null);
3278
+ const truncationEnabled = truncate !== false;
3279
+ const lineClamp = resolveLineClamp(truncate);
3280
+ const isMultiline = truncationEnabled && lineClamp > 1;
3281
+ const tooltipEnabled = truncationEnabled && tooltip;
3048
3282
  let t4;
3049
- if ($[12] !== color || $[13] !== style) {
3050
- t4 = color ? {
3051
- color: resolveColor(color),
3052
- ...style
3053
- } : style;
3054
- $[12] = color;
3055
- $[13] = style;
3283
+ if ($[12] !== children || $[13] !== truncate) {
3284
+ t4 = [children, truncate];
3285
+ $[12] = children;
3286
+ $[13] = truncate;
3056
3287
  $[14] = t4;
3057
3288
  } else t4 = $[14];
3289
+ const { isTruncated, getAnchorRect } = useTruncation(internalRef, tooltipEnabled, t4);
3290
+ let resolvedStyle;
3291
+ if (color || isMultiline || style) {
3292
+ resolvedStyle = {};
3293
+ if (color) resolvedStyle.color = resolveColor(color);
3294
+ if (isMultiline) Object.assign(resolvedStyle, { "--ds-typography-line-clamp": lineClamp });
3295
+ if (style) Object.assign(resolvedStyle, style);
3296
+ }
3297
+ const truncateClass = truncationEnabled ? isMultiline ? ds_typography_module_default.truncateMultiline : ds_typography_module_default.truncateSingle : void 0;
3058
3298
  let t5;
3059
- if ($[15] !== Component || $[16] !== asChild || $[17] !== children || $[18] !== props || $[19] !== ref || $[20] !== t3 || $[21] !== t4) {
3060
- t5 = /* @__PURE__ */ jsx(Component, {
3061
- ref,
3299
+ if ($[15] !== ref) {
3300
+ t5 = mergeRefs(ref, internalRef);
3301
+ $[15] = ref;
3302
+ $[16] = t5;
3303
+ } else t5 = $[16];
3304
+ const t6 = ds_typography_module_default[variant];
3305
+ let t7;
3306
+ if ($[17] !== className || $[18] !== t6 || $[19] !== truncateClass) {
3307
+ t7 = classNames(t6, truncateClass, className);
3308
+ $[17] = className;
3309
+ $[18] = t6;
3310
+ $[19] = truncateClass;
3311
+ $[20] = t7;
3312
+ } else t7 = $[20];
3313
+ let t8;
3314
+ if ($[21] !== Component || $[22] !== asChild || $[23] !== children || $[24] !== props || $[25] !== resolvedStyle || $[26] !== t5 || $[27] !== t7) {
3315
+ t8 = /* @__PURE__ */ jsx(Component, {
3316
+ ref: t5,
3062
3317
  asChild,
3063
- className: t3,
3064
- style: t4,
3318
+ className: t7,
3319
+ style: resolvedStyle,
3065
3320
  ...props,
3066
3321
  children
3067
3322
  });
3068
- $[15] = Component;
3069
- $[16] = asChild;
3070
- $[17] = children;
3071
- $[18] = props;
3072
- $[19] = ref;
3073
- $[20] = t3;
3074
- $[21] = t4;
3075
- $[22] = t5;
3076
- } else t5 = $[22];
3077
- return t5;
3323
+ $[21] = Component;
3324
+ $[22] = asChild;
3325
+ $[23] = children;
3326
+ $[24] = props;
3327
+ $[25] = resolvedStyle;
3328
+ $[26] = t5;
3329
+ $[27] = t7;
3330
+ $[28] = t8;
3331
+ } else t8 = $[28];
3332
+ const element = t8;
3333
+ if (!tooltipEnabled) return element;
3334
+ const t9 = tooltipContent ?? children;
3335
+ const t10 = !isTruncated;
3336
+ let t11;
3337
+ if ($[29] !== element || $[30] !== getAnchorRect || $[31] !== t10 || $[32] !== t9) {
3338
+ t11 = /* @__PURE__ */ jsx(DsTooltip, {
3339
+ content: t9,
3340
+ placement: "top",
3341
+ disabled: t10,
3342
+ getAnchorRect,
3343
+ children: element
3344
+ });
3345
+ $[29] = element;
3346
+ $[30] = getAnchorRect;
3347
+ $[31] = t10;
3348
+ $[32] = t9;
3349
+ $[33] = t11;
3350
+ } else t11 = $[33];
3351
+ return t11;
3078
3352
  };
3353
+ DsTypography.displayName = "DsTypography";
3079
3354
  //#endregion
3080
3355
  //#region src/components/ds-alert-banner/ds-alert-banner.tsx
3081
3356
  /**
3082
- * Design system AlertBanner component
3083
- * Controlled component that displays alert messages with different variants
3357
+ * @summary Controlled banner for surfacing contextual status messages.
3358
+ *
3359
+ * Renders as an inline bordered card or a full-width global bar, with five
3360
+ * severity variants, an optional icon, and an optional close button. Compose the
3361
+ * content with `DsAlertBanner.Title`, `DsAlertBanner.Body`, and `DsAlertBanner.Actions`.
3084
3362
  */
3085
- const DsAlertBanner = (t0) => {
3363
+ const DsAlertBannerRoot = (t0) => {
3086
3364
  const $ = c(20);
3087
3365
  const { open, onOpenChange, inline: t1, variant: t2, icon, closable: t3, className, style: t4, children } = t0;
3088
3366
  const inline = t1 === void 0 ? false : t1;
@@ -3241,9 +3519,15 @@ const Actions$3 = (t0) => {
3241
3519
  } else t2 = $[5];
3242
3520
  return t2;
3243
3521
  };
3244
- DsAlertBanner.Title = Title$2;
3245
- DsAlertBanner.Body = Body$5;
3246
- DsAlertBanner.Actions = Actions$3;
3522
+ Title$2.displayName = "DsAlertBanner.Title";
3523
+ Body$5.displayName = "DsAlertBanner.Body";
3524
+ Actions$3.displayName = "DsAlertBanner.Actions";
3525
+ const DsAlertBanner = Object.assign(DsAlertBannerRoot, {
3526
+ displayName: "DsAlertBanner",
3527
+ Title: Title$2,
3528
+ Body: Body$5,
3529
+ Actions: Actions$3
3530
+ });
3247
3531
  //#endregion
3248
3532
  //#region src/components/ds-alert-banner/ds-alert-banner.types.ts
3249
3533
  const alertBannerVariants = [
@@ -3308,7 +3592,7 @@ const DsAutocomplete = (t0) => {
3308
3592
  const filterUtils = useFilter(t12);
3309
3593
  const collection = createListCollection({
3310
3594
  items: filterText ? options.filter((opt) => filterUtils.contains(opt.label, filterText)) : options,
3311
- itemToString: _temp$16,
3595
+ itemToString: _temp$17,
3312
3596
  itemToValue: _temp2$9
3313
3597
  });
3314
3598
  let t13;
@@ -3520,7 +3804,8 @@ const DsAutocomplete = (t0) => {
3520
3804
  } else t33 = $[52];
3521
3805
  return t33;
3522
3806
  };
3523
- function _temp$16(item) {
3807
+ DsAutocomplete.displayName = "DsAutocomplete";
3808
+ function _temp$17(item) {
3524
3809
  return item.label;
3525
3810
  }
3526
3811
  function _temp2$9(item_0) {
@@ -3541,79 +3826,13 @@ var ds_avatar_module_default = {
3541
3826
  "xsm": "VcKEMW_xsm"
3542
3827
  };
3543
3828
  //#endregion
3544
- //#region src/components/ds-tooltip/ds-tooltip.module.scss
3545
- var ds_tooltip_module_default = {
3546
- "arrow": "rUPoLa_arrow",
3547
- "tooltip": "rUPoLa_tooltip"
3548
- };
3549
- //#endregion
3550
- //#region src/components/ds-tooltip/ds-tooltip.tsx
3551
- const DsTooltip = (t0) => {
3552
- const $ = c(14);
3553
- const { content, children, slotProps } = t0;
3554
- if (content === void 0) return children;
3555
- let t1;
3556
- if ($[0] !== children) {
3557
- t1 = /* @__PURE__ */ jsx(Tooltip.Trigger, {
3558
- asChild: true,
3559
- children
3560
- });
3561
- $[0] = children;
3562
- $[1] = t1;
3563
- } else t1 = $[1];
3564
- const t2 = slotProps?.content?.className;
3565
- let t3;
3566
- if ($[2] !== t2) {
3567
- t3 = classNames(ds_tooltip_module_default.tooltip, t2);
3568
- $[2] = t2;
3569
- $[3] = t3;
3570
- } else t3 = $[3];
3571
- const t4 = slotProps?.content?.style;
3572
- let t5;
3573
- if ($[4] !== content) {
3574
- t5 = isValidElement(content) ? content : /* @__PURE__ */ jsx(DsTypography, {
3575
- variant: "body-xs-reg",
3576
- children: content
3577
- });
3578
- $[4] = content;
3579
- $[5] = t5;
3580
- } else t5 = $[5];
3581
- let t6;
3582
- if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
3583
- t6 = /* @__PURE__ */ jsx(Tooltip.Arrow, { className: ds_tooltip_module_default.arrow });
3584
- $[6] = t6;
3585
- } else t6 = $[6];
3586
- let t7;
3587
- if ($[7] !== t3 || $[8] !== t4 || $[9] !== t5) {
3588
- t7 = /* @__PURE__ */ jsx(Tooltip.Portal, { children: /* @__PURE__ */ jsxs(Tooltip.Content, {
3589
- className: t3,
3590
- style: t4,
3591
- side: "top",
3592
- align: "center",
3593
- sideOffset: 4,
3594
- children: [t5, t6]
3595
- }) });
3596
- $[7] = t3;
3597
- $[8] = t4;
3598
- $[9] = t5;
3599
- $[10] = t7;
3600
- } else t7 = $[10];
3601
- let t8;
3602
- if ($[11] !== t1 || $[12] !== t7) {
3603
- t8 = /* @__PURE__ */ jsx(Tooltip.Provider, {
3604
- delayDuration: 200,
3605
- children: /* @__PURE__ */ jsxs(Tooltip.Root, { children: [t1, t7] })
3606
- });
3607
- $[11] = t1;
3608
- $[12] = t7;
3609
- $[13] = t8;
3610
- } else t8 = $[13];
3611
- return t8;
3612
- };
3613
- //#endregion
3614
3829
  //#region src/components/ds-avatar/ds-avatar.tsx
3615
3830
  /**
3616
- * DsAvatar component for displaying user profile pictures or initials
3831
+ * @summary Displays a user's profile picture, falling back to initials.
3832
+ *
3833
+ * Renders a circular or rounded avatar from an image `src`. When the image is
3834
+ * missing or fails to load, the trimmed initials derived from `name` are shown
3835
+ * instead, and `name` is surfaced in a tooltip on hover.
3617
3836
  */
3618
3837
  const DsAvatar = (t0) => {
3619
3838
  const $ = c(23);
@@ -3690,13 +3909,25 @@ const DsAvatar = (t0) => {
3690
3909
  } else t11 = $[22];
3691
3910
  return t11;
3692
3911
  };
3693
- function _temp$15(w) {
3912
+ DsAvatar.displayName = "DsAvatar";
3913
+ function _temp$16(w) {
3694
3914
  return w[0];
3695
3915
  }
3696
3916
  function _temp2$8(name_0) {
3697
- return name_0.trim().split(" ").map(_temp$15).join("");
3917
+ return name_0.trim().split(" ").map(_temp$16).join("");
3698
3918
  }
3699
3919
  //#endregion
3920
+ //#region src/components/ds-avatar/ds-avatar.types.ts
3921
+ const dsAvatarSizes = [
3922
+ "xsm",
3923
+ "sm",
3924
+ "regular",
3925
+ "md",
3926
+ "lg",
3927
+ "xl"
3928
+ ];
3929
+ const dsAvatarTypes = ["circle", "rounded"];
3930
+ //#endregion
3700
3931
  //#region src/components/ds-avatar-group/ds-avatar-group.module.scss
3701
3932
  var ds_avatar_group_module_default = {
3702
3933
  "avatarGroup": "DPz7HW_avatarGroup",
@@ -3715,7 +3946,11 @@ var ds_avatar_group_module_default = {
3715
3946
  //#endregion
3716
3947
  //#region src/components/ds-avatar-group/ds-avatar-group.tsx
3717
3948
  /**
3718
- * DsAvatarGroup component for displaying a list of avatars with overlap
3949
+ * @summary Overlapping avatars with overflow collapse and tooltip.
3950
+ *
3951
+ * Renders a row of {@link DsAvatar} members that share `size` and `type`. When
3952
+ * `avatars.length` exceeds `max`, the remainder collapse behind a `+N`
3953
+ * indicator; hovering it lists the hidden names in a tooltip.
3719
3954
  */
3720
3955
  const DsAvatarGroup = (t0) => {
3721
3956
  const $ = c(17);
@@ -3751,7 +3986,7 @@ const DsAvatarGroup = (t0) => {
3751
3986
  t6 = remainingCount > 0 && /* @__PURE__ */ jsx(DsTooltip, {
3752
3987
  content: /* @__PURE__ */ jsx("div", {
3753
3988
  className: ds_avatar_group_module_default.tooltipList,
3754
- children: hiddenAvatars.map(_temp$14)
3989
+ children: hiddenAvatars.map(_temp$15)
3755
3990
  }),
3756
3991
  children: /* @__PURE__ */ jsxs("div", {
3757
3992
  className: classNames(ds_avatar_group_module_default.moreAvatar, ds_avatar_group_module_default[size], ds_avatar_group_module_default[type]),
@@ -3784,7 +4019,8 @@ const DsAvatarGroup = (t0) => {
3784
4019
  } else t7 = $[16];
3785
4020
  return t7;
3786
4021
  };
3787
- function _temp$14(avatar_0, index_0) {
4022
+ DsAvatarGroup.displayName = "DsAvatarGroup";
4023
+ function _temp$15(avatar_0, index_0) {
3788
4024
  return /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(DsTypography, {
3789
4025
  variant: "body-xs-reg",
3790
4026
  children: avatar_0.name
@@ -3807,6 +4043,8 @@ var ds_breadcrumb_module_default = {
3807
4043
  //#region src/components/ds-dropdown-menu/ds-dropdown-menu.module.scss
3808
4044
  var ds_dropdown_menu_module_default = {
3809
4045
  "actions": "AkHUyG_actions",
4046
+ "actionsRow": "AkHUyG_actionsRow",
4047
+ "actionsStretch": "AkHUyG_actionsStretch",
3810
4048
  "collapse": "AkHUyG_collapse",
3811
4049
  "content": "AkHUyG_content",
3812
4050
  "contentLegacy": "AkHUyG_contentLegacy",
@@ -3976,6 +4214,7 @@ const DsTextInput = (t0) => {
3976
4214
  } else t16 = $[41];
3977
4215
  return t16;
3978
4216
  };
4217
+ DsTextInput.displayName = "DsTextInput";
3979
4218
  //#endregion
3980
4219
  //#region src/components/ds-text-input/ds-text-input.types.ts
3981
4220
  const textInputSizes = ["small", "default"];
@@ -4180,32 +4419,33 @@ const Header$5 = (t0) => {
4180
4419
  return t2;
4181
4420
  };
4182
4421
  /**
4183
- * Actions component - footer container for action buttons
4422
+ * Actions component - sticky bottom slot for action buttons (`align="end"`) or
4423
+ * full-width elements like a logout item (`align="stretch"`).
4184
4424
  */
4185
4425
  const Actions$2 = (t0) => {
4186
- const $ = c(6);
4187
- const { children, className, style } = t0;
4188
- let t1;
4189
- if ($[0] !== className) {
4190
- t1 = classNames(ds_dropdown_menu_module_default.actions, className);
4426
+ const $ = c(7);
4427
+ const { children, align: t1, className, style } = t0;
4428
+ const t2 = (t1 === void 0 ? "end" : t1) === "stretch" ? ds_dropdown_menu_module_default.actionsStretch : ds_dropdown_menu_module_default.actionsRow;
4429
+ let t3;
4430
+ if ($[0] !== className || $[1] !== t2) {
4431
+ t3 = classNames(ds_dropdown_menu_module_default.actions, t2, className);
4191
4432
  $[0] = className;
4192
- $[1] = t1;
4193
- } else t1 = $[1];
4194
- let t2;
4195
- if ($[2] !== children || $[3] !== style || $[4] !== t1) {
4196
- t2 = /* @__PURE__ */ jsx("div", {
4197
- className: t1,
4433
+ $[1] = t2;
4434
+ $[2] = t3;
4435
+ } else t3 = $[2];
4436
+ let t4;
4437
+ if ($[3] !== children || $[4] !== style || $[5] !== t3) {
4438
+ t4 = /* @__PURE__ */ jsx("div", {
4439
+ className: t3,
4198
4440
  style,
4199
- role: "menu",
4200
- "aria-label": "Menu actions",
4201
4441
  children
4202
4442
  });
4203
- $[2] = children;
4204
- $[3] = style;
4205
- $[4] = t1;
4206
- $[5] = t2;
4207
- } else t2 = $[5];
4208
- return t2;
4443
+ $[3] = children;
4444
+ $[4] = style;
4445
+ $[5] = t3;
4446
+ $[6] = t4;
4447
+ } else t4 = $[6];
4448
+ return t4;
4209
4449
  };
4210
4450
  /**
4211
4451
  * ItemGroup component - collapsible group container
@@ -4341,7 +4581,7 @@ const ItemGroupLabel = (t0) => {
4341
4581
  className: t1,
4342
4582
  style,
4343
4583
  onClick: toggle,
4344
- onKeyDown: _temp$13,
4584
+ onKeyDown: _temp$14,
4345
4585
  children: [t2, t5]
4346
4586
  })
4347
4587
  });
@@ -4643,7 +4883,20 @@ const DsDropdownMenu = {
4643
4883
  ItemGroupContent,
4644
4884
  Separator
4645
4885
  };
4646
- function _temp$13(e) {
4886
+ DsDropdownMenu.Root.displayName = "DsDropdownMenu.Root";
4887
+ DsDropdownMenu.Trigger.displayName = "DsDropdownMenu.Trigger";
4888
+ DsDropdownMenu.Content.displayName = "DsDropdownMenu.Content";
4889
+ DsDropdownMenu.Item.displayName = "DsDropdownMenu.Item";
4890
+ DsDropdownMenu.ItemIndicator.displayName = "DsDropdownMenu.ItemIndicator";
4891
+ DsDropdownMenu.TriggerItem.displayName = "DsDropdownMenu.TriggerItem";
4892
+ DsDropdownMenu.Header.displayName = "DsDropdownMenu.Header";
4893
+ DsDropdownMenu.Actions.displayName = "DsDropdownMenu.Actions";
4894
+ DsDropdownMenu.ItemGroup.displayName = "DsDropdownMenu.ItemGroup";
4895
+ DsDropdownMenu.ItemGroupLabel.displayName = "DsDropdownMenu.ItemGroupLabel";
4896
+ DsDropdownMenu.ItemGroupContent.displayName = "DsDropdownMenu.ItemGroupContent";
4897
+ DsDropdownMenu.Separator.displayName = "DsDropdownMenu.Separator";
4898
+ DsDropdownMenuLegacy.displayName = "DsDropdownMenuLegacy";
4899
+ function _temp$14(e) {
4647
4900
  return e.stopPropagation();
4648
4901
  }
4649
4902
  function _temp2$7(e) {
@@ -4652,6 +4905,7 @@ function _temp2$7(e) {
4652
4905
  //#endregion
4653
4906
  //#region src/components/ds-dropdown-menu/ds-dropdown-menu.types.ts
4654
4907
  const dropdownMenuItemVariants = ["default", "error"];
4908
+ const dropdownMenuActionsAlignments = ["end", "stretch"];
4655
4909
  //#endregion
4656
4910
  //#region src/components/ds-breadcrumb/ds-breadcrumb.tsx
4657
4911
  /**
@@ -4708,7 +4962,7 @@ const DsBreadcrumb = (t0) => {
4708
4962
  placeholder: "Search",
4709
4963
  value: search,
4710
4964
  onValueChange: setSearch,
4711
- onKeyDown: _temp$12,
4965
+ onKeyDown: _temp$13,
4712
4966
  slots: { startAdornment: /* @__PURE__ */ jsx(DsIcon, {
4713
4967
  icon: "search",
4714
4968
  size: "tiny"
@@ -4764,7 +5018,8 @@ const DsBreadcrumb = (t0) => {
4764
5018
  } else t4 = $[16];
4765
5019
  return t4;
4766
5020
  };
4767
- function _temp$12(e) {
5021
+ DsBreadcrumb.displayName = "DsBreadcrumb";
5022
+ function _temp$13(e) {
4768
5023
  return e.stopPropagation();
4769
5024
  }
4770
5025
  //#endregion
@@ -5075,6 +5330,7 @@ const DsButton = (props) => {
5075
5330
  } else t0 = $[3];
5076
5331
  return t0;
5077
5332
  };
5333
+ DsButton.displayName = "DsButton";
5078
5334
  //#endregion
5079
5335
  //#region src/components/ds-spinner/ds-spinner.module.scss
5080
5336
  var ds_spinner_module_default = {
@@ -5193,6 +5449,7 @@ const DsSpinner = (t0) => {
5193
5449
  } else t11 = $[24];
5194
5450
  return t11;
5195
5451
  };
5452
+ DsSpinner.displayName = "DsSpinner";
5196
5453
  //#endregion
5197
5454
  //#region src/components/ds-spinner/ds-spinner.types.ts
5198
5455
  const spinnerSizes = [
@@ -5211,6 +5468,12 @@ const iconSizeMap = Object.freeze({
5211
5468
  small: "tiny",
5212
5469
  tiny: "tiny"
5213
5470
  });
5471
+ /**
5472
+ * Button for user-triggered actions that do not navigate to another route.
5473
+ * Supports color palettes, emphasis variants, sizes, icon-only layout, loading and selected states.
5474
+ *
5475
+ * @summary action button with color/variant/size, icon-only, loading and selected states
5476
+ */
5214
5477
  const DsButtonV3$1 = (t0) => {
5215
5478
  const $ = c(37);
5216
5479
  let children;
@@ -5347,6 +5610,7 @@ const buttonV3Sizes = [
5347
5610
  //#endregion
5348
5611
  //#region src/components/ds-button-v3/index.ts
5349
5612
  const DsButtonV3 = withResponsiveProps(DsButtonV3$1, ["size"]);
5613
+ DsButtonV3.displayName = "DsButtonV3";
5350
5614
  //#endregion
5351
5615
  //#region src/components/ds-card/ds-card.module.scss
5352
5616
  var ds_card_module_default = {
@@ -5470,9 +5734,8 @@ const Root$3 = (t0) => {
5470
5734
  return t14;
5471
5735
  };
5472
5736
  /**
5473
- * Card header - contains title and extra content.
5474
- * Use with DsCard.Title and DsCard.Extra for standard layout,
5475
- * or provide custom children for full flexibility.
5737
+ * Card header — title row and optional trailing content.
5738
+ * Provide custom children for full layout flexibility.
5476
5739
  */
5477
5740
  const Header$4 = (t0) => {
5478
5741
  const $ = c(12);
@@ -5603,6 +5866,10 @@ const Footer$3 = (t0) => {
5603
5866
  } else t2 = $[11];
5604
5867
  return t2;
5605
5868
  };
5869
+ Root$3.displayName = "DsCard.Root";
5870
+ Header$4.displayName = "DsCard.Header";
5871
+ Body$4.displayName = "DsCard.Body";
5872
+ Footer$3.displayName = "DsCard.Footer";
5606
5873
  const DsCard = {
5607
5874
  Root: Root$3,
5608
5875
  Header: Header$4,
@@ -5648,7 +5915,7 @@ const DEFAULT_LOCALE$1 = Object.freeze({
5648
5915
  pinButtonLabel: "Pin side menu",
5649
5916
  unpinButtonLabel: "Unpin side menu"
5650
5917
  });
5651
- const DsCatalogLayout = (t0) => {
5918
+ const DsCatalogLayoutRoot = (t0) => {
5652
5919
  const $ = c(17);
5653
5920
  let className;
5654
5921
  let rest;
@@ -6018,11 +6285,19 @@ const ContentHeader = (t0) => {
6018
6285
  } else t6 = $[21];
6019
6286
  return t6;
6020
6287
  };
6021
- DsCatalogLayout.Header = Header$3;
6022
- DsCatalogLayout.Body = Body$3;
6023
- DsCatalogLayout.SideMenu = SideMenu$1;
6024
- DsCatalogLayout.Content = Content$1;
6025
- DsCatalogLayout.ContentHeader = ContentHeader;
6288
+ Header$3.displayName = "DsCatalogLayout.Header";
6289
+ Body$3.displayName = "DsCatalogLayout.Body";
6290
+ SideMenu$1.displayName = "DsCatalogLayout.SideMenu";
6291
+ Content$1.displayName = "DsCatalogLayout.Content";
6292
+ ContentHeader.displayName = "DsCatalogLayout.ContentHeader";
6293
+ const DsCatalogLayout = Object.assign(DsCatalogLayoutRoot, {
6294
+ displayName: "DsCatalogLayout",
6295
+ Header: Header$3,
6296
+ Body: Body$3,
6297
+ SideMenu: SideMenu$1,
6298
+ Content: Content$1,
6299
+ ContentHeader
6300
+ });
6026
6301
  //#endregion
6027
6302
  //#region src/components/ds-checkbox/ds-checkbox.module.scss
6028
6303
  var ds_checkbox_module_default = {
@@ -6038,7 +6313,13 @@ var ds_checkbox_module_default = {
6038
6313
  //#endregion
6039
6314
  //#region src/components/ds-checkbox/ds-checkbox.tsx
6040
6315
  /**
6041
- * Design system Checkbox component
6316
+ * @summary Checkbox for single and grouped selection
6317
+ *
6318
+ * Checkbox for boolean and multi-select inputs. Use standalone for a single
6319
+ * toggle, or compose inside `DsCheckboxGroup` for multi-select lists. Import
6320
+ * `useCheckboxSelectAll` from `ds-checkbox-group` for parent "select all"
6321
+ * checkboxes. `checked` accepts `true`, `false`, or `"indeterminate"`.
6322
+ *
6042
6323
  */
6043
6324
  const DsCheckbox = (t0) => {
6044
6325
  const $ = c(25);
@@ -6155,6 +6436,7 @@ const DsCheckbox = (t0) => {
6155
6436
  } else t10 = $[24];
6156
6437
  return t10;
6157
6438
  };
6439
+ DsCheckbox.displayName = "DsCheckbox";
6158
6440
  //#endregion
6159
6441
  //#region src/components/ds-checkbox/ds-checkbox.types.ts
6160
6442
  const checkboxVariants = ["default", "warning"];
@@ -6208,6 +6490,7 @@ const DsCheckboxGroup = (t0) => {
6208
6490
  } else t4 = $[11];
6209
6491
  return t4;
6210
6492
  };
6493
+ DsCheckboxGroup.displayName = "DsCheckboxGroup";
6211
6494
  //#endregion
6212
6495
  //#region src/components/ds-checkbox-group/hooks/use-checkbox-select-all.ts
6213
6496
  /**
@@ -6362,6 +6645,7 @@ const DsChip = (t0) => {
6362
6645
  } else t17 = $[28];
6363
6646
  return t17;
6364
6647
  };
6648
+ DsChip.displayName = "DsChip";
6365
6649
  //#endregion
6366
6650
  //#region src/components/ds-chip-group/ds-chip-group.module.scss
6367
6651
  var ds_chip_group_module_default = {
@@ -6403,7 +6687,8 @@ const useChipRowCalculation = ({ chipsWrapperRef, totalFilters }) => {
6403
6687
  total = next;
6404
6688
  } else total += next;
6405
6689
  }
6406
- setVisibleCount(Math.max(1, line < 2 ? index : index - 1));
6690
+ const result = Math.max(1, line < 2 ? index : index - 1);
6691
+ setVisibleCount(result);
6407
6692
  };
6408
6693
  const rafId = requestAnimationFrame(() => {
6409
6694
  calculateVisibleChips();
@@ -6506,6 +6791,7 @@ const DsChipGroup = ({ items, label = "Filtered by:", onClearAll, onItemDelete,
6506
6791
  ]
6507
6792
  });
6508
6793
  };
6794
+ DsChipGroup.displayName = "DsChipGroup";
6509
6795
  //#endregion
6510
6796
  //#region src/components/ds-comment-bubble/ds-comment-bubble.module.scss
6511
6797
  var ds_comment_bubble_module_default = {
@@ -6631,6 +6917,7 @@ const DsTextarea = (t0) => {
6631
6917
  } else t7 = $[21];
6632
6918
  return t7;
6633
6919
  };
6920
+ DsTextarea.displayName = "DsTextarea";
6634
6921
  //#endregion
6635
6922
  //#region src/utils/format-relative-time.ts
6636
6923
  const SECONDS_PER_MINUTE = 60;
@@ -6895,6 +7182,7 @@ const DsThreadItem = (t0) => {
6895
7182
  } else t18 = $[51];
6896
7183
  return t18;
6897
7184
  };
7185
+ DsThreadItem.displayName = "DsThreadItem";
6898
7186
  //#endregion
6899
7187
  //#region src/components/ds-comment-bubble/hooks/use-click-outside.ts
6900
7188
  const useClickOutside = (ref, onClickOutside, t0) => {
@@ -7001,7 +7289,7 @@ const DsCommentThread = (t0) => {
7001
7289
  const bottomRef = useRef(null);
7002
7290
  let t1;
7003
7291
  if ($[0] !== messages) {
7004
- t1 = messages.find(_temp$11) || messages[0];
7292
+ t1 = messages.find(_temp$12) || messages[0];
7005
7293
  $[0] = messages;
7006
7294
  $[1] = t1;
7007
7295
  } else t1 = $[1];
@@ -7141,7 +7429,8 @@ const DsCommentThread = (t0) => {
7141
7429
  } else t22 = $[36];
7142
7430
  return t22;
7143
7431
  };
7144
- function _temp$11(m) {
7432
+ DsCommentThread.displayName = "DsCommentThread";
7433
+ function _temp$12(m) {
7145
7434
  return m.isInitialMessage;
7146
7435
  }
7147
7436
  //#endregion
@@ -7483,6 +7772,7 @@ const DsTag = (t0) => {
7483
7772
  } else t28 = $[63];
7484
7773
  return t28;
7485
7774
  };
7775
+ DsTag.displayName = "DsTag";
7486
7776
  //#endregion
7487
7777
  //#region src/components/ds-tag/ds-tag.types.ts
7488
7778
  const tagSizes = ["medium", "small"];
@@ -7493,16 +7783,6 @@ const tagVariants = [
7493
7783
  "key-value"
7494
7784
  ];
7495
7785
  //#endregion
7496
- //#region src/utils/merge-refs.ts
7497
- const mergeRefs = (...refs) => {
7498
- return (value) => {
7499
- refs.filter((r) => !!r).forEach((ref) => {
7500
- if (typeof ref === "function") ref(value);
7501
- else ref.current = value;
7502
- });
7503
- };
7504
- };
7505
- //#endregion
7506
7786
  //#region src/components/ds-comment-bubble/ds-comment-bubble.tsx
7507
7787
  const DsCommentBubble = (t0) => {
7508
7788
  const $ = c(74);
@@ -7840,6 +8120,7 @@ const DsCommentBubble = (t0) => {
7840
8120
  } else t20 = $[73];
7841
8121
  return t20;
7842
8122
  };
8123
+ DsCommentBubble.displayName = "DsCommentBubble";
7843
8124
  //#endregion
7844
8125
  //#region src/components/ds-comment-card/ds-comment-card.module.scss
7845
8126
  var ds_comment_card_module_default = {
@@ -7873,7 +8154,7 @@ const DsCommentCard = (t0) => {
7873
8154
  const { numericId, author, createdAt, messages, referenceTag, isActionRequired } = comment;
7874
8155
  let t4;
7875
8156
  if ($[0] !== messages) {
7876
- t4 = messages.find(_temp$10) || messages[0];
8157
+ t4 = messages.find(_temp$11) || messages[0];
7877
8158
  $[0] = messages;
7878
8159
  $[1] = t4;
7879
8160
  } else t4 = $[1];
@@ -8197,7 +8478,8 @@ const DsCommentCard = (t0) => {
8197
8478
  } else t34 = $[78];
8198
8479
  return t34;
8199
8480
  };
8200
- function _temp$10(m) {
8481
+ DsCommentCard.displayName = "DsCommentCard";
8482
+ function _temp$11(m) {
8201
8483
  return m.isInitialMessage;
8202
8484
  }
8203
8485
  function _temp2$6(m_0) {
@@ -8286,6 +8568,7 @@ const DsCommentIndicator = (t0) => {
8286
8568
  } else t7 = $[16];
8287
8569
  return t7;
8288
8570
  };
8571
+ DsCommentIndicator.displayName = "DsCommentIndicator";
8289
8572
  //#endregion
8290
8573
  //#region src/components/ds-comments-drawer/ds-comments-drawer.module.scss
8291
8574
  var ds_comments_drawer_module_default = {
@@ -8407,7 +8690,7 @@ const useArkDialogBodyLockCleanup = (open, enabled) => {
8407
8690
  };
8408
8691
  //#endregion
8409
8692
  //#region src/components/ds-drawer/ds-drawer.tsx
8410
- const DsDrawer = (t0) => {
8693
+ const DsDrawerRoot = (t0) => {
8411
8694
  const $ = c(28);
8412
8695
  const { open, onOpenChange, onOpenAutoFocus, columns: t1, position: t2, backdrop: t3, closeOnEscape: t4, closeOnInteractOutside: t5, portal: t6, style, className, children } = t0;
8413
8696
  const columns = t1 === void 0 ? 4 : t1;
@@ -8688,13 +8971,23 @@ const Actions$1 = (t0) => {
8688
8971
  } else t2 = $[5];
8689
8972
  return t2;
8690
8973
  };
8691
- DsDrawer.Header = Header$2;
8692
- DsDrawer.Title = Title$1;
8693
- DsDrawer.CloseTrigger = CloseTrigger$1;
8694
- DsDrawer.Toolbar = Toolbar;
8695
- DsDrawer.Body = Body$2;
8696
- DsDrawer.Footer = Footer$2;
8697
- DsDrawer.Actions = Actions$1;
8974
+ Header$2.displayName = "DsDrawer.Header";
8975
+ Title$1.displayName = "DsDrawer.Title";
8976
+ CloseTrigger$1.displayName = "DsDrawer.CloseTrigger";
8977
+ Toolbar.displayName = "DsDrawer.Toolbar";
8978
+ Body$2.displayName = "DsDrawer.Body";
8979
+ Footer$2.displayName = "DsDrawer.Footer";
8980
+ Actions$1.displayName = "DsDrawer.Actions";
8981
+ const DsDrawer = Object.assign(DsDrawerRoot, {
8982
+ displayName: "DsDrawer",
8983
+ Header: Header$2,
8984
+ Title: Title$1,
8985
+ CloseTrigger: CloseTrigger$1,
8986
+ Toolbar,
8987
+ Body: Body$2,
8988
+ Footer: Footer$2,
8989
+ Actions: Actions$1
8990
+ });
8698
8991
  //#endregion
8699
8992
  //#region src/components/ds-tag-filter/ds-tag-filter.module.scss
8700
8993
  var ds_tag_filter_module_default = {
@@ -8787,9 +9080,10 @@ const useTagOverflowCalculation = (t0) => {
8787
9080
  return;
8788
9081
  }
8789
9082
  const { count } = fitTagsInRow(tagWidths, getContainerAvailableWidth(container), gap);
9083
+ const hasOverflow = count < tagWidths.length;
8790
9084
  setState({
8791
9085
  visibleTagCount: count,
8792
- hasOverflow: count < tagWidths.length
9086
+ hasOverflow
8793
9087
  });
8794
9088
  };
8795
9089
  $[1] = containerRef;
@@ -9086,6 +9380,7 @@ const DsTagFilter = (t0) => {
9086
9380
  } else t25 = $[61];
9087
9381
  return t25;
9088
9382
  };
9383
+ DsTagFilter.displayName = "DsTagFilter";
9089
9384
  //#endregion
9090
9385
  //#region src/components/ds-comments-drawer/comments-filters.ts
9091
9386
  const initialFilterState = {
@@ -9232,7 +9527,7 @@ var ds_modal_module_default = {
9232
9527
  * Supports custom header, footer, and body content with grid-based sizing.
9233
9528
  * Use columns prop to control modal width (1-12 grid columns).
9234
9529
  */
9235
- const DsModal = (t0) => {
9530
+ const DsModalRoot = (t0) => {
9236
9531
  const $ = c(20);
9237
9532
  const { open, columns: t1, dividers: t2, style, className, modal: t3, closeOnEscape, closeOnInteractOutside: t4, children, onOpenChange } = t0;
9238
9533
  const columns = t1 === void 0 ? 6 : t1;
@@ -9455,12 +9750,21 @@ const Actions = (t0) => {
9455
9750
  } else t2 = $[5];
9456
9751
  return t2;
9457
9752
  };
9458
- DsModal.Header = Header$1;
9459
- DsModal.Title = Title;
9460
- DsModal.CloseTrigger = CloseTrigger;
9461
- DsModal.Body = Body$1;
9462
- DsModal.Footer = Footer$1;
9463
- DsModal.Actions = Actions;
9753
+ Header$1.displayName = "DsModal.Header";
9754
+ Title.displayName = "DsModal.Title";
9755
+ CloseTrigger.displayName = "DsModal.CloseTrigger";
9756
+ Body$1.displayName = "DsModal.Body";
9757
+ Footer$1.displayName = "DsModal.Footer";
9758
+ Actions.displayName = "DsModal.Actions";
9759
+ const DsModal = Object.assign(DsModalRoot, {
9760
+ displayName: "DsModal",
9761
+ Header: Header$1,
9762
+ Title,
9763
+ CloseTrigger,
9764
+ Body: Body$1,
9765
+ Footer: Footer$1,
9766
+ Actions
9767
+ });
9464
9768
  //#endregion
9465
9769
  //#region src/components/ds-tabs/components/ds-tabs-list/ds-tabs-list.module.scss
9466
9770
  var ds_tabs_list_module_default = { "tabList": "vT68YW_tabList" };
@@ -9497,6 +9801,7 @@ const DsTabsList = (t0) => {
9497
9801
  } else t3 = $[6];
9498
9802
  return t3;
9499
9803
  };
9804
+ DsTabsList.displayName = "DsTabs.List";
9500
9805
  //#endregion
9501
9806
  //#region src/components/ds-tabs/components/ds-tabs-tab/ds-tabs-tab.module.scss
9502
9807
  var ds_tabs_tab_module_default = {
@@ -9622,7 +9927,7 @@ const DsTabsTab = (t0) => {
9622
9927
  })
9623
9928
  }), /* @__PURE__ */ jsx(DsDropdownMenu.Content, {
9624
9929
  className: ds_tabs_tab_module_default.menuContent,
9625
- children: menuActionItems.map(_temp$9)
9930
+ children: menuActionItems.map(_temp$10)
9626
9931
  })]
9627
9932
  });
9628
9933
  $[17] = handleMenuActionSelect;
@@ -9660,7 +9965,8 @@ const DsTabsTab = (t0) => {
9660
9965
  } else t6 = $[29];
9661
9966
  return t6;
9662
9967
  };
9663
- function _temp$9(item) {
9968
+ DsTabsTab.displayName = "DsTabs.Tab";
9969
+ function _temp$10(item) {
9664
9970
  return /* @__PURE__ */ jsx(DsDropdownMenu.Item, {
9665
9971
  value: item.value,
9666
9972
  disabled: item.disabled,
@@ -9704,6 +10010,7 @@ const DsTabsContent = (t0) => {
9704
10010
  } else t2 = $[6];
9705
10011
  return t2;
9706
10012
  };
10013
+ DsTabsContent.displayName = "DsTabs.Content";
9707
10014
  //#endregion
9708
10015
  //#region src/components/ds-tabs/ds-tabs.module.scss
9709
10016
  var ds_tabs_module_default = { "root": "gZYmYG_root" };
@@ -9756,6 +10063,7 @@ const DsTabsRoot = (t0) => {
9756
10063
  } else t5 = $[12];
9757
10064
  return t5;
9758
10065
  };
10066
+ DsTabsRoot.displayName = "DsTabs.Root";
9759
10067
  const DsTabs = {
9760
10068
  Root: DsTabsRoot,
9761
10069
  List: DsTabsList,
@@ -10184,7 +10492,8 @@ const YearView$1 = () => {
10184
10492
  } else t0 = $[0];
10185
10493
  return t0;
10186
10494
  };
10187
- function _temp$8(weekDay, id) {
10495
+ DsDateInput.displayName = "DsDateInput";
10496
+ function _temp$9(weekDay, id) {
10188
10497
  return /* @__PURE__ */ jsx(DatePicker.TableHeader, {
10189
10498
  className: ds_date_input_module_default.tableHeader,
10190
10499
  children: /* @__PURE__ */ jsx(DsTypography, {
@@ -10219,7 +10528,7 @@ function _temp4$2(datePicker) {
10219
10528
  className: ds_date_input_module_default.tableHead,
10220
10529
  children: /* @__PURE__ */ jsx(DatePicker.TableRow, {
10221
10530
  className: ds_date_input_module_default.tableRow,
10222
- children: datePicker.weekDays.map(_temp$8)
10531
+ children: datePicker.weekDays.map(_temp$9)
10223
10532
  })
10224
10533
  }), /* @__PURE__ */ jsx(DatePicker.TableBody, {
10225
10534
  className: ds_date_input_module_default.tableBody,
@@ -10862,7 +11171,7 @@ const DsCommentsDrawer = (t0) => {
10862
11171
  authorsMap.set(comment.author.id, comment.author.name);
10863
11172
  comment.labels?.forEach((label) => labelsSet.add(label));
10864
11173
  });
10865
- availableAuthors = Array.from(authorsMap.entries()).map(_temp$7);
11174
+ availableAuthors = Array.from(authorsMap.entries()).map(_temp$8);
10866
11175
  availableLabels = Array.from(labelsSet);
10867
11176
  let filteredComments = comments;
10868
11177
  if (!showResolved) filteredComments = filteredComments.filter(_temp2$4);
@@ -10936,7 +11245,10 @@ const DsCommentsDrawer = (t0) => {
10936
11245
  if ($[49] !== appliedFilters || $[50] !== filterTags) {
10937
11246
  t21 = (item) => {
10938
11247
  const tag = filterTags.find((c_2) => c_2.id === item.id);
10939
- if (tag) setAppliedFilters(removeTag(appliedFilters, tag));
11248
+ if (tag) {
11249
+ const newFilters = removeTag(appliedFilters, tag);
11250
+ setAppliedFilters(newFilters);
11251
+ }
10940
11252
  };
10941
11253
  $[49] = appliedFilters;
10942
11254
  $[50] = filterTags;
@@ -11211,7 +11523,8 @@ const DsCommentsDrawer = (t0) => {
11211
11523
  } else t18 = $[101];
11212
11524
  return t18;
11213
11525
  };
11214
- function _temp$7(t0) {
11526
+ DsCommentsDrawer.displayName = "DsCommentsDrawer";
11527
+ function _temp$8(t0) {
11215
11528
  const [id, name] = t0;
11216
11529
  return {
11217
11530
  id,
@@ -11232,11 +11545,7 @@ function _temp5$1(c_1) {
11232
11545
  }
11233
11546
  //#endregion
11234
11547
  //#region src/components/ds-confirmation/ds-confirmation.tsx
11235
- /**
11236
- * @deprecated DsConfirmation is deprecated. Use DsModal instead.
11237
- * @see {@link ../ds-modal} for the replacement component.
11238
- */
11239
- const DsConfirmation = (props) => {
11548
+ const DsConfirmationRoot = (props) => {
11240
11549
  const $ = c(2);
11241
11550
  let t0;
11242
11551
  if ($[0] !== props) {
@@ -11251,12 +11560,19 @@ const DsConfirmation = (props) => {
11251
11560
  } else t0 = $[1];
11252
11561
  return t0;
11253
11562
  };
11254
- DsConfirmation.Header = DsModal.Header;
11255
- DsConfirmation.Title = DsModal.Title;
11256
- DsConfirmation.CloseTrigger = DsModal.CloseTrigger;
11257
- DsConfirmation.Body = DsModal.Body;
11258
- DsConfirmation.Footer = DsModal.Footer;
11259
- DsConfirmation.Actions = DsModal.Actions;
11563
+ /**
11564
+ * @deprecated DsConfirmation is deprecated. Use DsModal instead.
11565
+ * @see {@link ../ds-modal} for the replacement component.
11566
+ */
11567
+ const DsConfirmation = Object.assign(DsConfirmationRoot, {
11568
+ displayName: "DsConfirmation",
11569
+ Header: DsModal.Header,
11570
+ Title: DsModal.Title,
11571
+ CloseTrigger: DsModal.CloseTrigger,
11572
+ Body: DsModal.Body,
11573
+ Footer: DsModal.Footer,
11574
+ Actions: DsModal.Actions
11575
+ });
11260
11576
  //#endregion
11261
11577
  //#region src/components/ds-date-picker/ds-date-picker.utils.ts
11262
11578
  const toIntlDate = (date) => date ? fromDate(date, getLocalTimeZone()) : date;
@@ -11913,6 +12229,7 @@ const DsTimePicker = (props) => {
11913
12229
  } else t26 = $[71];
11914
12230
  return t26;
11915
12231
  };
12232
+ DsTimePicker.displayName = "DsTimePicker";
11916
12233
  //#endregion
11917
12234
  //#region src/components/ds-date-picker/ds-date-picker.module.scss
11918
12235
  var ds_date_picker_module_default = {
@@ -12011,7 +12328,7 @@ const DayView = (t0) => {
12011
12328
  className: calendar_table_module_default.table,
12012
12329
  children: [/* @__PURE__ */ jsx(DatePicker.TableHead, { children: /* @__PURE__ */ jsx(DatePicker.TableRow, {
12013
12330
  className: calendar_table_module_default.tableRow,
12014
- children: datePicker.weekDays.map(_temp$6)
12331
+ children: datePicker.weekDays.map(_temp$7)
12015
12332
  }) }), /* @__PURE__ */ jsx(DatePicker.TableBody, {
12016
12333
  className: calendar_table_module_default.tableBody,
12017
12334
  children: datePicker.weeks.map(_temp3$3)
@@ -12026,7 +12343,7 @@ const DayView = (t0) => {
12026
12343
  } else t1 = $[1];
12027
12344
  return t1;
12028
12345
  };
12029
- function _temp$6(weekDay, idx) {
12346
+ function _temp$7(weekDay, idx) {
12030
12347
  return /* @__PURE__ */ jsx(DatePicker.TableHeader, {
12031
12348
  className: calendar_table_module_default.tableHeader,
12032
12349
  children: /* @__PURE__ */ jsx(DsTypography, {
@@ -12070,7 +12387,7 @@ const MonthView = () => {
12070
12387
  } else t0 = $[0];
12071
12388
  return t0;
12072
12389
  };
12073
- function _temp$5(month, monthIdx) {
12390
+ function _temp$6(month, monthIdx) {
12074
12391
  return /* @__PURE__ */ jsx(DatePicker.TableCell, {
12075
12392
  value: month.value,
12076
12393
  children: /* @__PURE__ */ jsx(DatePicker.TableCellTrigger, {
@@ -12085,7 +12402,7 @@ function _temp$5(month, monthIdx) {
12085
12402
  function _temp2$2(months, rowIdx) {
12086
12403
  return /* @__PURE__ */ jsx(DatePicker.TableRow, {
12087
12404
  className: calendar_table_module_default.tableRow,
12088
- children: months.map(_temp$5)
12405
+ children: months.map(_temp$6)
12089
12406
  }, rowIdx);
12090
12407
  }
12091
12408
  function _temp3$2(datePicker) {
@@ -12117,7 +12434,7 @@ const YearView = () => {
12117
12434
  } else t0 = $[0];
12118
12435
  return t0;
12119
12436
  };
12120
- function _temp$4(year, yearIdx) {
12437
+ function _temp$5(year, yearIdx) {
12121
12438
  return /* @__PURE__ */ jsx(DatePicker.TableCell, {
12122
12439
  value: year.value,
12123
12440
  children: /* @__PURE__ */ jsx(DatePicker.TableCellTrigger, {
@@ -12132,7 +12449,7 @@ function _temp$4(year, yearIdx) {
12132
12449
  function _temp2$1(years, rowIdx) {
12133
12450
  return /* @__PURE__ */ jsx(DatePicker.TableRow, {
12134
12451
  className: calendar_table_module_default.tableRow,
12135
- children: years.map(_temp$4)
12452
+ children: years.map(_temp$5)
12136
12453
  }, rowIdx);
12137
12454
  }
12138
12455
  function _temp3$1(datePicker) {
@@ -12146,6 +12463,13 @@ function _temp3$1(datePicker) {
12146
12463
  }
12147
12464
  //#endregion
12148
12465
  //#region src/components/ds-date-picker/ds-date-picker.tsx
12466
+ /**
12467
+ * @summary Date and optional time input with calendar popover and manual typing.
12468
+ *
12469
+ * Supports controlled (`value` + `onChange`) and uncontrolled (`defaultValue`) modes.
12470
+ * Pass `withTime` to include a nested time picker. A clear button appears when a
12471
+ * value is set unless `hideClearButton` is set.
12472
+ */
12149
12473
  const DsDatePicker = (t0) => {
12150
12474
  const $ = c(123);
12151
12475
  let _defaultValue;
@@ -12284,7 +12608,10 @@ const DsDatePicker = (t0) => {
12284
12608
  min,
12285
12609
  max,
12286
12610
  withTime
12287
- })) setValue(parseDate$1(text));
12611
+ })) {
12612
+ const parsedValue = parseDate$1(text);
12613
+ setValue(parsedValue);
12614
+ }
12288
12615
  };
12289
12616
  $[37] = max;
12290
12617
  $[38] = min;
@@ -12586,6 +12913,7 @@ const DsDatePicker = (t0) => {
12586
12913
  } else t39 = $[122];
12587
12914
  return t39;
12588
12915
  };
12916
+ DsDatePicker.displayName = "DsDatePicker";
12589
12917
  //#endregion
12590
12918
  //#region src/components/ds-select/ds-select.module.scss
12591
12919
  var ds_select_module_default = {
@@ -12716,7 +13044,7 @@ const DsSelect = (t0) => {
12716
13044
  const internalOptions = multiselectProps.multiple ? [SELECT_ALL_OPTION, ...userOptions] : userOptions;
12717
13045
  const collection = createListCollection$1({
12718
13046
  items: internalOptions,
12719
- itemToValue: _temp$3
13047
+ itemToValue: _temp$4
12720
13048
  });
12721
13049
  let t2;
12722
13050
  if ($[0] !== searchTerm) {
@@ -12941,7 +13269,8 @@ function getItemCheckedState({ item, select, options }) {
12941
13269
  if (select.selectedItems.length === options.length - 1) return true;
12942
13270
  return select.hasSelectedItems ? "indeterminate" : false;
12943
13271
  }
12944
- function _temp$3(item) {
13272
+ DsSelect.displayName = "DsSelect";
13273
+ function _temp$4(item) {
12945
13274
  return item.value;
12946
13275
  }
12947
13276
  function _temp2(value_0) {
@@ -12970,7 +13299,7 @@ var ds_number_input_module_default = {
12970
13299
  //#endregion
12971
13300
  //#region src/components/ds-number-input/ds-number-input.tsx
12972
13301
  const DsNumberInput = (t0) => {
12973
- const $ = c(33);
13302
+ const $ = c(36);
12974
13303
  const { id, ref, name, size: t1, onBlur, onChange, onValueChange, className, style: t2, placeholder, disabled: t3, min, max, step, value, defaultValue } = t0;
12975
13304
  const size = t1 === void 0 ? "default" : t1;
12976
13305
  let t4;
@@ -12995,26 +13324,32 @@ const DsNumberInput = (t0) => {
12995
13324
  $[5] = t7;
12996
13325
  } else t7 = $[5];
12997
13326
  const containerClass = t7;
12998
- const t8 = typeof value !== "undefined" ? String(value) : void 0;
12999
- const t9 = typeof defaultValue !== "undefined" ? String(defaultValue) : void 0;
13000
- let t10;
13001
- if ($[6] !== onValueChange) {
13002
- t10 = (details) => onValueChange?.(details.valueAsNumber);
13003
- $[6] = onValueChange;
13004
- $[7] = t10;
13005
- } else t10 = $[7];
13327
+ let t8;
13328
+ if ($[6] !== id) {
13329
+ t8 = { input: id };
13330
+ $[6] = id;
13331
+ $[7] = t8;
13332
+ } else t8 = $[7];
13333
+ const t9 = typeof value !== "undefined" ? String(value) : void 0;
13334
+ const t10 = typeof defaultValue !== "undefined" ? String(defaultValue) : void 0;
13006
13335
  let t11;
13007
- if ($[8] === Symbol.for("react.memo_cache_sentinel")) {
13008
- t11 = classNames(ds_number_input_module_default.iconButton);
13009
- $[8] = t11;
13010
- } else t11 = $[8];
13336
+ if ($[8] !== onValueChange) {
13337
+ t11 = (details) => onValueChange?.(details.valueAsNumber);
13338
+ $[8] = onValueChange;
13339
+ $[9] = t11;
13340
+ } else t11 = $[9];
13011
13341
  let t12;
13012
- if ($[9] === Symbol.for("react.memo_cache_sentinel")) {
13013
- t12 = /* @__PURE__ */ jsx(NumberInput.DecrementTrigger, {
13342
+ if ($[10] === Symbol.for("react.memo_cache_sentinel")) {
13343
+ t12 = classNames(ds_number_input_module_default.iconButton);
13344
+ $[10] = t12;
13345
+ } else t12 = $[10];
13346
+ let t13;
13347
+ if ($[11] === Symbol.for("react.memo_cache_sentinel")) {
13348
+ t13 = /* @__PURE__ */ jsx(NumberInput.DecrementTrigger, {
13014
13349
  asChild: true,
13015
13350
  children: /* @__PURE__ */ jsx("button", {
13016
13351
  type: "button",
13017
- className: t11,
13352
+ className: t12,
13018
13353
  "aria-label": "Decrease value",
13019
13354
  children: /* @__PURE__ */ jsx(DsIcon, {
13020
13355
  icon: "remove",
@@ -13022,42 +13357,42 @@ const DsNumberInput = (t0) => {
13022
13357
  })
13023
13358
  })
13024
13359
  });
13025
- $[9] = t12;
13026
- } else t12 = $[9];
13027
- let t13;
13028
- if ($[10] === Symbol.for("react.memo_cache_sentinel")) {
13029
- t13 = classNames(ds_number_input_module_default.input);
13030
- $[10] = t13;
13031
- } else t13 = $[10];
13360
+ $[11] = t13;
13361
+ } else t13 = $[11];
13032
13362
  let t14;
13033
- if ($[11] !== name || $[12] !== onBlur || $[13] !== onChange || $[14] !== placeholder || $[15] !== ref) {
13034
- t14 = /* @__PURE__ */ jsx(NumberInput.Input, {
13363
+ if ($[12] === Symbol.for("react.memo_cache_sentinel")) {
13364
+ t14 = classNames(ds_number_input_module_default.input);
13365
+ $[12] = t14;
13366
+ } else t14 = $[12];
13367
+ let t15;
13368
+ if ($[13] !== name || $[14] !== onBlur || $[15] !== onChange || $[16] !== placeholder || $[17] !== ref) {
13369
+ t15 = /* @__PURE__ */ jsx(NumberInput.Input, {
13035
13370
  ref,
13036
13371
  name,
13037
- className: t13,
13372
+ className: t14,
13038
13373
  placeholder,
13039
13374
  onBlur,
13040
13375
  onChange
13041
13376
  });
13042
- $[11] = name;
13043
- $[12] = onBlur;
13044
- $[13] = onChange;
13045
- $[14] = placeholder;
13046
- $[15] = ref;
13047
- $[16] = t14;
13048
- } else t14 = $[16];
13049
- let t15;
13050
- if ($[17] === Symbol.for("react.memo_cache_sentinel")) {
13051
- t15 = classNames(ds_number_input_module_default.iconButton);
13052
- $[17] = t15;
13053
- } else t15 = $[17];
13377
+ $[13] = name;
13378
+ $[14] = onBlur;
13379
+ $[15] = onChange;
13380
+ $[16] = placeholder;
13381
+ $[17] = ref;
13382
+ $[18] = t15;
13383
+ } else t15 = $[18];
13054
13384
  let t16;
13055
- if ($[18] === Symbol.for("react.memo_cache_sentinel")) {
13056
- t16 = /* @__PURE__ */ jsx(NumberInput.IncrementTrigger, {
13385
+ if ($[19] === Symbol.for("react.memo_cache_sentinel")) {
13386
+ t16 = classNames(ds_number_input_module_default.iconButton);
13387
+ $[19] = t16;
13388
+ } else t16 = $[19];
13389
+ let t17;
13390
+ if ($[20] === Symbol.for("react.memo_cache_sentinel")) {
13391
+ t17 = /* @__PURE__ */ jsx(NumberInput.IncrementTrigger, {
13057
13392
  asChild: true,
13058
13393
  children: /* @__PURE__ */ jsx("button", {
13059
13394
  type: "button",
13060
- className: t15,
13395
+ className: t16,
13061
13396
  "aria-label": "Increase value",
13062
13397
  children: /* @__PURE__ */ jsx(DsIcon, {
13063
13398
  icon: "add",
@@ -13065,53 +13400,56 @@ const DsNumberInput = (t0) => {
13065
13400
  })
13066
13401
  })
13067
13402
  });
13068
- $[18] = t16;
13069
- } else t16 = $[18];
13070
- let t17;
13071
- if ($[19] !== containerClass || $[20] !== style || $[21] !== t14) {
13072
- t17 = /* @__PURE__ */ jsx(NumberInput.Control, {
13403
+ $[20] = t17;
13404
+ } else t17 = $[20];
13405
+ let t18;
13406
+ if ($[21] !== containerClass || $[22] !== style || $[23] !== t15) {
13407
+ t18 = /* @__PURE__ */ jsx(NumberInput.Control, {
13073
13408
  asChild: true,
13074
13409
  children: /* @__PURE__ */ jsxs("div", {
13075
13410
  className: containerClass,
13076
13411
  style,
13077
13412
  children: [
13078
- t12,
13079
- t14,
13080
- t16
13413
+ t13,
13414
+ t15,
13415
+ t17
13081
13416
  ]
13082
13417
  })
13083
13418
  });
13084
- $[19] = containerClass;
13085
- $[20] = style;
13086
- $[21] = t14;
13087
- $[22] = t17;
13088
- } else t17 = $[22];
13089
- let t18;
13090
- if ($[23] !== disabled || $[24] !== id || $[25] !== max || $[26] !== min || $[27] !== step || $[28] !== t10 || $[29] !== t17 || $[30] !== t8 || $[31] !== t9) {
13091
- t18 = /* @__PURE__ */ jsx(NumberInput.Root, {
13419
+ $[21] = containerClass;
13420
+ $[22] = style;
13421
+ $[23] = t15;
13422
+ $[24] = t18;
13423
+ } else t18 = $[24];
13424
+ let t19;
13425
+ if ($[25] !== disabled || $[26] !== id || $[27] !== max || $[28] !== min || $[29] !== step || $[30] !== t10 || $[31] !== t11 || $[32] !== t18 || $[33] !== t8 || $[34] !== t9) {
13426
+ t19 = /* @__PURE__ */ jsx(NumberInput.Root, {
13092
13427
  id,
13428
+ ids: t8,
13093
13429
  min,
13094
13430
  max,
13095
13431
  step,
13096
13432
  disabled,
13097
- value: t8,
13098
- defaultValue: t9,
13099
- onValueChange: t10,
13100
- children: t17
13433
+ value: t9,
13434
+ defaultValue: t10,
13435
+ onValueChange: t11,
13436
+ children: t18
13101
13437
  });
13102
- $[23] = disabled;
13103
- $[24] = id;
13104
- $[25] = max;
13105
- $[26] = min;
13106
- $[27] = step;
13107
- $[28] = t10;
13108
- $[29] = t17;
13109
- $[30] = t8;
13110
- $[31] = t9;
13438
+ $[25] = disabled;
13439
+ $[26] = id;
13440
+ $[27] = max;
13441
+ $[28] = min;
13442
+ $[29] = step;
13443
+ $[30] = t10;
13444
+ $[31] = t11;
13111
13445
  $[32] = t18;
13112
- } else t18 = $[32];
13113
- return t18;
13446
+ $[33] = t8;
13447
+ $[34] = t9;
13448
+ $[35] = t19;
13449
+ } else t19 = $[35];
13450
+ return t19;
13114
13451
  };
13452
+ DsNumberInput.displayName = "DsNumberInput";
13115
13453
  //#endregion
13116
13454
  //#region src/components/ds-password-input/ds-password-input.module.scss
13117
13455
  var ds_password_input_module_default = {
@@ -13235,6 +13573,7 @@ const DsPasswordInput = (t0) => {
13235
13573
  } else t13 = $[26];
13236
13574
  return t13;
13237
13575
  };
13576
+ DsPasswordInput.displayName = "DsPasswordInput";
13238
13577
  //#endregion
13239
13578
  //#region src/components/ds-form-control/ds-form-control.module.scss
13240
13579
  var ds_form_control_module_default = {
@@ -13301,7 +13640,7 @@ const DsFormControlDescription = (t0) => {
13301
13640
  } else t2 = $[4];
13302
13641
  return t2;
13303
13642
  };
13304
- const DsFormControl = (t0) => {
13643
+ const DsFormControlRoot = (t0) => {
13305
13644
  const $ = c(23);
13306
13645
  const { id, status, label, hideLabel: t1, required: t2, slots, message, messageIcon: t3, className, style, children } = t0;
13307
13646
  const hideLabel = t1 === void 0 ? false : t1;
@@ -13387,16 +13726,20 @@ const DsFormControl = (t0) => {
13387
13726
  } else t10 = $[22];
13388
13727
  return t10;
13389
13728
  };
13390
- DsFormControl.TextInput = controlify(DsTextInput);
13391
- DsFormControl.NumberInput = controlify(DsNumberInput);
13392
- DsFormControl.PasswordInput = controlify(DsPasswordInput);
13393
- /** @deprecated DsDateInput is deprecated. Use DsDatePicker or DsDateRangePicker instead. */
13394
- DsFormControl.DateInput = controlify(DsDateInput);
13395
- DsFormControl.DatePicker = controlify(DsDatePicker);
13396
- DsFormControl.TimePicker = controlify(DsTimePicker);
13397
- DsFormControl.Textarea = controlify(DsTextarea);
13398
- DsFormControl.Select = controlify(DsSelect);
13399
- DsFormControl.Description = DsFormControlDescription;
13729
+ DsFormControlDescription.displayName = "DsFormControl.Description";
13730
+ const DsFormControl = Object.assign(DsFormControlRoot, {
13731
+ displayName: "DsFormControl",
13732
+ TextInput: controlify(DsTextInput),
13733
+ NumberInput: controlify(DsNumberInput),
13734
+ PasswordInput: controlify(DsPasswordInput),
13735
+ /** @deprecated DsDateInput is deprecated. Use DsDatePicker or DsDateRangePicker instead. */
13736
+ DateInput: controlify(DsDateInput),
13737
+ DatePicker: controlify(DsDatePicker),
13738
+ TimePicker: controlify(DsTimePicker),
13739
+ Textarea: controlify(DsTextarea),
13740
+ Select: controlify(DsSelect),
13741
+ Description: DsFormControlDescription
13742
+ });
13400
13743
  //#endregion
13401
13744
  //#region src/components/ds-form-control/ds-form-control.types.ts
13402
13745
  const controlStatuses = [
@@ -13631,6 +13974,7 @@ const DsDateRangePicker = (t0) => {
13631
13974
  } else t29 = $[61];
13632
13975
  return t29;
13633
13976
  };
13977
+ DsDateRangePicker.displayName = "DsDateRangePicker";
13634
13978
  //#endregion
13635
13979
  //#region src/components/ds-dialog/ds-dialog.module.scss
13636
13980
  var ds_dialog_module_default = {
@@ -13642,6 +13986,13 @@ var ds_dialog_module_default = {
13642
13986
  };
13643
13987
  //#endregion
13644
13988
  //#region src/components/ds-dialog/ds-dialog.tsx
13989
+ /**
13990
+ * @summary Lightweight controlled dialog for simple panels and popovers.
13991
+ *
13992
+ * Renders a Radix dialog with required accessible title, optional description,
13993
+ * and custom body content. Use for focused overlays and menu-style panels.
13994
+ * Prefer `DsModal` when you need structured header, body, and footer sections.
13995
+ */
13645
13996
  const DsDialog = ({ open, onOpenChange, title, hideTitle, description, hideDescription, children, className, anchorRef, customPosition, modal = true }) => {
13646
13997
  let style = {};
13647
13998
  if (customPosition) style = {
@@ -13688,6 +14039,7 @@ const DsDialog = ({ open, onOpenChange, title, hideTitle, description, hideDescr
13688
14039
  })] })
13689
14040
  });
13690
14041
  };
14042
+ DsDialog.displayName = "DsDialog";
13691
14043
  //#endregion
13692
14044
  //#region src/components/ds-divider/ds-divider.module.scss
13693
14045
  var ds_divider_module_default = {
@@ -13732,6 +14084,7 @@ const DsDivider = (t0) => {
13732
14084
  } else t4 = $[8];
13733
14085
  return t4;
13734
14086
  };
14087
+ DsDivider.displayName = "DsDivider";
13735
14088
  //#endregion
13736
14089
  //#region src/components/ds-expandable-text-input/ds-expandable-text-input.module.scss
13737
14090
  var ds_expandable_text_input_module_default = {
@@ -13908,6 +14261,7 @@ function InputExpander(t0) {
13908
14261
  } else t1 = $[1];
13909
14262
  return t1;
13910
14263
  }
14264
+ DsExpandableTextInput.displayName = "DsExpandableTextInput";
13911
14265
  //#endregion
13912
14266
  //#region src/components/ds-file-upload/utils/get-error-message.ts
13913
14267
  const FILE_ERROR_MESSAGES = {
@@ -14172,7 +14526,7 @@ const FileUploadItem = (t0) => {
14172
14526
  } else t20 = $[46];
14173
14527
  let t21;
14174
14528
  if ($[47] !== errors || $[48] !== status) {
14175
- t21 = status === "error" && errors?.length && errors.map(_temp$2);
14529
+ t21 = status === "error" && errors?.length && errors.map(_temp$3);
14176
14530
  $[47] = errors;
14177
14531
  $[48] = status;
14178
14532
  $[49] = t21;
@@ -14215,7 +14569,7 @@ const FileUploadItem = (t0) => {
14215
14569
  } else t23 = $[60];
14216
14570
  return t23;
14217
14571
  };
14218
- function _temp$2(error) {
14572
+ function _temp$3(error) {
14219
14573
  return /* @__PURE__ */ jsxs("div", {
14220
14574
  className: file_upload_item_module_default.errorMessage,
14221
14575
  children: [/* @__PURE__ */ jsx(DsIcon, {
@@ -14709,10 +15063,11 @@ function useFileUpload({ adapter, autoUpload = true, maxConcurrent = 3, maxFiles
14709
15063
  filesToAdd = files_0.slice(0, availableSlots);
14710
15064
  rejectedFiles = files_0.slice(availableSlots);
14711
15065
  } else return files_0;
14712
- addRejectedFiles(rejectedFiles.map((file_3) => ({
15066
+ const rejectedFilesWithErrors = rejectedFiles.map((file_3) => ({
14713
15067
  file: file_3,
14714
15068
  errors: ["TOO_MANY_FILES"]
14715
- })));
15069
+ }));
15070
+ addRejectedFiles(rejectedFilesWithErrors);
14716
15071
  return filesToAdd;
14717
15072
  };
14718
15073
  const addNewFiles = (filesToUpload) => {
@@ -14727,8 +15082,10 @@ function useFileUpload({ adapter, autoUpload = true, maxConcurrent = 3, maxFiles
14727
15082
  };
14728
15083
  const addFiles = (newFiles_1) => {
14729
15084
  const addedFiles = getAddedFiles(newFiles_1);
14730
- markDuplicates(getDuplicatedFiles(newFiles_1));
14731
- const uploadedFiles_1 = addNewFiles(markMaxFiles(addedFiles));
15085
+ const duplicateFiles = getDuplicatedFiles(newFiles_1);
15086
+ markDuplicates(duplicateFiles);
15087
+ const filesToAdd_0 = markMaxFiles(addedFiles);
15088
+ const uploadedFiles_1 = addNewFiles(filesToAdd_0);
14732
15089
  uploadNewFiles(uploadedFiles_1);
14733
15090
  return uploadedFiles_1;
14734
15091
  };
@@ -14973,6 +15330,7 @@ const DsFileUpload = (t0) => {
14973
15330
  } else t5 = $[32];
14974
15331
  return t5;
14975
15332
  };
15333
+ DsFileUpload.displayName = "DsFileUpload";
14976
15334
  //#endregion
14977
15335
  //#region src/components/ds-filter-status-icon/ds-filter-status-icon.module.scss
14978
15336
  var ds_filter_status_icon_module_default = {
@@ -15027,6 +15385,7 @@ const DsFilterStatusIcon = (t0) => {
15027
15385
  } else t6 = $[8];
15028
15386
  return t6;
15029
15387
  };
15388
+ DsFilterStatusIcon.displayName = "DsFilterStatusIcon";
15030
15389
  //#endregion
15031
15390
  //#region src/components/ds-filter-status-icon/ds-filter-status-icon.types.ts
15032
15391
  const filterStatuses = [
@@ -15069,6 +15428,8 @@ const DsGridItemBase = ({ children, colSpan, colStart, rowSpan, rowStart, classN
15069
15428
  //#region src/components/ds-grid/index.ts
15070
15429
  const DsGrid = withResponsiveProps(DsGridBase, ["gutter", "margin"]);
15071
15430
  const DsGridItem = withResponsiveProps(DsGridItemBase, ["colSpan", "rowSpan"]);
15431
+ DsGrid.displayName = "DsGrid";
15432
+ DsGridItem.displayName = "DsGridItem";
15072
15433
  //#endregion
15073
15434
  //#region src/components/ds-key-value-pair/ds-key-value-pair.module.scss
15074
15435
  var ds_key_value_pair_module_default = {
@@ -15163,6 +15524,7 @@ const DsKeyValuePair = (t0) => {
15163
15524
  } else t11 = $[21];
15164
15525
  return t11;
15165
15526
  };
15527
+ DsKeyValuePair.displayName = "DsKeyValuePair";
15166
15528
  //#endregion
15167
15529
  //#region src/components/ds-key-value-pair/ds-key-value-pair.types.ts
15168
15530
  const dsKeyValuePairOrientations = ["vertical", "horizontal"];
@@ -15322,6 +15684,7 @@ const DsLoader = (t0) => {
15322
15684
  } else t4 = $[11];
15323
15685
  return t4;
15324
15686
  };
15687
+ DsLoader.displayName = "DsLoader";
15325
15688
  //#endregion
15326
15689
  //#region src/components/ds-loader/ds-loader.types.ts
15327
15690
  const loaderVariants = ["spinner", "pulsing"];
@@ -15553,6 +15916,7 @@ function DsPanelCollapseButton(t0) {
15553
15916
  //#endregion
15554
15917
  //#region src/components/ds-panel/index.ts
15555
15918
  const DsPanel = withResponsiveProps(DsPanelBase, ["width"]);
15919
+ DsPanel.displayName = "DsPanel";
15556
15920
  //#endregion
15557
15921
  //#region src/components/ds-popover/ds-popover.module.scss
15558
15922
  var ds_popover_module_default = {
@@ -15862,6 +16226,14 @@ const DsPopoverLegacy = (t0) => {
15862
16226
  } else t5 = $[9];
15863
16227
  return t5;
15864
16228
  };
16229
+ DsPopoverLegacy.displayName = "DsPopover";
16230
+ DsPopoverRoot.displayName = "DsPopover.Root";
16231
+ DsPopoverTrigger.displayName = "DsPopover.Trigger";
16232
+ DsPopoverPanel.displayName = "DsPopover.Panel";
16233
+ DsPopoverHeader.displayName = "DsPopover.Header";
16234
+ DsPopoverContent.displayName = "DsPopover.Content";
16235
+ DsPopoverContentItem.displayName = "DsPopover.ContentItem";
16236
+ DsPopoverFooter.displayName = "DsPopover.Footer";
15865
16237
  const DsPopover = Object.assign(DsPopoverLegacy, {
15866
16238
  Root: DsPopoverRoot,
15867
16239
  Trigger: DsPopoverTrigger,
@@ -16172,6 +16544,7 @@ const DsProgressArc = (t0) => {
16172
16544
  } else t20 = $[64];
16173
16545
  return t20;
16174
16546
  };
16547
+ DsProgressArc.displayName = "DsProgressArc";
16175
16548
  //#endregion
16176
16549
  //#region src/components/ds-progress-arc/ds-progress-arc.types.ts
16177
16550
  const progressArcSizes = ["small", "medium"];
@@ -16306,6 +16679,7 @@ const DsProgressDonut = (t0) => {
16306
16679
  } else t14 = $[25];
16307
16680
  return t14;
16308
16681
  };
16682
+ DsProgressDonut.displayName = "DsProgressDonut";
16309
16683
  //#endregion
16310
16684
  //#region src/components/ds-progress-donut/ds-progress-donut.types.ts
16311
16685
  const progressDonutSizes = ["small", "medium"];
@@ -16509,6 +16883,7 @@ const DsProgressLinear = (t0) => {
16509
16883
  } else t19 = $[36];
16510
16884
  return t19;
16511
16885
  };
16886
+ DsProgressLinear.displayName = "DsProgressLinear";
16512
16887
  //#endregion
16513
16888
  //#region src/components/ds-progress-linear/ds-progress-linear.types.ts
16514
16889
  const progressLinearVariants = [
@@ -16780,6 +17155,7 @@ const DsProgressTaskBar = (t0) => {
16780
17155
  } else t21 = $[38];
16781
17156
  return t21;
16782
17157
  };
17158
+ DsProgressTaskBar.displayName = "DsProgressTaskBar";
16783
17159
  //#endregion
16784
17160
  //#region src/components/ds-radio-group/ds-radio-group.module.scss
16785
17161
  var ds_radio_group_module_default = {
@@ -16970,7 +17346,7 @@ const DsRadioGroupLegacy = (t0) => {
16970
17346
  } else t3 = $[3];
16971
17347
  let t4;
16972
17348
  if ($[4] !== options) {
16973
- t4 = options.map(_temp$1);
17349
+ t4 = options.map(_temp$2);
16974
17350
  $[4] = options;
16975
17351
  $[5] = t4;
16976
17352
  } else t4 = $[5];
@@ -17010,7 +17386,10 @@ const DsRadioGroup = {
17010
17386
  Root: Root$2,
17011
17387
  Item: Item$1
17012
17388
  };
17013
- function _temp$1(option) {
17389
+ DsRadioGroup.Root.displayName = "DsRadioGroup.Root";
17390
+ DsRadioGroup.Item.displayName = "DsRadioGroup.Item";
17391
+ DsRadioGroupLegacy.displayName = "DsRadioGroupLegacy";
17392
+ function _temp$2(option) {
17014
17393
  return /* @__PURE__ */ jsxs(RadioGroup.Item, {
17015
17394
  value: option.value,
17016
17395
  disabled: option.disabled,
@@ -17251,6 +17630,155 @@ const DsSegmentGroup = {
17251
17630
  Item,
17252
17631
  ItemText
17253
17632
  };
17633
+ DsSegmentGroup.Root.displayName = "DsSegmentGroup.Root";
17634
+ DsSegmentGroup.Item.displayName = "DsSegmentGroup.Item";
17635
+ DsSegmentGroup.ItemText.displayName = "DsSegmentGroup.ItemText";
17636
+ //#endregion
17637
+ //#region src/components/ds-site-node/hooks/use-is-overflowing.ts
17638
+ const useIsOverflowing = (text) => {
17639
+ const $ = c(5);
17640
+ const ref = useRef(null);
17641
+ const [isOverflowing, setIsOverflowing] = useState(false);
17642
+ let t0;
17643
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
17644
+ t0 = () => {
17645
+ const element = ref.current;
17646
+ if (!element) return;
17647
+ const measure = () => setIsOverflowing(element.scrollWidth > element.clientWidth);
17648
+ measure();
17649
+ const observer = new ResizeObserver(measure);
17650
+ observer.observe(element);
17651
+ const frame = requestAnimationFrame(measure);
17652
+ document.fonts.ready.then(measure).catch(_temp$1);
17653
+ document.fonts.addEventListener("loadingdone", measure);
17654
+ return () => {
17655
+ cancelAnimationFrame(frame);
17656
+ observer.disconnect();
17657
+ document.fonts.removeEventListener("loadingdone", measure);
17658
+ };
17659
+ };
17660
+ $[0] = t0;
17661
+ } else t0 = $[0];
17662
+ let t1;
17663
+ if ($[1] !== text) {
17664
+ t1 = [text];
17665
+ $[1] = text;
17666
+ $[2] = t1;
17667
+ } else t1 = $[2];
17668
+ useLayoutEffect(t0, t1);
17669
+ let t2;
17670
+ if ($[3] !== isOverflowing) {
17671
+ t2 = {
17672
+ ref,
17673
+ isOverflowing
17674
+ };
17675
+ $[3] = isOverflowing;
17676
+ $[4] = t2;
17677
+ } else t2 = $[4];
17678
+ return t2;
17679
+ };
17680
+ function _temp$1() {}
17681
+ //#endregion
17682
+ //#region src/components/ds-site-node/ds-site-node.module.scss
17683
+ var ds_site_node_module_default = {
17684
+ "node": "_9jr5kG_node",
17685
+ "overflow": "_9jr5kG_overflow",
17686
+ "pill": "_9jr5kG_pill",
17687
+ "pillMuted": "_9jr5kG_pillMuted",
17688
+ "selected": "_9jr5kG_selected",
17689
+ "siteCode": "_9jr5kG_siteCode"
17690
+ };
17691
+ //#endregion
17692
+ //#region src/components/ds-site-node/ds-site-node.tsx
17693
+ const DsSiteNode = (t0) => {
17694
+ const $ = c(21);
17695
+ const { ref, state: t1, tier, siteCode, overflowLabel, className, style, "aria-label": ariaLabel, onClick } = t0;
17696
+ const state = t1 === void 0 ? "default" : t1;
17697
+ const isOverflow = state === "overflow";
17698
+ const isSelected = state === "selected";
17699
+ const isMuted = state === "muted";
17700
+ const { ref: siteCodeRef, isOverflowing } = useIsOverflowing(siteCode);
17701
+ let t2;
17702
+ if ($[0] !== className || $[1] !== isOverflow || $[2] !== isSelected) {
17703
+ t2 = classNames(ds_site_node_module_default.node, {
17704
+ [ds_site_node_module_default.selected]: isSelected,
17705
+ [ds_site_node_module_default.overflow]: isOverflow
17706
+ }, className);
17707
+ $[0] = className;
17708
+ $[1] = isOverflow;
17709
+ $[2] = isSelected;
17710
+ $[3] = t2;
17711
+ } else t2 = $[3];
17712
+ const t3 = isSelected ? true : void 0;
17713
+ let t4;
17714
+ if ($[4] !== isMuted || $[5] !== isOverflow || $[6] !== isOverflowing || $[7] !== isSelected || $[8] !== overflowLabel || $[9] !== siteCode || $[10] !== siteCodeRef || $[11] !== tier) {
17715
+ t4 = isOverflow ? /* @__PURE__ */ jsx(DsTypography, {
17716
+ variant: "body-sm-reg",
17717
+ color: "secondary",
17718
+ children: overflowLabel
17719
+ }) : /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(DsStack, {
17720
+ direction: "row",
17721
+ alignItems: "center",
17722
+ justifyContent: "center",
17723
+ className: classNames(ds_site_node_module_default.pill, { [ds_site_node_module_default.pillMuted]: isMuted }),
17724
+ children: /* @__PURE__ */ jsx(DsTypography, {
17725
+ variant: "body-xs-md",
17726
+ color: isMuted ? "on-disabled" : "on-action",
17727
+ children: tier
17728
+ })
17729
+ }), /* @__PURE__ */ jsx("span", {
17730
+ ref: siteCodeRef,
17731
+ className: ds_site_node_module_default.siteCode,
17732
+ children: /* @__PURE__ */ jsx(DsTooltip, {
17733
+ content: isOverflowing ? siteCode : void 0,
17734
+ children: /* @__PURE__ */ jsx(DsTypography, {
17735
+ variant: "body-sm-bold",
17736
+ color: isSelected ? "main" : "secondary",
17737
+ children: siteCode
17738
+ })
17739
+ })
17740
+ })] });
17741
+ $[4] = isMuted;
17742
+ $[5] = isOverflow;
17743
+ $[6] = isOverflowing;
17744
+ $[7] = isSelected;
17745
+ $[8] = overflowLabel;
17746
+ $[9] = siteCode;
17747
+ $[10] = siteCodeRef;
17748
+ $[11] = tier;
17749
+ $[12] = t4;
17750
+ } else t4 = $[12];
17751
+ let t5;
17752
+ if ($[13] !== ariaLabel || $[14] !== onClick || $[15] !== ref || $[16] !== style || $[17] !== t2 || $[18] !== t3 || $[19] !== t4) {
17753
+ t5 = /* @__PURE__ */ jsx("button", {
17754
+ ref,
17755
+ type: "button",
17756
+ className: t2,
17757
+ style,
17758
+ "aria-label": ariaLabel,
17759
+ "aria-current": t3,
17760
+ onClick,
17761
+ children: t4
17762
+ });
17763
+ $[13] = ariaLabel;
17764
+ $[14] = onClick;
17765
+ $[15] = ref;
17766
+ $[16] = style;
17767
+ $[17] = t2;
17768
+ $[18] = t3;
17769
+ $[19] = t4;
17770
+ $[20] = t5;
17771
+ } else t5 = $[20];
17772
+ return t5;
17773
+ };
17774
+ //#endregion
17775
+ //#region src/components/ds-site-node/ds-site-node.types.ts
17776
+ const siteNodeStates = [
17777
+ "default",
17778
+ "selected",
17779
+ "muted",
17780
+ "overflow"
17781
+ ];
17254
17782
  //#endregion
17255
17783
  //#region src/components/ds-skeleton/ds-skeleton.types.ts
17256
17784
  const skeletonColorVariants = ["gray", "blue"];
@@ -17399,6 +17927,7 @@ const DsSkeletonText = (t0) => {
17399
17927
  } else t10 = $[14];
17400
17928
  return t10;
17401
17929
  };
17930
+ DsSkeletonText.displayName = "DsSkeletonText";
17402
17931
  //#endregion
17403
17932
  //#region src/components/ds-skeleton/ds-skeleton-circle.tsx
17404
17933
  /**
@@ -17447,6 +17976,7 @@ const DsSkeletonCircle = (t0) => {
17447
17976
  } else t8 = $[9];
17448
17977
  return t8;
17449
17978
  };
17979
+ DsSkeletonCircle.displayName = "DsSkeletonCircle";
17450
17980
  //#endregion
17451
17981
  //#region src/components/ds-skeleton/ds-skeleton-rect.tsx
17452
17982
  /**
@@ -17497,13 +18027,17 @@ const DsSkeletonRect = (t0) => {
17497
18027
  } else t9 = $[10];
17498
18028
  return t9;
17499
18029
  };
18030
+ DsSkeletonRect.displayName = "DsSkeletonRect";
17500
18031
  //#endregion
17501
18032
  //#region src/components/ds-skeleton/ds-skeleton.ts
17502
- var ds_skeleton_default = {
18033
+ const DsSkeleton = {
17503
18034
  Text: DsSkeletonText,
17504
18035
  Circle: DsSkeletonCircle,
17505
18036
  Rect: DsSkeletonRect
17506
18037
  };
18038
+ DsSkeleton.Text.displayName = "DsSkeleton.Text";
18039
+ DsSkeleton.Circle.displayName = "DsSkeleton.Circle";
18040
+ DsSkeleton.Rect.displayName = "DsSkeleton.Rect";
17507
18041
  //#endregion
17508
18042
  //#region src/components/ds-smart-tabs/ds-smart-tabs.module.scss
17509
18043
  var ds_smart_tabs_module_default = {
@@ -17679,7 +18213,7 @@ const DsSmartTab = (t0) => {
17679
18213
  /**
17680
18214
  * Design system SmartTabs component
17681
18215
  */
17682
- const DsSmartTabs = (t0) => {
18216
+ const DsSmartTabsRoot = (t0) => {
17683
18217
  const $ = c(22);
17684
18218
  let activeTab;
17685
18219
  let children;
@@ -17754,7 +18288,11 @@ const DsSmartTabs = (t0) => {
17754
18288
  } else t6 = $[21];
17755
18289
  return t6;
17756
18290
  };
17757
- DsSmartTabs.Tab = DsSmartTab;
18291
+ DsSmartTab.displayName = "DsSmartTabs.Tab";
18292
+ const DsSmartTabs = Object.assign(DsSmartTabsRoot, {
18293
+ displayName: "DsSmartTabs",
18294
+ Tab: DsSmartTab
18295
+ });
17758
18296
  //#endregion
17759
18297
  //#region src/components/ds-smart-tabs/ds-smart-tabs.types.ts
17760
18298
  const colors = [
@@ -17780,6 +18318,12 @@ var ds_split_button_module_default = {
17780
18318
  };
17781
18319
  //#endregion
17782
18320
  //#region src/components/ds-split-button/ds-split-button.tsx
18321
+ /**
18322
+ * Secondary action button paired with a dropdown select for choosing a related option.
18323
+ * Both slots share a size and disabled state controlled by the split button.
18324
+ *
18325
+ * @summary split action button with a primary action and an option select
18326
+ */
17783
18327
  const DsSplitButton$1 = (t0) => {
17784
18328
  const $ = c(33);
17785
18329
  const { ref, className, style, size: t1, disabled, slotProps } = t0;
@@ -17989,6 +18533,7 @@ const DsStatusBadge = (t0) => {
17989
18533
  } else t12 = $[15];
17990
18534
  return t12;
17991
18535
  };
18536
+ DsStatusBadge.displayName = "DsStatusBadge";
17992
18537
  //#endregion
17993
18538
  //#region src/components/ds-status-badge-v2/ds-status-badge-v2.module.scss
17994
18539
  var ds_status_badge_v2_module_default = {
@@ -18150,6 +18695,7 @@ const statusBadgeV2Sizes = ["medium", "small"];
18150
18695
  //#endregion
18151
18696
  //#region src/components/ds-status-badge-v2/index.ts
18152
18697
  const DsStatusBadgeV2 = withResponsiveProps(DsStatusBadgeV2$1, ["size"]);
18698
+ DsStatusBadgeV2.displayName = "DsStatusBadgeV2";
18153
18699
  //#endregion
18154
18700
  //#region src/components/ds-stepper/ds-stepper.module.scss
18155
18701
  var ds_stepper_module_default = {
@@ -18311,6 +18857,7 @@ function DsStepper(t0) {
18311
18857
  } else t10 = $[27];
18312
18858
  return t10;
18313
18859
  }
18860
+ DsStepper.displayName = "DsStepper";
18314
18861
  //#endregion
18315
18862
  //#region src/components/ds-stepper/components/ds-step-separator.tsx
18316
18863
  function DsStepSeparator(t0) {
@@ -18509,6 +19056,7 @@ function DsStep(t0) {
18509
19056
  } else t18 = $[47];
18510
19057
  return t18;
18511
19058
  }
19059
+ DsStep.displayName = "DsStep";
18512
19060
  //#endregion
18513
19061
  //#region src/components/ds-stepper/components/ds-step-label.tsx
18514
19062
  function DsStepLabel(t0) {
@@ -18598,6 +19146,7 @@ function DsStepContent(t0) {
18598
19146
  } else t5 = $[15];
18599
19147
  return t5;
18600
19148
  }
19149
+ DsStepContent.displayName = "DsStepContent";
18601
19150
  //#endregion
18602
19151
  //#region src/components/ds-stepper/components/ds-step-next-button.tsx
18603
19152
  function DsNextStepButton(t0) {
@@ -18640,6 +19189,7 @@ function DsNextStepButton(t0) {
18640
19189
  } else t3 = $[10];
18641
19190
  return t3;
18642
19191
  }
19192
+ DsNextStepButton.displayName = "DsNextStepButton";
18643
19193
  //#endregion
18644
19194
  //#region src/components/ds-system-status/ds-system-status.module.scss
18645
19195
  var ds_system_status_module_default = {
@@ -18711,6 +19261,7 @@ const DsSystemStatus = (t0) => {
18711
19261
  } else t6 = $[8];
18712
19262
  return t6;
18713
19263
  };
19264
+ DsSystemStatus.displayName = "DsSystemStatus";
18714
19265
  //#endregion
18715
19266
  //#region src/components/ds-system-status/ds-system-status.types.ts
18716
19267
  /**
@@ -19093,11 +19644,12 @@ function useTableFilters({ filterAdapters, baseColumns, appliedFilters: external
19093
19644
  }));
19094
19645
  };
19095
19646
  const applyFilters = () => {
19096
- setAppliedFilters(_filterAdapters.reduce((acc, adapter) => {
19647
+ const filtersToApply = _filterAdapters.reduce((acc, adapter) => {
19097
19648
  const value = draftFilters[adapter.id];
19098
19649
  if (adapter.getActiveFiltersCount(value) > 0) acc[adapter.id] = value;
19099
19650
  return acc;
19100
- }, {}));
19651
+ }, {});
19652
+ setAppliedFilters(filtersToApply);
19101
19653
  setPendingFilters({});
19102
19654
  };
19103
19655
  const clearAll = () => {
@@ -19109,10 +19661,11 @@ function useTableFilters({ filterAdapters, baseColumns, appliedFilters: external
19109
19661
  const adapter = _filterAdapters.find((a) => a.id === filterId);
19110
19662
  if (!adapter) return;
19111
19663
  const draftValue = draftFilters[filterId];
19112
- setAppliedFilters(adapter.getActiveFiltersCount(draftValue) > 0 ? {
19664
+ const next = adapter.getActiveFiltersCount(draftValue) > 0 ? {
19113
19665
  ...appliedFilters,
19114
19666
  [filterId]: draftValue
19115
- } : omitKey(appliedFilters, filterId));
19667
+ } : omitKey(appliedFilters, filterId);
19668
+ setAppliedFilters(next);
19116
19669
  setPendingFilters((prev) => omitKey(prev, filterId));
19117
19670
  };
19118
19671
  const cancelColumnFilter = (filterId) => {
@@ -19135,10 +19688,11 @@ function useTableFilters({ filterAdapters, baseColumns, appliedFilters: external
19135
19688
  const currentValue = appliedFilters[filterKey];
19136
19689
  if (currentValue === void 0) return;
19137
19690
  const newValue = adapter.fromChip(chip, currentValue);
19138
- setAppliedFilters(adapter.getActiveFiltersCount(newValue) === 0 ? Object.fromEntries(Object.entries(appliedFilters).filter(([key]) => key !== filterKey)) : {
19691
+ const newFilters = adapter.getActiveFiltersCount(newValue) === 0 ? Object.fromEntries(Object.entries(appliedFilters).filter(([key]) => key !== filterKey)) : {
19139
19692
  ...appliedFilters,
19140
19693
  [filterKey]: newValue
19141
- });
19694
+ };
19695
+ setAppliedFilters(newFilters);
19142
19696
  };
19143
19697
  const renderForId = (filterId) => {
19144
19698
  const adapter = _filterAdapters.find((a) => a.id === filterId);
@@ -19387,6 +19941,7 @@ var ds_table_header_module_default = {
19387
19941
  "filterActive": "-2rCNG_filterActive",
19388
19942
  "filterTriggerContainer": "-2rCNG_filterTriggerContainer",
19389
19943
  "groupStart": "-2rCNG_groupStart",
19944
+ "header": "-2rCNG_header",
19390
19945
  "headerCell": "-2rCNG_headerCell",
19391
19946
  "headerRow": "-2rCNG_headerRow",
19392
19947
  "headerRowNoBorder": "-2rCNG_headerRowNoBorder",
@@ -19396,7 +19951,6 @@ var ds_table_header_module_default = {
19396
19951
  "pageButtonIconContainer": "-2rCNG_pageButtonIconContainer",
19397
19952
  "selectHeaderCell": "-2rCNG_selectHeaderCell",
19398
19953
  "sortableHeader": "-2rCNG_sortableHeader",
19399
- "stickyHeader": "-2rCNG_stickyHeader",
19400
19954
  "virtualizedHeader": "-2rCNG_virtualizedHeader"
19401
19955
  };
19402
19956
  //#endregion
@@ -19599,7 +20153,8 @@ const getCollapsedColumnVisibility = (columns, collapsedGroupIds) => {
19599
20153
  const useColumnGroups = ({ columns, collapsedColumnGroups, onCollapsedColumnGroupsChange }) => {
19600
20154
  const [collapsed, setCollapsed] = useControlled(collapsedColumnGroups, onCollapsedColumnGroupsChange, getInitialCollapsedGroups(columns));
19601
20155
  const toggleColumnGroup = (groupId) => {
19602
- setCollapsed(collapsed.includes(groupId) ? collapsed.filter((id) => id !== groupId) : [...collapsed, groupId]);
20156
+ const next = collapsed.includes(groupId) ? collapsed.filter((id) => id !== groupId) : [...collapsed, groupId];
20157
+ setCollapsed(next);
19603
20158
  };
19604
20159
  return {
19605
20160
  collapsedColumnGroups: collapsed,
@@ -19663,9 +20218,9 @@ const DsTableGroupHeaderCell = ({ header }) => {
19663
20218
  //#endregion
19664
20219
  //#region src/components/ds-table/components/ds-table-header/ds-table-header.tsx
19665
20220
  const DsTableHeader = ({ table }) => {
19666
- const { stickyHeader, bordered, virtualized } = useDsTableContext();
20221
+ const { bordered, virtualized } = useDsTableContext();
19667
20222
  return /* @__PURE__ */ jsx(TableHeader, {
19668
- className: classNames(stickyHeader && ds_table_header_module_default.stickyHeader, virtualized && ds_table_header_module_default.virtualizedHeader),
20223
+ className: classNames(ds_table_header_module_default.header, virtualized && ds_table_header_module_default.virtualizedHeader),
19669
20224
  children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx(TableRow, {
19670
20225
  className: classNames(ds_table_header_module_default.headerRow, !bordered && ds_table_header_module_default.headerRowNoBorder, virtualized && ds_table_header_module_default.headerRowVirtualized),
19671
20226
  children: headerGroup.headers.map((header) => {
@@ -19729,6 +20284,7 @@ const DsTableHeader = ({ table }) => {
19729
20284
  var ds_table_module_default = {
19730
20285
  "bulkActionsVisible": "iL9mtW_bulkActionsVisible",
19731
20286
  "container": "iL9mtW_container",
20287
+ "controls": "iL9mtW_controls",
19732
20288
  "dataTableContainer": "iL9mtW_dataTableContainer",
19733
20289
  "emptyState": "iL9mtW_emptyState",
19734
20290
  "fullWidth": "iL9mtW_fullWidth",
@@ -19790,6 +20346,7 @@ const DsTableEditableCell = ({ cell, children }) => {
19790
20346
  })]
19791
20347
  });
19792
20348
  };
20349
+ DsTableEditableCell.displayName = "DsTableEditableCell";
19793
20350
  //#endregion
19794
20351
  //#region src/components/ds-table/components/edit/ds-table-editing-cell/ds-table-editing-cell.module.scss
19795
20352
  var ds_table_editing_cell_module_default = {
@@ -19870,6 +20427,7 @@ const DsTableEditingCell = ({ cell }) => {
19870
20427
  })
19871
20428
  });
19872
20429
  };
20430
+ DsTableEditingCell.displayName = "DsTableEditingCell";
19873
20431
  //#endregion
19874
20432
  //#region src/components/ds-table/components/ds-table-cell/ds-table-cell.module.scss
19875
20433
  var ds_table_cell_module_default = {
@@ -20360,7 +20918,7 @@ const ROW_SIZE_HEIGHT_MAP = {
20360
20918
  /**
20361
20919
  * Design system Table component
20362
20920
  */
20363
- const DsTable = ({ ref, columns: columnsProp, data: tableData, virtualized = false, virtualizedOptions, className, onRowClick, emptyState, stickyHeader = true, bordered = true, fullWidth = true, rowSize = "medium", loading = false, expandable = false, renderExpandedRow, selectable = false, showSelectAllCheckbox = true, onSelectionChange, onSortingChange, onScroll, actions = [], onRowDoubleClick, primaryRowActions = [], secondaryRowActions, reorderable = false, onOrderChange, columnFilters: externalColumnFilters, onColumnFiltersChange, columnVisibility: externalColumnVisibility, onColumnVisibilityChange, collapsedColumnGroups: externalCollapsedColumnGroups, onCollapsedColumnGroupsChange, locale, activeRowId, infiniteScroll, onCellEdit, onCellValidate }) => {
20921
+ const DsTable = ({ ref, columns: columnsProp, data: tableData, controls, virtualized = false, virtualizedOptions, className, onRowClick, emptyState, stickyHeader = true, bordered = true, fullWidth = true, rowSize = "medium", loading = false, expandable = false, renderExpandedRow, selectable = false, showSelectAllCheckbox = true, onSelectionChange, onSortingChange, onScroll, actions = [], onRowDoubleClick, primaryRowActions = [], secondaryRowActions, reorderable = false, onOrderChange, columnFilters: externalColumnFilters, onColumnFiltersChange, columnVisibility: externalColumnVisibility, onColumnVisibilityChange, collapsedColumnGroups: externalCollapsedColumnGroups, onCollapsedColumnGroupsChange, locale, activeRowId, infiniteScroll, onCellEdit, onCellValidate }) => {
20364
20922
  const [data, setData] = React$1.useState(tableData);
20365
20923
  const [sorting, setSorting] = React$1.useState([]);
20366
20924
  const [internalColumnFilters, setInternalColumnFilters] = React$1.useState([]);
@@ -20558,33 +21116,44 @@ const DsTable = ({ ref, columns: columnsProp, data: tableData, virtualized = fal
20558
21116
  return /* @__PURE__ */ jsx(DsTableContext.Provider, {
20559
21117
  value: contextValue,
20560
21118
  children: /* @__PURE__ */ jsxs("div", {
20561
- ref: tableContainerRef,
20562
- className: classNames(ds_table_module_default.container, !virtualized && ds_table_module_default.dataTableContainer, virtualized && ds_table_module_default.virtualizedContainer, isBulkActionsVisible && ds_table_module_default.bulkActionsVisible, className),
20563
- children: [/* @__PURE__ */ jsx(DragWrapper, { children: /* @__PURE__ */ jsxs(Table$1, {
20564
- className: classNames(fullWidth && ds_table_module_default.fullWidth, !bordered && ds_table_module_default.tableNoBorder),
20565
- children: [/* @__PURE__ */ jsx(DsTableHeader, { table }), virtualized ? /* @__PURE__ */ jsx(DsTableBodyVirtualized, {
20566
- table,
20567
- emptyState,
20568
- estimateSize: virtualizedOptions?.estimateSize || ROW_SIZE_HEIGHT_MAP[rowSize],
20569
- overscan: virtualizedOptions?.overscan,
20570
- onScroll,
20571
- rowSelection,
20572
- infiniteScroll
20573
- }) : /* @__PURE__ */ jsx(TableBody, { children: /* @__PURE__ */ jsx(SortableWrapper, { children: rows.length ? rows.map((row) => /* @__PURE__ */ jsx(DsTableRow, {
20574
- row,
20575
- isSelected: !!rowSelection[row.id]
20576
- }, row.id)) : renderEmptyState() }) })]
20577
- }) }), selectable && actions.length > 0 && /* @__PURE__ */ jsx(DsTableBulkActions, {
20578
- numSelectedRows: selectedRows.length,
20579
- actions: actions.map((action) => ({
20580
- ...action,
20581
- onClick: () => action.onClick(selectedRows)
20582
- })),
20583
- onClearSelection: table.resetRowSelection
20584
- })]
21119
+ className: classNames(ds_table_module_default.container, isBulkActionsVisible && ds_table_module_default.bulkActionsVisible, className),
21120
+ children: [
21121
+ controls && /* @__PURE__ */ jsx("div", {
21122
+ className: ds_table_module_default.controls,
21123
+ children: controls
21124
+ }),
21125
+ /* @__PURE__ */ jsx("div", {
21126
+ ref: tableContainerRef,
21127
+ className: classNames(!virtualized && ds_table_module_default.dataTableContainer, virtualized && ds_table_module_default.virtualizedContainer),
21128
+ children: /* @__PURE__ */ jsx(DragWrapper, { children: /* @__PURE__ */ jsxs(Table$1, {
21129
+ className: classNames(fullWidth && ds_table_module_default.fullWidth, !bordered && ds_table_module_default.tableNoBorder),
21130
+ children: [/* @__PURE__ */ jsx(DsTableHeader, { table }), virtualized ? /* @__PURE__ */ jsx(DsTableBodyVirtualized, {
21131
+ table,
21132
+ emptyState,
21133
+ estimateSize: virtualizedOptions?.estimateSize || ROW_SIZE_HEIGHT_MAP[rowSize],
21134
+ overscan: virtualizedOptions?.overscan,
21135
+ onScroll,
21136
+ rowSelection,
21137
+ infiniteScroll
21138
+ }) : /* @__PURE__ */ jsx(TableBody, { children: /* @__PURE__ */ jsx(SortableWrapper, { children: rows.length ? rows.map((row) => /* @__PURE__ */ jsx(DsTableRow, {
21139
+ row,
21140
+ isSelected: !!rowSelection[row.id]
21141
+ }, row.id)) : renderEmptyState() }) })]
21142
+ }) })
21143
+ }),
21144
+ selectable && actions.length > 0 && /* @__PURE__ */ jsx(DsTableBulkActions, {
21145
+ numSelectedRows: selectedRows.length,
21146
+ actions: actions.map((action) => ({
21147
+ ...action,
21148
+ onClick: () => action.onClick(selectedRows)
21149
+ })),
21150
+ onClearSelection: table.resetRowSelection
21151
+ })
21152
+ ]
20585
21153
  })
20586
21154
  });
20587
21155
  };
21156
+ DsTable.displayName = "DsTable";
20588
21157
  //#endregion
20589
21158
  //#region src/components/ds-table/hooks/use-cell-editor.ts
20590
21159
  /**
@@ -20669,6 +21238,7 @@ const DsTableEditCellText = ({ cellContext, placeholder, maxLength }) => {
20669
21238
  })
20670
21239
  });
20671
21240
  };
21241
+ DsTableEditCellText.displayName = "DsTableEditCellText";
20672
21242
  //#endregion
20673
21243
  //#region src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-number.tsx
20674
21244
  /** Number input editor for table cells. Render via `ColumnDef.editCell`. */
@@ -20695,6 +21265,7 @@ const DsTableEditCellNumber = ({ cellContext, min, max, step }) => {
20695
21265
  })
20696
21266
  });
20697
21267
  };
21268
+ DsTableEditCellNumber.displayName = "DsTableEditCellNumber";
20698
21269
  //#endregion
20699
21270
  //#region src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-select.tsx
20700
21271
  /** Select editor for table cells. Render via `ColumnDef.editCell`. */
@@ -20712,6 +21283,7 @@ const DsTableEditCellSelect = ({ cellContext, options, placeholder }) => {
20712
21283
  })
20713
21284
  });
20714
21285
  };
21286
+ DsTableEditCellSelect.displayName = "DsTableEditCellSelect";
20715
21287
  //#endregion
20716
21288
  //#region src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-date.tsx
20717
21289
  /** Date picker editor for table cells. Render via `ColumnDef.editCell`. */
@@ -20734,6 +21306,7 @@ const DsTableEditCellDate = ({ cellContext, min, max, placeholder }) => {
20734
21306
  })
20735
21307
  });
20736
21308
  };
21309
+ DsTableEditCellDate.displayName = "DsTableEditCellDate";
20737
21310
  //#endregion
20738
21311
  //#region src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-checkbox.tsx
20739
21312
  /** Checkbox editor for table cells. Render via `ColumnDef.editCell`. */
@@ -20745,6 +21318,7 @@ const DsTableEditCellCheckbox = ({ cellContext, disabled }) => {
20745
21318
  onCheckedChange: (checked) => setValue(checked === true)
20746
21319
  });
20747
21320
  };
21321
+ DsTableEditCellCheckbox.displayName = "DsTableEditCellCheckbox";
20748
21322
  //#endregion
20749
21323
  //#region src/components/ds-toast/ds-toast.module.scss
20750
21324
  var ds_toast_module_default = {
@@ -20870,6 +21444,8 @@ const DsToastGroup = (t0) => {
20870
21444
  } else t1 = $[1];
20871
21445
  return t1;
20872
21446
  };
21447
+ DsToast.displayName = "DsToast";
21448
+ DsToastGroup.displayName = "DsToastGroup";
20873
21449
  function _temp(toast) {
20874
21450
  return /* @__PURE__ */ jsx(DsToast, { ...toast });
20875
21451
  }
@@ -20948,6 +21524,7 @@ const useToaster = () => {
20948
21524
  if (!context) throw new Error("useToast must be used within a ToastProvider");
20949
21525
  return context;
20950
21526
  };
21527
+ DsToastProvider.displayName = "DsToastProvider";
20951
21528
  //#endregion
20952
21529
  //#region src/components/ds-toggle/ds-toggle.module.scss
20953
21530
  var ds_toggle_module_default = {
@@ -21135,6 +21712,7 @@ const DsToggle = (t0) => {
21135
21712
  } else t15 = $[47];
21136
21713
  return t15;
21137
21714
  };
21715
+ DsToggle.displayName = "DsToggle";
21138
21716
  //#endregion
21139
21717
  //#region src/components/ds-tree/ds-tree.module.scss
21140
21718
  var ds_tree_module_default = {
@@ -21160,8 +21738,8 @@ var ds_tree_module_default = {
21160
21738
  //#endregion
21161
21739
  //#region src/components/ds-tree/ds-tree.tsx
21162
21740
  const DsTreeRoot = (t0) => {
21163
- const $ = c(23);
21164
- const { collection, size: t1, ref, className, style, children, selectedValue, defaultSelectedValue, onSelectionChange, selectionMode: t2, expandedValue, defaultExpandedValue, onExpandedChange, expandOnClick: t3, checkedValue, defaultCheckedValue, onCheckedChange, typeahead: t4, lazyMount: t5, unmountOnExit } = t0;
21741
+ const $ = c(26);
21742
+ const { collection, size: t1, ref, className, style, children, selectedValue, defaultSelectedValue, onSelectionChange, selectionMode: t2, expandedValue, defaultExpandedValue, onExpandedChange, expandOnClick: t3, checkedValue, defaultCheckedValue, onCheckedChange, focusedValue, defaultFocusedValue, onFocusChange, typeahead: t4, lazyMount: t5, unmountOnExit } = t0;
21165
21743
  const size = t1 === void 0 ? "medium" : t1;
21166
21744
  const selectionMode = t2 === void 0 ? "single" : t2;
21167
21745
  const expandOnClick = t3 === void 0 ? true : t3;
@@ -21174,7 +21752,7 @@ const DsTreeRoot = (t0) => {
21174
21752
  $[1] = t6;
21175
21753
  } else t6 = $[1];
21176
21754
  let t7;
21177
- if ($[2] !== checkedValue || $[3] !== children || $[4] !== collection || $[5] !== defaultCheckedValue || $[6] !== defaultExpandedValue || $[7] !== defaultSelectedValue || $[8] !== expandOnClick || $[9] !== expandedValue || $[10] !== lazyMount || $[11] !== onCheckedChange || $[12] !== onExpandedChange || $[13] !== onSelectionChange || $[14] !== ref || $[15] !== selectedValue || $[16] !== selectionMode || $[17] !== size || $[18] !== style || $[19] !== t6 || $[20] !== typeahead || $[21] !== unmountOnExit) {
21755
+ if ($[2] !== checkedValue || $[3] !== children || $[4] !== collection || $[5] !== defaultCheckedValue || $[6] !== defaultExpandedValue || $[7] !== defaultFocusedValue || $[8] !== defaultSelectedValue || $[9] !== expandOnClick || $[10] !== expandedValue || $[11] !== focusedValue || $[12] !== lazyMount || $[13] !== onCheckedChange || $[14] !== onExpandedChange || $[15] !== onFocusChange || $[16] !== onSelectionChange || $[17] !== ref || $[18] !== selectedValue || $[19] !== selectionMode || $[20] !== size || $[21] !== style || $[22] !== t6 || $[23] !== typeahead || $[24] !== unmountOnExit) {
21178
21756
  t7 = /* @__PURE__ */ jsx(TreeView.Root, {
21179
21757
  ref,
21180
21758
  collection,
@@ -21189,6 +21767,9 @@ const DsTreeRoot = (t0) => {
21189
21767
  checkedValue,
21190
21768
  defaultCheckedValue,
21191
21769
  onCheckedChange,
21770
+ focusedValue,
21771
+ defaultFocusedValue,
21772
+ onFocusChange,
21192
21773
  typeahead,
21193
21774
  lazyMount,
21194
21775
  unmountOnExit,
@@ -21202,23 +21783,26 @@ const DsTreeRoot = (t0) => {
21202
21783
  $[4] = collection;
21203
21784
  $[5] = defaultCheckedValue;
21204
21785
  $[6] = defaultExpandedValue;
21205
- $[7] = defaultSelectedValue;
21206
- $[8] = expandOnClick;
21207
- $[9] = expandedValue;
21208
- $[10] = lazyMount;
21209
- $[11] = onCheckedChange;
21210
- $[12] = onExpandedChange;
21211
- $[13] = onSelectionChange;
21212
- $[14] = ref;
21213
- $[15] = selectedValue;
21214
- $[16] = selectionMode;
21215
- $[17] = size;
21216
- $[18] = style;
21217
- $[19] = t6;
21218
- $[20] = typeahead;
21219
- $[21] = unmountOnExit;
21220
- $[22] = t7;
21221
- } else t7 = $[22];
21786
+ $[7] = defaultFocusedValue;
21787
+ $[8] = defaultSelectedValue;
21788
+ $[9] = expandOnClick;
21789
+ $[10] = expandedValue;
21790
+ $[11] = focusedValue;
21791
+ $[12] = lazyMount;
21792
+ $[13] = onCheckedChange;
21793
+ $[14] = onExpandedChange;
21794
+ $[15] = onFocusChange;
21795
+ $[16] = onSelectionChange;
21796
+ $[17] = ref;
21797
+ $[18] = selectedValue;
21798
+ $[19] = selectionMode;
21799
+ $[20] = size;
21800
+ $[21] = style;
21801
+ $[22] = t6;
21802
+ $[23] = typeahead;
21803
+ $[24] = unmountOnExit;
21804
+ $[25] = t7;
21805
+ } else t7 = $[25];
21222
21806
  return t7;
21223
21807
  };
21224
21808
  const DsTreeTree = (t0) => {
@@ -21543,6 +22127,21 @@ const DsTreeItemAction = (t0) => {
21543
22127
  } else t3 = $[8];
21544
22128
  return t3;
21545
22129
  };
22130
+ DsTreeRoot.displayName = "DsTree.Root";
22131
+ DsTreeTree.displayName = "DsTree.Tree";
22132
+ Object.defineProperty(TreeView.NodeProvider, "displayName", { value: "DsTree.NodeProvider" });
22133
+ Object.defineProperty(TreeView.NodeContext, "displayName", { value: "DsTree.NodeContext" });
22134
+ DsTreeBranch.displayName = "DsTree.Branch";
22135
+ DsTreeBranchControl.displayName = "DsTree.BranchControl";
22136
+ DsTreeBranchIndicator.displayName = "DsTree.BranchIndicator";
22137
+ DsTreeBranchText.displayName = "DsTree.BranchText";
22138
+ DsTreeBranchContent.displayName = "DsTree.BranchContent";
22139
+ DsTreeBranchIndentGuide.displayName = "DsTree.BranchIndentGuide";
22140
+ DsTreeItem.displayName = "DsTree.Item";
22141
+ DsTreeItemText.displayName = "DsTree.ItemText";
22142
+ DsTreeItemIndicator.displayName = "DsTree.ItemIndicator";
22143
+ DsTreeItemAction.displayName = "DsTree.ItemAction";
22144
+ DsTreeNodeCheckbox.displayName = "DsTree.NodeCheckbox";
21546
22145
  const DsTree = {
21547
22146
  Root: DsTreeRoot,
21548
22147
  Tree: DsTreeTree,
@@ -21572,6 +22171,90 @@ const createDsTreeCollection = (nodes) => createTreeCollection({
21572
22171
  }
21573
22172
  });
21574
22173
  //#endregion
22174
+ //#region src/components/ds-user-card/ds-user-card.module.scss
22175
+ var ds_user_card_module_default = {
22176
+ "name": "rM_jtW_name",
22177
+ "subtitle": "rM_jtW_subtitle",
22178
+ "text": "rM_jtW_text",
22179
+ "userCard": "rM_jtW_userCard"
22180
+ };
22181
+ //#endregion
22182
+ //#region src/components/ds-user-card/ds-user-card.tsx
22183
+ /**
22184
+ * @summary Compact identity header pairing an avatar with a name and optional subtitle.
22185
+ *
22186
+ * Presentational card used as the header of a user menu. Renders a medium
22187
+ * `DsAvatar` (initials fallback derived from `name`) beside a two-line text
22188
+ * block; both lines truncate with an ellipsis when they overflow.
22189
+ */
22190
+ const DsUserCard = (t0) => {
22191
+ const $ = c(17);
22192
+ const { name, subtitle, src, className, style } = t0;
22193
+ let t1;
22194
+ if ($[0] !== className) {
22195
+ t1 = classNames(ds_user_card_module_default.userCard, className);
22196
+ $[0] = className;
22197
+ $[1] = t1;
22198
+ } else t1 = $[1];
22199
+ let t2;
22200
+ if ($[2] !== name || $[3] !== src) {
22201
+ t2 = /* @__PURE__ */ jsx(DsAvatar, {
22202
+ name,
22203
+ src,
22204
+ size: "md"
22205
+ });
22206
+ $[2] = name;
22207
+ $[3] = src;
22208
+ $[4] = t2;
22209
+ } else t2 = $[4];
22210
+ let t3;
22211
+ if ($[5] !== name) {
22212
+ t3 = /* @__PURE__ */ jsx(DsTypography, {
22213
+ variant: "heading4",
22214
+ color: "main",
22215
+ className: ds_user_card_module_default.name,
22216
+ children: name
22217
+ });
22218
+ $[5] = name;
22219
+ $[6] = t3;
22220
+ } else t3 = $[6];
22221
+ let t4;
22222
+ if ($[7] !== subtitle) {
22223
+ t4 = subtitle && /* @__PURE__ */ jsx(DsTypography, {
22224
+ variant: "body-xs-reg",
22225
+ color: "secondary",
22226
+ className: ds_user_card_module_default.subtitle,
22227
+ children: subtitle
22228
+ });
22229
+ $[7] = subtitle;
22230
+ $[8] = t4;
22231
+ } else t4 = $[8];
22232
+ let t5;
22233
+ if ($[9] !== t3 || $[10] !== t4) {
22234
+ t5 = /* @__PURE__ */ jsxs("div", {
22235
+ className: ds_user_card_module_default.text,
22236
+ children: [t3, t4]
22237
+ });
22238
+ $[9] = t3;
22239
+ $[10] = t4;
22240
+ $[11] = t5;
22241
+ } else t5 = $[11];
22242
+ let t6;
22243
+ if ($[12] !== style || $[13] !== t1 || $[14] !== t2 || $[15] !== t5) {
22244
+ t6 = /* @__PURE__ */ jsxs("div", {
22245
+ className: t1,
22246
+ style,
22247
+ children: [t2, t5]
22248
+ });
22249
+ $[12] = style;
22250
+ $[13] = t1;
22251
+ $[14] = t2;
22252
+ $[15] = t5;
22253
+ $[16] = t6;
22254
+ } else t6 = $[16];
22255
+ return t6;
22256
+ };
22257
+ //#endregion
21575
22258
  //#region src/components/ds-vertical-tabs/ds-vertical-tabs.module.scss
21576
22259
  var ds_vertical_tabs_module_default = {
21577
22260
  "selected": "xVkVWa_selected",
@@ -21598,7 +22281,7 @@ var ds_vertical_tabs_module_default = {
21598
22281
  * </DsVerticalTabs>
21599
22282
  * ```
21600
22283
  */
21601
- const DsVerticalTabs = (t0) => {
22284
+ const DsVerticalTabsRoot = (t0) => {
21602
22285
  const $ = c(8);
21603
22286
  const { value, onValueChange, className, style, children } = t0;
21604
22287
  let t1;
@@ -21701,9 +22384,15 @@ const DsVerticalTabsContent = (t0) => {
21701
22384
  } else t1 = $[3];
21702
22385
  return t1;
21703
22386
  };
21704
- DsVerticalTabs.List = DsVerticalTabsList;
21705
- DsVerticalTabs.Tab = DsVerticalTabsTab;
21706
- DsVerticalTabs.Content = DsVerticalTabsContent;
22387
+ DsVerticalTabsList.displayName = "DsVerticalTabs.List";
22388
+ DsVerticalTabsTab.displayName = "DsVerticalTabs.Tab";
22389
+ DsVerticalTabsContent.displayName = "DsVerticalTabs.Content";
22390
+ const DsVerticalTabs = Object.assign(DsVerticalTabsRoot, {
22391
+ displayName: "DsVerticalTabs",
22392
+ List: DsVerticalTabsList,
22393
+ Tab: DsVerticalTabsTab,
22394
+ Content: DsVerticalTabsContent
22395
+ });
21707
22396
  //#endregion
21708
22397
  //#region src/components/ds-workspace-layout/ds-workspace-layout.module.scss
21709
22398
  var ds_workspace_layout_module_default = {
@@ -21734,7 +22423,7 @@ const DEFAULT_LOCALE = Object.freeze({
21734
22423
  pinButtonLabel: "Pin side menu",
21735
22424
  unpinButtonLabel: "Unpin side menu"
21736
22425
  });
21737
- const DsWorkspaceLayout = (t0) => {
22426
+ const DsWorkspaceLayoutRoot = (t0) => {
21738
22427
  const $ = c(17);
21739
22428
  let className;
21740
22429
  let rest;
@@ -22120,14 +22809,24 @@ const LeftPanel = (t0) => {
22120
22809
  } else t4 = $[11];
22121
22810
  return t4;
22122
22811
  };
22123
- DsWorkspaceLayout.Header = Header;
22124
- DsWorkspaceLayout.SubHeader = SubHeader;
22125
- DsWorkspaceLayout.Content = Content;
22126
- DsWorkspaceLayout.Footer = Footer;
22127
- DsWorkspaceLayout.Body = Body;
22128
- DsWorkspaceLayout.SideMenu = SideMenu;
22129
- DsWorkspaceLayout.LeftPanel = LeftPanel;
22812
+ Header.displayName = "DsWorkspaceLayout.Header";
22813
+ SubHeader.displayName = "DsWorkspaceLayout.SubHeader";
22814
+ Content.displayName = "DsWorkspaceLayout.Content";
22815
+ Footer.displayName = "DsWorkspaceLayout.Footer";
22816
+ Body.displayName = "DsWorkspaceLayout.Body";
22817
+ SideMenu.displayName = "DsWorkspaceLayout.SideMenu";
22818
+ LeftPanel.displayName = "DsWorkspaceLayout.LeftPanel";
22819
+ const DsWorkspaceLayout = Object.assign(DsWorkspaceLayoutRoot, {
22820
+ displayName: "DsWorkspaceLayout",
22821
+ Header,
22822
+ SubHeader,
22823
+ Content,
22824
+ Footer,
22825
+ Body,
22826
+ SideMenu,
22827
+ LeftPanel
22828
+ });
22130
22829
  //#endregion
22131
- export { BREAKPOINT_LG, DsAlertBanner, DsAutocomplete, DsAvatar, DsAvatarGroup, DsBreadcrumb, DsButton, DsButtonV3, DsCard, DsCatalogLayout, DsCheckbox, DsCheckboxGroup, DsChip, DsChipGroup, DsCommentBubble, DsCommentCard, DsCommentIndicator, DsCommentThread, DsCommentsDrawer, DsConfirmation, DsDateInput, DsDatePicker, DsDateRangePicker, DsDialog, DsDivider, DsDrawer, DsDropdownMenu, DsDropdownMenuLegacy, DsExpandableTextInput, DsFileUpload, DsFilterStatusIcon, DsFormControl, DsGrid, DsGridItem, DsIcon, DsKeyValuePair, DsLoader, DsModal, DsNextStepButton, DsNumberInput, DsPanel, DsPasswordInput, DsPopover, DsProgressArc, DsProgressDonut, DsProgressLinear, DsProgressTaskBar, DsRadioGroup, DsRadioGroupLegacy, DsSegmentGroup, DsSelect, ds_skeleton_default as DsSkeleton, DsSkeletonCircle, DsSkeletonRect, DsSkeletonText, DsSmartTabs, DsSpinner, DsSplitButton, DsStack, DsStatusBadge, DsStatusBadgeV2, DsStep, DsStepContent, DsStepper, DsSystemStatus, DsTable, DsTableColumnFilterPopover, DsTableEditCellCheckbox, DsTableEditCellDate, DsTableEditCellNumber, DsTableEditCellSelect, DsTableEditCellText, DsTableEditableCell, DsTableEditingCell, DsTabs, DsTag, DsTagFilter, DsTextInput, DsTextarea, DsThreadItem, DsTimePicker, DsToastProvider, DsToggle, DsTooltip, DsTree, DsTypography, DsVerticalTabs, DsWorkspaceLayout, FatalFileUploadError, FileUpload, FileUploadError, RetryableFileUploadError, alertBannerVariants, breakpoints, buttonV3Colors, buttonV3Sizes, buttonV3Variants, cardSizes, checkboxVariants, colors, controlStatuses, createCheckboxFilterAdapter, createDsTreeCollection, createDualRangeFilterAdapter, createFilterAdapter, customIcons, defaultDsTableLocale, dropdownMenuItemVariants, dsKeyValuePairOrientations, filterStatuses, formatTime, iconColors, iconSizes, iconVariants, isCustomIcon, isResponsiveValue, loaderVariants, popoverAligns, popoverSides, progressArcSizes, progressArcVariants, progressDonutSizes, progressDonutVariants, progressLinearSizes, progressLinearVariants, resolveResponsiveValue, skeletonColorVariants, skeletonRadiusVariants, spinnerSizes, splitButtonSizes, statusBadgeV2Phases, statusBadgeV2Sizes, statusBadgeV2Variants, systemStatuses, tagSizes, tagVariants, taskBarStatuses, textInputSizes, useBreakpoint, useCellEditor, useCheckboxSelectAll, useFileUpload, useResponsiveValue, useTableFilters, useToaster, withResponsiveProps };
22830
+ export { BREAKPOINT_LG, DsAlertBanner, DsAutocomplete, DsAvatar, DsAvatarGroup, DsBreadcrumb, DsButton, DsButtonV3, DsCard, DsCatalogLayout, DsCheckbox, DsCheckboxGroup, DsChip, DsChipGroup, DsCommentBubble, DsCommentCard, DsCommentIndicator, DsCommentThread, DsCommentsDrawer, DsConfirmation, DsDateInput, DsDatePicker, DsDateRangePicker, DsDialog, DsDivider, DsDrawer, DsDropdownMenu, DsDropdownMenuLegacy, DsExpandableTextInput, DsFileUpload, DsFilterStatusIcon, DsFormControl, DsGrid, DsGridItem, DsIcon, DsKeyValuePair, DsLoader, DsModal, DsNextStepButton, DsNumberInput, DsPanel, DsPasswordInput, DsPopover, DsProgressArc, DsProgressDonut, DsProgressLinear, DsProgressTaskBar, DsRadioGroup, DsRadioGroupLegacy, DsSegmentGroup, DsSelect, DsSiteNode, DsSkeleton, DsSkeletonCircle, DsSkeletonRect, DsSkeletonText, DsSmartTabs, DsSpinner, DsSplitButton, DsStack, DsStatusBadge, DsStatusBadgeV2, DsStep, DsStepContent, DsStepper, DsSystemStatus, DsTable, DsTableColumnFilterPopover, DsTableEditCellCheckbox, DsTableEditCellDate, DsTableEditCellNumber, DsTableEditCellSelect, DsTableEditCellText, DsTableEditableCell, DsTableEditingCell, DsTabs, DsTag, DsTagFilter, DsTextInput, DsTextarea, DsThreadItem, DsTimePicker, DsToastProvider, DsToggle, DsTooltip, DsTree, DsTypography, DsUserCard, DsVerticalTabs, DsWorkspaceLayout, FatalFileUploadError, FileUpload, FileUploadError, RetryableFileUploadError, alertBannerVariants, breakpoints, buttonV3Colors, buttonV3Sizes, buttonV3Variants, cardSizes, checkboxVariants, colors, controlStatuses, createCheckboxFilterAdapter, createColumnHelper, createDsTreeCollection, createDualRangeFilterAdapter, createFilterAdapter, customIcons, defaultDsTableLocale, dropdownMenuActionsAlignments, dropdownMenuItemVariants, dsAvatarSizes, dsAvatarTypes, dsKeyValuePairOrientations, filterStatuses, formatTime, iconColors, iconSizes, iconVariants, isCustomIcon, isResponsiveValue, loaderVariants, popoverAligns, popoverSides, progressArcSizes, progressArcVariants, progressDonutSizes, progressDonutVariants, progressLinearSizes, progressLinearVariants, resolveResponsiveValue, siteNodeStates, skeletonColorVariants, skeletonRadiusVariants, spinnerSizes, splitButtonSizes, statusBadgeV2Phases, statusBadgeV2Sizes, statusBadgeV2Variants, systemStatuses, tagSizes, tagVariants, taskBarStatuses, textInputSizes, tooltipPlacements, useBreakpoint, useCellEditor, useCheckboxSelectAll, useFileUpload, useResponsiveValue, useTableFilters, useToaster, withResponsiveProps };
22132
22831
 
22133
22832
  //# sourceMappingURL=index.js.map