@underverse-ui/underverse 0.2.21 → 0.2.22

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/index.cjs CHANGED
@@ -10069,6 +10069,7 @@ function DataTable({
10069
10069
  // Mặc định bật màu nền sẽn kẽ cho các dòng
10070
10070
  columnDividers = false,
10071
10071
  className,
10072
+ storageKey,
10072
10073
  labels
10073
10074
  }) {
10074
10075
  const t = (0, import_next_intl7.useTranslations)("Common");
@@ -10078,7 +10079,26 @@ function DataTable({
10078
10079
  const [sort, setSort] = import_react23.default.useState(null);
10079
10080
  const [density, setDensity] = import_react23.default.useState("normal");
10080
10081
  const [curPage, setCurPage] = import_react23.default.useState(page);
10081
- const [curPageSize, setCurPageSize] = import_react23.default.useState(pageSize);
10082
+ const getInitialPageSize = import_react23.default.useCallback(() => {
10083
+ if (typeof window === "undefined" || !storageKey) return pageSize;
10084
+ try {
10085
+ const saved = localStorage.getItem(`datatable_${storageKey}_pageSize`);
10086
+ if (saved) {
10087
+ const parsed = parseInt(saved, 10);
10088
+ if (!isNaN(parsed) && parsed > 0) return parsed;
10089
+ }
10090
+ } catch {
10091
+ }
10092
+ return pageSize;
10093
+ }, [storageKey, pageSize]);
10094
+ const [curPageSize, setCurPageSize] = import_react23.default.useState(getInitialPageSize);
10095
+ import_react23.default.useEffect(() => {
10096
+ if (typeof window === "undefined" || !storageKey) return;
10097
+ try {
10098
+ localStorage.setItem(`datatable_${storageKey}_pageSize`, String(curPageSize));
10099
+ } catch {
10100
+ }
10101
+ }, [curPageSize, storageKey]);
10082
10102
  import_react23.default.useEffect(() => {
10083
10103
  const newColKeys = columns.filter((c) => c.visible !== false).map((c) => c.key);
10084
10104
  setVisibleCols((prev) => {