@dxos/plugin-conductor 0.7.5-main.6ab6199
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +8 -0
- package/README.md +90 -0
- package/dist/lib/browser/CanvasContainer-2LHBQGCB.mjs +95 -0
- package/dist/lib/browser/CanvasContainer-2LHBQGCB.mjs.map +7 -0
- package/dist/lib/browser/chunk-DUUJXCVO.mjs +21 -0
- package/dist/lib/browser/chunk-DUUJXCVO.mjs.map +7 -0
- package/dist/lib/browser/chunk-KTJBLHAY.mjs +26 -0
- package/dist/lib/browser/chunk-KTJBLHAY.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +96 -0
- package/dist/lib/browser/index.mjs.map +7 -0
- package/dist/lib/browser/intent-resolver-IKITW45C.mjs +34 -0
- package/dist/lib/browser/intent-resolver-IKITW45C.mjs.map +7 -0
- package/dist/lib/browser/meta.json +1 -0
- package/dist/lib/browser/react-surface-KAJ3W4G5.mjs +30 -0
- package/dist/lib/browser/react-surface-KAJ3W4G5.mjs.map +7 -0
- package/dist/lib/browser/types.mjs +8 -0
- package/dist/lib/browser/types.mjs.map +7 -0
- package/dist/lib/node/CanvasContainer-YQK4QVL6.cjs +128 -0
- package/dist/lib/node/CanvasContainer-YQK4QVL6.cjs.map +7 -0
- package/dist/lib/node/chunk-3WWLHGNO.cjs +45 -0
- package/dist/lib/node/chunk-3WWLHGNO.cjs.map +7 -0
- package/dist/lib/node/chunk-Y3VOCBBO.cjs +44 -0
- package/dist/lib/node/chunk-Y3VOCBBO.cjs.map +7 -0
- package/dist/lib/node/index.cjs +119 -0
- package/dist/lib/node/index.cjs.map +7 -0
- package/dist/lib/node/intent-resolver-P6OSOKYW.cjs +50 -0
- package/dist/lib/node/intent-resolver-P6OSOKYW.cjs.map +7 -0
- package/dist/lib/node/meta.json +1 -0
- package/dist/lib/node/react-surface-NA74HMQP.cjs +52 -0
- package/dist/lib/node/react-surface-NA74HMQP.cjs.map +7 -0
- package/dist/lib/node/types.cjs +30 -0
- package/dist/lib/node/types.cjs.map +7 -0
- package/dist/lib/node-esm/CanvasContainer-CJHLFVHB.mjs +97 -0
- package/dist/lib/node-esm/CanvasContainer-CJHLFVHB.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-ML7CFPFL.mjs +23 -0
- package/dist/lib/node-esm/chunk-ML7CFPFL.mjs.map +7 -0
- package/dist/lib/node-esm/chunk-ZJLM74FY.mjs +27 -0
- package/dist/lib/node-esm/chunk-ZJLM74FY.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +97 -0
- package/dist/lib/node-esm/index.mjs.map +7 -0
- package/dist/lib/node-esm/intent-resolver-LUU6EZQI.mjs +35 -0
- package/dist/lib/node-esm/intent-resolver-LUU6EZQI.mjs.map +7 -0
- package/dist/lib/node-esm/meta.json +1 -0
- package/dist/lib/node-esm/react-surface-DX25CX6P.mjs +31 -0
- package/dist/lib/node-esm/react-surface-DX25CX6P.mjs.map +7 -0
- package/dist/lib/node-esm/types.mjs +9 -0
- package/dist/lib/node-esm/types.mjs.map +7 -0
- package/dist/types/src/ConductorPlugin.d.ts +2 -0
- package/dist/types/src/ConductorPlugin.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +3 -0
- package/dist/types/src/capabilities/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/intent-resolver.d.ts +4 -0
- package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface.d.ts +4 -0
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
- package/dist/types/src/components/CanvasContainer.d.ts +7 -0
- package/dist/types/src/components/CanvasContainer.d.ts.map +1 -0
- package/dist/types/src/components/index.d.ts +5 -0
- package/dist/types/src/components/index.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +3 -0
- package/dist/types/src/index.d.ts.map +1 -0
- package/dist/types/src/meta.d.ts +11 -0
- package/dist/types/src/meta.d.ts.map +1 -0
- package/dist/types/src/sanity.test.d.ts +2 -0
- package/dist/types/src/sanity.test.d.ts.map +1 -0
- package/dist/types/src/translations.d.ts +25 -0
- package/dist/types/src/translations.d.ts.map +1 -0
- package/dist/types/src/types.d.ts +18 -0
- package/dist/types/src/types.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -0
- package/package.json +70 -0
- package/src/ConductorPlugin.tsx +64 -0
- package/src/capabilities/index.ts +8 -0
- package/src/capabilities/intent-resolver.ts +27 -0
- package/src/capabilities/react-surface.tsx +22 -0
- package/src/components/CanvasContainer.tsx +121 -0
- package/src/components/index.ts +7 -0
- package/src/index.ts +6 -0
- package/src/meta.ts +18 -0
- package/src/sanity.test.ts +11 -0
- package/src/translations.ts +23 -0
- package/src/types.ts +21 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
Copyright (c) 2022 DXOS
|
|
3
|
+
|
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
5
|
+
|
|
6
|
+
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
7
|
+
|
|
8
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# @dxos/plugin-conductor
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
The system is built on `@dxos/graph` as the core abstraction layer Canvas visualization consists of:
|
|
6
|
+
|
|
7
|
+
- A graph of reactive `Shape` objects (esp. `Polygon`, `Path`) and corresponding components
|
|
8
|
+
- Polygons have a generic outline `Frame`, which may include `Anchor` points, which are used to connect `Path` objects
|
|
9
|
+
- Default positional layout with pluggable auto-layout options
|
|
10
|
+
- No direct knowledge of computation logic
|
|
11
|
+
|
|
12
|
+
### Compute functionality:
|
|
13
|
+
|
|
14
|
+
- Implemented via a custom `ShapeRegistry` containing logic gates
|
|
15
|
+
- Shapes maintain dual representation in both canvas and state machine graphs
|
|
16
|
+
- Future iteration will separate these into parallel graphs
|
|
17
|
+
|
|
18
|
+
### State machine behavior:
|
|
19
|
+
|
|
20
|
+
- Nodes follow `ComputeNode<INPUT, OUTPUT>` typing pattern
|
|
21
|
+
- Basic nodes like switches use `Switch<S.Void, S.Boolean>` schema
|
|
22
|
+
- Execution starts from nodes requiring no input
|
|
23
|
+
- Output propagates through graph based on node linkage
|
|
24
|
+
- Node firing occurs when all input properties are satisfied
|
|
25
|
+
|
|
26
|
+
### Reactive integration:
|
|
27
|
+
|
|
28
|
+
- ComputeNode state changes are Effect signals
|
|
29
|
+
- Canvas React components automatically update based on these signals
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
## Development
|
|
33
|
+
|
|
34
|
+
### Phase 1: Basic editor
|
|
35
|
+
- [x] Canvas with pan and zoom (`@dxos/react-canvaas`).
|
|
36
|
+
- [x] General graph data structure (`@dxos/graph`).
|
|
37
|
+
- [x] Radix-style Editor component, with Canvas, Grid and Toolbar.
|
|
38
|
+
- [x] Actions and key shortcuts.
|
|
39
|
+
- [x] Basic shapes: Polygons and Paths.
|
|
40
|
+
- [x] Automatic layout.
|
|
41
|
+
- [x] Path animations (bullets).
|
|
42
|
+
- [x] Form properties.
|
|
43
|
+
- [ ] Copy/paste.
|
|
44
|
+
- [ ] Basic persistence (Graph should be passed an ECHO object, not recreate one).
|
|
45
|
+
- [ ] Grid bug when in Composer.
|
|
46
|
+
- [ ] Move all selected.
|
|
47
|
+
- [ ] Undo/redo (history).
|
|
48
|
+
- [ ] Snap to edges or center? (currently center).
|
|
49
|
+
|
|
50
|
+
### Phase 2:
|
|
51
|
+
- [x] FunctionShape components with properties and anchor points. Add/delete and Play buttons.
|
|
52
|
+
- [x] Shape registry.
|
|
53
|
+
- [x] Custom frames.
|
|
54
|
+
- [x] Custom anchors.
|
|
55
|
+
- [x] Bezier connectors.
|
|
56
|
+
- [x] Pluggable drag/drop logic: determines which drag/drop targets are active; replaces current dragging/linking state.
|
|
57
|
+
- [x] Select/edit Rectangle/ellipse/function name.
|
|
58
|
+
- [x] Delete link when deleting anchor.
|
|
59
|
+
- [ ] Prevent input anchors being used multiple times (custom rule).
|
|
60
|
+
- [ ] Drag to move edge.
|
|
61
|
+
- [ ] Green anchors if match.
|
|
62
|
+
- [ ] Touch input (ipad).
|
|
63
|
+
- [ ] Close frame when resizing.
|
|
64
|
+
- [ ] Scale resizing when zoomed.
|
|
65
|
+
|
|
66
|
+
### Phase 3: State machine
|
|
67
|
+
|
|
68
|
+
- [x] Generalize function anchors (e.g., shape with anchors).
|
|
69
|
+
- [x] Shape => ComputeNode? (e.g., get properties, current state, etc.)
|
|
70
|
+
- [x] State machine (local implementation); run mode.
|
|
71
|
+
- [x] Function shape driven by schema; add property.
|
|
72
|
+
- [x] All compute nodes should be driven by schema.
|
|
73
|
+
- [x] Connect state machine.
|
|
74
|
+
- [x] Logic gates (AND, etc.)
|
|
75
|
+
- [x] Timer.
|
|
76
|
+
- [ ] Select function via properties (show schema).
|
|
77
|
+
- [x] GPT (with prompt and base prompt inputs).
|
|
78
|
+
|
|
79
|
+
### Phase 4:
|
|
80
|
+
- [ ] Group/collapse nodes; hierarchical graph editor.
|
|
81
|
+
|
|
82
|
+
### Technical Debt
|
|
83
|
+
- [x] `AttentionContainer` (and key management).
|
|
84
|
+
- [ ] Factor out common Toolbar pattern (with state observers).
|
|
85
|
+
- [ ] Reconcile Graph with framework (ECHO, app-graph, etc.)
|
|
86
|
+
- [ ] Reconcile @antv layouts with `@dxos/plugin-debug`.
|
|
87
|
+
- [ ] TypedObject and schema id property.
|
|
88
|
+
|
|
89
|
+
### Design Issues
|
|
90
|
+
- [ ] Represent all compute node properties as inputs? (e.g., trigger).
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
// packages/plugins/experimental/plugin-conductor/src/components/CanvasContainer.tsx
|
|
2
|
+
import React, { useEffect, useMemo, useRef } from "react";
|
|
3
|
+
import { AIServiceClientImpl } from "@dxos/assistant";
|
|
4
|
+
import { ComputeGraphModel, EdgeGpt } from "@dxos/conductor";
|
|
5
|
+
import { createStubEdgeIdentity, EdgeClient, EdgeHttpClient } from "@dxos/edge-client";
|
|
6
|
+
import { useConfig } from "@dxos/react-client";
|
|
7
|
+
import { fullyQualifiedId, getSpace } from "@dxos/react-client/echo";
|
|
8
|
+
import { ComputeContext, ComputeGraphController, ComputeShapeLayout, computeShapes, useGraphMonitor } from "@dxos/react-ui-canvas-compute";
|
|
9
|
+
import { CanvasGraphModel, Editor, KeyboardContainer, ShapeRegistry } from "@dxos/react-ui-canvas-editor";
|
|
10
|
+
import { StackItem } from "@dxos/react-ui-stack";
|
|
11
|
+
var createServices = (config, space) => {
|
|
12
|
+
return {
|
|
13
|
+
spaceService: space == null ? void 0 : {
|
|
14
|
+
spaceId: space.id,
|
|
15
|
+
db: space.db
|
|
16
|
+
},
|
|
17
|
+
gpt: config.values.runtime?.services?.ai?.server == null ? void 0 : new EdgeGpt(new AIServiceClientImpl({
|
|
18
|
+
endpoint: config.values.runtime?.services?.ai?.server
|
|
19
|
+
})),
|
|
20
|
+
edgeClient: config.values.runtime?.services?.edge?.url == null ? void 0 : new EdgeClient(createStubEdgeIdentity(), {
|
|
21
|
+
socketEndpoint: config.values.runtime?.services?.edge?.url
|
|
22
|
+
}),
|
|
23
|
+
edgeHttpClient: config.values.runtime?.services?.edge?.url == null ? void 0 : new EdgeHttpClient(config.values.runtime?.services?.edge?.url)
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
var useGraphController = (canvas) => {
|
|
27
|
+
const config = useConfig();
|
|
28
|
+
const space = getSpace(canvas);
|
|
29
|
+
const controller = useMemo(() => {
|
|
30
|
+
if (!canvas.computeGraph?.target) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
const model = new ComputeGraphModel(canvas.computeGraph?.target);
|
|
34
|
+
const controller2 = new ComputeGraphController(model);
|
|
35
|
+
controller2.setServices(createServices(config, space));
|
|
36
|
+
return controller2;
|
|
37
|
+
}, [
|
|
38
|
+
canvas.computeGraph?.target,
|
|
39
|
+
space
|
|
40
|
+
]);
|
|
41
|
+
useEffect(() => {
|
|
42
|
+
if (!controller) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
void controller.open();
|
|
46
|
+
return () => {
|
|
47
|
+
void controller.close();
|
|
48
|
+
};
|
|
49
|
+
}, [
|
|
50
|
+
controller
|
|
51
|
+
]);
|
|
52
|
+
return controller;
|
|
53
|
+
};
|
|
54
|
+
var CanvasContainer = ({ canvas, role }) => {
|
|
55
|
+
const id = fullyQualifiedId(canvas);
|
|
56
|
+
const graph = useMemo(() => CanvasGraphModel.create(canvas.layout), [
|
|
57
|
+
canvas.layout
|
|
58
|
+
]);
|
|
59
|
+
const controller = useGraphController(canvas);
|
|
60
|
+
const graphMonitor = useGraphMonitor(controller?.graph);
|
|
61
|
+
const registry = useMemo(() => new ShapeRegistry(computeShapes), []);
|
|
62
|
+
const editorRef = useRef(null);
|
|
63
|
+
const layout = useMemo(() => controller && registry ? new ComputeShapeLayout(controller, registry) : void 0, [
|
|
64
|
+
controller,
|
|
65
|
+
registry
|
|
66
|
+
]);
|
|
67
|
+
if (!controller) {
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
return /* @__PURE__ */ React.createElement(ComputeContext.Provider, {
|
|
71
|
+
value: {
|
|
72
|
+
controller
|
|
73
|
+
}
|
|
74
|
+
}, /* @__PURE__ */ React.createElement(StackItem.Content, {
|
|
75
|
+
toolbar: false,
|
|
76
|
+
size: role === "section" ? "square" : "intrinsic"
|
|
77
|
+
}, /* @__PURE__ */ React.createElement(KeyboardContainer, {
|
|
78
|
+
id
|
|
79
|
+
}, /* @__PURE__ */ React.createElement(Editor.Root, {
|
|
80
|
+
id,
|
|
81
|
+
ref: editorRef,
|
|
82
|
+
graph,
|
|
83
|
+
graphMonitor,
|
|
84
|
+
registry,
|
|
85
|
+
layout
|
|
86
|
+
}, /* @__PURE__ */ React.createElement(Editor.Canvas, null), /* @__PURE__ */ React.createElement(Editor.UI, {
|
|
87
|
+
showTools: true
|
|
88
|
+
})))));
|
|
89
|
+
};
|
|
90
|
+
var CanvasContainer_default = CanvasContainer;
|
|
91
|
+
export {
|
|
92
|
+
CanvasContainer,
|
|
93
|
+
CanvasContainer_default as default
|
|
94
|
+
};
|
|
95
|
+
//# sourceMappingURL=CanvasContainer-2LHBQGCB.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/components/CanvasContainer.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { useEffect, useMemo, useRef } from 'react';\n\nimport { AIServiceClientImpl } from '@dxos/assistant';\nimport { type Config } from '@dxos/client';\nimport { ComputeGraphModel, EdgeGpt } from '@dxos/conductor';\nimport { createStubEdgeIdentity, EdgeClient, EdgeHttpClient } from '@dxos/edge-client';\nimport { useConfig } from '@dxos/react-client';\nimport { fullyQualifiedId, getSpace, type Space } from '@dxos/react-client/echo';\nimport {\n ComputeContext,\n ComputeGraphController,\n type ComputeShape,\n ComputeShapeLayout,\n computeShapes,\n type Services,\n useGraphMonitor,\n} from '@dxos/react-ui-canvas-compute';\nimport {\n type CanvasBoardType,\n CanvasGraphModel,\n Editor,\n type EditorController,\n KeyboardContainer,\n ShapeRegistry,\n} from '@dxos/react-ui-canvas-editor';\nimport { StackItem } from '@dxos/react-ui-stack';\n\nconst createServices = (config: Config, space?: Space): Partial<Services> => {\n return {\n spaceService:\n space == null\n ? undefined\n : {\n spaceId: space.id,\n db: space.db,\n },\n gpt:\n config.values.runtime?.services?.ai?.server == null\n ? undefined\n : new EdgeGpt(new AIServiceClientImpl({ endpoint: config.values.runtime?.services?.ai?.server })),\n edgeClient:\n config.values.runtime?.services?.edge?.url == null\n ? undefined\n : new EdgeClient(createStubEdgeIdentity(), { socketEndpoint: config.values.runtime?.services?.edge?.url }),\n edgeHttpClient:\n config.values.runtime?.services?.edge?.url == null\n ? undefined\n : new EdgeHttpClient(config.values.runtime?.services?.edge?.url),\n };\n};\n\nconst useGraphController = (canvas: CanvasBoardType) => {\n const config = useConfig();\n const space = getSpace(canvas);\n const controller = useMemo(() => {\n if (!canvas.computeGraph?.target) {\n return null;\n }\n const model = new ComputeGraphModel(canvas.computeGraph?.target);\n const controller = new ComputeGraphController(model);\n controller.setServices(createServices(config, space));\n return controller;\n }, [canvas.computeGraph?.target, space]);\n\n useEffect(() => {\n if (!controller) {\n return;\n }\n void controller.open();\n return () => {\n void controller.close();\n };\n }, [controller]);\n\n return controller;\n};\n\nexport const CanvasContainer = ({ canvas, role }: { canvas: CanvasBoardType; role: string }) => {\n const id = fullyQualifiedId(canvas);\n const graph = useMemo(() => CanvasGraphModel.create<ComputeShape>(canvas.layout), [canvas.layout]);\n const controller = useGraphController(canvas);\n const graphMonitor = useGraphMonitor(controller?.graph);\n const registry = useMemo(() => new ShapeRegistry(computeShapes), []);\n const editorRef = useRef<EditorController>(null);\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 return (\n <ComputeContext.Provider value={{ controller }}>\n <StackItem.Content toolbar={false} size={role === 'section' ? 'square' : 'intrinsic'}>\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 </StackItem.Content>\n </ComputeContext.Provider>\n );\n};\n\nexport default CanvasContainer;\n"],
|
|
5
|
+
"mappings": ";AAIA,OAAOA,SAASC,WAAWC,SAASC,cAAc;AAElD,SAASC,2BAA2B;AAEpC,SAASC,mBAAmBC,eAAe;AAC3C,SAASC,wBAAwBC,YAAYC,sBAAsB;AACnE,SAASC,iBAAiB;AAC1B,SAASC,kBAAkBC,gBAA4B;AACvD,SACEC,gBACAC,wBAEAC,oBACAC,eAEAC,uBACK;AACP,SAEEC,kBACAC,QAEAC,mBACAC,qBACK;AACP,SAASC,iBAAiB;AAE1B,IAAMC,iBAAiB,CAACC,QAAgBC,UAAAA;AACtC,SAAO;IACLC,cACED,SAAS,OACLE,SACA;MACEC,SAASH,MAAMI;MACfC,IAAIL,MAAMK;IACZ;IACNC,KACEP,OAAOQ,OAAOC,SAASC,UAAUC,IAAIC,UAAU,OAC3CT,SACA,IAAIU,QAAQ,IAAIC,oBAAoB;MAAEC,UAAUf,OAAOQ,OAAOC,SAASC,UAAUC,IAAIC;IAAO,CAAA,CAAA;IAClGI,YACEhB,OAAOQ,OAAOC,SAASC,UAAUO,MAAMC,OAAO,OAC1Cf,SACA,IAAIgB,WAAWC,uBAAAA,GAA0B;MAAEC,gBAAgBrB,OAAOQ,OAAOC,SAASC,UAAUO,MAAMC;IAAI,CAAA;IAC5GI,gBACEtB,OAAOQ,OAAOC,SAASC,UAAUO,MAAMC,OAAO,OAC1Cf,SACA,IAAIoB,eAAevB,OAAOQ,OAAOC,SAASC,UAAUO,MAAMC,GAAAA;EAClE;AACF;AAEA,IAAMM,qBAAqB,CAACC,WAAAA;AAC1B,QAAMzB,SAAS0B,UAAAA;AACf,QAAMzB,QAAQ0B,SAASF,MAAAA;AACvB,QAAMG,aAAaC,QAAQ,MAAA;AACzB,QAAI,CAACJ,OAAOK,cAAcC,QAAQ;AAChC,aAAO;IACT;AACA,UAAMC,QAAQ,IAAIC,kBAAkBR,OAAOK,cAAcC,MAAAA;AACzD,UAAMH,cAAa,IAAIM,uBAAuBF,KAAAA;AAC9CJ,IAAAA,YAAWO,YAAYpC,eAAeC,QAAQC,KAAAA,CAAAA;AAC9C,WAAO2B;EACT,GAAG;IAACH,OAAOK,cAAcC;IAAQ9B;GAAM;AAEvCmC,YAAU,MAAA;AACR,QAAI,CAACR,YAAY;AACf;IACF;AACA,SAAKA,WAAWS,KAAI;AACpB,WAAO,MAAA;AACL,WAAKT,WAAWU,MAAK;IACvB;EACF,GAAG;IAACV;GAAW;AAEf,SAAOA;AACT;AAEO,IAAMW,kBAAkB,CAAC,EAAEd,QAAQe,KAAI,MAA6C;AACzF,QAAMnC,KAAKoC,iBAAiBhB,MAAAA;AAC5B,QAAMiB,QAAQb,QAAQ,MAAMc,iBAAiBC,OAAqBnB,OAAOoB,MAAM,GAAG;IAACpB,OAAOoB;GAAO;AACjG,QAAMjB,aAAaJ,mBAAmBC,MAAAA;AACtC,QAAMqB,eAAeC,gBAAgBnB,YAAYc,KAAAA;AACjD,QAAMM,WAAWnB,QAAQ,MAAM,IAAIoB,cAAcC,aAAAA,GAAgB,CAAA,CAAE;AACnE,QAAMC,YAAYC,OAAyB,IAAA;AAG3C,QAAMP,SAAShB,QACb,MAAOD,cAAcoB,WAAW,IAAIK,mBAAmBzB,YAAYoB,QAAAA,IAAY7C,QAC/E;IAACyB;IAAYoB;GAAS;AAGxB,MAAI,CAACpB,YAAY;AACf;EACF;AAEA,SACE,sBAAA,cAAC0B,eAAeC,UAAQ;IAACC,OAAO;MAAE5B;IAAW;KAC3C,sBAAA,cAAC6B,UAAUC,SAAO;IAACC,SAAS;IAAOC,MAAMpB,SAAS,YAAY,WAAW;KACvE,sBAAA,cAACqB,mBAAAA;IAAkBxD;KACjB,sBAAA,cAACyD,OAAOC,MAAI;IACV1D;IACA2D,KAAKb;IACLT;IACAI;IACAE;IACAH;KAEA,sBAAA,cAACiB,OAAOG,QAAM,IAAA,GACd,sBAAA,cAACH,OAAOI,IAAE;IAACC,WAAAA;;AAMvB;AAEA,IAAA,0BAAe5B;",
|
|
6
|
+
"names": ["React", "useEffect", "useMemo", "useRef", "AIServiceClientImpl", "ComputeGraphModel", "EdgeGpt", "createStubEdgeIdentity", "EdgeClient", "EdgeHttpClient", "useConfig", "fullyQualifiedId", "getSpace", "ComputeContext", "ComputeGraphController", "ComputeShapeLayout", "computeShapes", "useGraphMonitor", "CanvasGraphModel", "Editor", "KeyboardContainer", "ShapeRegistry", "StackItem", "createServices", "config", "space", "spaceService", "undefined", "spaceId", "id", "db", "gpt", "values", "runtime", "services", "ai", "server", "EdgeGpt", "AIServiceClientImpl", "endpoint", "edgeClient", "edge", "url", "EdgeClient", "createStubEdgeIdentity", "socketEndpoint", "edgeHttpClient", "EdgeHttpClient", "useGraphController", "canvas", "useConfig", "getSpace", "controller", "useMemo", "computeGraph", "target", "model", "ComputeGraphModel", "ComputeGraphController", "setServices", "useEffect", "open", "close", "CanvasContainer", "role", "fullyQualifiedId", "graph", "CanvasGraphModel", "create", "layout", "graphMonitor", "useGraphMonitor", "registry", "ShapeRegistry", "computeShapes", "editorRef", "useRef", "ComputeShapeLayout", "ComputeContext", "Provider", "value", "StackItem", "Content", "toolbar", "size", "KeyboardContainer", "Editor", "Root", "ref", "Canvas", "UI", "showTools"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// packages/plugins/experimental/plugin-conductor/src/meta.ts
|
|
2
|
+
var CONDUCTOR_PLUGIN = "dxos.org/plugin/conductor";
|
|
3
|
+
var meta = {
|
|
4
|
+
id: CONDUCTOR_PLUGIN,
|
|
5
|
+
name: "Conductor",
|
|
6
|
+
description: "Conductor allows you to build a node based compute graph that can handle complex workflows inside of Composer. Leverage your collaborative data along with custom scripts to orchestrate agentic workflows that operate in the background.",
|
|
7
|
+
icon: "ph--infinity--regular",
|
|
8
|
+
source: "https://github.com/dxos/dxos/tree/main/packages/plugins/experimental/plugin-conductor",
|
|
9
|
+
tags: [
|
|
10
|
+
"experimental"
|
|
11
|
+
],
|
|
12
|
+
screenshots: [
|
|
13
|
+
"https://dxos.network/plugin-details-canvas-dark.png"
|
|
14
|
+
]
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export {
|
|
18
|
+
CONDUCTOR_PLUGIN,
|
|
19
|
+
meta
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=chunk-DUUJXCVO.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 CONDUCTOR_PLUGIN = 'dxos.org/plugin/conductor';\n\nexport const meta = {\n id: CONDUCTOR_PLUGIN,\n name: 'Conductor',\n description:\n 'Conductor allows you to build a node based compute graph that can handle complex workflows inside of Composer. Leverage your collaborative data along with custom scripts to orchestrate agentic workflows that operate in the background.',\n icon: 'ph--infinity--regular',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/experimental/plugin-conductor',\n tags: ['experimental'],\n screenshots: ['https://dxos.network/plugin-details-canvas-dark.png'],\n} satisfies PluginMeta;\n"],
|
|
5
|
+
"mappings": ";AAMO,IAAMA,mBAAmB;AAEzB,IAAMC,OAAO;EAClBC,IAAIF;EACJG,MAAM;EACNC,aACE;EACFC,MAAM;EACNC,QAAQ;EACRC,MAAM;IAAC;;EACPC,aAAa;IAAC;;AAChB;",
|
|
6
|
+
"names": ["CONDUCTOR_PLUGIN", "meta", "id", "name", "description", "icon", "source", "tags", "screenshots"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import {
|
|
2
|
+
CONDUCTOR_PLUGIN
|
|
3
|
+
} from "./chunk-DUUJXCVO.mjs";
|
|
4
|
+
|
|
5
|
+
// packages/plugins/experimental/plugin-conductor/src/types.ts
|
|
6
|
+
import { S } from "@dxos/echo-schema";
|
|
7
|
+
import { CanvasBoardType } from "@dxos/react-ui-canvas-editor";
|
|
8
|
+
var ConductorAction;
|
|
9
|
+
(function(ConductorAction2) {
|
|
10
|
+
const CONDUCTOR_ACTION = `${CONDUCTOR_PLUGIN}/action`;
|
|
11
|
+
class Create extends S.TaggedClass()(`${CONDUCTOR_ACTION}/create`, {
|
|
12
|
+
input: S.Struct({
|
|
13
|
+
name: S.optional(S.String)
|
|
14
|
+
}),
|
|
15
|
+
output: S.Struct({
|
|
16
|
+
object: CanvasBoardType
|
|
17
|
+
})
|
|
18
|
+
}) {
|
|
19
|
+
}
|
|
20
|
+
ConductorAction2.Create = Create;
|
|
21
|
+
})(ConductorAction || (ConductorAction = {}));
|
|
22
|
+
|
|
23
|
+
export {
|
|
24
|
+
ConductorAction
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=chunk-KTJBLHAY.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/types.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { S } from '@dxos/echo-schema';\nimport { CanvasBoardType } from '@dxos/react-ui-canvas-editor';\n\nimport { CONDUCTOR_PLUGIN } from './meta';\n\nexport namespace ConductorAction {\n const CONDUCTOR_ACTION = `${CONDUCTOR_PLUGIN}/action`;\n\n export class Create extends S.TaggedClass<Create>()(`${CONDUCTOR_ACTION}/create`, {\n input: S.Struct({\n name: S.optional(S.String),\n }),\n output: S.Struct({\n object: CanvasBoardType,\n }),\n }) {}\n}\n"],
|
|
5
|
+
"mappings": ";;;;;AAIA,SAASA,SAAS;AAClB,SAASC,uBAAuB;;UAIfC,kBAAAA;AACf,QAAMC,mBAAmB,GAAGC,gBAAAA;EAErB,MAAMC,eAAeC,EAAEC,YAAW,EAAW,GAAGJ,gBAAAA,WAA2B;IAChFK,OAAOF,EAAEG,OAAO;MACdC,MAAMJ,EAAEK,SAASL,EAAEM,MAAM;IAC3B,CAAA;IACAC,QAAQP,EAAEG,OAAO;MACfK,QAAQC;IACV,CAAA;EACF,CAAA,EAAA;EAAI;mBAPSV,SAAAA;AAQf,GAXiBH,oBAAAA,kBAAAA,CAAAA,EAAAA;",
|
|
6
|
+
"names": ["S", "CanvasBoardType", "ConductorAction", "CONDUCTOR_ACTION", "CONDUCTOR_PLUGIN", "Create", "S", "TaggedClass", "input", "Struct", "name", "optional", "String", "output", "object", "CanvasBoardType"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ConductorAction
|
|
3
|
+
} from "./chunk-KTJBLHAY.mjs";
|
|
4
|
+
import {
|
|
5
|
+
CONDUCTOR_PLUGIN,
|
|
6
|
+
meta
|
|
7
|
+
} from "./chunk-DUUJXCVO.mjs";
|
|
8
|
+
|
|
9
|
+
// packages/plugins/experimental/plugin-conductor/src/ConductorPlugin.tsx
|
|
10
|
+
import { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from "@dxos/app-framework";
|
|
11
|
+
import { ComputeGraph } from "@dxos/conductor";
|
|
12
|
+
import { FunctionTrigger } from "@dxos/functions/types";
|
|
13
|
+
import { ClientCapabilities, ClientEvents } from "@dxos/plugin-client";
|
|
14
|
+
import { SpaceCapabilities } from "@dxos/plugin-space";
|
|
15
|
+
import { defineObjectForm } from "@dxos/plugin-space/types";
|
|
16
|
+
import { CanvasBoardType as CanvasBoardType2 } from "@dxos/react-ui-canvas-editor";
|
|
17
|
+
|
|
18
|
+
// packages/plugins/experimental/plugin-conductor/src/capabilities/index.ts
|
|
19
|
+
import { lazy } from "@dxos/app-framework";
|
|
20
|
+
var IntentResolver = lazy(() => import("./intent-resolver-IKITW45C.mjs"));
|
|
21
|
+
var ReactSurface = lazy(() => import("./react-surface-KAJ3W4G5.mjs"));
|
|
22
|
+
|
|
23
|
+
// packages/plugins/experimental/plugin-conductor/src/translations.ts
|
|
24
|
+
import { CanvasBoardType } from "@dxos/react-ui-canvas-editor";
|
|
25
|
+
var translations_default = [
|
|
26
|
+
{
|
|
27
|
+
"en-US": {
|
|
28
|
+
[CanvasBoardType.typename]: {
|
|
29
|
+
"typename label": "Circuit"
|
|
30
|
+
},
|
|
31
|
+
[CONDUCTOR_PLUGIN]: {
|
|
32
|
+
"plugin name": "Conductor",
|
|
33
|
+
"canvas title placeholder": "New circuit",
|
|
34
|
+
"create canvas label": "Create circuit",
|
|
35
|
+
"content placeholder": "Enter text..."
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
];
|
|
40
|
+
|
|
41
|
+
// packages/plugins/experimental/plugin-conductor/src/ConductorPlugin.tsx
|
|
42
|
+
var ConductorPlugin = () => definePlugin(meta, [
|
|
43
|
+
defineModule({
|
|
44
|
+
id: `${meta.id}/module/translations`,
|
|
45
|
+
activatesOn: Events.SetupTranslations,
|
|
46
|
+
activate: () => contributes(Capabilities.Translations, translations_default)
|
|
47
|
+
}),
|
|
48
|
+
defineModule({
|
|
49
|
+
id: `${meta.id}/module/metadata`,
|
|
50
|
+
activatesOn: Events.SetupMetadata,
|
|
51
|
+
activate: () => contributes(Capabilities.Metadata, {
|
|
52
|
+
id: CanvasBoardType2.typename,
|
|
53
|
+
metadata: {
|
|
54
|
+
placeholder: [
|
|
55
|
+
"canvas title placeholder",
|
|
56
|
+
{
|
|
57
|
+
ns: CONDUCTOR_PLUGIN
|
|
58
|
+
}
|
|
59
|
+
],
|
|
60
|
+
icon: "ph--infinity--regular"
|
|
61
|
+
}
|
|
62
|
+
})
|
|
63
|
+
}),
|
|
64
|
+
defineModule({
|
|
65
|
+
id: `${meta.id}/module/object-form`,
|
|
66
|
+
activatesOn: ClientEvents.SetupSchema,
|
|
67
|
+
activate: () => contributes(SpaceCapabilities.ObjectForm, defineObjectForm({
|
|
68
|
+
objectSchema: CanvasBoardType2,
|
|
69
|
+
getIntent: () => createIntent(ConductorAction.Create)
|
|
70
|
+
}))
|
|
71
|
+
}),
|
|
72
|
+
defineModule({
|
|
73
|
+
id: `${meta.id}/module/schema`,
|
|
74
|
+
activatesOn: ClientEvents.SetupSchema,
|
|
75
|
+
activate: () => contributes(ClientCapabilities.Schema, [
|
|
76
|
+
ComputeGraph,
|
|
77
|
+
FunctionTrigger
|
|
78
|
+
])
|
|
79
|
+
}),
|
|
80
|
+
defineModule({
|
|
81
|
+
id: `${meta.id}/module/react-surface`,
|
|
82
|
+
activatesOn: Events.SetupReactSurface,
|
|
83
|
+
activate: ReactSurface
|
|
84
|
+
}),
|
|
85
|
+
defineModule({
|
|
86
|
+
id: `${meta.id}/module/intent-resolver`,
|
|
87
|
+
activatesOn: Events.SetupIntentResolver,
|
|
88
|
+
activate: IntentResolver
|
|
89
|
+
})
|
|
90
|
+
]);
|
|
91
|
+
export {
|
|
92
|
+
CONDUCTOR_PLUGIN,
|
|
93
|
+
ConductorPlugin,
|
|
94
|
+
meta
|
|
95
|
+
};
|
|
96
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/ConductorPlugin.tsx", "../../../src/capabilities/index.ts", "../../../src/translations.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';\nimport { ComputeGraph } from '@dxos/conductor';\nimport { FunctionTrigger } from '@dxos/functions/types';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { SpaceCapabilities } from '@dxos/plugin-space';\nimport { defineObjectForm } from '@dxos/plugin-space/types';\nimport { CanvasBoardType } from '@dxos/react-ui-canvas-editor';\n\nimport { IntentResolver, ReactSurface } from './capabilities';\nimport { CONDUCTOR_PLUGIN, meta } from './meta';\nimport translations from './translations';\nimport { ConductorAction } from './types';\n\nexport const ConductorPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: CanvasBoardType.typename,\n metadata: {\n placeholder: ['canvas title placeholder', { ns: CONDUCTOR_PLUGIN }],\n icon: 'ph--infinity--regular',\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/object-form`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () =>\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: CanvasBoardType,\n getIntent: () => createIntent(ConductorAction.Create),\n }),\n ),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => contributes(ClientCapabilities.Schema, [ComputeGraph, FunctionTrigger]),\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n ]);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { CanvasBoardType } from '@dxos/react-ui-canvas-editor';\n\nimport { CONDUCTOR_PLUGIN } from './meta';\n\nexport default [\n {\n 'en-US': {\n [CanvasBoardType.typename]: {\n 'typename label': 'Circuit',\n },\n [CONDUCTOR_PLUGIN]: {\n 'plugin name': 'Conductor',\n 'canvas title placeholder': 'New circuit',\n 'create canvas label': 'Create circuit',\n 'content placeholder': 'Enter text...',\n },\n },\n },\n];\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;AAIA,SAASA,cAAcC,aAAaC,cAAcC,cAAcC,cAAcC,cAAc;AAC5F,SAASC,oBAAoB;AAC7B,SAASC,uBAAuB;AAChC,SAASC,oBAAoBC,oBAAoB;AACjD,SAASC,yBAAyB;AAClC,SAASC,wBAAwB;AACjC,SAASC,mBAAAA,wBAAuB;;;ACNhC,SAASC,YAAY;AAEd,IAAMC,iBAAiBC,KAAK,MAAM,OAAO,gCAAA,CAAA;AACzC,IAAMC,eAAeD,KAAK,MAAM,OAAO,8BAAA,CAAA;;;ACH9C,SAASE,uBAAuB;AAIhC,IAAA,uBAAe;EACb;IACE,SAAS;MACP,CAACC,gBAAgBC,QAAQ,GAAG;QAC1B,kBAAkB;MACpB;MACA,CAACC,gBAAAA,GAAmB;QAClB,eAAe;QACf,4BAA4B;QAC5B,uBAAuB;QACvB,uBAAuB;MACzB;IACF;EACF;;;;AFJK,IAAMC,kBAAkB,MAC7BC,aAAaC,MAAM;EACjBC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAcC,oBAAAA;EACzD,CAAA;EACAT,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOO;IACpBL,UAAU,MACRC,YAAYC,aAAaI,UAAU;MACjCV,IAAIW,iBAAgBC;MACpBC,UAAU;QACRC,aAAa;UAAC;UAA4B;YAAEC,IAAIC;UAAiB;;QACjEC,MAAM;MACR;IACF,CAAA;EACJ,CAAA;EACAlB,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaiB,aAAaC;IAC1Bf,UAAU,MACRC,YACEe,kBAAkBC,YAClBC,iBAAiB;MACfC,cAAcZ;MACda,WAAW,MAAMC,aAAaC,gBAAgBC,MAAM;IACtD,CAAA,CAAA;EAEN,CAAA;EACA5B,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaiB,aAAaC;IAC1Bf,UAAU,MAAMC,YAAYuB,mBAAmBC,QAAQ;MAACC;MAAcC;KAAgB;EACxF,CAAA;EACAhC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAO8B;IACpB5B,UAAU6B;EACZ,CAAA;EACAlC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOgC;IACpB9B,UAAU+B;EACZ,CAAA;CACD;",
|
|
6
|
+
"names": ["Capabilities", "contributes", "createIntent", "defineModule", "definePlugin", "Events", "ComputeGraph", "FunctionTrigger", "ClientCapabilities", "ClientEvents", "SpaceCapabilities", "defineObjectForm", "CanvasBoardType", "lazy", "IntentResolver", "lazy", "ReactSurface", "CanvasBoardType", "CanvasBoardType", "typename", "CONDUCTOR_PLUGIN", "ConductorPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "SetupMetadata", "Metadata", "CanvasBoardType", "typename", "metadata", "placeholder", "ns", "CONDUCTOR_PLUGIN", "icon", "ClientEvents", "SetupSchema", "SpaceCapabilities", "ObjectForm", "defineObjectForm", "objectSchema", "getIntent", "createIntent", "ConductorAction", "Create", "ClientCapabilities", "Schema", "ComputeGraph", "FunctionTrigger", "SetupReactSurface", "ReactSurface", "SetupIntentResolver", "IntentResolver"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ConductorAction
|
|
3
|
+
} from "./chunk-KTJBLHAY.mjs";
|
|
4
|
+
import "./chunk-DUUJXCVO.mjs";
|
|
5
|
+
|
|
6
|
+
// packages/plugins/experimental/plugin-conductor/src/capabilities/intent-resolver.ts
|
|
7
|
+
import { Capabilities, contributes, createResolver } from "@dxos/app-framework";
|
|
8
|
+
import { ComputeGraph } from "@dxos/conductor";
|
|
9
|
+
import { create, makeRef } from "@dxos/live-object";
|
|
10
|
+
import { CanvasBoardType } from "@dxos/react-ui-canvas-editor";
|
|
11
|
+
var intent_resolver_default = () => contributes(Capabilities.IntentResolver, createResolver({
|
|
12
|
+
intent: ConductorAction.Create,
|
|
13
|
+
resolve: ({ name }) => ({
|
|
14
|
+
data: {
|
|
15
|
+
object: create(CanvasBoardType, {
|
|
16
|
+
name,
|
|
17
|
+
computeGraph: makeRef(create(ComputeGraph, {
|
|
18
|
+
graph: {
|
|
19
|
+
nodes: [],
|
|
20
|
+
edges: []
|
|
21
|
+
}
|
|
22
|
+
})),
|
|
23
|
+
layout: {
|
|
24
|
+
nodes: [],
|
|
25
|
+
edges: []
|
|
26
|
+
}
|
|
27
|
+
})
|
|
28
|
+
}
|
|
29
|
+
})
|
|
30
|
+
}));
|
|
31
|
+
export {
|
|
32
|
+
intent_resolver_default as default
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=intent-resolver-IKITW45C.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/intent-resolver.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capabilities, contributes, createResolver } from '@dxos/app-framework';\nimport { ComputeGraph } from '@dxos/conductor';\nimport { create, makeRef } from '@dxos/live-object';\nimport { CanvasBoardType } from '@dxos/react-ui-canvas-editor';\n\nimport { ConductorAction } from '../types';\n\nexport default () =>\n contributes(\n Capabilities.IntentResolver,\n createResolver({\n intent: ConductorAction.Create,\n resolve: ({ name }) => ({\n data: {\n object: create(CanvasBoardType, {\n name,\n computeGraph: makeRef(create(ComputeGraph, { graph: { nodes: [], edges: [] } })),\n layout: { nodes: [], edges: [] },\n }),\n },\n }),\n }),\n );\n"],
|
|
5
|
+
"mappings": ";;;;;;AAIA,SAASA,cAAcC,aAAaC,sBAAsB;AAC1D,SAASC,oBAAoB;AAC7B,SAASC,QAAQC,eAAe;AAChC,SAASC,uBAAuB;AAIhC,IAAA,0BAAe,MACbC,YACEC,aAAaC,gBACbC,eAAe;EACbC,QAAQC,gBAAgBC;EACxBC,SAAS,CAAC,EAAEC,KAAI,OAAQ;IACtBC,MAAM;MACJC,QAAQC,OAAOC,iBAAiB;QAC9BJ;QACAK,cAAcC,QAAQH,OAAOI,cAAc;UAAEC,OAAO;YAAEC,OAAO,CAAA;YAAIC,OAAO,CAAA;UAAG;QAAE,CAAA,CAAA;QAC7EC,QAAQ;UAAEF,OAAO,CAAA;UAAIC,OAAO,CAAA;QAAG;MACjC,CAAA;IACF;EACF;AACF,CAAA,CAAA;",
|
|
6
|
+
"names": ["Capabilities", "contributes", "createResolver", "ComputeGraph", "create", "makeRef", "CanvasBoardType", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "ConductorAction", "Create", "resolve", "name", "data", "object", "create", "CanvasBoardType", "computeGraph", "makeRef", "ComputeGraph", "graph", "nodes", "edges", "layout"]
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"inputs":{"packages/plugins/experimental/plugin-conductor/src/meta.ts":{"bytes":2384,"imports":[],"format":"esm"},"packages/plugins/experimental/plugin-conductor/src/types.ts":{"bytes":2387,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-conductor/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/experimental/plugin-conductor/src/capabilities/intent-resolver.ts":{"bytes":3490,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-conductor/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/experimental/plugin-conductor/src/components/CanvasContainer.tsx":{"bytes":13257,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/assistant","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/edge-client","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","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},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/experimental/plugin-conductor/src/components/index.ts":{"bytes":821,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-conductor/src/components/CanvasContainer.tsx","kind":"dynamic-import","original":"./CanvasContainer"}],"format":"esm"},"packages/plugins/experimental/plugin-conductor/src/capabilities/react-surface.tsx":{"bytes":2810,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-conductor/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/experimental/plugin-conductor/src/meta.ts","kind":"import-statement","original":"../meta"}],"format":"esm"},"packages/plugins/experimental/plugin-conductor/src/capabilities/index.ts":{"bytes":1097,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-conductor/src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/plugins/experimental/plugin-conductor/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"packages/plugins/experimental/plugin-conductor/src/translations.ts":{"bytes":2025,"imports":[{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-conductor/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/experimental/plugin-conductor/src/ConductorPlugin.tsx":{"bytes":8758,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/functions/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-conductor/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/experimental/plugin-conductor/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/experimental/plugin-conductor/src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/plugins/experimental/plugin-conductor/src/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/experimental/plugin-conductor/src/index.ts":{"bytes":617,"imports":[{"path":"packages/plugins/experimental/plugin-conductor/src/ConductorPlugin.tsx","kind":"import-statement","original":"./ConductorPlugin"},{"path":"packages/plugins/experimental/plugin-conductor/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"}},"outputs":{"packages/plugins/experimental/plugin-conductor/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5500},"packages/plugins/experimental/plugin-conductor/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/plugins/experimental/plugin-conductor/dist/lib/browser/chunk-KTJBLHAY.mjs","kind":"import-statement"},{"path":"packages/plugins/experimental/plugin-conductor/dist/lib/browser/chunk-DUUJXCVO.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/functions/types","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/plugin-space","kind":"import-statement","external":true},{"path":"@dxos/plugin-space/types","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-conductor/dist/lib/browser/intent-resolver-IKITW45C.mjs","kind":"dynamic-import"},{"path":"packages/plugins/experimental/plugin-conductor/dist/lib/browser/react-surface-KAJ3W4G5.mjs","kind":"dynamic-import"},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true}],"exports":["CONDUCTOR_PLUGIN","ConductorPlugin","meta"],"entryPoint":"packages/plugins/experimental/plugin-conductor/src/index.ts","inputs":{"packages/plugins/experimental/plugin-conductor/src/ConductorPlugin.tsx":{"bytesInOutput":1912},"packages/plugins/experimental/plugin-conductor/src/capabilities/index.ts":{"bytesInOutput":190},"packages/plugins/experimental/plugin-conductor/src/translations.ts":{"bytesInOutput":425},"packages/plugins/experimental/plugin-conductor/src/index.ts":{"bytesInOutput":0}},"bytes":3043},"packages/plugins/experimental/plugin-conductor/dist/lib/browser/types.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/experimental/plugin-conductor/dist/lib/browser/types.mjs":{"imports":[{"path":"packages/plugins/experimental/plugin-conductor/dist/lib/browser/chunk-KTJBLHAY.mjs","kind":"import-statement"},{"path":"packages/plugins/experimental/plugin-conductor/dist/lib/browser/chunk-DUUJXCVO.mjs","kind":"import-statement"}],"exports":["ConductorAction"],"entryPoint":"packages/plugins/experimental/plugin-conductor/src/types.ts","inputs":{},"bytes":154},"packages/plugins/experimental/plugin-conductor/dist/lib/browser/intent-resolver-IKITW45C.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1693},"packages/plugins/experimental/plugin-conductor/dist/lib/browser/intent-resolver-IKITW45C.mjs":{"imports":[{"path":"packages/plugins/experimental/plugin-conductor/dist/lib/browser/chunk-KTJBLHAY.mjs","kind":"import-statement"},{"path":"packages/plugins/experimental/plugin-conductor/dist/lib/browser/chunk-DUUJXCVO.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/live-object","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/experimental/plugin-conductor/src/capabilities/intent-resolver.ts","inputs":{"packages/plugins/experimental/plugin-conductor/src/capabilities/intent-resolver.ts":{"bytesInOutput":704}},"bytes":983},"packages/plugins/experimental/plugin-conductor/dist/lib/browser/chunk-KTJBLHAY.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1159},"packages/plugins/experimental/plugin-conductor/dist/lib/browser/chunk-KTJBLHAY.mjs":{"imports":[{"path":"packages/plugins/experimental/plugin-conductor/dist/lib/browser/chunk-DUUJXCVO.mjs","kind":"import-statement"},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true}],"exports":["ConductorAction"],"inputs":{"packages/plugins/experimental/plugin-conductor/src/types.ts":{"bytesInOutput":499}},"bytes":697},"packages/plugins/experimental/plugin-conductor/dist/lib/browser/CanvasContainer-2LHBQGCB.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7298},"packages/plugins/experimental/plugin-conductor/dist/lib/browser/CanvasContainer-2LHBQGCB.mjs":{"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/assistant","kind":"import-statement","external":true},{"path":"@dxos/conductor","kind":"import-statement","external":true},{"path":"@dxos/edge-client","kind":"import-statement","external":true},{"path":"@dxos/react-client","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","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},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true}],"exports":["CanvasContainer","default"],"entryPoint":"packages/plugins/experimental/plugin-conductor/src/components/CanvasContainer.tsx","inputs":{"packages/plugins/experimental/plugin-conductor/src/components/CanvasContainer.tsx":{"bytesInOutput":3251}},"bytes":3458},"packages/plugins/experimental/plugin-conductor/dist/lib/browser/react-surface-KAJ3W4G5.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1659},"packages/plugins/experimental/plugin-conductor/dist/lib/browser/react-surface-KAJ3W4G5.mjs":{"imports":[{"path":"packages/plugins/experimental/plugin-conductor/dist/lib/browser/chunk-DUUJXCVO.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-ui-canvas-editor","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"packages/plugins/experimental/plugin-conductor/dist/lib/browser/CanvasContainer-2LHBQGCB.mjs","kind":"dynamic-import"}],"exports":["default"],"entryPoint":"packages/plugins/experimental/plugin-conductor/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/experimental/plugin-conductor/src/capabilities/react-surface.tsx":{"bytesInOutput":522},"packages/plugins/experimental/plugin-conductor/src/components/index.ts":{"bytesInOutput":106}},"bytes":1033},"packages/plugins/experimental/plugin-conductor/dist/lib/browser/chunk-DUUJXCVO.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1094},"packages/plugins/experimental/plugin-conductor/dist/lib/browser/chunk-DUUJXCVO.mjs":{"imports":[],"exports":["CONDUCTOR_PLUGIN","meta"],"inputs":{"packages/plugins/experimental/plugin-conductor/src/meta.ts":{"bytesInOutput":611}},"bytes":757}}}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {
|
|
2
|
+
CONDUCTOR_PLUGIN
|
|
3
|
+
} from "./chunk-DUUJXCVO.mjs";
|
|
4
|
+
|
|
5
|
+
// packages/plugins/experimental/plugin-conductor/src/capabilities/react-surface.tsx
|
|
6
|
+
import React from "react";
|
|
7
|
+
import { Capabilities, contributes, createSurface } from "@dxos/app-framework";
|
|
8
|
+
import { CanvasBoardType } from "@dxos/react-ui-canvas-editor";
|
|
9
|
+
|
|
10
|
+
// packages/plugins/experimental/plugin-conductor/src/components/index.ts
|
|
11
|
+
import { lazy } from "react";
|
|
12
|
+
var CanvasContainer = lazy(() => import("./CanvasContainer-2LHBQGCB.mjs"));
|
|
13
|
+
|
|
14
|
+
// packages/plugins/experimental/plugin-conductor/src/capabilities/react-surface.tsx
|
|
15
|
+
var react_surface_default = () => contributes(Capabilities.ReactSurface, createSurface({
|
|
16
|
+
id: CONDUCTOR_PLUGIN,
|
|
17
|
+
role: [
|
|
18
|
+
"article",
|
|
19
|
+
"section"
|
|
20
|
+
],
|
|
21
|
+
filter: (data) => data.subject instanceof CanvasBoardType,
|
|
22
|
+
component: ({ data, role }) => /* @__PURE__ */ React.createElement(CanvasContainer, {
|
|
23
|
+
canvas: data.subject,
|
|
24
|
+
role
|
|
25
|
+
})
|
|
26
|
+
}));
|
|
27
|
+
export {
|
|
28
|
+
react_surface_default as default
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=react-surface-KAJ3W4G5.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/capabilities/react-surface.tsx", "../../../src/components/index.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport React from 'react';\n\nimport { Capabilities, contributes, createSurface } from '@dxos/app-framework';\nimport { CanvasBoardType } from '@dxos/react-ui-canvas-editor';\n\nimport { CanvasContainer } from '../components';\nimport { CONDUCTOR_PLUGIN } from '../meta';\n\nexport default () =>\n contributes(\n Capabilities.ReactSurface,\n createSurface({\n id: CONDUCTOR_PLUGIN,\n role: ['article', 'section'],\n filter: (data): data is { subject: CanvasBoardType } => data.subject instanceof CanvasBoardType,\n component: ({ data, role }) => <CanvasContainer canvas={data.subject} role={role} />,\n }),\n );\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { lazy } from 'react';\n\nexport const CanvasContainer = lazy(() => import('./CanvasContainer'));\n"],
|
|
5
|
+
"mappings": ";;;;;AAIA,OAAOA,WAAW;AAElB,SAASC,cAAcC,aAAaC,qBAAqB;AACzD,SAASC,uBAAuB;;;ACHhC,SAASC,YAAY;AAEd,IAAMC,kBAAkBC,KAAK,MAAM,OAAO,gCAAA,CAAA;;;ADMjD,IAAA,wBAAe,MACbC,YACEC,aAAaC,cACbC,cAAc;EACZC,IAAIC;EACJC,MAAM;IAAC;IAAW;;EAClBC,QAAQ,CAACC,SAA+CA,KAAKC,mBAAmBC;EAChFC,WAAW,CAAC,EAAEH,MAAMF,KAAI,MAAO,sBAAA,cAACM,iBAAAA;IAAgBC,QAAQL,KAAKC;IAASH;;AACxE,CAAA,CAAA;",
|
|
6
|
+
"names": ["React", "Capabilities", "contributes", "createSurface", "CanvasBoardType", "lazy", "CanvasContainer", "lazy", "contributes", "Capabilities", "ReactSurface", "createSurface", "id", "CONDUCTOR_PLUGIN", "role", "filter", "data", "subject", "CanvasBoardType", "component", "CanvasContainer", "canvas"]
|
|
7
|
+
}
|