@dxos/plugin-debug 0.8.4-main.c85a9c8dae → 0.8.4-main.d9fc60f731

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 (233) hide show
  1. package/LICENSE +102 -5
  2. package/PLUGIN.mdl +373 -0
  3. package/README.md +1 -1
  4. package/dist/lib/{browser/DebugGraph-7HXJ2PS2.mjs → neutral/DebugGraph-G4FWS57E.mjs} +4 -5
  5. package/dist/lib/neutral/DebugGraph-G4FWS57E.mjs.map +7 -0
  6. package/dist/lib/neutral/DebugObjectPanel-OS65NC4M.mjs +59 -0
  7. package/dist/lib/neutral/DebugObjectPanel-OS65NC4M.mjs.map +7 -0
  8. package/dist/lib/neutral/DebugPlugin.mjs +59 -0
  9. package/dist/lib/neutral/DebugPlugin.mjs.map +7 -0
  10. package/dist/lib/neutral/DebugPlugin.node.mjs +18 -0
  11. package/dist/lib/neutral/DebugPlugin.node.mjs.map +7 -0
  12. package/dist/lib/neutral/DebugPlugin.workerd.mjs +12 -0
  13. package/dist/lib/neutral/DebugPlugin.workerd.mjs.map +7 -0
  14. package/dist/lib/neutral/DebugSettings-RKYNQIKH.mjs +223 -0
  15. package/dist/lib/neutral/DebugSettings-RKYNQIKH.mjs.map +7 -0
  16. package/dist/lib/{browser/DebugSpaceObjectsPanel-7NRPLWZ4.mjs → neutral/DebugSpaceObjectsPanel-BHOCFWDJ.mjs} +10 -26
  17. package/dist/lib/neutral/DebugSpaceObjectsPanel-BHOCFWDJ.mjs.map +7 -0
  18. package/dist/lib/{browser/DebugStatus-COQGH37G.mjs → neutral/DebugStatus-H2BAHN26.mjs} +36 -39
  19. package/dist/lib/neutral/DebugStatus-H2BAHN26.mjs.map +7 -0
  20. package/dist/lib/{browser/DevtoolsOverviewContainer-C75NFVER.mjs → neutral/DevtoolsOverviewContainer-YX7Z3D2H.mjs} +9 -6
  21. package/dist/lib/neutral/DevtoolsOverviewContainer-YX7Z3D2H.mjs.map +7 -0
  22. package/dist/lib/neutral/GithubPanel-QJKDJRVQ.mjs +177 -0
  23. package/dist/lib/neutral/GithubPanel-QJKDJRVQ.mjs.map +7 -0
  24. package/dist/lib/neutral/RegistryPanel-64GIYJHN.mjs +161 -0
  25. package/dist/lib/neutral/RegistryPanel-64GIYJHN.mjs.map +7 -0
  26. package/dist/lib/neutral/SpaceGenerator-Y35G6DRV.mjs +146 -0
  27. package/dist/lib/neutral/SpaceGenerator-Y35G6DRV.mjs.map +7 -0
  28. package/dist/lib/{browser/Wireframe-KAGOKEFW.mjs → neutral/Wireframe-WD7S2AUU.mjs} +9 -10
  29. package/dist/lib/neutral/Wireframe-WD7S2AUU.mjs.map +7 -0
  30. package/dist/lib/{browser/app-graph-builder-LGUQNXHD.mjs → neutral/app-graph-builder-XYLTBYKN.mjs} +246 -259
  31. package/dist/lib/neutral/app-graph-builder-XYLTBYKN.mjs.map +7 -0
  32. package/dist/lib/neutral/capabilities/index.mjs +15 -0
  33. package/dist/lib/neutral/capabilities/index.mjs.map +7 -0
  34. package/dist/lib/neutral/chunk-HOV6MV5B.mjs +43 -0
  35. package/dist/lib/neutral/chunk-HOV6MV5B.mjs.map +7 -0
  36. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  37. package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
  38. package/dist/lib/{browser/chunk-4UFQXPP7.mjs → neutral/chunk-UAAGABXZ.mjs} +24 -12
  39. package/dist/lib/neutral/chunk-UAAGABXZ.mjs.map +7 -0
  40. package/dist/lib/{browser/SpaceGenerator-SWSGJEEL.mjs → neutral/components/index.mjs} +90 -292
  41. package/dist/lib/neutral/components/index.mjs.map +7 -0
  42. package/dist/lib/neutral/containers/index.mjs +25 -0
  43. package/dist/lib/neutral/containers/index.mjs.map +7 -0
  44. package/dist/lib/neutral/index.mjs +18 -0
  45. package/dist/lib/neutral/index.mjs.map +7 -0
  46. package/dist/lib/neutral/meta.json +1 -0
  47. package/dist/lib/neutral/meta.mjs +8 -0
  48. package/dist/lib/neutral/meta.mjs.map +7 -0
  49. package/dist/lib/neutral/plugin.mjs +12 -0
  50. package/dist/lib/neutral/plugin.mjs.map +7 -0
  51. package/dist/lib/{browser/react-context-I3USIAF6.mjs → neutral/react-context-MUZ3KVLU.mjs} +6 -6
  52. package/dist/lib/neutral/react-context-MUZ3KVLU.mjs.map +7 -0
  53. package/dist/lib/{browser/react-surface-BTVNKKVQ.mjs → neutral/react-surface-3MDMZGCA.mjs} +162 -180
  54. package/dist/lib/neutral/react-surface-3MDMZGCA.mjs.map +7 -0
  55. package/dist/lib/{browser/settings-SLTQJJNF.mjs → neutral/settings-MPM6YUP4.mjs} +7 -11
  56. package/dist/lib/neutral/settings-MPM6YUP4.mjs.map +7 -0
  57. package/dist/lib/neutral/translations.mjs +91 -0
  58. package/dist/lib/neutral/translations.mjs.map +7 -0
  59. package/dist/lib/neutral/types/index.mjs +14 -0
  60. package/dist/lib/neutral/types/index.mjs.map +7 -0
  61. package/dist/types/src/DebugPlugin.d.ts +2 -5
  62. package/dist/types/src/DebugPlugin.d.ts.map +1 -1
  63. package/dist/types/src/DebugPlugin.node.d.ts +5 -0
  64. package/dist/types/src/DebugPlugin.node.d.ts.map +1 -0
  65. package/dist/types/src/DebugPlugin.test.d.ts +2 -0
  66. package/dist/types/src/DebugPlugin.test.d.ts.map +1 -0
  67. package/dist/types/src/DebugPlugin.workerd.d.ts +5 -0
  68. package/dist/types/src/DebugPlugin.workerd.d.ts.map +1 -0
  69. package/dist/types/src/capabilities/app-graph-builder.d.ts.map +1 -0
  70. package/dist/types/src/capabilities/index.d.ts +11 -4
  71. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  72. package/dist/types/src/capabilities/react-context.d.ts.map +1 -0
  73. package/dist/types/src/capabilities/{react-surface/react-surface.d.ts → react-surface.d.ts} +2 -2
  74. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  75. package/dist/types/src/capabilities/{settings/settings.d.ts → settings.d.ts} +2 -1
  76. package/dist/types/src/capabilities/settings.d.ts.map +1 -0
  77. package/dist/types/src/components/DebugSettings/DebugSettings.d.ts +11 -0
  78. package/dist/types/src/components/DebugSettings/DebugSettings.d.ts.map +1 -0
  79. package/dist/types/src/components/DebugSettings/DebugSettings.stories.d.ts +106 -0
  80. package/dist/types/src/components/DebugSettings/DebugSettings.stories.d.ts.map +1 -0
  81. package/dist/types/src/components/DebugSettings/index.d.ts +2 -0
  82. package/dist/types/src/components/DebugSettings/index.d.ts.map +1 -0
  83. package/dist/types/src/components/SchemaTable/SchemaTable.d.ts.map +1 -1
  84. package/dist/types/src/components/SpaceGenerator/ObjectGenerator.d.ts +3 -4
  85. package/dist/types/src/components/SpaceGenerator/ObjectGenerator.d.ts.map +1 -1
  86. package/dist/types/src/components/SpaceGenerator/draw-util.d.ts.map +1 -1
  87. package/dist/types/src/components/SpaceGenerator/presets.d.ts.map +1 -1
  88. package/dist/types/src/components/index.d.ts +2 -0
  89. package/dist/types/src/components/index.d.ts.map +1 -1
  90. package/dist/types/src/containers/DebugGraph/DebugGraph.d.ts +2 -2
  91. package/dist/types/src/containers/DebugGraph/DebugGraph.d.ts.map +1 -1
  92. package/dist/types/src/containers/DebugGraph/index.d.ts +1 -2
  93. package/dist/types/src/containers/DebugGraph/index.d.ts.map +1 -1
  94. package/dist/types/src/containers/DebugObjectPanel/DebugObjectPanel.d.ts +3 -4
  95. package/dist/types/src/containers/DebugObjectPanel/DebugObjectPanel.d.ts.map +1 -1
  96. package/dist/types/src/containers/DebugObjectPanel/index.d.ts +1 -2
  97. package/dist/types/src/containers/DebugObjectPanel/index.d.ts.map +1 -1
  98. package/dist/types/src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.d.ts +3 -1
  99. package/dist/types/src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.d.ts.map +1 -1
  100. package/dist/types/src/containers/DebugSpaceObjectsPanel/index.d.ts +1 -2
  101. package/dist/types/src/containers/DebugSpaceObjectsPanel/index.d.ts.map +1 -1
  102. package/dist/types/src/containers/DebugStatus/DebugStatus.d.ts.map +1 -1
  103. package/dist/types/src/containers/DebugStatus/index.d.ts +1 -2
  104. package/dist/types/src/containers/DebugStatus/index.d.ts.map +1 -1
  105. package/dist/types/src/containers/DevtoolsOverviewContainer/DevtoolsOverviewContainer.d.ts.map +1 -1
  106. package/dist/types/src/containers/DevtoolsOverviewContainer/index.d.ts +1 -2
  107. package/dist/types/src/containers/DevtoolsOverviewContainer/index.d.ts.map +1 -1
  108. package/dist/types/src/containers/GithubPanel/GithubComponent.d.ts +15 -0
  109. package/dist/types/src/containers/GithubPanel/GithubComponent.d.ts.map +1 -0
  110. package/dist/types/src/containers/GithubPanel/GithubComponent.stories.d.ts +106 -0
  111. package/dist/types/src/containers/GithubPanel/GithubComponent.stories.d.ts.map +1 -0
  112. package/dist/types/src/containers/GithubPanel/GithubPanel.d.ts +3 -0
  113. package/dist/types/src/containers/GithubPanel/GithubPanel.d.ts.map +1 -0
  114. package/dist/types/src/containers/GithubPanel/index.d.ts +2 -0
  115. package/dist/types/src/containers/GithubPanel/index.d.ts.map +1 -0
  116. package/dist/types/src/containers/RegistryPanel/RegistryPanel.d.ts +3 -0
  117. package/dist/types/src/containers/RegistryPanel/RegistryPanel.d.ts.map +1 -0
  118. package/dist/types/src/containers/RegistryPanel/index.d.ts +2 -0
  119. package/dist/types/src/containers/RegistryPanel/index.d.ts.map +1 -0
  120. package/dist/types/src/containers/SpaceGenerator/SpaceGenerator.d.ts +3 -1
  121. package/dist/types/src/containers/SpaceGenerator/SpaceGenerator.d.ts.map +1 -1
  122. package/dist/types/src/containers/SpaceGenerator/index.d.ts +1 -2
  123. package/dist/types/src/containers/SpaceGenerator/index.d.ts.map +1 -1
  124. package/dist/types/src/containers/Wireframe/Wireframe.d.ts.map +1 -1
  125. package/dist/types/src/containers/Wireframe/index.d.ts +1 -2
  126. package/dist/types/src/containers/Wireframe/index.d.ts.map +1 -1
  127. package/dist/types/src/containers/index.d.ts +2 -1
  128. package/dist/types/src/containers/index.d.ts.map +1 -1
  129. package/dist/types/src/index.d.ts +1 -1
  130. package/dist/types/src/index.d.ts.map +1 -1
  131. package/dist/types/src/meta.d.ts +1 -1
  132. package/dist/types/src/meta.d.ts.map +1 -1
  133. package/dist/types/src/plugin.d.ts +4 -0
  134. package/dist/types/src/plugin.d.ts.map +1 -0
  135. package/dist/types/src/translations.d.ts +87 -61
  136. package/dist/types/src/translations.d.ts.map +1 -1
  137. package/dist/types/src/types/Settings.d.ts +8 -0
  138. package/dist/types/src/types/Settings.d.ts.map +1 -0
  139. package/dist/types/src/types/index.d.ts +70 -0
  140. package/dist/types/src/types/index.d.ts.map +1 -0
  141. package/dist/types/tsconfig.tsbuildinfo +1 -1
  142. package/package.json +112 -71
  143. package/src/DebugPlugin.node.ts +18 -0
  144. package/src/DebugPlugin.test.ts +29 -0
  145. package/src/DebugPlugin.tsx +14 -10
  146. package/src/DebugPlugin.workerd.ts +12 -0
  147. package/src/capabilities/app-graph-builder.ts +433 -0
  148. package/src/capabilities/index.ts +6 -4
  149. package/src/capabilities/{react-context/react-context.tsx → react-context.tsx} +7 -2
  150. package/src/capabilities/{react-surface/react-surface.tsx → react-surface.tsx} +179 -161
  151. package/src/capabilities/{settings/settings.ts → settings.ts} +4 -4
  152. package/src/components/DebugSettings/DebugSettings.stories.tsx +36 -0
  153. package/src/components/DebugSettings/DebugSettings.tsx +259 -0
  154. package/src/components/DebugSettings/index.ts +5 -0
  155. package/src/components/SpaceGenerator/ObjectGenerator.tsx +28 -28
  156. package/src/components/SpaceGenerator/draw-util.ts +8 -8
  157. package/src/components/SpaceGenerator/presets.ts +39 -62
  158. package/src/components/index.ts +4 -0
  159. package/src/containers/DebugGraph/DebugGraph.tsx +3 -2
  160. package/src/containers/DebugGraph/index.ts +1 -3
  161. package/src/containers/DebugObjectPanel/DebugObjectPanel.tsx +49 -18
  162. package/src/containers/DebugObjectPanel/index.ts +1 -3
  163. package/src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.tsx +11 -24
  164. package/src/containers/DebugSpaceObjectsPanel/index.ts +1 -3
  165. package/src/containers/DebugStatus/DebugStatus.tsx +42 -19
  166. package/src/containers/DebugStatus/index.ts +1 -3
  167. package/src/containers/DevtoolsOverviewContainer/DevtoolsOverviewContainer.tsx +8 -1
  168. package/src/containers/DevtoolsOverviewContainer/index.ts +1 -3
  169. package/src/containers/GithubPanel/GithubComponent.stories.tsx +38 -0
  170. package/src/containers/GithubPanel/GithubComponent.tsx +192 -0
  171. package/src/containers/GithubPanel/GithubPanel.tsx +17 -0
  172. package/src/containers/GithubPanel/index.ts +5 -0
  173. package/src/containers/RegistryPanel/RegistryPanel.tsx +150 -0
  174. package/src/containers/RegistryPanel/index.ts +5 -0
  175. package/src/containers/SpaceGenerator/SpaceGenerator.tsx +104 -104
  176. package/src/containers/SpaceGenerator/index.ts +1 -3
  177. package/src/containers/Wireframe/Wireframe.tsx +3 -7
  178. package/src/containers/Wireframe/index.ts +1 -3
  179. package/src/containers/index.ts +2 -1
  180. package/src/index.ts +1 -1
  181. package/src/meta.ts +26 -6
  182. package/src/plugin.ts +10 -0
  183. package/src/translations.ts +83 -60
  184. package/src/types/Settings.ts +16 -0
  185. package/src/{types.ts → types/index.ts} +16 -14
  186. package/src/vite-env.d.ts +10 -0
  187. package/dist/lib/browser/DebugGraph-7HXJ2PS2.mjs.map +0 -7
  188. package/dist/lib/browser/DebugObjectPanel-3TCDNUNW.mjs +0 -33
  189. package/dist/lib/browser/DebugObjectPanel-3TCDNUNW.mjs.map +0 -7
  190. package/dist/lib/browser/DebugSettings-JZMIUDYB.mjs +0 -174
  191. package/dist/lib/browser/DebugSettings-JZMIUDYB.mjs.map +0 -7
  192. package/dist/lib/browser/DebugSpaceObjectsPanel-7NRPLWZ4.mjs.map +0 -7
  193. package/dist/lib/browser/DebugStatus-COQGH37G.mjs.map +0 -7
  194. package/dist/lib/browser/DevtoolsOverviewContainer-C75NFVER.mjs.map +0 -7
  195. package/dist/lib/browser/SpaceGenerator-SWSGJEEL.mjs.map +0 -7
  196. package/dist/lib/browser/Wireframe-KAGOKEFW.mjs.map +0 -7
  197. package/dist/lib/browser/app-graph-builder-LGUQNXHD.mjs.map +0 -7
  198. package/dist/lib/browser/chunk-4UFQXPP7.mjs.map +0 -7
  199. package/dist/lib/browser/chunk-A5H5GRV6.mjs +0 -20
  200. package/dist/lib/browser/chunk-A5H5GRV6.mjs.map +0 -7
  201. package/dist/lib/browser/index.mjs +0 -132
  202. package/dist/lib/browser/index.mjs.map +0 -7
  203. package/dist/lib/browser/meta.json +0 -1
  204. package/dist/lib/browser/react-context-I3USIAF6.mjs.map +0 -7
  205. package/dist/lib/browser/react-surface-BTVNKKVQ.mjs.map +0 -7
  206. package/dist/lib/browser/settings-SLTQJJNF.mjs.map +0 -7
  207. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts.map +0 -1
  208. package/dist/types/src/capabilities/app-graph-builder/index.d.ts +0 -3
  209. package/dist/types/src/capabilities/app-graph-builder/index.d.ts.map +0 -1
  210. package/dist/types/src/capabilities/react-context/index.d.ts +0 -7
  211. package/dist/types/src/capabilities/react-context/index.d.ts.map +0 -1
  212. package/dist/types/src/capabilities/react-context/react-context.d.ts.map +0 -1
  213. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -5
  214. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  215. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  216. package/dist/types/src/capabilities/settings/index.d.ts +0 -3
  217. package/dist/types/src/capabilities/settings/index.d.ts.map +0 -1
  218. package/dist/types/src/capabilities/settings/settings.d.ts.map +0 -1
  219. package/dist/types/src/containers/DebugSettings/DebugSettings.d.ts +0 -10
  220. package/dist/types/src/containers/DebugSettings/DebugSettings.d.ts.map +0 -1
  221. package/dist/types/src/containers/DebugSettings/index.d.ts +0 -3
  222. package/dist/types/src/containers/DebugSettings/index.d.ts.map +0 -1
  223. package/dist/types/src/types.d.ts +0 -68
  224. package/dist/types/src/types.d.ts.map +0 -1
  225. package/src/capabilities/app-graph-builder/app-graph-builder.ts +0 -441
  226. package/src/capabilities/app-graph-builder/index.ts +0 -7
  227. package/src/capabilities/react-context/index.ts +0 -7
  228. package/src/capabilities/react-surface/index.ts +0 -7
  229. package/src/capabilities/settings/index.ts +0 -7
  230. package/src/containers/DebugSettings/DebugSettings.tsx +0 -201
  231. package/src/containers/DebugSettings/index.ts +0 -7
  232. /package/dist/types/src/capabilities/{app-graph-builder/app-graph-builder.d.ts → app-graph-builder.d.ts} +0 -0
  233. /package/dist/types/src/capabilities/{react-context/react-context.d.ts → react-context.d.ts} +0 -0
@@ -1,73 +1,52 @@
1
- import {
2
- DebugCapabilities,
3
- Devtools
4
- } from "./chunk-4UFQXPP7.mjs";
5
- import {
6
- meta
7
- } from "./chunk-A5H5GRV6.mjs";
1
+ import "./chunk-J5LGTIGS.mjs";
8
2
 
9
- // src/capabilities/react-surface/react-surface.tsx
3
+ // src/capabilities/react-surface.tsx
10
4
  import * as Effect from "effect/Effect";
5
+ import * as Option from "effect/Option";
11
6
  import React, { useCallback } from "react";
12
7
  import { Capabilities, Capability } from "@dxos/app-framework";
13
- import { Surface, useCapability, useOperationInvoker, useSettingsState } from "@dxos/app-framework/ui";
14
- import { AppCapabilities, LayoutOperation } from "@dxos/app-toolkit";
15
- import { useLayout } from "@dxos/app-toolkit/ui";
16
- import { AutomergePanel, ConfigPanel, CredentialsPanel, DeviceListPanel, DiagnosticsPanel, EdgeDashboardPanel, FeedsPanel, IdentityPanel, InvocationTraceContainer, KeyringPanel, LoggingPanel, MembersPanel, MetadataPanel, NetworkPanel, ObjectsPanel, QueuesPanel, SchemaPanel, SignalPanel, SpaceInfoPanel, SpaceListPanel, StoragePanel, SwarmPanel, TestingPanel, TracingPanel, WorkflowPanel } from "@dxos/devtools";
17
- import { Obj } from "@dxos/echo";
18
- import { Collection } from "@dxos/echo";
8
+ import { Surface, useOperationInvoker, useSettingsState } from "@dxos/app-framework/ui";
9
+ import { AppCapabilities, LayoutOperation, RootCollectionAnnotation, getObjectPathFromObject } from "@dxos/app-toolkit";
10
+ import { AppSurface, useActiveSpace } from "@dxos/app-toolkit/ui";
11
+ import { AutomergePanel, ConfigPanel, CredentialsPanel, DeviceListPanel, DiagnosticsPanel, EdgeDashboardPanel, FeedsPanel, IdentityPanel, InvocationTraceContainer, KeyringPanel, LoggingPanel, MembersPanel, MetadataPanel, NetworkPanel, ObjectsPanel, QueuesPanel, SchemaPanel, SignalPanel, SpaceInfoPanel, SpaceListPanel, StoragePanel, SwarmPanel, TestingPanel, WorkflowPanel } from "@dxos/devtools";
12
+ import { Annotation, Collection, Feed, Obj } from "@dxos/echo";
19
13
  import { log } from "@dxos/log";
20
- import { ClientCapabilities } from "@dxos/plugin-client";
21
- import { ScriptOperation } from "@dxos/plugin-script/types";
22
- import { SpaceOperation } from "@dxos/plugin-space/types";
23
- import { SpaceState, isSpace, parseId } from "@dxos/react-client/echo";
24
- import { Panel } from "@dxos/react-ui";
25
-
26
- // src/containers/index.ts
27
- import { lazy } from "react";
28
- var DebugGraph = lazy(() => import("./DebugGraph-7HXJ2PS2.mjs"));
29
- var DebugObjectPanel = lazy(() => import("./DebugObjectPanel-3TCDNUNW.mjs"));
30
- var DebugSettings = lazy(() => import("./DebugSettings-JZMIUDYB.mjs"));
31
- var DebugStatus = lazy(() => import("./DebugStatus-COQGH37G.mjs"));
32
- var DevtoolsOverviewContainer = lazy(() => import("./DevtoolsOverviewContainer-C75NFVER.mjs"));
33
- var SpaceGenerator = lazy(() => import("./SpaceGenerator-SWSGJEEL.mjs"));
34
- var Wireframe = lazy(() => import("./Wireframe-KAGOKEFW.mjs"));
35
- var DebugSpaceObjectsPanel = lazy(() => import("./DebugSpaceObjectsPanel-7NRPLWZ4.mjs"));
36
-
37
- // src/capabilities/react-surface/react-surface.tsx
38
- var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-debug/src/capabilities/react-surface/react-surface.tsx";
39
- var isSpaceDebug = (data) => data?.type === `${meta.id}/space` && isSpace(data.space);
14
+ import { ScriptOperation } from "@dxos/plugin-script";
15
+ import { SpaceOperation } from "@dxos/plugin-space";
16
+ import { SpaceState, isSpace } from "@dxos/react-client/echo";
17
+ import { ToolsExplorer } from "@dxos/react-ui-introspect";
18
+ import { DebugSettings } from "#components";
19
+ import { DebugGraph, DebugObjectPanel, DebugSpaceObjectsPanel, DebugStatus, DevtoolsOverviewContainer, RegistryPanel, SpaceGenerator, Wireframe } from "#containers";
20
+ import { meta } from "#meta";
21
+ import { DebugCapabilities, Devtools } from "#types";
22
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-debug/src/capabilities/react-surface.tsx";
23
+ var MCP_SERVER_URL = "https://introspect-service-labs.dxos.workers.dev/mcp";
24
+ var isSpaceDebug = (data) => data?.type === `${meta.id}.space` && isSpace(data.space);
40
25
  var isGraphDebug = (data) => {
41
26
  const graph = data?.graph;
42
27
  return graph != null && typeof graph === "object" && typeof graph.json === "function" && typeof data?.root === "string";
43
28
  };
44
- var useCurrentSpace = () => {
45
- const layout = useLayout();
46
- const client = useCapability(ClientCapabilities.Client);
47
- const { spaceId } = parseId(layout.workspace);
48
- const space = spaceId ? client.spaces.get(spaceId) : void 0;
49
- return space;
50
- };
51
- var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ({ logBuffer }) {
29
+ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ({ logStore }) {
52
30
  const capabilities = yield* Capability.Service;
53
31
  const registry = capabilities.get(Capabilities.AtomRegistry);
54
32
  const settingsAtom = capabilities.get(DebugCapabilities.Settings);
33
+ const fileUploader = capabilities.getAll(AppCapabilities.FileUploader)[0];
55
34
  return Capability.contributes(Capabilities.ReactSurface, [
56
35
  Surface.create({
57
- id: `${meta.id}/plugin-settings`,
58
- role: "article",
59
- filter: (data) => AppCapabilities.isSettings(data.subject) && data.subject.prefix === meta.id,
36
+ id: "pluginSettings",
37
+ filter: AppSurface.settings(AppSurface.Article, meta.id),
60
38
  component: ({ data: { subject } }) => {
61
39
  const { settings, updateSettings } = useSettingsState(subject.atom);
62
40
  return /* @__PURE__ */ React.createElement(DebugSettings, {
63
41
  settings,
64
42
  onSettingsChange: updateSettings,
65
- logBuffer
43
+ logStore,
44
+ onUpload: fileUploader
66
45
  });
67
46
  }
68
47
  }),
69
48
  Surface.create({
70
- id: `${meta.id}/space`,
49
+ id: "space",
71
50
  role: "article",
72
51
  filter: (data) => isSpaceDebug(data.subject),
73
52
  component: ({ role, data }) => {
@@ -76,7 +55,7 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ({
76
55
  if (!isSpace(data.subject.space)) {
77
56
  return;
78
57
  }
79
- const collection = data.subject.space.state.get() === SpaceState.SPACE_READY && data.subject.space.properties[Collection.Collection.typename]?.target;
58
+ const collection = data.subject.space.state.get() === SpaceState.SPACE_READY && Annotation.get(data.subject.space.properties, RootCollectionAnnotation).pipe(Option.getOrUndefined)?.target;
80
59
  if (!Obj.instanceOf(Collection.Collection, collection)) {
81
60
  return;
82
61
  }
@@ -90,21 +69,15 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ({
90
69
  data.subject.space,
91
70
  invokePromise
92
71
  ]);
93
- return /* @__PURE__ */ React.createElement(Panel.Root, {
72
+ return /* @__PURE__ */ React.createElement(SpaceGenerator, {
94
73
  role,
95
- className: "dx-article"
96
- }, /* @__PURE__ */ React.createElement(Panel.Content, {
97
- asChild: true
98
- }, /* @__PURE__ */ React.createElement(Panel.Content, {
99
- asChild: true
100
- }, /* @__PURE__ */ React.createElement(SpaceGenerator, {
101
74
  space: data.subject.space,
102
75
  onCreateObjects: handleCreateObject
103
- }))));
76
+ });
104
77
  }
105
78
  }),
106
79
  Surface.create({
107
- id: `${meta.id}/app-graph`,
80
+ id: "appGraph",
108
81
  role: "article",
109
82
  filter: (data) => isGraphDebug(data.subject),
110
83
  component: ({ data }) => /* @__PURE__ */ React.createElement(DebugGraph, {
@@ -113,12 +86,25 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ({
113
86
  })
114
87
  }),
115
88
  Surface.create({
116
- id: `${meta.id}/wireframe`,
89
+ id: "toolsExplorer",
90
+ filter: AppSurface.literal(AppSurface.Article, Devtools.ToolsExplorer),
91
+ component: () => /* @__PURE__ */ React.createElement(ToolsExplorer, {
92
+ serverUrl: MCP_SERVER_URL
93
+ })
94
+ }),
95
+ Surface.create({
96
+ id: "registry",
97
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Registry),
98
+ component: () => /* @__PURE__ */ React.createElement(RegistryPanel, null)
99
+ }),
100
+ Surface.create({
101
+ id: "wireframe",
102
+ // TODO(wittjosiah): Split into multiple surfaces if this filter proves too strict for non-article roles.
117
103
  role: [
118
104
  "article",
119
105
  "section"
120
106
  ],
121
- position: "hoist",
107
+ position: "first",
122
108
  filter: (data) => {
123
109
  const settings = registry.get(settingsAtom);
124
110
  return Obj.isObject(data.subject) && !!settings.wireframe;
@@ -130,98 +116,93 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ({
130
116
  })
131
117
  }),
132
118
  Surface.create({
133
- id: `${meta.id}/object-debug`,
134
- role: "article",
135
- filter: (data) => data.subject === "debug" && Obj.isObject(data.companionTo),
136
- component: ({ data }) => /* @__PURE__ */ React.createElement(DebugObjectPanel, {
137
- object: data.companionTo
119
+ id: "objectDebug",
120
+ filter: AppSurface.allOf(AppSurface.literal(AppSurface.Article, "debug"), AppSurface.companion(AppSurface.Article)),
121
+ component: ({ role, data }) => /* @__PURE__ */ React.createElement(DebugObjectPanel, {
122
+ role,
123
+ companionTo: data.companionTo
138
124
  })
139
125
  }),
140
126
  Surface.create({
141
- id: `${meta.id}/devtools-overview`,
142
- role: "deck-companion--devtools",
143
- filter: (data) => data.subject === "devtools",
127
+ id: "devtoolsOverview",
128
+ filter: AppSurface.literal(Surface.makeType("deck-companion--devtools"), "devtools"),
144
129
  component: () => /* @__PURE__ */ React.createElement(DevtoolsOverviewContainer, null)
145
130
  }),
146
131
  Surface.create({
147
- id: `${meta.id}/space-objects`,
148
- role: "deck-companion--space-objects",
149
- filter: (data) => data.subject === "space-objects",
150
- component: () => /* @__PURE__ */ React.createElement(DebugSpaceObjectsPanel, null)
132
+ id: "spaceObjects",
133
+ filter: AppSurface.literal(Surface.makeType("deck-companion--space-objects"), "space-objects"),
134
+ component: () => {
135
+ const space = useActiveSpace();
136
+ if (!space) {
137
+ return null;
138
+ }
139
+ return /* @__PURE__ */ React.createElement(DebugSpaceObjectsPanel, {
140
+ space
141
+ });
142
+ }
151
143
  }),
152
144
  Surface.create({
153
- id: `${meta.id}/status`,
154
- role: "status",
145
+ id: "debugStatus",
146
+ role: "status-indicator",
147
+ position: "first",
155
148
  component: () => /* @__PURE__ */ React.createElement(DebugStatus, null)
156
149
  }),
157
150
  //
158
151
  // Devtools
159
152
  //
160
153
  Surface.create({
161
- id: `${meta.id}/client/config`,
162
- role: "article",
163
- filter: (data) => data.subject === Devtools.Client.Config,
154
+ id: "client.config",
155
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Config),
164
156
  component: () => /* @__PURE__ */ React.createElement(ConfigPanel, {
165
157
  vaultSelector: false
166
158
  })
167
159
  }),
168
160
  Surface.create({
169
- id: `${meta.id}/client/storage`,
170
- role: "article",
171
- filter: (data) => data.subject === Devtools.Client.Storage,
161
+ id: "client.storage",
162
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Storage),
172
163
  component: () => /* @__PURE__ */ React.createElement(StoragePanel, null)
173
164
  }),
174
165
  Surface.create({
175
- id: `${meta.id}/client/logs`,
176
- role: "article",
177
- filter: (data) => data.subject === Devtools.Client.Logs,
166
+ id: "client.logs",
167
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Logs),
178
168
  component: () => /* @__PURE__ */ React.createElement(LoggingPanel, null)
179
169
  }),
180
170
  Surface.create({
181
- id: `${meta.id}/client/diagnostics`,
182
- role: "article",
183
- filter: (data) => data.subject === Devtools.Client.Diagnostics,
171
+ id: "client.diagnostics",
172
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Client.Diagnostics),
184
173
  component: () => /* @__PURE__ */ React.createElement(DiagnosticsPanel, null)
185
174
  }),
186
175
  Surface.create({
187
- id: `${meta.id}/client/tracing`,
188
- role: "article",
189
- filter: (data) => data.subject === Devtools.Client.Tracing,
190
- component: () => /* @__PURE__ */ React.createElement(TracingPanel, null)
191
- }),
192
- Surface.create({
193
- id: `${meta.id}/halo/identity`,
194
- role: "article",
195
- filter: (data) => data.subject === Devtools.Halo.Identity,
176
+ id: "halo.identity",
177
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Halo.Identity),
196
178
  component: () => /* @__PURE__ */ React.createElement(IdentityPanel, null)
197
179
  }),
198
180
  Surface.create({
199
- id: `${meta.id}/halo/devices`,
200
- role: "article",
201
- filter: (data) => data.subject === Devtools.Halo.Devices,
181
+ id: "halo.devices",
182
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Halo.Devices),
202
183
  component: () => /* @__PURE__ */ React.createElement(DeviceListPanel, null)
203
184
  }),
204
185
  Surface.create({
205
- id: `${meta.id}/halo/keyring`,
206
- role: "article",
207
- filter: (data) => data.subject === Devtools.Halo.Keyring,
186
+ id: "halo.keyring",
187
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Halo.Keyring),
208
188
  component: () => /* @__PURE__ */ React.createElement(KeyringPanel, null)
209
189
  }),
210
190
  Surface.create({
211
- id: `${meta.id}/halo/credentials`,
212
- role: "article",
213
- filter: (data) => data.subject === Devtools.Halo.Credentials,
191
+ id: "halo.credentials",
192
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Halo.Credentials),
214
193
  component: () => {
215
- const space = useCurrentSpace();
194
+ const space = useActiveSpace();
195
+ if (!space) {
196
+ return null;
197
+ }
216
198
  return /* @__PURE__ */ React.createElement(CredentialsPanel, {
217
199
  space
218
200
  });
219
201
  }
220
202
  }),
221
203
  Surface.create({
222
- id: `${meta.id}/echo/spaces`,
223
- role: "article",
224
- filter: (data) => data.subject === Devtools.Echo.Spaces,
204
+ id: "echo.spaces",
205
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Spaces),
225
206
  component: () => {
226
207
  const { invokePromise } = useOperationInvoker();
227
208
  const handleSelect = useCallback(() => invokePromise(LayoutOperation.Open, {
@@ -237,11 +218,10 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ({
237
218
  }
238
219
  }),
239
220
  Surface.create({
240
- id: `${meta.id}/echo/space`,
241
- role: "article",
242
- filter: (data) => data.subject === Devtools.Echo.Space,
221
+ id: "echo.space",
222
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Space),
243
223
  component: () => {
244
- const space = useCurrentSpace();
224
+ const space = useActiveSpace();
245
225
  const { invokePromise } = useOperationInvoker();
246
226
  const handleSelect = useCallback(() => invokePromise(LayoutOperation.Open, {
247
227
  subject: [
@@ -250,6 +230,9 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ({
250
230
  }), [
251
231
  invokePromise
252
232
  ]);
233
+ if (!space) {
234
+ return null;
235
+ }
253
236
  return /* @__PURE__ */ React.createElement(SpaceInfoPanel, {
254
237
  space,
255
238
  onSelectFeed: handleSelect,
@@ -258,137 +241,141 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ({
258
241
  }
259
242
  }),
260
243
  Surface.create({
261
- id: `${meta.id}/echo/feeds`,
262
- role: "article",
263
- filter: (data) => data.subject === Devtools.Echo.Feeds,
244
+ id: "echo.feeds",
245
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Feeds),
264
246
  component: () => {
265
- const space = useCurrentSpace();
247
+ const space = useActiveSpace();
248
+ if (!space) {
249
+ return null;
250
+ }
266
251
  return /* @__PURE__ */ React.createElement(FeedsPanel, {
267
252
  space
268
253
  });
269
254
  }
270
255
  }),
271
256
  Surface.create({
272
- id: `${meta.id}/echo/objects`,
273
- role: "article",
274
- filter: (data) => data.subject === Devtools.Echo.Objects,
257
+ id: "echo.objects",
258
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Objects),
275
259
  component: () => {
276
- const space = useCurrentSpace();
260
+ const space = useActiveSpace();
261
+ if (!space) {
262
+ return null;
263
+ }
277
264
  return /* @__PURE__ */ React.createElement(ObjectsPanel, {
278
265
  space
279
266
  });
280
267
  }
281
268
  }),
282
269
  Surface.create({
283
- id: `${meta.id}/echo/schema`,
284
- role: "article",
285
- filter: (data) => data.subject === Devtools.Echo.Schema,
270
+ id: "echo.schema",
271
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Schema),
286
272
  component: () => {
287
- const space = useCurrentSpace();
273
+ const space = useActiveSpace();
274
+ if (!space) {
275
+ return null;
276
+ }
288
277
  return /* @__PURE__ */ React.createElement(SchemaPanel, {
289
278
  space
290
279
  });
291
280
  }
292
281
  }),
293
282
  Surface.create({
294
- id: `${meta.id}/echo/automerge`,
295
- role: "article",
296
- filter: (data) => data.subject === Devtools.Echo.Automerge,
283
+ id: "echo.automerge",
284
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Automerge),
297
285
  component: () => {
298
- const space = useCurrentSpace();
286
+ const space = useActiveSpace();
287
+ if (!space) {
288
+ return null;
289
+ }
299
290
  return /* @__PURE__ */ React.createElement(AutomergePanel, {
300
291
  space
301
292
  });
302
293
  }
303
294
  }),
304
295
  Surface.create({
305
- id: `${meta.id}/echo/queues`,
306
- role: "article",
307
- filter: (data) => data.subject === Devtools.Echo.Queues,
296
+ id: "echo.queues",
297
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Queues),
308
298
  component: () => /* @__PURE__ */ React.createElement(QueuesPanel, null)
309
299
  }),
310
300
  Surface.create({
311
- id: `${meta.id}/echo/members`,
312
- role: "article",
313
- filter: (data) => data.subject === Devtools.Echo.Members,
301
+ id: "echo.members",
302
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Members),
314
303
  component: () => {
315
- const space = useCurrentSpace();
304
+ const space = useActiveSpace();
305
+ if (!space) {
306
+ return null;
307
+ }
316
308
  return /* @__PURE__ */ React.createElement(MembersPanel, {
317
309
  space
318
310
  });
319
311
  }
320
312
  }),
321
313
  Surface.create({
322
- id: `${meta.id}/echo/metadata`,
323
- role: "article",
324
- filter: (data) => data.subject === Devtools.Echo.Metadata,
314
+ id: "echo.metadata",
315
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Metadata),
325
316
  component: () => /* @__PURE__ */ React.createElement(MetadataPanel, null)
326
317
  }),
327
318
  Surface.create({
328
- id: `${meta.id}/mesh/signal`,
329
- role: "article",
330
- filter: (data) => data.subject === Devtools.Mesh.Signal,
319
+ id: "mesh.signal",
320
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Mesh.Signal),
331
321
  component: () => /* @__PURE__ */ React.createElement(SignalPanel, null)
332
322
  }),
333
323
  Surface.create({
334
- id: `${meta.id}/mesh/swarm`,
335
- role: "article",
336
- filter: (data) => data.subject === Devtools.Mesh.Swarm,
324
+ id: "mesh.swarm",
325
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Mesh.Swarm),
337
326
  component: () => /* @__PURE__ */ React.createElement(SwarmPanel, null)
338
327
  }),
339
328
  Surface.create({
340
- id: `${meta.id}/mesh/network`,
341
- role: "article",
342
- filter: (data) => data.subject === Devtools.Mesh.Network,
329
+ id: "mesh.network",
330
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Mesh.Network),
343
331
  component: () => {
344
- const space = useCurrentSpace();
332
+ const space = useActiveSpace();
333
+ if (!space) {
334
+ return null;
335
+ }
345
336
  return /* @__PURE__ */ React.createElement(NetworkPanel, {
346
337
  space
347
338
  });
348
339
  }
349
340
  }),
350
- // TODO(wittjosiah): Remove?
351
- // createSurface({
352
- // id: `${meta.id}/agent/dashboard`,
353
- // role: 'article',
354
- // filter: (data): data is any => data.subject === Devtools.Agent.Dashboard,
355
- // component: () => <DashboardPanel />,
356
- // }),
357
341
  Surface.create({
358
- id: `${meta.id}/edge/dashboard`,
359
- role: "article",
360
- filter: (data) => data.subject === Devtools.Edge.Dashboard,
342
+ id: "edge.dashboard",
343
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Dashboard),
361
344
  component: () => /* @__PURE__ */ React.createElement(EdgeDashboardPanel, null)
362
345
  }),
363
346
  Surface.create({
364
- id: `${meta.id}/edge/workflows`,
365
- role: "article",
366
- filter: (data) => data.subject === Devtools.Edge.Workflows,
347
+ id: "edge.workflows",
348
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Workflows),
367
349
  component: () => {
368
- const space = useCurrentSpace();
350
+ const space = useActiveSpace();
351
+ if (!space) {
352
+ return null;
353
+ }
369
354
  return /* @__PURE__ */ React.createElement(WorkflowPanel, {
370
355
  space
371
356
  });
372
357
  }
373
358
  }),
374
359
  Surface.create({
375
- id: `${meta.id}/edge/traces`,
376
- role: "article",
377
- filter: (data) => data.subject === Devtools.Edge.Traces,
360
+ id: "edge.traces",
361
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Traces),
378
362
  component: () => {
379
- const space = useCurrentSpace();
380
- const queueDxn = space?.properties.invocationTraceQueue?.dxn;
363
+ const space = useActiveSpace();
364
+ if (!space) {
365
+ return null;
366
+ }
367
+ const feed = space.properties.invocationTraceFeed?.target;
368
+ const feedDXN = feed ? Feed.getQueueUri(feed) : void 0;
381
369
  return /* @__PURE__ */ React.createElement(InvocationTraceContainer, {
382
- db: space?.db,
383
- queueDxn,
370
+ db: space.db,
371
+ feedDXN,
384
372
  detailAxis: "block"
385
373
  });
386
374
  }
387
375
  }),
388
376
  Surface.create({
389
- id: `${meta.id}/edge/testing`,
390
- role: "article",
391
- filter: (data) => data.subject === Devtools.Edge.Testing,
377
+ id: "edge.testing",
378
+ filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Testing),
392
379
  component: () => {
393
380
  const { invokePromise } = useOperationInvoker();
394
381
  const onSpaceCreate = useCallback(async (space) => {
@@ -413,16 +400,11 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ({
413
400
  }
414
401
  log.info("script created", {
415
402
  result: createResult
416
- }, {
417
- F: __dxlog_file,
418
- L: 414,
419
- S: this,
420
- C: (f, a) => f(...a)
421
- });
422
- if (createResult.data?.object?.id) {
403
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 401, S: this });
404
+ if (createResult.data?.object) {
423
405
  await invokePromise(LayoutOperation.Open, {
424
406
  subject: [
425
- `${space.id}:${createResult.data.object.id}`
407
+ getObjectPathFromObject(createResult.data.object)
426
408
  ]
427
409
  });
428
410
  }
@@ -440,4 +422,4 @@ var react_surface_default = Capability.makeModule(Effect.fnUntraced(function* ({
440
422
  export {
441
423
  react_surface_default as default
442
424
  };
443
- //# sourceMappingURL=react-surface-BTVNKKVQ.mjs.map
425
+ //# sourceMappingURL=react-surface-3MDMZGCA.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/react-surface.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Option from 'effect/Option';\nimport React, { useCallback } from 'react';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { Surface, useOperationInvoker, useSettingsState } from '@dxos/app-framework/ui';\nimport { AppCapabilities, LayoutOperation, RootCollectionAnnotation, getObjectPathFromObject } from '@dxos/app-toolkit';\nimport { AppSurface, useActiveSpace } from '@dxos/app-toolkit/ui';\nimport {\n AutomergePanel,\n ConfigPanel,\n CredentialsPanel,\n DeviceListPanel,\n DiagnosticsPanel,\n EdgeDashboardPanel,\n FeedsPanel,\n IdentityPanel,\n InvocationTraceContainer,\n KeyringPanel,\n LoggingPanel,\n MembersPanel,\n MetadataPanel,\n NetworkPanel,\n ObjectsPanel,\n QueuesPanel,\n SchemaPanel,\n SignalPanel,\n SpaceInfoPanel,\n SpaceListPanel,\n StoragePanel,\n SwarmPanel,\n TestingPanel,\n WorkflowPanel,\n} from '@dxos/devtools';\nimport { Annotation, Collection, Feed, Obj } from '@dxos/echo';\nimport { log } from '@dxos/log';\nimport { type IdbLogStore } from '@dxos/log-store-idb';\nimport { type Graph } from '@dxos/plugin-graph';\nimport { ScriptOperation } from '@dxos/plugin-script';\nimport { SpaceOperation } from '@dxos/plugin-space';\nimport { type Space, SpaceState, isSpace } from '@dxos/react-client/echo';\nimport { ToolsExplorer } from '@dxos/react-ui-introspect';\n\nimport { DebugSettings } from '#components';\nimport {\n DebugGraph,\n DebugObjectPanel,\n DebugSpaceObjectsPanel,\n DebugStatus,\n DevtoolsOverviewContainer,\n RegistryPanel,\n SpaceGenerator,\n Wireframe,\n} from '#containers';\nimport { meta } from '#meta';\nimport { DebugCapabilities, type Settings, Devtools } from '#types';\n\n// TODO(burdon): Move to config.\nconst MCP_SERVER_URL = 'https://introspect-service-labs.dxos.workers.dev/mcp';\n\ntype SpaceDebug = {\n type: string;\n space: Space;\n};\n\ntype GraphDebug = {\n graph: Graph.Graph;\n root: string;\n};\n\nconst isSpaceDebug = (data: any): data is SpaceDebug => data?.type === `${meta.id}.space` && isSpace(data.space);\nconst isGraphDebug = (data: any): data is GraphDebug => {\n const graph = data?.graph;\n return (\n graph != null && typeof graph === 'object' && typeof graph.json === 'function' && typeof data?.root === 'string'\n );\n};\n\ntype ReactSurfaceOptions = {\n logStore?: IdbLogStore;\n};\n\nexport default Capability.makeModule(\n Effect.fnUntraced(function* ({ logStore }: ReactSurfaceOptions) {\n const capabilities = yield* Capability.Service;\n const registry = capabilities.get(Capabilities.AtomRegistry);\n const settingsAtom = capabilities.get(DebugCapabilities.Settings);\n const fileUploader = capabilities.getAll(AppCapabilities.FileUploader)[0];\n\n return Capability.contributes(Capabilities.ReactSurface, [\n Surface.create({\n id: 'pluginSettings',\n filter: AppSurface.settings(AppSurface.Article, meta.id),\n component: ({ data: { subject } }) => {\n const { settings, updateSettings } = useSettingsState<Settings.Settings>(subject.atom);\n return (\n <DebugSettings\n settings={settings}\n onSettingsChange={updateSettings}\n logStore={logStore}\n onUpload={fileUploader}\n />\n );\n },\n }),\n Surface.create({\n id: 'space',\n role: 'article',\n filter: (data): data is { subject: SpaceDebug } => isSpaceDebug(data.subject),\n component: ({ role, data }) => {\n const { invokePromise } = useOperationInvoker();\n\n const handleCreateObject = useCallback(\n (objects: Obj.Unknown[]) => {\n if (!isSpace(data.subject.space)) {\n return;\n }\n\n const collection =\n data.subject.space.state.get() === SpaceState.SPACE_READY &&\n Annotation.get(data.subject.space.properties, RootCollectionAnnotation).pipe(Option.getOrUndefined)\n ?.target;\n if (!Obj.instanceOf(Collection.Collection, collection)) {\n return;\n }\n\n objects.forEach((object) => {\n void invokePromise(SpaceOperation.AddObject, {\n target: collection,\n object,\n });\n });\n },\n [data.subject.space, invokePromise],\n );\n\n return <SpaceGenerator role={role} space={data.subject.space} onCreateObjects={handleCreateObject} />;\n },\n }),\n Surface.create({\n id: 'appGraph',\n role: 'article',\n filter: (data): data is { subject: GraphDebug } => isGraphDebug(data.subject),\n component: ({ data }) => <DebugGraph graph={data.subject.graph} root={data.subject.root} />,\n }),\n Surface.create({\n id: 'toolsExplorer',\n filter: AppSurface.literal(AppSurface.Article, Devtools.ToolsExplorer),\n component: () => <ToolsExplorer 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: 'wireframe',\n // TODO(wittjosiah): Split into multiple surfaces if this filter proves too strict for non-article roles.\n role: ['article', 'section'],\n position: 'first',\n filter: (data): data is { subject: Obj.Unknown } => {\n const settings = registry.get(settingsAtom);\n return Obj.isObject(data.subject) && !!settings.wireframe;\n },\n component: ({ data, role, name }) => (\n <Wireframe label={`${role}:${name}`} object={data.subject} classNames='row-span-2 overflow-hidden' />\n ),\n }),\n Surface.create({\n id: 'objectDebug',\n filter: AppSurface.allOf(\n AppSurface.literal(AppSurface.Article, 'debug'),\n AppSurface.companion(AppSurface.Article),\n ),\n component: ({ role, data }) => <DebugObjectPanel role={role} companionTo={data.companionTo} />,\n }),\n Surface.create({\n id: 'devtoolsOverview',\n filter: AppSurface.literal(Surface.makeType<{ subject: string }>('deck-companion--devtools'), 'devtools'),\n component: () => <DevtoolsOverviewContainer />,\n }),\n Surface.create({\n id: 'spaceObjects',\n filter: AppSurface.literal(\n Surface.makeType<{ subject: string }>('deck-companion--space-objects'),\n 'space-objects',\n ),\n component: () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n return <DebugSpaceObjectsPanel space={space} />;\n },\n }),\n\n Surface.create({\n id: 'debugStatus',\n role: 'status-indicator',\n position: 'first',\n component: () => <DebugStatus />,\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 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.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: () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n return <CredentialsPanel space={space} />;\n },\n }),\n Surface.create({\n id: 'echo.spaces',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Spaces),\n component: () => {\n const { invokePromise } = useOperationInvoker();\n const handleSelect = useCallback(\n () => invokePromise(LayoutOperation.Open, { subject: [Devtools.Echo.Space] }),\n [invokePromise],\n );\n return <SpaceListPanel onSelect={handleSelect} />;\n },\n }),\n Surface.create({\n id: 'echo.space',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Space),\n component: () => {\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 }),\n Surface.create({\n id: 'echo.feeds',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Feeds),\n component: () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n return <FeedsPanel space={space} />;\n },\n }),\n Surface.create({\n id: 'echo.objects',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Objects),\n component: () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n return <ObjectsPanel space={space} />;\n },\n }),\n Surface.create({\n id: 'echo.schema',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Schema),\n component: () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n return <SchemaPanel space={space} />;\n },\n }),\n Surface.create({\n id: 'echo.automerge',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Echo.Automerge),\n component: () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n return <AutomergePanel space={space} />;\n },\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: () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n return <MembersPanel space={space} />;\n },\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: () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n return <NetworkPanel space={space} />;\n },\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: () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n return <WorkflowPanel space={space} />;\n },\n }),\n Surface.create({\n id: 'edge.traces',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Traces),\n component: () => {\n const space = useActiveSpace();\n if (!space) {\n return null;\n }\n\n const feed = space.properties.invocationTraceFeed?.target;\n const feedDXN = feed ? Feed.getQueueUri(feed) : undefined;\n return <InvocationTraceContainer db={space.db} feedDXN={feedDXN} detailAxis='block' />;\n },\n }),\n Surface.create({\n id: 'edge.testing',\n filter: AppSurface.literal(AppSurface.Article, Devtools.Edge.Testing),\n component: () => {\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: [getObjectPathFromObject(createResult.data.object)],\n });\n }\n },\n [invokePromise],\n );\n return <TestingPanel onSpaceCreate={onSpaceCreate} onScriptPluginOpen={onScriptPluginOpen} />;\n },\n }),\n ]);\n }),\n);\n"],
5
+ "mappings": "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",
6
+ "names": ["Effect", "Option", "React", "useCallback", "Capabilities", "Capability", "Surface", "useOperationInvoker", "useSettingsState", "AppCapabilities", "LayoutOperation", "RootCollectionAnnotation", "getObjectPathFromObject", "AppSurface", "useActiveSpace", "AutomergePanel", "ConfigPanel", "CredentialsPanel", "DeviceListPanel", "DiagnosticsPanel", "EdgeDashboardPanel", "FeedsPanel", "IdentityPanel", "InvocationTraceContainer", "KeyringPanel", "LoggingPanel", "MembersPanel", "MetadataPanel", "NetworkPanel", "ObjectsPanel", "QueuesPanel", "SchemaPanel", "SignalPanel", "SpaceInfoPanel", "SpaceListPanel", "StoragePanel", "SwarmPanel", "TestingPanel", "WorkflowPanel", "Annotation", "Collection", "Feed", "Obj", "log", "ScriptOperation", "SpaceOperation", "SpaceState", "isSpace", "ToolsExplorer", "DebugSettings", "DebugGraph", "DebugObjectPanel", "DebugSpaceObjectsPanel", "DebugStatus", "DevtoolsOverviewContainer", "RegistryPanel", "SpaceGenerator", "Wireframe", "meta", "DebugCapabilities", "Devtools", "isGraphDebug", "data", "graph", "makeModule", "fnUntraced", "logStore", "registry", "capabilities", "AtomRegistry", "settingsAtom", "fileUploader", "getAll", "FileUploader", "contributes", "filter", "component", "settings", "updateSettings", "onSettingsChange", "onUpload", "role", "invokePromise", "handleCreateObject", "subject", "objects", "target", "collection", "object", "space", "onCreateObjects", "root", "create", "serverUrl", "MCP_SERVER_URL", "position", "isObject", "name", "classNames", "companionTo", "vaultSelector", "handleSelect", "Echo", "onSelectPipeline", "feed", "db", "feedDXN", "detailAxis", "onSpaceCreate", "waitUntilReady", "Migrate", "createResult", "info", "Open", "onScriptPluginOpen"]
7
+ }