@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
  }
@@ -5,7 +5,7 @@ import {
5
5
  InvitationEncoder,
6
6
  InvitationsProxy,
7
7
  useInvitationStatus
8
- } from "../chunk-O5SEVDJG.mjs";
8
+ } from "../chunk-YHE6WD44.mjs";
9
9
  export {
10
10
  AuthenticatingInvitationObservable,
11
11
  CancellableInvitationObservable,
@@ -1,6 +1,7 @@
1
1
  import {
2
2
  useClient
3
- } from "../chunk-AAR7V3KL.mjs";
3
+ } from "../chunk-3LVU7RNK.mjs";
4
+ import "../chunk-CZMIVAGI.mjs";
4
5
 
5
6
  // src/mesh/index.ts
6
7
  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/browser/devtools/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2291},"dist/lib/browser/devtools/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-AAR7V3KL.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":1126},"dist/lib/browser/echo/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":21460},"dist/lib/browser/echo/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-O5SEVDJG.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-AAR7V3KL.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":8497},"dist/lib/browser/halo/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6987},"dist/lib/browser/halo/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-O5SEVDJG.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-AAR7V3KL.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":2832},"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":344},"dist/lib/browser/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-AAR7V3KL.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":610},"dist/lib/browser/invitations/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/invitations/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-O5SEVDJG.mjs","kind":"import-statement"}],"exports":["AuthenticatingInvitationObservable","CancellableInvitationObservable","Invitation","InvitationEncoder","InvitationsProxy","useInvitationStatus"],"entryPoint":"src/invitations/index.ts","inputs":{},"bytes":388},"dist/lib/browser/chunk-O5SEVDJG.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":11017},"dist/lib/browser/chunk-O5SEVDJG.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":5178},"dist/lib/browser/mesh/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":935},"dist/lib/browser/mesh/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-AAR7V3KL.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":393},"dist/lib/browser/testing/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":18308},"dist/lib/browser/testing/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-AAR7V3KL.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":8151},"dist/lib/browser/chunk-AAR7V3KL.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":19669},"dist/lib/browser/chunk-AAR7V3KL.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":9123},"dist/lib/browser/worker.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":206},"dist/lib/browser/worker.mjs":{"imports":[{"path":"@dxos/client/worker","kind":"import-statement","external":true}],"exports":[],"entryPoint":"src/worker.ts","inputs":{"src/worker.ts":{"bytesInOutput":37}},"bytes":90}}}
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/browser/devtools/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2196},"dist/lib/browser/devtools/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-3LVU7RNK.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-CZMIVAGI.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":1112},"dist/lib/browser/echo/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":14273},"dist/lib/browser/echo/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-YHE6WD44.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-3LVU7RNK.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-CZMIVAGI.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":5580},"dist/lib/browser/halo/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6965},"dist/lib/browser/halo/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-YHE6WD44.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-3LVU7RNK.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-CZMIVAGI.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":2873},"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7138},"dist/lib/browser/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-3LVU7RNK.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-XT352YI6.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-CZMIVAGI.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":3629},"dist/lib/browser/invitations/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"dist/lib/browser/invitations/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-YHE6WD44.mjs","kind":"import-statement"}],"exports":["AuthenticatingInvitationObservable","CancellableInvitationObservable","Invitation","InvitationEncoder","InvitationsProxy","useInvitationStatus"],"entryPoint":"src/invitations/index.ts","inputs":{},"bytes":388},"dist/lib/browser/chunk-YHE6WD44.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10410},"dist/lib/browser/chunk-YHE6WD44.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":5128},"dist/lib/browser/mesh/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":936},"dist/lib/browser/mesh/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-3LVU7RNK.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-CZMIVAGI.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":425},"dist/lib/browser/chunk-3LVU7RNK.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":807},"dist/lib/browser/chunk-3LVU7RNK.mjs":{"imports":[{"path":"dist/lib/browser/chunk-CZMIVAGI.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":364},"dist/lib/browser/testing/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":15608},"dist/lib/browser/testing/index.mjs":{"imports":[{"path":"dist/lib/browser/chunk-XT352YI6.mjs","kind":"import-statement"},{"path":"dist/lib/browser/chunk-CZMIVAGI.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":6763},"dist/lib/browser/chunk-XT352YI6.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":9977},"dist/lib/browser/chunk-XT352YI6.mjs":{"imports":[{"path":"dist/lib/browser/chunk-CZMIVAGI.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":4546},"dist/lib/browser/chunk-CZMIVAGI.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":694},"dist/lib/browser/chunk-CZMIVAGI.mjs":{"imports":[{"path":"react","kind":"import-statement","external":true}],"exports":["ClientContext"],"inputs":{"src/client/context.ts":{"bytesInOutput":82}},"bytes":180},"dist/lib/browser/worker.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":206},"dist/lib/browser/worker.mjs":{"imports":[{"path":"@dxos/client/worker","kind":"import-statement","external":true}],"exports":[],"entryPoint":"src/worker.ts","inputs":{"src/worker.ts":{"bytesInOutput":37}},"bytes":90}}}
@@ -1,6 +1,7 @@
1
1
  import {
2
2
  ClientProvider
3
- } from "../chunk-AAR7V3KL.mjs";
3
+ } from "../chunk-XT352YI6.mjs";
4
+ import "../chunk-CZMIVAGI.mjs";
4
5
 
5
6
  // src/testing/index.ts
6
7
  export * from "@dxos/client/testing";
@@ -9,54 +10,48 @@ export * from "@dxos/client/testing";
9
10
  import { createContext, useContext } from "react";
10
11
  import { raise } from "@dxos/debug";
11
12
  var ClientStory = /* @__PURE__ */ createContext(void 0);
12
- var useClientProvider = () => {
13
+ var useClientStory = () => {
13
14
  return useContext(ClientStory) ?? raise(new Error("Missing ClientStory"));
14
15
  };
15
16
 
16
17
  // src/testing/ClientRepeater.tsx
17
- import React, { useState, useEffect, useRef } from "react";
18
+ import React, { useRef, useState } from "react";
18
19
  import { Client } from "@dxos/client";
19
20
  import { TestBuilder, performInvitation } from "@dxos/client/testing";
20
- import { registerSignalsRuntime } from "@dxos/echo-signals/react";
21
- import { faker } from "@dxos/random";
21
+ import { random } from "@dxos/random";
22
+ import { useAsyncEffect } from "@dxos/react-hooks";
22
23
  var ClientRepeater = (props) => {
23
- const { component: Component, controls: Controls, count = 1, types, createIdentity, createSpace, onSpaceCreated } = props;
24
- useEffect(() => {
25
- registerSignalsRuntime();
26
- }, []);
24
+ const { component: Component, controls: Controls, count = 1, types, createIdentity, createSpace, onCreateSpace } = props;
27
25
  const [clients, setClients] = useState(props.clients ?? []);
28
- const [spaceKey, setSpaceKey] = useState();
26
+ const [spaceId, setSpaceId] = useState();
29
27
  const testBuilder = useRef(new TestBuilder());
30
- useEffect(() => {
31
- const timeout = setTimeout(async () => {
32
- const clients2 = [
33
- ...Array(count)
34
- ].map((_) => new Client({
35
- services: testBuilder.current.createLocalClientServices(),
36
- types
37
- }));
38
- await Promise.all(clients2.map((client) => client.initialize()));
39
- if (createIdentity || createSpace) {
40
- await Promise.all(clients2.map((client) => client.halo.createIdentity()));
41
- }
42
- if (createSpace) {
43
- const client = clients2[0];
44
- const space = await client.spaces.create({
45
- name: faker.commerce.productName()
46
- });
47
- setSpaceKey(space.key);
48
- await onSpaceCreated?.({
49
- client,
50
- space
51
- }, {});
52
- await Promise.all(clients2.slice(1).flatMap((client2) => performInvitation({
53
- host: space,
54
- guest: client2.spaces
55
- })));
56
- }
57
- setClients(clients2);
58
- });
59
- return () => clearTimeout(timeout);
28
+ useAsyncEffect(async () => {
29
+ const clients2 = [
30
+ ...Array(count)
31
+ ].map((_) => new Client({
32
+ services: testBuilder.current.createLocalClientServices(),
33
+ types
34
+ }));
35
+ await Promise.all(clients2.map((client) => client.initialize()));
36
+ if (createIdentity || createSpace) {
37
+ await Promise.all(clients2.map((client) => client.halo.createIdentity()));
38
+ }
39
+ if (createSpace) {
40
+ const client = clients2[0];
41
+ const space = await client.spaces.create({
42
+ name: random.commerce.productName()
43
+ });
44
+ setSpaceId(space.id);
45
+ await onCreateSpace?.({
46
+ client,
47
+ space
48
+ }, {});
49
+ await Promise.all(clients2.slice(1).flatMap((client2) => performInvitation({
50
+ host: space,
51
+ guest: client2.spaces
52
+ })));
53
+ }
54
+ setClients(clients2);
60
55
  }, []);
61
56
  if (clients.length === 0) {
62
57
  return null;
@@ -69,26 +64,26 @@ var ClientRepeater = (props) => {
69
64
  }, /* @__PURE__ */ React.createElement(Component, {
70
65
  id: index,
71
66
  count: clients.length,
72
- spaceKey,
67
+ spaceId,
73
68
  ...props.args
74
69
  }))));
75
70
  };
76
71
 
77
72
  // src/testing/withClientProvider.tsx
78
- import React2, { createContext as createContext2, useContext as useContext2, useEffect as useEffect2, useRef as useRef2, useState as useState2 } from "react";
79
- import { ErrorBoundary as NativeErrorBoundary } from "react-error-boundary";
73
+ import React2, { useCallback, useMemo, useRef as useRef2, useState as useState2 } from "react";
80
74
  import { Trigger } from "@dxos/async";
81
- import { performInvitation as performInvitation2, TestBuilder as TestBuilder2 } from "@dxos/client/testing";
75
+ import { TestBuilder as TestBuilder2, performInvitation as performInvitation2 } from "@dxos/client/testing";
82
76
  import { log } from "@dxos/log";
77
+ import { ErrorBoundary } from "@dxos/react-ui";
83
78
  var __dxlog_file = "/__w/dxos/dxos/packages/sdk/react-client/src/testing/withClientProvider.tsx";
84
- var initializeClient = async (client, { createIdentity, createSpace, onSpaceCreated, onIdentityCreated, onInitialized }, context) => {
79
+ var initializeClient = async (client, { createIdentity, createSpace, onCreateIdentity, onCreateSpace, onInitialized }, context) => {
85
80
  await onInitialized?.(client);
86
81
  if (createIdentity || createSpace) {
87
82
  if (!client.halo.identity.get()) {
88
83
  await client.halo.createIdentity();
89
- await onIdentityCreated?.({
84
+ await onCreateIdentity?.({
90
85
  client
91
- });
86
+ }, context);
92
87
  }
93
88
  }
94
89
  let space;
@@ -96,29 +91,33 @@ var initializeClient = async (client, { createIdentity, createSpace, onSpaceCrea
96
91
  space = await client.spaces.create({
97
92
  name: "Test Space"
98
93
  });
99
- await onSpaceCreated?.({
94
+ await space.waitUntilReady();
95
+ await onCreateSpace?.({
100
96
  client,
101
97
  space
102
98
  }, context);
103
99
  }
104
100
  return {
105
- space
101
+ space,
102
+ spaceId: space?.id
106
103
  };
107
104
  };
108
- var withClientProvider = ({ createIdentity, createSpace, onSpaceCreated, onIdentityCreated, onInitialized, ...props } = {}) => {
105
+ var withClientProvider = ({ createIdentity, createSpace, onCreateSpace, onCreateIdentity, onInitialized, ...props } = {}) => {
109
106
  return (Story, context) => {
110
107
  const [data, setData] = useState2({});
111
108
  const handleInitialized = async (client) => {
112
109
  const data2 = await initializeClient(client, {
113
110
  createIdentity,
114
111
  createSpace,
115
- onSpaceCreated,
116
- onIdentityCreated,
112
+ onCreateSpace,
113
+ onCreateIdentity,
117
114
  onInitialized
118
115
  }, context);
119
116
  setData(data2);
120
117
  };
121
- return /* @__PURE__ */ React2.createElement(ErrorBoundary, null, /* @__PURE__ */ React2.createElement(ClientProvider, {
118
+ return /* @__PURE__ */ React2.createElement(ErrorBoundary, {
119
+ name: "client-provider"
120
+ }, /* @__PURE__ */ React2.createElement(ClientProvider, {
122
121
  onInitialized: handleInitialized,
123
122
  ...props
124
123
  }, /* @__PURE__ */ React2.createElement(ClientStory.Provider, {
@@ -126,121 +125,79 @@ var withClientProvider = ({ createIdentity, createSpace, onSpaceCreated, onIdent
126
125
  }, /* @__PURE__ */ React2.createElement(Story, null))));
127
126
  };
128
127
  };
129
- var MultiClientContext = /* @__PURE__ */ createContext2({
130
- id: 0
131
- });
132
- var useMultiClient = () => useContext2(MultiClientContext);
133
- var withMultiClientProvider = ({ numClients = 2, createIdentity, createSpace, onSpaceCreated, onIdentityCreated, onInitialized, ...props }) => {
128
+ var withMultiClientProvider = ({ numClients = 2, createIdentity, createSpace, onCreateSpace, onCreateIdentity, onInitialized, ...props }) => {
134
129
  return (Story, context) => {
135
- const builder = useRef2(new TestBuilder2());
136
- const hostRef = useRef2();
137
130
  const spaceReady = useRef2(new Trigger());
138
- const handleInitialized = async (client, index) => {
139
- log.info("initialized", {
140
- index
141
- }, {
142
- F: __dxlog_file,
143
- L: 129,
144
- S: void 0,
145
- C: (f, a) => f(...a)
131
+ const [spaceId, setSpaceId] = useState2();
132
+ const clients = useMemo(() => {
133
+ const buidler = new TestBuilder2();
134
+ return Array.from({
135
+ length: numClients
136
+ }).map(() => {
137
+ return {
138
+ services: buidler.createLocalClientServices()
139
+ };
146
140
  });
147
- if (createSpace) {
148
- if (!hostRef.current) {
149
- hostRef.current = client;
150
- const { space } = await initializeClient(client, {
151
- createIdentity,
152
- createSpace,
153
- onSpaceCreated,
154
- onIdentityCreated,
155
- onInitialized
156
- }, context);
157
- spaceReady.current.wake(space);
158
- log.info("inviting", {
159
- index
160
- }, {
161
- F: __dxlog_file,
162
- L: 146,
163
- S: void 0,
164
- C: (f, a) => f(...a)
165
- });
166
- } else {
167
- await initializeClient(client, {
168
- createIdentity,
169
- onInitialized
170
- }, context);
171
- const space = await spaceReady.current.wait();
172
- if (space) {
173
- log.info("joining", {
174
- index
175
- }, {
176
- F: __dxlog_file,
177
- L: 151,
178
- S: void 0,
179
- C: (f, a) => f(...a)
180
- });
181
- await Promise.all(performInvitation2({
182
- host: space,
183
- guest: client.spaces
184
- }));
185
- }
141
+ }, [
142
+ numClients
143
+ ]);
144
+ const handleInitialized = useCallback(async (client, index) => {
145
+ if (index === 0) {
146
+ const { space } = await initializeClient(client, {
147
+ createIdentity,
148
+ createSpace,
149
+ onCreateSpace,
150
+ onCreateIdentity,
151
+ onInitialized
152
+ }, context);
153
+ log.info("inviting", {
154
+ index,
155
+ spaceId: space?.id
156
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 95, S: void 0 });
157
+ setSpaceId(space?.id);
158
+ spaceReady.current.wake(space);
159
+ } else {
160
+ await initializeClient(client, {
161
+ createIdentity,
162
+ onInitialized
163
+ }, context);
164
+ log.info("waiting", {
165
+ index
166
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 107, S: void 0 });
167
+ const space = await spaceReady.current.wait();
168
+ if (space) {
169
+ log.info("joining", {
170
+ index,
171
+ spaceId: space.id
172
+ }, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 112, S: void 0 });
173
+ await Promise.all(performInvitation2({
174
+ host: space,
175
+ guest: client.spaces
176
+ }));
186
177
  }
187
178
  }
188
- };
189
- return /* @__PURE__ */ React2.createElement(ErrorBoundary, null, Array.from({
190
- length: numClients
191
- }).map((_, index) => /* @__PURE__ */ React2.createElement(MultiClientContext.Provider, {
179
+ }, []);
180
+ return /* @__PURE__ */ React2.createElement("div", {
181
+ className: "absolute inset-0 grid grid-flow-col auto-cols-fr gap-4 overflow-hidden"
182
+ }, clients.map((client, index) => /* @__PURE__ */ React2.createElement(ClientProvider, {
192
183
  key: index,
184
+ services: client.services,
185
+ onInitialized: (client2) => handleInitialized(client2, index),
186
+ ...props
187
+ }, /* @__PURE__ */ React2.createElement(ClientStory.Provider, {
193
188
  value: {
194
- id: index
189
+ index,
190
+ spaceId
195
191
  }
196
- }, /* @__PURE__ */ React2.createElement(ClientProvider, {
197
- services: builder.current.createLocalClientServices(),
198
- onInitialized: (client) => handleInitialized(client, index),
199
- ...props
200
- }, /* @__PURE__ */ React2.createElement(Story, null)))));
201
- };
202
- };
203
- var ErrorBoundary = ({ children }) => {
204
- const [error, setError] = useState2();
205
- useEffect2(() => {
206
- const handleError = (event) => {
207
- setError(event.reason);
208
- };
209
- window.addEventListener("unhandledrejection", handleError);
210
- return () => window.removeEventListener("unhandledrejection", handleError);
211
- }, []);
212
- if (error) {
213
- return /* @__PURE__ */ React2.createElement(ErrorFallback, {
214
- error,
215
- resetErrorBoundary: () => setError(void 0)
216
- });
217
- }
218
- return /* @__PURE__ */ React2.createElement(NativeErrorBoundary, {
219
- FallbackComponent: ErrorFallback
220
- }, children);
221
- };
222
- var ErrorFallback = ({ error }) => {
223
- const { name, message, stack } = error instanceof Error ? error : {
224
- name: "Error",
225
- message: String(error),
226
- stack: void 0
192
+ }, /* @__PURE__ */ React2.createElement(ErrorBoundary, {
193
+ name: "client-provider"
194
+ }, /* @__PURE__ */ React2.createElement(Story, null))))));
227
195
  };
228
- return /* @__PURE__ */ React2.createElement("div", {
229
- role: "alert",
230
- className: "flex flex-col p-4 gap-4 overflow-auto"
231
- }, /* @__PURE__ */ React2.createElement("h1", {
232
- className: "text-xl text-red-500"
233
- }, name), /* @__PURE__ */ React2.createElement("div", {
234
- className: "text-lg"
235
- }, message), stack && /* @__PURE__ */ React2.createElement("pre", {
236
- className: "whitespace-pre-wrap text-sm text-subdued"
237
- }, stack));
238
196
  };
239
197
  export {
240
198
  ClientRepeater,
241
199
  ClientStory,
242
- useClientProvider,
243
- useMultiClient,
200
+ useClientStory,
244
201
  withClientProvider,
245
202
  withMultiClientProvider
246
203
  };