UNPKG

@e280/quay

Version:

File-browser and outliner UI for the web

24 lines 600 B
import { signal } from "@e280/strata"; export class TreeTrail { signal = signal([]); constructor(root) { this.signal([root]); } setTrail(e, item) { if (e.target !== e.currentTarget) return; const trail = []; let cur = item.kind === "folder" ? item : item.parent; while (cur) { trail.unshift(cur); cur = cur.parent; } this.signal(trail); } get currentFolder() { return this.signal().at(-1)?.children ?? []; } } //# sourceMappingURL=tree-trail.js.map