@dxos/plugin-navtree 0.8.4-main.67995b8 → 0.8.4-main.69d29f4
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/app-graph-builder-RSMA6I22.mjs +43 -0
- package/dist/lib/browser/app-graph-builder-RSMA6I22.mjs.map +7 -0
- package/dist/lib/browser/chunk-6YPQ625I.mjs +1293 -0
- package/dist/lib/browser/chunk-6YPQ625I.mjs.map +7 -0
- package/dist/lib/browser/chunk-AGQDZBPL.mjs +23 -0
- package/dist/lib/browser/chunk-AGQDZBPL.mjs.map +7 -0
- package/dist/lib/browser/chunk-YKTYPINZ.mjs +19 -0
- package/dist/lib/browser/chunk-YKTYPINZ.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +82 -95
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/{keyboard-QRS6WOQH.mjs → keyboard-32EH3N4K.mjs} +20 -19
- package/dist/lib/browser/keyboard-32EH3N4K.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/operation-resolver-IB75DC5O.mjs +52 -0
- package/dist/lib/browser/operation-resolver-IB75DC5O.mjs.map +7 -0
- package/dist/lib/browser/react-surface-F6CVMS3Y.mjs +58 -0
- package/dist/lib/browser/react-surface-F6CVMS3Y.mjs.map +7 -0
- package/dist/lib/browser/state-EVYQOUI3.mjs +120 -0
- package/dist/lib/browser/state-EVYQOUI3.mjs.map +7 -0
- package/dist/types/src/NavTreePlugin.d.ts +2 -1
- package/dist/types/src/NavTreePlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +6 -0
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts +3 -0
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +5 -105
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/keyboard/index.d.ts +3 -0
- package/dist/types/src/capabilities/keyboard/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/keyboard/keyboard.d.ts +5 -0
- package/dist/types/src/capabilities/keyboard/keyboard.d.ts.map +1 -0
- package/dist/types/src/capabilities/operation-resolver/index.d.ts +3 -0
- package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +5 -0
- package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface/index.d.ts +3 -0
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts +5 -0
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
- package/dist/types/src/capabilities/state/index.d.ts +3 -0
- package/dist/types/src/capabilities/state/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/state/state.d.ts +6 -0
- package/dist/types/src/capabilities/state/state.d.ts.map +1 -0
- package/dist/types/src/components/CommandsDialog/CommandsDialog.d.ts +3 -2
- package/dist/types/src/components/CommandsDialog/CommandsDialog.d.ts.map +1 -1
- package/dist/types/src/components/CommandsDialog/CommandsTrigger.d.ts.map +1 -1
- package/dist/types/src/components/NavTree/NavTree.d.ts +30 -1
- package/dist/types/src/components/NavTree/NavTree.d.ts.map +1 -1
- package/dist/types/src/components/NavTree/NavTree.stories.d.ts +29 -4
- package/dist/types/src/components/NavTree/NavTree.stories.d.ts.map +1 -1
- package/dist/types/src/components/NavTreeContainer.d.ts +8 -1
- package/dist/types/src/components/NavTreeContainer.d.ts.map +1 -1
- package/dist/types/src/components/NavTreeDocumentTitle.d.ts +1 -1
- package/dist/types/src/components/NavTreeDocumentTitle.d.ts.map +1 -1
- package/dist/types/src/components/NavTreeItem/NavTreeItemAction.d.ts +6 -6
- package/dist/types/src/components/NavTreeItem/NavTreeItemAction.d.ts.map +1 -1
- package/dist/types/src/components/NavTreeItem/NavTreeItemAction.stories.d.ts +33 -4
- package/dist/types/src/components/NavTreeItem/NavTreeItemAction.stories.d.ts.map +1 -1
- package/dist/types/src/components/NavTreeItem/NavTreeItemColumns.d.ts +1 -1
- package/dist/types/src/components/NavTreeItem/NavTreeItemColumns.d.ts.map +1 -1
- package/dist/types/src/components/Sidebar/L0Menu.d.ts +6 -4
- package/dist/types/src/components/Sidebar/L0Menu.d.ts.map +1 -1
- package/dist/types/src/components/Sidebar/L1Panel.d.ts +1 -1
- package/dist/types/src/components/Sidebar/L1Panel.d.ts.map +1 -1
- package/dist/types/src/components/Sidebar/L1Tabs.d.ts +2 -2
- package/dist/types/src/components/Sidebar/L1Tabs.d.ts.map +1 -1
- package/dist/types/src/components/UserAccountAvatar/UserAccountAvatar.d.ts.map +1 -1
- package/dist/types/src/components/UserAccountAvatar/UserAccountAvatar.stories.d.ts +8 -5
- package/dist/types/src/components/UserAccountAvatar/UserAccountAvatar.stories.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/components/types.d.ts +8 -8
- package/dist/types/src/components/types.d.ts.map +1 -1
- package/dist/types/src/experimental/Tree.d.ts +1 -2
- package/dist/types/src/experimental/Tree.d.ts.map +1 -1
- package/dist/types/src/experimental/Tree.stories.d.ts +7 -4
- package/dist/types/src/experimental/Tree.stories.d.ts.map +1 -1
- package/dist/types/src/hooks.d.ts +32 -1
- package/dist/types/src/hooks.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -2
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts +3 -4
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/testing/app-graph-builder.d.ts +2 -3
- package/dist/types/src/testing/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/testing/generator.d.ts +5 -6
- package/dist/types/src/testing/generator.d.ts.map +1 -1
- package/dist/types/src/testing/update-state.d.ts +2 -2
- package/dist/types/src/testing/update-state.d.ts.map +1 -1
- package/dist/types/src/types/capabilities.d.ts +16 -0
- package/dist/types/src/types/capabilities.d.ts.map +1 -0
- package/dist/types/src/types/events.d.ts +5 -0
- package/dist/types/src/types/events.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +4 -0
- package/dist/types/src/types/index.d.ts.map +1 -0
- package/dist/types/src/{types.d.ts → types/schema.d.ts} +10 -9
- package/dist/types/src/types/schema.d.ts.map +1 -0
- package/dist/types/src/util.d.ts +8 -9
- package/dist/types/src/util.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +56 -55
- package/src/NavTreePlugin.tsx +65 -83
- package/src/capabilities/app-graph-builder/app-graph-builder.ts +41 -0
- package/src/capabilities/app-graph-builder/index.ts +7 -0
- package/src/capabilities/index.ts +5 -9
- package/src/capabilities/keyboard/index.ts +7 -0
- package/src/capabilities/keyboard/keyboard.ts +65 -0
- package/src/capabilities/operation-resolver/index.ts +7 -0
- package/src/capabilities/operation-resolver/operation-resolver.ts +41 -0
- package/src/capabilities/react-surface/index.ts +7 -0
- package/src/capabilities/react-surface/react-surface.tsx +54 -0
- package/src/capabilities/state/index.ts +7 -0
- package/src/capabilities/state/state.ts +121 -0
- package/src/components/CommandsDialog/CommandsDialog.tsx +109 -98
- package/src/components/CommandsDialog/CommandsTrigger.tsx +6 -15
- package/src/components/NavTree/NavTree.stories.tsx +97 -92
- package/src/components/NavTree/NavTree.tsx +9 -15
- package/src/components/NavTreeContainer.tsx +280 -256
- package/src/components/NavTreeDocumentTitle.tsx +5 -4
- package/src/components/NavTreeItem/NavTreeItemAction.stories.tsx +20 -12
- package/src/components/NavTreeItem/NavTreeItemAction.tsx +25 -18
- package/src/components/NavTreeItem/NavTreeItemColumns.tsx +36 -29
- package/src/components/Sidebar/L0Menu.tsx +114 -139
- package/src/components/Sidebar/L1Panel.tsx +32 -35
- package/src/components/Sidebar/L1Tabs.tsx +7 -31
- package/src/components/UserAccountAvatar/UserAccountAvatar.stories.tsx +9 -8
- package/src/components/UserAccountAvatar/UserAccountAvatar.tsx +20 -12
- package/src/components/index.ts +1 -0
- package/src/components/types.ts +9 -8
- package/src/experimental/Tree.stories.tsx +28 -30
- package/src/experimental/Tree.tsx +7 -24
- package/src/hooks.ts +54 -2
- package/src/index.ts +1 -2
- package/src/meta.ts +11 -8
- package/src/testing/app-graph-builder.ts +159 -234
- package/src/testing/generator.ts +20 -18
- package/src/testing/update-state.ts +6 -6
- package/src/types/capabilities.ts +21 -0
- package/src/types/events.ts +11 -0
- package/src/types/index.ts +7 -0
- package/src/{types.ts → types/schema.ts} +9 -8
- package/src/util.ts +14 -35
- package/dist/lib/browser/app-graph-builder-5J4LRWDX.mjs +0 -45
- package/dist/lib/browser/app-graph-builder-5J4LRWDX.mjs.map +0 -7
- package/dist/lib/browser/chunk-ERDGQTH5.mjs +0 -16
- package/dist/lib/browser/chunk-ERDGQTH5.mjs.map +0 -7
- package/dist/lib/browser/chunk-WCARAZ7J.mjs +0 -15
- package/dist/lib/browser/chunk-WCARAZ7J.mjs.map +0 -7
- package/dist/lib/browser/chunk-WEMCSQI7.mjs +0 -1469
- package/dist/lib/browser/chunk-WEMCSQI7.mjs.map +0 -7
- package/dist/lib/browser/intent-resolver-3XYN2CBU.mjs +0 -47
- package/dist/lib/browser/intent-resolver-3XYN2CBU.mjs.map +0 -7
- package/dist/lib/browser/keyboard-QRS6WOQH.mjs.map +0 -7
- package/dist/lib/browser/react-surface-JSJ5SQX5.mjs +0 -51
- package/dist/lib/browser/react-surface-JSJ5SQX5.mjs.map +0 -7
- package/dist/lib/browser/state-54DY3DOY.mjs +0 -117
- package/dist/lib/browser/state-54DY3DOY.mjs.map +0 -7
- package/dist/types/src/capabilities/app-graph-builder.d.ts +0 -4
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +0 -1
- package/dist/types/src/capabilities/capabilities.d.ts +0 -21
- package/dist/types/src/capabilities/capabilities.d.ts.map +0 -1
- package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
- package/dist/types/src/capabilities/keyboard.d.ts +0 -4
- package/dist/types/src/capabilities/keyboard.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface.d.ts +0 -4
- package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
- package/dist/types/src/capabilities/state.d.ts +0 -20
- package/dist/types/src/capabilities/state.d.ts.map +0 -1
- package/dist/types/src/events.d.ts +0 -4
- package/dist/types/src/events.d.ts.map +0 -1
- package/dist/types/src/types.d.ts.map +0 -1
- package/src/capabilities/app-graph-builder.ts +0 -52
- package/src/capabilities/capabilities.ts +0 -20
- package/src/capabilities/intent-resolver.ts +0 -37
- package/src/capabilities/keyboard.ts +0 -59
- package/src/capabilities/react-surface.tsx +0 -45
- package/src/capabilities/state.ts +0 -104
- package/src/events.ts +0 -11
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
2
|
KEY_BINDING
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-YKTYPINZ.mjs";
|
|
4
4
|
|
|
5
|
-
// src/capabilities/keyboard.ts
|
|
6
|
-
import
|
|
5
|
+
// src/capabilities/keyboard/keyboard.ts
|
|
6
|
+
import * as Effect from "effect/Effect";
|
|
7
|
+
import { Capability, Common } from "@dxos/app-framework";
|
|
7
8
|
import { debounce } from "@dxos/async";
|
|
8
9
|
import { Keyboard } from "@dxos/keyboard";
|
|
9
|
-
import {
|
|
10
|
+
import { Graph, Node, runAction } from "@dxos/plugin-graph";
|
|
10
11
|
import { getHostPlatform } from "@dxos/util";
|
|
11
|
-
var keyboard_default = (
|
|
12
|
-
const { graph } =
|
|
12
|
+
var keyboard_default = Capability.makeModule(Effect.fnUntraced(function* () {
|
|
13
|
+
const { graph } = yield* Capability.get(Common.Capability.AppGraph);
|
|
14
|
+
const invoker = yield* Capability.get(Common.Capability.OperationInvoker);
|
|
15
|
+
const pluginContext = yield* Capability.Service;
|
|
13
16
|
const visitor = (node, path) => {
|
|
14
17
|
let shortcut;
|
|
15
18
|
if (typeof node.properties.keyBinding === "object") {
|
|
@@ -19,33 +22,31 @@ var keyboard_default = (context) => {
|
|
|
19
22
|
} else {
|
|
20
23
|
shortcut = node.properties.keyBinding;
|
|
21
24
|
}
|
|
22
|
-
if (shortcut && isAction(node)) {
|
|
25
|
+
if (shortcut && Node.isAction(node)) {
|
|
23
26
|
Keyboard.singleton.getContext(path.slice(0, -1).join("/")).bind({
|
|
24
27
|
shortcut,
|
|
25
|
-
handler: () => {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
});
|
|
30
|
-
},
|
|
28
|
+
handler: () => void runAction(invoker, pluginContext, node, {
|
|
29
|
+
parent: node,
|
|
30
|
+
caller: KEY_BINDING
|
|
31
|
+
}),
|
|
31
32
|
data: node.properties.label
|
|
32
33
|
});
|
|
33
34
|
}
|
|
34
35
|
};
|
|
35
36
|
const eventHandler = debounce(() => {
|
|
36
|
-
|
|
37
|
+
Graph.traverse(graph, {
|
|
37
38
|
visitor
|
|
38
39
|
});
|
|
39
40
|
}, 500);
|
|
40
41
|
const unsubscribe = graph.onNodeChanged.on(eventHandler);
|
|
41
42
|
Keyboard.singleton.initialize();
|
|
42
|
-
Keyboard.singleton.setCurrentContext(
|
|
43
|
-
return contributes(
|
|
43
|
+
Keyboard.singleton.setCurrentContext(Node.RootId);
|
|
44
|
+
return Capability.contributes(Common.Capability.Null, null, () => Effect.sync(() => {
|
|
44
45
|
unsubscribe();
|
|
45
46
|
Keyboard.singleton.destroy();
|
|
46
|
-
});
|
|
47
|
-
};
|
|
47
|
+
}));
|
|
48
|
+
}));
|
|
48
49
|
export {
|
|
49
50
|
keyboard_default as default
|
|
50
51
|
};
|
|
51
|
-
//# sourceMappingURL=keyboard-
|
|
52
|
+
//# sourceMappingURL=keyboard-32EH3N4K.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/keyboard/keyboard.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capability, Common } from '@dxos/app-framework';\nimport { debounce } from '@dxos/async';\nimport { Keyboard } from '@dxos/keyboard';\nimport { Graph, Node, runAction } from '@dxos/plugin-graph';\nimport { getHostPlatform } from '@dxos/util';\n\nimport { KEY_BINDING } from '../../meta';\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const { graph } = yield* Capability.get(Common.Capability.AppGraph);\n const invoker = yield* Capability.get(Common.Capability.OperationInvoker);\n const pluginContext = yield* Capability.Service;\n\n // TODO(wittjosiah): Factor out.\n // TODO(wittjosiah): Handle removal of actions.\n const visitor = (node: Node.Node, path: string[]) => {\n let shortcut: string | undefined;\n if (typeof node.properties.keyBinding === 'object') {\n const availablePlatforms = Object.keys(node.properties.keyBinding);\n const platform = getHostPlatform();\n shortcut = availablePlatforms.includes(platform)\n ? node.properties.keyBinding[platform]\n : platform === 'ios'\n ? node.properties.keyBinding.macos // Fallback to macos if ios-specific bindings not provided.\n : platform === 'linux' || platform === 'unknown'\n ? node.properties.keyBinding.windows // Fallback to windows if platform-specific bindings not provided.\n : undefined;\n } else {\n shortcut = node.properties.keyBinding;\n }\n\n if (shortcut && Node.isAction(node)) {\n Keyboard.singleton.getContext(path.slice(0, -1).join('/')).bind({\n shortcut,\n handler: () => void runAction(invoker, pluginContext, node, { parent: node, caller: KEY_BINDING }),\n data: node.properties.label,\n });\n }\n };\n\n const eventHandler = debounce(() => {\n Graph.traverse(graph, { visitor });\n }, 500);\n\n const unsubscribe = graph.onNodeChanged.on(eventHandler);\n\n // TODO(burdon): Create context and plugin.\n Keyboard.singleton.initialize();\n Keyboard.singleton.setCurrentContext(Node.RootId);\n\n return Capability.contributes(Common.Capability.Null, null, () =>\n Effect.sync(() => {\n unsubscribe();\n Keyboard.singleton.destroy();\n }),\n );\n }),\n);\n"],
|
|
5
|
+
"mappings": ";;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,YAAYC,cAAc;AACnC,SAASC,gBAAgB;AACzB,SAASC,gBAAgB;AACzB,SAASC,OAAOC,MAAMC,iBAAiB;AACvC,SAASC,uBAAuB;AAIhC,IAAA,mBAAeC,WAAWC,WACjBC,kBAAW,aAAA;AAChB,QAAM,EAAEC,MAAK,IAAK,OAAOH,WAAWI,IAAIC,OAAOL,WAAWM,QAAQ;AAClE,QAAMC,UAAU,OAAOP,WAAWI,IAAIC,OAAOL,WAAWQ,gBAAgB;AACxE,QAAMC,gBAAgB,OAAOT,WAAWU;AAIxC,QAAMC,UAAU,CAACC,MAAiBC,SAAAA;AAChC,QAAIC;AACJ,QAAI,OAAOF,KAAKG,WAAWC,eAAe,UAAU;AAClD,YAAMC,qBAAqBC,OAAOC,KAAKP,KAAKG,WAAWC,UAAU;AACjE,YAAMI,WAAWC,gBAAAA;AACjBP,iBAAWG,mBAAmBK,SAASF,QAAAA,IACnCR,KAAKG,WAAWC,WAAWI,QAAAA,IAC3BA,aAAa,QACXR,KAAKG,WAAWC,WAAWO,QAC3BH,aAAa,WAAWA,aAAa,YACnCR,KAAKG,WAAWC,WAAWQ,UAC3BC;IACV,OAAO;AACLX,iBAAWF,KAAKG,WAAWC;IAC7B;AAEA,QAAIF,YAAYY,KAAKC,SAASf,IAAAA,GAAO;AACnCgB,eAASC,UAAUC,WAAWjB,KAAKkB,MAAM,GAAG,EAAC,EAAGC,KAAK,GAAA,CAAA,EAAMC,KAAK;QAC9DnB;QACAoB,SAAS,MAAM,KAAKC,UAAU5B,SAASE,eAAeG,MAAM;UAAEwB,QAAQxB;UAAMyB,QAAQC;QAAY,CAAA;QAChGC,MAAM3B,KAAKG,WAAWyB;MACxB,CAAA;IACF;EACF;AAEA,QAAMC,eAAeC,SAAS,MAAA;AAC5BC,UAAMC,SAASzC,OAAO;MAAEQ;IAAQ,CAAA;EAClC,GAAG,GAAA;AAEH,QAAMkC,cAAc1C,MAAM2C,cAAcC,GAAGN,YAAAA;AAG3Cb,WAASC,UAAUmB,WAAU;AAC7BpB,WAASC,UAAUoB,kBAAkBvB,KAAKwB,MAAM;AAEhD,SAAOlD,WAAWmD,YAAY9C,OAAOL,WAAWoD,MAAM,MAAM,MACnDC,YAAK,MAAA;AACVR,gBAAAA;AACAjB,aAASC,UAAUyB,QAAO;EAC5B,CAAA,CAAA;AAEJ,CAAA,CAAA;",
|
|
6
|
+
"names": ["Effect", "Capability", "Common", "debounce", "Keyboard", "Graph", "Node", "runAction", "getHostPlatform", "Capability", "makeModule", "fnUntraced", "graph", "get", "Common", "AppGraph", "invoker", "OperationInvoker", "pluginContext", "Service", "visitor", "node", "path", "shortcut", "properties", "keyBinding", "availablePlatforms", "Object", "keys", "platform", "getHostPlatform", "includes", "macos", "windows", "undefined", "Node", "isAction", "Keyboard", "singleton", "getContext", "slice", "join", "bind", "handler", "runAction", "parent", "caller", "KEY_BINDING", "data", "label", "eventHandler", "debounce", "Graph", "traverse", "unsubscribe", "onNodeChanged", "on", "initialize", "setCurrentContext", "RootId", "contributes", "Null", "sync", "destroy"]
|
|
7
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"inputs":{"src/meta.ts":{"bytes":1521,"imports":[],"format":"esm"},"src/capabilities/capabilities.ts":{"bytes":2100,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/capabilities/app-graph-builder.ts":{"bytes":6324,"imports":[{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/capabilities/intent-resolver.ts":{"bytes":5180,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"}],"format":"esm"},"src/capabilities/keyboard.ts":{"bytes":7660,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/keyboard","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/components/CommandsDialog/CommandsDialog.tsx":{"bytes":17728,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"@dxos/keyboard","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-searchlist","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/components/CommandsDialog/CommandsTrigger.tsx":{"bytes":4164,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/components/CommandsDialog/index.ts":{"bytes":609,"imports":[{"path":"src/components/CommandsDialog/CommandsDialog.tsx","kind":"import-statement","original":"./CommandsDialog"},{"path":"src/components/CommandsDialog/CommandsTrigger.tsx","kind":"import-statement","original":"./CommandsTrigger"}],"format":"esm"},"src/hooks.ts":{"bytes":1931,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"src/components/index.ts","kind":"import-statement","original":"./components"}],"format":"esm"},"src/components/NavTreeContext.tsx":{"bytes":1463,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"src/util.ts":{"bytes":11907,"imports":[{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/components/UserAccountAvatar/UserAccountAvatar.tsx":{"bytes":3374,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/components/UserAccountAvatar/index.ts":{"bytes":512,"imports":[{"path":"src/components/UserAccountAvatar/UserAccountAvatar.tsx","kind":"import-statement","original":"./UserAccountAvatar"}],"format":"esm"},"src/components/Sidebar/L0Menu.tsx":{"bytes":50652,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/combine","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/adapter","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/preserve-offset-on-source","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/scroll-just-enough-into-view","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/hooks.ts","kind":"import-statement","original":"../../hooks"},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/util.ts","kind":"import-statement","original":"../../util"},{"path":"src/components/NavTreeContext.tsx","kind":"import-statement","original":"../NavTreeContext"},{"path":"src/components/UserAccountAvatar/index.ts","kind":"import-statement","original":"../UserAccountAvatar"}],"format":"esm"},"src/components/NavTreeItem/NavTreeItemAction.tsx":{"bytes":12037,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/components/NavTreeItem/NavTreeItemColumns.tsx":{"bytes":10880,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"src/components/NavTreeItem/NavTreeItemAction.tsx","kind":"import-statement","original":"./NavTreeItemAction"},{"path":"src/hooks.ts","kind":"import-statement","original":"../../hooks"},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/components/NavTree/index.ts","kind":"import-statement","original":"../NavTree"},{"path":"src/components/NavTreeContext.tsx","kind":"import-statement","original":"../NavTreeContext"}],"format":"esm"},"src/components/NavTreeItem/index.ts":{"bytes":620,"imports":[{"path":"src/components/NavTreeItem/NavTreeItemAction.tsx","kind":"import-statement","original":"./NavTreeItemAction"},{"path":"src/components/NavTreeItem/NavTreeItemColumns.tsx","kind":"import-statement","original":"./NavTreeItemColumns"}],"format":"esm"},"src/components/Sidebar/L1Panel.tsx":{"bytes":19508,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/components/NavTreeContext.tsx","kind":"import-statement","original":"../NavTreeContext"},{"path":"src/components/NavTreeItem/index.ts","kind":"import-statement","original":"../NavTreeItem"}],"format":"esm"},"src/components/Sidebar/L1Tabs.tsx":{"bytes":5990,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"src/hooks.ts","kind":"import-statement","original":"../../hooks"},{"path":"src/util.ts","kind":"import-statement","original":"../../util"},{"path":"src/components/NavTreeContext.tsx","kind":"import-statement","original":"../NavTreeContext"},{"path":"src/components/Sidebar/L1Panel.tsx","kind":"import-statement","original":"./L1Panel"}],"format":"esm"},"src/components/Sidebar/index.ts":{"bytes":644,"imports":[{"path":"src/components/Sidebar/L0Menu.tsx","kind":"import-statement","original":"./L0Menu"},{"path":"src/components/Sidebar/L1Panel.tsx","kind":"import-statement","original":"./L1Panel"},{"path":"src/components/Sidebar/L1Tabs.tsx","kind":"import-statement","original":"./L1Tabs"}],"format":"esm"},"src/components/NavTree/NavTree.tsx":{"bytes":8093,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"src/hooks.ts","kind":"import-statement","original":"../../hooks"},{"path":"src/components/NavTreeContext.tsx","kind":"import-statement","original":"../NavTreeContext"},{"path":"src/components/Sidebar/index.ts","kind":"import-statement","original":"../Sidebar"}],"format":"esm"},"src/components/NavTree/index.ts":{"bytes":476,"imports":[{"path":"src/components/NavTree/NavTree.tsx","kind":"import-statement","original":"./NavTree"}],"format":"esm"},"src/components/NavTreeContainer.tsx":{"bytes":41492,"imports":[{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/adapter","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop-hitbox/tree-item","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/components/NavTree/index.ts","kind":"import-statement","original":"./NavTree"},{"path":"src/components/NavTreeContext.tsx","kind":"import-statement","original":"./NavTreeContext"},{"path":"src/capabilities/index.ts","kind":"import-statement","original":"../capabilities"},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"src/util.ts","kind":"import-statement","original":"../util"}],"format":"esm"},"src/components/NavTreeDocumentTitle.tsx":{"bytes":2226,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/components/index.ts":{"bytes":948,"imports":[{"path":"src/components/CommandsDialog/index.ts","kind":"import-statement","original":"./CommandsDialog"},{"path":"src/components/NavTree/index.ts","kind":"import-statement","original":"./NavTree"},{"path":"src/components/NavTreeContainer.tsx","kind":"import-statement","original":"./NavTreeContainer"},{"path":"src/components/NavTreeContext.tsx","kind":"import-statement","original":"./NavTreeContext"},{"path":"src/components/NavTreeDocumentTitle.tsx","kind":"import-statement","original":"./NavTreeDocumentTitle"}],"format":"esm"},"src/capabilities/react-surface.tsx":{"bytes":5747,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/capabilities/state.ts":{"bytes":13346,"imports":[{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/capabilities/index.ts":{"bytes":1815,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/capabilities/app-graph-builder.ts","kind":"dynamic-import","original":"./app-graph-builder"},{"path":"src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"src/capabilities/keyboard.ts","kind":"dynamic-import","original":"./keyboard"},{"path":"src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"},{"path":"src/capabilities/state.ts","kind":"dynamic-import","original":"./state"}],"format":"esm"},"src/events.ts":{"bytes":1146,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"src/translations.ts":{"bytes":2272,"imports":[{"path":"src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"src/NavTreePlugin.tsx":{"bytes":12099,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"src/events.ts","kind":"import-statement","original":"./events"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/translations.ts","kind":"import-statement","original":"./translations"}],"format":"esm"},"src/index.ts":{"bytes":983,"imports":[{"path":"src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/events.ts","kind":"import-statement","original":"./events"},{"path":"src/NavTreePlugin.tsx","kind":"import-statement","original":"./NavTreePlugin"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/util.ts","kind":"import-statement","original":"./util"}],"format":"esm"}},"outputs":{"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7255},"dist/lib/browser/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-WEMCSQI7.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-WCARAZ7J.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-ERDGQTH5.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["COMMANDS_DIALOG","KEY_BINDING","NAVTREE_PLUGIN","NavTreeCapabilities","NavTreeEvents","NavTreePlugin","getActions","getChildren","getParent","getPersistenceParent","l0ItemType","meta","resolveMigrationOperation","sortActions"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/events.ts":{"bytesInOutput":207},"src/NavTreePlugin.tsx":{"bytesInOutput":2457},"src/translations.ts":{"bytesInOutput":516}},"bytes":3972},"dist/lib/browser/app-graph-builder-5J4LRWDX.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3195},"dist/lib/browser/app-graph-builder-5J4LRWDX.mjs":{"imports":[{"path":"dist/lib/browser/chunk-ERDGQTH5.mjs","kind":"import-statement"},{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/app-graph-builder.ts","inputs":{"src/capabilities/app-graph-builder.ts":{"bytesInOutput":1220}},"bytes":1445},"dist/lib/browser/intent-resolver-3XYN2CBU.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2663},"dist/lib/browser/intent-resolver-3XYN2CBU.mjs":{"imports":[{"path":"dist/lib/browser/chunk-WCARAZ7J.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-ERDGQTH5.mjs","kind":"import-statement"},{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/intent-resolver.ts","inputs":{"src/capabilities/intent-resolver.ts":{"bytesInOutput":1220}},"bytes":1456},"dist/lib/browser/keyboard-QRS6WOQH.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3966},"dist/lib/browser/keyboard-QRS6WOQH.mjs":{"imports":[{"path":"dist/lib/browser/chunk-ERDGQTH5.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/keyboard","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/keyboard.ts","inputs":{"src/capabilities/keyboard.ts":{"bytesInOutput":1588}},"bytes":1764},"dist/lib/browser/react-surface-JSJ5SQX5.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2882},"dist/lib/browser/react-surface-JSJ5SQX5.mjs":{"imports":[{"path":"dist/lib/browser/chunk-WEMCSQI7.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-WCARAZ7J.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-ERDGQTH5.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/react-surface.tsx","inputs":{"src/capabilities/react-surface.tsx":{"bytesInOutput":1246}},"bytes":1618},"dist/lib/browser/chunk-WEMCSQI7.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":96606},"dist/lib/browser/chunk-WEMCSQI7.mjs":{"imports":[{"path":"dist/lib/browser/chunk-WCARAZ7J.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-ERDGQTH5.mjs","kind":"import-statement"},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"@dxos/keyboard","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-searchlist","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/adapter","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop-hitbox/tree-item","kind":"import-statement","external":true},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/combine","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/adapter","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/preserve-offset-on-source","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/scroll-just-enough-into-view","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/react-ui-theme","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@preact-signals/safe-react/tracking","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/browser/app-graph-builder-5J4LRWDX.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/intent-resolver-3XYN2CBU.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/keyboard-QRS6WOQH.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/react-surface-JSJ5SQX5.mjs","kind":"dynamic-import"},{"path":"dist/lib/browser/state-54DY3DOY.mjs","kind":"dynamic-import"}],"exports":["AppGraphBuilder","CommandsDialogContent","CommandsTrigger","IntentResolver","Keyboard","NODE_TYPE","NavTreeContainer","NavTreeDocumentTitle","ReactSurface","State","getActions","getChildren","getParent","getPersistenceParent","l0ItemType","resolveMigrationOperation","sortActions"],"inputs":{"src/components/CommandsDialog/CommandsDialog.tsx":{"bytesInOutput":4596},"src/components/CommandsDialog/CommandsTrigger.tsx":{"bytesInOutput":1159},"src/util.ts":{"bytesInOutput":2599},"src/components/NavTreeContainer.tsx":{"bytesInOutput":10505},"src/components/NavTree/NavTree.tsx":{"bytesInOutput":2079},"src/hooks.ts":{"bytesInOutput":349},"src/components/CommandsDialog/index.ts":{"bytesInOutput":0},"src/components/index.ts":{"bytesInOutput":0},"src/components/NavTreeContext.tsx":{"bytesInOutput":250},"src/components/NavTreeDocumentTitle.tsx":{"bytesInOutput":441},"src/components/Sidebar/L0Menu.tsx":{"bytesInOutput":14382},"src/components/UserAccountAvatar/UserAccountAvatar.tsx":{"bytesInOutput":876},"src/components/UserAccountAvatar/index.ts":{"bytesInOutput":0},"src/components/Sidebar/index.ts":{"bytesInOutput":0},"src/components/Sidebar/L1Panel.tsx":{"bytesInOutput":5477},"src/components/NavTreeItem/NavTreeItemAction.tsx":{"bytesInOutput":3349},"src/components/NavTreeItem/index.ts":{"bytesInOutput":0},"src/components/NavTreeItem/NavTreeItemColumns.tsx":{"bytesInOutput":2855},"src/components/Sidebar/L1Tabs.tsx":{"bytesInOutput":1513},"src/components/NavTree/index.ts":{"bytesInOutput":0},"src/capabilities/index.ts":{"bytesInOutput":387}},"bytes":52131},"dist/lib/browser/state-54DY3DOY.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6902},"dist/lib/browser/state-54DY3DOY.mjs":{"imports":[{"path":"dist/lib/browser/chunk-WCARAZ7J.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-ERDGQTH5.mjs","kind":"import-statement"},{"path":"@preact/signals-core","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/state.ts","inputs":{"src/capabilities/state.ts":{"bytesInOutput":2786}},"bytes":3018},"dist/lib/browser/chunk-WCARAZ7J.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1233},"dist/lib/browser/chunk-WCARAZ7J.mjs":{"imports":[{"path":"dist/lib/browser/chunk-ERDGQTH5.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["NavTreeCapabilities"],"inputs":{"src/capabilities/capabilities.ts":{"bytesInOutput":257}},"bytes":430},"dist/lib/browser/chunk-ERDGQTH5.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":721},"dist/lib/browser/chunk-ERDGQTH5.mjs":{"imports":[],"exports":["COMMANDS_DIALOG","KEY_BINDING","NAVTREE_PLUGIN","meta"],"inputs":{"src/meta.ts":{"bytesInOutput":194}},"bytes":325}}}
|
|
1
|
+
{"inputs":{"src/meta.ts":{"bytes":2000,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/types/capabilities.ts":{"bytes":1801,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/types/events.ts":{"bytes":1272,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/types/schema.ts":{"bytes":2787,"imports":[],"format":"esm"},"src/types/index.ts":{"bytes":644,"imports":[{"path":"src/types/capabilities.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/types/events.ts","kind":"import-statement","original":"./events"},{"path":"src/types/schema.ts","kind":"import-statement","original":"./schema"}],"format":"esm"},"src/capabilities/app-graph-builder/app-graph-builder.ts":{"bytes":4751,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/capabilities/app-graph-builder/index.ts":{"bytes":945,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/app-graph-builder/app-graph-builder.ts","kind":"dynamic-import","original":"./app-graph-builder"}],"format":"esm"},"src/capabilities/keyboard/keyboard.ts":{"bytes":8773,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/keyboard","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/capabilities/keyboard/index.ts":{"bytes":865,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/keyboard/keyboard.ts","kind":"dynamic-import","original":"./keyboard"}],"format":"esm"},"src/capabilities/operation-resolver/operation-resolver.ts":{"bytes":6036,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"src/types/index.ts","kind":"import-statement","original":"../../types"}],"format":"esm"},"src/capabilities/operation-resolver/index.ts":{"bytes":963,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/operation-resolver/operation-resolver.ts","kind":"dynamic-import","original":"./operation-resolver"}],"format":"esm"},"src/components/CommandsDialog/CommandsDialog.tsx":{"bytes":17998,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/react","kind":"import-statement","external":true},{"path":"@dxos/keyboard","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-searchlist","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/components/CommandsDialog/CommandsTrigger.tsx":{"bytes":3543,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/components/CommandsDialog/index.ts":{"bytes":609,"imports":[{"path":"src/components/CommandsDialog/CommandsDialog.tsx","kind":"import-statement","original":"./CommandsDialog"},{"path":"src/components/CommandsDialog/CommandsTrigger.tsx","kind":"import-statement","original":"./CommandsTrigger"}],"format":"esm"},"src/hooks.ts":{"bytes":7439,"imports":[{"path":"@effect-atom/atom-react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/react","kind":"import-statement","external":true},{"path":"src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/components/NavTreeContext.tsx":{"bytes":1463,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"src/util.ts":{"bytes":9613,"imports":[{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/components/UserAccountAvatar/UserAccountAvatar.tsx":{"bytes":3853,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/components/Sidebar/index.ts","kind":"import-statement","original":"../Sidebar"}],"format":"esm"},"src/components/UserAccountAvatar/index.ts":{"bytes":512,"imports":[{"path":"src/components/UserAccountAvatar/UserAccountAvatar.tsx","kind":"import-statement","original":"./UserAccountAvatar"}],"format":"esm"},"src/components/Sidebar/L0Menu.tsx":{"bytes":44772,"imports":[{"path":"@atlaskit/pragmatic-drag-and-drop/combine","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/adapter","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/preserve-offset-on-source","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/scroll-just-enough-into-view","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/lit-ui/react","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/hooks.ts","kind":"import-statement","original":"../../hooks"},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/util.ts","kind":"import-statement","original":"../../util"},{"path":"src/components/NavTreeContext.tsx","kind":"import-statement","original":"../NavTreeContext"},{"path":"src/components/UserAccountAvatar/index.ts","kind":"import-statement","original":"../UserAccountAvatar"}],"format":"esm"},"src/components/NavTreeItem/NavTreeItemAction.tsx":{"bytes":11989,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/components/NavTreeItem/NavTreeItemColumns.tsx":{"bytes":11117,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"src/hooks.ts","kind":"import-statement","original":"../../hooks"},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/components/NavTree/index.ts","kind":"import-statement","original":"../NavTree"},{"path":"src/components/NavTreeContext.tsx","kind":"import-statement","original":"../NavTreeContext"},{"path":"src/components/NavTreeItem/NavTreeItemAction.tsx","kind":"import-statement","original":"./NavTreeItemAction"}],"format":"esm"},"src/components/NavTreeItem/index.ts":{"bytes":620,"imports":[{"path":"src/components/NavTreeItem/NavTreeItemAction.tsx","kind":"import-statement","original":"./NavTreeItemAction"},{"path":"src/components/NavTreeItem/NavTreeItemColumns.tsx","kind":"import-statement","original":"./NavTreeItemColumns"}],"format":"esm"},"src/components/Sidebar/L1Panel.tsx":{"bytes":18339,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"src/hooks.ts","kind":"import-statement","original":"../../hooks"},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/components/NavTreeContext.tsx","kind":"import-statement","original":"../NavTreeContext"},{"path":"src/components/NavTreeItem/index.ts","kind":"import-statement","original":"../NavTreeItem"}],"format":"esm"},"src/components/Sidebar/L1Tabs.tsx":{"bytes":2585,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"src/util.ts","kind":"import-statement","original":"../../util"},{"path":"src/components/Sidebar/L1Panel.tsx","kind":"import-statement","original":"./L1Panel"}],"format":"esm"},"src/components/Sidebar/index.ts":{"bytes":644,"imports":[{"path":"src/components/Sidebar/L0Menu.tsx","kind":"import-statement","original":"./L0Menu"},{"path":"src/components/Sidebar/L1Panel.tsx","kind":"import-statement","original":"./L1Panel"},{"path":"src/components/Sidebar/L1Tabs.tsx","kind":"import-statement","original":"./L1Tabs"}],"format":"esm"},"src/components/NavTree/NavTree.tsx":{"bytes":7744,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"src/hooks.ts","kind":"import-statement","original":"../../hooks"},{"path":"src/components/NavTreeContext.tsx","kind":"import-statement","original":"../NavTreeContext"},{"path":"src/components/Sidebar/index.ts","kind":"import-statement","original":"../Sidebar"}],"format":"esm"},"src/components/NavTree/index.ts":{"bytes":476,"imports":[{"path":"src/components/NavTree/NavTree.tsx","kind":"import-statement","original":"./NavTree"}],"format":"esm"},"src/components/NavTreeContainer.tsx":{"bytes":43884,"imports":[{"path":"@atlaskit/pragmatic-drag-and-drop/element/adapter","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop-hitbox/tree-item","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/react","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/hooks.ts","kind":"import-statement","original":"../hooks"},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"src/util.ts","kind":"import-statement","original":"../util"},{"path":"src/components/NavTree/index.ts","kind":"import-statement","original":"./NavTree"},{"path":"src/components/NavTreeContext.tsx","kind":"import-statement","original":"./NavTreeContext"}],"format":"esm"},"src/components/NavTreeDocumentTitle.tsx":{"bytes":2392,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"src/components/index.ts":{"bytes":948,"imports":[{"path":"src/components/CommandsDialog/index.ts","kind":"import-statement","original":"./CommandsDialog"},{"path":"src/components/NavTree/index.ts","kind":"import-statement","original":"./NavTree"},{"path":"src/components/NavTreeContainer.tsx","kind":"import-statement","original":"./NavTreeContainer"},{"path":"src/components/NavTreeContext.tsx","kind":"import-statement","original":"./NavTreeContext"},{"path":"src/components/NavTreeDocumentTitle.tsx","kind":"import-statement","original":"./NavTreeDocumentTitle"}],"format":"esm"},"src/capabilities/react-surface/react-surface.tsx":{"bytes":6695,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"src/components/index.ts","kind":"import-statement","original":"../../components"},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"}],"format":"esm"},"src/capabilities/react-surface/index.ts":{"bytes":911,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/react-surface/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"src/capabilities/state/state.ts":{"bytes":15462,"imports":[{"path":"@effect-atom/atom-react","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"../../meta"},{"path":"src/types/index.ts","kind":"import-statement","original":"../../types"}],"format":"esm"},"src/capabilities/state/index.ts":{"bytes":837,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/state/state.ts","kind":"dynamic-import","original":"./state"}],"format":"esm"},"src/capabilities/index.ts":{"bytes":880,"imports":[{"path":"src/capabilities/app-graph-builder/index.ts","kind":"import-statement","original":"./app-graph-builder"},{"path":"src/capabilities/keyboard/index.ts","kind":"import-statement","original":"./keyboard"},{"path":"src/capabilities/operation-resolver/index.ts","kind":"import-statement","original":"./operation-resolver"},{"path":"src/capabilities/react-surface/index.ts","kind":"import-statement","original":"./react-surface"},{"path":"src/capabilities/state/index.ts","kind":"import-statement","original":"./state"}],"format":"esm"},"src/translations.ts":{"bytes":2272,"imports":[{"path":"src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"src/NavTreePlugin.tsx":{"bytes":10447,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"src/components/index.ts","kind":"import-statement","original":"./components"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"src/types/index.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"src/index.ts":{"bytes":881,"imports":[{"path":"src/types/index.ts","kind":"import-statement","original":"./types"},{"path":"src/NavTreePlugin.tsx","kind":"import-statement","original":"./NavTreePlugin"},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"src/util.ts","kind":"import-statement","original":"./util"}],"format":"esm"}},"outputs":{"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":8110},"dist/lib/browser/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-6YPQ625I.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-AGQDZBPL.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-YKTYPINZ.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/browser/app-graph-builder-RSMA6I22.mjs","kind":"dynamic-import"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/browser/keyboard-32EH3N4K.mjs","kind":"dynamic-import"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/browser/operation-resolver-IB75DC5O.mjs","kind":"dynamic-import"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/browser/react-surface-F6CVMS3Y.mjs","kind":"dynamic-import"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/browser/state-EVYQOUI3.mjs","kind":"dynamic-import"}],"exports":["COMMANDS_DIALOG","KEY_BINDING","NavTreeCapabilities","NavTreeEvents","NavTreePlugin","getChildren","getParent","getPersistenceParent","l0ItemType","meta","resolveMigrationOperation","sortActions"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0},"src/NavTreePlugin.tsx":{"bytesInOutput":2096},"src/capabilities/app-graph-builder/index.ts":{"bytesInOutput":158},"src/capabilities/index.ts":{"bytesInOutput":0},"src/capabilities/keyboard/index.ts":{"bytesInOutput":151},"src/capabilities/operation-resolver/index.ts":{"bytesInOutput":179},"src/capabilities/react-surface/index.ts":{"bytesInOutput":164},"src/capabilities/state/index.ts":{"bytesInOutput":142},"src/translations.ts":{"bytesInOutput":516}},"bytes":4275},"dist/lib/browser/app-graph-builder-RSMA6I22.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2358},"dist/lib/browser/app-graph-builder-RSMA6I22.mjs":{"imports":[{"path":"dist/lib/browser/chunk-YKTYPINZ.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/app-graph-builder/app-graph-builder.ts","inputs":{"src/capabilities/app-graph-builder/app-graph-builder.ts":{"bytesInOutput":1034}},"bytes":1267},"dist/lib/browser/keyboard-32EH3N4K.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4576},"dist/lib/browser/keyboard-32EH3N4K.mjs":{"imports":[{"path":"dist/lib/browser/chunk-YKTYPINZ.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/keyboard","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/keyboard/keyboard.ts","inputs":{"src/capabilities/keyboard/keyboard.ts":{"bytesInOutput":1832}},"bytes":2017},"dist/lib/browser/operation-resolver-IB75DC5O.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2994},"dist/lib/browser/operation-resolver-IB75DC5O.mjs":{"imports":[{"path":"dist/lib/browser/chunk-AGQDZBPL.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-YKTYPINZ.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/operation","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/operation-resolver/operation-resolver.ts","inputs":{"src/capabilities/operation-resolver/operation-resolver.ts":{"bytesInOutput":1567}},"bytes":1831},"dist/lib/browser/react-surface-F6CVMS3Y.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3323},"dist/lib/browser/react-surface-F6CVMS3Y.mjs":{"imports":[{"path":"dist/lib/browser/chunk-6YPQ625I.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-AGQDZBPL.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-YKTYPINZ.mjs","kind":"import-statement"},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/react-surface/react-surface.tsx","inputs":{"src/capabilities/react-surface/react-surface.tsx":{"bytesInOutput":1406}},"bytes":1782},"dist/lib/browser/chunk-6YPQ625I.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":97347},"dist/lib/browser/chunk-6YPQ625I.mjs":{"imports":[{"path":"dist/lib/browser/chunk-AGQDZBPL.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-YKTYPINZ.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/react","kind":"import-statement","external":true},{"path":"@dxos/keyboard","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-searchlist","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/adapter","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop-hitbox/tree-item","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework/react","kind":"import-statement","external":true},{"path":"@dxos/plugin-deck/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@effect-atom/atom-react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/combine","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/adapter","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/preserve-offset-on-source","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop/element/scroll-just-enough-into-view","kind":"import-statement","external":true},{"path":"@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/lit-ui/react","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true},{"path":"@dxos/react-ui-tabs","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/plugin-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-menu","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/ui-theme","kind":"import-statement","external":true}],"exports":["CommandsDialogContent","CommandsTrigger","NODE_TYPE","NavTreeContainer","NavTreeDocumentTitle","getChildren","getParent","getPersistenceParent","l0ItemType","resolveMigrationOperation","sortActions"],"inputs":{"src/components/CommandsDialog/CommandsDialog.tsx":{"bytesInOutput":4236},"src/components/CommandsDialog/CommandsTrigger.tsx":{"bytesInOutput":885},"src/util.ts":{"bytesInOutput":2054},"src/components/NavTreeContainer.tsx":{"bytesInOutput":10474},"src/hooks.ts":{"bytesInOutput":1129},"src/components/CommandsDialog/index.ts":{"bytesInOutput":0},"src/components/index.ts":{"bytesInOutput":0},"src/components/NavTree/NavTree.tsx":{"bytesInOutput":1979},"src/components/NavTreeContext.tsx":{"bytesInOutput":250},"src/components/Sidebar/L0Menu.tsx":{"bytesInOutput":11770},"src/components/UserAccountAvatar/UserAccountAvatar.tsx":{"bytesInOutput":902},"src/components/UserAccountAvatar/index.ts":{"bytesInOutput":0},"src/components/Sidebar/index.ts":{"bytesInOutput":0},"src/components/Sidebar/L1Panel.tsx":{"bytesInOutput":4867},"src/components/NavTreeItem/NavTreeItemAction.tsx":{"bytesInOutput":3098},"src/components/NavTreeItem/index.ts":{"bytesInOutput":0},"src/components/NavTreeItem/NavTreeItemColumns.tsx":{"bytesInOutput":2814},"src/components/Sidebar/L1Tabs.tsx":{"bytesInOutput":417},"src/components/NavTree/index.ts":{"bytesInOutput":0},"src/components/NavTreeDocumentTitle.tsx":{"bytesInOutput":509}},"bytes":46549},"dist/lib/browser/state-EVYQOUI3.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7966},"dist/lib/browser/state-EVYQOUI3.mjs":{"imports":[{"path":"dist/lib/browser/chunk-AGQDZBPL.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-YKTYPINZ.mjs","kind":"import-statement"},{"path":"@effect-atom/atom-react","kind":"import-statement","external":true},{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-ui-list","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/state/state.ts","inputs":{"src/capabilities/state/state.ts":{"bytesInOutput":3061}},"bytes":3289},"dist/lib/browser/chunk-AGQDZBPL.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1566},"dist/lib/browser/chunk-AGQDZBPL.mjs":{"imports":[{"path":"dist/lib/browser/chunk-YKTYPINZ.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true}],"exports":["NavTreeCapabilities","NavTreeEvents"],"inputs":{"src/types/capabilities.ts":{"bytesInOutput":243},"src/types/events.ts":{"bytesInOutput":216},"src/types/index.ts":{"bytesInOutput":0}},"bytes":656},"dist/lib/browser/chunk-YKTYPINZ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":929},"dist/lib/browser/chunk-YKTYPINZ.mjs":{"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["COMMANDS_DIALOG","KEY_BINDING","meta"],"inputs":{"src/meta.ts":{"bytesInOutput":384}},"bytes":497}}}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import {
|
|
2
|
+
NavTreeCapabilities
|
|
3
|
+
} from "./chunk-AGQDZBPL.mjs";
|
|
4
|
+
import "./chunk-YKTYPINZ.mjs";
|
|
5
|
+
|
|
6
|
+
// src/capabilities/operation-resolver/operation-resolver.ts
|
|
7
|
+
import * as Effect from "effect/Effect";
|
|
8
|
+
import { Capability, Common } from "@dxos/app-framework";
|
|
9
|
+
import { log } from "@dxos/log";
|
|
10
|
+
import { OperationResolver } from "@dxos/operation";
|
|
11
|
+
import { Graph } from "@dxos/plugin-graph";
|
|
12
|
+
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-navtree/src/capabilities/operation-resolver/operation-resolver.ts";
|
|
13
|
+
var operation_resolver_default = Capability.makeModule(Effect.fnUntraced(function* () {
|
|
14
|
+
return Capability.contributes(Common.Capability.OperationResolver, [
|
|
15
|
+
OperationResolver.make({
|
|
16
|
+
operation: Common.LayoutOperation.Expose,
|
|
17
|
+
handler: Effect.fnUntraced(function* ({ subject }) {
|
|
18
|
+
const { graph } = yield* Capability.get(Common.Capability.AppGraph);
|
|
19
|
+
const { getItem, setItem } = yield* Capability.get(NavTreeCapabilities.State);
|
|
20
|
+
yield* Effect.tryPromise(() => Graph.waitForPath(graph, {
|
|
21
|
+
target: subject
|
|
22
|
+
}, {
|
|
23
|
+
timeout: 1e3
|
|
24
|
+
})).pipe(Effect.andThen((path) => {
|
|
25
|
+
[
|
|
26
|
+
...Array(path.length)
|
|
27
|
+
].forEach((_, index) => {
|
|
28
|
+
const subpath = path.slice(0, index);
|
|
29
|
+
const value = getItem(subpath);
|
|
30
|
+
if (!value.open) {
|
|
31
|
+
setItem(subpath, "open", true);
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
}), Effect.catchAll(() => {
|
|
35
|
+
log("Path to node not found", {
|
|
36
|
+
subject
|
|
37
|
+
}, {
|
|
38
|
+
F: __dxlog_file,
|
|
39
|
+
L: 33,
|
|
40
|
+
S: this,
|
|
41
|
+
C: (f, a) => f(...a)
|
|
42
|
+
});
|
|
43
|
+
return Effect.void;
|
|
44
|
+
}));
|
|
45
|
+
})
|
|
46
|
+
})
|
|
47
|
+
]);
|
|
48
|
+
}));
|
|
49
|
+
export {
|
|
50
|
+
operation_resolver_default as default
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=operation-resolver-IB75DC5O.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/operation-resolver/operation-resolver.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capability, Common } from '@dxos/app-framework';\nimport { log } from '@dxos/log';\nimport { OperationResolver } from '@dxos/operation';\nimport { Graph } from '@dxos/plugin-graph';\n\nimport { NavTreeCapabilities } from '../../types';\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n return Capability.contributes(Common.Capability.OperationResolver, [\n OperationResolver.make({\n operation: Common.LayoutOperation.Expose,\n handler: Effect.fnUntraced(function* ({ subject }) {\n const { graph } = yield* Capability.get(Common.Capability.AppGraph);\n const { getItem, setItem } = yield* Capability.get(NavTreeCapabilities.State);\n yield* Effect.tryPromise(() => Graph.waitForPath(graph, { target: subject }, { timeout: 1_000 })).pipe(\n Effect.andThen((path) => {\n [...Array(path.length)].forEach((_, index) => {\n const subpath = path.slice(0, index);\n const value = getItem(subpath);\n if (!value.open) {\n setItem(subpath, 'open', true);\n }\n });\n }),\n Effect.catchAll(() => {\n log('Path to node not found', { subject });\n return Effect.void;\n }),\n );\n }),\n }),\n ]);\n }),\n);\n"],
|
|
5
|
+
"mappings": ";;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,YAAYC,cAAc;AACnC,SAASC,WAAW;AACpB,SAASC,yBAAyB;AAClC,SAASC,aAAa;;AAItB,IAAA,6BAAeC,WAAWC,WACjBC,kBAAW,aAAA;AAChB,SAAOF,WAAWG,YAAYC,OAAOJ,WAAWK,mBAAmB;IACjEA,kBAAkBC,KAAK;MACrBC,WAAWH,OAAOI,gBAAgBC;MAClCC,SAAgBR,kBAAW,WAAW,EAAES,QAAO,GAAE;AAC/C,cAAM,EAAEC,MAAK,IAAK,OAAOZ,WAAWa,IAAIT,OAAOJ,WAAWc,QAAQ;AAClE,cAAM,EAAEC,SAASC,QAAO,IAAK,OAAOhB,WAAWa,IAAII,oBAAoBC,KAAK;AAC5E,eAAcC,kBAAW,MAAMC,MAAMC,YAAYT,OAAO;UAAEU,QAAQX;QAAQ,GAAG;UAAEY,SAAS;QAAM,CAAA,CAAA,EAAIC,KACzFC,eAAQ,CAACC,SAAAA;AACd;eAAIC,MAAMD,KAAKE,MAAM;YAAGC,QAAQ,CAACC,GAAGC,UAAAA;AAClC,kBAAMC,UAAUN,KAAKO,MAAM,GAAGF,KAAAA;AAC9B,kBAAMG,QAAQnB,QAAQiB,OAAAA;AACtB,gBAAI,CAACE,MAAMC,MAAM;AACfnB,sBAAQgB,SAAS,QAAQ,IAAA;YAC3B;UACF,CAAA;QACF,CAAA,GACOI,gBAAS,MAAA;AACdC,cAAI,0BAA0B;YAAE1B;UAAQ,GAAA;;;;;;AACxC,iBAAc2B;QAChB,CAAA,CAAA;MAEJ,CAAA;IACF,CAAA;GACD;AACH,CAAA,CAAA;",
|
|
6
|
+
"names": ["Effect", "Capability", "Common", "log", "OperationResolver", "Graph", "Capability", "makeModule", "fnUntraced", "contributes", "Common", "OperationResolver", "make", "operation", "LayoutOperation", "Expose", "handler", "subject", "graph", "get", "AppGraph", "getItem", "setItem", "NavTreeCapabilities", "State", "tryPromise", "Graph", "waitForPath", "target", "timeout", "pipe", "andThen", "path", "Array", "length", "forEach", "_", "index", "subpath", "slice", "value", "open", "catchAll", "log", "void"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import {
|
|
2
|
+
CommandsDialogContent,
|
|
3
|
+
CommandsTrigger,
|
|
4
|
+
NavTreeContainer,
|
|
5
|
+
NavTreeDocumentTitle
|
|
6
|
+
} from "./chunk-6YPQ625I.mjs";
|
|
7
|
+
import "./chunk-AGQDZBPL.mjs";
|
|
8
|
+
import {
|
|
9
|
+
COMMANDS_DIALOG,
|
|
10
|
+
meta
|
|
11
|
+
} from "./chunk-YKTYPINZ.mjs";
|
|
12
|
+
|
|
13
|
+
// src/capabilities/react-surface/react-surface.tsx
|
|
14
|
+
import * as Effect from "effect/Effect";
|
|
15
|
+
import React from "react";
|
|
16
|
+
import { Capability, Common } from "@dxos/app-framework";
|
|
17
|
+
import { Node } from "@dxos/plugin-graph";
|
|
18
|
+
var react_surface_default = Capability.makeModule(() => Effect.succeed(Capability.contributes(Common.Capability.ReactSurface, [
|
|
19
|
+
Common.createSurface({
|
|
20
|
+
id: COMMANDS_DIALOG,
|
|
21
|
+
role: "dialog",
|
|
22
|
+
filter: (data) => data.component === COMMANDS_DIALOG,
|
|
23
|
+
component: ({ data, ref }) => /* @__PURE__ */ React.createElement(CommandsDialogContent, {
|
|
24
|
+
...data.props,
|
|
25
|
+
ref
|
|
26
|
+
})
|
|
27
|
+
}),
|
|
28
|
+
Common.createSurface({
|
|
29
|
+
id: `${meta.id}/navigation`,
|
|
30
|
+
role: "navigation",
|
|
31
|
+
filter: (data) => typeof data.current === "string",
|
|
32
|
+
component: ({ data, ref }) => {
|
|
33
|
+
return /* @__PURE__ */ React.createElement(NavTreeContainer, {
|
|
34
|
+
tab: data.current,
|
|
35
|
+
popoverAnchorId: data.popoverAnchorId,
|
|
36
|
+
topbar: data.topbar,
|
|
37
|
+
ref
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
}),
|
|
41
|
+
Common.createSurface({
|
|
42
|
+
id: `${meta.id}/document-title`,
|
|
43
|
+
role: "document-title",
|
|
44
|
+
component: ({ data }) => /* @__PURE__ */ React.createElement(NavTreeDocumentTitle, {
|
|
45
|
+
node: Node.isGraphNode(data.subject) ? data.subject : void 0
|
|
46
|
+
})
|
|
47
|
+
}),
|
|
48
|
+
Common.createSurface({
|
|
49
|
+
id: `${meta.id}/search-input`,
|
|
50
|
+
role: "search-input",
|
|
51
|
+
position: "fallback",
|
|
52
|
+
component: () => /* @__PURE__ */ React.createElement(CommandsTrigger, null)
|
|
53
|
+
})
|
|
54
|
+
])));
|
|
55
|
+
export {
|
|
56
|
+
react_surface_default as default
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=react-surface-F6CVMS3Y.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/react-surface/react-surface.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React from 'react';\n\nimport { Capability, Common } from '@dxos/app-framework';\nimport { Node } from '@dxos/plugin-graph';\n\nimport { CommandsDialogContent, CommandsTrigger, NavTreeContainer, NavTreeDocumentTitle } from '../../components';\nimport { COMMANDS_DIALOG, meta } from '../../meta';\n\nexport default Capability.makeModule(() =>\n Effect.succeed(\n Capability.contributes(Common.Capability.ReactSurface, [\n Common.createSurface({\n id: COMMANDS_DIALOG,\n role: 'dialog',\n filter: (data): data is { props: { selected?: string } } => data.component === COMMANDS_DIALOG,\n component: ({ data, ref }) => <CommandsDialogContent {...data.props} ref={ref} />,\n }),\n Common.createSurface({\n id: `${meta.id}/navigation`,\n role: 'navigation',\n filter: (data): data is { popoverAnchorId?: string; topbar: boolean; current: string } =>\n typeof data.current === 'string',\n component: ({ data, ref }) => {\n return (\n <NavTreeContainer\n tab={data.current}\n popoverAnchorId={data.popoverAnchorId as string | undefined}\n topbar={data.topbar as boolean}\n ref={ref}\n />\n );\n },\n }),\n Common.createSurface({\n id: `${meta.id}/document-title`,\n role: 'document-title',\n component: ({ data }) => (\n <NavTreeDocumentTitle node={Node.isGraphNode(data.subject) ? data.subject : undefined} />\n ),\n }),\n Common.createSurface({\n id: `${meta.id}/search-input`,\n role: 'search-input',\n position: 'fallback',\n component: () => <CommandsTrigger />,\n }),\n ]),\n ),\n);\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;AAIA,YAAYA,YAAY;AACxB,OAAOC,WAAW;AAElB,SAASC,YAAYC,cAAc;AACnC,SAASC,YAAY;AAKrB,IAAA,wBAAeC,WAAWC,WAAW,MAC5BC,eACLF,WAAWG,YAAYC,OAAOJ,WAAWK,cAAc;EACrDD,OAAOE,cAAc;IACnBC,IAAIC;IACJC,MAAM;IACNC,QAAQ,CAACC,SAAmDA,KAAKC,cAAcJ;IAC/EI,WAAW,CAAC,EAAED,MAAME,IAAG,MAAO,sBAAA,cAACC,uBAAAA;MAAuB,GAAGH,KAAKI;MAAOF;;EACvE,CAAA;EACAT,OAAOE,cAAc;IACnBC,IAAI,GAAGS,KAAKT,EAAE;IACdE,MAAM;IACNC,QAAQ,CAACC,SACP,OAAOA,KAAKM,YAAY;IAC1BL,WAAW,CAAC,EAAED,MAAME,IAAG,MAAE;AACvB,aACE,sBAAA,cAACK,kBAAAA;QACCC,KAAKR,KAAKM;QACVG,iBAAiBT,KAAKS;QACtBC,QAAQV,KAAKU;QACbR;;IAGN;EACF,CAAA;EACAT,OAAOE,cAAc;IACnBC,IAAI,GAAGS,KAAKT,EAAE;IACdE,MAAM;IACNG,WAAW,CAAC,EAAED,KAAI,MAChB,sBAAA,cAACW,sBAAAA;MAAqBC,MAAMC,KAAKC,YAAYd,KAAKe,OAAO,IAAIf,KAAKe,UAAUC;;EAEhF,CAAA;EACAvB,OAAOE,cAAc;IACnBC,IAAI,GAAGS,KAAKT,EAAE;IACdE,MAAM;IACNmB,UAAU;IACVhB,WAAW,MAAM,sBAAA,cAACiB,iBAAAA,IAAAA;EACpB,CAAA;CACD,CAAA,CAAA;",
|
|
6
|
+
"names": ["Effect", "React", "Capability", "Common", "Node", "Capability", "makeModule", "succeed", "contributes", "Common", "ReactSurface", "createSurface", "id", "COMMANDS_DIALOG", "role", "filter", "data", "component", "ref", "CommandsDialogContent", "props", "meta", "current", "NavTreeContainer", "tab", "popoverAnchorId", "topbar", "NavTreeDocumentTitle", "node", "Node", "isGraphNode", "subject", "undefined", "position", "CommandsTrigger"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,120 @@
|
|
|
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
|
|
@@ -0,0 +1,7 @@
|
|
|
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": ";;;;;;;;AAIA,SAASA,YAAY;AACrB,YAAYC,YAAY;AAExB,SAASC,YAAYC,cAAc;AACnC,SAASC,YAAY;AAKrB,IAAMC,MAAM,GAAGC,KAAKC,EAAE;AAGtB,IAAMC,mBAAwC;EAAEC,MAAM;EAAOC,SAAS;EAAOC,eAAe;AAAM;AAIlG,IAAMC,sBAAuD;EAC3D;IAAC;IAAQ;MAAEH,MAAM;MAAMC,SAAS;IAAM;;EACtC;IAAC;IAAqC;MAAED,MAAM;MAAMC,SAAS;IAAM;;EACnE;IAAC;IAA8B;MAAED,MAAM;MAAMC,SAAS;IAAM;;;AAG9D,IAAMG,kBAAkB,MAAA;AACtB,QAAMC,cAAcC,aAAaC,QAAQX,GAAAA;AACzC,MAAI,CAACS,aAAa;AAChB,WAAO,IAAIG,IAAIL,mBAAAA;EACjB;AAEA,MAAI;AACF,UAAMM,SAA0DC,KAAKC,MAAMN,WAAAA;AAC3E,WAAO,IAAIG,IAAIC,OAAOG,IAAI,CAAC,CAACC,KAAKC,KAAAA,MAAW;MAACD;MAAK;QAAEb,MAAMc,MAAMd;QAAMC,SAAS;MAAM;KAAE,CAAA;EACzF,QAAQ;AACN,WAAO,IAAIO,IAAIL,mBAAAA;EACjB;AACF;AAEA,IAAA,gBAAeY,WAAWC,WACjBC,kBAAW,aAAA;AAChB,QAAMC,WAAW,OAAOH,WAAWI,IAAIC,OAAOL,WAAWM,YAAY;AACrE,QAAMC,aAAa,OAAOP,WAAWI,IAAIC,OAAOL,WAAWQ,MAAM;AAGjE,QAAMC,eAAepB,gBAAAA;AAKrB,QAAMqB,iBAAiBC,KAAKC,OAAO,CAACC,eAClCF,KAAKG,KAA0BL,aAAaL,IAAIS,UAAAA,KAAe;IAAE,GAAG7B;EAAiB,CAAA,EAAG+B,KAAKJ,KAAKK,SAAS,CAAA;AAG7G,QAAMC,cAAc,CAACC,SAAAA;AACnB,UAAML,aAAaM,KAAKC,OAAM,GAAIF,IAAAA;AAClC,WAAOR,eAAeG,UAAAA;EACxB;AAEA,QAAMrB,UAAU,CAAC0B,SAAAA;AACf,WAAOf,SAASC,IAAIa,YAAYC,IAAAA,CAAAA;EAClC;AAEA,QAAMG,UAAU,CAACH,MAAgBpB,KAA2CwB,SAAAA;AAC1E,UAAMT,aAAaM,KAAKC,OAAM,GAAIF,IAAAA;AAClC,UAAMK,OAAOb,eAAeG,UAAAA;AAC5B,UAAMW,eAAerB,SAASC,IAAImB,IAAAA;AAClC,UAAME,WAAW;MAAE,GAAGD;MAAc,CAAC1B,GAAAA,GAAMwB;IAAK;AAGhDnB,aAASuB,IAAIH,MAAME,QAAAA;AAGnBhB,iBAAaiB,IAAIb,YAAYY,QAAAA;AAC7BlC,iBAAa8B,QAAQxC,KAAKc,KAAKgC,UAAUC,MAAMC,KAAKpB,aAAaqB,QAAO,CAAA,CAAA,CAAA;EAC1E;AAGA,MAAIC,WAAqB,CAAA;AACzB,QAAMC,cAAc7B,SAAS8B,UAAU1B,YAAY,CAAC2B,WAAAA;AAClD,UAAMC,UAAUJ,SAASK,OAAO,CAACrD,OAAO,CAACmD,OAAOG,OAAOC,SAASvD,EAAAA,CAAAA;AAChEgD,eAAWG,OAAOG;AAElB,UAAME,eAAe,MAAA;AAEnBJ,cAAQK,QAAQ,CAACzD,OAAAA;AACf,cAAM0D,OAAOb,MAAMC,KAAKpB,aAAagC,KAAI,CAAA,EAAIL,OAAO,CAACtC,QAAQqB,KAAKuB,KAAK5C,GAAAA,MAASf,EAAAA;AAChF0D,aAAKD,QAAQ,CAAC1C,QAAAA;AACZuB,kBAAQF,KAAKwB,MAAM7C,GAAAA,GAAM,WAAW,KAAA;QACtC,CAAA;MACF,CAAA;AAGAoC,aAAOG,OAAOG,QAAQ,CAACzD,OAAAA;AACrB,cAAM0D,OAAOb,MAAMC,KAAK,oBAAIe,IAAI;aAAInC,aAAagC,KAAI;UAAI1D;SAAG,CAAA,EAAGqD,OAAO,CAACtC,QAAQqB,KAAKuB,KAAK5C,GAAAA,MAASf,EAAAA;AAClG0D,aAAKD,QAAQ,CAAC1C,QAAAA;AACZuB,kBAAQF,KAAKwB,MAAM7C,GAAAA,GAAM,WAAW,IAAA;QACtC,CAAA;MACF,CAAA;IACF;AAKA,UAAM+C,UAAUC,WAAWP,cAAc,GAAA;AACzCA,iBAAAA;AACA,WAAO,MAAMQ,aAAaF,OAAAA;EAC5B,CAAA;AAEA,SAAO7C,WAAWgD,YAChBC,oBAAoBC,OACpB;IACE1D;IACAyB;IACAI;EACF,GACA,MAAa8B,YAAK,MAAMnB,YAAAA,CAAAA,CAAAA;AAE5B,CAAA,CAAA;",
|
|
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
|
+
}
|