@dxos/plugin-debug 0.8.4-main.2e9d522 → 0.8.4-main.406dc2a

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 (87) hide show
  1. package/dist/lib/browser/DebugGraph-EDOH6R2G.mjs +20 -0
  2. package/dist/lib/browser/DebugGraph-EDOH6R2G.mjs.map +7 -0
  3. package/dist/lib/browser/{SpaceGenerator-AG3XGNMV.mjs → SpaceGenerator-VMWHGAJZ.mjs} +245 -69
  4. package/dist/lib/browser/SpaceGenerator-VMWHGAJZ.mjs.map +7 -0
  5. package/dist/lib/browser/{app-graph-builder-SQXFD2BL.mjs → app-graph-builder-I4IHBKKN.mjs} +75 -84
  6. package/dist/lib/browser/app-graph-builder-I4IHBKKN.mjs.map +7 -0
  7. package/dist/lib/browser/{chunk-AJA6RYN3.mjs → chunk-SRV2AIGJ.mjs} +2 -2
  8. package/dist/lib/browser/chunk-SRV2AIGJ.mjs.map +7 -0
  9. package/dist/lib/browser/{chunk-5XPIRNQS.mjs → chunk-SVCKCXCL.mjs} +2 -4
  10. package/dist/lib/browser/chunk-SVCKCXCL.mjs.map +7 -0
  11. package/dist/lib/browser/index.mjs +14 -13
  12. package/dist/lib/browser/index.mjs.map +3 -3
  13. package/dist/lib/browser/meta.json +1 -1
  14. package/dist/lib/browser/{react-context-NVAGLAJD.mjs → react-context-QLZE7VSQ.mjs} +6 -6
  15. package/dist/lib/browser/react-context-QLZE7VSQ.mjs.map +7 -0
  16. package/dist/lib/browser/{react-surface-3GD2OWCA.mjs → react-surface-GFORPA3A.mjs} +78 -74
  17. package/dist/lib/browser/react-surface-GFORPA3A.mjs.map +7 -0
  18. package/dist/lib/browser/{settings-LSSWLM5I.mjs → settings-EBVICEEW.mjs} +5 -5
  19. package/dist/lib/browser/{settings-LSSWLM5I.mjs.map → settings-EBVICEEW.mjs.map} +1 -1
  20. package/dist/types/src/DebugPlugin.d.ts +1 -1
  21. package/dist/types/src/DebugPlugin.d.ts.map +1 -1
  22. package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -1
  23. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  24. package/dist/types/src/capabilities/index.d.ts +5 -5
  25. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  26. package/dist/types/src/capabilities/react-context.d.ts +2 -2
  27. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  28. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  29. package/dist/types/src/capabilities/settings.d.ts +1 -1
  30. package/dist/types/src/components/DebugGraph.d.ts +8 -0
  31. package/dist/types/src/components/DebugGraph.d.ts.map +1 -0
  32. package/dist/types/src/components/DebugObjectPanel.d.ts.map +1 -1
  33. package/dist/types/src/components/DebugSettings.d.ts.map +1 -1
  34. package/dist/types/src/components/SpaceGenerator/ObjectGenerator.d.ts +1 -1
  35. package/dist/types/src/components/SpaceGenerator/ObjectGenerator.d.ts.map +1 -1
  36. package/dist/types/src/components/SpaceGenerator/SpaceGenerator.d.ts.map +1 -1
  37. package/dist/types/src/components/SpaceGenerator/SpaceGenerator.stories.d.ts +13 -4
  38. package/dist/types/src/components/SpaceGenerator/SpaceGenerator.stories.d.ts.map +1 -1
  39. package/dist/types/src/components/SpaceGenerator/draw-util.d.ts.map +1 -1
  40. package/dist/types/src/components/SpaceGenerator/presets.d.ts +4 -1
  41. package/dist/types/src/components/SpaceGenerator/presets.d.ts.map +1 -1
  42. package/dist/types/src/components/Wireframe.d.ts.map +1 -1
  43. package/dist/types/src/components/index.d.ts +2 -1
  44. package/dist/types/src/components/index.d.ts.map +1 -1
  45. package/dist/types/src/meta.d.ts +0 -1
  46. package/dist/types/src/meta.d.ts.map +1 -1
  47. package/dist/types/src/translations.d.ts +2 -0
  48. package/dist/types/src/translations.d.ts.map +1 -1
  49. package/dist/types/src/types.d.ts +1 -1
  50. package/dist/types/src/types.d.ts.map +1 -1
  51. package/dist/types/tsconfig.tsbuildinfo +1 -1
  52. package/package.json +66 -63
  53. package/src/DebugPlugin.tsx +6 -7
  54. package/src/capabilities/app-graph-builder.ts +63 -89
  55. package/src/capabilities/react-context.tsx +2 -2
  56. package/src/capabilities/react-surface.tsx +49 -47
  57. package/src/components/DebugGraph.tsx +14 -0
  58. package/src/components/DebugObjectPanel.tsx +2 -4
  59. package/src/components/DebugSettings.tsx +74 -66
  60. package/src/components/DebugStatus.tsx +2 -2
  61. package/src/components/SpaceGenerator/ObjectGenerator.tsx +15 -15
  62. package/src/components/SpaceGenerator/SpaceGenerator.stories.tsx +11 -11
  63. package/src/components/SpaceGenerator/SpaceGenerator.tsx +7 -7
  64. package/src/components/SpaceGenerator/draw-util.ts +5 -5
  65. package/src/components/SpaceGenerator/presets.ts +173 -12
  66. package/src/components/Wireframe.tsx +2 -1
  67. package/src/components/index.ts +1 -1
  68. package/src/meta.ts +1 -3
  69. package/src/translations.ts +2 -0
  70. package/src/types.ts +1 -1
  71. package/dist/lib/browser/DebugApp-ZDL4CPY5.mjs +0 -228
  72. package/dist/lib/browser/DebugApp-ZDL4CPY5.mjs.map +0 -7
  73. package/dist/lib/browser/SpaceGenerator-AG3XGNMV.mjs.map +0 -7
  74. package/dist/lib/browser/app-graph-builder-SQXFD2BL.mjs.map +0 -7
  75. package/dist/lib/browser/chunk-5XPIRNQS.mjs.map +0 -7
  76. package/dist/lib/browser/chunk-AJA6RYN3.mjs.map +0 -7
  77. package/dist/lib/browser/react-context-NVAGLAJD.mjs.map +0 -7
  78. package/dist/lib/browser/react-surface-3GD2OWCA.mjs.map +0 -7
  79. package/dist/types/src/components/DebugApp/DebugApp.d.ts +0 -6
  80. package/dist/types/src/components/DebugApp/DebugApp.d.ts.map +0 -1
  81. package/dist/types/src/components/DebugApp/Tree.d.ts +0 -18
  82. package/dist/types/src/components/DebugApp/Tree.d.ts.map +0 -1
  83. package/dist/types/src/components/DebugApp/index.d.ts +0 -3
  84. package/dist/types/src/components/DebugApp/index.d.ts.map +0 -1
  85. package/src/components/DebugApp/DebugApp.tsx +0 -84
  86. package/src/components/DebugApp/Tree.tsx +0 -103
  87. package/src/components/DebugApp/index.ts +0 -7
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/SpaceGenerator/SpaceGenerator.tsx", "../../../src/components/SpaceGenerator/ObjectGenerator.tsx", "../../../src/components/SpaceGenerator/presets.ts", "../../../src/components/SpaceGenerator/SchemaTable.tsx", "../../../src/components/SpaceGenerator/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport React, { useCallback, useMemo, useState } from 'react';\n\nimport { useIntentDispatcher } from '@dxos/app-framework';\nimport { ComputeGraph } from '@dxos/conductor';\nimport { Filter, type Obj } from '@dxos/echo';\nimport { Markdown } from '@dxos/plugin-markdown/types';\nimport { SheetType } from '@dxos/plugin-sheet/types';\nimport { DiagramType } from '@dxos/plugin-sketch/types';\nimport { useClient } from '@dxos/react-client';\nimport { type Space, getTypename } from '@dxos/react-client/echo';\nimport { IconButton, Input, Toolbar, useAsyncEffect } from '@dxos/react-ui';\nimport { SyntaxHighlighter } from '@dxos/react-ui-syntax-highlighter';\nimport { DataType } from '@dxos/schema';\nimport { jsonKeyReplacer, sortKeys } from '@dxos/util';\n\nimport { type ObjectGenerator, createGenerator, staticGenerators } from './ObjectGenerator';\nimport { generator } from './presets';\nimport { SchemaTable } from './SchemaTable';\n\nexport type SpaceGeneratorProps = {\n space: Space;\n onCreateObjects?: (objects: Obj.Any[]) => void;\n};\n\nexport const SpaceGenerator = ({ space, onCreateObjects }: SpaceGeneratorProps) => {\n const { dispatchPromise: dispatch } = useIntentDispatcher();\n const client = useClient();\n const staticTypes = [Markdown.Document, DiagramType, SheetType, ComputeGraph]; // TODO(burdon): Make extensible.\n const recordTypes = [DataType.Organization, DataType.Person, DataType.Task];\n const [count, setCount] = useState(1);\n const [info, setInfo] = useState<any>({});\n const presets = useMemo(() => generator(), []);\n\n // Create type generators.\n const typeMap = useMemo(() => {\n client.addTypes([...staticTypes, ...recordTypes, ...presets.schemas]);\n const recordGenerators = new Map<string, ObjectGenerator<any>>(\n recordTypes.map((type) => [type.typename, createGenerator(client, dispatch, type as any)]),\n );\n\n return new Map([...staticGenerators, ...presets.items, ...recordGenerators]);\n }, [client, recordTypes]);\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(Filter.everything()).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 return (\n <div role='none' className='flex flex-col grow overflow-hidden'>\n <Toolbar.Root classNames='border-be border-subduedSeparator'>\n <IconButton icon='ph--arrow-clockwise--regular' iconOnly label='Refresh' onClick={updateInfo} />\n <Toolbar.Separator variant='gap' />\n <Input.Root>\n <Input.TextInput\n type='number'\n min={1}\n max={100}\n placeholder={'Count'}\n classNames='!w-[4rem] !text-right'\n size={8}\n value={count}\n onChange={(ev) => setCount(parseInt(ev.target.value))}\n />\n </Input.Root>\n </Toolbar.Root>\n\n <div className='flex flex-col overflow-y-auto divide-y divide-separator'>\n <SchemaTable types={staticTypes} objects={info.objects} label='Static Types' onClick={handleCreateData} />\n <SchemaTable types={recordTypes} objects={info.objects} label='Record Types' onClick={handleCreateData} />\n <SchemaTable types={presets.types} objects={info.objects} label='Presets' onClick={handleCreateData} />\n\n <div>\n <SyntaxHighlighter language='json' classNames='text-xs'>\n {JSON.stringify({ space, ...info }, jsonKeyReplacer({ truncate: true }), 2)}\n </SyntaxHighlighter>\n </div>\n </div>\n </div>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { type PromiseIntentDispatcher, createIntent } from '@dxos/app-framework';\nimport { addressToA1Notation } from '@dxos/compute';\nimport { ComputeGraph, ComputeGraphModel, DEFAULT_OUTPUT, NODE_INPUT, NODE_OUTPUT } from '@dxos/conductor';\nimport { DXN, Filter, Key, Obj, Ref, Type } from '@dxos/echo';\nimport { type TypedObject } from '@dxos/echo/internal';\nimport { Markdown } from '@dxos/plugin-markdown/types';\nimport { createSheet } from '@dxos/plugin-sheet/types';\nimport { type CellValue, SheetType } from '@dxos/plugin-sheet/types';\nimport { CanvasType, DiagramType } from '@dxos/plugin-sketch/types';\nimport { SpaceAction } from '@dxos/plugin-space/types';\nimport { faker } from '@dxos/random';\nimport { type Client } from '@dxos/react-client';\nimport { type Space } from '@dxos/react-client/echo';\nimport { DataType, getTypenameFromQuery } from '@dxos/schema';\nimport { type ValueGenerator, createAsyncGenerator } from '@dxos/schema/testing';\nimport { range } from '@dxos/util';\n\nconst generator: ValueGenerator = faker as any;\n\nconst findViewByTypename = async (views: DataType.View[], typename: string) => {\n return views.find((view) => getTypenameFromQuery(view.query.ast) === typename);\n};\n\nexport type ObjectGenerator<T extends Obj.Any> = (space: Space, n: number, cb?: (objects: T[]) => void) => Promise<T[]>;\n\nexport const createGenerator = <T extends Obj.Any>(\n client: Client,\n dispatch: PromiseIntentDispatcher,\n schema: TypedObject<T>,\n): ObjectGenerator<T> => {\n return async (space: Space, n: number): Promise<T[]> => {\n const typename = schema.typename;\n\n // Find or create table and view.\n const { objects: views } = await space.db.query(Filter.type(DataType.View)).run();\n const view = await findViewByTypename(views, typename);\n const staticSchema = client?.graph.schemaRegistry.schemas.find((schema) => Type.getTypename(schema) === typename);\n if (!view && !staticSchema) {\n await dispatch(createIntent(SpaceAction.AddSchema, { space, schema, show: false }));\n } else if (!view && staticSchema) {\n await dispatch(createIntent(SpaceAction.UseStaticSchema, { space, typename, show: false }));\n }\n\n // Create objects.\n const generate = createAsyncGenerator(generator, schema, { db: space.db });\n return generate.createObjects(n);\n };\n};\n\nexport const staticGenerators = new Map<string, ObjectGenerator<any>>([\n [\n Markdown.Document.typename,\n async (space, n, cb) => {\n const objects = range(n).map(() => {\n return space.db.add(\n Markdown.makeDocument({\n name: faker.commerce.productName(),\n content: faker.lorem.sentences(5),\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 Obj.make(DiagramType, {\n name: faker.commerce.productName(),\n canvas: Ref.make(Obj.make(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, Key.ObjectId.random()]).toString(),\n })\n .createNode({ id: 'gpt-APPEND', type: 'append' })\n .createNode({ id: 'gpt-OUTPUT', type: NODE_OUTPUT })\n .createEdge({ node: 'gpt-INPUT', property: 'prompt' }, { node: 'gpt-GPT', property: 'prompt' })\n .createEdge({ node: 'gpt-GPT', property: 'text' }, { node: 'gpt-OUTPUT', property: 'text' })\n .createEdge({ node: 'gpt-QUEUE_ID', property: DEFAULT_OUTPUT }, { node: 'gpt-APPEND', property: 'id' })\n .createEdge({ node: 'gpt-GPT', property: 'messages' }, { node: 'gpt-APPEND', property: 'items' })\n .createEdge({ node: 'gpt-QUEUE_ID', property: DEFAULT_OUTPUT }, { node: 'gpt-OUTPUT', property: 'queue' });\n\n return space.db.add(model.root);\n });\n cb?.(objects);\n return objects;\n },\n ],\n]);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { RESEARCH_BLUEPRINT, agent, entityExtraction } from '@dxos/assistant-testing';\nimport { Prompt } from '@dxos/blueprints';\nimport { type ComputeGraphModel, NODE_INPUT } from '@dxos/conductor';\nimport { DXN, Filter, Key, Obj, Query, Ref, Tag, Type } from '@dxos/echo';\nimport { FunctionTrigger, type TriggerKind, type TriggerType, serializeFunction } from '@dxos/functions';\nimport { invariant } from '@dxos/invariant';\nimport { sync } from '@dxos/plugin-inbox';\nimport { Mailbox } from '@dxos/plugin-inbox/types';\nimport { Markdown } from '@dxos/plugin-markdown/types';\nimport { 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 createRandom,\n createSurface,\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 { DataType, createView } from '@dxos/schema';\nimport { range } from '@dxos/util';\n\nimport { type ObjectGenerator } from './ObjectGenerator';\n\nexport enum PresetName {\n DXOS_TEAM = 'dxos-team',\n ORG_RESEARCH_PROJECT = 'org-research-project',\n // EMAIL_TABLE = 'email-table',\n GPT_QUEUE = 'webhook-gpt-queue',\n CHAT_GPT = 'chat-gpt-text',\n // EMAIL_WITH_SUMMARY = 'email-gptSummary-table',\n OBJECT_CHANGE_QUEUE = 'objectChange-queue',\n 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 generator = () => ({\n schemas: [CanvasBoardType, FunctionTrigger],\n types: Object.values(PresetName).map((name) => ({ typename: name })),\n items: [\n [\n PresetName.DXOS_TEAM,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const tag = space.db.add(Tag.make({ label: 'Investor' }));\n const tagDxn = Obj.getDXN(tag).toString();\n\n const org = space.db.add(Obj.make(DataType.Organization, { name: 'DXOS', website: 'https://dxos.org' }));\n\n const doc = space.db.add(\n Markdown.makeDocument({\n name: 'DXOS Research',\n content: 'DXOS builds Composer, an open-source AI-powered malleable application.',\n }),\n );\n Obj.getMeta(doc).tags = [tagDxn];\n // space.db.add(\n // Relation.make(ResearchOn, {\n // [Relation.Source]: doc,\n // [Relation.Target]: org,\n // completedAt: new Date().toISOString(),\n // }),\n // );\n\n space.db.add(\n Obj.make(DataType.Person, { fullName: 'Rich', organization: Ref.make(org) }, { tags: [tagDxn] }),\n );\n space.db.add(Obj.make(DataType.Person, { fullName: 'Josiah', organization: Ref.make(org) }));\n space.db.add(Obj.make(DataType.Person, { fullName: 'Dima', organization: Ref.make(org) }));\n space.db.add(Obj.make(DataType.Person, { fullName: 'Mykola', organization: Ref.make(org) }));\n space.db.add(Obj.make(DataType.Person, { fullName: 'Will', organization: Ref.make(org) }));\n\n return doc;\n });\n cb?.(objects);\n return objects;\n },\n ],\n [\n PresetName.ORG_RESEARCH_PROJECT,\n async (space, n, cb) => {\n const mailbox = await space.db.query(Filter.type(Mailbox.Mailbox)).first();\n const tag = await space.db.query(Filter.type(Tag.Tag, { label: 'Investor' })).first();\n const tagDxn = Obj.getDXN(tag).toString();\n\n const objects = range(n, () => {\n const contactsQuery = Query.select(Filter.type(DataType.Person)).select(Filter.tag(tagDxn));\n const organizationsQuery = Query.select(Filter.type(DataType.Organization)).select(Filter.tag(tagDxn));\n const notesQuery = Query.select(Filter.type(Markdown.Document)).select(Filter.tag(tagDxn));\n\n const emailSyncTrigger = Obj.make(FunctionTrigger, {\n enabled: true,\n spec: {\n kind: 'timer',\n cron: '* * * * *', // Every minute.\n },\n function: Ref.make(serializeFunction(sync)),\n input: {\n mailboxId: Obj.getDXN(mailbox).toString(),\n },\n });\n space.db.add(emailSyncTrigger);\n\n const contactExtractionTrigger = Obj.make(FunctionTrigger, {\n enabled: true,\n // TODO(wittjosiah): Queue trigger doesn't support matching query of the column.\n spec: {\n kind: 'queue',\n queue: mailbox.queue.dxn.toString(),\n },\n function: Ref.make(serializeFunction(entityExtraction)),\n input: {\n source: '{{event.item}}',\n },\n });\n space.db.add(contactExtractionTrigger);\n\n const researchPrompt = space.db.add(\n Prompt.make({\n name: 'Research',\n description: 'Research organization',\n input: Schema.Struct({\n org: Schema.Any,\n }),\n output: Schema.Any,\n\n // TODO(dmaretskyi): This mocks research (returns pre-baked result), the actual research might take compute minutes.\n // Remove the mock prompt to do the actual research.\n instructions:\n 'Research the organization provided as input. Create a research note for it at the end. NOTE: Do mocked reseach (set mockSearch to true).',\n blueprints: [Ref.make(RESEARCH_BLUEPRINT)],\n }),\n );\n\n const researchTrigger = Obj.make(FunctionTrigger, {\n enabled: true,\n spec: {\n kind: 'subscription',\n query: {\n ast: organizationsQuery.ast,\n },\n },\n function: Ref.make(serializeFunction(agent)),\n input: {\n prompt: Ref.make(researchPrompt),\n input: '{{event.subject}}',\n },\n });\n space.db.add(researchTrigger);\n\n const mailboxView = createView({\n name: 'Mailbox',\n query: Query.select(\n Filter.type(DataType.Message, { properties: { labels: Filter.contains('investor') } }),\n ).options({\n queues: [mailbox.queue.dxn.toString()],\n }),\n jsonSchema: Type.toJsonSchema(DataType.Message),\n presentation: Obj.make(DataType.Collection, { objects: [] }),\n });\n const contactsView = createView({\n name: 'Contacts',\n query: contactsQuery,\n jsonSchema: Type.toJsonSchema(DataType.Person),\n presentation: Obj.make(DataType.Collection, { objects: [] }),\n });\n const organizationsView = createView({\n name: 'Organizations',\n query: organizationsQuery,\n jsonSchema: Type.toJsonSchema(DataType.Organization),\n presentation: Obj.make(DataType.Collection, { objects: [] }),\n });\n const notesView = createView({\n name: 'Notes',\n query: notesQuery,\n jsonSchema: Type.toJsonSchema(Markdown.Document),\n presentation: Obj.make(DataType.Collection, { objects: [] }),\n });\n\n return space.db.add(\n DataType.makeProject({\n name: 'Investor Research',\n collections: [mailboxView, contactsView, organizationsView, notesView].map((view) => Ref.make(view)),\n }),\n );\n });\n cb?.(objects.flat());\n return objects.flat();\n },\n ],\n [\n PresetName.GPT_QUEUE,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n let functionTrigger: 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: '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 'subscription',\n (triggerSpec) =>\n (triggerSpec.query = {\n ast: Query.select(Filter.typename('dxos.org/type/Chess')).ast,\n }),\n 'type',\n );\n return addToSpace(PresetName.OBJECT_CHANGE_QUEUE, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n [\n PresetName.TIMER_TICK_QUEUE,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const { canvasModel, computeModel } = createQueueSinkPreset(\n space,\n 'timer',\n (triggerSpec) => (triggerSpec.cron = '*/5 * * * * *'),\n 'result',\n );\n return addToSpace(PresetName.TIMER_TICK_QUEUE, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n // TODO(wittjosiah): Remove?\n // [\n // PresetName.EMAIL_TABLE,\n // async (space, n, cb) => {\n // const objects = range(n, () => {\n // const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n // const results = space.db.query(Filter.type(TableType)).runSync();\n // const emailTable = results.find((r) => r.object?.view?.target?.query?.typename?.endsWith('Email'));\n // invariant(emailTable, 'Email table not found.');\n\n // const template = canvasModel.createNode(\n // createTemplate({\n // valueType: 'object',\n // ...rawPosition({ centerX: -80, centerY: -64, width: 320, height: 320 }),\n // }),\n // );\n // const templateContent = ['{'];\n\n // let functionTrigger: FunctionTrigger | undefined;\n // canvasModel.builder.call((builder) => {\n // const triggerShape = createTrigger({\n // spaceId: space.id,\n // triggerKind: 'email',\n // ...position({ x: -18, y: -2 }),\n // });\n // const trigger = canvasModel.createNode(triggerShape);\n\n // const tableId = canvasModel.createNode(\n // createConstant({\n // value: DXN.fromLocalObjectId(emailTable.id).toString(),\n // ...position({ x: -18, y: 5, width: 8, height: 6 }),\n // }),\n // );\n\n // const appendToTable = canvasModel.createNode(createAppend(position({ x: 10, y: 6 })));\n\n // const properties = SchemaAST.getPropertySignatures(EmailTriggerOutput.ast);\n // for (let i = 0; i < properties.length; i++) {\n // const propName = properties[i].name.toString();\n // builder.createEdge({ source: trigger.id, target: template.id, input: propName, output: propName });\n // templateContent.push(` \"${propName}\": \"{{${propName}}}\"` + (i === properties.length - 1 ? '' : ','));\n // }\n // templateContent.push('}');\n\n // builder\n // .createEdge({ source: tableId.id, target: appendToTable.id, input: 'id' })\n // .createEdge({ source: template.id, target: appendToTable.id, input: 'items' });\n\n // functionTrigger = triggerShape.functionTrigger!.target!;\n // });\n\n // const computeModel = createComputeGraph(canvasModel);\n\n // const templateComputeNode = computeModel.nodes.find((n) => n.id === template.node);\n // invariant(templateComputeNode, 'Template compute node was not created.');\n // templateComputeNode.value = templateContent.join('\\n');\n // templateComputeNode.inputSchema = Type.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 // TODO(wittjosiah): Remove?\n // [\n // PresetName.EMAIL_WITH_SUMMARY,\n // async (space, n, cb) => {\n // const objects = range(n, () => {\n // const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n // const results = space.db.query(Filter.type(TableType)).runSync();\n // const emailTable = results.find((r) => r.object?.view?.target?.query?.typename?.endsWith('Email'));\n // invariant(emailTable, 'Email table not found.');\n\n // const template = canvasModel.createNode(\n // createTemplate({\n // valueType: 'object',\n // ...rawPosition({ centerX: 192, centerY: -176, width: 320, height: 320 }),\n // }),\n // );\n // const templateContent = ['{'];\n\n // let functionTrigger: FunctionTrigger | undefined;\n // canvasModel.builder.call((builder) => {\n // const gpt = canvasModel.createNode(\n // createGpt(rawPosition({ centerX: -400, centerY: -112, width: 256, height: 202 })),\n // );\n // const systemPrompt = canvasModel.createNode(\n // createConstant({\n // value: \"use one word to describe content category. don't write anything else\",\n // ...rawPosition({ centerX: -800, centerY: -160, width: 192, height: 128 }),\n // }),\n // );\n // const triggerShape = createTrigger({\n // spaceId: space.id,\n // triggerKind: 'email',\n // ...rawPosition({ centerX: -736, centerY: -384, width: 182, height: 192 }),\n // });\n // const trigger = canvasModel.createNode(triggerShape);\n\n // const { queueId } = setupQueue(space, canvasModel, {\n // idPosition: { centerX: -720, centerY: 224, width: 192, height: 256 },\n // queuePosition: { centerX: -144, centerY: 416, width: 320, height: 448 },\n // });\n // const appendToQueue = canvasModel.createNode(\n // createAppend(rawPosition({ centerX: -80, centerY: 96, width: 122, height: 128 })),\n // );\n\n // const tableId = canvasModel.createNode(\n // createConstant({\n // value: DXN.fromLocalObjectId(emailTable.id).toString(),\n // ...rawPosition({ centerX: -112, centerY: -544, width: 192, height: 256 }),\n // }),\n // );\n\n // const appendToTable = canvasModel.createNode(\n // createAppend(rawPosition({ centerX: 560, centerY: -416, width: 128, height: 122 })),\n // );\n\n // templateContent.push(' \"category\": \"{{text}}\",');\n // builder.createEdge({ source: gpt.id, target: template.id, input: 'text', output: 'text' });\n\n // const properties = SchemaAST.getPropertySignatures(EmailTriggerOutput.ast);\n // for (let i = 0; i < properties.length; i++) {\n // const propName = properties[i].name.toString();\n // builder.createEdge({ source: trigger.id, target: template.id, input: propName, output: propName });\n // templateContent.push(` \"${propName}\": \"{{${propName}}}\"` + (i === properties.length - 1 ? '' : ','));\n // }\n // templateContent.push('}');\n\n // builder\n // .createEdge({ source: tableId.id, target: appendToTable.id, input: 'id' })\n // .createEdge({ source: queueId.id, target: appendToQueue.id, input: 'id' })\n // .createEdge({ source: gpt.id, target: appendToQueue.id, output: 'messages', input: 'items' })\n // .createEdge({ source: systemPrompt.id, target: gpt.id, input: 'systemPrompt' })\n // .createEdge({ source: trigger.id, target: gpt.id, input: 'prompt', output: 'body' })\n // .createEdge({ source: template.id, target: appendToTable.id, input: 'items' });\n\n // functionTrigger = triggerShape.functionTrigger!.target!;\n // });\n\n // const computeModel = createComputeGraph(canvasModel);\n\n // const templateComputeNode = computeModel.nodes.find((n) => n.id === template.node);\n // invariant(templateComputeNode, 'Template compute node was not created.');\n // templateComputeNode.value = templateContent.join('\\n');\n // const extendedSchema = Schema.extend(EmailTriggerOutput, Schema.Struct({ text: Schema.String }));\n // templateComputeNode.inputSchema = Type.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: '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, Key.ObjectId.random()]).toString(),\n ...position({ x: -10, y: 5 }),\n }),\n );\n const converter = canvasModel.createNode(createFunction(position({ x: 0, y: 0 })));\n const view = canvasModel.createNode(createText(position({ x: 12, y: 0 })));\n const queue = canvasModel.createNode(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 // TODO(wittjosiah): Remove?\n // [\n // PresetName.KANBAN_QUEUE,\n // async (space, n, cb) => {\n // const objects = range(n, () => {\n // const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n // // TODO(wittjosiah): Integrate directly w/ Kanban.\n // // const results = space.db.query(Filter.type(KanbanType)).runSync();\n // // const kanban = results.find((r) => r.object?.cardView?.target?.query?.type?.endsWith('Message'));\n // // invariant(kanban, 'Kanban not found.');\n\n // const results = space.db.query(Filter.type(TableType)).runSync();\n // const messages = results.find((r) => r.object?.view?.target?.query?.typename?.endsWith('Message'));\n // invariant(messages, 'Table not found.');\n\n // let functionTrigger: FunctionTrigger | undefined;\n // canvasModel.builder.call((builder) => {\n // const triggerShape = createTrigger({\n // spaceId: space.id,\n // triggerKind: 'queue',\n // ...position({ x: -10, y: -5 }),\n // });\n // const trigger = canvasModel.createNode(triggerShape);\n\n // const tableId = canvasModel.createNode(\n // createConstant({\n // value: DXN.fromLocalObjectId(messages.id).toString(),\n // ...position({ x: -10, y: 5 }),\n // }),\n // );\n // const appendToTable = canvasModel.createNode(createAppend(position({ x: 10, y: 0 })));\n\n // builder\n // .createEdge({ source: tableId.id, target: appendToTable.id, input: 'id' })\n // .createEdge({ source: trigger.id, target: appendToTable.id, input: 'items', output: 'item' });\n\n // functionTrigger = triggerShape.functionTrigger!.target!;\n // });\n\n // const computeModel = createComputeGraph(canvasModel);\n // attachTrigger(functionTrigger, computeModel);\n\n // return addToSpace(PresetName.KANBAN_QUEUE, space, canvasModel, computeModel);\n // });\n // cb?.(objects);\n // return objects;\n // },\n // ],\n ] as [PresetName, ObjectGenerator<any>][],\n});\n\nconst createQueueSinkPreset = <SpecType extends TriggerKind>(\n space: Space,\n triggerKind: SpecType,\n initSpec: (spec: Extract<TriggerType, { kind: SpecType }>) => void,\n triggerOutputName: string,\n) => {\n const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n const template = canvasModel.createNode(\n createTemplate({\n valueType: 'object',\n ...rawPosition({ centerX: -64, centerY: -79, width: 320, height: 320 }),\n }),\n );\n\n let functionTrigger: 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.kind === 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 = Type.toJsonSchema(Schema.Struct({ type: Schema.String, changeId: Schema.String }));\n attachTrigger(functionTrigger, computeModel);\n\n return { canvasModel, computeModel };\n};\n\nconst addToSpace = (name: string, space: Space, canvas: CanvasGraphModel, compute: ComputeGraphModel) => {\n return space.db.add(\n Obj.make(CanvasBoardType, {\n name,\n computeGraph: Ref.make(compute.root),\n layout: canvas.graph,\n }),\n );\n};\n\nconst setupQueue = (\n space: Space,\n canvasModel: CanvasGraphModel,\n args?: { idPosition?: RawPositionInput; queuePosition?: RawPositionInput },\n) => {\n const queueId = canvasModel.createNode(\n createConstant({\n value: new DXN(DXN.kind.QUEUE, ['data', space.id, Key.ObjectId.random()]).toString(),\n ...(args?.idPosition ? rawPosition(args.idPosition) : position({ x: -18, y: 5, width: 8, height: 6 })),\n }),\n );\n const queue = canvasModel.createNode(\n 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 = Ref.make(computeModel.root);\n const inputNode = computeModel.nodes.find((node) => node.type === NODE_INPUT)!;\n functionTrigger.inputNodeId = 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 2024 DXOS.org\n//\n\nimport React from 'react';\n\nimport { IconButton } from '@dxos/react-ui';\n\nexport type SchemaTableProps = {\n types: any[];\n objects?: Record<string, number | undefined>;\n label: string;\n onClick: (typename: string) => void;\n};\n\nexport const SchemaTable = ({ types, objects = {}, label, onClick }: SchemaTableProps) => {\n return (\n <div className='grid grid-cols-[1fr_80px_40px] gap-1 overflow-none'>\n <h2 className='p-2'>{label}</h2>\n {types.map((type) => (\n <div key={type.typename} className='grid grid-cols-subgrid col-span-3 items-center'>\n <div className='px-2 text-sm font-mono text-subdued'>{type.typename}</div>\n <div className='px-2 text-right font-mono'>{objects[type.typename] ?? 0}</div>\n <IconButton\n variant='ghost'\n icon='ph--plus--regular'\n iconOnly\n label='Create data'\n onClick={() => onClick(type.typename)}\n />\n </div>\n ))}\n </div>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { SpaceGenerator } from './SpaceGenerator';\n\nexport default SpaceGenerator;\n"],
5
+ "mappings": "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",
6
+ "names": ["React", "useCallback", "useMemo", "useState", "useIntentDispatcher", "ComputeGraph", "Filter", "Markdown", "SheetType", "DiagramType", "useClient", "getTypename", "IconButton", "Input", "Toolbar", "useAsyncEffect", "SyntaxHighlighter", "DataType", "jsonKeyReplacer", "sortKeys", "createIntent", "addressToA1Notation", "ComputeGraph", "ComputeGraphModel", "DEFAULT_OUTPUT", "NODE_INPUT", "NODE_OUTPUT", "DXN", "Filter", "Key", "Obj", "Ref", "Type", "Markdown", "createSheet", "SheetType", "CanvasType", "DiagramType", "SpaceAction", "faker", "DataType", "getTypenameFromQuery", "createAsyncGenerator", "range", "generator", "faker", "findViewByTypename", "views", "typename", "find", "view", "getTypenameFromQuery", "query", "ast", "createGenerator", "client", "dispatch", "schema", "space", "n", "objects", "db", "Filter", "type", "DataType", "View", "run", "staticSchema", "graph", "schemaRegistry", "schemas", "Type", "getTypename", "createIntent", "SpaceAction", "AddSchema", "show", "UseStaticSchema", "generate", "createAsyncGenerator", "createObjects", "staticGenerators", "Map", "Markdown", "Document", "cb", "range", "map", "add", "makeDocument", "name", "commerce", "productName", "content", "lorem", "sentences", "DiagramType", "obj", "Obj", "make", "canvas", "Ref", "CanvasType", "SheetType", "cells", "year", "Date", "getFullYear", "cols", "rows", "col", "row", "cell", "addressToA1Notation", "value", "from", "to", "Math", "floor", "random", "createSheet", "ComputeGraph", "model", "ComputeGraphModel", "create", "builder", "createNode", "id", "NODE_INPUT", "DXN", "kind", "QUEUE", "Key", "ObjectId", "toString", "NODE_OUTPUT", "createEdge", "node", "property", "DEFAULT_OUTPUT", "root", "Schema", "RESEARCH_BLUEPRINT", "agent", "entityExtraction", "Prompt", "NODE_INPUT", "DXN", "Filter", "Key", "Obj", "Query", "Ref", "Tag", "Type", "FunctionTrigger", "serializeFunction", "invariant", "sync", "Mailbox", "Markdown", "createAppend", "createChat", "createComputeGraph", "createConstant", "createFunction", "createGpt", "createQueue", "createRandom", "createSurface", "createTemplate", "createText", "createTrigger", "CanvasBoardType", "CanvasGraphModel", "pointMultiply", "pointsToRect", "rectToPoints", "DataType", "createView", "range", "PresetName", "generator", "schemas", "types", "Object", "values", "map", "name", "typename", "items", "space", "n", "cb", "objects", "tag", "db", "add", "make", "label", "tagDxn", "getDXN", "toString", "org", "Organization", "website", "doc", "makeDocument", "content", "getMeta", "tags", "Person", "fullName", "organization", "mailbox", "query", "type", "first", "contactsQuery", "select", "organizationsQuery", "notesQuery", "Document", "emailSyncTrigger", "enabled", "spec", "kind", "cron", "function", "input", "mailboxId", "contactExtractionTrigger", "queue", "dxn", "source", "researchPrompt", "description", "Struct", "Any", "output", "instructions", "blueprints", "researchTrigger", "ast", "prompt", "mailboxView", "Message", "properties", "labels", "contains", "options", "queues", "jsonSchema", "toJsonSchema", "presentation", "Collection", "contactsView", "organizationsView", "notesView", "makeProject", "collections", "view", "flat", "canvasModel", "create", "functionTrigger", "builder", "call", "gpt", "createNode", "position", "x", "y", "triggerShape", "spaceId", "id", "triggerKind", "trigger", "text", "width", "height", "queueId", "setupQueue", "append", "createEdge", "target", "computeModel", "attachTrigger", "addToSpace", "createQueueSinkPreset", "triggerSpec", "chat", "sourceCurrency", "value", "targetCurrency", "converter", "channelId", "QUEUE", "ObjectId", "random", "initSpec", "triggerOutputName", "template", "valueType", "rawPosition", "centerX", "centerY", "queuePosition", "templateComputeNode", "nodes", "find", "node", "join", "inputSchema", "String", "changeId", "canvas", "compute", "computeGraph", "root", "layout", "graph", "args", "idPosition", "inputNode", "inputNodeId", "center", "size", "rect", "snap", "undefined", "React", "IconButton", "SchemaTable", "types", "objects", "label", "onClick", "div", "className", "h2", "map", "type", "key", "typename", "IconButton", "variant", "icon", "iconOnly", "SpaceGenerator", "space", "onCreateObjects", "dispatchPromise", "dispatch", "useIntentDispatcher", "client", "useClient", "staticTypes", "Markdown", "Document", "DiagramType", "SheetType", "ComputeGraph", "recordTypes", "DataType", "Organization", "Person", "Task", "count", "setCount", "useState", "info", "setInfo", "presets", "useMemo", "generator", "typeMap", "addTypes", "schemas", "recordGenerators", "Map", "map", "type", "typename", "createGenerator", "staticGenerators", "items", "updateInfo", "echoSchema", "db", "schemaRegistry", "query", "run", "staticSchema", "graph", "objects", "Filter", "everything", "objectMap", "sortKeys", "reduce", "obj", "getTypename", "schema", "static", "length", "mutable", "useAsyncEffect", "handleCreateData", "useCallback", "constructor", "get", "React", "div", "role", "className", "Toolbar", "Root", "classNames", "IconButton", "icon", "iconOnly", "label", "onClick", "Separator", "variant", "Input", "TextInput", "min", "max", "placeholder", "size", "value", "onChange", "ev", "parseInt", "target", "SchemaTable", "types", "SyntaxHighlighter", "language", "JSON", "stringify", "jsonKeyReplacer", "truncate", "SpaceGenerator"]
7
+ }
@@ -1,25 +1,27 @@
1
1
  import {
2
2
  Devtools
3
- } from "./chunk-AJA6RYN3.mjs";
3
+ } from "./chunk-SRV2AIGJ.mjs";
4
4
  import {
5
- DEBUG_PLUGIN
6
- } from "./chunk-5XPIRNQS.mjs";
5
+ meta
6
+ } from "./chunk-SVCKCXCL.mjs";
7
7
 
8
8
  // src/capabilities/app-graph-builder.ts
9
9
  import { Rx } from "@effect-rx/rx-react";
10
- import { Option, pipe } from "effect";
11
- import { contributes, Capabilities } from "@dxos/app-framework";
10
+ import * as Function from "effect/Function";
11
+ import * as Option from "effect/Option";
12
+ import { Capabilities, contributes } from "@dxos/app-framework";
12
13
  import { Obj } from "@dxos/echo";
13
14
  import { ATTENDABLE_PATH_SEPARATOR, DECK_COMPANION_TYPE, PLANK_COMPANION_TYPE } from "@dxos/plugin-deck/types";
14
- import { createExtension, ROOT_ID, rxFromSignal } from "@dxos/plugin-graph";
15
- import { getActiveSpace, SPACE_PLUGIN } from "@dxos/plugin-space";
16
- var DEVTOOLS_TYPE = "dxos.org/plugin/debug/devtools";
17
- var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBuilder, [
15
+ import { ROOT_ID, createExtension, rxFromSignal } from "@dxos/plugin-graph";
16
+ import { getActiveSpace, meta as spaceMeta } from "@dxos/plugin-space";
17
+ var DEVTOOLS_TYPE = `${meta.id}/devtools`;
18
+ var app_graph_builder_default = ((context) => contributes(Capabilities.AppGraphBuilder, [
18
19
  // Devtools node.
19
20
  createExtension({
20
- id: "dxos.org/plugin/debug/devtools",
21
- connector: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => node2.id === ROOT_ID || node2.type === `${SPACE_PLUGIN}/settings` ? Option.some(node2) : Option.none()), Option.map((node2) => {
21
+ id: `${meta.id}/devtools`,
22
+ connector: (node) => Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => node2.id === ROOT_ID || node2.type === `${spaceMeta.id}/settings` ? Option.some(node2) : Option.none()), Option.map((node2) => {
22
23
  const space = get(rxFromSignal(() => getActiveSpace(context)));
24
+ const [graph] = get(context.capabilities(Capabilities.AppGraph));
23
25
  return [
24
26
  {
25
27
  id: `${Devtools.id}-${node2.id}`,
@@ -29,7 +31,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
29
31
  label: [
30
32
  "devtools label",
31
33
  {
32
- ns: DEBUG_PLUGIN
34
+ ns: meta.id
33
35
  }
34
36
  ],
35
37
  icon: "ph--hammer--regular",
@@ -37,25 +39,42 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
37
39
  position: "fallback"
38
40
  },
39
41
  nodes: [
40
- ...space && node2.type === `${SPACE_PLUGIN}/settings` ? [
42
+ ...space && node2.type === `${spaceMeta.id}/settings` ? [
41
43
  {
42
44
  id: `debug-${node2.id}`,
43
- type: "dxos.org/plugin/debug/space",
45
+ type: `${meta.id}/space`,
44
46
  data: {
45
47
  space,
46
- type: "dxos.org/plugin/debug/space"
48
+ type: `${meta.id}/space`
47
49
  },
48
50
  properties: {
49
51
  label: [
50
52
  "debug label",
51
53
  {
52
- ns: DEBUG_PLUGIN
54
+ ns: meta.id
53
55
  }
54
56
  ],
55
57
  icon: "ph--bug--regular"
56
58
  }
57
59
  }
58
60
  ] : [],
61
+ {
62
+ id: `app-graph-${node2.id}`,
63
+ type: `${meta.id}/app-graph`,
64
+ data: {
65
+ graph: graph?.graph,
66
+ root: space ? space.id : ROOT_ID
67
+ },
68
+ properties: {
69
+ label: [
70
+ "debug app graph label",
71
+ {
72
+ ns: meta.id
73
+ }
74
+ ],
75
+ icon: "ph--graph--regular"
76
+ }
77
+ },
59
78
  {
60
79
  id: `${Devtools.Client.id}-${node2.id}`,
61
80
  data: null,
@@ -64,7 +83,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
64
83
  label: [
65
84
  "client label",
66
85
  {
67
- ns: DEBUG_PLUGIN
86
+ ns: meta.id
68
87
  }
69
88
  ],
70
89
  icon: "ph--users--regular"
@@ -78,7 +97,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
78
97
  label: [
79
98
  "config label",
80
99
  {
81
- ns: DEBUG_PLUGIN
100
+ ns: meta.id
82
101
  }
83
102
  ],
84
103
  icon: "ph--gear--regular"
@@ -92,7 +111,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
92
111
  label: [
93
112
  "storage label",
94
113
  {
95
- ns: DEBUG_PLUGIN
114
+ ns: meta.id
96
115
  }
97
116
  ],
98
117
  icon: "ph--hard-drives--regular"
@@ -106,7 +125,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
106
125
  label: [
107
126
  "logs label",
108
127
  {
109
- ns: DEBUG_PLUGIN
128
+ ns: meta.id
110
129
  }
111
130
  ],
112
131
  icon: "ph--file-text--regular"
@@ -120,7 +139,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
120
139
  label: [
121
140
  "diagnostics label",
122
141
  {
123
- ns: DEBUG_PLUGIN
142
+ ns: meta.id
124
143
  }
125
144
  ],
126
145
  icon: "ph--chart-line--regular"
@@ -134,7 +153,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
134
153
  label: [
135
154
  "tracing label",
136
155
  {
137
- ns: DEBUG_PLUGIN
156
+ ns: meta.id
138
157
  }
139
158
  ],
140
159
  icon: "ph--fire--regular"
@@ -150,7 +169,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
150
169
  label: [
151
170
  "halo label",
152
171
  {
153
- ns: DEBUG_PLUGIN
172
+ ns: meta.id
154
173
  }
155
174
  ],
156
175
  icon: "ph--identification-badge--regular"
@@ -164,7 +183,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
164
183
  label: [
165
184
  "identity label",
166
185
  {
167
- ns: DEBUG_PLUGIN
186
+ ns: meta.id
168
187
  }
169
188
  ],
170
189
  icon: "ph--identification-badge--regular"
@@ -178,7 +197,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
178
197
  label: [
179
198
  "devices label",
180
199
  {
181
- ns: DEBUG_PLUGIN
200
+ ns: meta.id
182
201
  }
183
202
  ],
184
203
  icon: "ph--devices--regular"
@@ -192,7 +211,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
192
211
  label: [
193
212
  "keyring label",
194
213
  {
195
- ns: DEBUG_PLUGIN
214
+ ns: meta.id
196
215
  }
197
216
  ],
198
217
  icon: "ph--key--regular"
@@ -206,7 +225,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
206
225
  label: [
207
226
  "credentials label",
208
227
  {
209
- ns: DEBUG_PLUGIN
228
+ ns: meta.id
210
229
  }
211
230
  ],
212
231
  icon: "ph--credit-card--regular"
@@ -222,7 +241,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
222
241
  label: [
223
242
  "echo label",
224
243
  {
225
- ns: DEBUG_PLUGIN
244
+ ns: meta.id
226
245
  }
227
246
  ],
228
247
  icon: "ph--database--regular"
@@ -236,7 +255,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
236
255
  label: [
237
256
  "spaces label",
238
257
  {
239
- ns: DEBUG_PLUGIN
258
+ ns: meta.id
240
259
  }
241
260
  ],
242
261
  icon: "ph--graph--regular"
@@ -250,7 +269,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
250
269
  label: [
251
270
  "space label",
252
271
  {
253
- ns: DEBUG_PLUGIN
272
+ ns: meta.id
254
273
  }
255
274
  ],
256
275
  icon: "ph--planet--regular"
@@ -264,7 +283,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
264
283
  label: [
265
284
  "feeds label",
266
285
  {
267
- ns: DEBUG_PLUGIN
286
+ ns: meta.id
268
287
  }
269
288
  ],
270
289
  icon: "ph--list-bullets--regular"
@@ -278,7 +297,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
278
297
  label: [
279
298
  "objects label",
280
299
  {
281
- ns: DEBUG_PLUGIN
300
+ ns: meta.id
282
301
  }
283
302
  ],
284
303
  icon: "ph--cube--regular"
@@ -292,7 +311,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
292
311
  label: [
293
312
  "schema label",
294
313
  {
295
- ns: DEBUG_PLUGIN
314
+ ns: meta.id
296
315
  }
297
316
  ],
298
317
  icon: "ph--database--regular"
@@ -306,7 +325,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
306
325
  label: [
307
326
  "automerge label",
308
327
  {
309
- ns: DEBUG_PLUGIN
328
+ ns: meta.id
310
329
  }
311
330
  ],
312
331
  icon: "ph--gear-six--regular"
@@ -320,7 +339,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
320
339
  label: [
321
340
  "queues label",
322
341
  {
323
- ns: DEBUG_PLUGIN
342
+ ns: meta.id
324
343
  }
325
344
  ],
326
345
  icon: "ph--queue--regular"
@@ -334,7 +353,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
334
353
  label: [
335
354
  "members label",
336
355
  {
337
- ns: DEBUG_PLUGIN
356
+ ns: meta.id
338
357
  }
339
358
  ],
340
359
  icon: "ph--users--regular"
@@ -348,7 +367,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
348
367
  label: [
349
368
  "metadata label",
350
369
  {
351
- ns: DEBUG_PLUGIN
370
+ ns: meta.id
352
371
  }
353
372
  ],
354
373
  icon: "ph--hard-drive--regular"
@@ -364,7 +383,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
364
383
  label: [
365
384
  "mesh label",
366
385
  {
367
- ns: DEBUG_PLUGIN
386
+ ns: meta.id
368
387
  }
369
388
  ],
370
389
  icon: "ph--graph--regular"
@@ -378,7 +397,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
378
397
  label: [
379
398
  "signal label",
380
399
  {
381
- ns: DEBUG_PLUGIN
400
+ ns: meta.id
382
401
  }
383
402
  ],
384
403
  icon: "ph--wifi-high--regular"
@@ -392,7 +411,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
392
411
  label: [
393
412
  "swarm label",
394
413
  {
395
- ns: DEBUG_PLUGIN
414
+ ns: meta.id
396
415
  }
397
416
  ],
398
417
  icon: "ph--users-three--regular"
@@ -406,7 +425,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
406
425
  label: [
407
426
  "network label",
408
427
  {
409
- ns: DEBUG_PLUGIN
428
+ ns: meta.id
410
429
  }
411
430
  ],
412
431
  icon: "ph--polygon--regular"
@@ -420,7 +439,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
420
439
  // data: null,
421
440
  // type: DEVTOOLS_TYPE,
422
441
  // properties: {
423
- // label: ['agent label', { ns: DEBUG_PLUGIN }],
442
+ // label: ['agent label', { ns: meta.id }],
424
443
  // icon: 'ph--robot--regular',
425
444
  // },
426
445
  // nodes: [
@@ -429,7 +448,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
429
448
  // data: Devtools.Agent.Dashboard,
430
449
  // type: DEVTOOLS_TYPE,
431
450
  // properties: {
432
- // label: ['dashboard label', { ns: DEBUG_PLUGIN }],
451
+ // label: ['dashboard label', { ns: meta.id }],
433
452
  // icon: 'ph--computer-tower--regular',
434
453
  // },
435
454
  // },
@@ -443,7 +462,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
443
462
  label: [
444
463
  "edge label",
445
464
  {
446
- ns: DEBUG_PLUGIN
465
+ ns: meta.id
447
466
  }
448
467
  ],
449
468
  icon: "ph--cloud--regular"
@@ -457,7 +476,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
457
476
  label: [
458
477
  "dashboard label",
459
478
  {
460
- ns: DEBUG_PLUGIN
479
+ ns: meta.id
461
480
  }
462
481
  ],
463
482
  icon: "ph--computer-tower--regular"
@@ -471,7 +490,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
471
490
  label: [
472
491
  "workflows label",
473
492
  {
474
- ns: DEBUG_PLUGIN
493
+ ns: meta.id
475
494
  }
476
495
  ],
477
496
  icon: "ph--function--regular"
@@ -485,7 +504,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
485
504
  label: [
486
505
  "traces label",
487
506
  {
488
- ns: DEBUG_PLUGIN
507
+ ns: meta.id
489
508
  }
490
509
  ],
491
510
  icon: "ph--line-segments--regular"
@@ -499,7 +518,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
499
518
  label: [
500
519
  "testing label",
501
520
  {
502
- ns: DEBUG_PLUGIN
521
+ ns: meta.id
503
522
  }
504
523
  ],
505
524
  icon: "ph--flask--regular"
@@ -512,38 +531,10 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
512
531
  ];
513
532
  }), Option.getOrElse(() => [])))
514
533
  }),
515
- // Debug node.
516
- createExtension({
517
- id: "dxos.org/plugin/debug/debug",
518
- connector: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => node2.id === ROOT_ID ? Option.some(node2) : Option.none()), Option.flatMap(() => {
519
- const [graph] = get(context.capabilities(Capabilities.AppGraph));
520
- return graph ? Option.some(graph) : Option.none();
521
- }), Option.flatMap((graph) => {
522
- return Option.none();
523
- }), Option.map((graph) => [
524
- {
525
- id: "dxos.org/plugin/debug/debug",
526
- type: "dxos.org/plugin/debug/debug",
527
- data: {
528
- graph
529
- },
530
- properties: {
531
- label: [
532
- "debug label",
533
- {
534
- ns: DEBUG_PLUGIN
535
- }
536
- ],
537
- disposition: "navigation",
538
- icon: "ph--bug--regular"
539
- }
540
- }
541
- ]), Option.getOrElse(() => [])))
542
- }),
543
534
  // Debug object companion.
544
535
  createExtension({
545
- id: `${DEBUG_PLUGIN}/debug-object`,
546
- connector: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => Obj.isObject(node2.data) ? Option.some(node2) : Option.none()), Option.map((node2) => [
536
+ id: `${meta.id}/debug-object`,
537
+ connector: (node) => Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => Obj.isObject(node2.data) ? Option.some(node2) : Option.none()), Option.map((node2) => [
547
538
  {
548
539
  id: [
549
540
  node2.id,
@@ -555,7 +546,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
555
546
  label: [
556
547
  "debug label",
557
548
  {
558
- ns: DEBUG_PLUGIN
549
+ ns: meta.id
559
550
  }
560
551
  ],
561
552
  icon: "ph--bug--regular",
@@ -567,8 +558,8 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
567
558
  }),
568
559
  // Devtools deck companion.
569
560
  createExtension({
570
- id: `${DEBUG_PLUGIN}/devtools-overview`,
571
- connector: (node) => Rx.make((get) => pipe(get(node), Option.flatMap((node2) => node2.id === ROOT_ID ? Option.some(node2) : Option.none()), Option.map((node2) => [
561
+ id: `${meta.id}/devtools-overview`,
562
+ connector: (node) => Rx.make((get) => Function.pipe(get(node), Option.flatMap((node2) => node2.id === ROOT_ID ? Option.some(node2) : Option.none()), Option.map((node2) => [
572
563
  {
573
564
  id: [
574
565
  node2.id,
@@ -580,7 +571,7 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
580
571
  label: [
581
572
  "devtools overview label",
582
573
  {
583
- ns: DEBUG_PLUGIN
574
+ ns: meta.id
584
575
  }
585
576
  ],
586
577
  icon: "ph--equalizer--regular",
@@ -590,8 +581,8 @@ var app_graph_builder_default = (context) => contributes(Capabilities.AppGraphBu
590
581
  }
591
582
  ]), Option.getOrElse(() => [])))
592
583
  })
593
- ]);
584
+ ]));
594
585
  export {
595
586
  app_graph_builder_default as default
596
587
  };
597
- //# sourceMappingURL=app-graph-builder-SQXFD2BL.mjs.map
588
+ //# sourceMappingURL=app-graph-builder-I4IHBKKN.mjs.map