@dxos/plugin-devtools 0.11.1 → 0.12.0-next-bbabc02363f18d7643ea4160e3a7a7809870fd0d

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 (97) hide show
  1. package/dist/lib/{chunk-types.mjs → Devtools.mjs} +5 -14
  2. package/dist/lib/Devtools.mjs.map +1 -0
  3. package/dist/lib/DevtoolsEvents.mjs +15 -0
  4. package/dist/lib/DevtoolsEvents.mjs.map +1 -0
  5. package/dist/lib/DevtoolsPlugin.mjs +9 -13
  6. package/dist/lib/DevtoolsPlugin.mjs.map +1 -1
  7. package/dist/lib/DevtoolsPlugin.node.mjs +2 -3
  8. package/dist/lib/DevtoolsPlugin.node.mjs.map +1 -1
  9. package/dist/lib/DevtoolsPlugin.workerd.mjs +1 -1
  10. package/dist/lib/DevtoolsPlugin.workerd.mjs.map +1 -1
  11. package/dist/lib/capabilities.mjs +5 -4
  12. package/dist/lib/capabilities.mjs.map +1 -1
  13. package/dist/lib/chunk-CliPanel.mjs +103 -0
  14. package/dist/lib/chunk-CliPanel.mjs.map +1 -0
  15. package/dist/lib/chunk-RegistryPanel.mjs +2 -2
  16. package/dist/lib/chunk-RegistryPanel.mjs.map +1 -1
  17. package/dist/lib/chunk-app-graph-builder.mjs +113 -100
  18. package/dist/lib/chunk-app-graph-builder.mjs.map +1 -1
  19. package/dist/lib/chunk-meta.mjs +1 -1
  20. package/dist/lib/chunk-meta.mjs.map +1 -1
  21. package/dist/lib/chunk-react-context.mjs +3 -2
  22. package/dist/lib/chunk-react-context.mjs.map +1 -1
  23. package/dist/lib/chunk-react-surface.mjs +43 -36
  24. package/dist/lib/chunk-react-surface.mjs.map +1 -1
  25. package/dist/lib/chunk-rolldown-runtime.mjs +13 -0
  26. package/dist/lib/containers.mjs +2 -1
  27. package/dist/lib/containers.mjs.map +1 -1
  28. package/dist/lib/index.mjs +3 -2
  29. package/dist/lib/plugin.mjs +1 -1
  30. package/dist/lib/plugin.mjs.map +1 -1
  31. package/dist/lib/translations.mjs +1 -0
  32. package/dist/lib/translations.mjs.map +1 -1
  33. package/dist/types/src/DevtoolsPlugin.d.ts +1 -1
  34. package/dist/types/src/DevtoolsPlugin.d.ts.map +1 -1
  35. package/dist/types/src/DevtoolsPlugin.node.d.ts +1 -1
  36. package/dist/types/src/DevtoolsPlugin.node.d.ts.map +1 -1
  37. package/dist/types/src/DevtoolsPlugin.workerd.d.ts +1 -1
  38. package/dist/types/src/DevtoolsPlugin.workerd.d.ts.map +1 -1
  39. package/dist/types/src/capabilities/DevtoolsSurfaces.d.ts.map +1 -1
  40. package/dist/types/src/capabilities/app-graph-builder.d.ts +2 -2
  41. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -1
  42. package/dist/types/src/capabilities/index.d.ts +3 -4
  43. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  44. package/dist/types/src/capabilities/react-context.d.ts +2 -2
  45. package/dist/types/src/capabilities/react-context.d.ts.map +1 -1
  46. package/dist/types/src/capabilities/react-surface.d.ts +2 -2
  47. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  48. package/dist/types/src/containers/CliPanel/CliPanel.d.ts +6 -0
  49. package/dist/types/src/containers/CliPanel/CliPanel.d.ts.map +1 -0
  50. package/dist/types/src/containers/CliPanel/CliPanel.stories.d.ts +91 -0
  51. package/dist/types/src/containers/CliPanel/CliPanel.stories.d.ts.map +1 -0
  52. package/dist/types/src/containers/CliPanel/index.d.ts +2 -0
  53. package/dist/types/src/containers/CliPanel/index.d.ts.map +1 -0
  54. package/dist/types/src/containers/CliPanel/useCliApp.d.ts +27 -0
  55. package/dist/types/src/containers/CliPanel/useCliApp.d.ts.map +1 -0
  56. package/dist/types/src/containers/GithubPanel/GithubComponent.stories.d.ts +2 -1
  57. package/dist/types/src/containers/GithubPanel/GithubComponent.stories.d.ts.map +1 -1
  58. package/dist/types/src/containers/index.d.ts +1 -0
  59. package/dist/types/src/containers/index.d.ts.map +1 -1
  60. package/dist/types/src/index.d.ts +2 -1
  61. package/dist/types/src/index.d.ts.map +1 -1
  62. package/dist/types/src/plugin.d.ts +1 -1
  63. package/dist/types/src/plugin.d.ts.map +1 -1
  64. package/dist/types/src/translations.d.ts +1 -0
  65. package/dist/types/src/translations.d.ts.map +1 -1
  66. package/dist/types/src/types/Devtools.d.ts +1 -0
  67. package/dist/types/src/types/Devtools.d.ts.map +1 -1
  68. package/dist/types/src/types/DevtoolsEvents.d.ts +8 -0
  69. package/dist/types/src/types/DevtoolsEvents.d.ts.map +1 -0
  70. package/dist/types/tsconfig.tsbuildinfo +1 -1
  71. package/package.json +52 -58
  72. package/src/DevtoolsPlugin.node.ts +2 -6
  73. package/src/DevtoolsPlugin.test.ts +4 -2
  74. package/src/DevtoolsPlugin.tsx +20 -18
  75. package/src/DevtoolsPlugin.workerd.ts +1 -1
  76. package/src/capabilities/DevtoolsSurfaces.tsx +4 -3
  77. package/src/capabilities/app-graph-builder.ts +24 -6
  78. package/src/capabilities/index.ts +9 -4
  79. package/src/capabilities/react-context.tsx +3 -2
  80. package/src/capabilities/react-surface.ts +10 -4
  81. package/src/containers/CliPanel/CliPanel.stories.tsx +74 -0
  82. package/src/containers/CliPanel/CliPanel.tsx +45 -0
  83. package/src/containers/CliPanel/index.ts +5 -0
  84. package/src/containers/CliPanel/useCliApp.ts +97 -0
  85. package/src/containers/RegistryPanel/RegistryPanel.tsx +1 -1
  86. package/src/containers/index.ts +1 -0
  87. package/src/index.ts +2 -1
  88. package/src/meta.ts +1 -1
  89. package/src/plugin.ts +1 -1
  90. package/src/translations.ts +1 -0
  91. package/src/types/Devtools.ts +1 -0
  92. package/src/types/DevtoolsEvents.ts +16 -0
  93. package/dist/lib/chunk-types.mjs.map +0 -1
  94. package/dist/lib/types.mjs +0 -2
  95. package/dist/types/src/types/index.d.ts +0 -2
  96. package/dist/types/src/types/index.d.ts.map +0 -1
  97. package/src/types/index.ts +0 -5
@@ -1,12 +1,16 @@
1
- import { Capability } from "@dxos/app-framework";
1
+ import { AppGraph, Cli, Client, Echo, Edge, Halo, Mesh, ToolsExplorer, id, nodeId } from "./Devtools.mjs";
2
2
  import { Position } from "@dxos/util";
3
3
  import { meta } from "#meta";
4
4
  import * as Effect from "effect/Effect";
5
- import { AppCapabilities, AppNode, AppNodeMatcher, GraphPath } from "@dxos/app-toolkit";
5
+ import * as Capability from "@dxos/app-framework/Capability";
6
+ import * as AppCapabilities from "@dxos/app-toolkit/AppCapabilities";
7
+ import * as AppNode from "@dxos/app-toolkit/AppNode";
8
+ import * as AppNodeMatcher from "@dxos/app-toolkit/AppNodeMatcher";
9
+ import * as GraphPath from "@dxos/app-toolkit/GraphPath";
6
10
  import { GraphBuilder, Node, NodeMatcher } from "@dxos/plugin-graph";
7
- import { Devtools } from "#types";
8
11
  //#region src/capabilities/app-graph-builder.ts
9
12
  var app_graph_builder_default = Capability.makeModule(Effect.fnUntraced(function* () {
13
+ const appGraphAtom = yield* Capability.atom(AppCapabilities.AppGraph);
10
14
  const extensions = yield* Effect.all([
11
15
  GraphBuilder.createExtension({
12
16
  id: "root",
@@ -14,7 +18,7 @@ var app_graph_builder_default = Capability.makeModule(Effect.fnUntraced(function
14
18
  actions: () => Effect.succeed([Node.makeAction({
15
19
  id: "resetData",
16
20
  data: () => Effect.sync(() => {
17
- window.location.href = "/reset.html#continue";
21
+ window.location.href = "/reset.html";
18
22
  }),
19
23
  properties: {
20
24
  label: ["reset-data.label", { ns: meta.profile.key }],
@@ -26,11 +30,11 @@ var app_graph_builder_default = Capability.makeModule(Effect.fnUntraced(function
26
30
  id: "devtools",
27
31
  match: NodeMatcher.whenAny(NodeMatcher.whenRoot, AppNodeMatcher.whenNavTreeGroup(GraphPath.GroupTypes.system)),
28
32
  connector: (_nodeOrSpace, get) => Effect.gen(function* () {
29
- const [graph] = get(yield* Capability.atom(AppCapabilities.AppGraph));
33
+ const [graph] = get(appGraphAtom);
30
34
  return [Node.make({
31
- id: Devtools.nodeId(Devtools.id),
35
+ id: nodeId(id),
32
36
  data: null,
33
- type: Devtools.id,
37
+ type: id,
34
38
  properties: {
35
39
  label: ["devtools.label", { ns: meta.profile.key }],
36
40
  icon: "ph--toolbox--regular",
@@ -38,7 +42,7 @@ var app_graph_builder_default = Capability.makeModule(Effect.fnUntraced(function
38
42
  },
39
43
  nodes: [
40
44
  Node.make({
41
- id: Devtools.nodeId(Devtools.AppGraph),
45
+ id: nodeId(AppGraph),
42
46
  type: `${meta.profile.key}.app-graph`,
43
47
  data: {
44
48
  graph: graph?.graph,
@@ -50,63 +54,72 @@ var app_graph_builder_default = Capability.makeModule(Effect.fnUntraced(function
50
54
  }
51
55
  }),
52
56
  Node.make({
53
- id: Devtools.nodeId(Devtools.ToolsExplorer),
54
- data: Devtools.ToolsExplorer,
55
- type: Devtools.id,
57
+ id: nodeId(ToolsExplorer),
58
+ data: ToolsExplorer,
59
+ type: id,
56
60
  properties: {
57
61
  label: ["debug-tools-explorer.label", { ns: meta.profile.key }],
58
62
  icon: "ph--toolbox--regular"
59
63
  }
60
64
  }),
61
65
  Node.make({
62
- id: Devtools.nodeId(Devtools.Client.id),
66
+ id: nodeId(Cli),
67
+ data: Cli,
68
+ type: id,
69
+ properties: {
70
+ label: ["cli.label", { ns: meta.profile.key }],
71
+ icon: "ph--terminal-window--regular"
72
+ }
73
+ }),
74
+ Node.make({
75
+ id: nodeId(Client.id),
63
76
  data: null,
64
- type: Devtools.id,
77
+ type: id,
65
78
  properties: {
66
79
  label: ["client.label", { ns: meta.profile.key }],
67
80
  icon: "ph--users--regular"
68
81
  },
69
82
  nodes: [
70
83
  Node.make({
71
- id: Devtools.nodeId(Devtools.Client.Config),
72
- data: Devtools.Client.Config,
73
- type: Devtools.id,
84
+ id: nodeId(Client.Config),
85
+ data: Client.Config,
86
+ type: id,
74
87
  properties: {
75
88
  label: ["config.label", { ns: meta.profile.key }],
76
89
  icon: "ph--gear--regular"
77
90
  }
78
91
  }),
79
92
  Node.make({
80
- id: Devtools.nodeId(Devtools.Client.Storage),
81
- data: Devtools.Client.Storage,
82
- type: Devtools.id,
93
+ id: nodeId(Client.Storage),
94
+ data: Client.Storage,
95
+ type: id,
83
96
  properties: {
84
97
  label: ["storage.label", { ns: meta.profile.key }],
85
98
  icon: "ph--hard-drives--regular"
86
99
  }
87
100
  }),
88
101
  Node.make({
89
- id: Devtools.nodeId(Devtools.Client.Sqlite),
90
- data: Devtools.Client.Sqlite,
91
- type: Devtools.id,
102
+ id: nodeId(Client.Sqlite),
103
+ data: Client.Sqlite,
104
+ type: id,
92
105
  properties: {
93
106
  label: ["sqlite.label", { ns: meta.profile.key }],
94
107
  icon: "ph--database--regular"
95
108
  }
96
109
  }),
97
110
  Node.make({
98
- id: Devtools.nodeId(Devtools.Client.Logs),
99
- data: Devtools.Client.Logs,
100
- type: Devtools.id,
111
+ id: nodeId(Client.Logs),
112
+ data: Client.Logs,
113
+ type: id,
101
114
  properties: {
102
115
  label: ["logging.label", { ns: meta.profile.key }],
103
116
  icon: "ph--file-text--regular"
104
117
  }
105
118
  }),
106
119
  Node.make({
107
- id: Devtools.nodeId(Devtools.Client.Diagnostics),
108
- data: Devtools.Client.Diagnostics,
109
- type: Devtools.id,
120
+ id: nodeId(Client.Diagnostics),
121
+ data: Client.Diagnostics,
122
+ type: id,
110
123
  properties: {
111
124
  label: ["diagnostics.label", { ns: meta.profile.key }],
112
125
  icon: "ph--chart-line--regular"
@@ -115,45 +128,45 @@ var app_graph_builder_default = Capability.makeModule(Effect.fnUntraced(function
115
128
  ]
116
129
  }),
117
130
  Node.make({
118
- id: Devtools.nodeId(Devtools.Halo.id),
131
+ id: nodeId(Halo.id),
119
132
  data: null,
120
- type: Devtools.id,
133
+ type: id,
121
134
  properties: {
122
135
  label: ["halo.label", { ns: meta.profile.key }],
123
136
  icon: "ph--identification-badge--regular"
124
137
  },
125
138
  nodes: [
126
139
  Node.make({
127
- id: Devtools.nodeId(Devtools.Halo.Identity),
128
- data: Devtools.Halo.Identity,
129
- type: Devtools.id,
140
+ id: nodeId(Halo.Identity),
141
+ data: Halo.Identity,
142
+ type: id,
130
143
  properties: {
131
144
  label: ["identity.label", { ns: meta.profile.key }],
132
145
  icon: "ph--identification-badge--regular"
133
146
  }
134
147
  }),
135
148
  Node.make({
136
- id: Devtools.nodeId(Devtools.Halo.Devices),
137
- data: Devtools.Halo.Devices,
138
- type: Devtools.id,
149
+ id: nodeId(Halo.Devices),
150
+ data: Halo.Devices,
151
+ type: id,
139
152
  properties: {
140
153
  label: ["devices.label", { ns: meta.profile.key }],
141
154
  icon: "ph--devices--regular"
142
155
  }
143
156
  }),
144
157
  Node.make({
145
- id: Devtools.nodeId(Devtools.Halo.Keyring),
146
- data: Devtools.Halo.Keyring,
147
- type: Devtools.id,
158
+ id: nodeId(Halo.Keyring),
159
+ data: Halo.Keyring,
160
+ type: id,
148
161
  properties: {
149
162
  label: ["keyring.label", { ns: meta.profile.key }],
150
163
  icon: "ph--key--regular"
151
164
  }
152
165
  }),
153
166
  Node.make({
154
- id: Devtools.nodeId(Devtools.Halo.Credentials),
155
- data: Devtools.Halo.Credentials,
156
- type: Devtools.id,
167
+ id: nodeId(Halo.Credentials),
168
+ data: Halo.Credentials,
169
+ type: id,
157
170
  properties: {
158
171
  label: ["credentials.label", { ns: meta.profile.key }],
159
172
  icon: "ph--credit-card--regular"
@@ -162,99 +175,99 @@ var app_graph_builder_default = Capability.makeModule(Effect.fnUntraced(function
162
175
  ]
163
176
  }),
164
177
  Node.make({
165
- id: Devtools.nodeId(Devtools.Echo.id),
178
+ id: nodeId(Echo.id),
166
179
  data: null,
167
- type: Devtools.id,
180
+ type: id,
168
181
  properties: {
169
182
  label: ["echo.label", { ns: meta.profile.key }],
170
183
  icon: "ph--database--regular"
171
184
  },
172
185
  nodes: [
173
186
  Node.make({
174
- id: Devtools.nodeId(Devtools.Echo.Spaces),
175
- data: Devtools.Echo.Spaces,
176
- type: Devtools.id,
187
+ id: nodeId(Echo.Spaces),
188
+ data: Echo.Spaces,
189
+ type: id,
177
190
  properties: {
178
191
  label: ["spaces.label", { ns: meta.profile.key }],
179
192
  icon: "ph--graph--regular"
180
193
  }
181
194
  }),
182
195
  Node.make({
183
- id: Devtools.nodeId(Devtools.Echo.Space),
184
- data: Devtools.Echo.Space,
185
- type: Devtools.id,
196
+ id: nodeId(Echo.Space),
197
+ data: Echo.Space,
198
+ type: id,
186
199
  properties: {
187
200
  label: ["space.label", { ns: meta.profile.key }],
188
201
  icon: "ph--planet--regular"
189
202
  }
190
203
  }),
191
204
  Node.make({
192
- id: Devtools.nodeId(Devtools.Echo.Feeds),
193
- data: Devtools.Echo.Feeds,
194
- type: Devtools.id,
205
+ id: nodeId(Echo.Feeds),
206
+ data: Echo.Feeds,
207
+ type: id,
195
208
  properties: {
196
209
  label: ["feeds.label", { ns: meta.profile.key }],
197
210
  icon: "ph--list-bullets--regular"
198
211
  }
199
212
  }),
200
213
  Node.make({
201
- id: Devtools.nodeId(Devtools.Echo.Objects),
202
- data: Devtools.Echo.Objects,
203
- type: Devtools.id,
214
+ id: nodeId(Echo.Objects),
215
+ data: Echo.Objects,
216
+ type: id,
204
217
  properties: {
205
218
  label: ["objects.label", { ns: meta.profile.key }],
206
219
  icon: "ph--cube--regular"
207
220
  }
208
221
  }),
209
222
  Node.make({
210
- id: Devtools.nodeId(Devtools.Echo.Schema),
211
- data: Devtools.Echo.Schema,
212
- type: Devtools.id,
223
+ id: nodeId(Echo.Schema),
224
+ data: Echo.Schema,
225
+ type: id,
213
226
  properties: {
214
227
  label: ["schema.label", { ns: meta.profile.key }],
215
228
  icon: "ph--database--regular"
216
229
  }
217
230
  }),
218
231
  Node.make({
219
- id: Devtools.nodeId(Devtools.Echo.Registry),
220
- data: Devtools.Echo.Registry,
221
- type: Devtools.id,
232
+ id: nodeId(Echo.Registry),
233
+ data: Echo.Registry,
234
+ type: id,
222
235
  properties: {
223
236
  label: ["registry.label", { ns: meta.profile.key }],
224
237
  icon: "ph--books--regular"
225
238
  }
226
239
  }),
227
240
  Node.make({
228
- id: Devtools.nodeId(Devtools.Echo.Automerge),
229
- data: Devtools.Echo.Automerge,
230
- type: Devtools.id,
241
+ id: nodeId(Echo.Automerge),
242
+ data: Echo.Automerge,
243
+ type: id,
231
244
  properties: {
232
245
  label: ["automerge.label", { ns: meta.profile.key }],
233
246
  icon: "ph--gear-six--regular"
234
247
  }
235
248
  }),
236
249
  Node.make({
237
- id: Devtools.nodeId(Devtools.Echo.Queues),
238
- data: Devtools.Echo.Queues,
239
- type: Devtools.id,
250
+ id: nodeId(Echo.Queues),
251
+ data: Echo.Queues,
252
+ type: id,
240
253
  properties: {
241
254
  label: ["queues.label", { ns: meta.profile.key }],
242
255
  icon: "ph--queue--regular"
243
256
  }
244
257
  }),
245
258
  Node.make({
246
- id: Devtools.nodeId(Devtools.Echo.Members),
247
- data: Devtools.Echo.Members,
248
- type: Devtools.id,
259
+ id: nodeId(Echo.Members),
260
+ data: Echo.Members,
261
+ type: id,
249
262
  properties: {
250
263
  label: ["members.label", { ns: meta.profile.key }],
251
264
  icon: "ph--users--regular"
252
265
  }
253
266
  }),
254
267
  Node.make({
255
- id: Devtools.nodeId(Devtools.Echo.Metadata),
256
- data: Devtools.Echo.Metadata,
257
- type: Devtools.id,
268
+ id: nodeId(Echo.Metadata),
269
+ data: Echo.Metadata,
270
+ type: id,
258
271
  properties: {
259
272
  label: ["metadata.label", { ns: meta.profile.key }],
260
273
  icon: "ph--hard-drive--regular"
@@ -263,36 +276,36 @@ var app_graph_builder_default = Capability.makeModule(Effect.fnUntraced(function
263
276
  ]
264
277
  }),
265
278
  Node.make({
266
- id: Devtools.nodeId(Devtools.Mesh.id),
279
+ id: nodeId(Mesh.id),
267
280
  data: null,
268
- type: Devtools.id,
281
+ type: id,
269
282
  properties: {
270
283
  label: ["mesh.label", { ns: meta.profile.key }],
271
284
  icon: "ph--graph--regular"
272
285
  },
273
286
  nodes: [
274
287
  Node.make({
275
- id: Devtools.nodeId(Devtools.Mesh.Signal),
276
- data: Devtools.Mesh.Signal,
277
- type: Devtools.id,
288
+ id: nodeId(Mesh.Signal),
289
+ data: Mesh.Signal,
290
+ type: id,
278
291
  properties: {
279
292
  label: ["signal.label", { ns: meta.profile.key }],
280
293
  icon: "ph--wifi-high--regular"
281
294
  }
282
295
  }),
283
296
  Node.make({
284
- id: Devtools.nodeId(Devtools.Mesh.Swarm),
285
- data: Devtools.Mesh.Swarm,
286
- type: Devtools.id,
297
+ id: nodeId(Mesh.Swarm),
298
+ data: Mesh.Swarm,
299
+ type: id,
287
300
  properties: {
288
301
  label: ["swarm.label", { ns: meta.profile.key }],
289
302
  icon: "ph--users-three--regular"
290
303
  }
291
304
  }),
292
305
  Node.make({
293
- id: Devtools.nodeId(Devtools.Mesh.Network),
294
- data: Devtools.Mesh.Network,
295
- type: Devtools.id,
306
+ id: nodeId(Mesh.Network),
307
+ data: Mesh.Network,
308
+ type: id,
296
309
  properties: {
297
310
  label: ["network.label", { ns: meta.profile.key }],
298
311
  icon: "ph--polygon--regular"
@@ -301,45 +314,45 @@ var app_graph_builder_default = Capability.makeModule(Effect.fnUntraced(function
301
314
  ]
302
315
  }),
303
316
  Node.make({
304
- id: Devtools.nodeId(Devtools.Edge.id),
317
+ id: nodeId(Edge.id),
305
318
  data: null,
306
- type: Devtools.id,
319
+ type: id,
307
320
  properties: {
308
321
  label: ["edge.label", { ns: meta.profile.key }],
309
322
  icon: "ph--cloud--regular"
310
323
  },
311
324
  nodes: [
312
325
  Node.make({
313
- id: Devtools.nodeId(Devtools.Edge.Dashboard),
314
- data: Devtools.Edge.Dashboard,
315
- type: Devtools.id,
326
+ id: nodeId(Edge.Dashboard),
327
+ data: Edge.Dashboard,
328
+ type: id,
316
329
  properties: {
317
330
  label: ["dashboard.label", { ns: meta.profile.key }],
318
331
  icon: "ph--computer-tower--regular"
319
332
  }
320
333
  }),
321
334
  Node.make({
322
- id: Devtools.nodeId(Devtools.Edge.Workflows),
323
- data: Devtools.Edge.Workflows,
324
- type: Devtools.id,
335
+ id: nodeId(Edge.Workflows),
336
+ data: Edge.Workflows,
337
+ type: id,
325
338
  properties: {
326
339
  label: ["workflows.label", { ns: meta.profile.key }],
327
340
  icon: "ph--function--regular"
328
341
  }
329
342
  }),
330
343
  Node.make({
331
- id: Devtools.nodeId(Devtools.Edge.Traces),
332
- data: Devtools.Edge.Traces,
333
- type: Devtools.id,
344
+ id: nodeId(Edge.Traces),
345
+ data: Edge.Traces,
346
+ type: id,
334
347
  properties: {
335
348
  label: ["traces.label", { ns: meta.profile.key }],
336
349
  icon: "ph--line-segments--regular"
337
350
  }
338
351
  }),
339
352
  Node.make({
340
- id: Devtools.nodeId(Devtools.Edge.Testing),
341
- data: Devtools.Edge.Testing,
342
- type: Devtools.id,
353
+ id: nodeId(Edge.Testing),
354
+ data: Edge.Testing,
355
+ type: id,
343
356
  properties: {
344
357
  label: ["testing.label", { ns: meta.profile.key }],
345
358
  icon: "ph--flask--regular"
@@ -363,7 +376,7 @@ var app_graph_builder_default = Capability.makeModule(Effect.fnUntraced(function
363
376
  })])
364
377
  })
365
378
  ]);
366
- return Capability.contributes(AppCapabilities.AppGraphBuilder, extensions);
379
+ return Capability.contribute(AppCapabilities.AppGraphBuilder, extensions);
367
380
  }));
368
381
  //#endregion
369
382
  export { app_graph_builder_default as default };
@@ -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":"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"}
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 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 { 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';\n\nimport * as Devtools from '../types/Devtools';\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 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';\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(appGraphAtom);\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.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 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.contribute(AppCapabilities.AppGraphBuilder, extensions);\n }),\n);\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Plugin } from "@dxos/app-framework";
1
+ import * as Plugin from "@dxos/app-framework/Plugin";
2
2
  import { Config2 } from "@dxos/app-framework/config";
3
3
  import { trim } from "@dxos/util";
4
4
  //#region dx.config.ts
@@ -1 +1 @@
1
- {"version":3,"file":"chunk-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 { Plugin } from '@dxos/app-framework';\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"}
1
+ {"version":3,"file":"chunk-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"}
@@ -1,12 +1,13 @@
1
- import { Capabilities, Capability } from "@dxos/app-framework";
2
1
  import { meta } from "#meta";
3
2
  import * as Effect from "effect/Effect";
3
+ import * as Capability from "@dxos/app-framework/Capability";
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.contributes(Capabilities.ReactContext, {
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 { Capabilities, Capability } from '@dxos/app-framework';\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.contributes(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":";;;;;;;;AAaA,IAAA,wBAAe,WAAW,iBACxB,OAAO,QACL,WAAW,YAAY,aAAa,cAAc;CAChD,IAAI,KAAK,QAAQ;CACjB,UAAU,EAAE,eACV,oBAAC,QAAQ,kBAAT,EAAA,UACE,oBAAC,yBAAD,EAA0B,SAAkC,CAAA,EACpC,CAAA;AAE9B,CAAC,CACH,CACF"}
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"}