pixelize-design-library 2.2.198 → 2.3.1-beta.2

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 (150) hide show
  1. package/.claude/settings.local.json +24 -0
  2. package/coverage/clover.xml +638 -0
  3. package/coverage/coverage-final.json +20 -0
  4. package/coverage/lcov-report/Table/CompactSelect.tsx.html +379 -0
  5. package/coverage/lcov-report/Table/Components/ActiveFilters.tsx.html +514 -0
  6. package/coverage/lcov-report/Table/Components/HeaderActions.tsx.html +373 -0
  7. package/coverage/lcov-report/Table/Components/Pagination.tsx.html +574 -0
  8. package/coverage/lcov-report/Table/Components/TableActions.tsx.html +574 -0
  9. package/coverage/lcov-report/Table/Components/TableBody.tsx.html +1027 -0
  10. package/coverage/lcov-report/Table/Components/TableFilters.tsx.html +397 -0
  11. package/coverage/lcov-report/Table/Components/TableHeader.tsx.html +1060 -0
  12. package/coverage/lcov-report/Table/Components/TableLoading.tsx.html +361 -0
  13. package/coverage/lcov-report/Table/Components/TableSearch.tsx.html +337 -0
  14. package/coverage/lcov-report/Table/Components/index.html +266 -0
  15. package/coverage/lcov-report/Table/Components/useDebounce.ts.html +178 -0
  16. package/coverage/lcov-report/Table/Components/useTable.ts.html +778 -0
  17. package/coverage/lcov-report/Table/LeftFilterPane.tsx.html +1810 -0
  18. package/coverage/lcov-report/Table/SelectOperationControls.tsx.html +178 -0
  19. package/coverage/lcov-report/Table/Table.tsx.html +1567 -0
  20. package/coverage/lcov-report/Table/TableProps.tsx.html +658 -0
  21. package/coverage/lcov-report/Table/TableSettings/ManageColumns.tsx.html +619 -0
  22. package/coverage/lcov-report/Table/TableSettings/TableFilters.tsx.html +229 -0
  23. package/coverage/lcov-report/Table/TableSettings/TableSettings.tsx.html +532 -0
  24. package/coverage/lcov-report/Table/TableSettings/index.html +146 -0
  25. package/coverage/lcov-report/Table/TableToDo.tsx.html +973 -0
  26. package/coverage/lcov-report/Table/TextOperationControls.tsx.html +271 -0
  27. package/coverage/lcov-report/Table/filterTypes.ts.html +97 -0
  28. package/coverage/lcov-report/Table/index.html +176 -0
  29. package/coverage/lcov-report/base.css +224 -0
  30. package/coverage/lcov-report/block-navigation.js +87 -0
  31. package/coverage/lcov-report/favicon.png +0 -0
  32. package/coverage/lcov-report/index.html +146 -0
  33. package/coverage/lcov-report/prettify.css +1 -0
  34. package/coverage/lcov-report/prettify.js +2 -0
  35. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  36. package/coverage/lcov-report/sorter.js +210 -0
  37. package/coverage/lcov.info +1836 -0
  38. package/dist/Assets/defaultLogo.tsx +31 -0
  39. package/dist/Components/Button/Button.styles.js +44 -3
  40. package/dist/Components/Button/ButtonProps.d.ts +1 -1
  41. package/dist/Components/ButtonGroupIcon/ButtonGoupIconProps.d.ts +2 -2
  42. package/dist/Components/ButtonGroupIcon/ButtonGroupIcon.js +50 -38
  43. package/dist/Components/Checkbox/Checkbox.js +2 -2
  44. package/dist/Components/Checkbox/Checkbox.styles.js +2 -0
  45. package/dist/Components/Common/FormLabel.d.ts +2 -1
  46. package/dist/Components/Common/FormLabel.js +8 -9
  47. package/dist/Components/Common/fieldStyles.d.ts +22 -0
  48. package/dist/Components/Common/fieldStyles.js +42 -0
  49. package/dist/Components/DatePicker/CalendarPanel.d.ts +2 -0
  50. package/dist/Components/DatePicker/CalendarPanel.js +104 -65
  51. package/dist/Components/DatePicker/RangeDatePicker.js +37 -16
  52. package/dist/Components/DatePicker/SingleDatePicker.js +16 -16
  53. package/dist/Components/DatePicker/TimePicker.js +4 -4
  54. package/dist/Components/Input/Input/Input.d.ts +1 -1
  55. package/dist/Components/Input/Input/Input.js +5 -4
  56. package/dist/Components/Input/Input/InputProps.d.ts +2 -0
  57. package/dist/Components/Input/TextInput.styles.js +2 -1
  58. package/dist/Components/InputTextArea/InputTextArea.style.js +2 -1
  59. package/dist/Components/MultiSelect/MultiSelect.js +11 -12
  60. package/dist/Components/NavigationBar/NavigationBar.d.ts +1 -1
  61. package/dist/Components/NavigationBar/NavigationBar.js +54 -27
  62. package/dist/Components/NavigationBar/NavigationBarProps.d.ts +1 -0
  63. package/dist/Components/NoteTextArea/NoteTextArea.js +44 -40
  64. package/dist/Components/NumberInput/NumberInput.styles.js +2 -1
  65. package/dist/Components/PinInput/PinInput.d.ts +1 -1
  66. package/dist/Components/PinInput/PinInput.js +3 -2
  67. package/dist/Components/PinInput/PinInputProps.d.ts +4 -0
  68. package/dist/Components/RadioButton/RadioButton.js +1 -1
  69. package/dist/Components/SearchSelect/SearchSelect.d.ts +1 -1
  70. package/dist/Components/SearchSelect/SearchSelect.js +3 -3
  71. package/dist/Components/SearchSelect/SearchSelectProps.d.ts +2 -0
  72. package/dist/Components/Select/Select.styles.js +2 -1
  73. package/dist/Components/SelectSearch/SelectSearch.js +7 -4
  74. package/dist/Components/SideBar/SecondaryBar.js +20 -18
  75. package/dist/Components/SideBar/SideBar.d.ts +1 -1
  76. package/dist/Components/SideBar/SideBar.js +58 -43
  77. package/dist/Components/SideBar/SideBarProps.d.ts +14 -3
  78. package/dist/Components/SideBar/components/MenuItemBox.js +28 -24
  79. package/dist/Components/SideBar/components/MenuItems.js +16 -2
  80. package/dist/Components/SideBar/components/MenuPopoverContent.js +16 -16
  81. package/dist/Components/SideBar/components/OtherApps.js +16 -14
  82. package/dist/Components/Table/Table.d.ts +1 -1
  83. package/dist/Components/Table/Table.js +119 -38
  84. package/dist/Components/Table/TableProps.d.ts +34 -2
  85. package/dist/Components/Table/{Components → components}/TableBody.d.ts +5 -1
  86. package/dist/Components/Table/components/TableBody.js +303 -0
  87. package/dist/Components/Table/components/TableGroupRow.d.ts +15 -0
  88. package/dist/Components/Table/components/TableGroupRow.js +27 -0
  89. package/dist/Components/Table/{Components → components}/TableHeader.js +23 -9
  90. package/dist/Components/Table/{LeftFilterPane.js → filters/LeftFilterPane.js} +3 -3
  91. package/dist/Components/Table/{TableSettings → settings}/TableSettings.d.ts +4 -2
  92. package/dist/Components/Table/settings/TableSettings.js +141 -0
  93. package/dist/Theme/Default/palette.d.ts +4 -0
  94. package/dist/Theme/Default/palette.js +3 -0
  95. package/dist/Theme/Emerald/palette.d.ts +4 -0
  96. package/dist/Theme/Emerald/palette.js +2 -1
  97. package/dist/Theme/Meadow/palette.d.ts +4 -0
  98. package/dist/Theme/Meadow/palette.js +2 -1
  99. package/dist/Theme/Radiant/palette.d.ts +4 -0
  100. package/dist/Theme/Radiant/palette.js +2 -1
  101. package/dist/Theme/Rosewood/palette.d.ts +4 -0
  102. package/dist/Theme/Rosewood/palette.js +2 -1
  103. package/dist/Theme/Skyline/palette.d.ts +4 -0
  104. package/dist/Theme/Skyline/palette.js +2 -1
  105. package/dist/Theme/Slate/palette.d.ts +4 -0
  106. package/dist/Theme/Slate/palette.js +2 -1
  107. package/dist/Theme/themeProps.d.ts +4 -0
  108. package/dist/Utils/table.d.ts +21 -0
  109. package/dist/Utils/table.js +98 -14
  110. package/package.json +2 -2
  111. package/dist/Components/Table/Components/TableBody.js +0 -201
  112. package/dist/Components/Table/TableSettings/TableFilters.d.ts +0 -10
  113. package/dist/Components/Table/TableSettings/TableFilters.js +0 -69
  114. package/dist/Components/Table/TableSettings/TableFilters.test.d.ts +0 -1
  115. package/dist/Components/Table/TableSettings/TableFilters.test.js +0 -109
  116. package/dist/Components/Table/TableSettings/TableSettings.js +0 -141
  117. package/dist/Components/Table/TableToDo.d.ts +0 -2
  118. package/dist/Components/Table/TableToDo.js +0 -291
  119. /package/dist/Components/Table/{Components → components}/HeaderActions.d.ts +0 -0
  120. /package/dist/Components/Table/{Components → components}/HeaderActions.js +0 -0
  121. /package/dist/Components/Table/{Components → components}/Pagination.d.ts +0 -0
  122. /package/dist/Components/Table/{Components → components}/Pagination.js +0 -0
  123. /package/dist/Components/Table/{Components → components}/TableActions.d.ts +0 -0
  124. /package/dist/Components/Table/{Components → components}/TableActions.js +0 -0
  125. /package/dist/Components/Table/{Components → components}/TableBody.virtualize.test.d.ts +0 -0
  126. /package/dist/Components/Table/{Components → components}/TableBody.virtualize.test.js +0 -0
  127. /package/dist/Components/Table/{Components → components}/TableHeader.d.ts +0 -0
  128. /package/dist/Components/Table/{Components → components}/TableLoading.d.ts +0 -0
  129. /package/dist/Components/Table/{Components → components}/TableLoading.js +0 -0
  130. /package/dist/Components/Table/{Components → components}/TableSearch.d.ts +0 -0
  131. /package/dist/Components/Table/{Components → components}/TableSearch.js +0 -0
  132. /package/dist/Components/Table/{Components → filters}/ActiveFilters.d.ts +0 -0
  133. /package/dist/Components/Table/{Components → filters}/ActiveFilters.js +0 -0
  134. /package/dist/Components/Table/{CompactSelect.d.ts → filters/CompactSelect.d.ts} +0 -0
  135. /package/dist/Components/Table/{CompactSelect.js → filters/CompactSelect.js} +0 -0
  136. /package/dist/Components/Table/{LeftFilterPane.d.ts → filters/LeftFilterPane.d.ts} +0 -0
  137. /package/dist/Components/Table/{SelectOperationControls.d.ts → filters/SelectOperationControls.d.ts} +0 -0
  138. /package/dist/Components/Table/{SelectOperationControls.js → filters/SelectOperationControls.js} +0 -0
  139. /package/dist/Components/Table/{Components → filters}/TableFilters.d.ts +0 -0
  140. /package/dist/Components/Table/{Components → filters}/TableFilters.js +0 -0
  141. /package/dist/Components/Table/{TextOperationControls.d.ts → filters/TextOperationControls.d.ts} +0 -0
  142. /package/dist/Components/Table/{TextOperationControls.js → filters/TextOperationControls.js} +0 -0
  143. /package/dist/Components/Table/{Components → hooks}/useDebounce.d.ts +0 -0
  144. /package/dist/Components/Table/{Components → hooks}/useDebounce.js +0 -0
  145. /package/dist/Components/Table/{Components → hooks}/useTable.d.ts +0 -0
  146. /package/dist/Components/Table/{Components → hooks}/useTable.js +0 -0
  147. /package/dist/Components/Table/{TableSettings → settings}/ManageColumns.d.ts +0 -0
  148. /package/dist/Components/Table/{TableSettings → settings}/ManageColumns.js +0 -0
  149. /package/dist/Components/Table/{TableSettings → settings}/ManageColumns.test.d.ts +0 -0
  150. /package/dist/Components/Table/{TableSettings → settings}/ManageColumns.test.js +0 -0
@@ -1,4 +1,8 @@
1
1
  declare const palette: {
2
+ gradient: {
3
+ from: string;
4
+ to: string;
5
+ };
2
6
  primary: {
3
7
  50: string;
4
8
  100: string;
@@ -281,7 +281,10 @@ var disabled = {
281
281
  800: "#625d75",
282
282
  900: "#4b4759",
283
283
  };
284
+ // Two-tone brand gradient (violet → pink). Each theme overrides with its own pair.
285
+ var gradient = { from: "#8B3FC8", to: "#EC4899" };
284
286
  var palette = {
287
+ gradient: gradient,
285
288
  primary: primary,
286
289
  secondary: secondary,
287
290
  tertiary: tertiary,
@@ -1,4 +1,8 @@
1
1
  declare const palette: {
2
+ gradient: {
3
+ from: string;
4
+ to: string;
5
+ };
2
6
  primary: {
3
7
  50: string;
4
8
  100: string;
@@ -30,7 +30,8 @@ var primary = {
30
30
  900: "#043b35",
31
31
  opacity: (0, buildBrandTokens_1.buildPrimaryOpacity)(PRIMARY_500),
32
32
  };
33
- var palette = __assign(__assign({}, palette_1.default), { primary: primary,
33
+ var palette = __assign(__assign({}, palette_1.default), { gradient: { from: "#0f9d8a", to: "#06b6d4" }, // teal → cyan
34
+ primary: primary,
34
35
  // 🌫️ Neutral gray (slightly cool to match teal)
35
36
  gray: {
36
37
  50: "#f6f8f8",
@@ -1,4 +1,8 @@
1
1
  declare const palette: {
2
+ gradient: {
3
+ from: string;
4
+ to: string;
5
+ };
2
6
  primary: {
3
7
  50: string;
4
8
  100: string;
@@ -30,7 +30,8 @@ var primary = {
30
30
  900: "#0a2016",
31
31
  opacity: (0, buildBrandTokens_1.buildPrimaryOpacity)(PRIMARY_500),
32
32
  };
33
- var palette = __assign(__assign({}, palette_1.default), { primary: primary, tertiary: __assign({}, primary), gray: {
33
+ var palette = __assign(__assign({}, palette_1.default), { gradient: { from: "#2d6a4f", to: "#14b8a6" }, // forest green → teal
34
+ primary: primary, tertiary: __assign({}, primary), gray: {
34
35
  50: "#f6f9f7",
35
36
  100: "#ecf1ee",
36
37
  200: "#dce5e0",
@@ -1,4 +1,8 @@
1
1
  declare const palette: {
2
+ gradient: {
3
+ from: string;
4
+ to: string;
5
+ };
2
6
  primary: {
3
7
  50: string;
4
8
  100: string;
@@ -30,7 +30,8 @@ var primary = {
30
30
  900: "#531a14",
31
31
  opacity: (0, buildBrandTokens_1.buildPrimaryOpacity)(PRIMARY_500),
32
32
  };
33
- var palette = __assign(__assign({}, palette_1.default), { primary: primary,
33
+ var palette = __assign(__assign({}, palette_1.default), { gradient: { from: "#cf4e3a", to: "#f59e0b" }, // terracotta red → amber
34
+ primary: primary,
34
35
  // 🌫️ Neutral gray (slightly warm, not pink)
35
36
  gray: {
36
37
  50: "#f8f6f5",
@@ -1,4 +1,8 @@
1
1
  declare const palette: {
2
+ gradient: {
3
+ from: string;
4
+ to: string;
5
+ };
2
6
  primary: {
3
7
  50: string;
4
8
  100: string;
@@ -30,7 +30,8 @@ var primary = {
30
30
  900: "#552634",
31
31
  opacity: (0, buildBrandTokens_1.buildPrimaryOpacity)(PRIMARY_500),
32
32
  };
33
- var palette = __assign(__assign({}, palette_1.default), { primary: primary,
33
+ var palette = __assign(__assign({}, palette_1.default), { gradient: { from: "#d16a7e", to: "#fb7185" }, // rose → coral pink
34
+ primary: primary,
34
35
  // 🌫️ Neutral gray (slightly warm, avoids purple tint)
35
36
  gray: {
36
37
  50: "#f9f7f7",
@@ -1,4 +1,8 @@
1
1
  declare const palette: {
2
+ gradient: {
3
+ from: string;
4
+ to: string;
5
+ };
2
6
  primary: {
3
7
  50: string;
4
8
  100: string;
@@ -30,7 +30,8 @@ var primary = {
30
30
  900: "#071021",
31
31
  opacity: (0, buildBrandTokens_1.buildPrimaryOpacity)(PRIMARY_500),
32
32
  };
33
- var palette = __assign(__assign({}, palette_1.default), { primary: primary, tertiary: __assign({}, primary), gray: {
33
+ var palette = __assign(__assign({}, palette_1.default), { gradient: { from: "#1a3a6b", to: "#38bdf8" }, // deep navy → sky blue
34
+ primary: primary, tertiary: __assign({}, primary), gray: {
34
35
  50: "#f4f6fa",
35
36
  100: "#e6eaf2",
36
37
  200: "#d3dae8",
@@ -1,4 +1,8 @@
1
1
  declare const palette: {
2
+ gradient: {
3
+ from: string;
4
+ to: string;
5
+ };
2
6
  primary: {
3
7
  50: string;
4
8
  100: string;
@@ -30,7 +30,8 @@ var primary = {
30
30
  900: "#111827",
31
31
  opacity: (0, buildBrandTokens_1.buildPrimaryOpacity)(PRIMARY_500),
32
32
  };
33
- var palette = __assign(__assign({}, palette_1.default), { primary: primary, tertiary: __assign({}, primary), gray: {
33
+ var palette = __assign(__assign({}, palette_1.default), { gradient: { from: "#6b7280", to: "#818cf8" }, // slate gray → indigo
34
+ primary: primary, tertiary: __assign({}, primary), gray: {
34
35
  50: "#f9fafb",
35
36
  100: "#f3f4f6",
36
37
  200: "#e5e7eb",
@@ -2,6 +2,10 @@ import "@chakra-ui/react";
2
2
  import { Theme as ChakraTheme } from "@chakra-ui/react";
3
3
  export type CustomThemeProps = {
4
4
  colors: {
5
+ gradient?: {
6
+ from: string;
7
+ to: string;
8
+ };
5
9
  primary: {
6
10
  50: string;
7
11
  100: string;
@@ -1,9 +1,30 @@
1
1
  import React from "react";
2
2
  import { DataObject, TableHeaderProps } from "../Components/Table/TableProps";
3
+ /**
4
+ * Type-aware, null-safe comparison. Detects numbers and dates; otherwise falls
5
+ * back to a numeric-aware locale string compare. Empty/null values sort last.
6
+ */
7
+ export declare function compareValues(aRaw: any, bRaw: any, direction: "asc" | "desc" | "none"): number;
3
8
  export declare function SortMultiColumnData(data: Record<string, string | number>[], sortConfig: {
4
9
  column: string | number;
5
10
  direction: string;
6
11
  }[]): Record<string, string | number>[];
12
+ export type TablePaletteColor = {
13
+ solid: string;
14
+ soft: string;
15
+ text: string;
16
+ };
17
+ /** Deterministic, theme-aware color palette for groups + status pills. */
18
+ export declare function buildTablePalette(theme: any): TablePaletteColor[];
19
+ /** Pick a deterministic palette color for a value, with optional override hex. */
20
+ export declare function pickTableColor(value: string | number, palette: TablePaletteColor[], override?: string): TablePaletteColor;
21
+ export type TableGroup = {
22
+ value: string | number;
23
+ label: string;
24
+ rows: DataObject[];
25
+ };
26
+ /** Partition rows by a column key, preserving first-seen group order. */
27
+ export declare function groupRows(data: DataObject[], groupBy: string | number): TableGroup[];
7
28
  export declare const calculateLeftOffset: (columns: number[], index: number) => number;
8
29
  /**
9
30
  * When a column has no `node`, raw cell values are rendered; plain objects
@@ -43,32 +43,116 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
43
43
  };
44
44
  Object.defineProperty(exports, "__esModule", { value: true });
45
45
  exports.TableCellCalculation = exports.pageSizeCalculation = exports.searchAndSortData = exports.calculateLeftOffset = void 0;
46
+ exports.compareValues = compareValues;
46
47
  exports.SortMultiColumnData = SortMultiColumnData;
48
+ exports.buildTablePalette = buildTablePalette;
49
+ exports.pickTableColor = pickTableColor;
50
+ exports.groupRows = groupRows;
47
51
  exports.normalizeTableCellValue = normalizeTableCellValue;
48
52
  exports.debounce = debounce;
49
53
  exports.useDebounce = useDebounce;
50
54
  exports.globalSearchFilter = globalSearchFilter;
51
55
  var react_1 = __importStar(require("react"));
56
+ /**
57
+ * Type-aware, null-safe comparison. Detects numbers and dates; otherwise falls
58
+ * back to a numeric-aware locale string compare. Empty/null values sort last.
59
+ */
60
+ function compareValues(aRaw, bRaw, direction) {
61
+ if (direction === "none")
62
+ return 0;
63
+ var dir = direction === "asc" ? 1 : -1;
64
+ var a = getStringValue(aRaw);
65
+ var b = getStringValue(bRaw);
66
+ var aEmpty = a === "";
67
+ var bEmpty = b === "";
68
+ if (aEmpty && bEmpty)
69
+ return 0;
70
+ if (aEmpty)
71
+ return 1; // nulls/empties always last
72
+ if (bEmpty)
73
+ return -1;
74
+ var an = Number(a);
75
+ var bn = Number(b);
76
+ if (!Number.isNaN(an) && !Number.isNaN(bn))
77
+ return (an - bn) * dir;
78
+ var ad = Date.parse(a);
79
+ var bd = Date.parse(b);
80
+ if (!Number.isNaN(ad) && !Number.isNaN(bd))
81
+ return (ad - bd) * dir;
82
+ return a.localeCompare(b, undefined, { numeric: true, sensitivity: "base" }) * dir;
83
+ }
52
84
  function SortMultiColumnData(data, sortConfig) {
53
- if (!sortConfig.length)
85
+ var active = sortConfig.filter(function (s) { return s.direction !== "none"; });
86
+ if (!active.length)
54
87
  return data;
55
88
  return __spreadArray([], data, true).sort(function (a, b) {
56
- for (var _i = 0, sortConfig_1 = sortConfig; _i < sortConfig_1.length; _i++) {
57
- var _a = sortConfig_1[_i], column = _a.column, direction = _a.direction;
58
- if (direction === "none") {
59
- continue;
60
- }
61
- var dirMultiplier = direction === "asc" ? 1 : -1;
62
- // Compare values for the current column
63
- if (a[column] < b[column])
64
- return -1 * dirMultiplier;
65
- if (a[column] > b[column])
66
- return 1 * dirMultiplier;
67
- // If values are equal, continue to the next sorting rule
89
+ for (var _i = 0, active_1 = active; _i < active_1.length; _i++) {
90
+ var _a = active_1[_i], column = _a.column, direction = _a.direction;
91
+ var r = compareValues(a[column], b[column], direction);
92
+ if (r !== 0)
93
+ return r;
68
94
  }
69
- return 0; // Return 0 if all sort conditions are equal
95
+ return 0;
70
96
  });
71
97
  }
98
+ var withAlpha = function (hex, aa) {
99
+ return /^#([0-9a-fA-F]{6})$/.test(hex) ? "".concat(hex).concat(aa) : hex;
100
+ };
101
+ /** Deterministic, theme-aware color palette for groups + status pills. */
102
+ function buildTablePalette(theme) {
103
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
104
+ var c = (_a = theme === null || theme === void 0 ? void 0 : theme.colors) !== null && _a !== void 0 ? _a : {};
105
+ var bases = [
106
+ (_b = c.primary) === null || _b === void 0 ? void 0 : _b[500],
107
+ (_d = (_c = c.semantic) === null || _c === void 0 ? void 0 : _c.success) === null || _d === void 0 ? void 0 : _d[500],
108
+ (_f = (_e = c.semantic) === null || _e === void 0 ? void 0 : _e.info) === null || _f === void 0 ? void 0 : _f[500],
109
+ (_h = (_g = c.semantic) === null || _g === void 0 ? void 0 : _g.warning) === null || _h === void 0 ? void 0 : _h[500],
110
+ (_j = c.teal) === null || _j === void 0 ? void 0 : _j[500],
111
+ (_k = c.blue) === null || _k === void 0 ? void 0 : _k[500],
112
+ (_l = c.pink) === null || _l === void 0 ? void 0 : _l[500],
113
+ (_o = (_m = c.semantic) === null || _m === void 0 ? void 0 : _m.error) === null || _o === void 0 ? void 0 : _o[500],
114
+ (_p = c.orange) === null || _p === void 0 ? void 0 : _p[500],
115
+ (_q = c.purple) === null || _q === void 0 ? void 0 : _q[500],
116
+ ];
117
+ var list = bases.filter(Boolean);
118
+ var fallback = ["#8B3FC8"];
119
+ return (list.length ? list : fallback).map(function (solid) { return ({
120
+ solid: solid,
121
+ soft: withAlpha(solid, "22"),
122
+ text: solid,
123
+ }); });
124
+ }
125
+ var hashKey = function (value) {
126
+ var s = String(value);
127
+ var h = 0;
128
+ for (var i = 0; i < s.length; i++)
129
+ h = (h * 31 + s.charCodeAt(i)) >>> 0;
130
+ return h;
131
+ };
132
+ /** Pick a deterministic palette color for a value, with optional override hex. */
133
+ function pickTableColor(value, palette, override) {
134
+ if (override)
135
+ return { solid: override, soft: withAlpha(override, "22"), text: override };
136
+ if (!palette.length)
137
+ return { solid: "#8B3FC8", soft: "#8B3FC822", text: "#8B3FC8" };
138
+ return palette[hashKey(value) % palette.length];
139
+ }
140
+ /** Partition rows by a column key, preserving first-seen group order. */
141
+ function groupRows(data, groupBy) {
142
+ var order = [];
143
+ var map = new Map();
144
+ for (var _i = 0, data_1 = data; _i < data_1.length; _i++) {
145
+ var row = data_1[_i];
146
+ var raw = row[groupBy];
147
+ var key = raw === undefined || raw === null || raw === "" ? "—" : raw;
148
+ if (!map.has(key)) {
149
+ map.set(key, []);
150
+ order.push(key);
151
+ }
152
+ map.get(key).push(row);
153
+ }
154
+ return order.map(function (value) { return ({ value: value, label: String(value), rows: map.get(value) }); });
155
+ }
72
156
  var calculateLeftOffset = function (columns, index) {
73
157
  return columns.slice(0, index).reduce(function (sum, width) { return sum + width; }, 0);
74
158
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pixelize-design-library",
3
- "version": "2.2.198",
3
+ "version": "2.3.1-beta.2",
4
4
  "private": false,
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -106,4 +106,4 @@
106
106
  "react": "^18.3.1",
107
107
  "react-dom": "^18.3.1"
108
108
  }
109
- }
109
+ }
@@ -1,201 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- var react_1 = require("@chakra-ui/react");
40
- var react_2 = __importStar(require("react"));
41
- var table_1 = require("../../../Utils/table");
42
- var useCustomTheme_1 = require("../../../Theme/useCustomTheme");
43
- var TableLoading_1 = require("./TableLoading");
44
- var TableActions_1 = __importDefault(require("./TableActions"));
45
- var lucide_react_1 = require("lucide-react");
46
- var Checkbox_1 = __importDefault(require("../../Checkbox/Checkbox"));
47
- var EMPTY_SX = {};
48
- var EMPTY_HOVER = {};
49
- var TableRow = react_2.default.memo(function (_a) {
50
- var _b, _c, _d, _e, _f, _g, _h, _j, _k;
51
- var row = _a.row, rowIndex = _a.rowIndex, index = _a.index, isChecked = _a.isChecked, isExpanded = _a.isExpanded, isContent = _a.isContent, isLink = _a.isLink, isCheckbox = _a.isCheckbox, isLoading = _a.isLoading, isActionFreeze = _a.isActionFreeze, columns = _a.columns, leftOffsets = _a.leftOffsets, noBorders = _a.noBorders, freezedBgColor = _a.freezedBgColor, freezedTextColor = _a.freezedTextColor, theme = _a.theme, borderStyle = _a.borderStyle, hoverStyle = _a.hoverStyle, handleCheckbox = _a.handleCheckbox, onRowClick = _a.onRowClick, toggleRowExpansion = _a.toggleRowExpansion;
52
- var checkedSx = (0, react_2.useMemo)(function () { return isChecked ? {
53
- "& td": { backgroundColor: theme.colors.disabled[100] },
54
- } : EMPTY_SX; }, [isChecked, theme.colors.disabled]);
55
- var handleCellClick = (0, react_2.useCallback)(function (header) {
56
- if (!header.node && onRowClick) {
57
- onRowClick(row, { label: header.label, id: header.id });
58
- }
59
- }, [row, onRowClick]);
60
- return (react_2.default.createElement(react_2.default.Fragment, null,
61
- react_2.default.createElement(react_1.Tr, { opacity: isLoading ? 0.4 : 1, pointerEvents: isLoading ? "none" : "auto", transition: "opacity 0.2s", sx: checkedSx },
62
- isContent && (react_2.default.createElement(react_1.Td, { w: "6", p: 0, fontSize: 14, backgroundColor: (_c = (_b = theme.colors) === null || _b === void 0 ? void 0 : _b.background) === null || _c === void 0 ? void 0 : _c[50], color: freezedTextColor, position: "sticky", borderBottom: borderStyle, boxSizing: "border-box", left: 0, zIndex: 1, className: "columns sticky-columns" }, !!(row === null || row === void 0 ? void 0 : row.content) && (react_2.default.createElement(react_1.IconButton, { "aria-label": isExpanded ? "Collapse row" : "Expand row", color: (_d = theme.colors) === null || _d === void 0 ? void 0 : _d.gray[600], icon: isExpanded ? (react_2.default.createElement(lucide_react_1.ChevronDown, { fontSize: 16 })) : (react_2.default.createElement(lucide_react_1.ChevronRight, { fontSize: 16 })), _hover: { transform: "scale(1.1)" }, size: "sm", onClick: function () { return toggleRowExpansion(rowIndex); }, variant: "ghost" })))),
63
- isCheckbox && (react_2.default.createElement(react_1.Td, { w: "6", fontSize: 14, fontWeight: 600, color: (_f = (_e = theme.colors) === null || _e === void 0 ? void 0 : _e.background) === null || _f === void 0 ? void 0 : _f[50], textTransform: "capitalize", backgroundColor: (_h = (_g = theme.colors) === null || _g === void 0 ? void 0 : _g.background) === null || _h === void 0 ? void 0 : _h[50], position: "sticky", borderBottom: borderStyle, boxSizing: "border-box", left: 0, zIndex: 1, className: "columns sticky-columns" },
64
- react_2.default.createElement(Checkbox_1.default, { "aria-label": "Select all rows", onChange: function () { return handleCheckbox(row.id); }, isChecked: isChecked }))),
65
- columns.map(function (header, headerIndex) {
66
- var _a, _b, _c, _d, _e;
67
- if (header.isHidden)
68
- return null;
69
- var isFrozen = header.isFreeze;
70
- return (react_2.default.createElement(react_1.Td, { maxWidth: 500, minWidth: 120, height: 45, key: headerIndex + 1, onClick: function () { return handleCellClick(header); }, fontSize: 14, fontWeight: 400, position: isFrozen ? "sticky" : undefined, left: isFrozen ? leftOffsets[headerIndex] : undefined, zIndex: isFrozen ? 1 : 0, backgroundColor: (_a = theme.colors.background) === null || _a === void 0 ? void 0 : _a[50], textOverflow: "ellipsis", borderBottom: noBorders
71
- ? "none"
72
- : "0.063rem solid ".concat((_b = theme.colors) === null || _b === void 0 ? void 0 : _b.gray[isFrozen || isChecked ? 300 : 200]), className: "columns ".concat(isFrozen ? "sticky-columns" : "scrollable-columns"), boxSizing: "border-box", color: (_d = (_c = theme.colors) === null || _c === void 0 ? void 0 : _c.text) === null || _d === void 0 ? void 0 : _d[500], _hover: ((_e = row.cellStyle) === null || _e === void 0 ? void 0 : _e[header.id]) || row.rowStyle
73
- ? EMPTY_HOVER
74
- : hoverStyle },
75
- react_2.default.createElement(react_1.Box, { display: "block", overflow: "hidden", whiteSpace: "normal", overflowWrap: "break-word" }, (0, table_1.normalizeTableCellValue)(header.node ? header.node(row) : row[header.id]))));
76
- }),
77
- isLink && (react_2.default.createElement(react_1.Td, { w: 2, p: 0, fontSize: 14, backgroundColor: (_k = (_j = theme === null || theme === void 0 ? void 0 : theme.colors) === null || _j === void 0 ? void 0 : _j.background) === null || _k === void 0 ? void 0 : _k[50], color: freezedTextColor, position: isActionFreeze ? "sticky" : "relative", borderBottom: borderStyle, boxSizing: "border-box", right: 0, zIndex: 1, className: "columns sticky-columns".concat(isActionFreeze ? "-right" : "") }, (row.onLink || row.onEdit || row.onDelete) && (react_2.default.createElement(TableActions_1.default, { row: row }))))),
78
- row.content && isExpanded && (react_2.default.createElement(react_1.Tr, null,
79
- react_2.default.createElement(react_1.Td, { colSpan: columns.length +
80
- (isCheckbox ? 1 : 0) +
81
- (isContent ? 1 : 0) +
82
- (isLink ? 1 : 0), p: 2 },
83
- react_2.default.createElement(react_1.Box, { p: 2, bg: theme.colors.white, borderRadius: "md" }, row === null || row === void 0 ? void 0 : row.content(row)))))));
84
- });
85
- var TableBody = function (_a) {
86
- var _b, _c, _d, _e, _f, _g, _h;
87
- var data = _a.data, isCheckbox = _a.isCheckbox, columns = _a.columns, startRow = _a.startRow, columnWidths = _a.columnWidths, freezedBgColor = _a.freezedBgColor, freezedTextColor = _a.freezedTextColor, noBorders = _a.noBorders, handleCheckbox = _a.handleCheckbox, selections = _a.selections, isLoading = _a.isLoading, onRowClick = _a.onRowClick, isContent = _a.isContent, isLink = _a.isLink, isActionFreeze = _a.isActionFreeze, loadingSkeletonRows = _a.loadingSkeletonRows, scrollContainerRef = _a.scrollContainerRef;
88
- var theme = (0, useCustomTheme_1.useCustomTheme)();
89
- var _j = (0, react_2.useState)(new Set()), expandedRows = _j[0], setExpandedRows = _j[1];
90
- var selectionsSet = (0, react_2.useMemo)(function () { return new Set(selections); }, [selections]);
91
- // --- Row virtualization ---------------------------------------------------
92
- // Rows are a fixed 45px tall (see the `height={45}` on every <Td/> below),
93
- // and the scroll viewport is capped at ~500px, so only ~11 rows are ever
94
- // visible. Mounting all 50/100 page rows is what makes paging freeze. We
95
- // render only the rows inside the viewport (+ overscan) and reserve the
96
- // remaining height with empty spacer rows. Spacer rows (rather than CSS
97
- // transforms) keep the table in normal flow so the sticky header and
98
- // `position: sticky` frozen columns keep working.
99
- // Disabled when expandable content rows are present, since those break the
100
- // fixed-height assumption.
101
- var ROW_HEIGHT = 45;
102
- var OVERSCAN = 6;
103
- var VIRTUALIZE_THRESHOLD = 30;
104
- var shouldVirtualize = !isContent && data.length > VIRTUALIZE_THRESHOLD;
105
- var _k = (0, react_2.useState)(0), scrollTop = _k[0], setScrollTop = _k[1];
106
- var _l = (0, react_2.useState)(0), viewportH = _l[0], setViewportH = _l[1];
107
- (0, react_2.useEffect)(function () {
108
- var el = scrollContainerRef === null || scrollContainerRef === void 0 ? void 0 : scrollContainerRef.current;
109
- if (!el || !shouldVirtualize)
110
- return;
111
- var onScroll = function () { return setScrollTop(el.scrollTop); };
112
- var measure = function () { return setViewportH(el.clientHeight); };
113
- measure();
114
- setScrollTop(el.scrollTop);
115
- el.addEventListener("scroll", onScroll, { passive: true });
116
- window.addEventListener("resize", measure);
117
- return function () {
118
- el.removeEventListener("scroll", onScroll);
119
- window.removeEventListener("resize", measure);
120
- };
121
- }, [scrollContainerRef, shouldVirtualize, data.length]);
122
- // New page: jump back to the top so the window recomputes from row 0.
123
- (0, react_2.useEffect)(function () {
124
- if (!shouldVirtualize)
125
- return;
126
- var el = scrollContainerRef === null || scrollContainerRef === void 0 ? void 0 : scrollContainerRef.current;
127
- if (el)
128
- el.scrollTop = 0;
129
- setScrollTop(0);
130
- }, [startRow, shouldVirtualize, scrollContainerRef]);
131
- var total = data.length;
132
- var firstIndex = 0;
133
- var lastIndex = total;
134
- if (shouldVirtualize) {
135
- var vh = viewportH || 500;
136
- firstIndex = Math.max(0, Math.floor(scrollTop / ROW_HEIGHT) - OVERSCAN);
137
- var count = Math.ceil(vh / ROW_HEIGHT) + OVERSCAN * 2;
138
- lastIndex = Math.min(total, firstIndex + count);
139
- }
140
- var visibleRows = shouldVirtualize ? data.slice(firstIndex, lastIndex) : data;
141
- var topPad = firstIndex * ROW_HEIGHT;
142
- var bottomPad = (total - lastIndex) * ROW_HEIGHT;
143
- var toggleRowExpansion = (0, react_2.useCallback)(function (rowIndex) {
144
- setExpandedRows(function (prev) {
145
- var newSet = new Set(prev);
146
- if (newSet.has(rowIndex)) {
147
- newSet.delete(rowIndex);
148
- }
149
- else {
150
- newSet.add(rowIndex);
151
- }
152
- return newSet;
153
- });
154
- }, []);
155
- var totalVisibleColumns = (0, react_2.useMemo)(function () {
156
- return columns.filter(function (o) { return !o.isHidden; }).length +
157
- (isCheckbox ? 1 : 0) +
158
- (isContent ? 1 : 0) +
159
- (isLink ? 1 : 0);
160
- }, [columns, isCheckbox, isContent, isLink]);
161
- var leftOffsets = (0, react_2.useMemo)(function () {
162
- var checkboxOffset = isCheckbox ? 50 : 0;
163
- return columnWidths.map(function (_, idx) {
164
- return columnWidths.slice(0, idx).reduce(function (sum, w) { return sum + w; }, 0) + checkboxOffset;
165
- });
166
- }, [columnWidths, isCheckbox]);
167
- var borderStyle = (0, react_2.useMemo)(function () { var _a; return noBorders ? "none" : "0.063rem solid ".concat((_a = theme.colors) === null || _a === void 0 ? void 0 : _a.border[500]); }, [noBorders, (_b = theme.colors) === null || _b === void 0 ? void 0 : _b.border]);
168
- var hoverStyle = (0, react_2.useMemo)(function () {
169
- var _a, _b;
170
- return ({
171
- backgroundColor: (_b = (_a = theme.colors.secondary) === null || _a === void 0 ? void 0 : _a.opacity) === null || _b === void 0 ? void 0 : _b[4],
172
- });
173
- }, [(_c = theme.colors.secondary) === null || _c === void 0 ? void 0 : _c.opacity]);
174
- if (isLoading && data.length === 0) {
175
- return (react_2.default.createElement(TableLoading_1.TableBodyLoading, { noOfColumns: totalVisibleColumns, borderColor: theme.colors.gray[300], rowsCount: typeof loadingSkeletonRows === "number" ? loadingSkeletonRows : 4 }));
176
- }
177
- if (!isLoading && data.length === 0) {
178
- return (react_2.default.createElement(react_1.Tr, { backgroundColor: (_d = theme.colors.background) === null || _d === void 0 ? void 0 : _d[50] },
179
- react_2.default.createElement(react_1.Td, { colSpan: totalVisibleColumns, textAlign: "center", py: 4 },
180
- react_2.default.createElement(react_1.Box, { textAlign: "center", fontSize: 14, color: (_f = (_e = theme.colors) === null || _e === void 0 ? void 0 : _e.text) === null || _f === void 0 ? void 0 : _f[500] },
181
- react_2.default.createElement("p", null, "No data found")))));
182
- }
183
- return (react_2.default.createElement(react_2.default.Fragment, null,
184
- isLoading && data.length > 0 && (react_2.default.createElement(react_1.Tr, null,
185
- react_2.default.createElement(react_1.Td, { colSpan: totalVisibleColumns, p: 0, border: "none", position: "relative", height: 0 },
186
- react_2.default.createElement(react_1.Box, { position: "absolute", top: 4, left: "50%", transform: "translateX(-50%)", zIndex: 10 },
187
- react_2.default.createElement(react_1.Spinner, { size: "sm", color: ((_h = (_g = theme.colors) === null || _g === void 0 ? void 0 : _g.primary) === null || _h === void 0 ? void 0 : _h[500]) || "blue.500" }))))),
188
- shouldVirtualize && topPad > 0 && (react_2.default.createElement("tr", { "aria-hidden": "true", style: { height: topPad } },
189
- react_2.default.createElement("td", { colSpan: totalVisibleColumns, style: { padding: 0, border: "none", height: topPad } }))),
190
- visibleRows.map(function (row, i) {
191
- var _a;
192
- var index = firstIndex + i;
193
- var rowIndex = startRow + index;
194
- var isExpanded = expandedRows.has(rowIndex);
195
- var isChecked = selectionsSet.has(row.id);
196
- return (react_2.default.createElement(TableRow, { key: (_a = row.id) !== null && _a !== void 0 ? _a : rowIndex, row: row, rowIndex: rowIndex, index: index, isChecked: isChecked, isExpanded: isExpanded, isContent: isContent, isLink: isLink, isCheckbox: isCheckbox, isLoading: isLoading, isActionFreeze: isActionFreeze, columns: columns, leftOffsets: leftOffsets, noBorders: noBorders, freezedBgColor: freezedBgColor, freezedTextColor: freezedTextColor, theme: theme, borderStyle: borderStyle, hoverStyle: hoverStyle, handleCheckbox: handleCheckbox, onRowClick: onRowClick, toggleRowExpansion: toggleRowExpansion }));
197
- }),
198
- shouldVirtualize && bottomPad > 0 && (react_2.default.createElement("tr", { "aria-hidden": "true", style: { height: bottomPad } },
199
- react_2.default.createElement("td", { colSpan: totalVisibleColumns, style: { padding: 0, border: "none", height: bottomPad } })))));
200
- };
201
- exports.default = TableBody;
@@ -1,10 +0,0 @@
1
- import React from "react";
2
- type TableFiltersMethods = {
3
- getSelectedFilters: () => string[];
4
- };
5
- declare const TableFilters: ({ filters, childFilterMethodsRef, filterSelected, }: {
6
- filters?: string[];
7
- childFilterMethodsRef?: React.Ref<TableFiltersMethods>;
8
- filterSelected?: string[];
9
- }) => React.JSX.Element | null;
10
- export default TableFilters;
@@ -1,69 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
36
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
37
- if (ar || !(i in from)) {
38
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
39
- ar[i] = from[i];
40
- }
41
- }
42
- return to.concat(ar || Array.prototype.slice.call(from));
43
- };
44
- var __importDefault = (this && this.__importDefault) || function (mod) {
45
- return (mod && mod.__esModule) ? mod : { "default": mod };
46
- };
47
- Object.defineProperty(exports, "__esModule", { value: true });
48
- var react_1 = require("@chakra-ui/react");
49
- var react_2 = __importStar(require("react"));
50
- var Checkbox_1 = __importDefault(require("../../Checkbox/Checkbox"));
51
- var TableFilters = function (_a) {
52
- var filters = _a.filters, childFilterMethodsRef = _a.childFilterMethodsRef, filterSelected = _a.filterSelected;
53
- var _b = (0, react_2.useState)(filterSelected !== null && filterSelected !== void 0 ? filterSelected : []), selectedFilters = _b[0], setSelectedFilters = _b[1];
54
- (0, react_2.useEffect)(function () {
55
- setSelectedFilters(filterSelected !== null && filterSelected !== void 0 ? filterSelected : []);
56
- }, [filterSelected]);
57
- (0, react_2.useImperativeHandle)(childFilterMethodsRef, function () { return ({
58
- getSelectedFilters: function () { return selectedFilters; },
59
- }); }, [selectedFilters]);
60
- if (!(filters === null || filters === void 0 ? void 0 : filters.length))
61
- return null;
62
- return (react_2.default.createElement(react_1.Box, { display: "flex", flexDirection: "column", gap: "0.375rem" }, filters.map(function (value) { return (react_2.default.createElement(Checkbox_1.default, { key: value, value: value, isChecked: selectedFilters.includes(value), onChange: function (e) {
63
- setSelectedFilters(function (prev) {
64
- return e.target.checked
65
- ? __spreadArray(__spreadArray([], prev, true), [value], false) : prev.filter(function (f) { return f !== value; });
66
- });
67
- }, label: value })); })));
68
- };
69
- exports.default = TableFilters;
@@ -1 +0,0 @@
1
- import "@testing-library/jest-dom";