@dxos/plugin-debug 0.8.4-main.c1de068 → 0.8.4-main.c351d160a8
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/dist/lib/browser/DebugGraph-7HXJ2PS2.mjs +16 -0
- package/dist/lib/browser/DebugGraph-7HXJ2PS2.mjs.map +7 -0
- package/dist/lib/browser/DebugObjectPanel-KXVFOGU6.mjs +35 -0
- package/dist/lib/browser/DebugObjectPanel-KXVFOGU6.mjs.map +7 -0
- package/dist/lib/browser/DebugSettings-XNAKCV2F.mjs +174 -0
- package/dist/lib/browser/DebugSettings-XNAKCV2F.mjs.map +7 -0
- package/dist/lib/browser/DebugSpaceObjectsPanel-SIK72DXV.mjs +45 -0
- package/dist/lib/browser/DebugSpaceObjectsPanel-SIK72DXV.mjs.map +7 -0
- package/dist/lib/browser/DebugStatus-COQGH37G.mjs +125 -0
- package/dist/lib/browser/DebugStatus-COQGH37G.mjs.map +7 -0
- package/dist/lib/browser/DevtoolsOverviewContainer-C75NFVER.mjs +20 -0
- package/dist/lib/browser/DevtoolsOverviewContainer-C75NFVER.mjs.map +7 -0
- package/dist/lib/browser/{SpaceGenerator-AG3XGNMV.mjs → SpaceGenerator-Q2GH6S6D.mjs} +577 -382
- package/dist/lib/browser/SpaceGenerator-Q2GH6S6D.mjs.map +7 -0
- package/dist/lib/browser/Wireframe-KAGOKEFW.mjs +53 -0
- package/dist/lib/browser/Wireframe-KAGOKEFW.mjs.map +7 -0
- package/dist/lib/browser/app-graph-builder-FU4BCDDC.mjs +593 -0
- package/dist/lib/browser/app-graph-builder-FU4BCDDC.mjs.map +7 -0
- package/dist/lib/browser/{chunk-AJA6RYN3.mjs → chunk-Q37TZWW5.mjs} +13 -3
- package/dist/lib/browser/chunk-Q37TZWW5.mjs.map +7 -0
- package/dist/lib/browser/chunk-ZOM2FBHQ.mjs +20 -0
- package/dist/lib/browser/chunk-ZOM2FBHQ.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +43 -41
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/react-context-5ENRJEB2.mjs +17 -0
- package/dist/lib/browser/react-context-5ENRJEB2.mjs.map +7 -0
- package/dist/lib/browser/react-surface-VD6RD6PL.mjs +427 -0
- package/dist/lib/browser/react-surface-VD6RD6PL.mjs.map +7 -0
- package/dist/lib/browser/settings-XXFUM3QJ.mjs +32 -0
- package/dist/lib/browser/settings-XXFUM3QJ.mjs.map +7 -0
- package/dist/types/src/DebugPlugin.d.ts +7 -1
- package/dist/types/src/DebugPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +6 -0
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts +3 -0
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +4 -8
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-context/index.d.ts +7 -0
- package/dist/types/src/capabilities/react-context/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-context/react-context.d.ts +10 -0
- package/dist/types/src/capabilities/react-context/react-context.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface/index.d.ts +5 -0
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts +9 -0
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -0
- package/dist/types/src/capabilities/settings/index.d.ts +3 -0
- package/dist/types/src/capabilities/settings/index.d.ts.map +1 -0
- package/dist/types/src/capabilities/settings/settings.d.ts +6 -0
- package/dist/types/src/capabilities/settings/settings.d.ts.map +1 -0
- package/dist/types/src/components/SchemaTable/SchemaTable.d.ts.map +1 -0
- package/dist/types/src/components/SchemaTable/index.d.ts +2 -0
- package/dist/types/src/components/SchemaTable/index.d.ts.map +1 -0
- package/dist/types/src/components/SpaceGenerator/ObjectGenerator.d.ts +5 -5
- package/dist/types/src/components/SpaceGenerator/ObjectGenerator.d.ts.map +1 -1
- package/dist/types/src/components/SpaceGenerator/draw-util.d.ts.map +1 -1
- package/dist/types/src/components/SpaceGenerator/index.d.ts +2 -2
- package/dist/types/src/components/SpaceGenerator/index.d.ts.map +1 -1
- package/dist/types/src/components/SpaceGenerator/presets.d.ts +4 -4
- package/dist/types/src/components/SpaceGenerator/presets.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +2 -9
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/containers/DebugGraph/DebugGraph.d.ts +8 -0
- package/dist/types/src/containers/DebugGraph/DebugGraph.d.ts.map +1 -0
- package/dist/types/src/containers/DebugGraph/index.d.ts +3 -0
- package/dist/types/src/containers/DebugGraph/index.d.ts.map +1 -0
- package/dist/types/src/{components → containers/DebugObjectPanel}/DebugObjectPanel.d.ts +2 -2
- package/dist/types/src/containers/DebugObjectPanel/DebugObjectPanel.d.ts.map +1 -0
- package/dist/types/src/containers/DebugObjectPanel/index.d.ts +3 -0
- package/dist/types/src/containers/DebugObjectPanel/index.d.ts.map +1 -0
- package/dist/types/src/containers/DebugSettings/DebugSettings.d.ts +10 -0
- package/dist/types/src/containers/DebugSettings/DebugSettings.d.ts.map +1 -0
- package/dist/types/src/containers/DebugSettings/index.d.ts +3 -0
- package/dist/types/src/containers/DebugSettings/index.d.ts.map +1 -0
- package/dist/types/src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.d.ts +3 -0
- package/dist/types/src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.d.ts.map +1 -0
- package/dist/types/src/containers/DebugSpaceObjectsPanel/index.d.ts +3 -0
- package/dist/types/src/containers/DebugSpaceObjectsPanel/index.d.ts.map +1 -0
- package/dist/types/src/containers/DebugStatus/DebugStatus.d.ts.map +1 -0
- package/dist/types/src/containers/DebugStatus/index.d.ts +3 -0
- package/dist/types/src/containers/DebugStatus/index.d.ts.map +1 -0
- package/dist/types/src/{components → containers/DevtoolsOverviewContainer}/DevtoolsOverviewContainer.d.ts +0 -1
- package/dist/types/src/containers/DevtoolsOverviewContainer/DevtoolsOverviewContainer.d.ts.map +1 -0
- package/dist/types/src/containers/DevtoolsOverviewContainer/index.d.ts +3 -0
- package/dist/types/src/containers/DevtoolsOverviewContainer/index.d.ts.map +1 -0
- package/dist/types/src/{components → containers}/SpaceGenerator/SpaceGenerator.d.ts +2 -2
- package/dist/types/src/containers/SpaceGenerator/SpaceGenerator.d.ts.map +1 -0
- package/dist/types/src/containers/SpaceGenerator/index.d.ts +3 -0
- package/dist/types/src/containers/SpaceGenerator/index.d.ts.map +1 -0
- package/dist/types/src/{components → containers/Wireframe}/Wireframe.d.ts +2 -2
- package/dist/types/src/containers/Wireframe/Wireframe.d.ts.map +1 -0
- package/dist/types/src/containers/Wireframe/index.d.ts +3 -0
- package/dist/types/src/containers/Wireframe/index.d.ts.map +1 -0
- package/dist/types/src/containers/index.d.ts +10 -0
- package/dist/types/src/containers/index.d.ts.map +1 -0
- package/dist/types/src/meta.d.ts +2 -3
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +5 -1
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types.d.ts +40 -35
- package/dist/types/src/types.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +76 -67
- package/src/DebugPlugin.tsx +27 -32
- package/src/capabilities/app-graph-builder/app-graph-builder.ts +419 -0
- package/src/capabilities/app-graph-builder/index.ts +7 -0
- package/src/capabilities/index.ts +4 -6
- package/src/capabilities/react-context/index.ts +7 -0
- package/src/capabilities/react-context/react-context.tsx +20 -0
- package/src/capabilities/react-surface/index.ts +7 -0
- package/src/capabilities/react-surface/react-surface.tsx +413 -0
- package/src/capabilities/settings/index.ts +7 -0
- package/src/capabilities/settings/settings.ts +31 -0
- package/src/components/SchemaTable/index.ts +5 -0
- package/src/components/SpaceGenerator/ObjectGenerator.tsx +31 -39
- package/src/components/SpaceGenerator/draw-util.ts +5 -5
- package/src/components/SpaceGenerator/index.ts +2 -3
- package/src/components/SpaceGenerator/presets.ts +339 -53
- package/src/components/index.ts +2 -10
- package/src/containers/DebugGraph/DebugGraph.tsx +13 -0
- package/src/containers/DebugGraph/index.ts +7 -0
- package/src/containers/DebugObjectPanel/DebugObjectPanel.tsx +47 -0
- package/src/containers/DebugObjectPanel/index.ts +7 -0
- package/src/containers/DebugSettings/DebugSettings.tsx +201 -0
- package/src/containers/DebugSettings/index.ts +7 -0
- package/src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.tsx +55 -0
- package/src/containers/DebugSpaceObjectsPanel/index.ts +7 -0
- package/src/{components → containers/DebugStatus}/DebugStatus.tsx +2 -2
- package/src/containers/DebugStatus/index.ts +7 -0
- package/src/{components → containers/DevtoolsOverviewContainer}/DevtoolsOverviewContainer.tsx +2 -4
- package/src/containers/DevtoolsOverviewContainer/index.ts +7 -0
- package/src/containers/SpaceGenerator/SpaceGenerator.tsx +127 -0
- package/src/containers/SpaceGenerator/index.ts +7 -0
- package/src/{components → containers/Wireframe}/Wireframe.tsx +7 -7
- package/src/containers/Wireframe/index.ts +7 -0
- package/src/containers/index.ts +14 -0
- package/src/meta.ts +8 -7
- package/src/translations.ts +5 -1
- package/src/types.ts +10 -3
- package/dist/lib/browser/DebugApp-ZDL4CPY5.mjs +0 -228
- package/dist/lib/browser/DebugApp-ZDL4CPY5.mjs.map +0 -7
- package/dist/lib/browser/DevtoolsOverviewContainer-EPD6EWT5.mjs +0 -25
- package/dist/lib/browser/DevtoolsOverviewContainer-EPD6EWT5.mjs.map +0 -7
- package/dist/lib/browser/SpaceGenerator-AG3XGNMV.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-SQXFD2BL.mjs +0 -597
- package/dist/lib/browser/app-graph-builder-SQXFD2BL.mjs.map +0 -7
- package/dist/lib/browser/chunk-5XPIRNQS.mjs +0 -18
- package/dist/lib/browser/chunk-5XPIRNQS.mjs.map +0 -7
- package/dist/lib/browser/chunk-AJA6RYN3.mjs.map +0 -7
- package/dist/lib/browser/react-context-NVAGLAJD.mjs +0 -16
- package/dist/lib/browser/react-context-NVAGLAJD.mjs.map +0 -7
- package/dist/lib/browser/react-surface-3GD2OWCA.mjs +0 -768
- package/dist/lib/browser/react-surface-3GD2OWCA.mjs.map +0 -7
- package/dist/lib/browser/settings-LSSWLM5I.mjs +0 -22
- package/dist/lib/browser/settings-LSSWLM5I.mjs.map +0 -7
- package/dist/types/src/capabilities/app-graph-builder.d.ts +0 -4
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-context.d.ts +0 -8
- package/dist/types/src/capabilities/react-context.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface.d.ts +0 -4
- package/dist/types/src/capabilities/react-surface.d.ts.map +0 -1
- package/dist/types/src/capabilities/settings.d.ts +0 -4
- package/dist/types/src/capabilities/settings.d.ts.map +0 -1
- package/dist/types/src/components/Container.d.ts +0 -5
- package/dist/types/src/components/Container.d.ts.map +0 -1
- package/dist/types/src/components/DebugApp/DebugApp.d.ts +0 -6
- package/dist/types/src/components/DebugApp/DebugApp.d.ts.map +0 -1
- package/dist/types/src/components/DebugApp/Tree.d.ts +0 -18
- package/dist/types/src/components/DebugApp/Tree.d.ts.map +0 -1
- package/dist/types/src/components/DebugApp/index.d.ts +0 -3
- package/dist/types/src/components/DebugApp/index.d.ts.map +0 -1
- package/dist/types/src/components/DebugObjectPanel.d.ts.map +0 -1
- package/dist/types/src/components/DebugSettings.d.ts +0 -6
- package/dist/types/src/components/DebugSettings.d.ts.map +0 -1
- package/dist/types/src/components/DebugStatus.d.ts.map +0 -1
- package/dist/types/src/components/DevtoolsOverviewContainer.d.ts.map +0 -1
- package/dist/types/src/components/SpaceGenerator/SchemaTable.d.ts.map +0 -1
- package/dist/types/src/components/SpaceGenerator/SpaceGenerator.d.ts.map +0 -1
- package/dist/types/src/components/SpaceGenerator/SpaceGenerator.stories.d.ts +0 -6
- package/dist/types/src/components/SpaceGenerator/SpaceGenerator.stories.d.ts.map +0 -1
- package/dist/types/src/components/Wireframe.d.ts.map +0 -1
- package/src/capabilities/app-graph-builder.ts +0 -457
- package/src/capabilities/react-context.tsx +0 -16
- package/src/capabilities/react-surface.tsx +0 -397
- package/src/capabilities/settings.ts +0 -19
- package/src/components/Container.tsx +0 -15
- package/src/components/DebugApp/DebugApp.tsx +0 -84
- package/src/components/DebugApp/Tree.tsx +0 -103
- package/src/components/DebugApp/index.ts +0 -7
- package/src/components/DebugObjectPanel.tsx +0 -35
- package/src/components/DebugSettings.tsx +0 -151
- package/src/components/SpaceGenerator/SpaceGenerator.stories.tsx +0 -52
- package/src/components/SpaceGenerator/SpaceGenerator.tsx +0 -122
- /package/dist/types/src/components/{SpaceGenerator → SchemaTable}/SchemaTable.d.ts +0 -0
- /package/dist/types/src/{components → containers/DebugStatus}/DebugStatus.d.ts +0 -0
- /package/src/components/{SpaceGenerator → SchemaTable}/SchemaTable.tsx +0 -0
|
@@ -1,265 +1,281 @@
|
|
|
1
|
-
// src/
|
|
2
|
-
import { useSignals as _useSignals2 } from "@preact-signals/safe-react/tracking";
|
|
1
|
+
// src/containers/SpaceGenerator/SpaceGenerator.tsx
|
|
3
2
|
import React2, { useCallback, useMemo, useState } from "react";
|
|
4
|
-
import {
|
|
3
|
+
import { useOperationInvoker } from "@dxos/app-framework/ui";
|
|
5
4
|
import { ComputeGraph as ComputeGraph2 } from "@dxos/conductor";
|
|
6
|
-
import { Filter as
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
5
|
+
import { Filter as Filter3, Obj as Obj2 } from "@dxos/echo";
|
|
6
|
+
import { Markdown as Markdown3 } from "@dxos/plugin-markdown/types";
|
|
7
|
+
import { Sheet as Sheet2 } from "@dxos/plugin-sheet/types";
|
|
8
|
+
import { Sketch as Sketch2 } from "@dxos/plugin-sketch/types";
|
|
10
9
|
import { useClient } from "@dxos/react-client";
|
|
11
|
-
import {
|
|
12
|
-
import { IconButton as IconButton2, Input, Toolbar, useAsyncEffect } from "@dxos/react-ui";
|
|
10
|
+
import { IconButton as IconButton2, Input, Panel, ScrollArea, Toolbar, useAsyncEffect } from "@dxos/react-ui";
|
|
13
11
|
import { SyntaxHighlighter } from "@dxos/react-ui-syntax-highlighter";
|
|
14
|
-
import {
|
|
12
|
+
import { Organization as Organization2, Person as Person2, Task } from "@dxos/types";
|
|
15
13
|
import { jsonKeyReplacer, sortKeys } from "@dxos/util";
|
|
16
14
|
|
|
17
|
-
// src/components/
|
|
18
|
-
import { createIntent } from "@dxos/app-framework";
|
|
19
|
-
import { addressToA1Notation } from "@dxos/compute";
|
|
20
|
-
import { ComputeGraph, ComputeGraphModel, DEFAULT_OUTPUT, NODE_INPUT, NODE_OUTPUT } from "@dxos/conductor";
|
|
21
|
-
import { DXN, Filter, Key, Obj, Ref, Type } from "@dxos/echo";
|
|
22
|
-
import { DocumentType } from "@dxos/plugin-markdown/types";
|
|
23
|
-
import { createSheet } from "@dxos/plugin-sheet/types";
|
|
24
|
-
import { SheetType } from "@dxos/plugin-sheet/types";
|
|
25
|
-
import { CanvasType, DiagramType } from "@dxos/plugin-sketch/types";
|
|
26
|
-
import { SpaceAction } from "@dxos/plugin-space/types";
|
|
27
|
-
import { faker } from "@dxos/random";
|
|
28
|
-
import { DataType } from "@dxos/schema";
|
|
29
|
-
import { createAsyncGenerator } from "@dxos/schema/testing";
|
|
30
|
-
import { range } from "@dxos/util";
|
|
31
|
-
var generator = faker;
|
|
32
|
-
var findViewByTypename = async (views, typename) => {
|
|
33
|
-
return views.find((view) => view.query.typename === typename);
|
|
34
|
-
};
|
|
35
|
-
var createGenerator = (client, dispatch, schema) => {
|
|
36
|
-
return async (space, n, cb) => {
|
|
37
|
-
const typename = schema.typename;
|
|
38
|
-
const { objects: views } = await space.db.query(Filter.type(DataType.View)).run();
|
|
39
|
-
const view = await findViewByTypename(views, typename);
|
|
40
|
-
const staticSchema = client?.graph.schemaRegistry.schemas.find((schema2) => Type.getTypename(schema2) === typename);
|
|
41
|
-
if (!view && !staticSchema) {
|
|
42
|
-
await dispatch(createIntent(SpaceAction.AddSchema, {
|
|
43
|
-
space,
|
|
44
|
-
schema
|
|
45
|
-
}));
|
|
46
|
-
} else if (!view && staticSchema) {
|
|
47
|
-
await dispatch(createIntent(SpaceAction.UseStaticSchema, {
|
|
48
|
-
space,
|
|
49
|
-
typename
|
|
50
|
-
}));
|
|
51
|
-
}
|
|
52
|
-
const generate = createAsyncGenerator(generator, schema, {
|
|
53
|
-
db: space.db
|
|
54
|
-
});
|
|
55
|
-
return generate.createObjects(n);
|
|
56
|
-
};
|
|
57
|
-
};
|
|
58
|
-
var staticGenerators = /* @__PURE__ */ new Map([
|
|
59
|
-
[
|
|
60
|
-
DocumentType.typename,
|
|
61
|
-
async (space, n, cb) => {
|
|
62
|
-
const objects = range(n).map(() => {
|
|
63
|
-
return space.db.add(Obj.make(DocumentType, {
|
|
64
|
-
name: faker.commerce.productName(),
|
|
65
|
-
content: Ref.make(Obj.make(DataType.Text, {
|
|
66
|
-
content: faker.lorem.sentences(5)
|
|
67
|
-
}))
|
|
68
|
-
}));
|
|
69
|
-
});
|
|
70
|
-
cb?.(objects);
|
|
71
|
-
return objects;
|
|
72
|
-
}
|
|
73
|
-
],
|
|
74
|
-
[
|
|
75
|
-
DiagramType.typename,
|
|
76
|
-
async (space, n, cb) => {
|
|
77
|
-
const objects = range(n).map(() => {
|
|
78
|
-
const obj = space.db.add(Obj.make(DiagramType, {
|
|
79
|
-
name: faker.commerce.productName(),
|
|
80
|
-
canvas: Ref.make(Obj.make(CanvasType, {
|
|
81
|
-
content: {}
|
|
82
|
-
}))
|
|
83
|
-
}));
|
|
84
|
-
return obj;
|
|
85
|
-
});
|
|
86
|
-
cb?.(objects);
|
|
87
|
-
return objects;
|
|
88
|
-
}
|
|
89
|
-
],
|
|
90
|
-
// TODO(burdon): Create unit tests.
|
|
91
|
-
[
|
|
92
|
-
SheetType.typename,
|
|
93
|
-
async (space, n, cb) => {
|
|
94
|
-
const objects = range(n).map(() => {
|
|
95
|
-
const cells = {};
|
|
96
|
-
const year = (/* @__PURE__ */ new Date()).getFullYear();
|
|
97
|
-
const cols = 4;
|
|
98
|
-
const rows = 16;
|
|
99
|
-
for (let col = 1; col <= cols; col++) {
|
|
100
|
-
for (let row = 1; row <= rows; row++) {
|
|
101
|
-
const cell = addressToA1Notation({
|
|
102
|
-
col,
|
|
103
|
-
row
|
|
104
|
-
});
|
|
105
|
-
if (row === 1) {
|
|
106
|
-
cells[cell] = {
|
|
107
|
-
value: `${year} Q${col}`
|
|
108
|
-
};
|
|
109
|
-
} else if (row === rows) {
|
|
110
|
-
const from = addressToA1Notation({
|
|
111
|
-
col,
|
|
112
|
-
row: 2
|
|
113
|
-
});
|
|
114
|
-
const to = addressToA1Notation({
|
|
115
|
-
col,
|
|
116
|
-
row: rows - 1
|
|
117
|
-
});
|
|
118
|
-
cells[cell] = {
|
|
119
|
-
value: `=SUM(${from}:${to})`
|
|
120
|
-
};
|
|
121
|
-
} else if (row > 2 && row < rows - 1) {
|
|
122
|
-
cells[cell] = {
|
|
123
|
-
value: Math.floor(Math.random() * 1e4)
|
|
124
|
-
};
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
return space.db.add(createSheet({
|
|
129
|
-
name: faker.commerce.productName(),
|
|
130
|
-
cells
|
|
131
|
-
}));
|
|
132
|
-
});
|
|
133
|
-
cb?.(objects);
|
|
134
|
-
return objects;
|
|
135
|
-
}
|
|
136
|
-
],
|
|
137
|
-
[
|
|
138
|
-
ComputeGraph.typename,
|
|
139
|
-
async (space, n, cb) => {
|
|
140
|
-
const objects = range(n, () => {
|
|
141
|
-
const model = ComputeGraphModel.create();
|
|
142
|
-
model.builder.createNode({
|
|
143
|
-
id: "gpt-INPUT",
|
|
144
|
-
type: NODE_INPUT
|
|
145
|
-
}).createNode({
|
|
146
|
-
id: "gpt-GPT",
|
|
147
|
-
type: "gpt"
|
|
148
|
-
}).createNode({
|
|
149
|
-
id: "gpt-QUEUE_ID",
|
|
150
|
-
type: "constant",
|
|
151
|
-
value: new DXN(DXN.kind.QUEUE, [
|
|
152
|
-
"data",
|
|
153
|
-
space.id,
|
|
154
|
-
Key.ObjectId.random()
|
|
155
|
-
]).toString()
|
|
156
|
-
}).createNode({
|
|
157
|
-
id: "gpt-APPEND",
|
|
158
|
-
type: "append"
|
|
159
|
-
}).createNode({
|
|
160
|
-
id: "gpt-OUTPUT",
|
|
161
|
-
type: NODE_OUTPUT
|
|
162
|
-
}).createEdge({
|
|
163
|
-
node: "gpt-INPUT",
|
|
164
|
-
property: "prompt"
|
|
165
|
-
}, {
|
|
166
|
-
node: "gpt-GPT",
|
|
167
|
-
property: "prompt"
|
|
168
|
-
}).createEdge({
|
|
169
|
-
node: "gpt-GPT",
|
|
170
|
-
property: "text"
|
|
171
|
-
}, {
|
|
172
|
-
node: "gpt-OUTPUT",
|
|
173
|
-
property: "text"
|
|
174
|
-
}).createEdge({
|
|
175
|
-
node: "gpt-QUEUE_ID",
|
|
176
|
-
property: DEFAULT_OUTPUT
|
|
177
|
-
}, {
|
|
178
|
-
node: "gpt-APPEND",
|
|
179
|
-
property: "id"
|
|
180
|
-
}).createEdge({
|
|
181
|
-
node: "gpt-GPT",
|
|
182
|
-
property: "messages"
|
|
183
|
-
}, {
|
|
184
|
-
node: "gpt-APPEND",
|
|
185
|
-
property: "items"
|
|
186
|
-
}).createEdge({
|
|
187
|
-
node: "gpt-QUEUE_ID",
|
|
188
|
-
property: DEFAULT_OUTPUT
|
|
189
|
-
}, {
|
|
190
|
-
node: "gpt-OUTPUT",
|
|
191
|
-
property: "queue"
|
|
192
|
-
});
|
|
193
|
-
return space.db.add(model.root);
|
|
194
|
-
});
|
|
195
|
-
cb?.(objects);
|
|
196
|
-
return objects;
|
|
197
|
-
}
|
|
198
|
-
]
|
|
199
|
-
]);
|
|
200
|
-
|
|
201
|
-
// src/components/SpaceGenerator/SchemaTable.tsx
|
|
202
|
-
import { useSignals as _useSignals } from "@preact-signals/safe-react/tracking";
|
|
15
|
+
// src/components/SchemaTable/SchemaTable.tsx
|
|
203
16
|
import React from "react";
|
|
204
17
|
import { IconButton } from "@dxos/react-ui";
|
|
205
18
|
var SchemaTable = ({ types, objects = {}, label, onClick }) => {
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
onClick: () => onClick(type.typename)
|
|
225
|
-
}))));
|
|
226
|
-
} finally {
|
|
227
|
-
_effect.f();
|
|
228
|
-
}
|
|
19
|
+
return /* @__PURE__ */ React.createElement("div", {
|
|
20
|
+
className: "grid grid-cols-[1fr_80px_40px] gap-1 overflow-none"
|
|
21
|
+
}, /* @__PURE__ */ React.createElement("h2", {
|
|
22
|
+
className: "p-2"
|
|
23
|
+
}, label), types.map((type) => /* @__PURE__ */ React.createElement("div", {
|
|
24
|
+
key: type.typename,
|
|
25
|
+
className: "grid grid-cols-subgrid col-span-3 items-center"
|
|
26
|
+
}, /* @__PURE__ */ React.createElement("div", {
|
|
27
|
+
className: "px-2 text-sm font-mono text-subdued"
|
|
28
|
+
}, type.typename), /* @__PURE__ */ React.createElement("div", {
|
|
29
|
+
className: "px-2 text-right font-mono"
|
|
30
|
+
}, objects[type.typename] ?? 0), /* @__PURE__ */ React.createElement(IconButton, {
|
|
31
|
+
variant: "ghost",
|
|
32
|
+
icon: "ph--plus--regular",
|
|
33
|
+
iconOnly: true,
|
|
34
|
+
label: "Create data",
|
|
35
|
+
onClick: () => onClick(type.typename)
|
|
36
|
+
}))));
|
|
229
37
|
};
|
|
230
38
|
|
|
231
39
|
// src/components/SpaceGenerator/presets.ts
|
|
232
|
-
import
|
|
233
|
-
import {
|
|
234
|
-
import {
|
|
235
|
-
import {
|
|
40
|
+
import * as Schema from "effect/Schema";
|
|
41
|
+
import { AgentFunctions, EntityExtractionFunctions, ResearchBlueprint } from "@dxos/assistant-toolkit";
|
|
42
|
+
import { Prompt } from "@dxos/blueprints";
|
|
43
|
+
import { NODE_INPUT } from "@dxos/conductor";
|
|
44
|
+
import { DXN, Feed, Filter, JsonSchema, Key, Obj, Query, Ref, Tag } from "@dxos/echo";
|
|
45
|
+
import { Trigger, serializeFunction } from "@dxos/functions";
|
|
236
46
|
import { invariant } from "@dxos/invariant";
|
|
237
|
-
import {
|
|
238
|
-
import {
|
|
239
|
-
import {
|
|
47
|
+
import { GmailFunctions } from "@dxos/plugin-inbox";
|
|
48
|
+
import { Mailbox } from "@dxos/plugin-inbox/types";
|
|
49
|
+
import { Markdown } from "@dxos/plugin-markdown/types";
|
|
50
|
+
import { createAppend, createChat, createComputeGraph, createConstant, createFunction, createGpt, createQueue, createRandom, createSurface, createTemplate, createText, createTrigger } from "@dxos/react-ui-canvas-compute";
|
|
51
|
+
import { CanvasBoard, CanvasGraphModel, pointMultiply, pointsToRect, rectToPoints } from "@dxos/react-ui-canvas-editor";
|
|
52
|
+
import { ViewModel } from "@dxos/schema";
|
|
53
|
+
import { Message, Organization, Person, Pipeline } from "@dxos/types";
|
|
54
|
+
import { range, trim } from "@dxos/util";
|
|
240
55
|
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-debug/src/components/SpaceGenerator/presets.ts";
|
|
241
|
-
var PresetName = /* @__PURE__ */ function(PresetName2) {
|
|
56
|
+
var PresetName = /* @__PURE__ */ (function(PresetName2) {
|
|
57
|
+
PresetName2["DXOS_TEAM"] = "dxos-team";
|
|
58
|
+
PresetName2["ORG_RESEARCH_PROJECT"] = "org-research-project";
|
|
242
59
|
PresetName2["GPT_QUEUE"] = "webhook-gpt-queue";
|
|
243
60
|
PresetName2["CHAT_GPT"] = "chat-gpt-text";
|
|
244
61
|
PresetName2["OBJECT_CHANGE_QUEUE"] = "objectChange-queue";
|
|
245
|
-
PresetName2["FOREX_FUNCTION_CALL"] = "forex-function-call";
|
|
246
62
|
PresetName2["TIMER_TICK_QUEUE"] = "timerTick-queue";
|
|
63
|
+
PresetName2["FOREX_FUNCTION_CALL"] = "forex-function-call";
|
|
247
64
|
PresetName2["DISCORD_MESSAGES"] = "discord-messages";
|
|
248
65
|
return PresetName2;
|
|
249
|
-
}({});
|
|
250
|
-
var
|
|
66
|
+
})({});
|
|
67
|
+
var generator = () => ({
|
|
251
68
|
schemas: [
|
|
252
|
-
|
|
253
|
-
|
|
69
|
+
CanvasBoard.CanvasBoard,
|
|
70
|
+
Trigger.Trigger
|
|
254
71
|
],
|
|
255
72
|
types: Object.values(PresetName).map((name) => ({
|
|
256
73
|
typename: name
|
|
257
74
|
})),
|
|
258
75
|
items: [
|
|
76
|
+
[
|
|
77
|
+
"dxos-team",
|
|
78
|
+
async (space, n, cb) => {
|
|
79
|
+
const objects = range(n, () => {
|
|
80
|
+
const org = space.db.add(Obj.make(Organization.Organization, {
|
|
81
|
+
name: "DXOS",
|
|
82
|
+
website: "https://dxos.org"
|
|
83
|
+
}));
|
|
84
|
+
const doc = space.db.add(Markdown.make({
|
|
85
|
+
name: "DXOS Research",
|
|
86
|
+
content: "DXOS builds Composer, an open-source AI-powered malleable application."
|
|
87
|
+
}));
|
|
88
|
+
const tag = space.db.add(Tag.make({
|
|
89
|
+
label: "Investor"
|
|
90
|
+
}));
|
|
91
|
+
const tagDxn = Obj.getDXN(tag).toString();
|
|
92
|
+
Obj.change(doc, (d) => {
|
|
93
|
+
Obj.getMeta(d).tags = [
|
|
94
|
+
tagDxn
|
|
95
|
+
];
|
|
96
|
+
});
|
|
97
|
+
space.db.add(Obj.make(Person.Person, {
|
|
98
|
+
[Obj.Meta]: {
|
|
99
|
+
tags: [
|
|
100
|
+
tagDxn
|
|
101
|
+
]
|
|
102
|
+
},
|
|
103
|
+
fullName: "Rich",
|
|
104
|
+
organization: Ref.make(org)
|
|
105
|
+
}));
|
|
106
|
+
space.db.add(Obj.make(Person.Person, {
|
|
107
|
+
fullName: "Josiah",
|
|
108
|
+
organization: Ref.make(org)
|
|
109
|
+
}));
|
|
110
|
+
space.db.add(Obj.make(Person.Person, {
|
|
111
|
+
fullName: "Dima",
|
|
112
|
+
organization: Ref.make(org)
|
|
113
|
+
}));
|
|
114
|
+
space.db.add(Obj.make(Person.Person, {
|
|
115
|
+
fullName: "Mykola",
|
|
116
|
+
organization: Ref.make(org)
|
|
117
|
+
}));
|
|
118
|
+
return doc;
|
|
119
|
+
});
|
|
120
|
+
cb?.(objects);
|
|
121
|
+
return objects;
|
|
122
|
+
}
|
|
123
|
+
],
|
|
124
|
+
[
|
|
125
|
+
"org-research-project",
|
|
126
|
+
async (space, n, cb) => {
|
|
127
|
+
const mailboxes = await space.db.query(Filter.type(Mailbox.Mailbox)).run();
|
|
128
|
+
const mailbox = mailboxes[0];
|
|
129
|
+
invariant(mailbox, "Mailbox not found", {
|
|
130
|
+
F: __dxlog_file,
|
|
131
|
+
L: 121,
|
|
132
|
+
S: void 0,
|
|
133
|
+
A: [
|
|
134
|
+
"mailbox",
|
|
135
|
+
"'Mailbox not found'"
|
|
136
|
+
]
|
|
137
|
+
});
|
|
138
|
+
const mailboxFeed = await mailbox.feed?.tryLoad();
|
|
139
|
+
invariant(mailboxFeed, "Mailbox missing feed reference", {
|
|
140
|
+
F: __dxlog_file,
|
|
141
|
+
L: 123,
|
|
142
|
+
S: void 0,
|
|
143
|
+
A: [
|
|
144
|
+
"mailboxFeed",
|
|
145
|
+
"'Mailbox missing feed reference'"
|
|
146
|
+
]
|
|
147
|
+
});
|
|
148
|
+
const queueDxn = Feed.getQueueDxn(mailboxFeed)?.toString();
|
|
149
|
+
invariant(queueDxn, "Mailbox feed missing queue DXN key", {
|
|
150
|
+
F: __dxlog_file,
|
|
151
|
+
L: 125,
|
|
152
|
+
S: void 0,
|
|
153
|
+
A: [
|
|
154
|
+
"queueDxn",
|
|
155
|
+
"'Mailbox feed missing queue DXN key'"
|
|
156
|
+
]
|
|
157
|
+
});
|
|
158
|
+
const tag = await space.db.query(Filter.type(Tag.Tag, {
|
|
159
|
+
label: "Investor"
|
|
160
|
+
})).first();
|
|
161
|
+
const tagDxn = Obj.getDXN(tag).toString();
|
|
162
|
+
const objects = range(n, () => {
|
|
163
|
+
const contactsQuery = Query.select(Filter.type(Person.Person)).select(Filter.tag(tagDxn));
|
|
164
|
+
const organizationsQuery = Query.select(Filter.type(Organization.Organization)).select(Filter.tag(tagDxn));
|
|
165
|
+
const notesQuery = Query.select(Filter.type(Markdown.Document)).select(Filter.tag(tagDxn));
|
|
166
|
+
space.db.add(Trigger.make({
|
|
167
|
+
enabled: true,
|
|
168
|
+
spec: {
|
|
169
|
+
kind: "timer",
|
|
170
|
+
cron: "* * * * *"
|
|
171
|
+
},
|
|
172
|
+
function: Ref.make(serializeFunction(GmailFunctions.Sync)),
|
|
173
|
+
input: {
|
|
174
|
+
mailbox: Ref.make(mailbox)
|
|
175
|
+
}
|
|
176
|
+
}));
|
|
177
|
+
space.db.add(Trigger.make({
|
|
178
|
+
enabled: true,
|
|
179
|
+
// TODO(wittjosiah): Queue trigger doesn't support matching query of the column.
|
|
180
|
+
spec: {
|
|
181
|
+
kind: "queue",
|
|
182
|
+
queue: queueDxn
|
|
183
|
+
},
|
|
184
|
+
function: Ref.make(serializeFunction(EntityExtractionFunctions.Extract)),
|
|
185
|
+
input: {
|
|
186
|
+
source: "{{event.item}}"
|
|
187
|
+
}
|
|
188
|
+
}));
|
|
189
|
+
const researchPrompt = space.db.add(Prompt.make({
|
|
190
|
+
name: "Research",
|
|
191
|
+
description: "Research organization",
|
|
192
|
+
input: Schema.Struct({
|
|
193
|
+
org: Schema.Any
|
|
194
|
+
}),
|
|
195
|
+
output: Schema.Any,
|
|
196
|
+
// TODO(dmaretskyi): This mocks research (returns pre-baked result), the actual research might take compute minutes.
|
|
197
|
+
// Remove the mock prompt to do the actual research.
|
|
198
|
+
instructions: trim`
|
|
199
|
+
Research the organization provided as input.
|
|
200
|
+
Create a research note for it at the end.
|
|
201
|
+
NOTE: Do mocked reseach (set mockSearch to true).
|
|
202
|
+
`,
|
|
203
|
+
blueprints: [
|
|
204
|
+
Ref.make(ResearchBlueprint.make())
|
|
205
|
+
]
|
|
206
|
+
}));
|
|
207
|
+
space.db.add(Trigger.make({
|
|
208
|
+
enabled: true,
|
|
209
|
+
spec: {
|
|
210
|
+
kind: "subscription",
|
|
211
|
+
query: {
|
|
212
|
+
ast: organizationsQuery.ast
|
|
213
|
+
}
|
|
214
|
+
},
|
|
215
|
+
function: Ref.make(serializeFunction(AgentFunctions.Prompt)),
|
|
216
|
+
input: {
|
|
217
|
+
prompt: Ref.make(researchPrompt),
|
|
218
|
+
input: "{{event.subject}}"
|
|
219
|
+
}
|
|
220
|
+
}));
|
|
221
|
+
const mailboxView = ViewModel.make({
|
|
222
|
+
query: Query.select(Filter.type(Message.Message, {
|
|
223
|
+
properties: {
|
|
224
|
+
labels: Filter.contains("investor")
|
|
225
|
+
}
|
|
226
|
+
})).from({
|
|
227
|
+
queues: [
|
|
228
|
+
queueDxn
|
|
229
|
+
]
|
|
230
|
+
}),
|
|
231
|
+
jsonSchema: JsonSchema.toJsonSchema(Message.Message)
|
|
232
|
+
});
|
|
233
|
+
const contactsView = ViewModel.make({
|
|
234
|
+
query: contactsQuery,
|
|
235
|
+
jsonSchema: JsonSchema.toJsonSchema(Person.Person)
|
|
236
|
+
});
|
|
237
|
+
const organizationsView = ViewModel.make({
|
|
238
|
+
query: organizationsQuery,
|
|
239
|
+
jsonSchema: JsonSchema.toJsonSchema(Organization.Organization)
|
|
240
|
+
});
|
|
241
|
+
const notesView = ViewModel.make({
|
|
242
|
+
query: notesQuery,
|
|
243
|
+
jsonSchema: JsonSchema.toJsonSchema(Markdown.Document)
|
|
244
|
+
});
|
|
245
|
+
return space.db.add(Pipeline.make({
|
|
246
|
+
name: "Investor Research",
|
|
247
|
+
columns: [
|
|
248
|
+
{
|
|
249
|
+
name: "Mailbox",
|
|
250
|
+
view: Ref.make(mailboxView),
|
|
251
|
+
order: []
|
|
252
|
+
},
|
|
253
|
+
{
|
|
254
|
+
name: "Contacts",
|
|
255
|
+
view: Ref.make(contactsView),
|
|
256
|
+
order: []
|
|
257
|
+
},
|
|
258
|
+
{
|
|
259
|
+
name: "Organizations",
|
|
260
|
+
view: Ref.make(organizationsView),
|
|
261
|
+
order: []
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
name: "Notes",
|
|
265
|
+
view: Ref.make(notesView),
|
|
266
|
+
order: []
|
|
267
|
+
}
|
|
268
|
+
]
|
|
269
|
+
}));
|
|
270
|
+
});
|
|
271
|
+
cb?.(objects.flat());
|
|
272
|
+
return objects.flat();
|
|
273
|
+
}
|
|
274
|
+
],
|
|
259
275
|
[
|
|
260
276
|
"webhook-gpt-queue",
|
|
261
277
|
async (space, n, cb) => {
|
|
262
|
-
const objects =
|
|
278
|
+
const objects = range(n, () => {
|
|
263
279
|
const canvasModel = CanvasGraphModel.create();
|
|
264
280
|
let functionTrigger;
|
|
265
281
|
canvasModel.builder.call((builder) => {
|
|
@@ -269,7 +285,7 @@ var generator2 = () => ({
|
|
|
269
285
|
})));
|
|
270
286
|
const triggerShape = createTrigger({
|
|
271
287
|
spaceId: space.id,
|
|
272
|
-
triggerKind:
|
|
288
|
+
triggerKind: "webhook",
|
|
273
289
|
...position({
|
|
274
290
|
x: -18,
|
|
275
291
|
y: -2
|
|
@@ -319,9 +335,9 @@ var generator2 = () => ({
|
|
|
319
335
|
[
|
|
320
336
|
"objectChange-queue",
|
|
321
337
|
async (space, n, cb) => {
|
|
322
|
-
const objects =
|
|
323
|
-
const { canvasModel, computeModel } = createQueueSinkPreset(space,
|
|
324
|
-
|
|
338
|
+
const objects = range(n, () => {
|
|
339
|
+
const { canvasModel, computeModel } = createQueueSinkPreset(space, "subscription", (triggerSpec) => triggerSpec.query = {
|
|
340
|
+
ast: Query.select(Filter.typename("org.dxos.type.chess")).ast
|
|
325
341
|
}, "type");
|
|
326
342
|
return addToSpace("objectChange-queue", space, canvasModel, computeModel);
|
|
327
343
|
});
|
|
@@ -332,8 +348,8 @@ var generator2 = () => ({
|
|
|
332
348
|
[
|
|
333
349
|
"timerTick-queue",
|
|
334
350
|
async (space, n, cb) => {
|
|
335
|
-
const objects =
|
|
336
|
-
const { canvasModel, computeModel } = createQueueSinkPreset(space,
|
|
351
|
+
const objects = range(n, () => {
|
|
352
|
+
const { canvasModel, computeModel } = createQueueSinkPreset(space, "timer", (triggerSpec) => triggerSpec.cron = "*/5 * * * * *", "result");
|
|
337
353
|
return addToSpace("timerTick-queue", space, canvasModel, computeModel);
|
|
338
354
|
});
|
|
339
355
|
cb?.(objects);
|
|
@@ -360,7 +376,7 @@ var generator2 = () => ({
|
|
|
360
376
|
// canvasModel.builder.call((builder) => {
|
|
361
377
|
// const triggerShape = createTrigger({
|
|
362
378
|
// spaceId: space.id,
|
|
363
|
-
// triggerKind:
|
|
379
|
+
// triggerKind: 'email',
|
|
364
380
|
// ...position({ x: -18, y: -2 }),
|
|
365
381
|
// });
|
|
366
382
|
// const trigger = canvasModel.createNode(triggerShape);
|
|
@@ -387,7 +403,7 @@ var generator2 = () => ({
|
|
|
387
403
|
// const templateComputeNode = computeModel.nodes.find((n) => n.id === template.node);
|
|
388
404
|
// invariant(templateComputeNode, 'Template compute node was not created.');
|
|
389
405
|
// templateComputeNode.value = templateContent.join('\n');
|
|
390
|
-
// templateComputeNode.inputSchema =
|
|
406
|
+
// templateComputeNode.inputSchema = JsonSchema.toJsonSchema(EmailTriggerOutput);
|
|
391
407
|
// attachTrigger(functionTrigger, computeModel);
|
|
392
408
|
// return addToSpace(PresetName.EMAIL_TABLE, space, canvasModel, computeModel);
|
|
393
409
|
// });
|
|
@@ -398,7 +414,7 @@ var generator2 = () => ({
|
|
|
398
414
|
[
|
|
399
415
|
"chat-gpt-text",
|
|
400
416
|
async (space, n, cb) => {
|
|
401
|
-
const objects =
|
|
417
|
+
const objects = range(n, () => {
|
|
402
418
|
const canvasModel = CanvasGraphModel.create();
|
|
403
419
|
canvasModel.builder.call((builder) => {
|
|
404
420
|
const gpt = canvasModel.createNode(createGpt(position({
|
|
@@ -475,7 +491,7 @@ var generator2 = () => ({
|
|
|
475
491
|
// );
|
|
476
492
|
// const triggerShape = createTrigger({
|
|
477
493
|
// spaceId: space.id,
|
|
478
|
-
// triggerKind:
|
|
494
|
+
// triggerKind: 'email',
|
|
479
495
|
// ...rawPosition({ centerX: -736, centerY: -384, width: 182, height: 192 }),
|
|
480
496
|
// });
|
|
481
497
|
// const trigger = canvasModel.createNode(triggerShape);
|
|
@@ -518,7 +534,7 @@ var generator2 = () => ({
|
|
|
518
534
|
// invariant(templateComputeNode, 'Template compute node was not created.');
|
|
519
535
|
// templateComputeNode.value = templateContent.join('\n');
|
|
520
536
|
// const extendedSchema = Schema.extend(EmailTriggerOutput, Schema.Struct({ text: Schema.String }));
|
|
521
|
-
// templateComputeNode.inputSchema =
|
|
537
|
+
// templateComputeNode.inputSchema = JsonSchema.toJsonSchema(extendedSchema);
|
|
522
538
|
// attachTrigger(functionTrigger, computeModel);
|
|
523
539
|
// return addToSpace(PresetName.EMAIL_WITH_SUMMARY, space, canvasModel, computeModel);
|
|
524
540
|
// });
|
|
@@ -529,7 +545,7 @@ var generator2 = () => ({
|
|
|
529
545
|
[
|
|
530
546
|
"forex-function-call",
|
|
531
547
|
async (space, n, cb) => {
|
|
532
|
-
const objects =
|
|
548
|
+
const objects = range(n, () => {
|
|
533
549
|
const canvasModel = CanvasGraphModel.create();
|
|
534
550
|
canvasModel.builder.call((builder) => {
|
|
535
551
|
const sourceCurrency = canvasModel.createNode(createConstant({
|
|
@@ -578,13 +594,13 @@ var generator2 = () => ({
|
|
|
578
594
|
[
|
|
579
595
|
"discord-messages",
|
|
580
596
|
async (space, n, cb) => {
|
|
581
|
-
const objects =
|
|
597
|
+
const objects = range(n, () => {
|
|
582
598
|
const canvasModel = CanvasGraphModel.create();
|
|
583
599
|
let functionTrigger;
|
|
584
600
|
canvasModel.builder.call((builder) => {
|
|
585
601
|
const triggerShape = createTrigger({
|
|
586
602
|
spaceId: space.id,
|
|
587
|
-
triggerKind:
|
|
603
|
+
triggerKind: "timer",
|
|
588
604
|
...position({
|
|
589
605
|
x: -10,
|
|
590
606
|
y: -5
|
|
@@ -599,10 +615,10 @@ var generator2 = () => ({
|
|
|
599
615
|
})
|
|
600
616
|
}));
|
|
601
617
|
const queueId = canvasModel.createNode(createConstant({
|
|
602
|
-
value: new
|
|
618
|
+
value: new DXN(DXN.kind.QUEUE, [
|
|
603
619
|
"data",
|
|
604
620
|
space.id,
|
|
605
|
-
|
|
621
|
+
Key.ObjectId.random()
|
|
606
622
|
]).toString(),
|
|
607
623
|
...position({
|
|
608
624
|
x: -10,
|
|
@@ -720,20 +736,22 @@ var createQueueSinkPreset = (space, triggerKind, initSpec, triggerOutputName) =>
|
|
|
720
736
|
const triggerSpec = functionTrigger.spec;
|
|
721
737
|
invariant(triggerSpec && triggerSpec.kind === triggerKind, "No trigger spec.", {
|
|
722
738
|
F: __dxlog_file,
|
|
723
|
-
L:
|
|
739
|
+
L: 764,
|
|
724
740
|
S: void 0,
|
|
725
741
|
A: [
|
|
726
742
|
"triggerSpec && triggerSpec.kind === triggerKind",
|
|
727
743
|
"'No trigger spec.'"
|
|
728
744
|
]
|
|
729
745
|
});
|
|
730
|
-
|
|
746
|
+
Obj.change(functionTrigger, (ft) => {
|
|
747
|
+
initSpec(ft.spec);
|
|
748
|
+
});
|
|
731
749
|
});
|
|
732
750
|
const computeModel = createComputeGraph(canvasModel);
|
|
733
751
|
const templateComputeNode = computeModel.nodes.find((n) => n.id === template.node);
|
|
734
752
|
invariant(templateComputeNode, "Template compute node was not created.", {
|
|
735
753
|
F: __dxlog_file,
|
|
736
|
-
L:
|
|
754
|
+
L: 773,
|
|
737
755
|
S: void 0,
|
|
738
756
|
A: [
|
|
739
757
|
"templateComputeNode",
|
|
@@ -746,7 +764,7 @@ var createQueueSinkPreset = (space, triggerKind, initSpec, triggerOutputName) =>
|
|
|
746
764
|
' "id": "@{{changeId}}"',
|
|
747
765
|
"}"
|
|
748
766
|
].join("\n");
|
|
749
|
-
templateComputeNode.inputSchema =
|
|
767
|
+
templateComputeNode.inputSchema = JsonSchema.toJsonSchema(Schema.Struct({
|
|
750
768
|
type: Schema.String,
|
|
751
769
|
changeId: Schema.String
|
|
752
770
|
}));
|
|
@@ -757,18 +775,18 @@ var createQueueSinkPreset = (space, triggerKind, initSpec, triggerOutputName) =>
|
|
|
757
775
|
};
|
|
758
776
|
};
|
|
759
777
|
var addToSpace = (name, space, canvas, compute) => {
|
|
760
|
-
return space.db.add(
|
|
778
|
+
return space.db.add(Obj.make(CanvasBoard.CanvasBoard, {
|
|
761
779
|
name,
|
|
762
|
-
computeGraph:
|
|
780
|
+
computeGraph: Ref.make(compute.root),
|
|
763
781
|
layout: canvas.graph
|
|
764
782
|
}));
|
|
765
783
|
};
|
|
766
784
|
var setupQueue = (space, canvasModel, args) => {
|
|
767
785
|
const queueId = canvasModel.createNode(createConstant({
|
|
768
|
-
value: new
|
|
786
|
+
value: new DXN(DXN.kind.QUEUE, [
|
|
769
787
|
"data",
|
|
770
788
|
space.id,
|
|
771
|
-
|
|
789
|
+
Key.ObjectId.random()
|
|
772
790
|
]).toString(),
|
|
773
791
|
...args?.idPosition ? rawPosition(args.idPosition) : position({
|
|
774
792
|
x: -18,
|
|
@@ -795,16 +813,18 @@ var setupQueue = (space, canvasModel, args) => {
|
|
|
795
813
|
var attachTrigger = (functionTrigger, computeModel) => {
|
|
796
814
|
invariant(functionTrigger, void 0, {
|
|
797
815
|
F: __dxlog_file,
|
|
798
|
-
L:
|
|
816
|
+
L: 815,
|
|
799
817
|
S: void 0,
|
|
800
818
|
A: [
|
|
801
819
|
"functionTrigger",
|
|
802
820
|
""
|
|
803
821
|
]
|
|
804
822
|
});
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
823
|
+
const inputNode = computeModel.nodes.find((node) => node.type === NODE_INPUT);
|
|
824
|
+
Obj.change(functionTrigger, (t) => {
|
|
825
|
+
t.function = Ref.make(computeModel.root);
|
|
826
|
+
t.inputNodeId = inputNode.id;
|
|
827
|
+
});
|
|
808
828
|
};
|
|
809
829
|
var rawPosition = (args) => {
|
|
810
830
|
return {
|
|
@@ -850,134 +870,309 @@ var position = (rect) => {
|
|
|
850
870
|
}
|
|
851
871
|
};
|
|
852
872
|
|
|
853
|
-
// src/components/SpaceGenerator/
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
const
|
|
873
|
-
const
|
|
874
|
-
const
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
const
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
873
|
+
// src/components/SpaceGenerator/ObjectGenerator.tsx
|
|
874
|
+
import { addressToA1Notation } from "@dxos/compute";
|
|
875
|
+
import { ComputeGraph, ComputeGraphModel, DEFAULT_OUTPUT, NODE_INPUT as NODE_INPUT2, NODE_OUTPUT } from "@dxos/conductor";
|
|
876
|
+
import { DXN as DXN2, Filter as Filter2, Key as Key2 } from "@dxos/echo";
|
|
877
|
+
import { View } from "@dxos/echo";
|
|
878
|
+
import { Markdown as Markdown2 } from "@dxos/plugin-markdown/types";
|
|
879
|
+
import { Sheet } from "@dxos/plugin-sheet/types";
|
|
880
|
+
import { Sketch } from "@dxos/plugin-sketch/types";
|
|
881
|
+
import { SpaceOperation } from "@dxos/plugin-space/types";
|
|
882
|
+
import { faker } from "@dxos/random";
|
|
883
|
+
import { getTypenameFromQuery } from "@dxos/schema";
|
|
884
|
+
import { createAsyncGenerator } from "@dxos/schema/testing";
|
|
885
|
+
import { range as range2 } from "@dxos/util";
|
|
886
|
+
var generator2 = faker;
|
|
887
|
+
var findViewByTypename = async (views, typename) => {
|
|
888
|
+
return views.find((view) => getTypenameFromQuery(view.query.ast) === typename);
|
|
889
|
+
};
|
|
890
|
+
var createGenerator = (client, invokePromise, schema) => {
|
|
891
|
+
return async (space, n) => {
|
|
892
|
+
const typename = schema.typename;
|
|
893
|
+
const views = await space.db.query(Filter2.type(View.View)).run();
|
|
894
|
+
const view = await findViewByTypename(views, typename);
|
|
895
|
+
const staticSchema = client?.graph.schemaRegistry.query({
|
|
896
|
+
typename
|
|
897
|
+
}).runSync()[0];
|
|
898
|
+
if (!view && !staticSchema) {
|
|
899
|
+
await invokePromise(SpaceOperation.AddSchema, {
|
|
900
|
+
db: space.db,
|
|
901
|
+
schema,
|
|
902
|
+
show: false
|
|
903
|
+
});
|
|
904
|
+
}
|
|
905
|
+
const generate = createAsyncGenerator(generator2, schema, {
|
|
906
|
+
db: space.db
|
|
907
|
+
});
|
|
908
|
+
return generate.createObjects(n);
|
|
909
|
+
};
|
|
910
|
+
};
|
|
911
|
+
var staticGenerators = /* @__PURE__ */ new Map([
|
|
912
|
+
[
|
|
913
|
+
Markdown2.Document.typename,
|
|
914
|
+
async (space, n, cb) => {
|
|
915
|
+
const objects = range2(n).map(() => {
|
|
916
|
+
return space.db.add(Markdown2.make({
|
|
917
|
+
name: faker.commerce.productName(),
|
|
918
|
+
content: faker.lorem.sentences(5)
|
|
919
|
+
}));
|
|
920
|
+
});
|
|
921
|
+
cb?.(objects);
|
|
922
|
+
return objects;
|
|
923
|
+
}
|
|
924
|
+
],
|
|
925
|
+
[
|
|
926
|
+
Sketch.Sketch.typename,
|
|
927
|
+
async (space, n, cb) => {
|
|
928
|
+
const objects = range2(n).map(() => {
|
|
929
|
+
const obj = space.db.add(Sketch.make({
|
|
930
|
+
name: faker.commerce.productName()
|
|
931
|
+
}));
|
|
932
|
+
return obj;
|
|
933
|
+
});
|
|
934
|
+
cb?.(objects);
|
|
935
|
+
return objects;
|
|
936
|
+
}
|
|
937
|
+
],
|
|
938
|
+
// TODO(burdon): Create unit tests.
|
|
939
|
+
[
|
|
940
|
+
Sheet.Sheet.typename,
|
|
941
|
+
async (space, n, cb) => {
|
|
942
|
+
const objects = range2(n).map(() => {
|
|
943
|
+
const cells = {};
|
|
944
|
+
const year = (/* @__PURE__ */ new Date()).getFullYear();
|
|
945
|
+
const cols = 4;
|
|
946
|
+
const rows = 16;
|
|
947
|
+
for (let col = 1; col <= cols; col++) {
|
|
948
|
+
for (let row = 1; row <= rows; row++) {
|
|
949
|
+
const cell = addressToA1Notation({
|
|
950
|
+
col,
|
|
951
|
+
row
|
|
952
|
+
});
|
|
953
|
+
if (row === 1) {
|
|
954
|
+
cells[cell] = {
|
|
955
|
+
value: `${year} Q${col}`
|
|
956
|
+
};
|
|
957
|
+
} else if (row === rows) {
|
|
958
|
+
const from = addressToA1Notation({
|
|
959
|
+
col,
|
|
960
|
+
row: 2
|
|
961
|
+
});
|
|
962
|
+
const to = addressToA1Notation({
|
|
963
|
+
col,
|
|
964
|
+
row: rows - 1
|
|
965
|
+
});
|
|
966
|
+
cells[cell] = {
|
|
967
|
+
value: `=SUM(${from}:${to})`
|
|
968
|
+
};
|
|
969
|
+
} else if (row > 2 && row < rows - 1) {
|
|
970
|
+
cells[cell] = {
|
|
971
|
+
value: Math.floor(Math.random() * 1e4)
|
|
972
|
+
};
|
|
973
|
+
}
|
|
974
|
+
}
|
|
902
975
|
}
|
|
903
|
-
return
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
static: staticSchema.length,
|
|
908
|
-
mutable: echoSchema.length
|
|
909
|
-
},
|
|
910
|
-
objects: objectMap
|
|
976
|
+
return space.db.add(Sheet.make({
|
|
977
|
+
name: faker.commerce.productName(),
|
|
978
|
+
cells
|
|
979
|
+
}));
|
|
911
980
|
});
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
981
|
+
cb?.(objects);
|
|
982
|
+
return objects;
|
|
983
|
+
}
|
|
984
|
+
],
|
|
985
|
+
[
|
|
986
|
+
ComputeGraph.typename,
|
|
987
|
+
async (space, n, cb) => {
|
|
988
|
+
const objects = range2(n, () => {
|
|
989
|
+
const model = ComputeGraphModel.create();
|
|
990
|
+
model.builder.createNode({
|
|
991
|
+
id: "gpt-INPUT",
|
|
992
|
+
type: NODE_INPUT2
|
|
993
|
+
}).createNode({
|
|
994
|
+
id: "gpt-GPT",
|
|
995
|
+
type: "gpt"
|
|
996
|
+
}).createNode({
|
|
997
|
+
id: "gpt-QUEUE_ID",
|
|
998
|
+
type: "constant",
|
|
999
|
+
value: new DXN2(DXN2.kind.QUEUE, [
|
|
1000
|
+
"data",
|
|
1001
|
+
space.id,
|
|
1002
|
+
Key2.ObjectId.random()
|
|
1003
|
+
]).toString()
|
|
1004
|
+
}).createNode({
|
|
1005
|
+
id: "gpt-APPEND",
|
|
1006
|
+
type: "append"
|
|
1007
|
+
}).createNode({
|
|
1008
|
+
id: "gpt-OUTPUT",
|
|
1009
|
+
type: NODE_OUTPUT
|
|
1010
|
+
}).createEdge({
|
|
1011
|
+
node: "gpt-INPUT",
|
|
1012
|
+
property: "prompt"
|
|
1013
|
+
}, {
|
|
1014
|
+
node: "gpt-GPT",
|
|
1015
|
+
property: "prompt"
|
|
1016
|
+
}).createEdge({
|
|
1017
|
+
node: "gpt-GPT",
|
|
1018
|
+
property: "text"
|
|
1019
|
+
}, {
|
|
1020
|
+
node: "gpt-OUTPUT",
|
|
1021
|
+
property: "text"
|
|
1022
|
+
}).createEdge({
|
|
1023
|
+
node: "gpt-QUEUE_ID",
|
|
1024
|
+
property: DEFAULT_OUTPUT
|
|
1025
|
+
}, {
|
|
1026
|
+
node: "gpt-APPEND",
|
|
1027
|
+
property: "id"
|
|
1028
|
+
}).createEdge({
|
|
1029
|
+
node: "gpt-GPT",
|
|
1030
|
+
property: "messages"
|
|
1031
|
+
}, {
|
|
1032
|
+
node: "gpt-APPEND",
|
|
1033
|
+
property: "items"
|
|
1034
|
+
}).createEdge({
|
|
1035
|
+
node: "gpt-QUEUE_ID",
|
|
1036
|
+
property: DEFAULT_OUTPUT
|
|
1037
|
+
}, {
|
|
1038
|
+
node: "gpt-OUTPUT",
|
|
1039
|
+
property: "queue"
|
|
1040
|
+
});
|
|
1041
|
+
return space.db.add(model.root);
|
|
1042
|
+
});
|
|
1043
|
+
cb?.(objects);
|
|
1044
|
+
return objects;
|
|
1045
|
+
}
|
|
1046
|
+
]
|
|
1047
|
+
]);
|
|
1048
|
+
|
|
1049
|
+
// src/containers/SpaceGenerator/SpaceGenerator.tsx
|
|
1050
|
+
var SpaceGenerator = ({ space, onCreateObjects }) => {
|
|
1051
|
+
const { invokePromise } = useOperationInvoker();
|
|
1052
|
+
const client = useClient();
|
|
1053
|
+
const staticTypes = [
|
|
1054
|
+
Markdown3.Document,
|
|
1055
|
+
Sketch2.Sketch,
|
|
1056
|
+
Sheet2.Sheet,
|
|
1057
|
+
ComputeGraph2
|
|
1058
|
+
];
|
|
1059
|
+
const recordTypes = [
|
|
1060
|
+
Organization2.Organization,
|
|
1061
|
+
Person2.Person,
|
|
1062
|
+
Task.Task
|
|
1063
|
+
];
|
|
1064
|
+
const [count, setCount] = useState(1);
|
|
1065
|
+
const [info, setInfo] = useState({});
|
|
1066
|
+
const presets = useMemo(() => generator(), []);
|
|
1067
|
+
useAsyncEffect(async () => {
|
|
1068
|
+
await client.addTypes([
|
|
1069
|
+
...staticTypes,
|
|
1070
|
+
...recordTypes,
|
|
1071
|
+
...presets.schemas
|
|
915
1072
|
]);
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
1073
|
+
}, [
|
|
1074
|
+
client
|
|
1075
|
+
]);
|
|
1076
|
+
const typeMap = useMemo(() => {
|
|
1077
|
+
const recordGenerators = new Map(recordTypes.map((type) => [
|
|
1078
|
+
type.typename,
|
|
1079
|
+
createGenerator(client, invokePromise, type)
|
|
1080
|
+
]));
|
|
1081
|
+
return new Map([
|
|
1082
|
+
...staticGenerators,
|
|
1083
|
+
...presets.items,
|
|
1084
|
+
...recordGenerators
|
|
925
1085
|
]);
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
}
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
}
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
1086
|
+
}, [
|
|
1087
|
+
client,
|
|
1088
|
+
recordTypes,
|
|
1089
|
+
invokePromise
|
|
1090
|
+
]);
|
|
1091
|
+
const updateInfo = async () => {
|
|
1092
|
+
const echoSchema = await space.db.schemaRegistry.query().run();
|
|
1093
|
+
const staticSchema = await space.db.graph.schemaRegistry.query().run();
|
|
1094
|
+
const objects = await space.db.query(Filter3.everything()).run();
|
|
1095
|
+
const objectMap = sortKeys(objects.reduce((map, obj) => {
|
|
1096
|
+
const type = Obj2.getTypename(obj);
|
|
1097
|
+
if (type) {
|
|
1098
|
+
const count2 = map[type] ?? 0;
|
|
1099
|
+
map[type] = count2 + 1;
|
|
1100
|
+
}
|
|
1101
|
+
return map;
|
|
1102
|
+
}, {}));
|
|
1103
|
+
setInfo({
|
|
1104
|
+
schema: {
|
|
1105
|
+
static: staticSchema.length,
|
|
1106
|
+
mutable: echoSchema.length
|
|
1107
|
+
},
|
|
1108
|
+
objects: objectMap
|
|
1109
|
+
});
|
|
1110
|
+
};
|
|
1111
|
+
useAsyncEffect(updateInfo, [
|
|
1112
|
+
space
|
|
1113
|
+
]);
|
|
1114
|
+
const handleCreateData = useCallback(async (typename) => {
|
|
1115
|
+
const constructor = typeMap.get(typename);
|
|
1116
|
+
if (constructor) {
|
|
1117
|
+
await constructor(space, count, onCreateObjects);
|
|
1118
|
+
await updateInfo();
|
|
1119
|
+
}
|
|
1120
|
+
}, [
|
|
1121
|
+
typeMap,
|
|
1122
|
+
count
|
|
1123
|
+
]);
|
|
1124
|
+
return /* @__PURE__ */ React2.createElement(Panel.Root, null, /* @__PURE__ */ React2.createElement(Panel.Toolbar, {
|
|
1125
|
+
asChild: true
|
|
1126
|
+
}, /* @__PURE__ */ React2.createElement(Toolbar.Root, null, /* @__PURE__ */ React2.createElement(IconButton2, {
|
|
1127
|
+
icon: "ph--arrow-clockwise--regular",
|
|
1128
|
+
iconOnly: true,
|
|
1129
|
+
label: "Refresh",
|
|
1130
|
+
onClick: updateInfo
|
|
1131
|
+
}), /* @__PURE__ */ React2.createElement(Toolbar.Separator, null), /* @__PURE__ */ React2.createElement(Input.Root, null, /* @__PURE__ */ React2.createElement(Input.TextInput, {
|
|
1132
|
+
type: "number",
|
|
1133
|
+
placeholder: "Count",
|
|
1134
|
+
classNames: "w-[4rem] text-right",
|
|
1135
|
+
min: 1,
|
|
1136
|
+
max: 100,
|
|
1137
|
+
size: 8,
|
|
1138
|
+
value: count,
|
|
1139
|
+
onChange: (event) => setCount(parseInt(event.target.value))
|
|
1140
|
+
})))), /* @__PURE__ */ React2.createElement(Panel.Content, {
|
|
1141
|
+
asChild: true
|
|
1142
|
+
}, /* @__PURE__ */ React2.createElement(ScrollArea.Root, {
|
|
1143
|
+
thin: true,
|
|
1144
|
+
orientation: "vertical"
|
|
1145
|
+
}, /* @__PURE__ */ React2.createElement(ScrollArea.Viewport, {
|
|
1146
|
+
classNames: "gap-4 divide-y divide-subdued-separator"
|
|
1147
|
+
}, /* @__PURE__ */ React2.createElement(SchemaTable, {
|
|
1148
|
+
types: staticTypes,
|
|
1149
|
+
objects: info.objects,
|
|
1150
|
+
label: "Static Types",
|
|
1151
|
+
onClick: handleCreateData
|
|
1152
|
+
}), /* @__PURE__ */ React2.createElement(SchemaTable, {
|
|
1153
|
+
types: recordTypes,
|
|
1154
|
+
objects: info.objects,
|
|
1155
|
+
label: "Record Types",
|
|
1156
|
+
onClick: handleCreateData
|
|
1157
|
+
}), /* @__PURE__ */ React2.createElement(SchemaTable, {
|
|
1158
|
+
types: presets.types,
|
|
1159
|
+
objects: info.objects,
|
|
1160
|
+
label: "Presets",
|
|
1161
|
+
onClick: handleCreateData
|
|
1162
|
+
}), /* @__PURE__ */ React2.createElement(SyntaxHighlighter, {
|
|
1163
|
+
language: "json",
|
|
1164
|
+
classNames: "text-xs"
|
|
1165
|
+
}, JSON.stringify({
|
|
1166
|
+
space,
|
|
1167
|
+
...info
|
|
1168
|
+
}, jsonKeyReplacer({
|
|
1169
|
+
truncate: true
|
|
1170
|
+
}), 2))))));
|
|
976
1171
|
};
|
|
977
1172
|
|
|
978
|
-
// src/
|
|
1173
|
+
// src/containers/SpaceGenerator/index.ts
|
|
979
1174
|
var SpaceGenerator_default = SpaceGenerator;
|
|
980
1175
|
export {
|
|
981
1176
|
SpaceGenerator_default as default
|
|
982
1177
|
};
|
|
983
|
-
//# sourceMappingURL=SpaceGenerator-
|
|
1178
|
+
//# sourceMappingURL=SpaceGenerator-Q2GH6S6D.mjs.map
|