mirror of
https://github.com/gpxstudio/gpx.studio.git
synced 2025-09-02 16:52:31 +00:00
file collapsible closed by default
This commit is contained in:
@@ -2,12 +2,14 @@
|
|||||||
import { setContext } from 'svelte';
|
import { setContext } from 'svelte';
|
||||||
import { writable } from 'svelte/store';
|
import { writable } from 'svelte/store';
|
||||||
|
|
||||||
|
export let defaultState: 'open' | 'closed' = 'closed';
|
||||||
export let side: 'left' | 'right' = 'right';
|
export let side: 'left' | 'right' = 'right';
|
||||||
export let margin: number = 1;
|
export let margin: number = 1;
|
||||||
export let nohover: boolean = false;
|
export let nohover: boolean = false;
|
||||||
|
|
||||||
let open = writable<Record<string, boolean>>({});
|
let open = writable<Record<string, boolean>>({});
|
||||||
|
|
||||||
|
setContext('collapsible-tree-default-state', defaultState);
|
||||||
setContext('collapsible-tree-state', open);
|
setContext('collapsible-tree-state', open);
|
||||||
setContext('collapsible-tree-side', side);
|
setContext('collapsible-tree-side', side);
|
||||||
setContext('collapsible-tree-margin', margin);
|
setContext('collapsible-tree-margin', margin);
|
||||||
|
@@ -7,6 +7,7 @@
|
|||||||
|
|
||||||
export let id: string;
|
export let id: string;
|
||||||
|
|
||||||
|
let defaultState = getContext<'open' | 'closed'>('collapsible-tree-default-state');
|
||||||
let open = getContext<Writable<Record<string, boolean>>>('collapsible-tree-state');
|
let open = getContext<Writable<Record<string, boolean>>>('collapsible-tree-state');
|
||||||
let side = getContext<'left' | 'right'>('collapsible-tree-side');
|
let side = getContext<'left' | 'right'>('collapsible-tree-side');
|
||||||
let margin = getContext<number>('collapsible-tree-margin');
|
let margin = getContext<number>('collapsible-tree-margin');
|
||||||
@@ -14,7 +15,7 @@
|
|||||||
|
|
||||||
open.update((value) => {
|
open.update((value) => {
|
||||||
if (!value.hasOwnProperty(id)) {
|
if (!value.hasOwnProperty(id)) {
|
||||||
value[id] = true;
|
value[id] = defaultState === 'open';
|
||||||
}
|
}
|
||||||
return value;
|
return value;
|
||||||
});
|
});
|
||||||
|
@@ -9,7 +9,7 @@
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
{#if $file}
|
{#if $file}
|
||||||
<CollapsibleTree side="left" margin={4}>
|
<CollapsibleTree side="left" margin={4} defaultState="closed">
|
||||||
<FileListNode node={$file.file} id={$file.file._data.id} />
|
<FileListNode node={$file.file} id={$file.file._data.id} />
|
||||||
</CollapsibleTree>
|
</CollapsibleTree>
|
||||||
{/if}
|
{/if}
|
||||||
|
Reference in New Issue
Block a user