@dxos/plugin-devtools 0.11.1 → 0.12.0-next-2800d0376abcc62d5544afdd744b16b2b960434e
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/{chunk-types.mjs → Devtools.mjs} +5 -14
- package/dist/lib/Devtools.mjs.map +1 -0
- package/dist/lib/DevtoolsEvents.mjs +15 -0
- package/dist/lib/DevtoolsEvents.mjs.map +1 -0
- package/dist/lib/DevtoolsPlugin.mjs +13 -36
- package/dist/lib/DevtoolsPlugin.mjs.map +1 -1
- package/dist/lib/capabilities.mjs +39 -5
- package/dist/lib/capabilities.mjs.map +1 -1
- package/dist/lib/capabilities.node.mjs +34 -0
- package/dist/lib/capabilities.node.mjs.map +1 -0
- package/dist/lib/capabilities.workerd.mjs +30 -0
- package/dist/lib/capabilities.workerd.mjs.map +1 -0
- package/dist/lib/chunk-CliPanel.mjs +103 -0
- package/dist/lib/chunk-CliPanel.mjs.map +1 -0
- package/dist/lib/chunk-DebugGraph.mjs +2 -2
- package/dist/lib/chunk-DebugGraph.mjs.map +1 -1
- package/dist/lib/chunk-DevtoolsOverviewContainer.mjs +14 -13
- package/dist/lib/chunk-DevtoolsOverviewContainer.mjs.map +1 -1
- package/dist/lib/chunk-GithubPanel.mjs +36 -30
- package/dist/lib/chunk-GithubPanel.mjs.map +1 -1
- package/dist/lib/chunk-RegistryPanel.mjs +2 -2
- package/dist/lib/chunk-RegistryPanel.mjs.map +1 -1
- package/dist/lib/chunk-app-graph-builder.mjs +66 -50
- package/dist/lib/chunk-app-graph-builder.mjs.map +1 -1
- package/dist/lib/chunk-react-context.mjs +4 -3
- package/dist/lib/chunk-react-context.mjs.map +1 -1
- package/dist/lib/chunk-react-surface.mjs +35 -28
- package/dist/lib/chunk-react-surface.mjs.map +1 -1
- package/dist/lib/chunk-rolldown-runtime.mjs +13 -0
- package/dist/lib/containers.mjs +2 -1
- package/dist/lib/containers.mjs.map +1 -1
- package/dist/lib/index.mjs +4 -3
- package/dist/lib/meta.mjs +29 -1
- package/dist/lib/meta.mjs.map +1 -0
- package/dist/lib/plugin.mjs +6 -5
- package/dist/lib/plugin.mjs.map +1 -1
- package/dist/lib/translations.mjs +1 -0
- package/dist/lib/translations.mjs.map +1 -1
- package/dist/lib/types.mjs +3 -2
- package/dist/types/src/DevtoolsPlugin.d.ts +36 -3
- package/dist/types/src/DevtoolsPlugin.d.ts.map +1 -1
- package/dist/types/src/capabilities/DevtoolsSurfaces.d.ts.map +1 -1
- package/dist/types/src/capabilities/app-graph-builder.d.ts +2 -2
- package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
- package/dist/types/src/capabilities/gen/node.d.ts +8 -0
- package/dist/types/src/capabilities/gen/node.d.ts.map +1 -0
- package/dist/types/src/capabilities/gen/workerd.d.ts +8 -0
- package/dist/types/src/capabilities/gen/workerd.d.ts.map +1 -0
- package/dist/types/src/capabilities/index.d.ts +7 -4
- package/dist/types/src/capabilities/index.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-context.d.ts +2 -2
- package/dist/types/src/capabilities/react-context.d.ts.map +1 -1
- package/dist/types/src/capabilities/react-surface.d.ts +2 -2
- package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
- package/dist/types/src/containers/CliPanel/CliPanel.d.ts +6 -0
- package/dist/types/src/containers/CliPanel/CliPanel.d.ts.map +1 -0
- package/dist/types/src/containers/CliPanel/CliPanel.stories.d.ts +89 -0
- package/dist/types/src/containers/CliPanel/CliPanel.stories.d.ts.map +1 -0
- package/dist/types/src/containers/CliPanel/index.d.ts +2 -0
- package/dist/types/src/containers/CliPanel/index.d.ts.map +1 -0
- package/dist/types/src/containers/CliPanel/useCliApp.d.ts +29 -0
- package/dist/types/src/containers/CliPanel/useCliApp.d.ts.map +1 -0
- package/dist/types/src/containers/DebugGraph/DebugGraph.d.ts +2 -2
- package/dist/types/src/containers/DebugGraph/DebugGraph.d.ts.map +1 -1
- package/dist/types/src/containers/GithubPanel/GithubComponent.d.ts +9 -4
- package/dist/types/src/containers/GithubPanel/GithubComponent.d.ts.map +1 -1
- package/dist/types/src/containers/GithubPanel/GithubComponent.stories.d.ts +6 -4
- package/dist/types/src/containers/GithubPanel/GithubComponent.stories.d.ts.map +1 -1
- package/dist/types/src/containers/index.d.ts +1 -0
- package/dist/types/src/containers/index.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +3 -2
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/plugin.d.ts +2 -1
- package/dist/types/src/plugin.d.ts.map +1 -1
- package/dist/types/src/plugin.test.d.ts +2 -0
- package/dist/types/src/plugin.test.d.ts.map +1 -0
- package/dist/types/src/translations.d.ts +6 -4
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/types/Devtools.d.ts +1 -0
- package/dist/types/src/types/Devtools.d.ts.map +1 -1
- package/dist/types/src/types/DevtoolsEvents.d.ts +8 -0
- package/dist/types/src/types/DevtoolsEvents.d.ts.map +1 -0
- package/dist/types/src/types/index.d.ts +1 -0
- package/dist/types/src/types/index.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +73 -74
- package/src/DevtoolsPlugin.ts +15 -0
- package/src/capabilities/DevtoolsSurfaces.tsx +9 -4
- package/src/capabilities/app-graph-builder.ts +72 -49
- package/src/capabilities/gen/node.ts +49 -0
- package/src/capabilities/gen/workerd.ts +44 -0
- package/src/capabilities/index.ts +50 -4
- package/src/capabilities/react-context.tsx +3 -2
- package/src/capabilities/react-surface.ts +11 -5
- package/src/containers/CliPanel/CliPanel.stories.tsx +75 -0
- package/src/containers/CliPanel/CliPanel.tsx +45 -0
- package/src/containers/CliPanel/index.ts +5 -0
- package/src/containers/CliPanel/useCliApp.ts +103 -0
- package/src/containers/DebugGraph/DebugGraph.tsx +3 -3
- package/src/containers/GithubPanel/GithubComponent.tsx +13 -15
- package/src/containers/RegistryPanel/RegistryPanel.tsx +1 -1
- package/src/containers/index.ts +1 -0
- package/src/index.ts +3 -2
- package/src/meta.ts +1 -1
- package/src/{DevtoolsPlugin.test.ts → plugin.test.ts} +5 -4
- package/src/plugin.tsx +20 -0
- package/src/translations.ts +1 -0
- package/src/types/Devtools.ts +1 -0
- package/src/types/DevtoolsEvents.ts +16 -0
- package/src/types/index.ts +1 -0
- package/dist/lib/DevtoolsPlugin.node.mjs +0 -10
- package/dist/lib/DevtoolsPlugin.node.mjs.map +0 -1
- package/dist/lib/DevtoolsPlugin.workerd.mjs +0 -8
- package/dist/lib/DevtoolsPlugin.workerd.mjs.map +0 -1
- package/dist/lib/chunk-meta.mjs +0 -30
- package/dist/lib/chunk-meta.mjs.map +0 -1
- package/dist/lib/chunk-types.mjs.map +0 -1
- package/dist/types/src/DevtoolsPlugin.node.d.ts +0 -4
- package/dist/types/src/DevtoolsPlugin.node.d.ts.map +0 -1
- package/dist/types/src/DevtoolsPlugin.test.d.ts +0 -2
- package/dist/types/src/DevtoolsPlugin.test.d.ts.map +0 -1
- package/dist/types/src/DevtoolsPlugin.workerd.d.ts +0 -4
- package/dist/types/src/DevtoolsPlugin.workerd.d.ts.map +0 -1
- package/src/DevtoolsPlugin.node.ts +0 -16
- package/src/DevtoolsPlugin.tsx +0 -54
- package/src/DevtoolsPlugin.workerd.ts +0 -11
- package/src/plugin.ts +0 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunk-app-graph-builder.mjs","names":[],"sources":["../../src/capabilities/app-graph-builder.ts"],"sourcesContent":["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capability } from '@dxos/app-framework';\nimport { AppCapabilities, AppNode, AppNodeMatcher, GraphPath } from '@dxos/app-toolkit';\nimport { GraphBuilder, Node, NodeMatcher } from '@dxos/plugin-graph';\nimport { type Space } from '@dxos/react-client/echo';\nimport { Position } from '@dxos/util';\n\nimport { meta } from '#meta';\nimport { Devtools } from '#types';\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n const extensions = yield* Effect.all([\n GraphBuilder.createExtension({\n id: 'root',\n match: NodeMatcher.whenRoot,\n actions: () =>\n Effect.succeed([\n Node.makeAction({\n id: 'resetData',\n data: () =>\n Effect.sync(() => {\n window.location.href = '/reset.html#continue';\n }),\n properties: {\n label: ['reset-data.label', { ns: meta.profile.key }],\n icon: 'ph--warning--regular',\n },\n }),\n ]),\n }),\n\n GraphBuilder.createExtension({\n id: 'devtools',\n match: NodeMatcher.whenAny(NodeMatcher.whenRoot, AppNodeMatcher.whenNavTreeGroup(GraphPath.GroupTypes.system)),\n connector: (_nodeOrSpace: Node.Node | Space, get) =>\n Effect.gen(function* () {\n const [graph] = get(yield* Capability.atom(AppCapabilities.AppGraph));\n\n return [\n Node.make({\n id: Devtools.nodeId(Devtools.id),\n data: null,\n type: Devtools.id,\n properties: {\n label: ['devtools.label', { ns: meta.profile.key }],\n icon: 'ph--toolbox--regular',\n position: Position.last,\n },\n nodes: [\n Node.make({\n id: Devtools.nodeId(Devtools.AppGraph),\n type: `${meta.profile.key}.app-graph`,\n data: { graph: graph?.graph, root: Node.RootId },\n properties: {\n label: ['debug-app-graph.label', { ns: meta.profile.key }],\n icon: 'ph--graph--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.ToolsExplorer),\n data: Devtools.ToolsExplorer,\n type: Devtools.id,\n properties: {\n label: ['debug-tools-explorer.label', { ns: meta.profile.key }],\n icon: 'ph--toolbox--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Client.id),\n data: null,\n type: Devtools.id,\n properties: {\n label: ['client.label', { ns: meta.profile.key }],\n icon: 'ph--users--regular',\n },\n nodes: [\n Node.make({\n id: Devtools.nodeId(Devtools.Client.Config),\n data: Devtools.Client.Config,\n type: Devtools.id,\n properties: {\n label: ['config.label', { ns: meta.profile.key }],\n icon: 'ph--gear--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Client.Storage),\n data: Devtools.Client.Storage,\n type: Devtools.id,\n properties: {\n label: ['storage.label', { ns: meta.profile.key }],\n icon: 'ph--hard-drives--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Client.Sqlite),\n data: Devtools.Client.Sqlite,\n type: Devtools.id,\n properties: {\n label: ['sqlite.label', { ns: meta.profile.key }],\n icon: 'ph--database--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Client.Logs),\n data: Devtools.Client.Logs,\n type: Devtools.id,\n properties: {\n label: ['logging.label', { ns: meta.profile.key }],\n icon: 'ph--file-text--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Client.Diagnostics),\n data: Devtools.Client.Diagnostics,\n type: Devtools.id,\n properties: {\n label: ['diagnostics.label', { ns: meta.profile.key }],\n icon: 'ph--chart-line--regular',\n },\n }),\n ],\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Halo.id),\n data: null,\n type: Devtools.id,\n properties: {\n label: ['halo.label', { ns: meta.profile.key }],\n icon: 'ph--identification-badge--regular',\n },\n nodes: [\n Node.make({\n id: Devtools.nodeId(Devtools.Halo.Identity),\n data: Devtools.Halo.Identity,\n type: Devtools.id,\n properties: {\n label: ['identity.label', { ns: meta.profile.key }],\n icon: 'ph--identification-badge--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Halo.Devices),\n data: Devtools.Halo.Devices,\n type: Devtools.id,\n properties: {\n label: ['devices.label', { ns: meta.profile.key }],\n icon: 'ph--devices--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Halo.Keyring),\n data: Devtools.Halo.Keyring,\n type: Devtools.id,\n properties: {\n label: ['keyring.label', { ns: meta.profile.key }],\n icon: 'ph--key--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Halo.Credentials),\n data: Devtools.Halo.Credentials,\n type: Devtools.id,\n properties: {\n label: ['credentials.label', { ns: meta.profile.key }],\n icon: 'ph--credit-card--regular',\n },\n }),\n ],\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Echo.id),\n data: null,\n type: Devtools.id,\n properties: {\n label: ['echo.label', { ns: meta.profile.key }],\n icon: 'ph--database--regular',\n },\n nodes: [\n Node.make({\n id: Devtools.nodeId(Devtools.Echo.Spaces),\n data: Devtools.Echo.Spaces,\n type: Devtools.id,\n properties: {\n label: ['spaces.label', { ns: meta.profile.key }],\n icon: 'ph--graph--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Echo.Space),\n data: Devtools.Echo.Space,\n type: Devtools.id,\n properties: {\n label: ['space.label', { ns: meta.profile.key }],\n icon: 'ph--planet--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Echo.Feeds),\n data: Devtools.Echo.Feeds,\n type: Devtools.id,\n properties: {\n label: ['feeds.label', { ns: meta.profile.key }],\n icon: 'ph--list-bullets--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Echo.Objects),\n data: Devtools.Echo.Objects,\n type: Devtools.id,\n properties: {\n label: ['objects.label', { ns: meta.profile.key }],\n icon: 'ph--cube--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Echo.Schema),\n data: Devtools.Echo.Schema,\n type: Devtools.id,\n properties: {\n label: ['schema.label', { ns: meta.profile.key }],\n icon: 'ph--database--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Echo.Registry),\n data: Devtools.Echo.Registry,\n type: Devtools.id,\n properties: {\n label: ['registry.label', { ns: meta.profile.key }],\n icon: 'ph--books--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Echo.Automerge),\n data: Devtools.Echo.Automerge,\n type: Devtools.id,\n properties: {\n label: ['automerge.label', { ns: meta.profile.key }],\n icon: 'ph--gear-six--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Echo.Queues),\n data: Devtools.Echo.Queues,\n type: Devtools.id,\n properties: {\n label: ['queues.label', { ns: meta.profile.key }],\n icon: 'ph--queue--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Echo.Members),\n data: Devtools.Echo.Members,\n type: Devtools.id,\n properties: {\n label: ['members.label', { ns: meta.profile.key }],\n icon: 'ph--users--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Echo.Metadata),\n data: Devtools.Echo.Metadata,\n type: Devtools.id,\n properties: {\n label: ['metadata.label', { ns: meta.profile.key }],\n icon: 'ph--hard-drive--regular',\n },\n }),\n ],\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Mesh.id),\n data: null,\n type: Devtools.id,\n properties: {\n label: ['mesh.label', { ns: meta.profile.key }],\n icon: 'ph--graph--regular',\n },\n nodes: [\n Node.make({\n id: Devtools.nodeId(Devtools.Mesh.Signal),\n data: Devtools.Mesh.Signal,\n type: Devtools.id,\n properties: {\n label: ['signal.label', { ns: meta.profile.key }],\n icon: 'ph--wifi-high--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Mesh.Swarm),\n data: Devtools.Mesh.Swarm,\n type: Devtools.id,\n properties: {\n label: ['swarm.label', { ns: meta.profile.key }],\n icon: 'ph--users-three--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Mesh.Network),\n data: Devtools.Mesh.Network,\n type: Devtools.id,\n properties: {\n label: ['network.label', { ns: meta.profile.key }],\n icon: 'ph--polygon--regular',\n },\n }),\n ],\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Edge.id),\n data: null,\n type: Devtools.id,\n properties: {\n label: ['edge.label', { ns: meta.profile.key }],\n icon: 'ph--cloud--regular',\n },\n nodes: [\n Node.make({\n id: Devtools.nodeId(Devtools.Edge.Dashboard),\n data: Devtools.Edge.Dashboard,\n type: Devtools.id,\n properties: {\n label: ['dashboard.label', { ns: meta.profile.key }],\n icon: 'ph--computer-tower--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Edge.Workflows),\n data: Devtools.Edge.Workflows,\n type: Devtools.id,\n properties: {\n label: ['workflows.label', { ns: meta.profile.key }],\n icon: 'ph--function--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Edge.Traces),\n data: Devtools.Edge.Traces,\n type: Devtools.id,\n properties: {\n label: ['traces.label', { ns: meta.profile.key }],\n icon: 'ph--line-segments--regular',\n },\n }),\n Node.make({\n id: Devtools.nodeId(Devtools.Edge.Testing),\n data: Devtools.Edge.Testing,\n type: Devtools.id,\n properties: {\n label: ['testing.label', { ns: meta.profile.key }],\n icon: 'ph--flask--regular',\n },\n }),\n ],\n }),\n ],\n }),\n ];\n }),\n }),\n\n // Devtools deck companion.\n GraphBuilder.createExtension({\n id: 'devtoolsOverview',\n match: NodeMatcher.whenRoot,\n connector: () =>\n Effect.succeed([\n AppNode.makeDeckCompanion({\n id: 'devtoolsOverview',\n label: ['devtools-overview.label', { ns: meta.profile.key }],\n icon: 'ph--equalizer--regular',\n data: 'devtoolsOverview' as const,\n position: Position.last,\n }),\n ]),\n }),\n ]);\n\n return Capability.contributes(AppCapabilities.AppGraphBuilder, extensions);\n }),\n);\n"],"mappings":";;;;;;;;AAeA,IAAA,4BAAe,WAAW,WACxB,OAAO,WAAW,aAAa;CAC7B,MAAM,aAAa,OAAO,OAAO,IAAI;EACnC,aAAa,gBAAgB;GAC3B,IAAI;GACJ,OAAO,YAAY;GACnB,eACE,OAAO,QAAQ,CACb,KAAK,WAAW;IACd,IAAI;IACJ,YACE,OAAO,WAAW;KAChB,OAAO,SAAS,OAAO;IACzB,CAAC;IACH,YAAY;KACV,OAAO,CAAC,oBAAoB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;KACpD,MAAM;IACR;GACF,CAAC,CACH,CAAC;EACL,CAAC;EAED,aAAa,gBAAgB;GAC3B,IAAI;GACJ,OAAO,YAAY,QAAQ,YAAY,UAAU,eAAe,iBAAiB,UAAU,WAAW,MAAM,CAAC;GAC7G,YAAY,cAAiC,QAC3C,OAAO,IAAI,aAAa;IACtB,MAAM,CAAC,SAAS,IAAI,OAAO,WAAW,KAAK,gBAAgB,QAAQ,CAAC;IAEpE,OAAO,CACL,KAAK,KAAK;KACR,IAAI,SAAS,OAAO,SAAS,EAAE;KAC/B,MAAM;KACN,MAAM,SAAS;KACf,YAAY;MACV,OAAO,CAAC,kBAAkB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;MAClD,MAAM;MACN,UAAU,SAAS;KACrB;KACA,OAAO;MACL,KAAK,KAAK;OACR,IAAI,SAAS,OAAO,SAAS,QAAQ;OACrC,MAAM,GAAG,KAAK,QAAQ,IAAI;OAC1B,MAAM;QAAE,OAAO,OAAO;QAAO,MAAM,KAAK;OAAO;OAC/C,YAAY;QACV,OAAO,CAAC,yBAAyB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;QACzD,MAAM;OACR;MACF,CAAC;MACD,KAAK,KAAK;OACR,IAAI,SAAS,OAAO,SAAS,aAAa;OAC1C,MAAM,SAAS;OACf,MAAM,SAAS;OACf,YAAY;QACV,OAAO,CAAC,8BAA8B,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;QAC9D,MAAM;OACR;MACF,CAAC;MACD,KAAK,KAAK;OACR,IAAI,SAAS,OAAO,SAAS,OAAO,EAAE;OACtC,MAAM;OACN,MAAM,SAAS;OACf,YAAY;QACV,OAAO,CAAC,gBAAgB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;QAChD,MAAM;OACR;OACA,OAAO;QACL,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,OAAO,MAAM;SAC1C,MAAM,SAAS,OAAO;SACtB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,gBAAgB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UAChD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,OAAO,OAAO;SAC3C,MAAM,SAAS,OAAO;SACtB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,iBAAiB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UACjD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,OAAO,MAAM;SAC1C,MAAM,SAAS,OAAO;SACtB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,gBAAgB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UAChD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,OAAO,IAAI;SACxC,MAAM,SAAS,OAAO;SACtB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,iBAAiB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UACjD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,OAAO,WAAW;SAC/C,MAAM,SAAS,OAAO;SACtB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,qBAAqB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UACrD,MAAM;SACR;QACF,CAAC;OACH;MACF,CAAC;MACD,KAAK,KAAK;OACR,IAAI,SAAS,OAAO,SAAS,KAAK,EAAE;OACpC,MAAM;OACN,MAAM,SAAS;OACf,YAAY;QACV,OAAO,CAAC,cAAc,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;QAC9C,MAAM;OACR;OACA,OAAO;QACL,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,QAAQ;SAC1C,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,kBAAkB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UAClD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,OAAO;SACzC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,iBAAiB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UACjD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,OAAO;SACzC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,iBAAiB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UACjD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,WAAW;SAC7C,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,qBAAqB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UACrD,MAAM;SACR;QACF,CAAC;OACH;MACF,CAAC;MACD,KAAK,KAAK;OACR,IAAI,SAAS,OAAO,SAAS,KAAK,EAAE;OACpC,MAAM;OACN,MAAM,SAAS;OACf,YAAY;QACV,OAAO,CAAC,cAAc,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;QAC9C,MAAM;OACR;OACA,OAAO;QACL,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,MAAM;SACxC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,gBAAgB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UAChD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,KAAK;SACvC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,eAAe,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UAC/C,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,KAAK;SACvC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,eAAe,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UAC/C,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,OAAO;SACzC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,iBAAiB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UACjD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,MAAM;SACxC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,gBAAgB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UAChD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,QAAQ;SAC1C,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,kBAAkB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UAClD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,SAAS;SAC3C,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,mBAAmB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UACnD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,MAAM;SACxC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,gBAAgB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UAChD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,OAAO;SACzC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,iBAAiB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UACjD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,QAAQ;SAC1C,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,kBAAkB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UAClD,MAAM;SACR;QACF,CAAC;OACH;MACF,CAAC;MACD,KAAK,KAAK;OACR,IAAI,SAAS,OAAO,SAAS,KAAK,EAAE;OACpC,MAAM;OACN,MAAM,SAAS;OACf,YAAY;QACV,OAAO,CAAC,cAAc,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;QAC9C,MAAM;OACR;OACA,OAAO;QACL,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,MAAM;SACxC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,gBAAgB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UAChD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,KAAK;SACvC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,eAAe,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UAC/C,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,OAAO;SACzC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,iBAAiB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UACjD,MAAM;SACR;QACF,CAAC;OACH;MACF,CAAC;MACD,KAAK,KAAK;OACR,IAAI,SAAS,OAAO,SAAS,KAAK,EAAE;OACpC,MAAM;OACN,MAAM,SAAS;OACf,YAAY;QACV,OAAO,CAAC,cAAc,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;QAC9C,MAAM;OACR;OACA,OAAO;QACL,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,SAAS;SAC3C,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,mBAAmB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UACnD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,SAAS;SAC3C,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,mBAAmB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UACnD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,MAAM;SACxC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,gBAAgB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UAChD,MAAM;SACR;QACF,CAAC;QACD,KAAK,KAAK;SACR,IAAI,SAAS,OAAO,SAAS,KAAK,OAAO;SACzC,MAAM,SAAS,KAAK;SACpB,MAAM,SAAS;SACf,YAAY;UACV,OAAO,CAAC,iBAAiB,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;UACjD,MAAM;SACR;QACF,CAAC;OACH;MACF,CAAC;KACH;IACF,CAAC,CACH;GACF,CAAC;EACL,CAAC;EAGD,aAAa,gBAAgB;GAC3B,IAAI;GACJ,OAAO,YAAY;GACnB,iBACE,OAAO,QAAQ,CACb,QAAQ,kBAAkB;IACxB,IAAI;IACJ,OAAO,CAAC,2BAA2B,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC;IAC3D,MAAM;IACN,MAAM;IACN,UAAU,SAAS;GACrB,CAAC,CACH,CAAC;EACL,CAAC;CACH,CAAC;CAED,OAAO,WAAW,YAAY,gBAAgB,iBAAiB,UAAU;AAC3E,CAAC,CACH"}
|
|
1
|
+
{"version":3,"file":"chunk-app-graph-builder.mjs","names":[],"sources":["../../src/capabilities/app-graph-builder.ts"],"sourcesContent":["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport * as Capability from '@dxos/app-framework/Capability';\nimport * as AppGraphBuilder from '@dxos/app-graph/AppGraphBuilder';\nimport * as AppGraphNode from '@dxos/app-graph/AppGraphNode';\nimport * as AppCapabilities from '@dxos/app-toolkit/AppCapabilities';\nimport * as AppNode from '@dxos/app-toolkit/AppNode';\nimport * as AppNodeMatcher from '@dxos/app-toolkit/AppNodeMatcher';\nimport * as GraphPath from '@dxos/app-toolkit/GraphPath';\nimport * as GraphNode from '@dxos/graph/GraphNode';\nimport * as GraphNodeMatcher from '@dxos/graph/GraphNodeMatcher';\nimport { type Space } from '@dxos/react-client/echo';\nimport { Position } from '@dxos/util';\n\nimport { meta } from '#meta';\nimport { Devtools } from '#types';\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n // Read the app graph through its atom so the extension establishes a reactive dependency\n // and re-evaluates once the capability lands (dependency modules contribute individually,\n // not batched per wave).\n const appGraphAtom = yield* Capability.atom(AppCapabilities.AppGraph);\n\n const extensions = yield* Effect.all([\n AppGraphBuilder.createExtension({\n id: 'root',\n match: GraphNodeMatcher.whenRoot,\n actions: () =>\n Effect.succeed([\n AppGraphNode.makeAction({\n id: 'resetData',\n data: () =>\n Effect.sync(() => {\n window.location.href = '/reset.html';\n }),\n properties: {\n label: ['reset-data.label', { ns: meta.profile.key }],\n icon: 'ph--warning--regular',\n },\n }),\n ]),\n }),\n\n AppGraphBuilder.createExtension({\n id: 'devtools',\n match: GraphNodeMatcher.whenAny(\n GraphNodeMatcher.whenRoot,\n AppNodeMatcher.whenNavTreeGroup(GraphPath.GroupTypes.system),\n ),\n connector: (_nodeOrSpace: AppGraphNode.Node | Space, get) =>\n Effect.gen(function* () {\n const [graph] = get(appGraphAtom);\n\n return [\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.id),\n data: null,\n type: Devtools.id,\n properties: {\n label: ['devtools.label', { ns: meta.profile.key }],\n icon: 'ph--toolbox--regular',\n position: Position.last,\n },\n nodes: [\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.AppGraph),\n type: `${meta.profile.key}.app-graph`,\n data: { graph: graph?.graph, root: GraphNode.RootId },\n properties: {\n label: ['debug-app-graph.label', { ns: meta.profile.key }],\n icon: 'ph--graph--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.ToolsExplorer),\n data: Devtools.ToolsExplorer,\n type: Devtools.id,\n properties: {\n label: ['debug-tools-explorer.label', { ns: meta.profile.key }],\n icon: 'ph--toolbox--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Cli),\n data: Devtools.Cli,\n type: Devtools.id,\n properties: {\n label: ['cli.label', { ns: meta.profile.key }],\n icon: 'ph--terminal-window--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Client.id),\n data: null,\n type: Devtools.id,\n properties: {\n label: ['client.label', { ns: meta.profile.key }],\n icon: 'ph--users--regular',\n },\n nodes: [\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Client.Config),\n data: Devtools.Client.Config,\n type: Devtools.id,\n properties: {\n label: ['config.label', { ns: meta.profile.key }],\n icon: 'ph--gear--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Client.Storage),\n data: Devtools.Client.Storage,\n type: Devtools.id,\n properties: {\n label: ['storage.label', { ns: meta.profile.key }],\n icon: 'ph--hard-drives--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Client.Sqlite),\n data: Devtools.Client.Sqlite,\n type: Devtools.id,\n properties: {\n label: ['sqlite.label', { ns: meta.profile.key }],\n icon: 'ph--database--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Client.Logs),\n data: Devtools.Client.Logs,\n type: Devtools.id,\n properties: {\n label: ['logging.label', { ns: meta.profile.key }],\n icon: 'ph--file-text--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Client.Diagnostics),\n data: Devtools.Client.Diagnostics,\n type: Devtools.id,\n properties: {\n label: ['diagnostics.label', { ns: meta.profile.key }],\n icon: 'ph--chart-line--regular',\n },\n }),\n ],\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Halo.id),\n data: null,\n type: Devtools.id,\n properties: {\n label: ['halo.label', { ns: meta.profile.key }],\n icon: 'ph--identification-badge--regular',\n },\n nodes: [\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Halo.Identity),\n data: Devtools.Halo.Identity,\n type: Devtools.id,\n properties: {\n label: ['identity.label', { ns: meta.profile.key }],\n icon: 'ph--identification-badge--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Halo.Devices),\n data: Devtools.Halo.Devices,\n type: Devtools.id,\n properties: {\n label: ['devices.label', { ns: meta.profile.key }],\n icon: 'ph--devices--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Halo.Keyring),\n data: Devtools.Halo.Keyring,\n type: Devtools.id,\n properties: {\n label: ['keyring.label', { ns: meta.profile.key }],\n icon: 'ph--key--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Halo.Credentials),\n data: Devtools.Halo.Credentials,\n type: Devtools.id,\n properties: {\n label: ['credentials.label', { ns: meta.profile.key }],\n icon: 'ph--credit-card--regular',\n },\n }),\n ],\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Echo.id),\n data: null,\n type: Devtools.id,\n properties: {\n label: ['echo.label', { ns: meta.profile.key }],\n icon: 'ph--database--regular',\n },\n nodes: [\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Echo.Spaces),\n data: Devtools.Echo.Spaces,\n type: Devtools.id,\n properties: {\n label: ['spaces.label', { ns: meta.profile.key }],\n icon: 'ph--graph--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Echo.Space),\n data: Devtools.Echo.Space,\n type: Devtools.id,\n properties: {\n label: ['space.label', { ns: meta.profile.key }],\n icon: 'ph--planet--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Echo.Feeds),\n data: Devtools.Echo.Feeds,\n type: Devtools.id,\n properties: {\n label: ['feeds.label', { ns: meta.profile.key }],\n icon: 'ph--list-bullets--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Echo.Objects),\n data: Devtools.Echo.Objects,\n type: Devtools.id,\n properties: {\n label: ['objects.label', { ns: meta.profile.key }],\n icon: 'ph--cube--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Echo.Schema),\n data: Devtools.Echo.Schema,\n type: Devtools.id,\n properties: {\n label: ['schema.label', { ns: meta.profile.key }],\n icon: 'ph--database--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Echo.Registry),\n data: Devtools.Echo.Registry,\n type: Devtools.id,\n properties: {\n label: ['registry.label', { ns: meta.profile.key }],\n icon: 'ph--books--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Echo.Automerge),\n data: Devtools.Echo.Automerge,\n type: Devtools.id,\n properties: {\n label: ['automerge.label', { ns: meta.profile.key }],\n icon: 'ph--gear-six--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Echo.Queues),\n data: Devtools.Echo.Queues,\n type: Devtools.id,\n properties: {\n label: ['queues.label', { ns: meta.profile.key }],\n icon: 'ph--queue--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Echo.Members),\n data: Devtools.Echo.Members,\n type: Devtools.id,\n properties: {\n label: ['members.label', { ns: meta.profile.key }],\n icon: 'ph--users--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Echo.Metadata),\n data: Devtools.Echo.Metadata,\n type: Devtools.id,\n properties: {\n label: ['metadata.label', { ns: meta.profile.key }],\n icon: 'ph--hard-drive--regular',\n },\n }),\n ],\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Mesh.id),\n data: null,\n type: Devtools.id,\n properties: {\n label: ['mesh.label', { ns: meta.profile.key }],\n icon: 'ph--graph--regular',\n },\n nodes: [\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Mesh.Signal),\n data: Devtools.Mesh.Signal,\n type: Devtools.id,\n properties: {\n label: ['signal.label', { ns: meta.profile.key }],\n icon: 'ph--wifi-high--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Mesh.Swarm),\n data: Devtools.Mesh.Swarm,\n type: Devtools.id,\n properties: {\n label: ['swarm.label', { ns: meta.profile.key }],\n icon: 'ph--users-three--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Mesh.Network),\n data: Devtools.Mesh.Network,\n type: Devtools.id,\n properties: {\n label: ['network.label', { ns: meta.profile.key }],\n icon: 'ph--polygon--regular',\n },\n }),\n ],\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Edge.id),\n data: null,\n type: Devtools.id,\n properties: {\n label: ['edge.label', { ns: meta.profile.key }],\n icon: 'ph--cloud--regular',\n },\n nodes: [\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Edge.Dashboard),\n data: Devtools.Edge.Dashboard,\n type: Devtools.id,\n properties: {\n label: ['dashboard.label', { ns: meta.profile.key }],\n icon: 'ph--computer-tower--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Edge.Workflows),\n data: Devtools.Edge.Workflows,\n type: Devtools.id,\n properties: {\n label: ['workflows.label', { ns: meta.profile.key }],\n icon: 'ph--function--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Edge.Traces),\n data: Devtools.Edge.Traces,\n type: Devtools.id,\n properties: {\n label: ['traces.label', { ns: meta.profile.key }],\n icon: 'ph--line-segments--regular',\n },\n }),\n AppGraphNode.make({\n id: Devtools.nodeId(Devtools.Edge.Testing),\n data: Devtools.Edge.Testing,\n type: Devtools.id,\n properties: {\n label: ['testing.label', { ns: meta.profile.key }],\n icon: 'ph--flask--regular',\n },\n }),\n ],\n }),\n ],\n }),\n ];\n }),\n }),\n\n // Devtools deck companion.\n AppGraphBuilder.createExtension({\n id: 'devtoolsOverview',\n match: GraphNodeMatcher.whenRoot,\n connector: () =>\n Effect.succeed([\n AppNode.makeDeckCompanion({\n id: 'devtoolsOverview',\n label: ['devtools-overview.label', { ns: meta.profile.key }],\n icon: 'ph--equalizer--regular',\n data: 'devtoolsOverview' as const,\n position: Position.last,\n }),\n ]),\n }),\n ]);\n\n return Capability.contribute(AppCapabilities.AppGraphBuilder, extensions);\n }),\n);\n"],"mappings":"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"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { Capabilities, Capability } from "@dxos/app-framework";
|
|
2
|
-
import { meta } from "#meta";
|
|
3
1
|
import * as Effect from "effect/Effect";
|
|
2
|
+
import * as Capability from "@dxos/app-framework/Capability";
|
|
3
|
+
import { meta } from "#meta";
|
|
4
4
|
import "react";
|
|
5
|
+
import * as Capabilities from "@dxos/app-framework/Capabilities";
|
|
5
6
|
import { Surface } from "@dxos/app-framework/ui";
|
|
6
7
|
import { DevtoolsContextProvider } from "@dxos/devtools";
|
|
7
8
|
import { jsx } from "react/jsx-runtime";
|
|
8
9
|
//#region src/capabilities/react-context.tsx
|
|
9
|
-
var react_context_default = Capability.makeModule(() => Effect.succeed(Capability.
|
|
10
|
+
var react_context_default = Capability.makeModule(() => Effect.succeed(Capability.contribute(Capabilities.ReactContext, {
|
|
10
11
|
id: meta.profile.key,
|
|
11
12
|
context: ({ children }) => /* @__PURE__ */ jsx(Surface.ProfilerProvider, { children: /* @__PURE__ */ jsx(DevtoolsContextProvider, { children }) })
|
|
12
13
|
})));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunk-react-context.mjs","names":[],"sources":["../../src/capabilities/react-context.tsx"],"sourcesContent":["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React from 'react';\n\nimport
|
|
1
|
+
{"version":3,"file":"chunk-react-context.mjs","names":[],"sources":["../../src/capabilities/react-context.tsx"],"sourcesContent":["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport React from 'react';\n\nimport * as Capabilities from '@dxos/app-framework/Capabilities';\nimport * as Capability from '@dxos/app-framework/Capability';\nimport { Surface } from '@dxos/app-framework/ui';\nimport { DevtoolsContextProvider } from '@dxos/devtools';\n\nimport { meta } from '#meta';\n\nexport default Capability.makeModule(() =>\n Effect.succeed(\n Capability.contribute(Capabilities.ReactContext, {\n id: meta.profile.key,\n context: ({ children }) => (\n <Surface.ProfilerProvider>\n <DevtoolsContextProvider>{children}</DevtoolsContextProvider>\n </Surface.ProfilerProvider>\n ),\n }),\n ),\n);\n"],"mappings":";;;;;;;;;AAcA,IAAA,wBAAe,WAAW,iBACxB,OAAO,QACL,WAAW,WAAW,aAAa,cAAc;CAC/C,IAAI,KAAK,QAAQ;CACjB,UAAU,EAAE,eACV,oBAAC,QAAQ,kBAAT,EAAA,UACE,oBAAC,yBAAD,EAA0B,SAAkC,CAAA,EACpC,CAAA;AAE9B,CAAC,CACH,CACF"}
|
|
@@ -1,19 +1,21 @@
|
|
|
1
|
-
import { Capabilities, Capability } from "@dxos/app-framework";
|
|
2
1
|
import * as Effect from "effect/Effect";
|
|
3
|
-
import
|
|
4
|
-
import { useCallback } from "react";
|
|
2
|
+
import * as Capability from "@dxos/app-framework/Capability";
|
|
5
3
|
import { Devtools } from "#types";
|
|
4
|
+
import { useCallback } from "react";
|
|
5
|
+
import * as GraphPath from "@dxos/app-toolkit/GraphPath";
|
|
6
|
+
import * as Capabilities from "@dxos/app-framework/Capabilities";
|
|
6
7
|
import { Surface, useOperationInvoker } from "@dxos/app-framework/ui";
|
|
7
8
|
import { AutomergePanel, ConfigPanel, CredentialsPanel, DeviceListPanel, DiagnosticsPanel, EdgeDashboardPanel, FeedsPanel, IdentityPanel, InvocationTraceContainer, KeyringPanel, LoggingPanel, MembersPanel, MetadataPanel, NetworkPanel, ObjectsPanel, QueuesPanel, SchemaPanel, SignalPanel, SpaceInfoPanel, SpaceListPanel, SqlitePanel, StoragePanel, SwarmPanel, TestingPanel, WorkflowPanel } from "@dxos/devtools";
|
|
8
9
|
import { jsx } from "react/jsx-runtime";
|
|
9
10
|
import { AppSurface, useActiveSpace } from "@dxos/app-toolkit/ui";
|
|
10
11
|
import { EDGE_SERVICE_DEFAULTS, EdgeServiceName } from "@dxos/config";
|
|
11
12
|
import { ToolsExplorer } from "@dxos/react-ui-introspect";
|
|
12
|
-
import { DebugGraph, DevtoolsOverviewContainer, RegistryPanel } from "#containers";
|
|
13
|
+
import { CliPanel, DebugGraph, DevtoolsOverviewContainer, RegistryPanel } from "#containers";
|
|
14
|
+
import * as LayoutOperation from "@dxos/app-toolkit/LayoutOperation";
|
|
13
15
|
import { Feed } from "@dxos/echo";
|
|
14
16
|
import { log } from "@dxos/log";
|
|
15
|
-
import
|
|
16
|
-
import
|
|
17
|
+
import * as ScriptOperation from "@dxos/plugin-script/ScriptOperation";
|
|
18
|
+
import * as SpaceOperation from "@dxos/plugin-space/SpaceOperation";
|
|
17
19
|
//#region src/capabilities/DevtoolsSurfaces.tsx
|
|
18
20
|
var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-devtools/src/capabilities/DevtoolsSurfaces.tsx";
|
|
19
21
|
/**
|
|
@@ -26,7 +28,8 @@ var ActiveSpacePanel = ({ Panel }) => {
|
|
|
26
28
|
};
|
|
27
29
|
var SpaceListSurface = () => {
|
|
28
30
|
const { invokePromise } = useOperationInvoker();
|
|
29
|
-
|
|
31
|
+
const handleSelect = useCallback(() => invokePromise(LayoutOperation.Open, { subject: [Devtools.Echo.Space] }), [invokePromise]);
|
|
32
|
+
return /* @__PURE__ */ jsx(SpaceListPanel, { onSelect: handleSelect });
|
|
30
33
|
};
|
|
31
34
|
var SpaceInfoSurface = () => {
|
|
32
35
|
const space = useActiveSpace();
|
|
@@ -52,27 +55,26 @@ var EdgeTracesSurface = () => {
|
|
|
52
55
|
};
|
|
53
56
|
var EdgeTestingSurface = () => {
|
|
54
57
|
const { invokePromise } = useOperationInvoker();
|
|
58
|
+
const onSpaceCreate = useCallback(async (space) => {
|
|
59
|
+
await space.waitUntilReady();
|
|
60
|
+
await invokePromise(SpaceOperation.Migrate, { space });
|
|
61
|
+
await space.db.flush();
|
|
62
|
+
}, [invokePromise]);
|
|
63
|
+
const onScriptPluginOpen = useCallback(async (space) => {
|
|
64
|
+
await space.waitUntilReady();
|
|
65
|
+
const createResult = await invokePromise(ScriptOperation.CreateScript, { db: space.db });
|
|
66
|
+
if (createResult.data?.object) await invokePromise(SpaceOperation.AddObject, { object: createResult.data.object }, { spaceId: space.db.spaceId });
|
|
67
|
+
log.info("script created", { result: createResult }, {
|
|
68
|
+
"~LogMeta": "~LogMeta",
|
|
69
|
+
F: __dxlog_file,
|
|
70
|
+
L: 94,
|
|
71
|
+
S: void 0
|
|
72
|
+
});
|
|
73
|
+
if (createResult.data?.object) await invokePromise(LayoutOperation.Open, { subject: [GraphPath.getObjectPathFromObject(createResult.data.object)] });
|
|
74
|
+
}, [invokePromise]);
|
|
55
75
|
return /* @__PURE__ */ jsx(TestingPanel, {
|
|
56
|
-
onSpaceCreate
|
|
57
|
-
|
|
58
|
-
await invokePromise(SpaceOperation.Migrate, { space });
|
|
59
|
-
await space.db.flush();
|
|
60
|
-
}, [invokePromise]),
|
|
61
|
-
onScriptPluginOpen: useCallback(async (space) => {
|
|
62
|
-
await space.waitUntilReady();
|
|
63
|
-
const createResult = await invokePromise(ScriptOperation.CreateScript, { db: space.db });
|
|
64
|
-
if (createResult.data?.object) await invokePromise(SpaceOperation.AddObject, {
|
|
65
|
-
target: space.db,
|
|
66
|
-
object: createResult.data.object
|
|
67
|
-
});
|
|
68
|
-
log.info("script created", { result: createResult }, {
|
|
69
|
-
"~LogMeta": "~LogMeta",
|
|
70
|
-
F: __dxlog_file,
|
|
71
|
-
L: 89,
|
|
72
|
-
S: void 0
|
|
73
|
-
});
|
|
74
|
-
if (createResult.data?.object) await invokePromise(LayoutOperation.Open, { subject: [GraphPath.getObjectPathFromObject(createResult.data.object)] });
|
|
75
|
-
}, [invokePromise])
|
|
76
|
+
onSpaceCreate,
|
|
77
|
+
onScriptPluginOpen
|
|
76
78
|
});
|
|
77
79
|
};
|
|
78
80
|
//#endregion
|
|
@@ -84,7 +86,7 @@ var isGraphDebug = (data) => {
|
|
|
84
86
|
return typeof graph === "object" && graph !== null && "json" in graph && typeof graph.json === "function" && typeof root === "string";
|
|
85
87
|
};
|
|
86
88
|
var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* () {
|
|
87
|
-
return Capability.
|
|
89
|
+
return Capability.contribute(Capabilities.ReactSurface, [
|
|
88
90
|
Surface.create({
|
|
89
91
|
id: "appGraph",
|
|
90
92
|
filter: AppSurface.subject(AppSurface.Article, isGraphDebug),
|
|
@@ -100,6 +102,11 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ()
|
|
|
100
102
|
component: ToolsExplorer,
|
|
101
103
|
props: () => ({ serverUrl: MCP_SERVER_URL })
|
|
102
104
|
}),
|
|
105
|
+
Surface.create({
|
|
106
|
+
id: "cli",
|
|
107
|
+
filter: AppSurface.literal(AppSurface.Article, Devtools.Cli),
|
|
108
|
+
component: CliPanel
|
|
109
|
+
}),
|
|
103
110
|
Surface.create({
|
|
104
111
|
id: "registry",
|
|
105
112
|
filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Registry),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunk-react-surface.mjs","names":[],"sources":["../../src/capabilities/DevtoolsSurfaces.tsx","../../src/capabilities/react-surface.ts"],"sourcesContent":["//\n// Copyright 2025 DXOS.org\n//\n\n// Surface components that cannot be expressed as a `props` mapper, because they call hooks.\n\nimport React, { type ComponentType, useCallback } from 'react';\n\nimport { useOperationInvoker } from '@dxos/app-framework/ui';\nimport { GraphPath, LayoutOperation } from '@dxos/app-toolkit';\nimport { useActiveSpace } from '@dxos/app-toolkit/ui';\nimport { InvocationTraceContainer, SpaceInfoPanel, SpaceListPanel, TestingPanel } from '@dxos/devtools';\nimport { Feed } from '@dxos/echo';\nimport { log } from '@dxos/log';\nimport { ScriptOperation } from '@dxos/plugin-script';\nimport { SpaceOperation } from '@dxos/plugin-space';\nimport { type Space } from '@dxos/react-client/echo';\n\nimport { Devtools } from '#types';\n\nexport type ActiveSpacePanelProps = {\n /** Stable module-level panel component; the surface passes it through its `props` mapper. */\n Panel: ComponentType<{ space: Space }>;\n};\n\n/**\n * Most devtools panels take the active space and render nothing without one. A mapper cannot read\n * the active space (it is a hook) nor decline to render, so they share this wrapper.\n */\nexport const ActiveSpacePanel = ({ Panel }: ActiveSpacePanelProps) => {\n const space = useActiveSpace();\n\n return space ? <Panel space={space} /> : null;\n};\n\nexport const SpaceListSurface = () => {\n const { invokePromise } = useOperationInvoker();\n const handleSelect = useCallback(\n () => invokePromise(LayoutOperation.Open, { subject: [Devtools.Echo.Space] }),\n [invokePromise],\n );\n\n return <SpaceListPanel onSelect={handleSelect} />;\n};\n\nexport const SpaceInfoSurface = () => {\n const space = useActiveSpace();\n const { invokePromise } = useOperationInvoker();\n const handleSelect = useCallback(\n () => invokePromise(LayoutOperation.Open, { subject: [Devtools.Echo.Feeds] }),\n [invokePromise],\n );\n if (!space) {\n return null;\n }\n\n return <SpaceInfoPanel space={space} onSelectFeed={handleSelect} onSelectPipeline={handleSelect} />;\n};\n\nexport const EdgeTracesSurface = () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n const feed = space.properties.invocationTraceFeed?.target;\n const feedDXN = feed ? Feed.getFeedUri(feed) : undefined;\n\n return <InvocationTraceContainer db={space.db} feedDXN={feedDXN} detailAxis='block' />;\n};\n\nexport const EdgeTestingSurface = () => {\n const { invokePromise } = useOperationInvoker();\n const onSpaceCreate = useCallback(\n async (space: Space) => {\n await space.waitUntilReady();\n await invokePromise(SpaceOperation.Migrate, { space });\n await space.db.flush();\n },\n [invokePromise],\n );\n const onScriptPluginOpen = useCallback(\n async (space: Space) => {\n await space.waitUntilReady();\n const createResult = await invokePromise(ScriptOperation.CreateScript, { db: space.db });\n if (createResult.data?.object) {\n await invokePromise(SpaceOperation.AddObject, { target: space.db, object: createResult.data.object });\n }\n log.info('script created', { result: createResult });\n if (createResult.data?.object) {\n await invokePromise(LayoutOperation.Open, {\n subject: [GraphPath.getObjectPathFromObject(createResult.data.object)],\n });\n }\n },\n [invokePromise],\n );\n\n return <TestingPanel onSpaceCreate={onSpaceCreate} onScriptPluginOpen={onScriptPluginOpen} />;\n};\n","//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { Surface } from '@dxos/app-framework/ui';\nimport { AppSurface } from '@dxos/app-toolkit/ui';\nimport { EDGE_SERVICE_DEFAULTS, EdgeServiceName } from '@dxos/config';\nimport {\n AutomergePanel,\n ConfigPanel,\n CredentialsPanel,\n DeviceListPanel,\n DiagnosticsPanel,\n EdgeDashboardPanel,\n FeedsPanel,\n IdentityPanel,\n KeyringPanel,\n LoggingPanel,\n MembersPanel,\n MetadataPanel,\n NetworkPanel,\n ObjectsPanel,\n QueuesPanel,\n SchemaPanel,\n SignalPanel,\n SqlitePanel,\n StoragePanel,\n SwarmPanel,\n WorkflowPanel,\n} from '@dxos/devtools';\nimport { type Graph } from '@dxos/plugin-graph';\nimport { ToolsExplorer } from '@dxos/react-ui-introspect';\n\nimport { DebugGraph, DevtoolsOverviewContainer, RegistryPanel } from '#containers';\nimport { Devtools } from '#types';\n\nimport {\n ActiveSpacePanel,\n EdgeTestingSurface,\n EdgeTracesSurface,\n SpaceInfoSurface,\n SpaceListSurface,\n} from './DevtoolsSurfaces';\n\nconst MCP_SERVER_URL = EDGE_SERVICE_DEFAULTS[EdgeServiceName.Introspect];\n\ntype GraphDebug = {\n graph: Graph.Graph;\n root: string;\n};\n\nconst isGraphDebug = (data: unknown): data is GraphDebug => {\n if (typeof data !== 'object' || data === null || !('graph' in data) || !('root' in data)) {\n return false;\n }\n\n const { graph, root } = data;\n return (\n typeof graph === 'object' &&\n graph !== null &&\n 'json' in graph &&\n typeof graph.json === 'function' &&\n typeof root === 'string'\n );\n};\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n return Capability.contributes(Capabilities.ReactSurface, [\n Surface.create({\n id: 'appGraph',\n filter: AppSurface.subject(AppSurface.Article, isGraphDebug),\n component: DebugGraph,\n props: ({ data: { subject } }) => ({ graph: subject.graph, root: subject.root }),\n }),\n Surface.create({\n id: 'toolsExplorer',\n filter: AppSurface.literal(AppSurface.Article, Devtools.ToolsExplorer),\n component: ToolsExplorer,\n props: () => ({ serverUrl: MCP_SERVER_URL }),\n }),\n Surface.create({\n id: 'registry',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Registry),\n component: RegistryPanel,\n }),\n Surface.create({\n id: 'devtoolsOverview',\n filter: Surface.makeFilter(AppSurface.deckCompanion('devtoolsOverview')),\n component: DevtoolsOverviewContainer,\n }),\n\n //\n // Devtools\n //\n\n Surface.create({\n id: 'client.config',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Config),\n component: ConfigPanel,\n props: () => ({ vaultSelector: false }),\n }),\n Surface.create({\n id: 'client.storage',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Storage),\n component: StoragePanel,\n }),\n Surface.create({\n id: 'client.sqlite',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Sqlite),\n component: SqlitePanel,\n }),\n Surface.create({\n id: 'client.logs',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Logs),\n component: LoggingPanel,\n }),\n Surface.create({\n id: 'client.diagnostics',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Diagnostics),\n component: DiagnosticsPanel,\n }),\n Surface.create({\n id: 'halo.identity',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Halo.Identity),\n component: IdentityPanel,\n }),\n Surface.create({\n id: 'halo.devices',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Halo.Devices),\n component: DeviceListPanel,\n }),\n Surface.create({\n id: 'halo.keyring',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Halo.Keyring),\n component: KeyringPanel,\n }),\n Surface.create({\n id: 'halo.credentials',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Halo.Credentials),\n component: ActiveSpacePanel,\n props: () => ({ Panel: CredentialsPanel }),\n }),\n Surface.create({\n id: 'echo.spaces',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Spaces),\n component: SpaceListSurface,\n }),\n Surface.create({\n id: 'echo.space',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Space),\n component: SpaceInfoSurface,\n }),\n Surface.create({\n id: 'echo.feeds',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Feeds),\n component: ActiveSpacePanel,\n props: () => ({ Panel: FeedsPanel }),\n }),\n Surface.create({\n id: 'echo.objects',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Objects),\n component: ActiveSpacePanel,\n props: () => ({ Panel: ObjectsPanel }),\n }),\n Surface.create({\n id: 'echo.schema',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Schema),\n component: ActiveSpacePanel,\n props: () => ({ Panel: SchemaPanel }),\n }),\n Surface.create({\n id: 'echo.automerge',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Automerge),\n component: ActiveSpacePanel,\n props: () => ({ Panel: AutomergePanel }),\n }),\n Surface.create({\n id: 'echo.queues',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Queues),\n component: QueuesPanel,\n }),\n Surface.create({\n id: 'echo.members',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Members),\n component: ActiveSpacePanel,\n props: () => ({ Panel: MembersPanel }),\n }),\n Surface.create({\n id: 'echo.metadata',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Metadata),\n component: MetadataPanel,\n }),\n Surface.create({\n id: 'mesh.signal',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Mesh.Signal),\n component: SignalPanel,\n }),\n Surface.create({\n id: 'mesh.swarm',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Mesh.Swarm),\n component: SwarmPanel,\n }),\n Surface.create({\n id: 'mesh.network',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Mesh.Network),\n component: ActiveSpacePanel,\n props: () => ({ Panel: NetworkPanel }),\n }),\n Surface.create({\n id: 'edge.dashboard',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Dashboard),\n component: EdgeDashboardPanel,\n }),\n Surface.create({\n id: 'edge.workflows',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Workflows),\n component: ActiveSpacePanel,\n props: () => ({ Panel: WorkflowPanel }),\n }),\n Surface.create({\n id: 'edge.traces',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Traces),\n component: EdgeTracesSurface,\n }),\n Surface.create({\n id: 'edge.testing',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Testing),\n component: EdgeTestingSurface,\n }),\n ]);\n }),\n);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chunk-react-surface.mjs","names":[],"sources":["../../src/capabilities/DevtoolsSurfaces.tsx","../../src/capabilities/react-surface.ts"],"sourcesContent":["//\n// Copyright 2025 DXOS.org\n//\n\n// Surface components that cannot be expressed as a `props` mapper, because they call hooks.\n\nimport React, { type ComponentType, useCallback } from 'react';\n\nimport { useOperationInvoker } from '@dxos/app-framework/ui';\nimport * as GraphPath from '@dxos/app-toolkit/GraphPath';\nimport * as LayoutOperation from '@dxos/app-toolkit/LayoutOperation';\nimport { useActiveSpace } from '@dxos/app-toolkit/ui';\nimport { InvocationTraceContainer, SpaceInfoPanel, SpaceListPanel, TestingPanel } from '@dxos/devtools';\nimport { Feed } from '@dxos/echo';\nimport { log } from '@dxos/log';\nimport * as ScriptOperation from '@dxos/plugin-script/ScriptOperation';\nimport * as SpaceOperation from '@dxos/plugin-space/SpaceOperation';\nimport { type Space } from '@dxos/react-client/echo';\n\nimport { Devtools } from '#types';\n\nexport type ActiveSpacePanelProps = {\n /** Stable module-level panel component; the surface passes it through its `props` mapper. */\n Panel: ComponentType<{ space: Space }>;\n};\n\n/**\n * Most devtools panels take the active space and render nothing without one. A mapper cannot read\n * the active space (it is a hook) nor decline to render, so they share this wrapper.\n */\nexport const ActiveSpacePanel = ({ Panel }: ActiveSpacePanelProps) => {\n const space = useActiveSpace();\n\n return space ? <Panel space={space} /> : null;\n};\n\nexport const SpaceListSurface = () => {\n const { invokePromise } = useOperationInvoker();\n const handleSelect = useCallback(\n () => invokePromise(LayoutOperation.Open, { subject: [Devtools.Echo.Space] }),\n [invokePromise],\n );\n\n return <SpaceListPanel onSelect={handleSelect} />;\n};\n\nexport const SpaceInfoSurface = () => {\n const space = useActiveSpace();\n const { invokePromise } = useOperationInvoker();\n const handleSelect = useCallback(\n () => invokePromise(LayoutOperation.Open, { subject: [Devtools.Echo.Feeds] }),\n [invokePromise],\n );\n if (!space) {\n return null;\n }\n\n return <SpaceInfoPanel space={space} onSelectFeed={handleSelect} onSelectPipeline={handleSelect} />;\n};\n\nexport const EdgeTracesSurface = () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n const feed = space.properties.invocationTraceFeed?.target;\n const feedDXN = feed ? Feed.getFeedUri(feed) : undefined;\n\n return <InvocationTraceContainer db={space.db} feedDXN={feedDXN} detailAxis='block' />;\n};\n\nexport const EdgeTestingSurface = () => {\n const { invokePromise } = useOperationInvoker();\n const onSpaceCreate = useCallback(\n async (space: Space) => {\n await space.waitUntilReady();\n await invokePromise(SpaceOperation.Migrate, { space });\n await space.db.flush();\n },\n [invokePromise],\n );\n const onScriptPluginOpen = useCallback(\n async (space: Space) => {\n await space.waitUntilReady();\n const createResult = await invokePromise(ScriptOperation.CreateScript, { db: space.db });\n if (createResult.data?.object) {\n await invokePromise(\n SpaceOperation.AddObject,\n { object: createResult.data.object },\n { spaceId: space.db.spaceId },\n );\n }\n log.info('script created', { result: createResult });\n if (createResult.data?.object) {\n await invokePromise(LayoutOperation.Open, {\n subject: [GraphPath.getObjectPathFromObject(createResult.data.object)],\n });\n }\n },\n [invokePromise],\n );\n\n return <TestingPanel onSpaceCreate={onSpaceCreate} onScriptPluginOpen={onScriptPluginOpen} />;\n};\n","//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport * as Capabilities from '@dxos/app-framework/Capabilities';\nimport * as Capability from '@dxos/app-framework/Capability';\nimport { Surface } from '@dxos/app-framework/ui';\nimport type * as AppGraph from '@dxos/app-graph/AppGraph';\nimport { AppSurface } from '@dxos/app-toolkit/ui';\nimport { EDGE_SERVICE_DEFAULTS, EdgeServiceName } from '@dxos/config';\nimport {\n AutomergePanel,\n ConfigPanel,\n CredentialsPanel,\n DeviceListPanel,\n DiagnosticsPanel,\n EdgeDashboardPanel,\n FeedsPanel,\n IdentityPanel,\n KeyringPanel,\n LoggingPanel,\n MembersPanel,\n MetadataPanel,\n NetworkPanel,\n ObjectsPanel,\n QueuesPanel,\n SchemaPanel,\n SignalPanel,\n SqlitePanel,\n StoragePanel,\n SwarmPanel,\n WorkflowPanel,\n} from '@dxos/devtools';\nimport { ToolsExplorer } from '@dxos/react-ui-introspect';\n\nimport { CliPanel, DebugGraph, DevtoolsOverviewContainer, RegistryPanel } from '#containers';\nimport { Devtools } from '#types';\n\nimport {\n ActiveSpacePanel,\n EdgeTestingSurface,\n EdgeTracesSurface,\n SpaceInfoSurface,\n SpaceListSurface,\n} from './DevtoolsSurfaces';\n\nconst MCP_SERVER_URL = EDGE_SERVICE_DEFAULTS[EdgeServiceName.Introspect];\n\ntype GraphDebug = {\n graph: AppGraph.Graph;\n root: string;\n};\n\nconst isGraphDebug = (data: unknown): data is GraphDebug => {\n if (typeof data !== 'object' || data === null || !('graph' in data) || !('root' in data)) {\n return false;\n }\n\n const { graph, root } = data;\n return (\n typeof graph === 'object' &&\n graph !== null &&\n 'json' in graph &&\n typeof graph.json === 'function' &&\n typeof root === 'string'\n );\n};\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* () {\n return Capability.contribute(Capabilities.ReactSurface, [\n Surface.create({\n id: 'appGraph',\n filter: AppSurface.subject(AppSurface.Article, isGraphDebug),\n component: DebugGraph,\n props: ({ data: { subject } }) => ({ graph: subject.graph, root: subject.root }),\n }),\n Surface.create({\n id: 'toolsExplorer',\n filter: AppSurface.literal(AppSurface.Article, Devtools.ToolsExplorer),\n component: ToolsExplorer,\n props: () => ({ serverUrl: MCP_SERVER_URL }),\n }),\n Surface.create({\n id: 'cli',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Cli),\n component: CliPanel,\n }),\n Surface.create({\n id: 'registry',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Registry),\n component: RegistryPanel,\n }),\n Surface.create({\n id: 'devtoolsOverview',\n filter: Surface.makeFilter(AppSurface.deckCompanion('devtoolsOverview')),\n component: DevtoolsOverviewContainer,\n }),\n\n //\n // Devtools\n //\n\n Surface.create({\n id: 'client.config',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Config),\n component: ConfigPanel,\n props: () => ({ vaultSelector: false }),\n }),\n Surface.create({\n id: 'client.storage',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Storage),\n component: StoragePanel,\n }),\n Surface.create({\n id: 'client.sqlite',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Sqlite),\n component: SqlitePanel,\n }),\n Surface.create({\n id: 'client.logs',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Logs),\n component: LoggingPanel,\n }),\n Surface.create({\n id: 'client.diagnostics',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Diagnostics),\n component: DiagnosticsPanel,\n }),\n Surface.create({\n id: 'halo.identity',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Halo.Identity),\n component: IdentityPanel,\n }),\n Surface.create({\n id: 'halo.devices',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Halo.Devices),\n component: DeviceListPanel,\n }),\n Surface.create({\n id: 'halo.keyring',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Halo.Keyring),\n component: KeyringPanel,\n }),\n Surface.create({\n id: 'halo.credentials',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Halo.Credentials),\n component: ActiveSpacePanel,\n props: () => ({ Panel: CredentialsPanel }),\n }),\n Surface.create({\n id: 'echo.spaces',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Spaces),\n component: SpaceListSurface,\n }),\n Surface.create({\n id: 'echo.space',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Space),\n component: SpaceInfoSurface,\n }),\n Surface.create({\n id: 'echo.feeds',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Feeds),\n component: ActiveSpacePanel,\n props: () => ({ Panel: FeedsPanel }),\n }),\n Surface.create({\n id: 'echo.objects',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Objects),\n component: ActiveSpacePanel,\n props: () => ({ Panel: ObjectsPanel }),\n }),\n Surface.create({\n id: 'echo.schema',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Schema),\n component: ActiveSpacePanel,\n props: () => ({ Panel: SchemaPanel }),\n }),\n Surface.create({\n id: 'echo.automerge',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Automerge),\n component: ActiveSpacePanel,\n props: () => ({ Panel: AutomergePanel }),\n }),\n Surface.create({\n id: 'echo.queues',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Queues),\n component: QueuesPanel,\n }),\n Surface.create({\n id: 'echo.members',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Members),\n component: ActiveSpacePanel,\n props: () => ({ Panel: MembersPanel }),\n }),\n Surface.create({\n id: 'echo.metadata',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Metadata),\n component: MetadataPanel,\n }),\n Surface.create({\n id: 'mesh.signal',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Mesh.Signal),\n component: SignalPanel,\n }),\n Surface.create({\n id: 'mesh.swarm',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Mesh.Swarm),\n component: SwarmPanel,\n }),\n Surface.create({\n id: 'mesh.network',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Mesh.Network),\n component: ActiveSpacePanel,\n props: () => ({ Panel: NetworkPanel }),\n }),\n Surface.create({\n id: 'edge.dashboard',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Dashboard),\n component: EdgeDashboardPanel,\n }),\n Surface.create({\n id: 'edge.workflows',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Workflows),\n component: ActiveSpacePanel,\n props: () => ({ Panel: WorkflowPanel }),\n }),\n Surface.create({\n id: 'edge.traces',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Traces),\n component: EdgeTracesSurface,\n }),\n Surface.create({\n id: 'edge.testing',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Testing),\n component: EdgeTestingSurface,\n }),\n ]);\n }),\n);\n"],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
//#region \0rolldown/runtime.js
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __exportAll = (all, no_symbols) => {
|
|
4
|
+
let target = {};
|
|
5
|
+
for (var name in all) __defProp(target, name, {
|
|
6
|
+
get: all[name],
|
|
7
|
+
enumerable: true
|
|
8
|
+
});
|
|
9
|
+
if (!no_symbols) __defProp(target, Symbol.toStringTag, { value: "Module" });
|
|
10
|
+
return target;
|
|
11
|
+
};
|
|
12
|
+
//#endregion
|
|
13
|
+
export { __exportAll as t };
|
package/dist/lib/containers.mjs
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { lazy } from "react";
|
|
2
2
|
//#region src/containers/index.ts
|
|
3
|
+
var CliPanel = lazy(() => import("./chunk-CliPanel.mjs"));
|
|
3
4
|
var DebugGraph = lazy(() => import("./chunk-DebugGraph.mjs"));
|
|
4
5
|
var DevtoolsOverviewContainer = lazy(() => import("./chunk-DevtoolsOverviewContainer.mjs"));
|
|
5
6
|
var GithubPanel = lazy(() => import("./chunk-GithubPanel.mjs"));
|
|
6
7
|
var RegistryPanel = lazy(() => import("./chunk-RegistryPanel.mjs"));
|
|
7
8
|
//#endregion
|
|
8
|
-
export { DebugGraph, DevtoolsOverviewContainer, GithubPanel, RegistryPanel };
|
|
9
|
+
export { CliPanel, DebugGraph, DevtoolsOverviewContainer, GithubPanel, RegistryPanel };
|
|
9
10
|
|
|
10
11
|
//# sourceMappingURL=containers.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"containers.mjs","names":[],"sources":["../../src/containers/index.ts"],"sourcesContent":["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentType, lazy } from 'react';\n\nexport const DebugGraph: ComponentType<any> = lazy(() => import('./DebugGraph'));\nexport const DevtoolsOverviewContainer: ComponentType<any> = lazy(() => import('./DevtoolsOverviewContainer'));\nexport const GithubPanel: ComponentType<any> = lazy(() => import('./GithubPanel'));\nexport const RegistryPanel: ComponentType<any> = lazy(() => import('./RegistryPanel'));\n"],"mappings":";;AAMA,IAAa,aAAiC,WAAW,OAAO,yBAAe;AAC/E,IAAa,4BAAgD,WAAW,OAAO,wCAA8B;AAC7G,IAAa,cAAkC,WAAW,OAAO,0BAAgB;AACjF,IAAa,gBAAoC,WAAW,OAAO,4BAAkB"}
|
|
1
|
+
{"version":3,"file":"containers.mjs","names":[],"sources":["../../src/containers/index.ts"],"sourcesContent":["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type ComponentType, lazy } from 'react';\n\nexport const CliPanel: ComponentType<any> = lazy(() => import('./CliPanel'));\nexport const DebugGraph: ComponentType<any> = lazy(() => import('./DebugGraph'));\nexport const DevtoolsOverviewContainer: ComponentType<any> = lazy(() => import('./DevtoolsOverviewContainer'));\nexport const GithubPanel: ComponentType<any> = lazy(() => import('./GithubPanel'));\nexport const RegistryPanel: ComponentType<any> = lazy(() => import('./RegistryPanel'));\n"],"mappings":";;AAMA,IAAa,WAA+B,WAAW,OAAO,uBAAa;AAC3E,IAAa,aAAiC,WAAW,OAAO,yBAAe;AAC/E,IAAa,4BAAgD,WAAW,OAAO,wCAA8B;AAC7G,IAAa,cAAkC,WAAW,OAAO,0BAAgB;AACjF,IAAa,gBAAoC,WAAW,OAAO,4BAAkB"}
|
package/dist/lib/index.mjs
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import { t as
|
|
2
|
-
|
|
3
|
-
export
|
|
1
|
+
import { t as DevtoolsPlugin_exports } from "./DevtoolsPlugin.mjs";
|
|
2
|
+
export * from "#meta";
|
|
3
|
+
export * from "#types";
|
|
4
|
+
export { DevtoolsPlugin_exports as DevtoolsPlugin };
|
package/dist/lib/meta.mjs
CHANGED
|
@@ -1,2 +1,30 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as Plugin from "@dxos/app-framework/Plugin";
|
|
2
|
+
import { Config2 } from "@dxos/app-framework/config";
|
|
3
|
+
import { trim } from "@dxos/util";
|
|
4
|
+
//#region dx.config.ts
|
|
5
|
+
var dx_config_default = Config2.make({ plugin: {
|
|
6
|
+
key: "org.dxos.plugin.devtools",
|
|
7
|
+
name: "Devtools",
|
|
8
|
+
author: "DXOS",
|
|
9
|
+
description: trim`
|
|
10
|
+
DevtoolsPlugin is the developer inspector for DXOS Composer. It adds a structured Devtools node
|
|
11
|
+
to the navigation graph — grouped into Client, HALO, ECHO, Mesh, and EDGE sub-sections —
|
|
12
|
+
exposing panel views for config, storage, logs, diagnostics, identity, devices, feeds,
|
|
13
|
+
objects, schemas, automerge internals, network topology, EDGE workflows, and invocation
|
|
14
|
+
traces, all driven by the @dxos/devtools component library.
|
|
15
|
+
|
|
16
|
+
Additional utilities include an app-graph inspector, a ToolsExplorer connected to the DXOS MCP
|
|
17
|
+
introspect service, and a globalThis helper for manual storage-version testing.
|
|
18
|
+
`,
|
|
19
|
+
source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-devtools",
|
|
20
|
+
icon: { key: "ph--toolbox--regular" },
|
|
21
|
+
spec: "PLUGIN.mdl",
|
|
22
|
+
tags: ["labs"]
|
|
23
|
+
} });
|
|
24
|
+
//#endregion
|
|
25
|
+
//#region src/meta.ts
|
|
26
|
+
var meta = Plugin.getMetaFromConfig(dx_config_default);
|
|
27
|
+
//#endregion
|
|
2
28
|
export { meta };
|
|
29
|
+
|
|
30
|
+
//# sourceMappingURL=meta.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meta.mjs","names":[],"sources":["../../dx.config.ts","../../src/meta.ts"],"sourcesContent":["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Config2 } from '@dxos/app-framework/config';\nimport { trim } from '@dxos/util';\n\nexport default Config2.make({\n plugin: {\n key: 'org.dxos.plugin.devtools',\n name: 'Devtools',\n author: 'DXOS',\n description: trim`\n DevtoolsPlugin is the developer inspector for DXOS Composer. It adds a structured Devtools node\n to the navigation graph — grouped into Client, HALO, ECHO, Mesh, and EDGE sub-sections —\n exposing panel views for config, storage, logs, diagnostics, identity, devices, feeds,\n objects, schemas, automerge internals, network topology, EDGE workflows, and invocation\n traces, all driven by the @dxos/devtools component library.\n\n Additional utilities include an app-graph inspector, a ToolsExplorer connected to the DXOS MCP\n introspect service, and a globalThis helper for manual storage-version testing.\n `,\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-devtools',\n icon: { key: 'ph--toolbox--regular' },\n spec: 'PLUGIN.mdl',\n tags: ['labs'],\n },\n});\n","//\n// Copyright 2023 DXOS.org\n//\n\nimport * as Plugin from '@dxos/app-framework/Plugin';\n\nimport config from '../dx.config';\n\nexport const meta = Plugin.getMetaFromConfig(config);\n"],"mappings":";;;;AAOA,IAAA,oBAAe,QAAQ,KAAK,EAC1B,QAAQ;CACN,KAAK;CACL,MAAM;CACN,QAAQ;CACR,aAAa,IAAI;;;;;;;;;;CAUjB,QAAQ;CACR,MAAM,EAAE,KAAK,uBAAuB;CACpC,MAAM;CACN,MAAM,CAAC,MAAM;AACf,EACF,CAAC;;;ACnBD,IAAa,OAAO,OAAO,kBAAkB,iBAAM"}
|
package/dist/lib/plugin.mjs
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { meta } from "#meta";
|
|
2
|
+
import * as Plugin from "@dxos/app-framework/Plugin";
|
|
3
|
+
import { AppGraphBuilder, PluginAsset, ReactContext, ReactSurface, SetupDevtools, Translations } from "#capabilities";
|
|
4
|
+
//#region src/plugin.tsx
|
|
5
|
+
var DevtoolsPlugin = Plugin.define(meta).pipe(Plugin.addModule(AppGraphBuilder), Plugin.addModule(PluginAsset), Plugin.addModule(ReactContext), Plugin.addModule(ReactSurface), Plugin.addModule(SetupDevtools), Plugin.addModule(Translations), Plugin.make);
|
|
5
6
|
//#endregion
|
|
6
|
-
export { DevtoolsPlugin };
|
|
7
|
+
export { DevtoolsPlugin, DevtoolsPlugin as default };
|
|
7
8
|
|
|
8
9
|
//# sourceMappingURL=plugin.mjs.map
|
package/dist/lib/plugin.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.mjs","names":[],"sources":["../../src/plugin.
|
|
1
|
+
{"version":3,"file":"plugin.mjs","names":[],"sources":["../../src/plugin.tsx"],"sourcesContent":["//\n// Copyright 2023 DXOS.org\n//\n\nimport * as Plugin from '@dxos/app-framework/Plugin';\n\nimport { AppGraphBuilder, PluginAsset, ReactContext, ReactSurface, SetupDevtools, Translations } from '#capabilities';\nimport { meta } from '#meta';\n\nexport const DevtoolsPlugin = Plugin.define(meta).pipe(\n Plugin.addModule(AppGraphBuilder),\n Plugin.addModule(PluginAsset),\n Plugin.addModule(ReactContext),\n Plugin.addModule(ReactSurface),\n Plugin.addModule(SetupDevtools),\n Plugin.addModule(Translations),\n Plugin.make,\n);\n\nexport default DevtoolsPlugin;\n"],"mappings":";;;;AASA,IAAa,iBAAiB,OAAO,OAAO,IAAI,CAAC,CAAC,KAChD,OAAO,UAAU,eAAe,GAChC,OAAO,UAAU,WAAW,GAC5B,OAAO,UAAU,YAAY,GAC7B,OAAO,UAAU,YAAY,GAC7B,OAAO,UAAU,aAAa,GAC9B,OAAO,UAAU,YAAY,GAC7B,OAAO,IACT"}
|
|
@@ -8,6 +8,7 @@ var translations = [...translations$1, { "en-US": { [meta.profile.key]: {
|
|
|
8
8
|
"devtools-overview.label": "Stats",
|
|
9
9
|
"debug-app-graph.label": "App Graph",
|
|
10
10
|
"debug-tools-explorer.label": "SDK Explorer",
|
|
11
|
+
"cli.label": "CLI",
|
|
11
12
|
"reset-data.label": "Reset data (ERASES ALL DATA)",
|
|
12
13
|
"client.label": "Client",
|
|
13
14
|
"config.label": "Config",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"translations.mjs","names":[],"sources":["../../src/translations.ts"],"sourcesContent":["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Resource } from '@dxos/react-ui';\nimport { translations as introspectTranslations } from '@dxos/react-ui-introspect/translations';\n\nimport { meta } from '#meta';\n\nexport const translations = [\n ...introspectTranslations,\n {\n 'en-US': {\n [meta.profile.key]: {\n 'plugin.name': 'Devtools',\n 'open-devtools.label': 'Open DevTools',\n 'devtools.label': 'DevTools',\n 'devtools-overview.label': 'Stats',\n 'debug-app-graph.label': 'App Graph',\n 'debug-tools-explorer.label': 'SDK Explorer',\n\n 'reset-data.label': 'Reset data (ERASES ALL DATA)',\n 'client.label': 'Client',\n 'config.label': 'Config',\n 'storage.label': 'Storage',\n 'sqlite.label': 'SQLite',\n 'logging.label': 'Logging',\n 'diagnostics.label': 'Diagnostics',\n 'tracing.label': 'Tracing',\n 'halo.label': 'HALO',\n 'identity.label': 'Identity',\n 'devices.label': 'Devices',\n 'keyring.label': 'Keyring',\n 'credentials.label': 'Credentials',\n 'echo.label': 'ECHO',\n 'spaces.label': 'Spaces',\n 'space.label': 'Space',\n 'feeds.label': 'Feeds',\n 'objects.label': 'Objects',\n 'schema.label': 'Schema',\n 'registry.label': 'Registry',\n 'automerge.label': 'Automerge',\n 'queues.label': 'Queues',\n 'members.label': 'Members',\n 'metadata.label': 'Metadata',\n 'mesh.label': 'MESH',\n 'signal.label': 'Signal',\n 'swarm.label': 'Swarm',\n 'network.label': 'Network',\n 'agent.label': 'Agent',\n 'dashboard.label': 'Dashboard',\n 'search.label': 'Search',\n 'edge.label': 'EDGE',\n 'workflows.label': 'Workflows',\n 'traces.label': 'Traces',\n 'testing.label': 'Testing',\n // GitHub (deck-companion--github surface).\n 'github-loading.message': 'Loading…',\n 'github-unavailable.message': 'GitHub feed unavailable.',\n 'recent-prs.label_one': '{{count}} recent PR',\n 'recent-prs.label_other': '{{count}} recent PRs',\n 'view-on-github.button': 'View on GitHub',\n },\n },\n },\n] as const satisfies Resource[];\n"],"mappings":";;;AASA,IAAa,eAAe,CAC1B,GAAG,gBACH,EACE,SAAS,GACN,KAAK,QAAQ,MAAM;CAClB,eAAe;CACf,uBAAuB;CACvB,kBAAkB;CAClB,2BAA2B;CAC3B,yBAAyB;CACzB,8BAA8B;
|
|
1
|
+
{"version":3,"file":"translations.mjs","names":[],"sources":["../../src/translations.ts"],"sourcesContent":["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Resource } from '@dxos/react-ui';\nimport { translations as introspectTranslations } from '@dxos/react-ui-introspect/translations';\n\nimport { meta } from '#meta';\n\nexport const translations = [\n ...introspectTranslations,\n {\n 'en-US': {\n [meta.profile.key]: {\n 'plugin.name': 'Devtools',\n 'open-devtools.label': 'Open DevTools',\n 'devtools.label': 'DevTools',\n 'devtools-overview.label': 'Stats',\n 'debug-app-graph.label': 'App Graph',\n 'debug-tools-explorer.label': 'SDK Explorer',\n 'cli.label': 'CLI',\n\n 'reset-data.label': 'Reset data (ERASES ALL DATA)',\n 'client.label': 'Client',\n 'config.label': 'Config',\n 'storage.label': 'Storage',\n 'sqlite.label': 'SQLite',\n 'logging.label': 'Logging',\n 'diagnostics.label': 'Diagnostics',\n 'tracing.label': 'Tracing',\n 'halo.label': 'HALO',\n 'identity.label': 'Identity',\n 'devices.label': 'Devices',\n 'keyring.label': 'Keyring',\n 'credentials.label': 'Credentials',\n 'echo.label': 'ECHO',\n 'spaces.label': 'Spaces',\n 'space.label': 'Space',\n 'feeds.label': 'Feeds',\n 'objects.label': 'Objects',\n 'schema.label': 'Schema',\n 'registry.label': 'Registry',\n 'automerge.label': 'Automerge',\n 'queues.label': 'Queues',\n 'members.label': 'Members',\n 'metadata.label': 'Metadata',\n 'mesh.label': 'MESH',\n 'signal.label': 'Signal',\n 'swarm.label': 'Swarm',\n 'network.label': 'Network',\n 'agent.label': 'Agent',\n 'dashboard.label': 'Dashboard',\n 'search.label': 'Search',\n 'edge.label': 'EDGE',\n 'workflows.label': 'Workflows',\n 'traces.label': 'Traces',\n 'testing.label': 'Testing',\n // GitHub (deck-companion--github surface).\n 'github-loading.message': 'Loading…',\n 'github-unavailable.message': 'GitHub feed unavailable.',\n 'recent-prs.label_one': '{{count}} recent PR',\n 'recent-prs.label_other': '{{count}} recent PRs',\n 'view-on-github.button': 'View on GitHub',\n },\n },\n },\n] as const satisfies Resource[];\n"],"mappings":";;;AASA,IAAa,eAAe,CAC1B,GAAG,gBACH,EACE,SAAS,GACN,KAAK,QAAQ,MAAM;CAClB,eAAe;CACf,uBAAuB;CACvB,kBAAkB;CAClB,2BAA2B;CAC3B,yBAAyB;CACzB,8BAA8B;CAC9B,aAAa;CAEb,oBAAoB;CACpB,gBAAgB;CAChB,gBAAgB;CAChB,iBAAiB;CACjB,gBAAgB;CAChB,iBAAiB;CACjB,qBAAqB;CACrB,iBAAiB;CACjB,cAAc;CACd,kBAAkB;CAClB,iBAAiB;CACjB,iBAAiB;CACjB,qBAAqB;CACrB,cAAc;CACd,gBAAgB;CAChB,eAAe;CACf,eAAe;CACf,iBAAiB;CACjB,gBAAgB;CAChB,kBAAkB;CAClB,mBAAmB;CACnB,gBAAgB;CAChB,iBAAiB;CACjB,kBAAkB;CAClB,cAAc;CACd,gBAAgB;CAChB,eAAe;CACf,iBAAiB;CACjB,eAAe;CACf,mBAAmB;CACnB,gBAAgB;CAChB,cAAc;CACd,mBAAmB;CACnB,gBAAgB;CAChB,iBAAiB;CAEjB,0BAA0B;CAC1B,8BAA8B;CAC9B,wBAAwB;CACxB,0BAA0B;CAC1B,yBAAyB;AAC3B,EACF,EACF,CACF"}
|
package/dist/lib/types.mjs
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
import { t as Devtools_exports } from "./
|
|
2
|
-
|
|
1
|
+
import { t as Devtools_exports } from "./Devtools.mjs";
|
|
2
|
+
import { t as DevtoolsEvents_exports } from "./DevtoolsEvents.mjs";
|
|
3
|
+
export { Devtools_exports as Devtools, DevtoolsEvents_exports as DevtoolsEvents };
|
|
@@ -1,4 +1,37 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
export
|
|
1
|
+
import * as Plugin from '@dxos/app-framework/Plugin';
|
|
2
|
+
/** Plugin metadata, available without loading the plugin body. */
|
|
3
|
+
export declare const meta: {
|
|
4
|
+
readonly profile: {
|
|
5
|
+
readonly key: string;
|
|
6
|
+
readonly name: string;
|
|
7
|
+
readonly description?: string | undefined;
|
|
8
|
+
readonly homePage?: string | undefined;
|
|
9
|
+
readonly source?: string | undefined;
|
|
10
|
+
readonly tags?: readonly string[] | undefined;
|
|
11
|
+
readonly screenshots?: readonly {
|
|
12
|
+
readonly light?: string | undefined;
|
|
13
|
+
readonly dark?: string | undefined;
|
|
14
|
+
}[] | undefined;
|
|
15
|
+
readonly icon?: {
|
|
16
|
+
readonly key: string;
|
|
17
|
+
readonly hue?: string | undefined;
|
|
18
|
+
} | undefined;
|
|
19
|
+
readonly dependsOn?: readonly string[] | undefined;
|
|
20
|
+
readonly spec?: string | undefined;
|
|
21
|
+
readonly createdAt?: string | undefined;
|
|
22
|
+
readonly author?: string | undefined;
|
|
23
|
+
};
|
|
24
|
+
readonly release?: {
|
|
25
|
+
readonly version: string;
|
|
26
|
+
readonly moduleUrl: string;
|
|
27
|
+
readonly dependencies?: {
|
|
28
|
+
readonly [x: string]: string;
|
|
29
|
+
} | undefined;
|
|
30
|
+
readonly pluginKey?: string | undefined;
|
|
31
|
+
readonly manifestHash?: string | undefined;
|
|
32
|
+
readonly createdAt?: string | undefined;
|
|
33
|
+
} | undefined;
|
|
34
|
+
};
|
|
35
|
+
/** Constructs the plugin; the body loads on first enable. */
|
|
36
|
+
export declare const make: Plugin.PluginFactory<void>;
|
|
4
37
|
//# sourceMappingURL=DevtoolsPlugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DevtoolsPlugin.d.ts","sourceRoot":"","sources":["../../../src/DevtoolsPlugin.
|
|
1
|
+
{"version":3,"file":"DevtoolsPlugin.d.ts","sourceRoot":"","sources":["../../../src/DevtoolsPlugin.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AAIrD,kEAAkE;AAClE,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAa,CAAC;AAE/B,6DAA6D;AAC7D,eAAO,MAAM,IAAI,4BAA6C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DevtoolsSurfaces.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/DevtoolsSurfaces.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,EAAE,KAAK,aAAa,EAAe,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DevtoolsSurfaces.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/DevtoolsSurfaces.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,EAAE,KAAK,aAAa,EAAe,MAAM,OAAO,CAAC;AAW/D,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAIrD,MAAM,MAAM,qBAAqB,GAAG;IAClC,6FAA6F;IAC7F,KAAK,EAAE,aAAa,CAAC;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC,CAAC;CACxC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,cAAe,qBAAqB,6BAIhE,CAAC;AAEF,eAAO,MAAM,gBAAgB,yBAQ5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,gCAY5B,CAAC;AAEF,eAAO,MAAM,iBAAiB,gCAU7B,CAAC;AAEF,eAAO,MAAM,kBAAkB,yBAgC9B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as Effect from 'effect/Effect';
|
|
2
|
-
import
|
|
3
|
-
declare const _default: (props: void) => Effect.Effect<Capability.
|
|
2
|
+
import * as Capability from '@dxos/app-framework/Capability';
|
|
3
|
+
declare const _default: (props: void) => Effect.Effect<Capability.Contribution<Capability.CapabilityIdentifier<"org.dxos.app-framework.capability.appGraphBuilder", "multi">>, never, import("effect/Scope").Scope | Capability.Service>;
|
|
4
4
|
export default _default;
|
|
5
5
|
//# sourceMappingURL=app-graph-builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-graph-builder.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/app-graph-builder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,
|
|
1
|
+
{"version":3,"file":"app-graph-builder.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/app-graph-builder.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,UAAU,MAAM,gCAAgC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as Capability from '@dxos/app-framework/Capability';
|
|
2
|
+
export declare const AppGraphBuilder: Capability.Module<void>;
|
|
3
|
+
export declare const SetupDevtools: Capability.Module<void>;
|
|
4
|
+
export declare const Translations: Capability.Module<void>;
|
|
5
|
+
export declare const PluginAsset: undefined;
|
|
6
|
+
export declare const ReactContext: undefined;
|
|
7
|
+
export declare const ReactSurface: undefined;
|
|
8
|
+
//# sourceMappingURL=node.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/gen/node.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,UAAU,MAAM,gCAAgC,CAAC;AA0B7D,eAAO,MAAM,eAAe,yBAG1B,CAAC;AAEH,eAAO,MAAM,aAAa,yBAEzB,CAAC;AAEF,eAAO,MAAM,YAAY,yBAA2C,CAAC;AAErE,eAAO,MAAM,WAAW,WAAY,CAAC;AACrC,eAAO,MAAM,YAAY,WAAY,CAAC;AACtC,eAAO,MAAM,YAAY,WAAY,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as Capability from '@dxos/app-framework/Capability';
|
|
2
|
+
export declare const SetupDevtools: Capability.Module<void>;
|
|
3
|
+
export declare const Translations: Capability.Module<void>;
|
|
4
|
+
export declare const AppGraphBuilder: undefined;
|
|
5
|
+
export declare const PluginAsset: undefined;
|
|
6
|
+
export declare const ReactContext: undefined;
|
|
7
|
+
export declare const ReactSurface: undefined;
|
|
8
|
+
//# sourceMappingURL=workerd.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workerd.d.ts","sourceRoot":"","sources":["../../../../../src/capabilities/gen/workerd.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,UAAU,MAAM,gCAAgC,CAAC;AAyB7D,eAAO,MAAM,aAAa,yBAEzB,CAAC;AAEF,eAAO,MAAM,YAAY,yBAA2C,CAAC;AAErE,eAAO,MAAM,eAAe,WAAY,CAAC;AACzC,eAAO,MAAM,WAAW,WAAY,CAAC;AACrC,eAAO,MAAM,YAAY,WAAY,CAAC;AACtC,eAAO,MAAM,YAAY,WAAY,CAAC"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
export declare const AppGraphBuilder: Capability.
|
|
3
|
-
export declare const ReactContext: Capability.
|
|
4
|
-
export declare const ReactSurface: Capability.
|
|
1
|
+
import * as Capability from '@dxos/app-framework/Capability';
|
|
2
|
+
export declare const AppGraphBuilder: Capability.Module<void>;
|
|
3
|
+
export declare const ReactContext: Capability.Module<void>;
|
|
4
|
+
export declare const ReactSurface: Capability.Module<void>;
|
|
5
|
+
export declare const SetupDevtools: Capability.Module<void>;
|
|
6
|
+
export declare const Translations: Capability.Module<void>;
|
|
7
|
+
export declare const PluginAsset: Capability.Module<void>;
|
|
5
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,UAAU,MAAM,gCAAgC,CAAC;AAY7D,eAAO,MAAM,eAAe,yBAG1B,CAAC;AACH,eAAO,MAAM,YAAY,yBAA8D,CAAC;AACxF,eAAO,MAAM,YAAY,yBAEvB,CAAC;AACH,eAAO,MAAM,aAAa,yBAEzB,CAAC;AACF,eAAO,MAAM,YAAY,yBAA2C,CAAC;AACrE,eAAO,MAAM,WAAW,yBAKtB,CAAC"}
|