@ultraviolet/ui 3.7.1 → 3.8.1

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 (124) hide show
  1. package/dist/components/Alert/styles.css.d.ts +1 -1
  2. package/dist/components/Avatar/index.d.ts.map +1 -1
  3. package/dist/components/Avatar/index.js +45 -41
  4. package/dist/components/Avatar/styles.css.js +1 -0
  5. package/dist/components/Avatar/variables.css.js +0 -1
  6. package/dist/components/Banner/index.d.ts.map +1 -1
  7. package/dist/components/Banner/index.js +1 -1
  8. package/dist/components/Banner/styles.css.d.ts +1 -1
  9. package/dist/components/BarStack/styles.css.js +1 -1
  10. package/dist/components/Button/index.d.ts +41 -22
  11. package/dist/components/Button/index.d.ts.map +1 -1
  12. package/dist/components/Button/index.js +18 -10
  13. package/dist/components/Checkbox/index.d.ts +1 -1
  14. package/dist/components/Checkbox/index.d.ts.map +1 -1
  15. package/dist/components/Checkbox/index.js +44 -38
  16. package/dist/components/Checkbox/styles.css.js +0 -1
  17. package/dist/components/Chip/index.d.ts +1 -1
  18. package/dist/components/DateInput/helpersLocale.d.ts.map +1 -1
  19. package/dist/components/DateInput/helpersLocale.js +8 -5
  20. package/dist/components/Dialog/constants.d.ts +1 -1
  21. package/dist/components/Dialog/index.d.ts +20 -5
  22. package/dist/components/Dialog/index.d.ts.map +1 -1
  23. package/dist/components/Drawer/styles.css.d.ts +1 -1
  24. package/dist/components/EmptyState/index.d.ts.map +1 -1
  25. package/dist/components/EmptyState/index.js +10 -1
  26. package/dist/components/EmptyState/styles.css.d.ts +1 -1
  27. package/dist/components/EmptyState/styles.css.d.ts.map +1 -1
  28. package/dist/components/ExpandableCard/index.d.ts.map +1 -1
  29. package/dist/components/ExpandableCard/index.js +28 -20
  30. package/dist/components/FileInput/components/List.d.ts.map +1 -1
  31. package/dist/components/FileInput/components/List.js +15 -2
  32. package/dist/components/FileInput/index.d.ts.map +1 -1
  33. package/dist/components/GlobalAlert/GlobalAlertLink.d.ts +3 -1
  34. package/dist/components/GlobalAlert/GlobalAlertLink.d.ts.map +1 -1
  35. package/dist/components/GlobalAlert/index.d.ts +61 -1
  36. package/dist/components/GlobalAlert/index.d.ts.map +1 -1
  37. package/dist/components/Link/index.d.ts +23 -2
  38. package/dist/components/Link/index.d.ts.map +1 -1
  39. package/dist/components/Link/index.js +26 -14
  40. package/dist/components/List/HeaderCell.d.ts.map +1 -1
  41. package/dist/components/List/HeaderCell.js +3 -1
  42. package/dist/components/List/ListContext.d.ts.map +1 -1
  43. package/dist/components/List/ListContext.js +3 -1
  44. package/dist/components/List/Row.d.ts.map +1 -1
  45. package/dist/components/List/Row.js +14 -5
  46. package/dist/components/List/SkeletonRows.d.ts.map +1 -1
  47. package/dist/components/List/SkeletonRows.js +0 -1
  48. package/dist/components/List/styles.css.d.ts +1 -0
  49. package/dist/components/List/styles.css.d.ts.map +1 -1
  50. package/dist/components/List/styles.css.js +4 -1
  51. package/dist/components/List/variables.css.js +1 -1
  52. package/dist/components/Menu/helpers.d.ts +1 -1
  53. package/dist/components/Menu/index.d.ts +1 -1
  54. package/dist/components/Meter/index.d.ts.map +1 -1
  55. package/dist/components/Meter/index.js +43 -40
  56. package/dist/components/Modal/components/Dialog.d.ts.map +1 -1
  57. package/dist/components/Modal/components/Dialog.js +10 -1
  58. package/dist/components/NumberInput/styles.css.d.ts +1 -1
  59. package/dist/components/Pagination/styles.css.d.ts +2 -2
  60. package/dist/components/Popup/styles.css.js +0 -1
  61. package/dist/components/Popup/variables.css.js +1 -0
  62. package/dist/components/ProgressBar/styles.css.d.ts +1 -1
  63. package/dist/components/ProgressBar/styles.css.js +0 -1
  64. package/dist/components/ProgressBar/variables.css.js +1 -0
  65. package/dist/components/Radio/index.js +22 -22
  66. package/dist/components/Row/styles.css.d.ts +44 -44
  67. package/dist/components/SelectInput/components/Dropdown.d.ts.map +1 -1
  68. package/dist/components/SelectInput/components/Dropdown.js +52 -56
  69. package/dist/components/SelectInput/components/selectBar.css.d.ts +1 -1
  70. package/dist/components/SelectableCard/IllustrationContainer.d.ts +8 -0
  71. package/dist/components/SelectableCard/IllustrationContainer.d.ts.map +1 -0
  72. package/dist/components/SelectableCard/IllustrationContainer.js +66 -0
  73. package/dist/components/SelectableCard/MultiStateInput.d.ts +3 -0
  74. package/dist/components/SelectableCard/MultiStateInput.d.ts.map +1 -0
  75. package/dist/components/SelectableCard/MultiStateInput.js +94 -0
  76. package/dist/components/SelectableCard/SelectableCard.d.ts +7 -0
  77. package/dist/components/SelectableCard/SelectableCard.d.ts.map +1 -0
  78. package/dist/components/SelectableCard/SelectableCard.js +165 -0
  79. package/dist/components/SelectableCard/index.d.ts +1 -33
  80. package/dist/components/SelectableCard/index.d.ts.map +1 -1
  81. package/dist/components/SelectableCard/types.d.ts +32 -0
  82. package/dist/components/SelectableCard/types.d.ts.map +1 -0
  83. package/dist/components/SelectableCardGroup/index.js +1 -1
  84. package/dist/components/SelectableCardOptionGroup/components/Option.js +1 -1
  85. package/dist/components/Separator/index.d.ts.map +1 -1
  86. package/dist/components/Separator/index.js +1 -0
  87. package/dist/components/Skeleton/Donut.d.ts.map +1 -1
  88. package/dist/components/Skeleton/Donut.js +12 -9
  89. package/dist/components/Slider/styles.css.d.ts +1 -1
  90. package/dist/components/Stack/styles.css.d.ts +46 -46
  91. package/dist/components/Stepper/styles.css.d.ts +1 -1
  92. package/dist/components/SwitchButton/Option.js +1 -1
  93. package/dist/components/SwitchButton/index.d.ts.map +1 -1
  94. package/dist/components/SwitchButton/index.js +7 -4
  95. package/dist/components/SwitchButton/styles.css.d.ts +2 -2
  96. package/dist/components/SwitchButton/styles.css.d.ts.map +1 -1
  97. package/dist/components/Table/HeaderRow.d.ts.map +1 -1
  98. package/dist/components/Table/HeaderRow.js +22 -25
  99. package/dist/components/Table/SkeletonRows.d.ts.map +1 -1
  100. package/dist/components/Table/SkeletonRows.js +4 -13
  101. package/dist/components/Tabs/index.d.ts +2 -2
  102. package/dist/components/TextInput/index.d.ts.map +1 -1
  103. package/dist/components/TextInput/index.js +6 -1
  104. package/dist/components/TextInput/styles.css.d.ts +1 -1
  105. package/dist/components/TextInput/styles.css.d.ts.map +1 -1
  106. package/dist/components/Toggle/index.d.ts +2 -7
  107. package/dist/components/Toggle/index.d.ts.map +1 -1
  108. package/dist/components/Toggle/index.js +13 -1
  109. package/dist/components/Tooltip/index.d.ts +1 -1
  110. package/dist/components/UnitInput/index.d.ts.map +1 -1
  111. package/dist/components/UnitInput/index.js +2 -1
  112. package/dist/components/UnitInput/styles.css.d.ts +2 -2
  113. package/dist/components/VerificationCode/styles.css.d.ts +1 -1
  114. package/dist/components/compositions/OptionSelector/__mock__/resources.d.ts.map +1 -1
  115. package/dist/components/compositions/OptionSelector/index.js +1 -1
  116. package/dist/index.js +3 -2
  117. package/dist/theme/ThemeProvider.d.ts.map +1 -1
  118. package/dist/theme/ThemeProvider.js +46 -4
  119. package/dist/theme/index.d.ts +3 -2
  120. package/dist/theme/index.d.ts.map +1 -1
  121. package/dist/theme/index.js +1 -2
  122. package/dist/ui.css +1 -1
  123. package/package.json +3 -3
  124. package/dist/components/SelectableCard/index.js +0 -232
@@ -33,7 +33,16 @@ const EmptyState = ({
33
33
  justifyContent: "center",
34
34
  children: [
35
35
  /* @__PURE__ */ jsxs(Stack, { alignItems: "center", gap: 2, justifyContent: "center", children: [
36
- image && typeof image === "string" ? /* @__PURE__ */ jsx("img", { alt: "", className: emptyStateImage[size], src: image }) : image,
36
+ image && typeof image === "string" ? /* @__PURE__ */ jsx(
37
+ "img",
38
+ {
39
+ alt: "",
40
+ className: emptyStateImage[size],
41
+ height: "auto",
42
+ src: image,
43
+ width: "auto"
44
+ }
45
+ ) : image,
37
46
  /* @__PURE__ */ jsxs(Stack, { alignItems: "center", gap: 0.5, children: [
38
47
  title ? /* @__PURE__ */ jsx(
39
48
  Text,
@@ -25,6 +25,6 @@ export declare const emptyStateContainer: import("@vanilla-extract/recipes").Run
25
25
  };
26
26
  }>;
27
27
  export declare const paddedStack: string;
28
- export declare const emptyStateImage: Record<"large" | "medium" | "small", string>;
28
+ export declare const emptyStateImage: Record<"small" | "large" | "medium", string>;
29
29
  export {};
30
30
  //# sourceMappingURL=styles.css.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.css.d.ts","sourceRoot":"","sources":["../../../src/components/EmptyState/styles.css.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,eAAe;;;;CAIX,CAAA;AAQV,MAAM,MAAM,UAAU,GAAG,MAAM,OAAO,eAAe,CAAA;AAErD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;EAuB9B,CAAA;AAEF,eAAO,MAAM,WAAW,QAAqC,CAAA;AAS7D,eAAO,MAAM,eAAe,8CAI1B,CAAA"}
1
+ {"version":3,"file":"styles.css.d.ts","sourceRoot":"","sources":["../../../src/components/EmptyState/styles.css.ts"],"names":[],"mappings":"AAIA,QAAA,MAAM,eAAe;;;;CAIX,CAAA;AAQV,MAAM,MAAM,UAAU,GAAG,MAAM,OAAO,eAAe,CAAA;AAErD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;EAwB9B,CAAA;AAEF,eAAO,MAAM,WAAW,QAAqC,CAAA;AAS7D,eAAO,MAAM,eAAe,8CAI1B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ExpandableCard/index.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,aAAa,EACb,qBAAqB,EAGrB,aAAa,EACb,SAAS,EACV,MAAM,OAAO,CAAA;AAMd,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAYvD,KAAK,kBAAkB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAA;AAE/D,KAAK,cAAc,GACf;IACE,SAAS,EAAE,IAAI,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACrD;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,KAAK,IAAI,CAAA;CAC3D,GACD;IACE,SAAS,CAAC,EAAE,KAAK,CAAA;IACjB,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,gBAAgB,CAAC,EAAE,KAAK,CAAA;IACxB,MAAM,CAAC,EAAE,KAAK,CAAA;IACd,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,SAAS,CAAC,EAAE,KAAK,CAAA;CAClB,CAAA;AACL,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,SAAS,CAAA;IACjB,IAAI,CAAC,EAAE,kBAAkB,CAAA;IACzB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,SAAS,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,uCAAuC;IACvC,IAAI,CAAC,EAAE,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAA;IACxD,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB,GAAG,cAAc,CAAA;AA4NlB,eAAO,MAAM,cAAc;;;;cAzNE,OAAO;oBAAkB,MAAM,IAAI;;;CA2N9D,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ExpandableCard/index.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,aAAa,EACb,qBAAqB,EAGrB,aAAa,EACb,SAAS,EACV,MAAM,OAAO,CAAA;AAMd,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAYvD,KAAK,kBAAkB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAA;AAE/D,KAAK,cAAc,GACf;IACE,SAAS,EAAE,IAAI,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACrD;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,cAAc,CAAC,KAAK,IAAI,CAAA;CAC3D,GACD;IACE,SAAS,CAAC,EAAE,KAAK,CAAA;IACjB,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,gBAAgB,CAAC,EAAE,KAAK,CAAA;IACxB,MAAM,CAAC,EAAE,KAAK,CAAA;IACd,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,SAAS,CAAC,EAAE,KAAK,CAAA;CAClB,CAAA;AACL,KAAK,WAAW,GAAG;IACjB,MAAM,EAAE,SAAS,CAAA;IACjB,IAAI,CAAC,EAAE,kBAAkB,CAAA;IACzB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,SAAS,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,uCAAuC;IACvC,IAAI,CAAC,EAAE,qBAAqB,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAA;IACxD,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB,GAAG,cAAc,CAAA;AAiOlB,eAAO,MAAM,cAAc;;;;cA9NE,OAAO;oBAAkB,MAAM,IAAI;;;CAgO9D,CAAA"}
@@ -182,27 +182,35 @@ const BaseExpandableCard = forwardRef(
182
182
  },
183
183
  clicking ? "closed" : "open"
184
184
  ),
185
- draggable && index === 0 ? /* @__PURE__ */ jsx(
186
- "div",
187
- {
188
- className: dropableArea,
189
- "data-first": true,
190
- onDragLeave: (event) => onDrag(event, "transparent", true),
191
- onDragOver: (event) => onDrag(event, theme.colors.primary.border, true),
192
- onDrop: (event) => handleDrop(event, true),
193
- ref: draggableFirstRef
194
- }
185
+ draggable && index === 0 ? (
186
+ // biome-ignore lint/a11y/noNoninteractiveElementInteractions: needed for drag and drop
187
+ // biome-ignore lint/a11y/noStaticElementInteractions: needed for drag and drop
188
+ /* @__PURE__ */ jsx(
189
+ "div",
190
+ {
191
+ className: dropableArea,
192
+ "data-first": true,
193
+ onDragLeave: (event) => onDrag(event, "transparent", true),
194
+ onDragOver: (event) => onDrag(event, theme.colors.primary.border, true),
195
+ onDrop: (event) => handleDrop(event, true),
196
+ ref: draggableFirstRef
197
+ }
198
+ )
195
199
  ) : null,
196
- draggable ? /* @__PURE__ */ jsx(
197
- "div",
198
- {
199
- className: dropableArea,
200
- "data-testid": `${value}-dropable-area`,
201
- onDragLeave: (event) => onDrag(event, "transparent"),
202
- onDragOver: (event) => onDrag(event, theme.colors.primary.border),
203
- onDrop: handleDrop,
204
- ref: draggableRef
205
- }
200
+ draggable ? (
201
+ // biome-ignore lint/a11y/noNoninteractiveElementInteractions: needed for drag and drop
202
+ // biome-ignore lint/a11y/noStaticElementInteractions: needed for drag and drop
203
+ /* @__PURE__ */ jsx(
204
+ "div",
205
+ {
206
+ className: dropableArea,
207
+ "data-testid": `${value}-dropable-area`,
208
+ onDragLeave: (event) => onDrag(event, "transparent"),
209
+ onDragOver: (event) => onDrag(event, theme.colors.primary.border),
210
+ onDrop: handleDrop,
211
+ ref: draggableRef
212
+ }
213
+ )
206
214
  ) : null
207
215
  ]
208
216
  }
@@ -1 +1 @@
1
- {"version":3,"file":"List.d.ts","sourceRoot":"","sources":["../../../../src/components/FileInput/components/List.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,SAAS,EAAY,MAAM,UAAU,CAAA;AAgDnD,eAAO,MAAM,SAAS,GAAI,mCAIvB,SAAS,mDAyFX,CAAA"}
1
+ {"version":3,"file":"List.d.ts","sourceRoot":"","sources":["../../../../src/components/FileInput/components/List.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,SAAS,EAAY,MAAM,UAAU,CAAA;AAwDnD,eAAO,MAAM,SAAS,GAAI,mCAIvB,SAAS,mDAyFX,CAAA"}
@@ -1,5 +1,9 @@
1
1
  import { jsxs, jsx } from "react/jsx-runtime";
2
- import { CloseIcon, AudioIcon, VideoIcon, ImageIcon, DocIcon } from "@ultraviolet/icons";
2
+ import { AudioIcon } from "@ultraviolet/icons/AudioIcon";
3
+ import { CloseIcon } from "@ultraviolet/icons/CloseIcon";
4
+ import { DocIcon } from "@ultraviolet/icons/DocIcon";
5
+ import { ImageIcon } from "@ultraviolet/icons/ImageIcon";
6
+ import { VideoIcon } from "@ultraviolet/icons/VideoIcon";
3
7
  import { useState } from "react";
4
8
  import { Button } from "../../Button/index.js";
5
9
  import { Loader } from "../../Loader/index.js";
@@ -19,7 +23,16 @@ const getIllustration = (type, file, error, loading) => {
19
23
  return /* @__PURE__ */ jsx("div", { className: fileViewerImage[error ? "error" : "default"], children: /* @__PURE__ */ jsx(VideoIcon, { sentiment: error ? "danger" : "primary", size: "medium" }) });
20
24
  }
21
25
  if (type === "image" && !error) {
22
- return /* @__PURE__ */ jsx("img", { alt: "", className: fileViewerImage.default, src: file });
26
+ return /* @__PURE__ */ jsx(
27
+ "img",
28
+ {
29
+ alt: "",
30
+ className: fileViewerImage.default,
31
+ height: "auto",
32
+ src: file,
33
+ width: "auto"
34
+ }
35
+ );
23
36
  }
24
37
  if (type === "image" && error) {
25
38
  return /* @__PURE__ */ jsx("div", { className: fileViewerImage[error ? "error" : "default"], children: /* @__PURE__ */ jsx(ImageIcon, { sentiment: error ? "danger" : "primary", size: "medium" }) });
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/FileInput/index.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,cAAc,EAAa,MAAM,SAAS,CAAA;AAmTxD,eAAO,MAAM,SAAS,0OAzRnB,cAAc;;;CA4Rf,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/FileInput/index.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,cAAc,EAAa,MAAM,SAAS,CAAA;AAuTxD,eAAO,MAAM,SAAS,0OA7RnB,cAAc;;;CAgSf,CAAA"}
@@ -1,4 +1,6 @@
1
1
  import type { ComponentProps } from 'react';
2
2
  import { Link } from '../Link';
3
- export declare const GlobalAlertLink: ({ children, href, target, download, rel, className, onClick, "aria-label": ariaLabel, oneLine, "data-testid": dataTestId, style, }: Omit<ComponentProps<typeof Link>, "sentiment" | "prominence" | "size">) => import("react/jsx-runtime").JSX.Element;
3
+ type GlobalAlertLinkProps = Omit<ComponentProps<typeof Link>, 'sentiment' | 'prominence' | 'size' | 'render'> & NonNullable<Pick<ComponentProps<typeof Link>, 'href'>>;
4
+ export declare const GlobalAlertLink: ({ children, href, target, download, rel, className, onClick, "aria-label": ariaLabel, oneLine, "data-testid": dataTestId, style, }: GlobalAlertLinkProps) => import("react/jsx-runtime").JSX.Element;
5
+ export {};
4
6
  //# sourceMappingURL=GlobalAlertLink.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalAlertLink.d.ts","sourceRoot":"","sources":["../../../src/components/GlobalAlert/GlobalAlertLink.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAE9B,eAAO,MAAM,eAAe,GAAI,oIAY7B,IAAI,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,MAAM,CAAC,4CAsBxE,CAAA"}
1
+ {"version":3,"file":"GlobalAlertLink.d.ts","sourceRoot":"","sources":["../../../src/components/GlobalAlert/GlobalAlertLink.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAE9B,KAAK,oBAAoB,GAAG,IAAI,CAC9B,cAAc,CAAC,OAAO,IAAI,CAAC,EAC3B,WAAW,GAAG,YAAY,GAAG,MAAM,GAAG,QAAQ,CAC/C,GACC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAA;AAExD,eAAO,MAAM,eAAe,GAAI,oIAY7B,oBAAoB,4CAsBtB,CAAA"}
@@ -16,7 +16,67 @@ type GlobalAlertProps = {
16
16
  */
17
17
  export declare const GlobalAlert: {
18
18
  ({ children, variant, onClose, closable, buttonText, onClickButton, className, "data-testid": dataTestId, style, }: GlobalAlertProps): import("react/jsx-runtime").JSX.Element | null;
19
- Link: ({ children, href, target, download, rel, className, onClick, "aria-label": ariaLabel, oneLine, "data-testid": dataTestId, style, }: Omit<import("react").ComponentProps<typeof import("..").Link>, "sentiment" | "prominence" | "size">) => import("react/jsx-runtime").JSX.Element;
19
+ Link: ({ children, href, target, download, rel, className, onClick, "aria-label": ariaLabel, oneLine, "data-testid": dataTestId, style, }: Omit<({
20
+ children: ReactNode;
21
+ target?: import("react").HTMLAttributeAnchorTarget;
22
+ download?: string | boolean;
23
+ sentiment?: "primary" | "info";
24
+ prominence?: import("../Link").ProminenceProps;
25
+ size?: "small" | "large" | "xsmall";
26
+ iconPosition?: "left" | "right";
27
+ rel?: import("react").AnchorHTMLAttributes<HTMLAnchorElement>["rel"];
28
+ className?: string;
29
+ onClick?: import("react").MouseEventHandler<HTMLAnchorElement>;
30
+ 'aria-label'?: string;
31
+ 'aria-current'?: import("react").AnchorHTMLAttributes<HTMLAnchorElement>["aria-current"];
32
+ 'aria-keyshortcuts'?: string;
33
+ oneLine?: boolean;
34
+ 'data-testid'?: string;
35
+ variant?: "inline" | "standalone";
36
+ style?: CSSProperties;
37
+ } & ((Without<{
38
+ href?: string;
39
+ }, {
40
+ render: import("@ultraviolet/utils").RenderProp<import("react").AnchorHTMLAttributes<HTMLAnchorElement>>;
41
+ }> & {
42
+ render: import("@ultraviolet/utils").RenderProp<import("react").AnchorHTMLAttributes<HTMLAnchorElement>>;
43
+ }) | (Without<{
44
+ render: import("@ultraviolet/utils").RenderProp<import("react").AnchorHTMLAttributes<HTMLAnchorElement>>;
45
+ }, {
46
+ href?: string;
47
+ }> & {
48
+ href?: string;
49
+ }))) & import("react").RefAttributes<HTMLAnchorElement>, "size" | "sentiment" | "render" | "prominence"> & Pick<({
50
+ children: ReactNode;
51
+ target?: import("react").HTMLAttributeAnchorTarget;
52
+ download?: string | boolean;
53
+ sentiment?: "primary" | "info";
54
+ prominence?: import("../Link").ProminenceProps;
55
+ size?: "small" | "large" | "xsmall";
56
+ iconPosition?: "left" | "right";
57
+ rel?: import("react").AnchorHTMLAttributes<HTMLAnchorElement>["rel"];
58
+ className?: string;
59
+ onClick?: import("react").MouseEventHandler<HTMLAnchorElement>;
60
+ 'aria-label'?: string;
61
+ 'aria-current'?: import("react").AnchorHTMLAttributes<HTMLAnchorElement>["aria-current"];
62
+ 'aria-keyshortcuts'?: string;
63
+ oneLine?: boolean;
64
+ 'data-testid'?: string;
65
+ variant?: "inline" | "standalone";
66
+ style?: CSSProperties;
67
+ } & ((Without<{
68
+ href?: string;
69
+ }, {
70
+ render: import("@ultraviolet/utils").RenderProp<import("react").AnchorHTMLAttributes<HTMLAnchorElement>>;
71
+ }> & {
72
+ render: import("@ultraviolet/utils").RenderProp<import("react").AnchorHTMLAttributes<HTMLAnchorElement>>;
73
+ }) | (Without<{
74
+ render: import("@ultraviolet/utils").RenderProp<import("react").AnchorHTMLAttributes<HTMLAnchorElement>>;
75
+ }, {
76
+ href?: string;
77
+ }> & {
78
+ href?: string;
79
+ }))) & import("react").RefAttributes<HTMLAnchorElement>, "href">) => import("react/jsx-runtime").JSX.Element;
20
80
  };
21
81
  export {};
22
82
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/GlobalAlert/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAQrD,KAAK,gBAAgB,GAAG;IACtB,QAAQ,EAAE,SAAS,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,aAAa,CAAA;IAC3C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;IAC1B,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW;wHAUrB,gBAAgB;;CAqDlB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/GlobalAlert/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAQrD,KAAK,gBAAgB,GAAG;IACtB,QAAQ,EAAE,SAAS,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,aAAa,CAAA;IAC3C,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;IAC1B,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW;wHAUrB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDlB,CAAA"}
@@ -1,3 +1,4 @@
1
+ import type { RenderProp } from '@ultraviolet/utils';
1
2
  import type { AnchorHTMLAttributes, CSSProperties, HTMLAttributeAnchorTarget, MouseEventHandler, ReactNode } from 'react';
2
3
  import type { PROMINENCES } from './constants';
3
4
  export type ProminenceProps = keyof typeof PROMINENCES;
@@ -13,7 +14,6 @@ type LinkProps = {
13
14
  iconPosition?: LinkIconPosition;
14
15
  rel?: AnchorHTMLAttributes<HTMLAnchorElement>['rel'];
15
16
  className?: string;
16
- href: string;
17
17
  onClick?: MouseEventHandler<HTMLAnchorElement>;
18
18
  'aria-label'?: string;
19
19
  'aria-current'?: AnchorHTMLAttributes<HTMLAnchorElement>['aria-current'];
@@ -22,9 +22,30 @@ type LinkProps = {
22
22
  'data-testid'?: string;
23
23
  variant?: 'inline' | 'standalone';
24
24
  style?: CSSProperties;
25
- };
25
+ } & XOR<[
26
+ {
27
+ href?: string;
28
+ },
29
+ {
30
+ /**
31
+ * Custom element or render function to use instead of the default anchor.
32
+ *
33
+ * Element form (props auto-merged):
34
+ * ```tsx
35
+ * <Link render={<NextLink href="/about" />}>About</Link>
36
+ * ```
37
+ *
38
+ * Function form (you control prop merging):
39
+ * ```tsx
40
+ * <Link render={(props) => <NextLink {...props} href="/about" />}>About</Link>
41
+ * ```
42
+ */
43
+ render: RenderProp<AnchorHTMLAttributes<HTMLAnchorElement>>;
44
+ }
45
+ ]>;
26
46
  /**
27
47
  * Link is a component used to navigate between pages or to external websites.
48
+ * Use `render` prop to render a custom element (e.g., Next.js Link) while preserving Link's styling.
28
49
  */
29
50
  export declare const Link: import("react").ForwardRefExoticComponent<LinkProps & import("react").RefAttributes<HTMLAnchorElement>>;
30
51
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Link/index.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,oBAAoB,EACpB,aAAa,EAEb,yBAAyB,EACzB,iBAAiB,EACjB,SAAS,EAEV,MAAM,OAAO,CAAA;AAId,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAS9C,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,WAAW,CAAA;AAEtD,KAAK,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAA;AAC7C,KAAK,gBAAgB,GAAG,MAAM,GAAG,OAAO,CAAA;AACxC,KAAK,SAAS,GAAG;IACf,QAAQ,EAAE,SAAS,CAAA;IACnB,MAAM,CAAC,EAAE,yBAAyB,CAAA;IAClC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IAC3B,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC9B,UAAU,CAAC,EAAE,eAAe,CAAA;IAC5B,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,YAAY,CAAC,EAAE,gBAAgB,CAAA;IAC/B,GAAG,CAAC,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,CAAA;IACpD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IAEZ,OAAO,CAAC,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAA;IAC9C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,cAAc,CAAC,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,cAAc,CAAC,CAAA;IACxE,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,QAAQ,GAAG,YAAY,CAAA;IACjC,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB,CAAA;AAKD;;GAEG;AACH,eAAO,MAAM,IAAI,yGAiGhB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Link/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAEpD,OAAO,KAAK,EACV,oBAAoB,EACpB,aAAa,EAEb,yBAAyB,EACzB,iBAAiB,EACjB,SAAS,EAEV,MAAM,OAAO,CAAA;AAId,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAS9C,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,WAAW,CAAA;AAEtD,KAAK,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAA;AAC7C,KAAK,gBAAgB,GAAG,MAAM,GAAG,OAAO,CAAA;AAExC,KAAK,SAAS,GAAG;IACf,QAAQ,EAAE,SAAS,CAAA;IACnB,MAAM,CAAC,EAAE,yBAAyB,CAAA;IAClC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IAC3B,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC9B,UAAU,CAAC,EAAE,eAAe,CAAA;IAC5B,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,YAAY,CAAC,EAAE,gBAAgB,CAAA;IAC/B,GAAG,CAAC,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,CAAA;IACpD,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,OAAO,CAAC,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,CAAA;IAC9C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,cAAc,CAAC,EAAE,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,cAAc,CAAC,CAAA;IACxE,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,QAAQ,GAAG,YAAY,CAAA;IACjC,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB,GAAG,GAAG,CACL;IACE;QACE,IAAI,CAAC,EAAE,MAAM,CAAA;KACd;IACD;QACE;;;;;;;;;;;;WAYG;QACH,MAAM,EAAE,UAAU,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,CAAA;KAC5D;CACF,CACF,CAAA;AAKD;;;GAGG;AACH,eAAO,MAAM,IAAI,yGAmHhB,CAAA"}
@@ -3,11 +3,11 @@ import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import { ArrowLeftIcon } from "@ultraviolet/icons/ArrowLeftIcon";
4
4
  import { ArrowRightIcon } from "@ultraviolet/icons/ArrowRightIcon";
5
5
  import { OpenInNewIcon } from "@ultraviolet/icons/OpenInNewIcon";
6
- import { cn } from "@ultraviolet/utils";
6
+ import { cn, renderElement } from "@ultraviolet/utils";
7
7
  import { forwardRef, useState, useRef, useMemo, useEffect } from "react";
8
8
  import recursivelyGetChildrenString from "../../helpers/recursivelyGetChildrenString.js";
9
9
  import { Tooltip } from "../Tooltip/index.js";
10
- import { iconLeftLink, containerIconLink, iconRightLink, link, defaultLink } from "./styles.css.js";
10
+ import { link, defaultLink, iconLeftLink, containerIconLink, iconRightLink } from "./styles.css.js";
11
11
  const ICON_SIZE = "small";
12
12
  const BLANK_TARGET_ICON_SIZE = "small";
13
13
  const Link = forwardRef(
@@ -29,7 +29,8 @@ const Link = forwardRef(
29
29
  oneLine = false,
30
30
  "data-testid": dataTestId,
31
31
  variant = "standalone",
32
- style
32
+ style,
33
+ render
33
34
  }, ref) => {
34
35
  const isBlank = target === "_blank";
35
36
  const computedRel = rel || (isBlank ? "noopener noreferrer" : void 0);
@@ -52,23 +53,34 @@ const Link = forwardRef(
52
53
  setIsTruncated(offsetWidth < scrollWidth);
53
54
  }
54
55
  }, [oneLine, ref, usedRef]);
56
+ const computedClassName = cn(
57
+ className,
58
+ link({
59
+ oneLine,
60
+ prominence,
61
+ sentiment,
62
+ type: variant,
63
+ variant: textVariant
64
+ }),
65
+ defaultLink
66
+ );
67
+ if (render) {
68
+ return /* @__PURE__ */ jsx(Tooltip, { text: oneLine && isTruncated ? finalStringChildren : "", children: renderElement(render, {
69
+ children,
70
+ className: computedClassName,
71
+ "data-testid": dataTestId,
72
+ "data-variant": variant,
73
+ ref: usedRef,
74
+ style
75
+ }) });
76
+ }
55
77
  return /* @__PURE__ */ jsx(Tooltip, { text: oneLine && isTruncated ? finalStringChildren : "", children: /* @__PURE__ */ jsxs(
56
78
  "a",
57
79
  {
58
80
  "aria-current": ariaCurrent,
59
81
  "aria-keyshortcuts": ariaKeyshortcuts,
60
82
  "aria-label": ariaLabel,
61
- className: cn(
62
- className,
63
- link({
64
- oneLine,
65
- prominence,
66
- sentiment,
67
- type: variant,
68
- variant: textVariant
69
- }),
70
- defaultLink
71
- ),
83
+ className: computedClassName,
72
84
  "data-testid": dataTestId,
73
85
  "data-variant": variant,
74
86
  download,
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderCell.d.ts","sourceRoot":"","sources":["../../../src/components/List/HeaderCell.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAiBtC,KAAK,eAAe,GAAG;IACrB,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAA;IACxC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,GAAG,MAAM,KAAK,IAAI,CAAA;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,+FAUxB,eAAe,4CAuDjB,CAAA"}
1
+ {"version":3,"file":"HeaderCell.d.ts","sourceRoot":"","sources":["../../../src/components/List/HeaderCell.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAiBtC,KAAK,eAAe,GAAG;IACrB,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAA;IACxC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,GAAG,MAAM,KAAK,IAAI,CAAA;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,+FAUxB,eAAe,4CAuDjB,CAAA"}
@@ -1,6 +1,8 @@
1
1
  "use client";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import { InformationOutlineIcon, SouthShortIcon, SortIcon as SortIcon$1 } from "@ultraviolet/icons";
3
+ import { InformationOutlineIcon } from "@ultraviolet/icons/InformationOutlineIcon";
4
+ import { SortIcon as SortIcon$1 } from "@ultraviolet/icons/SortIcon";
5
+ import { SouthShortIcon } from "@ultraviolet/icons/SouthShortIcon";
4
6
  import { cn } from "@ultraviolet/utils";
5
7
  import { assignInlineVars } from "@vanilla-extract/dynamic";
6
8
  import { Stack } from "../Stack/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"ListContext.d.ts","sourceRoot":"","sources":["../../../src/components/List/ListContext.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EACd,QAAQ,EACR,WAAW,IAAI,gBAAgB,EAC/B,SAAS,EACT,SAAS,EACT,cAAc,EACf,MAAM,OAAO,CAAA;AASd,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAE1C,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,CAAA;AAEhD,MAAM,MAAM,gBAAgB,GAAG;IAE7B;;OAEG;IACH,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,MAAM,IAAI,CAAA;IACxE,cAAc,EAAE,QAAQ,CAAA;IACxB,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACpC,YAAY,EAAE,OAAO,CAAA;IAErB;;OAEG;IACH,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,IAAI,CAAA;IACpD,iBAAiB,EAAE,cAAc,CAAC,OAAO,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAA;IAC7D,gBAAgB,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAA;IACrE,gBAAgB,EAAE,MAAM,IAAI,CAAA;IAC5B,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,UAAU,EAAE,OAAO,CAAA;IACnB,SAAS,EAAE,MAAM,IAAI,CAAA;IACrB,cAAc,EAAE,QAAQ,CAAA;IACxB,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,WAAW,EAAE,MAAM,IAAI,CAAA;IACvB,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACpC,OAAO,EAAE,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAA;IACtC,UAAU,EAAE,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAA;IACnE,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;IACzD,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAA;CAChC,CAAA;AAID,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,EAAE,SAAS,CAAA;IACnB,YAAY,EAAE,OAAO,CAAA;IACrB,UAAU,EAAE,OAAO,CAAA;IACnB,YAAY,EAAE,OAAO,CAAA;IACrB,gBAAgB,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACrD,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAA;CAChC,CAAA;AAkBD,eAAO,MAAM,YAAY,GAAI,2FAQ1B,iBAAiB,4CAkSnB,CAAA;AAGD,eAAO,MAAM,cAAc,wBAO1B,CAAA"}
1
+ {"version":3,"file":"ListContext.d.ts","sourceRoot":"","sources":["../../../src/components/List/ListContext.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EACd,QAAQ,EACR,WAAW,IAAI,gBAAgB,EAC/B,SAAS,EACT,SAAS,EACT,cAAc,EACf,MAAM,OAAO,CAAA;AASd,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAE1C,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,CAAA;AAEhD,MAAM,MAAM,gBAAgB,GAAG;IAE7B;;OAEG;IACH,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,MAAM,IAAI,CAAA;IACxE,cAAc,EAAE,QAAQ,CAAA;IACxB,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACpC,YAAY,EAAE,OAAO,CAAA;IAErB;;OAEG;IACH,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,IAAI,CAAA;IACpD,iBAAiB,EAAE,cAAc,CAAC,OAAO,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAA;IAC7D,gBAAgB,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAA;IACrE,gBAAgB,EAAE,MAAM,IAAI,CAAA;IAC5B,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,UAAU,EAAE,OAAO,CAAA;IACnB,SAAS,EAAE,MAAM,IAAI,CAAA;IACrB,cAAc,EAAE,QAAQ,CAAA;IACxB,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,WAAW,EAAE,MAAM,IAAI,CAAA;IACvB,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACpC,OAAO,EAAE,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAA;IACtC,UAAU,EAAE,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAA;IACnE,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;IACzD,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAA;CAChC,CAAA;AAID,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,EAAE,SAAS,CAAA;IACnB,YAAY,EAAE,OAAO,CAAA;IACrB,UAAU,EAAE,OAAO,CAAA;IACnB,YAAY,EAAE,OAAO,CAAA;IACrB,gBAAgB,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACrD,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAA;CAChC,CAAA;AAkBD,eAAO,MAAM,YAAY,GAAI,2FAQ1B,iBAAiB,4CAoSnB,CAAA;AAGD,eAAO,MAAM,cAAc,wBAO1B,CAAA"}
@@ -188,7 +188,9 @@ const ListProvider = ({
188
188
  }
189
189
  });
190
190
  return () => {
191
- handlers.forEach((cleanup) => cleanup());
191
+ for (const cleanup of handlers) {
192
+ cleanup();
193
+ }
192
194
  };
193
195
  }, [lastCheckedCheckbox, selectRows]);
194
196
  useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"Row.d.ts","sourceRoot":"","sources":["../../../src/components/List/Row.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,aAAa,EACb,iBAAiB,EACjB,SAAS,EAEV,MAAM,OAAO,CAAA;AAUd,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAiBpD,KAAK,QAAQ,GAAG;IACd,QAAQ,EAAE,SAAS,CAAA;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,CAAC,EAAE,SAAS,CAAA;IACtB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,OAAO,KAAK,CAAA;IACtC,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,KAAK,CAAC,EAAE,aAAa,CAAA;IACrB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,YAAY,CAAC,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,CAAA;IACrD,YAAY,CAAC,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,CAAA;IACrD,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CAC/B,CAAA;AAED,eAAO,MAAM,GAAG,0GA8Nf,CAAA"}
1
+ {"version":3,"file":"Row.d.ts","sourceRoot":"","sources":["../../../src/components/List/Row.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,aAAa,EACb,iBAAiB,EACjB,SAAS,EAEV,MAAM,OAAO,CAAA;AAWd,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAkBpD,KAAK,QAAQ,GAAG;IACd,QAAQ,EAAE,SAAS,CAAA;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,CAAC,EAAE,SAAS,CAAA;IACtB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,OAAO,KAAK,CAAA;IACtC,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,KAAK,CAAC,EAAE,aAAa,CAAA;IACrB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,YAAY,CAAC,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,CAAA;IACrD,YAAY,CAAC,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,CAAA;IACrD,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CAC/B,CAAA;AAED,eAAO,MAAM,GAAG,0GA0Of,CAAA"}
@@ -1,18 +1,18 @@
1
1
  "use client";
2
- import { jsxs, Fragment, jsx } from "react/jsx-runtime";
2
+ import { jsxs, Fragment as Fragment$1, jsx } from "react/jsx-runtime";
3
3
  import { ArrowDownIcon } from "@ultraviolet/icons/ArrowDownIcon";
4
4
  import { ArrowUpIcon } from "@ultraviolet/icons/ArrowUpIcon";
5
5
  import { theme } from "@ultraviolet/themes";
6
6
  import { cn } from "@ultraviolet/utils";
7
7
  import { assignInlineVars } from "@vanilla-extract/dynamic";
8
- import { forwardRef, useId, useRef, useEffect, useCallback, Children, isValidElement } from "react";
8
+ import { forwardRef, useId, useRef, useEffect, useCallback, Children, isValidElement, Fragment } from "react";
9
9
  import { Button } from "../Button/index.js";
10
10
  import { Checkbox } from "../Checkbox/index.js";
11
11
  import { Tooltip } from "../Tooltip/index.js";
12
12
  import { Cell } from "./Cell.js";
13
13
  import { ColumnProvider } from "./ColumnProvider.js";
14
14
  import { useListContext } from "./ListContext.js";
15
- import { listNoPaddingCell, listCheckboxContainer, listCheckboxInRange, listRow, listExpandableWrapper, listExpandableCell } from "./styles.css.js";
15
+ import { listNoPaddingCell, listCheckboxContainer, listCheckboxInRange, listExpandableButton, listRow, listExpandableWrapper, listExpandableCell } from "./styles.css.js";
16
16
  import { paddingExpandableCell } from "./variables.css.js";
17
17
  const Row = forwardRef(
18
18
  ({
@@ -79,11 +79,19 @@ const Row = forwardRef(
79
79
  setRefList([...refList, checkboxRef]);
80
80
  }
81
81
  }, [refList, setRefList]);
82
- const validChildrenArray = Children.toArray(children).filter(
82
+ const childrenArrayNoFragment = Children.toArray(children).flatMap(
83
+ (node) => {
84
+ if (isValidElement(node) && node.type === Fragment) {
85
+ return node.props.children;
86
+ }
87
+ return node;
88
+ }
89
+ );
90
+ const validChildrenArray = Children.toArray(childrenArrayNoFragment).filter(
83
91
  (child) => isValidElement(child)
84
92
  );
85
93
  const totalColumns = columns.length + (selectable ? 1 : 0) + (expandButton ? 1 : 0);
86
- return /* @__PURE__ */ jsxs(Fragment, { children: [
94
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [
87
95
  /* @__PURE__ */ jsxs(
88
96
  "tr",
89
97
  {
@@ -136,6 +144,7 @@ const Row = forwardRef(
136
144
  Button,
137
145
  {
138
146
  "aria-label": "expand",
147
+ className: listExpandableButton,
139
148
  "data-testid": "list-expand-button",
140
149
  disabled: disabled || !expandable,
141
150
  onClick: () => toggleRowExpand(),
@@ -1 +1 @@
1
- {"version":3,"file":"SkeletonRows.d.ts","sourceRoot":"","sources":["../../../src/components/List/SkeletonRows.tsx"],"names":[],"mappings":"AASA,KAAK,wBAAwB,GAAG;IAC9B,UAAU,EAAE,OAAO,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,6BAI1B,wBAAwB,4CAgC1B,CAAA"}
1
+ {"version":3,"file":"SkeletonRows.d.ts","sourceRoot":"","sources":["../../../src/components/List/SkeletonRows.tsx"],"names":[],"mappings":"AASA,KAAK,wBAAwB,GAAG;IAC9B,UAAU,EAAE,OAAO,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,eAAO,MAAM,YAAY,GAAI,6BAI1B,wBAAwB,4CA8B1B,CAAA"}
@@ -19,7 +19,6 @@ const SkeletonRows = ({
19
19
  {
20
20
  className: cn(listRow({ sentiment: "neutral" }), listLoadingRow),
21
21
  id: `skeleton-${index}`,
22
- role: "row",
23
22
  children: [
24
23
  selectable ? /* @__PURE__ */ jsx("td", {}) : null,
25
24
  colArray.map((columnIndex) => /* @__PURE__ */ jsx(
@@ -22,5 +22,6 @@ export declare const listCheckboxContainer: string;
22
22
  export declare const listNoPaddingCell: string;
23
23
  export declare const listLoadingRow: string;
24
24
  export declare const listSkeleton: string;
25
+ export declare const listExpandableButton: string;
25
26
  export declare const listExpandableCell: string;
26
27
  //# sourceMappingURL=styles.css.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.css.d.ts","sourceRoot":"","sources":["../../../src/components/List/styles.css.ts"],"names":[],"mappings":"AAiEA,eAAO,MAAM,aAAa,QAIxB,CAAA;AAEF,eAAO,MAAM,IAAI,QAMf,CAAA;AAEF,eAAO,MAAM,YAAY,4CAQvB,CAAA;AAEF,eAAO,MAAM,cAAc,QAsBzB,CAAA;AAEF,eAAO,MAAM,aAAa,QAIxB,CAAA;AAEF,eAAO,MAAM,uBAAuB,QAQlC,CAAA;AAEF,eAAO,MAAM,qBAAqB,QAShC,CAAA;AAEF,eAAO,MAAM,mBAAmB,QAAY,CAAA;AAyB5C,eAAO,MAAM,OAAO;;;;;;;;;EAmBlB,CAAA;AAEF,eAAO,MAAM,QAAQ,QAuDnB,CAAA;AAEF,eAAO,MAAM,cAAc,QAAY,CAAA;AAQvC,eAAO,MAAM,qBAAqB,QAA6B,CAAA;AAE/D,eAAO,MAAM,iBAAiB,QAQ5B,CAAA;AAEF,eAAO,MAAM,cAAc,QAEzB,CAAA;AAEF,eAAO,MAAM,YAAY,QAKvB,CAAA;AAEF,eAAO,MAAM,kBAAkB,QAgB7B,CAAA"}
1
+ {"version":3,"file":"styles.css.d.ts","sourceRoot":"","sources":["../../../src/components/List/styles.css.ts"],"names":[],"mappings":"AAiEA,eAAO,MAAM,aAAa,QAIxB,CAAA;AAEF,eAAO,MAAM,IAAI,QAMf,CAAA;AAEF,eAAO,MAAM,YAAY,4CAQvB,CAAA;AAEF,eAAO,MAAM,cAAc,QAsBzB,CAAA;AAEF,eAAO,MAAM,aAAa,QAIxB,CAAA;AAEF,eAAO,MAAM,uBAAuB,QAQlC,CAAA;AAEF,eAAO,MAAM,qBAAqB,QAShC,CAAA;AAEF,eAAO,MAAM,mBAAmB,QAAY,CAAA;AAyB5C,eAAO,MAAM,OAAO;;;;;;;;;EAmBlB,CAAA;AAEF,eAAO,MAAM,QAAQ,QAuDnB,CAAA;AAEF,eAAO,MAAM,cAAc,QAAY,CAAA;AAQvC,eAAO,MAAM,qBAAqB,QAA6B,CAAA;AAE/D,eAAO,MAAM,iBAAiB,QAQ5B,CAAA;AAEF,eAAO,MAAM,cAAc,QAEzB,CAAA;AAEF,eAAO,MAAM,YAAY,QAKvB,CAAA;AAEF,eAAO,MAAM,oBAAoB,QAE/B,CAAA;AAEF,eAAO,MAAM,kBAAkB,QAgB7B,CAAA"}
@@ -1,3 +1,4 @@
1
+ /* empty css */
1
2
  /* empty css */
2
3
  import { createRuntimeFn } from "@vanilla-extract/recipes/createRuntimeFn";
3
4
  var listContainer = "uv_inoh541";
@@ -15,7 +16,8 @@ var listCheckboxContainer = "uv_inoh54m";
15
16
  var listNoPaddingCell = "uv_inoh54n";
16
17
  var listLoadingRow = "uv_inoh54o";
17
18
  var listSkeleton = "uv_inoh54p";
18
- var listExpandableCell = "uv_inoh54q";
19
+ var listExpandableButton = "uv_inoh54q";
20
+ var listExpandableCell = "uv_inoh54r";
19
21
  export {
20
22
  list,
21
23
  listCell,
@@ -23,6 +25,7 @@ export {
23
25
  listCheckboxContainer,
24
26
  listCheckboxInRange,
25
27
  listContainer,
28
+ listExpandableButton,
26
29
  listExpandableCell,
27
30
  listExpandableWrapper,
28
31
  listHeaderCell,
@@ -8,7 +8,7 @@ var minWidthCell = "var(--uv_1431nf66)";
8
8
  var widthChildrenCell = "var(--uv_1431nf67)";
9
9
  var maxWidthChildrenCell = "var(--uv_1431nf68)";
10
10
  var minWidthChildrenCell = "var(--uv_1431nf69)";
11
- var listCellPadding = "var(--rwwhsl9v)";
11
+ var listCellPadding = "var(--uv_theme_rwwhsl9v)";
12
12
  export {
13
13
  listCellPadding,
14
14
  maxWidthCell,
@@ -3,5 +3,5 @@ import type { ReactNode } from 'react';
3
3
  * Search inside a children (React Element) recursively until a result is found
4
4
  */
5
5
  export declare const searchChildren: (children: ReactNode, searchString: string) => ReactNode[];
6
- export declare const getListItem: (listItems: Element[]) => (HTMLButtonElement | HTMLAnchorElement)[];
6
+ export declare const getListItem: (listItems: Element[]) => (HTMLAnchorElement | HTMLButtonElement)[];
7
7
  //# sourceMappingURL=helpers.d.ts.map
@@ -71,7 +71,7 @@ export declare const Menu: import("react").ForwardRefExoticComponent<{
71
71
  children: import("react").ReactNode;
72
72
  onClick?: import("react").MouseEventHandler<HTMLElement> | undefined;
73
73
  borderless?: boolean;
74
- sentiment?: "primary" | "neutral" | "danger";
74
+ sentiment?: "danger" | "neutral" | "primary";
75
75
  active?: boolean;
76
76
  'data-testid'?: string;
77
77
  searchText?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Meter/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAI1C,KAAK,QAAQ,GAAG;IACd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,KAAK,0BAA0B,GAAG;IAChC;;OAEG;IACH,QAAQ,EAAE,QAAQ,EAAE,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,KAAK,GAAI,8EAQnB,0BAA0B,4CA6C5B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Meter/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAI1C,KAAK,QAAQ,GAAG;IACd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,KAAK,0BAA0B,GAAG;IAChC;;OAEG;IACH,QAAQ,EAAE,QAAQ,EAAE,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,KAAK,GAAI,8EAQnB,0BAA0B,4CA8C5B,CAAA"}