mirror of
https://github.com/sysadminsmedia/homebox.git
synced 2025-12-21 21:33:02 +01:00
* location tree API * test fixes * initial tree location elements * locations tree page * update meta-data * code-gen * store item display preferences * introduce basic table/card view elements * codegen * set parent location during location creation * add item support for tree query * refactor tree view * wip: location selector improvements * type gen * rename items -> search * remove various log statements * fix markdown rendering for description * update location selectors * fix tests * fix currency tests * formatting
18 lines
354 B
TypeScript
18 lines
354 B
TypeScript
import type { Ref } from "vue";
|
|
|
|
type TreeState = Record<string, boolean>;
|
|
|
|
const store: Record<string, Ref<TreeState>> = {};
|
|
|
|
export function newTreeKey(): string {
|
|
return Math.random().toString(36).substring(2);
|
|
}
|
|
|
|
export function useTreeState(key: string): Ref<TreeState> {
|
|
if (!store[key]) {
|
|
store[key] = ref({});
|
|
}
|
|
|
|
return store[key];
|
|
}
|