@dxos/react-client 0.8.4-main.84f28bd → 0.8.4-main.8baae0fced

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 (399) hide show
  1. package/.storybook/main.mts +9 -0
  2. package/.storybook/preview.mts +8 -0
  3. package/LICENSE +102 -5
  4. package/README.md +1 -1
  5. package/dist/lib/browser/chunk-3LVU7RNK.mjs +16 -0
  6. package/dist/lib/browser/chunk-3LVU7RNK.mjs.map +7 -0
  7. package/dist/lib/browser/chunk-CZMIVAGI.mjs +8 -0
  8. package/dist/lib/browser/chunk-CZMIVAGI.mjs.map +7 -0
  9. package/dist/lib/browser/chunk-XT352YI6.mjs +134 -0
  10. package/dist/lib/browser/chunk-XT352YI6.mjs.map +7 -0
  11. package/dist/lib/browser/{chunk-O5SEVDJG.mjs → chunk-YHE6WD44.mjs} +5 -15
  12. package/dist/lib/browser/chunk-YHE6WD44.mjs.map +7 -0
  13. package/dist/lib/browser/devtools/index.mjs +4 -8
  14. package/dist/lib/browser/devtools/index.mjs.map +3 -3
  15. package/dist/lib/browser/echo/index.mjs +54 -175
  16. package/dist/lib/browser/echo/index.mjs.map +4 -4
  17. package/dist/lib/browser/halo/index.mjs +5 -3
  18. package/dist/lib/browser/halo/index.mjs.map +3 -3
  19. package/dist/lib/browser/index.mjs +99 -12
  20. package/dist/lib/browser/index.mjs.map +4 -4
  21. package/dist/lib/browser/invitations/index.mjs +1 -1
  22. package/dist/lib/browser/mesh/index.mjs +2 -1
  23. package/dist/lib/browser/mesh/index.mjs.map +1 -1
  24. package/dist/lib/browser/meta.json +1 -1
  25. package/dist/lib/browser/testing/index.mjs +112 -155
  26. package/dist/lib/browser/testing/index.mjs.map +3 -3
  27. package/dist/lib/node-esm/chunk-CUDKNAMV.mjs +17 -0
  28. package/dist/lib/node-esm/chunk-CUDKNAMV.mjs.map +7 -0
  29. package/dist/lib/node-esm/{chunk-TU2JJLZK.mjs → chunk-RQJPEHDY.mjs} +5 -15
  30. package/dist/lib/node-esm/chunk-RQJPEHDY.mjs.map +7 -0
  31. package/dist/lib/node-esm/chunk-WL3Z5HOH.mjs +135 -0
  32. package/dist/lib/node-esm/chunk-WL3Z5HOH.mjs.map +7 -0
  33. package/dist/lib/node-esm/chunk-WUTK2IJF.mjs +10 -0
  34. package/dist/lib/node-esm/chunk-WUTK2IJF.mjs.map +7 -0
  35. package/dist/lib/node-esm/devtools/index.mjs +4 -8
  36. package/dist/lib/node-esm/devtools/index.mjs.map +3 -3
  37. package/dist/lib/node-esm/echo/index.mjs +54 -175
  38. package/dist/lib/node-esm/echo/index.mjs.map +4 -4
  39. package/dist/lib/node-esm/halo/index.mjs +5 -3
  40. package/dist/lib/node-esm/halo/index.mjs.map +3 -3
  41. package/dist/lib/node-esm/index.mjs +99 -12
  42. package/dist/lib/node-esm/index.mjs.map +4 -4
  43. package/dist/lib/node-esm/invitations/index.mjs +1 -1
  44. package/dist/lib/node-esm/mesh/index.mjs +2 -1
  45. package/dist/lib/node-esm/mesh/index.mjs.map +1 -1
  46. package/dist/lib/node-esm/meta.json +1 -1
  47. package/dist/lib/node-esm/testing/index.mjs +112 -155
  48. package/dist/lib/node-esm/testing/index.mjs.map +3 -3
  49. package/dist/types/src/banner.d.ts.map +1 -1
  50. package/dist/types/src/client/AgentHostingProvider.d.ts.map +1 -1
  51. package/dist/types/src/client/ClientProvider.d.ts +1 -11
  52. package/dist/types/src/client/ClientProvider.d.ts.map +1 -1
  53. package/dist/types/src/client/useClientStatus.d.ts.map +1 -1
  54. package/dist/types/src/devtools/useStream.d.ts.map +1 -1
  55. package/dist/types/src/echo/index.d.ts +2 -3
  56. package/dist/types/src/echo/index.d.ts.map +1 -1
  57. package/dist/types/src/echo/useMembers.d.ts +2 -2
  58. package/dist/types/src/echo/useMembers.d.ts.map +1 -1
  59. package/dist/types/src/echo/useSpaceInvitations.d.ts +3 -2
  60. package/dist/types/src/echo/useSpaceInvitations.d.ts.map +1 -1
  61. package/dist/types/src/echo/useSpaceProperties.d.ts +13 -0
  62. package/dist/types/src/echo/useSpaceProperties.d.ts.map +1 -0
  63. package/dist/types/src/echo/useSpaces.d.ts +19 -8
  64. package/dist/types/src/echo/useSpaces.d.ts.map +1 -1
  65. package/dist/types/src/echo/useSubscription.d.ts +1 -1
  66. package/dist/types/src/echo/useSubscription.d.ts.map +1 -1
  67. package/dist/types/src/echo/useSyncState.d.ts +1 -1
  68. package/dist/types/src/echo/useSyncState.d.ts.map +1 -1
  69. package/dist/types/src/halo/Passkey.stories.d.ts +5 -5
  70. package/dist/types/src/halo/Passkey.stories.d.ts.map +1 -1
  71. package/dist/types/src/halo/useHaloInvitations.d.ts.map +1 -1
  72. package/dist/types/src/halo/useKeyStore.d.ts.map +1 -1
  73. package/dist/types/src/invitations/useInvitationStatus.d.ts +1 -1
  74. package/dist/types/src/invitations/useInvitationStatus.d.ts.map +1 -1
  75. package/dist/types/src/testing/ClientRepeater.d.ts +6 -5
  76. package/dist/types/src/testing/ClientRepeater.d.ts.map +1 -1
  77. package/dist/types/src/testing/ClientRepeater.stories.d.ts +6 -10
  78. package/dist/types/src/testing/ClientRepeater.stories.d.ts.map +1 -1
  79. package/dist/types/src/testing/context.d.ts +4 -1
  80. package/dist/types/src/testing/context.d.ts.map +1 -1
  81. package/dist/types/src/testing/util.d.ts.map +1 -1
  82. package/dist/types/src/testing/withClientProvider.d.ts +6 -10
  83. package/dist/types/src/testing/withClientProvider.d.ts.map +1 -1
  84. package/dist/types/src/testing/withClientProvider.stories.d.ts +8 -9
  85. package/dist/types/src/testing/withClientProvider.stories.d.ts.map +1 -1
  86. package/dist/types/tsconfig.tsbuildinfo +1 -1
  87. package/docs/README.md +38 -38
  88. package/moon.yml +3 -2
  89. package/package.json +46 -59
  90. package/src/client/AgentHostingProvider.tsx +1 -1
  91. package/src/client/ClientProvider.test.tsx +2 -2
  92. package/src/client/ClientProvider.tsx +32 -50
  93. package/src/client/useConfig.test.tsx +1 -1
  94. package/src/devtools/useStream.ts +1 -1
  95. package/src/echo/index.ts +2 -3
  96. package/src/echo/useMembers.ts +5 -3
  97. package/src/echo/useSpaceInvitations.ts +10 -5
  98. package/src/echo/useSpaceProperties.ts +28 -0
  99. package/src/echo/useSpaces.test.tsx +8 -14
  100. package/src/echo/useSpaces.ts +32 -29
  101. package/src/echo/useSubscription.ts +1 -1
  102. package/src/echo/useSyncState.ts +4 -8
  103. package/src/halo/Passkey.stories.tsx +20 -20
  104. package/src/halo/useDevices.test.tsx +1 -1
  105. package/src/halo/useHaloInvitations.ts +1 -1
  106. package/src/invitations/useInvitationStatus.ts +9 -8
  107. package/src/testing/ClientRepeater.stories.tsx +22 -16
  108. package/src/testing/ClientRepeater.tsx +29 -37
  109. package/src/testing/context.tsx +4 -2
  110. package/src/testing/util.tsx +0 -1
  111. package/src/testing/withClientProvider.stories.tsx +34 -20
  112. package/src/testing/withClientProvider.tsx +77 -93
  113. package/tsconfig.json +7 -4
  114. package/typedoc.json +1 -1
  115. package/vitest.config.ts +10 -16
  116. package/.eslintrc.cjs +0 -12
  117. package/.swc/plugins/v7_linux_x86_64_13.0.0/f45bdff002284d9e8f9ef3f0be909de12da36c049cbcf261ac78fc00abb09a2d +0 -0
  118. package/dist/lib/browser/chunk-AAR7V3KL.mjs +0 -312
  119. package/dist/lib/browser/chunk-AAR7V3KL.mjs.map +0 -7
  120. package/dist/lib/browser/chunk-O5SEVDJG.mjs.map +0 -7
  121. package/dist/lib/node-esm/chunk-TU2JJLZK.mjs.map +0 -7
  122. package/dist/lib/node-esm/chunk-ZTD6HPV2.mjs +0 -314
  123. package/dist/lib/node-esm/chunk-ZTD6HPV2.mjs.map +0 -7
  124. package/dist/types/src/echo/useQuery.d.ts +0 -11
  125. package/dist/types/src/echo/useQuery.d.ts.map +0 -1
  126. package/dist/types/src/echo/useQuery.test.d.ts +0 -2
  127. package/dist/types/src/echo/useQuery.test.d.ts.map +0 -1
  128. package/dist/types/src/echo/useQueue.d.ts +0 -11
  129. package/dist/types/src/echo/useQueue.d.ts.map +0 -1
  130. package/dist/types/src/echo/useSchema.d.ts +0 -8
  131. package/dist/types/src/echo/useSchema.d.ts.map +0 -1
  132. package/dist/types/src/playwright/playwright.config.d.ts +0 -3
  133. package/dist/types/src/playwright/playwright.config.d.ts.map +0 -1
  134. package/dist/types/src/playwright/smoke.spec.d.ts +0 -2
  135. package/dist/types/src/playwright/smoke.spec.d.ts.map +0 -1
  136. package/src/echo/useQuery.test.tsx +0 -128
  137. package/src/echo/useQuery.ts +0 -56
  138. package/src/echo/useQueue.ts +0 -74
  139. package/src/echo/useSchema.ts +0 -54
  140. package/src/playwright/playwright.config.ts +0 -17
  141. package/src/playwright/smoke.spec.ts +0 -24
  142. package/typedoc/.nojekyll +0 -1
  143. package/typedoc/assets/hierarchy.js +0 -1
  144. package/typedoc/assets/highlight.css +0 -99
  145. package/typedoc/assets/icons.js +0 -18
  146. package/typedoc/assets/icons.svg +0 -1
  147. package/typedoc/assets/main.js +0 -60
  148. package/typedoc/assets/navigation.js +0 -1
  149. package/typedoc/assets/search.js +0 -1
  150. package/typedoc/assets/style.css +0 -1640
  151. package/typedoc/classes/echo.Hypergraph.html +0 -17
  152. package/typedoc/classes/echo.PropertiesType.html +0 -19
  153. package/typedoc/classes/echo.QueryResult.html +0 -18
  154. package/typedoc/classes/halo.KeyStore.html +0 -6
  155. package/typedoc/classes/index.AgentClientServiceProvider.html +0 -10
  156. package/typedoc/classes/index.AgentManagerClient.html +0 -22
  157. package/typedoc/classes/index.AlreadyJoinedError.html +0 -15
  158. package/typedoc/classes/index.ApiError.html +0 -16
  159. package/typedoc/classes/index.CancelledError.html +0 -16
  160. package/typedoc/classes/index.Client.html +0 -51
  161. package/typedoc/classes/index.ClientServicesProxy.html +0 -12
  162. package/typedoc/classes/index.Config.html +0 -17
  163. package/typedoc/classes/index.DataCorruptionError.html +0 -16
  164. package/typedoc/classes/index.DatabaseError.html +0 -15
  165. package/typedoc/classes/index.EntityNotFoundError.html +0 -15
  166. package/typedoc/classes/index.FakeAgentHostingProvider.html +0 -7
  167. package/typedoc/classes/index.IFrameManager.html +0 -6
  168. package/typedoc/classes/index.IdentityNotInitializedError.html +0 -15
  169. package/typedoc/classes/index.InvalidConfigError.html +0 -16
  170. package/typedoc/classes/index.InvalidInvitationError.html +0 -15
  171. package/typedoc/classes/index.InvalidInvitationExtensionRoleError.html +0 -16
  172. package/typedoc/classes/index.InvalidStorageVersionError.html +0 -15
  173. package/typedoc/classes/index.LocalClientServices.html +0 -12
  174. package/typedoc/classes/index.PublicKey.html +0 -55
  175. package/typedoc/classes/index.RemoteServiceConnectionError.html +0 -15
  176. package/typedoc/classes/index.RemoteServiceConnectionTimeout.html +0 -15
  177. package/typedoc/classes/index.RpcClosedError.html +0 -15
  178. package/typedoc/classes/index.RpcNotOpenError.html +0 -15
  179. package/typedoc/classes/index.SharedWorkerConnection.html +0 -5
  180. package/typedoc/classes/index.Shell.html +0 -35
  181. package/typedoc/classes/index.ShellManager.html +0 -9
  182. package/typedoc/classes/index.SystemError.html +0 -16
  183. package/typedoc/classes/index.UnknownModelError.html +0 -15
  184. package/typedoc/classes/index.WorkerClientServices.html +0 -12
  185. package/typedoc/classes/invitations.AuthenticatingInvitationObservable.html +0 -30
  186. package/typedoc/classes/invitations.CancellableInvitationObservable.html +0 -29
  187. package/typedoc/classes/invitations.InvitationEncoder.html +0 -5
  188. package/typedoc/classes/invitations.InvitationsProxy.html +0 -12
  189. package/typedoc/enums/devtools.KeyType.html +0 -9
  190. package/typedoc/enums/echo.HaloSpaceMember.Role.html +0 -9
  191. package/typedoc/enums/echo.IndexKind.Kind.html +0 -8
  192. package/typedoc/enums/echo.QueryOptions.DataLocation.html +0 -6
  193. package/typedoc/enums/echo.QueryOptions.ShowDeletedOption.html +0 -6
  194. package/typedoc/enums/echo.SpaceMember.PresenceState.html +0 -5
  195. package/typedoc/enums/echo.SpaceState.html +0 -13
  196. package/typedoc/enums/echo.TextKind.html +0 -5
  197. package/typedoc/enums/halo.Device.PresenceState.html +0 -6
  198. package/typedoc/enums/halo.DeviceKind.html +0 -5
  199. package/typedoc/enums/halo.DeviceType.html +0 -9
  200. package/typedoc/enums/index.ShellDisplay.html +0 -5
  201. package/typedoc/enums/index.ShellLayout.html +0 -13
  202. package/typedoc/enums/index.SystemStatus.html +0 -5
  203. package/typedoc/enums/invitations.Invitation.AuthMethod.html +0 -6
  204. package/typedoc/enums/invitations.Invitation.Kind.html +0 -5
  205. package/typedoc/enums/invitations.Invitation.State.html +0 -13
  206. package/typedoc/enums/invitations.Invitation.Type.html +0 -6
  207. package/typedoc/enums/mesh.ConnectionState.html +0 -5
  208. package/typedoc/functions/devtools.useDevtools.html +0 -1
  209. package/typedoc/functions/devtools.useStream.html +0 -2
  210. package/typedoc/functions/echo.useMembers.html +0 -1
  211. package/typedoc/functions/echo.useQueue.html +0 -2
  212. package/typedoc/functions/echo.useSchema.html +0 -2
  213. package/typedoc/functions/echo.useSpace.html +0 -6
  214. package/typedoc/functions/echo.useSpaceInvitation.html +0 -1
  215. package/typedoc/functions/echo.useSpaceInvitations.html +0 -1
  216. package/typedoc/functions/echo.useSpaceSyncState.html +0 -2
  217. package/typedoc/functions/echo.useSpaces.html +0 -5
  218. package/typedoc/functions/echo.useSubscription.html +0 -3
  219. package/typedoc/functions/echo.useSyncState.html +0 -2
  220. package/typedoc/functions/halo.useContacts.html +0 -4
  221. package/typedoc/functions/halo.useCredentials.html +0 -1
  222. package/typedoc/functions/halo.useDevices.html +0 -1
  223. package/typedoc/functions/halo.useHaloInvitation.html +0 -1
  224. package/typedoc/functions/halo.useHaloInvitations.html +0 -1
  225. package/typedoc/functions/halo.useIdentity.html +0 -3
  226. package/typedoc/functions/halo.useKeyStore.html +0 -3
  227. package/typedoc/functions/index.AgentHostingProvider.html +0 -2
  228. package/typedoc/functions/index.useAgentHostingClient.html +0 -1
  229. package/typedoc/functions/index.useClient.html +0 -3
  230. package/typedoc/functions/index.useClientStatus.html +0 -1
  231. package/typedoc/functions/index.useConfig.html +0 -3
  232. package/typedoc/functions/index.useShell.html +0 -2
  233. package/typedoc/functions/index.useShellDisplay.html +0 -2
  234. package/typedoc/functions/index.useStatus.html +0 -1
  235. package/typedoc/functions/invitations.useInvitationStatus.html +0 -1
  236. package/typedoc/functions/mesh.useNetworkStatus.html +0 -2
  237. package/typedoc/hierarchy.html +0 -1
  238. package/typedoc/index.html +0 -23
  239. package/typedoc/interfaces/devtools.DevtoolsHook.html +0 -22
  240. package/typedoc/interfaces/devtools.DevtoolsHost.html +0 -26
  241. package/typedoc/interfaces/echo.DocAccessor.html +0 -3
  242. package/typedoc/interfaces/echo.Echo.html +0 -39
  243. package/typedoc/interfaces/echo.EchoDatabase.html +0 -30
  244. package/typedoc/interfaces/echo.Expando.html +0 -3
  245. package/typedoc/interfaces/echo.Filter.html +0 -3
  246. package/typedoc/interfaces/echo.HaloSpaceMember.html +0 -18
  247. package/typedoc/interfaces/echo.IDocHandle.html +0 -6
  248. package/typedoc/interfaces/echo.IndexKind.html +0 -9
  249. package/typedoc/interfaces/echo.Query.html +0 -34
  250. package/typedoc/interfaces/echo.QueryOptions.html +0 -39
  251. package/typedoc/interfaces/echo.Queue.html +0 -17
  252. package/typedoc/interfaces/echo.Ref.html +0 -32
  253. package/typedoc/interfaces/echo.Space.html +0 -36
  254. package/typedoc/interfaces/echo.SpaceMember.html +0 -7
  255. package/typedoc/interfaces/echo.SpaceSyncState.PeerState.html +0 -14
  256. package/typedoc/interfaces/echo.SpaceSyncState.html +0 -4
  257. package/typedoc/interfaces/echo.SubscriptionHandle.html +0 -5
  258. package/typedoc/interfaces/echo.TypedObject.html +0 -16
  259. package/typedoc/interfaces/halo.Contact.html +0 -10
  260. package/typedoc/interfaces/halo.Credential.html +0 -27
  261. package/typedoc/interfaces/halo.Device.html +0 -11
  262. package/typedoc/interfaces/halo.Halo.html +0 -16
  263. package/typedoc/interfaces/halo.Identity.html +0 -15
  264. package/typedoc/interfaces/index.AgentHostingProviderClient.html +0 -6
  265. package/typedoc/interfaces/index.AppContextRequest.html +0 -33
  266. package/typedoc/interfaces/index.ClientServicesProvider.html +0 -9
  267. package/typedoc/interfaces/index.InvitationUrlRequest.html +0 -9
  268. package/typedoc/interfaces/index.LayoutRequest.html +0 -29
  269. package/typedoc/interfaces/index.ShellRuntime.html +0 -15
  270. package/typedoc/interfaces/invitations.Invitation.html +0 -92
  271. package/typedoc/interfaces/invitations.Invitations.html +0 -5
  272. package/typedoc/interfaces/mesh.GossipMessage.html +0 -10
  273. package/typedoc/interfaces/mesh.NetworkStatus.Signal.html +0 -5
  274. package/typedoc/interfaces/mesh.NetworkStatus.html +0 -6
  275. package/typedoc/media/LICENSE +0 -8
  276. package/typedoc/modules/devtools.html +0 -1
  277. package/typedoc/modules/echo.Filter.html +0 -1
  278. package/typedoc/modules/echo.HaloSpaceMember.html +0 -1
  279. package/typedoc/modules/echo.IndexKind.html +0 -1
  280. package/typedoc/modules/echo.Query.html +0 -1
  281. package/typedoc/modules/echo.QueryOptions.html +0 -1
  282. package/typedoc/modules/echo.Ref.html +0 -2
  283. package/typedoc/modules/echo.SpaceMember.html +0 -1
  284. package/typedoc/modules/echo.SpaceSyncState.html +0 -1
  285. package/typedoc/modules/echo.html +0 -1
  286. package/typedoc/modules/halo.Device.html +0 -1
  287. package/typedoc/modules/halo.html +0 -1
  288. package/typedoc/modules/index.html +0 -1
  289. package/typedoc/modules/invitations.Invitation.html +0 -1
  290. package/typedoc/modules/invitations.html +0 -1
  291. package/typedoc/modules/mesh.NetworkStatus.html +0 -1
  292. package/typedoc/modules/mesh.html +0 -1
  293. package/typedoc/modules/worker.html +0 -1
  294. package/typedoc/modules.html +0 -1
  295. package/typedoc/types/devtools.MountOptions.html +0 -3
  296. package/typedoc/types/echo.AnyLiveObject.html +0 -2
  297. package/typedoc/types/echo.Filter.And.html +0 -1
  298. package/typedoc/types/echo.Filter.Any.html +0 -1
  299. package/typedoc/types/echo.Filter.Or.html +0 -1
  300. package/typedoc/types/echo.Filter.Props.html +0 -1
  301. package/typedoc/types/echo.Filter.Type.html +0 -1
  302. package/typedoc/types/echo.Live.html +0 -5
  303. package/typedoc/types/echo.ObjectMeta.html +0 -1
  304. package/typedoc/types/echo.ObjectMigration.html +0 -7
  305. package/typedoc/types/echo.ObjectVersion.html +0 -2
  306. package/typedoc/types/echo.PeerSyncState.html +0 -1
  307. package/typedoc/types/echo.Progress.html +0 -3
  308. package/typedoc/types/echo.PropertiesTypeProps.html +0 -1
  309. package/typedoc/types/echo.Query.Any.html +0 -1
  310. package/typedoc/types/echo.Query.TextSearchOptions.html +0 -2
  311. package/typedoc/types/echo.Query.Type.html +0 -1
  312. package/typedoc/types/echo.Ref.Target.html +0 -2
  313. package/typedoc/types/echo.Selection.html +0 -1
  314. package/typedoc/types/echo.SpaceId.html +0 -6
  315. package/typedoc/types/echo.SpaceSyncStateMap.html +0 -1
  316. package/typedoc/types/echo.UseQueueOptions.html +0 -2
  317. package/typedoc/types/echo.UseSpacesParams.html +0 -3
  318. package/typedoc/types/index.AgentHostingProviderProps.html +0 -3
  319. package/typedoc/types/index.ClientContextProps.html +0 -3
  320. package/typedoc/types/index.ClientOptions.html +0 -12
  321. package/typedoc/types/index.ClientProviderProps.html +0 -2
  322. package/typedoc/types/index.ClientServices.html +0 -15
  323. package/typedoc/types/index.FromAgentOptions.html +0 -2
  324. package/typedoc/types/index.PublicKeyLike.html +0 -2
  325. package/typedoc/types/invitations.InvitationAction.html +0 -1
  326. package/typedoc/types/invitations.InvitationResult.html +0 -5
  327. package/typedoc/types/invitations.InvitationStatus.html +0 -15
  328. package/typedoc/variables/devtools.mountDevtoolsHooks.html +0 -1
  329. package/typedoc/variables/devtools.unmountDevtoolsHooks.html +0 -1
  330. package/typedoc/variables/echo.DocAccessor.html +0 -1
  331. package/typedoc/variables/echo.EchoObjectSchema.html +0 -1
  332. package/typedoc/variables/echo.Expando.html +0 -1
  333. package/typedoc/variables/echo.FQ_ID_LENGTH.html +0 -1
  334. package/typedoc/variables/echo.Filter.html +0 -1
  335. package/typedoc/variables/echo.OBJECT_ID_LENGTH.html +0 -1
  336. package/typedoc/variables/echo.ObjectVersion.html +0 -1
  337. package/typedoc/variables/echo.Query.html +0 -1
  338. package/typedoc/variables/echo.Queue.html +0 -1
  339. package/typedoc/variables/echo.ReactiveObjectSchema.html +0 -1
  340. package/typedoc/variables/echo.Ref.html +0 -2
  341. package/typedoc/variables/echo.RefArray.html +0 -2
  342. package/typedoc/variables/echo.SPACE_ID_LENGTH.html +0 -1
  343. package/typedoc/variables/echo.SpaceId.html +0 -1
  344. package/typedoc/variables/echo.SpaceSchema.html +0 -1
  345. package/typedoc/variables/echo.TypedObject.html +0 -3
  346. package/typedoc/variables/echo.compareForeignKeys.html +0 -1
  347. package/typedoc/variables/echo.createDocAccessor.html +0 -1
  348. package/typedoc/variables/echo.createEmptyEdgeSyncState.html +0 -1
  349. package/typedoc/variables/echo.createObject.html +0 -1
  350. package/typedoc/variables/echo.createQueueDXN.html +0 -2
  351. package/typedoc/variables/echo.createSubscription.html +0 -5
  352. package/typedoc/variables/echo.defineObjectMigration.html +0 -1
  353. package/typedoc/variables/echo.fromCursor.html +0 -1
  354. package/typedoc/variables/echo.fullyQualifiedId.html +0 -4
  355. package/typedoc/variables/echo.getMeta.html +0 -1
  356. package/typedoc/variables/echo.getObjectCore.html +0 -1
  357. package/typedoc/variables/echo.getRangeFromCursor.html +0 -1
  358. package/typedoc/variables/echo.getSchema.html +0 -2
  359. package/typedoc/variables/echo.getSource.html +0 -4
  360. package/typedoc/variables/echo.getSpace.html +0 -1
  361. package/typedoc/variables/echo.getSyncSummary.html +0 -1
  362. package/typedoc/variables/echo.getTarget.html +0 -4
  363. package/typedoc/variables/echo.getTextInRange.html +0 -2
  364. package/typedoc/variables/echo.getType.html +0 -5
  365. package/typedoc/variables/echo.getTypename.html +0 -6
  366. package/typedoc/variables/echo.getVersion.html +0 -3
  367. package/typedoc/variables/echo.importSpace.html +0 -1
  368. package/typedoc/variables/echo.internalDecodeReference.html +0 -2
  369. package/typedoc/variables/echo.isEchoObject.html +0 -2
  370. package/typedoc/variables/echo.isLiveObject.html +0 -3
  371. package/typedoc/variables/echo.isRelation.html +0 -2
  372. package/typedoc/variables/echo.isSpace.html +0 -1
  373. package/typedoc/variables/echo.live.html +0 -3
  374. package/typedoc/variables/echo.loadObjectReferences.html +0 -7
  375. package/typedoc/variables/echo.parseFullyQualifiedId.html +0 -2
  376. package/typedoc/variables/echo.parseId.html +0 -1
  377. package/typedoc/variables/echo.toCursor.html +0 -1
  378. package/typedoc/variables/echo.toCursorRange.html +0 -1
  379. package/typedoc/variables/echo.updateText.html +0 -6
  380. package/typedoc/variables/echo.useQuery.html +0 -2
  381. package/typedoc/variables/index.AgentHostingContext.html +0 -1
  382. package/typedoc/variables/index.ClientProvider.html +0 -3
  383. package/typedoc/variables/index.DXOS_VERSION.html +0 -1
  384. package/typedoc/variables/index.Defaults.html +0 -2
  385. package/typedoc/variables/index.Dynamics.html +0 -2
  386. package/typedoc/variables/index.Envs.html +0 -2
  387. package/typedoc/variables/index.Local.html +0 -2
  388. package/typedoc/variables/index.Remote.html +0 -1
  389. package/typedoc/variables/index.Storage.html +0 -2
  390. package/typedoc/variables/index.createClientServices.html +0 -4
  391. package/typedoc/variables/index.fromAgent.html +0 -2
  392. package/typedoc/variables/index.fromHost.html +0 -2
  393. package/typedoc/variables/index.fromSocket.html +0 -2
  394. package/typedoc/variables/index.fromWorker.html +0 -2
  395. package/typedoc/variables/index.getUnixSocket.html +0 -1
  396. package/typedoc/variables/index.resolveRef.html +0 -1
  397. package/typedoc/variables/index.useMulticastObservable.html +0 -3
  398. package/typedoc/variables/worker.getWorkerServiceHost.html +0 -1
  399. package/typedoc/variables/worker.onconnect.html +0 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/index.ts"],
4
- "sourcesContent": ["//\n// Copyright 2020 DXOS.org\n//\n\nexport * from '@dxos/client';\nexport { useMulticastObservable } from '@dxos/react-hooks';\n\nexport * from './client';\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;AAIA,cAAc;AACd,SAASA,8BAA8B;",
6
- "names": ["useMulticastObservable"]
3
+ "sources": ["../../../src/index.ts", "../../../src/client/AgentHostingProvider.tsx", "../../../src/client/useClientStatus.ts", "../../../src/client/useConfig.ts", "../../../src/client/useShell.ts", "../../../src/client/useStatus.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2020 DXOS.org\n//\n\nexport * from '@dxos/client';\nexport { useMulticastObservable } from '@dxos/react-hooks';\n\nexport * from './client';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { type PropsWithChildren, createContext, useContext, useState } from 'react';\n\nimport { type AgentHostingProviderClient, AgentManagerClient, FakeAgentHostingProvider } from '@dxos/client';\nimport { type Halo } from '@dxos/client/halo';\nimport { type Config } from '@dxos/config';\nimport { log } from '@dxos/log';\n\nimport { useClient } from '../client';\n\nexport type AgentHostingProviderProps = { config: Config; halo: Halo };\n\nexport const AgentHostingContext = createContext<AgentHostingProviderClient | null>(null);\n\n/**\n * Experimental agent hosting provider.\n * @param props\n * @constructor\n * @deprecated\n */\nexport const AgentHostingProvider = (props: PropsWithChildren) => {\n const client = useClient();\n const [agentHostingProviderClient] = useState(makeClient(client));\n return (\n <AgentHostingContext.Provider value={agentHostingProviderClient}> {props.children}</AgentHostingContext.Provider>\n );\n};\n\nexport const useAgentHostingClient = () => {\n return useContext(AgentHostingContext);\n};\n\nconst makeClient = ({ config, halo }: AgentHostingProviderProps) => {\n const agentHostingConfig = config.get('runtime.services.agentHosting');\n if (!agentHostingConfig) {\n log('no agent hosting configured');\n return null;\n }\n\n // TODO(nf): Dynamically discover based on runtime config.\n let agentHostingProviderClient: AgentHostingProviderClient | null = null;\n switch (agentHostingConfig.type) {\n case 'LOCAL_TESTING': {\n log('using FakeAgentHostingProvider');\n return new FakeAgentHostingProvider();\n }\n\n case 'AGENTHOSTING_API': {\n agentHostingProviderClient = new AgentManagerClient(config, halo);\n if (agentHostingProviderClient.init()) {\n return agentHostingProviderClient;\n } else {\n // Not authorized or error initializing.\n return null;\n }\n }\n\n default: {\n log.error('Unknown agent hosting provider type: ' + agentHostingConfig.type);\n return null;\n }\n }\n};\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { useEffect, useState } from 'react';\n\nimport { type Client, type SystemStatus } from '@dxos/client';\n\nexport const useClientStatus = (client: Client) => {\n const [status, setStatus] = useState<SystemStatus | null>();\n useEffect(() => {\n if (!client) {\n return;\n }\n\n const subscription = client.status.subscribe((status) => setStatus(status));\n return () => subscription.unsubscribe();\n }, [client, setStatus]);\n\n return status;\n};\n", "//\n// Copyright 2020 DXOS.org\n//\n\nimport { useContext } from 'react';\n\nimport { raise } from '@dxos/debug';\n\nimport { ClientContext } from './context';\n\n/**\n * Hook returning config object used to initialize the DXOS client instance.\n * Requires ClientContext to be set via ClientProvider.\n */\nexport const useConfig = () => {\n const { client } = useContext(ClientContext) ?? raise(new Error('Missing ClientContext.'));\n return client.config;\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { useEffect, useState } from 'react';\n\nimport { type Shell, type ShellDisplay } from '@dxos/client';\n\nimport { useClient } from './useClient';\n\n/**\n * Helper hook to access the shell.\n */\nexport const useShell = (): Shell => {\n const client = useClient();\n return client.shell;\n};\n\n/**\n * Hook to access the shell’s display state.\n */\nexport const useShellDisplay = (): ShellDisplay => {\n const client = useClient();\n const [display, setDisplay] = useState(client.shell.display);\n useEffect(() => client.shell.onDisplayChange(setDisplay), [client]);\n return display;\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { useContext } from 'react';\n\nimport { type SystemStatus } from '@dxos/client';\nimport { raise } from '@dxos/debug';\n\nimport { ClientContext } from './context';\n\nexport const useStatus = (): SystemStatus | null | undefined => {\n const { status } = useContext(ClientContext) ?? raise(new Error('Missing ClientContext.'));\n return status;\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;AAIA,cAAc;AACd,SAASA,8BAA8B;;;ACDvC,OAAOC,SAAiCC,eAAeC,YAAYC,gBAAgB;AAEnF,SAA0CC,oBAAoBC,gCAAgC;AAG9F,SAASC,WAAW;AAMpB,IAAA,eAAaC;;AAUJC,IAAAA,uBAA2B,CAAGC,UAAAA;AACrC,QAAA,SAAA,UACE;QAA8BC,CAAAA,0BAAOF,IAAAA,SAAAA,WAAAA,MAAAA,CAAAA;SAAoCG,sBAAQ,cAAA,oBAAA,UAAA;IAEnF,OAAA;EAEF,GAAO,KAAA,MAAMC,QAAAA;;AAEX,IAAA,wBAAA,MAAA;AAEF,SAAMC,WAAgBC,mBAAyC;;IAE7D,aAAKC,CAAAA,EAAAA,QAAoB,KAAA,MAAA;QACvBC,qBAAI,OAAA,IAAA,+BAAA;MACJ,CAAA,oBAAO;AACT,QAAA,+BAAA,QAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,OAAA,CAAA;AAEA,WAAA;EACA;MAEE,6BAAK;6BAAiB,MAAA;;AAGtB,UAAA,kCAAA,QAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,OAAA,CAAA;AAEK,aAAA,IAAA,yBAAA;IAAoB;;mCAGdR,IAAAA,mBAAAA,QAAAA,IAAAA;AACT,UAAA,2BAAO,KAAA,GAAA;AACL,eAAA;aACA;AAEJ,eAAA;MAEA;IAAS;;AAGT,UAAA,MAAA,0CAAA,mBAAA,MAAA,QAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,OAAA,CAAA;AACF,aAAA;IACF;;;;;AC7DA,SAASS,WAAWC,YAAAA,iBAAgB;AAI7B,IAAMC,kBAAkB,CAACC,WAAAA;AAC9B,QAAM,CAACC,QAAQC,SAAAA,IAAaJ,UAAAA;AAC5BD,YAAU,MAAA;AACR,QAAI,CAACG,QAAQ;AACX;IACF;AAEA,UAAMG,eAAeH,OAAOC,OAAOG,UAAU,CAACH,YAAWC,UAAUD,OAAAA,CAAAA;AACnE,WAAO,MAAME,aAAaE,YAAW;EACvC,GAAG;IAACL;IAAQE;GAAU;AAEtB,SAAOD;AACT;;;AChBA,SAASK,cAAAA,mBAAkB;AAE3B,SAASC,aAAa;AAQf,IAAMC,YAAY,MAAA;AACvB,QAAM,EAAEC,OAAM,IAAKC,YAAWC,aAAAA,KAAkBC,MAAM,IAAIC,MAAM,wBAAA,CAAA;AAChE,SAAOJ,OAAOK;AAChB;;;ACbA,SAASC,aAAAA,YAAWC,YAAAA,iBAAgB;AAS7B,IAAMC,WAAW,MAAA;AACtB,QAAMC,SAASC,UAAAA;AACf,SAAOD,OAAOE;AAChB;AAKO,IAAMC,kBAAkB,MAAA;AAC7B,QAAMH,SAASC,UAAAA;AACf,QAAM,CAACG,SAASC,UAAAA,IAAcC,UAASN,OAAOE,MAAME,OAAO;AAC3DG,EAAAA,WAAU,MAAMP,OAAOE,MAAMM,gBAAgBH,UAAAA,GAAa;IAACL;GAAO;AAClE,SAAOI;AACT;;;ACtBA,SAASK,cAAAA,mBAAkB;AAG3B,SAASC,SAAAA,cAAa;AAIf,IAAMC,YAAY,MAAA;AACvB,QAAM,EAAEC,OAAM,IAAKC,YAAWC,aAAAA,KAAkBC,OAAM,IAAIC,MAAM,wBAAA,CAAA;AAChE,SAAOJ;AACT;",
6
+ "names": ["useMulticastObservable", "React", "createContext", "useContext", "useState", "AgentManagerClient", "FakeAgentHostingProvider", "log", "AgentHostingContext", "agentHostingProviderClient", "useState", "value", "children", "useAgentHostingClient", "makeClient", "config", "agentHostingConfig", "log", "useEffect", "useState", "useClientStatus", "client", "status", "setStatus", "subscription", "subscribe", "unsubscribe", "useContext", "raise", "useConfig", "client", "useContext", "ClientContext", "raise", "Error", "config", "useEffect", "useState", "useShell", "client", "useClient", "shell", "useShellDisplay", "display", "setDisplay", "useState", "useEffect", "onDisplayChange", "useContext", "raise", "useStatus", "status", "useContext", "ClientContext", "raise", "Error"]
7
7
  }
@@ -6,7 +6,7 @@ import {
6
6
  InvitationEncoder,
7
7
  InvitationsProxy,
8
8
  useInvitationStatus
9
- } from "../chunk-TU2JJLZK.mjs";
9
+ } from "../chunk-RQJPEHDY.mjs";
10
10
  export {
11
11
  AuthenticatingInvitationObservable,
12
12
  CancellableInvitationObservable,
@@ -1,7 +1,8 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  useClient
4
- } from "../chunk-ZTD6HPV2.mjs";
4
+ } from "../chunk-CUDKNAMV.mjs";
5
+ import "../chunk-WUTK2IJF.mjs";
5
6
 
6
7
  // src/mesh/index.ts
7
8
  export * from "@dxos/client/mesh";
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/mesh/index.ts", "../../../../src/mesh/useNetworkStatus.ts"],
4
4
  "sourcesContent": ["//\n// Copyright 2020 DXOS.org\n//\n\nexport * from '@dxos/client/mesh';\n\nexport * from './useNetworkStatus';\n", "//\n// Copyright 2020 DXOS.org\n//\n\nimport { type NetworkStatus } from '@dxos/client/mesh';\nimport { useMulticastObservable } from '@dxos/react-hooks';\n\nimport { useClient } from '../client';\n\n/**\n * Creates a network status subscription.\n */\nexport const useNetworkStatus = (): NetworkStatus => {\n const client = useClient();\n return useMulticastObservable(client.mesh.networkStatus);\n};\n"],
5
- "mappings": ";;;;;;AAIA,cAAc;;;ACCd,SAASA,8BAA8B;AAOhC,IAAMC,mBAAmB,MAAA;AAC9B,QAAMC,SAASC,UAAAA;AACf,SAAOC,uBAAuBF,OAAOG,KAAKC,aAAa;AACzD;",
5
+ "mappings": ";;;;;;;AAIA,cAAc;;;ACCd,SAASA,8BAA8B;AAOhC,IAAMC,mBAAmB,MAAA;AAC9B,QAAMC,SAASC,UAAAA;AACf,SAAOC,uBAAuBF,OAAOG,KAAKC,aAAa;AACzD;",
6
6
  "names": ["useMulticastObservable", "useNetworkStatus", "client", "useClient", "useMulticastObservable", "mesh", "networkStatus"]
7
7
  }
@@ -1 +1 @@
1
- {"inputs":{"src/client/AgentHostingProvider.tsx":{"bytes":7107,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/client/context.ts":{"bytes":1279,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"src/banner.ts":{"bytes":3825,"imports":[],"format":"esm"},"src/client/ClientProvider.tsx":{"bytes":18858,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/echo-signals/react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/client/context.ts","kind":"import-statement","original":"./context"},{"path":"src/banner.ts","kind":"import-statement","original":"../banner"}],"format":"esm"},"src/client/useClient.ts":{"bytes":1643,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"src/client/context.ts","kind":"import-statement","original":"../client/context"}],"format":"esm"},"src/client/useClientStatus.ts":{"bytes":1969,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"src/client/useConfig.ts":{"bytes":1748,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"src/client/context.ts","kind":"import-statement","original":"./context"}],"format":"esm"},"src/client/useShell.ts":{"bytes":2332,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"src/client/useClient.ts","kind":"import-statement","original":"./useClient"}],"format":"esm"},"src/client/useStatus.ts":{"bytes":1464,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"src/client/context.ts","kind":"import-statement","original":"./context"}],"format":"esm"},"src/client/index.ts":{"bytes":1150,"imports":[{"path":"src/client/AgentHostingProvider.tsx","kind":"import-statement","original":"./AgentHostingProvider"},{"path":"src/client/ClientProvider.tsx","kind":"import-statement","original":"./ClientProvider"},{"path":"src/client/context.ts","kind":"import-statement","original":"./context"},{"path":"src/client/useClient.ts","kind":"import-statement","original":"./useClient"},{"path":"src/client/useClientStatus.ts","kind":"import-statement","original":"./useClientStatus"},{"path":"src/client/useConfig.ts","kind":"import-statement","original":"./useConfig"},{"path":"src/client/useShell.ts","kind":"import-statement","original":"./useShell"},{"path":"src/client/useStatus.ts","kind":"import-statement","original":"./useStatus"}],"format":"esm"},"src/devtools/useDevtools.ts":{"bytes":1400,"imports":[{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/devtools/useStream.ts":{"bytes":2795,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/devtools/index.ts":{"bytes":680,"imports":[{"path":"@dxos/client/devtools","kind":"import-statement","external":true},{"path":"src/devtools/useDevtools.ts","kind":"import-statement","original":"./useDevtools"},{"path":"src/devtools/useStream.ts","kind":"import-statement","original":"./useStream"}],"format":"esm"},"src/echo/useSpaces.ts":{"bytes":6317,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/echo/useMembers.ts":{"bytes":3144,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/echo/useSpaces.ts","kind":"import-statement","original":"./useSpaces"}],"format":"esm"},"src/echo/useQuery.ts":{"bytes":5589,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true}],"format":"esm"},"src/echo/useQueue.ts":{"bytes":6370,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/echo/useSchema.ts":{"bytes":4839,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"src/invitations/useInvitationStatus.ts":{"bytes":20410,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/invitations","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/invitations/index.ts":{"bytes":1286,"imports":[{"path":"@dxos/client/invitations","kind":"import-statement","external":true},{"path":"src/invitations/useInvitationStatus.ts","kind":"import-statement","original":"./useInvitationStatus"}],"format":"esm"},"src/echo/useSpaceInvitations.ts":{"bytes":3240,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/echo/useSpaces.ts","kind":"import-statement","original":"./useSpaces"},{"path":"src/invitations/index.ts","kind":"import-statement","original":"../invitations"}],"format":"esm"},"src/echo/useSubscription.ts":{"bytes":3515,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true}],"format":"esm"},"src/echo/useSyncState.ts":{"bytes":7689,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/echo/index.ts":{"bytes":1254,"imports":[{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"src/echo/useMembers.ts","kind":"import-statement","original":"./useMembers"},{"path":"src/echo/useQuery.ts","kind":"import-statement","original":"./useQuery"},{"path":"src/echo/useQueue.ts","kind":"import-statement","original":"./useQueue"},{"path":"src/echo/useSchema.ts","kind":"import-statement","original":"./useSchema"},{"path":"src/echo/useSpaces.ts","kind":"import-statement","original":"./useSpaces"},{"path":"src/echo/useSpaceInvitations.ts","kind":"import-statement","original":"./useSpaceInvitations"},{"path":"src/echo/useSubscription.ts","kind":"import-statement","original":"./useSubscription"},{"path":"src/echo/useSyncState.ts","kind":"import-statement","original":"./useSyncState"}],"format":"esm"},"src/halo/useContacts.ts":{"bytes":1705,"imports":[{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/halo/useCredentials.ts":{"bytes":1344,"imports":[{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/halo/useDevices.ts":{"bytes":1292,"imports":[{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/halo/useHaloInvitations.ts":{"bytes":2724,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"},{"path":"src/invitations/index.ts","kind":"import-statement","original":"../invitations"}],"format":"esm"},"src/halo/useIdentity.ts":{"bytes":1575,"imports":[{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/halo/useKeyStore.ts":{"bytes":4567,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"src/halo/index.ts":{"bytes":1446,"imports":[{"path":"@dxos/client/halo","kind":"import-statement","external":true},{"path":"src/halo/useContacts.ts","kind":"import-statement","original":"./useContacts"},{"path":"src/halo/useCredentials.ts","kind":"import-statement","original":"./useCredentials"},{"path":"src/halo/useDevices.ts","kind":"import-statement","original":"./useDevices"},{"path":"src/halo/useHaloInvitations.ts","kind":"import-statement","original":"./useHaloInvitations"},{"path":"src/halo/useIdentity.ts","kind":"import-statement","original":"./useIdentity"},{"path":"src/halo/useKeyStore.ts","kind":"import-statement","original":"./useKeyStore"}],"format":"esm"},"src/index.ts":{"bytes":760,"imports":[{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"./client"}],"format":"esm"},"src/mesh/useNetworkStatus.ts":{"bytes":1504,"imports":[{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/mesh/index.ts":{"bytes":588,"imports":[{"path":"@dxos/client/mesh","kind":"import-statement","external":true},{"path":"src/mesh/useNetworkStatus.ts","kind":"import-statement","original":"./useNetworkStatus"}],"format":"esm"},"src/testing/context.tsx":{"bytes":1701,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"src/testing/ClientRepeater.tsx":{"bytes":11314,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"@dxos/echo-signals/react","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/testing/withClientProvider.tsx":{"bytes":21364,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"react-error-boundary","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/testing/context.tsx","kind":"import-statement","original":"./context"},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/testing/index.ts":{"bytes":793,"imports":[{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"src/testing/context.tsx","kind":"import-statement","original":"./context"},{"path":"src/testing/ClientRepeater.tsx","kind":"import-statement","original":"./ClientRepeater"},{"path":"src/testing/withClientProvider.tsx","kind":"import-statement","original":"./withClientProvider"}],"format":"esm"},"src/worker.ts":{"bytes":478,"imports":[{"path":"@dxos/client/worker","kind":"import-statement","external":true}],"format":"esm"}},"outputs":{"dist/lib/node-esm/devtools/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2292},"dist/lib/node-esm/devtools/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-ZTD6HPV2.mjs","kind":"import-statement"},{"path":"@dxos/client/devtools","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["useDevtools","useStream"],"entryPoint":"src/devtools/index.ts","inputs":{"src/devtools/index.ts":{"bytesInOutput":39},"src/devtools/useDevtools.ts":{"bytesInOutput":195},"src/devtools/useStream.ts":{"bytesInOutput":677}},"bytes":1218},"dist/lib/node-esm/echo/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":21461},"dist/lib/node-esm/echo/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-TU2JJLZK.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-ZTD6HPV2.mjs","kind":"import-statement"},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/protocols","kind":"import-statement","external":true}],"exports":["useMembers","useQuery","useQueue","useSchema","useSpace","useSpaceInvitation","useSpaceInvitations","useSpaceSyncState","useSpaces","useSubscription","useSyncState"],"entryPoint":"src/echo/index.ts","inputs":{"src/echo/index.ts":{"bytesInOutput":35},"src/echo/useMembers.ts":{"bytesInOutput":545},"src/echo/useSpaces.ts":{"bytesInOutput":1013},"src/echo/useQuery.ts":{"bytesInOutput":1012},"src/echo/useQueue.ts":{"bytesInOutput":1192},"src/echo/useSchema.ts":{"bytesInOutput":1057},"src/echo/useSpaceInvitations.ts":{"bytesInOutput":677},"src/echo/useSubscription.ts":{"bytesInOutput":532},"src/echo/useSyncState.ts":{"bytesInOutput":1820}},"bytes":8589},"dist/lib/node-esm/halo/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6988},"dist/lib/node-esm/halo/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-TU2JJLZK.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-ZTD6HPV2.mjs","kind":"import-statement"},{"path":"@dxos/client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"exports":["Device","DeviceKind","DeviceType","KeyStore","useContacts","useCredentials","useDevices","useHaloInvitation","useHaloInvitations","useIdentity","useKeyStore"],"entryPoint":"src/halo/index.ts","inputs":{"src/halo/index.ts":{"bytesInOutput":68},"src/halo/useContacts.ts":{"bytesInOutput":174},"src/halo/useCredentials.ts":{"bytesInOutput":208},"src/halo/useDevices.ts":{"bytesInOutput":200},"src/halo/useHaloInvitations.ts":{"bytesInOutput":521},"src/halo/useIdentity.ts":{"bytesInOutput":202},"src/halo/useKeyStore.ts":{"bytesInOutput":928}},"bytes":2924},"dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":345},"dist/lib/node-esm/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-ZTD6HPV2.mjs","kind":"import-statement"},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true}],"exports":["AgentHostingContext","AgentHostingProvider","ClientContext","ClientProvider","useAgentHostingClient","useClient","useClientStatus","useConfig","useMulticastObservable","useShell","useShellDisplay","useStatus"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":90}},"bytes":702},"dist/lib/node-esm/invitations/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/invitations/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-TU2JJLZK.mjs","kind":"import-statement"}],"exports":["AuthenticatingInvitationObservable","CancellableInvitationObservable","Invitation","InvitationEncoder","InvitationsProxy","useInvitationStatus"],"entryPoint":"src/invitations/index.ts","inputs":{},"bytes":480},"dist/lib/node-esm/chunk-TU2JJLZK.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":11019},"dist/lib/node-esm/chunk-TU2JJLZK.mjs":{"imports":[{"path":"@dxos/client/invitations","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/invitations","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["AuthenticatingInvitationObservable","CancellableInvitationObservable","Invitation","InvitationEncoder","InvitationsProxy","useInvitationStatus"],"inputs":{"src/invitations/index.ts":{"bytesInOutput":198},"src/invitations/useInvitationStatus.ts":{"bytesInOutput":4665}},"bytes":5271},"dist/lib/node-esm/mesh/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":936},"dist/lib/node-esm/mesh/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-ZTD6HPV2.mjs","kind":"import-statement"},{"path":"@dxos/client/mesh","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true}],"exports":["useNetworkStatus"],"entryPoint":"src/mesh/index.ts","inputs":{"src/mesh/index.ts":{"bytesInOutput":35},"src/mesh/useNetworkStatus.ts":{"bytesInOutput":184}},"bytes":485},"dist/lib/node-esm/testing/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":18309},"dist/lib/node-esm/testing/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-ZTD6HPV2.mjs","kind":"import-statement"},{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"@dxos/echo-signals/react","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react-error-boundary","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["ClientRepeater","ClientStory","useClientProvider","useMultiClient","withClientProvider","withMultiClientProvider"],"entryPoint":"src/testing/index.ts","inputs":{"src/testing/index.ts":{"bytesInOutput":38},"src/testing/context.tsx":{"bytesInOutput":257},"src/testing/ClientRepeater.tsx":{"bytesInOutput":2076},"src/testing/withClientProvider.tsx":{"bytesInOutput":5428}},"bytes":8243},"dist/lib/node-esm/chunk-ZTD6HPV2.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":19671},"dist/lib/node-esm/chunk-ZTD6HPV2.mjs":{"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/echo-signals/react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"exports":["AgentHostingContext","AgentHostingProvider","ClientContext","ClientProvider","useAgentHostingClient","useClient","useClientStatus","useConfig","useShell","useShellDisplay","useStatus"],"inputs":{"src/client/AgentHostingProvider.tsx":{"bytesInOutput":1864},"src/client/index.ts":{"bytesInOutput":0},"src/client/ClientProvider.tsx":{"bytesInOutput":4303},"src/client/context.ts":{"bytesInOutput":82},"src/banner.ts":{"bytesInOutput":817},"src/client/useClient.ts":{"bytesInOutput":211},"src/client/useClientStatus.ts":{"bytesInOutput":398},"src/client/useConfig.ts":{"bytesInOutput":245},"src/client/useShell.ts":{"bytesInOutput":377},"src/client/useStatus.ts":{"bytesInOutput":238}},"bytes":9216},"dist/lib/node-esm/worker.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":208},"dist/lib/node-esm/worker.mjs":{"imports":[{"path":"@dxos/client/worker","kind":"import-statement","external":true}],"exports":[],"entryPoint":"src/worker.ts","inputs":{"src/worker.ts":{"bytesInOutput":37}},"bytes":183}}}
1
+ {"inputs":{"src/client/AgentHostingProvider.tsx":{"bytes":6817,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/banner.ts":{"bytes":3744,"imports":[],"format":"esm"},"src/client/context.ts":{"bytes":1194,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"src/client/ClientProvider.tsx":{"bytes":15846,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"src/banner.ts","kind":"import-statement","original":"../banner"},{"path":"src/client/context.ts","kind":"import-statement","original":"./context"}],"format":"esm"},"src/client/useClient.ts":{"bytes":1556,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"src/client/context.ts","kind":"import-statement","original":"../client/context"}],"format":"esm"},"src/client/useClientStatus.ts":{"bytes":1872,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"src/client/useConfig.ts":{"bytes":1657,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"src/client/context.ts","kind":"import-statement","original":"./context"}],"format":"esm"},"src/client/useShell.ts":{"bytes":2242,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"src/client/useClient.ts","kind":"import-statement","original":"./useClient"}],"format":"esm"},"src/client/useStatus.ts":{"bytes":1377,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"src/client/context.ts","kind":"import-statement","original":"./context"}],"format":"esm"},"src/client/index.ts":{"bytes":1067,"imports":[{"path":"src/client/AgentHostingProvider.tsx","kind":"import-statement","original":"./AgentHostingProvider"},{"path":"src/client/ClientProvider.tsx","kind":"import-statement","original":"./ClientProvider"},{"path":"src/client/context.ts","kind":"import-statement","original":"./context"},{"path":"src/client/useClient.ts","kind":"import-statement","original":"./useClient"},{"path":"src/client/useClientStatus.ts","kind":"import-statement","original":"./useClientStatus"},{"path":"src/client/useConfig.ts","kind":"import-statement","original":"./useConfig"},{"path":"src/client/useShell.ts","kind":"import-statement","original":"./useShell"},{"path":"src/client/useStatus.ts","kind":"import-statement","original":"./useStatus"}],"format":"esm"},"src/devtools/useDevtools.ts":{"bytes":1305,"imports":[{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/devtools/useStream.ts":{"bytes":2683,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/devtools/index.ts":{"bytes":595,"imports":[{"path":"@dxos/client/devtools","kind":"import-statement","external":true},{"path":"src/devtools/useDevtools.ts","kind":"import-statement","original":"./useDevtools"},{"path":"src/devtools/useStream.ts","kind":"import-statement","original":"./useStream"}],"format":"esm"},"src/echo/useSpaces.ts":{"bytes":6283,"imports":[{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/echo/useMembers.ts":{"bytes":3380,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/echo/useSpaces.ts","kind":"import-statement","original":"./useSpaces"}],"format":"esm"},"src/invitations/useInvitationStatus.ts":{"bytes":20307,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/invitations","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/invitations/index.ts":{"bytes":1198,"imports":[{"path":"@dxos/client/invitations","kind":"import-statement","external":true},{"path":"src/invitations/useInvitationStatus.ts","kind":"import-statement","original":"./useInvitationStatus"}],"format":"esm"},"src/echo/useSpaceInvitations.ts":{"bytes":3945,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/invitations/index.ts","kind":"import-statement","original":"../invitations"},{"path":"src/echo/useSpaces.ts","kind":"import-statement","original":"./useSpaces"}],"format":"esm"},"src/echo/useSpaceProperties.ts":{"bytes":3500,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/echo/useSpaces.ts","kind":"import-statement","original":"./useSpaces"}],"format":"esm"},"src/echo/useSubscription.ts":{"bytes":3440,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true}],"format":"esm"},"src/echo/useSyncState.ts":{"bytes":7194,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo-protocol","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/echo/index.ts":{"bytes":1124,"imports":[{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-react","kind":"import-statement","external":true},{"path":"src/echo/useMembers.ts","kind":"import-statement","original":"./useMembers"},{"path":"src/echo/useSpaces.ts","kind":"import-statement","original":"./useSpaces"},{"path":"src/echo/useSpaceInvitations.ts","kind":"import-statement","original":"./useSpaceInvitations"},{"path":"src/echo/useSpaceProperties.ts","kind":"import-statement","original":"./useSpaceProperties"},{"path":"src/echo/useSubscription.ts","kind":"import-statement","original":"./useSubscription"},{"path":"src/echo/useSyncState.ts","kind":"import-statement","original":"./useSyncState"}],"format":"esm"},"src/halo/useContacts.ts":{"bytes":1618,"imports":[{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/halo/useCredentials.ts":{"bytes":1250,"imports":[{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/halo/useDevices.ts":{"bytes":1202,"imports":[{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/halo/useHaloInvitations.ts":{"bytes":2626,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"},{"path":"src/invitations/index.ts","kind":"import-statement","original":"../invitations"}],"format":"esm"},"src/halo/useIdentity.ts":{"bytes":1488,"imports":[{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/halo/useKeyStore.ts":{"bytes":4446,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"src/halo/index.ts":{"bytes":1365,"imports":[{"path":"@dxos/client/halo","kind":"import-statement","external":true},{"path":"src/halo/useContacts.ts","kind":"import-statement","original":"./useContacts"},{"path":"src/halo/useCredentials.ts","kind":"import-statement","original":"./useCredentials"},{"path":"src/halo/useDevices.ts","kind":"import-statement","original":"./useDevices"},{"path":"src/halo/useHaloInvitations.ts","kind":"import-statement","original":"./useHaloInvitations"},{"path":"src/halo/useIdentity.ts","kind":"import-statement","original":"./useIdentity"},{"path":"src/halo/useKeyStore.ts","kind":"import-statement","original":"./useKeyStore"}],"format":"esm"},"src/index.ts":{"bytes":680,"imports":[{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"./client"}],"format":"esm"},"src/mesh/useNetworkStatus.ts":{"bytes":1408,"imports":[{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/mesh/index.ts":{"bytes":507,"imports":[{"path":"@dxos/client/mesh","kind":"import-statement","external":true},{"path":"src/mesh/useNetworkStatus.ts","kind":"import-statement","original":"./useNetworkStatus"}],"format":"esm"},"src/testing/context.tsx":{"bytes":1581,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"src/testing/ClientRepeater.tsx":{"bytes":10392,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"src/testing/withClientProvider.tsx":{"bytes":17977,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true},{"path":"src/client/index.ts","kind":"import-statement","original":"../client"},{"path":"src/testing/context.tsx","kind":"import-statement","original":"./context"}],"format":"esm"},"src/testing/index.ts":{"bytes":709,"imports":[{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"src/testing/context.tsx","kind":"import-statement","original":"./context"},{"path":"src/testing/ClientRepeater.tsx","kind":"import-statement","original":"./ClientRepeater"},{"path":"src/testing/withClientProvider.tsx","kind":"import-statement","original":"./withClientProvider"}],"format":"esm"},"src/worker.ts":{"bytes":401,"imports":[{"path":"@dxos/client/worker","kind":"import-statement","external":true}],"format":"esm"}},"outputs":{"dist/lib/node-esm/devtools/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2197},"dist/lib/node-esm/devtools/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-CUDKNAMV.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-WUTK2IJF.mjs","kind":"import-statement"},{"path":"@dxos/client/devtools","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["useDevtools","useStream"],"entryPoint":"src/devtools/index.ts","inputs":{"src/devtools/index.ts":{"bytesInOutput":39},"src/devtools/useDevtools.ts":{"bytesInOutput":195},"src/devtools/useStream.ts":{"bytesInOutput":631}},"bytes":1204},"dist/lib/node-esm/echo/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":14274},"dist/lib/node-esm/echo/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-RQJPEHDY.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-CUDKNAMV.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-WUTK2IJF.mjs","kind":"import-statement"},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-react","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/echo-react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/echo-protocol","kind":"import-statement","external":true}],"exports":["useDatabase","useMembers","useSpace","useSpaceInvitation","useSpaceInvitations","useSpaceProperties","useSpaceSyncState","useSpaces","useSubscription","useSyncState"],"entryPoint":"src/echo/index.ts","inputs":{"src/echo/index.ts":{"bytesInOutput":69},"src/echo/useMembers.ts":{"bytesInOutput":659},"src/echo/useSpaces.ts":{"bytesInOutput":781},"src/echo/useSpaceInvitations.ts":{"bytesInOutput":660},"src/echo/useSpaceProperties.ts":{"bytesInOutput":563},"src/echo/useSubscription.ts":{"bytesInOutput":508},"src/echo/useSyncState.ts":{"bytesInOutput":1735}},"bytes":5672},"dist/lib/node-esm/halo/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6966},"dist/lib/node-esm/halo/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-RQJPEHDY.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-CUDKNAMV.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-WUTK2IJF.mjs","kind":"import-statement"},{"path":"@dxos/client/halo","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"exports":["Device","DeviceKind","DeviceType","KeyStore","useContacts","useCredentials","useDevices","useHaloInvitation","useHaloInvitations","useIdentity","useKeyStore"],"entryPoint":"src/halo/index.ts","inputs":{"src/halo/index.ts":{"bytesInOutput":68},"src/halo/useContacts.ts":{"bytesInOutput":174},"src/halo/useCredentials.ts":{"bytesInOutput":208},"src/halo/useDevices.ts":{"bytesInOutput":200},"src/halo/useHaloInvitations.ts":{"bytesInOutput":521},"src/halo/useIdentity.ts":{"bytesInOutput":202},"src/halo/useKeyStore.ts":{"bytesInOutput":937}},"bytes":2965},"dist/lib/node-esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7139},"dist/lib/node-esm/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-CUDKNAMV.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-WL3Z5HOH.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-WUTK2IJF.mjs","kind":"import-statement"},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"exports":["AgentHostingContext","AgentHostingProvider","ClientContext","ClientProvider","useAgentHostingClient","useClient","useClientStatus","useConfig","useMulticastObservable","useShell","useShellDisplay","useStatus"],"entryPoint":"src/index.ts","inputs":{"src/index.ts":{"bytesInOutput":90},"src/client/AgentHostingProvider.tsx":{"bytesInOutput":1700},"src/client/useClientStatus.ts":{"bytesInOutput":383},"src/client/useConfig.ts":{"bytesInOutput":234},"src/client/useShell.ts":{"bytesInOutput":377},"src/client/useStatus.ts":{"bytesInOutput":238}},"bytes":3721},"dist/lib/node-esm/invitations/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/node-esm/invitations/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-RQJPEHDY.mjs","kind":"import-statement"}],"exports":["AuthenticatingInvitationObservable","CancellableInvitationObservable","Invitation","InvitationEncoder","InvitationsProxy","useInvitationStatus"],"entryPoint":"src/invitations/index.ts","inputs":{},"bytes":480},"dist/lib/node-esm/chunk-RQJPEHDY.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10412},"dist/lib/node-esm/chunk-RQJPEHDY.mjs":{"imports":[{"path":"@dxos/client/invitations","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/invitations","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["AuthenticatingInvitationObservable","CancellableInvitationObservable","Invitation","InvitationEncoder","InvitationsProxy","useInvitationStatus"],"inputs":{"src/invitations/index.ts":{"bytesInOutput":198},"src/invitations/useInvitationStatus.ts":{"bytesInOutput":4615}},"bytes":5221},"dist/lib/node-esm/mesh/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":937},"dist/lib/node-esm/mesh/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-CUDKNAMV.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-WUTK2IJF.mjs","kind":"import-statement"},{"path":"@dxos/client/mesh","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true}],"exports":["useNetworkStatus"],"entryPoint":"src/mesh/index.ts","inputs":{"src/mesh/index.ts":{"bytesInOutput":35},"src/mesh/useNetworkStatus.ts":{"bytesInOutput":184}},"bytes":517},"dist/lib/node-esm/chunk-CUDKNAMV.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":808},"dist/lib/node-esm/chunk-CUDKNAMV.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-WUTK2IJF.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"exports":["useClient"],"inputs":{"src/client/useClient.ts":{"bytesInOutput":211}},"bytes":456},"dist/lib/node-esm/testing/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":15609},"dist/lib/node-esm/testing/index.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-WL3Z5HOH.mjs","kind":"import-statement"},{"path":"dist/lib/node-esm/chunk-WUTK2IJF.mjs","kind":"import-statement"},{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"@dxos/random","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-ui","kind":"import-statement","external":true}],"exports":["ClientRepeater","ClientStory","useClientStory","withClientProvider","withMultiClientProvider"],"entryPoint":"src/testing/index.ts","inputs":{"src/testing/index.ts":{"bytesInOutput":38},"src/testing/context.tsx":{"bytesInOutput":254},"src/testing/ClientRepeater.tsx":{"bytesInOutput":1851},"src/testing/withClientProvider.tsx":{"bytesInOutput":4257}},"bytes":6855},"dist/lib/node-esm/chunk-WL3Z5HOH.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":9978},"dist/lib/node-esm/chunk-WL3Z5HOH.mjs":{"imports":[{"path":"dist/lib/node-esm/chunk-WUTK2IJF.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/react-hooks","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true}],"exports":["ClientProvider"],"inputs":{"src/client/ClientProvider.tsx":{"bytesInOutput":3513},"src/banner.ts":{"bytesInOutput":817}},"bytes":4638},"dist/lib/node-esm/chunk-WUTK2IJF.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":696},"dist/lib/node-esm/chunk-WUTK2IJF.mjs":{"imports":[{"path":"react","kind":"import-statement","external":true}],"exports":["ClientContext"],"inputs":{"src/client/context.ts":{"bytesInOutput":82}},"bytes":273},"dist/lib/node-esm/worker.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":208},"dist/lib/node-esm/worker.mjs":{"imports":[{"path":"@dxos/client/worker","kind":"import-statement","external":true}],"exports":[],"entryPoint":"src/worker.ts","inputs":{"src/worker.ts":{"bytesInOutput":37}},"bytes":183}}}
@@ -1,7 +1,8 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  ClientProvider
4
- } from "../chunk-ZTD6HPV2.mjs";
4
+ } from "../chunk-WL3Z5HOH.mjs";
5
+ import "../chunk-WUTK2IJF.mjs";
5
6
 
6
7
  // src/testing/index.ts
7
8
  export * from "@dxos/client/testing";
@@ -10,54 +11,48 @@ export * from "@dxos/client/testing";
10
11
  import { createContext, useContext } from "react";
11
12
  import { raise } from "@dxos/debug";
12
13
  var ClientStory = /* @__PURE__ */ createContext(void 0);
13
- var useClientProvider = () => {
14
+ var useClientStory = () => {
14
15
  return useContext(ClientStory) ?? raise(new Error("Missing ClientStory"));
15
16
  };
16
17
 
17
18
  // src/testing/ClientRepeater.tsx
18
- import React, { useState, useEffect, useRef } from "react";
19
+ import React, { useRef, useState } from "react";
19
20
  import { Client } from "@dxos/client";
20
21
  import { TestBuilder, performInvitation } from "@dxos/client/testing";
21
- import { registerSignalsRuntime } from "@dxos/echo-signals/react";
22
- import { faker } from "@dxos/random";
22
+ import { random } from "@dxos/random";
23
+ import { useAsyncEffect } from "@dxos/react-hooks";
23
24
  var ClientRepeater = (props) => {
24
- const { component: Component, controls: Controls, count = 1, types, createIdentity, createSpace, onSpaceCreated } = props;
25
- useEffect(() => {
26
- registerSignalsRuntime();
27
- }, []);
25
+ const { component: Component, controls: Controls, count = 1, types, createIdentity, createSpace, onCreateSpace } = props;
28
26
  const [clients, setClients] = useState(props.clients ?? []);
29
- const [spaceKey, setSpaceKey] = useState();
27
+ const [spaceId, setSpaceId] = useState();
30
28
  const testBuilder = useRef(new TestBuilder());
31
- useEffect(() => {
32
- const timeout = setTimeout(async () => {
33
- const clients2 = [
34
- ...Array(count)
35
- ].map((_) => new Client({
36
- services: testBuilder.current.createLocalClientServices(),
37
- types
38
- }));
39
- await Promise.all(clients2.map((client) => client.initialize()));
40
- if (createIdentity || createSpace) {
41
- await Promise.all(clients2.map((client) => client.halo.createIdentity()));
42
- }
43
- if (createSpace) {
44
- const client = clients2[0];
45
- const space = await client.spaces.create({
46
- name: faker.commerce.productName()
47
- });
48
- setSpaceKey(space.key);
49
- await onSpaceCreated?.({
50
- client,
51
- space
52
- }, {});
53
- await Promise.all(clients2.slice(1).flatMap((client2) => performInvitation({
54
- host: space,
55
- guest: client2.spaces
56
- })));
57
- }
58
- setClients(clients2);
59
- });
60
- return () => clearTimeout(timeout);
29
+ useAsyncEffect(async () => {
30
+ const clients2 = [
31
+ ...Array(count)
32
+ ].map((_) => new Client({
33
+ services: testBuilder.current.createLocalClientServices(),
34
+ types
35
+ }));
36
+ await Promise.all(clients2.map((client) => client.initialize()));
37
+ if (createIdentity || createSpace) {
38
+ await Promise.all(clients2.map((client) => client.halo.createIdentity()));
39
+ }
40
+ if (createSpace) {
41
+ const client = clients2[0];
42
+ const space = await client.spaces.create({
43
+ name: random.commerce.productName()
44
+ });
45
+ setSpaceId(space.id);
46
+ await onCreateSpace?.({
47
+ client,
48
+ space
49
+ }, {});
50
+ await Promise.all(clients2.slice(1).flatMap((client2) => performInvitation({
51
+ host: space,
52
+ guest: client2.spaces
53
+ })));
54
+ }
55
+ setClients(clients2);
61
56
  }, []);
62
57
  if (clients.length === 0) {
63
58
  return null;
@@ -70,26 +65,26 @@ var ClientRepeater = (props) => {
70
65
  }, /* @__PURE__ */ React.createElement(Component, {
71
66
  id: index,
72
67
  count: clients.length,
73
- spaceKey,
68
+ spaceId,
74
69
  ...props.args
75
70
  }))));
76
71
  };
77
72
 
78
73
  // src/testing/withClientProvider.tsx
79
- import React2, { createContext as createContext2, useContext as useContext2, useEffect as useEffect2, useRef as useRef2, useState as useState2 } from "react";
80
- import { ErrorBoundary as NativeErrorBoundary } from "react-error-boundary";
74
+ import React2, { useCallback, useMemo, useRef as useRef2, useState as useState2 } from "react";
81
75
  import { Trigger } from "@dxos/async";
82
- import { performInvitation as performInvitation2, TestBuilder as TestBuilder2 } from "@dxos/client/testing";
76
+ import { TestBuilder as TestBuilder2, performInvitation as performInvitation2 } from "@dxos/client/testing";
83
77
  import { log } from "@dxos/log";
78
+ import { ErrorBoundary } from "@dxos/react-ui";
84
79
  var __dxlog_file = "/__w/dxos/dxos/packages/sdk/react-client/src/testing/withClientProvider.tsx";
85
- var initializeClient = async (client, { createIdentity, createSpace, onSpaceCreated, onIdentityCreated, onInitialized }, context) => {
80
+ var initializeClient = async (client, { createIdentity, createSpace, onCreateIdentity, onCreateSpace, onInitialized }, context) => {
86
81
  await onInitialized?.(client);
87
82
  if (createIdentity || createSpace) {
88
83
  if (!client.halo.identity.get()) {
89
84
  await client.halo.createIdentity();
90
- await onIdentityCreated?.({
85
+ await onCreateIdentity?.({
91
86
  client
92
- });
87
+ }, context);
93
88
  }
94
89
  }
95
90
  let space;
@@ -97,29 +92,33 @@ var initializeClient = async (client, { createIdentity, createSpace, onSpaceCrea
97
92
  space = await client.spaces.create({
98
93
  name: "Test Space"
99
94
  });
100
- await onSpaceCreated?.({
95
+ await space.waitUntilReady();
96
+ await onCreateSpace?.({
101
97
  client,
102
98
  space
103
99
  }, context);
104
100
  }
105
101
  return {
106
- space
102
+ space,
103
+ spaceId: space?.id
107
104
  };
108
105
  };
109
- var withClientProvider = ({ createIdentity, createSpace, onSpaceCreated, onIdentityCreated, onInitialized, ...props } = {}) => {
106
+ var withClientProvider = ({ createIdentity, createSpace, onCreateSpace, onCreateIdentity, onInitialized, ...props } = {}) => {
110
107
  return (Story, context) => {
111
108
  const [data, setData] = useState2({});
112
109
  const handleInitialized = async (client) => {
113
110
  const data2 = await initializeClient(client, {
114
111
  createIdentity,
115
112
  createSpace,
116
- onSpaceCreated,
117
- onIdentityCreated,
113
+ onCreateSpace,
114
+ onCreateIdentity,
118
115
  onInitialized
119
116
  }, context);
120
117
  setData(data2);
121
118
  };
122
- return /* @__PURE__ */ React2.createElement(ErrorBoundary, null, /* @__PURE__ */ React2.createElement(ClientProvider, {
119
+ return /* @__PURE__ */ React2.createElement(ErrorBoundary, {
120
+ name: "client-provider"
121
+ }, /* @__PURE__ */ React2.createElement(ClientProvider, {
123
122
  onInitialized: handleInitialized,
124
123
  ...props
125
124
  }, /* @__PURE__ */ React2.createElement(ClientStory.Provider, {
@@ -127,121 +126,79 @@ var withClientProvider = ({ createIdentity, createSpace, onSpaceCreated, onIdent
127
126
  }, /* @__PURE__ */ React2.createElement(Story, null))));
128
127
  };
129
128
  };
130
- var MultiClientContext = /* @__PURE__ */ createContext2({
131
- id: 0
132
- });
133
- var useMultiClient = () => useContext2(MultiClientContext);
134
- var withMultiClientProvider = ({ numClients = 2, createIdentity, createSpace, onSpaceCreated, onIdentityCreated, onInitialized, ...props }) => {
129
+ var withMultiClientProvider = ({ numClients = 2, createIdentity, createSpace, onCreateSpace, onCreateIdentity, onInitialized, ...props }) => {
135
130
  return (Story, context) => {
136
- const builder = useRef2(new TestBuilder2());
137
- const hostRef = useRef2();
138
131
  const spaceReady = useRef2(new Trigger());
139
- const handleInitialized = async (client, index) => {
140
- log.info("initialized", {
141
- index
142
- }, {
143
- F: __dxlog_file,
144
- L: 129,
145
- S: void 0,
146
- C: (f, a) => f(...a)
132
+ const [spaceId, setSpaceId] = useState2();
133
+ const clients = useMemo(() => {
134
+ const buidler = new TestBuilder2();
135
+ return Array.from({
136
+ length: numClients
137
+ }).map(() => {
138
+ return {
139
+ services: buidler.createLocalClientServices()
140
+ };
147
141
  });
148
- if (createSpace) {
149
- if (!hostRef.current) {
150
- hostRef.current = client;
151
- const { space } = await initializeClient(client, {
152
- createIdentity,
153
- createSpace,
154
- onSpaceCreated,
155
- onIdentityCreated,
156
- onInitialized
157
- }, context);
158
- spaceReady.current.wake(space);
159
- log.info("inviting", {
160
- index
161
- }, {
162
- F: __dxlog_file,
163
- L: 146,
164
- S: void 0,
165
- C: (f, a) => f(...a)
166
- });
167
- } else {
168
- await initializeClient(client, {
169
- createIdentity,
170
- onInitialized
171
- }, context);
172
- const space = await spaceReady.current.wait();
173
- if (space) {
174
- log.info("joining", {
175
- index
176
- }, {
177
- F: __dxlog_file,
178
- L: 151,
179
- S: void 0,
180
- C: (f, a) => f(...a)
181
- });
182
- await Promise.all(performInvitation2({
183
- host: space,
184
- guest: client.spaces
185
- }));
186
- }
142
+ }, [
143
+ numClients
144
+ ]);
145
+ const handleInitialized = useCallback(async (client, index) => {
146
+ if (index === 0) {
147
+ const { space } = await initializeClient(client, {
148
+ createIdentity,
149
+ createSpace,
150
+ onCreateSpace,
151
+ onCreateIdentity,
152
+ onInitialized
153
+ }, context);
154
+ log.info("inviting", {
155
+ index,
156
+ spaceId: space?.id
157
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 95, S: void 0 });
158
+ setSpaceId(space?.id);
159
+ spaceReady.current.wake(space);
160
+ } else {
161
+ await initializeClient(client, {
162
+ createIdentity,
163
+ onInitialized
164
+ }, context);
165
+ log.info("waiting", {
166
+ index
167
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 107, S: void 0 });
168
+ const space = await spaceReady.current.wait();
169
+ if (space) {
170
+ log.info("joining", {
171
+ index,
172
+ spaceId: space.id
173
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 112, S: void 0 });
174
+ await Promise.all(performInvitation2({
175
+ host: space,
176
+ guest: client.spaces
177
+ }));
187
178
  }
188
179
  }
189
- };
190
- return /* @__PURE__ */ React2.createElement(ErrorBoundary, null, Array.from({
191
- length: numClients
192
- }).map((_, index) => /* @__PURE__ */ React2.createElement(MultiClientContext.Provider, {
180
+ }, []);
181
+ return /* @__PURE__ */ React2.createElement("div", {
182
+ className: "absolute inset-0 grid grid-flow-col auto-cols-fr gap-4 overflow-hidden"
183
+ }, clients.map((client, index) => /* @__PURE__ */ React2.createElement(ClientProvider, {
193
184
  key: index,
185
+ services: client.services,
186
+ onInitialized: (client2) => handleInitialized(client2, index),
187
+ ...props
188
+ }, /* @__PURE__ */ React2.createElement(ClientStory.Provider, {
194
189
  value: {
195
- id: index
190
+ index,
191
+ spaceId
196
192
  }
197
- }, /* @__PURE__ */ React2.createElement(ClientProvider, {
198
- services: builder.current.createLocalClientServices(),
199
- onInitialized: (client) => handleInitialized(client, index),
200
- ...props
201
- }, /* @__PURE__ */ React2.createElement(Story, null)))));
202
- };
203
- };
204
- var ErrorBoundary = ({ children }) => {
205
- const [error, setError] = useState2();
206
- useEffect2(() => {
207
- const handleError = (event) => {
208
- setError(event.reason);
209
- };
210
- window.addEventListener("unhandledrejection", handleError);
211
- return () => window.removeEventListener("unhandledrejection", handleError);
212
- }, []);
213
- if (error) {
214
- return /* @__PURE__ */ React2.createElement(ErrorFallback, {
215
- error,
216
- resetErrorBoundary: () => setError(void 0)
217
- });
218
- }
219
- return /* @__PURE__ */ React2.createElement(NativeErrorBoundary, {
220
- FallbackComponent: ErrorFallback
221
- }, children);
222
- };
223
- var ErrorFallback = ({ error }) => {
224
- const { name, message, stack } = error instanceof Error ? error : {
225
- name: "Error",
226
- message: String(error),
227
- stack: void 0
193
+ }, /* @__PURE__ */ React2.createElement(ErrorBoundary, {
194
+ name: "client-provider"
195
+ }, /* @__PURE__ */ React2.createElement(Story, null))))));
228
196
  };
229
- return /* @__PURE__ */ React2.createElement("div", {
230
- role: "alert",
231
- className: "flex flex-col p-4 gap-4 overflow-auto"
232
- }, /* @__PURE__ */ React2.createElement("h1", {
233
- className: "text-xl text-red-500"
234
- }, name), /* @__PURE__ */ React2.createElement("div", {
235
- className: "text-lg"
236
- }, message), stack && /* @__PURE__ */ React2.createElement("pre", {
237
- className: "whitespace-pre-wrap text-sm text-subdued"
238
- }, stack));
239
197
  };
240
198
  export {
241
199
  ClientRepeater,
242
200
  ClientStory,
243
- useClientProvider,
244
- useMultiClient,
201
+ useClientStory,
245
202
  withClientProvider,
246
203
  withMultiClientProvider
247
204
  };