@dxos/plugin-debug 0.8.2-staging.7ac8446 → 0.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/dist/lib/browser/DebugApp-WSEJPCKY.mjs +225 -0
  2. package/dist/lib/browser/{DebugApp-7PFYN52J.mjs.map → DebugApp-WSEJPCKY.mjs.map} +1 -1
  3. package/dist/lib/browser/DevtoolsOverviewContainer-IIIWO77Q.mjs +25 -0
  4. package/dist/lib/browser/DevtoolsOverviewContainer-IIIWO77Q.mjs.map +7 -0
  5. package/dist/lib/browser/{SpaceGenerator-NBOQZ4JF.mjs → SpaceGenerator-RHQLPN44.mjs} +254 -242
  6. package/dist/lib/browser/SpaceGenerator-RHQLPN44.mjs.map +7 -0
  7. package/dist/lib/browser/{app-graph-builder-ALFPRSAR.mjs → app-graph-builder-PIPBIN6P.mjs} +115 -88
  8. package/dist/lib/browser/app-graph-builder-PIPBIN6P.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-RORUXVAC.mjs → chunk-47JOZTT2.mjs} +1 -4
  10. package/dist/lib/browser/{chunk-RORUXVAC.mjs.map → chunk-47JOZTT2.mjs.map} +3 -3
  11. package/dist/lib/browser/chunk-KS3YBEL7.mjs +68 -0
  12. package/dist/lib/browser/chunk-KS3YBEL7.mjs.map +7 -0
  13. package/dist/lib/browser/index.mjs +7 -5
  14. package/dist/lib/browser/index.mjs.map +2 -2
  15. package/dist/lib/browser/meta.json +1 -1
  16. package/dist/lib/browser/{react-context-ZRLN5KUI.mjs → react-context-ZQRD2WG2.mjs} +2 -2
  17. package/dist/lib/browser/{react-surface-MXXLOQYV.mjs → react-surface-PHUWS5WD.mjs} +318 -288
  18. package/dist/lib/browser/react-surface-PHUWS5WD.mjs.map +7 -0
  19. package/dist/lib/browser/{settings-AP74NCXH.mjs → settings-N4Q6YB7L.mjs} +5 -5
  20. package/dist/lib/browser/settings-N4Q6YB7L.mjs.map +7 -0
  21. package/dist/types/src/capabilities/app-graph-builder.d.ts +2 -179
  22. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  23. package/dist/types/src/capabilities/index.d.ts +2 -178
  24. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  25. package/dist/types/src/capabilities/react-surface.d.ts +2 -2
  26. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  27. package/dist/types/src/components/Container.d.ts.map +1 -1
  28. package/dist/types/src/components/DebugApp/Tree.d.ts.map +1 -1
  29. package/dist/types/src/components/DebugObjectPanel.d.ts +2 -2
  30. package/dist/types/src/components/DebugObjectPanel.d.ts.map +1 -1
  31. package/dist/types/src/components/DebugSettings.d.ts.map +1 -1
  32. package/dist/types/src/components/DebugStatus.d.ts.map +1 -1
  33. package/dist/types/src/components/DevtoolsOverviewContainer.d.ts +4 -0
  34. package/dist/types/src/components/DevtoolsOverviewContainer.d.ts.map +1 -0
  35. package/dist/types/src/components/SpaceGenerator/ObjectGenerator.d.ts +2 -2
  36. package/dist/types/src/components/SpaceGenerator/ObjectGenerator.d.ts.map +1 -1
  37. package/dist/types/src/components/SpaceGenerator/SchemaTable.d.ts.map +1 -1
  38. package/dist/types/src/components/SpaceGenerator/SpaceGenerator.d.ts +2 -2
  39. package/dist/types/src/components/SpaceGenerator/SpaceGenerator.d.ts.map +1 -1
  40. package/dist/types/src/components/SpaceGenerator/draw-util.d.ts.map +1 -1
  41. package/dist/types/src/components/SpaceGenerator/presets.d.ts +1 -1
  42. package/dist/types/src/components/SpaceGenerator/presets.d.ts.map +1 -1
  43. package/dist/types/src/components/Wireframe.d.ts +2 -2
  44. package/dist/types/src/components/Wireframe.d.ts.map +1 -1
  45. package/dist/types/src/components/index.d.ts +1 -0
  46. package/dist/types/src/components/index.d.ts.map +1 -1
  47. package/dist/types/src/meta.d.ts.map +1 -1
  48. package/dist/types/src/translations.d.ts +2 -0
  49. package/dist/types/src/translations.d.ts.map +1 -1
  50. package/dist/types/src/types.d.ts +5 -4
  51. package/dist/types/src/types.d.ts.map +1 -1
  52. package/dist/types/tsconfig.tsbuildinfo +1 -1
  53. package/package.json +60 -53
  54. package/src/capabilities/app-graph-builder.ts +418 -374
  55. package/src/capabilities/react-surface.tsx +43 -19
  56. package/src/capabilities/settings.ts +2 -2
  57. package/src/components/DebugObjectPanel.tsx +2 -2
  58. package/src/components/DebugStatus.tsx +4 -29
  59. package/src/components/DevtoolsOverviewContainer.tsx +20 -0
  60. package/src/components/SpaceGenerator/ObjectGenerator.tsx +11 -16
  61. package/src/components/SpaceGenerator/SpaceGenerator.stories.tsx +1 -1
  62. package/src/components/SpaceGenerator/SpaceGenerator.tsx +9 -9
  63. package/src/components/SpaceGenerator/presets.ts +20 -18
  64. package/src/components/Wireframe.tsx +2 -2
  65. package/src/components/index.ts +1 -0
  66. package/src/meta.ts +0 -1
  67. package/src/translations.ts +2 -0
  68. package/src/types.ts +6 -5
  69. package/dist/lib/browser/DebugApp-7PFYN52J.mjs +0 -182
  70. package/dist/lib/browser/SpaceGenerator-NBOQZ4JF.mjs.map +0 -7
  71. package/dist/lib/browser/app-graph-builder-ALFPRSAR.mjs.map +0 -7
  72. package/dist/lib/browser/chunk-TCEHALD4.mjs +0 -73
  73. package/dist/lib/browser/chunk-TCEHALD4.mjs.map +0 -7
  74. package/dist/lib/browser/react-surface-MXXLOQYV.mjs.map +0 -7
  75. package/dist/lib/browser/settings-AP74NCXH.mjs.map +0 -7
  76. /package/dist/lib/browser/{react-context-ZRLN5KUI.mjs.map → react-context-ZQRD2WG2.mjs.map} +0 -0
@@ -1,182 +0,0 @@
1
- // packages/plugins/plugin-debug/src/components/DebugApp/DebugApp.tsx
2
- import { Gauge, Graph as GraphIcon, Gear, Toolbox, Warning } from "@phosphor-icons/react";
3
- import React3, { useEffect, useState as useState2 } from "react";
4
- import { useClient, useConfig } from "@dxos/react-client";
5
- import { Button, ToggleGroup, ToggleGroupItem, Toolbar } from "@dxos/react-ui";
6
- import { getSize, mx as mx2 } from "@dxos/react-ui-theme";
7
-
8
- // packages/plugins/plugin-debug/src/components/DebugApp/Tree.tsx
9
- import React, { useState } from "react";
10
- import { SyntaxHighlighter } from "@dxos/react-ui-syntax-highlighter";
11
- import { mx } from "@dxos/react-ui-theme";
12
- import { arrayToBuffer } from "@dxos/util";
13
- var replacer = (key, value) => {
14
- if (typeof value === "object") {
15
- if (value instanceof Uint8Array) {
16
- return arrayToBuffer(value).toString("hex");
17
- }
18
- if (value?.type === "Buffer") {
19
- return Buffer.from(value.data).toString("hex");
20
- }
21
- if (key === "downloaded") {
22
- return void 0;
23
- }
24
- }
25
- return value;
26
- };
27
- var Json = ({ data }) => {
28
- return /* @__PURE__ */ React.createElement(SyntaxHighlighter, {
29
- language: "json"
30
- }, JSON.stringify(data, replacer, 2));
31
- };
32
- var Tree = ({ data }) => {
33
- return /* @__PURE__ */ React.createElement("div", {
34
- className: "p-2"
35
- }, /* @__PURE__ */ React.createElement(Node, {
36
- data,
37
- root: true
38
- }));
39
- };
40
- var Node = ({ data, root }) => {
41
- if (typeof data !== "object" || data === void 0 || data === null) {
42
- return /* @__PURE__ */ React.createElement(Scalar, {
43
- value: data
44
- });
45
- }
46
- if (Array.isArray(data)) {
47
- return /* @__PURE__ */ React.createElement("div", {
48
- className: "flex flex-col space-y-2"
49
- }, data.map((value, index) => /* @__PURE__ */ React.createElement(KeyValue, {
50
- key: index,
51
- label: String(index),
52
- data: value,
53
- className: "bg-teal-50"
54
- })));
55
- }
56
- return /* @__PURE__ */ React.createElement("div", {
57
- className: "flex flex-col space-y-2"
58
- }, Object.entries(data).map(([key, value]) => /* @__PURE__ */ React.createElement(KeyValue, {
59
- key,
60
- label: key,
61
- data: value,
62
- className: "bg-blue-50"
63
- })));
64
- };
65
- var KeyValue = ({ label, data, className }) => {
66
- const [open, setOpen] = useState(true);
67
- if (data === void 0) {
68
- return null;
69
- }
70
- return /* @__PURE__ */ React.createElement("div", {
71
- className: "flex"
72
- }, /* @__PURE__ */ React.createElement(Box, {
73
- className: mx("border-blue-200 text-sm select-none cursor-pointer", className),
74
- onClick: () => setOpen((open2) => !open2)
75
- }, label), open && /* @__PURE__ */ React.createElement(Node, {
76
- data
77
- }));
78
- };
79
- var Scalar = ({ value }) => {
80
- return /* @__PURE__ */ React.createElement(Box, {
81
- className: "bg-green-50 border-green-200 rounded-r text-sm font-thin"
82
- }, value === void 0 && "undefined" || value === null && "null" || typeof value === "string" && value || JSON.stringify(value));
83
- };
84
- var Box = ({ children, className, ...props }) => {
85
- return /* @__PURE__ */ React.createElement("div", {
86
- className: mx("flex px-2 border border-l-0 font-mono truncate", className),
87
- ...props
88
- }, children);
89
- };
90
-
91
- // packages/plugins/plugin-debug/src/components/Container.tsx
92
- import React2 from "react";
93
- var Container = ({ toolbar, children }) => {
94
- return /* @__PURE__ */ React2.createElement("div", {
95
- role: "none",
96
- className: "flex flex-col grow overflow-hidden divide-y divide-separator"
97
- }, toolbar, /* @__PURE__ */ React2.createElement("div", {
98
- className: "flex flex-col grow overflow-auto"
99
- }, children));
100
- };
101
-
102
- // packages/plugins/plugin-debug/src/components/DebugApp/DebugApp.tsx
103
- var DebugApp = ({ graph }) => {
104
- const [view, setView] = useState2("graph");
105
- const [data, setData] = useState2({});
106
- const client = useClient();
107
- const config = useConfig();
108
- const handleRefresh = async () => {
109
- const data2 = await client.diagnostics({
110
- truncate: true
111
- });
112
- setData(data2);
113
- };
114
- useEffect(() => {
115
- void handleRefresh();
116
- }, []);
117
- const handleResetClient = async (force = false) => {
118
- if (!force && !window.confirm("Reset storage?")) {
119
- return;
120
- }
121
- await client.reset();
122
- window.location.href = window.location.origin;
123
- };
124
- const handleOpenDevtools = () => {
125
- const vaultUrl = config.values?.runtime?.client?.remoteSource;
126
- if (vaultUrl) {
127
- window.open(`https://devtools.dev.dxos.org/?target=${vaultUrl}`);
128
- }
129
- };
130
- return /* @__PURE__ */ React3.createElement(Container, {
131
- toolbar: /* @__PURE__ */ React3.createElement(Toolbar.Root, {
132
- classNames: "p-1"
133
- }, /* @__PURE__ */ React3.createElement(ToggleGroup, {
134
- type: "single",
135
- value: view
136
- }, /* @__PURE__ */ React3.createElement(ToggleGroupItem, {
137
- value: "graph",
138
- onClick: () => setView("graph"),
139
- title: "Plugin graph"
140
- }, /* @__PURE__ */ React3.createElement(GraphIcon, {
141
- className: getSize(5)
142
- })), /* @__PURE__ */ React3.createElement(ToggleGroupItem, {
143
- value: "diagnostics",
144
- onClick: () => setView("diagnostics"),
145
- title: "Diagnostics"
146
- }, /* @__PURE__ */ React3.createElement(Gauge, {
147
- className: getSize(5)
148
- })), /* @__PURE__ */ React3.createElement(ToggleGroupItem, {
149
- value: "config",
150
- onClick: () => setView("config"),
151
- title: "Config"
152
- }, /* @__PURE__ */ React3.createElement(Gear, {
153
- className: getSize(5)
154
- }))), /* @__PURE__ */ React3.createElement(Toolbar.Separator, {
155
- variant: "gap"
156
- }), /* @__PURE__ */ React3.createElement(Button, {
157
- onClick: (event) => handleResetClient(event.shiftKey),
158
- title: "Reset client"
159
- }, /* @__PURE__ */ React3.createElement(Warning, {
160
- className: mx2(getSize(5), "text-red-700")
161
- })), /* @__PURE__ */ React3.createElement(Button, {
162
- onClick: handleOpenDevtools,
163
- title: "Open Devtools"
164
- }, /* @__PURE__ */ React3.createElement(Toolbox, {
165
- weight: "duotone",
166
- className: mx2(getSize(5), "text-700")
167
- })))
168
- }, view === "graph" && /* @__PURE__ */ React3.createElement(Tree, {
169
- data: graph.toJSON()
170
- }), view === "config" && /* @__PURE__ */ React3.createElement(Json, {
171
- data: data.diagnostics?.config
172
- }), view === "diagnostics" && /* @__PURE__ */ React3.createElement(Json, {
173
- data
174
- }));
175
- };
176
-
177
- // packages/plugins/plugin-debug/src/components/DebugApp/index.ts
178
- var DebugApp_default = DebugApp;
179
- export {
180
- DebugApp_default as default
181
- };
182
- //# sourceMappingURL=DebugApp-7PFYN52J.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/components/SpaceGenerator/SpaceGenerator.tsx", "../../../src/components/SpaceGenerator/ObjectGenerator.tsx", "../../../src/components/SpaceGenerator/SchemaTable.tsx", "../../../src/components/SpaceGenerator/presets.ts", "../../../src/components/SpaceGenerator/index.ts"],
4
- "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { useCallback, useMemo, useState } from 'react';\n\nimport { createIntent, useIntentDispatcher } from '@dxos/app-framework';\nimport { ComputeGraph } from '@dxos/conductor';\nimport { toEffectSchema } from '@dxos/echo-schema';\nimport { create, type ReactiveObject } from '@dxos/live-object';\nimport { log } from '@dxos/log';\nimport { DocumentType } from '@dxos/plugin-markdown/types';\nimport { SheetType } from '@dxos/plugin-sheet/types';\nimport { DiagramType } from '@dxos/plugin-sketch/types';\nimport { SpaceAction } from '@dxos/plugin-space/types';\nimport { useClient } from '@dxos/react-client';\nimport { getTypename, type Space } from '@dxos/react-client/echo';\nimport { IconButton, Input, Toolbar, useAsyncEffect } from '@dxos/react-ui';\nimport { SyntaxHighlighter } from '@dxos/react-ui-syntax-highlighter';\nimport { initializeTable, TableType } from '@dxos/react-ui-table';\nimport { Testing } from '@dxos/schema/testing';\nimport { jsonKeyReplacer, sortKeys } from '@dxos/util';\n\nimport { type ObjectGenerator, createGenerator, staticGenerators } from './ObjectGenerator';\nimport { SchemaTable } from './SchemaTable';\nimport { presets } from './presets';\n\nexport type SpaceGeneratorProps = {\n space: Space;\n onCreateObjects?: (objects: ReactiveObject<any>[]) => void;\n};\n\nexport const SpaceGenerator = ({ space, onCreateObjects }: SpaceGeneratorProps) => {\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const client = useClient();\n const staticTypes = [DocumentType, DiagramType, SheetType, ComputeGraph]; // TODO(burdon): Make extensible.\n const mutableTypes = [Testing.Org, Testing.Project, Testing.Contact, Testing.Message];\n const [count, setCount] = useState(1);\n const [info, setInfo] = useState<any>({});\n\n // Create type generators.\n const typeMap = useMemo(() => {\n client.addTypes([...staticTypes, ...presets.schemas]);\n const mutableGenerators = new Map<string, ObjectGenerator<any>>(\n mutableTypes.map((type) => [type.typename, createGenerator(type as any)]),\n );\n\n return new Map([...staticGenerators, ...presets.items, ...mutableGenerators]);\n }, [client, mutableTypes]);\n\n // Query space to get info.\n const updateInfo = async () => {\n // Create schema map.\n const echoSchema = await space.db.schemaRegistry.query().run();\n const staticSchema = space.db.graph.schemaRegistry.schemas;\n\n // Create object map.\n const { objects } = await space.db.query().run();\n const objectMap = sortKeys(\n objects.reduce<Record<string, number>>((map, obj) => {\n const type = getTypename(obj);\n if (type) {\n const count = map[type] ?? 0;\n map[type] = count + 1;\n }\n return map;\n }, {}),\n );\n\n setInfo({\n schema: {\n static: staticSchema.length,\n mutable: echoSchema.length,\n },\n objects: objectMap,\n });\n };\n\n useAsyncEffect(updateInfo, [space]);\n\n const handleCreateData = useCallback(\n async (typename: string) => {\n const constructor = typeMap.get(typename);\n if (constructor) {\n // TODO(burdon): Input to specify number of objects.\n await constructor(space, count, onCreateObjects);\n await updateInfo();\n }\n },\n [typeMap, count],\n );\n\n // TODO(wittjosiah): Remove. Replace with proper echo import.\n const handleLoadTables = useCallback(async () => {\n const input = document.createElement('input');\n input.type = 'file';\n input.accept = '.json';\n\n input.onchange = async (e) => {\n const file = (e.target as HTMLInputElement).files?.[0];\n if (!file) {\n return;\n }\n\n try {\n const content = await file.text();\n const data = JSON.parse(content);\n const schemas = await space.db.schemaRegistry.register(data.schemas.map(toEffectSchema));\n // TODO(wittjosiah): If the schema is already registered this should skip.\n await Promise.all(\n schemas.map(async (schema) => {\n const parts = schema.typename.split('/');\n const name = parts[parts.length - 1];\n const table = create(TableType, { name, threads: [] });\n await initializeTable({ client, space, table, typename: schema.typename });\n await dispatch(createIntent(SpaceAction.AddObject, { target: space, object: table }));\n return table;\n }),\n );\n // TODO(wittjosiah): This should query the space for schemas.\n await Promise.all(\n data.objects.map(async ({ id, '@type': typename, ...fields }: any) => {\n const schema = schemas.find((s) => `dxn:type:${s.typename}:${s.version}` === typename);\n if (!schema) {\n log.warn('Missing schema for object', { id, typename });\n return;\n }\n const object = create(schema, fields);\n space.db.add(object);\n return object;\n }),\n );\n } catch (err) {\n log.catch(err);\n }\n };\n\n input.click();\n }, []);\n\n return (\n <div role='none' className='flex flex-col divide-y divide-separator overflow-y-auto'>\n <Toolbar.Root classNames='p-1'>\n <IconButton icon='ph--arrow-clockwise--regular' iconOnly label='Refresh' onClick={updateInfo} />\n <IconButton\n icon='ph--file-arrow-up--regular'\n iconOnly\n label='Load tables from JSON'\n onClick={handleLoadTables}\n />\n <Toolbar.Separator variant='gap' />\n <div className='flex'>\n <Input.Root>\n <Input.TextInput\n type='number'\n min={1}\n max={100}\n placeholder={'Count'}\n classNames='w-[80px]'\n value={count}\n onChange={(ev) => setCount(parseInt(ev.target.value))}\n />\n </Input.Root>\n </div>\n </Toolbar.Root>\n\n <SchemaTable types={staticTypes} objects={info.objects} label='Static Types' onClick={handleCreateData} />\n <SchemaTable types={mutableTypes} objects={info.objects} label='Mutable Types' onClick={handleCreateData} />\n <SchemaTable types={presets.types} objects={info.objects} label='Presets' onClick={handleCreateData} />\n\n <SyntaxHighlighter classNames='flex text-xs' language='json'>\n {JSON.stringify({ space, ...info }, jsonKeyReplacer({ truncate: true }), 2)}\n </SyntaxHighlighter>\n </div>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { addressToA1Notation } from '@dxos/compute';\nimport { ComputeGraph, ComputeGraphModel, DEFAULT_OUTPUT, NODE_INPUT, NODE_OUTPUT } from '@dxos/conductor';\nimport { ObjectId, type BaseObject, type TypedObject } from '@dxos/echo-schema';\nimport { DXN } from '@dxos/keys';\nimport { create, makeRef, type ReactiveObject } from '@dxos/live-object';\nimport { DocumentType } from '@dxos/plugin-markdown/types';\nimport { createSheet } from '@dxos/plugin-sheet/types';\nimport { SheetType, type CellValue } from '@dxos/plugin-sheet/types';\nimport { CanvasType, DiagramType } from '@dxos/plugin-sketch/types';\nimport { faker } from '@dxos/random';\nimport { Filter, type Space } from '@dxos/react-client/echo';\nimport { TableType } from '@dxos/react-ui-table';\nimport { createView, TextType } from '@dxos/schema';\nimport { createAsyncGenerator, type ValueGenerator } from '@dxos/schema/testing';\nimport { range } from '@dxos/util';\n\nconst generator: ValueGenerator = faker as any;\n\n// TODO(burdon): Add objects to collections.\n// TODO(burdon): Create docs.\n// TODO(burdon): Create sketches.\n// TODO(burdon): Create sheets.\n// TODO(burdon): Create comments.\n// TODO(burdon): Reuse in testbench-app.\n// TODO(burdon): Mutator running in background (factor out): from echo-generator.\n\nexport type ObjectGenerator<T extends BaseObject> = (\n space: Space,\n n: number,\n cb?: (objects: ReactiveObject<any>[]) => void,\n) => Promise<ReactiveObject<T>[]>;\n\nexport const staticGenerators = new Map<string, ObjectGenerator<any>>([\n [\n DocumentType.typename,\n async (space, n, cb) => {\n const objects = range(n).map(() => {\n return space.db.add(\n create(DocumentType, {\n name: faker.commerce.productName(),\n content: makeRef(create(TextType, { content: faker.lorem.sentences(5) })),\n threads: [],\n }),\n );\n });\n\n cb?.(objects);\n return objects;\n },\n ],\n [\n DiagramType.typename,\n async (space, n, cb) => {\n const objects = range(n).map(() => {\n // TODO(burdon): Generate diagram.\n const obj = space.db.add(\n create(DiagramType, {\n name: faker.commerce.productName(),\n canvas: makeRef(create(CanvasType, { content: {} })),\n }),\n );\n\n return obj;\n });\n\n cb?.(objects);\n return objects;\n },\n ],\n // TODO(burdon): Create unit tests.\n [\n SheetType.typename,\n async (space, n, cb) => {\n const objects = range(n).map(() => {\n const cells: Record<string, 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 createSheet({\n name: faker.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, 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\nexport const createGenerator = <T extends BaseObject>(type: TypedObject<T>): ObjectGenerator<T> => {\n return async (\n space: Space,\n n: number,\n cb?: (objects: ReactiveObject<any>[]) => void,\n ): Promise<ReactiveObject<T>[]> => {\n // Find or create mutable schema.\n const schema =\n (await space.db.schemaRegistry.query({ typename: type.typename }).firstOrUndefined()) ??\n (await space.db.schemaRegistry.register([type]))[0];\n\n // Create objects.\n const generate = createAsyncGenerator(generator, schema.snapshot, { db: space.db });\n const objects = await generate.createObjects(n);\n\n // Find or create table and view.\n const { objects: tables } = await space.db.query(Filter.schema(TableType)).run();\n const table = tables.find((table) => table.view?.target?.query?.typename === type.typename);\n if (!table) {\n const name = type.typename.split('/').pop() ?? type.typename;\n const view = createView({ name, typename: type.typename, jsonSchema: schema.jsonSchema });\n const table = space.db.add(create(TableType, { name, view: makeRef(view) }));\n cb?.([table]);\n }\n\n return objects;\n };\n};\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 <div className='grid grid-cols-subgrid col-span-3'>\n <div className='px-2 text-sm text-primary-500'>{label}</div>\n <div className='px-2 text-xs text-subdued text-right'>count</div>\n </div>\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-green-500'>{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 { type ComputeGraphModel, EmailTriggerOutput, NODE_INPUT } from '@dxos/conductor';\nimport { AST, ObjectId, S, toJsonSchema } from '@dxos/echo-schema';\nimport { FunctionTrigger, TriggerKind, type TriggerType } from '@dxos/functions/types';\nimport { invariant } from '@dxos/invariant';\nimport { DXN } from '@dxos/keys';\nimport { create, makeRef } from '@dxos/live-object';\nimport { Filter, type Space } from '@dxos/react-client/echo';\nimport {\n type ComputeShape,\n createAppend,\n createChat,\n createComputeGraph,\n createConstant,\n createFunction,\n createGpt,\n createQueue,\n createSurface,\n createRandom,\n createTemplate,\n createText,\n createTrigger,\n} from '@dxos/react-ui-canvas-compute';\nimport {\n CanvasBoardType,\n CanvasGraphModel,\n pointMultiply,\n pointsToRect,\n rectToPoints,\n} from '@dxos/react-ui-canvas-editor';\nimport { TableType } from '@dxos/react-ui-table';\nimport { range } from '@dxos/util';\n\nimport { type ObjectGenerator } from './ObjectGenerator';\n\nexport enum PresetName {\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 FOREX_FUNCTION_CALL = 'forex-function-call',\n TIMER_TICK_QUEUE = 'timerTick-queue',\n DISCORD_MESSAGES = 'discord-messages',\n KANBAN_QUEUE = 'kanban-queue',\n}\n\nexport const presets = {\n schemas: [CanvasBoardType, FunctionTrigger],\n types: Object.values(PresetName).map((name) => ({ typename: name })),\n items: [\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: FunctionTrigger | 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: 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({ source: trigger.id, target: gpt.id, input: 'prompt', output: 'bodyText' })\n .createEdge({ source: gpt.id, target: text.id, output: 'text' })\n .createEdge({ source: queueId.id, target: append.id, input: 'id' })\n .createEdge({ source: gpt.id, target: append.id, output: 'messages', input: 'items' });\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 TriggerKind.Subscription,\n (triggerSpec) => (triggerSpec.filter = { type: 'dxn:type:dxos.org/type/Chess' }),\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 TriggerKind.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 [\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.schema(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: 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 = AST.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 = 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({ source: queueId.id, target: append.id, input: 'id' })\n .createEdge({ source: gpt.id, target: append.id, output: 'messages', input: 'items' });\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 [\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.schema(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: 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 = AST.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 = S.extend(EmailTriggerOutput, S.Struct({ text: S.String }));\n templateComputeNode.inputSchema = 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({ source: sourceCurrency.id, target: converter.id, input: 'from' })\n .createEdge({ source: targetCurrency.id, target: converter.id, input: 'to' })\n .createEdge({ source: converter.id, target: view.id, output: 'rate' });\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: FunctionTrigger | undefined;\n canvasModel.builder.call((builder) => {\n const triggerShape = createTrigger({\n spaceId: space.id,\n triggerKind: 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({ value: '1088569858767212554', ...position({ x: -10, y: 0 }) }),\n );\n const queueId = canvasModel.createNode(\n createConstant({\n value: new DXN(DXN.kind.QUEUE, ['data', space.id, 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(createQueue(position({ x: 0, y: 12 })));\n\n builder\n .createEdge({ source: trigger.id, target: converter.id, input: 'tick' })\n .createEdge({ source: channelId.id, target: converter.id, input: 'channelId' })\n .createEdge({ source: queueId.id, target: converter.id, input: 'queueId' })\n .createEdge({ source: converter.id, target: view.id, output: 'newMessages' })\n .createEdge({ source: queueId.id, target: queue.id, input: 'input' });\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 [\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.schema(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.schema(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: 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 TriggerKind>(\n space: Space,\n triggerKind: SpecType,\n initSpec: (spec: Extract<TriggerType, { type: 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: FunctionTrigger | 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({ source: trigger.id, target: template.id, output: triggerOutputName, input: 'type' })\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.type === triggerKind, 'No trigger spec.');\n initSpec(triggerSpec as any);\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 = ['{', ' \"@type\": \"{{type}}\",', ' \"id\": \"@{{changeId}}\"', '}'].join('\\n');\n templateComputeNode.inputSchema = toJsonSchema(S.Struct({ type: S.String, changeId: S.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 create(CanvasBoardType, {\n name,\n computeGraph: makeRef(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, 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 createQueue(\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: FunctionTrigger | undefined, computeModel: ComputeGraphModel) => {\n invariant(functionTrigger);\n functionTrigger.function = DXN.fromLocalObjectId(computeModel.root.id).toString();\n functionTrigger.meta ??= {};\n const inputNode = computeModel.nodes.find((node) => node.type === NODE_INPUT)!;\n functionTrigger.meta.computeNodeId = inputNode.id;\n};\n\ntype RawPositionInput = { centerX: number; centerY: number; width: number; height: number };\n\nconst rawPosition = (args: RawPositionInput) => {\n return { center: { x: args.centerX, y: args.centerY }, size: { width: args.width, height: args.height } };\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 { center: { x, y }, size: width && height ? { width, height } : undefined };\n } else {\n return { center: { x, y } };\n }\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { SpaceGenerator } from './SpaceGenerator';\n\nexport default SpaceGenerator;\n"],
5
- "mappings": ";AAIA,OAAOA,UAASC,aAAaC,SAASC,gBAAgB;AAEtD,SAASC,cAAcC,2BAA2B;AAClD,SAASC,gBAAAA,qBAAoB;AAC7B,SAASC,sBAAsB;AAC/B,SAASC,UAAAA,eAAmC;AAC5C,SAASC,WAAW;AACpB,SAASC,gBAAAA,qBAAoB;AAC7B,SAASC,aAAAA,kBAAiB;AAC1B,SAASC,eAAAA,oBAAmB;AAC5B,SAASC,mBAAmB;AAC5B,SAASC,iBAAiB;AAC1B,SAASC,mBAA+B;AACxC,SAASC,cAAAA,aAAYC,OAAOC,SAASC,sBAAsB;AAC3D,SAASC,yBAAyB;AAClC,SAASC,iBAAiBC,aAAAA,kBAAiB;AAC3C,SAASC,eAAe;AACxB,SAASC,iBAAiBC,gBAAgB;;;ACjB1C,SAASC,2BAA2B;AACpC,SAASC,cAAcC,mBAAmBC,gBAAgBC,YAAYC,mBAAmB;AACzF,SAASC,gBAAmD;AAC5D,SAASC,WAAW;AACpB,SAASC,QAAQC,eAAoC;AACrD,SAASC,oBAAoB;AAC7B,SAASC,mBAAmB;AAC5B,SAASC,iBAAiC;AAC1C,SAASC,YAAYC,mBAAmB;AACxC,SAASC,aAAa;AACtB,SAASC,cAA0B;AACnC,SAASC,iBAAiB;AAC1B,SAASC,YAAYC,gBAAgB;AACrC,SAASC,4BAAiD;AAC1D,SAASC,aAAa;AAEtB,IAAMC,YAA4BC;AAgB3B,IAAMC,mBAAmB,oBAAIC,IAAkC;EACpE;IACEC,aAAaC;IACb,OAAOC,OAAOC,GAAGC,OAAAA;AACf,YAAMC,UAAUC,MAAMH,CAAAA,EAAGI,IAAI,MAAA;AAC3B,eAAOL,MAAMM,GAAGC,IACdC,OAAOV,cAAc;UACnBW,MAAMd,MAAMe,SAASC,YAAW;UAChCC,SAASC,QAAQL,OAAOM,UAAU;YAAEF,SAASjB,MAAMoB,MAAMC,UAAU,CAAA;UAAG,CAAA,CAAA;UACtEC,SAAS,CAAA;QACX,CAAA,CAAA;MAEJ,CAAA;AAEAf,WAAKC,OAAAA;AACL,aAAOA;IACT;;EAEF;IACEe,YAAYnB;IACZ,OAAOC,OAAOC,GAAGC,OAAAA;AACf,YAAMC,UAAUC,MAAMH,CAAAA,EAAGI,IAAI,MAAA;AAE3B,cAAMc,MAAMnB,MAAMM,GAAGC,IACnBC,OAAOU,aAAa;UAClBT,MAAMd,MAAMe,SAASC,YAAW;UAChCS,QAAQP,QAAQL,OAAOa,YAAY;YAAET,SAAS,CAAC;UAAE,CAAA,CAAA;QACnD,CAAA,CAAA;AAGF,eAAOO;MACT,CAAA;AAEAjB,WAAKC,OAAAA;AACL,aAAOA;IACT;;;EAGF;IACEmB,UAAUvB;IACV,OAAOC,OAAOC,GAAGC,OAAAA;AACf,YAAMC,UAAUC,MAAMH,CAAAA,EAAGI,IAAI,MAAA;AAC3B,cAAMkB,QAAmC,CAAC;AAC1C,cAAMC,QAAO,oBAAIC,KAAAA,GAAOC,YAAW;AACnC,cAAMC,OAAO;AACb,cAAMC,OAAO;AACb,iBAASC,MAAM,GAAGA,OAAOF,MAAME,OAAO;AACpC,mBAASC,MAAM,GAAGA,OAAOF,MAAME,OAAO;AACpC,kBAAMC,OAAOC,oBAAoB;cAAEH;cAAKC;YAAI,CAAA;AAC5C,gBAAIA,QAAQ,GAAG;AACbP,oBAAMQ,IAAAA,IAAQ;gBAAEE,OAAO,GAAGT,IAAAA,KAASK,GAAAA;cAAM;YAC3C,WAAWC,QAAQF,MAAM;AACvB,oBAAMM,OAAOF,oBAAoB;gBAAEH;gBAAKC,KAAK;cAAE,CAAA;AAC/C,oBAAMK,KAAKH,oBAAoB;gBAAEH;gBAAKC,KAAKF,OAAO;cAAE,CAAA;AACpDL,oBAAMQ,IAAAA,IAAQ;gBAAEE,OAAO,QAAQC,IAAAA,IAAQC,EAAAA;cAAM;YAC/C,WAAWL,MAAM,KAAKA,MAAMF,OAAO,GAAG;AACpCL,oBAAMQ,IAAAA,IAAQ;gBAAEE,OAAOG,KAAKC,MAAMD,KAAKE,OAAM,IAAK,GAAA;cAAQ;YAC5D;UACF;QACF;AAIA,eAAOtC,MAAMM,GAAGC,IACdgC,YAAY;UACV9B,MAAMd,MAAMe,SAASC,YAAW;UAChCY;QACF,CAAA,CAAA;MAEJ,CAAA;AAEArB,WAAKC,OAAAA;AACL,aAAOA;IACT;;EAEF;IACEqC,aAAazC;IACb,OAAOC,OAAOC,GAAGC,OAAAA;AACf,YAAMC,UAAUC,MAAMH,GAAG,MAAA;AACvB,cAAMwC,QAAQC,kBAAkBlC,OAAM;AACtCiC,cAAME,QACHC,WAAW;UAAEC,IAAI;UAAaC,MAAMC;QAAW,CAAA,EAC/CH,WAAW;UAAEC,IAAI;UAAWC,MAAM;QAAM,CAAA,EACxCF,WAAW;UACVC,IAAI;UACJC,MAAM;UACNb,OAAO,IAAIe,IAAIA,IAAIC,KAAKC,OAAO;YAAC;YAAQlD,MAAM6C;YAAIM,SAASb,OAAM;WAAG,EAAEc,SAAQ;QAChF,CAAA,EACCR,WAAW;UAAEC,IAAI;UAAcC,MAAM;QAAS,CAAA,EAC9CF,WAAW;UAAEC,IAAI;UAAcC,MAAMO;QAAY,CAAA,EACjDC,WAAW;UAAEC,MAAM;UAAaC,UAAU;QAAS,GAAG;UAAED,MAAM;UAAWC,UAAU;QAAS,CAAA,EAC5FF,WAAW;UAAEC,MAAM;UAAWC,UAAU;QAAO,GAAG;UAAED,MAAM;UAAcC,UAAU;QAAO,CAAA,EACzFF,WAAW;UAAEC,MAAM;UAAgBC,UAAUC;QAAe,GAAG;UAAEF,MAAM;UAAcC,UAAU;QAAK,CAAA,EACpGF,WAAW;UAAEC,MAAM;UAAWC,UAAU;QAAW,GAAG;UAAED,MAAM;UAAcC,UAAU;QAAQ,CAAA,EAC9FF,WAAW;UAAEC,MAAM;UAAgBC,UAAUC;QAAe,GAAG;UAAEF,MAAM;UAAcC,UAAU;QAAQ,CAAA;AAE1G,eAAOxD,MAAMM,GAAGC,IAAIkC,MAAMiB,IAAI;MAChC,CAAA;AACAxD,WAAKC,OAAAA;AACL,aAAOA;IACT;;CAEH;AAEM,IAAMwD,kBAAkB,CAAuBb,SAAAA;AACpD,SAAO,OACL9C,OACAC,GACAC,OAAAA;AAGA,UAAM0D,SACH,MAAM5D,MAAMM,GAAGuD,eAAeC,MAAM;MAAE/D,UAAU+C,KAAK/C;IAAS,CAAA,EAAGgE,iBAAgB,MACjF,MAAM/D,MAAMM,GAAGuD,eAAeG,SAAS;MAAClB;KAAK,GAAG,CAAA;AAGnD,UAAMmB,WAAWC,qBAAqBxE,WAAWkE,OAAOO,UAAU;MAAE7D,IAAIN,MAAMM;IAAG,CAAA;AACjF,UAAMH,UAAU,MAAM8D,SAASG,cAAcnE,CAAAA;AAG7C,UAAM,EAAEE,SAASkE,OAAM,IAAK,MAAMrE,MAAMM,GAAGwD,MAAMQ,OAAOV,OAAOW,SAAAA,CAAAA,EAAYC,IAAG;AAC9E,UAAMC,QAAQJ,OAAOK,KAAK,CAACD,WAAUA,OAAME,MAAMC,QAAQd,OAAO/D,aAAa+C,KAAK/C,QAAQ;AAC1F,QAAI,CAAC0E,OAAO;AACV,YAAMhE,OAAOqC,KAAK/C,SAAS8E,MAAM,GAAA,EAAKC,IAAG,KAAMhC,KAAK/C;AACpD,YAAM4E,OAAOI,WAAW;QAAEtE;QAAMV,UAAU+C,KAAK/C;QAAUiF,YAAYpB,OAAOoB;MAAW,CAAA;AACvF,YAAMP,SAAQzE,MAAMM,GAAGC,IAAIC,OAAO+D,WAAW;QAAE9D;QAAMkE,MAAM9D,QAAQ8D,IAAAA;MAAM,CAAA,CAAA;AACzEzE,WAAK;QAACuE;OAAM;IACd;AAEA,WAAOtE;EACT;AACF;;;ACnKA,OAAO8E,WAAW;AAElB,SAASC,kBAAkB;AASpB,IAAMC,cAAc,CAAC,EAAEC,OAAOC,UAAU,CAAC,GAAGC,OAAOC,QAAO,MAAoB;AACnF,SACE,sBAAA,cAACC,OAAAA;IAAIC,WAAU;KACb,sBAAA,cAACD,OAAAA;IAAIC,WAAU;KACb,sBAAA,cAACD,OAAAA;IAAIC,WAAU;KAAiCH,KAAAA,GAChD,sBAAA,cAACE,OAAAA;IAAIC,WAAU;KAAuC,OAAA,CAAA,GAEvDL,MAAMM,IAAI,CAACC,SACV,sBAAA,cAACH,OAAAA;IAAII,KAAKD,KAAKE;IAAUJ,WAAU;KACjC,sBAAA,cAACD,OAAAA;IAAIC,WAAU;KAAyCE,KAAKE,QAAQ,GACrE,sBAAA,cAACL,OAAAA;IAAIC,WAAU;KAA6BJ,QAAQM,KAAKE,QAAQ,KAAK,CAAA,GACtE,sBAAA,cAACC,YAAAA;IACCC,SAAQ;IACRC,MAAK;IACLC,UAAAA;IACAX,OAAM;IACNC,SAAS,MAAMA,QAAQI,KAAKE,QAAQ;;AAMhD;;;ACjCA,SAAiCK,oBAAoBC,cAAAA,mBAAkB;AACvE,SAASC,KAAKC,YAAAA,WAAUC,GAAGC,oBAAoB;AAC/C,SAASC,iBAAiBC,mBAAqC;AAC/D,SAASC,iBAAiB;AAC1B,SAASC,OAAAA,YAAW;AACpB,SAASC,UAAAA,SAAQC,WAAAA,gBAAe;AAChC,SAASC,UAAAA,eAA0B;AACnC,SAEEC,cACAC,YACAC,oBACAC,gBACAC,gBACAC,WACAC,aACAC,eACAC,cACAC,gBACAC,YACAC,qBACK;AACP,SACEC,iBACAC,kBACAC,eACAC,cACAC,oBACK;AACP,SAASC,aAAAA,kBAAiB;AAC1B,SAASC,SAAAA,cAAa;;;UAIVC,aAAAA;;;;;;;;;;GAAAA,eAAAA,aAAAA,CAAAA,EAAAA;AAYL,IAAMC,UAAU;EACrBC,SAAS;IAACT;IAAiBnB;;EAC3B6B,OAAOC,OAAOC,OAAOL,UAAAA,EAAYM,IAAI,CAACC,UAAU;IAAEC,UAAUD;EAAK,EAAA;EACjEE,OAAO;IACL;;MAEE,OAAOC,OAAOC,GAAGC,OAAAA;AACf,cAAMC,UAAUd,OAAMY,GAAG,MAAA;AACvB,gBAAMG,cAAcpB,iBAAiBhB,OAAM;AAE3C,cAAIqC;AACJD,sBAAYE,QAAQC,KAAK,CAACD,YAAAA;AACxB,kBAAME,MAAMJ,YAAYK,WAAWjC,UAAUkC,SAAS;cAAEC,GAAG;cAAGC,GAAG;YAAI,CAAA,CAAA,CAAA;AACrE,kBAAMC,eAAe/B,cAAc;cACjCgC,SAASd,MAAMe;cACfC,aAAanD,YAAYoD;cACzB,GAAGP,SAAS;gBAAEC,GAAG;gBAAKC,GAAG;cAAG,CAAA;YAC9B,CAAA;AACA,kBAAMM,UAAUd,YAAYK,WAAWI,YAAAA;AACvC,kBAAMM,OAAOf,YAAYK,WAAW5B,WAAW6B,SAAS;cAAEC,GAAG;cAAIC,GAAG;cAAGQ,OAAO;cAAIC,QAAQ;YAAG,CAAA,CAAA,CAAA;AAC7F,kBAAM,EAAEC,QAAO,IAAKC,WAAWvB,OAAOI,WAAAA;AACtC,kBAAMoB,SAASpB,YAAYK,WAAWtC,aAAauC,SAAS;cAAEC,GAAG;cAAIC,GAAG;YAAE,CAAA,CAAA,CAAA;AAE1EN,oBACGmB,WAAW;cAAEC,QAAQR,QAAQH;cAAIY,QAAQnB,IAAIO;cAAIa,OAAO;cAAUC,QAAQ;YAAW,CAAA,EACrFJ,WAAW;cAAEC,QAAQlB,IAAIO;cAAIY,QAAQR,KAAKJ;cAAIc,QAAQ;YAAO,CAAA,EAC7DJ,WAAW;cAAEC,QAAQJ,QAAQP;cAAIY,QAAQH,OAAOT;cAAIa,OAAO;YAAK,CAAA,EAChEH,WAAW;cAAEC,QAAQlB,IAAIO;cAAIY,QAAQH,OAAOT;cAAIc,QAAQ;cAAYD,OAAO;YAAQ,CAAA;AAEtFvB,8BAAkBQ,aAAaR,gBAAiBsB;UAClD,CAAA;AAEA,gBAAMG,eAAezD,mBAAmB+B,WAAAA;AAExC2B,wBAAc1B,iBAAiByB,YAAAA;AAE/B,iBAAOE,WAAAA,qBAAiChC,OAAOI,aAAa0B,YAAAA;QAC9D,CAAA;AACA5B,aAAKC,OAAAA;AACL,eAAOA;MACT;;IAGF;;MAEE,OAAOH,OAAOC,GAAGC,OAAAA;AACf,cAAMC,UAAUd,OAAMY,GAAG,MAAA;AACvB,gBAAM,EAAEG,aAAa0B,aAAY,IAAKG,sBACpCjC,OACAnC,YAAYqE,cACZ,CAACC,gBAAiBA,YAAYC,SAAS;YAAEC,MAAM;UAA+B,GAC9E,MAAA;AAEF,iBAAOL,WAAAA,sBAA2ChC,OAAOI,aAAa0B,YAAAA;QACxE,CAAA;AACA5B,aAAKC,OAAAA;AACL,eAAOA;MACT;;IAGF;;MAEE,OAAOH,OAAOC,GAAGC,OAAAA;AACf,cAAMC,UAAUd,OAAMY,GAAG,MAAA;AACvB,gBAAM,EAAEG,aAAa0B,aAAY,IAAKG,sBACpCjC,OACAnC,YAAYyE,OACZ,CAACH,gBAAiBA,YAAYI,OAAO,iBACrC,QAAA;AAEF,iBAAOP,WAAAA,mBAAwChC,OAAOI,aAAa0B,YAAAA;QACrE,CAAA;AACA5B,aAAKC,OAAAA;AACL,eAAOA;MACT;;IAGF;;MAEE,OAAOH,OAAOC,GAAGC,OAAAA;AACf,cAAMC,UAAUd,OAAMY,GAAG,MAAA;AACvB,gBAAMG,cAAcpB,iBAAiBhB,OAAM;AAE3C,gBAAMwE,UAAUxC,MAAMyC,GAAGC,MAAMxE,QAAOyE,OAAOvD,UAAAA,CAAAA,EAAYwD,QAAO;AAChE,gBAAMC,aAAaL,QAAQM,KAAK,CAACC,MAAMA,EAAEC,QAAQC,MAAMtB,QAAQe,OAAO5C,UAAUoD,SAAS,OAAA,CAAA;AACzFpF,oBAAU+E,YAAY,0BAAA;;;;;;;;;AAEtB,gBAAMM,WAAW/C,YAAYK,WAC3B7B,eAAe;YACbwE,WAAW;YACX,GAAGC,YAAY;cAAEC,SAAS;cAAKC,SAAS;cAAKnC,OAAO;cAAKC,QAAQ;YAAI,CAAA;UACvE,CAAA,CAAA;AAEF,gBAAMmC,kBAAkB;YAAC;;AAEzB,cAAInD;AACJD,sBAAYE,QAAQC,KAAK,CAACD,YAAAA;AACxB,kBAAMO,eAAe/B,cAAc;cACjCgC,SAASd,MAAMe;cACfC,aAAanD,YAAY4F;cACzB,GAAG/C,SAAS;gBAAEC,GAAG;gBAAKC,GAAG;cAAG,CAAA;YAC9B,CAAA;AACA,kBAAMM,UAAUd,YAAYK,WAAWI,YAAAA;AAEvC,kBAAM6C,UAAUtD,YAAYK,WAC1BnC,eAAe;cACbqF,OAAO5F,KAAI6F,kBAAkBf,WAAW9B,EAAE,EAAE8C,SAAQ;cACpD,GAAGnD,SAAS;gBAAEC,GAAG;gBAAKC,GAAG;gBAAGQ,OAAO;gBAAGC,QAAQ;cAAE,CAAA;YAClD,CAAA,CAAA;AAGF,kBAAMyC,gBAAgB1D,YAAYK,WAAWtC,aAAauC,SAAS;cAAEC,GAAG;cAAIC,GAAG;YAAE,CAAA,CAAA,CAAA;AAEjF,kBAAMmD,aAAavG,IAAIwG,sBAAsB1G,mBAAmB2G,GAAG;AACnE,qBAASC,IAAI,GAAGA,IAAIH,WAAWI,QAAQD,KAAK;AAC1C,oBAAME,WAAWL,WAAWG,CAAAA,EAAGrE,KAAKgE,SAAQ;AAC5CvD,sBAAQmB,WAAW;gBAAEC,QAAQR,QAAQH;gBAAIY,QAAQwB,SAASpC;gBAAIa,OAAOwC;gBAAUvC,QAAQuC;cAAS,CAAA;AAChGZ,8BAAgBa,KAAK,MAAMD,QAAAA,SAAiBA,QAAAA,SAAiBF,MAAMH,WAAWI,SAAS,IAAI,KAAK,IAAE;YACpG;AACAX,4BAAgBa,KAAK,GAAA;AAErB/D,oBACGmB,WAAW;cAAEC,QAAQgC,QAAQ3C;cAAIY,QAAQmC,cAAc/C;cAAIa,OAAO;YAAK,CAAA,EACvEH,WAAW;cAAEC,QAAQyB,SAASpC;cAAIY,QAAQmC,cAAc/C;cAAIa,OAAO;YAAQ,CAAA;AAE9EvB,8BAAkBQ,aAAaR,gBAAiBsB;UAClD,CAAA;AAEA,gBAAMG,eAAezD,mBAAmB+B,WAAAA;AAExC,gBAAMkE,sBAAsBxC,aAAayC,MAAMzB,KAAK,CAAC7C,OAAMA,GAAEc,OAAOoC,SAASqB,IAAI;AACjF1G,oBAAUwG,qBAAqB,0CAAA;;;;;;;;;AAC/BA,8BAAoBX,QAAQH,gBAAgBiB,KAAK,IAAA;AACjDH,8BAAoBI,cAAc/G,aAAaL,kBAAAA;AAE/CyE,wBAAc1B,iBAAiByB,YAAAA;AAE/B,iBAAOE,WAAAA,eAAmChC,OAAOI,aAAa0B,YAAAA;QAChE,CAAA;AACA5B,aAAKC,OAAAA;AACL,eAAOA;MACT;;IAGF;;MAEE,OAAOH,OAAOC,GAAGC,OAAAA;AACf,cAAMC,UAAUd,OAAMY,GAAG,MAAA;AACvB,gBAAMG,cAAcpB,iBAAiBhB,OAAM;AAE3CoC,sBAAYE,QAAQC,KAAK,CAACD,YAAAA;AACxB,kBAAME,MAAMJ,YAAYK,WAAWjC,UAAUkC,SAAS;cAAEC,GAAG;cAAGC,GAAG;YAAI,CAAA,CAAA,CAAA;AACrE,kBAAM+D,OAAOvE,YAAYK,WAAWrC,WAAWsC,SAAS;cAAEC,GAAG;cAAKC,GAAG;YAAG,CAAA,CAAA,CAAA;AACxE,kBAAMO,OAAOf,YAAYK,WAAW5B,WAAW6B,SAAS;cAAEC,GAAG;cAAIC,GAAG;cAAGQ,OAAO;cAAIC,QAAQ;YAAG,CAAA,CAAA,CAAA;AAC7F,kBAAM,EAAEC,QAAO,IAAKC,WAAWvB,OAAOI,WAAAA;AAEtC,kBAAMoB,SAASpB,YAAYK,WAAWtC,aAAauC,SAAS;cAAEC,GAAG;cAAIC,GAAG;YAAE,CAAA,CAAA,CAAA;AAE1EN,oBACGmB,WAAW;cAAEC,QAAQiD,KAAK5D;cAAIY,QAAQnB,IAAIO;cAAIa,OAAO;YAAS,CAAA,EAC9DH,WAAW;cAAEC,QAAQlB,IAAIO;cAAIY,QAAQR,KAAKJ;cAAIc,QAAQ;YAAO,CAAA,EAC7DJ,WAAW;cAAEC,QAAQJ,QAAQP;cAAIY,QAAQH,OAAOT;cAAIa,OAAO;YAAK,CAAA,EAChEH,WAAW;cAAEC,QAAQlB,IAAIO;cAAIY,QAAQH,OAAOT;cAAIc,QAAQ;cAAYD,OAAO;YAAQ,CAAA;UACxF,CAAA;AAEA,gBAAME,eAAezD,mBAAmB+B,WAAAA;AAExC,iBAAO4B,WAAAA,iBAAgChC,OAAOI,aAAa0B,YAAAA;QAC7D,CAAA;AACA5B,aAAKC,OAAAA;AACL,eAAOA;MACT;;IAGF;;MAEE,OAAOH,OAAOC,GAAGC,OAAAA;AACf,cAAMC,UAAUd,OAAMY,GAAG,MAAA;AACvB,gBAAMG,cAAcpB,iBAAiBhB,OAAM;AAE3C,gBAAMwE,UAAUxC,MAAMyC,GAAGC,MAAMxE,QAAOyE,OAAOvD,UAAAA,CAAAA,EAAYwD,QAAO;AAChE,gBAAMC,aAAaL,QAAQM,KAAK,CAACC,MAAMA,EAAEC,QAAQC,MAAMtB,QAAQe,OAAO5C,UAAUoD,SAAS,OAAA,CAAA;AACzFpF,oBAAU+E,YAAY,0BAAA;;;;;;;;;AAEtB,gBAAMM,WAAW/C,YAAYK,WAC3B7B,eAAe;YACbwE,WAAW;YACX,GAAGC,YAAY;cAAEC,SAAS;cAAKC,SAAS;cAAMnC,OAAO;cAAKC,QAAQ;YAAI,CAAA;UACxE,CAAA,CAAA;AAEF,gBAAMmC,kBAAkB;YAAC;;AAEzB,cAAInD;AACJD,sBAAYE,QAAQC,KAAK,CAACD,YAAAA;AACxB,kBAAME,MAAMJ,YAAYK,WACtBjC,UAAU6E,YAAY;cAAEC,SAAS;cAAMC,SAAS;cAAMnC,OAAO;cAAKC,QAAQ;YAAI,CAAA,CAAA,CAAA;AAEhF,kBAAMuD,eAAexE,YAAYK,WAC/BnC,eAAe;cACbqF,OAAO;cACP,GAAGN,YAAY;gBAAEC,SAAS;gBAAMC,SAAS;gBAAMnC,OAAO;gBAAKC,QAAQ;cAAI,CAAA;YACzE,CAAA,CAAA;AAEF,kBAAMR,eAAe/B,cAAc;cACjCgC,SAASd,MAAMe;cACfC,aAAanD,YAAY4F;cACzB,GAAGJ,YAAY;gBAAEC,SAAS;gBAAMC,SAAS;gBAAMnC,OAAO;gBAAKC,QAAQ;cAAI,CAAA;YACzE,CAAA;AACA,kBAAMH,UAAUd,YAAYK,WAAWI,YAAAA;AAEvC,kBAAM,EAAES,QAAO,IAAKC,WAAWvB,OAAOI,aAAa;cACjDyE,YAAY;gBAAEvB,SAAS;gBAAMC,SAAS;gBAAKnC,OAAO;gBAAKC,QAAQ;cAAI;cACnEyD,eAAe;gBAAExB,SAAS;gBAAMC,SAAS;gBAAKnC,OAAO;gBAAKC,QAAQ;cAAI;YACxE,CAAA;AACA,kBAAM0D,gBAAgB3E,YAAYK,WAChCtC,aAAakF,YAAY;cAAEC,SAAS;cAAKC,SAAS;cAAInC,OAAO;cAAKC,QAAQ;YAAI,CAAA,CAAA,CAAA;AAGhF,kBAAMqC,UAAUtD,YAAYK,WAC1BnC,eAAe;cACbqF,OAAO5F,KAAI6F,kBAAkBf,WAAW9B,EAAE,EAAE8C,SAAQ;cACpD,GAAGR,YAAY;gBAAEC,SAAS;gBAAMC,SAAS;gBAAMnC,OAAO;gBAAKC,QAAQ;cAAI,CAAA;YACzE,CAAA,CAAA;AAGF,kBAAMyC,gBAAgB1D,YAAYK,WAChCtC,aAAakF,YAAY;cAAEC,SAAS;cAAKC,SAAS;cAAMnC,OAAO;cAAKC,QAAQ;YAAI,CAAA,CAAA,CAAA;AAGlFmC,4BAAgBa,KAAK,2BAAA;AACrB/D,oBAAQmB,WAAW;cAAEC,QAAQlB,IAAIO;cAAIY,QAAQwB,SAASpC;cAAIa,OAAO;cAAQC,QAAQ;YAAO,CAAA;AAExF,kBAAMkC,aAAavG,IAAIwG,sBAAsB1G,mBAAmB2G,GAAG;AACnE,qBAASC,IAAI,GAAGA,IAAIH,WAAWI,QAAQD,KAAK;AAC1C,oBAAME,WAAWL,WAAWG,CAAAA,EAAGrE,KAAKgE,SAAQ;AAC5CvD,sBAAQmB,WAAW;gBAAEC,QAAQR,QAAQH;gBAAIY,QAAQwB,SAASpC;gBAAIa,OAAOwC;gBAAUvC,QAAQuC;cAAS,CAAA;AAChGZ,8BAAgBa,KAAK,MAAMD,QAAAA,SAAiBA,QAAAA,SAAiBF,MAAMH,WAAWI,SAAS,IAAI,KAAK,IAAE;YACpG;AACAX,4BAAgBa,KAAK,GAAA;AAErB/D,oBACGmB,WAAW;cAAEC,QAAQgC,QAAQ3C;cAAIY,QAAQmC,cAAc/C;cAAIa,OAAO;YAAK,CAAA,EACvEH,WAAW;cAAEC,QAAQJ,QAAQP;cAAIY,QAAQoD,cAAchE;cAAIa,OAAO;YAAK,CAAA,EACvEH,WAAW;cAAEC,QAAQlB,IAAIO;cAAIY,QAAQoD,cAAchE;cAAIc,QAAQ;cAAYD,OAAO;YAAQ,CAAA,EAC1FH,WAAW;cAAEC,QAAQkD,aAAa7D;cAAIY,QAAQnB,IAAIO;cAAIa,OAAO;YAAe,CAAA,EAC5EH,WAAW;cAAEC,QAAQR,QAAQH;cAAIY,QAAQnB,IAAIO;cAAIa,OAAO;cAAUC,QAAQ;YAAO,CAAA,EACjFJ,WAAW;cAAEC,QAAQyB,SAASpC;cAAIY,QAAQmC,cAAc/C;cAAIa,OAAO;YAAQ,CAAA;AAE9EvB,8BAAkBQ,aAAaR,gBAAiBsB;UAClD,CAAA;AAEA,gBAAMG,eAAezD,mBAAmB+B,WAAAA;AAExC,gBAAMkE,sBAAsBxC,aAAayC,MAAMzB,KAAK,CAAC7C,OAAMA,GAAEc,OAAOoC,SAASqB,IAAI;AACjF1G,oBAAUwG,qBAAqB,0CAAA;;;;;;;;;AAC/BA,8BAAoBX,QAAQH,gBAAgBiB,KAAK,IAAA;AACjD,gBAAMO,iBAAiBtH,EAAEuH,OAAO3H,oBAAoBI,EAAEwH,OAAO;YAAE/D,MAAMzD,EAAEyH;UAAO,CAAA,CAAA;AAC9Eb,8BAAoBI,cAAc/G,aAAaqH,cAAAA;AAE/CjD,wBAAc1B,iBAAiByB,YAAAA;AAE/B,iBAAOE,WAAAA,0BAA0ChC,OAAOI,aAAa0B,YAAAA;QACvE,CAAA;AACA5B,aAAKC,OAAAA;AACL,eAAOA;MACT;;IAGF;;MAEE,OAAOH,OAAOC,GAAGC,OAAAA;AACf,cAAMC,UAAUd,OAAMY,GAAG,MAAA;AACvB,gBAAMG,cAAcpB,iBAAiBhB,OAAM;AAE3CoC,sBAAYE,QAAQC,KAAK,CAACD,YAAAA;AACxB,kBAAM8E,iBAAiBhF,YAAYK,WACjCnC,eAAe;cAAEqF,OAAO;cAAO,GAAGjD,SAAS;gBAAEC,GAAG;gBAAKC,GAAG;cAAG,CAAA;YAAG,CAAA,CAAA;AAEhE,kBAAMyE,iBAAiBjF,YAAYK,WACjCnC,eAAe;cAAEqF,OAAO;cAAO,GAAGjD,SAAS;gBAAEC,GAAG;gBAAKC,GAAG;cAAE,CAAA;YAAG,CAAA,CAAA;AAE/D,kBAAM0E,YAAYlF,YAAYK,WAAWlC,eAAemC,SAAS;cAAEC,GAAG;cAAGC,GAAG;YAAE,CAAA,CAAA,CAAA;AAC9E,kBAAMqC,OAAO7C,YAAYK,WAAW/B,cAAcgC,SAAS;cAAEC,GAAG;cAAIC,GAAG;YAAE,CAAA,CAAA,CAAA;AAEzEN,oBACGmB,WAAW;cAAEC,QAAQ0D,eAAerE;cAAIY,QAAQ2D,UAAUvE;cAAIa,OAAO;YAAO,CAAA,EAC5EH,WAAW;cAAEC,QAAQ2D,eAAetE;cAAIY,QAAQ2D,UAAUvE;cAAIa,OAAO;YAAK,CAAA,EAC1EH,WAAW;cAAEC,QAAQ4D,UAAUvE;cAAIY,QAAQsB,KAAKlC;cAAIc,QAAQ;YAAO,CAAA;UACxE,CAAA;AAEA,gBAAMC,eAAezD,mBAAmB+B,WAAAA;AAExC,iBAAO4B,WAAAA,uBAA2ChC,OAAOI,aAAa0B,YAAAA;QACxE,CAAA;AACA5B,aAAKC,OAAAA;AACL,eAAOA;MACT;;IAGF;;MAEE,OAAOH,OAAOC,GAAGC,OAAAA;AACf,cAAMC,UAAUd,OAAMY,GAAG,MAAA;AACvB,gBAAMG,cAAcpB,iBAAiBhB,OAAM;AAE3C,cAAIqC;AACJD,sBAAYE,QAAQC,KAAK,CAACD,YAAAA;AACxB,kBAAMO,eAAe/B,cAAc;cACjCgC,SAASd,MAAMe;cACfC,aAAanD,YAAYyE;cACzB,GAAG5B,SAAS;gBAAEC,GAAG;gBAAKC,GAAG;cAAG,CAAA;YAC9B,CAAA;AACA,kBAAMM,UAAUd,YAAYK,WAAWI,YAAAA;AAEvC,kBAAM0E,YAAYnF,YAAYK,WAC5BnC,eAAe;cAAEqF,OAAO;cAAuB,GAAGjD,SAAS;gBAAEC,GAAG;gBAAKC,GAAG;cAAE,CAAA;YAAG,CAAA,CAAA;AAE/E,kBAAMU,UAAUlB,YAAYK,WAC1BnC,eAAe;cACbqF,OAAO,IAAI5F,KAAIA,KAAIyH,KAAKC,OAAO;gBAAC;gBAAQzF,MAAMe;gBAAItD,UAASiI,OAAM;eAAG,EAAE7B,SAAQ;cAC9E,GAAGnD,SAAS;gBAAEC,GAAG;gBAAKC,GAAG;cAAE,CAAA;YAC7B,CAAA,CAAA;AAEF,kBAAM0E,YAAYlF,YAAYK,WAAWlC,eAAemC,SAAS;cAAEC,GAAG;cAAGC,GAAG;YAAE,CAAA,CAAA,CAAA;AAC9E,kBAAMqC,OAAO7C,YAAYK,WAAW5B,WAAW6B,SAAS;cAAEC,GAAG;cAAIC,GAAG;YAAE,CAAA,CAAA,CAAA;AACtE,kBAAM+E,QAAQvF,YAAYK,WAAWhC,YAAYiC,SAAS;cAAEC,GAAG;cAAGC,GAAG;YAAG,CAAA,CAAA,CAAA;AAExEN,oBACGmB,WAAW;cAAEC,QAAQR,QAAQH;cAAIY,QAAQ2D,UAAUvE;cAAIa,OAAO;YAAO,CAAA,EACrEH,WAAW;cAAEC,QAAQ6D,UAAUxE;cAAIY,QAAQ2D,UAAUvE;cAAIa,OAAO;YAAY,CAAA,EAC5EH,WAAW;cAAEC,QAAQJ,QAAQP;cAAIY,QAAQ2D,UAAUvE;cAAIa,OAAO;YAAU,CAAA,EACxEH,WAAW;cAAEC,QAAQ4D,UAAUvE;cAAIY,QAAQsB,KAAKlC;cAAIc,QAAQ;YAAc,CAAA,EAC1EJ,WAAW;cAAEC,QAAQJ,QAAQP;cAAIY,QAAQgE,MAAM5E;cAAIa,OAAO;YAAQ,CAAA;AAErEvB,8BAAkBQ,aAAaR,gBAAiBsB;UAClD,CAAA;AAEA,gBAAMG,eAAezD,mBAAmB+B,WAAAA;AACxC2B,wBAAc1B,iBAAiByB,YAAAA;AAE/B,iBAAOE,WAAAA,oBAAwChC,OAAOI,aAAa0B,YAAAA;QACrE,CAAA;AACA5B,aAAKC,OAAAA;AACL,eAAOA;MACT;;IAGF;;MAEE,OAAOH,OAAOC,GAAGC,OAAAA;AACf,cAAMC,UAAUd,OAAMY,GAAG,MAAA;AACvB,gBAAMG,cAAcpB,iBAAiBhB,OAAM;AAO3C,gBAAMwE,UAAUxC,MAAMyC,GAAGC,MAAMxE,QAAOyE,OAAOvD,UAAAA,CAAAA,EAAYwD,QAAO;AAChE,gBAAMgD,WAAWpD,QAAQM,KAAK,CAACC,MAAMA,EAAEC,QAAQC,MAAMtB,QAAQe,OAAO5C,UAAUoD,SAAS,SAAA,CAAA;AACvFpF,oBAAU8H,UAAU,oBAAA;;;;;;;;;AAEpB,cAAIvF;AACJD,sBAAYE,QAAQC,KAAK,CAACD,YAAAA;AACxB,kBAAMO,eAAe/B,cAAc;cACjCgC,SAASd,MAAMe;cACfC,aAAanD,YAAYgI;cACzB,GAAGnF,SAAS;gBAAEC,GAAG;gBAAKC,GAAG;cAAG,CAAA;YAC9B,CAAA;AACA,kBAAMM,UAAUd,YAAYK,WAAWI,YAAAA;AAEvC,kBAAM6C,UAAUtD,YAAYK,WAC1BnC,eAAe;cACbqF,OAAO5F,KAAI6F,kBAAkBgC,SAAS7E,EAAE,EAAE8C,SAAQ;cAClD,GAAGnD,SAAS;gBAAEC,GAAG;gBAAKC,GAAG;cAAE,CAAA;YAC7B,CAAA,CAAA;AAEF,kBAAMkD,gBAAgB1D,YAAYK,WAAWtC,aAAauC,SAAS;cAAEC,GAAG;cAAIC,GAAG;YAAE,CAAA,CAAA,CAAA;AAEjFN,oBACGmB,WAAW;cAAEC,QAAQgC,QAAQ3C;cAAIY,QAAQmC,cAAc/C;cAAIa,OAAO;YAAK,CAAA,EACvEH,WAAW;cAAEC,QAAQR,QAAQH;cAAIY,QAAQmC,cAAc/C;cAAIa,OAAO;cAASC,QAAQ;YAAO,CAAA;AAE7FxB,8BAAkBQ,aAAaR,gBAAiBsB;UAClD,CAAA;AAEA,gBAAMG,eAAezD,mBAAmB+B,WAAAA;AACxC2B,wBAAc1B,iBAAiByB,YAAAA;AAE/B,iBAAOE,WAAAA,gBAAoChC,OAAOI,aAAa0B,YAAAA;QACjE,CAAA;AACA5B,aAAKC,OAAAA;AACL,eAAOA;MACT;;;AAGN;AAEA,IAAM8B,wBAAwB,CAC5BjC,OACAgB,aACA8E,UACAC,sBAAAA;AAEA,QAAM3F,cAAcpB,iBAAiBhB,OAAM;AAE3C,QAAMmF,WAAW/C,YAAYK,WAC3B7B,eAAe;IACbwE,WAAW;IACX,GAAGC,YAAY;MAAEC,SAAS;MAAKC,SAAS;MAAKnC,OAAO;MAAKC,QAAQ;IAAI,CAAA;EACvE,CAAA,CAAA;AAGF,MAAIhB;AACJD,cAAYE,QAAQC,KAAK,CAACD,YAAAA;AACxB,UAAMO,eAAe/B,cAAc;MACjCgC,SAASd,MAAMe;MACfC;MACA,GAAGqC,YAAY;QAAEC,SAAS;QAAMC,SAAS;QAAMlC,QAAQ;QAAKD,OAAO;MAAI,CAAA;IACzE,CAAA;AACA,UAAMF,UAAUd,YAAYK,WAAWI,YAAAA;AACvC,UAAM,EAAES,QAAO,IAAKC,WAAWvB,OAAOI,aAAa;MACjD0E,eAAe;QAAExB,SAAS;QAAKC,SAAS;QAAKnC,OAAO;QAAKC,QAAQ;MAAI;IACvE,CAAA;AACA,UAAMG,SAASpB,YAAYK,WACzBtC,aAAakF,YAAY;MAAEC,SAAS;MAAKC,SAAS;MAAKnC,OAAO;MAAKC,QAAQ;IAAI,CAAA,CAAA,CAAA;AAEjF,UAAMqE,SAAStF,YAAYK,WACzB9B,aAAa0E,YAAY;MAAEC,SAAS;MAAMC,SAAS;MAAKnC,OAAO;MAAIC,QAAQ;IAAG,CAAA,CAAA,CAAA;AAGhFf,YACGmB,WAAW;MAAEC,QAAQJ,QAAQP;MAAIY,QAAQH,OAAOT;MAAIa,OAAO;IAAK,CAAA,EAChEH,WAAW;MAAEC,QAAQyB,SAASpC;MAAIY,QAAQH,OAAOT;MAAIa,OAAO;IAAQ,CAAA,EACpEH,WAAW;MAAEC,QAAQR,QAAQH;MAAIY,QAAQwB,SAASpC;MAAIc,QAAQkE;MAAmBnE,OAAO;IAAO,CAAA,EAC/FH,WAAW;MACVC,QAAQgE,OAAO3E;MACfY,QAAQwB,SAASpC;MACjBa,OAAO;IACT,CAAA;AAEFvB,sBAAkBQ,aAAaR,gBAAiBsB;AAChD,UAAMQ,cAAc9B,gBAAgB2F;AACpClI,cAAUqE,eAAeA,YAAYE,SAASrB,aAAa,oBAAA;;;;;;;;;AAC3D8E,aAAS3D,WAAAA;EACX,CAAA;AAEA,QAAML,eAAezD,mBAAmB+B,WAAAA;AAExC,QAAMkE,sBAAsBxC,aAAayC,MAAMzB,KAAK,CAAC7C,MAAMA,EAAEc,OAAOoC,SAASqB,IAAI;AACjF1G,YAAUwG,qBAAqB,0CAAA;;;;;;;;;AAC/BA,sBAAoBX,QAAQ;IAAC;IAAK;IAA0B;IAA2B;IAAKc,KAAK,IAAA;AACjGH,sBAAoBI,cAAc/G,aAAaD,EAAEwH,OAAO;IAAE7C,MAAM3E,EAAEyH;IAAQc,UAAUvI,EAAEyH;EAAO,CAAA,CAAA;AAE7FpD,gBAAc1B,iBAAiByB,YAAAA;AAE/B,SAAO;IAAE1B;IAAa0B;EAAa;AACrC;AAEA,IAAME,aAAa,CAACnC,MAAcG,OAAckG,QAA0BC,YAAAA;AACxE,SAAOnG,MAAMyC,GAAG2D,IACdpI,QAAOe,iBAAiB;IACtBc;IACAwG,cAAcpI,SAAQkI,QAAQG,IAAI;IAClCC,QAAQL,OAAOM;EACjB,CAAA,CAAA;AAEJ;AAEA,IAAMjF,aAAa,CACjBvB,OACAI,aACAqG,SAAAA;AAEA,QAAMnF,UAAUlB,YAAYK,WAC1BnC,eAAe;IACbqF,OAAO,IAAI5F,KAAIA,KAAIyH,KAAKC,OAAO;MAAC;MAAQzF,MAAMe;MAAItD,UAASiI,OAAM;KAAG,EAAE7B,SAAQ;IAC9E,GAAI4C,MAAM5B,aAAaxB,YAAYoD,KAAK5B,UAAU,IAAInE,SAAS;MAAEC,GAAG;MAAKC,GAAG;MAAGQ,OAAO;MAAGC,QAAQ;IAAE,CAAA;EACrG,CAAA,CAAA;AAEF,QAAMsE,QAAQvF,YAAYK,WACxBhC,YACEgI,MAAM3B,gBAAgBzB,YAAYoD,KAAK3B,aAAa,IAAIpE,SAAS;IAAEC,GAAG;IAAIC,GAAG;IAAGQ,OAAO;IAAIC,QAAQ;EAAG,CAAA,CAAA,CAAA;AAG1GjB,cAAYqB,WAAW;IAAEC,QAAQJ,QAAQP;IAAIY,QAAQgE,MAAM5E;EAAG,CAAA;AAC9D,SAAO;IAAE4E;IAAOrE;EAAQ;AAC1B;AAEA,IAAMS,gBAAgB,CAAC1B,iBAA8CyB,iBAAAA;AACnEhE,YAAUuC,iBAAAA,QAAAA;;;;;;;;;AACVA,kBAAgBqG,WAAW3I,KAAI6F,kBAAkB9B,aAAawE,KAAKvF,EAAE,EAAE8C,SAAQ;AAC/ExD,kBAAgBsG,SAAS,CAAC;AAC1B,QAAMC,YAAY9E,aAAayC,MAAMzB,KAAK,CAAC0B,SAASA,KAAKnC,SAAS9E,WAAAA;AAClE8C,kBAAgBsG,KAAKE,gBAAgBD,UAAU7F;AACjD;AAIA,IAAMsC,cAAc,CAACoD,SAAAA;AACnB,SAAO;IAAEK,QAAQ;MAAEnG,GAAG8F,KAAKnD;MAAS1C,GAAG6F,KAAKlD;IAAQ;IAAGwD,MAAM;MAAE3F,OAAOqF,KAAKrF;MAAOC,QAAQoF,KAAKpF;IAAO;EAAE;AAC1G;AAEA,IAAMX,WAAW,CAACsG,SAAAA;AAChB,QAAMC,OAAO;AACb,QAAM,CAACH,QAAQC,IAAAA,IAAQ5H,aAAa;IAAEiC,OAAO;IAAGC,QAAQ;IAAG,GAAG2F;EAAK,CAAA;AACnE,QAAM,EAAErG,GAAGC,GAAGQ,OAAOC,OAAM,IAAKnC,aAAa;IAACD,cAAc6H,QAAQG,IAAAA;IAAOhI,cAAc8H,MAAME,IAAAA;GAAM;AACrG,MAAI7F,SAASC,QAAQ;AACnB,WAAO;MAAEyF,QAAQ;QAAEnG;QAAGC;MAAE;MAAGmG,MAAM3F,SAASC,SAAS;QAAED;QAAOC;MAAO,IAAI6F;IAAU;EACnF,OAAO;AACL,WAAO;MAAEJ,QAAQ;QAAEnG;QAAGC;MAAE;IAAE;EAC5B;AACF;;;;AHlhBO,IAAMuG,iBAAiB,CAAC,EAAEC,OAAOC,gBAAe,MAAuB;AAC5E,QAAM,EAAEC,iBAAiBC,SAAQ,IAAKC,oBAAAA;AACtC,QAAMC,SAASC,UAAAA;AACf,QAAMC,cAAc;IAACC;IAAcC;IAAaC;IAAWC;;AAC3D,QAAMC,eAAe;IAACC,QAAQC;IAAKD,QAAQE;IAASF,QAAQG;IAASH,QAAQI;;AAC7E,QAAM,CAACC,OAAOC,QAAAA,IAAYC,SAAS,CAAA;AACnC,QAAM,CAACC,MAAMC,OAAAA,IAAWF,SAAc,CAAC,CAAA;AAGvC,QAAMG,UAAUC,QAAQ,MAAA;AACtBnB,WAAOoB,SAAS;SAAIlB;SAAgBmB,QAAQC;KAAQ;AACpD,UAAMC,oBAAoB,IAAIC,IAC5BjB,aAAakB,IAAI,CAACC,SAAS;MAACA,KAAKC;MAAUC,gBAAgBF,IAAAA;KAAa,CAAA;AAG1E,WAAO,IAAIF,IAAI;SAAIK;SAAqBR,QAAQS;SAAUP;KAAkB;EAC9E,GAAG;IAACvB;IAAQO;GAAa;AAGzB,QAAMwB,aAAa,YAAA;AAEjB,UAAMC,aAAa,MAAMrC,MAAMsC,GAAGC,eAAeC,MAAK,EAAGC,IAAG;AAC5D,UAAMC,eAAe1C,MAAMsC,GAAGK,MAAMJ,eAAeZ;AAGnD,UAAM,EAAEiB,QAAO,IAAK,MAAM5C,MAAMsC,GAAGE,MAAK,EAAGC,IAAG;AAC9C,UAAMI,YAAYC,SAChBF,QAAQG,OAA+B,CAACjB,KAAKkB,QAAAA;AAC3C,YAAMjB,OAAOkB,YAAYD,GAAAA;AACzB,UAAIjB,MAAM;AACR,cAAMb,SAAQY,IAAIC,IAAAA,KAAS;AAC3BD,YAAIC,IAAAA,IAAQb,SAAQ;MACtB;AACA,aAAOY;IACT,GAAG,CAAC,CAAA,CAAA;AAGNR,YAAQ;MACN4B,QAAQ;QACNC,QAAQT,aAAaU;QACrBC,SAAShB,WAAWe;MACtB;MACAR,SAASC;IACX,CAAA;EACF;AAEAS,iBAAelB,YAAY;IAACpC;GAAM;AAElC,QAAMuD,mBAAmBC,YACvB,OAAOxB,aAAAA;AACL,UAAMyB,cAAclC,QAAQmC,IAAI1B,QAAAA;AAChC,QAAIyB,aAAa;AAEf,YAAMA,YAAYzD,OAAOkB,OAAOjB,eAAAA;AAChC,YAAMmC,WAAAA;IACR;EACF,GACA;IAACb;IAASL;GAAM;AAIlB,QAAMyC,mBAAmBH,YAAY,YAAA;AACnC,UAAMI,QAAQC,SAASC,cAAc,OAAA;AACrCF,UAAM7B,OAAO;AACb6B,UAAMG,SAAS;AAEfH,UAAMI,WAAW,OAAOC,MAAAA;AACtB,YAAMC,OAAQD,EAAEE,OAA4BC,QAAQ,CAAA;AACpD,UAAI,CAACF,MAAM;AACT;MACF;AAEA,UAAI;AACF,cAAMG,UAAU,MAAMH,KAAKI,KAAI;AAC/B,cAAMC,OAAOC,KAAKC,MAAMJ,OAAAA;AACxB,cAAM1C,UAAU,MAAM3B,MAAMsC,GAAGC,eAAemC,SAASH,KAAK5C,QAAQG,IAAI6C,cAAAA,CAAAA;AAExE,cAAMC,QAAQC,IACZlD,QAAQG,IAAI,OAAOoB,WAAAA;AACjB,gBAAM4B,QAAQ5B,OAAOlB,SAAS+C,MAAM,GAAA;AACpC,gBAAMC,OAAOF,MAAMA,MAAM1B,SAAS,CAAA;AAClC,gBAAM6B,QAAQC,QAAOC,YAAW;YAAEH;YAAMI,SAAS,CAAA;UAAG,CAAA;AACpD,gBAAMC,gBAAgB;YAAEhF;YAAQL;YAAOiF;YAAOjD,UAAUkB,OAAOlB;UAAS,CAAA;AACxE,gBAAM7B,SAASmF,aAAaC,YAAYC,WAAW;YAAErB,QAAQnE;YAAOyF,QAAQR;UAAM,CAAA,CAAA;AAClF,iBAAOA;QACT,CAAA,CAAA;AAGF,cAAML,QAAQC,IACZN,KAAK3B,QAAQd,IAAI,OAAO,EAAE4D,IAAI,SAAS1D,UAAU,GAAG2D,OAAAA,MAAa;AAC/D,gBAAMzC,SAASvB,QAAQiE,KAAK,CAACC,MAAM,YAAYA,EAAE7D,QAAQ,IAAI6D,EAAEC,OAAO,OAAO9D,QAAAA;AAC7E,cAAI,CAACkB,QAAQ;AACX6C,gBAAIC,KAAK,6BAA6B;cAAEN;cAAI1D;YAAS,GAAA;;;;;;AACrD;UACF;AACA,gBAAMyD,SAASP,QAAOhC,QAAQyC,MAAAA;AAC9B3F,gBAAMsC,GAAG2D,IAAIR,MAAAA;AACb,iBAAOA;QACT,CAAA,CAAA;MAEJ,SAASS,KAAK;AACZH,YAAII,MAAMD,KAAAA,QAAAA;;;;;;MACZ;IACF;AAEAtC,UAAMwC,MAAK;EACb,GAAG,CAAA,CAAE;AAEL,SACE,gBAAAC,OAAA,cAACC,OAAAA;IAAIC,MAAK;IAAOC,WAAU;KACzB,gBAAAH,OAAA,cAACI,QAAQC,MAAI;IAACC,YAAW;KACvB,gBAAAN,OAAA,cAACO,aAAAA;IAAWC,MAAK;IAA+BC,UAAAA;IAASC,OAAM;IAAUC,SAAS5E;MAClF,gBAAAiE,OAAA,cAACO,aAAAA;IACCC,MAAK;IACLC,UAAAA;IACAC,OAAM;IACNC,SAASrD;MAEX,gBAAA0C,OAAA,cAACI,QAAQQ,WAAS;IAACC,SAAQ;MAC3B,gBAAAb,OAAA,cAACC,OAAAA;IAAIE,WAAU;KACb,gBAAAH,OAAA,cAACc,MAAMT,MAAI,MACT,gBAAAL,OAAA,cAACc,MAAMC,WAAS;IACdrF,MAAK;IACLsF,KAAK;IACLC,KAAK;IACLC,aAAa;IACbZ,YAAW;IACXa,OAAOtG;IACPuG,UAAU,CAACC,OAAOvG,SAASwG,SAASD,GAAGvD,OAAOqD,KAAK,CAAA;SAM3D,gBAAAnB,OAAA,cAACuB,aAAAA;IAAYC,OAAOtH;IAAaqC,SAASvB,KAAKuB;IAASmE,OAAM;IAAeC,SAASzD;MACtF,gBAAA8C,OAAA,cAACuB,aAAAA;IAAYC,OAAOjH;IAAcgC,SAASvB,KAAKuB;IAASmE,OAAM;IAAgBC,SAASzD;MACxF,gBAAA8C,OAAA,cAACuB,aAAAA;IAAYC,OAAOnG,QAAQmG;IAAOjF,SAASvB,KAAKuB;IAASmE,OAAM;IAAUC,SAASzD;MAEnF,gBAAA8C,OAAA,cAACyB,mBAAAA;IAAkBnB,YAAW;IAAeoB,UAAS;KACnDvD,KAAKwD,UAAU;IAAEhI;IAAO,GAAGqB;EAAK,GAAG4G,gBAAgB;IAAEC,UAAU;EAAK,CAAA,GAAI,CAAA,CAAA,CAAA;AAIjF;;;AIzKA,IAAA,yBAAeC;",
6
- "names": ["React", "useCallback", "useMemo", "useState", "createIntent", "useIntentDispatcher", "ComputeGraph", "toEffectSchema", "create", "log", "DocumentType", "SheetType", "DiagramType", "SpaceAction", "useClient", "getTypename", "IconButton", "Input", "Toolbar", "useAsyncEffect", "SyntaxHighlighter", "initializeTable", "TableType", "Testing", "jsonKeyReplacer", "sortKeys", "addressToA1Notation", "ComputeGraph", "ComputeGraphModel", "DEFAULT_OUTPUT", "NODE_INPUT", "NODE_OUTPUT", "ObjectId", "DXN", "create", "makeRef", "DocumentType", "createSheet", "SheetType", "CanvasType", "DiagramType", "faker", "Filter", "TableType", "createView", "TextType", "createAsyncGenerator", "range", "generator", "faker", "staticGenerators", "Map", "DocumentType", "typename", "space", "n", "cb", "objects", "range", "map", "db", "add", "create", "name", "commerce", "productName", "content", "makeRef", "TextType", "lorem", "sentences", "threads", "DiagramType", "obj", "canvas", "CanvasType", "SheetType", "cells", "year", "Date", "getFullYear", "cols", "rows", "col", "row", "cell", "addressToA1Notation", "value", "from", "to", "Math", "floor", "random", "createSheet", "ComputeGraph", "model", "ComputeGraphModel", "builder", "createNode", "id", "type", "NODE_INPUT", "DXN", "kind", "QUEUE", "ObjectId", "toString", "NODE_OUTPUT", "createEdge", "node", "property", "DEFAULT_OUTPUT", "root", "createGenerator", "schema", "schemaRegistry", "query", "firstOrUndefined", "register", "generate", "createAsyncGenerator", "snapshot", "createObjects", "tables", "Filter", "TableType", "run", "table", "find", "view", "target", "split", "pop", "createView", "jsonSchema", "React", "IconButton", "SchemaTable", "types", "objects", "label", "onClick", "div", "className", "map", "type", "key", "typename", "IconButton", "variant", "icon", "iconOnly", "EmailTriggerOutput", "NODE_INPUT", "AST", "ObjectId", "S", "toJsonSchema", "FunctionTrigger", "TriggerKind", "invariant", "DXN", "create", "makeRef", "Filter", "createAppend", "createChat", "createComputeGraph", "createConstant", "createFunction", "createGpt", "createQueue", "createSurface", "createRandom", "createTemplate", "createText", "createTrigger", "CanvasBoardType", "CanvasGraphModel", "pointMultiply", "pointsToRect", "rectToPoints", "TableType", "range", "PresetName", "presets", "schemas", "types", "Object", "values", "map", "name", "typename", "items", "space", "n", "cb", "objects", "canvasModel", "functionTrigger", "builder", "call", "gpt", "createNode", "position", "x", "y", "triggerShape", "spaceId", "id", "triggerKind", "Webhook", "trigger", "text", "width", "height", "queueId", "setupQueue", "append", "createEdge", "source", "target", "input", "output", "computeModel", "attachTrigger", "addToSpace", "createQueueSinkPreset", "Subscription", "triggerSpec", "filter", "type", "Timer", "cron", "results", "db", "query", "schema", "runSync", "emailTable", "find", "r", "object", "view", "endsWith", "template", "valueType", "rawPosition", "centerX", "centerY", "templateContent", "Email", "tableId", "value", "fromLocalObjectId", "toString", "appendToTable", "properties", "getPropertySignatures", "ast", "i", "length", "propName", "push", "templateComputeNode", "nodes", "node", "join", "inputSchema", "chat", "systemPrompt", "idPosition", "queuePosition", "appendToQueue", "extendedSchema", "extend", "Struct", "String", "sourceCurrency", "targetCurrency", "converter", "channelId", "kind", "QUEUE", "random", "queue", "messages", "Queue", "initSpec", "triggerOutputName", "spec", "changeId", "canvas", "compute", "add", "computeGraph", "root", "layout", "graph", "args", "function", "meta", "inputNode", "computeNodeId", "center", "size", "rect", "snap", "undefined", "SpaceGenerator", "space", "onCreateObjects", "dispatchPromise", "dispatch", "useIntentDispatcher", "client", "useClient", "staticTypes", "DocumentType", "DiagramType", "SheetType", "ComputeGraph", "mutableTypes", "Testing", "Org", "Project", "Contact", "Message", "count", "setCount", "useState", "info", "setInfo", "typeMap", "useMemo", "addTypes", "presets", "schemas", "mutableGenerators", "Map", "map", "type", "typename", "createGenerator", "staticGenerators", "items", "updateInfo", "echoSchema", "db", "schemaRegistry", "query", "run", "staticSchema", "graph", "objects", "objectMap", "sortKeys", "reduce", "obj", "getTypename", "schema", "static", "length", "mutable", "useAsyncEffect", "handleCreateData", "useCallback", "constructor", "get", "handleLoadTables", "input", "document", "createElement", "accept", "onchange", "e", "file", "target", "files", "content", "text", "data", "JSON", "parse", "register", "toEffectSchema", "Promise", "all", "parts", "split", "name", "table", "create", "TableType", "threads", "initializeTable", "createIntent", "SpaceAction", "AddObject", "object", "id", "fields", "find", "s", "version", "log", "warn", "add", "err", "catch", "click", "React", "div", "role", "className", "Toolbar", "Root", "classNames", "IconButton", "icon", "iconOnly", "label", "onClick", "Separator", "variant", "Input", "TextInput", "min", "max", "placeholder", "value", "onChange", "ev", "parseInt", "SchemaTable", "types", "SyntaxHighlighter", "language", "stringify", "jsonKeyReplacer", "truncate", "SpaceGenerator"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/app-graph-builder.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { contributes, Capabilities, type PluginsContext } from '@dxos/app-framework';\nimport { ATTENDABLE_PATH_SEPARATOR, PLANK_COMPANION_TYPE } from '@dxos/plugin-deck/types';\nimport { createExtension, toSignal, type Node } from '@dxos/plugin-graph';\nimport { CollectionType } from '@dxos/plugin-space/types';\nimport { isEchoObject, isSpace, type ReactiveEchoObject, SpaceState, type Space } from '@dxos/react-client/echo';\n\nimport { DEBUG_PLUGIN } from '../meta';\nimport { Devtools } from '../types';\n\nconst DEVTOOLS_TYPE = 'dxos.org/plugin/debug/devtools';\n\nexport default (context: PluginsContext) =>\n contributes(Capabilities.AppGraphBuilder, [\n // Devtools node.\n createExtension({\n id: 'dxos.org/plugin/debug/devtools',\n filter: (node): node is Node<null | Space> => node.id === 'root' || isSpace(node.data),\n connector: ({ node }) => {\n const space = node.data;\n const state = toSignal(\n (onChange) => space?.state.subscribe(() => onChange()).unsubscribe ?? (() => {}),\n () => space?.state.get(),\n space?.id,\n );\n if (node.id !== 'root' && state !== SpaceState.SPACE_READY) {\n return;\n }\n\n // Not adding the debug node until the root collection is available aligns the behaviour of this\n // extension with that of the space plugin adding objects. This ensures that the debug node is added at\n // the same time as objects and prevents order from changing as the nodes are added.\n const collection = space?.properties[CollectionType.typename]?.target as CollectionType | undefined;\n if (node.id !== 'root' && !collection) {\n return;\n }\n\n return [\n {\n id: `${node.id}-${Devtools.id}`,\n data: null,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['devtools label', { ns: DEBUG_PLUGIN }],\n disposition: 'workspace',\n icon: 'ph--hammer--regular',\n },\n nodes: [\n ...(isSpace(node.data)\n ? [\n {\n id: `${node.data.id}-debug`,\n type: 'dxos.org/plugin/debug/space',\n data: { space: node.data, type: 'dxos.org/plugin/debug/space' },\n properties: {\n label: ['debug label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--bug--regular',\n },\n },\n ]\n : []),\n {\n id: `${node.id}-${Devtools.Client.id}`,\n data: null,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['client label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--users--regular',\n },\n nodes: [\n {\n id: `${node.id}-${Devtools.Client.Config}`,\n data: Devtools.Client.Config,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['config label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--gear--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Client.Storage}`,\n data: Devtools.Client.Storage,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['storage label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--hard-drives--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Client.Logs}`,\n data: Devtools.Client.Logs,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['logs label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--file-text--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Client.Diagnostics}`,\n data: Devtools.Client.Diagnostics,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['diagnostics label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--chart-line--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Client.Tracing}`,\n data: Devtools.Client.Tracing,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['tracing label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--fire--regular',\n },\n },\n ],\n },\n {\n id: `${node.id}-${Devtools.Halo.id}`,\n data: null,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['halo label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--identification-badge--regular',\n },\n nodes: [\n {\n id: `${node.id}-${Devtools.Halo.Identity}`,\n data: Devtools.Halo.Identity,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['identity label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--identification-badge--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Halo.Devices}`,\n data: Devtools.Halo.Devices,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['devices label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--devices--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Halo.Keyring}`,\n data: Devtools.Halo.Keyring,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['keyring label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--key--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Halo.Credentials}`,\n data: Devtools.Halo.Credentials,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['credentials label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--credit-card--regular',\n },\n },\n ],\n },\n {\n id: `${node.id}-${Devtools.Echo.id}`,\n data: null,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['echo label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--database--regular',\n },\n nodes: [\n {\n id: `${node.id}-${Devtools.Echo.Spaces}`,\n data: Devtools.Echo.Spaces,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['spaces label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--graph--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Echo.Space}`,\n data: Devtools.Echo.Space,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['space label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--planet--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Echo.Feeds}`,\n data: Devtools.Echo.Feeds,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['feeds label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--list-bullets--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Echo.Objects}`,\n data: Devtools.Echo.Objects,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['objects label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--database--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Echo.Automerge}`,\n data: Devtools.Echo.Automerge,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['automerge label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--gear-six--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Echo.Queues}`,\n data: Devtools.Echo.Queues,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['queues label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--queue--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Echo.Members}`,\n data: Devtools.Echo.Members,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['members label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--users--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Echo.Metadata}`,\n data: Devtools.Echo.Metadata,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['metadata label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--hard-drive--regular',\n },\n },\n ],\n },\n {\n id: `${node.id}-${Devtools.Mesh.id}`,\n data: null,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['mesh label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--graph--regular',\n },\n nodes: [\n {\n id: `${node.id}-${Devtools.Mesh.Signal}`,\n data: Devtools.Mesh.Signal,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['signal label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--wifi-high--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Mesh.Swarm}`,\n data: Devtools.Mesh.Swarm,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['swarm label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--users-three--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Mesh.Network}`,\n data: Devtools.Mesh.Network,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['network label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--polygon--regular',\n },\n },\n ],\n },\n // TODO(wittjosiah): Remove?\n // {\n // id: `${node.id}-${Devtools.Agent.id}`,\n // data: null,\n // type: DEVTOOLS_TYPE,\n // properties: {\n // label: ['agent label', { ns: DEBUG_PLUGIN }],\n // icon: 'ph--robot--regular',\n // },\n // nodes: [\n // {\n // id: `${node.id}-${Devtools.Agent.Dashboard}`,\n // data: Devtools.Agent.Dashboard,\n // type: DEVTOOLS_TYPE,\n // properties: {\n // label: ['dashboard label', { ns: DEBUG_PLUGIN }],\n // icon: 'ph--computer-tower--regular',\n // },\n // },\n // ],\n // },\n {\n id: `${node.id}-${Devtools.Edge.id}`,\n data: null,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['edge label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--cloud--regular',\n },\n nodes: [\n {\n id: `${node.id}-${Devtools.Edge.Dashboard}`,\n data: Devtools.Edge.Dashboard,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['dashboard label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--computer-tower--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Edge.Workflows}`,\n data: Devtools.Edge.Workflows,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['workflows label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--function--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Edge.Traces}`,\n data: Devtools.Edge.Traces,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['traces label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--line-segments--regular',\n },\n },\n {\n id: `${node.id}-${Devtools.Edge.Testing}`,\n data: Devtools.Edge.Testing,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['testing label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--flask--regular',\n },\n },\n ],\n },\n ],\n },\n ];\n },\n }),\n\n // Debug node.\n createExtension({\n id: 'dxos.org/plugin/debug/debug',\n filter: (node): node is Node<null> => {\n // TODO(wittjosiah): Plank is currently blank. Remove?\n // const settings = context\n // .requestCapabilities(Capabilities.SettingsStore)[0]\n // ?.getStore<DebugSettingsProps>(DEBUG_PLUGIN)?.value;\n // return !!settings?.debug && node.id === 'root';\n return false;\n },\n connector: () => {\n const [graph] = context.requestCapabilities(Capabilities.AppGraph);\n if (!graph) {\n return;\n }\n\n return [\n {\n id: 'dxos.org/plugin/debug/debug',\n type: 'dxos.org/plugin/debug/debug',\n data: { graph },\n properties: {\n label: ['debug label', { ns: DEBUG_PLUGIN }],\n disposition: 'navigation',\n icon: 'ph--bug--regular',\n },\n },\n ];\n },\n }),\n\n // Debug object companion.\n createExtension({\n id: `${DEBUG_PLUGIN}/debug-object`,\n filter: (node): node is Node<ReactiveEchoObject<any>> => isEchoObject(node.data),\n connector: ({ node }) => [\n {\n id: [node.id, 'debug'].join(ATTENDABLE_PATH_SEPARATOR),\n type: PLANK_COMPANION_TYPE,\n data: 'debug',\n properties: {\n label: ['debug label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--bug--regular',\n disposition: 'hidden',\n position: 'fallback',\n },\n },\n ],\n }),\n ]);\n"],
5
- "mappings": "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",
6
- "names": ["contributes", "Capabilities", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE", "createExtension", "toSignal", "CollectionType", "isEchoObject", "isSpace", "SpaceState", "DEVTOOLS_TYPE", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "filter", "node", "isSpace", "data", "connector", "space", "state", "toSignal", "onChange", "subscribe", "unsubscribe", "get", "SpaceState", "SPACE_READY", "collection", "properties", "CollectionType", "typename", "target", "Devtools", "type", "label", "ns", "DEBUG_PLUGIN", "disposition", "icon", "nodes", "Client", "Config", "Storage", "Logs", "Diagnostics", "Tracing", "Halo", "Identity", "Devices", "Keyring", "Credentials", "Echo", "Spaces", "Space", "Feeds", "Objects", "Automerge", "Queues", "Members", "Metadata", "Mesh", "Signal", "Swarm", "Network", "Edge", "Dashboard", "Workflows", "Traces", "Testing", "graph", "requestCapabilities", "AppGraph", "isEchoObject", "join", "ATTENDABLE_PATH_SEPARATOR", "PLANK_COMPANION_TYPE", "position"]
7
- }
@@ -1,73 +0,0 @@
1
- // packages/plugins/plugin-debug/src/types.ts
2
- import { createContext } from "react";
3
- import { S } from "@dxos/echo-schema";
4
- var DebugContext = createContext({
5
- running: false,
6
- start: () => {
7
- },
8
- stop: () => {
9
- }
10
- });
11
- var DebugSettingsSchema = S.mutable(S.Struct({
12
- wireframe: S.optional(S.Boolean)
13
- }));
14
- var Devtools;
15
- (function(Devtools2) {
16
- Devtools2.id = "dxos.org.plugin.debug.devtools";
17
- let Client;
18
- (function(Client2) {
19
- Client2.id = `${Devtools2.id}.client`;
20
- Client2.Config = `${Devtools2.Client.id}.config`;
21
- Client2.Storage = `${Devtools2.Client.id}.storage`;
22
- Client2.Logs = `${Devtools2.Client.id}.logs`;
23
- Client2.Diagnostics = `${Devtools2.Client.id}.diagnostics`;
24
- Client2.Tracing = `${Devtools2.Client.id}.tracing`;
25
- })(Client = Devtools2.Client || (Devtools2.Client = {}));
26
- let Halo;
27
- (function(Halo2) {
28
- Halo2.id = `${Devtools2.id}.halo`;
29
- Halo2.Identity = `${Devtools2.Halo.id}.identity`;
30
- Halo2.Devices = `${Devtools2.Halo.id}.devices`;
31
- Halo2.Keyring = `${Devtools2.Halo.id}.keyring`;
32
- Halo2.Credentials = `${Devtools2.Halo.id}.credentials`;
33
- })(Halo = Devtools2.Halo || (Devtools2.Halo = {}));
34
- let Echo;
35
- (function(Echo2) {
36
- Echo2.id = `${Devtools2.id}.echo`;
37
- Echo2.Spaces = `${Devtools2.Echo.id}.spaces`;
38
- Echo2.Space = `${Devtools2.Echo.id}.space`;
39
- Echo2.Feeds = `${Devtools2.Echo.id}.feeds`;
40
- Echo2.Objects = `${Devtools2.Echo.id}.objects`;
41
- Echo2.Automerge = `${Devtools2.Echo.id}.automerge`;
42
- Echo2.Queues = `${Devtools2.Echo.id}.queues`;
43
- Echo2.Members = `${Devtools2.Echo.id}.members`;
44
- Echo2.Metadata = `${Devtools2.Echo.id}.metadata`;
45
- })(Echo = Devtools2.Echo || (Devtools2.Echo = {}));
46
- let Mesh;
47
- (function(Mesh2) {
48
- Mesh2.id = `${Devtools2.id}.mesh`;
49
- Mesh2.Signal = `${Devtools2.Mesh.id}.signal`;
50
- Mesh2.Swarm = `${Devtools2.Mesh.id}.swarm`;
51
- Mesh2.Network = `${Devtools2.Mesh.id}.network`;
52
- })(Mesh = Devtools2.Mesh || (Devtools2.Mesh = {}));
53
- let Agent;
54
- (function(Agent2) {
55
- Agent2.id = `${Devtools2.id}.agent`;
56
- Agent2.Dashboard = `${Devtools2.Agent.id}.dashboard`;
57
- Agent2.Search = `${Devtools2.Agent.id}.search`;
58
- })(Agent = Devtools2.Agent || (Devtools2.Agent = {}));
59
- let Edge;
60
- (function(Edge2) {
61
- Edge2.id = `${Devtools2.id}.edge`;
62
- Edge2.Dashboard = `${Devtools2.Edge.id}.dashboard`;
63
- Edge2.Workflows = `${Devtools2.Edge.id}.workflows`;
64
- Edge2.Traces = `${Devtools2.Edge.id}.traces`;
65
- Edge2.Testing = `${Devtools2.Edge.id}.testing`;
66
- })(Edge = Devtools2.Edge || (Devtools2.Edge = {}));
67
- })(Devtools || (Devtools = {}));
68
-
69
- export {
70
- DebugSettingsSchema,
71
- Devtools
72
- };
73
- //# sourceMappingURL=chunk-TCEHALD4.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/types.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Context, createContext } from 'react';\n\nimport type { TimerCallback, TimerOptions } from '@dxos/async';\nimport { S } from '@dxos/echo-schema';\n\nexport type DebugContextType = {\n running: boolean;\n start: (cb: TimerCallback, options: TimerOptions) => void;\n stop: () => void;\n};\n\nexport const DebugContext: Context<DebugContextType> = createContext<DebugContextType>({\n running: false,\n start: () => {},\n stop: () => {},\n});\n\nexport const DebugSettingsSchema = S.mutable(\n S.Struct({\n wireframe: S.optional(S.Boolean),\n }),\n);\n\nexport interface DebugSettingsProps extends S.Schema.Type<typeof DebugSettingsSchema> {}\n\nexport namespace Devtools {\n // TODO(wittjosiah): Cannot use slashes in ids until we have a router which decouples ids from url paths.\n export const id = 'dxos.org.plugin.debug.devtools';\n\n export namespace Client {\n export const id = `${Devtools.id}.client`;\n export const Config = `${Devtools.Client.id}.config`;\n export const Storage = `${Devtools.Client.id}.storage`;\n export const Logs = `${Devtools.Client.id}.logs`;\n export const Diagnostics = `${Devtools.Client.id}.diagnostics`;\n export const Tracing = `${Devtools.Client.id}.tracing`;\n }\n\n export namespace Halo {\n export const id = `${Devtools.id}.halo`;\n export const Identity = `${Devtools.Halo.id}.identity`;\n export const Devices = `${Devtools.Halo.id}.devices`;\n export const Keyring = `${Devtools.Halo.id}.keyring`;\n export const Credentials = `${Devtools.Halo.id}.credentials`;\n }\n\n export namespace Echo {\n export const id = `${Devtools.id}.echo`;\n export const Spaces = `${Devtools.Echo.id}.spaces`;\n export const Space = `${Devtools.Echo.id}.space`;\n export const Feeds = `${Devtools.Echo.id}.feeds`;\n export const Objects = `${Devtools.Echo.id}.objects`;\n export const Automerge = `${Devtools.Echo.id}.automerge`;\n export const Queues = `${Devtools.Echo.id}.queues`;\n export const Members = `${Devtools.Echo.id}.members`;\n export const Metadata = `${Devtools.Echo.id}.metadata`;\n }\n\n export namespace Mesh {\n export const id = `${Devtools.id}.mesh`;\n export const Signal = `${Devtools.Mesh.id}.signal`;\n export const Swarm = `${Devtools.Mesh.id}.swarm`;\n export const Network = `${Devtools.Mesh.id}.network`;\n }\n\n export namespace Agent {\n export const id = `${Devtools.id}.agent`;\n export const Dashboard = `${Devtools.Agent.id}.dashboard`;\n export const Search = `${Devtools.Agent.id}.search`;\n }\n\n export namespace Edge {\n export const id = `${Devtools.id}.edge`;\n export const Dashboard = `${Devtools.Edge.id}.dashboard`;\n export const Workflows = `${Devtools.Edge.id}.workflows`;\n export const Traces = `${Devtools.Edge.id}.traces`;\n export const Testing = `${Devtools.Edge.id}.testing`;\n }\n}\n"],
5
- "mappings": ";AAIA,SAAuBA,qBAAqB;AAG5C,SAASC,SAAS;AAQX,IAAMC,eAA0CC,cAAgC;EACrFC,SAAS;EACTC,OAAO,MAAA;EAAO;EACdC,MAAM,MAAA;EAAO;AACf,CAAA;AAEO,IAAMC,sBAAsBC,EAAEC,QACnCD,EAAEE,OAAO;EACPC,WAAWH,EAAEI,SAASJ,EAAEK,OAAO;AACjC,CAAA,CAAA;;UAKeC,WAAAA;YAEFC,KAAK;;YAEDC,SAAAA;YACFD,KAAK,GAAGD,UAASC,EAAE;YACnBE,SAAS,GAAGH,UAASE,OAAOD,EAAE;YAC9BG,UAAU,GAAGJ,UAASE,OAAOD,EAAE;YAC/BI,OAAO,GAAGL,UAASE,OAAOD,EAAE;YAC5BK,cAAc,GAAGN,UAASE,OAAOD,EAAE;YACnCM,UAAU,GAAGP,UAASE,OAAOD,EAAE;EAC9C,GAPiBC,SAAAA,UAAAA,WAAAA,UAAAA,SAAAA,CAAAA,EAAAA;;YASAM,OAAAA;UACFP,KAAK,GAAGD,UAASC,EAAE;UACnBQ,WAAW,GAAGT,UAASQ,KAAKP,EAAE;UAC9BS,UAAU,GAAGV,UAASQ,KAAKP,EAAE;UAC7BU,UAAU,GAAGX,UAASQ,KAAKP,EAAE;UAC7BW,cAAc,GAAGZ,UAASQ,KAAKP,EAAE;EAChD,GANiBO,OAAAA,UAAAA,SAAAA,UAAAA,OAAAA,CAAAA,EAAAA;;YAQAK,OAAAA;UACFZ,KAAK,GAAGD,UAASC,EAAE;UACnBa,SAAS,GAAGd,UAASa,KAAKZ,EAAE;UAC5Bc,QAAQ,GAAGf,UAASa,KAAKZ,EAAE;UAC3Be,QAAQ,GAAGhB,UAASa,KAAKZ,EAAE;UAC3BgB,UAAU,GAAGjB,UAASa,KAAKZ,EAAE;UAC7BiB,YAAY,GAAGlB,UAASa,KAAKZ,EAAE;UAC/BkB,SAAS,GAAGnB,UAASa,KAAKZ,EAAE;UAC5BmB,UAAU,GAAGpB,UAASa,KAAKZ,EAAE;UAC7BoB,WAAW,GAAGrB,UAASa,KAAKZ,EAAE;EAC7C,GAViBY,OAAAA,UAAAA,SAAAA,UAAAA,OAAAA,CAAAA,EAAAA;;YAYAS,OAAAA;UACFrB,KAAK,GAAGD,UAASC,EAAE;UACnBsB,SAAS,GAAGvB,UAASsB,KAAKrB,EAAE;UAC5BuB,QAAQ,GAAGxB,UAASsB,KAAKrB,EAAE;UAC3BwB,UAAU,GAAGzB,UAASsB,KAAKrB,EAAE;EAC5C,GALiBqB,OAAAA,UAAAA,SAAAA,UAAAA,OAAAA,CAAAA,EAAAA;;YAOAI,QAAAA;WACFzB,KAAK,GAAGD,UAASC,EAAE;WACnB0B,YAAY,GAAG3B,UAAS0B,MAAMzB,EAAE;WAChC2B,SAAS,GAAG5B,UAAS0B,MAAMzB,EAAE;EAC5C,GAJiByB,QAAAA,UAAAA,UAAAA,UAAAA,QAAAA,CAAAA,EAAAA;;YAMAG,OAAAA;UACF5B,KAAK,GAAGD,UAASC,EAAE;UACnB0B,YAAY,GAAG3B,UAAS6B,KAAK5B,EAAE;UAC/B6B,YAAY,GAAG9B,UAAS6B,KAAK5B,EAAE;UAC/B8B,SAAS,GAAG/B,UAAS6B,KAAK5B,EAAE;UAC5B+B,UAAU,GAAGhC,UAAS6B,KAAK5B,EAAE;EAC5C,GANiB4B,OAAAA,UAAAA,SAAAA,UAAAA,OAAAA,CAAAA,EAAAA;AAOnB,GArDiB7B,aAAAA,WAAAA,CAAAA,EAAAA;",
6
- "names": ["createContext", "S", "DebugContext", "createContext", "running", "start", "stop", "DebugSettingsSchema", "S", "mutable", "Struct", "wireframe", "optional", "Boolean", "Devtools", "id", "Client", "Config", "Storage", "Logs", "Diagnostics", "Tracing", "Halo", "Identity", "Devices", "Keyring", "Credentials", "Echo", "Spaces", "Space", "Feeds", "Objects", "Automerge", "Queues", "Members", "Metadata", "Mesh", "Signal", "Swarm", "Network", "Agent", "Dashboard", "Search", "Edge", "Workflows", "Traces", "Testing"]
7
- }