@dxos/react-client 0.8.4-main.f5c0578 → 0.8.4-main.fcfe5033a5

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 (129) hide show
  1. package/.storybook/main.mts +9 -0
  2. package/.storybook/preview.mts +8 -0
  3. package/.swc/plugins/linux_x86_64_19.0.0/727453fb3a62f7f1d952a41e051ca8a6f88cadc45cee43c6a4d1aa45f9b75665.wasmer-v7 +0 -0
  4. package/dist/lib/browser/chunk-BVDNYEYI.mjs +179 -0
  5. package/dist/lib/browser/chunk-BVDNYEYI.mjs.map +7 -0
  6. package/dist/lib/browser/{chunk-BXOLJYAY.mjs → chunk-LO3TU5CK.mjs} +4 -4
  7. package/dist/lib/browser/chunk-LO3TU5CK.mjs.map +7 -0
  8. package/dist/lib/browser/chunk-PFF63FPR.mjs +16 -0
  9. package/dist/lib/browser/chunk-PFF63FPR.mjs.map +7 -0
  10. package/dist/lib/browser/chunk-TSF6Y5VB.mjs +8 -0
  11. package/dist/lib/browser/chunk-TSF6Y5VB.mjs.map +7 -0
  12. package/dist/lib/browser/devtools/index.mjs +2 -1
  13. package/dist/lib/browser/devtools/index.mjs.map +1 -1
  14. package/dist/lib/browser/echo/index.mjs +58 -121
  15. package/dist/lib/browser/echo/index.mjs.map +4 -4
  16. package/dist/lib/browser/halo/index.mjs +4 -4
  17. package/dist/lib/browser/halo/index.mjs.map +2 -2
  18. package/dist/lib/browser/index.mjs +114 -12
  19. package/dist/lib/browser/index.mjs.map +4 -4
  20. package/dist/lib/browser/invitations/index.mjs +1 -1
  21. package/dist/lib/browser/mesh/index.mjs +2 -1
  22. package/dist/lib/browser/mesh/index.mjs.map +1 -1
  23. package/dist/lib/browser/meta.json +1 -1
  24. package/dist/lib/browser/testing/index.mjs +121 -149
  25. package/dist/lib/browser/testing/index.mjs.map +3 -3
  26. package/dist/lib/node-esm/chunk-373DPHEQ.mjs +10 -0
  27. package/dist/lib/node-esm/chunk-373DPHEQ.mjs.map +7 -0
  28. package/dist/lib/node-esm/{chunk-256IHY6F.mjs → chunk-AQJH2UNZ.mjs} +4 -4
  29. package/dist/lib/node-esm/chunk-AQJH2UNZ.mjs.map +7 -0
  30. package/dist/lib/node-esm/chunk-NETTSER2.mjs +17 -0
  31. package/dist/lib/node-esm/chunk-NETTSER2.mjs.map +7 -0
  32. package/dist/lib/node-esm/chunk-VSA674XR.mjs +180 -0
  33. package/dist/lib/node-esm/chunk-VSA674XR.mjs.map +7 -0
  34. package/dist/lib/node-esm/devtools/index.mjs +2 -1
  35. package/dist/lib/node-esm/devtools/index.mjs.map +1 -1
  36. package/dist/lib/node-esm/echo/index.mjs +58 -121
  37. package/dist/lib/node-esm/echo/index.mjs.map +4 -4
  38. package/dist/lib/node-esm/halo/index.mjs +4 -4
  39. package/dist/lib/node-esm/halo/index.mjs.map +2 -2
  40. package/dist/lib/node-esm/index.mjs +114 -12
  41. package/dist/lib/node-esm/index.mjs.map +4 -4
  42. package/dist/lib/node-esm/invitations/index.mjs +1 -1
  43. package/dist/lib/node-esm/mesh/index.mjs +2 -1
  44. package/dist/lib/node-esm/mesh/index.mjs.map +1 -1
  45. package/dist/lib/node-esm/meta.json +1 -1
  46. package/dist/lib/node-esm/testing/index.mjs +121 -149
  47. package/dist/lib/node-esm/testing/index.mjs.map +3 -3
  48. package/dist/types/src/client/ClientProvider.d.ts +0 -10
  49. package/dist/types/src/client/ClientProvider.d.ts.map +1 -1
  50. package/dist/types/src/echo/index.d.ts +2 -2
  51. package/dist/types/src/echo/index.d.ts.map +1 -1
  52. package/dist/types/src/echo/useMembers.d.ts +2 -2
  53. package/dist/types/src/echo/useMembers.d.ts.map +1 -1
  54. package/dist/types/src/echo/useQueue.d.ts +3 -2
  55. package/dist/types/src/echo/useQueue.d.ts.map +1 -1
  56. package/dist/types/src/echo/useSpaceInvitations.d.ts +3 -2
  57. package/dist/types/src/echo/useSpaceInvitations.d.ts.map +1 -1
  58. package/dist/types/src/echo/useSpaceProperties.d.ts +13 -0
  59. package/dist/types/src/echo/useSpaceProperties.d.ts.map +1 -0
  60. package/dist/types/src/echo/useSpaces.d.ts +18 -9
  61. package/dist/types/src/echo/useSpaces.d.ts.map +1 -1
  62. package/dist/types/src/echo/useSubscription.d.ts +1 -1
  63. package/dist/types/src/echo/useSubscription.d.ts.map +1 -1
  64. package/dist/types/src/echo/useSyncState.d.ts.map +1 -1
  65. package/dist/types/src/halo/Passkey.stories.d.ts +5 -5
  66. package/dist/types/src/halo/Passkey.stories.d.ts.map +1 -1
  67. package/dist/types/src/invitations/useInvitationStatus.d.ts +1 -1
  68. package/dist/types/src/invitations/useInvitationStatus.d.ts.map +1 -1
  69. package/dist/types/src/testing/ClientRepeater.d.ts +6 -5
  70. package/dist/types/src/testing/ClientRepeater.d.ts.map +1 -1
  71. package/dist/types/src/testing/ClientRepeater.stories.d.ts +6 -10
  72. package/dist/types/src/testing/ClientRepeater.stories.d.ts.map +1 -1
  73. package/dist/types/src/testing/context.d.ts +4 -2
  74. package/dist/types/src/testing/context.d.ts.map +1 -1
  75. package/dist/types/src/testing/util.d.ts.map +1 -1
  76. package/dist/types/src/testing/withClientProvider.d.ts +5 -9
  77. package/dist/types/src/testing/withClientProvider.d.ts.map +1 -1
  78. package/dist/types/src/testing/withClientProvider.stories.d.ts +8 -9
  79. package/dist/types/src/testing/withClientProvider.stories.d.ts.map +1 -1
  80. package/dist/types/tsconfig.tsbuildinfo +1 -1
  81. package/docs/README.md +38 -38
  82. package/moon.yml +3 -2
  83. package/package.json +35 -33
  84. package/src/client/ClientProvider.test.tsx +0 -1
  85. package/src/client/ClientProvider.tsx +29 -48
  86. package/src/client/useConfig.test.tsx +0 -1
  87. package/src/echo/index.ts +2 -2
  88. package/src/echo/useMembers.ts +5 -3
  89. package/src/echo/useQueue.ts +3 -4
  90. package/src/echo/useSpaceInvitations.ts +9 -5
  91. package/src/echo/useSpaceProperties.ts +28 -0
  92. package/src/echo/useSpaces.test.tsx +7 -14
  93. package/src/echo/useSpaces.ts +31 -30
  94. package/src/echo/useSubscription.ts +1 -1
  95. package/src/echo/useSyncState.ts +4 -3
  96. package/src/halo/Passkey.stories.tsx +15 -14
  97. package/src/halo/useDevices.test.tsx +0 -1
  98. package/src/invitations/useInvitationStatus.ts +9 -8
  99. package/src/testing/ClientRepeater.stories.tsx +19 -12
  100. package/src/testing/ClientRepeater.tsx +31 -40
  101. package/src/testing/context.tsx +4 -3
  102. package/src/testing/util.tsx +0 -1
  103. package/src/testing/withClientProvider.stories.tsx +30 -17
  104. package/src/testing/withClientProvider.tsx +74 -92
  105. package/tsconfig.json +3 -6
  106. package/typedoc.json +1 -1
  107. package/vitest.config.ts +10 -16
  108. package/.swc/plugins/v7_linux_x86_64_13.0.0/c614d7475354583212fbd7669acbae95b9832c305bf51bdaabe2e6de05abb6bf +0 -0
  109. package/dist/lib/browser/chunk-BXOLJYAY.mjs.map +0 -7
  110. package/dist/lib/browser/chunk-FQAPI3I4.mjs +0 -312
  111. package/dist/lib/browser/chunk-FQAPI3I4.mjs.map +0 -7
  112. package/dist/lib/node-esm/chunk-256IHY6F.mjs.map +0 -7
  113. package/dist/lib/node-esm/chunk-MNTJNI2M.mjs +0 -314
  114. package/dist/lib/node-esm/chunk-MNTJNI2M.mjs.map +0 -7
  115. package/dist/types/src/echo/useQuery.d.ts +0 -11
  116. package/dist/types/src/echo/useQuery.d.ts.map +0 -1
  117. package/dist/types/src/echo/useQuery.test.d.ts +0 -2
  118. package/dist/types/src/echo/useQuery.test.d.ts.map +0 -1
  119. package/dist/types/src/echo/useSchema.d.ts +0 -8
  120. package/dist/types/src/echo/useSchema.d.ts.map +0 -1
  121. package/dist/types/src/playwright/playwright.config.d.ts +0 -3
  122. package/dist/types/src/playwright/playwright.config.d.ts.map +0 -1
  123. package/dist/types/src/playwright/smoke.spec.d.ts +0 -2
  124. package/dist/types/src/playwright/smoke.spec.d.ts.map +0 -1
  125. package/src/echo/useQuery.test.tsx +0 -129
  126. package/src/echo/useQuery.ts +0 -56
  127. package/src/echo/useSchema.ts +0 -54
  128. package/src/playwright/playwright.config.ts +0 -17
  129. package/src/playwright/smoke.spec.ts +0 -24
@@ -1,15 +1,24 @@
1
- import { type PublicKeyLike } from '@dxos/client';
2
- import { type Space } from '@dxos/client/echo';
1
+ import { PublicKey } from '@dxos/client';
2
+ import { type Space, type SpaceId } from '@dxos/client/echo';
3
3
  /**
4
- * Get a specific Space using its key.
4
+ * Get a specific Space using its id.
5
5
  * The space is not guaranteed to be in the ready state.
6
- * Returns the default space if no key is provided.
6
+ * Returns undefined if no id is provided.
7
7
  * Requires a ClientProvider somewhere in the parent tree.
8
8
  *
9
- * @param spaceKeyLike the key of the space to look for
9
+ * @param spaceId the id of the space to look for.
10
10
  */
11
- export declare const useSpace: (spaceKeyLike?: PublicKeyLike) => Space | undefined;
12
- export type UseSpacesParams = {
11
+ export declare const useSpace: (spaceId?: SpaceId | PublicKey) => Space | undefined;
12
+ /**
13
+ * Get a Space database by the id of the space.
14
+ * The space is not guaranteed to be in the ready state.
15
+ * Returns undefined if no id is provided.
16
+ * Requires a ClientProvider somewhere in the parent tree.
17
+ *
18
+ * @param spaceId the id of the space to look for.
19
+ */
20
+ export declare const useDatabase: (spaceId?: SpaceId) => Space["db"] | undefined;
21
+ export type UseSpacesProps = {
13
22
  /**
14
23
  * Return uninitialized spaces as well.
15
24
  */
@@ -19,7 +28,7 @@ export type UseSpacesParams = {
19
28
  * Get all Spaces available to current user.
20
29
  * Requires a ClientProvider somewhere in the parent tree.
21
30
  * By default, only ready spaces are returned.
22
- * @returns an array of Spaces
31
+ * @returns an array of Spaces.
23
32
  */
24
- export declare const useSpaces: ({ all }?: UseSpacesParams) => Space[];
33
+ export declare const useSpaces: ({ all }?: UseSpacesProps) => Space[];
25
34
  //# sourceMappingURL=useSpaces.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSpaces.d.ts","sourceRoot":"","sources":["../../../../src/echo/useSpaces.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,KAAK,KAAK,EAAc,MAAM,mBAAmB,CAAC;AAK3D;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ,GAAI,eAAe,aAAa,KAAG,KAAK,GAAG,SA0B/D,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,UAAiB,eAAoB,KAAG,KAAK,EAMtE,CAAC"}
1
+ {"version":3,"file":"useSpaces.d.ts","sourceRoot":"","sources":["../../../../src/echo/useSpaces.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,OAAO,EAAc,MAAM,mBAAmB,CAAC;AAKzE;;;;;;;GAOG;AAGH,eAAO,MAAM,QAAQ,GAAI,UAAU,OAAO,GAAG,SAAS,KAAG,KAAK,GAAG,SAchE,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,GAAI,UAAU,OAAO,KAAG,KAAK,CAAC,IAAI,CAAC,GAAG,SAG7D,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B;;OAEG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,UAAiB,cAAmB,KAAG,KAAK,EAMrE,CAAC"}
@@ -3,5 +3,5 @@ import { type Selection, type SubscriptionHandle } from '@dxos/client/echo';
3
3
  * Create reactive selection.
4
4
  * Calls the callback when the selection changes and during the first render.
5
5
  */
6
- export declare const useSubscription: (cb: () => void, selection: Selection) => SubscriptionHandle | undefined;
6
+ export declare const useSubscription: (cb: () => void, selection: Selection) => SubscriptionHandle | null;
7
7
  //# sourceMappingURL=useSubscription.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSubscription.d.ts","sourceRoot":"","sources":["../../../../src/echo/useSubscription.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,kBAAkB,EAAsB,MAAM,mBAAmB,CAAC;AAEhG;;;GAGG;AAEH,eAAO,MAAM,eAAe,GAAI,IAAI,MAAM,IAAI,EAAE,WAAW,SAAS,mCAmBnE,CAAC"}
1
+ {"version":3,"file":"useSubscription.d.ts","sourceRoot":"","sources":["../../../../src/echo/useSubscription.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,kBAAkB,EAAsB,MAAM,mBAAmB,CAAC;AAEhG;;;GAGG;AAEH,eAAO,MAAM,eAAe,GAAI,IAAI,MAAM,IAAI,EAAE,WAAW,SAAS,8BAmBnE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSyncState.d.ts","sourceRoot":"","sources":["../../../../src/echo/useSyncState.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,KAAK,EAAE,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAU3F;;GAEG;AACH,eAAO,MAAM,YAAY,QAAO,iBAkC/B,CAAC;AAEF;;GAEG;AAEH,eAAO,MAAM,iBAAiB,GAAI,OAAO,KAAK,KAAG,aAAa,GAAG,SAkBhE,CAAC"}
1
+ {"version":3,"file":"useSyncState.d.ts","sourceRoot":"","sources":["../../../../src/echo/useSyncState.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,KAAK,EAAE,KAAK,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAW3F;;GAEG;AACH,eAAO,MAAM,YAAY,QAAO,iBAkC/B,CAAC;AAEF;;GAEG;AAEH,eAAO,MAAM,iBAAiB,GAAI,OAAO,KAAK,KAAG,aAAa,GAAG,SAkBhE,CAAC"}
@@ -1,11 +1,11 @@
1
- import '@dxos-theme';
1
+ import { type StoryObj } from '@storybook/react-vite';
2
2
  import React from 'react';
3
- declare const _default: {
3
+ declare const meta: {
4
4
  title: string;
5
5
  render: () => React.JSX.Element;
6
- };
7
- export default _default;
8
- export declare const Default: {
9
6
  decorators: import("@storybook/react").Decorator[];
10
7
  };
8
+ export default meta;
9
+ type Story = StoryObj<typeof meta>;
10
+ export declare const Default: Story;
11
11
  //# sourceMappingURL=Passkey.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Passkey.stories.d.ts","sourceRoot":"","sources":["../../../../src/halo/Passkey.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAO,KAAsB,MAAM,OAAO,CAAC;;;;;AA0H3C,wBAGE;AAsBF,eAAO,MAAM,OAAO;;CAEnB,CAAC"}
1
+ {"version":3,"file":"Passkey.stories.d.ts","sourceRoot":"","sources":["../../../../src/halo/Passkey.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAsB,MAAM,OAAO,CAAC;AA6I3C,QAAA,MAAM,IAAI;;;;CAIM,CAAC;AAEjB,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC"}
@@ -36,7 +36,7 @@ export type InvitationStatus = {
36
36
  multiUse?: boolean;
37
37
  shareable?: boolean;
38
38
  result: InvitationResult;
39
- error?: number;
39
+ error?: Error;
40
40
  cancel(): void;
41
41
  connect(observable: CancellableInvitationObservable): void;
42
42
  authenticate(authCode: string): Promise<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;AAeF,KAAK,iBAAiB,GAAG;IAAE,UAAU,EAAE,UAAU,CAAA;CAAE,CAAC;AAEpD,MAAM,MAAM,gBAAgB,GACxB,CAAC;IACC,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,GAAG,iBAAiB,CAAC,GACtB,CAAC;IACC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC;IACpC,UAAU,EAAE,+BAA+B,CAAC;CAC7C,GAAG,iBAAiB,CAAC,GACtB,CAAC;IACC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;IACjC,MAAM,EAAE,gBAAgB,CAAC;CAC1B,GAAG,iBAAiB,CAAC,GACtB,CAAC;IACC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;IAC9D,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC;CAC5B,GAAG,iBAAiB,CAAC,GACtB;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,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,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;AAOF,eAAO,MAAM,mBAAmB,GAAI,aAAa,+BAA+B,KAAG,gBA4HlF,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;AAgBF,KAAK,iBAAiB,GAAG;IAAE,UAAU,EAAE,UAAU,CAAA;CAAE,CAAC;AAEpD,MAAM,MAAM,gBAAgB,GACxB,CAAC;IACC,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,GAAG,iBAAiB,CAAC,GACtB,CAAC;IACC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC;IACpC,UAAU,EAAE,+BAA+B,CAAC;CAC7C,GAAG,iBAAiB,CAAC,GACtB,CAAC;IACC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;IACjC,MAAM,EAAE,gBAAgB,CAAC;CAC1B,GAAG,iBAAiB,CAAC,GACtB,CAAC;IACC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;IAC9D,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC;CAC5B,GAAG,iBAAiB,CAAC,GACtB;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,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,gBAAgB,CAAC;IACzB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,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;AAOF,eAAO,MAAM,mBAAmB,GAAI,aAAa,+BAA+B,KAAG,gBA4HlF,CAAC"}
@@ -1,11 +1,12 @@
1
1
  import React, { type FC } from 'react';
2
- import { Client, type PublicKey } from '@dxos/client';
3
- import { type TypedObject } from '@dxos/echo-schema';
2
+ import { Client } from '@dxos/client';
3
+ import { type Type } from '@dxos/echo';
4
+ import { type SpaceId } from '../echo';
4
5
  import { type WithClientProviderProps } from './withClientProvider';
5
6
  export type ClientRepeatedComponentProps = {
6
7
  id: number;
7
8
  count: number;
8
- spaceKey?: PublicKey;
9
+ spaceId?: SpaceId;
9
10
  };
10
11
  export type ClientRepeaterControlsProps = {
11
12
  clients: Client[];
@@ -16,9 +17,9 @@ export type ClientRepeaterProps<P extends ClientRepeatedComponentProps> = {
16
17
  controls?: FC<ClientRepeaterControlsProps>;
17
18
  count?: number;
18
19
  clients?: Client[];
19
- types?: TypedObject[];
20
+ types?: Type.AnyObj[];
20
21
  args?: Omit<P, 'id' | 'count'>;
21
- } & Pick<WithClientProviderProps, 'createIdentity' | 'createSpace' | 'onSpaceCreated'>;
22
+ } & Pick<WithClientProviderProps, 'createIdentity' | 'createSpace' | 'onCreateSpace'>;
22
23
  /**
23
24
  * Utility component for Storybook stories which sets up clients for n peers.
24
25
  * The `Component` property is rendered n times, once for each peer.
@@ -1 +1 @@
1
- {"version":3,"file":"ClientRepeater.d.ts","sourceRoot":"","sources":["../../../../src/testing/ClientRepeater.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,KAAK,EAAE,EAA+B,MAAM,OAAO,CAAC;AAEpE,OAAO,EAAE,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAEtD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMrD,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,MAAM,MAAM,4BAA4B,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC;AAE/F,MAAM,MAAM,2BAA2B,GAAG;IAAE,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAGhE,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,4BAA4B,IAAI;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,EAAE,CAAC,4BAA4B,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE,EAAE,CAAC,2BAA2B,CAAC,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;IACtB,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC;CAChC,GAAG,IAAI,CAAC,uBAAuB,EAAE,gBAAgB,GAAG,aAAa,GAAG,gBAAgB,CAAC,CAAC;AAEvF;;;;GAIG;AAMH,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,4BAA4B,EAAE,OAAO,mBAAmB,CAAC,CAAC,CAAC,6BA2DnG,CAAC"}
1
+ {"version":3,"file":"ClientRepeater.d.ts","sourceRoot":"","sources":["../../../../src/testing/ClientRepeater.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,KAAK,EAAE,EAAoB,MAAM,OAAO,CAAC;AAEzD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,YAAY,CAAC;AAKvC,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,KAAK,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,MAAM,MAAM,4BAA4B,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAE5F,MAAM,MAAM,2BAA2B,GAAG;IAAE,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAGhE,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,4BAA4B,IAAI;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,EAAE,CAAC,4BAA4B,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE,EAAE,CAAC,2BAA2B,CAAC,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IACtB,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC;CAChC,GAAG,IAAI,CAAC,uBAAuB,EAAE,gBAAgB,GAAG,aAAa,GAAG,eAAe,CAAC,CAAC;AAEtF;;;;GAIG;AAMH,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS,4BAA4B,EAAE,OAAO,mBAAmB,CAAC,CAAC,CAAC,6BAkDnG,CAAC"}
@@ -1,14 +1,10 @@
1
- import '@dxos-theme';
2
- import React from 'react';
3
- declare const _default: {
1
+ import { type StoryObj } from '@storybook/react-vite';
2
+ declare const meta: {
4
3
  title: string;
5
4
  decorators: import("@storybook/react").Decorator[];
6
5
  };
7
- export default _default;
8
- export declare const Default: {
9
- render: () => React.JSX.Element;
10
- };
11
- export declare const Space: {
12
- render: () => React.JSX.Element;
13
- };
6
+ export default meta;
7
+ type Story = StoryObj<typeof meta>;
8
+ export declare const Default: Story;
9
+ export declare const Space: Story;
14
10
  //# sourceMappingURL=ClientRepeater.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClientRepeater.stories.d.ts","sourceRoot":"","sources":["../../../../src/testing/ClientRepeater.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAO,KAAK,MAAM,OAAO,CAAC;;;;;AAW1B,wBAGE;AAgCF,eAAO,MAAM,OAAO;;CAEnB,CAAC;AAEF,eAAO,MAAM,KAAK;;CAEjB,CAAC"}
1
+ {"version":3,"file":"ClientRepeater.stories.d.ts","sourceRoot":"","sources":["../../../../src/testing/ClientRepeater.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAYjE,QAAA,MAAM,IAAI;;;CAGoB,CAAC;AAE/B,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAoCnC,eAAO,MAAM,OAAO,EAAE,KAErB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,KAEnB,CAAC"}
@@ -1,7 +1,9 @@
1
- import { type Space } from '@dxos/client/echo';
1
+ import { type Space, type SpaceId } from '@dxos/client/echo';
2
2
  export type ClientStory = {
3
+ index?: number;
4
+ spaceId?: SpaceId;
3
5
  space?: Space;
4
6
  };
5
7
  export declare const ClientStory: import("react").Context<ClientStory | undefined>;
6
- export declare const useClientProvider: () => ClientStory;
8
+ export declare const useClientStory: () => ClientStory;
7
9
  //# sourceMappingURL=context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/testing/context.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG/C,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAGF,eAAO,MAAM,WAAW,kDAAoD,CAAC;AAE7E,eAAO,MAAM,iBAAiB,QAAO,WAEpC,CAAC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/testing/context.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG7D,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAEF,eAAO,MAAM,WAAW,kDAAoD,CAAC;AAE7E,eAAO,MAAM,cAAc,QAAO,WAEjC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../src/testing/util.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,MAAM,EAAE,KAAK,MAAM,EAAY,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAK/C,eAAO,MAAM,YAAY,GAAU,2CAIhC;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAO;;;EAc3E,CAAC;AAEF,eAAO,MAAM,2BAA2B,GAAU,QAAQ,MAAM,4BACxC,GAAG,uBAC1B,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAU,QAAQ,MAAM,4BACjC,GAAG,uBAC1B,CAAC"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../src/testing/util.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,MAAM,EAAE,KAAK,MAAM,EAAY,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAK/C,eAAO,MAAM,YAAY,GAAU,2CAIhC;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAO;;;EAa3E,CAAC;AAEF,eAAO,MAAM,2BAA2B,GAAU,QAAQ,MAAM,4BACxC,GAAG,uBAC1B,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAU,QAAQ,MAAM,4BACjC,GAAG,uBAC1B,CAAC"}
@@ -7,10 +7,10 @@ type InitializeProps = {
7
7
  createIdentity?: boolean;
8
8
  createSpace?: boolean;
9
9
  onInitialized?: (client: Client) => MaybePromise<void>;
10
- onIdentityCreated?: (props: {
10
+ onCreateIdentity?: (props: {
11
11
  client: Client;
12
- }) => MaybePromise<void>;
13
- onSpaceCreated?: (props: {
12
+ }, context: StoryContext | any) => MaybePromise<void>;
13
+ onCreateSpace?: (props: {
14
14
  client: Client;
15
15
  space: Space;
16
16
  }, context: StoryContext | any) => MaybePromise<void>;
@@ -19,18 +19,14 @@ export type WithClientProviderProps = InitializeProps & Omit<ClientProviderProps
19
19
  /**
20
20
  * Decorator that provides the client context.
21
21
  */
22
- export declare const withClientProvider: ({ createIdentity, createSpace, onSpaceCreated, onIdentityCreated, onInitialized, ...props }?: WithClientProviderProps) => Decorator;
22
+ export declare const withClientProvider: ({ createIdentity, createSpace, onCreateSpace, onCreateIdentity, onInitialized, ...props }?: WithClientProviderProps) => Decorator;
23
23
  export type WithMultiClientProviderProps = InitializeProps & Omit<ClientProviderProps, 'onInitialized'> & {
24
24
  numClients?: number;
25
25
  };
26
- export declare const useMultiClient: () => {
27
- id: number;
28
- };
29
26
  /**
30
27
  * Decorator that creates a scaffold for multiple clients.
31
28
  * Orchestrates invitations between a randomly selected host and the remaining clients.
32
- * NOTE: Should come before withLayout.
33
29
  */
34
- export declare const withMultiClientProvider: ({ numClients, createIdentity, createSpace, onSpaceCreated, onIdentityCreated, onInitialized, ...props }: WithMultiClientProviderProps) => Decorator;
30
+ export declare const withMultiClientProvider: ({ numClients, createIdentity, createSpace, onCreateSpace, onCreateIdentity, onInitialized, ...props }: WithMultiClientProviderProps) => Decorator;
35
31
  export {};
36
32
  //# sourceMappingURL=withClientProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"withClientProvider.d.ts","sourceRoot":"","sources":["../../../../src/testing/withClientProvider.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAKrE,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG/C,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAAkB,KAAK,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAIrE,KAAK,eAAe,GAAG;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;IACvD,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;IAEtE,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,EAAE,OAAO,EAAE,YAAY,GAAG,GAAG,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;CAC/G,CAAC;AA4BF,MAAM,MAAM,uBAAuB,GAAG,eAAe,GAAG,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;AAEnG;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,8FAOhC,uBAA4B,KAAG,SA6BjC,CAAC;AAKF,MAAM,MAAM,4BAA4B,GAAG,eAAe,GACxD,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAIvE,eAAO,MAAM,cAAc;QAFoB,MAAM;CAEa,CAAC;AAEnE;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAAI,yGAQrC,4BAA4B,KAAG,SAsDjC,CAAC"}
1
+ {"version":3,"file":"withClientProvider.d.ts","sourceRoot":"","sources":["../../../../src/testing/withClientProvider.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAIrE,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,KAAK,KAAK,EAAgB,MAAM,mBAAmB,CAAC;AAI7D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAAkB,KAAK,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAGrE,KAAK,eAAe,GAAG;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;IACvD,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,OAAO,EAAE,YAAY,GAAG,GAAG,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;IAElG,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,EAAE,OAAO,EAAE,YAAY,GAAG,GAAG,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;CAC9G,CAAC;AA6BF,MAAM,MAAM,uBAAuB,GAAG,eAAe,GAAG,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;AAEnG;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,4FAOhC,uBAA4B,KAAG,SA6BjC,CAAC;AAKF,MAAM,MAAM,4BAA4B,GAAG,eAAe,GACxD,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvE;;;GAGG;AACH,eAAO,MAAM,uBAAuB,GAAI,uGAQrC,4BAA4B,KAAG,SAuEjC,CAAC"}
@@ -1,14 +1,13 @@
1
- import '@dxos-theme';
1
+ import { type StoryObj } from '@storybook/react-vite';
2
2
  import React from 'react';
3
- declare const _default: {
3
+ declare const meta: {
4
4
  title: string;
5
- render: () => React.JSX.Element | null;
6
- };
7
- export default _default;
8
- export declare const Default: {
9
- decorators: import("@storybook/react").Decorator[];
10
- };
11
- export declare const Multiple: {
5
+ render: () => React.JSX.Element;
12
6
  decorators: import("@storybook/react").Decorator[];
7
+ tags: string[];
13
8
  };
9
+ export default meta;
10
+ type Story = StoryObj<typeof meta>;
11
+ export declare const Default: Story;
12
+ export declare const Multiple: Story;
14
13
  //# sourceMappingURL=withClientProvider.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"withClientProvider.stories.d.ts","sourceRoot":"","sources":["../../../../src/testing/withClientProvider.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,aAAa,CAAC;AAErB,OAAO,KAAK,MAAM,OAAO,CAAC;;;;;AAiC1B,wBAGE;AAaF,eAAO,MAAM,OAAO;;CAEnB,CAAC;AAEF,eAAO,MAAM,QAAQ;;CAMpB,CAAC"}
1
+ {"version":3,"file":"withClientProvider.stories.d.ts","sourceRoot":"","sources":["../../../../src/testing/withClientProvider.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,MAAM,OAAO,CAAC;AAiC1B,QAAA,MAAM,IAAI;;;;;CAK2B,CAAC;AAEtC,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAanC,eAAO,MAAM,OAAO,EAAE,KAUrB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAMtB,CAAC"}