@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.
- package/dist/{chunk-FIOXWZWU.js → chunk-ECYXZZWC.js} +1 -1
- package/dist/{chunk-QJZ3XHNH.js → chunk-HCHKYUNQ.js} +19 -5
- package/dist/{chunk-SJ3SULQB.js → chunk-J2QD64F2.js} +7 -7
- package/dist/{chunk-YR4ZO2XL.js → chunk-K22B4L3G.js} +28 -22
- package/dist/{chunk-3R3AY5MT.js → chunk-LN3HVXH5.js} +1 -1
- package/dist/{chunk-IATOG76G.js → chunk-NUFBAJ6L.js} +1 -1
- package/dist/{chunk-MQB6BSRX.js → chunk-OXOMO76M.js} +1 -1
- package/dist/{chunk-UB3GEENN.js → chunk-OZEKRO4L.js} +1 -1
- package/dist/{chunk-LGX34HML.js → chunk-Q4AANHJY.js} +1 -1
- package/dist/{chunk-5JHKFK73.js → chunk-V2GSI3ZX.js} +2 -2
- package/dist/{chunk-RQMOWYB7.js → chunk-VAARSN7U.js} +3 -3
- package/dist/{chunk-ARWHCWG7.js → chunk-XT4BQXSX.js} +1 -1
- package/dist/{chunk-XX5GVIPZ.js → chunk-XVWCVBVF.js} +2 -2
- package/dist/{chunk-PS7MBNUT.js → chunk-YXZRGZ2I.js} +1 -1
- package/dist/{chunk-V7GPM6Z3.js → chunk-Z3Q7PLVD.js} +1 -1
- package/dist/components/CalendarRange.cjs +45 -26
- package/dist/components/CalendarRange.js +15 -15
- package/dist/components/CompactImagesPreview.js +3 -3
- package/dist/components/DataGrid/ColumnSelectorHeaderCell/ColumnSelectorMenuOption.cjs +45 -26
- package/dist/components/DataGrid/ColumnSelectorHeaderCell/ColumnSelectorMenuOption.js +15 -15
- package/dist/components/DataGrid/ColumnSelectorHeaderCell/index.cjs +45 -26
- package/dist/components/DataGrid/ColumnSelectorHeaderCell/index.js +15 -15
- package/dist/components/DataGrid/PinnedColumns.cjs +45 -26
- package/dist/components/DataGrid/PinnedColumns.js +15 -15
- package/dist/components/DataGrid/TableBody/LoadingCell.cjs +45 -26
- package/dist/components/DataGrid/TableBody/LoadingCell.js +15 -15
- package/dist/components/DataGrid/TableBody/TableBodyRow.cjs +45 -26
- package/dist/components/DataGrid/TableBody/TableBodyRow.js +15 -15
- package/dist/components/DataGrid/TableBody/index.cjs +45 -26
- package/dist/components/DataGrid/TableBody/index.js +15 -15
- package/dist/components/DataGrid/index.cjs +45 -26
- package/dist/components/DataGrid/index.js +15 -15
- package/dist/components/DataGrid/utils.cjs +45 -26
- package/dist/components/DataGrid/utils.js +15 -15
- package/dist/components/DataGridCell.js +6 -6
- package/dist/components/DateInput.cjs +45 -26
- package/dist/components/DateInput.js +15 -15
- package/dist/components/DateRangeInput.cjs +45 -26
- package/dist/components/DateRangeInput.js +15 -15
- package/dist/components/Menu.js +4 -4
- package/dist/components/MenuOption.js +3 -3
- package/dist/components/MobileDataGrid/ColumnList.js +4 -4
- package/dist/components/MobileDataGrid/ColumnSelector/index.cjs +45 -26
- package/dist/components/MobileDataGrid/ColumnSelector/index.js +15 -15
- package/dist/components/MobileDataGrid/MobileDataGridCard/MobileDataGridColumn.js +2 -2
- package/dist/components/MobileDataGrid/MobileDataGridCard/index.js +3 -3
- package/dist/components/MobileDataGrid/MobileDataGridHeader.cjs +45 -26
- package/dist/components/MobileDataGrid/MobileDataGridHeader.js +15 -15
- package/dist/components/MobileDataGrid/RowDetailModalProvider/ModalContent.js +3 -3
- package/dist/components/MobileDataGrid/RowDetailModalProvider/index.js +6 -6
- package/dist/components/MobileDataGrid/index.cjs +45 -26
- package/dist/components/MobileDataGrid/index.js +15 -15
- package/dist/components/Modal.js +3 -3
- package/dist/components/NestedMenu.js +3 -3
- package/dist/components/PDFViewer/index.js +3 -3
- package/dist/components/ProductImagePreview/index.js +3 -3
- package/dist/components/ProjectBar.js +2 -2
- package/dist/components/Time.js +1 -1
- package/dist/components/index.cjs +45 -26
- package/dist/components/index.js +15 -15
- package/dist/components/useMenuSystem.js +3 -3
- package/dist/hooks/index.cjs +48 -26
- package/dist/hooks/index.js +2 -2
- package/dist/utils/index.cjs +21 -5
- package/dist/utils/index.js +1 -1
- package/package.json +1 -1
|
@@ -597,11 +597,24 @@ function formatDate(date) {
|
|
|
597
597
|
|
|
598
598
|
// src/utils/mergeObjectArrays.ts
|
|
599
599
|
function mergeObjectArrays(arr1, arr2) {
|
|
600
|
-
const
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
600
|
+
const arr2Map = /* @__PURE__ */ new Map();
|
|
601
|
+
for (const item of arr2) {
|
|
602
|
+
const id = item.id;
|
|
603
|
+
if (id !== void 0) {
|
|
604
|
+
arr2Map.set(id, item);
|
|
605
|
+
}
|
|
606
|
+
}
|
|
607
|
+
return arr1.map((item1) => {
|
|
608
|
+
const id = item1.id;
|
|
609
|
+
if (id !== void 0 && arr2Map.has(id)) {
|
|
610
|
+
const item2 = arr2Map.get(id);
|
|
611
|
+
const meta1 = item1.meta;
|
|
612
|
+
const meta2 = item2.meta;
|
|
613
|
+
const mergedMeta = meta1 && meta2 && typeof meta1 === "object" && typeof meta2 === "object" ? __spreadValues(__spreadValues({}, meta1), meta2) : meta2 != null ? meta2 : meta1;
|
|
614
|
+
return __spreadProps(__spreadValues(__spreadValues({}, item1), item2), { meta: mergedMeta });
|
|
615
|
+
}
|
|
616
|
+
return item1;
|
|
617
|
+
});
|
|
605
618
|
}
|
|
606
619
|
|
|
607
620
|
// src/utils/index.ts
|
|
@@ -637,52 +650,58 @@ var getLocalStorageKeyWithPrefix = (key) => `${LocalStoragePrefix}__${key}`;
|
|
|
637
650
|
function useTableLayout(initialColumns, key, autosync = true) {
|
|
638
651
|
const [columns, setColumns] = (0, import_react5.useState)(initialColumns);
|
|
639
652
|
const [isReady, setIsReady] = (0, import_react5.useState)(false);
|
|
640
|
-
const
|
|
653
|
+
const isReadyRef = (0, import_react5.useRef)(false);
|
|
654
|
+
const keyRef = (0, import_react5.useRef)(key);
|
|
655
|
+
(0, import_react5.useEffect)(() => {
|
|
656
|
+
isReadyRef.current = isReady;
|
|
657
|
+
keyRef.current = key;
|
|
658
|
+
}, [isReady, key]);
|
|
641
659
|
const handleSaveLayout = (0, import_react5.useCallback)(
|
|
642
660
|
(setter, _internal) => {
|
|
643
|
-
if (!
|
|
661
|
+
if (!isReadyRef.current && !_internal || !keyRef.current) return;
|
|
644
662
|
setColumns((prevColumns) => {
|
|
645
663
|
const newColumns = typeof setter === "function" ? setter(prevColumns) : setter;
|
|
646
|
-
if (JSON.stringify(newColumns) === JSON.stringify(prevColumns) && !_internal)
|
|
664
|
+
if (JSON.stringify(newColumns) === JSON.stringify(prevColumns) && !_internal) {
|
|
647
665
|
return prevColumns;
|
|
666
|
+
}
|
|
648
667
|
localStorage.setItem(
|
|
649
|
-
getLocalStorageKeyWithPrefix(`${
|
|
668
|
+
getLocalStorageKeyWithPrefix(`${keyRef.current}-tableLayout`),
|
|
650
669
|
JSON.stringify(newColumns)
|
|
651
670
|
);
|
|
652
671
|
return newColumns;
|
|
653
672
|
});
|
|
654
673
|
},
|
|
655
|
-
[
|
|
674
|
+
[]
|
|
656
675
|
);
|
|
657
676
|
(0, import_react5.useEffect)(() => {
|
|
658
677
|
if (!autosync) return;
|
|
659
|
-
if (!key)
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
`useTableLayout should only be called once per component render cycle.
|
|
663
|
-
${renderCountRef.current} Renders detected.
|
|
664
|
-
Check dependency stability`
|
|
665
|
-
);
|
|
678
|
+
if (!key) {
|
|
679
|
+
setIsReady(true);
|
|
680
|
+
return;
|
|
666
681
|
}
|
|
667
|
-
renderCountRef.current += 1;
|
|
668
682
|
const savedLayout = localStorage.getItem(
|
|
669
683
|
getLocalStorageKeyWithPrefix(`${key}-tableLayout`)
|
|
670
684
|
);
|
|
671
685
|
if (savedLayout) {
|
|
672
|
-
|
|
686
|
+
setColumns(
|
|
673
687
|
mergeObjectArrays(
|
|
674
688
|
initialColumns,
|
|
675
689
|
JSON.parse(savedLayout)
|
|
676
|
-
)
|
|
677
|
-
|
|
690
|
+
)
|
|
691
|
+
);
|
|
692
|
+
} else {
|
|
693
|
+
localStorage.setItem(
|
|
694
|
+
getLocalStorageKeyWithPrefix(`${key}-tableLayout`),
|
|
695
|
+
JSON.stringify(initialColumns)
|
|
678
696
|
);
|
|
697
|
+
setColumns((prev) => {
|
|
698
|
+
if (JSON.stringify(initialColumns) === JSON.stringify(prev))
|
|
699
|
+
return prev;
|
|
700
|
+
return initialColumns;
|
|
701
|
+
});
|
|
679
702
|
}
|
|
680
|
-
if (!savedLayout) handleSaveLayout(initialColumns, true);
|
|
681
703
|
setIsReady(true);
|
|
682
|
-
|
|
683
|
-
renderCountRef.current = 0;
|
|
684
|
-
};
|
|
685
|
-
}, [handleSaveLayout, initialColumns, key, autosync]);
|
|
704
|
+
}, [initialColumns, key, autosync]);
|
|
686
705
|
const getSavedLayout = (0, import_react5.useCallback)(() => {
|
|
687
706
|
const savedLayout = localStorage.getItem(
|
|
688
707
|
getLocalStorageKeyWithPrefix(`${key}-tableLayout`)
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import {
|
|
2
2
|
TableBodyRow
|
|
3
|
-
} from "../../../chunk-
|
|
4
|
-
import "../../../chunk-
|
|
3
|
+
} from "../../../chunk-J2QD64F2.js";
|
|
4
|
+
import "../../../chunk-XVWCVBVF.js";
|
|
5
5
|
import "../../../chunk-M7INAUAJ.js";
|
|
6
|
-
import "../../../chunk-
|
|
7
|
-
import "../../../chunk-
|
|
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-
|
|
15
|
-
import "../../../chunk-
|
|
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-
|
|
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-
|
|
39
|
-
import "../../../chunk-
|
|
40
|
-
import "../../../chunk-
|
|
41
|
-
import "../../../chunk-
|
|
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-
|
|
48
|
-
import "../../../chunk-
|
|
47
|
+
import "../../../chunk-LN3HVXH5.js";
|
|
48
|
+
import "../../../chunk-K22B4L3G.js";
|
|
49
49
|
import "../../../chunk-VXWSAIB5.js";
|
|
50
|
-
import "../../../chunk-
|
|
50
|
+
import "../../../chunk-HCHKYUNQ.js";
|
|
51
51
|
import "../../../chunk-5UH6QUFB.js";
|
|
52
52
|
import "../../../chunk-XJF4S3RB.js";
|
|
53
53
|
import "../../../chunk-ZCJWOHFN.js";
|
|
@@ -595,11 +595,24 @@ function formatDate(date) {
|
|
|
595
595
|
|
|
596
596
|
// src/utils/mergeObjectArrays.ts
|
|
597
597
|
function mergeObjectArrays(arr1, arr2) {
|
|
598
|
-
const
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
598
|
+
const arr2Map = /* @__PURE__ */ new Map();
|
|
599
|
+
for (const item of arr2) {
|
|
600
|
+
const id = item.id;
|
|
601
|
+
if (id !== void 0) {
|
|
602
|
+
arr2Map.set(id, item);
|
|
603
|
+
}
|
|
604
|
+
}
|
|
605
|
+
return arr1.map((item1) => {
|
|
606
|
+
const id = item1.id;
|
|
607
|
+
if (id !== void 0 && arr2Map.has(id)) {
|
|
608
|
+
const item2 = arr2Map.get(id);
|
|
609
|
+
const meta1 = item1.meta;
|
|
610
|
+
const meta2 = item2.meta;
|
|
611
|
+
const mergedMeta = meta1 && meta2 && typeof meta1 === "object" && typeof meta2 === "object" ? __spreadValues(__spreadValues({}, meta1), meta2) : meta2 != null ? meta2 : meta1;
|
|
612
|
+
return __spreadProps(__spreadValues(__spreadValues({}, item1), item2), { meta: mergedMeta });
|
|
613
|
+
}
|
|
614
|
+
return item1;
|
|
615
|
+
});
|
|
603
616
|
}
|
|
604
617
|
|
|
605
618
|
// src/utils/index.ts
|
|
@@ -635,52 +648,58 @@ var getLocalStorageKeyWithPrefix = (key) => `${LocalStoragePrefix}__${key}`;
|
|
|
635
648
|
function useTableLayout(initialColumns, key, autosync = true) {
|
|
636
649
|
const [columns, setColumns] = (0, import_react5.useState)(initialColumns);
|
|
637
650
|
const [isReady, setIsReady] = (0, import_react5.useState)(false);
|
|
638
|
-
const
|
|
651
|
+
const isReadyRef = (0, import_react5.useRef)(false);
|
|
652
|
+
const keyRef = (0, import_react5.useRef)(key);
|
|
653
|
+
(0, import_react5.useEffect)(() => {
|
|
654
|
+
isReadyRef.current = isReady;
|
|
655
|
+
keyRef.current = key;
|
|
656
|
+
}, [isReady, key]);
|
|
639
657
|
const handleSaveLayout = (0, import_react5.useCallback)(
|
|
640
658
|
(setter, _internal) => {
|
|
641
|
-
if (!
|
|
659
|
+
if (!isReadyRef.current && !_internal || !keyRef.current) return;
|
|
642
660
|
setColumns((prevColumns) => {
|
|
643
661
|
const newColumns = typeof setter === "function" ? setter(prevColumns) : setter;
|
|
644
|
-
if (JSON.stringify(newColumns) === JSON.stringify(prevColumns) && !_internal)
|
|
662
|
+
if (JSON.stringify(newColumns) === JSON.stringify(prevColumns) && !_internal) {
|
|
645
663
|
return prevColumns;
|
|
664
|
+
}
|
|
646
665
|
localStorage.setItem(
|
|
647
|
-
getLocalStorageKeyWithPrefix(`${
|
|
666
|
+
getLocalStorageKeyWithPrefix(`${keyRef.current}-tableLayout`),
|
|
648
667
|
JSON.stringify(newColumns)
|
|
649
668
|
);
|
|
650
669
|
return newColumns;
|
|
651
670
|
});
|
|
652
671
|
},
|
|
653
|
-
[
|
|
672
|
+
[]
|
|
654
673
|
);
|
|
655
674
|
(0, import_react5.useEffect)(() => {
|
|
656
675
|
if (!autosync) return;
|
|
657
|
-
if (!key)
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
`useTableLayout should only be called once per component render cycle.
|
|
661
|
-
${renderCountRef.current} Renders detected.
|
|
662
|
-
Check dependency stability`
|
|
663
|
-
);
|
|
676
|
+
if (!key) {
|
|
677
|
+
setIsReady(true);
|
|
678
|
+
return;
|
|
664
679
|
}
|
|
665
|
-
renderCountRef.current += 1;
|
|
666
680
|
const savedLayout = localStorage.getItem(
|
|
667
681
|
getLocalStorageKeyWithPrefix(`${key}-tableLayout`)
|
|
668
682
|
);
|
|
669
683
|
if (savedLayout) {
|
|
670
|
-
|
|
684
|
+
setColumns(
|
|
671
685
|
mergeObjectArrays(
|
|
672
686
|
initialColumns,
|
|
673
687
|
JSON.parse(savedLayout)
|
|
674
|
-
)
|
|
675
|
-
|
|
688
|
+
)
|
|
689
|
+
);
|
|
690
|
+
} else {
|
|
691
|
+
localStorage.setItem(
|
|
692
|
+
getLocalStorageKeyWithPrefix(`${key}-tableLayout`),
|
|
693
|
+
JSON.stringify(initialColumns)
|
|
676
694
|
);
|
|
695
|
+
setColumns((prev) => {
|
|
696
|
+
if (JSON.stringify(initialColumns) === JSON.stringify(prev))
|
|
697
|
+
return prev;
|
|
698
|
+
return initialColumns;
|
|
699
|
+
});
|
|
677
700
|
}
|
|
678
|
-
if (!savedLayout) handleSaveLayout(initialColumns, true);
|
|
679
701
|
setIsReady(true);
|
|
680
|
-
|
|
681
|
-
renderCountRef.current = 0;
|
|
682
|
-
};
|
|
683
|
-
}, [handleSaveLayout, initialColumns, key, autosync]);
|
|
702
|
+
}, [initialColumns, key, autosync]);
|
|
684
703
|
const getSavedLayout = (0, import_react5.useCallback)(() => {
|
|
685
704
|
const savedLayout = localStorage.getItem(
|
|
686
705
|
getLocalStorageKeyWithPrefix(`${key}-tableLayout`)
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import {
|
|
2
2
|
TableBody
|
|
3
|
-
} from "../../../chunk-
|
|
4
|
-
import "../../../chunk-
|
|
3
|
+
} from "../../../chunk-J2QD64F2.js";
|
|
4
|
+
import "../../../chunk-XVWCVBVF.js";
|
|
5
5
|
import "../../../chunk-M7INAUAJ.js";
|
|
6
|
-
import "../../../chunk-
|
|
7
|
-
import "../../../chunk-
|
|
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-
|
|
15
|
-
import "../../../chunk-
|
|
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-
|
|
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-
|
|
39
|
-
import "../../../chunk-
|
|
40
|
-
import "../../../chunk-
|
|
41
|
-
import "../../../chunk-
|
|
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-
|
|
48
|
-
import "../../../chunk-
|
|
47
|
+
import "../../../chunk-LN3HVXH5.js";
|
|
48
|
+
import "../../../chunk-K22B4L3G.js";
|
|
49
49
|
import "../../../chunk-VXWSAIB5.js";
|
|
50
|
-
import "../../../chunk-
|
|
50
|
+
import "../../../chunk-HCHKYUNQ.js";
|
|
51
51
|
import "../../../chunk-5UH6QUFB.js";
|
|
52
52
|
import "../../../chunk-XJF4S3RB.js";
|
|
53
53
|
import "../../../chunk-ZCJWOHFN.js";
|
|
@@ -265,11 +265,24 @@ function formatDate(date) {
|
|
|
265
265
|
|
|
266
266
|
// src/utils/mergeObjectArrays.ts
|
|
267
267
|
function mergeObjectArrays(arr1, arr2) {
|
|
268
|
-
const
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
268
|
+
const arr2Map = /* @__PURE__ */ new Map();
|
|
269
|
+
for (const item of arr2) {
|
|
270
|
+
const id = item.id;
|
|
271
|
+
if (id !== void 0) {
|
|
272
|
+
arr2Map.set(id, item);
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
return arr1.map((item1) => {
|
|
276
|
+
const id = item1.id;
|
|
277
|
+
if (id !== void 0 && arr2Map.has(id)) {
|
|
278
|
+
const item2 = arr2Map.get(id);
|
|
279
|
+
const meta1 = item1.meta;
|
|
280
|
+
const meta2 = item2.meta;
|
|
281
|
+
const mergedMeta = meta1 && meta2 && typeof meta1 === "object" && typeof meta2 === "object" ? __spreadValues(__spreadValues({}, meta1), meta2) : meta2 != null ? meta2 : meta1;
|
|
282
|
+
return __spreadProps(__spreadValues(__spreadValues({}, item1), item2), { meta: mergedMeta });
|
|
283
|
+
}
|
|
284
|
+
return item1;
|
|
285
|
+
});
|
|
273
286
|
}
|
|
274
287
|
|
|
275
288
|
// src/utils/index.ts
|
|
@@ -305,52 +318,58 @@ var getLocalStorageKeyWithPrefix = (key) => `${LocalStoragePrefix}__${key}`;
|
|
|
305
318
|
function useTableLayout(initialColumns, key, autosync = true) {
|
|
306
319
|
const [columns, setColumns] = (0, import_react4.useState)(initialColumns);
|
|
307
320
|
const [isReady, setIsReady] = (0, import_react4.useState)(false);
|
|
308
|
-
const
|
|
321
|
+
const isReadyRef = (0, import_react4.useRef)(false);
|
|
322
|
+
const keyRef = (0, import_react4.useRef)(key);
|
|
323
|
+
(0, import_react4.useEffect)(() => {
|
|
324
|
+
isReadyRef.current = isReady;
|
|
325
|
+
keyRef.current = key;
|
|
326
|
+
}, [isReady, key]);
|
|
309
327
|
const handleSaveLayout = (0, import_react4.useCallback)(
|
|
310
328
|
(setter, _internal) => {
|
|
311
|
-
if (!
|
|
329
|
+
if (!isReadyRef.current && !_internal || !keyRef.current) return;
|
|
312
330
|
setColumns((prevColumns) => {
|
|
313
331
|
const newColumns = typeof setter === "function" ? setter(prevColumns) : setter;
|
|
314
|
-
if (JSON.stringify(newColumns) === JSON.stringify(prevColumns) && !_internal)
|
|
332
|
+
if (JSON.stringify(newColumns) === JSON.stringify(prevColumns) && !_internal) {
|
|
315
333
|
return prevColumns;
|
|
334
|
+
}
|
|
316
335
|
localStorage.setItem(
|
|
317
|
-
getLocalStorageKeyWithPrefix(`${
|
|
336
|
+
getLocalStorageKeyWithPrefix(`${keyRef.current}-tableLayout`),
|
|
318
337
|
JSON.stringify(newColumns)
|
|
319
338
|
);
|
|
320
339
|
return newColumns;
|
|
321
340
|
});
|
|
322
341
|
},
|
|
323
|
-
[
|
|
342
|
+
[]
|
|
324
343
|
);
|
|
325
344
|
(0, import_react4.useEffect)(() => {
|
|
326
345
|
if (!autosync) return;
|
|
327
|
-
if (!key)
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
`useTableLayout should only be called once per component render cycle.
|
|
331
|
-
${renderCountRef.current} Renders detected.
|
|
332
|
-
Check dependency stability`
|
|
333
|
-
);
|
|
346
|
+
if (!key) {
|
|
347
|
+
setIsReady(true);
|
|
348
|
+
return;
|
|
334
349
|
}
|
|
335
|
-
renderCountRef.current += 1;
|
|
336
350
|
const savedLayout = localStorage.getItem(
|
|
337
351
|
getLocalStorageKeyWithPrefix(`${key}-tableLayout`)
|
|
338
352
|
);
|
|
339
353
|
if (savedLayout) {
|
|
340
|
-
|
|
354
|
+
setColumns(
|
|
341
355
|
mergeObjectArrays(
|
|
342
356
|
initialColumns,
|
|
343
357
|
JSON.parse(savedLayout)
|
|
344
|
-
)
|
|
345
|
-
|
|
358
|
+
)
|
|
359
|
+
);
|
|
360
|
+
} else {
|
|
361
|
+
localStorage.setItem(
|
|
362
|
+
getLocalStorageKeyWithPrefix(`${key}-tableLayout`),
|
|
363
|
+
JSON.stringify(initialColumns)
|
|
346
364
|
);
|
|
365
|
+
setColumns((prev) => {
|
|
366
|
+
if (JSON.stringify(initialColumns) === JSON.stringify(prev))
|
|
367
|
+
return prev;
|
|
368
|
+
return initialColumns;
|
|
369
|
+
});
|
|
347
370
|
}
|
|
348
|
-
if (!savedLayout) handleSaveLayout(initialColumns, true);
|
|
349
371
|
setIsReady(true);
|
|
350
|
-
|
|
351
|
-
renderCountRef.current = 0;
|
|
352
|
-
};
|
|
353
|
-
}, [handleSaveLayout, initialColumns, key, autosync]);
|
|
372
|
+
}, [initialColumns, key, autosync]);
|
|
354
373
|
const getSavedLayout = (0, import_react4.useCallback)(() => {
|
|
355
374
|
const savedLayout = localStorage.getItem(
|
|
356
375
|
getLocalStorageKeyWithPrefix(`${key}-tableLayout`)
|
|
@@ -2,22 +2,22 @@
|
|
|
2
2
|
import {
|
|
3
3
|
DataGrid,
|
|
4
4
|
DataGrid_default
|
|
5
|
-
} from "../../chunk-
|
|
6
|
-
import "../../chunk-
|
|
5
|
+
} from "../../chunk-J2QD64F2.js";
|
|
6
|
+
import "../../chunk-XVWCVBVF.js";
|
|
7
7
|
import "../../chunk-M7INAUAJ.js";
|
|
8
|
-
import "../../chunk-
|
|
9
|
-
import "../../chunk-
|
|
8
|
+
import "../../chunk-XT4BQXSX.js";
|
|
9
|
+
import "../../chunk-OXOMO76M.js";
|
|
10
10
|
import "../../chunk-YCDDBSVU.js";
|
|
11
11
|
import "../../chunk-3X3Y4TMS.js";
|
|
12
12
|
import "../../chunk-BQNPOGD5.js";
|
|
13
13
|
import "../../chunk-Y5GD2FJA.js";
|
|
14
14
|
import "../../chunk-MBZ55T2D.js";
|
|
15
15
|
import "../../chunk-2IKT6IHB.js";
|
|
16
|
-
import "../../chunk-
|
|
17
|
-
import "../../chunk-
|
|
16
|
+
import "../../chunk-ECYXZZWC.js";
|
|
17
|
+
import "../../chunk-Q4AANHJY.js";
|
|
18
18
|
import "../../chunk-5IFPG6TS.js";
|
|
19
|
+
import "../../chunk-OZEKRO4L.js";
|
|
19
20
|
import "../../chunk-AJ5M6MVX.js";
|
|
20
|
-
import "../../chunk-UB3GEENN.js";
|
|
21
21
|
import "../../chunk-AT4AWD6B.js";
|
|
22
22
|
import "../../chunk-EWGHVZL5.js";
|
|
23
23
|
import "../../chunk-UF5XGCSF.js";
|
|
@@ -26,7 +26,7 @@ import "../../chunk-L3BXRDLP.js";
|
|
|
26
26
|
import "../../chunk-34VEVX5H.js";
|
|
27
27
|
import "../../chunk-LB7UT6F3.js";
|
|
28
28
|
import "../../chunk-AS57Y2D3.js";
|
|
29
|
-
import "../../chunk-
|
|
29
|
+
import "../../chunk-Z3Q7PLVD.js";
|
|
30
30
|
import "../../chunk-4RJKB7LC.js";
|
|
31
31
|
import "../../chunk-UUKHQUSF.js";
|
|
32
32
|
import "../../chunk-WVVEOCEH.js";
|
|
@@ -37,19 +37,19 @@ import "../../chunk-UAMI54FE.js";
|
|
|
37
37
|
import "../../chunk-SJZNVG4N.js";
|
|
38
38
|
import "../../chunk-75USUR3I.js";
|
|
39
39
|
import "../../chunk-BWPNXY7T.js";
|
|
40
|
-
import "../../chunk-
|
|
41
|
-
import "../../chunk-
|
|
42
|
-
import "../../chunk-
|
|
43
|
-
import "../../chunk-
|
|
40
|
+
import "../../chunk-VAARSN7U.js";
|
|
41
|
+
import "../../chunk-V2GSI3ZX.js";
|
|
42
|
+
import "../../chunk-NUFBAJ6L.js";
|
|
43
|
+
import "../../chunk-YXZRGZ2I.js";
|
|
44
44
|
import "../../chunk-FHXCCVOG.js";
|
|
45
45
|
import "../../chunk-7T5RGDCN.js";
|
|
46
46
|
import "../../chunk-HXGJVYGQ.js";
|
|
47
47
|
import "../../chunk-WVUIIBRR.js";
|
|
48
48
|
import "../../chunk-M7WHWZ2J.js";
|
|
49
|
-
import "../../chunk-
|
|
50
|
-
import "../../chunk-
|
|
49
|
+
import "../../chunk-LN3HVXH5.js";
|
|
50
|
+
import "../../chunk-K22B4L3G.js";
|
|
51
51
|
import "../../chunk-VXWSAIB5.js";
|
|
52
|
-
import "../../chunk-
|
|
52
|
+
import "../../chunk-HCHKYUNQ.js";
|
|
53
53
|
import "../../chunk-5UH6QUFB.js";
|
|
54
54
|
import "../../chunk-XJF4S3RB.js";
|
|
55
55
|
import "../../chunk-ZCJWOHFN.js";
|
|
@@ -595,11 +595,24 @@ function formatDate(date) {
|
|
|
595
595
|
|
|
596
596
|
// src/utils/mergeObjectArrays.ts
|
|
597
597
|
function mergeObjectArrays(arr1, arr2) {
|
|
598
|
-
const
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
598
|
+
const arr2Map = /* @__PURE__ */ new Map();
|
|
599
|
+
for (const item of arr2) {
|
|
600
|
+
const id = item.id;
|
|
601
|
+
if (id !== void 0) {
|
|
602
|
+
arr2Map.set(id, item);
|
|
603
|
+
}
|
|
604
|
+
}
|
|
605
|
+
return arr1.map((item1) => {
|
|
606
|
+
const id = item1.id;
|
|
607
|
+
if (id !== void 0 && arr2Map.has(id)) {
|
|
608
|
+
const item2 = arr2Map.get(id);
|
|
609
|
+
const meta1 = item1.meta;
|
|
610
|
+
const meta2 = item2.meta;
|
|
611
|
+
const mergedMeta = meta1 && meta2 && typeof meta1 === "object" && typeof meta2 === "object" ? __spreadValues(__spreadValues({}, meta1), meta2) : meta2 != null ? meta2 : meta1;
|
|
612
|
+
return __spreadProps(__spreadValues(__spreadValues({}, item1), item2), { meta: mergedMeta });
|
|
613
|
+
}
|
|
614
|
+
return item1;
|
|
615
|
+
});
|
|
603
616
|
}
|
|
604
617
|
|
|
605
618
|
// src/utils/index.ts
|
|
@@ -635,52 +648,58 @@ var getLocalStorageKeyWithPrefix = (key) => `${LocalStoragePrefix}__${key}`;
|
|
|
635
648
|
function useTableLayout(initialColumns, key, autosync = true) {
|
|
636
649
|
const [columns, setColumns] = (0, import_react5.useState)(initialColumns);
|
|
637
650
|
const [isReady, setIsReady] = (0, import_react5.useState)(false);
|
|
638
|
-
const
|
|
651
|
+
const isReadyRef = (0, import_react5.useRef)(false);
|
|
652
|
+
const keyRef = (0, import_react5.useRef)(key);
|
|
653
|
+
(0, import_react5.useEffect)(() => {
|
|
654
|
+
isReadyRef.current = isReady;
|
|
655
|
+
keyRef.current = key;
|
|
656
|
+
}, [isReady, key]);
|
|
639
657
|
const handleSaveLayout = (0, import_react5.useCallback)(
|
|
640
658
|
(setter, _internal) => {
|
|
641
|
-
if (!
|
|
659
|
+
if (!isReadyRef.current && !_internal || !keyRef.current) return;
|
|
642
660
|
setColumns((prevColumns) => {
|
|
643
661
|
const newColumns = typeof setter === "function" ? setter(prevColumns) : setter;
|
|
644
|
-
if (JSON.stringify(newColumns) === JSON.stringify(prevColumns) && !_internal)
|
|
662
|
+
if (JSON.stringify(newColumns) === JSON.stringify(prevColumns) && !_internal) {
|
|
645
663
|
return prevColumns;
|
|
664
|
+
}
|
|
646
665
|
localStorage.setItem(
|
|
647
|
-
getLocalStorageKeyWithPrefix(`${
|
|
666
|
+
getLocalStorageKeyWithPrefix(`${keyRef.current}-tableLayout`),
|
|
648
667
|
JSON.stringify(newColumns)
|
|
649
668
|
);
|
|
650
669
|
return newColumns;
|
|
651
670
|
});
|
|
652
671
|
},
|
|
653
|
-
[
|
|
672
|
+
[]
|
|
654
673
|
);
|
|
655
674
|
(0, import_react5.useEffect)(() => {
|
|
656
675
|
if (!autosync) return;
|
|
657
|
-
if (!key)
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
`useTableLayout should only be called once per component render cycle.
|
|
661
|
-
${renderCountRef.current} Renders detected.
|
|
662
|
-
Check dependency stability`
|
|
663
|
-
);
|
|
676
|
+
if (!key) {
|
|
677
|
+
setIsReady(true);
|
|
678
|
+
return;
|
|
664
679
|
}
|
|
665
|
-
renderCountRef.current += 1;
|
|
666
680
|
const savedLayout = localStorage.getItem(
|
|
667
681
|
getLocalStorageKeyWithPrefix(`${key}-tableLayout`)
|
|
668
682
|
);
|
|
669
683
|
if (savedLayout) {
|
|
670
|
-
|
|
684
|
+
setColumns(
|
|
671
685
|
mergeObjectArrays(
|
|
672
686
|
initialColumns,
|
|
673
687
|
JSON.parse(savedLayout)
|
|
674
|
-
)
|
|
675
|
-
|
|
688
|
+
)
|
|
689
|
+
);
|
|
690
|
+
} else {
|
|
691
|
+
localStorage.setItem(
|
|
692
|
+
getLocalStorageKeyWithPrefix(`${key}-tableLayout`),
|
|
693
|
+
JSON.stringify(initialColumns)
|
|
676
694
|
);
|
|
695
|
+
setColumns((prev) => {
|
|
696
|
+
if (JSON.stringify(initialColumns) === JSON.stringify(prev))
|
|
697
|
+
return prev;
|
|
698
|
+
return initialColumns;
|
|
699
|
+
});
|
|
677
700
|
}
|
|
678
|
-
if (!savedLayout) handleSaveLayout(initialColumns, true);
|
|
679
701
|
setIsReady(true);
|
|
680
|
-
|
|
681
|
-
renderCountRef.current = 0;
|
|
682
|
-
};
|
|
683
|
-
}, [handleSaveLayout, initialColumns, key, autosync]);
|
|
702
|
+
}, [initialColumns, key, autosync]);
|
|
684
703
|
const getSavedLayout = (0, import_react5.useCallback)(() => {
|
|
685
704
|
const savedLayout = localStorage.getItem(
|
|
686
705
|
getLocalStorageKeyWithPrefix(`${key}-tableLayout`)
|