@dxos/plugin-conductor 0.8.4-main.dedc0f3 → 0.8.4-main.dfabb4ec29

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 (106) hide show
  1. package/README.md +7 -3
  2. package/dist/lib/neutral/CanvasContainer-FRHZ75VW.mjs +87 -0
  3. package/dist/lib/neutral/CanvasContainer-FRHZ75VW.mjs.map +7 -0
  4. package/dist/lib/neutral/ConductorPlugin.mjs +26 -0
  5. package/dist/lib/neutral/ConductorPlugin.mjs.map +7 -0
  6. package/dist/lib/neutral/capabilities/index.mjs +9 -0
  7. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  8. package/dist/lib/neutral/chunk-M7R7GNE7.mjs +24 -0
  9. package/dist/lib/neutral/chunk-M7R7GNE7.mjs.map +7 -0
  10. package/dist/lib/neutral/components/index.mjs +1 -0
  11. package/dist/lib/neutral/containers/index.mjs +7 -0
  12. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  13. package/dist/lib/neutral/create-object-IXEBIQ4H.mjs +25 -0
  14. package/dist/lib/neutral/create-object-IXEBIQ4H.mjs.map +7 -0
  15. package/dist/lib/neutral/index.mjs +7 -0
  16. package/dist/lib/neutral/meta.json +1 -0
  17. package/dist/lib/neutral/meta.mjs +7 -0
  18. package/dist/lib/neutral/meta.mjs.map +7 -0
  19. package/dist/lib/neutral/plugin.mjs +11 -0
  20. package/dist/lib/neutral/plugin.mjs.map +7 -0
  21. package/dist/lib/neutral/react-surface-G24N7CYF.mjs +22 -0
  22. package/dist/lib/neutral/react-surface-G24N7CYF.mjs.map +7 -0
  23. package/dist/lib/neutral/translations.mjs +28 -0
  24. package/dist/lib/neutral/translations.mjs.map +7 -0
  25. package/dist/types/src/ConductorPlugin.d.ts +3 -1
  26. package/dist/types/src/ConductorPlugin.d.ts.map +1 -1
  27. package/dist/types/src/ConductorPlugin.test.d.ts +2 -0
  28. package/dist/types/src/ConductorPlugin.test.d.ts.map +1 -0
  29. package/dist/types/src/capabilities/create-object.d.ts +11 -0
  30. package/dist/types/src/capabilities/create-object.d.ts.map +1 -0
  31. package/dist/types/src/capabilities/index.d.ts +8 -2
  32. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  33. package/dist/types/src/capabilities/react-surface.d.ts +3 -2
  34. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  35. package/dist/types/src/components/index.d.ts +0 -4
  36. package/dist/types/src/components/index.d.ts.map +1 -1
  37. package/dist/types/src/containers/CanvasContainer/CanvasContainer.d.ts +6 -0
  38. package/dist/types/src/containers/CanvasContainer/CanvasContainer.d.ts.map +1 -0
  39. package/dist/types/src/containers/CanvasContainer/index.d.ts +2 -0
  40. package/dist/types/src/containers/CanvasContainer/index.d.ts.map +1 -0
  41. package/dist/types/src/containers/index.d.ts +3 -0
  42. package/dist/types/src/containers/index.d.ts.map +1 -0
  43. package/dist/types/src/index.d.ts +0 -1
  44. package/dist/types/src/index.d.ts.map +1 -1
  45. package/dist/types/src/meta.d.ts +2 -3
  46. package/dist/types/src/meta.d.ts.map +1 -1
  47. package/dist/types/src/plugin.d.ts +3 -0
  48. package/dist/types/src/plugin.d.ts.map +1 -0
  49. package/dist/types/src/translations.d.ts +24 -14
  50. package/dist/types/src/translations.d.ts.map +1 -1
  51. package/dist/types/src/types/index.d.ts +0 -1
  52. package/dist/types/src/types/index.d.ts.map +1 -1
  53. package/dist/types/tsconfig.tsbuildinfo +1 -1
  54. package/package.json +81 -47
  55. package/src/ConductorPlugin.test.ts +27 -0
  56. package/src/ConductorPlugin.tsx +15 -56
  57. package/src/capabilities/create-object.ts +29 -0
  58. package/src/capabilities/index.ts +3 -3
  59. package/src/capabilities/react-surface.tsx +24 -15
  60. package/src/components/index.ts +1 -5
  61. package/src/{components → containers/CanvasContainer}/CanvasContainer.tsx +49 -46
  62. package/src/containers/CanvasContainer/index.ts +5 -0
  63. package/src/containers/index.ts +7 -0
  64. package/src/index.ts +0 -1
  65. package/src/meta.ts +9 -7
  66. package/src/plugin.ts +9 -0
  67. package/src/translations.ts +14 -12
  68. package/src/types/index.ts +0 -2
  69. package/dist/lib/browser/CanvasContainer-5TA2MZRA.mjs +0 -94
  70. package/dist/lib/browser/CanvasContainer-5TA2MZRA.mjs.map +0 -7
  71. package/dist/lib/browser/chunk-3AGZDOYQ.mjs +0 -21
  72. package/dist/lib/browser/chunk-3AGZDOYQ.mjs.map +0 -7
  73. package/dist/lib/browser/chunk-IFYNDE3Z.mjs +0 -25
  74. package/dist/lib/browser/chunk-IFYNDE3Z.mjs.map +0 -7
  75. package/dist/lib/browser/index.mjs +0 -94
  76. package/dist/lib/browser/index.mjs.map +0 -7
  77. package/dist/lib/browser/intent-resolver-7OILSFLQ.mjs +0 -34
  78. package/dist/lib/browser/intent-resolver-7OILSFLQ.mjs.map +0 -7
  79. package/dist/lib/browser/meta.json +0 -1
  80. package/dist/lib/browser/react-surface-4DPSMURM.mjs +0 -31
  81. package/dist/lib/browser/react-surface-4DPSMURM.mjs.map +0 -7
  82. package/dist/lib/browser/types/index.mjs +0 -8
  83. package/dist/lib/node-esm/CanvasContainer-I35ILMX5.mjs +0 -96
  84. package/dist/lib/node-esm/CanvasContainer-I35ILMX5.mjs.map +0 -7
  85. package/dist/lib/node-esm/chunk-ELHUFMCW.mjs +0 -26
  86. package/dist/lib/node-esm/chunk-ELHUFMCW.mjs.map +0 -7
  87. package/dist/lib/node-esm/chunk-TL52TWDT.mjs +0 -23
  88. package/dist/lib/node-esm/chunk-TL52TWDT.mjs.map +0 -7
  89. package/dist/lib/node-esm/index.mjs +0 -95
  90. package/dist/lib/node-esm/index.mjs.map +0 -7
  91. package/dist/lib/node-esm/intent-resolver-U3TIHMS2.mjs +0 -35
  92. package/dist/lib/node-esm/intent-resolver-U3TIHMS2.mjs.map +0 -7
  93. package/dist/lib/node-esm/meta.json +0 -1
  94. package/dist/lib/node-esm/react-surface-SXQJZJRL.mjs +0 -32
  95. package/dist/lib/node-esm/react-surface-SXQJZJRL.mjs.map +0 -7
  96. package/dist/lib/node-esm/types/index.mjs +0 -9
  97. package/dist/types/src/capabilities/intent-resolver.d.ts +0 -4
  98. package/dist/types/src/capabilities/intent-resolver.d.ts.map +0 -1
  99. package/dist/types/src/components/CanvasContainer.d.ts +0 -8
  100. package/dist/types/src/components/CanvasContainer.d.ts.map +0 -1
  101. package/dist/types/src/types/schema.d.ts +0 -18
  102. package/dist/types/src/types/schema.d.ts.map +0 -1
  103. package/src/capabilities/intent-resolver.ts +0 -27
  104. package/src/types/schema.ts +0 -20
  105. /package/dist/lib/{browser/types → neutral/components}/index.mjs.map +0 -0
  106. /package/dist/lib/{node-esm/types → neutral}/index.mjs.map +0 -0
package/README.md CHANGED
@@ -28,10 +28,10 @@ The system is built on `@dxos/graph` as the core abstraction layer Canvas visual
28
28
  - ComputeNode state changes are Effect signals
29
29
  - Canvas React components automatically update based on these signals
30
30
 
31
-
32
31
  ## Development
33
32
 
34
33
  ### Phase 1: Basic editor
34
+
35
35
  - [x] Canvas with pan and zoom (`@dxos/react-canvaas`).
36
36
  - [x] General graph data structure (`@dxos/graph`).
37
37
  - [x] Radix-style Editor component, with Canvas, Grid and Toolbar.
@@ -47,7 +47,8 @@ The system is built on `@dxos/graph` as the core abstraction layer Canvas visual
47
47
  - [ ] Undo/redo (history).
48
48
  - [ ] Snap to edges or center? (currently center).
49
49
 
50
- ### Phase 2:
50
+ ### Phase 2:
51
+
51
52
  - [x] FunctionShape components with properties and anchor points. Add/delete and Play buttons.
52
53
  - [x] Shape registry.
53
54
  - [x] Custom frames.
@@ -77,9 +78,11 @@ The system is built on `@dxos/graph` as the core abstraction layer Canvas visual
77
78
  - [x] GPT (with prompt and base prompt inputs).
78
79
 
79
80
  ### Phase 4:
80
- - [ ] Group/collapse nodes; hierarchical graph editor.
81
+
82
+ - [ ] Group/collapse nodes; hierarchical graph editor.
81
83
 
82
84
  ### Technical Debt
85
+
83
86
  - [x] `AttentionContainer` (and key management).
84
87
  - [ ] Factor out common Toolbar pattern (with state observers).
85
88
  - [ ] Reconcile Graph with framework (ECHO, app-graph, etc.)
@@ -87,4 +90,5 @@ The system is built on `@dxos/graph` as the core abstraction layer Canvas visual
87
90
  - [ ] TypedObject and schema id property.
88
91
 
89
92
  ### Design Issues
93
+
90
94
  - [ ] Represent all compute node properties as inputs? (e.g., trigger).
@@ -0,0 +1,87 @@
1
+ // src/containers/CanvasContainer/CanvasContainer.tsx
2
+ import React, { Fragment, useEffect, useMemo, useRef } from "react";
3
+ import { useCapability } from "@dxos/app-framework/ui";
4
+ import { ComputeGraphModel } from "@dxos/conductor";
5
+ import { Obj } from "@dxos/echo";
6
+ import { AutomationCapabilities } from "@dxos/plugin-automation";
7
+ import { useObject } from "@dxos/react-client/echo";
8
+ import { Flex } from "@dxos/react-ui";
9
+ import { ComputeContext, ComputeGraphController, ComputeShapeLayout, computeShapes, useComputeGraphController, useGraphMonitor } from "@dxos/react-ui-canvas-compute";
10
+ import { CanvasGraphModel, Editor, KeyboardContainer, ShapeRegistry } from "@dxos/react-ui-canvas-editor";
11
+ var CanvasContainer = ({ role, subject, attendableId: _attendableId }) => {
12
+ const [canvas] = useObject(subject);
13
+ const id = Obj.getDXN(canvas).toString();
14
+ const graph = useMemo(() => CanvasGraphModel.create(canvas.layout, (fn) => Obj.update(subject, fn)), [
15
+ subject,
16
+ canvas.layout
17
+ ]);
18
+ const controller = useGraphController(subject);
19
+ const graphMonitor = useGraphMonitor(controller?.graph);
20
+ const registry = useMemo(() => new ShapeRegistry(computeShapes), []);
21
+ const editorRef = useRef(null);
22
+ useComputeGraphController({
23
+ controller,
24
+ graph,
25
+ editorRef
26
+ });
27
+ const layout = useMemo(() => controller && registry ? new ComputeShapeLayout(controller, registry) : void 0, [
28
+ controller,
29
+ registry
30
+ ]);
31
+ if (!controller) {
32
+ return;
33
+ }
34
+ const Root = role === "section" ? Container : Fragment;
35
+ return /* @__PURE__ */ React.createElement(ComputeContext.Provider, {
36
+ value: {
37
+ controller
38
+ }
39
+ }, /* @__PURE__ */ React.createElement(Root, null, /* @__PURE__ */ React.createElement(KeyboardContainer, {
40
+ id
41
+ }, /* @__PURE__ */ React.createElement(Editor.Root, {
42
+ id,
43
+ ref: editorRef,
44
+ graph,
45
+ graphMonitor,
46
+ registry,
47
+ layout
48
+ }, /* @__PURE__ */ React.createElement(Editor.Canvas, null), /* @__PURE__ */ React.createElement(Editor.UI, {
49
+ showTools: true
50
+ })))));
51
+ };
52
+ var Container = (props) => /* @__PURE__ */ React.createElement(Flex, {
53
+ ...props,
54
+ classNames: "aspect-square"
55
+ });
56
+ var useGraphController = (canvas) => {
57
+ const db = Obj.getDatabase(canvas);
58
+ const runtime = useCapability(AutomationCapabilities.ComputeRuntime);
59
+ const [computeGraph] = useObject(canvas.computeGraph);
60
+ const controller = useMemo(() => {
61
+ if (!canvas.computeGraph?.target || !db) {
62
+ return null;
63
+ }
64
+ const model = new ComputeGraphModel(canvas.computeGraph?.target);
65
+ const controller2 = new ComputeGraphController(runtime.getRuntime(db.spaceId), model);
66
+ return controller2;
67
+ }, [
68
+ computeGraph,
69
+ db
70
+ ]);
71
+ useEffect(() => {
72
+ if (!controller) {
73
+ return;
74
+ }
75
+ void controller.open();
76
+ return () => {
77
+ void controller.close();
78
+ };
79
+ }, [
80
+ controller
81
+ ]);
82
+ return controller;
83
+ };
84
+ export {
85
+ CanvasContainer as default
86
+ };
87
+ //# sourceMappingURL=CanvasContainer-FRHZ75VW.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/containers/CanvasContainer/CanvasContainer.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { Fragment, useEffect, useMemo, useRef } from 'react';\n\nimport { useCapability } from '@dxos/app-framework/ui';\nimport { type AppSurface } from '@dxos/app-toolkit/ui';\nimport { ComputeGraphModel } from '@dxos/conductor';\nimport { Obj } from '@dxos/echo';\nimport { AutomationCapabilities } from '@dxos/plugin-automation';\nimport { useObject } from '@dxos/react-client/echo';\nimport { Flex, type FlexProps } from '@dxos/react-ui';\nimport {\n ComputeContext,\n ComputeGraphController,\n type ComputeShape,\n ComputeShapeLayout,\n computeShapes,\n useComputeGraphController,\n useGraphMonitor,\n} from '@dxos/react-ui-canvas-compute';\nimport {\n type CanvasBoard,\n CanvasGraphModel,\n Editor,\n type EditorController,\n KeyboardContainer,\n ShapeRegistry,\n} from '@dxos/react-ui-canvas-editor';\n\nexport type CanvasContainerProps = AppSurface.ObjectArticleProps<CanvasBoard.CanvasBoard>;\n\nexport const CanvasContainer = ({ role, subject, attendableId: _attendableId }: CanvasContainerProps) => {\n const [canvas] = useObject(subject);\n const id = Obj.getDXN(canvas).toString();\n const graph = useMemo(\n () => CanvasGraphModel.create<ComputeShape>(canvas.layout, (fn) => Obj.update(subject, fn)),\n [subject, canvas.layout],\n );\n const controller = useGraphController(subject);\n const graphMonitor = useGraphMonitor(controller?.graph);\n const registry = useMemo(() => new ShapeRegistry(computeShapes), []);\n const editorRef = useRef<EditorController>(null);\n useComputeGraphController({ controller, graph, editorRef });\n\n // Layout.\n const layout = useMemo(\n () => (controller && registry ? new ComputeShapeLayout(controller, registry) : undefined),\n [controller, registry],\n );\n\n if (!controller) {\n return;\n }\n\n const Root = role === 'section' ? Container : Fragment;\n\n return (\n <ComputeContext.Provider value={{ controller }}>\n <Root>\n <KeyboardContainer id={id}>\n <Editor.Root\n id={id}\n ref={editorRef}\n graph={graph}\n graphMonitor={graphMonitor as any}\n registry={registry}\n layout={layout}\n >\n <Editor.Canvas />\n <Editor.UI showTools />\n </Editor.Root>\n </KeyboardContainer>\n </Root>\n </ComputeContext.Provider>\n );\n};\n\nconst Container = (props: FlexProps) => <Flex {...props} classNames='aspect-square' />;\n\nconst useGraphController = (canvas: CanvasBoard.CanvasBoard) => {\n const db = Obj.getDatabase(canvas);\n const runtime = useCapability(AutomationCapabilities.ComputeRuntime);\n const [computeGraph] = useObject(canvas.computeGraph);\n const controller = useMemo(() => {\n if (!canvas.computeGraph?.target || !db) {\n return null;\n }\n const model = new ComputeGraphModel(canvas.computeGraph?.target);\n const controller = new ComputeGraphController(runtime.getRuntime(db.spaceId), model);\n return controller;\n }, [computeGraph, db]);\n\n useEffect(() => {\n if (!controller) {\n return;\n }\n\n void controller.open();\n return () => {\n void controller.close();\n };\n }, [controller]);\n\n return controller;\n};\n"],
5
+ "mappings": ";AAIA,OAAOA,SAASC,UAAUC,WAAWC,SAASC,cAAc;AAE5D,SAASC,qBAAqB;AAE9B,SAASC,yBAAyB;AAClC,SAASC,WAAW;AACpB,SAASC,8BAA8B;AACvC,SAASC,iBAAiB;AAC1B,SAASC,YAA4B;AACrC,SACEC,gBACAC,wBAEAC,oBACAC,eACAC,2BACAC,uBACK;AACP,SAEEC,kBACAC,QAEAC,mBACAC,qBACK;AAIA,IAAMC,kBAAkB,CAAC,EAAEC,MAAMC,SAASC,cAAcC,cAAa,MAAwB;AAClG,QAAM,CAACC,MAAAA,IAAUjB,UAAUc,OAAAA;AAC3B,QAAMI,KAAKpB,IAAIqB,OAAOF,MAAAA,EAAQG,SAAQ;AACtC,QAAMC,QAAQ3B,QACZ,MAAMc,iBAAiBc,OAAqBL,OAAOM,QAAQ,CAACC,OAAO1B,IAAI2B,OAAOX,SAASU,EAAAA,CAAAA,GACvF;IAACV;IAASG,OAAOM;GAAO;AAE1B,QAAMG,aAAaC,mBAAmBb,OAAAA;AACtC,QAAMc,eAAerB,gBAAgBmB,YAAYL,KAAAA;AACjD,QAAMQ,WAAWnC,QAAQ,MAAM,IAAIiB,cAAcN,aAAAA,GAAgB,CAAA,CAAE;AACnE,QAAMyB,YAAYnC,OAAyB,IAAA;AAC3CW,4BAA0B;IAAEoB;IAAYL;IAAOS;EAAU,CAAA;AAGzD,QAAMP,SAAS7B,QACb,MAAOgC,cAAcG,WAAW,IAAIzB,mBAAmBsB,YAAYG,QAAAA,IAAYE,QAC/E;IAACL;IAAYG;GAAS;AAGxB,MAAI,CAACH,YAAY;AACf;EACF;AAEA,QAAMM,OAAOnB,SAAS,YAAYoB,YAAYzC;AAE9C,SACE,sBAAA,cAACU,eAAegC,UAAQ;IAACC,OAAO;MAAET;IAAW;KAC3C,sBAAA,cAACM,MAAAA,MACC,sBAAA,cAACtB,mBAAAA;IAAkBQ;KACjB,sBAAA,cAACT,OAAOuB,MAAI;IACVd;IACAkB,KAAKN;IACLT;IACAO;IACAC;IACAN;KAEA,sBAAA,cAACd,OAAO4B,QAAM,IAAA,GACd,sBAAA,cAAC5B,OAAO6B,IAAE;IAACC,WAAAA;;AAMvB;AAEA,IAAMN,YAAY,CAACO,UAAqB,sBAAA,cAACvC,MAAAA;EAAM,GAAGuC;EAAOC,YAAW;;AAEpE,IAAMd,qBAAqB,CAACV,WAAAA;AAC1B,QAAMyB,KAAK5C,IAAI6C,YAAY1B,MAAAA;AAC3B,QAAM2B,UAAUhD,cAAcG,uBAAuB8C,cAAc;AACnE,QAAM,CAACC,YAAAA,IAAgB9C,UAAUiB,OAAO6B,YAAY;AACpD,QAAMpB,aAAahC,QAAQ,MAAA;AACzB,QAAI,CAACuB,OAAO6B,cAAcC,UAAU,CAACL,IAAI;AACvC,aAAO;IACT;AACA,UAAMM,QAAQ,IAAInD,kBAAkBoB,OAAO6B,cAAcC,MAAAA;AACzD,UAAMrB,cAAa,IAAIvB,uBAAuByC,QAAQK,WAAWP,GAAGQ,OAAO,GAAGF,KAAAA;AAC9E,WAAOtB;EACT,GAAG;IAACoB;IAAcJ;GAAG;AAErBjD,YAAU,MAAA;AACR,QAAI,CAACiC,YAAY;AACf;IACF;AAEA,SAAKA,WAAWyB,KAAI;AACpB,WAAO,MAAA;AACL,WAAKzB,WAAW0B,MAAK;IACvB;EACF,GAAG;IAAC1B;GAAW;AAEf,SAAOA;AACT;",
6
+ "names": ["React", "Fragment", "useEffect", "useMemo", "useRef", "useCapability", "ComputeGraphModel", "Obj", "AutomationCapabilities", "useObject", "Flex", "ComputeContext", "ComputeGraphController", "ComputeShapeLayout", "computeShapes", "useComputeGraphController", "useGraphMonitor", "CanvasGraphModel", "Editor", "KeyboardContainer", "ShapeRegistry", "CanvasContainer", "role", "subject", "attendableId", "_attendableId", "canvas", "id", "getDXN", "toString", "graph", "create", "layout", "fn", "update", "controller", "useGraphController", "graphMonitor", "registry", "editorRef", "undefined", "Root", "Container", "Provider", "value", "ref", "Canvas", "UI", "showTools", "props", "classNames", "db", "getDatabase", "runtime", "ComputeRuntime", "computeGraph", "target", "model", "getRuntime", "spaceId", "open", "close"]
7
+ }
@@ -0,0 +1,26 @@
1
+ // src/ConductorPlugin.tsx
2
+ import { Plugin } from "@dxos/app-framework";
3
+ import { AppPlugin } from "@dxos/app-toolkit";
4
+ import { ComputeGraph } from "@dxos/conductor";
5
+ import { CanvasBoard } from "@dxos/react-ui-canvas-editor";
6
+ import { CreateObject, ReactSurface } from "#capabilities";
7
+ import { meta } from "#meta";
8
+ import { translations } from "#translations";
9
+ var ConductorPlugin = Plugin.define(meta).pipe(AppPlugin.addCreateObjectModule({
10
+ activate: CreateObject
11
+ }), AppPlugin.addSchemaModule({
12
+ schema: [
13
+ CanvasBoard.CanvasBoard,
14
+ ComputeGraph
15
+ ]
16
+ }), AppPlugin.addSurfaceModule({
17
+ activate: ReactSurface
18
+ }), AppPlugin.addTranslationsModule({
19
+ translations
20
+ }), Plugin.make);
21
+ var ConductorPlugin_default = ConductorPlugin;
22
+ export {
23
+ ConductorPlugin,
24
+ ConductorPlugin_default as default
25
+ };
26
+ //# sourceMappingURL=ConductorPlugin.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/ConductorPlugin.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Plugin } from '@dxos/app-framework';\nimport { AppPlugin } from '@dxos/app-toolkit';\nimport { ComputeGraph } from '@dxos/conductor';\nimport { CanvasBoard } from '@dxos/react-ui-canvas-editor';\n\nimport { CreateObject, ReactSurface } from '#capabilities';\nimport { meta } from '#meta';\nimport { translations } from '#translations';\n\nexport const ConductorPlugin = Plugin.define(meta).pipe(\n AppPlugin.addCreateObjectModule({ activate: CreateObject }),\n AppPlugin.addSchemaModule({ schema: [CanvasBoard.CanvasBoard, ComputeGraph] }),\n AppPlugin.addSurfaceModule({ activate: ReactSurface }),\n AppPlugin.addTranslationsModule({ translations }),\n Plugin.make,\n);\n\nexport default ConductorPlugin;\n"],
5
+ "mappings": ";AAIA,SAASA,cAAc;AACvB,SAASC,iBAAiB;AAC1B,SAASC,oBAAoB;AAC7B,SAASC,mBAAmB;AAE5B,SAASC,cAAcC,oBAAoB;AAC3C,SAASC,YAAY;AACrB,SAASC,oBAAoB;AAEtB,IAAMC,kBAAkBR,OAAOS,OAAOH,IAAAA,EAAMI,KACjDT,UAAUU,sBAAsB;EAAEC,UAAUR;AAAa,CAAA,GACzDH,UAAUY,gBAAgB;EAAEC,QAAQ;IAACX,YAAYA;IAAaD;;AAAc,CAAA,GAC5ED,UAAUc,iBAAiB;EAAEH,UAAUP;AAAa,CAAA,GACpDJ,UAAUe,sBAAsB;EAAET;AAAa,CAAA,GAC/CP,OAAOiB,IAAI;AAGb,IAAA,0BAAeT;",
6
+ "names": ["Plugin", "AppPlugin", "ComputeGraph", "CanvasBoard", "CreateObject", "ReactSurface", "meta", "translations", "ConductorPlugin", "define", "pipe", "addCreateObjectModule", "activate", "addSchemaModule", "schema", "addSurfaceModule", "addTranslationsModule", "make"]
7
+ }
@@ -0,0 +1,9 @@
1
+ // src/capabilities/index.ts
2
+ import { Capability } from "@dxos/app-framework";
3
+ var CreateObject = Capability.lazy("CreateObject", () => import("../create-object-IXEBIQ4H.mjs"));
4
+ var ReactSurface = Capability.lazy("ReactSurface", () => import("../react-surface-G24N7CYF.mjs"));
5
+ export {
6
+ CreateObject,
7
+ ReactSurface
8
+ };
9
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/capabilities/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\n\nexport const CreateObject = Capability.lazy('CreateObject', () => import('./create-object'));\nexport const ReactSurface = Capability.lazy('ReactSurface', () => import('./react-surface'));\n"],
5
+ "mappings": ";AAIA,SAASA,kBAAkB;AAEpB,IAAMC,eAAeD,WAAWE,KAAK,gBAAgB,MAAM,OAAO,+BAAA,CAAA;AAClE,IAAMC,eAAeH,WAAWE,KAAK,gBAAgB,MAAM,OAAO,+BAAA,CAAA;",
6
+ "names": ["Capability", "CreateObject", "lazy", "ReactSurface"]
7
+ }
@@ -0,0 +1,24 @@
1
+ // src/meta.ts
2
+ import { trim } from "@dxos/util";
3
+ var meta = {
4
+ id: "org.dxos.plugin.conductor",
5
+ name: "Conductor",
6
+ description: trim`
7
+ Visual workflow builder using node-based compute graphs to orchestrate complex AI agent pipelines.
8
+ Connect data sources, transformations, and AI models in a drag-and-drop interface for advanced automation.
9
+ `,
10
+ icon: "ph--infinity--regular",
11
+ iconHue: "sky",
12
+ source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-conductor",
13
+ tags: [
14
+ "labs"
15
+ ],
16
+ screenshots: [
17
+ "https://dxos.network/plugin-details-canvas-dark.png"
18
+ ]
19
+ };
20
+
21
+ export {
22
+ meta
23
+ };
24
+ //# sourceMappingURL=chunk-M7R7GNE7.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 Plugin } from '@dxos/app-framework';\nimport { trim } from '@dxos/util';\n\nexport const meta: Plugin.Meta = {\n id: 'org.dxos.plugin.conductor',\n name: 'Conductor',\n description: trim`\n Visual workflow builder using node-based compute graphs to orchestrate complex AI agent pipelines.\n Connect data sources, transformations, and AI models in a drag-and-drop interface for advanced automation.\n `,\n icon: 'ph--infinity--regular',\n iconHue: 'sky',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-conductor',\n tags: ['labs'],\n screenshots: ['https://dxos.network/plugin-details-canvas-dark.png'],\n};\n"],
5
+ "mappings": ";AAKA,SAASA,YAAY;AAEd,IAAMC,OAAoB;EAC/BC,IAAI;EACJC,MAAM;EACNC,aAAaJ;;;;EAIbK,MAAM;EACNC,SAAS;EACTC,QAAQ;EACRC,MAAM;IAAC;;EACPC,aAAa;IAAC;;AAChB;",
6
+ "names": ["trim", "meta", "id", "name", "description", "icon", "iconHue", "source", "tags", "screenshots"]
7
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,7 @@
1
+ // src/containers/index.ts
2
+ import { lazy } from "react";
3
+ var CanvasContainer = lazy(() => import("../CanvasContainer-FRHZ75VW.mjs"));
4
+ export {
5
+ CanvasContainer
6
+ };
7
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/containers/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { type ComponentType, lazy } from 'react';\n\nexport const CanvasContainer: ComponentType<any> = lazy(() => import('./CanvasContainer'));\n"],
5
+ "mappings": ";AAIA,SAA6BA,YAAY;AAElC,IAAMC,kBAAsCD,KAAK,MAAM,OAAO,iCAAA,CAAA;",
6
+ "names": ["lazy", "CanvasContainer"]
7
+ }
@@ -0,0 +1,25 @@
1
+ // src/capabilities/create-object.ts
2
+ import * as Effect from "effect/Effect";
3
+ import { Capability } from "@dxos/app-framework";
4
+ import { Operation } from "@dxos/compute";
5
+ import { SpaceOperation } from "@dxos/plugin-space";
6
+ import { SpaceCapabilities } from "@dxos/plugin-space";
7
+ import { CanvasBoard } from "@dxos/react-ui-canvas-editor";
8
+ var create_object_default = Capability.makeModule(Effect.fnUntraced(function* () {
9
+ return Capability.contributes(SpaceCapabilities.CreateObjectEntry, {
10
+ id: CanvasBoard.CanvasBoard.typename,
11
+ createObject: (props, options) => Effect.gen(function* () {
12
+ const object = CanvasBoard.make(props);
13
+ return yield* Operation.invoke(SpaceOperation.AddObject, {
14
+ object,
15
+ target: options.target,
16
+ hidden: true,
17
+ targetNodeId: options.targetNodeId
18
+ });
19
+ })
20
+ });
21
+ }));
22
+ export {
23
+ create_object_default as default
24
+ };
25
+ //# sourceMappingURL=create-object-IXEBIQ4H.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/create-object.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capability } from '@dxos/app-framework';\nimport { Operation } from '@dxos/compute';\nimport { SpaceOperation } from '@dxos/plugin-space';\nimport { SpaceCapabilities } from '@dxos/plugin-space';\nimport { CanvasBoard } from '@dxos/react-ui-canvas-editor';\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n return Capability.contributes(SpaceCapabilities.CreateObjectEntry, {\n id: CanvasBoard.CanvasBoard.typename,\n createObject: (props, options) =>\n Effect.gen(function* () {\n const object = CanvasBoard.make(props);\n return yield* Operation.invoke(SpaceOperation.AddObject, {\n object,\n target: options.target,\n hidden: true,\n targetNodeId: options.targetNodeId,\n });\n }),\n });\n }),\n);\n"],
5
+ "mappings": ";AAIA,YAAYA,YAAY;AAExB,SAASC,kBAAkB;AAC3B,SAASC,iBAAiB;AAC1B,SAASC,sBAAsB;AAC/B,SAASC,yBAAyB;AAClC,SAASC,mBAAmB;AAE5B,IAAA,wBAAeJ,WAAWK,WACjBC,kBAAW,aAAA;AAChB,SAAON,WAAWO,YAAYJ,kBAAkBK,mBAAmB;IACjEC,IAAIL,YAAYA,YAAYM;IAC5BC,cAAc,CAACC,OAAOC,YACbC,WAAI,aAAA;AACT,YAAMC,SAASX,YAAYY,KAAKJ,KAAAA;AAChC,aAAO,OAAOX,UAAUgB,OAAOf,eAAegB,WAAW;QACvDH;QACAI,QAAQN,QAAQM;QAChBC,QAAQ;QACRC,cAAcR,QAAQQ;MACxB,CAAA;IACF,CAAA;EACJ,CAAA;AACF,CAAA,CAAA;",
6
+ "names": ["Effect", "Capability", "Operation", "SpaceOperation", "SpaceCapabilities", "CanvasBoard", "makeModule", "fnUntraced", "contributes", "CreateObjectEntry", "id", "typename", "createObject", "props", "options", "gen", "object", "make", "invoke", "AddObject", "target", "hidden", "targetNodeId"]
7
+ }
@@ -0,0 +1,7 @@
1
+ import {
2
+ meta
3
+ } from "./chunk-M7R7GNE7.mjs";
4
+ export {
5
+ meta
6
+ };
7
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"inputs":{"src/meta.ts":{"bytes":2174,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/index.ts":{"bytes":368,"imports":[{"path":"src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"src/ConductorPlugin.tsx":{"bytes":2977,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true},{"path":"#capabilities","kind":"import-statement","external":true},{"path":"#meta","kind":"import-statement","external":true},{"path":"#translations","kind":"import-statement","external":true}],"format":"esm"},"src/capabilities/create-object.ts":{"bytes":3444,"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true}],"format":"esm"},"src/capabilities/react-surface.tsx":{"bytes":3778,"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/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit/ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true},{"path":"#containers","kind":"import-statement","external":true}],"format":"esm"},"src/capabilities/index.ts":{"bytes":1130,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/capabilities/create-object.ts","kind":"dynamic-import","original":"./create-object"},{"path":"src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"src/components/index.ts":{"bytes":288,"imports":[],"format":"esm"},"src/containers/CanvasContainer/CanvasContainer.tsx":{"bytes":11325,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-automation","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-compute","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true}],"format":"esm"},"src/containers/CanvasContainer/index.ts":{"bytes":524,"imports":[{"path":"src/containers/CanvasContainer/CanvasContainer.tsx","kind":"import-statement","original":"./CanvasContainer"}],"format":"esm"},"src/containers/index.ts":{"bytes":720,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"src/containers/CanvasContainer/index.ts","kind":"dynamic-import","original":"./CanvasContainer"}],"format":"esm"},"src/plugin.ts":{"bytes":870,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"#plugin","kind":"dynamic-import","external":true}],"format":"esm"},"src/translations.ts":{"bytes":2789,"imports":[{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true},{"path":"#meta","kind":"import-statement","external":true}],"format":"esm"}},"outputs":{"dist/lib/neutral/create-object-IXEBIQ4H.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1790},"dist/lib/neutral/create-object-IXEBIQ4H.mjs":{"imports":[{"path":"effect/Effect","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/compute","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/create-object.ts","inputs":{"src/capabilities/create-object.ts":{"bytesInOutput":815}},"bytes":951},"dist/lib/neutral/react-surface-G24N7CYF.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1939},"dist/lib/neutral/react-surface-G24N7CYF.mjs":{"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/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit/ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true},{"path":"#containers","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/capabilities/react-surface.tsx","inputs":{"src/capabilities/react-surface.tsx":{"bytesInOutput":929}},"bytes":1066},"dist/lib/neutral/CanvasContainer-FRHZ75VW.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6067},"dist/lib/neutral/CanvasContainer-FRHZ75VW.mjs":{"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework/ui","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/echo","kind":"import-statement","external":true},{"path":"@dxos/plugin-automation","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-compute","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"src/containers/CanvasContainer/index.ts","inputs":{"src/containers/CanvasContainer/CanvasContainer.tsx":{"bytesInOutput":2843},"src/containers/CanvasContainer/index.ts":{"bytesInOutput":0}},"bytes":2992},"dist/lib/neutral/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/neutral/index.mjs":{"imports":[{"path":"dist/lib/neutral/chunk-M7R7GNE7.mjs","kind":"import-statement"}],"exports":["meta"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":0}},"bytes":101},"dist/lib/neutral/ConductorPlugin.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1547},"dist/lib/neutral/ConductorPlugin.mjs":{"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/app-toolkit","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true},{"path":"#capabilities","kind":"import-statement","external":true},{"path":"#meta","kind":"import-statement","external":true},{"path":"#translations","kind":"import-statement","external":true}],"exports":["ConductorPlugin","default"],"entryPoint":"src/ConductorPlugin.tsx","inputs":{"src/ConductorPlugin.tsx":{"bytesInOutput":713}},"bytes":853},"dist/lib/neutral/capabilities/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":600},"dist/lib/neutral/capabilities/index.mjs":{"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"dist/lib/neutral/create-object-IXEBIQ4H.mjs","kind":"dynamic-import"},{"path":"dist/lib/neutral/react-surface-G24N7CYF.mjs","kind":"dynamic-import"}],"exports":["CreateObject","ReactSurface"],"entryPoint":"src/capabilities/index.ts","inputs":{"src/capabilities/index.ts":{"bytesInOutput":248}},"bytes":355},"dist/lib/neutral/components/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/neutral/components/index.mjs":{"imports":[],"exports":[],"entryPoint":"src/components/index.ts","inputs":{"src/components/index.ts":{"bytesInOutput":0}},"bytes":35},"dist/lib/neutral/containers/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":405},"dist/lib/neutral/containers/index.mjs":{"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"dist/lib/neutral/CanvasContainer-FRHZ75VW.mjs","kind":"dynamic-import"}],"exports":["CanvasContainer"],"entryPoint":"src/containers/index.ts","inputs":{"src/containers/index.ts":{"bytesInOutput":107}},"bytes":199},"dist/lib/neutral/meta.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/neutral/meta.mjs":{"imports":[{"path":"dist/lib/neutral/chunk-M7R7GNE7.mjs","kind":"import-statement"}],"exports":["meta"],"entryPoint":"src/meta.ts","inputs":{},"bytes":100},"dist/lib/neutral/plugin.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":447},"dist/lib/neutral/plugin.mjs":{"imports":[{"path":"dist/lib/neutral/chunk-M7R7GNE7.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"#plugin","kind":"dynamic-import","external":true}],"exports":["ConductorPlugin"],"entryPoint":"src/plugin.ts","inputs":{"src/plugin.ts":{"bytesInOutput":112}},"bytes":243},"dist/lib/neutral/chunk-M7R7GNE7.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1059},"dist/lib/neutral/chunk-M7R7GNE7.mjs":{"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["meta"],"inputs":{"src/meta.ts":{"bytesInOutput":589}},"bytes":668},"dist/lib/neutral/translations.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1340},"dist/lib/neutral/translations.mjs":{"imports":[{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true},{"path":"#meta","kind":"import-statement","external":true}],"exports":["translations"],"entryPoint":"src/translations.ts","inputs":{"src/translations.ts":{"bytesInOutput":712}},"bytes":804}}}
@@ -0,0 +1,7 @@
1
+ import {
2
+ meta
3
+ } from "./chunk-M7R7GNE7.mjs";
4
+ export {
5
+ meta
6
+ };
7
+ //# sourceMappingURL=meta.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,11 @@
1
+ import {
2
+ meta
3
+ } from "./chunk-M7R7GNE7.mjs";
4
+
5
+ // src/plugin.ts
6
+ import { Plugin } from "@dxos/app-framework";
7
+ var ConductorPlugin = Plugin.lazy(meta, () => import("#plugin"));
8
+ export {
9
+ ConductorPlugin
10
+ };
11
+ //# sourceMappingURL=plugin.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/plugin.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Plugin } from '@dxos/app-framework';\n\nimport { meta } from './meta';\n\nexport const ConductorPlugin = Plugin.lazy(meta, () => import('#plugin'));\n"],
5
+ "mappings": ";;;;;AAIA,SAASA,cAAc;AAIhB,IAAMC,kBAAkBC,OAAOC,KAAKC,MAAM,MAAM,OAAO,SAAA,CAAA;",
6
+ "names": ["Plugin", "ConductorPlugin", "Plugin", "lazy", "meta"]
7
+ }
@@ -0,0 +1,22 @@
1
+ // src/capabilities/react-surface.tsx
2
+ import * as Effect from "effect/Effect";
3
+ import React from "react";
4
+ import { Capabilities, Capability } from "@dxos/app-framework";
5
+ import { Surface } from "@dxos/app-framework/ui";
6
+ import { AppSurface } from "@dxos/app-toolkit/ui";
7
+ import { CanvasBoard } from "@dxos/react-ui-canvas-editor";
8
+ import { CanvasContainer } from "#containers";
9
+ var react_surface_default = Capability.makeModule(() => Effect.succeed(Capability.contributes(Capabilities.ReactSurface, Surface.create({
10
+ id: "root",
11
+ // TODO(wittjosiah): Split into multiple surfaces if this filter proves too strict for non-article roles.
12
+ filter: AppSurface.oneOf(AppSurface.object(AppSurface.Article, CanvasBoard.CanvasBoard), AppSurface.object(AppSurface.Section, CanvasBoard.CanvasBoard)),
13
+ component: ({ data, role }) => /* @__PURE__ */ React.createElement(CanvasContainer, {
14
+ role,
15
+ subject: data.subject,
16
+ attendableId: data.attendableId
17
+ })
18
+ }))));
19
+ export {
20
+ react_surface_default as default
21
+ };
22
+ //# sourceMappingURL=react-surface-G24N7CYF.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/react-surface.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React from 'react';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { Surface } from '@dxos/app-framework/ui';\nimport { AppSurface } from '@dxos/app-toolkit/ui';\nimport { CanvasBoard } from '@dxos/react-ui-canvas-editor';\n\nimport { CanvasContainer } from '#containers';\n\nexport default Capability.makeModule(() =>\n Effect.succeed(\n Capability.contributes(\n Capabilities.ReactSurface,\n Surface.create({\n id: 'root',\n // TODO(wittjosiah): Split into multiple surfaces if this filter proves too strict for non-article roles.\n filter: AppSurface.oneOf(\n AppSurface.object(AppSurface.Article, CanvasBoard.CanvasBoard),\n AppSurface.object(AppSurface.Section, CanvasBoard.CanvasBoard),\n ),\n component: ({ data, role }) => (\n <CanvasContainer role={role} subject={data.subject} attendableId={data.attendableId} />\n ),\n }),\n ),\n ),\n);\n"],
5
+ "mappings": ";AAIA,YAAYA,YAAY;AACxB,OAAOC,WAAW;AAElB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,eAAe;AACxB,SAASC,kBAAkB;AAC3B,SAASC,mBAAmB;AAE5B,SAASC,uBAAuB;AAEhC,IAAA,wBAAeJ,WAAWK,WAAW,MAC5BC,eACLN,WAAWO,YACTR,aAAaS,cACbP,QAAQQ,OAAO;EACbC,IAAI;;EAEJC,QAAQT,WAAWU,MACjBV,WAAWW,OAAOX,WAAWY,SAASX,YAAYA,WAAW,GAC7DD,WAAWW,OAAOX,WAAWa,SAASZ,YAAYA,WAAW,CAAA;EAE/Da,WAAW,CAAC,EAAEC,MAAMC,KAAI,MACtB,sBAAA,cAACd,iBAAAA;IAAgBc;IAAYC,SAASF,KAAKE;IAASC,cAAcH,KAAKG;;AAE3E,CAAA,CAAA,CAAA,CAAA;",
6
+ "names": ["Effect", "React", "Capabilities", "Capability", "Surface", "AppSurface", "CanvasBoard", "CanvasContainer", "makeModule", "succeed", "contributes", "ReactSurface", "create", "id", "filter", "oneOf", "object", "Article", "Section", "component", "data", "role", "subject", "attendableId"]
7
+ }
@@ -0,0 +1,28 @@
1
+ // src/translations.ts
2
+ import { CanvasBoard } from "@dxos/react-ui-canvas-editor";
3
+ import { meta } from "#meta";
4
+ var translations = [
5
+ {
6
+ "en-US": {
7
+ [CanvasBoard.CanvasBoard.typename]: {
8
+ "typename.label": "Circuit",
9
+ "typename.label_zero": "Circuits",
10
+ "typename.label_one": "Circuit",
11
+ "typename.label_other": "Circuits",
12
+ "object-name.placeholder": "New circuit",
13
+ "add-object.label": "Add circuit",
14
+ "rename-object.label": "Rename circuit",
15
+ "delete-object.label": "Delete circuit",
16
+ "object-deleted.label": "Circuit deleted"
17
+ },
18
+ [meta.id]: {
19
+ "plugin.name": "Conductor",
20
+ "content.placeholder": "Enter text..."
21
+ }
22
+ }
23
+ }
24
+ ];
25
+ export {
26
+ translations
27
+ };
28
+ //# sourceMappingURL=translations.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/translations.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Resource } from '@dxos/react-ui';\nimport { CanvasBoard } from '@dxos/react-ui-canvas-editor';\n\nimport { meta } from '#meta';\n\nexport const translations = [\n {\n 'en-US': {\n [CanvasBoard.CanvasBoard.typename]: {\n 'typename.label': 'Circuit',\n 'typename.label_zero': 'Circuits',\n 'typename.label_one': 'Circuit',\n 'typename.label_other': 'Circuits',\n 'object-name.placeholder': 'New circuit',\n 'add-object.label': 'Add circuit',\n 'rename-object.label': 'Rename circuit',\n 'delete-object.label': 'Delete circuit',\n 'object-deleted.label': 'Circuit deleted',\n },\n [meta.id]: {\n 'plugin.name': 'Conductor',\n 'content.placeholder': 'Enter text...',\n },\n },\n },\n] as const satisfies Resource[];\n"],
5
+ "mappings": ";AAKA,SAASA,mBAAmB;AAE5B,SAASC,YAAY;AAEd,IAAMC,eAAe;EAC1B;IACE,SAAS;MACP,CAACF,YAAYA,YAAYG,QAAQ,GAAG;QAClC,kBAAkB;QAClB,uBAAuB;QACvB,sBAAsB;QACtB,wBAAwB;QACxB,2BAA2B;QAC3B,oBAAoB;QACpB,uBAAuB;QACvB,uBAAuB;QACvB,wBAAwB;MAC1B;MACA,CAACF,KAAKG,EAAE,GAAG;QACT,eAAe;QACf,uBAAuB;MACzB;IACF;EACF;;",
6
+ "names": ["CanvasBoard", "meta", "translations", "typename", "id"]
7
+ }
@@ -1,2 +1,4 @@
1
- export declare const ConductorPlugin: () => import("@dxos/app-framework").Plugin;
1
+ import { Plugin } from '@dxos/app-framework';
2
+ export declare const ConductorPlugin: Plugin.PluginFactory<void>;
3
+ export default ConductorPlugin;
2
4
  //# sourceMappingURL=ConductorPlugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConductorPlugin.d.ts","sourceRoot":"","sources":["../../../src/ConductorPlugin.tsx"],"names":[],"mappings":"AAiBA,eAAO,MAAM,eAAe,4CA6CxB,CAAC"}
1
+ {"version":3,"file":"ConductorPlugin.d.ts","sourceRoot":"","sources":["../../../src/ConductorPlugin.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAS7C,eAAO,MAAM,eAAe,4BAM3B,CAAC;eAEa,eAAe"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ConductorPlugin.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConductorPlugin.test.d.ts","sourceRoot":"","sources":["../../../src/ConductorPlugin.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import * as Effect from 'effect/Effect';
2
+ import { Capability } from '@dxos/app-framework';
3
+ import { SpaceCapabilities } from '@dxos/plugin-space';
4
+ declare const _default: (props: void) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<Readonly<{
5
+ id: string;
6
+ createObject: import("@dxos/plugin-space").CreateObject;
7
+ inputSchema?: import("effect/Schema").Schema.AnyNoContext;
8
+ customPanel?: import("react").ComponentType<SpaceCapabilities.CreateObjectCustomPanelProps>;
9
+ }>>>, never, never>;
10
+ export default _default;
11
+ //# sourceMappingURL=create-object.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-object.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/create-object.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,3 +1,9 @@
1
- export declare const IntentResolver: (props?: unknown) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<import("@dxos/app-framework").Capabilities.IntentResolver>> | import("@dxos/app-framework").AnyCapability[]>>;
2
- export declare const ReactSurface: (props?: unknown) => Promise<() => Promise<import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<import("@dxos/app-framework").Capabilities.ReactSurface>> | import("@dxos/app-framework").AnyCapability[]>>;
1
+ import { Capability } from '@dxos/app-framework';
2
+ export declare const CreateObject: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<Readonly<{
3
+ id: string;
4
+ createObject: import("@dxos/plugin-space").CreateObject;
5
+ inputSchema?: import("effect/Schema").Schema.AnyNoContext;
6
+ customPanel?: import("react").ComponentType<import("@dxos/plugin-space").SpaceCapabilities.CreateObjectCustomPanelProps>;
7
+ }>>>, Error>;
8
+ export declare const ReactSurface: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<import("@dxos/app-framework/Capabilities").ReactSurface>>, Error>;
3
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,cAAc,8OAA0C,CAAC;AACtE,eAAO,MAAM,YAAY,4OAAwC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,YAAY;;;;;YAAmE,CAAC;AAC7F,eAAO,MAAM,YAAY,iJAAmE,CAAC"}
@@ -1,4 +1,5 @@
1
- import { Capabilities } from '@dxos/app-framework';
2
- declare const _default: () => import("@dxos/app-framework").Capability<import("@dxos/app-framework").InterfaceDef<Capabilities.ReactSurface>>;
1
+ import * as Effect from 'effect/Effect';
2
+ import { Capabilities, Capability } from '@dxos/app-framework';
3
+ declare const _default: (props: void) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<Capabilities.ReactSurface>>, never, never>;
3
4
  export default _default;
4
5
  //# sourceMappingURL=react-surface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/react-surface.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAA8B,MAAM,qBAAqB,CAAC;;AAO/E,wBASI"}
1
+ {"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/react-surface.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1,5 +1 @@
1
- export declare const CanvasContainer: import("react").LazyExoticComponent<({ canvas, role }: {
2
- canvas: import("@dxos/react-ui-canvas-editor").CanvasBoardType;
3
- role: string;
4
- }) => import("react").JSX.Element | undefined>;
5
1
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,eAAe;;;8CAA0C,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import { type AppSurface } from '@dxos/app-toolkit/ui';
3
+ import { type CanvasBoard } from '@dxos/react-ui-canvas-editor';
4
+ export type CanvasContainerProps = AppSurface.ObjectArticleProps<CanvasBoard.CanvasBoard>;
5
+ export declare const CanvasContainer: ({ role, subject, attendableId: _attendableId }: CanvasContainerProps) => React.JSX.Element | undefined;
6
+ //# sourceMappingURL=CanvasContainer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CanvasContainer.d.ts","sourceRoot":"","sources":["../../../../../src/containers/CanvasContainer/CanvasContainer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAGpE,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAevD,OAAO,EACL,KAAK,WAAW,EAMjB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,kBAAkB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;AAE1F,eAAO,MAAM,eAAe,mDAAoD,oBAAoB,kCA4CnG,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { CanvasContainer as default } from './CanvasContainer';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/containers/CanvasContainer/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,IAAI,OAAO,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type ComponentType } from 'react';
2
+ export declare const CanvasContainer: ComponentType<any>;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/containers/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,aAAa,EAAQ,MAAM,OAAO,CAAC;AAEjD,eAAO,MAAM,eAAe,EAAE,aAAa,CAAC,GAAG,CAA2C,CAAC"}
@@ -1,3 +1,2 @@
1
- export * from './ConductorPlugin';
2
1
  export * from './meta';
3
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,QAAQ,CAAC"}
@@ -1,4 +1,3 @@
1
- import { type PluginMeta } from '@dxos/app-framework';
2
- export declare const CONDUCTOR_PLUGIN = "dxos.org/plugin/conductor";
3
- export declare const meta: PluginMeta;
1
+ import { type Plugin } from '@dxos/app-framework';
2
+ export declare const meta: Plugin.Meta;
4
3
  //# sourceMappingURL=meta.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/meta.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,eAAO,MAAM,gBAAgB,8BAA8B,CAAC;AAE5D,eAAO,MAAM,IAAI,EAAE,UASlB,CAAC"}
1
+ {"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/meta.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGlD,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,IAYzB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Plugin } from '@dxos/app-framework';
2
+ export declare const ConductorPlugin: Plugin.PluginFactory<void>;
3
+ //# sourceMappingURL=plugin.d.ts.map