@dxos/plugin-debug 0.10.0 → 0.11.1

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 (236) hide show
  1. package/PLUGIN.mdl +12 -325
  2. package/README.md +4 -14
  3. package/dist/lib/DebugPlugin.mjs +29 -0
  4. package/dist/lib/DebugPlugin.mjs.map +1 -0
  5. package/dist/lib/DebugPlugin.node.mjs +10 -0
  6. package/dist/lib/DebugPlugin.node.mjs.map +1 -0
  7. package/dist/lib/DebugPlugin.workerd.mjs +8 -0
  8. package/dist/lib/DebugPlugin.workerd.mjs.map +1 -0
  9. package/dist/lib/capabilities.mjs +11 -0
  10. package/dist/lib/capabilities.mjs.map +1 -0
  11. package/dist/lib/chunk-DebugObjectPanel.mjs +58 -0
  12. package/dist/lib/chunk-DebugObjectPanel.mjs.map +1 -0
  13. package/dist/lib/chunk-DebugSettings.mjs +237 -0
  14. package/dist/lib/chunk-DebugSettings.mjs.map +1 -0
  15. package/dist/lib/chunk-DebugSpaceObjectsPanel.mjs +39 -0
  16. package/dist/lib/chunk-DebugSpaceObjectsPanel.mjs.map +1 -0
  17. package/dist/lib/chunk-DebugStatus.mjs +117 -0
  18. package/dist/lib/chunk-DebugStatus.mjs.map +1 -0
  19. package/dist/lib/chunk-LogStatus.mjs +44 -0
  20. package/dist/lib/chunk-LogStatus.mjs.map +1 -0
  21. package/dist/lib/chunk-SpaceGenerator.mjs +208 -0
  22. package/dist/lib/chunk-SpaceGenerator.mjs.map +1 -0
  23. package/dist/lib/chunk-StatsPanel.mjs +58 -0
  24. package/dist/lib/chunk-StatsPanel.mjs.map +1 -0
  25. package/dist/lib/chunk-Wireframe.mjs +60 -0
  26. package/dist/lib/chunk-Wireframe.mjs.map +1 -0
  27. package/dist/lib/chunk-app-graph-builder.mjs +76 -0
  28. package/dist/lib/chunk-app-graph-builder.mjs.map +1 -0
  29. package/dist/lib/chunk-log-recording.mjs +17 -0
  30. package/dist/lib/chunk-log-recording.mjs.map +1 -0
  31. package/dist/lib/chunk-meta.mjs +36 -0
  32. package/dist/lib/chunk-meta.mjs.map +1 -0
  33. package/dist/lib/chunk-react-surface.mjs +193 -0
  34. package/dist/lib/chunk-react-surface.mjs.map +1 -0
  35. package/dist/lib/chunk-settings.mjs +23 -0
  36. package/dist/lib/chunk-settings.mjs.map +1 -0
  37. package/dist/lib/chunk-stats-panel.mjs +56 -0
  38. package/dist/lib/chunk-stats-panel.mjs.map +1 -0
  39. package/dist/lib/chunk-types.mjs +60 -0
  40. package/dist/lib/chunk-types.mjs.map +1 -0
  41. package/dist/lib/components.mjs +763 -0
  42. package/dist/lib/components.mjs.map +1 -0
  43. package/dist/lib/containers.mjs +14 -0
  44. package/dist/lib/containers.mjs.map +1 -0
  45. package/dist/lib/index.mjs +3 -0
  46. package/dist/lib/meta.mjs +2 -0
  47. package/dist/lib/plugin.mjs +8 -0
  48. package/dist/lib/plugin.mjs.map +1 -0
  49. package/dist/lib/translations.mjs +38 -0
  50. package/dist/lib/translations.mjs.map +1 -0
  51. package/dist/lib/types.mjs +2 -0
  52. package/dist/types/src/DebugPlugin.d.ts.map +1 -1
  53. package/dist/types/src/capabilities/DebugSurfaces.d.ts +25 -0
  54. package/dist/types/src/capabilities/DebugSurfaces.d.ts.map +1 -0
  55. package/dist/types/src/capabilities/app-graph-builder.d.ts +1 -1
  56. package/dist/types/src/capabilities/index.d.ts +4 -1
  57. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  58. package/dist/types/src/capabilities/log-recording.d.ts +10 -0
  59. package/dist/types/src/capabilities/log-recording.d.ts.map +1 -0
  60. package/dist/types/src/capabilities/react-surface.d.ts +1 -1
  61. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  62. package/dist/types/src/capabilities/settings.d.ts +1 -1
  63. package/dist/types/src/capabilities/stats-panel.d.ts +16 -0
  64. package/dist/types/src/capabilities/stats-panel.d.ts.map +1 -0
  65. package/dist/types/src/components/SchemaTable/SchemaTable.d.ts +4 -3
  66. package/dist/types/src/components/SchemaTable/SchemaTable.d.ts.map +1 -1
  67. package/dist/types/src/components/SpaceGenerator/ObjectGenerator.d.ts.map +1 -1
  68. package/dist/types/src/containers/DebugObjectPanel/DebugObjectPanel.d.ts +4 -1
  69. package/dist/types/src/containers/DebugObjectPanel/DebugObjectPanel.d.ts.map +1 -1
  70. package/dist/types/src/containers/DebugSettings/DebugSettings.d.ts +4 -1
  71. package/dist/types/src/containers/DebugSettings/DebugSettings.d.ts.map +1 -1
  72. package/dist/types/src/containers/DebugSettings/DebugSettings.stories.d.ts +30 -58
  73. package/dist/types/src/containers/DebugSettings/DebugSettings.stories.d.ts.map +1 -1
  74. package/dist/types/src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.d.ts +4 -1
  75. package/dist/types/src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.d.ts.map +1 -1
  76. package/dist/types/src/containers/DebugStatus/DebugStatus.d.ts +4 -1
  77. package/dist/types/src/containers/DebugStatus/DebugStatus.d.ts.map +1 -1
  78. package/dist/types/src/containers/LogStatus/LogStatus.d.ts +6 -0
  79. package/dist/types/src/containers/LogStatus/LogStatus.d.ts.map +1 -0
  80. package/dist/types/src/containers/LogStatus/index.d.ts +2 -0
  81. package/dist/types/src/containers/LogStatus/index.d.ts.map +1 -0
  82. package/dist/types/src/containers/SpaceGenerator/SpaceGenerator.d.ts +1 -1
  83. package/dist/types/src/containers/SpaceGenerator/SpaceGenerator.d.ts.map +1 -1
  84. package/dist/types/src/containers/StatsPanel/StatsPanel.d.ts +6 -0
  85. package/dist/types/src/containers/StatsPanel/StatsPanel.d.ts.map +1 -0
  86. package/dist/types/src/containers/StatsPanel/index.d.ts +2 -0
  87. package/dist/types/src/containers/StatsPanel/index.d.ts.map +1 -0
  88. package/dist/types/src/containers/Wireframe/Wireframe.d.ts +4 -1
  89. package/dist/types/src/containers/Wireframe/Wireframe.d.ts.map +1 -1
  90. package/dist/types/src/containers/index.d.ts +4 -6
  91. package/dist/types/src/containers/index.d.ts.map +1 -1
  92. package/dist/types/src/translations.d.ts +26 -57
  93. package/dist/types/src/translations.d.ts.map +1 -1
  94. package/dist/types/src/types/DebugNodes.d.ts +7 -0
  95. package/dist/types/src/types/DebugNodes.d.ts.map +1 -0
  96. package/dist/types/src/types/DebugSurface.d.ts +8 -0
  97. package/dist/types/src/types/DebugSurface.d.ts.map +1 -0
  98. package/dist/types/src/types/debug.d.ts +3 -1
  99. package/dist/types/src/types/debug.d.ts.map +1 -1
  100. package/dist/types/src/types/index.d.ts +2 -2
  101. package/dist/types/src/types/index.d.ts.map +1 -1
  102. package/dist/types/tsconfig.tsbuildinfo +1 -1
  103. package/dx.config.ts +8 -13
  104. package/package.json +61 -63
  105. package/src/DebugPlugin.node.ts +1 -1
  106. package/src/DebugPlugin.tsx +10 -27
  107. package/src/DebugPlugin.workerd.ts +1 -1
  108. package/src/capabilities/DebugSurfaces.tsx +146 -0
  109. package/src/capabilities/app-graph-builder.ts +39 -373
  110. package/src/capabilities/index.ts +3 -2
  111. package/src/capabilities/log-recording.ts +20 -0
  112. package/src/capabilities/react-surface.ts +123 -0
  113. package/src/capabilities/stats-panel.ts +74 -0
  114. package/src/components/SchemaTable/SchemaTable.tsx +6 -5
  115. package/src/components/SpaceGenerator/ObjectGenerator.tsx +9 -3
  116. package/src/components/SpaceGenerator/presets.ts +2 -2
  117. package/src/components/index.ts +1 -1
  118. package/src/containers/DebugObjectPanel/DebugObjectPanel.tsx +20 -20
  119. package/src/containers/DebugSettings/DebugSettings.tsx +4 -3
  120. package/src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.tsx +4 -2
  121. package/src/containers/DebugStatus/DebugStatus.tsx +2 -0
  122. package/src/containers/LogStatus/LogStatus.tsx +51 -0
  123. package/src/containers/LogStatus/index.ts +5 -0
  124. package/src/containers/SpaceGenerator/SpaceGenerator.tsx +108 -10
  125. package/src/containers/StatsPanel/StatsPanel.tsx +74 -0
  126. package/src/containers/StatsPanel/index.ts +5 -0
  127. package/src/containers/Wireframe/Wireframe.tsx +2 -0
  128. package/src/containers/index.ts +9 -7
  129. package/src/index.ts +1 -1
  130. package/src/meta.ts +1 -1
  131. package/src/plugin.ts +1 -1
  132. package/src/translations.ts +8 -52
  133. package/src/types/DebugNodes.ts +18 -0
  134. package/src/types/DebugSurface.ts +16 -0
  135. package/src/types/debug.ts +3 -1
  136. package/src/types/index.ts +3 -3
  137. package/dist/lib/neutral/DebugGraph-G4FWS57E.mjs +0 -15
  138. package/dist/lib/neutral/DebugGraph-G4FWS57E.mjs.map +0 -7
  139. package/dist/lib/neutral/DebugObjectPanel-QSGQJ3LM.mjs +0 -61
  140. package/dist/lib/neutral/DebugObjectPanel-QSGQJ3LM.mjs.map +0 -7
  141. package/dist/lib/neutral/DebugPlugin.mjs +0 -59
  142. package/dist/lib/neutral/DebugPlugin.mjs.map +0 -7
  143. package/dist/lib/neutral/DebugPlugin.node.mjs +0 -18
  144. package/dist/lib/neutral/DebugPlugin.node.mjs.map +0 -7
  145. package/dist/lib/neutral/DebugPlugin.workerd.mjs +0 -12
  146. package/dist/lib/neutral/DebugPlugin.workerd.mjs.map +0 -7
  147. package/dist/lib/neutral/DebugSettings-Q3WUL6YQ.mjs +0 -229
  148. package/dist/lib/neutral/DebugSettings-Q3WUL6YQ.mjs.map +0 -7
  149. package/dist/lib/neutral/DebugSpaceObjectsPanel-AXFZWEIM.mjs +0 -36
  150. package/dist/lib/neutral/DebugSpaceObjectsPanel-AXFZWEIM.mjs.map +0 -7
  151. package/dist/lib/neutral/DebugStatus-H2BAHN26.mjs +0 -122
  152. package/dist/lib/neutral/DebugStatus-H2BAHN26.mjs.map +0 -7
  153. package/dist/lib/neutral/DevtoolsOverviewContainer-DWQHTK7D.mjs +0 -24
  154. package/dist/lib/neutral/DevtoolsOverviewContainer-DWQHTK7D.mjs.map +0 -7
  155. package/dist/lib/neutral/GithubPanel-4CSJRVKE.mjs +0 -177
  156. package/dist/lib/neutral/GithubPanel-4CSJRVKE.mjs.map +0 -7
  157. package/dist/lib/neutral/RegistryPanel-64GIYJHN.mjs +0 -161
  158. package/dist/lib/neutral/RegistryPanel-64GIYJHN.mjs.map +0 -7
  159. package/dist/lib/neutral/SpaceGenerator-Y35G6DRV.mjs +0 -146
  160. package/dist/lib/neutral/SpaceGenerator-Y35G6DRV.mjs.map +0 -7
  161. package/dist/lib/neutral/Wireframe-WD7S2AUU.mjs +0 -52
  162. package/dist/lib/neutral/Wireframe-WD7S2AUU.mjs.map +0 -7
  163. package/dist/lib/neutral/app-graph-builder-UKG4WVYK.mjs +0 -619
  164. package/dist/lib/neutral/app-graph-builder-UKG4WVYK.mjs.map +0 -7
  165. package/dist/lib/neutral/capabilities/index.mjs +0 -15
  166. package/dist/lib/neutral/capabilities/index.mjs.map +0 -7
  167. package/dist/lib/neutral/chunk-72QXLYMI.mjs +0 -118
  168. package/dist/lib/neutral/chunk-72QXLYMI.mjs.map +0 -7
  169. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +0 -10
  170. package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +0 -7
  171. package/dist/lib/neutral/chunk-R5C4CKOF.mjs +0 -54
  172. package/dist/lib/neutral/chunk-R5C4CKOF.mjs.map +0 -7
  173. package/dist/lib/neutral/components/index.mjs +0 -961
  174. package/dist/lib/neutral/components/index.mjs.map +0 -7
  175. package/dist/lib/neutral/containers/index.mjs +0 -27
  176. package/dist/lib/neutral/containers/index.mjs.map +0 -7
  177. package/dist/lib/neutral/index.mjs +0 -20
  178. package/dist/lib/neutral/index.mjs.map +0 -7
  179. package/dist/lib/neutral/meta.json +0 -1
  180. package/dist/lib/neutral/meta.mjs +0 -8
  181. package/dist/lib/neutral/meta.mjs.map +0 -7
  182. package/dist/lib/neutral/plugin.mjs +0 -12
  183. package/dist/lib/neutral/plugin.mjs.map +0 -7
  184. package/dist/lib/neutral/react-context-UJURDOO6.mjs +0 -17
  185. package/dist/lib/neutral/react-context-UJURDOO6.mjs.map +0 -7
  186. package/dist/lib/neutral/react-surface-URESE7J4.mjs +0 -484
  187. package/dist/lib/neutral/react-surface-URESE7J4.mjs.map +0 -7
  188. package/dist/lib/neutral/settings-5I2674B6.mjs +0 -28
  189. package/dist/lib/neutral/settings-5I2674B6.mjs.map +0 -7
  190. package/dist/lib/neutral/translations.mjs +0 -91
  191. package/dist/lib/neutral/translations.mjs.map +0 -7
  192. package/dist/lib/neutral/types/index.mjs +0 -16
  193. package/dist/lib/neutral/types/index.mjs.map +0 -7
  194. package/dist/types/src/DebugPlugin.test.d.ts +0 -2
  195. package/dist/types/src/DebugPlugin.test.d.ts.map +0 -1
  196. package/dist/types/src/capabilities/react-context.d.ts +0 -5
  197. package/dist/types/src/capabilities/react-context.d.ts.map +0 -1
  198. package/dist/types/src/containers/DebugGraph/DebugGraph.d.ts +0 -8
  199. package/dist/types/src/containers/DebugGraph/DebugGraph.d.ts.map +0 -1
  200. package/dist/types/src/containers/DebugGraph/index.d.ts +0 -2
  201. package/dist/types/src/containers/DebugGraph/index.d.ts.map +0 -1
  202. package/dist/types/src/containers/DevtoolsOverviewContainer/DevtoolsOverviewContainer.d.ts +0 -3
  203. package/dist/types/src/containers/DevtoolsOverviewContainer/DevtoolsOverviewContainer.d.ts.map +0 -1
  204. package/dist/types/src/containers/DevtoolsOverviewContainer/index.d.ts +0 -2
  205. package/dist/types/src/containers/DevtoolsOverviewContainer/index.d.ts.map +0 -1
  206. package/dist/types/src/containers/GithubPanel/GithubComponent.d.ts +0 -15
  207. package/dist/types/src/containers/GithubPanel/GithubComponent.d.ts.map +0 -1
  208. package/dist/types/src/containers/GithubPanel/GithubComponent.stories.d.ts +0 -106
  209. package/dist/types/src/containers/GithubPanel/GithubComponent.stories.d.ts.map +0 -1
  210. package/dist/types/src/containers/GithubPanel/GithubPanel.d.ts +0 -3
  211. package/dist/types/src/containers/GithubPanel/GithubPanel.d.ts.map +0 -1
  212. package/dist/types/src/containers/GithubPanel/index.d.ts +0 -2
  213. package/dist/types/src/containers/GithubPanel/index.d.ts.map +0 -1
  214. package/dist/types/src/containers/RegistryPanel/RegistryPanel.d.ts +0 -3
  215. package/dist/types/src/containers/RegistryPanel/RegistryPanel.d.ts.map +0 -1
  216. package/dist/types/src/containers/RegistryPanel/index.d.ts +0 -2
  217. package/dist/types/src/containers/RegistryPanel/index.d.ts.map +0 -1
  218. package/dist/types/src/types/Devtools.d.ts +0 -57
  219. package/dist/types/src/types/Devtools.d.ts.map +0 -1
  220. package/dist/types/src/types/surface.d.ts +0 -4
  221. package/dist/types/src/types/surface.d.ts.map +0 -1
  222. package/src/DebugPlugin.test.ts +0 -29
  223. package/src/capabilities/react-context.tsx +0 -25
  224. package/src/capabilities/react-surface.tsx +0 -504
  225. package/src/containers/DebugGraph/DebugGraph.tsx +0 -14
  226. package/src/containers/DebugGraph/index.ts +0 -5
  227. package/src/containers/DevtoolsOverviewContainer/DevtoolsOverviewContainer.tsx +0 -27
  228. package/src/containers/DevtoolsOverviewContainer/index.ts +0 -5
  229. package/src/containers/GithubPanel/GithubComponent.stories.tsx +0 -38
  230. package/src/containers/GithubPanel/GithubComponent.tsx +0 -192
  231. package/src/containers/GithubPanel/GithubPanel.tsx +0 -17
  232. package/src/containers/GithubPanel/index.ts +0 -5
  233. package/src/containers/RegistryPanel/RegistryPanel.tsx +0 -150
  234. package/src/containers/RegistryPanel/index.ts +0 -5
  235. package/src/types/Devtools.ts +0 -73
  236. package/src/types/surface.ts +0 -10
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.mjs","names":[],"sources":["../../src/components/SchemaTable/SchemaTable.tsx","../../src/components/SpaceGenerator/presets.ts","../../src/components/SpaceGenerator/ObjectGenerator.tsx"],"sourcesContent":["//\n// Copyright 2024 DXOS.org\n//\n\nimport React from 'react';\n\nimport { IconButton, ThemedClassName } from '@dxos/react-ui';\nimport { mx } from '@dxos/ui-theme';\n\nexport type SchemaTableProps = ThemedClassName<{\n types: any[];\n objects?: Record<string, number | undefined>;\n label: string;\n onClick: (typename: string) => void;\n}>;\n\nexport const SchemaTable = ({ classNames, types, objects = {}, label, onClick }: SchemaTableProps) => {\n return (\n <div className={mx('grid grid-cols-[1fr_80px_40px] gap-1 overflow-none', classNames)}>\n <h2 className='p-2'>{label}</h2>\n {types.map((type) => (\n <div key={type.typename} className='grid grid-cols-subgrid col-span-3 items-center'>\n <div className='px-2 text-sm font-mono text-subdued'>{type.typename}</div>\n <div className='px-2 text-right font-mono'>{objects[type.typename] ?? 0}</div>\n <IconButton\n variant='ghost'\n icon='ph--plus--regular'\n iconOnly\n label='Create data'\n onClick={() => onClick(type.typename)}\n />\n </div>\n ))}\n </div>\n );\n};\n","//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { RunInstructions, WebSearchSkill } from '@dxos/assistant-toolkit';\nimport { Instructions, Operation, Trigger } from '@dxos/compute';\nimport { type ComputeGraphModel, NODE_INPUT } from '@dxos/conductor';\nimport { Feed, Filter, JsonSchema, Key, Obj, Query, type QueryAST, Ref, Scope, Tag } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\nimport { DXN, EID } from '@dxos/keys';\nimport { InboxOperation } from '@dxos/plugin-inbox';\nimport { Mailbox } from '@dxos/plugin-inbox';\nimport { Markdown } from '@dxos/plugin-markdown';\nimport { type Space } from '@dxos/react-client/echo';\nimport {\n type ComputeShape,\n createAppend,\n createChat,\n createComputeGraph,\n createConstant,\n createFeed,\n createFunction,\n createGpt,\n createRandom,\n createSurface,\n createTemplate,\n createText,\n createTrigger,\n} from '@dxos/react-ui-canvas-compute';\nimport { CanvasBoard, CanvasGraphModel, pointMultiply, pointsToRect, rectToPoints } from '@dxos/react-ui-canvas-editor';\nimport { ViewModel } from '@dxos/schema';\nimport { Message, Organization, Person, Pipeline } from '@dxos/types';\nimport { range, trim } from '@dxos/util';\n\nimport { type ObjectGenerator } from './ObjectGenerator';\n\nexport enum PresetName {\n DXOS_TEAM = 'dxos-team',\n ORG_RESEARCH_PROJECT = 'org-research-project',\n // EMAIL_TABLE = 'email-table',\n GPT_QUEUE = 'webhook-gpt-queue',\n CHAT_GPT = 'chat-gpt-text',\n // EMAIL_WITH_SUMMARY = 'email-gptSummary-table',\n OBJECT_CHANGE_QUEUE = 'objectChange-queue',\n TIMER_TICK_QUEUE = 'timerTick-queue',\n FOREX_FUNCTION_CALL = 'forex-function-call',\n DISCORD_MESSAGES = 'discord-messages',\n // KANBAN_QUEUE = 'kanban-queue',\n}\n\nexport const generator = () => ({\n schemas: [CanvasBoard.CanvasBoard, Trigger.Trigger] as any[],\n types: Object.values(PresetName).map((name) => ({ typename: name })),\n items: [\n [\n PresetName.DXOS_TEAM,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const org = space.db.add(\n Obj.make(Organization.Organization, {\n name: 'DXOS',\n website: 'https://dxos.org',\n }),\n );\n const doc = space.db.add(\n Markdown.make({\n name: 'DXOS Research',\n content: 'DXOS builds Composer, an open-source AI-powered malleable application.',\n }),\n );\n\n const tag = space.db.add(Tag.make({ label: 'Investor' }));\n const tagRef = Ref.make(tag);\n Obj.update(doc, (doc) => {\n Obj.getMeta(doc).tags = [tagRef];\n });\n\n // space.db.add(\n // Relation.make(HasSubject, {\n // [Relation.Source]: doc,\n // [Relation.Target]: org,\n // completedAt: new Date().toISOString(),\n // }),\n // );\n\n space.db.add(\n Obj.make(Person.Person, { [Obj.Meta]: { tags: [tagRef] }, fullName: 'Rich', organization: Ref.make(org) }),\n );\n space.db.add(\n Obj.make(Person.Person, {\n fullName: 'Josiah',\n organization: Ref.make(org),\n }),\n );\n space.db.add(\n Obj.make(Person.Person, {\n fullName: 'Dima',\n organization: Ref.make(org),\n }),\n );\n space.db.add(\n Obj.make(Person.Person, {\n fullName: 'Mykola',\n organization: Ref.make(org),\n }),\n );\n\n return doc;\n });\n cb?.(objects);\n return objects;\n },\n ],\n [\n PresetName.ORG_RESEARCH_PROJECT,\n async (space, n, cb) => {\n const mailboxes = await space.db.query(Filter.type(Mailbox.Mailbox)).run();\n const mailbox = mailboxes[0];\n invariant(mailbox, 'Mailbox not found');\n const mailboxFeed = await mailbox.feed?.tryLoad();\n invariant(mailboxFeed, 'Mailbox missing feed reference');\n const feedUri = Feed.getFeedUri(mailboxFeed);\n invariant(feedUri, 'Mailbox feed missing feed URI');\n const tag = await space.db.query(Filter.type(Tag.Tag, { label: 'Investor' })).first();\n const tagUri = Obj.getURI(tag);\n\n const objects = range(n, () => {\n const contactsQuery = Query.select(Filter.type(Person.Person)).select(Filter.tag(tagUri));\n const organizationsQuery = Query.select(Filter.type(Organization.Organization)).select(Filter.tag(tagUri));\n const notesQuery = Query.select(Filter.type(Markdown.Document)).select(Filter.tag(tagUri));\n\n space.db.add(\n Trigger.make({\n enabled: true,\n spec: Trigger.specTimer('* * * * *'), // Every minute.\n runnable: Ref.make(Operation.serialize(InboxOperation.GoogleMailSync)),\n input: {\n mailbox: Ref.make(mailbox),\n },\n }),\n );\n\n const researchPrompt = space.db.add(\n Instructions.make({\n name: 'Research',\n description: 'Research organization',\n\n // TODO(dmaretskyi): This mocks research (returns pre-baked result), the actual research might take compute minutes.\n // Remove the mock prompt to do the actual research.\n text: trim`\n Research the organization provided as input.\n Create a research note for it at the end.\n NOTE: Do mocked reseach (set mockSearch to true).\n `,\n skills: [Ref.make(WebSearchSkill.make())],\n }),\n );\n\n space.db.add(\n Trigger.make({\n enabled: true,\n spec: Trigger.specSubscription(organizationsQuery),\n runnable: Ref.make(Operation.serialize(RunInstructions)),\n input: {\n instructions: Ref.make(researchPrompt),\n input: '{{event.subject}}',\n },\n }),\n );\n\n const mailboxView = ViewModel.make({\n query: Query.select(\n Filter.type(Message.Message, {\n properties: { labels: Filter.contains('investor') },\n }),\n ).from(Scope.feed(Obj.getURI(mailboxFeed))),\n jsonSchema: JsonSchema.toJsonSchema(Message.Message),\n });\n const contactsView = ViewModel.make({\n query: contactsQuery,\n jsonSchema: JsonSchema.toJsonSchema(Person.Person),\n });\n const organizationsView = ViewModel.make({\n query: organizationsQuery,\n jsonSchema: JsonSchema.toJsonSchema(Organization.Organization),\n });\n const notesView = ViewModel.make({\n query: notesQuery,\n jsonSchema: JsonSchema.toJsonSchema(Markdown.Document),\n });\n\n return space.db.add(\n Pipeline.make({\n name: 'Investor Research',\n columns: [\n {\n name: 'Mailbox',\n view: Ref.make(mailboxView),\n order: [],\n },\n {\n name: 'Contacts',\n view: Ref.make(contactsView),\n order: [],\n },\n {\n name: 'Organizations',\n view: Ref.make(organizationsView),\n order: [],\n },\n {\n name: 'Notes',\n view: Ref.make(notesView),\n order: [],\n },\n ],\n }),\n );\n });\n\n cb?.(objects.flat());\n return objects.flat();\n },\n ],\n [\n PresetName.GPT_QUEUE,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n let functionTrigger: Trigger.Trigger | undefined;\n canvasModel.builder.call((builder) => {\n const gpt = canvasModel.createNode(createGpt(position({ x: 0, y: -14 })));\n const triggerShape = createTrigger({\n spaceId: space.id,\n triggerKind: 'webhook',\n ...position({ x: -18, y: -2 }),\n });\n const trigger = canvasModel.createNode(triggerShape);\n const text = canvasModel.createNode(createText(position({ x: 19, y: 3, width: 10, height: 10 })));\n const { queueId } = setupQueue(space, canvasModel);\n const append = canvasModel.createNode(createAppend(position({ x: 10, y: 6 })));\n\n builder\n .createEdge({\n source: trigger.id,\n target: gpt.id,\n input: 'prompt',\n output: 'bodyText',\n })\n .createEdge({ source: gpt.id, target: text.id, output: 'text' })\n .createEdge({\n source: queueId.id,\n target: append.id,\n input: 'id',\n })\n .createEdge({\n source: gpt.id,\n target: append.id,\n output: 'messages',\n input: 'items',\n });\n\n functionTrigger = triggerShape.functionTrigger!.target!;\n });\n\n const computeModel = createComputeGraph(canvasModel);\n\n attachTrigger(functionTrigger, computeModel);\n\n return addToSpace(PresetName.GPT_QUEUE, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n [\n PresetName.OBJECT_CHANGE_QUEUE,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const { canvasModel, computeModel } = createQueueSinkPreset(\n space,\n 'subscription',\n (triggerSpec) =>\n (triggerSpec.query = {\n ast: Query.select(Filter.type(DXN.make('org.dxos.type.chess'))).ast as Obj.Mutable<QueryAST.Query>,\n }),\n 'type',\n );\n return addToSpace(PresetName.OBJECT_CHANGE_QUEUE, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n [\n PresetName.TIMER_TICK_QUEUE,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const { canvasModel, computeModel } = createQueueSinkPreset(\n space,\n 'timer',\n (triggerSpec) => (triggerSpec.cron = '*/5 * * * * *'),\n 'result',\n );\n return addToSpace(PresetName.TIMER_TICK_QUEUE, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n // TODO(wittjosiah): Remove?\n // [\n // PresetName.EMAIL_TABLE,\n // async (space, n, cb) => {\n // const objects = range(n, () => {\n // const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n // const results = space.db.query(Filter.type(TableType)).runSync();\n // const emailTable = results.find((r) => r.object?.view?.target?.query?.typename?.endsWith('Email'));\n // invariant(emailTable, 'Email table not found.');\n\n // const template = canvasModel.createNode(\n // createTemplate({\n // valueType: 'object',\n // ...rawPosition({ centerX: -80, centerY: -64, width: 320, height: 320 }),\n // }),\n // );\n // const templateContent = ['{'];\n\n // let functionTrigger: FunctionTrigger | undefined;\n // canvasModel.builder.call((builder) => {\n // const triggerShape = createTrigger({\n // spaceId: space.id,\n // triggerKind: 'email',\n // ...position({ x: -18, y: -2 }),\n // });\n // const trigger = canvasModel.createNode(triggerShape);\n\n // const tableId = canvasModel.createNode(\n // createConstant({\n // value: DXN.fromLocalObjectId(emailTable.id).toString(),\n // ...position({ x: -18, y: 5, width: 8, height: 6 }),\n // }),\n // );\n\n // const appendToTable = canvasModel.createNode(createAppend(position({ x: 10, y: 6 })));\n\n // const properties = SchemaAST.getPropertySignatures(EmailTriggerOutput.ast);\n // for (let i = 0; i < properties.length; i++) {\n // const propName = properties[i].name.toString();\n // builder.createEdge({ source: trigger.id, target: template.id, input: propName, output: propName });\n // templateContent.push(` \"${propName}\": \"{{${propName}}}\"` + (i === properties.length - 1 ? '' : ','));\n // }\n // templateContent.push('}');\n\n // builder\n // .createEdge({ source: tableId.id, target: appendToTable.id, input: 'id' })\n // .createEdge({ source: template.id, target: appendToTable.id, input: 'items' });\n\n // functionTrigger = triggerShape.functionTrigger!.target!;\n // });\n\n // const computeModel = createComputeGraph(canvasModel);\n\n // const templateComputeNode = computeModel.nodes.find((n) => n.id === template.node);\n // invariant(templateComputeNode, 'Template compute node was not created.');\n // templateComputeNode.value = templateContent.join('\\n');\n // templateComputeNode.inputSchema = JsonSchema.toJsonSchema(EmailTriggerOutput);\n\n // attachTrigger(functionTrigger, computeModel);\n\n // return addToSpace(PresetName.EMAIL_TABLE, space, canvasModel, computeModel);\n // });\n // cb?.(objects);\n // return objects;\n // },\n // ],\n\n [\n PresetName.CHAT_GPT,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n canvasModel.builder.call((builder) => {\n const gpt = canvasModel.createNode(createGpt(position({ x: 0, y: -14 })));\n const chat = canvasModel.createNode(createChat(position({ x: -18, y: -2 })));\n const text = canvasModel.createNode(createText(position({ x: 19, y: 3, width: 10, height: 10 })));\n const { queueId } = setupQueue(space, canvasModel);\n\n const append = canvasModel.createNode(createAppend(position({ x: 10, y: 6 })));\n\n builder\n .createEdge({ source: chat.id, target: gpt.id, input: 'prompt' })\n .createEdge({ source: gpt.id, target: text.id, output: 'text' })\n .createEdge({\n source: queueId.id,\n target: append.id,\n input: 'id',\n })\n .createEdge({\n source: gpt.id,\n target: append.id,\n output: 'messages',\n input: 'items',\n });\n });\n\n const computeModel = createComputeGraph(canvasModel);\n\n return addToSpace(PresetName.CHAT_GPT, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n // TODO(wittjosiah): Remove?\n // [\n // PresetName.EMAIL_WITH_SUMMARY,\n // async (space, n, cb) => {\n // const objects = range(n, () => {\n // const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n // const results = space.db.query(Filter.type(TableType)).runSync();\n // const emailTable = results.find((r) => r.object?.view?.target?.query?.typename?.endsWith('Email'));\n // invariant(emailTable, 'Email table not found.');\n\n // const template = canvasModel.createNode(\n // createTemplate({\n // valueType: 'object',\n // ...rawPosition({ centerX: 192, centerY: -176, width: 320, height: 320 }),\n // }),\n // );\n // const templateContent = ['{'];\n\n // let functionTrigger: FunctionTrigger | undefined;\n // canvasModel.builder.call((builder) => {\n // const gpt = canvasModel.createNode(\n // createGpt(rawPosition({ centerX: -400, centerY: -112, width: 256, height: 202 })),\n // );\n // const systemPrompt = canvasModel.createNode(\n // createConstant({\n // value: \"use one word to describe content category. don't write anything else\",\n // ...rawPosition({ centerX: -800, centerY: -160, width: 192, height: 128 }),\n // }),\n // );\n // const triggerShape = createTrigger({\n // spaceId: space.id,\n // triggerKind: 'email',\n // ...rawPosition({ centerX: -736, centerY: -384, width: 182, height: 192 }),\n // });\n // const trigger = canvasModel.createNode(triggerShape);\n\n // const { queueId } = setupQueue(space, canvasModel, {\n // idPosition: { centerX: -720, centerY: 224, width: 192, height: 256 },\n // queuePosition: { centerX: -144, centerY: 416, width: 320, height: 448 },\n // });\n // const appendToQueue = canvasModel.createNode(\n // createAppend(rawPosition({ centerX: -80, centerY: 96, width: 122, height: 128 })),\n // );\n\n // const tableId = canvasModel.createNode(\n // createConstant({\n // value: DXN.fromLocalObjectId(emailTable.id).toString(),\n // ...rawPosition({ centerX: -112, centerY: -544, width: 192, height: 256 }),\n // }),\n // );\n\n // const appendToTable = canvasModel.createNode(\n // createAppend(rawPosition({ centerX: 560, centerY: -416, width: 128, height: 122 })),\n // );\n\n // templateContent.push(' \"category\": \"{{text}}\",');\n // builder.createEdge({ source: gpt.id, target: template.id, input: 'text', output: 'text' });\n\n // const properties = SchemaAST.getPropertySignatures(EmailTriggerOutput.ast);\n // for (let i = 0; i < properties.length; i++) {\n // const propName = properties[i].name.toString();\n // builder.createEdge({ source: trigger.id, target: template.id, input: propName, output: propName });\n // templateContent.push(` \"${propName}\": \"{{${propName}}}\"` + (i === properties.length - 1 ? '' : ','));\n // }\n // templateContent.push('}');\n\n // builder\n // .createEdge({ source: tableId.id, target: appendToTable.id, input: 'id' })\n // .createEdge({ source: queueId.id, target: appendToQueue.id, input: 'id' })\n // .createEdge({ source: gpt.id, target: appendToQueue.id, output: 'messages', input: 'items' })\n // .createEdge({ source: systemPrompt.id, target: gpt.id, input: 'systemPrompt' })\n // .createEdge({ source: trigger.id, target: gpt.id, input: 'prompt', output: 'body' })\n // .createEdge({ source: template.id, target: appendToTable.id, input: 'items' });\n\n // functionTrigger = triggerShape.functionTrigger!.target!;\n // });\n\n // const computeModel = createComputeGraph(canvasModel);\n\n // const templateComputeNode = computeModel.nodes.find((n) => n.id === template.node);\n // invariant(templateComputeNode, 'Template compute node was not created.');\n // templateComputeNode.value = templateContent.join('\\n');\n // const extendedSchema = Schema.extend(EmailTriggerOutput, Schema.Struct({ text: Schema.String }));\n // templateComputeNode.inputSchema = JsonSchema.toJsonSchema(extendedSchema);\n\n // attachTrigger(functionTrigger, computeModel);\n\n // return addToSpace(PresetName.EMAIL_WITH_SUMMARY, space, canvasModel, computeModel);\n // });\n // cb?.(objects);\n // return objects;\n // },\n // ],\n\n [\n PresetName.FOREX_FUNCTION_CALL,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n canvasModel.builder.call((builder) => {\n const sourceCurrency = canvasModel.createNode(\n createConstant({ value: 'USD', ...position({ x: -10, y: -5 }) }),\n );\n const targetCurrency = canvasModel.createNode(\n createConstant({ value: 'EUR', ...position({ x: -10, y: 5 }) }),\n );\n const converter = canvasModel.createNode(createFunction(position({ x: 0, y: 0 })));\n const view = canvasModel.createNode(createSurface(position({ x: 12, y: 0 })));\n\n builder\n .createEdge({\n source: sourceCurrency.id,\n target: converter.id,\n input: 'from',\n })\n .createEdge({\n source: targetCurrency.id,\n target: converter.id,\n input: 'to',\n })\n .createEdge({\n source: converter.id,\n target: view.id,\n output: 'rate',\n });\n });\n\n const computeModel = createComputeGraph(canvasModel);\n\n return addToSpace(PresetName.FOREX_FUNCTION_CALL, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n [\n PresetName.DISCORD_MESSAGES,\n async (space, n, cb) => {\n const objects = range(n, () => {\n const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n let functionTrigger: Trigger.Trigger | undefined;\n canvasModel.builder.call((builder) => {\n const triggerShape = createTrigger({\n spaceId: space.id,\n triggerKind: 'timer',\n ...position({ x: -10, y: -5 }),\n });\n const trigger = canvasModel.createNode(triggerShape);\n // DXOS dev-null channel.\n const channelId = canvasModel.createNode(\n createConstant({\n value: '1088569858767212554',\n ...position({ x: -10, y: 0 }),\n }),\n );\n const queueId = canvasModel.createNode(\n createConstant({\n value: EID.make({ spaceId: space.id, entityId: Key.EntityId.random() }),\n ...position({ x: -10, y: 5 }),\n }),\n );\n const converter = canvasModel.createNode(createFunction(position({ x: 0, y: 0 })));\n const view = canvasModel.createNode(createText(position({ x: 12, y: 0 })));\n const queue = canvasModel.createNode(createFeed(position({ x: 0, y: 12 })));\n\n builder\n .createEdge({\n source: trigger.id,\n target: converter.id,\n input: 'tick',\n })\n .createEdge({\n source: channelId.id,\n target: converter.id,\n input: 'channelId',\n })\n .createEdge({\n source: queueId.id,\n target: converter.id,\n input: 'queueId',\n })\n .createEdge({\n source: converter.id,\n target: view.id,\n output: 'newMessages',\n })\n .createEdge({\n source: queueId.id,\n target: queue.id,\n input: 'input',\n });\n\n functionTrigger = triggerShape.functionTrigger!.target!;\n });\n\n const computeModel = createComputeGraph(canvasModel);\n attachTrigger(functionTrigger, computeModel);\n\n return addToSpace(PresetName.DISCORD_MESSAGES, space, canvasModel, computeModel);\n });\n cb?.(objects);\n return objects;\n },\n ],\n\n // TODO(wittjosiah): Remove?\n // [\n // PresetName.KANBAN_QUEUE,\n // async (space, n, cb) => {\n // const objects = range(n, () => {\n // const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n // // TODO(wittjosiah): Integrate directly w/ Kanban.\n // // const results = space.db.query(Filter.type(KanbanType)).runSync();\n // // const kanban = results.find((r) => r.object?.cardView?.target?.query?.type?.endsWith('Message'));\n // // invariant(kanban, 'Kanban not found.');\n\n // const results = space.db.query(Filter.type(TableType)).runSync();\n // const messages = results.find((r) => r.object?.view?.target?.query?.typename?.endsWith('Message'));\n // invariant(messages, 'Table not found.');\n\n // let functionTrigger: FunctionTrigger | undefined;\n // canvasModel.builder.call((builder) => {\n // const triggerShape = createTrigger({\n // spaceId: space.id,\n // triggerKind: 'queue',\n // ...position({ x: -10, y: -5 }),\n // });\n // const trigger = canvasModel.createNode(triggerShape);\n\n // const tableId = canvasModel.createNode(\n // createConstant({\n // value: DXN.fromLocalObjectId(messages.id).toString(),\n // ...position({ x: -10, y: 5 }),\n // }),\n // );\n // const appendToTable = canvasModel.createNode(createAppend(position({ x: 10, y: 0 })));\n\n // builder\n // .createEdge({ source: tableId.id, target: appendToTable.id, input: 'id' })\n // .createEdge({ source: trigger.id, target: appendToTable.id, input: 'items', output: 'item' });\n\n // functionTrigger = triggerShape.functionTrigger!.target!;\n // });\n\n // const computeModel = createComputeGraph(canvasModel);\n // attachTrigger(functionTrigger, computeModel);\n\n // return addToSpace(PresetName.KANBAN_QUEUE, space, canvasModel, computeModel);\n // });\n // cb?.(objects);\n // return objects;\n // },\n // ],\n ] as [PresetName, ObjectGenerator<any>][],\n});\n\nconst createQueueSinkPreset = <SpecType extends Trigger.Kind>(\n space: Space,\n triggerKind: SpecType,\n initSpec: (spec: Obj.Mutable<Extract<Trigger.Spec, { kind: SpecType }>>) => void,\n triggerOutputName: string,\n) => {\n const canvasModel = CanvasGraphModel.create<ComputeShape>();\n\n const template = canvasModel.createNode(\n createTemplate({\n valueType: 'object',\n ...rawPosition({ centerX: -64, centerY: -79, width: 320, height: 320 }),\n }),\n );\n\n let functionTrigger: Trigger.Trigger | undefined;\n canvasModel.builder.call((builder) => {\n const triggerShape = createTrigger({\n spaceId: space.id,\n triggerKind,\n ...rawPosition({ centerX: -578, centerY: -187, height: 320, width: 320 }),\n });\n const trigger = canvasModel.createNode(triggerShape);\n const { queueId } = setupQueue(space, canvasModel, {\n queuePosition: { centerX: -80, centerY: 378, width: 320, height: 448 },\n });\n const append = canvasModel.createNode(\n createAppend(rawPosition({ centerX: 320, centerY: 192, width: 128, height: 122 })),\n );\n const random = canvasModel.createNode(\n createRandom(rawPosition({ centerX: -509, centerY: -30, width: 64, height: 64 })),\n );\n\n builder\n .createEdge({ source: queueId.id, target: append.id, input: 'id' })\n .createEdge({ source: template.id, target: append.id, input: 'items' })\n .createEdge({\n source: trigger.id,\n target: template.id,\n output: triggerOutputName,\n input: 'type',\n })\n .createEdge({\n source: random.id,\n target: template.id,\n input: 'changeId',\n });\n\n functionTrigger = triggerShape.functionTrigger!.target!;\n const triggerSpec = functionTrigger.spec;\n invariant(triggerSpec && triggerSpec.kind === triggerKind, 'No trigger spec.');\n Obj.update(functionTrigger, (functionTrigger) => {\n initSpec(functionTrigger.spec as any);\n });\n });\n\n const computeModel = createComputeGraph(canvasModel);\n\n const templateComputeNode = computeModel.nodes.find((n) => n.id === template.node);\n invariant(templateComputeNode, 'Template compute node was not created.');\n // NOTE: These are plain object mutations during model construction, not ECHO object mutations.\n templateComputeNode.value = ['{', ' \"@type\": \"{{type}}\",', ' \"id\": \"@{{changeId}}\"', '}'].join('\\n');\n templateComputeNode.inputSchema = JsonSchema.toJsonSchema(\n Schema.Struct({ type: Schema.String, changeId: Schema.String }),\n );\n attachTrigger(functionTrigger, computeModel);\n\n return { canvasModel, computeModel };\n};\n\nconst addToSpace = (name: string, space: Space, canvas: CanvasGraphModel, compute: ComputeGraphModel) => {\n return space.db.add(\n Obj.make(CanvasBoard.CanvasBoard, {\n name,\n computeGraph: Ref.make(compute.root),\n layout: canvas.graph,\n }),\n );\n};\n\nconst setupQueue = (\n space: Space,\n canvasModel: CanvasGraphModel,\n args?: { idPosition?: RawPositionInput; queuePosition?: RawPositionInput },\n) => {\n const queueId = canvasModel.createNode(\n createConstant({\n value: EID.make({ spaceId: space.id, entityId: Key.EntityId.random() }),\n ...(args?.idPosition ? rawPosition(args.idPosition) : position({ x: -18, y: 5, width: 8, height: 6 })),\n }),\n );\n const queue = canvasModel.createNode(\n createFeed(\n args?.queuePosition ? rawPosition(args.queuePosition) : position({ x: -3, y: 3, width: 14, height: 10 }),\n ),\n );\n canvasModel.createEdge({ source: queueId.id, target: queue.id });\n return { queue, queueId };\n};\n\nconst attachTrigger = (functionTrigger: Trigger.Trigger | undefined, computeModel: ComputeGraphModel) => {\n invariant(functionTrigger);\n const inputNode = computeModel.nodes.find((node) => node.type === NODE_INPUT)!;\n Obj.update(functionTrigger, (functionTrigger) => {\n // TODO(wittjosiah): Widen Runnable union to include ComputeGraph and remove cast.\n functionTrigger.runnable = Ref.make(computeModel.root) as any;\n functionTrigger.inputNodeId = inputNode.id;\n });\n};\n\ntype RawPositionInput = {\n centerX: number;\n centerY: number;\n width: number;\n height: number;\n};\n\nconst rawPosition = (args: RawPositionInput) => {\n return {\n center: { x: args.centerX, y: args.centerY },\n size: { width: args.width, height: args.height },\n };\n};\n\nconst position = (rect: { x: number; y: number; width?: number; height?: number }) => {\n const snap = 32;\n const [center, size] = rectToPoints({ width: 0, height: 0, ...rect });\n const { x, y, width, height } = pointsToRect([pointMultiply(center, snap), pointMultiply(size, snap)]);\n if (width && height) {\n return {\n center: { x, y },\n size: width && height ? { width, height } : undefined,\n };\n } else {\n return { center: { x, y } };\n }\n};\n","//\n// Copyright 2024 DXOS.org\n//\n\nimport { addressToA1Notation } from '@dxos/compute-hyperformula';\nimport { ComputeGraph, ComputeGraphModel, DEFAULT_OUTPUT, NODE_INPUT, NODE_OUTPUT } from '@dxos/conductor';\nimport { EID, Filter, Key, Type, View } from '@dxos/echo';\nimport { OperationInvoker } from '@dxos/operation';\nimport { Drawing } from '@dxos/plugin-illustrator';\nimport { Markdown } from '@dxos/plugin-markdown';\nimport { Sheet } from '@dxos/plugin-sheet';\nimport { SpaceOperation } from '@dxos/plugin-space';\nimport { Tldraw } from '@dxos/plugin-tldraw';\nimport { random } from '@dxos/random';\nimport { type Client } from '@dxos/react-client';\nimport { type Space } from '@dxos/react-client/echo';\nimport { getTypeURIFromQuery } from '@dxos/schema';\nimport { type ValueGenerator, createAsyncGenerator } from '@dxos/schema/testing';\nimport { range } from '@dxos/util';\n\nconst generator: ValueGenerator = random as any;\n\nconst findViewByTypeUri = async (views: View.View[], typeUri: string) => {\n return views.find((view) => getTypeURIFromQuery(view.query.ast) === typeUri);\n};\n\nexport type ObjectGenerator<T> = (space: Space, n: number, cb?: (objects: T[]) => void) => Promise<T[]>;\n\nexport const createGenerator = <S extends Type.AnyObj>(\n client: Client,\n invokePromise: OperationInvoker.OperationInvoker['invokePromise'],\n schema: S,\n): ObjectGenerator<Type.InstanceType<S>> => {\n return async (space: Space, n: number): Promise<Type.InstanceType<S>[]> => {\n const typename = Type.getTypename(schema);\n\n // Find or create table and view.\n const views = await space.db.query(Filter.type(View.View)).run();\n const view = await findViewByTypeUri(views, Type.getURI(schema));\n const staticSchema = client\n ? client.graph.registry\n .list()\n .filter(Type.isType)\n .find((s) => Type.getTypename(s) === typename)\n : undefined;\n if (!view && !staticSchema) {\n await invokePromise(SpaceOperation.AddType, { db: space.db, type: schema, show: false });\n }\n\n // Create objects.\n const generate = createAsyncGenerator(generator, schema, { db: space.db });\n return generate.createObjects(n);\n };\n};\n\nexport const staticGenerators = new Map<string, ObjectGenerator<any>>([\n [\n Type.getTypename(Markdown.Document),\n async (space, n, cb) => {\n const objects = range(n).map(() => {\n return space.db.add(\n Markdown.make({\n name: random.commerce.productName(),\n content: random.lorem.sentences(5),\n }),\n );\n });\n\n cb?.(objects);\n return objects;\n },\n ],\n [\n Type.getTypename(Drawing.Drawing),\n async (space, n, cb) => {\n const objects = range(n).map(() => {\n const obj = space.db.add(\n Drawing.make({\n name: random.commerce.productName(),\n canvas: Drawing.makeCanvas({ schema: Tldraw.TLDRAW_SCHEMA }),\n }),\n );\n return obj;\n });\n\n cb?.(objects);\n return objects;\n },\n ],\n // TODO(burdon): Create unit tests.\n [\n Type.getTypename(Sheet.Sheet),\n async (space, n, cb) => {\n const objects = range(n).map(() => {\n const cells: Record<string, Sheet.CellValue> = {};\n const year = new Date().getFullYear();\n const cols = 4;\n const rows = 16;\n for (let col = 1; col <= cols; col++) {\n for (let row = 1; row <= rows; row++) {\n const cell = addressToA1Notation({ col, row });\n if (row === 1) {\n cells[cell] = { value: `${year} Q${col}` };\n } else if (row === rows) {\n const from = addressToA1Notation({ col, row: 2 });\n const to = addressToA1Notation({ col, row: rows - 1 });\n cells[cell] = { value: `=SUM(${from}:${to})` };\n } else if (row > 2 && row < rows - 1) {\n cells[cell] = { value: Math.floor(Math.random() * 10_000) };\n }\n }\n }\n\n // TODO(burdon): Set width.\n // TODO(burdon): Set formatting for columns.\n return space.db.add(\n Sheet.make({\n name: random.commerce.productName(),\n cells,\n }),\n );\n });\n\n cb?.(objects);\n return objects;\n },\n ],\n [\n Type.getTypename(ComputeGraph),\n async (space, n, cb) => {\n const objects = range(n, () => {\n const model = ComputeGraphModel.create();\n model.builder\n .createNode({ id: 'gpt-INPUT', type: NODE_INPUT })\n .createNode({ id: 'gpt-GPT', type: 'gpt' })\n .createNode({\n id: 'gpt-QUEUE_ID',\n type: 'constant',\n value: EID.make({ spaceId: space.id, entityId: Key.EntityId.random() }),\n })\n .createNode({ id: 'gpt-APPEND', type: 'append' })\n .createNode({ id: 'gpt-OUTPUT', type: NODE_OUTPUT })\n .createEdge({ node: 'gpt-INPUT', property: 'prompt' }, { node: 'gpt-GPT', property: 'prompt' })\n .createEdge({ node: 'gpt-GPT', property: 'text' }, { node: 'gpt-OUTPUT', property: 'text' })\n .createEdge({ node: 'gpt-QUEUE_ID', property: DEFAULT_OUTPUT }, { node: 'gpt-APPEND', property: 'id' })\n .createEdge({ node: 'gpt-GPT', property: 'messages' }, { node: 'gpt-APPEND', property: 'items' })\n .createEdge({ node: 'gpt-QUEUE_ID', property: DEFAULT_OUTPUT }, { node: 'gpt-OUTPUT', property: 'queue' });\n\n return space.db.add(model.root);\n });\n cb?.(objects);\n return objects;\n },\n ],\n]);\n"],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { lazy } from "react";
2
+ //#region src/containers/index.ts
3
+ var DebugObjectPanel = lazy(() => import("./chunk-DebugObjectPanel.mjs"));
4
+ var DebugSettings = lazy(() => import("./chunk-DebugSettings.mjs"));
5
+ var DebugSpaceObjectsPanel = lazy(() => import("./chunk-DebugSpaceObjectsPanel.mjs"));
6
+ var DebugStatus = lazy(() => import("./chunk-DebugStatus.mjs"));
7
+ var LogStatus = lazy(() => import("./chunk-LogStatus.mjs").then((module) => ({ default: module.LogStatus })));
8
+ var SpaceGenerator = lazy(() => import("./chunk-SpaceGenerator.mjs"));
9
+ var Wireframe = lazy(() => import("./chunk-Wireframe.mjs"));
10
+ var StatsPanel = lazy(() => import("./chunk-StatsPanel.mjs").then((module) => ({ default: module.StatsPanel })));
11
+ //#endregion
12
+ export { DebugObjectPanel, DebugSettings, DebugSpaceObjectsPanel, DebugStatus, LogStatus, SpaceGenerator, StatsPanel, Wireframe };
13
+
14
+ //# sourceMappingURL=containers.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"containers.mjs","names":[],"sources":["../../src/containers/index.ts"],"sourcesContent":["//\n// Copyright 2026 DXOS.org\n//\n\nimport { type ComponentType, lazy } from 'react';\n\nexport const DebugObjectPanel: ComponentType<any> = lazy(() => import('./DebugObjectPanel'));\nexport const DebugSettings: ComponentType<any> = lazy(() => import('./DebugSettings'));\nexport const DebugSpaceObjectsPanel: ComponentType<any> = lazy(() => import('./DebugSpaceObjectsPanel'));\nexport const DebugStatus: ComponentType<any> = lazy(() => import('./DebugStatus'));\nexport const LogStatus: ComponentType<any> = lazy(() =>\n import('./LogStatus').then((module) => ({ default: module.LogStatus })),\n);\nexport const SpaceGenerator: ComponentType<any> = lazy(() => import('./SpaceGenerator'));\nexport const Wireframe: ComponentType<any> = lazy(() => import('./Wireframe'));\nexport const StatsPanel: ComponentType<any> = lazy(() =>\n import('./StatsPanel').then((module) => ({ default: module.StatsPanel })),\n);\n"],"mappings":";;AAMA,IAAa,mBAAuC,WAAW,OAAO,+BAAqB;AAC3F,IAAa,gBAAoC,WAAW,OAAO,4BAAkB;AACrF,IAAa,yBAA6C,WAAW,OAAO,qCAA2B;AACvG,IAAa,cAAkC,WAAW,OAAO,0BAAgB;AACjF,IAAa,YAAgC,WAC3C,OAAO,wBAAc,CAAC,MAAM,YAAY,EAAE,SAAS,OAAO,UAAU,EAAE,CACxE;AACA,IAAa,iBAAqC,WAAW,OAAO,6BAAmB;AACvF,IAAa,YAAgC,WAAW,OAAO,wBAAc;AAC7E,IAAa,aAAiC,WAC5C,OAAO,yBAAe,CAAC,MAAM,YAAY,EAAE,SAAS,OAAO,WAAW,EAAE,CAC1E"}
@@ -0,0 +1,3 @@
1
+ import { a as DebugContext, i as DebugCapabilities, n as DebugSurface_exports, r as DebugNodes_exports, t as Settings_exports } from "./chunk-types.mjs";
2
+ import { t as meta } from "./chunk-meta.mjs";
3
+ export { DebugCapabilities, DebugContext, DebugNodes_exports as DebugNodes, DebugSurface_exports as DebugSurface, Settings_exports as Settings, meta };
@@ -0,0 +1,2 @@
1
+ import { t as meta } from "./chunk-meta.mjs";
2
+ export { meta };
@@ -0,0 +1,8 @@
1
+ import { t as meta } from "./chunk-meta.mjs";
2
+ import { Plugin } from "@dxos/app-framework";
3
+ //#region src/plugin.ts
4
+ var DebugPlugin = Plugin.lazy(meta, () => import("#plugin"));
5
+ //#endregion
6
+ export { DebugPlugin };
7
+
8
+ //# sourceMappingURL=plugin.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.mjs","names":[],"sources":["../../src/plugin.ts"],"sourcesContent":["//\n// Copyright 2026 DXOS.org\n//\n\nimport { Plugin } from '@dxos/app-framework';\n\nimport { meta } from './meta';\n\nexport const DebugPlugin = Plugin.lazy(meta, () => import('#plugin'));\nexport type { DebugPluginOptions } from '#types';\n"],"mappings":";;;AAQA,IAAa,cAAc,OAAO,KAAK,YAAY,OAAO,UAAU"}
@@ -0,0 +1,38 @@
1
+ import { meta } from "#meta";
2
+ import { translations as translations$1 } from "@dxos/react-ui-debug/translations";
3
+ //#region src/translations.ts
4
+ var translations = [...translations$1, { "en-US": { [meta.profile.key]: {
5
+ "plugin.name": "Debug",
6
+ "debug.label": "Debug",
7
+ "generate-objects.label": "Generate Objects",
8
+ "space-objects.label": "Database",
9
+ "open-debug-panel.label": "Show Debug",
10
+ "logs.label": "Logs",
11
+ "open-logs.label": "Show logs",
12
+ "settings.wireframe.label": "Show wireframes.",
13
+ "settings.wireframe.description": "Overlay wireframe outlines on UI components for debugging layout.",
14
+ "settings.trace-all.label": "Trace all requests (100% sampling).",
15
+ "settings.trace-all.description": "Override the default 30% sampling rate to capture all traces. Requires page reload to take effect.",
16
+ "settings.tracing-panel.label": "Open tracing panel.",
17
+ "settings.tracing-panel.description": "Open the tracing dashboard to inspect captured spans.",
18
+ "settings.repair.label": "Run repair tool.",
19
+ "settings.repair.description": "Attempt to detect and fix inconsistencies in local data storage.",
20
+ "settings.download-diagnostics.label": "Download diagnostics.",
21
+ "settings.download-diagnostics.description": "Export a JSON file containing client diagnostics for troubleshooting.",
22
+ "settings.download-logs.label": "Download log buffer.",
23
+ "settings.download-logs.description": "Export the in-memory log buffer as an NDJSON file.",
24
+ "settings.uploaded.message": "Settings uploaded.",
25
+ "settings.uploaded.description": "URL copied to clipboard.",
26
+ "settings.choose-storage-adaptor.label": "Storage adaptor (worker reload required).",
27
+ "settings.choose-storage-adaptor.description": "Select the browser storage backend. Changing this requires a worker reload and may make existing data unavailable.",
28
+ "settings.repair-success.message": "Repair succeeded",
29
+ "settings.repair-failed.message": "Repair failed",
30
+ "settings.storage-adaptor.idb.label": "IndexedDB",
31
+ "settings.storage-adaptor.opfs.label": "OPFS",
32
+ "settings.storage-adapter.changed-alert.message": "Warning: Swapping the storage adapter will make your data unavailable.",
33
+ "settings.data-store.label": "Data Store"
34
+ } } }];
35
+ //#endregion
36
+ export { translations };
37
+
38
+ //# sourceMappingURL=translations.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"translations.mjs","names":[],"sources":["../../src/translations.ts"],"sourcesContent":["//\n// Copyright 2026 DXOS.org\n//\n\nimport { type Resource } from '@dxos/react-ui';\nimport { translations as logPanelTranslations } from '@dxos/react-ui-debug/translations';\n\nimport { meta } from '#meta';\n\nexport const translations = [\n // The R0 log companion and status popover render `@dxos/react-ui-debug`, so its namespace must be registered.\n ...logPanelTranslations,\n {\n 'en-US': {\n [meta.profile.key]: {\n 'plugin.name': 'Debug',\n 'debug.label': 'Debug',\n 'generate-objects.label': 'Generate Objects',\n 'space-objects.label': 'Database',\n 'open-debug-panel.label': 'Show Debug',\n 'logs.label': 'Logs',\n 'open-logs.label': 'Show logs',\n\n 'settings.wireframe.label': 'Show wireframes.',\n 'settings.wireframe.description': 'Overlay wireframe outlines on UI components for debugging layout.',\n 'settings.trace-all.label': 'Trace all requests (100% sampling).',\n 'settings.trace-all.description':\n 'Override the default 30% sampling rate to capture all traces. Requires page reload to take effect.',\n 'settings.tracing-panel.label': 'Open tracing panel.',\n 'settings.tracing-panel.description': 'Open the tracing dashboard to inspect captured spans.',\n 'settings.repair.label': 'Run repair tool.',\n 'settings.repair.description': 'Attempt to detect and fix inconsistencies in local data storage.',\n 'settings.download-diagnostics.label': 'Download diagnostics.',\n 'settings.download-diagnostics.description':\n 'Export a JSON file containing client diagnostics for troubleshooting.',\n 'settings.download-logs.label': 'Download log buffer.',\n 'settings.download-logs.description': 'Export the in-memory log buffer as an NDJSON file.',\n 'settings.uploaded.message': 'Settings uploaded.',\n 'settings.uploaded.description': 'URL copied to clipboard.',\n 'settings.choose-storage-adaptor.label': 'Storage adaptor (worker reload required).',\n 'settings.choose-storage-adaptor.description':\n 'Select the browser storage backend. Changing this requires a worker reload and may make existing data unavailable.',\n 'settings.repair-success.message': 'Repair succeeded',\n 'settings.repair-failed.message': 'Repair failed',\n\n 'settings.storage-adaptor.idb.label': 'IndexedDB',\n 'settings.storage-adaptor.opfs.label': 'OPFS',\n 'settings.storage-adapter.changed-alert.message':\n 'Warning: Swapping the storage adapter will make your data unavailable.',\n\n 'settings.data-store.label': 'Data Store',\n },\n },\n },\n] as const satisfies Resource[];\n"],"mappings":";;;AASA,IAAa,eAAe,CAE1B,GAAG,gBACH,EACE,SAAS,GACN,KAAK,QAAQ,MAAM;CAClB,eAAe;CACf,eAAe;CACf,0BAA0B;CAC1B,uBAAuB;CACvB,0BAA0B;CAC1B,cAAc;CACd,mBAAmB;CAEnB,4BAA4B;CAC5B,kCAAkC;CAClC,4BAA4B;CAC5B,kCACE;CACF,gCAAgC;CAChC,sCAAsC;CACtC,yBAAyB;CACzB,+BAA+B;CAC/B,uCAAuC;CACvC,6CACE;CACF,gCAAgC;CAChC,sCAAsC;CACtC,6BAA6B;CAC7B,iCAAiC;CACjC,yCAAyC;CACzC,+CACE;CACF,mCAAmC;CACnC,kCAAkC;CAElC,sCAAsC;CACtC,uCAAuC;CACvC,kDACE;CAEF,6BAA6B;AAC/B,EACF,EACF,CACF"}
@@ -0,0 +1,2 @@
1
+ import { a as DebugContext, i as DebugCapabilities, n as DebugSurface_exports, r as DebugNodes_exports, t as Settings_exports } from "./chunk-types.mjs";
2
+ export { DebugCapabilities, DebugContext, DebugNodes_exports as DebugNodes, DebugSurface_exports as DebugSurface, Settings_exports as Settings };
@@ -1 +1 @@
1
- {"version":3,"file":"DebugPlugin.d.ts","sourceRoot":"","sources":["../../../src/DebugPlugin.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAgC,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAO3E,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAOjD,eAAO,MAAM,WAAW,0CAmBvB,CAAC;eAkBa,WAAW"}
1
+ {"version":3,"file":"DebugPlugin.d.ts","sourceRoot":"","sources":["../../../src/DebugPlugin.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAgC,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAM3E,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAKjD,eAAO,MAAM,WAAW,0CAuBvB,CAAC;eAEa,WAAW"}
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ import { type AppCapabilities } from '@dxos/app-toolkit';
3
+ import { Obj } from '@dxos/echo';
4
+ import { type IdbLogStore } from '@dxos/log-store-idb';
5
+ import { type Space } from '@dxos/react-client/echo';
6
+ export type DebugSettingsSurfaceProps = {
7
+ subject: AppCapabilities.Settings;
8
+ logStore?: IdbLogStore;
9
+ onUpload?: AppCapabilities.FileUploader;
10
+ };
11
+ export declare const DebugSettingsSurface: ({ subject, logStore, onUpload }: DebugSettingsSurfaceProps) => React.JSX.Element;
12
+ export type SpaceGeneratorSurfaceProps = {
13
+ role: string;
14
+ space: Space;
15
+ };
16
+ /** Generated objects are added to the space's root collection, resolved at invocation time. */
17
+ export declare const SpaceGeneratorSurface: ({ role, space }: SpaceGeneratorSurfaceProps) => React.JSX.Element;
18
+ export type ObjectDebugSurfaceProps = {
19
+ role: string;
20
+ companionTo: Obj.Unknown;
21
+ };
22
+ export declare const ObjectDebugSurface: ({ role, companionTo }: ObjectDebugSurfaceProps) => React.JSX.Element;
23
+ export declare const SpaceObjectsSurface: () => React.JSX.Element | null;
24
+ export declare const LoggerSurface: () => React.JSX.Element;
25
+ //# sourceMappingURL=DebugSurfaces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DebugSurfaces.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/DebugSurfaces.tsx"],"names":[],"mappings":"AAQA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAGpD,OAAO,EAAiB,KAAK,eAAe,EAA8B,MAAM,mBAAmB,CAAC;AAEpG,OAAO,EAA0C,GAAG,EAAQ,MAAM,YAAY,CAAC;AAE/E,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,KAAK,KAAK,EAAc,MAAM,yBAAyB,CAAC;AA+CjE,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,eAAe,CAAC,QAAQ,CAAC;IAClC,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,QAAQ,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC;CACzC,CAAC;AAEF,eAAO,MAAM,oBAAoB,oCAAqC,yBAAyB,sBAM9F,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;AAEF,+FAA+F;AAC/F,eAAO,MAAM,qBAAqB,oBAAqB,0BAA0B,sBAmBhF,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,kBAAkB,0BAA2B,uBAAuB,sBAKhF,CAAC;AAEF,eAAO,MAAM,mBAAmB,gCAS/B,CAAC;AAEF,eAAO,MAAM,aAAa,yBAgBzB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import * as Effect from 'effect/Effect';
2
2
  import { Capability } from '@dxos/app-framework';
3
- declare const _default: (props: void) => Effect.Effect<Capability.Any, never, Capability.Service>;
3
+ declare const _default: (props: void) => Effect.Effect<Capability.Any, never, import("effect/Scope").Scope>;
4
4
  export default _default;
5
5
  //# sourceMappingURL=app-graph-builder.d.ts.map
@@ -1,8 +1,11 @@
1
1
  import { Capability } from '@dxos/app-framework';
2
2
  export declare const AppGraphBuilder: Capability.LazyCapability<void, Capability.ModuleReturn, Error>;
3
- export declare const ReactContext: Capability.LazyCapability<void, Capability.ModuleReturn, Error>;
4
3
  export declare const ReactSurface: Capability.LazyCapability<{
5
4
  logStore?: import("@dxos/log-store-idb").IdbLogStore;
6
5
  }, Capability.ModuleReturn, Error>;
7
6
  export declare const DebugSettings: Capability.LazyCapability<void, Capability.ModuleReturn, Error>;
7
+ export declare const StatsPanel: Capability.LazyCapability<{
8
+ persist?: boolean;
9
+ } | undefined, Capability.ModuleReturn, Error>;
10
+ export declare const LogRecording: Capability.LazyCapability<void, Capability.ModuleReturn, Error>;
8
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,eAAe,iEAA0E,CAAC;AACvG,eAAO,MAAM,YAAY,iEAAmE,CAAC;AAC7F,eAAO,MAAM,YAAY;;kCAAmE,CAAC;AAC7F,eAAO,MAAM,aAAa,iEAA+D,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,eAAO,MAAM,eAAe,iEAA0E,CAAC;AACvG,eAAO,MAAM,YAAY;;kCAAmE,CAAC;AAC7F,eAAO,MAAM,aAAa,iEAA+D,CAAC;AAC1F,eAAO,MAAM,UAAU;;8CAA+D,CAAC;AACvF,eAAO,MAAM,YAAY,iEAAmE,CAAC"}
@@ -0,0 +1,10 @@
1
+ import * as Effect from 'effect/Effect';
2
+ import { Capability } from '@dxos/app-framework';
3
+ /**
4
+ * Start recording into the process-wide log buffer at startup, so the log companion shows what
5
+ * happened before it was opened. Recording deliberately does not follow the panel's mount: the
6
+ * entries worth reading are usually the ones from before you went looking.
7
+ */
8
+ declare const _default: (props: void) => Effect.Effect<Capability.Any, never, import("effect/Scope").Scope>;
9
+ export default _default;
10
+ //# sourceMappingURL=log-recording.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log-recording.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/log-recording.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAgB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAG/D;;;;GAIG"}
@@ -4,6 +4,6 @@ import { type IdbLogStore } from '@dxos/log-store-idb';
4
4
  type ReactSurfaceOptions = {
5
5
  logStore?: IdbLogStore;
6
6
  };
7
- declare const _default: (props: ReactSurfaceOptions) => Effect.Effect<Capability.Any, never, Capability.Service>;
7
+ declare const _default: (props: ReactSurfaceOptions) => Effect.Effect<Capability.Any, never, import("effect/Scope").Scope | Capability.Service>;
8
8
  export default _default;
9
9
  //# sourceMappingURL=react-surface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/react-surface.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAIxC,OAAO,EAAgB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAmC/D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAoFvD,KAAK,mBAAmB,GAAG;IACzB,QAAQ,CAAC,EAAE,WAAW,CAAC;CACxB,CAAC"}
1
+ {"version":3,"file":"react-surface.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/react-surface.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAgB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAK/D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AA6BvD,KAAK,mBAAmB,GAAG;IACzB,QAAQ,CAAC,EAAE,WAAW,CAAC;CACxB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import * as Effect from 'effect/Effect';
2
2
  import { Capability } from '@dxos/app-framework';
3
- declare const _default: (props: void) => Effect.Effect<[Capability.Any, Capability.Any], never, never>;
3
+ declare const _default: (props: void) => Effect.Effect<[Capability.Any, Capability.Any], never, import("effect/Scope").Scope>;
4
4
  export default _default;
5
5
  //# sourceMappingURL=settings.d.ts.map
@@ -0,0 +1,16 @@
1
+ import * as Effect from 'effect/Effect';
2
+ import { Capability } from '@dxos/app-framework';
3
+ type StatsPanelOptions = {
4
+ /** Persist the store to localStorage (hydrate on load, save on write). */
5
+ persist?: boolean;
6
+ };
7
+ /**
8
+ * Contributes the {@link AppCapabilities.StatsPanel} store: a single reactive atom holding one
9
+ * compartment per plugin, keyed by plugin key. Read access spans the whole store; writes are scoped
10
+ * to a compartment via `compartment(pluginKey)`. Kept alive with `Atom.keepAlive` so a background
11
+ * writer (e.g. a sync operation) can populate it before any surface subscribes. When `persist` is set
12
+ * the store hydrates from and saves to localStorage so stats survive a reload.
13
+ */
14
+ declare const _default: (props: StatsPanelOptions | undefined) => Effect.Effect<Capability.Any, Error, import("effect/Scope").Scope | Capability.Service>;
15
+ export default _default;
16
+ //# sourceMappingURL=stats-panel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stats-panel.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/stats-panel.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAExC,OAAO,EAAgB,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAK/D,KAAK,iBAAiB,GAAG;IACvB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAIF;;;;;;GAMG"}
@@ -1,9 +1,10 @@
1
1
  import React from 'react';
2
- export type SchemaTableProps = {
2
+ import { ThemedClassName } from '@dxos/react-ui';
3
+ export type SchemaTableProps = ThemedClassName<{
3
4
  types: any[];
4
5
  objects?: Record<string, number | undefined>;
5
6
  label: string;
6
7
  onClick: (typename: string) => void;
7
- };
8
- export declare const SchemaTable: ({ types, objects, label, onClick }: SchemaTableProps) => React.JSX.Element;
8
+ }>;
9
+ export declare const SchemaTable: ({ classNames, types, objects, label, onClick }: SchemaTableProps) => React.JSX.Element;
9
10
  //# sourceMappingURL=SchemaTable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/SchemaTable/SchemaTable.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,GAAG,EAAE,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC,CAAC;AAEF,eAAO,MAAM,WAAW,uCAA6C,gBAAgB,sBAmBpF,CAAC"}
1
+ {"version":3,"file":"SchemaTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/SchemaTable/SchemaTable.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAc,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAG7D,MAAM,MAAM,gBAAgB,GAAG,eAAe,CAAC;IAC7C,KAAK,EAAE,GAAG,EAAE,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC,CAAC,CAAC;AAEH,eAAO,MAAM,WAAW,mDAAyD,gBAAgB,sBAmBhG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectGenerator.d.ts","sourceRoot":"","sources":["../../../../../src/components/SpaceGenerator/ObjectGenerator.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAoB,IAAI,EAAQ,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAMnD,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAWrD,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,IAAI,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;AAExG,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,IAAI,CAAC,MAAM,UAC3C,MAAM,iBACC,gBAAgB,CAAC,gBAAgB,CAAC,eAAe,CAAC,UACzD,CAAC,KACR,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAqBtC,CAAC;AAEF,eAAO,MAAM,gBAAgB,mCA8F3B,CAAC"}
1
+ {"version":3,"file":"ObjectGenerator.d.ts","sourceRoot":"","sources":["../../../../../src/components/SpaceGenerator/ObjectGenerator.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAoB,IAAI,EAAQ,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAOnD,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAWrD,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,IAAI,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;AAExG,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,IAAI,CAAC,MAAM,UAC3C,MAAM,iBACC,gBAAgB,CAAC,gBAAgB,CAAC,eAAe,CAAC,UACzD,CAAC,KACR,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAqBtC,CAAC;AAEF,eAAO,MAAM,gBAAgB,mCAmG3B,CAAC"}
@@ -5,5 +5,8 @@ export type DebugObjectPanelProps = Pick<AppSurface.ObjectArticleProps<Obj.Unkno
5
5
  onOpen?: (object: Obj.Unknown) => void;
6
6
  canOpen?: (entity: Entity.Snapshot) => boolean;
7
7
  };
8
- export declare const DebugObjectPanel: ({ role, companionTo, onOpen, canOpen }: DebugObjectPanelProps) => React.JSX.Element;
8
+ export declare function DebugObjectPanel({ role, companionTo, onOpen, canOpen }: DebugObjectPanelProps): React.JSX.Element;
9
+ export declare namespace DebugObjectPanel {
10
+ var displayName: string;
11
+ }
9
12
  //# sourceMappingURL=DebugObjectPanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DebugObjectPanel.d.ts","sourceRoot":"","sources":["../../../../../src/containers/DebugObjectPanel/DebugObjectPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,KAAK,MAAM,EAAgB,GAAG,EAAS,MAAM,YAAY,CAAC;AAOnE,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,EAC3D,MAAM,GAAG,aAAa,CACvB,GAAG;IACF,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,KAAK,IAAI,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC;CAChD,CAAC;AAEF,eAAO,MAAM,gBAAgB,2CAA4C,qBAAqB,sBA6D7F,CAAC"}
1
+ {"version":3,"file":"DebugObjectPanel.d.ts","sourceRoot":"","sources":["../../../../../src/containers/DebugObjectPanel/DebugObjectPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,KAAK,MAAM,EAAgB,GAAG,EAAS,MAAM,YAAY,CAAC;AAOnE,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,EAC3D,MAAM,GAAG,aAAa,CACvB,GAAG;IACF,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,KAAK,IAAI,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC;CAChD,CAAC;yCAE+B,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,qBAAqB"}
@@ -7,5 +7,8 @@ export type DebugSettingsProps = AppSurface.SettingsProps<Settings.Settings, {
7
7
  logStore: IdbLogStore;
8
8
  onUpload?: AppCapabilities.FileUploader;
9
9
  }>;
10
- export declare const DebugSettings: ({ settings, onSettingsChange, logStore, onUpload }: DebugSettingsProps) => React.JSX.Element;
10
+ export declare function DebugSettings({ settings, onSettingsChange, logStore, onUpload }: DebugSettingsProps): React.JSX.Element;
11
+ export declare namespace DebugSettings {
12
+ var displayName: string;
13
+ }
11
14
  //# sourceMappingURL=DebugSettings.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DebugSettings.d.ts","sourceRoot":"","sources":["../../../../../src/containers/DebugSettings/DebugSettings.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAoD,MAAM,OAAO,CAAC;AAEzE,OAAO,EAAE,eAAe,EAAY,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAQvD,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAYlC,MAAM,MAAM,kBAAkB,GAAG,UAAU,CAAC,aAAa,CACvD,QAAQ,CAAC,QAAQ,EACjB;IACE,QAAQ,EAAE,WAAW,CAAC;IACtB,QAAQ,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC;CACzC,CACF,CAAC;AAEF,eAAO,MAAM,aAAa,uDAAwD,kBAAkB,sBAqNnG,CAAC"}
1
+ {"version":3,"file":"DebugSettings.d.ts","sourceRoot":"","sources":["../../../../../src/containers/DebugSettings/DebugSettings.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAoD,MAAM,OAAO,CAAC;AAEzE,OAAO,EAAE,eAAe,EAAY,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAE,KAAK,WAAW,EAA+B,MAAM,qBAAqB,CAAC;AAQpF,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAYlC,MAAM,MAAM,kBAAkB,GAAG,UAAU,CAAC,aAAa,CACvD,QAAQ,CAAC,QAAQ,EACjB;IACE,QAAQ,EAAE,WAAW,CAAC;IACtB,QAAQ,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC;CACzC,CACF,CAAC;sCAE4B,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,kBAAkB"}
@@ -1,37 +1,50 @@
1
1
  import { type StoryObj } from '@storybook/react-vite';
2
2
  declare const meta: {
3
3
  title: string;
4
- component: ({ settings, onSettingsChange, logStore, onUpload }: import("./DebugSettings").DebugSettingsProps) => import("react").JSX.Element;
4
+ component: {
5
+ ({ settings, onSettingsChange, logStore, onUpload }: import("./DebugSettings").DebugSettingsProps): import("react").JSX.Element;
6
+ displayName: string;
7
+ };
5
8
  decorators: import("@storybook/react").Decorator[];
6
9
  tags: string[];
7
10
  parameters: {
8
11
  layout: string;
9
12
  translations: [{
10
13
  readonly 'en-US': {
11
- readonly "@dxos/react-ui-introspect": {
12
- readonly 'run-tool.label': 'Run tool';
13
- readonly 'tools.label': 'MCP tools';
14
- readonly 'calling-tool.message': 'Calling tool\u2026';
15
- readonly 'no-result.message': 'No results.';
16
- readonly 'no-displayable-fields.message': '(no displayable fields)';
17
- readonly 'no-matching-rows.message': 'No matching rows.';
18
- readonly 'tool-result.label': 'Tool result';
19
- readonly 'filter-results.placeholder': 'Filter results\u2026';
20
- readonly 'connection-failed.title': 'MCP Server connection failed';
14
+ readonly "@dxos/react-ui-debug": {
15
+ readonly 'filter.placeholder': 'Filter (e.g. space-proxy:debug)';
16
+ readonly 'level.label': 'Level';
17
+ readonly 'record.label': 'Record';
18
+ readonly 'clear.label': 'Clear';
19
+ readonly 'copy.label': 'Copy log';
20
+ readonly 'copy-entry.label': 'Copy entry';
21
+ readonly 'levels.label': 'Log levels';
22
+ readonly 'levels.reset.label': 'Reset all levels';
23
+ readonly 'levels.inherit.label': 'Inherit';
24
+ readonly 'levels.empty.message': 'No log files registered yet.';
25
+ readonly 'levels.filter.placeholder': 'Filter files\u2026';
26
+ readonly 'empty.message': 'No log entries.';
27
+ readonly 'search.placeholder': 'Find in buffer\u2026';
28
+ readonly 'search.clear.label': 'Clear filter';
29
+ readonly 'search.no-matches.message': 'No matching entries.';
30
+ readonly 'level.trace': 'Trace';
31
+ readonly 'level.debug': 'Debug';
32
+ readonly 'level.verbose': 'Verbose';
33
+ readonly 'level.info': 'Info';
34
+ readonly 'level.warn': 'Warn';
35
+ readonly 'level.error': 'Error';
21
36
  };
22
37
  };
23
38
  }, {
24
39
  readonly 'en-US': {
25
40
  readonly [x: string]: {
26
41
  readonly 'plugin.name': 'Debug';
27
- readonly 'open-devtools.label': 'Open DevTools';
28
- readonly 'devtools.label': 'DevTools';
29
- readonly 'devtools-overview.label': 'Stats';
30
- readonly 'space-objects.label': 'Database';
31
42
  readonly 'debug.label': 'Debug';
32
43
  readonly 'generate-objects.label': 'Generate Objects';
33
- readonly 'debug-app-graph.label': 'App Graph';
34
- readonly 'debug-tools-explorer.label': 'SDK Explorer';
44
+ readonly 'space-objects.label': 'Database';
45
+ readonly 'open-debug-panel.label': 'Show Debug';
46
+ readonly 'logs.label': 'Logs';
47
+ readonly 'open-logs.label': 'Show logs';
35
48
  readonly 'settings.wireframe.label': 'Show wireframes.';
36
49
  readonly 'settings.wireframe.description': 'Overlay wireframe outlines on UI components for debugging layout.';
37
50
  readonly 'settings.trace-all.label': 'Trace all requests (100% sampling).';
@@ -54,47 +67,6 @@ declare const meta: {
54
67
  readonly 'settings.storage-adaptor.opfs.label': 'OPFS';
55
68
  readonly 'settings.storage-adapter.changed-alert.message': 'Warning: Swapping the storage adapter will make your data unavailable.';
56
69
  readonly 'settings.data-store.label': 'Data Store';
57
- readonly 'reset-data.label': 'Reset data (ERASES ALL DATA)';
58
- readonly 'open-debug-panel.label': 'Show Debug';
59
- readonly 'client.label': 'Client';
60
- readonly 'config.label': 'Config';
61
- readonly 'storage.label': 'Storage';
62
- readonly 'sqlite.label': 'SQLite';
63
- readonly 'logs.label': 'Logs';
64
- readonly 'diagnostics.label': 'Diagnostics';
65
- readonly 'tracing.label': 'Tracing';
66
- readonly 'halo.label': 'HALO';
67
- readonly 'identity.label': 'Identity';
68
- readonly 'devices.label': 'Devices';
69
- readonly 'keyring.label': 'Keyring';
70
- readonly 'credentials.label': 'Credentials';
71
- readonly 'echo.label': 'ECHO';
72
- readonly 'spaces.label': 'Spaces';
73
- readonly 'space.label': 'Space';
74
- readonly 'feeds.label': 'Feeds';
75
- readonly 'objects.label': 'Objects';
76
- readonly 'schema.label': 'Schema';
77
- readonly 'registry.label': 'Registry';
78
- readonly 'automerge.label': 'Automerge';
79
- readonly 'queues.label': 'Queues';
80
- readonly 'members.label': 'Members';
81
- readonly 'metadata.label': 'Metadata';
82
- readonly 'mesh.label': 'MESH';
83
- readonly 'signal.label': 'Signal';
84
- readonly 'swarm.label': 'Swarm';
85
- readonly 'network.label': 'Network';
86
- readonly 'agent.label': 'Agent';
87
- readonly 'dashboard.label': 'Dashboard';
88
- readonly 'search.label': 'Search';
89
- readonly 'edge.label': 'EDGE';
90
- readonly 'workflows.label': 'Workflows';
91
- readonly 'traces.label': 'Traces';
92
- readonly 'testing.label': 'Testing';
93
- readonly 'github-loading.message': 'Loading\u2026';
94
- readonly 'github-unavailable.message': 'GitHub feed unavailable.';
95
- readonly 'recent-prs.label_one': '{{count}} recent PR';
96
- readonly 'recent-prs.label_other': '{{count}} recent PRs';
97
- readonly 'view-on-github.button': 'View on GitHub';
98
70
  };
99
71
  };
100
72
  }];
@@ -1 +1 @@
1
- {"version":3,"file":"DebugSettings.stories.d.ts","sourceRoot":"","sources":["../../../../../src/containers/DebugSettings/DebugSettings.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AASjE,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAS4B,CAAC;eAExB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAOrB,CAAC"}
1
+ {"version":3,"file":"DebugSettings.stories.d.ts","sourceRoot":"","sources":["../../../../../src/containers/DebugSettings/DebugSettings.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AASjE,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAS4B,CAAC;eAExB,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAOrB,CAAC"}
@@ -5,5 +5,8 @@ export type DebugSpaceObjectsPanelProps = AppSurface.SpaceArticleProps & {
5
5
  onOpen?: (object: Obj.Unknown) => void;
6
6
  canOpen?: (entity: Entity.Snapshot) => boolean;
7
7
  };
8
- export declare const DebugSpaceObjectsPanel: ({ space, onOpen, canOpen }: DebugSpaceObjectsPanelProps) => React.JSX.Element;
8
+ export declare function DebugSpaceObjectsPanel({ space, onOpen, canOpen }: DebugSpaceObjectsPanelProps): React.JSX.Element;
9
+ export declare namespace DebugSpaceObjectsPanel {
10
+ var displayName: string;
11
+ }
9
12
  //# sourceMappingURL=DebugSpaceObjectsPanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DebugSpaceObjectsPanel.d.ts","sourceRoot":"","sources":["../../../../../src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,KAAK,MAAM,EAAU,GAAG,EAAS,MAAM,YAAY,CAAC;AAM7D,MAAM,MAAM,2BAA2B,GAAG,UAAU,CAAC,iBAAiB,GAAG;IACvE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,KAAK,IAAI,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC;CAChD,CAAC;AAEF,eAAO,MAAM,sBAAsB,+BAAgC,2BAA2B,sBAmC7F,CAAC"}
1
+ {"version":3,"file":"DebugSpaceObjectsPanel.d.ts","sourceRoot":"","sources":["../../../../../src/containers/DebugSpaceObjectsPanel/DebugSpaceObjectsPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,KAAK,MAAM,EAAU,GAAG,EAAS,MAAM,YAAY,CAAC;AAM7D,MAAM,MAAM,2BAA2B,GAAG,UAAU,CAAC,iBAAiB,GAAG;IACvE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,KAAK,IAAI,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC;CAChD,CAAC;+CAEqC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,2BAA2B"}
@@ -1,3 +1,6 @@
1
1
  import React from 'react';
2
- export declare const DebugStatus: () => React.JSX.Element;
2
+ export declare function DebugStatus(): React.JSX.Element;
3
+ export declare namespace DebugStatus {
4
+ var displayName: string;
5
+ }
3
6
  //# sourceMappingURL=DebugStatus.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DebugStatus.d.ts","sourceRoot":"","sources":["../../../../../src/containers/DebugStatus/DebugStatus.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAuM3D,eAAO,MAAM,WAAW,yBAQvB,CAAC"}
1
+ {"version":3,"file":"DebugStatus.d.ts","sourceRoot":"","sources":["../../../../../src/containers/DebugStatus/DebugStatus.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAsC,MAAM,OAAO,CAAC"}
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ export declare function LogStatus(): React.JSX.Element;
3
+ export declare namespace LogStatus {
4
+ var displayName: string;
5
+ }
6
+ //# sourceMappingURL=LogStatus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogStatus.d.ts","sourceRoot":"","sources":["../../../../../src/containers/LogStatus/LogStatus.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC"}