MindSift CI & Docker Release / Build, Test in Container & Push (push) Successful in 2m3s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
21 lines
684 B
TypeScript
21 lines
684 B
TypeScript
// View state for this browser tab that survives switching between the app's tabs (the views
|
|
// remount), like the workspace's open note: which list was open, list or Kanban view
|
|
const PREFIX = 'mindsift_view:';
|
|
|
|
export function readViewSession<T extends object>(view: string): Partial<T> {
|
|
try {
|
|
const raw = JSON.parse(sessionStorage.getItem(PREFIX + view) || '{}');
|
|
return raw && typeof raw === 'object' ? raw : {};
|
|
} catch {
|
|
return {};
|
|
}
|
|
}
|
|
|
|
export function writeViewSession<T extends object>(view: string, state: T) {
|
|
try {
|
|
sessionStorage.setItem(PREFIX + view, JSON.stringify(state));
|
|
} catch {
|
|
// storage blocked: the view simply starts fresh
|
|
}
|
|
}
|