@dxos/plugin-debug 0.8.2-main.36232bc → 0.8.2-main.5ca3450

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 (47) hide show
  1. package/dist/lib/browser/{SpaceGenerator-HR7R3RTE.mjs → SpaceGenerator-KFYI4ASS.mjs} +27 -26
  2. package/dist/lib/browser/SpaceGenerator-KFYI4ASS.mjs.map +7 -0
  3. package/dist/lib/browser/{app-graph-builder-RTKWOHHT.mjs → app-graph-builder-45VXMVPN.mjs} +16 -2
  4. package/dist/lib/browser/app-graph-builder-45VXMVPN.mjs.map +7 -0
  5. package/dist/lib/browser/{chunk-TCEHALD4.mjs → chunk-ZJTKMYOG.mjs} +5 -4
  6. package/dist/lib/browser/chunk-ZJTKMYOG.mjs.map +7 -0
  7. package/dist/lib/browser/index.mjs +4 -3
  8. package/dist/lib/browser/index.mjs.map +2 -2
  9. package/dist/lib/browser/meta.json +1 -1
  10. package/dist/lib/browser/{react-surface-NEMNEAAI.mjs → react-surface-LKBK4BBA.mjs} +16 -5
  11. package/dist/lib/browser/react-surface-LKBK4BBA.mjs.map +7 -0
  12. package/dist/lib/browser/{settings-BIRIGKTH.mjs → settings-6SG54GZO.mjs} +2 -2
  13. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  14. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  15. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  16. package/dist/types/src/components/Container.d.ts.map +1 -1
  17. package/dist/types/src/components/DebugApp/Tree.d.ts.map +1 -1
  18. package/dist/types/src/components/DebugObjectPanel.d.ts +2 -2
  19. package/dist/types/src/components/DebugObjectPanel.d.ts.map +1 -1
  20. package/dist/types/src/components/DebugSettings.d.ts.map +1 -1
  21. package/dist/types/src/components/SpaceGenerator/ObjectGenerator.d.ts.map +1 -1
  22. package/dist/types/src/components/SpaceGenerator/SchemaTable.d.ts.map +1 -1
  23. package/dist/types/src/components/SpaceGenerator/SpaceGenerator.d.ts.map +1 -1
  24. package/dist/types/src/components/SpaceGenerator/draw-util.d.ts.map +1 -1
  25. package/dist/types/src/components/SpaceGenerator/presets.d.ts +1 -1
  26. package/dist/types/src/components/SpaceGenerator/presets.d.ts.map +1 -1
  27. package/dist/types/src/components/Wireframe.d.ts +2 -2
  28. package/dist/types/src/components/Wireframe.d.ts.map +1 -1
  29. package/dist/types/src/translations.d.ts +1 -0
  30. package/dist/types/src/translations.d.ts.map +1 -1
  31. package/dist/types/src/types.d.ts +5 -4
  32. package/dist/types/src/types.d.ts.map +1 -1
  33. package/dist/types/tsconfig.tsbuildinfo +1 -1
  34. package/package.json +54 -52
  35. package/src/capabilities/app-graph-builder.ts +11 -2
  36. package/src/capabilities/react-surface.tsx +13 -3
  37. package/src/components/DebugObjectPanel.tsx +2 -2
  38. package/src/components/SpaceGenerator/ObjectGenerator.tsx +2 -2
  39. package/src/components/SpaceGenerator/presets.ts +14 -12
  40. package/src/components/Wireframe.tsx +2 -2
  41. package/src/translations.ts +1 -0
  42. package/src/types.ts +6 -5
  43. package/dist/lib/browser/SpaceGenerator-HR7R3RTE.mjs.map +0 -7
  44. package/dist/lib/browser/app-graph-builder-RTKWOHHT.mjs.map +0 -7
  45. package/dist/lib/browser/chunk-TCEHALD4.mjs.map +0 -7
  46. package/dist/lib/browser/react-surface-NEMNEAAI.mjs.map +0 -7
  47. /package/dist/lib/browser/{settings-BIRIGKTH.mjs.map → settings-6SG54GZO.mjs.map} +0 -0
@@ -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 { live, type Live } 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: Live<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.Organization, 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 = live(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 = live(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 { live, makeRef, type Live } 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: Live<any>[]) => void,\n) => Promise<Live<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 live(DocumentType, {\n name: faker.commerce.productName(),\n content: makeRef(live(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 live(DiagramType, {\n name: faker.commerce.productName(),\n canvas: makeRef(live(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 (space: Space, n: number, cb?: (objects: Live<any>[]) => void): Promise<Live<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(live(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 { live, 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 live(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": "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",
6
- "names": ["React", "useCallback", "useMemo", "useState", "createIntent", "useIntentDispatcher", "ComputeGraph", "toEffectSchema", "live", "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", "live", "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", "live", "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", "create", "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", "live", "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", "create", "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", "Organization", "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", "live", "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 { ClientCapabilities } from '@dxos/plugin-client';\nimport { ATTENDABLE_PATH_SEPARATOR, DECK_COMPANION_TYPE, PLANK_COMPANION_TYPE } from '@dxos/plugin-deck/types';\nimport { createExtension, type Node } from '@dxos/plugin-graph';\nimport { SPACE_PLUGIN } from '@dxos/plugin-space';\nimport { isEchoObject, type ReactiveEchoObject, parseId } 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> => node.id === 'root' || node.type === `${SPACE_PLUGIN}/settings`,\n connector: ({ node }) => {\n const layout = context.requestCapability(Capabilities.Layout);\n const client = context.requestCapability(ClientCapabilities.Client);\n const { spaceId } = parseId(layout.workspace);\n const space = spaceId && client.spaces.get(spaceId);\n\n return [\n {\n id: `${Devtools.id}-${node.id}`,\n data: null,\n type: DEVTOOLS_TYPE,\n properties: {\n label: ['devtools label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--hammer--regular',\n disposition: 'workspace',\n position: 'fallback',\n },\n nodes: [\n ...(space\n ? [\n {\n id: `debug-${node.id}`,\n type: 'dxos.org/plugin/debug/space',\n data: { space, 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: `${Devtools.Client.id}-${node.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: `${Devtools.Client.Config}-${node.id}`,\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: `${Devtools.Client.Storage}-${node.id}`,\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: `${Devtools.Client.Logs}-${node.id}`,\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: `${Devtools.Client.Diagnostics}-${node.id}`,\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: `${Devtools.Client.Tracing}-${node.id}`,\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: `${Devtools.Halo.id}-${node.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: `${Devtools.Halo.Identity}-${node.id}`,\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: `${Devtools.Halo.Devices}-${node.id}`,\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: `${Devtools.Halo.Keyring}-${node.id}`,\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: `${Devtools.Halo.Credentials}-${node.id}`,\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: `${Devtools.Echo.id}-${node.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: `${Devtools.Echo.Spaces}-${node.id}`,\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: `${Devtools.Echo.Space}-${node.id}`,\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: `${Devtools.Echo.Feeds}-${node.id}`,\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: `${Devtools.Echo.Objects}-${node.id}`,\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: `${Devtools.Echo.Automerge}-${node.id}`,\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: `${Devtools.Echo.Queues}-${node.id}`,\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: `${Devtools.Echo.Members}-${node.id}`,\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: `${Devtools.Echo.Metadata}-${node.id}`,\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: `${Devtools.Mesh.id}-${node.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: `${Devtools.Mesh.Signal}-${node.id}`,\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: `${Devtools.Mesh.Swarm}-${node.id}`,\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: `${Devtools.Mesh.Network}-${node.id}`,\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: `${prefix}-${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: `${prefix}-${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: `${Devtools.Edge.id}-${node.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: `${Devtools.Edge.Dashboard}-${node.id}`,\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: `${Devtools.Edge.Workflows}-${node.id}`,\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: `${Devtools.Edge.Traces}-${node.id}`,\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: `${Devtools.Edge.Testing}-${node.id}`,\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 // Devtools deck companion.\n createExtension({\n id: `${DEBUG_PLUGIN}/devtools-overview`,\n filter: (node): node is Node<null> => node.id === 'root',\n connector: ({ node }) => [\n {\n id: [node.id, 'devtools'].join(ATTENDABLE_PATH_SEPARATOR),\n type: DECK_COMPANION_TYPE,\n data: null,\n properties: {\n label: ['devtools overview label', { ns: DEBUG_PLUGIN }],\n icon: 'ph--hammer--regular',\n disposition: 'hidden',\n position: 'fallback',\n },\n },\n ],\n }),\n ]);\n"],
5
- "mappings": "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",
6
- "names": ["contributes", "Capabilities", "ClientCapabilities", "ATTENDABLE_PATH_SEPARATOR", "DECK_COMPANION_TYPE", "PLANK_COMPANION_TYPE", "createExtension", "SPACE_PLUGIN", "isEchoObject", "parseId", "DEVTOOLS_TYPE", "context", "contributes", "Capabilities", "AppGraphBuilder", "createExtension", "id", "filter", "node", "type", "SPACE_PLUGIN", "connector", "layout", "requestCapability", "Layout", "client", "ClientCapabilities", "Client", "spaceId", "parseId", "workspace", "space", "spaces", "get", "Devtools", "data", "properties", "label", "ns", "DEBUG_PLUGIN", "icon", "disposition", "position", "nodes", "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", "DECK_COMPANION_TYPE"]
7
- }
@@ -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
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/capabilities/react-surface.tsx", "../../../src/components/index.ts", "../../../src/components/DebugObjectPanel.tsx", "../../../src/components/DebugSettings.tsx", "../../../src/components/DebugStatus.tsx", "../../../src/components/Wireframe.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { pipe } from 'effect';\nimport React, { useCallback } from 'react';\n\nimport {\n Capabilities,\n chain,\n contributes,\n createIntent,\n createSurface,\n LayoutAction,\n useCapability,\n type PluginsContext,\n} from '@dxos/app-framework';\nimport {\n AutomergePanel,\n ConfigPanel,\n CredentialsPanel,\n DeviceListPanel,\n DiagnosticsPanel,\n EdgeDashboardPanel,\n FeedsPanel,\n IdentityPanel,\n InvocationTracePanel,\n KeyringPanel,\n LoggingPanel,\n MembersPanel,\n MetadataPanel,\n NetworkPanel,\n ObjectsPanel,\n QueuesPanel,\n SignalPanel,\n SpaceInfoPanel,\n SpaceListPanel,\n StoragePanel,\n SwarmPanel,\n TestingPanel,\n TracingPanel,\n WorkflowPanel,\n} from '@dxos/devtools';\nimport { SettingsStore } from '@dxos/local-storage';\nimport { log } from '@dxos/log';\nimport { ClientCapabilities } from '@dxos/plugin-client';\nimport { Graph } from '@dxos/plugin-graph';\nimport { ScriptAction } from '@dxos/plugin-script/types';\nimport { SpaceAction, CollectionType } from '@dxos/plugin-space/types';\nimport {\n SpaceState,\n isSpace,\n isEchoObject,\n type ReactiveEchoObject,\n type Live,\n type Space,\n parseId,\n} from '@dxos/react-client/echo';\n\nimport {\n DebugApp,\n DebugObjectPanel,\n DebugSettings,\n DebugStatus,\n DevtoolsOverviewContainer,\n SpaceGenerator,\n Wireframe,\n} from '../components';\nimport { DEBUG_PLUGIN } from '../meta';\nimport { type DebugSettingsProps, Devtools } from '../types';\n\ntype SpaceDebug = {\n type: string;\n space: Space;\n};\n\ntype GraphDebug = {\n graph: Graph;\n};\n\nconst isSpaceDebug = (data: any): data is SpaceDebug => data?.type === `${DEBUG_PLUGIN}/space` && isSpace(data.space);\nconst isGraphDebug = (data: any): data is GraphDebug => data?.graph instanceof Graph;\n\n// TODO(wittjosiah): Factor out?\nconst useCurrentSpace = () => {\n const layout = useCapability(Capabilities.Layout);\n const client = useCapability(ClientCapabilities.Client);\n const { spaceId } = parseId(layout.workspace);\n const space = spaceId ? client.spaces.get(spaceId) : undefined;\n return space;\n};\n\nexport default (context: PluginsContext) =>\n contributes(Capabilities.ReactSurface, [\n createSurface({\n id: `${DEBUG_PLUGIN}/plugin-settings`,\n role: 'article',\n filter: (data): data is { subject: SettingsStore<DebugSettingsProps> } =>\n data.subject instanceof SettingsStore && data.subject.prefix === DEBUG_PLUGIN,\n component: ({ data: { subject } }) => <DebugSettings settings={subject.value} />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/space`,\n role: 'article',\n filter: (data): data is { subject: SpaceDebug } => isSpaceDebug(data.subject),\n component: ({ data }) => {\n const handleCreateObject = useCallback(\n (objects: Live<any>[]) => {\n if (!isSpace(data.subject.space)) {\n return;\n }\n\n const collection =\n data.subject.space.state.get() === SpaceState.SPACE_READY &&\n data.subject.space.properties[CollectionType.typename]?.target;\n if (!(collection instanceof CollectionType)) {\n return;\n }\n\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n objects.forEach((object) => {\n void dispatch(createIntent(SpaceAction.AddObject, { target: collection, object }));\n });\n },\n [data.subject.space],\n );\n\n return <SpaceGenerator space={data.subject.space} onCreateObjects={handleCreateObject} />;\n },\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/graph`,\n role: 'article',\n filter: (data): data is { subject: GraphDebug } => isGraphDebug(data.subject),\n component: ({ data }) => <DebugApp graph={data.subject.graph} />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/wireframe`,\n role: ['article', 'section'],\n position: 'hoist',\n filter: (data): data is { subject: ReactiveEchoObject<any> } => {\n const settings = context\n .requestCapability(Capabilities.SettingsStore)\n .getStore<DebugSettingsProps>(DEBUG_PLUGIN)!.value;\n return isEchoObject(data.subject) && !!settings.wireframe;\n },\n component: ({ data, role }) => (\n <Wireframe label={`${role}:${name}`} object={data.subject} classNames='row-span-2 overflow-hidden' />\n ),\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/object-debug`,\n role: 'article',\n filter: (data): data is { companionTo: ReactiveEchoObject<any> } =>\n data.subject === 'debug' && isEchoObject(data.companionTo),\n component: ({ data }) => <DebugObjectPanel object={data.companionTo} />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/devtools-overview`,\n role: 'deck-companion--devtools',\n component: () => <DevtoolsOverviewContainer />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/status`,\n role: 'status',\n component: () => <DebugStatus />,\n }),\n\n //\n // Devtools\n //\n\n createSurface({\n id: `${DEBUG_PLUGIN}/client/config`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Client.Config,\n component: () => <ConfigPanel vaultSelector={false} />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/client/storage`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Client.Storage,\n component: () => <StoragePanel />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/client/logs`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Client.Logs,\n component: () => <LoggingPanel />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/client/diagnostics`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Client.Diagnostics,\n component: () => <DiagnosticsPanel />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/client/tracing`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Client.Tracing,\n component: () => <TracingPanel />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/halo/identity`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Halo.Identity,\n component: () => <IdentityPanel />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/halo/devices`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Halo.Devices,\n component: () => <DeviceListPanel />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/halo/keyring`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Halo.Keyring,\n component: () => <KeyringPanel />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/halo/credentials`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Halo.Credentials,\n component: () => {\n const space = useCurrentSpace();\n return <CredentialsPanel space={space} />;\n },\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/echo/spaces`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Spaces,\n component: () => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const handleSelect = useCallback(\n () => dispatch(createIntent(LayoutAction.Open, { part: 'main', subject: [Devtools.Echo.Space] })),\n [dispatch],\n );\n return <SpaceListPanel onSelect={handleSelect} />;\n },\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/echo/space`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Space,\n component: () => {\n const space = useCurrentSpace();\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const handleSelect = useCallback(\n () => dispatch(createIntent(LayoutAction.Open, { part: 'main', subject: [Devtools.Echo.Feeds] })),\n [dispatch],\n );\n return <SpaceInfoPanel space={space} onSelectFeed={handleSelect} onSelectPipeline={handleSelect} />;\n },\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/echo/feeds`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Feeds,\n component: () => {\n const space = useCurrentSpace();\n return <FeedsPanel space={space} />;\n },\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/echo/objects`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Objects,\n component: () => {\n const space = useCurrentSpace();\n return <ObjectsPanel space={space} />;\n },\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/echo/automerge`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Automerge,\n component: () => {\n const space = useCurrentSpace();\n return <AutomergePanel space={space} />;\n },\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/echo/queues`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Queues,\n component: () => <QueuesPanel />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/echo/members`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Members,\n component: () => {\n const space = useCurrentSpace();\n return <MembersPanel space={space} />;\n },\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/echo/metadata`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Echo.Metadata,\n component: () => <MetadataPanel />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/mesh/signal`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Mesh.Signal,\n component: () => <SignalPanel />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/mesh/swarm`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Mesh.Swarm,\n component: () => <SwarmPanel />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/mesh/network`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Mesh.Network,\n component: () => {\n const space = useCurrentSpace();\n return <NetworkPanel space={space} />;\n },\n }),\n // TODO(wittjosiah): Remove?\n // createSurface({\n // id: `${DEBUG_PLUGIN}/agent/dashboard`,\n // role: 'article',\n // filter: (data): data is any => data.subject === Devtools.Agent.Dashboard,\n // component: () => <DashboardPanel />,\n // }),\n createSurface({\n id: `${DEBUG_PLUGIN}/edge/dashboard`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Edge.Dashboard,\n component: () => <EdgeDashboardPanel />,\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/edge/workflows`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Edge.Workflows,\n component: () => {\n const space = useCurrentSpace();\n return <WorkflowPanel space={space} />;\n },\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/edge/traces`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Edge.Traces,\n component: () => {\n const space = useCurrentSpace();\n return <InvocationTracePanel space={space} />;\n },\n }),\n createSurface({\n id: `${DEBUG_PLUGIN}/edge/testing`,\n role: 'article',\n filter: (data): data is any => data.subject === Devtools.Edge.Testing,\n component: () => {\n const { dispatchPromise: dispatch } = context.requestCapability(Capabilities.IntentDispatcher);\n const onSpaceCreate = useCallback(\n async (space: Space) => {\n await space.waitUntilReady();\n await dispatch(createIntent(SpaceAction.Migrate, { space }));\n await space.db.flush();\n },\n [dispatch],\n );\n const onScriptPluginOpen = useCallback(\n async (space: Space) => {\n await space.waitUntilReady();\n const result = await dispatch(\n pipe(createIntent(ScriptAction.Create, { space }), chain(SpaceAction.AddObject, { target: space })),\n );\n log.info('script created', { result });\n await dispatch(\n createIntent(LayoutAction.Open, { part: 'main', subject: [`${space.id}:${result.data?.object.id}`] }),\n );\n },\n [dispatch],\n );\n return <TestingPanel onSpaceCreate={onSpaceCreate} onScriptPluginOpen={onScriptPluginOpen} />;\n },\n }),\n ]);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { lazy } from 'react';\n\nexport const DebugApp = lazy(() => import('./DebugApp'));\nexport const DevtoolsOverviewContainer = lazy(() => import('./DevtoolsOverviewContainer'));\nexport const SpaceGenerator = lazy(() => import('./SpaceGenerator'));\n\nexport * from './DebugObjectPanel';\nexport * from './DebugSettings';\nexport * from './DebugStatus';\nexport * from './Wireframe';\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React from 'react';\n\nimport { type ReactiveEchoObject } from '@dxos/client/echo';\nimport { Clipboard, Input } from '@dxos/react-ui';\nimport { SyntaxHighlighter } from '@dxos/react-ui-syntax-highlighter';\n\nexport type DebugObjectPanelProps = {\n object: ReactiveEchoObject<any>;\n};\n\n// TODO(burdon): Get schema and traverse references.\nexport const DebugObjectPanel = ({ object }: DebugObjectPanelProps) => {\n const dxn = `dxn:echo:@:${object.id}`;\n return (\n <Clipboard.Provider>\n <div className='flex flex-col'>\n <Input.Root>\n <div role='none' className='flex flex-col gap-1'>\n <div role='none' className='flex gap-1'>\n <Input.TextInput disabled value={dxn} />\n <Clipboard.IconButton value={dxn} />\n </div>\n </div>\n </Input.Root>\n <SyntaxHighlighter classNames='flex text-xs' language='json'>\n {JSON.stringify(object, null, 2)}\n </SyntaxHighlighter>\n </div>\n </Clipboard.Provider>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { useEffect, useState } from 'react';\n\nimport { Capabilities, useCapabilities } from '@dxos/app-framework';\nimport { type ConfigProto, defs, SaveConfig, Storage } from '@dxos/config';\nimport { log } from '@dxos/log';\nimport { useClient } from '@dxos/react-client';\nimport { useTranslation, Button, Toast, Input, useFileDownload, Select, Icon } from '@dxos/react-ui';\nimport { DeprecatedFormContainer, DeprecatedFormInput } from '@dxos/react-ui-form';\nimport { setDeep } from '@dxos/util';\n\nimport { DEBUG_PLUGIN } from '../meta';\nimport { type DebugSettingsProps } from '../types';\n\ntype Toast = {\n title: string;\n description?: string;\n};\n\nconst StorageAdapters = {\n opfs: defs.Runtime.Client.Storage.StorageDriver.WEBFS,\n idb: defs.Runtime.Client.Storage.StorageDriver.IDB,\n} as const;\n\nexport const DebugSettings = ({ settings }: { settings: DebugSettingsProps }) => {\n const { t } = useTranslation(DEBUG_PLUGIN);\n const [toast, setToast] = useState<Toast>();\n const client = useClient();\n const download = useFileDownload();\n // TODO(mykola): Get updates from other places that change Config.\n const [storageConfig, setStorageConfig] = useState<ConfigProto>({});\n const [upload] = useCapabilities(Capabilities.FileUploader);\n\n useEffect(() => {\n void Storage().then((config) => setStorageConfig(config));\n }, []);\n\n const handleToast = (toast: Toast) => {\n setToast(toast);\n const t = setTimeout(() => setToast(undefined), 5_000);\n return () => clearTimeout(t);\n };\n\n const handleDownload = async () => {\n const data = await client.diagnostics();\n const file = new Blob([JSON.stringify(data, undefined, 2)], { type: 'text/plain' });\n const fileName = `composer-${new Date().toISOString().replace(/\\W/g, '-')}.json`;\n download(file, fileName);\n\n if (upload) {\n const info = await upload(new File([file], fileName), client.spaces.default);\n if (!info) {\n log.error('diagnostics failed to upload to IPFS');\n return;\n }\n handleToast({ title: t('settings uploaded'), description: t('settings uploaded to clipboard') });\n\n // TODO(nf): move to IpfsPlugin?\n const url = client.config.values.runtime!.services!.ipfs!.gateway + '/' + info.cid;\n void navigator.clipboard.writeText(url);\n handleToast({ title: t('settings uploaded'), description: t('settings uploaded to clipboard') });\n log.info('diagnostics', { url });\n }\n };\n\n const handleRepair = async () => {\n try {\n const info = await client.repair();\n setStorageConfig(await Storage());\n handleToast({ title: t('settings repair success'), description: JSON.stringify(info, undefined, 2) });\n } catch (err: any) {\n handleToast({ title: t('settings repair failed'), description: err.message });\n }\n };\n\n return (\n <DeprecatedFormContainer>\n <DeprecatedFormInput label={t('settings wireframe')}>\n <Input.Switch checked={settings.wireframe} onCheckedChange={(checked) => (settings.wireframe = !!checked)} />\n </DeprecatedFormInput>\n <DeprecatedFormInput label={t('settings download diagnostics')}>\n <Button onClick={handleDownload}>\n <Icon icon='ph--download-simple--regular' size={5} />\n </Button>\n </DeprecatedFormInput>\n <DeprecatedFormInput label={t('settings repair')}>\n <Button onClick={handleRepair}>\n <Icon icon='ph--first-aid-kit--regular' size={5} />\n </Button>\n </DeprecatedFormInput>\n\n {/* TODO(burdon): Move to layout? */}\n {toast && (\n <Toast.Root>\n <Toast.Body>\n <Toast.Title>\n <Icon icon='ph--gift--duotone' size={5} classNames='inline mr-1' />\n <span>{toast.title}</span>\n </Toast.Title>\n {toast.description && <Toast.Description>{toast.description}</Toast.Description>}\n </Toast.Body>\n </Toast.Root>\n )}\n\n <DeprecatedFormInput label={t('settings choose storage adaptor')}>\n <Select.Root\n value={\n Object.entries(StorageAdapters).find(\n ([name, value]) => value === storageConfig?.runtime?.client?.storage?.dataStore,\n )?.[0]\n }\n onValueChange={(value) => {\n if (confirm(t('settings storage adapter changed alert'))) {\n updateConfig(\n storageConfig,\n setStorageConfig,\n ['runtime', 'client', 'storage', 'dataStore'],\n StorageAdapters[value as keyof typeof StorageAdapters],\n );\n }\n }}\n >\n <Select.TriggerButton placeholder={t('settings data store label')} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n {Object.keys(StorageAdapters).map((key) => (\n <Select.Option key={key} value={key}>\n {t(`settings storage adaptor ${key} label`)}\n </Select.Option>\n ))}\n </Select.Viewport>\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </DeprecatedFormInput>\n </DeprecatedFormContainer>\n );\n};\n\nconst updateConfig = (config: ConfigProto, setConfig: (newConfig: ConfigProto) => void, path: string[], value: any) => {\n const storageConfigCopy = JSON.parse(JSON.stringify(config ?? {}));\n setDeep(storageConfigCopy, path, value);\n setConfig(storageConfigCopy);\n queueMicrotask(async () => {\n await SaveConfig(storageConfigCopy);\n });\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { useAppGraph, useLayout } from '@dxos/app-framework';\nimport { TimeoutError } from '@dxos/async';\nimport { getActiveSpace } from '@dxos/plugin-space';\nimport { StatusBar } from '@dxos/plugin-status-bar';\nimport { ConnectionState } from '@dxos/protocols/proto/dxos/client/services';\nimport { useNetworkStatus } from '@dxos/react-client/mesh';\nimport { Icon } from '@dxos/react-ui';\n\nconst styles = {\n success: 'text-sky-300 dark:text-green-700',\n warning: 'text-orange-300 dark:text-orange-600',\n error: 'text-red-300 dark:text-red-600',\n};\n\n// TODO(burdon): Move out of debug plugin.\n// TODO(burdon): Make pluggable (move indicators to relevant plugins).\n// TODO(burdon): Vault heartbeat indicator (global scope)?\n\n/**\n * Ensure light doesn't flicker immediately after start.\n */\n// TODO(burdon): Move to @dxos/async (debounce?)\nconst _timer = (cb: (err?: Error) => void, options?: { min?: number; max?: number }) => {\n const min = options?.min ?? 500;\n let start: number;\n let pending: NodeJS.Timeout;\n let timeout: NodeJS.Timeout;\n return {\n start: () => {\n start = Date.now();\n clearTimeout(pending);\n if (options?.max) {\n clearTimeout(timeout);\n timeout = setTimeout(() => {\n cb(new TimeoutError(options.max));\n }, options.max);\n }\n },\n stop: () => {\n clearTimeout(timeout);\n const delta = Date.now() - start;\n if (delta < min) {\n pending = setTimeout(() => {\n cb();\n }, min - delta);\n }\n },\n };\n};\n\n/**\n * Global error handler.\n */\n// TODO(burdon): Integrate with Sentry?\nconst ErrorIndicator = () => {\n const [, forceUpdate] = useState({});\n const errorRef = useRef<Error>();\n useEffect(() => {\n const errorListener = (event: any) => {\n const error: Error = event.error ?? event.reason;\n if (errorRef.current !== error) {\n errorRef.current = error;\n forceUpdate({});\n }\n };\n\n // TODO(burdon): Register globally?\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/error_event\n window.addEventListener('error', errorListener);\n\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/unhandledrejection_event\n window.addEventListener('unhandledrejection', errorListener);\n\n return () => {\n window.removeEventListener('error', errorListener);\n window.removeEventListener('unhandledrejection', errorListener);\n };\n }, []);\n\n const handleReset = () => {\n errorRef.current = undefined;\n forceUpdate({});\n };\n\n if (errorRef.current) {\n return (\n <StatusBar.Button title={errorRef.current.message} onClick={handleReset}>\n <Icon icon='ph--warning-circle--duotone' size={4} classNames={styles.error} />\n </StatusBar.Button>\n );\n } else {\n return (\n <StatusBar.Item title='No errors.'>\n <Icon icon='ph--check--regular' size={4} />\n </StatusBar.Item>\n );\n }\n};\n\n/**\n * Swarm connection handler.\n */\nconst SwarmIndicator = () => {\n const [state, setState] = useState(0);\n const { swarm } = useNetworkStatus();\n useEffect(() => {\n setState(swarm === ConnectionState.ONLINE ? 0 : 1);\n }, [swarm]);\n\n if (state === 0) {\n return (\n <StatusBar.Item title='Connected to swarm.'>\n <Icon icon='ph--lightning--regular' size={4} />\n </StatusBar.Item>\n );\n } else {\n return (\n <StatusBar.Item title='Disconnected from swarm.'>\n <Icon icon='ph--lightning-slash--regular' size={4} classNames={styles.warning} />\n </StatusBar.Item>\n );\n }\n};\n\n/**\n * Data saving indicator.\n */\n// TODO(burdon): Merge with SaveStatus.\nconst SavingIndicator = () => {\n const [state, _setState] = useState(0);\n const layout = useLayout();\n const { graph } = useAppGraph();\n const _space = graph ? getActiveSpace(graph, layout.active[0]) : undefined;\n // TODO(dmaretskyi): Fix this when we have save status for automerge.\n // useEffect(() => {\n // if (!space) {\n // return;\n // }\n // const { start, stop } = timer(() => setState(0), { min: 250 });\n // return space.db.pendingBatch.on(({ duration, error }) => {\n // if (error) {\n // setState(2);\n // stop();\n // } else if (duration === undefined) {\n // setState(1);\n // start();\n // } else {\n // stop();\n // }\n // });\n // }, [space]);\n\n switch (state) {\n case 2:\n return (\n <StatusBar.Item title='Edit not saved.'>\n <Icon icon='ph--circle--duotone' size={4} classNames={styles.warning} />\n </StatusBar.Item>\n );\n case 1:\n return (\n <StatusBar.Item title='Saving...'>\n <Icon icon='ph--circle--duotone' size={4} classNames={styles.success} />\n </StatusBar.Item>\n );\n case 0:\n default:\n return (\n <StatusBar.Item title='Modified indicator.'>\n <Icon icon='ph--circle--duotone' size={4} />\n </StatusBar.Item>\n );\n }\n};\n\nconst indicators = [SavingIndicator, SwarmIndicator, ErrorIndicator];\n\nexport const DebugStatus = () => {\n return (\n <>\n {indicators.map((Indicator) => (\n <Indicator key={Indicator.name} />\n ))}\n </>\n );\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport React from 'react';\nimport { useResizeDetector } from 'react-resize-detector';\n\nimport { fullyQualifiedId, type ReactiveEchoObject } from '@dxos/react-client/echo';\nimport { type ThemedClassName } from '@dxos/react-ui';\nimport { useAttendableAttributes } from '@dxos/react-ui-attention';\nimport { SyntaxHighlighter } from '@dxos/react-ui-syntax-highlighter';\nimport { mx } from '@dxos/react-ui-theme';\n\n// TODO(burdon): Create generic container with wireframe mode.\nexport type WireframeProps = ThemedClassName<{\n label?: string;\n object: ReactiveEchoObject<any>;\n}>;\n\n// TODO(burdon): Make focusable and attendable with input.\nexport const Wireframe = ({ classNames, label, object }: WireframeProps) => {\n const attendableAttrs = useAttendableAttributes(fullyQualifiedId(object));\n const { width, height, ref } = useResizeDetector();\n return (\n <div ref={ref} className={mx('relative grow min-bs-96', classNames)} {...attendableAttrs}>\n <div className='absolute inset-2 flex flex-col gap-2 overflow-hidden font-mono'>\n <div className='flex justify-between'>\n <div>{label}</div>\n <div>{`[${width}x${height}]`}</div>\n </div>\n {object && (\n <SyntaxHighlighter language='json' classNames='flex w-full text-xs opacity-75 rounded'>\n {JSON.stringify(object, undefined, 2)}\n </SyntaxHighlighter>\n )}\n </div>\n <svg width={width} height={height} className='bg-transparent [&>*]:text-subdued'>\n <rect x={0} y={0} width={width} height={height} strokeWidth={1} fill='none' />\n <line x1={0} y1={0} x2={width} y2={height} strokeWidth={1} />\n <line x1={0} y1={height} x2={width} y2={0} strokeWidth={1} />\n </svg>\n </div>\n );\n};\n"],
5
- "mappings": "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",
6
- "names": ["pipe", "React", "useCallback", "Capabilities", "chain", "contributes", "createIntent", "createSurface", "LayoutAction", "useCapability", "AutomergePanel", "ConfigPanel", "CredentialsPanel", "DeviceListPanel", "DiagnosticsPanel", "EdgeDashboardPanel", "FeedsPanel", "IdentityPanel", "InvocationTracePanel", "KeyringPanel", "LoggingPanel", "MembersPanel", "MetadataPanel", "NetworkPanel", "ObjectsPanel", "QueuesPanel", "SignalPanel", "SpaceInfoPanel", "SpaceListPanel", "StoragePanel", "SwarmPanel", "TestingPanel", "TracingPanel", "WorkflowPanel", "SettingsStore", "log", "ClientCapabilities", "Graph", "ScriptAction", "SpaceAction", "CollectionType", "SpaceState", "isSpace", "isEchoObject", "parseId", "lazy", "React", "Clipboard", "Input", "SyntaxHighlighter", "DebugObjectPanel", "object", "dxn", "id", "Clipboard", "Provider", "div", "className", "Input", "Root", "role", "TextInput", "disabled", "value", "IconButton", "SyntaxHighlighter", "classNames", "language", "JSON", "stringify", "React", "useEffect", "useState", "Capabilities", "useCapabilities", "defs", "SaveConfig", "Storage", "log", "useClient", "useTranslation", "Button", "Toast", "Input", "useFileDownload", "Select", "Icon", "DeprecatedFormContainer", "DeprecatedFormInput", "setDeep", "StorageAdapters", "opfs", "defs", "Runtime", "Client", "Storage", "StorageDriver", "WEBFS", "idb", "IDB", "DebugSettings", "settings", "t", "useTranslation", "DEBUG_PLUGIN", "toast", "setToast", "useState", "client", "useClient", "download", "useFileDownload", "storageConfig", "setStorageConfig", "upload", "useCapabilities", "Capabilities", "FileUploader", "useEffect", "then", "config", "handleToast", "setTimeout", "undefined", "clearTimeout", "handleDownload", "data", "diagnostics", "file", "Blob", "JSON", "stringify", "type", "fileName", "Date", "toISOString", "replace", "info", "File", "spaces", "default", "log", "error", "title", "description", "url", "values", "runtime", "services", "ipfs", "gateway", "cid", "navigator", "clipboard", "writeText", "handleRepair", "repair", "err", "message", "React", "DeprecatedFormContainer", "DeprecatedFormInput", "label", "Input", "Switch", "checked", "wireframe", "onCheckedChange", "Button", "onClick", "Icon", "icon", "size", "Toast", "Root", "Body", "Title", "classNames", "span", "Description", "Select", "value", "Object", "entries", "find", "name", "storage", "dataStore", "onValueChange", "confirm", "updateConfig", "TriggerButton", "placeholder", "Portal", "Content", "Viewport", "keys", "map", "key", "Option", "setConfig", "path", "storageConfigCopy", "parse", "setDeep", "queueMicrotask", "SaveConfig", "React", "useEffect", "useRef", "useState", "useAppGraph", "useLayout", "TimeoutError", "getActiveSpace", "StatusBar", "ConnectionState", "useNetworkStatus", "Icon", "styles", "success", "warning", "error", "ErrorIndicator", "forceUpdate", "useState", "errorRef", "useRef", "useEffect", "errorListener", "event", "error", "reason", "current", "window", "addEventListener", "removeEventListener", "handleReset", "undefined", "React", "StatusBar", "Button", "title", "message", "onClick", "Icon", "icon", "size", "classNames", "styles", "Item", "SwarmIndicator", "state", "setState", "swarm", "useNetworkStatus", "ConnectionState", "ONLINE", "warning", "SavingIndicator", "_setState", "layout", "useLayout", "graph", "useAppGraph", "_space", "getActiveSpace", "active", "success", "indicators", "DebugStatus", "map", "Indicator", "key", "name", "React", "useResizeDetector", "fullyQualifiedId", "useAttendableAttributes", "SyntaxHighlighter", "mx", "Wireframe", "classNames", "label", "object", "attendableAttrs", "useAttendableAttributes", "fullyQualifiedId", "width", "height", "ref", "useResizeDetector", "React", "div", "className", "mx", "SyntaxHighlighter", "language", "JSON", "stringify", "undefined", "svg", "rect", "x", "y", "strokeWidth", "fill", "line", "x1", "y1", "x2", "y2", "DebugApp", "lazy", "DevtoolsOverviewContainer", "SpaceGenerator", "isSpaceDebug", "data", "type", "DEBUG_PLUGIN", "isSpace", "space", "isGraphDebug", "graph", "Graph", "useCurrentSpace", "layout", "useCapability", "Capabilities", "Layout", "client", "ClientCapabilities", "Client", "spaceId", "parseId", "workspace", "spaces", "get", "undefined", "context", "contributes", "ReactSurface", "createSurface", "id", "role", "filter", "subject", "SettingsStore", "prefix", "component", "React", "DebugSettings", "settings", "value", "handleCreateObject", "useCallback", "objects", "collection", "state", "SpaceState", "SPACE_READY", "properties", "CollectionType", "typename", "target", "dispatchPromise", "dispatch", "requestCapability", "IntentDispatcher", "forEach", "object", "createIntent", "SpaceAction", "AddObject", "SpaceGenerator", "onCreateObjects", "DebugApp", "position", "getStore", "isEchoObject", "wireframe", "Wireframe", "label", "name", "classNames", "companionTo", "DebugObjectPanel", "DevtoolsOverviewContainer", "DebugStatus", "Devtools", "Config", "ConfigPanel", "vaultSelector", "Storage", "StoragePanel", "Logs", "LoggingPanel", "Diagnostics", "DiagnosticsPanel", "Tracing", "TracingPanel", "Halo", "Identity", "IdentityPanel", "Devices", "DeviceListPanel", "Keyring", "KeyringPanel", "Credentials", "CredentialsPanel", "Echo", "Spaces", "handleSelect", "LayoutAction", "Open", "part", "Space", "SpaceListPanel", "onSelect", "Feeds", "SpaceInfoPanel", "onSelectFeed", "onSelectPipeline", "FeedsPanel", "Objects", "ObjectsPanel", "Automerge", "AutomergePanel", "Queues", "QueuesPanel", "Members", "MembersPanel", "Metadata", "MetadataPanel", "Mesh", "Signal", "SignalPanel", "Swarm", "SwarmPanel", "Network", "NetworkPanel", "Edge", "Dashboard", "EdgeDashboardPanel", "Workflows", "WorkflowPanel", "Traces", "InvocationTracePanel", "Testing", "onSpaceCreate", "waitUntilReady", "Migrate", "db", "flush", "onScriptPluginOpen", "result", "pipe", "ScriptAction", "Create", "chain", "log", "info", "TestingPanel"]
7
- }