@dxos/plugin-graph 0.8.3 → 0.8.4-main.1068cf700f

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.
Files changed (45) hide show
  1. package/dist/lib/browser/graph-TG7EILYY.mjs +40 -0
  2. package/dist/lib/browser/graph-TG7EILYY.mjs.map +7 -0
  3. package/dist/lib/browser/index.mjs +53 -29
  4. package/dist/lib/browser/index.mjs.map +4 -4
  5. package/dist/lib/browser/meta.json +1 -1
  6. package/dist/lib/node-esm/graph-EFBE3QLJ.mjs +42 -0
  7. package/dist/lib/node-esm/graph-EFBE3QLJ.mjs.map +7 -0
  8. package/dist/lib/node-esm/index.mjs +53 -29
  9. package/dist/lib/node-esm/index.mjs.map +4 -4
  10. package/dist/lib/node-esm/meta.json +1 -1
  11. package/dist/types/src/GraphPlugin.d.ts +2 -1
  12. package/dist/types/src/GraphPlugin.d.ts.map +1 -1
  13. package/dist/types/src/action.d.ts +12 -0
  14. package/dist/types/src/action.d.ts.map +1 -0
  15. package/dist/types/src/graph.d.ts +7 -6
  16. package/dist/types/src/graph.d.ts.map +1 -1
  17. package/dist/types/src/hooks/index.d.ts +1 -0
  18. package/dist/types/src/hooks/index.d.ts.map +1 -1
  19. package/dist/types/src/hooks/useActionRunner.d.ts +7 -0
  20. package/dist/types/src/hooks/useActionRunner.d.ts.map +1 -0
  21. package/dist/types/src/hooks/useNode.d.ts +4 -4
  22. package/dist/types/src/hooks/useNode.d.ts.map +1 -1
  23. package/dist/types/src/index.d.ts +1 -0
  24. package/dist/types/src/index.d.ts.map +1 -1
  25. package/dist/types/src/meta.d.ts +2 -3
  26. package/dist/types/src/meta.d.ts.map +1 -1
  27. package/dist/types/tsconfig.tsbuildinfo +1 -1
  28. package/package.json +29 -21
  29. package/src/GraphPlugin.ts +13 -11
  30. package/src/action.ts +34 -0
  31. package/src/graph.ts +48 -37
  32. package/src/hooks/index.ts +1 -0
  33. package/src/hooks/useActionRunner.ts +25 -0
  34. package/src/hooks/useNode.ts +9 -9
  35. package/src/index.ts +1 -0
  36. package/src/meta.ts +8 -5
  37. package/dist/lib/browser/graph-TD2RDQ7V.mjs +0 -37
  38. package/dist/lib/browser/graph-TD2RDQ7V.mjs.map +0 -7
  39. package/dist/lib/node/graph-Q4KLVTNI.cjs +0 -56
  40. package/dist/lib/node/graph-Q4KLVTNI.cjs.map +0 -7
  41. package/dist/lib/node/index.cjs +0 -82
  42. package/dist/lib/node/index.cjs.map +0 -7
  43. package/dist/lib/node/meta.json +0 -1
  44. package/dist/lib/node-esm/graph-J5YUB3RG.mjs +0 -39
  45. package/dist/lib/node-esm/graph-J5YUB3RG.mjs.map +0 -7
package/package.json CHANGED
@@ -1,15 +1,20 @@
1
1
  {
2
2
  "name": "@dxos/plugin-graph",
3
- "version": "0.8.3",
3
+ "version": "0.8.4-main.1068cf700f",
4
4
  "description": "DXOS Surface plugin for constructing knowledge graphs",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/dxos/dxos"
10
+ },
7
11
  "license": "MIT",
8
12
  "author": "DXOS.org",
9
13
  "sideEffects": true,
10
14
  "type": "module",
11
15
  "exports": {
12
16
  ".": {
17
+ "source": "./src/index.ts",
13
18
  "types": "./dist/types/src/index.d.ts",
14
19
  "browser": "./dist/lib/browser/index.mjs",
15
20
  "node": "./dist/lib/node-esm/index.mjs"
@@ -24,30 +29,33 @@
24
29
  "src"
25
30
  ],
26
31
  "dependencies": {
27
- "@preact-signals/safe-react": "^0.9.0",
28
- "@dxos/app-framework": "0.8.3",
29
- "@dxos/app-graph": "0.8.3",
30
- "@dxos/async": "0.8.3",
31
- "@dxos/debug": "0.8.3"
32
+ "@dxos/app-graph": "0.8.4-main.1068cf700f",
33
+ "@dxos/app-framework": "0.8.4-main.1068cf700f",
34
+ "@dxos/app-toolkit": "0.8.4-main.1068cf700f",
35
+ "@dxos/debug": "0.8.4-main.1068cf700f",
36
+ "@dxos/async": "0.8.4-main.1068cf700f",
37
+ "@dxos/effect": "0.8.4-main.1068cf700f",
38
+ "@dxos/util": "0.8.4-main.1068cf700f",
39
+ "@dxos/operation": "0.8.4-main.1068cf700f"
32
40
  },
33
41
  "devDependencies": {
34
- "@effect-rx/rx-react": "^0.34.1",
35
- "@effect/platform": "0.80.12",
36
- "@types/react": "~18.2.0",
37
- "@types/react-dom": "~18.2.0",
38
- "effect": "^3.13.3",
39
- "react": "~18.2.0",
40
- "react-dom": "~18.2.0",
41
- "vite": "5.4.7",
42
- "@dxos/storybook-utils": "0.8.3",
43
- "@dxos/react-client": "0.8.3"
42
+ "@effect-atom/atom-react": "^0.5.0",
43
+ "@effect/platform": "0.94.4",
44
+ "@types/react": "~19.2.7",
45
+ "@types/react-dom": "~19.2.3",
46
+ "effect": "3.19.16",
47
+ "react": "~19.2.3",
48
+ "react-dom": "~19.2.3",
49
+ "vite": "7.1.9",
50
+ "@dxos/storybook-utils": "0.8.4-main.1068cf700f",
51
+ "@dxos/react-client": "0.8.4-main.1068cf700f"
44
52
  },
45
53
  "peerDependencies": {
46
- "@effect-rx/rx-react": "^0.34.1",
47
- "@effect/platform": "0.80.12",
48
- "effect": "^3.13.3",
49
- "react": "~18.2.0",
50
- "react-dom": "~18.2.0"
54
+ "@effect-atom/atom-react": "^0.5.0",
55
+ "@effect/platform": "0.94.4",
56
+ "effect": "3.19.16",
57
+ "react": "~19.2.3",
58
+ "react-dom": "~19.2.3"
51
59
  },
52
60
  "publishConfig": {
53
61
  "access": "public"
@@ -2,22 +2,24 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { defineModule, lazy, Events, definePlugin } from '@dxos/app-framework';
5
+ import { ActivationEvents, Capability, Plugin } from '@dxos/app-framework';
6
+ import { AppActivationEvents } from '@dxos/app-toolkit';
6
7
 
7
8
  import { meta } from './meta';
8
9
 
10
+ const Graph = Capability.lazy('Graph', () => import('./graph'));
11
+
9
12
  /**
10
13
  * Manages the state of the graph for the application.
11
14
  * Enables other plugins to register node builders to add nodes to the graph.
12
15
  * This includes actions and annotation each other's nodes.
13
16
  */
14
- export const GraphPlugin = () =>
15
- definePlugin(meta, [
16
- defineModule({
17
- id: `${meta.id}/module/graph`,
18
- activatesOn: Events.Startup,
19
- activatesBefore: [Events.SetupAppGraph, Events.SetupMetadata],
20
- activatesAfter: [Events.AppGraphReady],
21
- activate: lazy(() => import('./graph')),
22
- }),
23
- ]);
17
+ export const GraphPlugin = Plugin.define(meta).pipe(
18
+ Plugin.addModule({
19
+ activatesOn: ActivationEvents.Startup,
20
+ activatesBefore: [AppActivationEvents.SetupAppGraph, AppActivationEvents.SetupMetadata],
21
+ activatesAfter: [AppActivationEvents.AppGraphReady],
22
+ activate: Graph,
23
+ }),
24
+ Plugin.make,
25
+ );
package/src/action.ts ADDED
@@ -0,0 +1,34 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import * as Effect from 'effect/Effect';
6
+ import * as Function from 'effect/Function';
7
+
8
+ import { Capability, type CapabilityManager } from '@dxos/app-framework';
9
+ import { type Node } from '@dxos/app-graph';
10
+ import { runAndForwardErrors } from '@dxos/effect';
11
+ import { Operation, type OperationInvoker } from '@dxos/operation';
12
+
13
+ /**
14
+ * Run an action with required layers: Operation.Service, Capability.Service, and captured context.
15
+ * @param invoker The operation invoker to use for Operation.Service.
16
+ * @param capabilityManager The capability manager for Capability.Service.
17
+ * @param action The action to execute.
18
+ * @param params Parameters to pass to the action.
19
+ */
20
+ export const runAction = async (
21
+ invoker: OperationInvoker.OperationInvoker,
22
+ capabilityManager: CapabilityManager.CapabilityManager,
23
+ action: Node.Action,
24
+ params: Node.InvokeProps = {},
25
+ ): Promise<void> =>
26
+ runAndForwardErrors(
27
+ action
28
+ .data(params)
29
+ .pipe(
30
+ Effect.provideService(Operation.Service, invoker),
31
+ Effect.provideService(Capability.Service, capabilityManager),
32
+ action._actionContext ? Effect.provide(action._actionContext) : Function.identity,
33
+ ),
34
+ );
package/src/graph.ts CHANGED
@@ -2,48 +2,59 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
- import { Record } from 'effect';
5
+ import * as Effect from 'effect/Effect';
6
+ import * as Record from 'effect/Record';
6
7
 
7
- import { Capabilities, contributes, type PluginContext } from '@dxos/app-framework';
8
- import { flattenExtensions, GraphBuilder, type ExpandableGraph, ROOT_ID } from '@dxos/app-graph';
8
+ import { Capabilities, Capability } from '@dxos/app-framework';
9
+ import { Graph, GraphBuilder, Node } from '@dxos/app-graph';
10
+ import { AppCapabilities } from '@dxos/app-toolkit';
9
11
 
10
12
  // TODO(wittjosiah): Remove or restore graph caching.
11
- // import { GRAPH_PLUGIN } from './meta';
12
-
13
- // const KEY = `${GRAPH_PLUGIN}/app-graph`;
14
-
15
- export default async (context: PluginContext) => {
16
- const registry = context.getCapability(Capabilities.RxRegistry);
17
- const builder = GraphBuilder.from(/* localStorage.getItem(KEY) ?? */ undefined, registry);
18
- // const interval = setInterval(() => {
19
- // localStorage.setItem(KEY, builder.graph.pickle());
20
- // }, 5_000);
21
-
22
- const unsubscribe = registry.subscribe(
23
- context.capabilities(Capabilities.AppGraphBuilder),
24
- (extensions) => {
25
- const next = flattenExtensions(extensions);
26
- const current = Record.values(registry.get(builder.extensions));
27
- const removed = current.filter(({ id }) => !next.some(({ id: nextId }) => nextId === id));
28
- removed.forEach((extension) => builder.removeExtension(extension.id));
29
- next.forEach((extension) => builder.addExtension(extension));
30
- },
31
- { immediate: true },
32
- );
33
-
34
- // await builder.initialize();
35
- void builder.graph.expand(ROOT_ID);
36
-
37
- setupDevtools(builder.graph);
38
-
39
- return contributes(Capabilities.AppGraph, { graph: builder.graph, explore: builder.explore }, () => {
40
- // clearInterval(interval);
41
- unsubscribe();
42
- });
43
- };
13
+ // import { meta } from './meta';
14
+
15
+ // const KEY = `${meta.id}/app-graph`;
16
+
17
+ export default Capability.makeModule(
18
+ Effect.fnUntraced(function* () {
19
+ const registry = yield* Capability.get(Capabilities.AtomRegistry);
20
+ const extensionsAtom = yield* Capability.atom(AppCapabilities.AppGraphBuilder);
21
+
22
+ const builder = GraphBuilder.from(/* localStorage.getItem(KEY) ?? */ undefined, registry);
23
+ // const interval = setInterval(() => {
24
+ // localStorage.setItem(KEY, builder.graph.pickle());
25
+ // }, 5_000);
26
+
27
+ const unsubscribe = registry.subscribe(
28
+ extensionsAtom,
29
+ (extensions) => {
30
+ const next = GraphBuilder.flattenExtensions(extensions);
31
+ const current = Record.values(registry.get(builder.extensions));
32
+ const removed = current.filter(({ id }) => !next.some(({ id: nextId }) => nextId === id));
33
+ removed.forEach((extension) => GraphBuilder.removeExtension(builder, extension.id));
34
+ next.forEach((extension) => GraphBuilder.addExtension(builder, extension));
35
+ },
36
+ { immediate: true },
37
+ );
38
+
39
+ // await builder.initialize();
40
+ void Graph.expand(builder.graph, Node.RootId);
41
+
42
+ setupDevtools(builder.graph);
43
+
44
+ return Capability.contributes(
45
+ AppCapabilities.AppGraph,
46
+ { graph: builder.graph, explore: GraphBuilder.explore },
47
+ () =>
48
+ Effect.sync(() => {
49
+ // clearInterval(interval);
50
+ unsubscribe();
51
+ }),
52
+ );
53
+ }),
54
+ );
44
55
 
45
56
  // Expose the graph to the window for debugging.
46
- const setupDevtools = (graph: ExpandableGraph) => {
57
+ const setupDevtools = (graph: Graph.ExpandableGraph) => {
47
58
  (globalThis as any).composer ??= {};
48
59
  (globalThis as any).composer.graph = graph;
49
60
  };
@@ -2,4 +2,5 @@
2
2
  // Copyright 2025 DXOS.org
3
3
  //
4
4
 
5
+ export * from './useActionRunner';
5
6
  export * from './useNode';
@@ -0,0 +1,25 @@
1
+ //
2
+ // Copyright 2025 DXOS.org
3
+ //
4
+
5
+ import { useCallback } from 'react';
6
+
7
+ import { useOperationInvoker, usePluginManager } from '@dxos/app-framework/ui';
8
+ import { type Node } from '@dxos/app-graph';
9
+
10
+ import { runAction } from '../action';
11
+
12
+ /**
13
+ * Hook that returns a function to run action Effects.
14
+ * Provides Operation.Service, PluginContextService, and captured plugin context.
15
+ */
16
+ export const useActionRunner = () => {
17
+ const invoker = useOperationInvoker();
18
+ const pluginManager = usePluginManager();
19
+
20
+ return useCallback(
21
+ (action: Node.Action, params: Node.InvokeProps = {}) =>
22
+ runAction(invoker, pluginManager.capabilities, action, params),
23
+ [invoker, pluginManager.capabilities],
24
+ );
25
+ };
@@ -2,10 +2,10 @@
2
2
  // Copyright 2024 DXOS.org
3
3
  //
4
4
 
5
- import { useRxValue } from '@effect-rx/rx-react';
6
- import { Option } from 'effect';
5
+ import { useAtomValue } from '@effect-atom/atom-react';
6
+ import * as Option from 'effect/Option';
7
7
 
8
- import { type ReadableGraph, type Node, type Relation } from '@dxos/app-graph';
8
+ import { type Graph, type Node } from '@dxos/app-graph';
9
9
 
10
10
  /**
11
11
  * React hook to get a node from the graph.
@@ -16,14 +16,14 @@ import { type ReadableGraph, type Node, type Relation } from '@dxos/app-graph';
16
16
  * @returns Node if found, undefined otherwise.
17
17
  */
18
18
  // TODO(wittjosiah): Factor out to @dxos/app-graph/react.
19
- export const useNode = <T = any>(graph: ReadableGraph, id?: string): Node<T> | undefined => {
20
- return Option.getOrElse(useRxValue(graph.node(id ?? '')), () => undefined);
19
+ export const useNode = <T = any>(graph: Graph.ReadableGraph, id?: string): Node.Node<T> | undefined => {
20
+ return Option.getOrElse(useAtomValue(graph.node(id ?? '')), () => undefined);
21
21
  };
22
22
 
23
- export const useConnections = (graph: ReadableGraph, id?: string, relation?: Relation): Node[] => {
24
- return useRxValue(graph.connections(id ?? '', relation));
23
+ export const useConnections = (graph: Graph.ReadableGraph, id?: string, relation?: Node.Relation): Node.Node[] => {
24
+ return useAtomValue(graph.connections(id ?? '', relation));
25
25
  };
26
26
 
27
- export const useActions = (graph: ReadableGraph, id?: string): Node[] => {
28
- return useRxValue(graph.actions(id ?? ''));
27
+ export const useActions = (graph: Graph.ReadableGraph, id?: string): Node.Node[] => {
28
+ return useAtomValue(graph.actions(id ?? ''));
29
29
  };
package/src/index.ts CHANGED
@@ -4,6 +4,7 @@
4
4
 
5
5
  export * from '@dxos/app-graph';
6
6
 
7
+ export * from './action';
7
8
  export * from './GraphPlugin';
8
9
  export * from './hooks';
9
10
  export * from './meta';
package/src/meta.ts CHANGED
@@ -2,11 +2,14 @@
2
2
  // Copyright 2023 DXOS.org
3
3
  //
4
4
 
5
- import { type PluginMeta } from '@dxos/app-framework';
5
+ import { type Plugin } from '@dxos/app-framework';
6
+ import { trim } from '@dxos/util';
6
7
 
7
- export const GRAPH_PLUGIN = 'dxos.org/plugin/graph';
8
-
9
- export const meta: PluginMeta = {
10
- id: GRAPH_PLUGIN,
8
+ export const meta: Plugin.Meta = {
9
+ id: 'dxos.org/plugin/graph',
11
10
  name: 'Graph',
11
+ description: trim`
12
+ Graph database layer providing relationship modeling and queries for workspace objects.
13
+ Build knowledge graphs and explore complex data relationships.
14
+ `,
12
15
  };
@@ -1,37 +0,0 @@
1
- // packages/plugins/plugin-graph/src/graph.ts
2
- import { Record } from "effect";
3
- import { Capabilities, contributes } from "@dxos/app-framework";
4
- import { flattenExtensions, GraphBuilder, ROOT_ID } from "@dxos/app-graph";
5
- var graph_default = async (context) => {
6
- const registry = context.getCapability(Capabilities.RxRegistry);
7
- const builder = GraphBuilder.from(
8
- /* localStorage.getItem(KEY) ?? */
9
- void 0,
10
- registry
11
- );
12
- const unsubscribe = registry.subscribe(context.capabilities(Capabilities.AppGraphBuilder), (extensions) => {
13
- const next = flattenExtensions(extensions);
14
- const current = Record.values(registry.get(builder.extensions));
15
- const removed = current.filter(({ id }) => !next.some(({ id: nextId }) => nextId === id));
16
- removed.forEach((extension) => builder.removeExtension(extension.id));
17
- next.forEach((extension) => builder.addExtension(extension));
18
- }, {
19
- immediate: true
20
- });
21
- void builder.graph.expand(ROOT_ID);
22
- setupDevtools(builder.graph);
23
- return contributes(Capabilities.AppGraph, {
24
- graph: builder.graph,
25
- explore: builder.explore
26
- }, () => {
27
- unsubscribe();
28
- });
29
- };
30
- var setupDevtools = (graph) => {
31
- globalThis.composer ??= {};
32
- globalThis.composer.graph = graph;
33
- };
34
- export {
35
- graph_default as default
36
- };
37
- //# sourceMappingURL=graph-TD2RDQ7V.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/graph.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Record } from 'effect';\n\nimport { Capabilities, contributes, type PluginContext } from '@dxos/app-framework';\nimport { flattenExtensions, GraphBuilder, type ExpandableGraph, ROOT_ID } from '@dxos/app-graph';\n\n// TODO(wittjosiah): Remove or restore graph caching.\n// import { GRAPH_PLUGIN } from './meta';\n\n// const KEY = `${GRAPH_PLUGIN}/app-graph`;\n\nexport default async (context: PluginContext) => {\n const registry = context.getCapability(Capabilities.RxRegistry);\n const builder = GraphBuilder.from(/* localStorage.getItem(KEY) ?? */ undefined, registry);\n // const interval = setInterval(() => {\n // localStorage.setItem(KEY, builder.graph.pickle());\n // }, 5_000);\n\n const unsubscribe = registry.subscribe(\n context.capabilities(Capabilities.AppGraphBuilder),\n (extensions) => {\n const next = flattenExtensions(extensions);\n const current = Record.values(registry.get(builder.extensions));\n const removed = current.filter(({ id }) => !next.some(({ id: nextId }) => nextId === id));\n removed.forEach((extension) => builder.removeExtension(extension.id));\n next.forEach((extension) => builder.addExtension(extension));\n },\n { immediate: true },\n );\n\n // await builder.initialize();\n void builder.graph.expand(ROOT_ID);\n\n setupDevtools(builder.graph);\n\n return contributes(Capabilities.AppGraph, { graph: builder.graph, explore: builder.explore }, () => {\n // clearInterval(interval);\n unsubscribe();\n });\n};\n\n// Expose the graph to the window for debugging.\nconst setupDevtools = (graph: ExpandableGraph) => {\n (globalThis as any).composer ??= {};\n (globalThis as any).composer.graph = graph;\n};\n"],
5
- "mappings": ";AAIA,SAASA,cAAc;AAEvB,SAASC,cAAcC,mBAAuC;AAC9D,SAASC,mBAAmBC,cAAoCC,eAAe;AAO/E,IAAA,gBAAe,OAAOC,YAAAA;AACpB,QAAMC,WAAWD,QAAQE,cAAcC,aAAaC,UAAU;AAC9D,QAAMC,UAAUC,aAAaC;;IAAwCC;IAAWP;EAAAA;AAKhF,QAAMQ,cAAcR,SAASS,UAC3BV,QAAQW,aAAaR,aAAaS,eAAe,GACjD,CAACC,eAAAA;AACC,UAAMC,OAAOC,kBAAkBF,UAAAA;AAC/B,UAAMG,UAAUC,OAAOC,OAAOjB,SAASkB,IAAId,QAAQQ,UAAU,CAAA;AAC7D,UAAMO,UAAUJ,QAAQK,OAAO,CAAC,EAAEC,GAAE,MAAO,CAACR,KAAKS,KAAK,CAAC,EAAED,IAAIE,OAAM,MAAOA,WAAWF,EAAAA,CAAAA;AACrFF,YAAQK,QAAQ,CAACC,cAAcrB,QAAQsB,gBAAgBD,UAAUJ,EAAE,CAAA;AACnER,SAAKW,QAAQ,CAACC,cAAcrB,QAAQuB,aAAaF,SAAAA,CAAAA;EACnD,GACA;IAAEG,WAAW;EAAK,CAAA;AAIpB,OAAKxB,QAAQyB,MAAMC,OAAOC,OAAAA;AAE1BC,gBAAc5B,QAAQyB,KAAK;AAE3B,SAAOI,YAAY/B,aAAagC,UAAU;IAAEL,OAAOzB,QAAQyB;IAAOM,SAAS/B,QAAQ+B;EAAQ,GAAG,MAAA;AAE5F3B,gBAAAA;EACF,CAAA;AACF;AAGA,IAAMwB,gBAAgB,CAACH,UAAAA;AACpBO,aAAmBC,aAAa,CAAC;AACjCD,aAAmBC,SAASR,QAAQA;AACvC;",
6
- "names": ["Record", "Capabilities", "contributes", "flattenExtensions", "GraphBuilder", "ROOT_ID", "context", "registry", "getCapability", "Capabilities", "RxRegistry", "builder", "GraphBuilder", "from", "undefined", "unsubscribe", "subscribe", "capabilities", "AppGraphBuilder", "extensions", "next", "flattenExtensions", "current", "Record", "values", "get", "removed", "filter", "id", "some", "nextId", "forEach", "extension", "removeExtension", "addExtension", "immediate", "graph", "expand", "ROOT_ID", "setupDevtools", "contributes", "AppGraph", "explore", "globalThis", "composer"]
7
- }
@@ -1,56 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var graph_Q4KLVTNI_exports = {};
20
- __export(graph_Q4KLVTNI_exports, {
21
- default: () => graph_default
22
- });
23
- module.exports = __toCommonJS(graph_Q4KLVTNI_exports);
24
- var import_effect = require("effect");
25
- var import_app_framework = require("@dxos/app-framework");
26
- var import_app_graph = require("@dxos/app-graph");
27
- var graph_default = async (context) => {
28
- const registry = context.getCapability(import_app_framework.Capabilities.RxRegistry);
29
- const builder = import_app_graph.GraphBuilder.from(
30
- /* localStorage.getItem(KEY) ?? */
31
- void 0,
32
- registry
33
- );
34
- const unsubscribe = registry.subscribe(context.capabilities(import_app_framework.Capabilities.AppGraphBuilder), (extensions) => {
35
- const next = (0, import_app_graph.flattenExtensions)(extensions);
36
- const current = import_effect.Record.values(registry.get(builder.extensions));
37
- const removed = current.filter(({ id }) => !next.some(({ id: nextId }) => nextId === id));
38
- removed.forEach((extension) => builder.removeExtension(extension.id));
39
- next.forEach((extension) => builder.addExtension(extension));
40
- }, {
41
- immediate: true
42
- });
43
- void builder.graph.expand(import_app_graph.ROOT_ID);
44
- setupDevtools(builder.graph);
45
- return (0, import_app_framework.contributes)(import_app_framework.Capabilities.AppGraph, {
46
- graph: builder.graph,
47
- explore: builder.explore
48
- }, () => {
49
- unsubscribe();
50
- });
51
- };
52
- var setupDevtools = (graph) => {
53
- globalThis.composer ??= {};
54
- globalThis.composer.graph = graph;
55
- };
56
- //# sourceMappingURL=graph-Q4KLVTNI.cjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/graph.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Record } from 'effect';\n\nimport { Capabilities, contributes, type PluginContext } from '@dxos/app-framework';\nimport { flattenExtensions, GraphBuilder, type ExpandableGraph, ROOT_ID } from '@dxos/app-graph';\n\n// TODO(wittjosiah): Remove or restore graph caching.\n// import { GRAPH_PLUGIN } from './meta';\n\n// const KEY = `${GRAPH_PLUGIN}/app-graph`;\n\nexport default async (context: PluginContext) => {\n const registry = context.getCapability(Capabilities.RxRegistry);\n const builder = GraphBuilder.from(/* localStorage.getItem(KEY) ?? */ undefined, registry);\n // const interval = setInterval(() => {\n // localStorage.setItem(KEY, builder.graph.pickle());\n // }, 5_000);\n\n const unsubscribe = registry.subscribe(\n context.capabilities(Capabilities.AppGraphBuilder),\n (extensions) => {\n const next = flattenExtensions(extensions);\n const current = Record.values(registry.get(builder.extensions));\n const removed = current.filter(({ id }) => !next.some(({ id: nextId }) => nextId === id));\n removed.forEach((extension) => builder.removeExtension(extension.id));\n next.forEach((extension) => builder.addExtension(extension));\n },\n { immediate: true },\n );\n\n // await builder.initialize();\n void builder.graph.expand(ROOT_ID);\n\n setupDevtools(builder.graph);\n\n return contributes(Capabilities.AppGraph, { graph: builder.graph, explore: builder.explore }, () => {\n // clearInterval(interval);\n unsubscribe();\n });\n};\n\n// Expose the graph to the window for debugging.\nconst setupDevtools = (graph: ExpandableGraph) => {\n (globalThis as any).composer ??= {};\n (globalThis as any).composer.graph = graph;\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAIA,oBAAuB;AAEvB,2BAA8D;AAC9D,uBAA+E;AAO/E,IAAA,gBAAe,OAAOA,YAAAA;AACpB,QAAMC,WAAWD,QAAQE,cAAcC,kCAAaC,UAAU;AAC9D,QAAMC,UAAUC,8BAAaC;;IAAwCC;IAAWP;EAAAA;AAKhF,QAAMQ,cAAcR,SAASS,UAC3BV,QAAQW,aAAaR,kCAAaS,eAAe,GACjD,CAACC,eAAAA;AACC,UAAMC,WAAOC,oCAAkBF,UAAAA;AAC/B,UAAMG,UAAUC,qBAAOC,OAAOjB,SAASkB,IAAId,QAAQQ,UAAU,CAAA;AAC7D,UAAMO,UAAUJ,QAAQK,OAAO,CAAC,EAAEC,GAAE,MAAO,CAACR,KAAKS,KAAK,CAAC,EAAED,IAAIE,OAAM,MAAOA,WAAWF,EAAAA,CAAAA;AACrFF,YAAQK,QAAQ,CAACC,cAAcrB,QAAQsB,gBAAgBD,UAAUJ,EAAE,CAAA;AACnER,SAAKW,QAAQ,CAACC,cAAcrB,QAAQuB,aAAaF,SAAAA,CAAAA;EACnD,GACA;IAAEG,WAAW;EAAK,CAAA;AAIpB,OAAKxB,QAAQyB,MAAMC,OAAOC,wBAAAA;AAE1BC,gBAAc5B,QAAQyB,KAAK;AAE3B,aAAOI,kCAAY/B,kCAAagC,UAAU;IAAEL,OAAOzB,QAAQyB;IAAOM,SAAS/B,QAAQ+B;EAAQ,GAAG,MAAA;AAE5F3B,gBAAAA;EACF,CAAA;AACF;AAGA,IAAMwB,gBAAgB,CAACH,UAAAA;AACpBO,aAAmBC,aAAa,CAAC;AACjCD,aAAmBC,SAASR,QAAQA;AACvC;",
6
- "names": ["context", "registry", "getCapability", "Capabilities", "RxRegistry", "builder", "GraphBuilder", "from", "undefined", "unsubscribe", "subscribe", "capabilities", "AppGraphBuilder", "extensions", "next", "flattenExtensions", "current", "Record", "values", "get", "removed", "filter", "id", "some", "nextId", "forEach", "extension", "removeExtension", "addExtension", "immediate", "graph", "expand", "ROOT_ID", "setupDevtools", "contributes", "AppGraph", "explore", "globalThis", "composer"]
7
- }
@@ -1,82 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
21
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
- // If the importer is in node compatibility mode or this is not an ESM
23
- // file that has been converted to a CommonJS file using a Babel-
24
- // compatible transform (i.e. "__esModule" has not been set), then set
25
- // "default" to the CommonJS "module.exports" for node compatibility.
26
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
- mod
28
- ));
29
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
- var node_exports = {};
31
- __export(node_exports, {
32
- GRAPH_PLUGIN: () => GRAPH_PLUGIN,
33
- GraphPlugin: () => GraphPlugin,
34
- meta: () => meta,
35
- useActions: () => useActions,
36
- useConnections: () => useConnections,
37
- useNode: () => useNode
38
- });
39
- module.exports = __toCommonJS(node_exports);
40
- __reExport(node_exports, require("@dxos/app-graph"), module.exports);
41
- var import_app_framework = require("@dxos/app-framework");
42
- var import_rx_react = require("@effect-rx/rx-react");
43
- var import_effect = require("effect");
44
- var GRAPH_PLUGIN = "dxos.org/plugin/graph";
45
- var meta = {
46
- id: GRAPH_PLUGIN,
47
- name: "Graph"
48
- };
49
- var GraphPlugin = () => (0, import_app_framework.definePlugin)(meta, [
50
- (0, import_app_framework.defineModule)({
51
- id: `${meta.id}/module/graph`,
52
- activatesOn: import_app_framework.Events.Startup,
53
- activatesBefore: [
54
- import_app_framework.Events.SetupAppGraph,
55
- import_app_framework.Events.SetupMetadata
56
- ],
57
- activatesAfter: [
58
- import_app_framework.Events.AppGraphReady
59
- ],
60
- activate: (0, import_app_framework.lazy)(() => import("./graph-Q4KLVTNI.cjs"))
61
- })
62
- ]);
63
- var useNode = (graph, id) => {
64
- return import_effect.Option.getOrElse((0, import_rx_react.useRxValue)(graph.node(id ?? "")), () => void 0);
65
- };
66
- var useConnections = (graph, id, relation) => {
67
- return (0, import_rx_react.useRxValue)(graph.connections(id ?? "", relation));
68
- };
69
- var useActions = (graph, id) => {
70
- return (0, import_rx_react.useRxValue)(graph.actions(id ?? ""));
71
- };
72
- // Annotate the CommonJS export names for ESM import in node:
73
- 0 && (module.exports = {
74
- GRAPH_PLUGIN,
75
- GraphPlugin,
76
- meta,
77
- useActions,
78
- useConnections,
79
- useNode,
80
- ...require("@dxos/app-graph")
81
- });
82
- //# sourceMappingURL=index.cjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/index.ts", "../../../src/GraphPlugin.ts", "../../../src/meta.ts", "../../../src/hooks/useNode.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nexport * from '@dxos/app-graph';\n\nexport * from './GraphPlugin';\nexport * from './hooks';\nexport * from './meta';\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { defineModule, lazy, Events, definePlugin } from '@dxos/app-framework';\n\nimport { meta } from './meta';\n\n/**\n * Manages the state of the graph for the application.\n * Enables other plugins to register node builders to add nodes to the graph.\n * This includes actions and annotation each other's nodes.\n */\nexport const GraphPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/graph`,\n activatesOn: Events.Startup,\n activatesBefore: [Events.SetupAppGraph, Events.SetupMetadata],\n activatesAfter: [Events.AppGraphReady],\n activate: lazy(() => import('./graph')),\n }),\n ]);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const GRAPH_PLUGIN = 'dxos.org/plugin/graph';\n\nexport const meta: PluginMeta = {\n id: GRAPH_PLUGIN,\n name: 'Graph',\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { useRxValue } from '@effect-rx/rx-react';\nimport { Option } from 'effect';\n\nimport { type ReadableGraph, type Node, type Relation } from '@dxos/app-graph';\n\n/**\n * React hook to get a node from the graph.\n *\n * @param graph Graph to find the node in.\n * @param id Id of the node to find.\n * @param timeout Optional timeout in milliseconds to wait for the node to be found.\n * @returns Node if found, undefined otherwise.\n */\n// TODO(wittjosiah): Factor out to @dxos/app-graph/react.\nexport const useNode = <T = any>(graph: ReadableGraph, id?: string): Node<T> | undefined => {\n return Option.getOrElse(useRxValue(graph.node(id ?? '')), () => undefined);\n};\n\nexport const useConnections = (graph: ReadableGraph, id?: string, relation?: Relation): Node[] => {\n return useRxValue(graph.connections(id ?? '', relation));\n};\n\nexport const useActions = (graph: ReadableGraph, id?: string): Node[] => {\n return useRxValue(graph.actions(id ?? ''));\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,yBAAc;ACAd,2BAAyD;AEAzD,sBAA2B;AAC3B,oBAAuB;ADChB,IAAMA,eAAe;AAErB,IAAMC,OAAmB;EAC9BC,IAAIF;EACJG,MAAM;AACR;ADEO,IAAMC,cAAc,UACzBC,mCAAaJ,MAAM;MACjBK,mCAAa;IACXJ,IAAI,GAAGD,KAAKC,EAAE;IACdK,aAAaC,4BAAOC;IACpBC,iBAAiB;MAACF,4BAAOG;MAAeH,4BAAOI;;IAC/CC,gBAAgB;MAACL,4BAAOM;;IACxBC,cAAUC,2BAAK,MAAM,OAAO,sBAAA,CAAA;EAC9B,CAAA;CACD;AEJI,IAAMC,UAAU,CAAUC,OAAsBhB,OAAAA;AACrD,SAAOiB,qBAAOC,cAAUC,4BAAWH,MAAMI,KAAKpB,MAAM,EAAA,CAAA,GAAM,MAAMqB,MAAAA;AAClE;AAEO,IAAMC,iBAAiB,CAACN,OAAsBhB,IAAauB,aAAAA;AAChE,aAAOJ,4BAAWH,MAAMQ,YAAYxB,MAAM,IAAIuB,QAAAA,CAAAA;AAChD;AAEO,IAAME,aAAa,CAACT,OAAsBhB,OAAAA;AAC/C,aAAOmB,4BAAWH,MAAMU,QAAQ1B,MAAM,EAAA,CAAA;AACxC;",
6
- "names": ["GRAPH_PLUGIN", "meta", "id", "name", "GraphPlugin", "definePlugin", "defineModule", "activatesOn", "Events", "Startup", "activatesBefore", "SetupAppGraph", "SetupMetadata", "activatesAfter", "AppGraphReady", "activate", "lazy", "useNode", "graph", "Option", "getOrElse", "useRxValue", "node", "undefined", "useConnections", "relation", "connections", "useActions", "actions"]
7
- }
@@ -1 +0,0 @@
1
- {"inputs":{"packages/plugins/plugin-graph/src/meta.ts":{"bytes":914,"imports":[],"format":"esm"},"packages/plugins/plugin-graph/src/graph.ts":{"bytes":6317,"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-graph","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-graph/src/GraphPlugin.ts":{"bytes":2750,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-graph/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-graph/src/graph.ts","kind":"dynamic-import","original":"./graph"}],"format":"esm"},"packages/plugins/plugin-graph/src/hooks/useNode.ts":{"bytes":3137,"imports":[{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-graph/src/hooks/index.ts":{"bytes":474,"imports":[{"path":"packages/plugins/plugin-graph/src/hooks/useNode.ts","kind":"import-statement","original":"./useNode"}],"format":"esm"},"packages/plugins/plugin-graph/src/index.ts":{"bytes":746,"imports":[{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-graph/src/GraphPlugin.ts","kind":"import-statement","original":"./GraphPlugin"},{"path":"packages/plugins/plugin-graph/src/hooks/index.ts","kind":"import-statement","original":"./hooks"},{"path":"packages/plugins/plugin-graph/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-graph/dist/lib/node/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3458},"packages/plugins/plugin-graph/dist/lib/node/index.cjs":{"imports":[{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-graph/dist/lib/node/graph-Q4KLVTNI.cjs","kind":"dynamic-import"},{"path":"@effect-rx/rx-react","kind":"import-statement","external":true},{"path":"effect","kind":"import-statement","external":true}],"exports":["GRAPH_PLUGIN","GraphPlugin","meta","useActions","useConnections","useNode"],"entryPoint":"packages/plugins/plugin-graph/src/index.ts","inputs":{"packages/plugins/plugin-graph/src/index.ts":{"bytesInOutput":33},"packages/plugins/plugin-graph/src/GraphPlugin.ts":{"bytesInOutput":417},"packages/plugins/plugin-graph/src/meta.ts":{"bytesInOutput":96},"packages/plugins/plugin-graph/src/hooks/useNode.ts":{"bytesInOutput":386},"packages/plugins/plugin-graph/src/hooks/index.ts":{"bytesInOutput":0}},"bytes":1313},"packages/plugins/plugin-graph/dist/lib/node/graph-Q4KLVTNI.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3328},"packages/plugins/plugin-graph/dist/lib/node/graph-Q4KLVTNI.cjs":{"imports":[{"path":"effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-graph","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-graph/src/graph.ts","inputs":{"packages/plugins/plugin-graph/src/graph.ts":{"bytesInOutput":1200}},"bytes":1329}}}
@@ -1,39 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
-
3
- // packages/plugins/plugin-graph/src/graph.ts
4
- import { Record } from "effect";
5
- import { Capabilities, contributes } from "@dxos/app-framework";
6
- import { flattenExtensions, GraphBuilder, ROOT_ID } from "@dxos/app-graph";
7
- var graph_default = async (context) => {
8
- const registry = context.getCapability(Capabilities.RxRegistry);
9
- const builder = GraphBuilder.from(
10
- /* localStorage.getItem(KEY) ?? */
11
- void 0,
12
- registry
13
- );
14
- const unsubscribe = registry.subscribe(context.capabilities(Capabilities.AppGraphBuilder), (extensions) => {
15
- const next = flattenExtensions(extensions);
16
- const current = Record.values(registry.get(builder.extensions));
17
- const removed = current.filter(({ id }) => !next.some(({ id: nextId }) => nextId === id));
18
- removed.forEach((extension) => builder.removeExtension(extension.id));
19
- next.forEach((extension) => builder.addExtension(extension));
20
- }, {
21
- immediate: true
22
- });
23
- void builder.graph.expand(ROOT_ID);
24
- setupDevtools(builder.graph);
25
- return contributes(Capabilities.AppGraph, {
26
- graph: builder.graph,
27
- explore: builder.explore
28
- }, () => {
29
- unsubscribe();
30
- });
31
- };
32
- var setupDevtools = (graph) => {
33
- globalThis.composer ??= {};
34
- globalThis.composer.graph = graph;
35
- };
36
- export {
37
- graph_default as default
38
- };
39
- //# sourceMappingURL=graph-J5YUB3RG.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/graph.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Record } from 'effect';\n\nimport { Capabilities, contributes, type PluginContext } from '@dxos/app-framework';\nimport { flattenExtensions, GraphBuilder, type ExpandableGraph, ROOT_ID } from '@dxos/app-graph';\n\n// TODO(wittjosiah): Remove or restore graph caching.\n// import { GRAPH_PLUGIN } from './meta';\n\n// const KEY = `${GRAPH_PLUGIN}/app-graph`;\n\nexport default async (context: PluginContext) => {\n const registry = context.getCapability(Capabilities.RxRegistry);\n const builder = GraphBuilder.from(/* localStorage.getItem(KEY) ?? */ undefined, registry);\n // const interval = setInterval(() => {\n // localStorage.setItem(KEY, builder.graph.pickle());\n // }, 5_000);\n\n const unsubscribe = registry.subscribe(\n context.capabilities(Capabilities.AppGraphBuilder),\n (extensions) => {\n const next = flattenExtensions(extensions);\n const current = Record.values(registry.get(builder.extensions));\n const removed = current.filter(({ id }) => !next.some(({ id: nextId }) => nextId === id));\n removed.forEach((extension) => builder.removeExtension(extension.id));\n next.forEach((extension) => builder.addExtension(extension));\n },\n { immediate: true },\n );\n\n // await builder.initialize();\n void builder.graph.expand(ROOT_ID);\n\n setupDevtools(builder.graph);\n\n return contributes(Capabilities.AppGraph, { graph: builder.graph, explore: builder.explore }, () => {\n // clearInterval(interval);\n unsubscribe();\n });\n};\n\n// Expose the graph to the window for debugging.\nconst setupDevtools = (graph: ExpandableGraph) => {\n (globalThis as any).composer ??= {};\n (globalThis as any).composer.graph = graph;\n};\n"],
5
- "mappings": ";;;AAIA,SAASA,cAAc;AAEvB,SAASC,cAAcC,mBAAuC;AAC9D,SAASC,mBAAmBC,cAAoCC,eAAe;AAO/E,IAAA,gBAAe,OAAOC,YAAAA;AACpB,QAAMC,WAAWD,QAAQE,cAAcC,aAAaC,UAAU;AAC9D,QAAMC,UAAUC,aAAaC;;IAAwCC;IAAWP;EAAAA;AAKhF,QAAMQ,cAAcR,SAASS,UAC3BV,QAAQW,aAAaR,aAAaS,eAAe,GACjD,CAACC,eAAAA;AACC,UAAMC,OAAOC,kBAAkBF,UAAAA;AAC/B,UAAMG,UAAUC,OAAOC,OAAOjB,SAASkB,IAAId,QAAQQ,UAAU,CAAA;AAC7D,UAAMO,UAAUJ,QAAQK,OAAO,CAAC,EAAEC,GAAE,MAAO,CAACR,KAAKS,KAAK,CAAC,EAAED,IAAIE,OAAM,MAAOA,WAAWF,EAAAA,CAAAA;AACrFF,YAAQK,QAAQ,CAACC,cAAcrB,QAAQsB,gBAAgBD,UAAUJ,EAAE,CAAA;AACnER,SAAKW,QAAQ,CAACC,cAAcrB,QAAQuB,aAAaF,SAAAA,CAAAA;EACnD,GACA;IAAEG,WAAW;EAAK,CAAA;AAIpB,OAAKxB,QAAQyB,MAAMC,OAAOC,OAAAA;AAE1BC,gBAAc5B,QAAQyB,KAAK;AAE3B,SAAOI,YAAY/B,aAAagC,UAAU;IAAEL,OAAOzB,QAAQyB;IAAOM,SAAS/B,QAAQ+B;EAAQ,GAAG,MAAA;AAE5F3B,gBAAAA;EACF,CAAA;AACF;AAGA,IAAMwB,gBAAgB,CAACH,UAAAA;AACpBO,aAAmBC,aAAa,CAAC;AACjCD,aAAmBC,SAASR,QAAQA;AACvC;",
6
- "names": ["Record", "Capabilities", "contributes", "flattenExtensions", "GraphBuilder", "ROOT_ID", "context", "registry", "getCapability", "Capabilities", "RxRegistry", "builder", "GraphBuilder", "from", "undefined", "unsubscribe", "subscribe", "capabilities", "AppGraphBuilder", "extensions", "next", "flattenExtensions", "current", "Record", "values", "get", "removed", "filter", "id", "some", "nextId", "forEach", "extension", "removeExtension", "addExtension", "immediate", "graph", "expand", "ROOT_ID", "setupDevtools", "contributes", "AppGraph", "explore", "globalThis", "composer"]
7
- }