2026-04-09 18:14:28 +08:00
|
|
|
import { getConfiguredTableDefaultPageSize, normalizeTablePageSize } from '@/utils/tablePreferences'
|
|
|
|
|
|
2026-04-16 21:23:19 +08:00
|
|
|
const STORAGE_KEY = 'table-page-size'
|
|
|
|
|
|
2026-04-09 18:14:28 +08:00
|
|
|
export function getPersistedPageSize(fallback = getConfiguredTableDefaultPageSize()): number {
|
2026-04-16 21:23:19 +08:00
|
|
|
if (typeof window !== 'undefined') {
|
|
|
|
|
try {
|
|
|
|
|
const stored = window.localStorage.getItem(STORAGE_KEY)
|
|
|
|
|
if (stored !== null) {
|
|
|
|
|
const parsed = Number(stored)
|
|
|
|
|
if (Number.isFinite(parsed)) {
|
|
|
|
|
return normalizeTablePageSize(parsed)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} catch (error) {
|
|
|
|
|
console.warn('Failed to read persisted page size:', error)
|
|
|
|
|
}
|
|
|
|
|
}
|
2026-04-10 17:55:37 +08:00
|
|
|
return normalizeTablePageSize(getConfiguredTableDefaultPageSize() || fallback)
|
2026-03-18 10:53:27 +08:00
|
|
|
}
|
2026-04-16 21:23:19 +08:00
|
|
|
|
|
|
|
|
export function setPersistedPageSize(size: number): void {
|
|
|
|
|
if (typeof window === 'undefined') return
|
|
|
|
|
try {
|
|
|
|
|
window.localStorage.setItem(STORAGE_KEY, String(size))
|
|
|
|
|
} catch (error) {
|
|
|
|
|
console.warn('Failed to persist page size:', error)
|
|
|
|
|
}
|
|
|
|
|
}
|