@dxos/plugin-navtree 0.8.4-main.9735255 → 0.8.4-main.9be5663bfe
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/browser/index.mjs +137 -72
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/types/src/NavTreePlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts +6 -0
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +7 -5
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/keyboard.d.ts +5 -0
- package/dist/types/src/capabilities/keyboard.d.ts.map +1 -0
- package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
- package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface.d.ts +5 -0
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
- package/dist/types/src/capabilities/state.d.ts +6 -0
- package/dist/types/src/capabilities/state.d.ts.map +1 -0
- package/dist/types/src/components/NavTree/NavTree.d.ts +10 -32
- package/dist/types/src/components/NavTree/NavTree.d.ts.map +1 -1
- package/dist/types/src/components/NavTree/NavTree.stories.d.ts +10 -14
- package/dist/types/src/components/NavTree/NavTree.stories.d.ts.map +1 -1
- package/dist/types/src/components/{NavTreeContext.d.ts → NavTreeContext/NavTreeContext.d.ts} +1 -1
- package/dist/types/src/components/NavTreeContext/NavTreeContext.d.ts.map +1 -0
- package/dist/types/src/components/NavTreeContext/index.d.ts +2 -0
- package/dist/types/src/components/NavTreeContext/index.d.ts.map +1 -0
- package/dist/types/src/components/NavTreeItem/NavTreeItemAction.d.ts +7 -3
- package/dist/types/src/components/NavTreeItem/NavTreeItemAction.d.ts.map +1 -1
- package/dist/types/src/components/NavTreeItem/NavTreeItemAction.stories.d.ts +1 -1
- package/dist/types/src/components/NavTreeItem/NavTreeItemAction.stories.d.ts.map +1 -1
- package/dist/types/src/components/NavTreeItem/NavTreeItemColumns.d.ts.map +1 -1
- package/dist/types/src/components/Sidebar/L0Menu.d.ts +4 -1
- package/dist/types/src/components/Sidebar/L0Menu.d.ts.map +1 -1
- package/dist/types/src/components/Sidebar/L1Panel.d.ts +3 -6
- package/dist/types/src/components/Sidebar/L1Panel.d.ts.map +1 -1
- package/dist/types/src/components/Sidebar/L1Tabs.d.ts +3 -2
- package/dist/types/src/components/Sidebar/L1Tabs.d.ts.map +1 -1
- package/dist/types/src/components/UserAccountAvatar/UserAccountAvatar.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +0 -3
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/components/types.d.ts +5 -13
- package/dist/types/src/components/types.d.ts.map +1 -1
- package/dist/types/src/{components/CommandsDialog/CommandsDialog.d.ts → containers/CommandsDialogContent/CommandsDialogContent.d.ts} +1 -1
- package/dist/types/src/containers/CommandsDialogContent/CommandsDialogContent.d.ts.map +1 -0
- package/dist/types/src/containers/CommandsDialogContent/CommandsDialogContent.stories.d.ts +29 -0
- package/dist/types/src/containers/CommandsDialogContent/CommandsDialogContent.stories.d.ts.map +1 -0
- package/dist/types/src/containers/CommandsDialogContent/index.d.ts +2 -0
- package/dist/types/src/containers/CommandsDialogContent/index.d.ts.map +1 -0
- package/dist/types/src/containers/CommandsTrigger/CommandsTrigger.d.ts.map +1 -0
- package/dist/types/src/containers/CommandsTrigger/index.d.ts +2 -0
- package/dist/types/src/containers/CommandsTrigger/index.d.ts.map +1 -0
- package/dist/types/src/containers/NavTreeContainer/NavTreeContainer.d.ts +9 -0
- package/dist/types/src/containers/NavTreeContainer/NavTreeContainer.d.ts.map +1 -0
- package/dist/types/src/containers/NavTreeContainer/index.d.ts +3 -0
- package/dist/types/src/containers/NavTreeContainer/index.d.ts.map +1 -0
- package/dist/types/src/containers/NavTreeDocumentTitle/NavTreeDocumentTitle.d.ts.map +1 -0
- package/dist/types/src/containers/NavTreeDocumentTitle/index.d.ts +2 -0
- package/dist/types/src/containers/NavTreeDocumentTitle/index.d.ts.map +1 -0
- package/dist/types/src/containers/index.d.ts +7 -0
- package/dist/types/src/containers/index.d.ts.map +1 -0
- package/dist/types/src/experimental/Tree.stories.d.ts +18 -4
- package/dist/types/src/experimental/Tree.stories.d.ts.map +1 -1
- package/dist/types/src/hooks/index.d.ts +5 -0
- package/dist/types/src/hooks/index.d.ts.map +1 -0
- package/dist/types/src/hooks/useActions.d.ts +5 -0
- package/dist/types/src/hooks/useActions.d.ts.map +1 -0
- package/dist/types/src/hooks/useLoadDescendents.d.ts +6 -0
- package/dist/types/src/hooks/useLoadDescendents.d.ts.map +1 -0
- package/dist/types/src/hooks/useNavTreeModel.d.ts +7 -0
- package/dist/types/src/hooks/useNavTreeModel.d.ts.map +1 -0
- package/dist/types/src/{hooks.d.ts → hooks/useNavTreeState.d.ts} +2 -14
- package/dist/types/src/hooks/useNavTreeState.d.ts.map +1 -0
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/operations/expose.d.ts +5 -0
- package/dist/types/src/operations/expose.d.ts.map +1 -0
- package/dist/types/src/operations/index.d.ts +3 -0
- package/dist/types/src/operations/index.d.ts.map +1 -0
- package/dist/types/src/testing/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/testing/generator.d.ts +3 -3
- package/dist/types/src/testing/generator.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +9 -10
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/events.d.ts.map +1 -1
- package/dist/types/src/util.d.ts +6 -2
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +54 -43
- package/src/NavTreePlugin.tsx +26 -27
- package/src/capabilities/{app-graph-builder/app-graph-builder.ts → app-graph-builder.ts} +10 -9
- package/src/capabilities/index.ts +11 -5
- package/src/capabilities/{keyboard/keyboard.ts → keyboard.ts} +7 -6
- package/src/capabilities/operation-handler.ts +16 -0
- package/src/capabilities/{react-surface/react-surface.tsx → react-surface.tsx} +15 -15
- package/src/capabilities/{state/state.ts → state.ts} +43 -15
- package/src/components/NavTree/NavTree.stories.tsx +30 -27
- package/src/components/NavTree/NavTree.tsx +64 -22
- package/src/components/{NavTreeContext.tsx → NavTreeContext/NavTreeContext.tsx} +1 -1
- package/src/components/NavTreeContext/index.ts +5 -0
- package/src/components/NavTreeItem/NavTreeItemAction.stories.tsx +7 -9
- package/src/components/NavTreeItem/NavTreeItemAction.tsx +56 -39
- package/src/components/NavTreeItem/NavTreeItemColumns.tsx +43 -17
- package/src/components/Sidebar/L0Menu.tsx +104 -113
- package/src/components/Sidebar/L1Panel.tsx +253 -94
- package/src/components/Sidebar/L1Tabs.tsx +13 -4
- package/src/components/UserAccountAvatar/UserAccountAvatar.stories.tsx +2 -3
- package/src/components/UserAccountAvatar/UserAccountAvatar.tsx +1 -1
- package/src/components/index.ts +0 -3
- package/src/components/types.ts +12 -17
- package/src/containers/CommandsDialogContent/CommandsDialogContent.stories.tsx +45 -0
- package/src/{components/CommandsDialog/CommandsDialog.tsx → containers/CommandsDialogContent/CommandsDialogContent.tsx} +23 -21
- package/src/containers/CommandsDialogContent/index.ts +5 -0
- package/src/containers/CommandsTrigger/CommandsTrigger.tsx +28 -0
- package/src/containers/CommandsTrigger/index.ts +5 -0
- package/src/{components → containers/NavTreeContainer}/NavTreeContainer.tsx +85 -142
- package/src/containers/NavTreeContainer/index.ts +6 -0
- package/src/{components → containers/NavTreeDocumentTitle}/NavTreeDocumentTitle.tsx +2 -2
- package/src/containers/NavTreeDocumentTitle/index.ts +5 -0
- package/src/containers/index.ts +12 -0
- package/src/experimental/Tree.stories.tsx +81 -84
- package/src/experimental/Tree.tsx +3 -3
- package/src/hooks/index.ts +8 -0
- package/src/hooks/useActions.ts +34 -0
- package/src/hooks/useLoadDescendents.ts +23 -0
- package/src/hooks/useNavTreeModel.ts +118 -0
- package/src/{hooks.ts → hooks/useNavTreeState.ts} +3 -34
- package/src/meta.ts +2 -2
- package/src/operations/expose.ts +42 -0
- package/src/operations/index.ts +7 -0
- package/src/testing/app-graph-builder.ts +40 -36
- package/src/testing/generator.ts +25 -25
- package/src/translations.ts +9 -10
- package/src/types/capabilities.ts +2 -2
- package/src/types/events.ts +4 -3
- package/src/util.ts +19 -5
- package/dist/lib/browser/app-graph-builder-RSMA6I22.mjs +0 -43
- package/dist/lib/browser/app-graph-builder-RSMA6I22.mjs.map +0 -7
- package/dist/lib/browser/chunk-6YPQ625I.mjs +0 -1293
- package/dist/lib/browser/chunk-6YPQ625I.mjs.map +0 -7
- package/dist/lib/browser/chunk-AGQDZBPL.mjs +0 -23
- package/dist/lib/browser/chunk-AGQDZBPL.mjs.map +0 -7
- package/dist/lib/browser/chunk-YKTYPINZ.mjs +0 -19
- package/dist/lib/browser/chunk-YKTYPINZ.mjs.map +0 -7
- package/dist/lib/browser/keyboard-32EH3N4K.mjs +0 -52
- package/dist/lib/browser/keyboard-32EH3N4K.mjs.map +0 -7
- package/dist/lib/browser/operation-resolver-IB75DC5O.mjs +0 -52
- package/dist/lib/browser/operation-resolver-IB75DC5O.mjs.map +0 -7
- package/dist/lib/browser/react-surface-F6CVMS3Y.mjs +0 -58
- package/dist/lib/browser/react-surface-F6CVMS3Y.mjs.map +0 -7
- package/dist/lib/browser/state-EVYQOUI3.mjs +0 -120
- package/dist/lib/browser/state-EVYQOUI3.mjs.map +0 -7
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +0 -6
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +0 -1
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts +0 -3
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/keyboard/index.d.ts +0 -3
- package/dist/types/src/capabilities/keyboard/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/keyboard/keyboard.d.ts +0 -5
- package/dist/types/src/capabilities/keyboard/keyboard.d.ts.map +0 -1
- package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -3
- package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -5
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts +0 -5
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
- package/dist/types/src/capabilities/state/index.d.ts +0 -3
- package/dist/types/src/capabilities/state/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/state/state.d.ts +0 -6
- package/dist/types/src/capabilities/state/state.d.ts.map +0 -1
- package/dist/types/src/components/CommandsDialog/CommandsDialog.d.ts.map +0 -1
- package/dist/types/src/components/CommandsDialog/CommandsTrigger.d.ts.map +0 -1
- package/dist/types/src/components/CommandsDialog/index.d.ts +0 -3
- package/dist/types/src/components/CommandsDialog/index.d.ts.map +0 -1
- package/dist/types/src/components/NavTreeContainer.d.ts +0 -16
- package/dist/types/src/components/NavTreeContainer.d.ts.map +0 -1
- package/dist/types/src/components/NavTreeContext.d.ts.map +0 -1
- package/dist/types/src/components/NavTreeDocumentTitle.d.ts.map +0 -1
- package/dist/types/src/hooks.d.ts.map +0 -1
- package/src/capabilities/app-graph-builder/index.ts +0 -7
- package/src/capabilities/keyboard/index.ts +0 -7
- package/src/capabilities/operation-resolver/index.ts +0 -7
- package/src/capabilities/operation-resolver/operation-resolver.ts +0 -41
- package/src/capabilities/react-surface/index.ts +0 -7
- package/src/capabilities/state/index.ts +0 -7
- package/src/components/CommandsDialog/CommandsTrigger.tsx +0 -26
- package/src/components/CommandsDialog/index.ts +0 -6
- /package/dist/types/src/{components/CommandsDialog → containers/CommandsTrigger}/CommandsTrigger.d.ts +0 -0
- /package/dist/types/src/{components → containers/NavTreeDocumentTitle}/NavTreeDocumentTitle.d.ts +0 -0
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
NavTreeCapabilities
|
|
3
|
-
} from "./chunk-AGQDZBPL.mjs";
|
|
4
|
-
import {
|
|
5
|
-
meta
|
|
6
|
-
} from "./chunk-YKTYPINZ.mjs";
|
|
7
|
-
|
|
8
|
-
// src/capabilities/state/state.ts
|
|
9
|
-
import { Atom } from "@effect-atom/atom-react";
|
|
10
|
-
import * as Effect from "effect/Effect";
|
|
11
|
-
import { Capability, Common } from "@dxos/app-framework";
|
|
12
|
-
import { Path } from "@dxos/react-ui-list";
|
|
13
|
-
var KEY = `${meta.id}/state/v1`;
|
|
14
|
-
var defaultItemState = {
|
|
15
|
-
open: false,
|
|
16
|
-
current: false,
|
|
17
|
-
alternateTree: false
|
|
18
|
-
};
|
|
19
|
-
var defaultStateEntries = [
|
|
20
|
-
[
|
|
21
|
-
"root",
|
|
22
|
-
{
|
|
23
|
-
open: true,
|
|
24
|
-
current: false
|
|
25
|
-
}
|
|
26
|
-
],
|
|
27
|
-
[
|
|
28
|
-
"root~dxos.org/plugin/space-spaces",
|
|
29
|
-
{
|
|
30
|
-
open: true,
|
|
31
|
-
current: false
|
|
32
|
-
}
|
|
33
|
-
],
|
|
34
|
-
[
|
|
35
|
-
"root~dxos.org/plugin/files",
|
|
36
|
-
{
|
|
37
|
-
open: true,
|
|
38
|
-
current: false
|
|
39
|
-
}
|
|
40
|
-
]
|
|
41
|
-
];
|
|
42
|
-
var getInitialState = () => {
|
|
43
|
-
const stringified = localStorage.getItem(KEY);
|
|
44
|
-
if (!stringified) {
|
|
45
|
-
return new Map(defaultStateEntries);
|
|
46
|
-
}
|
|
47
|
-
try {
|
|
48
|
-
const cached = JSON.parse(stringified);
|
|
49
|
-
return new Map(cached.map(([key, value]) => [
|
|
50
|
-
key,
|
|
51
|
-
{
|
|
52
|
-
open: value.open,
|
|
53
|
-
current: false
|
|
54
|
-
}
|
|
55
|
-
]));
|
|
56
|
-
} catch {
|
|
57
|
-
return new Map(defaultStateEntries);
|
|
58
|
-
}
|
|
59
|
-
};
|
|
60
|
-
var state_default = Capability.makeModule(Effect.fnUntraced(function* () {
|
|
61
|
-
const registry = yield* Capability.get(Common.Capability.AtomRegistry);
|
|
62
|
-
const layoutAtom = yield* Capability.get(Common.Capability.Layout);
|
|
63
|
-
const backingState = getInitialState();
|
|
64
|
-
const itemAtomFamily = Atom.family((pathString) => Atom.make(backingState.get(pathString) ?? {
|
|
65
|
-
...defaultItemState
|
|
66
|
-
}).pipe(Atom.keepAlive));
|
|
67
|
-
const getItemAtom = (path) => {
|
|
68
|
-
const pathString = Path.create(...path);
|
|
69
|
-
return itemAtomFamily(pathString);
|
|
70
|
-
};
|
|
71
|
-
const getItem = (path) => {
|
|
72
|
-
return registry.get(getItemAtom(path));
|
|
73
|
-
};
|
|
74
|
-
const setItem = (path, key, next) => {
|
|
75
|
-
const pathString = Path.create(...path);
|
|
76
|
-
const atom = itemAtomFamily(pathString);
|
|
77
|
-
const currentValue = registry.get(atom);
|
|
78
|
-
const newValue = {
|
|
79
|
-
...currentValue,
|
|
80
|
-
[key]: next
|
|
81
|
-
};
|
|
82
|
-
registry.set(atom, newValue);
|
|
83
|
-
backingState.set(pathString, newValue);
|
|
84
|
-
localStorage.setItem(KEY, JSON.stringify(Array.from(backingState.entries())));
|
|
85
|
-
};
|
|
86
|
-
let previous = [];
|
|
87
|
-
const unsubscribe = registry.subscribe(layoutAtom, (layout) => {
|
|
88
|
-
const removed = previous.filter((id) => !layout.active.includes(id));
|
|
89
|
-
previous = layout.active;
|
|
90
|
-
const handleUpdate = () => {
|
|
91
|
-
removed.forEach((id) => {
|
|
92
|
-
const keys = Array.from(backingState.keys()).filter((key) => Path.last(key) === id);
|
|
93
|
-
keys.forEach((key) => {
|
|
94
|
-
setItem(Path.parts(key), "current", false);
|
|
95
|
-
});
|
|
96
|
-
});
|
|
97
|
-
layout.active.forEach((id) => {
|
|
98
|
-
const keys = Array.from(/* @__PURE__ */ new Set([
|
|
99
|
-
...backingState.keys(),
|
|
100
|
-
id
|
|
101
|
-
])).filter((key) => Path.last(key) === id);
|
|
102
|
-
keys.forEach((key) => {
|
|
103
|
-
setItem(Path.parts(key), "current", true);
|
|
104
|
-
});
|
|
105
|
-
});
|
|
106
|
-
};
|
|
107
|
-
const timeout = setTimeout(handleUpdate, 500);
|
|
108
|
-
handleUpdate();
|
|
109
|
-
return () => clearTimeout(timeout);
|
|
110
|
-
});
|
|
111
|
-
return Capability.contributes(NavTreeCapabilities.State, {
|
|
112
|
-
getItem,
|
|
113
|
-
getItemAtom,
|
|
114
|
-
setItem
|
|
115
|
-
}, () => Effect.sync(() => unsubscribe()));
|
|
116
|
-
}));
|
|
117
|
-
export {
|
|
118
|
-
state_default as default
|
|
119
|
-
};
|
|
120
|
-
//# sourceMappingURL=state-EVYQOUI3.mjs.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/capabilities/state/state.ts"],
|
|
4
|
-
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Atom } from '@effect-atom/atom-react';\nimport * as Effect from 'effect/Effect';\n\nimport { Capability, Common } from '@dxos/app-framework';\nimport { Path } from '@dxos/react-ui-list';\n\nimport { meta } from '../../meta';\nimport { type NavTreeCapabilities as NC, NavTreeCapabilities } from '../../types';\n\nconst KEY = `${meta.id}/state/v1`;\n\n/** Default item state for new entries. */\nconst defaultItemState: NC.NavTreeItemState = { open: false, current: false, alternateTree: false };\n\n/** Default state entries for initial tree structure. */\n// TODO(thure): Initialize these dynamically.\nconst defaultStateEntries: [string, NC.NavTreeItemState][] = [\n ['root', { open: true, current: false }],\n ['root~dxos.org/plugin/space-spaces', { open: true, current: false }],\n ['root~dxos.org/plugin/files', { open: true, current: false }],\n];\n\nconst getInitialState = (): Map<string, NC.NavTreeItemState> => {\n const stringified = localStorage.getItem(KEY);\n if (!stringified) {\n return new Map(defaultStateEntries);\n }\n\n try {\n const cached: [string, { open: boolean; current: boolean }][] = JSON.parse(stringified);\n return new Map(cached.map(([key, value]) => [key, { open: value.open, current: false }]));\n } catch {\n return new Map(defaultStateEntries);\n }\n};\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const registry = yield* Capability.get(Common.Capability.AtomRegistry);\n const layoutAtom = yield* Capability.get(Common.Capability.Layout);\n\n // Backing state for persistence (not reactive).\n const backingState = getInitialState();\n\n // Per-path atom family for fine-grained reactivity.\n // keepAlive prevents atoms from being garbage collected when components unmount,\n // ensuring state is preserved across deletion/restoration cycles.\n const itemAtomFamily = Atom.family((pathString: string) =>\n Atom.make<NC.NavTreeItemState>(backingState.get(pathString) ?? { ...defaultItemState }).pipe(Atom.keepAlive),\n );\n\n const getItemAtom = (path: string[]): Atom.Atom<NC.NavTreeItemState> => {\n const pathString = Path.create(...path);\n return itemAtomFamily(pathString);\n };\n\n const getItem = (path: string[]): NC.NavTreeItemState => {\n return registry.get(getItemAtom(path));\n };\n\n const setItem = (path: string[], key: 'open' | 'current' | 'alternateTree', next: boolean) => {\n const pathString = Path.create(...path);\n const atom = itemAtomFamily(pathString);\n const currentValue = registry.get(atom);\n const newValue = { ...currentValue, [key]: next };\n\n // Update the atom.\n registry.set(atom, newValue);\n\n // Update backing state and persist to localStorage.\n backingState.set(pathString, newValue);\n localStorage.setItem(KEY, JSON.stringify(Array.from(backingState.entries())));\n };\n\n // Subscribe to layout changes to update current state.\n let previous: string[] = [];\n const unsubscribe = registry.subscribe(layoutAtom, (layout) => {\n const removed = previous.filter((id) => !layout.active.includes(id));\n previous = layout.active;\n\n const handleUpdate = () => {\n // Mark removed items as not current.\n removed.forEach((id) => {\n const keys = Array.from(backingState.keys()).filter((key) => Path.last(key) === id);\n keys.forEach((key) => {\n setItem(Path.parts(key), 'current', false);\n });\n });\n\n // Mark active items as current.\n layout.active.forEach((id: string) => {\n const keys = Array.from(new Set([...backingState.keys(), id])).filter((key) => Path.last(key) === id);\n keys.forEach((key) => {\n setItem(Path.parts(key), 'current', true);\n });\n });\n };\n\n // TODO(wittjosiah): This is setTimeout because there's a race between the keys being initialized.\n // Keys are initialized on the first render of an item in the navtree.\n // This could be avoided if the location was a path as well and not just an id.\n const timeout = setTimeout(handleUpdate, 500);\n handleUpdate();\n return () => clearTimeout(timeout);\n });\n\n return Capability.contributes(\n NavTreeCapabilities.State,\n {\n getItem,\n getItemAtom,\n setItem,\n },\n () => Effect.sync(() => unsubscribe()),\n );\n }),\n);\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["Atom", "Effect", "Capability", "Common", "Path", "KEY", "meta", "id", "defaultItemState", "open", "current", "alternateTree", "defaultStateEntries", "getInitialState", "stringified", "localStorage", "getItem", "Map", "cached", "JSON", "parse", "map", "key", "value", "Capability", "makeModule", "fnUntraced", "registry", "get", "Common", "AtomRegistry", "layoutAtom", "Layout", "backingState", "itemAtomFamily", "Atom", "family", "pathString", "make", "pipe", "keepAlive", "getItemAtom", "path", "Path", "create", "setItem", "next", "atom", "currentValue", "newValue", "set", "stringify", "Array", "from", "entries", "previous", "unsubscribe", "subscribe", "layout", "removed", "filter", "active", "includes", "handleUpdate", "forEach", "keys", "last", "parts", "Set", "timeout", "setTimeout", "clearTimeout", "contributes", "NavTreeCapabilities", "State", "sync"]
|
|
7
|
-
}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import * as Effect from 'effect/Effect';
|
|
2
|
-
import { Capability } from '@dxos/app-framework';
|
|
3
|
-
import { GraphBuilder } from '@dxos/plugin-graph';
|
|
4
|
-
declare const _default: (props?: void | undefined) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<GraphBuilder.BuilderExtensions>>, never, never>;
|
|
5
|
-
export default _default;
|
|
6
|
-
//# sourceMappingURL=app-graph-builder.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app-graph-builder.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/app-graph-builder/app-graph-builder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAe,MAAM,oBAAoB,CAAC;;AAI/D,wBA4BE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/app-graph-builder/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,eAAe,qIAA0E,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/keyboard/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,QAAQ,8FAA0D,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import * as Effect from 'effect/Effect';
|
|
2
|
-
import { Capability } from '@dxos/app-framework';
|
|
3
|
-
declare const _default: (props?: void | undefined) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<null>>, Error, Capability.Service>;
|
|
4
|
-
export default _default;
|
|
5
|
-
//# sourceMappingURL=keyboard.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"keyboard.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/keyboard/keyboard.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAC;;AAQzD,wBAkDE"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { Capability } from '@dxos/app-framework';
|
|
2
|
-
export declare const OperationResolver: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<import("@dxos/app-framework/Common").Capability.OperationResolver[]>>, Error>;
|
|
3
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/operation-resolver/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,iBAAiB,6JAA6E,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import * as Effect from 'effect/Effect';
|
|
2
|
-
import { Capability, Common } from '@dxos/app-framework';
|
|
3
|
-
declare const _default: (props?: void | undefined) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<Common.Capability.OperationResolver[]>>, never, never>;
|
|
4
|
-
export default _default;
|
|
5
|
-
//# sourceMappingURL=operation-resolver.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"operation-resolver.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/operation-resolver/operation-resolver.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;;AAOzD,wBA2BE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-surface/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,YAAY,sJAAmE,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import * as Effect from 'effect/Effect';
|
|
2
|
-
import { Capability, Common } from '@dxos/app-framework';
|
|
3
|
-
declare const _default: (props?: void | undefined) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<Common.Capability.ReactSurface>>, never, never>;
|
|
4
|
-
export default _default;
|
|
5
|
-
//# sourceMappingURL=react-surface.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-surface/react-surface.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;;AAMzD,wBAwCE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/state/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,KAAK,+IAAoD,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import * as Effect from 'effect/Effect';
|
|
2
|
-
import { Capability } from '@dxos/app-framework';
|
|
3
|
-
import { type NavTreeCapabilities as NC } from '../../types';
|
|
4
|
-
declare const _default: (props?: void | undefined) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<NC.NavTreeStateStore>>, Error, Capability.Service>;
|
|
5
|
-
export default _default;
|
|
6
|
-
//# sourceMappingURL=state.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/state/state.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAC;AAIzD,OAAO,EAAE,KAAK,mBAAmB,IAAI,EAAE,EAAuB,MAAM,aAAa,CAAC;;AA6BlF,wBAgFE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CommandsDialog.d.ts","sourceRoot":"","sources":["../../../../../src/components/CommandsDialog/CommandsDialog.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAc7D,MAAM,MAAM,0BAA0B,GAAG;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAGF,eAAO,MAAM,qBAAqB,mGAyGjC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CommandsTrigger.d.ts","sourceRoot":"","sources":["../../../../../src/components/CommandsDialog/CommandsTrigger.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,eAAO,MAAM,eAAe,yBAY3B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/CommandsDialog/index.ts"],"names":[],"mappings":"AAIA,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { type NavTreeContextValue } from './types';
|
|
3
|
-
export declare const NODE_TYPE = "dxos/app-graph/node";
|
|
4
|
-
export type NavTreeContainerProps = {
|
|
5
|
-
popoverAnchorId?: string;
|
|
6
|
-
topbar?: boolean;
|
|
7
|
-
} & Pick<NavTreeContextValue, 'tab'>;
|
|
8
|
-
export declare const NavTreeContainer$: React.ForwardRefExoticComponent<{
|
|
9
|
-
popoverAnchorId?: string;
|
|
10
|
-
topbar?: boolean;
|
|
11
|
-
} & Pick<NavTreeContextValue, "tab"> & React.RefAttributes<HTMLDivElement>>;
|
|
12
|
-
export declare const NavTreeContainer: React.NamedExoticComponent<{
|
|
13
|
-
popoverAnchorId?: string;
|
|
14
|
-
topbar?: boolean;
|
|
15
|
-
} & Pick<NavTreeContextValue, "tab"> & React.RefAttributes<HTMLDivElement>>;
|
|
16
|
-
//# sourceMappingURL=NavTreeContainer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavTreeContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/NavTreeContainer.tsx"],"names":[],"mappings":"AAMA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAmBjF,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAGnD,eAAO,MAAM,SAAS,wBAAwB,CAAC;AA0D/C,MAAM,MAAM,qBAAqB,GAAG;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GAAG,IAAI,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;AAErC,eAAO,MAAM,iBAAiB;sBAJV,MAAM;aACf,OAAO;2EAsPjB,CAAC;AAEF,eAAO,MAAM,gBAAgB;sBAzPT,MAAM;aACf,OAAO;2EAwPqC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavTreeContext.d.ts","sourceRoot":"","sources":["../../../../src/components/NavTreeContext.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEnD,eAAO,MAAM,cAAc,qDAAkD,CAAC;AAE9E,eAAO,MAAM,iBAAiB,2BAAiF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavTreeDocumentTitle.d.ts","sourceRoot":"","sources":["../../../../src/components/NavTreeDocumentTitle.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAM5C,eAAO,MAAM,oBAAoB,GAAI,UAAU;IAAE,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAA;CAAE,SAMlE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/hooks.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,IAAI,EAAgB,MAAM,yBAAyB,CAAC;AAIlE,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,eAAO,MAAM,kBAAkB,GAAI,OAAO,IAAI,CAAC,IAAI,SAUlD,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,mBAAmB,CAAC,gBAAgB,CAAC;IAClE,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IACjF,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,eAAe,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7F,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAO,qBAElC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,EAAE,KAAG,mBAAmB,CAAC,gBAMxE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,EAAE,EAAE,QAAQ,GAAG,KAAG,OAEvD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,EAAE,EAAE,QAAQ,GAAG,KAAG,OAE1D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,EAAE,EAAE,QAAQ,GAAG,KAAG,OAEhE,CAAC"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2025 DXOS.org
|
|
3
|
-
//
|
|
4
|
-
|
|
5
|
-
import * as Effect from 'effect/Effect';
|
|
6
|
-
|
|
7
|
-
import { Capability, Common } from '@dxos/app-framework';
|
|
8
|
-
import { log } from '@dxos/log';
|
|
9
|
-
import { OperationResolver } from '@dxos/operation';
|
|
10
|
-
import { Graph } from '@dxos/plugin-graph';
|
|
11
|
-
|
|
12
|
-
import { NavTreeCapabilities } from '../../types';
|
|
13
|
-
|
|
14
|
-
export default Capability.makeModule(
|
|
15
|
-
Effect.fnUntraced(function* () {
|
|
16
|
-
return Capability.contributes(Common.Capability.OperationResolver, [
|
|
17
|
-
OperationResolver.make({
|
|
18
|
-
operation: Common.LayoutOperation.Expose,
|
|
19
|
-
handler: Effect.fnUntraced(function* ({ subject }) {
|
|
20
|
-
const { graph } = yield* Capability.get(Common.Capability.AppGraph);
|
|
21
|
-
const { getItem, setItem } = yield* Capability.get(NavTreeCapabilities.State);
|
|
22
|
-
yield* Effect.tryPromise(() => Graph.waitForPath(graph, { target: subject }, { timeout: 1_000 })).pipe(
|
|
23
|
-
Effect.andThen((path) => {
|
|
24
|
-
[...Array(path.length)].forEach((_, index) => {
|
|
25
|
-
const subpath = path.slice(0, index);
|
|
26
|
-
const value = getItem(subpath);
|
|
27
|
-
if (!value.open) {
|
|
28
|
-
setItem(subpath, 'open', true);
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
}),
|
|
32
|
-
Effect.catchAll(() => {
|
|
33
|
-
log('Path to node not found', { subject });
|
|
34
|
-
return Effect.void;
|
|
35
|
-
}),
|
|
36
|
-
);
|
|
37
|
-
}),
|
|
38
|
-
}),
|
|
39
|
-
]);
|
|
40
|
-
}),
|
|
41
|
-
);
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2024 DXOS.org
|
|
3
|
-
//
|
|
4
|
-
|
|
5
|
-
import React from 'react';
|
|
6
|
-
|
|
7
|
-
import { Common } from '@dxos/app-framework';
|
|
8
|
-
import { useOperationInvoker } from '@dxos/app-framework/react';
|
|
9
|
-
import { Button, Icon, useTranslation } from '@dxos/react-ui';
|
|
10
|
-
|
|
11
|
-
import { COMMANDS_DIALOG, meta } from '../../meta';
|
|
12
|
-
|
|
13
|
-
// TODO(thure): Refactor to be handled by a more appropriate plugin.
|
|
14
|
-
export const CommandsTrigger = () => {
|
|
15
|
-
const { invokeSync } = useOperationInvoker();
|
|
16
|
-
const { t } = useTranslation(meta.id);
|
|
17
|
-
return (
|
|
18
|
-
<Button
|
|
19
|
-
classNames='m-1 pli-1 lg:pli-2'
|
|
20
|
-
onClick={() => invokeSync(Common.LayoutOperation.UpdateDialog, { subject: COMMANDS_DIALOG, blockAlign: 'start' })}
|
|
21
|
-
>
|
|
22
|
-
<span className='text-description font-normal grow text-start'>{t('command list input placeholder')}</span>
|
|
23
|
-
<Icon icon='ph--magnifying-glass--regular' size={5} />
|
|
24
|
-
</Button>
|
|
25
|
-
);
|
|
26
|
-
};
|
|
File without changes
|
/package/dist/types/src/{components → containers/NavTreeDocumentTitle}/NavTreeDocumentTitle.d.ts
RENAMED
|
File without changes
|