@dxos/plugin-conductor 0.8.4-main.937b3ca → 0.8.4-main.9be5663bfe

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 (49) hide show
  1. package/README.md +7 -3
  2. package/dist/lib/browser/index.mjs +62 -35
  3. package/dist/lib/browser/index.mjs.map +4 -4
  4. package/dist/lib/browser/meta.json +1 -1
  5. package/dist/lib/node-esm/index.mjs +62 -34
  6. package/dist/lib/node-esm/index.mjs.map +4 -4
  7. package/dist/lib/node-esm/meta.json +1 -1
  8. package/dist/types/src/ConductorPlugin.d.ts.map +1 -1
  9. package/dist/types/src/capabilities/index.d.ts +2 -1
  10. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  11. package/dist/types/src/capabilities/react-surface.d.ts +5 -0
  12. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  13. package/dist/types/src/components/index.d.ts +0 -1
  14. package/dist/types/src/components/index.d.ts.map +1 -1
  15. package/dist/types/src/containers/CanvasContainer/CanvasContainer.d.ts +6 -0
  16. package/dist/types/src/containers/CanvasContainer/CanvasContainer.d.ts.map +1 -0
  17. package/dist/types/src/containers/CanvasContainer/index.d.ts +2 -0
  18. package/dist/types/src/containers/CanvasContainer/index.d.ts.map +1 -0
  19. package/dist/types/src/containers/index.d.ts +3 -0
  20. package/dist/types/src/containers/index.d.ts.map +1 -0
  21. package/dist/types/src/translations.d.ts +14 -13
  22. package/dist/types/src/translations.d.ts.map +1 -1
  23. package/dist/types/tsconfig.tsbuildinfo +1 -1
  24. package/package.json +38 -30
  25. package/src/ConductorPlugin.tsx +27 -14
  26. package/src/capabilities/index.ts +3 -1
  27. package/src/capabilities/react-surface.tsx +30 -0
  28. package/src/components/index.ts +1 -3
  29. package/src/{components → containers/CanvasContainer}/CanvasContainer.tsx +17 -12
  30. package/src/containers/CanvasContainer/index.ts +5 -0
  31. package/src/containers/index.ts +7 -0
  32. package/src/meta.ts +1 -1
  33. package/src/translations.ts +14 -13
  34. package/dist/lib/browser/chunk-GV4DJFU6.mjs +0 -24
  35. package/dist/lib/browser/chunk-GV4DJFU6.mjs.map +0 -7
  36. package/dist/lib/browser/react-surface-R7NR323I.mjs +0 -108
  37. package/dist/lib/browser/react-surface-R7NR323I.mjs.map +0 -7
  38. package/dist/lib/node-esm/chunk-DILME6SD.mjs +0 -26
  39. package/dist/lib/node-esm/chunk-DILME6SD.mjs.map +0 -7
  40. package/dist/lib/node-esm/react-surface-4MQHAW46.mjs +0 -109
  41. package/dist/lib/node-esm/react-surface-4MQHAW46.mjs.map +0 -7
  42. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  43. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  44. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +0 -5
  45. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  46. package/dist/types/src/components/CanvasContainer.d.ts +0 -7
  47. package/dist/types/src/components/CanvasContainer.d.ts.map +0 -1
  48. package/src/capabilities/react-surface/index.ts +0 -7
  49. package/src/capabilities/react-surface/react-surface.tsx +0 -27
@@ -1,109 +0,0 @@
1
- import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
- import {
3
- meta
4
- } from "./chunk-DILME6SD.mjs";
5
-
6
- // src/capabilities/react-surface/react-surface.tsx
7
- import * as Effect from "effect/Effect";
8
- import React2 from "react";
9
- import { Capability, Common } from "@dxos/app-framework";
10
- import { Obj as Obj2 } from "@dxos/echo";
11
- import { CanvasBoardType } from "@dxos/react-ui-canvas-editor";
12
-
13
- // src/components/CanvasContainer.tsx
14
- import React, { Fragment, useEffect, useMemo, useRef } from "react";
15
- import { useCapability } from "@dxos/app-framework/react";
16
- import { ComputeGraphModel } from "@dxos/conductor";
17
- import { Obj } from "@dxos/echo";
18
- import { AutomationCapabilities } from "@dxos/plugin-automation";
19
- import { ComputeContext, ComputeGraphController, ComputeShapeLayout, computeShapes, useComputeGraphController, useGraphMonitor } from "@dxos/react-ui-canvas-compute";
20
- import { CanvasGraphModel, Editor, KeyboardContainer, ShapeRegistry } from "@dxos/react-ui-canvas-editor";
21
- import { Layout } from "@dxos/react-ui-mosaic";
22
- var CanvasContainer = ({ role, subject: canvas }) => {
23
- const id = Obj.getDXN(canvas).toString();
24
- const graph = useMemo(() => CanvasGraphModel.create(canvas.layout), [
25
- canvas.layout
26
- ]);
27
- const controller = useGraphController(canvas);
28
- const graphMonitor = useGraphMonitor(controller?.graph);
29
- const registry = useMemo(() => new ShapeRegistry(computeShapes), []);
30
- const editorRef = useRef(null);
31
- useComputeGraphController({
32
- controller,
33
- graph,
34
- editorRef
35
- });
36
- const layout = useMemo(() => controller && registry ? new ComputeShapeLayout(controller, registry) : void 0, [
37
- controller,
38
- registry
39
- ]);
40
- if (!controller) {
41
- return;
42
- }
43
- const Root = role === "section" ? Container : Fragment;
44
- return /* @__PURE__ */ React.createElement(ComputeContext.Provider, {
45
- value: {
46
- controller
47
- }
48
- }, /* @__PURE__ */ React.createElement(Root, null, /* @__PURE__ */ React.createElement(KeyboardContainer, {
49
- id
50
- }, /* @__PURE__ */ React.createElement(Editor.Root, {
51
- id,
52
- ref: editorRef,
53
- graph,
54
- graphMonitor,
55
- registry,
56
- layout
57
- }, /* @__PURE__ */ React.createElement(Editor.Canvas, null), /* @__PURE__ */ React.createElement(Editor.UI, {
58
- showTools: true
59
- })))));
60
- };
61
- var Container = (props) => /* @__PURE__ */ React.createElement(Layout.Flex, {
62
- ...props,
63
- classNames: "aspect-square"
64
- });
65
- var useGraphController = (canvas) => {
66
- const db = Obj.getDatabase(canvas);
67
- const runtime = useCapability(AutomationCapabilities.ComputeRuntime);
68
- const controller = useMemo(() => {
69
- if (!canvas.computeGraph?.target || !db) {
70
- return null;
71
- }
72
- const model = new ComputeGraphModel(canvas.computeGraph?.target);
73
- const controller2 = new ComputeGraphController(runtime.getRuntime(db.spaceId), model);
74
- return controller2;
75
- }, [
76
- canvas.computeGraph?.target,
77
- db
78
- ]);
79
- useEffect(() => {
80
- if (!controller) {
81
- return;
82
- }
83
- void controller.open();
84
- return () => {
85
- void controller.close();
86
- };
87
- }, [
88
- controller
89
- ]);
90
- return controller;
91
- };
92
-
93
- // src/capabilities/react-surface/react-surface.tsx
94
- var react_surface_default = Capability.makeModule(() => Effect.succeed(Capability.contributes(Common.Capability.ReactSurface, Common.createSurface({
95
- id: meta.id,
96
- role: [
97
- "article",
98
- "section"
99
- ],
100
- filter: (data) => Obj2.instanceOf(CanvasBoardType, data.subject),
101
- component: ({ data, role }) => /* @__PURE__ */ React2.createElement(CanvasContainer, {
102
- role,
103
- subject: data.subject
104
- })
105
- }))));
106
- export {
107
- react_surface_default as default
108
- };
109
- //# sourceMappingURL=react-surface-4MQHAW46.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/react-surface/react-surface.tsx", "../../../src/components/CanvasContainer.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React from 'react';\n\nimport { Capability, Common } from '@dxos/app-framework';\nimport { Obj } from '@dxos/echo';\nimport { CanvasBoardType } from '@dxos/react-ui-canvas-editor';\n\nimport { CanvasContainer } from '../../components';\nimport { meta } from '../../meta';\n\nexport default Capability.makeModule(() =>\n Effect.succeed(\n Capability.contributes(\n Common.Capability.ReactSurface,\n Common.createSurface({\n id: meta.id,\n role: ['article', 'section'],\n filter: (data): data is { subject: CanvasBoardType } => Obj.instanceOf(CanvasBoardType, data.subject),\n component: ({ data, role }) => <CanvasContainer role={role} subject={data.subject} />,\n }),\n ),\n ),\n);\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { Fragment, useEffect, useMemo, useRef } from 'react';\n\nimport { type SurfaceComponentProps, useCapability } from '@dxos/app-framework/react';\nimport { ComputeGraphModel } from '@dxos/conductor';\nimport { Obj } from '@dxos/echo';\nimport { AutomationCapabilities } from '@dxos/plugin-automation';\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 CanvasBoardType,\n CanvasGraphModel,\n Editor,\n type EditorController,\n KeyboardContainer,\n ShapeRegistry,\n} from '@dxos/react-ui-canvas-editor';\nimport { Layout, type LayoutFlexProps } from '@dxos/react-ui-mosaic';\n\nexport type CanvasContainerProps = SurfaceComponentProps<CanvasBoardType>;\n\nexport const CanvasContainer = ({ role, subject: canvas }: CanvasContainerProps) => {\n const id = Obj.getDXN(canvas as any).toString();\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 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: LayoutFlexProps) => <Layout.Flex {...props} classNames='aspect-square' />;\n\nconst useGraphController = (canvas: CanvasBoardType) => {\n const db = Obj.getDatabase(canvas);\n const runtime = useCapability(AutomationCapabilities.ComputeRuntime);\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 }, [canvas.computeGraph?.target, 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\nexport default CanvasContainer;\n"],
5
- "mappings": "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",
6
- "names": ["Effect", "React", "Capability", "Common", "Obj", "CanvasBoardType", "React", "Fragment", "useEffect", "useMemo", "useRef", "useCapability", "ComputeGraphModel", "Obj", "AutomationCapabilities", "ComputeContext", "ComputeGraphController", "ComputeShapeLayout", "computeShapes", "useComputeGraphController", "useGraphMonitor", "CanvasGraphModel", "Editor", "KeyboardContainer", "ShapeRegistry", "Layout", "CanvasContainer", "role", "subject", "canvas", "id", "Obj", "getDXN", "toString", "graph", "useMemo", "CanvasGraphModel", "create", "layout", "controller", "useGraphController", "graphMonitor", "useGraphMonitor", "registry", "ShapeRegistry", "computeShapes", "editorRef", "useRef", "useComputeGraphController", "ComputeShapeLayout", "undefined", "Root", "Container", "Fragment", "ComputeContext", "Provider", "value", "KeyboardContainer", "Editor", "ref", "Canvas", "UI", "showTools", "props", "Layout", "Flex", "classNames", "db", "getDatabase", "runtime", "useCapability", "AutomationCapabilities", "ComputeRuntime", "computeGraph", "target", "model", "ComputeGraphModel", "ComputeGraphController", "getRuntime", "spaceId", "useEffect", "open", "close", "Capability", "makeModule", "succeed", "contributes", "Common", "ReactSurface", "createSurface", "id", "meta", "role", "filter", "data", "Obj", "instanceOf", "CanvasBoardType", "subject", "component", "React", "CanvasContainer"]
7
- }
@@ -1,3 +0,0 @@
1
- import { Capability } from '@dxos/app-framework';
2
- export declare const ReactSurface: Capability.LazyCapability<void, Capability.Capability<Capability.InterfaceDef<import("@dxos/app-framework/Common").Capability.ReactSurface>>, Error>;
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-surface/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,YAAY,sJAAmE,CAAC"}
@@ -1,5 +0,0 @@
1
- import * as Effect from 'effect/Effect';
2
- import { Capability, Common } from '@dxos/app-framework';
3
- declare const _default: (props?: void | undefined) => Effect.Effect<Capability.Capability<Capability.InterfaceDef<Common.Capability.ReactSurface>>, never, never>;
4
- export default _default;
5
- //# sourceMappingURL=react-surface.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/react-surface/react-surface.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;;AAOzD,wBAYE"}
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- import { type SurfaceComponentProps } from '@dxos/app-framework/react';
3
- import { type CanvasBoardType } from '@dxos/react-ui-canvas-editor';
4
- export type CanvasContainerProps = SurfaceComponentProps<CanvasBoardType>;
5
- export declare const CanvasContainer: ({ role, subject: canvas }: CanvasContainerProps) => React.JSX.Element | undefined;
6
- export default CanvasContainer;
7
- //# sourceMappingURL=CanvasContainer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CanvasContainer.d.ts","sourceRoot":"","sources":["../../../../src/components/CanvasContainer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAEpE,OAAO,EAAE,KAAK,qBAAqB,EAAiB,MAAM,2BAA2B,CAAC;AAatF,OAAO,EACL,KAAK,eAAe,EAMrB,MAAM,8BAA8B,CAAC;AAGtC,MAAM,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,eAAe,CAAC,CAAC;AAE1E,eAAO,MAAM,eAAe,GAAI,2BAA2B,oBAAoB,kCAwC9E,CAAC;AA8BF,eAAe,eAAe,CAAC"}
@@ -1,7 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { Capability } from '@dxos/app-framework';
6
-
7
- export const ReactSurface = Capability.lazy('ReactSurface', () => import('./react-surface'));
@@ -1,27 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import * as Effect from 'effect/Effect';
6
- import React from 'react';
7
-
8
- import { Capability, Common } from '@dxos/app-framework';
9
- import { Obj } from '@dxos/echo';
10
- import { CanvasBoardType } from '@dxos/react-ui-canvas-editor';
11
-
12
- import { CanvasContainer } from '../../components';
13
- import { meta } from '../../meta';
14
-
15
- export default Capability.makeModule(() =>
16
- Effect.succeed(
17
- Capability.contributes(
18
- Common.Capability.ReactSurface,
19
- Common.createSurface({
20
- id: meta.id,
21
- role: ['article', 'section'],
22
- filter: (data): data is { subject: CanvasBoardType } => Obj.instanceOf(CanvasBoardType, data.subject),
23
- component: ({ data, role }) => <CanvasContainer role={role} subject={data.subject} />,
24
- }),
25
- ),
26
- ),
27
- );