@hitachivantara/uikit-react-core 5.82.4 → 5.83.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 (161) hide show
  1. package/dist/cjs/BaseInput/BaseInput.cjs +4 -7
  2. package/dist/cjs/ButtonBase/ButtonBase.styles.cjs +6 -5
  3. package/dist/cjs/Calendar/Calendar.cjs +2 -2
  4. package/dist/cjs/Calendar/CalendarHeader/CalendarHeader.cjs +12 -28
  5. package/dist/cjs/Calendar/SingleCalendar/SingleCalendar.cjs +2 -1
  6. package/dist/cjs/Calendar/utils.cjs +53 -21
  7. package/dist/cjs/ColorPicker/ColorPicker.cjs +11 -9
  8. package/dist/cjs/ColorPicker/ColorPicker.styles.cjs +14 -7
  9. package/dist/cjs/ColorPicker/Fields/Fields.cjs +6 -3
  10. package/dist/cjs/DatePicker/DatePicker.cjs +1 -2
  11. package/dist/cjs/DatePicker/utils.cjs +2 -2
  12. package/dist/cjs/Input/Input.cjs +9 -8
  13. package/dist/cjs/Select/Option.cjs +1 -2
  14. package/dist/cjs/Select/Select.cjs +6 -1
  15. package/dist/cjs/Table/TableRow/TableRow.styles.cjs +20 -5
  16. package/dist/cjs/Table/hooks/{useBulkActions.cjs → useHvBulkActions.cjs} +6 -7
  17. package/dist/cjs/Table/hooks/{useFilters.cjs → useHvFilters.cjs} +2 -2
  18. package/dist/cjs/Table/hooks/{useGlobalFilter.cjs → useHvGlobalFilter.cjs} +2 -2
  19. package/dist/cjs/Table/hooks/{useHeaderGroups.cjs → useHvHeaderGroups.cjs} +4 -4
  20. package/dist/cjs/Table/hooks/{usePagination.cjs → useHvPagination.cjs} +4 -4
  21. package/dist/cjs/Table/hooks/{useResizeColumns.cjs → useHvResizeColumns.cjs} +4 -4
  22. package/dist/cjs/Table/hooks/{useRowExpand.cjs → useHvRowExpand.cjs} +6 -5
  23. package/dist/cjs/Table/hooks/{useRowSelection.cjs → useHvRowSelection.cjs} +4 -8
  24. package/dist/cjs/Table/hooks/{useRowState.cjs → useHvRowState.cjs} +2 -2
  25. package/dist/cjs/Table/hooks/{useSortBy.cjs → useHvSortBy.cjs} +4 -4
  26. package/dist/cjs/Table/hooks/{useSticky.cjs → useHvSticky.cjs} +4 -6
  27. package/dist/cjs/Table/hooks/{useTable.cjs → useHvTable.cjs} +6 -4
  28. package/dist/cjs/Table/hooks/{useTableStyles.cjs → useHvTableStyles.cjs} +4 -5
  29. package/dist/cjs/Table/renderers/{DateColumnCell/DateColumnCell.cjs → DateColumnCell.cjs} +1 -1
  30. package/dist/cjs/Table/renderers/DefaultCell.cjs +21 -0
  31. package/dist/cjs/Table/renderers/{DropdownColumnCell/DropdownColumnCell.cjs → DropdownColumnCell.cjs} +1 -1
  32. package/dist/cjs/Table/renderers/{ProgressColumnCell/ProgressColumnCell.cjs → ProgressColumnCell.cjs} +20 -2
  33. package/dist/cjs/Table/renderers/{SwitchColumnCell/SwitchColumnCell.cjs → SwitchColumnCell.cjs} +13 -4
  34. package/dist/cjs/Table/renderers/renderers.cjs +21 -8
  35. package/dist/cjs/Tag/Tag.cjs +67 -49
  36. package/dist/cjs/Tag/Tag.styles.cjs +50 -64
  37. package/dist/cjs/TagsInput/TagsInput.cjs +1 -4
  38. package/dist/cjs/TagsInput/TagsInput.styles.cjs +1 -4
  39. package/dist/cjs/TextArea/TextArea.cjs +4 -4
  40. package/dist/cjs/TimeAgo/TimeAgo.cjs +2 -1
  41. package/dist/cjs/TimePicker/TimePicker.cjs +2 -1
  42. package/dist/cjs/index.cjs +40 -50
  43. package/dist/cjs/utils/keyboardUtils.cjs +4 -0
  44. package/dist/esm/BaseInput/BaseInput.js +3 -6
  45. package/dist/esm/BaseInput/BaseInput.js.map +1 -1
  46. package/dist/esm/ButtonBase/ButtonBase.styles.js +6 -5
  47. package/dist/esm/ButtonBase/ButtonBase.styles.js.map +1 -1
  48. package/dist/esm/Calendar/Calendar.js +3 -3
  49. package/dist/esm/Calendar/Calendar.js.map +1 -1
  50. package/dist/esm/Calendar/CalendarHeader/CalendarHeader.js +13 -24
  51. package/dist/esm/Calendar/CalendarHeader/CalendarHeader.js.map +1 -1
  52. package/dist/esm/Calendar/SingleCalendar/SingleCalendar.js +3 -2
  53. package/dist/esm/Calendar/SingleCalendar/SingleCalendar.js.map +1 -1
  54. package/dist/esm/Calendar/utils.js +54 -20
  55. package/dist/esm/Calendar/utils.js.map +1 -1
  56. package/dist/esm/ColorPicker/ColorPicker.js +12 -10
  57. package/dist/esm/ColorPicker/ColorPicker.js.map +1 -1
  58. package/dist/esm/ColorPicker/ColorPicker.styles.js +14 -7
  59. package/dist/esm/ColorPicker/ColorPicker.styles.js.map +1 -1
  60. package/dist/esm/ColorPicker/Fields/Fields.js +6 -3
  61. package/dist/esm/ColorPicker/Fields/Fields.js.map +1 -1
  62. package/dist/esm/Controls/Controls.js.map +1 -1
  63. package/dist/esm/DatePicker/DatePicker.js +2 -3
  64. package/dist/esm/DatePicker/DatePicker.js.map +1 -1
  65. package/dist/esm/DatePicker/utils.js +2 -2
  66. package/dist/esm/DatePicker/utils.js.map +1 -1
  67. package/dist/esm/Input/Input.js +10 -9
  68. package/dist/esm/Input/Input.js.map +1 -1
  69. package/dist/esm/Select/Option.js +1 -2
  70. package/dist/esm/Select/Option.js.map +1 -1
  71. package/dist/esm/Select/Select.js +6 -1
  72. package/dist/esm/Select/Select.js.map +1 -1
  73. package/dist/esm/Table/TableRow/TableRow.styles.js +16 -1
  74. package/dist/esm/Table/TableRow/TableRow.styles.js.map +1 -1
  75. package/dist/esm/Table/hooks/{useBulkActions.js → useHvBulkActions.js} +5 -6
  76. package/dist/esm/Table/hooks/useHvBulkActions.js.map +1 -0
  77. package/dist/esm/Table/hooks/{useFilters.js → useHvFilters.js} +1 -1
  78. package/dist/esm/Table/hooks/useHvFilters.js.map +1 -0
  79. package/dist/esm/Table/hooks/{useGlobalFilter.js → useHvGlobalFilter.js} +1 -1
  80. package/dist/esm/Table/hooks/useHvGlobalFilter.js.map +1 -0
  81. package/dist/esm/Table/hooks/{useHeaderGroups.js → useHvHeaderGroups.js} +3 -3
  82. package/dist/esm/Table/hooks/useHvHeaderGroups.js.map +1 -0
  83. package/dist/esm/Table/hooks/{usePagination.js → useHvPagination.js} +4 -4
  84. package/dist/esm/Table/hooks/useHvPagination.js.map +1 -0
  85. package/dist/esm/Table/hooks/{useResizeColumns.js → useHvResizeColumns.js} +3 -3
  86. package/dist/esm/Table/hooks/useHvResizeColumns.js.map +1 -0
  87. package/dist/esm/Table/hooks/{useRowExpand.js → useHvRowExpand.js} +5 -4
  88. package/dist/esm/Table/hooks/useHvRowExpand.js.map +1 -0
  89. package/dist/esm/Table/hooks/{useRowSelection.js → useHvRowSelection.js} +3 -7
  90. package/dist/esm/Table/hooks/useHvRowSelection.js.map +1 -0
  91. package/dist/esm/Table/hooks/{useRowState.js → useHvRowState.js} +1 -1
  92. package/dist/esm/Table/hooks/useHvRowState.js.map +1 -0
  93. package/dist/esm/Table/hooks/{useSortBy.js → useHvSortBy.js} +3 -3
  94. package/dist/esm/Table/hooks/useHvSortBy.js.map +1 -0
  95. package/dist/esm/Table/hooks/{useSticky.js → useHvSticky.js} +3 -5
  96. package/dist/esm/Table/hooks/useHvSticky.js.map +1 -0
  97. package/dist/esm/Table/hooks/{useTable.js → useHvTable.js} +5 -3
  98. package/dist/esm/Table/hooks/useHvTable.js.map +1 -0
  99. package/dist/esm/Table/hooks/{useTableStyles.js → useHvTableStyles.js} +3 -4
  100. package/dist/esm/Table/hooks/useHvTableStyles.js.map +1 -0
  101. package/dist/esm/Table/renderers/{DateColumnCell/DateColumnCell.js → DateColumnCell.js} +1 -1
  102. package/dist/esm/Table/renderers/DateColumnCell.js.map +1 -0
  103. package/dist/esm/Table/renderers/DefaultCell.js +21 -0
  104. package/dist/esm/Table/renderers/DefaultCell.js.map +1 -0
  105. package/dist/esm/Table/renderers/{DropdownColumnCell/DropdownColumnCell.js → DropdownColumnCell.js} +1 -1
  106. package/dist/esm/Table/renderers/DropdownColumnCell.js.map +1 -0
  107. package/dist/esm/Table/renderers/{ProgressColumnCell/ProgressColumnCell.js → ProgressColumnCell.js} +19 -1
  108. package/dist/esm/Table/renderers/ProgressColumnCell.js.map +1 -0
  109. package/dist/esm/Table/renderers/{SwitchColumnCell/SwitchColumnCell.js → SwitchColumnCell.js} +12 -3
  110. package/dist/esm/Table/renderers/SwitchColumnCell.js.map +1 -0
  111. package/dist/esm/Table/renderers/renderers.js +18 -5
  112. package/dist/esm/Table/renderers/renderers.js.map +1 -1
  113. package/dist/esm/Tag/Tag.js +71 -51
  114. package/dist/esm/Tag/Tag.js.map +1 -1
  115. package/dist/esm/Tag/Tag.styles.js +50 -64
  116. package/dist/esm/Tag/Tag.styles.js.map +1 -1
  117. package/dist/esm/TagsInput/TagsInput.js +1 -4
  118. package/dist/esm/TagsInput/TagsInput.js.map +1 -1
  119. package/dist/esm/TagsInput/TagsInput.styles.js +1 -4
  120. package/dist/esm/TagsInput/TagsInput.styles.js.map +1 -1
  121. package/dist/esm/TextArea/TextArea.js +4 -4
  122. package/dist/esm/TextArea/TextArea.js.map +1 -1
  123. package/dist/esm/TimeAgo/TimeAgo.js +2 -1
  124. package/dist/esm/TimeAgo/TimeAgo.js.map +1 -1
  125. package/dist/esm/TimePicker/TimePicker.js +2 -1
  126. package/dist/esm/TimePicker/TimePicker.js.map +1 -1
  127. package/dist/esm/index.js +34 -44
  128. package/dist/esm/index.js.map +1 -1
  129. package/dist/esm/utils/keyboardUtils.js +4 -0
  130. package/dist/esm/utils/keyboardUtils.js.map +1 -1
  131. package/dist/types/index.d.ts +367 -395
  132. package/package.json +6 -6
  133. package/dist/cjs/Table/renderers/ProgressColumnCell/ProgressColumnCell.styles.cjs +0 -26
  134. package/dist/cjs/Table/renderers/SwitchColumnCell/SwitchColumnCell.styles.cjs +0 -21
  135. package/dist/cjs/Table/utils/fallbacks.cjs +0 -16
  136. package/dist/cjs/Table/utils/utils.cjs +0 -19
  137. package/dist/esm/Table/hooks/useBulkActions.js.map +0 -1
  138. package/dist/esm/Table/hooks/useFilters.js.map +0 -1
  139. package/dist/esm/Table/hooks/useGlobalFilter.js.map +0 -1
  140. package/dist/esm/Table/hooks/useHeaderGroups.js.map +0 -1
  141. package/dist/esm/Table/hooks/usePagination.js.map +0 -1
  142. package/dist/esm/Table/hooks/useResizeColumns.js.map +0 -1
  143. package/dist/esm/Table/hooks/useRowExpand.js.map +0 -1
  144. package/dist/esm/Table/hooks/useRowSelection.js.map +0 -1
  145. package/dist/esm/Table/hooks/useRowState.js.map +0 -1
  146. package/dist/esm/Table/hooks/useSortBy.js.map +0 -1
  147. package/dist/esm/Table/hooks/useSticky.js.map +0 -1
  148. package/dist/esm/Table/hooks/useTable.js.map +0 -1
  149. package/dist/esm/Table/hooks/useTableStyles.js.map +0 -1
  150. package/dist/esm/Table/renderers/DateColumnCell/DateColumnCell.js.map +0 -1
  151. package/dist/esm/Table/renderers/DropdownColumnCell/DropdownColumnCell.js.map +0 -1
  152. package/dist/esm/Table/renderers/ProgressColumnCell/ProgressColumnCell.js.map +0 -1
  153. package/dist/esm/Table/renderers/ProgressColumnCell/ProgressColumnCell.styles.js +0 -26
  154. package/dist/esm/Table/renderers/ProgressColumnCell/ProgressColumnCell.styles.js.map +0 -1
  155. package/dist/esm/Table/renderers/SwitchColumnCell/SwitchColumnCell.js.map +0 -1
  156. package/dist/esm/Table/renderers/SwitchColumnCell/SwitchColumnCell.styles.js +0 -21
  157. package/dist/esm/Table/renderers/SwitchColumnCell/SwitchColumnCell.styles.js.map +0 -1
  158. package/dist/esm/Table/utils/fallbacks.js +0 -16
  159. package/dist/esm/Table/utils/fallbacks.js.map +0 -1
  160. package/dist/esm/Table/utils/utils.js +0 -19
  161. package/dist/esm/Table/utils/utils.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const reactTable = require("react-table");
4
4
  const useHvFilters = reactTable.useFilters.bind({});
5
5
  useHvFilters.pluginName = "useHvFilters";
6
- exports.default = useHvFilters;
6
+ exports.useHvFilters = useHvFilters;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const reactTable = require("react-table");
4
4
  const useHvGlobalFilter = reactTable.useGlobalFilter.bind({});
5
5
  useHvGlobalFilter.pluginName = "useHvGlobalFilter";
6
- exports.default = useHvGlobalFilter;
6
+ exports.useHvGlobalFilter = useHvGlobalFilter;
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const replaceHeaderPlaceholders = (headerGroups) => {
4
4
  const [headerGroup] = headerGroups;
5
5
  const hasPlaceholderHeaders = headerGroup.headers.some(
@@ -80,11 +80,11 @@ const useInstanceHook = (instance) => {
80
80
  replaceHeaderPlaceholders(instance.headerGroups);
81
81
  }
82
82
  };
83
- const useHeaderGroups = (hooks) => {
83
+ const useHvHeaderGroups = (hooks) => {
84
84
  hooks.visibleColumns.push(visibleColumnsHook);
85
85
  hooks.useInstance.push(useInstanceHook);
86
86
  hooks.getHeaderProps.push(getHeaderPropsHook);
87
87
  hooks.getCellProps.push(getCellPropsHook);
88
88
  };
89
- useHeaderGroups.pluginName = "useHvHeaderGroups";
90
- exports.default = useHeaderGroups;
89
+ useHvHeaderGroups.pluginName = "useHvHeaderGroups";
90
+ exports.useHvHeaderGroups = useHvHeaderGroups;
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const reactTable = require("react-table");
4
4
  const useInstanceHook = (instance) => {
5
5
  reactTable.ensurePluginOrder(
@@ -47,10 +47,10 @@ const defaultGetHvPaginationProps = (props, { instance }) => {
47
47
  };
48
48
  return [props, nextProps];
49
49
  };
50
- const usePagination = (hooks) => {
50
+ const useHvPagination = (hooks) => {
51
51
  hooks.getHvPaginationProps = [defaultGetHvPaginationProps];
52
52
  hooks.useInstance.push(useInstanceHook);
53
53
  };
54
- usePagination.pluginName = "useHvPagination";
55
- exports.default = usePagination;
54
+ useHvPagination.pluginName = "useHvPagination";
56
55
  exports.defaultGetHvPaginationProps = defaultGetHvPaginationProps;
56
+ exports.useHvPagination = useHvPagination;
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const reactTable = require("react-table");
4
4
  const getHeaderPropsHook = (props, { column }) => {
5
5
  const resizerProps = column.getResizerProps?.() || {};
@@ -28,10 +28,10 @@ const useInstanceHook = (instance) => {
28
28
  "useHvResizeColumns"
29
29
  );
30
30
  };
31
- const useResizeColumns = (hooks) => {
31
+ const useHvResizeColumns = (hooks) => {
32
32
  hooks.getHeaderProps.push(getHeaderPropsHook);
33
33
  hooks.getCellProps.push(getCellPropsHook);
34
34
  hooks.useInstance.push(useInstanceHook);
35
35
  };
36
- useResizeColumns.pluginName = "useHvResizeColumns";
37
- exports.default = useResizeColumns;
36
+ useHvResizeColumns.pluginName = "useHvResizeColumns";
37
+ exports.useHvResizeColumns = useHvResizeColumns;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const uikitReactIcons = require("@hitachivantara/uikit-react-icons");
5
5
  const useLabels = require("../../hooks/useLabels.cjs");
6
+ const DefaultCell = require("../renderers/DefaultCell.cjs");
6
7
  const Button = require("../../Button/Button.cjs");
7
8
  const Typography = require("../../Typography/Typography.cjs");
8
9
  const DEFAULT_LABELS = {
@@ -39,7 +40,7 @@ const visibleColumnsHook = (columns, { instance }) => {
39
40
  );
40
41
  if (firstDataColumnIndex !== -1) {
41
42
  const firstDataColumn = columns[firstDataColumnIndex];
42
- if (firstDataColumn.Cell == null) {
43
+ if (firstDataColumn.Cell == null || firstDataColumn.Cell !== DefaultCell.DefaultCell) {
43
44
  firstDataColumn.Cell = CellWithExpandButton;
44
45
  firstDataColumn.variant = "expand";
45
46
  return columns;
@@ -68,10 +69,10 @@ const getRowPropsHook = (props, { row }) => {
68
69
  };
69
70
  return [props, nextProps];
70
71
  };
71
- const useRowExpand = (hooks) => {
72
+ const useHvRowExpand = (hooks) => {
72
73
  hooks.visibleColumns.push(visibleColumnsHook);
73
74
  hooks.getRowProps.push(getRowPropsHook);
74
75
  };
75
- useRowExpand.pluginName = "useHvRowExpand";
76
+ useHvRowExpand.pluginName = "useHvRowExpand";
76
77
  exports.CellWithExpandButton = CellWithExpandButton;
77
- exports.default = useRowExpand;
78
+ exports.useHvRowExpand = useHvRowExpand;
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const React = require("react");
5
5
  const reactTable = require("react-table");
@@ -425,7 +425,7 @@ function prepareRow(row, { instance }) {
425
425
  row.toggleRowLockedSelection = (set) => instance.toggleRowLockedSelection(row.id, set);
426
426
  row.isSelectionLocked = instance.state?.lockedSelectionRowIds?.[row.id] || false;
427
427
  }
428
- const useRowSelection = (hooks) => {
428
+ const useHvRowSelection = (hooks) => {
429
429
  hooks.visibleColumns.push(visibleColumnsHook);
430
430
  hooks.getRowProps.push(getRowPropsHook);
431
431
  hooks.getHeaderProps.push(getHeaderPropsHook);
@@ -438,12 +438,8 @@ const useRowSelection = (hooks) => {
438
438
  hooks.useInstance.push(useInstance);
439
439
  hooks.prepareRow.push(prepareRow);
440
440
  };
441
- useRowSelection.pluginName = "useHvRowSelection";
442
- exports.CellWithCheckBox = CellWithCheckBox;
443
- exports.default = useRowSelection;
441
+ useHvRowSelection.pluginName = "useHvRowSelection";
444
442
  exports.defaultGetToggleAllPageRowsSelectedProps = defaultGetToggleAllPageRowsSelectedProps;
445
443
  exports.defaultGetToggleAllRowsSelectedProps = defaultGetToggleAllRowsSelectedProps;
446
444
  exports.defaultGetToggleRowSelectedProps = defaultGetToggleRowSelectedProps;
447
- exports.prepareRow = prepareRow;
448
- exports.reducer = reducer;
449
- exports.useInstance = useInstance;
445
+ exports.useHvRowSelection = useHvRowSelection;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const reactTable = require("react-table");
4
4
  const useHvRowState = reactTable.useRowState.bind({});
5
5
  useHvRowState.pluginName = "useHvRowState";
6
- exports.default = useHvRowState;
6
+ exports.useHvRowState = useHvRowState;
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const reactTable = require("react-table");
4
4
  const getHeaderPropsHook = (props, { instance, column }) => {
5
5
  const { isMultiSortEvent = (e) => e.shiftKey } = instance;
@@ -27,10 +27,10 @@ const getCellPropsHook = (props, { cell }) => {
27
27
  const useInstanceHook = (instance) => {
28
28
  reactTable.ensurePluginOrder(instance.plugins, ["useSortBy"], "useHvSortBy");
29
29
  };
30
- const useSortBy = (hooks) => {
30
+ const useHvSortBy = (hooks) => {
31
31
  hooks.getHeaderProps.push(getHeaderPropsHook);
32
32
  hooks.getCellProps.push(getCellPropsHook);
33
33
  hooks.useInstance.push(useInstanceHook);
34
34
  };
35
- useSortBy.pluginName = "useHvSortBy";
36
- exports.default = useSortBy;
35
+ useHvSortBy.pluginName = "useHvSortBy";
36
+ exports.useHvSortBy = useHvSortBy;
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const reactTable = require("react-table");
4
4
  const uikitStyles = require("@hitachivantara/uikit-styles");
5
5
  const isSticky = (value) => /left|right/i.test(value);
@@ -155,7 +155,7 @@ const getCellPropsHook = (props, { instance, cell }) => {
155
155
  const nextProps = instance.hasStickyColumns ? getCellProps(cell.column, false) : {};
156
156
  return [props, nextProps];
157
157
  };
158
- const useSticky = (hooks) => {
158
+ const useHvTableSticky = (hooks) => {
159
159
  hooks.visibleColumns.push(visibleColumnsHook);
160
160
  hooks.useInstance.push(useInstanceHook);
161
161
  hooks.getTableProps.push(getTablePropsHook);
@@ -165,7 +165,5 @@ const useSticky = (hooks) => {
165
165
  hooks.getRowProps.push(getRowPropsHook);
166
166
  hooks.getCellProps.push(getCellPropsHook);
167
167
  };
168
- useSticky.pluginName = "useHvTableSticky";
169
- exports.default = useSticky;
170
- exports.getHeaderGroupPropsHook = getHeaderGroupPropsHook;
171
- exports.getTableHeadPropsHook = getTableHeadPropsHook;
168
+ useHvTableSticky.pluginName = "useHvTableSticky";
169
+ exports.useHvTableSticky = useHvTableSticky;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const React = require("react");
4
4
  const reactTable = require("react-table");
5
- const useTableStyles = require("./useTableStyles.cjs");
5
+ const DefaultCell = require("../renderers/DefaultCell.cjs");
6
+ const useHvTableStyles = require("./useHvTableStyles.cjs");
6
7
  const toTitleCase = (str) => {
7
8
  return str.replace(/([^A-Z])([A-Z])/g, "$1 $2").replace(/[_-]+/g, " ").toLowerCase().replace(/(^\w|\b\w)/g, (m) => m.toUpperCase()).replace(/\s+/g, " ").trim();
8
9
  };
@@ -63,16 +64,17 @@ function useHvTable(options, ...plugins) {
63
64
  (plugin) => plugin.pluginName === "useHvTableStyles"
64
65
  );
65
66
  if (indexOfHvTableStylesPlugin === -1) {
66
- plugins.push(useTableStyles.default);
67
+ plugins.push(useHvTableStyles.useHvTableStyles);
67
68
  }
68
69
  return reactTable.useTable(
69
70
  {
70
71
  data,
71
72
  columns,
73
+ defaultColumn: { Cell: DefaultCell.DefaultCell },
72
74
  ...others
73
75
  },
74
76
  useHvTableSetup,
75
77
  ...plugins
76
78
  );
77
79
  }
78
- exports.default = useHvTable;
80
+ exports.useHvTable = useHvTable;
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const clsx = require("clsx");
4
4
  const getTablePropsHook = (props, { instance }) => {
5
5
  const nextProps = {
@@ -78,13 +78,12 @@ const getCellPropsHook = (props, { cell }) => {
78
78
  }
79
79
  return [props, nextProps];
80
80
  };
81
- const useTableStyles = (hooks) => {
81
+ const useHvTableStyles = (hooks) => {
82
82
  hooks.getTableProps.push(getTablePropsHook);
83
83
  hooks.getHeaderProps.push(getHeaderFooterPropsHook);
84
84
  hooks.getFooterProps.push(getHeaderFooterPropsHook);
85
85
  hooks.getRowProps.push(getRowPropsHook);
86
86
  hooks.getCellProps.push(getCellPropsHook);
87
87
  };
88
- useTableStyles.pluginName = "useHvTableStyles";
89
- exports.default = useTableStyles;
90
- exports.getHeaderFooterPropsHook = getHeaderFooterPropsHook;
88
+ useHvTableStyles.pluginName = "useHvTableStyles";
89
+ exports.useHvTableStyles = useHvTableStyles;
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const React = require("react");
5
5
  const dayjs = require("dayjs");
6
- const OverflowTooltip = require("../../../OverflowTooltip/OverflowTooltip.cjs");
6
+ const OverflowTooltip = require("../../OverflowTooltip/OverflowTooltip.cjs");
7
7
  const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
8
8
  const dayjs__default = /* @__PURE__ */ _interopDefault(dayjs);
9
9
  const HvDateColumnCell = ({
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const EM_DASH = "—";
4
+ const DefaultCell = ({
5
+ row,
6
+ value
7
+ }) => {
8
+ switch (true) {
9
+ case row.subRows.length > 0:
10
+ return value;
11
+ case value instanceof Date:
12
+ return value.toISOString().slice(0, 10);
13
+ case typeof value === "object":
14
+ return value;
15
+ case (value == null || value === ""):
16
+ return EM_DASH;
17
+ default:
18
+ return String(value);
19
+ }
20
+ };
21
+ exports.DefaultCell = DefaultCell;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
- const Dropdown = require("../../../Dropdown/Dropdown.cjs");
4
+ const Dropdown = require("../../Dropdown/Dropdown.cjs");
5
5
  const HvDropdownColumnCell = ({
6
6
  dropdownProps,
7
7
  ...others
@@ -2,9 +2,27 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const MuiLinearProgress = require("@mui/material/LinearProgress");
5
- const ProgressColumnCell_styles = require("./ProgressColumnCell.styles.cjs");
5
+ const uikitReactUtils = require("@hitachivantara/uikit-react-utils");
6
+ const uikitStyles = require("@hitachivantara/uikit-styles");
6
7
  const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
7
8
  const MuiLinearProgress__default = /* @__PURE__ */ _interopDefault(MuiLinearProgress);
9
+ const { useClasses } = uikitReactUtils.createClasses("HvProgressColumnCell", {
10
+ root: { display: "flex", width: "100%" },
11
+ linearProgressContainer: { width: "100%", margin: "auto" },
12
+ linearProgress: {
13
+ height: 8
14
+ },
15
+ linearProgressRoot: { backgroundColor: uikitStyles.theme.colors.atmo4 },
16
+ linearProgressColorPrimary: {
17
+ backgroundColor: uikitStyles.theme.colors.atmo4
18
+ },
19
+ linearProgressBarColorPrimary: {
20
+ backgroundColor: uikitStyles.theme.colors.positive
21
+ },
22
+ linearProgressBarColorSecondary: {
23
+ backgroundColor: uikitStyles.theme.colors.secondary
24
+ }
25
+ });
8
26
  const normalizeProgressBar = (value, max) => {
9
27
  return max > 0 ? Math.floor(value * 100 / max) : 0;
10
28
  };
@@ -14,7 +32,7 @@ const HvProgressColumnCell = ({
14
32
  color = "primary",
15
33
  "aria-labelledby": ariaLabelledBy
16
34
  }) => {
17
- const { classes } = ProgressColumnCell_styles.useClasses();
35
+ const { classes } = useClasses();
18
36
  const percentage = normalizeProgressBar(partial, total);
19
37
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: classes.root, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: classes.linearProgressContainer, children: /* @__PURE__ */ jsxRuntime.jsx(
20
38
  MuiLinearProgress__default.default,
@@ -1,9 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
- const SwitchColumnCell_styles = require("./SwitchColumnCell.styles.cjs");
5
- const Typography = require("../../../Typography/Typography.cjs");
6
- const BaseSwitch = require("../../../BaseSwitch/BaseSwitch.cjs");
4
+ const uikitReactUtils = require("@hitachivantara/uikit-react-utils");
5
+ const Typography = require("../../Typography/Typography.cjs");
6
+ const BaseSwitch = require("../../BaseSwitch/BaseSwitch.cjs");
7
+ const switchStyle = {
8
+ cursor: "pointer",
9
+ display: "inline-flex",
10
+ marginLeft: "10px"
11
+ };
12
+ const { useClasses } = uikitReactUtils.createClasses("HvSwitchColumnCell", {
13
+ switchNo: switchStyle,
14
+ switchYes: switchStyle
15
+ });
7
16
  const HvSwitchColumnCell = ({
8
17
  checked,
9
18
  value,
@@ -12,7 +21,7 @@ const HvSwitchColumnCell = ({
12
21
  trueLabel,
13
22
  switchProps
14
23
  }) => {
15
- const { classes } = SwitchColumnCell_styles.useClasses();
24
+ const { classes } = useClasses();
16
25
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
17
26
  falseLabel != null && /* @__PURE__ */ jsxRuntime.jsx(
18
27
  Typography.HvTypography,
@@ -4,21 +4,31 @@ const jsxRuntime = require("react/jsx-runtime");
4
4
  const react = require("@emotion/react");
5
5
  const uikitReactIcons = require("@hitachivantara/uikit-react-icons");
6
6
  const setId = require("../../utils/setId.cjs");
7
- const fallbacks = require("../utils/fallbacks.cjs");
8
- const DateColumnCell = require("./DateColumnCell/DateColumnCell.cjs");
7
+ const DateColumnCell = require("./DateColumnCell.cjs");
8
+ const DropdownColumnCell = require("./DropdownColumnCell.cjs");
9
+ const ProgressColumnCell = require("./ProgressColumnCell.cjs");
10
+ const SwitchColumnCell = require("./SwitchColumnCell.cjs");
9
11
  const Button = require("../../Button/Button.cjs");
10
12
  const Tag = require("../../Tag/Tag.cjs");
11
- const SwitchColumnCell = require("./SwitchColumnCell/SwitchColumnCell.cjs");
12
- const DropdownColumnCell = require("./DropdownColumnCell/DropdownColumnCell.cjs");
13
- const ProgressColumnCell = require("./ProgressColumnCell/ProgressColumnCell.cjs");
14
13
  const OverflowTooltip = require("../../OverflowTooltip/OverflowTooltip.cjs");
15
14
  const Typography = require("../../Typography/Typography.cjs");
15
+ const EM_DASH = "—";
16
+ const hvStringFallback = (value) => {
17
+ return typeof value === "string" && value !== "" ? value : EM_DASH;
18
+ };
19
+ const hvNumberFallback = (value) => {
20
+ return typeof value === "number" ? value : EM_DASH;
21
+ };
22
+ const hvNodeFallback = (value) => {
23
+ if (!value) return EM_DASH;
24
+ return hvStringFallback(value?.toString()) === EM_DASH ? EM_DASH : value;
25
+ };
16
26
  function hvTextColumn(col, overflowTooltipProps = {}) {
17
27
  return {
18
28
  Cell: ({ value }) => /* @__PURE__ */ jsxRuntime.jsx(
19
29
  OverflowTooltip.HvOverflowTooltip,
20
30
  {
21
- data: fallbacks.hvStringFallback(value),
31
+ data: hvStringFallback(value),
22
32
  ...overflowTooltipProps
23
33
  }
24
34
  ),
@@ -28,7 +38,7 @@ function hvTextColumn(col, overflowTooltipProps = {}) {
28
38
  }
29
39
  function hvNumberColumn(col) {
30
40
  return {
31
- Cell: ({ value }) => /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: fallbacks.hvNumberFallback(value) }),
41
+ Cell: ({ value }) => /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: hvNumberFallback(value) }),
32
42
  align: "right",
33
43
  sortType: "number",
34
44
  ...col
@@ -67,7 +77,7 @@ function hvExpandColumn(col, expandRowButtonAriaLabel, collapseRowButtonAriaLabe
67
77
  children: row.isExpanded ? ExpandedIcon : CollapsedIcon
68
78
  }
69
79
  ),
70
- /* @__PURE__ */ jsxRuntime.jsx(OverflowTooltip.HvOverflowTooltip, { data: fallbacks.hvStringFallback(value) })
80
+ /* @__PURE__ */ jsxRuntime.jsx(OverflowTooltip.HvOverflowTooltip, { data: hvStringFallback(value) })
71
81
  ] }) });
72
82
  },
73
83
  sortType: "alphanumeric",
@@ -184,8 +194,11 @@ function hvProgressColumn(col, getPartial, getTotal, color) {
184
194
  exports.hvDateColumn = hvDateColumn;
185
195
  exports.hvDropdownColumn = hvDropdownColumn;
186
196
  exports.hvExpandColumn = hvExpandColumn;
197
+ exports.hvNodeFallback = hvNodeFallback;
187
198
  exports.hvNumberColumn = hvNumberColumn;
199
+ exports.hvNumberFallback = hvNumberFallback;
188
200
  exports.hvProgressColumn = hvProgressColumn;
201
+ exports.hvStringFallback = hvStringFallback;
189
202
  exports.hvSwitchColumn = hvSwitchColumn;
190
203
  exports.hvTagColumn = hvTagColumn;
191
204
  exports.hvTextColumn = hvTextColumn;
@@ -2,21 +2,19 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const React = require("react");
5
- const Chip = require("@mui/material/Chip");
6
5
  const uikitReactIcons = require("@hitachivantara/uikit-react-icons");
7
6
  const uikitReactUtils = require("@hitachivantara/uikit-react-utils");
8
7
  const uikitStyles = require("@hitachivantara/uikit-styles");
9
8
  const useControlled = require("../hooks/useControlled.cjs");
9
+ const keyboardUtils = require("../utils/keyboardUtils.cjs");
10
10
  const Tag_styles = require("./Tag.styles.cjs");
11
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
12
- const Chip__default = /* @__PURE__ */ _interopDefault(Chip);
13
- const getCategoricalColor = (customColor, colors) => {
14
- return customColor && colors?.[customColor] || customColor || colors?.cat1;
15
- };
11
+ const ButtonBase = require("../ButtonBase/ButtonBase.cjs");
12
+ const Typography = require("../Typography/Typography.cjs");
16
13
  const HvTag = React.forwardRef(function HvTag2(props, ref) {
17
14
  const {
18
15
  classes: classesProp,
19
16
  className,
17
+ component,
20
18
  style,
21
19
  label,
22
20
  disabled,
@@ -25,75 +23,95 @@ const HvTag = React.forwardRef(function HvTag2(props, ref) {
25
23
  selected,
26
24
  defaultSelected = false,
27
25
  color,
28
- deleteIcon,
26
+ deleteIcon: deleteIconProp,
29
27
  onDelete,
30
28
  onClick,
29
+ onKeyDown,
30
+ onKeyUp,
31
31
  // TODO: remove from API
32
32
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
33
33
  deleteButtonArialLabel = "Delete tag",
34
34
  deleteButtonProps = {},
35
35
  ...others
36
36
  } = uikitReactUtils.useDefaultProps("HvTag", props);
37
- const { colors } = uikitReactUtils.useTheme();
38
- const { classes, cx, css } = Tag_styles.useClasses(classesProp);
37
+ const { classes, cx } = Tag_styles.useClasses(classesProp);
39
38
  const [isSelected, setIsSelected] = useControlled.useControlled(
40
39
  selected,
41
40
  Boolean(defaultSelected)
42
41
  );
43
- const defaultDeleteIcon = /* @__PURE__ */ jsxRuntime.jsx(
42
+ const handleDeleteClick = (event) => {
43
+ event.stopPropagation();
44
+ onDelete?.(event);
45
+ };
46
+ const backgroundColor = type === "semantic" && uikitStyles.getColor(color, "neutral_20") || type === "categorical" && uikitStyles.theme.alpha(uikitStyles.getColor(color, "cat1"), 0.2) || void 0;
47
+ const isClickable = !!(onClick || onDelete || selectable);
48
+ const CheckboxIcon = isSelected ? uikitReactIcons.CheckboxCheck : uikitReactIcons.Checkbox;
49
+ const deleteIcon = deleteIconProp && React.isValidElement(deleteIconProp) ? React.cloneElement(deleteIconProp, {
50
+ className: cx(classes.deleteIcon, {
51
+ [classes.disabledDeleteIcon]: disabled
52
+ }),
53
+ onClick: handleDeleteClick
54
+ }) : /* @__PURE__ */ jsxRuntime.jsx(
44
55
  uikitReactIcons.CloseXS,
45
56
  {
46
- className: cx(classes.button, classes.tagButton),
47
- iconSize: "XS",
57
+ size: "XS",
58
+ onClick: handleDeleteClick,
59
+ className: cx(classes.deleteIcon, classes.button, classes.tagButton),
48
60
  ...deleteButtonProps
49
61
  }
50
62
  );
51
- const categoricalBackgroundColor = type === "categorical" ? getCategoricalColor(color, colors) : void 0;
52
- const backgroundColor = type === "semantic" && uikitStyles.getColor(color, "neutral_20") || type === "categorical" && `${categoricalBackgroundColor}30` || void 0;
53
- const isClickable = !!(onClick || onDelete) && !disabled;
54
- const clickableClass = css({
55
- "&:hover": {
56
- boxShadow: `0 0 0 1pt ${categoricalBackgroundColor}`
57
- }
58
- });
59
- const colorOverride = disabled && ["atmo3", "secondary_60"] || void 0;
60
- const avatarIcon = isSelected ? /* @__PURE__ */ jsxRuntime.jsx(uikitReactIcons.CheckboxCheck, { color: colorOverride, iconSize: "XS" }) : /* @__PURE__ */ jsxRuntime.jsx(uikitReactIcons.Checkbox, { color: colorOverride, iconSize: "XS" });
61
- return /* @__PURE__ */ jsxRuntime.jsx(
62
- Chip__default.default,
63
+ return /* @__PURE__ */ jsxRuntime.jsxs(
64
+ ButtonBase.HvButtonBase,
63
65
  {
64
66
  ref,
65
- label,
67
+ component: isClickable ? ButtonBase.HvButtonBase : "div",
66
68
  disabled,
67
- className: cx({ [clickableClass]: isClickable }, className),
68
- style: {
69
- ...disabled ? null : { backgroundColor },
70
- ...style
71
- },
72
- classes: {
73
- root: cx(classes.root, classes.chipRoot, {
74
- [classes.disabled]: disabled,
75
- [classes.clickable]: isClickable,
76
- [classes.categorical]: type === "categorical",
77
- [classes.categoricalFocus]: type === "categorical" && !disabled,
78
- [classes.categoricalDisabled]: type === "categorical" && disabled
79
- }),
80
- label: classes.label,
81
- deleteIcon: cx(classes.deleteIcon, {
82
- [classes.disabledDeleteIcon]: disabled
83
- })
69
+ "data-color": color,
70
+ style: uikitReactUtils.mergeStyles(style, {
71
+ "--bgColor": backgroundColor
72
+ }),
73
+ className: cx(classes.root, classes.chipRoot, className, {
74
+ [classes.disabled]: disabled,
75
+ [classes.selected]: isSelected,
76
+ [classes.clickable]: isClickable && !disabled,
77
+ [classes.categorical]: type === "categorical",
78
+ [classes.categoricalFocus]: type === "categorical" && !disabled,
79
+ [classes.categoricalDisabled]: type === "categorical" && disabled
80
+ }),
81
+ onKeyUp: (event) => {
82
+ if (event.currentTarget === event.target && keyboardUtils.isDeleteKey(event)) {
83
+ onDelete?.(event);
84
+ }
85
+ onKeyUp?.(event);
84
86
  },
85
- deleteIcon: deleteIcon || defaultDeleteIcon,
86
- onDelete: disabled ? void 0 : onDelete,
87
87
  onClick: (event) => {
88
88
  if (disabled) return;
89
89
  if (selectable) setIsSelected(!isSelected);
90
90
  onClick?.(event, !isSelected);
91
91
  },
92
- "aria-pressed": isSelected,
93
- ...selectable && type === "semantic" && {
94
- avatar: avatarIcon
95
- },
96
- ...others
92
+ selected: isClickable && isSelected,
93
+ ...others,
94
+ children: [
95
+ selectable && type === "semantic" && /* @__PURE__ */ jsxRuntime.jsx(
96
+ CheckboxIcon,
97
+ {
98
+ className: classes.icon,
99
+ color: disabled && ["atmo3", "secondary_60"] || void 0,
100
+ size: "XS"
101
+ }
102
+ ),
103
+ /* @__PURE__ */ jsxRuntime.jsx(
104
+ Typography.HvTypography,
105
+ {
106
+ noWrap: true,
107
+ variant: "caption2",
108
+ component: "span",
109
+ className: classes.label,
110
+ children: label
111
+ }
112
+ ),
113
+ onDelete && deleteIcon
114
+ ]
97
115
  }
98
116
  );
99
117
  });