@clickhouse/click-ui 0.6.2-rc3 → 0.7.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 (212) hide show
  1. package/dist/cjs/click-ui.css +1872 -59
  2. package/dist/cjs/components/Alert/index.cjs +2 -2
  3. package/dist/cjs/components/Alert/index.cjs.map +1 -1
  4. package/dist/cjs/components/Assets/Logos/Polaris.cjs +22 -0
  5. package/dist/cjs/components/Assets/Logos/Polaris.cjs.map +1 -0
  6. package/dist/cjs/components/Assets/Logos/system/LogosDark.cjs +2 -0
  7. package/dist/cjs/components/Assets/Logos/system/LogosDark.cjs.map +1 -1
  8. package/dist/cjs/components/Assets/Logos/system/LogosLight.cjs +2 -0
  9. package/dist/cjs/components/Assets/Logos/system/LogosLight.cjs.map +1 -1
  10. package/dist/cjs/components/BigStat/BigStat.css +77 -0
  11. package/dist/cjs/components/BigStat/BigStat.module.css.cjs +22 -0
  12. package/dist/cjs/components/BigStat/BigStat.module.css.cjs.map +1 -0
  13. package/dist/cjs/components/BigStat/index.cjs +60 -52
  14. package/dist/cjs/components/BigStat/index.cjs.map +1 -1
  15. package/dist/cjs/components/ButtonGroup/index.cjs +1 -1
  16. package/dist/cjs/components/ButtonGroup/index.cjs.map +1 -1
  17. package/dist/cjs/components/CardPromotion/index.cjs +1 -1
  18. package/dist/cjs/components/CardPromotion/index.cjs.map +1 -1
  19. package/dist/cjs/components/CardSecondary/CardSecondary.css +99 -0
  20. package/dist/cjs/components/CardSecondary/CardSecondary.module.css.cjs +39 -0
  21. package/dist/cjs/components/CardSecondary/CardSecondary.module.css.cjs.map +1 -0
  22. package/dist/cjs/components/CardSecondary/index.cjs +35 -84
  23. package/dist/cjs/components/CardSecondary/index.cjs.map +1 -1
  24. package/dist/cjs/components/ConfirmationDialog/ConfirmationDialog.css +20 -0
  25. package/dist/cjs/components/ConfirmationDialog/ConfirmationDialog.module.css.cjs +15 -0
  26. package/dist/cjs/components/ConfirmationDialog/ConfirmationDialog.module.css.cjs.map +1 -0
  27. package/dist/cjs/components/ConfirmationDialog/index.cjs +6 -11
  28. package/dist/cjs/components/ConfirmationDialog/index.cjs.map +1 -1
  29. package/dist/cjs/components/ContextMenu/ContextMenu.css +28 -0
  30. package/dist/cjs/components/ContextMenu/ContextMenu.module.css.cjs +10 -0
  31. package/dist/cjs/components/ContextMenu/ContextMenu.module.css.cjs.map +1 -0
  32. package/dist/cjs/components/ContextMenu/index.cjs +27 -29
  33. package/dist/cjs/components/ContextMenu/index.cjs.map +1 -1
  34. package/dist/cjs/components/CrossButton/index.cjs +5 -1
  35. package/dist/cjs/components/CrossButton/index.cjs.map +1 -1
  36. package/dist/cjs/components/DatePicker/Common.cjs +1 -1
  37. package/dist/cjs/components/DatePicker/Common.cjs.map +1 -1
  38. package/dist/cjs/components/Dropdown/Dropdown.css +13 -0
  39. package/dist/cjs/components/Dropdown/Dropdown.module.css.cjs +11 -0
  40. package/dist/cjs/components/Dropdown/Dropdown.module.css.cjs.map +1 -0
  41. package/dist/cjs/components/Dropdown/index.cjs +19 -13
  42. package/dist/cjs/components/Dropdown/index.cjs.map +1 -1
  43. package/dist/cjs/components/FileTabs/index.cjs +1 -1
  44. package/dist/cjs/components/FileTabs/index.cjs.map +1 -1
  45. package/dist/cjs/components/Flyout/Flyout.css +231 -0
  46. package/dist/cjs/components/Flyout/Flyout.module.css.cjs +93 -0
  47. package/dist/cjs/components/Flyout/Flyout.module.css.cjs.map +1 -0
  48. package/dist/cjs/components/Flyout/index.cjs +148 -126
  49. package/dist/cjs/components/Flyout/index.cjs.map +1 -1
  50. package/dist/cjs/components/GenericMenu/GenericMenu.css +176 -0
  51. package/dist/cjs/components/GenericMenu/GenericMenu.module.css.cjs +23 -0
  52. package/dist/cjs/components/GenericMenu/GenericMenu.module.css.cjs.map +1 -0
  53. package/dist/cjs/components/GenericMenu/index.cjs +93 -99
  54. package/dist/cjs/components/GenericMenu/index.cjs.map +1 -1
  55. package/dist/cjs/components/HoverCard/index.cjs +1 -1
  56. package/dist/cjs/components/HoverCard/index.cjs.map +1 -1
  57. package/dist/cjs/components/IconButton/index.cjs +2 -1
  58. package/dist/cjs/components/IconButton/index.cjs.map +1 -1
  59. package/dist/cjs/components/InputWrapper/InputWrapper.css +221 -0
  60. package/dist/cjs/components/InputWrapper/InputWrapper.module.css.cjs +39 -0
  61. package/dist/cjs/components/InputWrapper/InputWrapper.module.css.cjs.map +1 -0
  62. package/dist/cjs/components/InputWrapper/index.cjs +84 -185
  63. package/dist/cjs/components/InputWrapper/index.cjs.map +1 -1
  64. package/dist/cjs/components/Popover/Popover.css +12 -0
  65. package/dist/cjs/components/Popover/Popover.module.css.cjs +11 -0
  66. package/dist/cjs/components/Popover/Popover.module.css.cjs.map +1 -0
  67. package/dist/cjs/components/Popover/index.cjs +26 -19
  68. package/dist/cjs/components/Popover/index.cjs.map +1 -1
  69. package/dist/cjs/components/RadioGroup/RadioGroup.css +99 -0
  70. package/dist/cjs/components/RadioGroup/RadioGroup.module.css.cjs +18 -0
  71. package/dist/cjs/components/RadioGroup/RadioGroup.module.css.cjs.map +1 -0
  72. package/dist/cjs/components/RadioGroup/index.cjs +28 -77
  73. package/dist/cjs/components/RadioGroup/index.cjs.map +1 -1
  74. package/dist/cjs/components/Select/common/InternalSelect.cjs +1 -1
  75. package/dist/cjs/components/Select/common/InternalSelect.cjs.map +1 -1
  76. package/dist/cjs/components/SplitButton/index.cjs +2 -1
  77. package/dist/cjs/components/SplitButton/index.cjs.map +1 -1
  78. package/dist/cjs/components/Table/Table.css +376 -0
  79. package/dist/cjs/components/Table/Table.module.css.cjs +86 -0
  80. package/dist/cjs/components/Table/Table.module.css.cjs.map +1 -0
  81. package/dist/cjs/components/Table/index.cjs +132 -214
  82. package/dist/cjs/components/Table/index.cjs.map +1 -1
  83. package/dist/cjs/components/Toast/Toast.css +142 -0
  84. package/dist/cjs/components/Toast/Toast.module.css.cjs +38 -0
  85. package/dist/cjs/components/Toast/Toast.module.css.cjs.map +1 -0
  86. package/dist/cjs/components/Toast/index.cjs +43 -96
  87. package/dist/cjs/components/Toast/index.cjs.map +1 -1
  88. package/dist/cjs/components/Tooltip/Tooltip.css +17 -0
  89. package/dist/cjs/components/Tooltip/Tooltip.module.css.cjs +15 -0
  90. package/dist/cjs/components/Tooltip/Tooltip.module.css.cjs.map +1 -0
  91. package/dist/cjs/components/Tooltip/index.cjs +12 -24
  92. package/dist/cjs/components/Tooltip/index.cjs.map +1 -1
  93. package/dist/cjs/components/VerticalStepper/VerticalStepper.css +302 -0
  94. package/dist/cjs/components/VerticalStepper/VerticalStepper.module.css.cjs +84 -0
  95. package/dist/cjs/components/VerticalStepper/VerticalStepper.module.css.cjs.map +1 -0
  96. package/dist/cjs/components/VerticalStepper/index.cjs +85 -110
  97. package/dist/cjs/components/VerticalStepper/index.cjs.map +1 -1
  98. package/dist/esm/click-ui.css +1872 -59
  99. package/dist/esm/components/Alert/index.js +2 -2
  100. package/dist/esm/components/Alert/index.js.map +1 -1
  101. package/dist/esm/components/Assets/Logos/Polaris.js +18 -0
  102. package/dist/esm/components/Assets/Logos/Polaris.js.map +1 -0
  103. package/dist/esm/components/Assets/Logos/system/LogosDark.js +2 -0
  104. package/dist/esm/components/Assets/Logos/system/LogosDark.js.map +1 -1
  105. package/dist/esm/components/Assets/Logos/system/LogosLight.js +2 -0
  106. package/dist/esm/components/Assets/Logos/system/LogosLight.js.map +1 -1
  107. package/dist/esm/components/BigStat/BigStat.css +77 -0
  108. package/dist/esm/components/BigStat/BigStat.module.css.js +18 -0
  109. package/dist/esm/components/BigStat/BigStat.module.css.js.map +1 -0
  110. package/dist/esm/components/BigStat/index.js +60 -52
  111. package/dist/esm/components/BigStat/index.js.map +1 -1
  112. package/dist/esm/components/ButtonGroup/index.js +1 -1
  113. package/dist/esm/components/ButtonGroup/index.js.map +1 -1
  114. package/dist/esm/components/CardPromotion/index.js +1 -1
  115. package/dist/esm/components/CardPromotion/index.js.map +1 -1
  116. package/dist/esm/components/CardSecondary/CardSecondary.css +99 -0
  117. package/dist/esm/components/CardSecondary/CardSecondary.module.css.js +25 -0
  118. package/dist/esm/components/CardSecondary/CardSecondary.module.css.js.map +1 -0
  119. package/dist/esm/components/CardSecondary/index.js +35 -84
  120. package/dist/esm/components/CardSecondary/index.js.map +1 -1
  121. package/dist/esm/components/ConfirmationDialog/ConfirmationDialog.css +20 -0
  122. package/dist/esm/components/ConfirmationDialog/ConfirmationDialog.module.css.js +9 -0
  123. package/dist/esm/components/ConfirmationDialog/ConfirmationDialog.module.css.js.map +1 -0
  124. package/dist/esm/components/ConfirmationDialog/index.js +6 -11
  125. package/dist/esm/components/ConfirmationDialog/index.js.map +1 -1
  126. package/dist/esm/components/ContextMenu/ContextMenu.css +28 -0
  127. package/dist/esm/components/ContextMenu/ContextMenu.module.css.js +6 -0
  128. package/dist/esm/components/ContextMenu/ContextMenu.module.css.js.map +1 -0
  129. package/dist/esm/components/ContextMenu/index.js +28 -30
  130. package/dist/esm/components/ContextMenu/index.js.map +1 -1
  131. package/dist/esm/components/CrossButton/index.js +5 -1
  132. package/dist/esm/components/CrossButton/index.js.map +1 -1
  133. package/dist/esm/components/DatePicker/Common.js +1 -1
  134. package/dist/esm/components/DatePicker/Common.js.map +1 -1
  135. package/dist/esm/components/Dropdown/Dropdown.css +13 -0
  136. package/dist/esm/components/Dropdown/Dropdown.module.css.js +7 -0
  137. package/dist/esm/components/Dropdown/Dropdown.module.css.js.map +1 -0
  138. package/dist/esm/components/Dropdown/index.js +19 -13
  139. package/dist/esm/components/Dropdown/index.js.map +1 -1
  140. package/dist/esm/components/FileTabs/index.js +1 -1
  141. package/dist/esm/components/FileTabs/index.js.map +1 -1
  142. package/dist/esm/components/Flyout/Flyout.css +231 -0
  143. package/dist/esm/components/Flyout/Flyout.module.css.js +62 -0
  144. package/dist/esm/components/Flyout/Flyout.module.css.js.map +1 -0
  145. package/dist/esm/components/Flyout/index.js +149 -127
  146. package/dist/esm/components/Flyout/index.js.map +1 -1
  147. package/dist/esm/components/GenericMenu/GenericMenu.css +176 -0
  148. package/dist/esm/components/GenericMenu/GenericMenu.module.css.js +18 -0
  149. package/dist/esm/components/GenericMenu/GenericMenu.module.css.js.map +1 -0
  150. package/dist/esm/components/GenericMenu/index.js +93 -99
  151. package/dist/esm/components/GenericMenu/index.js.map +1 -1
  152. package/dist/esm/components/HoverCard/index.js +1 -1
  153. package/dist/esm/components/HoverCard/index.js.map +1 -1
  154. package/dist/esm/components/IconButton/index.js +2 -1
  155. package/dist/esm/components/IconButton/index.js.map +1 -1
  156. package/dist/esm/components/InputWrapper/InputWrapper.css +221 -0
  157. package/dist/esm/components/InputWrapper/InputWrapper.module.css.js +27 -0
  158. package/dist/esm/components/InputWrapper/InputWrapper.module.css.js.map +1 -0
  159. package/dist/esm/components/InputWrapper/index.js +84 -185
  160. package/dist/esm/components/InputWrapper/index.js.map +1 -1
  161. package/dist/esm/components/Popover/Popover.css +12 -0
  162. package/dist/esm/components/Popover/Popover.module.css.js +7 -0
  163. package/dist/esm/components/Popover/Popover.module.css.js.map +1 -0
  164. package/dist/esm/components/Popover/index.js +26 -19
  165. package/dist/esm/components/Popover/index.js.map +1 -1
  166. package/dist/esm/components/RadioGroup/RadioGroup.css +99 -0
  167. package/dist/esm/components/RadioGroup/RadioGroup.module.css.js +13 -0
  168. package/dist/esm/components/RadioGroup/RadioGroup.module.css.js.map +1 -0
  169. package/dist/esm/components/RadioGroup/index.js +28 -77
  170. package/dist/esm/components/RadioGroup/index.js.map +1 -1
  171. package/dist/esm/components/Select/common/InternalSelect.js +1 -1
  172. package/dist/esm/components/Select/common/InternalSelect.js.map +1 -1
  173. package/dist/esm/components/SplitButton/index.js +2 -1
  174. package/dist/esm/components/SplitButton/index.js.map +1 -1
  175. package/dist/esm/components/Table/Table.css +376 -0
  176. package/dist/esm/components/Table/Table.module.css.js +63 -0
  177. package/dist/esm/components/Table/Table.module.css.js.map +1 -0
  178. package/dist/esm/components/Table/index.js +132 -214
  179. package/dist/esm/components/Table/index.js.map +1 -1
  180. package/dist/esm/components/Toast/Toast.css +142 -0
  181. package/dist/esm/components/Toast/Toast.module.css.js +26 -0
  182. package/dist/esm/components/Toast/Toast.module.css.js.map +1 -0
  183. package/dist/esm/components/Toast/index.js +43 -96
  184. package/dist/esm/components/Toast/index.js.map +1 -1
  185. package/dist/esm/components/Tooltip/Tooltip.css +17 -0
  186. package/dist/esm/components/Tooltip/Tooltip.module.css.js +9 -0
  187. package/dist/esm/components/Tooltip/Tooltip.module.css.js.map +1 -0
  188. package/dist/esm/components/Tooltip/index.js +12 -24
  189. package/dist/esm/components/Tooltip/index.js.map +1 -1
  190. package/dist/esm/components/VerticalStepper/VerticalStepper.css +302 -0
  191. package/dist/esm/components/VerticalStepper/VerticalStepper.module.css.js +55 -0
  192. package/dist/esm/components/VerticalStepper/VerticalStepper.module.css.js.map +1 -0
  193. package/dist/esm/components/VerticalStepper/index.js +85 -110
  194. package/dist/esm/components/VerticalStepper/index.js.map +1 -1
  195. package/dist/types/components/Assets/Logos/Polaris.d.ts +3 -0
  196. package/dist/types/components/Assets/Logos/system/types.d.ts +1 -1
  197. package/dist/types/components/BigStat/BigStat.d.ts +1 -1
  198. package/dist/types/components/CardSecondary/CardSecondary.d.ts +1 -1
  199. package/dist/types/components/ConfirmationDialog/ConfirmationDialog.d.ts +1 -1
  200. package/dist/types/components/CrossButton/CrossButton.d.ts +6 -2
  201. package/dist/types/components/Flyout/Flyout.d.ts +8 -6
  202. package/dist/types/components/Flyout/Flyout.types.d.ts +3 -0
  203. package/dist/types/components/GenericMenu/GenericMenu.d.ts +29 -12
  204. package/dist/types/components/IconButton/IconButton.types.d.ts +3 -0
  205. package/dist/types/components/InputWrapper/InputWrapper.d.ts +17 -13
  206. package/dist/types/components/RadioGroup/RadioGroup.d.ts +2 -2
  207. package/dist/types/components/SplitButton/SplitButton.d.ts +1 -1
  208. package/dist/types/components/SplitButton/SplitButton.types.d.ts +3 -0
  209. package/dist/types/components/Toast/Toast.d.ts +1 -1
  210. package/dist/types/components/Tooltip/Tooltip.d.ts +1 -1
  211. package/dist/types/components/VerticalStepper/VerticalStepper.d.ts +2 -2
  212. package/package.json +1 -1
@@ -1,48 +1,43 @@
1
+ require("./Table.css");
1
2
  'use strict';
2
3
 
3
4
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
5
 
5
6
  const jsxRuntime = require('react/jsx-runtime');
6
7
  const react = require('react');
7
- const styledComponents = require('styled-components');
8
8
  const MiddleTruncator = require('../MiddleTruncator/index.cjs');
9
+ const cva = require('../../lib/cva.cjs');
10
+ const Table_module = require('./Table.module.css.cjs');
9
11
  const Checkbox = require('../Checkbox/index.cjs');
10
12
  const IconButton = require('../IconButton/index.cjs');
11
13
  const Icon = require('../Icon/index.cjs');
12
14
  const Text = require('../Text/index.cjs');
13
15
  const EllipsisContent = require('../EllipsisContent/index.cjs');
16
+ const classVarianceAuthority = require('class-variance-authority');
14
17
 
15
- const StyledHeader = styledComponents.styled.th.withConfig({
16
- componentId: "sc-1q458rb-0"
17
- })(["", " text-align:left;", ""], ({
18
- theme,
19
- $size
20
- }) => `
21
- padding: ${theme.click.table.header.cell.space[$size].y} ${theme.click.table.body.cell.space[$size].x};
22
- font: ${theme.click.table.header.title.default};
23
- color: ${theme.click.table.header.color.title.default};
24
- `, ({
25
- $resizable
26
- }) => $resizable && `
27
- position: relative;
28
- `);
29
- const Resizer = styledComponents.styled.div.withConfig({
30
- componentId: "sc-1q458rb-1"
31
- })(["position:absolute;top:0;right:0;width:24px;height:100%;cursor:col-resize;user-select:none;z-index:1;transition:opacity 0.2s;border-radius:0.5rem;transform:translateX(50%);&:hover{opacity:0.6;}&::before{content:' ';background:", ";display:inline-block;top:25%;width:2px;height:20px;position:relative;left:50%;transform:translateX(-50%);}&:focus-visible{outline:2px solid ", ";outline-offset:2px;opacity:1;}"], ({
32
- theme
33
- }) => theme.click.table.header.color.checkbox.border.default, ({
34
- theme
35
- }) => theme.click.global.color.outline.default);
36
- const HeaderContentWrapper = styledComponents.styled.div.withConfig({
37
- componentId: "sc-1q458rb-2"
38
- })(["display:flex;align-items:center;justify-content:start;gap:inherit;", ""], ({
39
- $interactive
40
- }) => $interactive && "cursor: pointer;");
41
- const SortIcon = styledComponents.styled(Icon.Icon).withConfig({
42
- componentId: "sc-1q458rb-3"
43
- })(["transition:all 200ms;transform:rotate(", ");"], ({
44
- $sortDir
45
- }) => $sortDir === "desc" ? "180deg" : "0deg");
18
+ const headerVariants = classVarianceAuthority.cva(Table_module.default.table__header, {
19
+ variants: {
20
+ size: {
21
+ sm: Table_module.default.table__header_size_sm,
22
+ md: Table_module.default.table__header_size_md
23
+ },
24
+ resizable: {
25
+ true: Table_module.default.table__header_resizable,
26
+ false: ""
27
+ }
28
+ },
29
+ defaultVariants: {
30
+ resizable: false
31
+ }
32
+ });
33
+ const sortIconVariants = classVarianceAuthority.cva(Table_module.default["table__sort-icon"], {
34
+ variants: {
35
+ dir: {
36
+ asc: Table_module.default["table__sort-icon_dir_asc"],
37
+ desc: Table_module.default["table__sort-icon_dir_desc"]
38
+ }
39
+ }
40
+ });
46
41
  const TableHeader = ({
47
42
  label,
48
43
  sortDir,
@@ -56,6 +51,7 @@ const TableHeader = ({
56
51
  onResizeStart,
57
52
  onKeyboardResize,
58
53
  overflowMode,
54
+ className,
59
55
  ...props
60
56
  }) => {
61
57
  if (overflowMode === "wrap" && resizable) {
@@ -91,13 +87,20 @@ const TableHeader = ({
91
87
  break;
92
88
  }
93
89
  };
94
- return /* @__PURE__ */ jsxRuntime.jsxs(StyledHeader, { $size: size, $resizable: resizable, ...props, children: [
95
- /* @__PURE__ */ jsxRuntime.jsxs(HeaderContentWrapper, { onClick: onHeaderClick, $interactive: isInteractive, children: [
96
- isSorted && isSortable && sortPosition == "start" && /* @__PURE__ */ jsxRuntime.jsx(SortIcon, { $sortDir: sortDir, name: "arrow-down", size: "sm" }),
90
+ return /* @__PURE__ */ jsxRuntime.jsxs("th", { ...props, className: cva.cn(headerVariants({
91
+ size,
92
+ resizable
93
+ }), className), children: [
94
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { onClick: onHeaderClick, className: cva.cn(Table_module.default["table__header-content"], isInteractive && Table_module.default["table__header-content_interactive"]), children: [
95
+ isSorted && isSortable && sortPosition == "start" && /* @__PURE__ */ jsxRuntime.jsx(Icon.Icon, { name: "arrow-down", size: "sm", className: cva.cn(sortIconVariants({
96
+ dir: sortDir
97
+ })) }),
97
98
  label,
98
- isSorted && isSortable && sortPosition == "end" && /* @__PURE__ */ jsxRuntime.jsx(SortIcon, { $sortDir: sortDir, name: "arrow-down", size: "sm" })
99
+ isSorted && isSortable && sortPosition == "end" && /* @__PURE__ */ jsxRuntime.jsx(Icon.Icon, { name: "arrow-down", size: "sm", className: cva.cn(sortIconVariants({
100
+ dir: sortDir
101
+ })) })
99
102
  ] }),
100
- showResizer && /* @__PURE__ */ jsxRuntime.jsx(Resizer, { ref: resizerRef, onMouseDown: onResizeStart, role: "separator", "aria-orientation": "vertical", "aria-label": `Resize ${typeof label === "string" ? label : "column"}`, tabIndex: 0, onKeyDown: onResizerKeyDown })
103
+ showResizer && /* @__PURE__ */ jsxRuntime.jsx("div", { ref: resizerRef, onMouseDown: onResizeStart, role: "separator", "aria-orientation": "vertical", "aria-label": `Resize ${typeof label === "string" ? label : "column"}`, tabIndex: 0, onKeyDown: onResizerKeyDown, className: cva.cn(Table_module.default.table__resizer) })
101
104
  ] });
102
105
  };
103
106
  const Thead = ({
@@ -121,7 +124,7 @@ const Thead = ({
121
124
  }
122
125
  };
123
126
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
124
- /* @__PURE__ */ jsxRuntime.jsxs(StyledColGroup, { children: [
127
+ /* @__PURE__ */ jsxRuntime.jsxs("colgroup", { className: cva.cn(Table_module.default.table__colgroup), children: [
125
128
  isSelectable && /* @__PURE__ */ jsxRuntime.jsx("col", { width: 48 }),
126
129
  headers.map((headerProps, index) => {
127
130
  const headerLabel = typeof headerProps.label === "string" ? headerProps.label : `__index_${index}`;
@@ -130,161 +133,67 @@ const Thead = ({
130
133
  }),
131
134
  actionsList.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("col", { width: (actionsList.length + 1) * 32 + 10 })
132
135
  ] }),
133
- /* @__PURE__ */ jsxRuntime.jsx(StyledThead, { ref: theadRef, children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
134
- isSelectable && /* @__PURE__ */ jsxRuntime.jsx(StyledHeader, { $size: size, "aria-label": "Select column", children: /* @__PURE__ */ jsxRuntime.jsx(SelectAllCheckbox, { onCheckedChange: onSelectAll, rows, selectedIds }) }),
136
+ /* @__PURE__ */ jsxRuntime.jsx("thead", { ref: theadRef, className: cva.cn(Table_module.default.table__thead), children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
137
+ isSelectable && /* @__PURE__ */ jsxRuntime.jsx("th", { "aria-label": "Select column", className: cva.cn(headerVariants({
138
+ size
139
+ })), children: /* @__PURE__ */ jsxRuntime.jsx(SelectAllCheckbox, { onCheckedChange: onSelectAll, rows, selectedIds }) }),
135
140
  headers.map((headerProps, index) => /* @__PURE__ */ jsxRuntime.jsx(TableHeader, { onSort: onSort(headerProps, index), size, resizable: resizableColumns, showResizer: resizableColumns && index < headers.length - 1, onResizeStart: onResizeStart?.(index), onKeyboardResize: onKeyboardResize?.(index), ...headerProps }, `table-header-${index}`)),
136
- actionsList.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(StyledHeader, { "aria-label": "Actions", $size: size })
141
+ actionsList.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("th", { "aria-label": "Actions", className: cva.cn(headerVariants({
142
+ size
143
+ })) })
137
144
  ] }) })
138
145
  ] });
139
146
  };
140
- const TableRow = styledComponents.styled.tr.withConfig({
141
- componentId: "sc-1q458rb-4"
142
- })(["overflow:hidden;", " &:last-of-type,&:last-child{border-bottom:none;}[data-mobile-layout='list'] &{@media (max-width:", "){position:relative;display:flex;flex-wrap:wrap;", "}}"], ({
143
- theme,
144
- $isDeleted,
145
- $isDisabled,
146
- $isActive,
147
- $rowHeight
148
- }) => `
149
- ${$rowHeight ? `height: ${$rowHeight};` : ""}
150
- background-color: ${theme.click.table.row.color.background.default};
151
- border-bottom: ${theme.click.table.cell.stroke} solid ${theme.click.table.row.color.stroke.default};
152
-
153
- ${$isActive && `background-color: ${theme.click.table.row.color.background.active};`}
154
-
155
- &:active {
156
- background-color: ${theme.click.table.row.color.background.active};
147
+ const rowVariants = classVarianceAuthority.cva(Table_module.default.table__row, {
148
+ variants: {
149
+ isSelectable: {
150
+ true: Table_module.default.table__row_selectable,
151
+ false: ""
152
+ },
153
+ isActive: {
154
+ true: Table_module.default.table__row_active,
155
+ false: ""
156
+ },
157
+ isDisabled: {
158
+ true: Table_module.default.table__row_disabled,
159
+ false: ""
160
+ },
161
+ showActions: {
162
+ true: Table_module.default["table__row_show-actions"],
163
+ false: ""
164
+ }
165
+ },
166
+ defaultVariants: {
167
+ isSelectable: false,
168
+ isActive: false,
169
+ isDisabled: false,
170
+ showActions: false
171
+ }
172
+ });
173
+ const cellVariants = classVarianceAuthority.cva(Table_module.default.table__data, {
174
+ variants: {
175
+ size: {
176
+ sm: Table_module.default.table__data_size_sm,
177
+ md: Table_module.default.table__data_size_md
157
178
  }
158
- &:hover {
159
- background-color: ${theme.click.table.row.color.background.hover};
179
+ }
180
+ });
181
+ const selectDataVariants = classVarianceAuthority.cva(Table_module.default["table__select-data"], {
182
+ variants: {
183
+ size: {
184
+ sm: Table_module.default["table__select-data_size_sm"],
185
+ md: Table_module.default["table__select-data_size_md"]
160
186
  }
161
- opacity: ${$isDeleted || $isDisabled ? 0.5 : 1};
162
- cursor: ${$isDeleted || $isDisabled ? "not-allowed" : "default"}
163
- `, ({
164
- theme
165
- }) => theme.breakpoint.sizes.md, ({
166
- theme,
167
- $isSelectable = false,
168
- $showActions = false
169
- }) => `
170
- border: ${theme.click.table.cell.stroke} solid ${theme.click.table.row.color.stroke.default};
171
- border-radius: ${theme.click.table.radii.all};
172
- ${$isSelectable ? `padding-left: calc(${theme.click.table.body.cell.space.sm.x} + ${theme.click.table.body.cell.space.sm.x} + ${theme.click.checkbox.size.all});` : ""}
173
- ${$showActions ? `padding-right: calc(${theme.click.table.body.cell.space.sm.x} + ${theme.click.table.body.cell.space.sm.x} + ${theme.click.image.sm.size.width} + ${theme.click.button.iconButton.default.space.x} + ${theme.click.button.iconButton.default.space.x});` : ""}
174
- `);
175
- const TableData = styledComponents.styled.td.withConfig({
176
- componentId: "sc-1q458rb-5"
177
- })(["overflow:hidden;", " [data-mobile-layout='list'] &{@media (max-width:", "){width:auto;min-width:40%;", "}}"], ({
178
- theme,
179
- $size
180
- }) => `
181
- color: ${theme.click.table.row.color.text.default};
182
- font: ${theme.click.table.cell.text.default};
183
- padding: ${theme.click.table.body.cell.space[$size].y} ${theme.click.table.body.cell.space[$size].x};
184
- `, ({
185
- theme
186
- }) => theme.breakpoint.sizes.md, ({
187
- theme
188
- }) => `
189
- padding: ${theme.click.table.body.cell.space.sm.y} ${theme.click.table.body.cell.space.sm.x};
190
- `);
191
- const StyledColGroup = styledComponents.styled.colgroup.withConfig({
192
- componentId: "sc-1q458rb-6"
193
- })(["[data-mobile-layout='list'] &{@media (max-width:", "){display:none;}}"], ({
194
- theme
195
- }) => theme.breakpoint.sizes.md);
196
- const StyledThead = styledComponents.styled.thead.withConfig({
197
- componentId: "sc-1q458rb-7"
198
- })(["tr{overflow:hidden;background-color:", ";", "}[data-mobile-layout='list'] &{@media (max-width:", "){display:none;}}"], ({
199
- theme
200
- }) => theme.click.table.header.color.background.default, ({
201
- theme
202
- }) => ` border-bottom: ${theme.click.table.cell.stroke} solid ${theme.click.table.row.color.stroke.default};
203
- `, ({
204
- theme
205
- }) => theme.breakpoint.sizes.md);
206
- const MobileHeader = styledComponents.styled.div.withConfig({
207
- componentId: "sc-1q458rb-8"
208
- })(["display:none;", " [data-mobile-layout='list'] &{@media (max-width:", "){display:block;}}"], ({
209
- theme
210
- }) => `
211
- color: ${theme.click.table.row.color.label.default};
212
- font: ${theme.click.table.cell.label.default};
213
- `, ({
214
- theme
215
- }) => theme.breakpoint.sizes.md);
216
- const Tbody = styledComponents.styled.tbody.withConfig({
217
- componentId: "sc-1q458rb-9"
218
- })(["[data-mobile-layout='list'] &{@media (max-width:", "){display:flex;flex-direction:column;gap:0.25rem;}}"], ({
219
- theme
220
- }) => theme.breakpoint.sizes.md);
221
- const SelectData = styledComponents.styled.td.withConfig({
222
- componentId: "sc-1q458rb-10"
223
- })(["overflow:hidden;", " [data-mobile-layout='list'] &{@media (max-width:", "){width:auto;align-self:stretch;position:absolute;left:0;top:0;bottom:0;", "}}"], ({
224
- theme,
225
- $size
226
- }) => `
227
- color: ${theme.click.table.row.color.text.default};
228
- font: ${theme.click.table.cell.text.default};
229
- padding: ${theme.click.table.body.cell.space[$size].y} ${theme.click.table.body.cell.space[$size].x};
230
- `, ({
231
- theme
232
- }) => theme.breakpoint.sizes.md, ({
233
- theme
234
- }) => `
235
- padding: ${theme.click.table.body.cell.space.sm.y} ${theme.click.table.body.cell.space.sm.x};
236
- border-right: ${theme.click.table.cell.stroke} solid ${theme.click.table.row.color.stroke.default};
237
- `);
238
- const ActionsList = styledComponents.styled.td.withConfig({
239
- componentId: "sc-1q458rb-11"
240
- })(["overflow:hidden;", " [data-mobile-layout='list'] &{@media (max-width:", "){width:auto;align-self:stretch;position:absolute;right:0;top:0;bottom:0;", "}}"], ({
241
- theme,
242
- $size
243
- }) => `
244
- color: ${theme.click.table.row.color.text.default};
245
- font: ${theme.click.table.cell.text.default};
246
- padding: ${theme.click.table.body.cell.space[$size].y} ${theme.click.table.body.cell.space[$size].x};
247
- `, ({
248
- theme
249
- }) => theme.breakpoint.sizes.md, ({
250
- theme
251
- }) => `
252
- padding: ${theme.click.table.body.cell.space.sm.y} ${theme.click.table.body.cell.space.sm.x};
253
- border-left: 1px solid ${theme.click.table.row.color.stroke.default};
254
- `);
255
- const ActionsContainer = styledComponents.styled.div.withConfig({
256
- componentId: "sc-1q458rb-12"
257
- })(["display:flex;flex-wrap:wrap;gap:0.5rem;overflow:hidden;[data-mobile-layout='list'] &{@media (max-width:", "){flex-direction:column;overflow:auto;flex-wrap:nowrap;}}"], ({
258
- theme
259
- }) => theme.breakpoint.sizes.md);
260
- const TableWrapper = styledComponents.styled.div.withConfig({
261
- componentId: "sc-1q458rb-13"
262
- })(["width:100%;height:100%;overflow-x:auto;", ""], ({
263
- theme
264
- }) => `
265
- border: ${theme.click.table.cell.stroke} solid ${theme.click.table.global.color.stroke.default};
266
- border-radius: ${theme.click.table.radii.all}
267
- `);
268
- const TableOuterContainer = styledComponents.styled.div.withConfig({
269
- componentId: "sc-1q458rb-14"
270
- })(["display:flex;flex-direction:column;gap:1rem;width:100%;"]);
271
- const MobileActions = styledComponents.styled.div.withConfig({
272
- componentId: "sc-1q458rb-15"
273
- })(["display:none;[data-mobile-layout='list'] &{@media (max-width:", "){display:flex;justify-content:space-between;align-items:center;padding:0 ", ";}}"], ({
274
- theme
275
- }) => theme.breakpoint.sizes.md, ({
276
- theme
277
- }) => theme.click.table.body.cell.space.sm.x);
278
- const EditButton = styledComponents.styled.button.withConfig({
279
- componentId: "sc-1q458rb-16"
280
- })(["&:disabled{background:transparent;}"]);
281
- const TableRowCloseButton = styledComponents.styled.button.withConfig({
282
- componentId: "sc-1q458rb-17"
283
- })(["svg{transition:transform 200ms;", "}&:disabled{background:transparent;}"], ({
284
- $isDeleted
285
- }) => `
286
- ${$isDeleted ? "transform: rotate(45deg)" : ""};
287
- `);
187
+ }
188
+ });
189
+ const actionsCellVariants = classVarianceAuthority.cva(Table_module.default["table__actions-cell"], {
190
+ variants: {
191
+ size: {
192
+ sm: Table_module.default["table__actions-cell_size_sm"],
193
+ md: Table_module.default["table__actions-cell_size_md"]
194
+ }
195
+ }
196
+ });
288
197
  const TableBodyRow = ({
289
198
  headers,
290
199
  items,
@@ -300,32 +209,46 @@ const TableBodyRow = ({
300
209
  size,
301
210
  actionsList,
302
211
  rowHeight,
212
+ className,
213
+ style,
303
214
  ...rowProps
304
215
  }) => {
305
216
  const isDeletable = typeof onDelete === "function";
306
217
  const isEditable = typeof onEdit === "function";
307
- return /* @__PURE__ */ jsxRuntime.jsxs(TableRow, { $isSelectable: isSelectable, $isDeleted: isDeleted, $isDisabled: isDisabled, $isActive: isActive, $showActions: isDeletable || isEditable, $rowHeight: rowHeight, ...rowProps, children: [
308
- isSelectable && /* @__PURE__ */ jsxRuntime.jsx(SelectData, { $size: size, children: /* @__PURE__ */ jsxRuntime.jsx(Checkbox.Checkbox, { checked: isIndeterminate ? "indeterminate" : isSelected, onCheckedChange: onSelect, disabled: isDisabled || isDeleted }) }),
218
+ const rowStyle = react.useMemo(() => ({
219
+ ...rowHeight ? {
220
+ "--table-row-height": rowHeight
221
+ } : {},
222
+ ...style
223
+ }), [rowHeight, style]);
224
+ return /* @__PURE__ */ jsxRuntime.jsxs("tr", { style: rowStyle, ...rowProps, className: cva.cn(rowVariants({
225
+ isSelectable,
226
+ isActive,
227
+ isDisabled: isDeleted || isDisabled,
228
+ showActions: isDeletable || isEditable
229
+ }), className), children: [
230
+ isSelectable && /* @__PURE__ */ jsxRuntime.jsx("td", { className: cva.cn(selectDataVariants({
231
+ size
232
+ })), children: /* @__PURE__ */ jsxRuntime.jsx(Checkbox.Checkbox, { checked: isIndeterminate ? "indeterminate" : isSelected, onCheckedChange: onSelect, disabled: isDisabled || isDeleted }) }),
309
233
  items.map(({
310
234
  label,
311
235
  overflowMode,
236
+ className: cellClassName,
312
237
  ...cellProps
313
- }, cellIndex) => /* @__PURE__ */ jsxRuntime.jsxs(TableData, { $size: size, ...cellProps, children: [
314
- headers[cellIndex] && /* @__PURE__ */ jsxRuntime.jsx(MobileHeader, { children: headers[cellIndex].label }),
238
+ }, cellIndex) => /* @__PURE__ */ jsxRuntime.jsxs("td", { ...cellProps, className: cva.cn(cellVariants({
239
+ size
240
+ }), cellClassName), children: [
241
+ headers[cellIndex] && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cva.cn(Table_module.default["table__mobile-header"]), children: headers[cellIndex].label }),
315
242
  /* @__PURE__ */ jsxRuntime.jsx(Cell, { label, overflowMode: overflowMode ?? headers[cellIndex]?.overflowMode })
316
243
  ] }, `table-cell-${cellIndex}`)),
317
- actionsList.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(ActionsList, { $size: size, children: /* @__PURE__ */ jsxRuntime.jsxs(ActionsContainer, { children: [
318
- actionsList.includes("editAction") && /* @__PURE__ */ jsxRuntime.jsx(EditButton, { as: IconButton.IconButton, type: "ghost", disabled: isDisabled || isDeleted || !isEditable, icon: "pencil", onClick: onEdit, "data-testid": "table-row-edit" }),
319
- actionsList.includes("deleteAction") && /* @__PURE__ */ jsxRuntime.jsx(TableRowCloseButton, { as: IconButton.IconButton, disabled: isDisabled || !isDeletable, $isDeleted: isDeleted, type: "ghost", icon: "cross", onClick: onDelete, "data-testid": "table-row-delete" })
244
+ actionsList.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("td", { className: cva.cn(actionsCellVariants({
245
+ size
246
+ })), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cva.cn(Table_module.default.table__actions), children: [
247
+ actionsList.includes("editAction") && /* @__PURE__ */ jsxRuntime.jsx(IconButton.IconButton, { type: "ghost", htmlType: "button", disabled: isDisabled || isDeleted || !isEditable, icon: "pencil", onClick: onEdit, "data-testid": "table-row-edit", className: cva.cn(Table_module.default["table__edit-button"]) }),
248
+ actionsList.includes("deleteAction") && /* @__PURE__ */ jsxRuntime.jsx(IconButton.IconButton, { disabled: isDisabled || !isDeletable, type: "ghost", htmlType: "button", icon: "cross", onClick: onDelete, "data-testid": "table-row-delete", className: cva.cn(Table_module.default["table__close-button"], isDeleted && Table_module.default["table__close-button_deleted"]) })
320
249
  ] }) })
321
250
  ] });
322
251
  };
323
- const SpanedTableData = styledComponents.styled(TableData).withConfig({
324
- componentId: "sc-1q458rb-18"
325
- })(["text-align:center;"]);
326
- const CustomTableDataMessage = styledComponents.styled.div.withConfig({
327
- componentId: "sc-1q458rb-19"
328
- })(["display:flex;gap:0.5rem;justify-content:center;"]);
329
252
  const LoadingData = () => {
330
253
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
331
254
  /* @__PURE__ */ jsxRuntime.jsx(Icon.Icon, { name: "loading-animated", size: "sm" }),
@@ -338,7 +261,9 @@ const CustomTableRow = ({
338
261
  colSpan,
339
262
  size
340
263
  }) => {
341
- return /* @__PURE__ */ jsxRuntime.jsx(TableRow, { children: /* @__PURE__ */ jsxRuntime.jsx(SpanedTableData, { $size: size, colSpan, children: /* @__PURE__ */ jsxRuntime.jsx(CustomTableDataMessage, { children: loading ? /* @__PURE__ */ jsxRuntime.jsx(LoadingData, {}) : noDataMessage ?? "No Data available" }) }) });
264
+ return /* @__PURE__ */ jsxRuntime.jsx("tr", { className: cva.cn(rowVariants({})), children: /* @__PURE__ */ jsxRuntime.jsx("td", { colSpan, className: cva.cn(cellVariants({
265
+ size
266
+ }), Table_module.default["table__spanned-data"]), children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: cva.cn(Table_module.default["table__custom-message"]), children: loading ? /* @__PURE__ */ jsxRuntime.jsx(LoadingData, {}) : noDataMessage ?? "No Data available" }) }) });
342
267
  };
343
268
  const MIN_COLUMN_WIDTH = 120;
344
269
  const Table = react.forwardRef(({
@@ -357,6 +282,7 @@ const Table = react.forwardRef(({
357
282
  rowHeight,
358
283
  resizableColumns,
359
284
  mobileLayout = "list",
285
+ className,
360
286
  ...props
361
287
  }, ref) => {
362
288
  const isDeletable = typeof onDelete === "function";
@@ -529,11 +455,11 @@ const Table = react.forwardRef(({
529
455
  return updated;
530
456
  });
531
457
  }, [columnWidths, headers]);
532
- return /* @__PURE__ */ jsxRuntime.jsxs(TableOuterContainer, { "data-mobile-layout": mobileLayout, children: [
533
- hasRows && showHeader && /* @__PURE__ */ jsxRuntime.jsx(MobileActions, { children: isSelectable && /* @__PURE__ */ jsxRuntime.jsx(SelectAllCheckbox, { label: "Select All", onCheckedChange: onSelect, rows, selectedIds }) }),
534
- /* @__PURE__ */ jsxRuntime.jsx(TableWrapper, { children: /* @__PURE__ */ jsxRuntime.jsxs(StyledTable, { ref, ...props, children: [
458
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-mobile-layout": mobileLayout, className: cva.cn(Table_module.default.table), children: [
459
+ hasRows && showHeader && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cva.cn(Table_module.default["table__mobile-actions"]), children: isSelectable && /* @__PURE__ */ jsxRuntime.jsx(SelectAllCheckbox, { label: "Select All", onCheckedChange: onSelect, rows, selectedIds }) }),
460
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: cva.cn(Table_module.default.table__wrapper), children: /* @__PURE__ */ jsxRuntime.jsxs("table", { ref, ...props, className: cva.cn(Table_module.default["table__table"], className), children: [
535
461
  showHeader && /* @__PURE__ */ jsxRuntime.jsx(Thead, { headers, isSelectable, onSelectAll: onSelect, actionsList, onSort, size, rows, selectedIds, resizableColumns, columnWidths: resizableColumns ? columnWidths : void 0, onResizeStart: resizableColumns ? handleResizeStart : void 0, theadRef, onKeyboardResize: resizableColumns ? onKeyboardResize : void 0 }),
536
- /* @__PURE__ */ jsxRuntime.jsxs(Tbody, { children: [
462
+ /* @__PURE__ */ jsxRuntime.jsxs("tbody", { className: cva.cn(Table_module.default.table__tbody), children: [
537
463
  (loading || !hasRows) && /* @__PURE__ */ jsxRuntime.jsx(CustomTableRow, { colSpan: headers.length + (isEditable || isDeletable ? 1 : 0) + (isSelectable ? 1 : 0), loading, noDataMessage, size }),
538
464
  rows.map(({
539
465
  id,
@@ -600,9 +526,6 @@ const SelectAllCheckbox = ({
600
526
  };
601
527
  return /* @__PURE__ */ jsxRuntime.jsx(Checkbox.Checkbox, { checked, disabled, onCheckedChange: handleCheckedChange, ...checkboxProps });
602
528
  };
603
- const TextWrapped = styledComponents.styled.span.withConfig({
604
- componentId: "sc-1q458rb-20"
605
- })(["overflow-wrap:break-word;word-break:break-all;display:inline-block;max-width:100%;"]);
606
529
  const Cell = ({
607
530
  label,
608
531
  overflowMode = "truncated"
@@ -615,15 +538,10 @@ const Cell = ({
615
538
  return /* @__PURE__ */ jsxRuntime.jsx(MiddleTruncator.MiddleTruncator, { text: label });
616
539
  }
617
540
  if (overflowMode === "wrap") {
618
- return /* @__PURE__ */ jsxRuntime.jsx(TextWrapped, { children: label });
541
+ return /* @__PURE__ */ jsxRuntime.jsx("span", { className: cva.cn(Table_module.default["table__text-wrapped"]), children: label });
619
542
  }
620
543
  return /* @__PURE__ */ jsxRuntime.jsx(EllipsisContent.EllipsisContent, { component: "div", children: label });
621
544
  };
622
- const StyledTable = styledComponents.styled.table.withConfig({
623
- componentId: "sc-1q458rb-21"
624
- })(["width:100%;border-collapse:collapse;overflow:visible;table-layout:fixed;[data-mobile-layout='list'] &{@media (max-width:", "){border:none;table-layout:auto;}}"], ({
625
- theme
626
- }) => theme.breakpoint.sizes.md);
627
545
 
628
546
  exports.Table = Table;
629
547
  //# sourceMappingURL=index.cjs.map