@dxos/plugin-graph 0.7.5-main.9d26e3a → 0.7.5-main.9d2a38b

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 (58) hide show
  1. package/dist/lib/browser/GraphContext-VQKUKWLP.mjs +10 -0
  2. package/dist/lib/browser/{chunk-SYPRW7IK.mjs → chunk-7LNMG3EB.mjs} +3 -3
  3. package/dist/lib/browser/chunk-7LNMG3EB.mjs.map +7 -0
  4. package/dist/lib/browser/chunk-L7JM5AMI.mjs +25 -0
  5. package/dist/lib/browser/chunk-L7JM5AMI.mjs.map +7 -0
  6. package/dist/lib/browser/graph-WNFVYZKZ.mjs +30 -0
  7. package/dist/lib/browser/graph-WNFVYZKZ.mjs.map +7 -0
  8. package/dist/lib/browser/index.mjs +28 -51
  9. package/dist/lib/browser/index.mjs.map +4 -4
  10. package/dist/lib/browser/meta.json +1 -1
  11. package/dist/lib/node/{meta.cjs → GraphContext-MUIA2AJE.cjs} +9 -8
  12. package/dist/lib/node/GraphContext-MUIA2AJE.cjs.map +7 -0
  13. package/dist/lib/node/chunk-3QIHDIIS.cjs +55 -0
  14. package/dist/lib/node/chunk-3QIHDIIS.cjs.map +7 -0
  15. package/dist/lib/node/{chunk-PIWXSWR4.cjs → chunk-KHIPMH35.cjs} +7 -7
  16. package/dist/lib/node/chunk-KHIPMH35.cjs.map +7 -0
  17. package/dist/lib/node/graph-HXCMZDUQ.cjs +46 -0
  18. package/dist/lib/node/graph-HXCMZDUQ.cjs.map +7 -0
  19. package/dist/lib/node/index.cjs +26 -46
  20. package/dist/lib/node/index.cjs.map +4 -4
  21. package/dist/lib/node/meta.json +1 -1
  22. package/dist/lib/node-esm/GraphContext-VNVZEAJK.mjs +11 -0
  23. package/dist/lib/node-esm/{chunk-H3EEX7DI.mjs → chunk-IHM26RSC.mjs} +3 -3
  24. package/dist/lib/node-esm/chunk-IHM26RSC.mjs.map +7 -0
  25. package/dist/lib/node-esm/chunk-XY43PHPY.mjs +26 -0
  26. package/dist/lib/node-esm/chunk-XY43PHPY.mjs.map +7 -0
  27. package/dist/lib/node-esm/graph-UQRZMBQ5.mjs +31 -0
  28. package/dist/lib/node-esm/graph-UQRZMBQ5.mjs.map +7 -0
  29. package/dist/lib/node-esm/index.mjs +28 -51
  30. package/dist/lib/node-esm/index.mjs.map +4 -4
  31. package/dist/lib/node-esm/meta.json +1 -1
  32. package/dist/types/src/GraphContext.d.ts +10 -7
  33. package/dist/types/src/GraphContext.d.ts.map +1 -1
  34. package/dist/types/src/GraphPlugin.d.ts +1 -2
  35. package/dist/types/src/GraphPlugin.d.ts.map +1 -1
  36. package/dist/types/src/graph.d.ts +8 -0
  37. package/dist/types/src/graph.d.ts.map +1 -0
  38. package/dist/types/src/index.d.ts +1 -2
  39. package/dist/types/src/index.d.ts.map +1 -1
  40. package/dist/types/src/meta.d.ts +1 -2
  41. package/dist/types/src/meta.d.ts.map +1 -1
  42. package/dist/types/tsconfig.tsbuildinfo +1 -1
  43. package/package.json +8 -17
  44. package/src/GraphContext.tsx +25 -0
  45. package/src/GraphPlugin.ts +28 -0
  46. package/src/graph.ts +36 -0
  47. package/src/index.ts +1 -4
  48. package/src/meta.ts +1 -1
  49. package/dist/lib/browser/chunk-SYPRW7IK.mjs.map +0 -7
  50. package/dist/lib/browser/meta.mjs +0 -9
  51. package/dist/lib/node/chunk-PIWXSWR4.cjs.map +0 -7
  52. package/dist/lib/node/meta.cjs.map +0 -7
  53. package/dist/lib/node-esm/chunk-H3EEX7DI.mjs.map +0 -7
  54. package/dist/lib/node-esm/meta.mjs +0 -10
  55. package/src/GraphContext.ts +0 -15
  56. package/src/GraphPlugin.tsx +0 -56
  57. /package/dist/lib/browser/{meta.mjs.map → GraphContext-VQKUKWLP.mjs.map} +0 -0
  58. /package/dist/lib/node-esm/{meta.mjs.map → GraphContext-VNVZEAJK.mjs.map} +0 -0
@@ -0,0 +1,10 @@
1
+ import {
2
+ GraphContext_default,
3
+ useGraph
4
+ } from "./chunk-L7JM5AMI.mjs";
5
+ import "./chunk-7LNMG3EB.mjs";
6
+ export {
7
+ GraphContext_default as default,
8
+ useGraph
9
+ };
10
+ //# sourceMappingURL=GraphContext-VQKUKWLP.mjs.map
@@ -1,11 +1,11 @@
1
1
  // packages/plugins/plugin-graph/src/meta.ts
2
2
  var GRAPH_PLUGIN = "dxos.org/plugin/graph";
3
- var meta_default = {
3
+ var meta = {
4
4
  id: GRAPH_PLUGIN
5
5
  };
6
6
 
7
7
  export {
8
8
  GRAPH_PLUGIN,
9
- meta_default
9
+ meta
10
10
  };
11
- //# sourceMappingURL=chunk-SYPRW7IK.mjs.map
11
+ //# sourceMappingURL=chunk-7LNMG3EB.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/meta.ts"],
4
+ "sourcesContent": ["//\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 = {\n id: GRAPH_PLUGIN,\n} satisfies PluginMeta;\n"],
5
+ "mappings": ";AAMO,IAAMA,eAAe;AAErB,IAAMC,OAAO;EAClBC,IAAIF;AACN;",
6
+ "names": ["GRAPH_PLUGIN", "meta", "id"]
7
+ }
@@ -0,0 +1,25 @@
1
+ import {
2
+ GRAPH_PLUGIN
3
+ } from "./chunk-7LNMG3EB.mjs";
4
+
5
+ // packages/plugins/plugin-graph/src/GraphContext.tsx
6
+ import React, { createContext, useContext } from "react";
7
+ import { Capabilities, contributes, useCapability } from "@dxos/app-framework";
8
+ import { raise } from "@dxos/debug";
9
+ var GraphContext = /* @__PURE__ */ createContext(null);
10
+ var useGraph = () => useContext(GraphContext) ?? raise(new Error("Missing GraphContext"));
11
+ var GraphContext_default = () => contributes(Capabilities.ReactContext, {
12
+ id: GRAPH_PLUGIN,
13
+ context: (props) => {
14
+ const value = useCapability(Capabilities.AppGraph);
15
+ return /* @__PURE__ */ React.createElement(GraphContext.Provider, {
16
+ value
17
+ }, props.children);
18
+ }
19
+ });
20
+
21
+ export {
22
+ useGraph,
23
+ GraphContext_default
24
+ };
25
+ //# sourceMappingURL=chunk-L7JM5AMI.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/GraphContext.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { type Context, createContext, type PropsWithChildren, useContext } from 'react';\n\nimport { Capabilities, contributes, useCapability } from '@dxos/app-framework';\nimport { type GraphBuilder } from '@dxos/app-graph';\nimport { raise } from '@dxos/debug';\n\nimport { GRAPH_PLUGIN } from './meta';\n\ntype GraphContextType = Pick<GraphBuilder, 'graph' | 'explore'>;\nconst GraphContext: Context<GraphContextType | null> = createContext<GraphContextType | null>(null);\n\nexport const useGraph = (): GraphContextType => useContext(GraphContext) ?? raise(new Error('Missing GraphContext'));\n\nexport default () =>\n contributes(Capabilities.ReactContext, {\n id: GRAPH_PLUGIN,\n context: (props: PropsWithChildren) => {\n const value = useCapability(Capabilities.AppGraph);\n return <GraphContext.Provider value={value}>{props.children}</GraphContext.Provider>;\n },\n });\n"],
5
+ "mappings": ";;;;;AAIA,OAAOA,SAAuBC,eAAuCC,kBAAkB;AAEvF,SAASC,cAAcC,aAAaC,qBAAqB;AAEzD,SAASC,aAAa;AAKtB,IAAMC,eAAiDC,8BAAuC,IAAA;AAEvF,IAAMC,WAAW,MAAwBC,WAAWH,YAAAA,KAAiBI,MAAM,IAAIC,MAAM,sBAAA,CAAA;AAE5F,IAAA,uBAAe,MACbC,YAAYC,aAAaC,cAAc;EACrCC,IAAIC;EACJC,SAAS,CAACC,UAAAA;AACR,UAAMC,QAAQC,cAAcP,aAAaQ,QAAQ;AACjD,WAAO,sBAAA,cAACf,aAAagB,UAAQ;MAACH;OAAeD,MAAMK,QAAQ;EAC7D;AACF,CAAA;",
6
+ "names": ["React", "createContext", "useContext", "Capabilities", "contributes", "useCapability", "raise", "GraphContext", "createContext", "useGraph", "useContext", "raise", "Error", "contributes", "Capabilities", "ReactContext", "id", "GRAPH_PLUGIN", "context", "props", "value", "useCapability", "AppGraph", "Provider", "children"]
7
+ }
@@ -0,0 +1,30 @@
1
+ import {
2
+ GRAPH_PLUGIN
3
+ } from "./chunk-7LNMG3EB.mjs";
4
+
5
+ // packages/plugins/plugin-graph/src/graph.ts
6
+ import { Capabilities, contributes } from "@dxos/app-framework";
7
+ import { GraphBuilder } from "@dxos/app-graph";
8
+ var KEY = `${GRAPH_PLUGIN}/app-graph`;
9
+ var graph_default = async (context) => {
10
+ const builder = GraphBuilder.from(localStorage.getItem(KEY) ?? void 0);
11
+ const interval = setInterval(() => {
12
+ localStorage.setItem(KEY, builder.graph.pickle());
13
+ }, 5e3);
14
+ context.requestCapabilities(Capabilities.AppGraphBuilder).forEach((extension) => builder.addExtension(extension));
15
+ await builder.initialize();
16
+ await builder.graph.expand(builder.graph.root);
17
+ setupDevtools(builder.graph);
18
+ return contributes(Capabilities.AppGraph, {
19
+ graph: builder.graph,
20
+ explore: (options) => builder.explore(options)
21
+ }, () => clearInterval(interval));
22
+ };
23
+ var setupDevtools = (graph) => {
24
+ globalThis.composer ??= {};
25
+ globalThis.composer.graph = graph;
26
+ };
27
+ export {
28
+ graph_default as default
29
+ };
30
+ //# sourceMappingURL=graph-WNFVYZKZ.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/graph.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, type PluginsContext } from '@dxos/app-framework';\nimport { type Graph, GraphBuilder } from '@dxos/app-graph';\n\nimport { GRAPH_PLUGIN } from './meta';\n\nconst KEY = `${GRAPH_PLUGIN}/app-graph`;\n\nexport default async (context: PluginsContext) => {\n const builder = GraphBuilder.from(localStorage.getItem(KEY) ?? undefined);\n const interval = setInterval(() => {\n localStorage.setItem(KEY, builder.graph.pickle());\n }, 5_000);\n\n context.requestCapabilities(Capabilities.AppGraphBuilder).forEach((extension) => builder.addExtension(extension));\n\n await builder.initialize();\n await builder.graph.expand(builder.graph.root);\n\n setupDevtools(builder.graph);\n\n return contributes(\n Capabilities.AppGraph,\n { graph: builder.graph, explore: (options) => builder.explore(options) },\n () => clearInterval(interval),\n );\n};\n\n// Expose the graph to the window for debugging.\nconst setupDevtools = (graph: Graph) => {\n (globalThis as any).composer ??= {};\n (globalThis as any).composer.graph = graph;\n};\n"],
5
+ "mappings": ";;;;;AAIA,SAASA,cAAcC,mBAAwC;AAC/D,SAAqBC,oBAAoB;AAIzC,IAAMC,MAAM,GAAGC,YAAAA;AAEf,IAAA,gBAAe,OAAOC,YAAAA;AACpB,QAAMC,UAAUC,aAAaC,KAAKC,aAAaC,QAAQP,GAAAA,KAAQQ,MAAAA;AAC/D,QAAMC,WAAWC,YAAY,MAAA;AAC3BJ,iBAAaK,QAAQX,KAAKG,QAAQS,MAAMC,OAAM,CAAA;EAChD,GAAG,GAAA;AAEHX,UAAQY,oBAAoBC,aAAaC,eAAe,EAAEC,QAAQ,CAACC,cAAcf,QAAQgB,aAAaD,SAAAA,CAAAA;AAEtG,QAAMf,QAAQiB,WAAU;AACxB,QAAMjB,QAAQS,MAAMS,OAAOlB,QAAQS,MAAMU,IAAI;AAE7CC,gBAAcpB,QAAQS,KAAK;AAE3B,SAAOY,YACLT,aAAaU,UACb;IAAEb,OAAOT,QAAQS;IAAOc,SAAS,CAACC,YAAYxB,QAAQuB,QAAQC,OAAAA;EAAS,GACvE,MAAMC,cAAcnB,QAAAA,CAAAA;AAExB;AAGA,IAAMc,gBAAgB,CAACX,UAAAA;AACpBiB,aAAmBC,aAAa,CAAC;AACjCD,aAAmBC,SAASlB,QAAQA;AACvC;",
6
+ "names": ["Capabilities", "contributes", "GraphBuilder", "KEY", "GRAPH_PLUGIN", "context", "builder", "GraphBuilder", "from", "localStorage", "getItem", "undefined", "interval", "setInterval", "setItem", "graph", "pickle", "requestCapabilities", "Capabilities", "AppGraphBuilder", "forEach", "extension", "addExtension", "initialize", "expand", "root", "setupDevtools", "contributes", "AppGraph", "explore", "options", "clearInterval", "globalThis", "composer"]
7
+ }
@@ -1,61 +1,38 @@
1
+ import {
2
+ useGraph
3
+ } from "./chunk-L7JM5AMI.mjs";
1
4
  import {
2
5
  GRAPH_PLUGIN,
3
- meta_default
4
- } from "./chunk-SYPRW7IK.mjs";
5
-
6
- // packages/plugins/plugin-graph/src/GraphPlugin.tsx
7
- import React from "react";
8
- import { filterPlugins, parseGraphBuilderPlugin } from "@dxos/app-framework";
9
- import { GraphBuilder } from "@dxos/app-graph";
10
-
11
- // packages/plugins/plugin-graph/src/GraphContext.ts
12
- import { createContext, useContext } from "react";
13
- import { raise } from "@dxos/debug";
14
- var GraphContext = createContext(null);
15
- var useGraph = () => useContext(GraphContext) ?? raise(new Error("Missing GraphContext"));
16
-
17
- // packages/plugins/plugin-graph/src/GraphPlugin.tsx
18
- var KEY = `${GRAPH_PLUGIN}/app-graph`;
19
- var GraphPlugin = () => {
20
- const builder = GraphBuilder.from(localStorage.getItem(KEY) ?? void 0);
21
- let interval;
22
- return {
23
- meta: meta_default,
24
- ready: async ({ plugins }) => {
25
- interval = setInterval(() => {
26
- localStorage.setItem(KEY, builder.graph.pickle());
27
- }, 5e3);
28
- filterPlugins(plugins, parseGraphBuilderPlugin).forEach((plugin) => builder.addExtension(plugin.provides.graph.builder(plugins)));
29
- await builder.initialize();
30
- await builder.graph.expand(builder.graph.root);
31
- const composer = window.composer;
32
- if (typeof composer === "object") {
33
- composer.graph = builder.graph;
34
- }
35
- },
36
- unload: async () => {
37
- clearInterval(interval);
38
- },
39
- provides: {
40
- graph: builder.graph,
41
- // TODO(wittjosiah): This is janky to expose this function in this way.
42
- explore: (options) => builder.explore(options),
43
- context: ({ children }) => /* @__PURE__ */ React.createElement(GraphContext.Provider, {
44
- value: {
45
- graph: builder.graph
46
- }
47
- }, children)
48
- }
49
- };
50
- };
6
+ meta
7
+ } from "./chunk-7LNMG3EB.mjs";
51
8
 
52
9
  // packages/plugins/plugin-graph/src/index.ts
53
10
  export * from "@dxos/app-graph";
54
- var src_default = GraphPlugin;
11
+
12
+ // packages/plugins/plugin-graph/src/GraphPlugin.ts
13
+ import { defineModule, lazy, Events, definePlugin } from "@dxos/app-framework";
14
+ var GraphPlugin = () => definePlugin(meta, [
15
+ defineModule({
16
+ id: `${meta.id}/module/react-context`,
17
+ activatesOn: Events.Startup,
18
+ activate: lazy(() => import("./GraphContext-VQKUKWLP.mjs"))
19
+ }),
20
+ defineModule({
21
+ id: `${meta.id}/module/graph`,
22
+ activatesOn: Events.Startup,
23
+ activatesBefore: [
24
+ Events.SetupAppGraph
25
+ ],
26
+ activatesAfter: [
27
+ Events.AppGraphReady
28
+ ],
29
+ activate: lazy(() => import("./graph-WNFVYZKZ.mjs"))
30
+ })
31
+ ]);
55
32
  export {
56
- GraphContext,
33
+ GRAPH_PLUGIN,
57
34
  GraphPlugin,
58
- src_default as default,
35
+ meta,
59
36
  useGraph
60
37
  };
61
38
  //# sourceMappingURL=index.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/GraphPlugin.tsx", "../../../src/GraphContext.ts", "../../../src/index.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { filterPlugins, type GraphProvides, type PluginDefinition, parseGraphBuilderPlugin } from '@dxos/app-framework';\nimport { GraphBuilder } from '@dxos/app-graph';\n\nimport { GraphContext } from './GraphContext';\nimport meta, { GRAPH_PLUGIN } from './meta';\n\nconst KEY = `${GRAPH_PLUGIN}/app-graph`;\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 = (): PluginDefinition<GraphProvides> => {\n const builder = GraphBuilder.from(localStorage.getItem(KEY) ?? undefined);\n let interval: NodeJS.Timeout | undefined;\n\n return {\n meta,\n ready: async ({ plugins }) => {\n interval = setInterval(() => {\n localStorage.setItem(KEY, builder.graph.pickle());\n }, 5_000);\n\n filterPlugins(plugins, parseGraphBuilderPlugin).forEach((plugin) =>\n builder.addExtension(plugin.provides.graph.builder(plugins)),\n );\n\n await builder.initialize();\n await builder.graph.expand(builder.graph.root);\n\n // Expose the graph to the window for debugging.\n const composer = (window as any).composer;\n if (typeof composer === 'object') {\n composer.graph = builder.graph;\n }\n },\n unload: async () => {\n clearInterval(interval);\n },\n provides: {\n graph: builder.graph,\n // TODO(wittjosiah): This is janky to expose this function in this way.\n explore: (options) => builder.explore(options),\n context: ({ children }) => (\n <GraphContext.Provider value={{ graph: builder.graph }}>{children}</GraphContext.Provider>\n ),\n },\n };\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\n// TODO(wittjosiah): State can be a GraphNode.\nimport { type Context, createContext, useContext } from 'react';\n\nimport { type Graph } from '@dxos/app-graph';\nimport { raise } from '@dxos/debug';\n\nexport type GraphContext = { graph: Graph };\n\nexport const GraphContext: Context<GraphContext | null> = createContext<GraphContext | null>(null);\n\nexport const useGraph = (): GraphContext => useContext(GraphContext) ?? raise(new Error('Missing GraphContext'));\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { GraphPlugin } from './GraphPlugin';\n\nexport default GraphPlugin;\n\nexport * from '@dxos/app-graph';\n\nexport * from './GraphContext';\nexport * from './GraphPlugin';\n"],
5
- "mappings": ";;;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,eAA0DC,+BAA+B;AAClG,SAASC,oBAAoB;;;ACF7B,SAAuBC,eAAeC,kBAAkB;AAGxD,SAASC,aAAa;AAIf,IAAMC,eAA6CC,cAAmC,IAAA;AAEtF,IAAMC,WAAW,MAAoBC,WAAWH,YAAAA,KAAiBI,MAAM,IAAIC,MAAM,sBAAA,CAAA;;;ADFxF,IAAMC,MAAM,GAAGC,YAAAA;AAOR,IAAMC,cAAc,MAAA;AACzB,QAAMC,UAAUC,aAAaC,KAAKC,aAAaC,QAAQP,GAAAA,KAAQQ,MAAAA;AAC/D,MAAIC;AAEJ,SAAO;IACLC;IACAC,OAAO,OAAO,EAAEC,QAAO,MAAE;AACvBH,iBAAWI,YAAY,MAAA;AACrBP,qBAAaQ,QAAQd,KAAKG,QAAQY,MAAMC,OAAM,CAAA;MAChD,GAAG,GAAA;AAEHC,oBAAcL,SAASM,uBAAAA,EAAyBC,QAAQ,CAACC,WACvDjB,QAAQkB,aAAaD,OAAOE,SAASP,MAAMZ,QAAQS,OAAAA,CAAAA,CAAAA;AAGrD,YAAMT,QAAQoB,WAAU;AACxB,YAAMpB,QAAQY,MAAMS,OAAOrB,QAAQY,MAAMU,IAAI;AAG7C,YAAMC,WAAYC,OAAeD;AACjC,UAAI,OAAOA,aAAa,UAAU;AAChCA,iBAASX,QAAQZ,QAAQY;MAC3B;IACF;IACAa,QAAQ,YAAA;AACNC,oBAAcpB,QAAAA;IAChB;IACAa,UAAU;MACRP,OAAOZ,QAAQY;;MAEfe,SAAS,CAACC,YAAY5B,QAAQ2B,QAAQC,OAAAA;MACtCC,SAAS,CAAC,EAAEC,SAAQ,MAClB,sBAAA,cAACC,aAAaC,UAAQ;QAACC,OAAO;UAAErB,OAAOZ,QAAQY;QAAM;SAAIkB,QAAAA;IAE7D;EACF;AACF;;;AE/CA,cAAc;AAFd,IAAA,cAAeI;",
6
- "names": ["React", "filterPlugins", "parseGraphBuilderPlugin", "GraphBuilder", "createContext", "useContext", "raise", "GraphContext", "createContext", "useGraph", "useContext", "raise", "Error", "KEY", "GRAPH_PLUGIN", "GraphPlugin", "builder", "GraphBuilder", "from", "localStorage", "getItem", "undefined", "interval", "meta", "ready", "plugins", "setInterval", "setItem", "graph", "pickle", "filterPlugins", "parseGraphBuilderPlugin", "forEach", "plugin", "addExtension", "provides", "initialize", "expand", "root", "composer", "window", "unload", "clearInterval", "explore", "options", "context", "children", "GraphContext", "Provider", "value", "GraphPlugin"]
3
+ "sources": ["../../../src/index.ts", "../../../src/GraphPlugin.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nexport * from '@dxos/app-graph';\n\nexport * from './GraphContext';\nexport * from './GraphPlugin';\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/react-context`,\n activatesOn: Events.Startup,\n activate: lazy(() => import('./GraphContext')),\n }),\n defineModule({\n id: `${meta.id}/module/graph`,\n activatesOn: Events.Startup,\n activatesBefore: [Events.SetupAppGraph],\n activatesAfter: [Events.AppGraphReady],\n activate: lazy(() => import('./graph')),\n }),\n ]);\n"],
5
+ "mappings": ";;;;;;;;;AAIA,cAAc;;;ACAd,SAASA,cAAcC,MAAMC,QAAQC,oBAAoB;AASlD,IAAMC,cAAc,MACzBC,aAAaC,MAAM;EACjBC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOC;IACpBC,UAAUC,KAAK,MAAM,OAAO,6BAAA,CAAA;EAC9B,CAAA;EACAN,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOC;IACpBG,iBAAiB;MAACJ,OAAOK;;IACzBC,gBAAgB;MAACN,OAAOO;;IACxBL,UAAUC,KAAK,MAAM,OAAO,sBAAA,CAAA;EAC9B,CAAA;CACD;",
6
+ "names": ["defineModule", "lazy", "Events", "definePlugin", "GraphPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "Startup", "activate", "lazy", "activatesBefore", "SetupAppGraph", "activatesAfter", "AppGraphReady"]
7
7
  }
@@ -1 +1 @@
1
- {"inputs":{"packages/plugins/plugin-graph/src/GraphContext.ts":{"bytes":1674,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-graph/src/meta.ts":{"bytes":854,"imports":[],"format":"esm"},"packages/plugins/plugin-graph/src/GraphPlugin.tsx":{"bytes":6567,"imports":[{"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":"packages/plugins/plugin-graph/src/GraphContext.ts","kind":"import-statement","original":"./GraphContext"},{"path":"packages/plugins/plugin-graph/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-graph/src/index.ts":{"bytes":978,"imports":[{"path":"packages/plugins/plugin-graph/src/GraphPlugin.tsx","kind":"import-statement","original":"./GraphPlugin"},{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-graph/src/GraphContext.ts","kind":"import-statement","original":"./GraphContext"},{"path":"packages/plugins/plugin-graph/src/GraphPlugin.tsx","kind":"import-statement","original":"./GraphPlugin"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-graph/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4399},"packages/plugins/plugin-graph/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/plugins/plugin-graph/dist/lib/browser/chunk-SYPRW7IK.mjs","kind":"import-statement"},{"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":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/app-graph","kind":"import-statement","external":true}],"exports":["GraphContext","GraphPlugin","default","useGraph"],"entryPoint":"packages/plugins/plugin-graph/src/index.ts","inputs":{"packages/plugins/plugin-graph/src/GraphPlugin.tsx":{"bytesInOutput":1277},"packages/plugins/plugin-graph/src/GraphContext.ts":{"bytesInOutput":219},"packages/plugins/plugin-graph/src/index.ts":{"bytesInOutput":64}},"bytes":1955},"packages/plugins/plugin-graph/dist/lib/browser/meta.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-graph/dist/lib/browser/meta.mjs":{"imports":[{"path":"packages/plugins/plugin-graph/dist/lib/browser/chunk-SYPRW7IK.mjs","kind":"import-statement"}],"exports":["GRAPH_PLUGIN","default"],"entryPoint":"packages/plugins/plugin-graph/src/meta.ts","inputs":{},"bytes":159},"packages/plugins/plugin-graph/dist/lib/browser/chunk-SYPRW7IK.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":403},"packages/plugins/plugin-graph/dist/lib/browser/chunk-SYPRW7IK.mjs":{"imports":[],"exports":["GRAPH_PLUGIN","meta_default"],"inputs":{"packages/plugins/plugin-graph/src/meta.ts":{"bytesInOutput":87}},"bytes":220}}}
1
+ {"inputs":{"packages/plugins/plugin-graph/src/meta.ts":{"bytes":891,"imports":[],"format":"esm"},"packages/plugins/plugin-graph/src/GraphContext.tsx":{"bytes":3234,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-graph/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-graph/src/graph.ts":{"bytes":4364,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-graph/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-graph/src/GraphPlugin.ts":{"bytes":3276,"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/GraphContext.tsx","kind":"dynamic-import","original":"./GraphContext"},{"path":"packages/plugins/plugin-graph/src/graph.ts","kind":"dynamic-import","original":"./graph"}],"format":"esm"},"packages/plugins/plugin-graph/src/index.ts":{"bytes":797,"imports":[{"path":"@dxos/app-graph","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-graph/src/GraphContext.tsx","kind":"import-statement","original":"./GraphContext"},{"path":"packages/plugins/plugin-graph/src/GraphPlugin.ts","kind":"import-statement","original":"./GraphPlugin"},{"path":"packages/plugins/plugin-graph/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-graph/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1757},"packages/plugins/plugin-graph/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/plugins/plugin-graph/dist/lib/browser/chunk-L7JM5AMI.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-graph/dist/lib/browser/chunk-7LNMG3EB.mjs","kind":"import-statement"},{"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/browser/GraphContext-VQKUKWLP.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-graph/dist/lib/browser/graph-WNFVYZKZ.mjs","kind":"dynamic-import"}],"exports":["GRAPH_PLUGIN","GraphPlugin","meta","useGraph"],"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":552}},"bytes":896},"packages/plugins/plugin-graph/dist/lib/browser/GraphContext-VQKUKWLP.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-graph/dist/lib/browser/GraphContext-VQKUKWLP.mjs":{"imports":[{"path":"packages/plugins/plugin-graph/dist/lib/browser/chunk-L7JM5AMI.mjs","kind":"import-statement"},{"path":"packages/plugins/plugin-graph/dist/lib/browser/chunk-7LNMG3EB.mjs","kind":"import-statement"}],"exports":["default","useGraph"],"entryPoint":"packages/plugins/plugin-graph/src/GraphContext.tsx","inputs":{},"bytes":215},"packages/plugins/plugin-graph/dist/lib/browser/chunk-L7JM5AMI.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1766},"packages/plugins/plugin-graph/dist/lib/browser/chunk-L7JM5AMI.mjs":{"imports":[{"path":"packages/plugins/plugin-graph/dist/lib/browser/chunk-7LNMG3EB.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"exports":["GraphContext_default","useGraph"],"inputs":{"packages/plugins/plugin-graph/src/GraphContext.tsx":{"bytesInOutput":612}},"bytes":814},"packages/plugins/plugin-graph/dist/lib/browser/graph-WNFVYZKZ.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2342},"packages/plugins/plugin-graph/dist/lib/browser/graph-WNFVYZKZ.mjs":{"imports":[{"path":"packages/plugins/plugin-graph/dist/lib/browser/chunk-7LNMG3EB.mjs","kind":"import-statement"},{"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":867}},"bytes":1052},"packages/plugins/plugin-graph/dist/lib/browser/chunk-7LNMG3EB.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":418},"packages/plugins/plugin-graph/dist/lib/browser/chunk-7LNMG3EB.mjs":{"imports":[],"exports":["GRAPH_PLUGIN","meta"],"inputs":{"packages/plugins/plugin-graph/src/meta.ts":{"bytesInOutput":79}},"bytes":204}}}
@@ -16,15 +16,16 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var meta_exports = {};
20
- __export(meta_exports, {
21
- GRAPH_PLUGIN: () => import_chunk_PIWXSWR4.GRAPH_PLUGIN,
22
- default: () => import_chunk_PIWXSWR4.meta_default
19
+ var GraphContext_MUIA2AJE_exports = {};
20
+ __export(GraphContext_MUIA2AJE_exports, {
21
+ default: () => import_chunk_3QIHDIIS.GraphContext_default,
22
+ useGraph: () => import_chunk_3QIHDIIS.useGraph
23
23
  });
24
- module.exports = __toCommonJS(meta_exports);
25
- var import_chunk_PIWXSWR4 = require("./chunk-PIWXSWR4.cjs");
24
+ module.exports = __toCommonJS(GraphContext_MUIA2AJE_exports);
25
+ var import_chunk_3QIHDIIS = require("./chunk-3QIHDIIS.cjs");
26
+ var import_chunk_KHIPMH35 = require("./chunk-KHIPMH35.cjs");
26
27
  // Annotate the CommonJS export names for ESM import in node:
27
28
  0 && (module.exports = {
28
- GRAPH_PLUGIN
29
+ useGraph
29
30
  });
30
- //# sourceMappingURL=meta.cjs.map
31
+ //# sourceMappingURL=GraphContext-MUIA2AJE.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["GraphContext-MUIA2AJE.cjs"],
4
+ "sourcesContent": ["import {\n GraphContext_default,\n useGraph\n} from \"./chunk-3QIHDIIS.cjs\";\nimport \"./chunk-KHIPMH35.cjs\";\nexport {\n GraphContext_default as default,\n useGraph\n};\n//# sourceMappingURL=GraphContext-MUIA2AJE.cjs.map\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAGO;AACP,4BAAO;",
6
+ "names": []
7
+ }
@@ -0,0 +1,55 @@
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 __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var chunk_3QIHDIIS_exports = {};
30
+ __export(chunk_3QIHDIIS_exports, {
31
+ GraphContext_default: () => GraphContext_default,
32
+ useGraph: () => useGraph
33
+ });
34
+ module.exports = __toCommonJS(chunk_3QIHDIIS_exports);
35
+ var import_chunk_KHIPMH35 = require("./chunk-KHIPMH35.cjs");
36
+ var import_react = __toESM(require("react"));
37
+ var import_app_framework = require("@dxos/app-framework");
38
+ var import_debug = require("@dxos/debug");
39
+ var GraphContext = /* @__PURE__ */ (0, import_react.createContext)(null);
40
+ var useGraph = () => (0, import_react.useContext)(GraphContext) ?? (0, import_debug.raise)(new Error("Missing GraphContext"));
41
+ var GraphContext_default = () => (0, import_app_framework.contributes)(import_app_framework.Capabilities.ReactContext, {
42
+ id: import_chunk_KHIPMH35.GRAPH_PLUGIN,
43
+ context: (props) => {
44
+ const value = (0, import_app_framework.useCapability)(import_app_framework.Capabilities.AppGraph);
45
+ return /* @__PURE__ */ import_react.default.createElement(GraphContext.Provider, {
46
+ value
47
+ }, props.children);
48
+ }
49
+ });
50
+ // Annotate the CommonJS export names for ESM import in node:
51
+ 0 && (module.exports = {
52
+ GraphContext_default,
53
+ useGraph
54
+ });
55
+ //# sourceMappingURL=chunk-3QIHDIIS.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/GraphContext.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { type Context, createContext, type PropsWithChildren, useContext } from 'react';\n\nimport { Capabilities, contributes, useCapability } from '@dxos/app-framework';\nimport { type GraphBuilder } from '@dxos/app-graph';\nimport { raise } from '@dxos/debug';\n\nimport { GRAPH_PLUGIN } from './meta';\n\ntype GraphContextType = Pick<GraphBuilder, 'graph' | 'explore'>;\nconst GraphContext: Context<GraphContextType | null> = createContext<GraphContextType | null>(null);\n\nexport const useGraph = (): GraphContextType => useContext(GraphContext) ?? raise(new Error('Missing GraphContext'));\n\nexport default () =>\n contributes(Capabilities.ReactContext, {\n id: GRAPH_PLUGIN,\n context: (props: PropsWithChildren) => {\n const value = useCapability(Capabilities.AppGraph);\n return <GraphContext.Provider value={value}>{props.children}</GraphContext.Provider>;\n },\n });\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,mBAAuF;AAEvF,2BAAyD;AAEzD,mBAAsB;AAKtB,IAAMA,eAAiDC,gDAAuC,IAAA;AAEvF,IAAMC,WAAW,UAAwBC,yBAAWH,YAAAA,SAAiBI,oBAAM,IAAIC,MAAM,sBAAA,CAAA;AAE5F,IAAA,uBAAe,UACbC,kCAAYC,kCAAaC,cAAc;EACrCC,IAAIC;EACJC,SAAS,CAACC,UAAAA;AACR,UAAMC,YAAQC,oCAAcP,kCAAaQ,QAAQ;AACjD,WAAO,6BAAAC,QAAA,cAAChB,aAAaiB,UAAQ;MAACJ;OAAeD,MAAMM,QAAQ;EAC7D;AACF,CAAA;",
6
+ "names": ["GraphContext", "createContext", "useGraph", "useContext", "raise", "Error", "contributes", "Capabilities", "ReactContext", "id", "GRAPH_PLUGIN", "context", "props", "value", "useCapability", "AppGraph", "React", "Provider", "children"]
7
+ }
@@ -16,19 +16,19 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var chunk_PIWXSWR4_exports = {};
20
- __export(chunk_PIWXSWR4_exports, {
19
+ var chunk_KHIPMH35_exports = {};
20
+ __export(chunk_KHIPMH35_exports, {
21
21
  GRAPH_PLUGIN: () => GRAPH_PLUGIN,
22
- meta_default: () => meta_default
22
+ meta: () => meta
23
23
  });
24
- module.exports = __toCommonJS(chunk_PIWXSWR4_exports);
24
+ module.exports = __toCommonJS(chunk_KHIPMH35_exports);
25
25
  var GRAPH_PLUGIN = "dxos.org/plugin/graph";
26
- var meta_default = {
26
+ var meta = {
27
27
  id: GRAPH_PLUGIN
28
28
  };
29
29
  // Annotate the CommonJS export names for ESM import in node:
30
30
  0 && (module.exports = {
31
31
  GRAPH_PLUGIN,
32
- meta_default
32
+ meta
33
33
  });
34
- //# sourceMappingURL=chunk-PIWXSWR4.cjs.map
34
+ //# sourceMappingURL=chunk-KHIPMH35.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/meta.ts"],
4
+ "sourcesContent": ["//\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 = {\n id: GRAPH_PLUGIN,\n} satisfies PluginMeta;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAMA,eAAe;AAErB,IAAMC,OAAO;EAClBC,IAAIF;AACN;",
6
+ "names": ["GRAPH_PLUGIN", "meta", "id"]
7
+ }
@@ -0,0 +1,46 @@
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_HXCMZDUQ_exports = {};
20
+ __export(graph_HXCMZDUQ_exports, {
21
+ default: () => graph_default
22
+ });
23
+ module.exports = __toCommonJS(graph_HXCMZDUQ_exports);
24
+ var import_chunk_KHIPMH35 = require("./chunk-KHIPMH35.cjs");
25
+ var import_app_framework = require("@dxos/app-framework");
26
+ var import_app_graph = require("@dxos/app-graph");
27
+ var KEY = `${import_chunk_KHIPMH35.GRAPH_PLUGIN}/app-graph`;
28
+ var graph_default = async (context) => {
29
+ const builder = import_app_graph.GraphBuilder.from(localStorage.getItem(KEY) ?? void 0);
30
+ const interval = setInterval(() => {
31
+ localStorage.setItem(KEY, builder.graph.pickle());
32
+ }, 5e3);
33
+ context.requestCapabilities(import_app_framework.Capabilities.AppGraphBuilder).forEach((extension) => builder.addExtension(extension));
34
+ await builder.initialize();
35
+ await builder.graph.expand(builder.graph.root);
36
+ setupDevtools(builder.graph);
37
+ return (0, import_app_framework.contributes)(import_app_framework.Capabilities.AppGraph, {
38
+ graph: builder.graph,
39
+ explore: (options) => builder.explore(options)
40
+ }, () => clearInterval(interval));
41
+ };
42
+ var setupDevtools = (graph) => {
43
+ globalThis.composer ??= {};
44
+ globalThis.composer.graph = graph;
45
+ };
46
+ //# sourceMappingURL=graph-HXCMZDUQ.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/graph.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, type PluginsContext } from '@dxos/app-framework';\nimport { type Graph, GraphBuilder } from '@dxos/app-graph';\n\nimport { GRAPH_PLUGIN } from './meta';\n\nconst KEY = `${GRAPH_PLUGIN}/app-graph`;\n\nexport default async (context: PluginsContext) => {\n const builder = GraphBuilder.from(localStorage.getItem(KEY) ?? undefined);\n const interval = setInterval(() => {\n localStorage.setItem(KEY, builder.graph.pickle());\n }, 5_000);\n\n context.requestCapabilities(Capabilities.AppGraphBuilder).forEach((extension) => builder.addExtension(extension));\n\n await builder.initialize();\n await builder.graph.expand(builder.graph.root);\n\n setupDevtools(builder.graph);\n\n return contributes(\n Capabilities.AppGraph,\n { graph: builder.graph, explore: (options) => builder.explore(options) },\n () => clearInterval(interval),\n );\n};\n\n// Expose the graph to the window for debugging.\nconst setupDevtools = (graph: Graph) => {\n (globalThis as any).composer ??= {};\n (globalThis as any).composer.graph = graph;\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAIA,2BAA+D;AAC/D,uBAAyC;AAIzC,IAAMA,MAAM,GAAGC,kCAAAA;AAEf,IAAA,gBAAe,OAAOC,YAAAA;AACpB,QAAMC,UAAUC,8BAAaC,KAAKC,aAAaC,QAAQP,GAAAA,KAAQQ,MAAAA;AAC/D,QAAMC,WAAWC,YAAY,MAAA;AAC3BJ,iBAAaK,QAAQX,KAAKG,QAAQS,MAAMC,OAAM,CAAA;EAChD,GAAG,GAAA;AAEHX,UAAQY,oBAAoBC,kCAAaC,eAAe,EAAEC,QAAQ,CAACC,cAAcf,QAAQgB,aAAaD,SAAAA,CAAAA;AAEtG,QAAMf,QAAQiB,WAAU;AACxB,QAAMjB,QAAQS,MAAMS,OAAOlB,QAAQS,MAAMU,IAAI;AAE7CC,gBAAcpB,QAAQS,KAAK;AAE3B,aAAOY,kCACLT,kCAAaU,UACb;IAAEb,OAAOT,QAAQS;IAAOc,SAAS,CAACC,YAAYxB,QAAQuB,QAAQC,OAAAA;EAAS,GACvE,MAAMC,cAAcnB,QAAAA,CAAAA;AAExB;AAGA,IAAMc,gBAAgB,CAACX,UAAAA;AACpBiB,aAAmBC,aAAa,CAAC;AACjCD,aAAmBC,SAASlB,QAAQA;AACvC;",
6
+ "names": ["KEY", "GRAPH_PLUGIN", "context", "builder", "GraphBuilder", "from", "localStorage", "getItem", "undefined", "interval", "setInterval", "setItem", "graph", "pickle", "requestCapabilities", "Capabilities", "AppGraphBuilder", "forEach", "extension", "addExtension", "initialize", "expand", "root", "setupDevtools", "contributes", "AppGraph", "explore", "options", "clearInterval", "globalThis", "composer"]
7
+ }
@@ -29,59 +29,39 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
29
29
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
30
  var node_exports = {};
31
31
  __export(node_exports, {
32
- GraphContext: () => GraphContext,
32
+ GRAPH_PLUGIN: () => import_chunk_KHIPMH35.GRAPH_PLUGIN,
33
33
  GraphPlugin: () => GraphPlugin,
34
- default: () => src_default,
35
- useGraph: () => useGraph
34
+ meta: () => import_chunk_KHIPMH35.meta,
35
+ useGraph: () => import_chunk_3QIHDIIS.useGraph
36
36
  });
37
37
  module.exports = __toCommonJS(node_exports);
38
- var import_chunk_PIWXSWR4 = require("./chunk-PIWXSWR4.cjs");
39
- var import_react = __toESM(require("react"));
40
- var import_app_framework = require("@dxos/app-framework");
41
- var import_app_graph = require("@dxos/app-graph");
42
- var import_react2 = require("react");
43
- var import_debug = require("@dxos/debug");
38
+ var import_chunk_3QIHDIIS = require("./chunk-3QIHDIIS.cjs");
39
+ var import_chunk_KHIPMH35 = require("./chunk-KHIPMH35.cjs");
44
40
  __reExport(node_exports, require("@dxos/app-graph"), module.exports);
45
- var GraphContext = (0, import_react2.createContext)(null);
46
- var useGraph = () => (0, import_react2.useContext)(GraphContext) ?? (0, import_debug.raise)(new Error("Missing GraphContext"));
47
- var KEY = `${import_chunk_PIWXSWR4.GRAPH_PLUGIN}/app-graph`;
48
- var GraphPlugin = () => {
49
- const builder = import_app_graph.GraphBuilder.from(localStorage.getItem(KEY) ?? void 0);
50
- let interval;
51
- return {
52
- meta: import_chunk_PIWXSWR4.meta_default,
53
- ready: async ({ plugins }) => {
54
- interval = setInterval(() => {
55
- localStorage.setItem(KEY, builder.graph.pickle());
56
- }, 5e3);
57
- (0, import_app_framework.filterPlugins)(plugins, import_app_framework.parseGraphBuilderPlugin).forEach((plugin) => builder.addExtension(plugin.provides.graph.builder(plugins)));
58
- await builder.initialize();
59
- await builder.graph.expand(builder.graph.root);
60
- const composer = window.composer;
61
- if (typeof composer === "object") {
62
- composer.graph = builder.graph;
63
- }
64
- },
65
- unload: async () => {
66
- clearInterval(interval);
67
- },
68
- provides: {
69
- graph: builder.graph,
70
- // TODO(wittjosiah): This is janky to expose this function in this way.
71
- explore: (options) => builder.explore(options),
72
- context: ({ children }) => /* @__PURE__ */ import_react.default.createElement(GraphContext.Provider, {
73
- value: {
74
- graph: builder.graph
75
- }
76
- }, children)
77
- }
78
- };
79
- };
80
- var src_default = GraphPlugin;
41
+ var import_app_framework = require("@dxos/app-framework");
42
+ var GraphPlugin = () => (0, import_app_framework.definePlugin)(import_chunk_KHIPMH35.meta, [
43
+ (0, import_app_framework.defineModule)({
44
+ id: `${import_chunk_KHIPMH35.meta.id}/module/react-context`,
45
+ activatesOn: import_app_framework.Events.Startup,
46
+ activate: (0, import_app_framework.lazy)(() => import("./GraphContext-MUIA2AJE.cjs"))
47
+ }),
48
+ (0, import_app_framework.defineModule)({
49
+ id: `${import_chunk_KHIPMH35.meta.id}/module/graph`,
50
+ activatesOn: import_app_framework.Events.Startup,
51
+ activatesBefore: [
52
+ import_app_framework.Events.SetupAppGraph
53
+ ],
54
+ activatesAfter: [
55
+ import_app_framework.Events.AppGraphReady
56
+ ],
57
+ activate: (0, import_app_framework.lazy)(() => import("./graph-HXCMZDUQ.cjs"))
58
+ })
59
+ ]);
81
60
  // Annotate the CommonJS export names for ESM import in node:
82
61
  0 && (module.exports = {
83
- GraphContext,
62
+ GRAPH_PLUGIN,
84
63
  GraphPlugin,
64
+ meta,
85
65
  useGraph,
86
66
  ...require("@dxos/app-graph")
87
67
  });
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/GraphPlugin.tsx", "../../../src/GraphContext.ts", "../../../src/index.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React from 'react';\n\nimport { filterPlugins, type GraphProvides, type PluginDefinition, parseGraphBuilderPlugin } from '@dxos/app-framework';\nimport { GraphBuilder } from '@dxos/app-graph';\n\nimport { GraphContext } from './GraphContext';\nimport meta, { GRAPH_PLUGIN } from './meta';\n\nconst KEY = `${GRAPH_PLUGIN}/app-graph`;\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 = (): PluginDefinition<GraphProvides> => {\n const builder = GraphBuilder.from(localStorage.getItem(KEY) ?? undefined);\n let interval: NodeJS.Timeout | undefined;\n\n return {\n meta,\n ready: async ({ plugins }) => {\n interval = setInterval(() => {\n localStorage.setItem(KEY, builder.graph.pickle());\n }, 5_000);\n\n filterPlugins(plugins, parseGraphBuilderPlugin).forEach((plugin) =>\n builder.addExtension(plugin.provides.graph.builder(plugins)),\n );\n\n await builder.initialize();\n await builder.graph.expand(builder.graph.root);\n\n // Expose the graph to the window for debugging.\n const composer = (window as any).composer;\n if (typeof composer === 'object') {\n composer.graph = builder.graph;\n }\n },\n unload: async () => {\n clearInterval(interval);\n },\n provides: {\n graph: builder.graph,\n // TODO(wittjosiah): This is janky to expose this function in this way.\n explore: (options) => builder.explore(options),\n context: ({ children }) => (\n <GraphContext.Provider value={{ graph: builder.graph }}>{children}</GraphContext.Provider>\n ),\n },\n };\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\n// TODO(wittjosiah): State can be a GraphNode.\nimport { type Context, createContext, useContext } from 'react';\n\nimport { type Graph } from '@dxos/app-graph';\nimport { raise } from '@dxos/debug';\n\nexport type GraphContext = { graph: Graph };\n\nexport const GraphContext: Context<GraphContext | null> = createContext<GraphContext | null>(null);\n\nexport const useGraph = (): GraphContext => useContext(GraphContext) ?? raise(new Error('Missing GraphContext'));\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { GraphPlugin } from './GraphPlugin';\n\nexport default GraphPlugin;\n\nexport * from '@dxos/app-graph';\n\nexport * from './GraphContext';\nexport * from './GraphPlugin';\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,mBAAkB;AAElB,2BAAkG;AAClG,uBAA6B;ACF7B,IAAAA,gBAAwD;AAGxD,mBAAsB;ACAtB,yBAAc;ADIP,IAAMC,mBAA6CC,6BAAmC,IAAA;AAEtF,IAAMC,WAAW,UAAoBC,0BAAWH,YAAAA,SAAiBI,oBAAM,IAAIC,MAAM,sBAAA,CAAA;ADFxF,IAAMC,MAAM,GAAGC,kCAAAA;AAOR,IAAMC,cAAc,MAAA;AACzB,QAAMC,UAAUC,8BAAaC,KAAKC,aAAaC,QAAQP,GAAAA,KAAQQ,MAAAA;AAC/D,MAAIC;AAEJ,SAAO;IACLC,MAAAA;IACAC,OAAO,OAAO,EAAEC,QAAO,MAAE;AACvBH,iBAAWI,YAAY,MAAA;AACrBP,qBAAaQ,QAAQd,KAAKG,QAAQY,MAAMC,OAAM,CAAA;MAChD,GAAG,GAAA;AAEHC,8CAAcL,SAASM,4CAAAA,EAAyBC,QAAQ,CAACC,WACvDjB,QAAQkB,aAAaD,OAAOE,SAASP,MAAMZ,QAAQS,OAAAA,CAAAA,CAAAA;AAGrD,YAAMT,QAAQoB,WAAU;AACxB,YAAMpB,QAAQY,MAAMS,OAAOrB,QAAQY,MAAMU,IAAI;AAG7C,YAAMC,WAAYC,OAAeD;AACjC,UAAI,OAAOA,aAAa,UAAU;AAChCA,iBAASX,QAAQZ,QAAQY;MAC3B;IACF;IACAa,QAAQ,YAAA;AACNC,oBAAcpB,QAAAA;IAChB;IACAa,UAAU;MACRP,OAAOZ,QAAQY;;MAEfe,SAAS,CAACC,YAAY5B,QAAQ2B,QAAQC,OAAAA;MACtCC,SAAS,CAAC,EAAEC,SAAQ,MAClB,6BAAAC,QAAA,cAACxC,aAAayC,UAAQ;QAACC,OAAO;UAAErB,OAAOZ,QAAQY;QAAM;SAAIkB,QAAAA;IAE7D;EACF;AACF;AEjDA,IAAA,cAAe/B;",
6
- "names": ["import_react", "GraphContext", "createContext", "useGraph", "useContext", "raise", "Error", "KEY", "GRAPH_PLUGIN", "GraphPlugin", "builder", "GraphBuilder", "from", "localStorage", "getItem", "undefined", "interval", "meta", "ready", "plugins", "setInterval", "setItem", "graph", "pickle", "filterPlugins", "parseGraphBuilderPlugin", "forEach", "plugin", "addExtension", "provides", "initialize", "expand", "root", "composer", "window", "unload", "clearInterval", "explore", "options", "context", "children", "React", "Provider", "value"]
3
+ "sources": ["../../../src/index.ts", "../../../src/GraphPlugin.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nexport * from '@dxos/app-graph';\n\nexport * from './GraphContext';\nexport * from './GraphPlugin';\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/react-context`,\n activatesOn: Events.Startup,\n activate: lazy(() => import('./GraphContext')),\n }),\n defineModule({\n id: `${meta.id}/module/graph`,\n activatesOn: Events.Startup,\n activatesBefore: [Events.SetupAppGraph],\n activatesAfter: [Events.AppGraphReady],\n activate: lazy(() => import('./graph')),\n }),\n ]);\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,yBAAc;ACAd,2BAAyD;AASlD,IAAMA,cAAc,UACzBC,mCAAaC,4BAAM;MACjBC,mCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaC,4BAAOC;IACpBC,cAAUC,2BAAK,MAAM,OAAO,6BAAA,CAAA;EAC9B,CAAA;MACAN,mCAAa;IACXC,IAAI,GAAGF,2BAAKE,EAAE;IACdC,aAAaC,4BAAOC;IACpBG,iBAAiB;MAACJ,4BAAOK;;IACzBC,gBAAgB;MAACN,4BAAOO;;IACxBL,cAAUC,2BAAK,MAAM,OAAO,sBAAA,CAAA;EAC9B,CAAA;CACD;",
6
+ "names": ["GraphPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "Startup", "activate", "lazy", "activatesBefore", "SetupAppGraph", "activatesAfter", "AppGraphReady"]
7
7
  }