@dxos/react-client 0.4.9 → 0.4.10-main.068c3d8

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 (38) hide show
  1. package/dist/lib/browser/{chunk-Y64VSVTU.mjs → chunk-BQ4BAP42.mjs} +4 -3
  2. package/dist/lib/browser/chunk-BQ4BAP42.mjs.map +7 -0
  3. package/dist/lib/browser/echo/index.mjs +3 -4
  4. package/dist/lib/browser/echo/index.mjs.map +3 -3
  5. package/dist/lib/browser/halo/index.mjs +2 -3
  6. package/dist/lib/browser/halo/index.mjs.map +3 -3
  7. package/dist/lib/browser/invitations/index.mjs +1 -1
  8. package/dist/lib/browser/meta.json +1 -1
  9. package/dist/lib/browser/testing/index.mjs +2 -2
  10. package/dist/lib/browser/testing/index.mjs.map +3 -3
  11. package/dist/lib/node/{chunk-PNDYOCJA.cjs → chunk-X5URYLUS.cjs} +7 -6
  12. package/dist/lib/node/chunk-X5URYLUS.cjs.map +7 -0
  13. package/dist/lib/node/echo/index.cjs +6 -7
  14. package/dist/lib/node/echo/index.cjs.map +3 -3
  15. package/dist/lib/node/halo/index.cjs +2 -4
  16. package/dist/lib/node/halo/index.cjs.map +2 -2
  17. package/dist/lib/node/invitations/index.cjs +7 -7
  18. package/dist/lib/node/invitations/index.cjs.map +1 -1
  19. package/dist/lib/node/meta.json +1 -1
  20. package/dist/lib/node/testing/index.cjs +2 -2
  21. package/dist/lib/node/testing/index.cjs.map +3 -3
  22. package/dist/types/src/echo/useQuery.d.ts +2 -2
  23. package/dist/types/src/echo/useQuery.d.ts.map +1 -1
  24. package/dist/types/src/echo/useSpaceInvitations.d.ts.map +1 -1
  25. package/dist/types/src/halo/index.d.ts +1 -1
  26. package/dist/types/src/halo/index.d.ts.map +1 -1
  27. package/dist/types/src/invitations/useInvitationStatus.d.ts +1 -0
  28. package/dist/types/src/invitations/useInvitationStatus.d.ts.map +1 -1
  29. package/dist/types/src/testing/ClientRepeater.d.ts +3 -3
  30. package/dist/types/src/testing/ClientRepeater.d.ts.map +1 -1
  31. package/package.json +17 -17
  32. package/src/echo/useQuery.ts +13 -4
  33. package/src/echo/useSpaceInvitations.ts +1 -2
  34. package/src/halo/index.ts +1 -10
  35. package/src/invitations/useInvitationStatus.ts +3 -0
  36. package/src/testing/ClientRepeater.tsx +6 -8
  37. package/dist/lib/browser/chunk-Y64VSVTU.mjs.map +0 -7
  38. package/dist/lib/node/chunk-PNDYOCJA.cjs.map +0 -7
@@ -28,7 +28,7 @@ __export(echo_exports, {
28
28
  useSubscription: () => useSubscription
29
29
  });
30
30
  module.exports = __toCommonJS(echo_exports);
31
- var import_chunk_PNDYOCJA = require("../chunk-PNDYOCJA.cjs");
31
+ var import_chunk_X5URYLUS = require("../chunk-X5URYLUS.cjs");
32
32
  var import_chunk_IRRRZ2KE = require("../chunk-IRRRZ2KE.cjs");
33
33
  __reExport(echo_exports, require("@dxos/client/echo"), module.exports);
34
34
  var import_async = require("@dxos/async");
@@ -39,9 +39,8 @@ var import_echo2 = require("@dxos/client/echo");
39
39
  var import_react_async2 = require("@dxos/react-async");
40
40
  var import_react2 = require("react");
41
41
  var import_react3 = require("react");
42
- var import_echo3 = require("@dxos/client/echo");
43
42
  var import_react4 = require("react");
44
- var import_echo4 = require("@dxos/client/echo");
43
+ var import_echo3 = require("@dxos/client/echo");
45
44
  var useSpace = (spaceKey) => {
46
45
  const client = (0, import_chunk_IRRRZ2KE.useClient)();
47
46
  const spaces = (0, import_react_async2.useMulticastObservable)(client.spaces);
@@ -87,11 +86,11 @@ var useQuery = (space, filter, options, deps) => {
87
86
  ]);
88
87
  return (0, import_react2.useSyncExternalStore)((cb) => query?.subscribe?.(cb) ?? cb, () => query?.objects) ?? [];
89
88
  };
90
- var filterToDepsArray = (filter) => Object.entries(filter ?? {}).flat();
89
+ var filterToDepsArray = (filter) => Object.entries(filter ?? {}).flat(10).map((x) => typeof x === "function" || typeof x === "object" ? null : x);
91
90
  var useSpaceInvitations = (spaceKey) => {
92
91
  const space = useSpace(spaceKey);
93
92
  const invitations = (0, import_react3.useSyncExternalStore)((listener) => {
94
- if (!(space instanceof import_echo3.SpaceProxy)) {
93
+ if (!space) {
95
94
  return () => {
96
95
  };
97
96
  }
@@ -105,14 +104,14 @@ var useSpaceInvitation = (spaceKey, invitationId) => {
105
104
  const invitation = (0, import_react3.useMemo)(() => invitations.find((invitation2) => invitation2.get().invitationId === invitationId), [
106
105
  invitations
107
106
  ]);
108
- return (0, import_chunk_PNDYOCJA.useInvitationStatus)(invitation);
107
+ return (0, import_chunk_X5URYLUS.useInvitationStatus)(invitation);
109
108
  };
110
109
  var useSubscription = (cb, selection) => {
111
110
  const callbackRef = (0, import_react4.useRef)(cb);
112
111
  callbackRef.current = cb;
113
112
  const subscriptionRef = (0, import_react4.useRef)();
114
113
  (0, import_react4.useEffect)(() => {
115
- subscriptionRef.current = (0, import_echo4.createSubscription)(() => {
114
+ subscriptionRef.current = (0, import_echo3.createSubscription)(() => {
116
115
  callbackRef.current();
117
116
  });
118
117
  return () => subscriptionRef.current?.unsubscribe();
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/echo/index.ts", "../../../../src/echo/useMembers.ts", "../../../../src/echo/useSpaces.ts", "../../../../src/echo/useQuery.ts", "../../../../src/echo/useSpaceInvitations.ts", "../../../../src/echo/useSubscription.ts"],
4
- "sourcesContent": ["//\n// Copyright 2020 DXOS.org\n//\n\nexport * from '@dxos/client/echo';\n\nexport * from './useMembers';\nexport * from './useQuery';\nexport * from './useSpaces';\nexport * from './useSpaceInvitations';\nexport * from './useSubscription';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { MulticastObservable } from '@dxos/async';\nimport { type PublicKey } from '@dxos/client';\nimport { SpaceMember } from '@dxos/client/echo';\nimport { useMulticastObservable } from '@dxos/react-async';\n\nimport { useSpaces } from './useSpaces';\n\nexport const useMembers = (spaceKey: PublicKey | undefined): SpaceMember[] => {\n // TODO(dmaretskyi): useSpace hook for spaces that are not ready.\n const spaces = useSpaces({ all: true });\n const space = spaceKey ? spaces.find((space) => space.key.equals(spaceKey)) : undefined;\n\n // EMPTY_OBSERVABLE needs to be a stable reference to avoid re-subscribing on every render.\n const members = useMulticastObservable(space?.members ?? MulticastObservable.empty()) ?? [];\n return members.filter((member) => member.presence !== SpaceMember.PresenceState.REMOVED);\n};\n", "//\n// Copyright 2020 DXOS.org\n//\n\nimport { useEffect, useState } from 'react';\n\nimport { type PublicKeyLike } from '@dxos/client';\nimport { type Space, SpaceState } from '@dxos/client/echo';\nimport { useMulticastObservable } from '@dxos/react-async';\n\nimport { useClient } from '../client';\n\n/**\n * Get a specific Space using its key.\n * The space is not guaranteed to be in the ready state.\n * Returns the default space if no key is provided.\n * Requires a ClientProvider somewhere in the parent tree.\n *\n * @param spaceKey the key of the space to look for\n */\nexport const useSpace = (spaceKey?: PublicKeyLike): Space | undefined => {\n const client = useClient();\n const spaces = useMulticastObservable<Space[]>(client.spaces);\n const [ready, setReady] = useState(false);\n\n useEffect(() => {\n // Only wait for ready if looking for the default space.\n if (spaceKey) {\n return;\n }\n\n const timeout = setTimeout(async () => {\n await client.spaces.isReady.wait();\n setReady(true);\n });\n\n return () => clearTimeout(timeout);\n }, [client, spaceKey]);\n\n if (spaceKey) {\n return spaces.find((space) => space.key.equals(spaceKey));\n }\n\n if (ready && client.halo.identity.get()) {\n return client.spaces.default;\n }\n};\n\nexport type UseSpacesParams = {\n /**\n * Return uninitialized spaces as well.\n */\n all?: boolean;\n};\n\n/**\n * Get all Spaces available to current user.\n * Requires a ClientProvider somewhere in the parent tree.\n * By default, only ready spaces are returned.\n * @returns an array of Spaces\n */\nexport const useSpaces = ({ all = false }: UseSpacesParams = {}): Space[] => {\n const client = useClient();\n const spaces = useMulticastObservable<Space[]>(client.spaces);\n\n // TODO(dmaretskyi): Array reference equality.\n return spaces.filter((space) => all || space.state.get() === SpaceState.READY);\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { useMemo, useSyncExternalStore } from 'react';\n\nimport type { QueryOptions, TypedObject, Query, FilterSource, Space } from '@dxos/client/echo';\n\ntype UseQuery = {\n <T extends TypedObject>(space?: Space, filter?: FilterSource<T>, options?: QueryOptions, deps?: any[]): T[];\n};\n\n/**\n * Create subscription.\n */\n// TODO(burdon): Support typed operator filters (e.g., Note.filter(note => ...)).\nexport const useQuery: UseQuery = <T extends TypedObject>(\n space?: Space,\n filter?: FilterSource<T>,\n options?: QueryOptions,\n deps?: any[],\n) => {\n const query = useMemo(\n () => space?.db.query(filter, options) as Query<T> | undefined,\n [space?.db, ...(typeof filter === 'function' ? [] : filterToDepsArray(filter)), ...(deps ?? [])],\n );\n\n // https://beta.reactjs.org/reference/react/useSyncExternalStore\n return (\n useSyncExternalStore<T[] | undefined>(\n (cb) => query?.subscribe?.(cb) ?? cb,\n () => query?.objects,\n ) ?? []\n );\n};\n\nconst filterToDepsArray = (filter?: FilterSource<any>) => Object.entries(filter ?? {}).flat();\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { useMemo, useSyncExternalStore } from 'react';\n\nimport { type PublicKey } from '@dxos/client';\nimport { SpaceProxy } from '@dxos/client/echo';\n\nimport { useSpace } from './useSpaces';\nimport { useInvitationStatus } from '../invitations';\n\nexport const useSpaceInvitations = (spaceKey?: PublicKey) => {\n const space = useSpace(spaceKey);\n const invitations =\n useSyncExternalStore(\n (listener) => {\n if (!(space instanceof SpaceProxy)) {\n return () => {};\n }\n\n const subscription = space.invitations.subscribe(() => listener());\n return () => subscription.unsubscribe();\n },\n () => space?.invitations.get(),\n ) ?? [];\n\n return invitations;\n};\n\nexport const useSpaceInvitation = (spaceKey?: PublicKey, invitationId?: string) => {\n const invitations = useSpaceInvitations(spaceKey);\n const invitation = useMemo(\n () => invitations.find((invitation) => invitation.get().invitationId === invitationId),\n [invitations],\n );\n return useInvitationStatus(invitation);\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { useEffect, useRef } from 'react';\n\nimport { type Selection, type SubscriptionHandle, createSubscription } from '@dxos/client/echo';\n\n/**\n * Create reactive selection.\n * Calls the callback when the selection changes and during the first render.\n */\n// TODO(wittjosiah): Is this still needed with signals reactivity? If not, remove or update jsdoc with usage info.\nexport const useSubscription = (cb: () => void, selection: Selection) => {\n // Make sure that the callback is always the one from the latest render.\n // Without this, we would always call the callback from the initial render,\n // which might contain stale data.\n const callbackRef = useRef(cb);\n callbackRef.current = cb;\n\n const subscriptionRef = useRef<SubscriptionHandle>();\n\n useEffect(() => {\n subscriptionRef.current = createSubscription(() => {\n callbackRef.current();\n });\n\n return () => subscriptionRef.current?.unsubscribe();\n }, []);\n\n subscriptionRef.current?.update(selection);\n return subscriptionRef.current;\n};\n"],
5
- "mappings": "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",
6
- "names": ["import_echo", "import_react_async", "import_react", "useSpace", "spaceKey", "client", "useClient", "spaces", "useMulticastObservable", "ready", "setReady", "useState", "useEffect", "timeout", "setTimeout", "isReady", "wait", "clearTimeout", "find", "space", "key", "equals", "halo", "identity", "get", "default", "useSpaces", "all", "filter", "state", "SpaceState", "READY", "useMembers", "undefined", "members", "MulticastObservable", "empty", "member", "presence", "SpaceMember", "PresenceState", "REMOVED", "useQuery", "options", "deps", "query", "useMemo", "db", "filterToDepsArray", "useSyncExternalStore", "cb", "subscribe", "objects", "Object", "entries", "flat", "useSpaceInvitations", "invitations", "listener", "SpaceProxy", "subscription", "unsubscribe", "useSpaceInvitation", "invitationId", "invitation", "useInvitationStatus", "useSubscription", "selection", "callbackRef", "useRef", "current", "subscriptionRef", "createSubscription", "update"]
4
+ "sourcesContent": ["//\n// Copyright 2020 DXOS.org\n//\n\nexport * from '@dxos/client/echo';\n\nexport * from './useMembers';\nexport * from './useQuery';\nexport * from './useSpaces';\nexport * from './useSpaceInvitations';\nexport * from './useSubscription';\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { MulticastObservable } from '@dxos/async';\nimport { type PublicKey } from '@dxos/client';\nimport { SpaceMember } from '@dxos/client/echo';\nimport { useMulticastObservable } from '@dxos/react-async';\n\nimport { useSpaces } from './useSpaces';\n\nexport const useMembers = (spaceKey: PublicKey | undefined): SpaceMember[] => {\n // TODO(dmaretskyi): useSpace hook for spaces that are not ready.\n const spaces = useSpaces({ all: true });\n const space = spaceKey ? spaces.find((space) => space.key.equals(spaceKey)) : undefined;\n\n // EMPTY_OBSERVABLE needs to be a stable reference to avoid re-subscribing on every render.\n const members = useMulticastObservable(space?.members ?? MulticastObservable.empty()) ?? [];\n return members.filter((member) => member.presence !== SpaceMember.PresenceState.REMOVED);\n};\n", "//\n// Copyright 2020 DXOS.org\n//\n\nimport { useEffect, useState } from 'react';\n\nimport { type PublicKeyLike } from '@dxos/client';\nimport { type Space, SpaceState } from '@dxos/client/echo';\nimport { useMulticastObservable } from '@dxos/react-async';\n\nimport { useClient } from '../client';\n\n/**\n * Get a specific Space using its key.\n * The space is not guaranteed to be in the ready state.\n * Returns the default space if no key is provided.\n * Requires a ClientProvider somewhere in the parent tree.\n *\n * @param spaceKey the key of the space to look for\n */\nexport const useSpace = (spaceKey?: PublicKeyLike): Space | undefined => {\n const client = useClient();\n const spaces = useMulticastObservable<Space[]>(client.spaces);\n const [ready, setReady] = useState(false);\n\n useEffect(() => {\n // Only wait for ready if looking for the default space.\n if (spaceKey) {\n return;\n }\n\n const timeout = setTimeout(async () => {\n await client.spaces.isReady.wait();\n setReady(true);\n });\n\n return () => clearTimeout(timeout);\n }, [client, spaceKey]);\n\n if (spaceKey) {\n return spaces.find((space) => space.key.equals(spaceKey));\n }\n\n if (ready && client.halo.identity.get()) {\n return client.spaces.default;\n }\n};\n\nexport type UseSpacesParams = {\n /**\n * Return uninitialized spaces as well.\n */\n all?: boolean;\n};\n\n/**\n * Get all Spaces available to current user.\n * Requires a ClientProvider somewhere in the parent tree.\n * By default, only ready spaces are returned.\n * @returns an array of Spaces\n */\nexport const useSpaces = ({ all = false }: UseSpacesParams = {}): Space[] => {\n const client = useClient();\n const spaces = useMulticastObservable<Space[]>(client.spaces);\n\n // TODO(dmaretskyi): Array reference equality.\n return spaces.filter((space) => all || space.state.get() === SpaceState.READY);\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { useMemo, useSyncExternalStore } from 'react';\n\nimport type { QueryOptions, Query, FilterSource, Space, EchoReactiveObject } from '@dxos/client/echo';\n\ntype UseQuery = {\n <T extends EchoReactiveObject<any>>(\n space?: Space,\n filter?: FilterSource<T>,\n options?: QueryOptions,\n deps?: any[],\n ): T[];\n};\n\n/**\n * Create subscription.\n */\n// TODO(burdon): Support typed operator filters (e.g., Note.filter(note => ...)).\nexport const useQuery: UseQuery = <T extends EchoReactiveObject<any>>(\n space?: Space,\n filter?: FilterSource<T>,\n options?: QueryOptions,\n deps?: any[],\n) => {\n const query = useMemo(\n () => space?.db.query(filter, options) as Query<T> | undefined,\n [space?.db, ...(typeof filter === 'function' ? [] : filterToDepsArray(filter)), ...(deps ?? [])],\n );\n\n // https://beta.reactjs.org/reference/react/useSyncExternalStore\n return (\n useSyncExternalStore<T[] | undefined>(\n (cb) => query?.subscribe?.(cb) ?? cb,\n () => query?.objects,\n ) ?? []\n );\n};\n\n// TODO(dmaretskyi): Serialize the filter here instead.\nconst filterToDepsArray = (filter?: FilterSource<any>) =>\n Object.entries(filter ?? {})\n .flat(10)\n .map((x) => (typeof x === 'function' || typeof x === 'object' ? null : x));\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { useMemo, useSyncExternalStore } from 'react';\n\nimport { type PublicKey } from '@dxos/client';\n\nimport { useSpace } from './useSpaces';\nimport { useInvitationStatus } from '../invitations';\n\nexport const useSpaceInvitations = (spaceKey?: PublicKey) => {\n const space = useSpace(spaceKey);\n const invitations =\n useSyncExternalStore(\n (listener) => {\n if (!space) {\n return () => {};\n }\n\n const subscription = space.invitations.subscribe(() => listener());\n return () => subscription.unsubscribe();\n },\n () => space?.invitations.get(),\n ) ?? [];\n\n return invitations;\n};\n\nexport const useSpaceInvitation = (spaceKey?: PublicKey, invitationId?: string) => {\n const invitations = useSpaceInvitations(spaceKey);\n const invitation = useMemo(\n () => invitations.find((invitation) => invitation.get().invitationId === invitationId),\n [invitations],\n );\n return useInvitationStatus(invitation);\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { useEffect, useRef } from 'react';\n\nimport { type Selection, type SubscriptionHandle, createSubscription } from '@dxos/client/echo';\n\n/**\n * Create reactive selection.\n * Calls the callback when the selection changes and during the first render.\n */\n// TODO(wittjosiah): Is this still needed with signals reactivity? If not, remove or update jsdoc with usage info.\nexport const useSubscription = (cb: () => void, selection: Selection) => {\n // Make sure that the callback is always the one from the latest render.\n // Without this, we would always call the callback from the initial render,\n // which might contain stale data.\n const callbackRef = useRef(cb);\n callbackRef.current = cb;\n\n const subscriptionRef = useRef<SubscriptionHandle>();\n\n useEffect(() => {\n subscriptionRef.current = createSubscription(() => {\n callbackRef.current();\n });\n\n return () => subscriptionRef.current?.unsubscribe();\n }, []);\n\n subscriptionRef.current?.update(selection);\n return subscriptionRef.current;\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["import_echo", "import_react_async", "import_react", "useSpace", "spaceKey", "client", "useClient", "spaces", "useMulticastObservable", "ready", "setReady", "useState", "useEffect", "timeout", "setTimeout", "isReady", "wait", "clearTimeout", "find", "space", "key", "equals", "halo", "identity", "get", "default", "useSpaces", "all", "filter", "state", "SpaceState", "READY", "useMembers", "undefined", "members", "MulticastObservable", "empty", "member", "presence", "SpaceMember", "PresenceState", "REMOVED", "useQuery", "options", "deps", "query", "useMemo", "db", "filterToDepsArray", "useSyncExternalStore", "cb", "subscribe", "objects", "Object", "entries", "flat", "map", "x", "useSpaceInvitations", "invitations", "listener", "subscription", "unsubscribe", "useSpaceInvitation", "invitationId", "invitation", "useInvitationStatus", "useSubscription", "selection", "callbackRef", "useRef", "current", "subscriptionRef", "createSubscription", "update"]
7
7
  }
@@ -21,7 +21,6 @@ __export(halo_exports, {
21
21
  Device: () => import_halo.Device,
22
22
  DeviceKind: () => import_halo.DeviceKind,
23
23
  DeviceType: () => import_halo.DeviceType,
24
- HaloProxy: () => import_halo.HaloProxy,
25
24
  KeyStore: () => KeyStore,
26
25
  useContacts: () => useContacts,
27
26
  useDevices: () => useDevices,
@@ -31,7 +30,7 @@ __export(halo_exports, {
31
30
  useKeyStore: () => useKeyStore
32
31
  });
33
32
  module.exports = __toCommonJS(halo_exports);
34
- var import_chunk_PNDYOCJA = require("../chunk-PNDYOCJA.cjs");
33
+ var import_chunk_X5URYLUS = require("../chunk-X5URYLUS.cjs");
35
34
  var import_chunk_IRRRZ2KE = require("../chunk-IRRRZ2KE.cjs");
36
35
  var import_halo = require("@dxos/client/halo");
37
36
  var import_react = require("react");
@@ -68,7 +67,7 @@ var useHaloInvitation = (invitationId) => {
68
67
  const invitation = (0, import_react3.useMemo)(() => invitations.find((invitation2) => invitation2.get().invitationId === invitationId), [
69
68
  invitations
70
69
  ]);
71
- return (0, import_chunk_PNDYOCJA.useInvitationStatus)(invitation);
70
+ return (0, import_chunk_X5URYLUS.useInvitationStatus)(invitation);
72
71
  };
73
72
  var useIdentity = () => {
74
73
  const client = (0, import_chunk_IRRRZ2KE.useClient)();
@@ -117,7 +116,6 @@ var useKeyStore = (defaultKeys = []) => {
117
116
  Device,
118
117
  DeviceKind,
119
118
  DeviceType,
120
- HaloProxy,
121
119
  KeyStore,
122
120
  useContacts,
123
121
  useDevices,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/halo/index.ts", "../../../../src/halo/useContacts.ts", "../../../../src/halo/useDevices.ts", "../../../../src/halo/useHaloInvitations.ts", "../../../../src/halo/useIdentity.ts", "../../../../src/halo/useKeyStore.ts"],
4
- "sourcesContent": ["//\n// Copyright 2022 DXOS.org\n//\n\n// NOTE: Export * fails here.\nexport {\n type Contact,\n Device,\n DeviceKind,\n DeviceType,\n type Identity,\n // generateSeedPhrase,\n type Halo,\n HaloProxy,\n} from '@dxos/client/halo';\n\nexport * from './useContacts';\nexport * from './useDevices';\nexport * from './useHaloInvitations';\nexport * from './useIdentity';\nexport * from './useKeyStore';\n", "//\n// Copyright 2020 DXOS.org\n//\n\nimport { useSyncExternalStore } from 'react';\n\nimport type { Contact } from '@dxos/client/halo';\n\nimport { useClient } from '../client';\n\n/**\n * Returns all known Contacts across all Spaces.\n * Contacts are known members of a common Space.\n * Requires ClientContext to be set via ClientProvider.\n */\nexport const useContacts = (): Contact[] => {\n const client = useClient();\n const contacts = useSyncExternalStore(\n (listener) => {\n const subscription = client.halo.contacts.subscribe(listener);\n return () => subscription.unsubscribe();\n },\n () => client.halo.contacts.get(),\n );\n\n return contacts;\n};\n", "//\n// Copyright 2020 DXOS.org\n//\n\nimport { useSyncExternalStore } from 'react';\n\nimport type { Device } from '@dxos/client/halo';\n\nimport { useClient } from '../client';\n\nexport const useDevices = (): Device[] => {\n const client = useClient();\n const devices = useSyncExternalStore(\n (listener) => {\n const subscription = client.halo.devices.subscribe(listener);\n return () => subscription.unsubscribe();\n },\n () => client.halo.devices.get(),\n );\n\n return devices;\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { useMemo, useSyncExternalStore } from 'react';\n\nimport { useClient } from '../client';\nimport { useInvitationStatus } from '../invitations';\n\nexport const useHaloInvitations = () => {\n const client = useClient();\n const invitations =\n useSyncExternalStore(\n (listener) => {\n const subscription = client.halo.invitations.subscribe(() => listener());\n return () => subscription.unsubscribe();\n },\n () => client.halo.invitations.get(),\n ) ?? [];\n\n return invitations;\n};\n\nexport const useHaloInvitation = (invitationId?: string) => {\n const invitations = useHaloInvitations();\n const invitation = useMemo(\n () => invitations.find((invitation) => invitation.get().invitationId === invitationId),\n [invitations],\n );\n return useInvitationStatus(invitation);\n};\n", "//\n// Copyright 2020 DXOS.org\n//\n\nimport { type Identity } from '@dxos/client/halo';\nimport { useMulticastObservable } from '@dxos/react-async';\n\nimport { useClient } from '../client';\n\n/**\n * Hook returning DXOS identity object.\n * Requires ClientContext to be set via ClientProvider.\n */\nexport const useIdentity = (): Identity | null => {\n const client = useClient();\n return useMulticastObservable(client.halo.identity);\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { useMemo, useReducer } from 'react';\n\n// TODO(burdon): Move to settings plugin.\nexport class KeyStore {\n private _keyMap = new Map<string, string>();\n\n constructor(private readonly _defaultKeys: string[] = []) {}\n\n get map() {\n return this._keyMap;\n }\n\n // TODO(burdon): Create subkeys.\n initialize() {\n this._defaultKeys.forEach((key) => {\n const value = localStorage.getItem(key);\n this.setKey(key, value ?? '');\n });\n\n return this;\n }\n\n getKey(key: string) {\n localStorage.getItem(key);\n }\n\n setKey(key: string, value: string) {\n localStorage.setItem(key, '');\n this._keyMap.set(key, value);\n }\n}\n\n/**\n * Settings store.\n * @deprecated Replace with HALO key store when available.\n */\nexport const useKeyStore = (\n defaultKeys: string[] = [],\n): [Map<string, string>, (key: string, value: string) => void] => {\n const [, forceUpdate] = useReducer((x) => x + 1, 0);\n const store = useMemo(() => new KeyStore(defaultKeys).initialize(), [defaultKeys]);\n const setKey = (key: string, value: string) => {\n store.setKey(key, value);\n forceUpdate();\n };\n\n return [store.map, setKey];\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,kBASO;ACVP,mBAAqC;ACArC,IAAAA,gBAAqC;ACArC,IAAAA,gBAA8C;ACC9C,yBAAuC;ACDvC,IAAAA,gBAAoC;AJW7B,IAAMC,cAAc,MAAA;AACzB,QAAMC,aAASC,iCAAAA;AACf,QAAMC,eAAWC,mCACf,CAACC,aAAAA;AACC,UAAMC,eAAeL,OAAOM,KAAKJ,SAASK,UAAUH,QAAAA;AACpD,WAAO,MAAMC,aAAaG,YAAW;EACvC,GACA,MAAMR,OAAOM,KAAKJ,SAASO,IAAG,CAAA;AAGhC,SAAOP;AACT;AChBO,IAAMQ,aAAa,MAAA;AACxB,QAAMV,aAASC,iCAAAA;AACf,QAAMU,cAAUR,cAAAA,sBACd,CAACC,aAAAA;AACC,UAAMC,eAAeL,OAAOM,KAAKK,QAAQJ,UAAUH,QAAAA;AACnD,WAAO,MAAMC,aAAaG,YAAW;EACvC,GACA,MAAMR,OAAOM,KAAKK,QAAQF,IAAG,CAAA;AAG/B,SAAOE;AACT;ACZO,IAAMC,qBAAqB,MAAA;AAChC,QAAMZ,aAASC,iCAAAA;AACf,QAAMY,kBACJV,cAAAA,sBACE,CAACC,aAAAA;AACC,UAAMC,eAAeL,OAAOM,KAAKO,YAAYN,UAAU,MAAMH,SAAAA,CAAAA;AAC7D,WAAO,MAAMC,aAAaG,YAAW;EACvC,GACA,MAAMR,OAAOM,KAAKO,YAAYJ,IAAG,CAAA,KAC9B,CAAA;AAEP,SAAOI;AACT;AAEO,IAAMC,oBAAoB,CAACC,iBAAAA;AAChC,QAAMF,cAAcD,mBAAAA;AACpB,QAAMI,iBAAaC,uBACjB,MAAMJ,YAAYK,KAAK,CAACF,gBAAeA,YAAWP,IAAG,EAAGM,iBAAiBA,YAAAA,GACzE;IAACF;GAAY;AAEf,aAAOM,2CAAoBH,UAAAA;AAC7B;ACjBO,IAAMI,cAAc,MAAA;AACzB,QAAMpB,aAASC,iCAAAA;AACf,aAAOoB,2CAAuBrB,OAAOM,KAAKgB,QAAQ;AACpD;ACTO,IAAMC,WAAN,MAAMA;EAGXC,YAA6BC,eAAyB,CAAA,GAAI;SAA7BA,eAAAA;SAFrBC,UAAU,oBAAIC,IAAAA;EAEqC;EAE3D,IAAIC,MAAM;AACR,WAAO,KAAKF;EACd;;EAGAG,aAAa;AACX,SAAKJ,aAAaK,QAAQ,CAACC,QAAAA;AACzB,YAAMC,QAAQC,aAAaC,QAAQH,GAAAA;AACnC,WAAKI,OAAOJ,KAAKC,SAAS,EAAA;IAC5B,CAAA;AAEA,WAAO;EACT;EAEAI,OAAOL,KAAa;AAClBE,iBAAaC,QAAQH,GAAAA;EACvB;EAEAI,OAAOJ,KAAaC,OAAe;AACjCC,iBAAaI,QAAQN,KAAK,EAAA;AAC1B,SAAKL,QAAQY,IAAIP,KAAKC,KAAAA;EACxB;AACF;AAMO,IAAMO,cAAc,CACzBC,cAAwB,CAAA,MAAE;AAE1B,QAAM,CAAA,EAAGC,WAAAA,QAAeC,0BAAW,CAACC,MAAMA,IAAI,GAAG,CAAA;AACjD,QAAMC,YAAQ3B,cAAAA,SAAQ,MAAM,IAAIM,SAASiB,WAAAA,EAAaX,WAAU,GAAI;IAACW;GAAY;AACjF,QAAML,SAAS,CAACJ,KAAaC,UAAAA;AAC3BY,UAAMT,OAAOJ,KAAKC,KAAAA;AAClBS,gBAAAA;EACF;AAEA,SAAO;IAACG,MAAMhB;IAAKO;;AACrB;",
4
+ "sourcesContent": ["//\n// Copyright 2022 DXOS.org\n//\n\n// NOTE: Export * fails here.\nexport { type Contact, type Identity, type Halo, Device, DeviceKind, DeviceType } from '@dxos/client/halo';\n\nexport * from './useContacts';\nexport * from './useDevices';\nexport * from './useHaloInvitations';\nexport * from './useIdentity';\nexport * from './useKeyStore';\n", "//\n// Copyright 2020 DXOS.org\n//\n\nimport { useSyncExternalStore } from 'react';\n\nimport type { Contact } from '@dxos/client/halo';\n\nimport { useClient } from '../client';\n\n/**\n * Returns all known Contacts across all Spaces.\n * Contacts are known members of a common Space.\n * Requires ClientContext to be set via ClientProvider.\n */\nexport const useContacts = (): Contact[] => {\n const client = useClient();\n const contacts = useSyncExternalStore(\n (listener) => {\n const subscription = client.halo.contacts.subscribe(listener);\n return () => subscription.unsubscribe();\n },\n () => client.halo.contacts.get(),\n );\n\n return contacts;\n};\n", "//\n// Copyright 2020 DXOS.org\n//\n\nimport { useSyncExternalStore } from 'react';\n\nimport type { Device } from '@dxos/client/halo';\n\nimport { useClient } from '../client';\n\nexport const useDevices = (): Device[] => {\n const client = useClient();\n const devices = useSyncExternalStore(\n (listener) => {\n const subscription = client.halo.devices.subscribe(listener);\n return () => subscription.unsubscribe();\n },\n () => client.halo.devices.get(),\n );\n\n return devices;\n};\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { useMemo, useSyncExternalStore } from 'react';\n\nimport { useClient } from '../client';\nimport { useInvitationStatus } from '../invitations';\n\nexport const useHaloInvitations = () => {\n const client = useClient();\n const invitations =\n useSyncExternalStore(\n (listener) => {\n const subscription = client.halo.invitations.subscribe(() => listener());\n return () => subscription.unsubscribe();\n },\n () => client.halo.invitations.get(),\n ) ?? [];\n\n return invitations;\n};\n\nexport const useHaloInvitation = (invitationId?: string) => {\n const invitations = useHaloInvitations();\n const invitation = useMemo(\n () => invitations.find((invitation) => invitation.get().invitationId === invitationId),\n [invitations],\n );\n return useInvitationStatus(invitation);\n};\n", "//\n// Copyright 2020 DXOS.org\n//\n\nimport { type Identity } from '@dxos/client/halo';\nimport { useMulticastObservable } from '@dxos/react-async';\n\nimport { useClient } from '../client';\n\n/**\n * Hook returning DXOS identity object.\n * Requires ClientContext to be set via ClientProvider.\n */\nexport const useIdentity = (): Identity | null => {\n const client = useClient();\n return useMulticastObservable(client.halo.identity);\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { useMemo, useReducer } from 'react';\n\n// TODO(burdon): Move to settings plugin.\nexport class KeyStore {\n private _keyMap = new Map<string, string>();\n\n constructor(private readonly _defaultKeys: string[] = []) {}\n\n get map() {\n return this._keyMap;\n }\n\n // TODO(burdon): Create subkeys.\n initialize() {\n this._defaultKeys.forEach((key) => {\n const value = localStorage.getItem(key);\n this.setKey(key, value ?? '');\n });\n\n return this;\n }\n\n getKey(key: string) {\n localStorage.getItem(key);\n }\n\n setKey(key: string, value: string) {\n localStorage.setItem(key, '');\n this._keyMap.set(key, value);\n }\n}\n\n/**\n * Settings store.\n * @deprecated Replace with HALO key store when available.\n */\nexport const useKeyStore = (\n defaultKeys: string[] = [],\n): [Map<string, string>, (key: string, value: string) => void] => {\n const [, forceUpdate] = useReducer((x) => x + 1, 0);\n const store = useMemo(() => new KeyStore(defaultKeys).initialize(), [defaultKeys]);\n const setKey = (key: string, value: string) => {\n store.setKey(key, value);\n forceUpdate();\n };\n\n return [store.map, setKey];\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,kBAAuF;ACDvF,mBAAqC;ACArC,IAAAA,gBAAqC;ACArC,IAAAA,gBAA8C;ACC9C,yBAAuC;ACDvC,IAAAA,gBAAoC;AJW7B,IAAMC,cAAc,MAAA;AACzB,QAAMC,aAASC,iCAAAA;AACf,QAAMC,eAAWC,mCACf,CAACC,aAAAA;AACC,UAAMC,eAAeL,OAAOM,KAAKJ,SAASK,UAAUH,QAAAA;AACpD,WAAO,MAAMC,aAAaG,YAAW;EACvC,GACA,MAAMR,OAAOM,KAAKJ,SAASO,IAAG,CAAA;AAGhC,SAAOP;AACT;AChBO,IAAMQ,aAAa,MAAA;AACxB,QAAMV,aAASC,iCAAAA;AACf,QAAMU,cAAUR,cAAAA,sBACd,CAACC,aAAAA;AACC,UAAMC,eAAeL,OAAOM,KAAKK,QAAQJ,UAAUH,QAAAA;AACnD,WAAO,MAAMC,aAAaG,YAAW;EACvC,GACA,MAAMR,OAAOM,KAAKK,QAAQF,IAAG,CAAA;AAG/B,SAAOE;AACT;ACZO,IAAMC,qBAAqB,MAAA;AAChC,QAAMZ,aAASC,iCAAAA;AACf,QAAMY,kBACJV,cAAAA,sBACE,CAACC,aAAAA;AACC,UAAMC,eAAeL,OAAOM,KAAKO,YAAYN,UAAU,MAAMH,SAAAA,CAAAA;AAC7D,WAAO,MAAMC,aAAaG,YAAW;EACvC,GACA,MAAMR,OAAOM,KAAKO,YAAYJ,IAAG,CAAA,KAC9B,CAAA;AAEP,SAAOI;AACT;AAEO,IAAMC,oBAAoB,CAACC,iBAAAA;AAChC,QAAMF,cAAcD,mBAAAA;AACpB,QAAMI,iBAAaC,uBACjB,MAAMJ,YAAYK,KAAK,CAACF,gBAAeA,YAAWP,IAAG,EAAGM,iBAAiBA,YAAAA,GACzE;IAACF;GAAY;AAEf,aAAOM,2CAAoBH,UAAAA;AAC7B;ACjBO,IAAMI,cAAc,MAAA;AACzB,QAAMpB,aAASC,iCAAAA;AACf,aAAOoB,2CAAuBrB,OAAOM,KAAKgB,QAAQ;AACpD;ACTO,IAAMC,WAAN,MAAMA;EAGXC,YAA6BC,eAAyB,CAAA,GAAI;SAA7BA,eAAAA;SAFrBC,UAAU,oBAAIC,IAAAA;EAEqC;EAE3D,IAAIC,MAAM;AACR,WAAO,KAAKF;EACd;;EAGAG,aAAa;AACX,SAAKJ,aAAaK,QAAQ,CAACC,QAAAA;AACzB,YAAMC,QAAQC,aAAaC,QAAQH,GAAAA;AACnC,WAAKI,OAAOJ,KAAKC,SAAS,EAAA;IAC5B,CAAA;AAEA,WAAO;EACT;EAEAI,OAAOL,KAAa;AAClBE,iBAAaC,QAAQH,GAAAA;EACvB;EAEAI,OAAOJ,KAAaC,OAAe;AACjCC,iBAAaI,QAAQN,KAAK,EAAA;AAC1B,SAAKL,QAAQY,IAAIP,KAAKC,KAAAA;EACxB;AACF;AAMO,IAAMO,cAAc,CACzBC,cAAwB,CAAA,MAAE;AAE1B,QAAM,CAAA,EAAGC,WAAAA,QAAeC,0BAAW,CAACC,MAAMA,IAAI,GAAG,CAAA;AACjD,QAAMC,YAAQ3B,cAAAA,SAAQ,MAAM,IAAIM,SAASiB,WAAAA,EAAaX,WAAU,GAAI;IAACW;GAAY;AACjF,QAAML,SAAS,CAACJ,KAAaC,UAAAA;AAC3BY,UAAMT,OAAOJ,KAAKC,KAAAA;AAClBS,gBAAAA;EACF;AAEA,SAAO;IAACG,MAAMhB;IAAKO;;AACrB;",
6
6
  "names": ["import_react", "useContacts", "client", "useClient", "contacts", "useSyncExternalStore", "listener", "subscription", "halo", "subscribe", "unsubscribe", "get", "useDevices", "devices", "useHaloInvitations", "invitations", "useHaloInvitation", "invitationId", "invitation", "useMemo", "find", "useInvitationStatus", "useIdentity", "useMulticastObservable", "identity", "KeyStore", "constructor", "_defaultKeys", "_keyMap", "Map", "map", "initialize", "forEach", "key", "value", "localStorage", "getItem", "setKey", "getKey", "setItem", "set", "useKeyStore", "defaultKeys", "forceUpdate", "useReducer", "x", "store"]
7
7
  }
@@ -18,15 +18,15 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var invitations_exports = {};
20
20
  __export(invitations_exports, {
21
- AuthenticatingInvitationObservable: () => import_chunk_PNDYOCJA.AuthenticatingInvitationObservable,
22
- CancellableInvitationObservable: () => import_chunk_PNDYOCJA.CancellableInvitationObservable,
23
- Invitation: () => import_chunk_PNDYOCJA.Invitation,
24
- InvitationEncoder: () => import_chunk_PNDYOCJA.InvitationEncoder,
25
- InvitationsProxy: () => import_chunk_PNDYOCJA.InvitationsProxy,
26
- useInvitationStatus: () => import_chunk_PNDYOCJA.useInvitationStatus
21
+ AuthenticatingInvitationObservable: () => import_chunk_X5URYLUS.AuthenticatingInvitationObservable,
22
+ CancellableInvitationObservable: () => import_chunk_X5URYLUS.CancellableInvitationObservable,
23
+ Invitation: () => import_chunk_X5URYLUS.Invitation,
24
+ InvitationEncoder: () => import_chunk_X5URYLUS.InvitationEncoder,
25
+ InvitationsProxy: () => import_chunk_X5URYLUS.InvitationsProxy,
26
+ useInvitationStatus: () => import_chunk_X5URYLUS.useInvitationStatus
27
27
  });
28
28
  module.exports = __toCommonJS(invitations_exports);
29
- var import_chunk_PNDYOCJA = require("../chunk-PNDYOCJA.cjs");
29
+ var import_chunk_X5URYLUS = require("../chunk-X5URYLUS.cjs");
30
30
  // Annotate the CommonJS export names for ESM import in node:
31
31
  0 && (module.exports = {
32
32
  AuthenticatingInvitationObservable,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["index.cjs"],
4
- "sourcesContent": ["import {\n AuthenticatingInvitationObservable,\n CancellableInvitationObservable,\n Invitation,\n InvitationEncoder,\n InvitationsProxy,\n useInvitationStatus\n} from \"../chunk-PNDYOCJA.cjs\";\nexport {\n AuthenticatingInvitationObservable,\n CancellableInvitationObservable,\n Invitation,\n InvitationEncoder,\n InvitationsProxy,\n useInvitationStatus\n};\n//# sourceMappingURL=index.cjs.map\n"],
4
+ "sourcesContent": ["import {\n AuthenticatingInvitationObservable,\n CancellableInvitationObservable,\n Invitation,\n InvitationEncoder,\n InvitationsProxy,\n useInvitationStatus\n} from \"../chunk-X5URYLUS.cjs\";\nexport {\n AuthenticatingInvitationObservable,\n CancellableInvitationObservable,\n Invitation,\n InvitationEncoder,\n InvitationsProxy,\n useInvitationStatus\n};\n//# sourceMappingURL=index.cjs.map\n"],
5
5
  "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BAOO;",
6
6
  "names": []
7
7
  }
@@ -1 +1 @@
1
- {"inputs":{"packages/sdk/react-client/src/banner.ts":{"bytes":3658,"imports":[],"format":"esm"},"packages/sdk/react-client/src/client/ClientContext.tsx":{"bytes":15632,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/debug","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/util","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/banner.ts","kind":"import-statement","original":"../banner"}],"format":"esm"},"packages/sdk/react-client/src/client/useClientServices.ts":{"bytes":1563,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/ClientContext.tsx","kind":"import-statement","original":"./ClientContext"}],"format":"esm"},"packages/sdk/react-client/src/client/useConfig.ts":{"bytes":1775,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/ClientContext.tsx","kind":"import-statement","original":"./ClientContext"}],"format":"esm"},"packages/sdk/react-client/src/client/useShell.ts":{"bytes":1106,"imports":[{"path":"packages/sdk/react-client/src/client/ClientContext.tsx","kind":"import-statement","original":"./ClientContext"}],"format":"esm"},"packages/sdk/react-client/src/client/useStatus.ts":{"bytes":1507,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/ClientContext.tsx","kind":"import-statement","original":"./ClientContext"}],"format":"esm"},"packages/sdk/react-client/src/client/useAgentHostingProvider.ts":{"bytes":3547,"imports":[{"path":"@dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/react-client/src/client/index.ts":{"bytes":995,"imports":[{"path":"packages/sdk/react-client/src/client/ClientContext.tsx","kind":"import-statement","original":"./ClientContext"},{"path":"packages/sdk/react-client/src/client/useClientServices.ts","kind":"import-statement","original":"./useClientServices"},{"path":"packages/sdk/react-client/src/client/useConfig.ts","kind":"import-statement","original":"./useConfig"},{"path":"packages/sdk/react-client/src/client/useShell.ts","kind":"import-statement","original":"./useShell"},{"path":"packages/sdk/react-client/src/client/useStatus.ts","kind":"import-statement","original":"./useStatus"},{"path":"packages/sdk/react-client/src/client/useAgentHostingProvider.ts","kind":"import-statement","original":"./useAgentHostingProvider"}],"format":"esm"},"packages/sdk/react-client/src/devtools/useDevtools.ts":{"bytes":1938,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/devtools/useStream.ts":{"bytes":2796,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/react-client/src/devtools/index.ts":{"bytes":693,"imports":[{"path":"@dxos/client/devtools","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/devtools/useDevtools.ts","kind":"import-statement","original":"./useDevtools"},{"path":"packages/sdk/react-client/src/devtools/useStream.ts","kind":"import-statement","original":"./useStream"}],"format":"esm"},"packages/sdk/react-client/src/echo/useSpaces.ts":{"bytes":6145,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-async","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/echo/useMembers.ts":{"bytes":3150,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-async","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/echo/useSpaces.ts","kind":"import-statement","original":"./useSpaces"}],"format":"esm"},"packages/sdk/react-client/src/echo/useQuery.ts":{"bytes":3273,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/react-client/src/invitations/useInvitationStatus.ts":{"bytes":17876,"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"},"packages/sdk/react-client/src/invitations/index.ts":{"bytes":1299,"imports":[{"path":"@dxos/client/invitations","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/invitations/useInvitationStatus.ts","kind":"import-statement","original":"./useInvitationStatus"}],"format":"esm"},"packages/sdk/react-client/src/echo/useSpaceInvitations.ts":{"bytes":3915,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/echo/useSpaces.ts","kind":"import-statement","original":"./useSpaces"},{"path":"packages/sdk/react-client/src/invitations/index.ts","kind":"import-statement","original":"../invitations"}],"format":"esm"},"packages/sdk/react-client/src/echo/useSubscription.ts":{"bytes":3528,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/react-client/src/echo/index.ts":{"bytes":986,"imports":[{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/echo/useMembers.ts","kind":"import-statement","original":"./useMembers"},{"path":"packages/sdk/react-client/src/echo/useQuery.ts","kind":"import-statement","original":"./useQuery"},{"path":"packages/sdk/react-client/src/echo/useSpaces.ts","kind":"import-statement","original":"./useSpaces"},{"path":"packages/sdk/react-client/src/echo/useSpaceInvitations.ts","kind":"import-statement","original":"./useSpaceInvitations"},{"path":"packages/sdk/react-client/src/echo/useSubscription.ts","kind":"import-statement","original":"./useSubscription"}],"format":"esm"},"packages/sdk/react-client/src/halo/useContacts.ts":{"bytes":2382,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/halo/useDevices.ts":{"bytes":1962,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/halo/useHaloInvitations.ts":{"bytes":3302,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"},{"path":"packages/sdk/react-client/src/invitations/index.ts","kind":"import-statement","original":"../invitations"}],"format":"esm"},"packages/sdk/react-client/src/halo/useIdentity.ts":{"bytes":1588,"imports":[{"path":"@dxos/react-async","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/halo/useKeyStore.ts":{"bytes":4572,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/react-client/src/halo/index.ts":{"bytes":1424,"imports":[{"path":"@dxos/client/halo","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/halo/useContacts.ts","kind":"import-statement","original":"./useContacts"},{"path":"packages/sdk/react-client/src/halo/useDevices.ts","kind":"import-statement","original":"./useDevices"},{"path":"packages/sdk/react-client/src/halo/useHaloInvitations.ts","kind":"import-statement","original":"./useHaloInvitations"},{"path":"packages/sdk/react-client/src/halo/useIdentity.ts","kind":"import-statement","original":"./useIdentity"},{"path":"packages/sdk/react-client/src/halo/useKeyStore.ts","kind":"import-statement","original":"./useKeyStore"}],"format":"esm"},"packages/sdk/react-client/src/index.ts":{"bytes":888,"imports":[{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/react-async","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"./client"}],"format":"esm"},"packages/sdk/react-client/src/mesh/useNetworkStatus.ts":{"bytes":2220,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/mesh/index.ts":{"bytes":601,"imports":[{"path":"@dxos/client/mesh","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/mesh/useNetworkStatus.ts","kind":"import-statement","original":"./useNetworkStatus"}],"format":"esm"},"packages/sdk/react-client/src/testing/ClientRepeater.tsx":{"bytes":11223,"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":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/testing/FullscreenDecorator.tsx":{"bytes":1552,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/react-client/src/testing/index.ts":{"bytes":724,"imports":[{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/testing/ClientRepeater.tsx","kind":"import-statement","original":"./ClientRepeater"},{"path":"packages/sdk/react-client/src/testing/FullscreenDecorator.tsx","kind":"import-statement","original":"./FullscreenDecorator"}],"format":"esm"},"packages/sdk/react-client/src/worker.ts":{"bytes":491,"imports":[{"path":"@dxos/client/worker","kind":"import-statement","external":true}],"format":"esm"}},"outputs":{"packages/sdk/react-client/dist/lib/node/devtools/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2520},"packages/sdk/react-client/dist/lib/node/devtools/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs","kind":"import-statement"},{"path":"@dxos/client/devtools","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["useDevtools","useStream"],"entryPoint":"packages/sdk/react-client/src/devtools/index.ts","inputs":{"packages/sdk/react-client/src/devtools/index.ts":{"bytesInOutput":39},"packages/sdk/react-client/src/devtools/useDevtools.ts":{"bytesInOutput":506},"packages/sdk/react-client/src/devtools/useStream.ts":{"bytesInOutput":692}},"bytes":1534},"packages/sdk/react-client/dist/lib/node/echo/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10595},"packages/sdk/react-client/dist/lib/node/echo/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-PNDYOCJA.cjs","kind":"import-statement"},{"path":"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs","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-async","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-async","kind":"import-statement","external":true},{"path":"react","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/client/echo","kind":"import-statement","external":true}],"exports":["useMembers","useQuery","useSpace","useSpaceInvitation","useSpaceInvitations","useSpaces","useSubscription"],"entryPoint":"packages/sdk/react-client/src/echo/index.ts","inputs":{"packages/sdk/react-client/src/echo/index.ts":{"bytesInOutput":35},"packages/sdk/react-client/src/echo/useMembers.ts":{"bytesInOutput":550},"packages/sdk/react-client/src/echo/useSpaces.ts":{"bytesInOutput":956},"packages/sdk/react-client/src/echo/useQuery.ts":{"bytesInOutput":454},"packages/sdk/react-client/src/echo/useSpaceInvitations.ts":{"bytesInOutput":839},"packages/sdk/react-client/src/echo/useSubscription.ts":{"bytesInOutput":519}},"bytes":4007},"packages/sdk/react-client/dist/lib/node/halo/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7426},"packages/sdk/react-client/dist/lib/node/halo/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-PNDYOCJA.cjs","kind":"import-statement"},{"path":"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs","kind":"import-statement"},{"path":"@dxos/client/halo","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-async","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"exports":["Device","DeviceKind","DeviceType","HaloProxy","KeyStore","useContacts","useDevices","useHaloInvitation","useHaloInvitations","useIdentity","useKeyStore"],"entryPoint":"packages/sdk/react-client/src/halo/index.ts","inputs":{"packages/sdk/react-client/src/halo/index.ts":{"bytesInOutput":79},"packages/sdk/react-client/src/halo/useContacts.ts":{"bytesInOutput":332},"packages/sdk/react-client/src/halo/useDevices.ts":{"bytesInOutput":353},"packages/sdk/react-client/src/halo/useHaloInvitations.ts":{"bytesInOutput":676},"packages/sdk/react-client/src/halo/useIdentity.ts":{"bytesInOutput":174},"packages/sdk/react-client/src/halo/useKeyStore.ts":{"bytesInOutput":928}},"bytes":3193},"packages/sdk/react-client/dist/lib/node/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":391},"packages/sdk/react-client/dist/lib/node/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs","kind":"import-statement"},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/react-async","kind":"import-statement","external":true}],"exports":["ClientContext","ClientProvider","useAgentHostingProviderClient","useClient","useClientServices","useConfig","useMulticastObservable","useShell","useStatus"],"entryPoint":"packages/sdk/react-client/src/index.ts","inputs":{"packages/sdk/react-client/src/index.ts":{"bytesInOutput":129}},"bytes":563},"packages/sdk/react-client/dist/lib/node/invitations/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/react-client/dist/lib/node/invitations/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-PNDYOCJA.cjs","kind":"import-statement"}],"exports":["AuthenticatingInvitationObservable","CancellableInvitationObservable","Invitation","InvitationEncoder","InvitationsProxy","useInvitationStatus"],"entryPoint":"packages/sdk/react-client/src/invitations/index.ts","inputs":{},"bytes":388},"packages/sdk/react-client/dist/lib/node/chunk-PNDYOCJA.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":9664},"packages/sdk/react-client/dist/lib/node/chunk-PNDYOCJA.cjs":{"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":{"packages/sdk/react-client/src/invitations/index.ts":{"bytesInOutput":198},"packages/sdk/react-client/src/invitations/useInvitationStatus.ts":{"bytesInOutput":4166}},"bytes":4731},"packages/sdk/react-client/dist/lib/node/mesh/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1330},"packages/sdk/react-client/dist/lib/node/mesh/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs","kind":"import-statement"},{"path":"@dxos/client/mesh","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"exports":["useNetworkStatus"],"entryPoint":"packages/sdk/react-client/src/mesh/index.ts","inputs":{"packages/sdk/react-client/src/mesh/index.ts":{"bytesInOutput":35},"packages/sdk/react-client/src/mesh/useNetworkStatus.ts":{"bytesInOutput":357}},"bytes":618},"packages/sdk/react-client/dist/lib/node/testing/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6898},"packages/sdk/react-client/dist/lib/node/testing/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs","kind":"import-statement"},{"path":"@dxos/client/testing","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}],"exports":["ClientRepeater","FullscreenDecorator"],"entryPoint":"packages/sdk/react-client/src/testing/index.ts","inputs":{"packages/sdk/react-client/src/testing/index.ts":{"bytesInOutput":38},"packages/sdk/react-client/src/testing/ClientRepeater.tsx":{"bytesInOutput":2168},"packages/sdk/react-client/src/testing/FullscreenDecorator.tsx":{"bytesInOutput":290}},"bytes":2818},"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":14166},"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs":{"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/debug","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/util","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/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["ClientContext","ClientProvider","useAgentHostingProviderClient","useClient","useClientServices","useConfig","useShell","useStatus"],"inputs":{"packages/sdk/react-client/src/client/ClientContext.tsx":{"bytesInOutput":3601},"packages/sdk/react-client/src/banner.ts":{"bytesInOutput":773},"packages/sdk/react-client/src/client/useClientServices.ts":{"bytesInOutput":250},"packages/sdk/react-client/src/client/useConfig.ts":{"bytesInOutput":245},"packages/sdk/react-client/src/client/useShell.ts":{"bytesInOutput":79},"packages/sdk/react-client/src/client/useStatus.ts":{"bytesInOutput":238},"packages/sdk/react-client/src/client/useAgentHostingProvider.ts":{"bytesInOutput":904},"packages/sdk/react-client/src/client/index.ts":{"bytesInOutput":0}},"bytes":6738},"packages/sdk/react-client/dist/lib/node/worker.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":206},"packages/sdk/react-client/dist/lib/node/worker.cjs":{"imports":[{"path":"@dxos/client/worker","kind":"import-statement","external":true}],"exports":[],"entryPoint":"packages/sdk/react-client/src/worker.ts","inputs":{"packages/sdk/react-client/src/worker.ts":{"bytesInOutput":37}},"bytes":116}}}
1
+ {"inputs":{"packages/sdk/react-client/src/banner.ts":{"bytes":3658,"imports":[],"format":"esm"},"packages/sdk/react-client/src/client/ClientContext.tsx":{"bytes":15632,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/debug","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/util","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/banner.ts","kind":"import-statement","original":"../banner"}],"format":"esm"},"packages/sdk/react-client/src/client/useClientServices.ts":{"bytes":1563,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/ClientContext.tsx","kind":"import-statement","original":"./ClientContext"}],"format":"esm"},"packages/sdk/react-client/src/client/useConfig.ts":{"bytes":1775,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/ClientContext.tsx","kind":"import-statement","original":"./ClientContext"}],"format":"esm"},"packages/sdk/react-client/src/client/useShell.ts":{"bytes":1106,"imports":[{"path":"packages/sdk/react-client/src/client/ClientContext.tsx","kind":"import-statement","original":"./ClientContext"}],"format":"esm"},"packages/sdk/react-client/src/client/useStatus.ts":{"bytes":1507,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/ClientContext.tsx","kind":"import-statement","original":"./ClientContext"}],"format":"esm"},"packages/sdk/react-client/src/client/useAgentHostingProvider.ts":{"bytes":3547,"imports":[{"path":"@dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/react-client/src/client/index.ts":{"bytes":995,"imports":[{"path":"packages/sdk/react-client/src/client/ClientContext.tsx","kind":"import-statement","original":"./ClientContext"},{"path":"packages/sdk/react-client/src/client/useClientServices.ts","kind":"import-statement","original":"./useClientServices"},{"path":"packages/sdk/react-client/src/client/useConfig.ts","kind":"import-statement","original":"./useConfig"},{"path":"packages/sdk/react-client/src/client/useShell.ts","kind":"import-statement","original":"./useShell"},{"path":"packages/sdk/react-client/src/client/useStatus.ts","kind":"import-statement","original":"./useStatus"},{"path":"packages/sdk/react-client/src/client/useAgentHostingProvider.ts","kind":"import-statement","original":"./useAgentHostingProvider"}],"format":"esm"},"packages/sdk/react-client/src/devtools/useDevtools.ts":{"bytes":1938,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/devtools/useStream.ts":{"bytes":2796,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/react-client/src/devtools/index.ts":{"bytes":693,"imports":[{"path":"@dxos/client/devtools","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/devtools/useDevtools.ts","kind":"import-statement","original":"./useDevtools"},{"path":"packages/sdk/react-client/src/devtools/useStream.ts","kind":"import-statement","original":"./useStream"}],"format":"esm"},"packages/sdk/react-client/src/echo/useSpaces.ts":{"bytes":6145,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-async","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/echo/useMembers.ts":{"bytes":3150,"imports":[{"path":"@dxos/async","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-async","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/echo/useSpaces.ts","kind":"import-statement","original":"./useSpaces"}],"format":"esm"},"packages/sdk/react-client/src/echo/useQuery.ts":{"bytes":3801,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/react-client/src/invitations/useInvitationStatus.ts":{"bytes":18076,"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"},"packages/sdk/react-client/src/invitations/index.ts":{"bytes":1299,"imports":[{"path":"@dxos/client/invitations","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/invitations/useInvitationStatus.ts","kind":"import-statement","original":"./useInvitationStatus"}],"format":"esm"},"packages/sdk/react-client/src/echo/useSpaceInvitations.ts":{"bytes":3663,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/echo/useSpaces.ts","kind":"import-statement","original":"./useSpaces"},{"path":"packages/sdk/react-client/src/invitations/index.ts","kind":"import-statement","original":"../invitations"}],"format":"esm"},"packages/sdk/react-client/src/echo/useSubscription.ts":{"bytes":3528,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/react-client/src/echo/index.ts":{"bytes":986,"imports":[{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/echo/useMembers.ts","kind":"import-statement","original":"./useMembers"},{"path":"packages/sdk/react-client/src/echo/useQuery.ts","kind":"import-statement","original":"./useQuery"},{"path":"packages/sdk/react-client/src/echo/useSpaces.ts","kind":"import-statement","original":"./useSpaces"},{"path":"packages/sdk/react-client/src/echo/useSpaceInvitations.ts","kind":"import-statement","original":"./useSpaceInvitations"},{"path":"packages/sdk/react-client/src/echo/useSubscription.ts","kind":"import-statement","original":"./useSubscription"}],"format":"esm"},"packages/sdk/react-client/src/halo/useContacts.ts":{"bytes":2382,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/halo/useDevices.ts":{"bytes":1962,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/halo/useHaloInvitations.ts":{"bytes":3302,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"},{"path":"packages/sdk/react-client/src/invitations/index.ts","kind":"import-statement","original":"../invitations"}],"format":"esm"},"packages/sdk/react-client/src/halo/useIdentity.ts":{"bytes":1588,"imports":[{"path":"@dxos/react-async","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/halo/useKeyStore.ts":{"bytes":4572,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/react-client/src/halo/index.ts":{"bytes":1301,"imports":[{"path":"@dxos/client/halo","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/halo/useContacts.ts","kind":"import-statement","original":"./useContacts"},{"path":"packages/sdk/react-client/src/halo/useDevices.ts","kind":"import-statement","original":"./useDevices"},{"path":"packages/sdk/react-client/src/halo/useHaloInvitations.ts","kind":"import-statement","original":"./useHaloInvitations"},{"path":"packages/sdk/react-client/src/halo/useIdentity.ts","kind":"import-statement","original":"./useIdentity"},{"path":"packages/sdk/react-client/src/halo/useKeyStore.ts","kind":"import-statement","original":"./useKeyStore"}],"format":"esm"},"packages/sdk/react-client/src/index.ts":{"bytes":888,"imports":[{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/react-async","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"./client"}],"format":"esm"},"packages/sdk/react-client/src/mesh/useNetworkStatus.ts":{"bytes":2220,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/mesh/index.ts":{"bytes":601,"imports":[{"path":"@dxos/client/mesh","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/mesh/useNetworkStatus.ts","kind":"import-statement","original":"./useNetworkStatus"}],"format":"esm"},"packages/sdk/react-client/src/testing/ClientRepeater.tsx":{"bytes":11134,"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":"packages/sdk/react-client/src/client/index.ts","kind":"import-statement","original":"../client"}],"format":"esm"},"packages/sdk/react-client/src/testing/FullscreenDecorator.tsx":{"bytes":1552,"imports":[{"path":"react","kind":"import-statement","external":true}],"format":"esm"},"packages/sdk/react-client/src/testing/index.ts":{"bytes":724,"imports":[{"path":"@dxos/client/testing","kind":"import-statement","external":true},{"path":"packages/sdk/react-client/src/testing/ClientRepeater.tsx","kind":"import-statement","original":"./ClientRepeater"},{"path":"packages/sdk/react-client/src/testing/FullscreenDecorator.tsx","kind":"import-statement","original":"./FullscreenDecorator"}],"format":"esm"},"packages/sdk/react-client/src/worker.ts":{"bytes":491,"imports":[{"path":"@dxos/client/worker","kind":"import-statement","external":true}],"format":"esm"}},"outputs":{"packages/sdk/react-client/dist/lib/node/devtools/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2520},"packages/sdk/react-client/dist/lib/node/devtools/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs","kind":"import-statement"},{"path":"@dxos/client/devtools","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["useDevtools","useStream"],"entryPoint":"packages/sdk/react-client/src/devtools/index.ts","inputs":{"packages/sdk/react-client/src/devtools/index.ts":{"bytesInOutput":39},"packages/sdk/react-client/src/devtools/useDevtools.ts":{"bytesInOutput":506},"packages/sdk/react-client/src/devtools/useStream.ts":{"bytesInOutput":692}},"bytes":1534},"packages/sdk/react-client/dist/lib/node/echo/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":10756},"packages/sdk/react-client/dist/lib/node/echo/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-X5URYLUS.cjs","kind":"import-statement"},{"path":"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs","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-async","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-async","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client/echo","kind":"import-statement","external":true}],"exports":["useMembers","useQuery","useSpace","useSpaceInvitation","useSpaceInvitations","useSpaces","useSubscription"],"entryPoint":"packages/sdk/react-client/src/echo/index.ts","inputs":{"packages/sdk/react-client/src/echo/index.ts":{"bytesInOutput":35},"packages/sdk/react-client/src/echo/useMembers.ts":{"bytesInOutput":550},"packages/sdk/react-client/src/echo/useSpaces.ts":{"bytesInOutput":956},"packages/sdk/react-client/src/echo/useQuery.ts":{"bytesInOutput":528},"packages/sdk/react-client/src/echo/useSpaceInvitations.ts":{"bytesInOutput":767},"packages/sdk/react-client/src/echo/useSubscription.ts":{"bytesInOutput":519}},"bytes":4009},"packages/sdk/react-client/dist/lib/node/halo/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":7350},"packages/sdk/react-client/dist/lib/node/halo/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-X5URYLUS.cjs","kind":"import-statement"},{"path":"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs","kind":"import-statement"},{"path":"@dxos/client/halo","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/react-async","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"exports":["Device","DeviceKind","DeviceType","KeyStore","useContacts","useDevices","useHaloInvitation","useHaloInvitations","useIdentity","useKeyStore"],"entryPoint":"packages/sdk/react-client/src/halo/index.ts","inputs":{"packages/sdk/react-client/src/halo/index.ts":{"bytesInOutput":68},"packages/sdk/react-client/src/halo/useContacts.ts":{"bytesInOutput":332},"packages/sdk/react-client/src/halo/useDevices.ts":{"bytesInOutput":353},"packages/sdk/react-client/src/halo/useHaloInvitations.ts":{"bytesInOutput":676},"packages/sdk/react-client/src/halo/useIdentity.ts":{"bytesInOutput":174},"packages/sdk/react-client/src/halo/useKeyStore.ts":{"bytesInOutput":928}},"bytes":3169},"packages/sdk/react-client/dist/lib/node/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":391},"packages/sdk/react-client/dist/lib/node/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs","kind":"import-statement"},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/react-async","kind":"import-statement","external":true}],"exports":["ClientContext","ClientProvider","useAgentHostingProviderClient","useClient","useClientServices","useConfig","useMulticastObservable","useShell","useStatus"],"entryPoint":"packages/sdk/react-client/src/index.ts","inputs":{"packages/sdk/react-client/src/index.ts":{"bytesInOutput":129}},"bytes":563},"packages/sdk/react-client/dist/lib/node/invitations/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/sdk/react-client/dist/lib/node/invitations/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-X5URYLUS.cjs","kind":"import-statement"}],"exports":["AuthenticatingInvitationObservable","CancellableInvitationObservable","Invitation","InvitationEncoder","InvitationsProxy","useInvitationStatus"],"entryPoint":"packages/sdk/react-client/src/invitations/index.ts","inputs":{},"bytes":388},"packages/sdk/react-client/dist/lib/node/chunk-X5URYLUS.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":9782},"packages/sdk/react-client/dist/lib/node/chunk-X5URYLUS.cjs":{"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":{"packages/sdk/react-client/src/invitations/index.ts":{"bytesInOutput":198},"packages/sdk/react-client/src/invitations/useInvitationStatus.ts":{"bytesInOutput":4204}},"bytes":4769},"packages/sdk/react-client/dist/lib/node/mesh/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":1330},"packages/sdk/react-client/dist/lib/node/mesh/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs","kind":"import-statement"},{"path":"@dxos/client/mesh","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true}],"exports":["useNetworkStatus"],"entryPoint":"packages/sdk/react-client/src/mesh/index.ts","inputs":{"packages/sdk/react-client/src/mesh/index.ts":{"bytesInOutput":35},"packages/sdk/react-client/src/mesh/useNetworkStatus.ts":{"bytesInOutput":357}},"bytes":618},"packages/sdk/react-client/dist/lib/node/testing/index.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6840},"packages/sdk/react-client/dist/lib/node/testing/index.cjs":{"imports":[{"path":"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs","kind":"import-statement"},{"path":"@dxos/client/testing","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}],"exports":["ClientRepeater","FullscreenDecorator"],"entryPoint":"packages/sdk/react-client/src/testing/index.ts","inputs":{"packages/sdk/react-client/src/testing/index.ts":{"bytesInOutput":38},"packages/sdk/react-client/src/testing/ClientRepeater.tsx":{"bytesInOutput":2167},"packages/sdk/react-client/src/testing/FullscreenDecorator.tsx":{"bytesInOutput":290}},"bytes":2817},"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":14166},"packages/sdk/react-client/dist/lib/node/chunk-IRRRZ2KE.cjs":{"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/client","kind":"import-statement","external":true},{"path":"@dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/debug","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/util","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/debug","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/client/services","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"exports":["ClientContext","ClientProvider","useAgentHostingProviderClient","useClient","useClientServices","useConfig","useShell","useStatus"],"inputs":{"packages/sdk/react-client/src/client/ClientContext.tsx":{"bytesInOutput":3601},"packages/sdk/react-client/src/banner.ts":{"bytesInOutput":773},"packages/sdk/react-client/src/client/useClientServices.ts":{"bytesInOutput":250},"packages/sdk/react-client/src/client/useConfig.ts":{"bytesInOutput":245},"packages/sdk/react-client/src/client/useShell.ts":{"bytesInOutput":79},"packages/sdk/react-client/src/client/useStatus.ts":{"bytesInOutput":238},"packages/sdk/react-client/src/client/useAgentHostingProvider.ts":{"bytesInOutput":904},"packages/sdk/react-client/src/client/index.ts":{"bytesInOutput":0}},"bytes":6738},"packages/sdk/react-client/dist/lib/node/worker.cjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":206},"packages/sdk/react-client/dist/lib/node/worker.cjs":{"imports":[{"path":"@dxos/client/worker","kind":"import-statement","external":true}],"exports":[],"entryPoint":"packages/sdk/react-client/src/worker.ts","inputs":{"packages/sdk/react-client/src/worker.ts":{"bytesInOutput":37}},"bytes":116}}}
@@ -43,7 +43,7 @@ var import_random = require("@dxos/random");
43
43
  var import_react3 = __toESM(require("react"));
44
44
  var testBuilder = new import_testing.TestBuilder();
45
45
  var ClientRepeater = (props) => {
46
- const { component: Component, controls: Controls, count = 1, className = "flex w-full place-content-evenly", types, createIdentity, createSpace, onCreateSpace } = props;
46
+ const { component: Component, controls: Controls, count = 1, className = "flex w-full place-content-evenly", schema, createIdentity, createSpace, onCreateSpace } = props;
47
47
  if (props.registerSignalFactory ?? true) {
48
48
  (0, import_react2.registerSignalFactory)();
49
49
  }
@@ -57,7 +57,7 @@ var ClientRepeater = (props) => {
57
57
  services: testBuilder.createLocal()
58
58
  }));
59
59
  await Promise.all(clients2.map((client) => client.initialize()));
60
- types && clients2.map((client) => client.spaces.addSchema(types));
60
+ schema && clients2.map((client) => client.addSchema(...schema));
61
61
  if (createIdentity || createSpace) {
62
62
  await Promise.all(clients2.map((client) => client.halo.createIdentity()));
63
63
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/testing/index.ts", "../../../../src/testing/ClientRepeater.tsx", "../../../../src/testing/FullscreenDecorator.tsx"],
4
- "sourcesContent": ["//\n// Copyright 2020 DXOS.org\n//\n\nexport * from '@dxos/client/testing';\n\nexport * from './ClientRepeater';\nexport * from './FullscreenDecorator';\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport React, { useState, type FC, useEffect } from 'react';\n\nimport { Client, type PublicKey } from '@dxos/client';\nimport { type SpaceProxy, type Space, type TypeCollection } from '@dxos/client/echo';\nimport { TestBuilder, performInvitation } from '@dxos/client/testing';\nimport { registerSignalFactory } from '@dxos/echo-signals/react';\nimport { faker } from '@dxos/random';\nimport { type MaybePromise } from '@dxos/util';\n\nimport { ClientContext } from '../client';\n\nconst testBuilder = new TestBuilder();\n\nexport type RepeatedComponentProps = { id: number; count: number };\n\nexport type ClientRepeaterProps<P extends RepeatedComponentProps> = {\n component: FC<any>;\n controls?: FC<{ clients: Client[] }>;\n clients?: Client[];\n count?: number;\n registerSignalFactory?: boolean;\n className?: string;\n types?: TypeCollection;\n createIdentity?: boolean;\n createSpace?: boolean;\n onCreateSpace?: (space: Space) => MaybePromise<void>;\n args?: Omit<P, 'id' | 'count'>;\n};\n\n/**\n * Utility component for Storybook stories which sets up clients for n peers.\n * The `Component` property is rendered n times, once for each peer.\n */\n// NOTE: This is specifically not a storybook decorator because it broke stories as a decorator.\n// This seems primarily due to the fact that it required top-level await for the clients to initialize.\n// Storybook seemed to handle it alright, but Chromatic had a lot of trouble with it.\n// There was also a question of whether or not calling the story function multiple times was a good idea.\n// TODO(wittjosiah): Rename.\nexport const ClientRepeater = <P extends RepeatedComponentProps>(props: ClientRepeaterProps<P>) => {\n const {\n component: Component,\n controls: Controls,\n count = 1,\n className = 'flex w-full place-content-evenly',\n types,\n createIdentity,\n createSpace,\n onCreateSpace,\n } = props;\n if (props.registerSignalFactory ?? true) {\n registerSignalFactory();\n }\n\n const [clients, setClients] = useState(props.clients ?? []);\n const [spaceKey, setSpaceKey] = useState<PublicKey>();\n\n useEffect(() => {\n const timeout = setTimeout(async () => {\n const clients = [...Array(count)].map((_) => new Client({ services: testBuilder.createLocal() }));\n await Promise.all(clients.map((client) => client.initialize()));\n types && clients.map((client) => client.spaces.addSchema(types));\n\n if (createIdentity || createSpace) {\n await Promise.all(clients.map((client) => client.halo.createIdentity()));\n }\n\n if (createSpace) {\n const space = await clients[0].spaces.create({ name: faker.commerce.productName() });\n setSpaceKey(space.key);\n await onCreateSpace?.(space);\n await Promise.all(\n clients.slice(1).map((client) => performInvitation({ host: space as SpaceProxy, guest: client.spaces })),\n );\n }\n\n setClients(clients);\n });\n\n return () => clearTimeout(timeout);\n }, []);\n\n if (clients.length === 0) {\n return null;\n }\n\n return (\n <>\n {Controls && <Controls clients={clients} />}\n <div className={className}>\n {clients.map((client, index) => (\n <ClientContext.Provider key={index} value={{ client }}>\n <Component id={index} count={clients.length} {...{ ...props.args, spaceKey }} />\n </ClientContext.Provider>\n ))}\n </div>\n </>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport type { DecoratorFunction } from '@storybook/csf';\nimport type { ReactRenderer } from '@storybook/react';\nimport React from 'react';\n\nexport const FullscreenDecorator = (className?: string): DecoratorFunction<ReactRenderer> => {\n return (Story) => (\n <div className={['flex fixed inset-0 overflow-hidden', className].join(' ')}>\n <Story />\n </div>\n );\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,4BAAc;ACAd,mBAAoD;AAEpD,oBAAuC;AAEvC,qBAA+C;AAC/C,IAAAA,gBAAsC;AACtC,oBAAsB;ACJtB,IAAAA,gBAAkB;ADSlB,IAAMC,cAAc,IAAIC,2BAAAA;AA2BjB,IAAMC,iBAAiB,CAAmCC,UAAAA;AAC/D,QAAM,EACJC,WAAWC,WACXC,UAAUC,UACVC,QAAQ,GACRC,YAAY,oCACZC,OACAC,gBACAC,aACAC,cAAa,IACXV;AACJ,MAAIA,MAAMW,yBAAyB,MAAM;AACvCA,6CAAAA;EACF;AAEA,QAAM,CAACC,SAASC,UAAAA,QAAcC,uBAASd,MAAMY,WAAW,CAAA,CAAE;AAC1D,QAAM,CAACG,UAAUC,WAAAA,QAAeF,uBAAAA;AAEhCG,8BAAU,MAAA;AACR,UAAMC,UAAUC,WAAW,YAAA;AACzB,YAAMP,WAAU;WAAIQ,MAAMf,KAAAA;QAAQgB,IAAI,CAACC,MAAM,IAAIC,qBAAO;QAAEC,UAAU3B,YAAY4B,YAAW;MAAG,CAAA,CAAA;AAC9F,YAAMC,QAAQC,IAAIf,SAAQS,IAAI,CAACO,WAAWA,OAAOC,WAAU,CAAA,CAAA;AAC3DtB,eAASK,SAAQS,IAAI,CAACO,WAAWA,OAAOE,OAAOC,UAAUxB,KAAAA,CAAAA;AAEzD,UAAIC,kBAAkBC,aAAa;AACjC,cAAMiB,QAAQC,IAAIf,SAAQS,IAAI,CAACO,WAAWA,OAAOI,KAAKxB,eAAc,CAAA,CAAA;MACtE;AAEA,UAAIC,aAAa;AACf,cAAMwB,QAAQ,MAAMrB,SAAQ,CAAA,EAAGkB,OAAOI,OAAO;UAAEC,MAAMC,oBAAMC,SAASC,YAAW;QAAG,CAAA;AAClFtB,oBAAYiB,MAAMM,GAAG;AACrB,cAAM7B,gBAAgBuB,KAAAA;AACtB,cAAMP,QAAQC,IACZf,SAAQ4B,MAAM,CAAA,EAAGnB,IAAI,CAACO,eAAWa,kCAAkB;UAAEC,MAAMT;UAAqBU,OAAOf,OAAOE;QAAO,CAAA,CAAA,CAAA;MAEzG;AAEAjB,iBAAWD,QAAAA;IACb,CAAA;AAEA,WAAO,MAAMgC,aAAa1B,OAAAA;EAC5B,GAAG,CAAA,CAAE;AAEL,MAAIN,QAAQiC,WAAW,GAAG;AACxB,WAAO;EACT;AAEA,SACE,6BAAAC,QAAA,cAAA,aAAAA,QAAA,UAAA,MACG1C,YAAY,6BAAA0C,QAAA,cAAC1C,UAAAA;IAASQ;MACvB,6BAAAkC,QAAA,cAACC,OAAAA;IAAIzC;KACFM,QAAQS,IAAI,CAACO,QAAQoB,UACpB,6BAAAF,QAAA,cAACG,oCAAcC,UAAQ;IAACX,KAAKS;IAAOG,OAAO;MAAEvB;IAAO;KAClD,6BAAAkB,QAAA,cAAC5C,WAAAA;IAAUkD,IAAIJ;IAAO3C,OAAOO,QAAQiC;IAAc,GAAG7C,MAAMqD;IAAMtC;;AAM9E;AC7FO,IAAMuC,sBAAsB,CAAChD,cAAAA;AAClC,SAAO,CAACiD,UACNT,8BAAAA,QAAA,cAACC,OAAAA;IAAIzC,WAAW;MAAC;MAAsCA;MAAWkD,KAAK,GAAA;KACrEV,8BAAAA,QAAA,cAACS,OAAAA,IAAAA,CAAAA;AAGP;",
6
- "names": ["import_react", "testBuilder", "TestBuilder", "ClientRepeater", "props", "component", "Component", "controls", "Controls", "count", "className", "types", "createIdentity", "createSpace", "onCreateSpace", "registerSignalFactory", "clients", "setClients", "useState", "spaceKey", "setSpaceKey", "useEffect", "timeout", "setTimeout", "Array", "map", "_", "Client", "services", "createLocal", "Promise", "all", "client", "initialize", "spaces", "addSchema", "halo", "space", "create", "name", "faker", "commerce", "productName", "key", "slice", "performInvitation", "host", "guest", "clearTimeout", "length", "React", "div", "index", "ClientContext", "Provider", "value", "id", "args", "FullscreenDecorator", "Story", "join"]
4
+ "sourcesContent": ["//\n// Copyright 2020 DXOS.org\n//\n\nexport * from '@dxos/client/testing';\n\nexport * from './ClientRepeater';\nexport * from './FullscreenDecorator';\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport React, { useState, type FC, useEffect } from 'react';\n\nimport { Client, type PublicKey } from '@dxos/client';\nimport { type Space } from '@dxos/client/echo';\nimport { TestBuilder, performInvitation } from '@dxos/client/testing';\nimport { registerSignalFactory } from '@dxos/echo-signals/react';\nimport { faker } from '@dxos/random';\nimport { type MaybePromise } from '@dxos/util';\n\nimport { ClientContext } from '../client';\n\nconst testBuilder = new TestBuilder();\n\nexport type RepeatedComponentProps = { id: number; count: number };\n\nexport type ClientRepeaterProps<P extends RepeatedComponentProps> = {\n component: FC<any>;\n className?: string;\n controls?: FC<{ clients: Client[] }>;\n clients?: Client[];\n count?: number;\n registerSignalFactory?: boolean;\n schema?: Parameters<Client['addSchema']>;\n createIdentity?: boolean;\n createSpace?: boolean;\n onCreateSpace?: (space: Space) => MaybePromise<void>;\n args?: Omit<P, 'id' | 'count'>;\n};\n\n/**\n * Utility component for Storybook stories which sets up clients for n peers.\n * The `Component` property is rendered n times, once for each peer.\n */\n// NOTE: This is specifically not a storybook decorator because it broke stories as a decorator.\n// This seems primarily due to the fact that it required top-level await for the clients to initialize.\n// Storybook seemed to handle it alright, but Chromatic had a lot of trouble with it.\n// There was also a question of whether or not calling the story function multiple times was a good idea.\n// TODO(wittjosiah): Rename.\nexport const ClientRepeater = <P extends RepeatedComponentProps>(props: ClientRepeaterProps<P>) => {\n const {\n component: Component,\n controls: Controls,\n count = 1,\n className = 'flex w-full place-content-evenly',\n schema,\n createIdentity,\n createSpace,\n onCreateSpace,\n } = props;\n if (props.registerSignalFactory ?? true) {\n registerSignalFactory();\n }\n\n const [clients, setClients] = useState(props.clients ?? []);\n const [spaceKey, setSpaceKey] = useState<PublicKey>();\n\n useEffect(() => {\n const timeout = setTimeout(async () => {\n const clients = [...Array(count)].map((_) => new Client({ services: testBuilder.createLocal() }));\n await Promise.all(clients.map((client) => client.initialize()));\n schema && clients.map((client) => client.addSchema(...schema));\n\n if (createIdentity || createSpace) {\n await Promise.all(clients.map((client) => client.halo.createIdentity()));\n }\n\n if (createSpace) {\n const space = await clients[0].spaces.create({ name: faker.commerce.productName() });\n setSpaceKey(space.key);\n await onCreateSpace?.(space);\n await Promise.all(clients.slice(1).map((client) => performInvitation({ host: space, guest: client.spaces })));\n }\n\n setClients(clients);\n });\n\n return () => clearTimeout(timeout);\n }, []);\n\n if (clients.length === 0) {\n return null;\n }\n\n return (\n <>\n {Controls && <Controls clients={clients} />}\n <div className={className}>\n {clients.map((client, index) => (\n <ClientContext.Provider key={index} value={{ client }}>\n <Component id={index} count={clients.length} {...{ ...props.args, spaceKey }} />\n </ClientContext.Provider>\n ))}\n </div>\n </>\n );\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport type { DecoratorFunction } from '@storybook/csf';\nimport type { ReactRenderer } from '@storybook/react';\nimport React from 'react';\n\nexport const FullscreenDecorator = (className?: string): DecoratorFunction<ReactRenderer> => {\n return (Story) => (\n <div className={['flex fixed inset-0 overflow-hidden', className].join(' ')}>\n <Story />\n </div>\n );\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,4BAAc;ACAd,mBAAoD;AAEpD,oBAAuC;AAEvC,qBAA+C;AAC/C,IAAAA,gBAAsC;AACtC,oBAAsB;ACJtB,IAAAA,gBAAkB;ADSlB,IAAMC,cAAc,IAAIC,2BAAAA;AA2BjB,IAAMC,iBAAiB,CAAmCC,UAAAA;AAC/D,QAAM,EACJC,WAAWC,WACXC,UAAUC,UACVC,QAAQ,GACRC,YAAY,oCACZC,QACAC,gBACAC,aACAC,cAAa,IACXV;AACJ,MAAIA,MAAMW,yBAAyB,MAAM;AACvCA,6CAAAA;EACF;AAEA,QAAM,CAACC,SAASC,UAAAA,QAAcC,uBAASd,MAAMY,WAAW,CAAA,CAAE;AAC1D,QAAM,CAACG,UAAUC,WAAAA,QAAeF,uBAAAA;AAEhCG,8BAAU,MAAA;AACR,UAAMC,UAAUC,WAAW,YAAA;AACzB,YAAMP,WAAU;WAAIQ,MAAMf,KAAAA;QAAQgB,IAAI,CAACC,MAAM,IAAIC,qBAAO;QAAEC,UAAU3B,YAAY4B,YAAW;MAAG,CAAA,CAAA;AAC9F,YAAMC,QAAQC,IAAIf,SAAQS,IAAI,CAACO,WAAWA,OAAOC,WAAU,CAAA,CAAA;AAC3DtB,gBAAUK,SAAQS,IAAI,CAACO,WAAWA,OAAOE,UAAS,GAAIvB,MAAAA,CAAAA;AAEtD,UAAIC,kBAAkBC,aAAa;AACjC,cAAMiB,QAAQC,IAAIf,SAAQS,IAAI,CAACO,WAAWA,OAAOG,KAAKvB,eAAc,CAAA,CAAA;MACtE;AAEA,UAAIC,aAAa;AACf,cAAMuB,QAAQ,MAAMpB,SAAQ,CAAA,EAAGqB,OAAOC,OAAO;UAAEC,MAAMC,oBAAMC,SAASC,YAAW;QAAG,CAAA;AAClFtB,oBAAYgB,MAAMO,GAAG;AACrB,cAAM7B,gBAAgBsB,KAAAA;AACtB,cAAMN,QAAQC,IAAIf,SAAQ4B,MAAM,CAAA,EAAGnB,IAAI,CAACO,eAAWa,kCAAkB;UAAEC,MAAMV;UAAOW,OAAOf,OAAOK;QAAO,CAAA,CAAA,CAAA;MAC3G;AAEApB,iBAAWD,QAAAA;IACb,CAAA;AAEA,WAAO,MAAMgC,aAAa1B,OAAAA;EAC5B,GAAG,CAAA,CAAE;AAEL,MAAIN,QAAQiC,WAAW,GAAG;AACxB,WAAO;EACT;AAEA,SACE,6BAAAC,QAAA,cAAA,aAAAA,QAAA,UAAA,MACG1C,YAAY,6BAAA0C,QAAA,cAAC1C,UAAAA;IAASQ;MACvB,6BAAAkC,QAAA,cAACC,OAAAA;IAAIzC;KACFM,QAAQS,IAAI,CAACO,QAAQoB,UACpB,6BAAAF,QAAA,cAACG,oCAAcC,UAAQ;IAACX,KAAKS;IAAOG,OAAO;MAAEvB;IAAO;KAClD,6BAAAkB,QAAA,cAAC5C,WAAAA;IAAUkD,IAAIJ;IAAO3C,OAAOO,QAAQiC;IAAc,GAAG7C,MAAMqD;IAAMtC;;AAM9E;AC3FO,IAAMuC,sBAAsB,CAAChD,cAAAA;AAClC,SAAO,CAACiD,UACNT,8BAAAA,QAAA,cAACC,OAAAA;IAAIzC,WAAW;MAAC;MAAsCA;MAAWkD,KAAK,GAAA;KACrEV,8BAAAA,QAAA,cAACS,OAAAA,IAAAA,CAAAA;AAGP;",
6
+ "names": ["import_react", "testBuilder", "TestBuilder", "ClientRepeater", "props", "component", "Component", "controls", "Controls", "count", "className", "schema", "createIdentity", "createSpace", "onCreateSpace", "registerSignalFactory", "clients", "setClients", "useState", "spaceKey", "setSpaceKey", "useEffect", "timeout", "setTimeout", "Array", "map", "_", "Client", "services", "createLocal", "Promise", "all", "client", "initialize", "addSchema", "halo", "space", "spaces", "create", "name", "faker", "commerce", "productName", "key", "slice", "performInvitation", "host", "guest", "clearTimeout", "length", "React", "div", "index", "ClientContext", "Provider", "value", "id", "args", "FullscreenDecorator", "Story", "join"]
7
7
  }
@@ -1,6 +1,6 @@
1
- import type { QueryOptions, TypedObject, FilterSource, Space } from '@dxos/client/echo';
1
+ import type { QueryOptions, FilterSource, Space, EchoReactiveObject } from '@dxos/client/echo';
2
2
  type UseQuery = {
3
- <T extends TypedObject>(space?: Space, filter?: FilterSource<T>, options?: QueryOptions, deps?: any[]): T[];
3
+ <T extends EchoReactiveObject<any>>(space?: Space, filter?: FilterSource<T>, options?: QueryOptions, deps?: any[]): T[];
4
4
  };
5
5
  /**
6
6
  * Create subscription.
@@ -1 +1 @@
1
- {"version":3,"file":"useQuery.d.ts","sourceRoot":"","sources":["../../../../src/echo/useQuery.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAS,YAAY,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/F,KAAK,QAAQ,GAAG;IACd,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;CAC7G,CAAC;AAEF;;GAEG;AAEH,eAAO,MAAM,QAAQ,EAAE,QAkBtB,CAAC"}
1
+ {"version":3,"file":"useQuery.d.ts","sourceRoot":"","sources":["../../../../src/echo/useQuery.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAS,YAAY,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEtG,KAAK,QAAQ,GAAG;IACd,CAAC,CAAC,SAAS,kBAAkB,CAAC,GAAG,CAAC,EAChC,KAAK,CAAC,EAAE,KAAK,EACb,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,EACxB,OAAO,CAAC,EAAE,YAAY,EACtB,IAAI,CAAC,EAAE,GAAG,EAAE,GACX,CAAC,EAAE,CAAC;CACR,CAAC;AAEF;;GAEG;AAEH,eAAO,MAAM,QAAQ,EAAE,QAkBtB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSpaceInvitations.d.ts","sourceRoot":"","sources":["../../../../src/echo/useSpaceInvitations.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAM9C,eAAO,MAAM,mBAAmB,cAAe,SAAS,+DAgBvD,CAAC;AAEF,eAAO,MAAM,kBAAkB,cAAe,SAAS,iBAAiB,MAAM,8CAO7E,CAAC"}
1
+ {"version":3,"file":"useSpaceInvitations.d.ts","sourceRoot":"","sources":["../../../../src/echo/useSpaceInvitations.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAK9C,eAAO,MAAM,mBAAmB,cAAe,SAAS,+DAgBvD,CAAC;AAEF,eAAO,MAAM,kBAAkB,cAAe,SAAS,iBAAiB,MAAM,8CAO7E,CAAC"}
@@ -1,4 +1,4 @@
1
- export { type Contact, Device, DeviceKind, DeviceType, type Identity, type Halo, HaloProxy, } from '@dxos/client/halo';
1
+ export { type Contact, type Identity, type Halo, Device, DeviceKind, DeviceType } from '@dxos/client/halo';
2
2
  export * from './useContacts';
3
3
  export * from './useDevices';
4
4
  export * from './useHaloInvitations';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/halo/index.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,OAAO,EACZ,MAAM,EACN,UAAU,EACV,UAAU,EACV,KAAK,QAAQ,EAEb,KAAK,IAAI,EACT,SAAS,GACV,MAAM,mBAAmB,CAAC;AAE3B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/halo/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE3G,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC"}
@@ -30,6 +30,7 @@ export type InvitationStatus = {
30
30
  type?: Invitation.Type;
31
31
  status: Invitation.State;
32
32
  haltedAt?: Invitation.State;
33
+ multiUse?: boolean;
33
34
  result: InvitationResult;
34
35
  error?: number;
35
36
  cancel(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"useInvitationStatus.d.ts","sourceRoot":"","sources":["../../../../src/invitations/useInvitationStatus.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAEL,KAAK,+BAA+B,EACpC,UAAU,EAEX,MAAM,0BAA0B,CAAC;AAGlC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,SAAS,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,SAAS,GAAG,IAAI,CAAC;IAC9B,QAAQ,EAAE,SAAS,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAaF,MAAM,MAAM,gBAAgB,GACxB;IACE,MAAM,EACF,UAAU,CAAC,KAAK,CAAC,IAAI,GACrB,UAAU,CAAC,KAAK,CAAC,SAAS,GAC1B,UAAU,CAAC,KAAK,CAAC,wBAAwB,GACzC,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC;CACrC,GACD;IACE,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC;IACpC,UAAU,EAAE,+BAA+B,CAAC;CAC7C,GACD;IACE,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;IACjC,MAAM,EAAE,gBAAgB,CAAC;CAC1B,GACD;IACE,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;IAC9D,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC;CAC5B,GACD;IACE,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;IAC/B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC;CAC5B,CAAC;AAEN,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IACnC,IAAI,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC;IACvB,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC;IACzB,QAAQ,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC;IAC5B,MAAM,EAAE,gBAAgB,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,IAAI,IAAI,CAAC;IAEf,OAAO,CAAC,UAAU,EAAE,+BAA+B,GAAG,IAAI,CAAC;IAC3D,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C,CAAC;AAEF,eAAO,MAAM,mBAAmB,uBAAwB,+BAA+B,KAAG,gBAkHzF,CAAC"}
1
+ {"version":3,"file":"useInvitationStatus.d.ts","sourceRoot":"","sources":["../../../../src/invitations/useInvitationStatus.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAEL,KAAK,+BAA+B,EACpC,UAAU,EAEX,MAAM,0BAA0B,CAAC;AAGlC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,SAAS,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,SAAS,GAAG,IAAI,CAAC;IAC9B,QAAQ,EAAE,SAAS,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAcF,MAAM,MAAM,gBAAgB,GACxB;IACE,MAAM,EACF,UAAU,CAAC,KAAK,CAAC,IAAI,GACrB,UAAU,CAAC,KAAK,CAAC,SAAS,GAC1B,UAAU,CAAC,KAAK,CAAC,wBAAwB,GACzC,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC;CACrC,GACD;IACE,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC;IACpC,UAAU,EAAE,+BAA+B,CAAC;CAC7C,GACD;IACE,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;IACjC,MAAM,EAAE,gBAAgB,CAAC;CAC1B,GACD;IACE,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;IAC9D,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC;CAC5B,GACD;IACE,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;IAC/B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC;CAC5B,CAAC;AAEN,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC;IACnC,IAAI,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC;IACvB,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC;IACzB,QAAQ,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,gBAAgB,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,IAAI,IAAI,CAAC;IAEf,OAAO,CAAC,UAAU,EAAE,+BAA+B,GAAG,IAAI,CAAC;IAC3D,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C,CAAC;AAEF,eAAO,MAAM,mBAAmB,uBAAwB,+BAA+B,KAAG,gBAmHzF,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { type FC } from 'react';
2
2
  import { Client } from '@dxos/client';
3
- import { type Space, type TypeCollection } from '@dxos/client/echo';
3
+ import { type Space } from '@dxos/client/echo';
4
4
  import { type MaybePromise } from '@dxos/util';
5
5
  export type RepeatedComponentProps = {
6
6
  id: number;
@@ -8,14 +8,14 @@ export type RepeatedComponentProps = {
8
8
  };
9
9
  export type ClientRepeaterProps<P extends RepeatedComponentProps> = {
10
10
  component: FC<any>;
11
+ className?: string;
11
12
  controls?: FC<{
12
13
  clients: Client[];
13
14
  }>;
14
15
  clients?: Client[];
15
16
  count?: number;
16
17
  registerSignalFactory?: boolean;
17
- className?: string;
18
- types?: TypeCollection;
18
+ schema?: Parameters<Client['addSchema']>;
19
19
  createIdentity?: boolean;
20
20
  createSpace?: boolean;
21
21
  onCreateSpace?: (space: Space) => MaybePromise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"ClientRepeater.d.ts","sourceRoot":"","sources":["../../../../src/testing/ClientRepeater.tsx"],"names":[],"mappings":"AAIA,OAAc,EAAY,KAAK,EAAE,EAAa,MAAM,OAAO,CAAC;AAE5D,OAAO,EAAE,MAAM,EAAkB,MAAM,cAAc,CAAC;AACtD,OAAO,EAAmB,KAAK,KAAK,EAAE,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAIrF,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAM/C,MAAM,MAAM,sBAAsB,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnE,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,sBAAsB,IAAI;IAClE,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACnB,QAAQ,CAAC,EAAE,EAAE,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;IACrD,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF;;;GAGG;AAMH,eAAO,MAAM,cAAc,yFA2D1B,CAAC"}
1
+ {"version":3,"file":"ClientRepeater.d.ts","sourceRoot":"","sources":["../../../../src/testing/ClientRepeater.tsx"],"names":[],"mappings":"AAIA,OAAc,EAAY,KAAK,EAAE,EAAa,MAAM,OAAO,CAAC;AAE5D,OAAO,EAAE,MAAM,EAAkB,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAI/C,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAM/C,MAAM,MAAM,sBAAsB,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnE,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,sBAAsB,IAAI;IAClE,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,EAAE,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACrC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,MAAM,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IACzC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;IACrD,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC;CAChC,CAAC;AAEF;;;GAGG;AAMH,eAAO,MAAM,cAAc,yFAyD1B,CAAC"}