@dmsi/wedgekit-react 0.0.643 → 0.0.644

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 (66) hide show
  1. package/dist/{chunk-FIOXWZWU.js → chunk-ECYXZZWC.js} +1 -1
  2. package/dist/{chunk-QJZ3XHNH.js → chunk-HCHKYUNQ.js} +19 -5
  3. package/dist/{chunk-SJ3SULQB.js → chunk-J2QD64F2.js} +7 -7
  4. package/dist/{chunk-YR4ZO2XL.js → chunk-K22B4L3G.js} +28 -22
  5. package/dist/{chunk-3R3AY5MT.js → chunk-LN3HVXH5.js} +1 -1
  6. package/dist/{chunk-IATOG76G.js → chunk-NUFBAJ6L.js} +1 -1
  7. package/dist/{chunk-MQB6BSRX.js → chunk-OXOMO76M.js} +1 -1
  8. package/dist/{chunk-UB3GEENN.js → chunk-OZEKRO4L.js} +1 -1
  9. package/dist/{chunk-LGX34HML.js → chunk-Q4AANHJY.js} +1 -1
  10. package/dist/{chunk-5JHKFK73.js → chunk-V2GSI3ZX.js} +2 -2
  11. package/dist/{chunk-RQMOWYB7.js → chunk-VAARSN7U.js} +3 -3
  12. package/dist/{chunk-ARWHCWG7.js → chunk-XT4BQXSX.js} +1 -1
  13. package/dist/{chunk-XX5GVIPZ.js → chunk-XVWCVBVF.js} +2 -2
  14. package/dist/{chunk-PS7MBNUT.js → chunk-YXZRGZ2I.js} +1 -1
  15. package/dist/{chunk-V7GPM6Z3.js → chunk-Z3Q7PLVD.js} +1 -1
  16. package/dist/components/CalendarRange.cjs +45 -26
  17. package/dist/components/CalendarRange.js +15 -15
  18. package/dist/components/CompactImagesPreview.js +3 -3
  19. package/dist/components/DataGrid/ColumnSelectorHeaderCell/ColumnSelectorMenuOption.cjs +45 -26
  20. package/dist/components/DataGrid/ColumnSelectorHeaderCell/ColumnSelectorMenuOption.js +15 -15
  21. package/dist/components/DataGrid/ColumnSelectorHeaderCell/index.cjs +45 -26
  22. package/dist/components/DataGrid/ColumnSelectorHeaderCell/index.js +15 -15
  23. package/dist/components/DataGrid/PinnedColumns.cjs +45 -26
  24. package/dist/components/DataGrid/PinnedColumns.js +15 -15
  25. package/dist/components/DataGrid/TableBody/LoadingCell.cjs +45 -26
  26. package/dist/components/DataGrid/TableBody/LoadingCell.js +15 -15
  27. package/dist/components/DataGrid/TableBody/TableBodyRow.cjs +45 -26
  28. package/dist/components/DataGrid/TableBody/TableBodyRow.js +15 -15
  29. package/dist/components/DataGrid/TableBody/index.cjs +45 -26
  30. package/dist/components/DataGrid/TableBody/index.js +15 -15
  31. package/dist/components/DataGrid/index.cjs +45 -26
  32. package/dist/components/DataGrid/index.js +15 -15
  33. package/dist/components/DataGrid/utils.cjs +45 -26
  34. package/dist/components/DataGrid/utils.js +15 -15
  35. package/dist/components/DataGridCell.js +6 -6
  36. package/dist/components/DateInput.cjs +45 -26
  37. package/dist/components/DateInput.js +15 -15
  38. package/dist/components/DateRangeInput.cjs +45 -26
  39. package/dist/components/DateRangeInput.js +15 -15
  40. package/dist/components/Menu.js +4 -4
  41. package/dist/components/MenuOption.js +3 -3
  42. package/dist/components/MobileDataGrid/ColumnList.js +4 -4
  43. package/dist/components/MobileDataGrid/ColumnSelector/index.cjs +45 -26
  44. package/dist/components/MobileDataGrid/ColumnSelector/index.js +15 -15
  45. package/dist/components/MobileDataGrid/MobileDataGridCard/MobileDataGridColumn.js +2 -2
  46. package/dist/components/MobileDataGrid/MobileDataGridCard/index.js +3 -3
  47. package/dist/components/MobileDataGrid/MobileDataGridHeader.cjs +45 -26
  48. package/dist/components/MobileDataGrid/MobileDataGridHeader.js +15 -15
  49. package/dist/components/MobileDataGrid/RowDetailModalProvider/ModalContent.js +3 -3
  50. package/dist/components/MobileDataGrid/RowDetailModalProvider/index.js +6 -6
  51. package/dist/components/MobileDataGrid/index.cjs +45 -26
  52. package/dist/components/MobileDataGrid/index.js +15 -15
  53. package/dist/components/Modal.js +3 -3
  54. package/dist/components/NestedMenu.js +3 -3
  55. package/dist/components/PDFViewer/index.js +3 -3
  56. package/dist/components/ProductImagePreview/index.js +3 -3
  57. package/dist/components/ProjectBar.js +2 -2
  58. package/dist/components/Time.js +1 -1
  59. package/dist/components/index.cjs +45 -26
  60. package/dist/components/index.js +15 -15
  61. package/dist/components/useMenuSystem.js +3 -3
  62. package/dist/hooks/index.cjs +48 -26
  63. package/dist/hooks/index.js +2 -2
  64. package/dist/utils/index.cjs +21 -5
  65. package/dist/utils/index.js +1 -1
  66. package/package.json +1 -1
@@ -1,21 +1,21 @@
1
1
  import {
2
2
  ColumnSelector
3
- } from "../../../chunk-SJ3SULQB.js";
4
- import "../../../chunk-XX5GVIPZ.js";
3
+ } from "../../../chunk-J2QD64F2.js";
4
+ import "../../../chunk-XVWCVBVF.js";
5
5
  import "../../../chunk-M7INAUAJ.js";
6
- import "../../../chunk-ARWHCWG7.js";
7
- import "../../../chunk-MQB6BSRX.js";
6
+ import "../../../chunk-XT4BQXSX.js";
7
+ import "../../../chunk-OXOMO76M.js";
8
8
  import "../../../chunk-YCDDBSVU.js";
9
9
  import "../../../chunk-3X3Y4TMS.js";
10
10
  import "../../../chunk-BQNPOGD5.js";
11
11
  import "../../../chunk-Y5GD2FJA.js";
12
12
  import "../../../chunk-MBZ55T2D.js";
13
13
  import "../../../chunk-2IKT6IHB.js";
14
- import "../../../chunk-FIOXWZWU.js";
15
- import "../../../chunk-LGX34HML.js";
14
+ import "../../../chunk-ECYXZZWC.js";
15
+ import "../../../chunk-Q4AANHJY.js";
16
16
  import "../../../chunk-5IFPG6TS.js";
17
+ import "../../../chunk-OZEKRO4L.js";
17
18
  import "../../../chunk-AJ5M6MVX.js";
18
- import "../../../chunk-UB3GEENN.js";
19
19
  import "../../../chunk-AT4AWD6B.js";
20
20
  import "../../../chunk-EWGHVZL5.js";
21
21
  import "../../../chunk-UF5XGCSF.js";
@@ -24,7 +24,7 @@ import "../../../chunk-L3BXRDLP.js";
24
24
  import "../../../chunk-34VEVX5H.js";
25
25
  import "../../../chunk-LB7UT6F3.js";
26
26
  import "../../../chunk-AS57Y2D3.js";
27
- import "../../../chunk-V7GPM6Z3.js";
27
+ import "../../../chunk-Z3Q7PLVD.js";
28
28
  import "../../../chunk-4RJKB7LC.js";
29
29
  import "../../../chunk-UUKHQUSF.js";
30
30
  import "../../../chunk-WVVEOCEH.js";
@@ -35,19 +35,19 @@ import "../../../chunk-UAMI54FE.js";
35
35
  import "../../../chunk-SJZNVG4N.js";
36
36
  import "../../../chunk-75USUR3I.js";
37
37
  import "../../../chunk-BWPNXY7T.js";
38
- import "../../../chunk-RQMOWYB7.js";
39
- import "../../../chunk-5JHKFK73.js";
40
- import "../../../chunk-IATOG76G.js";
41
- import "../../../chunk-PS7MBNUT.js";
38
+ import "../../../chunk-VAARSN7U.js";
39
+ import "../../../chunk-V2GSI3ZX.js";
40
+ import "../../../chunk-NUFBAJ6L.js";
41
+ import "../../../chunk-YXZRGZ2I.js";
42
42
  import "../../../chunk-FHXCCVOG.js";
43
43
  import "../../../chunk-7T5RGDCN.js";
44
44
  import "../../../chunk-HXGJVYGQ.js";
45
45
  import "../../../chunk-WVUIIBRR.js";
46
46
  import "../../../chunk-M7WHWZ2J.js";
47
- import "../../../chunk-3R3AY5MT.js";
48
- import "../../../chunk-YR4ZO2XL.js";
47
+ import "../../../chunk-LN3HVXH5.js";
48
+ import "../../../chunk-K22B4L3G.js";
49
49
  import "../../../chunk-VXWSAIB5.js";
50
- import "../../../chunk-QJZ3XHNH.js";
50
+ import "../../../chunk-HCHKYUNQ.js";
51
51
  import "../../../chunk-5UH6QUFB.js";
52
52
  import "../../../chunk-XJF4S3RB.js";
53
53
  import "../../../chunk-ZCJWOHFN.js";
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  MobileDataGridColumn
3
- } from "../../../chunk-UB3GEENN.js";
3
+ } from "../../../chunk-OZEKRO4L.js";
4
4
  import "../../../chunk-VXWSAIB5.js";
5
- import "../../../chunk-QJZ3XHNH.js";
5
+ import "../../../chunk-HCHKYUNQ.js";
6
6
  import "../../../chunk-5UH6QUFB.js";
7
7
  import "../../../chunk-WMPWWFUJ.js";
8
8
  import "../../../chunk-7KWFEH56.js";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  MobileDataGridCard
3
- } from "../../../chunk-LGX34HML.js";
3
+ } from "../../../chunk-Q4AANHJY.js";
4
4
  import "../../../chunk-5IFPG6TS.js";
5
+ import "../../../chunk-OZEKRO4L.js";
5
6
  import "../../../chunk-AJ5M6MVX.js";
6
- import "../../../chunk-UB3GEENN.js";
7
7
  import "../../../chunk-M7WHWZ2J.js";
8
8
  import "../../../chunk-VXWSAIB5.js";
9
- import "../../../chunk-QJZ3XHNH.js";
9
+ import "../../../chunk-HCHKYUNQ.js";
10
10
  import "../../../chunk-5UH6QUFB.js";
11
11
  import "../../../chunk-BYC6QID5.js";
12
12
  import "../../../chunk-MTGNBARV.js";
@@ -1026,11 +1026,24 @@ function formatDate(date) {
1026
1026
 
1027
1027
  // src/utils/mergeObjectArrays.ts
1028
1028
  function mergeObjectArrays(arr1, arr2) {
1029
- const maxLength = Math.max(arr1.length, arr2.length);
1030
- return Array.from(
1031
- { length: maxLength },
1032
- (_, i) => __spreadValues(__spreadValues({}, arr1[i] || {}), arr2[i] || {})
1033
- );
1029
+ const arr2Map = /* @__PURE__ */ new Map();
1030
+ for (const item of arr2) {
1031
+ const id = item.id;
1032
+ if (id !== void 0) {
1033
+ arr2Map.set(id, item);
1034
+ }
1035
+ }
1036
+ return arr1.map((item1) => {
1037
+ const id = item1.id;
1038
+ if (id !== void 0 && arr2Map.has(id)) {
1039
+ const item2 = arr2Map.get(id);
1040
+ const meta1 = item1.meta;
1041
+ const meta2 = item2.meta;
1042
+ const mergedMeta = meta1 && meta2 && typeof meta1 === "object" && typeof meta2 === "object" ? __spreadValues(__spreadValues({}, meta1), meta2) : meta2 != null ? meta2 : meta1;
1043
+ return __spreadProps(__spreadValues(__spreadValues({}, item1), item2), { meta: mergedMeta });
1044
+ }
1045
+ return item1;
1046
+ });
1034
1047
  }
1035
1048
 
1036
1049
  // src/utils/index.ts
@@ -1066,52 +1079,58 @@ var getLocalStorageKeyWithPrefix = (key) => `${LocalStoragePrefix}__${key}`;
1066
1079
  function useTableLayout(initialColumns, key, autosync = true) {
1067
1080
  const [columns, setColumns] = (0, import_react5.useState)(initialColumns);
1068
1081
  const [isReady, setIsReady] = (0, import_react5.useState)(false);
1069
- const renderCountRef = (0, import_react5.useRef)(0);
1082
+ const isReadyRef = (0, import_react5.useRef)(false);
1083
+ const keyRef = (0, import_react5.useRef)(key);
1084
+ (0, import_react5.useEffect)(() => {
1085
+ isReadyRef.current = isReady;
1086
+ keyRef.current = key;
1087
+ }, [isReady, key]);
1070
1088
  const handleSaveLayout = (0, import_react5.useCallback)(
1071
1089
  (setter, _internal) => {
1072
- if (!isReady && !_internal || !key) return;
1090
+ if (!isReadyRef.current && !_internal || !keyRef.current) return;
1073
1091
  setColumns((prevColumns) => {
1074
1092
  const newColumns = typeof setter === "function" ? setter(prevColumns) : setter;
1075
- if (JSON.stringify(newColumns) === JSON.stringify(prevColumns) && !_internal)
1093
+ if (JSON.stringify(newColumns) === JSON.stringify(prevColumns) && !_internal) {
1076
1094
  return prevColumns;
1095
+ }
1077
1096
  localStorage.setItem(
1078
- getLocalStorageKeyWithPrefix(`${key}-tableLayout`),
1097
+ getLocalStorageKeyWithPrefix(`${keyRef.current}-tableLayout`),
1079
1098
  JSON.stringify(newColumns)
1080
1099
  );
1081
1100
  return newColumns;
1082
1101
  });
1083
1102
  },
1084
- [isReady, key]
1103
+ []
1085
1104
  );
1086
1105
  (0, import_react5.useEffect)(() => {
1087
1106
  if (!autosync) return;
1088
- if (!key) return setIsReady(true);
1089
- if (renderCountRef.current > 1) {
1090
- throw new Error(
1091
- `useTableLayout should only be called once per component render cycle.
1092
- ${renderCountRef.current} Renders detected.
1093
- Check dependency stability`
1094
- );
1107
+ if (!key) {
1108
+ setIsReady(true);
1109
+ return;
1095
1110
  }
1096
- renderCountRef.current += 1;
1097
1111
  const savedLayout = localStorage.getItem(
1098
1112
  getLocalStorageKeyWithPrefix(`${key}-tableLayout`)
1099
1113
  );
1100
1114
  if (savedLayout) {
1101
- handleSaveLayout(
1115
+ setColumns(
1102
1116
  mergeObjectArrays(
1103
1117
  initialColumns,
1104
1118
  JSON.parse(savedLayout)
1105
- ),
1106
- true
1119
+ )
1120
+ );
1121
+ } else {
1122
+ localStorage.setItem(
1123
+ getLocalStorageKeyWithPrefix(`${key}-tableLayout`),
1124
+ JSON.stringify(initialColumns)
1107
1125
  );
1126
+ setColumns((prev) => {
1127
+ if (JSON.stringify(initialColumns) === JSON.stringify(prev))
1128
+ return prev;
1129
+ return initialColumns;
1130
+ });
1108
1131
  }
1109
- if (!savedLayout) handleSaveLayout(initialColumns, true);
1110
1132
  setIsReady(true);
1111
- return () => {
1112
- renderCountRef.current = 0;
1113
- };
1114
- }, [handleSaveLayout, initialColumns, key, autosync]);
1133
+ }, [initialColumns, key, autosync]);
1115
1134
  const getSavedLayout = (0, import_react5.useCallback)(() => {
1116
1135
  const savedLayout = localStorage.getItem(
1117
1136
  getLocalStorageKeyWithPrefix(`${key}-tableLayout`)
@@ -1,21 +1,21 @@
1
1
  import {
2
2
  MobileDataGridHeader
3
- } from "../../chunk-SJ3SULQB.js";
4
- import "../../chunk-XX5GVIPZ.js";
3
+ } from "../../chunk-J2QD64F2.js";
4
+ import "../../chunk-XVWCVBVF.js";
5
5
  import "../../chunk-M7INAUAJ.js";
6
- import "../../chunk-ARWHCWG7.js";
7
- import "../../chunk-MQB6BSRX.js";
6
+ import "../../chunk-XT4BQXSX.js";
7
+ import "../../chunk-OXOMO76M.js";
8
8
  import "../../chunk-YCDDBSVU.js";
9
9
  import "../../chunk-3X3Y4TMS.js";
10
10
  import "../../chunk-BQNPOGD5.js";
11
11
  import "../../chunk-Y5GD2FJA.js";
12
12
  import "../../chunk-MBZ55T2D.js";
13
13
  import "../../chunk-2IKT6IHB.js";
14
- import "../../chunk-FIOXWZWU.js";
15
- import "../../chunk-LGX34HML.js";
14
+ import "../../chunk-ECYXZZWC.js";
15
+ import "../../chunk-Q4AANHJY.js";
16
16
  import "../../chunk-5IFPG6TS.js";
17
+ import "../../chunk-OZEKRO4L.js";
17
18
  import "../../chunk-AJ5M6MVX.js";
18
- import "../../chunk-UB3GEENN.js";
19
19
  import "../../chunk-AT4AWD6B.js";
20
20
  import "../../chunk-EWGHVZL5.js";
21
21
  import "../../chunk-UF5XGCSF.js";
@@ -24,7 +24,7 @@ import "../../chunk-L3BXRDLP.js";
24
24
  import "../../chunk-34VEVX5H.js";
25
25
  import "../../chunk-LB7UT6F3.js";
26
26
  import "../../chunk-AS57Y2D3.js";
27
- import "../../chunk-V7GPM6Z3.js";
27
+ import "../../chunk-Z3Q7PLVD.js";
28
28
  import "../../chunk-4RJKB7LC.js";
29
29
  import "../../chunk-UUKHQUSF.js";
30
30
  import "../../chunk-WVVEOCEH.js";
@@ -35,19 +35,19 @@ import "../../chunk-UAMI54FE.js";
35
35
  import "../../chunk-SJZNVG4N.js";
36
36
  import "../../chunk-75USUR3I.js";
37
37
  import "../../chunk-BWPNXY7T.js";
38
- import "../../chunk-RQMOWYB7.js";
39
- import "../../chunk-5JHKFK73.js";
40
- import "../../chunk-IATOG76G.js";
41
- import "../../chunk-PS7MBNUT.js";
38
+ import "../../chunk-VAARSN7U.js";
39
+ import "../../chunk-V2GSI3ZX.js";
40
+ import "../../chunk-NUFBAJ6L.js";
41
+ import "../../chunk-YXZRGZ2I.js";
42
42
  import "../../chunk-FHXCCVOG.js";
43
43
  import "../../chunk-7T5RGDCN.js";
44
44
  import "../../chunk-HXGJVYGQ.js";
45
45
  import "../../chunk-WVUIIBRR.js";
46
46
  import "../../chunk-M7WHWZ2J.js";
47
- import "../../chunk-3R3AY5MT.js";
48
- import "../../chunk-YR4ZO2XL.js";
47
+ import "../../chunk-LN3HVXH5.js";
48
+ import "../../chunk-K22B4L3G.js";
49
49
  import "../../chunk-VXWSAIB5.js";
50
- import "../../chunk-QJZ3XHNH.js";
50
+ import "../../chunk-HCHKYUNQ.js";
51
51
  import "../../chunk-5UH6QUFB.js";
52
52
  import "../../chunk-XJF4S3RB.js";
53
53
  import "../../chunk-ZCJWOHFN.js";
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  ModalContent
3
- } from "../../../chunk-ARWHCWG7.js";
3
+ } from "../../../chunk-XT4BQXSX.js";
4
4
  import "../../../chunk-5IFPG6TS.js";
5
+ import "../../../chunk-OZEKRO4L.js";
5
6
  import "../../../chunk-AJ5M6MVX.js";
6
- import "../../../chunk-UB3GEENN.js";
7
7
  import "../../../chunk-VXWSAIB5.js";
8
- import "../../../chunk-QJZ3XHNH.js";
8
+ import "../../../chunk-HCHKYUNQ.js";
9
9
  import "../../../chunk-5UH6QUFB.js";
10
10
  import "../../../chunk-MTGNBARV.js";
11
11
  import "../../../chunk-WMPWWFUJ.js";
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  RowDetailModalProvider
3
- } from "../../../chunk-XX5GVIPZ.js";
4
- import "../../../chunk-ARWHCWG7.js";
3
+ } from "../../../chunk-XVWCVBVF.js";
4
+ import "../../../chunk-XT4BQXSX.js";
5
5
  import "../../../chunk-5IFPG6TS.js";
6
+ import "../../../chunk-OZEKRO4L.js";
6
7
  import "../../../chunk-AJ5M6MVX.js";
7
- import "../../../chunk-UB3GEENN.js";
8
- import "../../../chunk-V7GPM6Z3.js";
8
+ import "../../../chunk-Z3Q7PLVD.js";
9
9
  import "../../../chunk-4RJKB7LC.js";
10
10
  import "../../../chunk-UUKHQUSF.js";
11
11
  import "../../../chunk-WVVEOCEH.js";
12
12
  import "../../../chunk-74HXF5GF.js";
13
13
  import "../../../chunk-AG43RS4Q.js";
14
- import "../../../chunk-YR4ZO2XL.js";
14
+ import "../../../chunk-K22B4L3G.js";
15
15
  import "../../../chunk-VXWSAIB5.js";
16
- import "../../../chunk-QJZ3XHNH.js";
16
+ import "../../../chunk-HCHKYUNQ.js";
17
17
  import "../../../chunk-5UH6QUFB.js";
18
18
  import "../../../chunk-MXSJF6TW.js";
19
19
  import "../../../chunk-BMAZBFUU.js";
@@ -1026,11 +1026,24 @@ function formatDate(date) {
1026
1026
 
1027
1027
  // src/utils/mergeObjectArrays.ts
1028
1028
  function mergeObjectArrays(arr1, arr2) {
1029
- const maxLength = Math.max(arr1.length, arr2.length);
1030
- return Array.from(
1031
- { length: maxLength },
1032
- (_, i) => __spreadValues(__spreadValues({}, arr1[i] || {}), arr2[i] || {})
1033
- );
1029
+ const arr2Map = /* @__PURE__ */ new Map();
1030
+ for (const item of arr2) {
1031
+ const id = item.id;
1032
+ if (id !== void 0) {
1033
+ arr2Map.set(id, item);
1034
+ }
1035
+ }
1036
+ return arr1.map((item1) => {
1037
+ const id = item1.id;
1038
+ if (id !== void 0 && arr2Map.has(id)) {
1039
+ const item2 = arr2Map.get(id);
1040
+ const meta1 = item1.meta;
1041
+ const meta2 = item2.meta;
1042
+ const mergedMeta = meta1 && meta2 && typeof meta1 === "object" && typeof meta2 === "object" ? __spreadValues(__spreadValues({}, meta1), meta2) : meta2 != null ? meta2 : meta1;
1043
+ return __spreadProps(__spreadValues(__spreadValues({}, item1), item2), { meta: mergedMeta });
1044
+ }
1045
+ return item1;
1046
+ });
1034
1047
  }
1035
1048
 
1036
1049
  // src/utils/index.ts
@@ -1066,52 +1079,58 @@ var getLocalStorageKeyWithPrefix = (key) => `${LocalStoragePrefix}__${key}`;
1066
1079
  function useTableLayout(initialColumns, key, autosync = true) {
1067
1080
  const [columns, setColumns] = (0, import_react5.useState)(initialColumns);
1068
1081
  const [isReady, setIsReady] = (0, import_react5.useState)(false);
1069
- const renderCountRef = (0, import_react5.useRef)(0);
1082
+ const isReadyRef = (0, import_react5.useRef)(false);
1083
+ const keyRef = (0, import_react5.useRef)(key);
1084
+ (0, import_react5.useEffect)(() => {
1085
+ isReadyRef.current = isReady;
1086
+ keyRef.current = key;
1087
+ }, [isReady, key]);
1070
1088
  const handleSaveLayout = (0, import_react5.useCallback)(
1071
1089
  (setter, _internal) => {
1072
- if (!isReady && !_internal || !key) return;
1090
+ if (!isReadyRef.current && !_internal || !keyRef.current) return;
1073
1091
  setColumns((prevColumns) => {
1074
1092
  const newColumns = typeof setter === "function" ? setter(prevColumns) : setter;
1075
- if (JSON.stringify(newColumns) === JSON.stringify(prevColumns) && !_internal)
1093
+ if (JSON.stringify(newColumns) === JSON.stringify(prevColumns) && !_internal) {
1076
1094
  return prevColumns;
1095
+ }
1077
1096
  localStorage.setItem(
1078
- getLocalStorageKeyWithPrefix(`${key}-tableLayout`),
1097
+ getLocalStorageKeyWithPrefix(`${keyRef.current}-tableLayout`),
1079
1098
  JSON.stringify(newColumns)
1080
1099
  );
1081
1100
  return newColumns;
1082
1101
  });
1083
1102
  },
1084
- [isReady, key]
1103
+ []
1085
1104
  );
1086
1105
  (0, import_react5.useEffect)(() => {
1087
1106
  if (!autosync) return;
1088
- if (!key) return setIsReady(true);
1089
- if (renderCountRef.current > 1) {
1090
- throw new Error(
1091
- `useTableLayout should only be called once per component render cycle.
1092
- ${renderCountRef.current} Renders detected.
1093
- Check dependency stability`
1094
- );
1107
+ if (!key) {
1108
+ setIsReady(true);
1109
+ return;
1095
1110
  }
1096
- renderCountRef.current += 1;
1097
1111
  const savedLayout = localStorage.getItem(
1098
1112
  getLocalStorageKeyWithPrefix(`${key}-tableLayout`)
1099
1113
  );
1100
1114
  if (savedLayout) {
1101
- handleSaveLayout(
1115
+ setColumns(
1102
1116
  mergeObjectArrays(
1103
1117
  initialColumns,
1104
1118
  JSON.parse(savedLayout)
1105
- ),
1106
- true
1119
+ )
1120
+ );
1121
+ } else {
1122
+ localStorage.setItem(
1123
+ getLocalStorageKeyWithPrefix(`${key}-tableLayout`),
1124
+ JSON.stringify(initialColumns)
1107
1125
  );
1126
+ setColumns((prev) => {
1127
+ if (JSON.stringify(initialColumns) === JSON.stringify(prev))
1128
+ return prev;
1129
+ return initialColumns;
1130
+ });
1108
1131
  }
1109
- if (!savedLayout) handleSaveLayout(initialColumns, true);
1110
1132
  setIsReady(true);
1111
- return () => {
1112
- renderCountRef.current = 0;
1113
- };
1114
- }, [handleSaveLayout, initialColumns, key, autosync]);
1133
+ }, [initialColumns, key, autosync]);
1115
1134
  const getSavedLayout = (0, import_react5.useCallback)(() => {
1116
1135
  const savedLayout = localStorage.getItem(
1117
1136
  getLocalStorageKeyWithPrefix(`${key}-tableLayout`)
@@ -1,21 +1,21 @@
1
1
  import {
2
2
  MobileDataGrid
3
- } from "../../chunk-SJ3SULQB.js";
4
- import "../../chunk-XX5GVIPZ.js";
3
+ } from "../../chunk-J2QD64F2.js";
4
+ import "../../chunk-XVWCVBVF.js";
5
5
  import "../../chunk-M7INAUAJ.js";
6
- import "../../chunk-ARWHCWG7.js";
7
- import "../../chunk-MQB6BSRX.js";
6
+ import "../../chunk-XT4BQXSX.js";
7
+ import "../../chunk-OXOMO76M.js";
8
8
  import "../../chunk-YCDDBSVU.js";
9
9
  import "../../chunk-3X3Y4TMS.js";
10
10
  import "../../chunk-BQNPOGD5.js";
11
11
  import "../../chunk-Y5GD2FJA.js";
12
12
  import "../../chunk-MBZ55T2D.js";
13
13
  import "../../chunk-2IKT6IHB.js";
14
- import "../../chunk-FIOXWZWU.js";
15
- import "../../chunk-LGX34HML.js";
14
+ import "../../chunk-ECYXZZWC.js";
15
+ import "../../chunk-Q4AANHJY.js";
16
16
  import "../../chunk-5IFPG6TS.js";
17
+ import "../../chunk-OZEKRO4L.js";
17
18
  import "../../chunk-AJ5M6MVX.js";
18
- import "../../chunk-UB3GEENN.js";
19
19
  import "../../chunk-AT4AWD6B.js";
20
20
  import "../../chunk-EWGHVZL5.js";
21
21
  import "../../chunk-UF5XGCSF.js";
@@ -24,7 +24,7 @@ import "../../chunk-L3BXRDLP.js";
24
24
  import "../../chunk-34VEVX5H.js";
25
25
  import "../../chunk-LB7UT6F3.js";
26
26
  import "../../chunk-AS57Y2D3.js";
27
- import "../../chunk-V7GPM6Z3.js";
27
+ import "../../chunk-Z3Q7PLVD.js";
28
28
  import "../../chunk-4RJKB7LC.js";
29
29
  import "../../chunk-UUKHQUSF.js";
30
30
  import "../../chunk-WVVEOCEH.js";
@@ -35,19 +35,19 @@ import "../../chunk-UAMI54FE.js";
35
35
  import "../../chunk-SJZNVG4N.js";
36
36
  import "../../chunk-75USUR3I.js";
37
37
  import "../../chunk-BWPNXY7T.js";
38
- import "../../chunk-RQMOWYB7.js";
39
- import "../../chunk-5JHKFK73.js";
40
- import "../../chunk-IATOG76G.js";
41
- import "../../chunk-PS7MBNUT.js";
38
+ import "../../chunk-VAARSN7U.js";
39
+ import "../../chunk-V2GSI3ZX.js";
40
+ import "../../chunk-NUFBAJ6L.js";
41
+ import "../../chunk-YXZRGZ2I.js";
42
42
  import "../../chunk-FHXCCVOG.js";
43
43
  import "../../chunk-7T5RGDCN.js";
44
44
  import "../../chunk-HXGJVYGQ.js";
45
45
  import "../../chunk-WVUIIBRR.js";
46
46
  import "../../chunk-M7WHWZ2J.js";
47
- import "../../chunk-3R3AY5MT.js";
48
- import "../../chunk-YR4ZO2XL.js";
47
+ import "../../chunk-LN3HVXH5.js";
48
+ import "../../chunk-K22B4L3G.js";
49
49
  import "../../chunk-VXWSAIB5.js";
50
- import "../../chunk-QJZ3XHNH.js";
50
+ import "../../chunk-HCHKYUNQ.js";
51
51
  import "../../chunk-5UH6QUFB.js";
52
52
  import "../../chunk-XJF4S3RB.js";
53
53
  import "../../chunk-ZCJWOHFN.js";
@@ -1,15 +1,15 @@
1
1
  "use client";
2
2
  import {
3
3
  Modal
4
- } from "../chunk-V7GPM6Z3.js";
4
+ } from "../chunk-Z3Q7PLVD.js";
5
5
  import "../chunk-4RJKB7LC.js";
6
6
  import "../chunk-UUKHQUSF.js";
7
7
  import "../chunk-WVVEOCEH.js";
8
8
  import "../chunk-74HXF5GF.js";
9
9
  import "../chunk-AG43RS4Q.js";
10
- import "../chunk-YR4ZO2XL.js";
10
+ import "../chunk-K22B4L3G.js";
11
11
  import "../chunk-VXWSAIB5.js";
12
- import "../chunk-QJZ3XHNH.js";
12
+ import "../chunk-HCHKYUNQ.js";
13
13
  import "../chunk-5UH6QUFB.js";
14
14
  import "../chunk-MXSJF6TW.js";
15
15
  import "../chunk-BMAZBFUU.js";
@@ -1,15 +1,15 @@
1
1
  "use client";
2
2
  import {
3
3
  MenuOption
4
- } from "../chunk-PS7MBNUT.js";
4
+ } from "../chunk-YXZRGZ2I.js";
5
5
  import {
6
6
  Label
7
7
  } from "../chunk-HXGJVYGQ.js";
8
8
  import {
9
9
  useKeydown
10
- } from "../chunk-YR4ZO2XL.js";
10
+ } from "../chunk-K22B4L3G.js";
11
11
  import "../chunk-VXWSAIB5.js";
12
- import "../chunk-QJZ3XHNH.js";
12
+ import "../chunk-HCHKYUNQ.js";
13
13
  import "../chunk-5UH6QUFB.js";
14
14
  import "../chunk-PS6UJZVH.js";
15
15
  import {
@@ -12,15 +12,15 @@ import "../../chunk-VJVY6NPF.js";
12
12
  import "../../chunk-AS57Y2D3.js";
13
13
  import {
14
14
  Modal
15
- } from "../../chunk-V7GPM6Z3.js";
15
+ } from "../../chunk-Z3Q7PLVD.js";
16
16
  import "../../chunk-4RJKB7LC.js";
17
17
  import "../../chunk-UUKHQUSF.js";
18
18
  import "../../chunk-WVVEOCEH.js";
19
19
  import "../../chunk-74HXF5GF.js";
20
20
  import "../../chunk-AG43RS4Q.js";
21
- import "../../chunk-YR4ZO2XL.js";
21
+ import "../../chunk-K22B4L3G.js";
22
22
  import "../../chunk-VXWSAIB5.js";
23
- import "../../chunk-QJZ3XHNH.js";
23
+ import "../../chunk-HCHKYUNQ.js";
24
24
  import "../../chunk-5UH6QUFB.js";
25
25
  import "../../chunk-MXSJF6TW.js";
26
26
  import "../../chunk-BMAZBFUU.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  ProductImagePreview
3
- } from "../../chunk-MQB6BSRX.js";
3
+ } from "../../chunk-OXOMO76M.js";
4
4
  import "../../chunk-YCDDBSVU.js";
5
5
  import "../../chunk-3X3Y4TMS.js";
6
6
  import "../../chunk-BQNPOGD5.js";
@@ -9,9 +9,9 @@ import "../../chunk-2IKT6IHB.js";
9
9
  import "../../chunk-AT4AWD6B.js";
10
10
  import "../../chunk-QVWYTQKL.js";
11
11
  import "../../chunk-BWPNXY7T.js";
12
- import "../../chunk-YR4ZO2XL.js";
12
+ import "../../chunk-K22B4L3G.js";
13
13
  import "../../chunk-VXWSAIB5.js";
14
- import "../../chunk-QJZ3XHNH.js";
14
+ import "../../chunk-HCHKYUNQ.js";
15
15
  import "../../chunk-5UH6QUFB.js";
16
16
  import "../../chunk-MTGNBARV.js";
17
17
  import "../../chunk-7KWFEH56.js";
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  useMatchesMobile
3
- } from "../chunk-YR4ZO2XL.js";
3
+ } from "../chunk-K22B4L3G.js";
4
4
  import "../chunk-VXWSAIB5.js";
5
- import "../chunk-QJZ3XHNH.js";
5
+ import "../chunk-HCHKYUNQ.js";
6
6
  import "../chunk-5UH6QUFB.js";
7
7
  import {
8
8
  containerPaddingX,
@@ -5,7 +5,7 @@ import "../chunk-HXGJVYGQ.js";
5
5
  import {
6
6
  findDocumentRoot
7
7
  } from "../chunk-VXWSAIB5.js";
8
- import "../chunk-QJZ3XHNH.js";
8
+ import "../chunk-HCHKYUNQ.js";
9
9
  import "../chunk-5UH6QUFB.js";
10
10
  import {
11
11
  Stack