@dxos/plugin-debug 0.8.4-main.7996785055 → 0.8.4-main.8baae0fced
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 +102 -5
- package/README.md +1 -1
- package/dist/lib/{browser/DebugGraph-7HXJ2PS2.mjs → neutral/DebugGraph-G4FWS57E.mjs} +4 -5
- package/dist/lib/neutral/DebugGraph-G4FWS57E.mjs.map +7 -0
- package/dist/lib/neutral/DebugObjectPanel-UJ63CV25.mjs +59 -0
- package/dist/lib/neutral/DebugObjectPanel-UJ63CV25.mjs.map +7 -0
- package/dist/lib/neutral/DebugPlugin.mjs +47 -0
- package/dist/lib/neutral/DebugPlugin.mjs.map +7 -0
- package/dist/lib/neutral/DebugPlugin.node.mjs +18 -0
- package/dist/lib/neutral/DebugPlugin.node.mjs.map +7 -0
- package/dist/lib/neutral/DebugPlugin.workerd.mjs +12 -0
- package/dist/lib/neutral/DebugPlugin.workerd.mjs.map +7 -0
- package/dist/lib/neutral/DebugSettings-Z3XADRNK.mjs +224 -0
- package/dist/lib/neutral/DebugSettings-Z3XADRNK.mjs.map +7 -0
- package/dist/lib/{browser/DebugSpaceObjectsPanel-SIK72DXV.mjs → neutral/DebugSpaceObjectsPanel-NISULU6U.mjs} +9 -20
- package/dist/lib/neutral/DebugSpaceObjectsPanel-NISULU6U.mjs.map +7 -0
- package/dist/lib/{browser/DebugStatus-FWF3YFBA.mjs → neutral/DebugStatus-YB3KFP7G.mjs} +5 -8
- package/dist/lib/neutral/DebugStatus-YB3KFP7G.mjs.map +7 -0
- package/dist/lib/{browser/DevtoolsOverviewContainer-TBTTPXVF.mjs → neutral/DevtoolsOverviewContainer-YX7Z3D2H.mjs} +4 -5
- package/dist/lib/neutral/DevtoolsOverviewContainer-YX7Z3D2H.mjs.map +7 -0
- package/dist/lib/neutral/GithubPanel-DAIR6QSZ.mjs +177 -0
- package/dist/lib/neutral/GithubPanel-DAIR6QSZ.mjs.map +7 -0
- package/dist/lib/neutral/SpaceGenerator-UBYB4NPD.mjs +143 -0
- package/dist/lib/neutral/SpaceGenerator-UBYB4NPD.mjs.map +7 -0
- package/dist/lib/{browser/Wireframe-KAGOKEFW.mjs → neutral/Wireframe-7SNRUKET.mjs} +8 -9
- package/dist/lib/neutral/Wireframe-7SNRUKET.mjs.map +7 -0
- package/dist/lib/{browser/app-graph-builder-FBLOEOH5.mjs → neutral/app-graph-builder-OIC65GEP.mjs} +169 -186
- package/dist/lib/neutral/app-graph-builder-OIC65GEP.mjs.map +7 -0
- package/dist/lib/neutral/capabilities/index.mjs +15 -0
- package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
- package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
- package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
- package/dist/lib/{browser/chunk-Q37TZWW5.mjs → neutral/chunk-NFIOTQRZ.mjs} +21 -10
- package/dist/lib/neutral/chunk-NFIOTQRZ.mjs.map +7 -0
- package/dist/lib/{browser/chunk-ZOM2FBHQ.mjs → neutral/chunk-SWW2QL66.mjs} +5 -1
- package/dist/lib/neutral/chunk-SWW2QL66.mjs.map +7 -0
- package/dist/lib/{browser/SpaceGenerator-UUQS6TYY.mjs → neutral/components/index.mjs} +61 -264
- package/dist/lib/neutral/components/index.mjs.map +7 -0
- package/dist/lib/neutral/containers/index.mjs +23 -0
- package/dist/lib/neutral/containers/index.mjs.map +7 -0
- package/dist/lib/neutral/index.mjs +18 -0
- package/dist/lib/neutral/index.mjs.map +7 -0
- package/dist/lib/neutral/meta.json +1 -0
- package/dist/lib/neutral/meta.mjs +8 -0
- package/dist/lib/neutral/meta.mjs.map +7 -0
- package/dist/lib/neutral/plugin.mjs +12 -0
- package/dist/lib/neutral/plugin.mjs.map +7 -0
- package/dist/lib/{browser/react-context-KBHXEMRS.mjs → neutral/react-context-MUZ3KVLU.mjs} +4 -5
- package/dist/lib/neutral/react-context-MUZ3KVLU.mjs.map +7 -0
- package/dist/lib/{browser/react-surface-HYT4HKZX.mjs → neutral/react-surface-UP747GQ7.mjs} +148 -157
- package/dist/lib/neutral/react-surface-UP747GQ7.mjs.map +7 -0
- package/dist/lib/{browser/settings-XXFUM3QJ.mjs → neutral/settings-MPM6YUP4.mjs} +7 -11
- package/dist/lib/neutral/settings-MPM6YUP4.mjs.map +7 -0
- package/dist/lib/neutral/translations.mjs +89 -0
- package/dist/lib/neutral/translations.mjs.map +7 -0
- package/dist/lib/neutral/types/index.mjs +14 -0
- package/dist/lib/neutral/types/index.mjs.map +7 -0
- package/dist/types/src/DebugPlugin.d.ts +2 -5
- package/dist/types/src/DebugPlugin.d.ts.map +1 -1
- package/dist/types/src/DebugPlugin.node.d.ts +5 -0
- package/dist/types/src/DebugPlugin.node.d.ts.map +1 -0
- package/dist/types/src/DebugPlugin.test.d.ts +2 -0
- package/dist/types/src/DebugPlugin.test.d.ts.map +1 -0
- package/dist/types/src/DebugPlugin.workerd.d.ts +5 -0
- package/dist/types/src/DebugPlugin.workerd.d.ts.map +1 -0
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +11 -4
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-context.d.ts.map +1 -0
- package/dist/types/src/capabilities/{react-surface/react-surface.d.ts → react-surface.d.ts} +2 -2
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
- package/dist/types/src/capabilities/{settings/settings.d.ts → settings.d.ts} +2 -1
- package/dist/types/src/capabilities/settings.d.ts.map +1 -0
- package/dist/types/src/components/DebugSettings/DebugSettings.d.ts +11 -0
- package/dist/types/src/components/DebugSettings/DebugSettings.d.ts.map +1 -0
- package/dist/types/src/components/DebugSettings/DebugSettings.stories.d.ts +104 -0
- package/dist/types/src/components/DebugSettings/DebugSettings.stories.d.ts.map +1 -0
- package/dist/types/src/components/DebugSettings/index.d.ts +2 -0
- package/dist/types/src/components/DebugSettings/index.d.ts.map +1 -0
- package/dist/types/src/components/SchemaTable/SchemaTable.d.ts.map +1 -1
- package/dist/types/src/components/SpaceGenerator/ObjectGenerator.d.ts +2 -2
- 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/presets.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +2 -0
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/containers/DebugGraph/DebugGraph.d.ts +2 -2
- package/dist/types/src/containers/DebugGraph/DebugGraph.d.ts.map +1 -1
- package/dist/types/src/containers/DebugGraph/index.d.ts +1 -2
- package/dist/types/src/containers/DebugGraph/index.d.ts.map +1 -1
- package/dist/types/src/containers/DebugObjectPanel/DebugObjectPanel.d.ts +3 -4
- package/dist/types/src/containers/DebugObjectPanel/DebugObjectPanel.d.ts.map +1 -1
- package/dist/types/src/containers/DebugObjectPanel/index.d.ts +1 -2
- package/dist/types/src/containers/DebugObjectPanel/index.d.ts.map +1 -1
- package/dist/types/src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.d.ts +3 -1
- package/dist/types/src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.d.ts.map +1 -1
- package/dist/types/src/containers/DebugSpaceObjectsPanel/index.d.ts +1 -2
- package/dist/types/src/containers/DebugSpaceObjectsPanel/index.d.ts.map +1 -1
- package/dist/types/src/containers/DebugStatus/DebugStatus.d.ts.map +1 -1
- package/dist/types/src/containers/DebugStatus/index.d.ts +1 -2
- package/dist/types/src/containers/DebugStatus/index.d.ts.map +1 -1
- package/dist/types/src/containers/DevtoolsOverviewContainer/index.d.ts +1 -2
- package/dist/types/src/containers/DevtoolsOverviewContainer/index.d.ts.map +1 -1
- package/dist/types/src/containers/GithubPanel/GithubComponent.d.ts +15 -0
- package/dist/types/src/containers/GithubPanel/GithubComponent.d.ts.map +1 -0
- package/dist/types/src/containers/GithubPanel/GithubComponent.stories.d.ts +104 -0
- package/dist/types/src/containers/GithubPanel/GithubComponent.stories.d.ts.map +1 -0
- package/dist/types/src/containers/GithubPanel/GithubPanel.d.ts +3 -0
- package/dist/types/src/containers/GithubPanel/GithubPanel.d.ts.map +1 -0
- package/dist/types/src/containers/GithubPanel/index.d.ts +2 -0
- package/dist/types/src/containers/GithubPanel/index.d.ts.map +1 -0
- package/dist/types/src/containers/SpaceGenerator/SpaceGenerator.d.ts +1 -5
- package/dist/types/src/containers/SpaceGenerator/SpaceGenerator.d.ts.map +1 -1
- package/dist/types/src/containers/SpaceGenerator/index.d.ts +1 -2
- package/dist/types/src/containers/SpaceGenerator/index.d.ts.map +1 -1
- package/dist/types/src/containers/Wireframe/Wireframe.d.ts.map +1 -1
- package/dist/types/src/containers/Wireframe/index.d.ts +1 -2
- package/dist/types/src/containers/Wireframe/index.d.ts.map +1 -1
- package/dist/types/src/containers/index.d.ts +1 -1
- package/dist/types/src/containers/index.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/meta.d.ts.map +1 -1
- package/dist/types/src/plugin.d.ts +4 -0
- package/dist/types/src/plugin.d.ts.map +1 -0
- package/dist/types/src/translations.d.ts +85 -61
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Settings.d.ts +8 -0
- package/dist/types/src/types/Settings.d.ts.map +1 -0
- package/dist/types/src/{types.d.ts → types/index.d.ts} +10 -9
- package/dist/types/src/types/index.d.ts.map +1 -0
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +116 -63
- package/src/DebugPlugin.node.ts +18 -0
- package/src/DebugPlugin.test.ts +29 -0
- package/src/DebugPlugin.tsx +9 -11
- package/src/DebugPlugin.workerd.ts +12 -0
- package/src/capabilities/{app-graph-builder/app-graph-builder.ts → app-graph-builder.ts} +139 -153
- package/src/capabilities/index.ts +6 -4
- package/src/capabilities/{react-context/react-context.tsx → react-context.tsx} +1 -1
- package/src/capabilities/{react-surface/react-surface.tsx → react-surface.tsx} +163 -139
- package/src/capabilities/{settings/settings.ts → settings.ts} +4 -4
- package/src/components/DebugSettings/DebugSettings.stories.tsx +36 -0
- package/src/components/DebugSettings/DebugSettings.tsx +262 -0
- package/src/components/DebugSettings/index.ts +5 -0
- package/src/components/SpaceGenerator/ObjectGenerator.tsx +13 -14
- package/src/components/SpaceGenerator/draw-util.ts +8 -8
- package/src/components/SpaceGenerator/presets.ts +27 -52
- package/src/components/index.ts +4 -0
- package/src/containers/DebugGraph/DebugGraph.tsx +3 -2
- package/src/containers/DebugGraph/index.ts +1 -3
- package/src/containers/DebugObjectPanel/DebugObjectPanel.tsx +44 -15
- package/src/containers/DebugObjectPanel/index.ts +1 -3
- package/src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.tsx +9 -17
- package/src/containers/DebugSpaceObjectsPanel/index.ts +1 -3
- package/src/containers/DebugStatus/DebugStatus.tsx +1 -3
- package/src/containers/DebugStatus/index.ts +1 -3
- package/src/containers/DevtoolsOverviewContainer/index.ts +1 -3
- package/src/containers/GithubPanel/GithubComponent.stories.tsx +38 -0
- package/src/containers/GithubPanel/GithubComponent.tsx +192 -0
- package/src/containers/GithubPanel/GithubPanel.tsx +17 -0
- package/src/containers/GithubPanel/index.ts +5 -0
- package/src/containers/SpaceGenerator/SpaceGenerator.tsx +16 -20
- package/src/containers/SpaceGenerator/index.ts +1 -3
- package/src/containers/Wireframe/Wireframe.tsx +2 -6
- package/src/containers/Wireframe/index.ts +1 -3
- package/src/containers/index.ts +1 -1
- package/src/index.ts +1 -1
- package/src/meta.ts +2 -0
- package/src/plugin.ts +10 -0
- package/src/translations.ts +81 -60
- package/src/types/Settings.ts +16 -0
- package/src/{types.ts → types/index.ts} +14 -12
- package/dist/lib/browser/DebugGraph-7HXJ2PS2.mjs.map +0 -7
- package/dist/lib/browser/DebugObjectPanel-KXVFOGU6.mjs +0 -35
- package/dist/lib/browser/DebugObjectPanel-KXVFOGU6.mjs.map +0 -7
- package/dist/lib/browser/DebugSettings-DQXOXF6A.mjs +0 -183
- package/dist/lib/browser/DebugSettings-DQXOXF6A.mjs.map +0 -7
- package/dist/lib/browser/DebugSpaceObjectsPanel-SIK72DXV.mjs.map +0 -7
- package/dist/lib/browser/DebugStatus-FWF3YFBA.mjs.map +0 -7
- package/dist/lib/browser/DevtoolsOverviewContainer-TBTTPXVF.mjs.map +0 -7
- package/dist/lib/browser/SpaceGenerator-UUQS6TYY.mjs.map +0 -7
- package/dist/lib/browser/Wireframe-KAGOKEFW.mjs.map +0 -7
- package/dist/lib/browser/app-graph-builder-FBLOEOH5.mjs.map +0 -7
- package/dist/lib/browser/chunk-Q37TZWW5.mjs.map +0 -7
- package/dist/lib/browser/chunk-ZOM2FBHQ.mjs.map +0 -7
- package/dist/lib/browser/index.mjs +0 -132
- package/dist/lib/browser/index.mjs.map +0 -7
- package/dist/lib/browser/meta.json +0 -1
- package/dist/lib/browser/react-context-KBHXEMRS.mjs.map +0 -7
- package/dist/lib/browser/react-surface-HYT4HKZX.mjs.map +0 -7
- package/dist/lib/browser/settings-XXFUM3QJ.mjs.map +0 -7
- package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +0 -1
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts +0 -3
- package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-context/index.d.ts +0 -7
- package/dist/types/src/capabilities/react-context/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-context/react-context.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/index.d.ts +0 -5
- package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
- package/dist/types/src/capabilities/settings/index.d.ts +0 -3
- package/dist/types/src/capabilities/settings/index.d.ts.map +0 -1
- package/dist/types/src/capabilities/settings/settings.d.ts.map +0 -1
- package/dist/types/src/containers/DebugSettings/DebugSettings.d.ts +0 -10
- package/dist/types/src/containers/DebugSettings/DebugSettings.d.ts.map +0 -1
- package/dist/types/src/containers/DebugSettings/index.d.ts +0 -3
- package/dist/types/src/containers/DebugSettings/index.d.ts.map +0 -1
- package/dist/types/src/types.d.ts.map +0 -1
- package/src/capabilities/app-graph-builder/index.ts +0 -7
- package/src/capabilities/react-context/index.ts +0 -7
- package/src/capabilities/react-surface/index.ts +0 -7
- package/src/capabilities/settings/index.ts +0 -7
- package/src/containers/DebugSettings/DebugSettings.tsx +0 -206
- package/src/containers/DebugSettings/index.ts +0 -7
- /package/dist/types/src/capabilities/{app-graph-builder/app-graph-builder.d.ts → app-graph-builder.d.ts} +0 -0
- /package/dist/types/src/capabilities/{react-context/react-context.d.ts → react-context.d.ts} +0 -0
|
@@ -1,17 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
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";
|
|
9
|
-
import { useClient } from "@dxos/react-client";
|
|
10
|
-
import { IconButton as IconButton2, Input, Panel, ScrollArea, Toolbar, useAsyncEffect } from "@dxos/react-ui";
|
|
11
|
-
import { SyntaxHighlighter } from "@dxos/react-ui-syntax-highlighter";
|
|
12
|
-
import { Organization as Organization2, Person as Person2, Task } from "@dxos/types";
|
|
13
|
-
import { composable, composableProps } from "@dxos/ui-theme";
|
|
14
|
-
import { jsonKeyReplacer, sortKeys } from "@dxos/util";
|
|
1
|
+
import "../chunk-J5LGTIGS.mjs";
|
|
2
|
+
|
|
3
|
+
// src/components/index.ts
|
|
4
|
+
import { lazy } from "react";
|
|
15
5
|
|
|
16
6
|
// src/components/SchemaTable/SchemaTable.tsx
|
|
17
7
|
import React from "react";
|
|
@@ -39,17 +29,15 @@ var SchemaTable = ({ types, objects = {}, label, onClick }) => {
|
|
|
39
29
|
|
|
40
30
|
// src/components/SpaceGenerator/presets.ts
|
|
41
31
|
import * as Schema from "effect/Schema";
|
|
42
|
-
import { AgentPrompt,
|
|
43
|
-
import {
|
|
32
|
+
import { AgentPrompt, WebSearchBlueprint } from "@dxos/assistant-toolkit";
|
|
33
|
+
import { Routine, Trigger, Operation } from "@dxos/compute";
|
|
44
34
|
import { NODE_INPUT } from "@dxos/conductor";
|
|
45
35
|
import { DXN, Feed, Filter, JsonSchema, Key, Obj, Query, Ref, Tag } from "@dxos/echo";
|
|
46
|
-
import { Trigger } from "@dxos/functions";
|
|
47
36
|
import { invariant } from "@dxos/invariant";
|
|
48
|
-
import { Operation } from "@dxos/operation";
|
|
49
37
|
import { InboxOperation } from "@dxos/plugin-inbox";
|
|
50
|
-
import { Mailbox } from "@dxos/plugin-inbox
|
|
51
|
-
import { Markdown } from "@dxos/plugin-markdown
|
|
52
|
-
import { createAppend, createChat, createComputeGraph, createConstant, createFunction, createGpt,
|
|
38
|
+
import { Mailbox } from "@dxos/plugin-inbox";
|
|
39
|
+
import { Markdown } from "@dxos/plugin-markdown";
|
|
40
|
+
import { createAppend, createChat, createComputeGraph, createConstant, createFeed, createFunction, createGpt, createRandom, createSurface, createTemplate, createText, createTrigger } from "@dxos/react-ui-canvas-compute";
|
|
53
41
|
import { CanvasBoard, CanvasGraphModel, pointMultiply, pointsToRect, rectToPoints } from "@dxos/react-ui-canvas-editor";
|
|
54
42
|
import { ViewModel } from "@dxos/schema";
|
|
55
43
|
import { Message, Organization, Person, Pipeline } from "@dxos/types";
|
|
@@ -90,16 +78,16 @@ var generator = () => ({
|
|
|
90
78
|
const tag = space.db.add(Tag.make({
|
|
91
79
|
label: "Investor"
|
|
92
80
|
}));
|
|
93
|
-
const
|
|
94
|
-
Obj.
|
|
95
|
-
Obj.getMeta(
|
|
96
|
-
|
|
81
|
+
const tagDXN = Obj.getDXN(tag).toString();
|
|
82
|
+
Obj.update(doc, (doc2) => {
|
|
83
|
+
Obj.getMeta(doc2).tags = [
|
|
84
|
+
tagDXN
|
|
97
85
|
];
|
|
98
86
|
});
|
|
99
87
|
space.db.add(Obj.make(Person.Person, {
|
|
100
88
|
[Obj.Meta]: {
|
|
101
89
|
tags: [
|
|
102
|
-
|
|
90
|
+
tagDXN
|
|
103
91
|
]
|
|
104
92
|
},
|
|
105
93
|
fullName: "Rich",
|
|
@@ -128,67 +116,28 @@ var generator = () => ({
|
|
|
128
116
|
async (space, n, cb) => {
|
|
129
117
|
const mailboxes = await space.db.query(Filter.type(Mailbox.Mailbox)).run();
|
|
130
118
|
const mailbox = mailboxes[0];
|
|
131
|
-
invariant(mailbox, "Mailbox not found", {
|
|
132
|
-
F: __dxlog_file,
|
|
133
|
-
L: 122,
|
|
134
|
-
S: void 0,
|
|
135
|
-
A: [
|
|
136
|
-
"mailbox",
|
|
137
|
-
"'Mailbox not found'"
|
|
138
|
-
]
|
|
139
|
-
});
|
|
119
|
+
invariant(mailbox, "Mailbox not found", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 100, S: void 0, A: ["mailbox", "'Mailbox not found'"] });
|
|
140
120
|
const mailboxFeed = await mailbox.feed?.tryLoad();
|
|
141
|
-
invariant(mailboxFeed, "Mailbox missing feed reference", {
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
S: void 0,
|
|
145
|
-
A: [
|
|
146
|
-
"mailboxFeed",
|
|
147
|
-
"'Mailbox missing feed reference'"
|
|
148
|
-
]
|
|
149
|
-
});
|
|
150
|
-
const queueDxn = Feed.getQueueDxn(mailboxFeed)?.toString();
|
|
151
|
-
invariant(queueDxn, "Mailbox feed missing queue DXN key", {
|
|
152
|
-
F: __dxlog_file,
|
|
153
|
-
L: 126,
|
|
154
|
-
S: void 0,
|
|
155
|
-
A: [
|
|
156
|
-
"queueDxn",
|
|
157
|
-
"'Mailbox feed missing queue DXN key'"
|
|
158
|
-
]
|
|
159
|
-
});
|
|
121
|
+
invariant(mailboxFeed, "Mailbox missing feed reference", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 102, S: void 0, A: ["mailboxFeed", "'Mailbox missing feed reference'"] });
|
|
122
|
+
const feedDXN = Feed.getQueueDxn(mailboxFeed)?.toString();
|
|
123
|
+
invariant(feedDXN, "Mailbox feed missing DXN", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 104, S: void 0, A: ["feedDXN", "'Mailbox feed missing DXN'"] });
|
|
160
124
|
const tag = await space.db.query(Filter.type(Tag.Tag, {
|
|
161
125
|
label: "Investor"
|
|
162
126
|
})).first();
|
|
163
|
-
const
|
|
127
|
+
const tagDXN = Obj.getDXN(tag).toString();
|
|
164
128
|
const objects = range(n, () => {
|
|
165
|
-
const contactsQuery = Query.select(Filter.type(Person.Person)).select(Filter.tag(
|
|
166
|
-
const organizationsQuery = Query.select(Filter.type(Organization.Organization)).select(Filter.tag(
|
|
167
|
-
const notesQuery = Query.select(Filter.type(Markdown.Document)).select(Filter.tag(
|
|
129
|
+
const contactsQuery = Query.select(Filter.type(Person.Person)).select(Filter.tag(tagDXN));
|
|
130
|
+
const organizationsQuery = Query.select(Filter.type(Organization.Organization)).select(Filter.tag(tagDXN));
|
|
131
|
+
const notesQuery = Query.select(Filter.type(Markdown.Document)).select(Filter.tag(tagDXN));
|
|
168
132
|
space.db.add(Trigger.make({
|
|
169
133
|
enabled: true,
|
|
170
|
-
spec:
|
|
171
|
-
kind: "timer",
|
|
172
|
-
cron: "* * * * *"
|
|
173
|
-
},
|
|
134
|
+
spec: Trigger.specTimer("* * * * *"),
|
|
174
135
|
function: Ref.make(Operation.serialize(InboxOperation.GoogleMailSync)),
|
|
175
136
|
input: {
|
|
176
137
|
mailbox: Ref.make(mailbox)
|
|
177
138
|
}
|
|
178
139
|
}));
|
|
179
|
-
space.db.add(
|
|
180
|
-
enabled: true,
|
|
181
|
-
// TODO(wittjosiah): Queue trigger doesn't support matching query of the column.
|
|
182
|
-
spec: {
|
|
183
|
-
kind: "queue",
|
|
184
|
-
queue: queueDxn
|
|
185
|
-
},
|
|
186
|
-
function: Ref.make(Operation.serialize(EntityExtraction)),
|
|
187
|
-
input: {
|
|
188
|
-
source: "{{event.item}}"
|
|
189
|
-
}
|
|
190
|
-
}));
|
|
191
|
-
const researchPrompt = space.db.add(Prompt.make({
|
|
140
|
+
const researchPrompt = space.db.add(Routine.make({
|
|
192
141
|
name: "Research",
|
|
193
142
|
description: "Research organization",
|
|
194
143
|
input: Schema.Struct({
|
|
@@ -203,17 +152,12 @@ var generator = () => ({
|
|
|
203
152
|
NOTE: Do mocked reseach (set mockSearch to true).
|
|
204
153
|
`,
|
|
205
154
|
blueprints: [
|
|
206
|
-
Ref.make(
|
|
155
|
+
Ref.make(WebSearchBlueprint.make())
|
|
207
156
|
]
|
|
208
157
|
}));
|
|
209
158
|
space.db.add(Trigger.make({
|
|
210
159
|
enabled: true,
|
|
211
|
-
spec:
|
|
212
|
-
kind: "subscription",
|
|
213
|
-
query: {
|
|
214
|
-
ast: organizationsQuery.ast
|
|
215
|
-
}
|
|
216
|
-
},
|
|
160
|
+
spec: Trigger.specSubscription(organizationsQuery),
|
|
217
161
|
function: Ref.make(Operation.serialize(AgentPrompt)),
|
|
218
162
|
input: {
|
|
219
163
|
prompt: Ref.make(researchPrompt),
|
|
@@ -226,8 +170,8 @@ var generator = () => ({
|
|
|
226
170
|
labels: Filter.contains("investor")
|
|
227
171
|
}
|
|
228
172
|
})).from({
|
|
229
|
-
|
|
230
|
-
|
|
173
|
+
feeds: [
|
|
174
|
+
feedDXN
|
|
231
175
|
]
|
|
232
176
|
}),
|
|
233
177
|
jsonSchema: JsonSchema.toJsonSchema(Message.Message)
|
|
@@ -635,7 +579,7 @@ var generator = () => ({
|
|
|
635
579
|
x: 12,
|
|
636
580
|
y: 0
|
|
637
581
|
})));
|
|
638
|
-
const queue = canvasModel.createNode(
|
|
582
|
+
const queue = canvasModel.createNode(createFeed(position({
|
|
639
583
|
x: 0,
|
|
640
584
|
y: 12
|
|
641
585
|
})));
|
|
@@ -710,7 +654,7 @@ var createQueueSinkPreset = (space, triggerKind, initSpec, triggerOutputName) =>
|
|
|
710
654
|
width: 128,
|
|
711
655
|
height: 122
|
|
712
656
|
})));
|
|
713
|
-
const
|
|
657
|
+
const random2 = canvasModel.createNode(createRandom(rawPosition({
|
|
714
658
|
centerX: -509,
|
|
715
659
|
centerY: -30,
|
|
716
660
|
width: 64,
|
|
@@ -730,36 +674,20 @@ var createQueueSinkPreset = (space, triggerKind, initSpec, triggerOutputName) =>
|
|
|
730
674
|
output: triggerOutputName,
|
|
731
675
|
input: "type"
|
|
732
676
|
}).createEdge({
|
|
733
|
-
source:
|
|
677
|
+
source: random2.id,
|
|
734
678
|
target: template.id,
|
|
735
679
|
input: "changeId"
|
|
736
680
|
});
|
|
737
681
|
functionTrigger = triggerShape.functionTrigger.target;
|
|
738
682
|
const triggerSpec = functionTrigger.spec;
|
|
739
|
-
invariant(triggerSpec && triggerSpec.kind === triggerKind, "No trigger spec.", {
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
S: void 0,
|
|
743
|
-
A: [
|
|
744
|
-
"triggerSpec && triggerSpec.kind === triggerKind",
|
|
745
|
-
"'No trigger spec.'"
|
|
746
|
-
]
|
|
747
|
-
});
|
|
748
|
-
Obj.change(functionTrigger, (ft) => {
|
|
749
|
-
initSpec(ft.spec);
|
|
683
|
+
invariant(triggerSpec && triggerSpec.kind === triggerKind, "No trigger spec.", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 665, S: void 0, A: ["triggerSpec && triggerSpec.kind === triggerKind", "'No trigger spec.'"] });
|
|
684
|
+
Obj.update(functionTrigger, (functionTrigger2) => {
|
|
685
|
+
initSpec(functionTrigger2.spec);
|
|
750
686
|
});
|
|
751
687
|
});
|
|
752
688
|
const computeModel = createComputeGraph(canvasModel);
|
|
753
689
|
const templateComputeNode = computeModel.nodes.find((n) => n.id === template.node);
|
|
754
|
-
invariant(templateComputeNode, "Template compute node was not created.", {
|
|
755
|
-
F: __dxlog_file,
|
|
756
|
-
L: 774,
|
|
757
|
-
S: void 0,
|
|
758
|
-
A: [
|
|
759
|
-
"templateComputeNode",
|
|
760
|
-
"'Template compute node was not created.'"
|
|
761
|
-
]
|
|
762
|
-
});
|
|
690
|
+
invariant(templateComputeNode, "Template compute node was not created.", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 672, S: void 0, A: ["templateComputeNode", "'Template compute node was not created.'"] });
|
|
763
691
|
templateComputeNode.value = [
|
|
764
692
|
"{",
|
|
765
693
|
' "@type": "{{type}}",',
|
|
@@ -797,7 +725,7 @@ var setupQueue = (space, canvasModel, args) => {
|
|
|
797
725
|
height: 6
|
|
798
726
|
})
|
|
799
727
|
}));
|
|
800
|
-
const queue = canvasModel.createNode(
|
|
728
|
+
const queue = canvasModel.createNode(createFeed(args?.queuePosition ? rawPosition(args.queuePosition) : position({
|
|
801
729
|
x: -3,
|
|
802
730
|
y: 3,
|
|
803
731
|
width: 14,
|
|
@@ -813,19 +741,11 @@ var setupQueue = (space, canvasModel, args) => {
|
|
|
813
741
|
};
|
|
814
742
|
};
|
|
815
743
|
var attachTrigger = (functionTrigger, computeModel) => {
|
|
816
|
-
invariant(functionTrigger, void 0, {
|
|
817
|
-
F: __dxlog_file,
|
|
818
|
-
L: 816,
|
|
819
|
-
S: void 0,
|
|
820
|
-
A: [
|
|
821
|
-
"functionTrigger",
|
|
822
|
-
""
|
|
823
|
-
]
|
|
824
|
-
});
|
|
744
|
+
invariant(functionTrigger, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 727, S: void 0, A: ["functionTrigger", ""] });
|
|
825
745
|
const inputNode = computeModel.nodes.find((node) => node.type === NODE_INPUT);
|
|
826
|
-
Obj.
|
|
827
|
-
|
|
828
|
-
|
|
746
|
+
Obj.update(functionTrigger, (functionTrigger2) => {
|
|
747
|
+
functionTrigger2.function = Ref.make(computeModel.root);
|
|
748
|
+
functionTrigger2.inputNodeId = inputNode.id;
|
|
829
749
|
});
|
|
830
750
|
};
|
|
831
751
|
var rawPosition = (args) => {
|
|
@@ -873,19 +793,18 @@ var position = (rect) => {
|
|
|
873
793
|
};
|
|
874
794
|
|
|
875
795
|
// src/components/SpaceGenerator/ObjectGenerator.tsx
|
|
876
|
-
import { addressToA1Notation } from "@dxos/compute";
|
|
796
|
+
import { addressToA1Notation } from "@dxos/compute-hyperformula";
|
|
877
797
|
import { ComputeGraph, ComputeGraphModel, DEFAULT_OUTPUT, NODE_INPUT as NODE_INPUT2, NODE_OUTPUT } from "@dxos/conductor";
|
|
878
|
-
import { DXN as DXN2, Filter as Filter2, Key as Key2 } from "@dxos/echo";
|
|
879
|
-
import {
|
|
880
|
-
import {
|
|
881
|
-
import {
|
|
882
|
-
import {
|
|
883
|
-
import {
|
|
884
|
-
import { faker } from "@dxos/random";
|
|
798
|
+
import { DXN as DXN2, Filter as Filter2, Key as Key2, View } from "@dxos/echo";
|
|
799
|
+
import { Markdown as Markdown2 } from "@dxos/plugin-markdown";
|
|
800
|
+
import { Sheet } from "@dxos/plugin-sheet";
|
|
801
|
+
import { Sketch } from "@dxos/plugin-sketch";
|
|
802
|
+
import { SpaceOperation } from "@dxos/plugin-space";
|
|
803
|
+
import { random } from "@dxos/random";
|
|
885
804
|
import { getTypenameFromQuery } from "@dxos/schema";
|
|
886
805
|
import { createAsyncGenerator } from "@dxos/schema/testing";
|
|
887
806
|
import { range as range2 } from "@dxos/util";
|
|
888
|
-
var generator2 =
|
|
807
|
+
var generator2 = random;
|
|
889
808
|
var findViewByTypename = async (views, typename) => {
|
|
890
809
|
return views.find((view) => getTypenameFromQuery(view.query.ast) === typename);
|
|
891
810
|
};
|
|
@@ -916,8 +835,8 @@ var staticGenerators = /* @__PURE__ */ new Map([
|
|
|
916
835
|
async (space, n, cb) => {
|
|
917
836
|
const objects = range2(n).map(() => {
|
|
918
837
|
return space.db.add(Markdown2.make({
|
|
919
|
-
name:
|
|
920
|
-
content:
|
|
838
|
+
name: random.commerce.productName(),
|
|
839
|
+
content: random.lorem.sentences(5)
|
|
921
840
|
}));
|
|
922
841
|
});
|
|
923
842
|
cb?.(objects);
|
|
@@ -929,7 +848,7 @@ var staticGenerators = /* @__PURE__ */ new Map([
|
|
|
929
848
|
async (space, n, cb) => {
|
|
930
849
|
const objects = range2(n).map(() => {
|
|
931
850
|
const obj = space.db.add(Sketch.make({
|
|
932
|
-
name:
|
|
851
|
+
name: random.commerce.productName()
|
|
933
852
|
}));
|
|
934
853
|
return obj;
|
|
935
854
|
});
|
|
@@ -976,7 +895,7 @@ var staticGenerators = /* @__PURE__ */ new Map([
|
|
|
976
895
|
}
|
|
977
896
|
}
|
|
978
897
|
return space.db.add(Sheet.make({
|
|
979
|
-
name:
|
|
898
|
+
name: random.commerce.productName(),
|
|
980
899
|
cells
|
|
981
900
|
}));
|
|
982
901
|
});
|
|
@@ -1048,136 +967,14 @@ var staticGenerators = /* @__PURE__ */ new Map([
|
|
|
1048
967
|
]
|
|
1049
968
|
]);
|
|
1050
969
|
|
|
1051
|
-
// src/
|
|
1052
|
-
var
|
|
1053
|
-
const { invokePromise } = useOperationInvoker();
|
|
1054
|
-
const client = useClient();
|
|
1055
|
-
const staticTypes = [
|
|
1056
|
-
Markdown3.Document,
|
|
1057
|
-
Sketch2.Sketch,
|
|
1058
|
-
Sheet2.Sheet,
|
|
1059
|
-
ComputeGraph2
|
|
1060
|
-
];
|
|
1061
|
-
const recordTypes = [
|
|
1062
|
-
Organization2.Organization,
|
|
1063
|
-
Person2.Person,
|
|
1064
|
-
Task.Task
|
|
1065
|
-
];
|
|
1066
|
-
const [count, setCount] = useState(1);
|
|
1067
|
-
const [info, setInfo] = useState({});
|
|
1068
|
-
const presets = useMemo(() => generator(), []);
|
|
1069
|
-
useAsyncEffect(async () => {
|
|
1070
|
-
await client.addTypes([
|
|
1071
|
-
...staticTypes,
|
|
1072
|
-
...recordTypes,
|
|
1073
|
-
...presets.schemas
|
|
1074
|
-
]);
|
|
1075
|
-
}, [
|
|
1076
|
-
client
|
|
1077
|
-
]);
|
|
1078
|
-
const typeMap = useMemo(() => {
|
|
1079
|
-
const recordGenerators = new Map(recordTypes.map((type) => [
|
|
1080
|
-
type.typename,
|
|
1081
|
-
createGenerator(client, invokePromise, type)
|
|
1082
|
-
]));
|
|
1083
|
-
return new Map([
|
|
1084
|
-
...staticGenerators,
|
|
1085
|
-
...presets.items,
|
|
1086
|
-
...recordGenerators
|
|
1087
|
-
]);
|
|
1088
|
-
}, [
|
|
1089
|
-
client,
|
|
1090
|
-
recordTypes,
|
|
1091
|
-
invokePromise
|
|
1092
|
-
]);
|
|
1093
|
-
const updateInfo = async () => {
|
|
1094
|
-
const echoSchema = await space.db.schemaRegistry.query().run();
|
|
1095
|
-
const staticSchema = await space.db.graph.schemaRegistry.query().run();
|
|
1096
|
-
const objects = await space.db.query(Filter3.everything()).run();
|
|
1097
|
-
const objectMap = sortKeys(objects.reduce((map, obj) => {
|
|
1098
|
-
const type = Obj2.getTypename(obj);
|
|
1099
|
-
if (type) {
|
|
1100
|
-
const count2 = map[type] ?? 0;
|
|
1101
|
-
map[type] = count2 + 1;
|
|
1102
|
-
}
|
|
1103
|
-
return map;
|
|
1104
|
-
}, {}));
|
|
1105
|
-
setInfo({
|
|
1106
|
-
schema: {
|
|
1107
|
-
static: staticSchema.length,
|
|
1108
|
-
mutable: echoSchema.length
|
|
1109
|
-
},
|
|
1110
|
-
objects: objectMap
|
|
1111
|
-
});
|
|
1112
|
-
};
|
|
1113
|
-
useAsyncEffect(updateInfo, [
|
|
1114
|
-
space
|
|
1115
|
-
]);
|
|
1116
|
-
const handleCreateData = useCallback(async (typename) => {
|
|
1117
|
-
const constructor = typeMap.get(typename);
|
|
1118
|
-
if (constructor) {
|
|
1119
|
-
await constructor(space, count, onCreateObjects);
|
|
1120
|
-
await updateInfo();
|
|
1121
|
-
}
|
|
1122
|
-
}, [
|
|
1123
|
-
typeMap,
|
|
1124
|
-
count
|
|
1125
|
-
]);
|
|
1126
|
-
return /* @__PURE__ */ React2.createElement(Panel.Root, {
|
|
1127
|
-
...composableProps(props),
|
|
1128
|
-
ref: forwardedRef
|
|
1129
|
-
}, /* @__PURE__ */ React2.createElement(Panel.Toolbar, {
|
|
1130
|
-
asChild: true
|
|
1131
|
-
}, /* @__PURE__ */ React2.createElement(Toolbar.Root, null, /* @__PURE__ */ React2.createElement(IconButton2, {
|
|
1132
|
-
icon: "ph--arrow-clockwise--regular",
|
|
1133
|
-
iconOnly: true,
|
|
1134
|
-
label: "Refresh",
|
|
1135
|
-
onClick: updateInfo
|
|
1136
|
-
}), /* @__PURE__ */ React2.createElement(Toolbar.Separator, null), /* @__PURE__ */ React2.createElement(Input.Root, null, /* @__PURE__ */ React2.createElement(Input.TextInput, {
|
|
1137
|
-
type: "number",
|
|
1138
|
-
placeholder: "Count",
|
|
1139
|
-
classNames: "w-[4rem] text-right",
|
|
1140
|
-
min: 1,
|
|
1141
|
-
max: 100,
|
|
1142
|
-
size: 8,
|
|
1143
|
-
value: count,
|
|
1144
|
-
onChange: (event) => setCount(parseInt(event.target.value))
|
|
1145
|
-
})))), /* @__PURE__ */ React2.createElement(Panel.Content, {
|
|
1146
|
-
asChild: true
|
|
1147
|
-
}, /* @__PURE__ */ React2.createElement(ScrollArea.Root, {
|
|
1148
|
-
thin: true,
|
|
1149
|
-
orientation: "vertical"
|
|
1150
|
-
}, /* @__PURE__ */ React2.createElement(ScrollArea.Viewport, {
|
|
1151
|
-
classNames: "gap-4 divide-y divide-subdued-separator"
|
|
1152
|
-
}, /* @__PURE__ */ React2.createElement(SchemaTable, {
|
|
1153
|
-
types: staticTypes,
|
|
1154
|
-
objects: info.objects,
|
|
1155
|
-
label: "Static Types",
|
|
1156
|
-
onClick: handleCreateData
|
|
1157
|
-
}), /* @__PURE__ */ React2.createElement(SchemaTable, {
|
|
1158
|
-
types: recordTypes,
|
|
1159
|
-
objects: info.objects,
|
|
1160
|
-
label: "Record Types",
|
|
1161
|
-
onClick: handleCreateData
|
|
1162
|
-
}), /* @__PURE__ */ React2.createElement(SchemaTable, {
|
|
1163
|
-
types: presets.types,
|
|
1164
|
-
objects: info.objects,
|
|
1165
|
-
label: "Presets",
|
|
1166
|
-
onClick: handleCreateData
|
|
1167
|
-
}), /* @__PURE__ */ React2.createElement(SyntaxHighlighter, {
|
|
1168
|
-
language: "json",
|
|
1169
|
-
classNames: "text-xs"
|
|
1170
|
-
}, JSON.stringify({
|
|
1171
|
-
space,
|
|
1172
|
-
...info
|
|
1173
|
-
}, jsonKeyReplacer({
|
|
1174
|
-
truncate: true
|
|
1175
|
-
}), 2))))));
|
|
1176
|
-
});
|
|
1177
|
-
|
|
1178
|
-
// src/containers/SpaceGenerator/index.ts
|
|
1179
|
-
var SpaceGenerator_default = SpaceGenerator;
|
|
970
|
+
// src/components/index.ts
|
|
971
|
+
var DebugSettings = lazy(() => import("../DebugSettings-Z3XADRNK.mjs"));
|
|
1180
972
|
export {
|
|
1181
|
-
|
|
973
|
+
DebugSettings,
|
|
974
|
+
PresetName,
|
|
975
|
+
SchemaTable,
|
|
976
|
+
createGenerator,
|
|
977
|
+
generator,
|
|
978
|
+
staticGenerators
|
|
1182
979
|
};
|
|
1183
|
-
//# sourceMappingURL=
|
|
980
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/components/index.ts", "../../../../src/components/SchemaTable/SchemaTable.tsx", "../../../../src/components/SpaceGenerator/presets.ts", "../../../../src/components/SpaceGenerator/ObjectGenerator.tsx"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentType, lazy } from 'react';\n\nexport const DebugSettings: ComponentType<any> = lazy(() => import('./DebugSettings'));\n\nexport * from './SchemaTable';\nexport * from './SpaceGenerator';\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React from 'react';\n\nimport { IconButton } from '@dxos/react-ui';\n\nexport type SchemaTableProps = {\n types: any[];\n objects?: Record<string, number | undefined>;\n label: string;\n onClick: (typename: string) => void;\n};\n\nexport const SchemaTable = ({ types, objects = {}, label, onClick }: SchemaTableProps) => {\n return (\n <div className='grid grid-cols-[1fr_80px_40px] gap-1 overflow-none'>\n <h2 className='p-2'>{label}</h2>\n {types.map((type) => (\n <div key={type.typename} className='grid grid-cols-subgrid col-span-3 items-center'>\n <div className='px-2 text-sm font-mono text-subdued'>{type.typename}</div>\n <div className='px-2 text-right font-mono'>{objects[type.typename] ?? 0}</div>\n <IconButton\n variant='ghost'\n icon='ph--plus--regular'\n iconOnly\n label='Create data'\n onClick={() => onClick(type.typename)}\n />\n </div>\n ))}\n </div>\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { AgentPrompt, WebSearchBlueprint } from '@dxos/assistant-toolkit';\nimport { Routine, Trigger, Operation } from '@dxos/compute';\nimport { type ComputeGraphModel, NODE_INPUT } from '@dxos/conductor';\nimport { DXN, Feed, Filter, JsonSchema, Key, Obj, Query, type QueryAST, Ref, Tag } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\nimport { InboxOperation } from '@dxos/plugin-inbox';\nimport { Mailbox } from '@dxos/plugin-inbox';\nimport { Markdown } from '@dxos/plugin-markdown';\nimport { type Space } from '@dxos/react-client/echo';\nimport {\n type ComputeShape,\n createAppend,\n createChat,\n createComputeGraph,\n createConstant,\n createFeed,\n createFunction,\n createGpt,\n createRandom,\n createSurface,\n createTemplate,\n createText,\n createTrigger,\n} from '@dxos/react-ui-canvas-compute';\nimport { CanvasBoard, CanvasGraphModel, pointMultiply, pointsToRect, rectToPoints } from '@dxos/react-ui-canvas-editor';\nimport { ViewModel } from '@dxos/schema';\nimport { Message, Organization, Person, Pipeline } from '@dxos/types';\nimport { range, trim } from '@dxos/util';\n\nimport { type ObjectGenerator } from './ObjectGenerator';\n\nexport enum PresetName {\n DXOS_TEAM = 'dxos-team',\n ORG_RESEARCH_PROJECT = 'org-research-project',\n // EMAIL_TABLE = 'email-table',\n GPT_QUEUE = 'webhook-gpt-queue',\n CHAT_GPT = 'chat-gpt-text',\n // EMAIL_WITH_SUMMARY = 'email-gptSummary-table',\n OBJECT_CHANGE_QUEUE = 'objectChange-queue',\n TIMER_TICK_QUEUE = 'timerTick-queue',\n FOREX_FUNCTION_CALL = 'forex-function-call',\n DISCORD_MESSAGES = 'discord-messages',\n // KANBAN_QUEUE = 'kanban-queue',\n}\n\nexport const generator = () => ({\n schemas: [CanvasBoard.CanvasBoard, Trigger.Trigger] as any[],\n types: Object.values(PresetName).map((name) => ({ typename: name })),\n items: [\n [\n PresetName.DXOS_TEAM,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const org = space.db.add(\n Obj.make(Organization.Organization, {\n name: 'DXOS',\n website: 'https://dxos.org',\n }),\n );\n const doc = space.db.add(\n Markdown.make({\n name: 'DXOS Research',\n content: 'DXOS builds Composer, an open-source AI-powered malleable application.',\n }),\n );\n\n const tag = space.db.add(Tag.make({ label: 'Investor' }));\n const tagDXN = Obj.getDXN(tag).toString();\n Obj.update(doc, (doc) => {\n Obj.getMeta(doc).tags = [tagDXN];\n });\n\n // space.db.add(\n // Relation.make(HasSubject, {\n // [Relation.Source]: doc,\n // [Relation.Target]: org,\n // completedAt: new Date().toISOString(),\n // }),\n // );\n\n space.db.add(\n Obj.make(Person.Person, { [Obj.Meta]: { tags: [tagDXN] }, fullName: 'Rich', organization: Ref.make(org) }),\n );\n space.db.add(\n Obj.make(Person.Person, {\n fullName: 'Josiah',\n organization: Ref.make(org),\n }),\n );\n space.db.add(\n Obj.make(Person.Person, {\n fullName: 'Dima',\n organization: Ref.make(org),\n }),\n );\n space.db.add(\n Obj.make(Person.Person, {\n fullName: 'Mykola',\n organization: Ref.make(org),\n }),\n );\n\n return doc;\n });\n cb?.(objects);\n return objects;\n },\n ],\n [\n PresetName.ORG_RESEARCH_PROJECT,\n async (space, n, cb) => {\n const mailboxes = await space.db.query(Filter.type(Mailbox.Mailbox)).run();\n const mailbox = mailboxes[0];\n invariant(mailbox, 'Mailbox not found');\n const mailboxFeed = await mailbox.feed?.tryLoad();\n invariant(mailboxFeed, 'Mailbox missing feed reference');\n const feedDXN = Feed.getQueueDxn(mailboxFeed)?.toString();\n invariant(feedDXN, 'Mailbox feed missing DXN');\n const tag = await space.db.query(Filter.type(Tag.Tag, { label: 'Investor' })).first();\n const tagDXN = Obj.getDXN(tag).toString();\n\n const objects = range(n, () => {\n const contactsQuery = Query.select(Filter.type(Person.Person)).select(Filter.tag(tagDXN));\n const organizationsQuery = Query.select(Filter.type(Organization.Organization)).select(Filter.tag(tagDXN));\n const notesQuery = Query.select(Filter.type(Markdown.Document)).select(Filter.tag(tagDXN));\n\n space.db.add(\n Trigger.make({\n enabled: true,\n spec: Trigger.specTimer('* * * * *'), // Every minute.\n function: Ref.make(Operation.serialize(InboxOperation.GoogleMailSync)),\n input: {\n mailbox: Ref.make(mailbox),\n },\n }),\n );\n\n const researchPrompt = space.db.add(\n Routine.make({\n name: 'Research',\n description: 'Research organization',\n input: Schema.Struct({\n org: Schema.Any,\n }),\n output: Schema.Any,\n\n // TODO(dmaretskyi): This mocks research (returns pre-baked result), the actual research might take compute minutes.\n // Remove the mock prompt to do the actual research.\n instructions: trim`\n Research the organization provided as input.\n Create a research note for it at the end.\n NOTE: Do mocked reseach (set mockSearch to true).\n `,\n blueprints: [Ref.make(WebSearchBlueprint.make())],\n }),\n );\n\n space.db.add(\n Trigger.make({\n enabled: true,\n spec: Trigger.specSubscription(organizationsQuery),\n function: Ref.make(Operation.serialize(AgentPrompt)),\n input: {\n prompt: Ref.make(researchPrompt),\n input: '{{event.subject}}',\n },\n }),\n );\n\n const mailboxView = ViewModel.make({\n query: Query.select(\n Filter.type(Message.Message, {\n properties: { labels: Filter.contains('investor') },\n }),\n ).from({\n feeds: [feedDXN],\n }),\n jsonSchema: JsonSchema.toJsonSchema(Message.Message),\n });\n const contactsView = ViewModel.make({\n query: contactsQuery,\n jsonSchema: JsonSchema.toJsonSchema(Person.Person),\n });\n const organizationsView = ViewModel.make({\n query: organizationsQuery,\n jsonSchema: JsonSchema.toJsonSchema(Organization.Organization),\n });\n const notesView = ViewModel.make({\n query: notesQuery,\n jsonSchema: JsonSchema.toJsonSchema(Markdown.Document),\n });\n\n return space.db.add(\n Pipeline.make({\n name: 'Investor Research',\n columns: [\n {\n name: 'Mailbox',\n view: Ref.make(mailboxView),\n order: [],\n },\n {\n name: 'Contacts',\n view: Ref.make(contactsView),\n order: [],\n },\n {\n name: 'Organizations',\n view: Ref.make(organizationsView),\n order: [],\n },\n {\n name: 'Notes',\n view: Ref.make(notesView),\n order: [],\n },\n ],\n }),\n );\n });\n\n cb?.(objects.flat());\n return objects.flat();\n },\n ],\n [\n PresetName.GPT_QUEUE,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n let functionTrigger: Trigger.Trigger | undefined;\n canvasModel.builder.call((builder) => {\n const gpt = canvasModel.createNode(createGpt(position({ x: 0, y: -14 })));\n const triggerShape = createTrigger({\n spaceId: space.id,\n triggerKind: 'webhook',\n ...position({ x: -18, y: -2 }),\n });\n const trigger = canvasModel.createNode(triggerShape);\n const text = canvasModel.createNode(createText(position({ x: 19, y: 3, width: 10, height: 10 })));\n const { queueId } = setupQueue(space, canvasModel);\n const append = canvasModel.createNode(createAppend(position({ x: 10, y: 6 })));\n\n builder\n .createEdge({\n source: trigger.id,\n target: gpt.id,\n input: 'prompt',\n output: 'bodyText',\n })\n .createEdge({ source: gpt.id, target: text.id, output: 'text' })\n .createEdge({\n source: queueId.id,\n target: append.id,\n input: 'id',\n })\n .createEdge({\n source: gpt.id,\n target: append.id,\n output: 'messages',\n input: 'items',\n });\n\n functionTrigger = triggerShape.functionTrigger!.target!;\n });\n\n const computeModel = createComputeGraph(canvasModel);\n\n attachTrigger(functionTrigger, computeModel);\n\n return addToSpace(PresetName.GPT_QUEUE, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n [\n PresetName.OBJECT_CHANGE_QUEUE,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const { canvasModel, computeModel } = createQueueSinkPreset(\n space,\n 'subscription',\n (triggerSpec) =>\n (triggerSpec.query = {\n ast: Query.select(Filter.typename('org.dxos.type.chess')).ast as Obj.Mutable<QueryAST.Query>,\n }),\n 'type',\n );\n return addToSpace(PresetName.OBJECT_CHANGE_QUEUE, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n [\n PresetName.TIMER_TICK_QUEUE,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const { canvasModel, computeModel } = createQueueSinkPreset(\n space,\n 'timer',\n (triggerSpec) => (triggerSpec.cron = '*/5 * * * * *'),\n 'result',\n );\n return addToSpace(PresetName.TIMER_TICK_QUEUE, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n // TODO(wittjosiah): Remove?\n // [\n // PresetName.EMAIL_TABLE,\n // async (space, n, cb) => {\n // const objects = range(n, () => {\n // const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n // const results = space.db.query(Filter.type(TableType)).runSync();\n // const emailTable = results.find((r) => r.object?.view?.target?.query?.typename?.endsWith('Email'));\n // invariant(emailTable, 'Email table not found.');\n\n // const template = canvasModel.createNode(\n // createTemplate({\n // valueType: 'object',\n // ...rawPosition({ centerX: -80, centerY: -64, width: 320, height: 320 }),\n // }),\n // );\n // const templateContent = ['{'];\n\n // let functionTrigger: FunctionTrigger | undefined;\n // canvasModel.builder.call((builder) => {\n // const triggerShape = createTrigger({\n // spaceId: space.id,\n // triggerKind: 'email',\n // ...position({ x: -18, y: -2 }),\n // });\n // const trigger = canvasModel.createNode(triggerShape);\n\n // const tableId = canvasModel.createNode(\n // createConstant({\n // value: DXN.fromLocalObjectId(emailTable.id).toString(),\n // ...position({ x: -18, y: 5, width: 8, height: 6 }),\n // }),\n // );\n\n // const appendToTable = canvasModel.createNode(createAppend(position({ x: 10, y: 6 })));\n\n // const properties = SchemaAST.getPropertySignatures(EmailTriggerOutput.ast);\n // for (let i = 0; i < properties.length; i++) {\n // const propName = properties[i].name.toString();\n // builder.createEdge({ source: trigger.id, target: template.id, input: propName, output: propName });\n // templateContent.push(` \"${propName}\": \"{{${propName}}}\"` + (i === properties.length - 1 ? '' : ','));\n // }\n // templateContent.push('}');\n\n // builder\n // .createEdge({ source: tableId.id, target: appendToTable.id, input: 'id' })\n // .createEdge({ source: template.id, target: appendToTable.id, input: 'items' });\n\n // functionTrigger = triggerShape.functionTrigger!.target!;\n // });\n\n // const computeModel = createComputeGraph(canvasModel);\n\n // const templateComputeNode = computeModel.nodes.find((n) => n.id === template.node);\n // invariant(templateComputeNode, 'Template compute node was not created.');\n // templateComputeNode.value = templateContent.join('\\n');\n // templateComputeNode.inputSchema = JsonSchema.toJsonSchema(EmailTriggerOutput);\n\n // attachTrigger(functionTrigger, computeModel);\n\n // return addToSpace(PresetName.EMAIL_TABLE, space, canvasModel, computeModel);\n // });\n // cb?.(objects);\n // return objects;\n // },\n // ],\n\n [\n PresetName.CHAT_GPT,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n canvasModel.builder.call((builder) => {\n const gpt = canvasModel.createNode(createGpt(position({ x: 0, y: -14 })));\n const chat = canvasModel.createNode(createChat(position({ x: -18, y: -2 })));\n const text = canvasModel.createNode(createText(position({ x: 19, y: 3, width: 10, height: 10 })));\n const { queueId } = setupQueue(space, canvasModel);\n\n const append = canvasModel.createNode(createAppend(position({ x: 10, y: 6 })));\n\n builder\n .createEdge({ source: chat.id, target: gpt.id, input: 'prompt' })\n .createEdge({ source: gpt.id, target: text.id, output: 'text' })\n .createEdge({\n source: queueId.id,\n target: append.id,\n input: 'id',\n })\n .createEdge({\n source: gpt.id,\n target: append.id,\n output: 'messages',\n input: 'items',\n });\n });\n\n const computeModel = createComputeGraph(canvasModel);\n\n return addToSpace(PresetName.CHAT_GPT, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n // TODO(wittjosiah): Remove?\n // [\n // PresetName.EMAIL_WITH_SUMMARY,\n // async (space, n, cb) => {\n // const objects = range(n, () => {\n // const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n // const results = space.db.query(Filter.type(TableType)).runSync();\n // const emailTable = results.find((r) => r.object?.view?.target?.query?.typename?.endsWith('Email'));\n // invariant(emailTable, 'Email table not found.');\n\n // const template = canvasModel.createNode(\n // createTemplate({\n // valueType: 'object',\n // ...rawPosition({ centerX: 192, centerY: -176, width: 320, height: 320 }),\n // }),\n // );\n // const templateContent = ['{'];\n\n // let functionTrigger: FunctionTrigger | undefined;\n // canvasModel.builder.call((builder) => {\n // const gpt = canvasModel.createNode(\n // createGpt(rawPosition({ centerX: -400, centerY: -112, width: 256, height: 202 })),\n // );\n // const systemPrompt = canvasModel.createNode(\n // createConstant({\n // value: \"use one word to describe content category. don't write anything else\",\n // ...rawPosition({ centerX: -800, centerY: -160, width: 192, height: 128 }),\n // }),\n // );\n // const triggerShape = createTrigger({\n // spaceId: space.id,\n // triggerKind: 'email',\n // ...rawPosition({ centerX: -736, centerY: -384, width: 182, height: 192 }),\n // });\n // const trigger = canvasModel.createNode(triggerShape);\n\n // const { queueId } = setupQueue(space, canvasModel, {\n // idPosition: { centerX: -720, centerY: 224, width: 192, height: 256 },\n // queuePosition: { centerX: -144, centerY: 416, width: 320, height: 448 },\n // });\n // const appendToQueue = canvasModel.createNode(\n // createAppend(rawPosition({ centerX: -80, centerY: 96, width: 122, height: 128 })),\n // );\n\n // const tableId = canvasModel.createNode(\n // createConstant({\n // value: DXN.fromLocalObjectId(emailTable.id).toString(),\n // ...rawPosition({ centerX: -112, centerY: -544, width: 192, height: 256 }),\n // }),\n // );\n\n // const appendToTable = canvasModel.createNode(\n // createAppend(rawPosition({ centerX: 560, centerY: -416, width: 128, height: 122 })),\n // );\n\n // templateContent.push(' \"category\": \"{{text}}\",');\n // builder.createEdge({ source: gpt.id, target: template.id, input: 'text', output: 'text' });\n\n // const properties = SchemaAST.getPropertySignatures(EmailTriggerOutput.ast);\n // for (let i = 0; i < properties.length; i++) {\n // const propName = properties[i].name.toString();\n // builder.createEdge({ source: trigger.id, target: template.id, input: propName, output: propName });\n // templateContent.push(` \"${propName}\": \"{{${propName}}}\"` + (i === properties.length - 1 ? '' : ','));\n // }\n // templateContent.push('}');\n\n // builder\n // .createEdge({ source: tableId.id, target: appendToTable.id, input: 'id' })\n // .createEdge({ source: queueId.id, target: appendToQueue.id, input: 'id' })\n // .createEdge({ source: gpt.id, target: appendToQueue.id, output: 'messages', input: 'items' })\n // .createEdge({ source: systemPrompt.id, target: gpt.id, input: 'systemPrompt' })\n // .createEdge({ source: trigger.id, target: gpt.id, input: 'prompt', output: 'body' })\n // .createEdge({ source: template.id, target: appendToTable.id, input: 'items' });\n\n // functionTrigger = triggerShape.functionTrigger!.target!;\n // });\n\n // const computeModel = createComputeGraph(canvasModel);\n\n // const templateComputeNode = computeModel.nodes.find((n) => n.id === template.node);\n // invariant(templateComputeNode, 'Template compute node was not created.');\n // templateComputeNode.value = templateContent.join('\\n');\n // const extendedSchema = Schema.extend(EmailTriggerOutput, Schema.Struct({ text: Schema.String }));\n // templateComputeNode.inputSchema = JsonSchema.toJsonSchema(extendedSchema);\n\n // attachTrigger(functionTrigger, computeModel);\n\n // return addToSpace(PresetName.EMAIL_WITH_SUMMARY, space, canvasModel, computeModel);\n // });\n // cb?.(objects);\n // return objects;\n // },\n // ],\n\n [\n PresetName.FOREX_FUNCTION_CALL,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n canvasModel.builder.call((builder) => {\n const sourceCurrency = canvasModel.createNode(\n createConstant({ value: 'USD', ...position({ x: -10, y: -5 }) }),\n );\n const targetCurrency = canvasModel.createNode(\n createConstant({ value: 'EUR', ...position({ x: -10, y: 5 }) }),\n );\n const converter = canvasModel.createNode(createFunction(position({ x: 0, y: 0 })));\n const view = canvasModel.createNode(createSurface(position({ x: 12, y: 0 })));\n\n builder\n .createEdge({\n source: sourceCurrency.id,\n target: converter.id,\n input: 'from',\n })\n .createEdge({\n source: targetCurrency.id,\n target: converter.id,\n input: 'to',\n })\n .createEdge({\n source: converter.id,\n target: view.id,\n output: 'rate',\n });\n });\n\n const computeModel = createComputeGraph(canvasModel);\n\n return addToSpace(PresetName.FOREX_FUNCTION_CALL, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n [\n PresetName.DISCORD_MESSAGES,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n let functionTrigger: Trigger.Trigger | undefined;\n canvasModel.builder.call((builder) => {\n const triggerShape = createTrigger({\n spaceId: space.id,\n triggerKind: 'timer',\n ...position({ x: -10, y: -5 }),\n });\n const trigger = canvasModel.createNode(triggerShape);\n // DXOS dev-null channel.\n const channelId = canvasModel.createNode(\n createConstant({\n value: '1088569858767212554',\n ...position({ x: -10, y: 0 }),\n }),\n );\n const queueId = canvasModel.createNode(\n createConstant({\n value: new DXN(DXN.kind.QUEUE, ['data', space.id, Key.ObjectId.random()]).toString(),\n ...position({ x: -10, y: 5 }),\n }),\n );\n const converter = canvasModel.createNode(createFunction(position({ x: 0, y: 0 })));\n const view = canvasModel.createNode(createText(position({ x: 12, y: 0 })));\n const queue = canvasModel.createNode(createFeed(position({ x: 0, y: 12 })));\n\n builder\n .createEdge({\n source: trigger.id,\n target: converter.id,\n input: 'tick',\n })\n .createEdge({\n source: channelId.id,\n target: converter.id,\n input: 'channelId',\n })\n .createEdge({\n source: queueId.id,\n target: converter.id,\n input: 'queueId',\n })\n .createEdge({\n source: converter.id,\n target: view.id,\n output: 'newMessages',\n })\n .createEdge({\n source: queueId.id,\n target: queue.id,\n input: 'input',\n });\n\n functionTrigger = triggerShape.functionTrigger!.target!;\n });\n\n const computeModel = createComputeGraph(canvasModel);\n attachTrigger(functionTrigger, computeModel);\n\n return addToSpace(PresetName.DISCORD_MESSAGES, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n // TODO(wittjosiah): Remove?\n // [\n // PresetName.KANBAN_QUEUE,\n // async (space, n, cb) => {\n // const objects = range(n, () => {\n // const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n // // TODO(wittjosiah): Integrate directly w/ Kanban.\n // // const results = space.db.query(Filter.type(KanbanType)).runSync();\n // // const kanban = results.find((r) => r.object?.cardView?.target?.query?.type?.endsWith('Message'));\n // // invariant(kanban, 'Kanban not found.');\n\n // const results = space.db.query(Filter.type(TableType)).runSync();\n // const messages = results.find((r) => r.object?.view?.target?.query?.typename?.endsWith('Message'));\n // invariant(messages, 'Table not found.');\n\n // let functionTrigger: FunctionTrigger | undefined;\n // canvasModel.builder.call((builder) => {\n // const triggerShape = createTrigger({\n // spaceId: space.id,\n // triggerKind: 'queue',\n // ...position({ x: -10, y: -5 }),\n // });\n // const trigger = canvasModel.createNode(triggerShape);\n\n // const tableId = canvasModel.createNode(\n // createConstant({\n // value: DXN.fromLocalObjectId(messages.id).toString(),\n // ...position({ x: -10, y: 5 }),\n // }),\n // );\n // const appendToTable = canvasModel.createNode(createAppend(position({ x: 10, y: 0 })));\n\n // builder\n // .createEdge({ source: tableId.id, target: appendToTable.id, input: 'id' })\n // .createEdge({ source: trigger.id, target: appendToTable.id, input: 'items', output: 'item' });\n\n // functionTrigger = triggerShape.functionTrigger!.target!;\n // });\n\n // const computeModel = createComputeGraph(canvasModel);\n // attachTrigger(functionTrigger, computeModel);\n\n // return addToSpace(PresetName.KANBAN_QUEUE, space, canvasModel, computeModel);\n // });\n // cb?.(objects);\n // return objects;\n // },\n // ],\n ] as [PresetName, ObjectGenerator<any>][],\n});\n\nconst createQueueSinkPreset = <SpecType extends Trigger.Kind>(\n space: Space,\n triggerKind: SpecType,\n initSpec: (spec: Obj.Mutable<Extract<Trigger.Spec, { kind: SpecType }>>) => void,\n triggerOutputName: string,\n) => {\n const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n const template = canvasModel.createNode(\n createTemplate({\n valueType: 'object',\n ...rawPosition({ centerX: -64, centerY: -79, width: 320, height: 320 }),\n }),\n );\n\n let functionTrigger: Trigger.Trigger | undefined;\n canvasModel.builder.call((builder) => {\n const triggerShape = createTrigger({\n spaceId: space.id,\n triggerKind,\n ...rawPosition({ centerX: -578, centerY: -187, height: 320, width: 320 }),\n });\n const trigger = canvasModel.createNode(triggerShape);\n const { queueId } = setupQueue(space, canvasModel, {\n queuePosition: { centerX: -80, centerY: 378, width: 320, height: 448 },\n });\n const append = canvasModel.createNode(\n createAppend(rawPosition({ centerX: 320, centerY: 192, width: 128, height: 122 })),\n );\n const random = canvasModel.createNode(\n createRandom(rawPosition({ centerX: -509, centerY: -30, width: 64, height: 64 })),\n );\n\n builder\n .createEdge({ source: queueId.id, target: append.id, input: 'id' })\n .createEdge({ source: template.id, target: append.id, input: 'items' })\n .createEdge({\n source: trigger.id,\n target: template.id,\n output: triggerOutputName,\n input: 'type',\n })\n .createEdge({\n source: random.id,\n target: template.id,\n input: 'changeId',\n });\n\n functionTrigger = triggerShape.functionTrigger!.target!;\n const triggerSpec = functionTrigger.spec;\n invariant(triggerSpec && triggerSpec.kind === triggerKind, 'No trigger spec.');\n Obj.update(functionTrigger, (functionTrigger) => {\n initSpec(functionTrigger.spec as any);\n });\n });\n\n const computeModel = createComputeGraph(canvasModel);\n\n const templateComputeNode = computeModel.nodes.find((n) => n.id === template.node);\n invariant(templateComputeNode, 'Template compute node was not created.');\n // NOTE: These are plain object mutations during model construction, not ECHO object mutations.\n templateComputeNode.value = ['{', ' \"@type\": \"{{type}}\",', ' \"id\": \"@{{changeId}}\"', '}'].join('\\n');\n templateComputeNode.inputSchema = JsonSchema.toJsonSchema(\n Schema.Struct({ type: Schema.String, changeId: Schema.String }),\n );\n attachTrigger(functionTrigger, computeModel);\n\n return { canvasModel, computeModel };\n};\n\nconst addToSpace = (name: string, space: Space, canvas: CanvasGraphModel, compute: ComputeGraphModel) => {\n return space.db.add(\n Obj.make(CanvasBoard.CanvasBoard, {\n name,\n computeGraph: Ref.make(compute.root),\n layout: canvas.graph,\n }),\n );\n};\n\nconst setupQueue = (\n space: Space,\n canvasModel: CanvasGraphModel,\n args?: { idPosition?: RawPositionInput; queuePosition?: RawPositionInput },\n) => {\n const queueId = canvasModel.createNode(\n createConstant({\n value: new DXN(DXN.kind.QUEUE, ['data', space.id, Key.ObjectId.random()]).toString(),\n ...(args?.idPosition ? rawPosition(args.idPosition) : position({ x: -18, y: 5, width: 8, height: 6 })),\n }),\n );\n const queue = canvasModel.createNode(\n createFeed(\n args?.queuePosition ? rawPosition(args.queuePosition) : position({ x: -3, y: 3, width: 14, height: 10 }),\n ),\n );\n canvasModel.createEdge({ source: queueId.id, target: queue.id });\n return { queue, queueId };\n};\n\nconst attachTrigger = (functionTrigger: Trigger.Trigger | undefined, computeModel: ComputeGraphModel) => {\n invariant(functionTrigger);\n const inputNode = computeModel.nodes.find((node) => node.type === NODE_INPUT)!;\n Obj.update(functionTrigger, (functionTrigger) => {\n functionTrigger.function = Ref.make(computeModel.root);\n functionTrigger.inputNodeId = inputNode.id;\n });\n};\n\ntype RawPositionInput = {\n centerX: number;\n centerY: number;\n width: number;\n height: number;\n};\n\nconst rawPosition = (args: RawPositionInput) => {\n return {\n center: { x: args.centerX, y: args.centerY },\n size: { width: args.width, height: args.height },\n };\n};\n\nconst position = (rect: { x: number; y: number; width?: number; height?: number }) => {\n const snap = 32;\n const [center, size] = rectToPoints({ width: 0, height: 0, ...rect });\n const { x, y, width, height } = pointsToRect([pointMultiply(center, snap), pointMultiply(size, snap)]);\n if (width && height) {\n return {\n center: { x, y },\n size: width && height ? { width, height } : undefined,\n };\n } else {\n return { center: { x, y } };\n }\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport type * as Schema from 'effect/Schema';\n\nimport { addressToA1Notation } from '@dxos/compute-hyperformula';\nimport { ComputeGraph, ComputeGraphModel, DEFAULT_OUTPUT, NODE_INPUT, NODE_OUTPUT } from '@dxos/conductor';\nimport { DXN, Filter, Key, type Type, View } from '@dxos/echo';\nimport { OperationInvoker } from '@dxos/operation';\nimport { Markdown } from '@dxos/plugin-markdown';\nimport { Sheet } from '@dxos/plugin-sheet';\nimport { Sketch } from '@dxos/plugin-sketch';\nimport { SpaceOperation } from '@dxos/plugin-space';\nimport { random } from '@dxos/random';\nimport { type Client } from '@dxos/react-client';\nimport { type Space } from '@dxos/react-client/echo';\nimport { getTypenameFromQuery } from '@dxos/schema';\nimport { type ValueGenerator, createAsyncGenerator } from '@dxos/schema/testing';\nimport { range } from '@dxos/util';\n\nconst generator: ValueGenerator = random as any;\n\nconst findViewByTypename = async (views: View.View[], typename: string) => {\n return views.find((view) => getTypenameFromQuery(view.query.ast) === typename);\n};\n\nexport type ObjectGenerator<T> = (space: Space, n: number, cb?: (objects: T[]) => void) => Promise<T[]>;\n\nexport const createGenerator = <S extends Type.AnyObj>(\n client: Client,\n invokePromise: OperationInvoker.OperationInvoker['invokePromise'],\n schema: S,\n): ObjectGenerator<Schema.Schema.Type<S>> => {\n return async (space: Space, n: number): Promise<Schema.Schema.Type<S>[]> => {\n const typename = schema.typename;\n\n // Find or create table and view.\n const views = await space.db.query(Filter.type(View.View)).run();\n const view = await findViewByTypename(views, typename);\n const staticSchema = client?.graph.schemaRegistry.query({ typename }).runSync()[0];\n if (!view && !staticSchema) {\n await invokePromise(SpaceOperation.AddSchema, { db: space.db, schema, show: false });\n }\n\n // Create objects.\n const generate = createAsyncGenerator(generator, schema, { db: space.db });\n return generate.createObjects(n);\n };\n};\n\nexport const staticGenerators = new Map<string, ObjectGenerator<any>>([\n [\n Markdown.Document.typename,\n async (space, n, cb) => {\n const objects = range(n).map(() => {\n return space.db.add(\n Markdown.make({\n name: random.commerce.productName(),\n content: random.lorem.sentences(5),\n }),\n );\n });\n\n cb?.(objects);\n return objects;\n },\n ],\n [\n Sketch.Sketch.typename,\n async (space, n, cb) => {\n const objects = range(n).map(() => {\n const obj = space.db.add(Sketch.make({ name: random.commerce.productName() }));\n return obj;\n });\n\n cb?.(objects);\n return objects;\n },\n ],\n // TODO(burdon): Create unit tests.\n [\n Sheet.Sheet.typename,\n async (space, n, cb) => {\n const objects = range(n).map(() => {\n const cells: Record<string, Sheet.CellValue> = {};\n const year = new Date().getFullYear();\n const cols = 4;\n const rows = 16;\n for (let col = 1; col <= cols; col++) {\n for (let row = 1; row <= rows; row++) {\n const cell = addressToA1Notation({ col, row });\n if (row === 1) {\n cells[cell] = { value: `${year} Q${col}` };\n } else if (row === rows) {\n const from = addressToA1Notation({ col, row: 2 });\n const to = addressToA1Notation({ col, row: rows - 1 });\n cells[cell] = { value: `=SUM(${from}:${to})` };\n } else if (row > 2 && row < rows - 1) {\n cells[cell] = { value: Math.floor(Math.random() * 10_000) };\n }\n }\n }\n\n // TODO(burdon): Set width.\n // TODO(burdon): Set formatting for columns.\n return space.db.add(\n Sheet.make({\n name: random.commerce.productName(),\n cells,\n }),\n );\n });\n\n cb?.(objects);\n return objects;\n },\n ],\n [\n ComputeGraph.typename,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const model = ComputeGraphModel.create();\n model.builder\n .createNode({ id: 'gpt-INPUT', type: NODE_INPUT })\n .createNode({ id: 'gpt-GPT', type: 'gpt' })\n .createNode({\n id: 'gpt-QUEUE_ID',\n type: 'constant',\n value: new DXN(DXN.kind.QUEUE, ['data', space.id, Key.ObjectId.random()]).toString(),\n })\n .createNode({ id: 'gpt-APPEND', type: 'append' })\n .createNode({ id: 'gpt-OUTPUT', type: NODE_OUTPUT })\n .createEdge({ node: 'gpt-INPUT', property: 'prompt' }, { node: 'gpt-GPT', property: 'prompt' })\n .createEdge({ node: 'gpt-GPT', property: 'text' }, { node: 'gpt-OUTPUT', property: 'text' })\n .createEdge({ node: 'gpt-QUEUE_ID', property: DEFAULT_OUTPUT }, { node: 'gpt-APPEND', property: 'id' })\n .createEdge({ node: 'gpt-GPT', property: 'messages' }, { node: 'gpt-APPEND', property: 'items' })\n .createEdge({ node: 'gpt-QUEUE_ID', property: DEFAULT_OUTPUT }, { node: 'gpt-OUTPUT', property: 'queue' });\n\n return space.db.add(model.root);\n });\n cb?.(objects);\n return objects;\n },\n ],\n]);\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["lazy", "React", "IconButton", "SchemaTable", "types", "objects", "label", "onClick", "div", "className", "h2", "map", "type", "key", "typename", "variant", "icon", "iconOnly", "Schema", "AgentPrompt", "WebSearchBlueprint", "Routine", "Trigger", "Operation", "NODE_INPUT", "DXN", "Feed", "Filter", "JsonSchema", "Key", "Obj", "Query", "Ref", "Tag", "invariant", "InboxOperation", "Mailbox", "Markdown", "createAppend", "createChat", "createComputeGraph", "createConstant", "createFeed", "createFunction", "createGpt", "createRandom", "createSurface", "createTemplate", "createText", "createTrigger", "CanvasBoard", "CanvasGraphModel", "pointMultiply", "pointsToRect", "rectToPoints", "ViewModel", "Message", "Organization", "Person", "Pipeline", "range", "trim", "PresetName", "types", "Object", "org", "space", "website", "content", "tagDXN", "doc", "tags", "fullName", "organization", "make", "cb", "objects", "mailbox", "mailboxes", "mailboxFeed", "feedDXN", "getQueueDxn", "toString", "tag", "label", "first", "contactsQuery", "organizationsQuery", "notesQuery", "select", "type", "Document", "db", "enabled", "spec", "specTimer", "function", "input", "description", "output", "Any", "specSubscription", "prompt", "researchPrompt", "labels", "contains", "feeds", "jsonSchema", "contactsView", "toJsonSchema", "organizationsView", "notesView", "add", "columns", "name", "order", "canvasModel", "functionTrigger", "call", "builder", "y", "triggerShape", "triggerKind", "position", "x", "width", "height", "queueId", "target", "createEdge", "source", "gpt", "text", "append", "attachTrigger", "addToSpace", "ast", "computeModel", "createNode", "chat", "sourceCurrency", "value", "view", "converter", "spaceId", "channelId", "id", "queue", "createQueueSinkPreset", "valueType", "rawPosition", "centerX", "queuePosition", "centerY", "random", "template", "triggerOutputName", "triggerSpec", "update", "initSpec", "templateComputeNode", "join", "computeGraph", "compute", "layout", "setupQueue", "kind", "args", "idPosition", "node", "root", "inputNodeId", "size", "center", "snap", "undefined", "addressToA1Notation", "ComputeGraph", "ComputeGraphModel", "DEFAULT_OUTPUT", "NODE_INPUT", "NODE_OUTPUT", "DXN", "Filter", "Key", "View", "Markdown", "Sheet", "Sketch", "SpaceOperation", "random", "getTypenameFromQuery", "createAsyncGenerator", "range", "generator", "findViewByTypename", "views", "typename", "find", "view", "query", "ast", "createGenerator", "client", "invokePromise", "schema", "space", "n", "db", "type", "run", "staticSchema", "graph", "schemaRegistry", "runSync", "AddSchema", "show", "generate", "createObjects", "staticGenerators", "Map", "Document", "cb", "objects", "map", "add", "make", "name", "commerce", "productName", "content", "lorem", "sentences", "obj", "cells", "year", "Date", "getFullYear", "cols", "rows", "col", "row", "cell", "value", "from", "to", "Math", "floor", "model", "create", "builder", "createNode", "id", "kind", "QUEUE", "ObjectId", "toString", "createEdge", "node", "property", "root", "DebugSettings", "lazy"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import "../chunk-J5LGTIGS.mjs";
|
|
2
|
+
|
|
3
|
+
// src/containers/index.ts
|
|
4
|
+
import { lazy } from "react";
|
|
5
|
+
var DebugGraph = lazy(() => import("../DebugGraph-G4FWS57E.mjs"));
|
|
6
|
+
var DebugObjectPanel = lazy(() => import("../DebugObjectPanel-UJ63CV25.mjs"));
|
|
7
|
+
var DebugStatus = lazy(() => import("../DebugStatus-YB3KFP7G.mjs"));
|
|
8
|
+
var DevtoolsOverviewContainer = lazy(() => import("../DevtoolsOverviewContainer-YX7Z3D2H.mjs"));
|
|
9
|
+
var SpaceGenerator = lazy(() => import("../SpaceGenerator-UBYB4NPD.mjs"));
|
|
10
|
+
var Wireframe = lazy(() => import("../Wireframe-7SNRUKET.mjs"));
|
|
11
|
+
var DebugSpaceObjectsPanel = lazy(() => import("../DebugSpaceObjectsPanel-NISULU6U.mjs"));
|
|
12
|
+
var GithubPanel = lazy(() => import("../GithubPanel-DAIR6QSZ.mjs"));
|
|
13
|
+
export {
|
|
14
|
+
DebugGraph,
|
|
15
|
+
DebugObjectPanel,
|
|
16
|
+
DebugSpaceObjectsPanel,
|
|
17
|
+
DebugStatus,
|
|
18
|
+
DevtoolsOverviewContainer,
|
|
19
|
+
GithubPanel,
|
|
20
|
+
SpaceGenerator,
|
|
21
|
+
Wireframe
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/containers/index.ts"],
|
|
4
|
+
"sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentType, lazy } from 'react';\n\nexport const DebugGraph: ComponentType<any> = lazy(() => import('./DebugGraph'));\nexport const DebugObjectPanel: ComponentType<any> = lazy(() => import('./DebugObjectPanel'));\nexport const DebugStatus: ComponentType<any> = lazy(() => import('./DebugStatus'));\nexport const DevtoolsOverviewContainer: ComponentType<any> = lazy(() => import('./DevtoolsOverviewContainer'));\nexport const SpaceGenerator: ComponentType<any> = lazy(() => import('./SpaceGenerator'));\nexport const Wireframe: ComponentType<any> = lazy(() => import('./Wireframe'));\nexport const DebugSpaceObjectsPanel: ComponentType<any> = lazy(() => import('./DebugSpaceObjectsPanel'));\nexport const GithubPanel: ComponentType<any> = lazy(() => import('./GithubPanel'));\n"],
|
|
5
|
+
"mappings": ";;;AAIA,SAA6BA,YAAY;AAElC,IAAMC,aAAiCD,KAAK,MAAM,OAAO,4BAAA,CAAA;AACzD,IAAME,mBAAuCF,KAAK,MAAM,OAAO,kCAAA,CAAA;AAC/D,IAAMG,cAAkCH,KAAK,MAAM,OAAO,6BAAA,CAAA;AAC1D,IAAMI,4BAAgDJ,KAAK,MAAM,OAAO,2CAAA,CAAA;AACxE,IAAMK,iBAAqCL,KAAK,MAAM,OAAO,gCAAA,CAAA;AAC7D,IAAMM,YAAgCN,KAAK,MAAM,OAAO,2BAAA,CAAA;AACxD,IAAMO,yBAA6CP,KAAK,MAAM,OAAO,wCAAA,CAAA;AACrE,IAAMQ,cAAkCR,KAAK,MAAM,OAAO,6BAAA,CAAA;",
|
|
6
|
+
"names": ["lazy", "DebugGraph", "DebugObjectPanel", "DebugStatus", "DevtoolsOverviewContainer", "SpaceGenerator", "Wireframe", "DebugSpaceObjectsPanel", "GithubPanel"]
|
|
7
|
+
}
|