This repository has been archived on 2024-02-08. You can view files and clone it, but cannot push or open issues or pull requests.
2022-07-20 22:42:36 +00:00
|
|
|
import type {IList} from '@/models/list'
|
2022-02-13 19:09:12 +00:00
|
|
|
|
2021-07-07 19:58:29 +00:00
|
|
|
const key = 'collapsedBuckets'
|
|
|
|
|
|
|
|
const getAllState = () => {
|
|
|
|
const saved = localStorage.getItem(key)
|
|
|
|
if (saved === null) {
|
|
|
|
return {}
|
|
|
|
}
|
|
|
|
|
|
|
|
return JSON.parse(saved)
|
|
|
|
}
|
|
|
|
|
2022-07-20 22:42:36 +00:00
|
|
|
export const saveCollapsedBucketState = (
|
|
|
|
listId: IList['id'],
|
|
|
|
collapsedBuckets,
|
|
|
|
) => {
|
2021-07-07 19:58:29 +00:00
|
|
|
const state = getAllState()
|
|
|
|
state[listId] = collapsedBuckets
|
|
|
|
for (const bucketId in state[listId]) {
|
|
|
|
if (!state[listId][bucketId]) {
|
|
|
|
delete state[listId][bucketId]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
localStorage.setItem(key, JSON.stringify(state))
|
|
|
|
}
|
|
|
|
|
2022-07-20 22:42:36 +00:00
|
|
|
export const getCollapsedBucketState = (listId : IList['id']) => {
|
2021-07-07 19:58:29 +00:00
|
|
|
const state = getAllState()
|
|
|
|
if (typeof state[listId] !== 'undefined') {
|
|
|
|
return state[listId]
|
|
|
|
}
|
|
|
|
|
|
|
|
return {}
|
|
|
|
}
|