@ultraviolet/ui 3.7.0 → 3.8.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 (175) hide show
  1. package/dist/components/Alert/index.d.ts.map +1 -1
  2. package/dist/components/Alert/index.js +5 -1
  3. package/dist/components/Alert/styles.css.d.ts +1 -1
  4. package/dist/components/Avatar/index.d.ts.map +1 -1
  5. package/dist/components/Avatar/index.js +45 -41
  6. package/dist/components/Banner/index.d.ts.map +1 -1
  7. package/dist/components/Banner/index.js +2 -2
  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/Chip/index.d.ts +1 -1
  17. package/dist/components/CopyButton/index.d.ts.map +1 -1
  18. package/dist/components/CopyButton/index.js +2 -1
  19. package/dist/components/DateInput/components/CalendarContent.d.ts.map +1 -1
  20. package/dist/components/DateInput/components/CalendarContent.js +2 -1
  21. package/dist/components/DateInput/helpersLocale.d.ts.map +1 -1
  22. package/dist/components/DateInput/helpersLocale.js +8 -5
  23. package/dist/components/DateInput/index.js +1 -1
  24. package/dist/components/Dialog/constants.d.ts +1 -1
  25. package/dist/components/Dialog/index.d.ts +20 -5
  26. package/dist/components/Dialog/index.d.ts.map +1 -1
  27. package/dist/components/Dialog/index.js +2 -1
  28. package/dist/components/Drawer/styles.css.d.ts +1 -1
  29. package/dist/components/EmptyState/index.d.ts.map +1 -1
  30. package/dist/components/EmptyState/index.js +13 -2
  31. package/dist/components/EmptyState/styles.css.d.ts +1 -1
  32. package/dist/components/ExpandableCard/index.d.ts.map +1 -1
  33. package/dist/components/ExpandableCard/index.js +30 -21
  34. package/dist/components/FileInput/components/List.d.ts.map +1 -1
  35. package/dist/components/FileInput/components/List.js +15 -2
  36. package/dist/components/FileInput/index.d.ts.map +1 -1
  37. package/dist/components/FileInput/index.js +1 -1
  38. package/dist/components/GlobalAlert/GlobalAlertLink.d.ts +3 -1
  39. package/dist/components/GlobalAlert/GlobalAlertLink.d.ts.map +1 -1
  40. package/dist/components/GlobalAlert/index.d.ts +61 -1
  41. package/dist/components/GlobalAlert/index.d.ts.map +1 -1
  42. package/dist/components/GlobalAlert/index.js +1 -1
  43. package/dist/components/Link/index.d.ts +23 -2
  44. package/dist/components/Link/index.d.ts.map +1 -1
  45. package/dist/components/Link/index.js +29 -15
  46. package/dist/components/List/HeaderCell.d.ts.map +1 -1
  47. package/dist/components/List/HeaderCell.js +3 -1
  48. package/dist/components/List/ListContext.d.ts.map +1 -1
  49. package/dist/components/List/ListContext.js +3 -1
  50. package/dist/components/List/Row.d.ts.map +1 -1
  51. package/dist/components/List/Row.js +16 -6
  52. package/dist/components/List/SkeletonRows.d.ts.map +1 -1
  53. package/dist/components/List/SkeletonRows.js +0 -1
  54. package/dist/components/List/styles.css.d.ts +1 -0
  55. package/dist/components/List/styles.css.d.ts.map +1 -1
  56. package/dist/components/List/styles.css.js +3 -1
  57. package/dist/components/List/variables.css.js +1 -1
  58. package/dist/components/Menu/components/Item.js +1 -1
  59. package/dist/components/Menu/helpers.d.ts +1 -1
  60. package/dist/components/Menu/index.d.ts +1 -1
  61. package/dist/components/Meter/index.d.ts.map +1 -1
  62. package/dist/components/Meter/index.js +43 -40
  63. package/dist/components/Modal/ModalContent.js +1 -1
  64. package/dist/components/Modal/components/Dialog.d.ts.map +1 -1
  65. package/dist/components/Modal/components/Dialog.js +10 -1
  66. package/dist/components/Notice/index.js +1 -1
  67. package/dist/components/Notification/Notification.js +1 -1
  68. package/dist/components/NumberInput/index.d.ts.map +1 -1
  69. package/dist/components/NumberInput/index.js +2 -1
  70. package/dist/components/NumberInput/styles.css.d.ts +1 -1
  71. package/dist/components/Pagination/PaginationButtons.d.ts.map +1 -1
  72. package/dist/components/Pagination/PaginationButtons.js +2 -1
  73. package/dist/components/Pagination/PerPage.d.ts +2 -1
  74. package/dist/components/Pagination/PerPage.d.ts.map +1 -1
  75. package/dist/components/Pagination/PerPage.js +3 -1
  76. package/dist/components/Pagination/index.d.ts +6 -1
  77. package/dist/components/Pagination/index.d.ts.map +1 -1
  78. package/dist/components/Pagination/index.js +2 -0
  79. package/dist/components/Pagination/styles.css.d.ts +2 -2
  80. package/dist/components/PasswordCheck/index.d.ts.map +1 -1
  81. package/dist/components/PasswordCheck/index.js +2 -1
  82. package/dist/components/Popover/index.d.ts.map +1 -1
  83. package/dist/components/Popover/index.js +1 -1
  84. package/dist/components/ProgressBar/styles.css.d.ts +1 -1
  85. package/dist/components/Radio/index.js +22 -22
  86. package/dist/components/Row/styles.css.d.ts +44 -44
  87. package/dist/components/SearchInput/index.js +1 -1
  88. package/dist/components/SelectInput/components/Dropdown.d.ts.map +1 -1
  89. package/dist/components/SelectInput/components/Dropdown.js +53 -57
  90. package/dist/components/SelectInput/components/SearchBarDropdown.js +1 -1
  91. package/dist/components/SelectInput/components/SelectBar.d.ts.map +1 -1
  92. package/dist/components/SelectInput/components/SelectBar.js +5 -1
  93. package/dist/components/SelectInput/components/selectBar.css.d.ts +1 -1
  94. package/dist/components/SelectableCard/IllustrationContainer.d.ts +8 -0
  95. package/dist/components/SelectableCard/IllustrationContainer.d.ts.map +1 -0
  96. package/dist/components/SelectableCard/IllustrationContainer.js +66 -0
  97. package/dist/components/SelectableCard/MultiStateInput.d.ts +3 -0
  98. package/dist/components/SelectableCard/MultiStateInput.d.ts.map +1 -0
  99. package/dist/components/SelectableCard/MultiStateInput.js +94 -0
  100. package/dist/components/SelectableCard/SelectableCard.d.ts +7 -0
  101. package/dist/components/SelectableCard/SelectableCard.d.ts.map +1 -0
  102. package/dist/components/SelectableCard/SelectableCard.js +165 -0
  103. package/dist/components/SelectableCard/index.d.ts +1 -33
  104. package/dist/components/SelectableCard/index.d.ts.map +1 -1
  105. package/dist/components/SelectableCard/types.d.ts +32 -0
  106. package/dist/components/SelectableCard/types.d.ts.map +1 -0
  107. package/dist/components/SelectableCardGroup/index.js +1 -1
  108. package/dist/components/SelectableCardOptionGroup/components/Option.js +1 -1
  109. package/dist/components/Separator/index.d.ts.map +1 -1
  110. package/dist/components/Separator/index.js +1 -0
  111. package/dist/components/Skeleton/Donut.d.ts.map +1 -1
  112. package/dist/components/Skeleton/Donut.js +12 -9
  113. package/dist/components/Slider/styles.css.d.ts +1 -1
  114. package/dist/components/Snippet/index.js +1 -1
  115. package/dist/components/Stack/styles.css.d.ts +46 -46
  116. package/dist/components/Stepper/Step.js +1 -1
  117. package/dist/components/Stepper/styles.css.d.ts +1 -1
  118. package/dist/components/SwitchButton/Option.js +1 -1
  119. package/dist/components/SwitchButton/index.d.ts.map +1 -1
  120. package/dist/components/SwitchButton/index.js +7 -4
  121. package/dist/components/SwitchButton/styles.css.d.ts +2 -2
  122. package/dist/components/SwitchButton/styles.css.d.ts.map +1 -1
  123. package/dist/components/Table/HeaderCell.d.ts.map +1 -1
  124. package/dist/components/Table/HeaderCell.js +3 -1
  125. package/dist/components/Table/HeaderRow.d.ts.map +1 -1
  126. package/dist/components/Table/HeaderRow.js +22 -25
  127. package/dist/components/Table/Row.d.ts.map +1 -1
  128. package/dist/components/Table/Row.js +2 -1
  129. package/dist/components/Table/SkeletonRows.d.ts.map +1 -1
  130. package/dist/components/Table/SkeletonRows.js +4 -13
  131. package/dist/components/Tabs/TabMenu.js +1 -1
  132. package/dist/components/Tabs/index.d.ts +2 -2
  133. package/dist/components/Tag/index.d.ts.map +1 -1
  134. package/dist/components/Tag/index.js +2 -1
  135. package/dist/components/TagInput/index.d.ts.map +1 -1
  136. package/dist/components/TagInput/index.js +3 -1
  137. package/dist/components/Text/constants.d.ts +4 -7
  138. package/dist/components/Text/constants.d.ts.map +1 -1
  139. package/dist/components/Text/index.d.ts +2 -1
  140. package/dist/components/Text/index.d.ts.map +1 -1
  141. package/dist/components/Text/index.js +4 -4
  142. package/dist/components/Text/style.css.d.ts +6 -6
  143. package/dist/components/Text/style.css.d.ts.map +1 -1
  144. package/dist/components/Text/style.css.js +1 -2
  145. package/dist/components/Text/variables.css.d.ts +4 -2
  146. package/dist/components/Text/variables.css.d.ts.map +1 -1
  147. package/dist/components/Text/variables.css.js +3 -4
  148. package/dist/components/TextArea/index.d.ts.map +1 -1
  149. package/dist/components/TextArea/index.js +3 -1
  150. package/dist/components/TextInput/index.d.ts.map +1 -1
  151. package/dist/components/TextInput/index.js +6 -1
  152. package/dist/components/TextInput/styles.css.d.ts +1 -1
  153. package/dist/components/TextInput/styles.css.d.ts.map +1 -1
  154. package/dist/components/TimeInput/index.d.ts.map +1 -1
  155. package/dist/components/TimeInput/index.js +2 -1
  156. package/dist/components/Toaster/components/CloseButton.js +1 -1
  157. package/dist/components/Toggle/index.d.ts +2 -7
  158. package/dist/components/Toggle/index.d.ts.map +1 -1
  159. package/dist/components/Toggle/index.js +13 -1
  160. package/dist/components/Tooltip/index.d.ts +1 -1
  161. package/dist/components/UnitInput/index.d.ts.map +1 -1
  162. package/dist/components/UnitInput/index.js +2 -1
  163. package/dist/components/UnitInput/styles.css.d.ts +2 -2
  164. package/dist/components/VerificationCode/styles.css.d.ts +1 -1
  165. package/dist/components/compositions/OptionSelector/__mock__/resources.d.ts.map +1 -1
  166. package/dist/components/compositions/OptionSelector/index.js +1 -1
  167. package/dist/index.js +3 -2
  168. package/dist/theme/ThemeProvider.d.ts.map +1 -1
  169. package/dist/theme/ThemeProvider.js +46 -4
  170. package/dist/theme/index.d.ts +3 -2
  171. package/dist/theme/index.d.ts.map +1 -1
  172. package/dist/theme/index.js +1 -2
  173. package/dist/ui.css +1 -1
  174. package/package.json +3 -3
  175. package/dist/components/SelectableCard/index.js +0 -232
@@ -13,7 +13,7 @@ export declare const BaseDialog: ({ ariaLabel, className, children, "data-testid
13
13
  export declare const Dialog: (({ ariaLabel, className, children, "data-testid": dataTestId, disclosure, hideOnClickOutside, hideOnEsc, id, isClosable, onBeforeClose, onClose, open, placement, sentiment, title, style, }: DialogProps) => import("react/jsx-runtime").JSX.Element) & {
14
14
  Button: ({ children, onClick, disabled, tooltip, style, }: {
15
15
  children: import("react").ReactNode;
16
- } & Pick<{
16
+ } & Pick<({
17
17
  type?: import("react").ButtonHTMLAttributes<HTMLButtonElement>["type"];
18
18
  autoFocus?: import("react").ButtonHTMLAttributes<HTMLButtonElement>["autoFocus"];
19
19
  role?: import("react").AriaRole;
@@ -45,16 +45,31 @@ export declare const Dialog: (({ ariaLabel, className, children, "data-testid":
45
45
  } & {
46
46
  disabled?: boolean | undefined;
47
47
  fullWidth?: boolean | undefined;
48
- sentiment?: "primary" | "secondary" | "neutral" | "success" | "danger" | "warning" | "info" | "white" | "black" | undefined;
49
- size?: "large" | "medium" | "small" | "xsmall" | undefined;
48
+ sentiment?: "danger" | "info" | "neutral" | "success" | "primary" | "warning" | "black" | "white" | "secondary" | undefined;
49
+ size?: "small" | "large" | "medium" | "xsmall" | undefined;
50
50
  variant?: "filled" | "outlined" | "ghost" | undefined;
51
- } & {
51
+ } & ({
52
52
  children: import("react").ReactNode;
53
53
  name?: string;
54
+ } & ((Without<{
55
+ href?: string;
56
+ target?: string;
57
+ download?: string;
58
+ }, {
59
+ render: import("@ultraviolet/utils").RenderProp;
60
+ }> & {
61
+ render: import("@ultraviolet/utils").RenderProp;
62
+ }) | (Without<{
63
+ render: import("@ultraviolet/utils").RenderProp;
64
+ }, {
65
+ href?: string;
66
+ target?: string;
67
+ download?: string;
68
+ }> & {
54
69
  href?: string;
55
70
  target?: string;
56
71
  download?: string;
57
- } & import("react").RefAttributes<Element>, "tooltip" | "style" | "disabled" | "onClick">) => import("react/jsx-runtime").JSX.Element;
72
+ })))) & import("react").RefAttributes<Element>, "tooltip" | "style" | "disabled" | "onClick">) => import("react/jsx-runtime").JSX.Element;
58
73
  Buttons: ({ secondaryButton, primaryButton, }: {
59
74
  secondaryButton: import("react").ReactNode;
60
75
  primaryButton: import("react").ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Dialog/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAG3C,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAEhC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAOlD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAKlD,KAAK,WAAW,GAAG,IAAI,CACrB,cAAc,CAAC,OAAO,KAAK,CAAC,EAC1B,WAAW,GACX,UAAU,GACV,WAAW,GACX,aAAa,GACb,YAAY,GACZ,oBAAoB,GACpB,WAAW,GACX,IAAI,GACJ,YAAY,GACZ,eAAe,GACf,SAAS,GACT,MAAM,GACN,WAAW,GACX,OAAO,CACV,GAAG;IACF,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,eAAe,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,6LAiBxB,WAAW,4CA4Db,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,MAAM,iMAjEhB,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwEZ,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Dialog/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAG3C,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAEhC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAOlD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAKlD,KAAK,WAAW,GAAG,IAAI,CACrB,cAAc,CAAC,OAAO,KAAK,CAAC,EAC1B,WAAW,GACX,UAAU,GACV,WAAW,GACX,aAAa,GACb,YAAY,GACZ,oBAAoB,GACpB,WAAW,GACX,IAAI,GACJ,YAAY,GACZ,eAAe,GACf,SAAS,GACT,MAAM,GACN,WAAW,GACX,OAAO,CACV,GAAG;IACF,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,eAAe,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,UAAU,GAAI,6LAiBxB,WAAW,4CA4Db,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,MAAM,iMAjEhB,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwEZ,CAAA"}
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  import { jsx, jsxs, Fragment } from "react/jsx-runtime";
3
- import { AlertCircleIcon, CheckIcon } from "@ultraviolet/icons";
3
+ import { AlertCircleIcon } from "@ultraviolet/icons/AlertCircleIcon";
4
+ import { CheckIcon } from "@ultraviolet/icons/CheckIcon";
4
5
  import { cn } from "@ultraviolet/utils";
5
6
  import { useMemo } from "react";
6
7
  import { Bullet } from "../Bullet/index.js";
@@ -4,7 +4,7 @@ export declare const SIZES: {
4
4
  small: number;
5
5
  };
6
6
  export type SizeProp = keyof typeof SIZES;
7
- export declare const drawer: Record<"large" | "medium" | "small", string>;
7
+ export declare const drawer: Record<"small" | "large" | "medium", string>;
8
8
  export declare const drawerContentWrapper: string;
9
9
  export declare const drawerChildrenWrapper: string;
10
10
  export declare const drawerContent: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/EmptyState/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAIrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAG9C,KAAK,eAAe,GAAG;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,SAAS,CAAA;IACtB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,aAAa,CAAC,EAAE,SAAS,CAAA;IACzB,eAAe,CAAC,EAAE,SAAS,CAAA;IAC3B,SAAS,CAAC,EAAE;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,kJAaxB,eAAe,4CA2DjB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/EmptyState/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAIrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAG9C,KAAK,eAAe,GAAG;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,SAAS,CAAA;IACtB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,aAAa,CAAC,EAAE,SAAS,CAAA;IACzB,eAAe,CAAC,EAAE,SAAS,CAAA;IAC3B,SAAS,CAAC,EAAE;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,kJAaxB,eAAe,4CAwEjB,CAAA"}
@@ -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,
@@ -49,7 +58,9 @@ const EmptyState = ({
49
58
  /* @__PURE__ */ jsx(
50
59
  Text,
51
60
  {
52
- as: "p",
61
+ as: description && ["string", "number", "bigint", "boolean"].includes(
62
+ typeof description
63
+ ) ? "p" : "div",
53
64
  placement: "center",
54
65
  sentiment: "neutral",
55
66
  variant: size === "small" ? "bodySmall" : "body",
@@ -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":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ExpandableCard/index.tsx"],"names":[],"mappings":"AAKA,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"}
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  import { jsxs, jsx } from "react/jsx-runtime";
3
- import { DragIcon, ArrowDownIcon } from "@ultraviolet/icons";
3
+ import { ArrowDownIcon } from "@ultraviolet/icons/ArrowDownIcon";
4
+ import { DragIcon } from "@ultraviolet/icons/DragIcon";
4
5
  import { useTheme } from "@ultraviolet/themes";
5
6
  import { cn } from "@ultraviolet/utils";
6
7
  import { forwardRef, useRef, useState, useCallback } from "react";
@@ -181,27 +182,35 @@ const BaseExpandableCard = forwardRef(
181
182
  },
182
183
  clicking ? "closed" : "open"
183
184
  ),
184
- draggable && index === 0 ? /* @__PURE__ */ jsx(
185
- "div",
186
- {
187
- className: dropableArea,
188
- "data-first": true,
189
- onDragLeave: (event) => onDrag(event, "transparent", true),
190
- onDragOver: (event) => onDrag(event, theme.colors.primary.border, true),
191
- onDrop: (event) => handleDrop(event, true),
192
- ref: draggableFirstRef
193
- }
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
+ )
194
199
  ) : null,
195
- draggable ? /* @__PURE__ */ jsx(
196
- "div",
197
- {
198
- className: dropableArea,
199
- "data-testid": `${value}-dropable-area`,
200
- onDragLeave: (event) => onDrag(event, "transparent"),
201
- onDragOver: (event) => onDrag(event, theme.colors.primary.border),
202
- onDrop: handleDrop,
203
- ref: draggableRef
204
- }
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
+ )
205
214
  ) : null
206
215
  ]
207
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,6 +1,6 @@
1
1
  "use client";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import { UploadIcon } from "@ultraviolet/icons";
3
+ import { UploadIcon } from "@ultraviolet/icons/UploadIcon";
4
4
  import { useState, useId, useRef, useLayoutEffect, useEffect } from "react";
5
5
  import { Label } from "../Label/index.js";
6
6
  import { Stack } from "../Stack/index.js";
@@ -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,6 +1,6 @@
1
1
  "use client";
2
2
  import { jsxs, jsx } from "react/jsx-runtime";
3
- import { CloseIcon } from "@ultraviolet/icons";
3
+ import { CloseIcon } from "@ultraviolet/icons/CloseIcon";
4
4
  import { cn } from "@ultraviolet/utils";
5
5
  import { useReducer } from "react";
6
6
  import { Button } from "../Button/index.js";
@@ -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":"AAQA,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"}
@@ -1,11 +1,13 @@
1
1
  "use client";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
- import { ArrowLeftIcon, OpenInNewIcon, ArrowRightIcon } from "@ultraviolet/icons";
4
- import { cn } from "@ultraviolet/utils";
3
+ import { ArrowLeftIcon } from "@ultraviolet/icons/ArrowLeftIcon";
4
+ import { ArrowRightIcon } from "@ultraviolet/icons/ArrowRightIcon";
5
+ import { OpenInNewIcon } from "@ultraviolet/icons/OpenInNewIcon";
6
+ import { cn, renderElement } from "@ultraviolet/utils";
5
7
  import { forwardRef, useState, useRef, useMemo, useEffect } from "react";
6
8
  import recursivelyGetChildrenString from "../../helpers/recursivelyGetChildrenString.js";
7
9
  import { Tooltip } from "../Tooltip/index.js";
8
- import { iconLeftLink, containerIconLink, iconRightLink, link, defaultLink } from "./styles.css.js";
10
+ import { link, defaultLink, iconLeftLink, containerIconLink, iconRightLink } from "./styles.css.js";
9
11
  const ICON_SIZE = "small";
10
12
  const BLANK_TARGET_ICON_SIZE = "small";
11
13
  const Link = forwardRef(
@@ -27,7 +29,8 @@ const Link = forwardRef(
27
29
  oneLine = false,
28
30
  "data-testid": dataTestId,
29
31
  variant = "standalone",
30
- style
32
+ style,
33
+ render
31
34
  }, ref) => {
32
35
  const isBlank = target === "_blank";
33
36
  const computedRel = rel || (isBlank ? "noopener noreferrer" : void 0);
@@ -50,23 +53,34 @@ const Link = forwardRef(
50
53
  setIsTruncated(offsetWidth < scrollWidth);
51
54
  }
52
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
+ }
53
77
  return /* @__PURE__ */ jsx(Tooltip, { text: oneLine && isTruncated ? finalStringChildren : "", children: /* @__PURE__ */ jsxs(
54
78
  "a",
55
79
  {
56
80
  "aria-current": ariaCurrent,
57
81
  "aria-keyshortcuts": ariaKeyshortcuts,
58
82
  "aria-label": ariaLabel,
59
- className: cn(
60
- className,
61
- link({
62
- oneLine,
63
- prominence,
64
- sentiment,
65
- type: variant,
66
- variant: textVariant
67
- }),
68
- defaultLink
69
- ),
83
+ className: computedClassName,
70
84
  "data-testid": dataTestId,
71
85
  "data-variant": variant,
72
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":"AAMA,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,17 +1,18 @@
1
1
  "use client";
2
- import { jsxs, Fragment, jsx } from "react/jsx-runtime";
3
- import { ArrowUpIcon, ArrowDownIcon } from "@ultraviolet/icons";
2
+ import { jsxs, Fragment as Fragment$1, jsx } from "react/jsx-runtime";
3
+ import { ArrowDownIcon } from "@ultraviolet/icons/ArrowDownIcon";
4
+ import { ArrowUpIcon } from "@ultraviolet/icons/ArrowUpIcon";
4
5
  import { theme } from "@ultraviolet/themes";
5
6
  import { cn } from "@ultraviolet/utils";
6
7
  import { assignInlineVars } from "@vanilla-extract/dynamic";
7
- import { forwardRef, useId, useRef, useEffect, useCallback, Children, isValidElement } from "react";
8
+ import { forwardRef, useId, useRef, useEffect, useCallback, Children, isValidElement, Fragment } from "react";
8
9
  import { Button } from "../Button/index.js";
9
10
  import { Checkbox } from "../Checkbox/index.js";
10
11
  import { Tooltip } from "../Tooltip/index.js";
11
12
  import { Cell } from "./Cell.js";
12
13
  import { ColumnProvider } from "./ColumnProvider.js";
13
14
  import { useListContext } from "./ListContext.js";
14
- import { listNoPaddingCell, listCheckboxContainer, listCheckboxInRange, listRow, listExpandableWrapper, listExpandableCell } from "./styles.css.js";
15
+ import { listNoPaddingCell, listCheckboxContainer, listCheckboxInRange, listExpandableButton, listRow, listExpandableWrapper, listExpandableCell } from "./styles.css.js";
15
16
  import { paddingExpandableCell } from "./variables.css.js";
16
17
  const Row = forwardRef(
17
18
  ({
@@ -78,11 +79,19 @@ const Row = forwardRef(
78
79
  setRefList([...refList, checkboxRef]);
79
80
  }
80
81
  }, [refList, setRefList]);
81
- 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(
82
91
  (child) => isValidElement(child)
83
92
  );
84
93
  const totalColumns = columns.length + (selectable ? 1 : 0) + (expandButton ? 1 : 0);
85
- return /* @__PURE__ */ jsxs(Fragment, { children: [
94
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [
86
95
  /* @__PURE__ */ jsxs(
87
96
  "tr",
88
97
  {
@@ -135,6 +144,7 @@ const Row = forwardRef(
135
144
  Button,
136
145
  {
137
146
  "aria-label": "expand",
147
+ className: listExpandableButton,
138
148
  "data-testid": "list-expand-button",
139
149
  disabled: disabled || !expandable,
140
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"}