@dxos/react-client 0.8.4-main.8342792842 → 0.8.4-main.8360d9e660
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.
- package/.storybook/main.mts +1 -3
- package/dist/lib/browser/echo/index.mjs.map +2 -2
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +8 -40
- package/dist/lib/browser/testing/index.mjs.map +3 -3
- package/dist/lib/node-esm/echo/index.mjs.map +2 -2
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/testing/index.mjs +8 -40
- package/dist/lib/node-esm/testing/index.mjs.map +3 -3
- package/dist/types/src/echo/useQueue.d.ts +1 -0
- package/dist/types/src/echo/useQueue.d.ts.map +1 -1
- package/dist/types/src/testing/ClientRepeater.d.ts +1 -1
- package/dist/types/src/testing/ClientRepeater.d.ts.map +1 -1
- package/dist/types/src/testing/withClientProvider.d.ts.map +1 -1
- package/dist/types/src/testing/withClientProvider.stories.d.ts +1 -1
- package/dist/types/src/testing/withClientProvider.stories.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/docs/README.md +38 -38
- package/moon.yml +1 -4
- package/package.json +24 -25
- package/src/echo/useQueue.ts +1 -0
- package/src/halo/Passkey.stories.tsx +2 -2
- package/src/testing/ClientRepeater.tsx +1 -1
- package/src/testing/withClientProvider.stories.tsx +3 -4
- package/src/testing/withClientProvider.tsx +4 -35
- package/typedoc.json +1 -1
package/docs/README.md
CHANGED
|
@@ -168,41 +168,41 @@ dxos/react-client --> dxos/react-async
|
|
|
168
168
|
|
|
169
169
|
## Dependencies
|
|
170
170
|
|
|
171
|
-
| Module
|
|
172
|
-
|
|
173
|
-
| [`@dxos/async`](../../../common/async/docs/README.md)
|
|
174
|
-
| [`@dxos/broadcast`](../../../core/mesh/broadcast/docs/README.md)
|
|
175
|
-
| [`@dxos/client`](../../client/docs/README.md)
|
|
176
|
-
| [`@dxos/client-services`](../../client-services/docs/README.md)
|
|
177
|
-
| [`@dxos/codec-protobuf`](../../../common/codec-protobuf/docs/README.md)
|
|
178
|
-
| [`@dxos/config`](../../config/docs/README.md)
|
|
179
|
-
| [`@dxos/context`](../../../common/context/docs/README.md)
|
|
180
|
-
| [`@dxos/credentials`](../../../core/halo/credentials/docs/README.md)
|
|
181
|
-
| [`@dxos/crypto`](../../../common/crypto/docs/README.md)
|
|
182
|
-
| [`@dxos/debug`](../../../common/debug/docs/README.md)
|
|
183
|
-
| [`@dxos/echo-db`](../../../core/echo/echo-db/docs/README.md)
|
|
184
|
-
| [`@dxos/errors`](../../errors/docs/README.md)
|
|
185
|
-
| [`@dxos/feed-store`](../../../common/feed-store/docs/README.md)
|
|
186
|
-
| [`@dxos/hypercore`](../../../common/hypercore/docs/README.md)
|
|
187
|
-
| [`@dxos/keyring`](../../../core/halo/keyring/docs/README.md)
|
|
188
|
-
| [`@dxos/keys`](../../../common/keys/docs/README.md)
|
|
189
|
-
| [`@dxos/log`](../../../common/log/docs/README.md)
|
|
190
|
-
| [`@dxos/mesh-protocol`](../../../core/mesh/mesh-protocol/docs/README.md)
|
|
191
|
-
| [`@dxos/messaging`](../../../core/mesh/messaging/docs/README.md)
|
|
192
|
-
| [`@dxos/model-factory`](../../../core/echo/model-factory/docs/README.md)
|
|
193
|
-
| [`@dxos/network-generator`](../../../core/mesh/network-generator/docs/README.md)
|
|
194
|
-
| [`@dxos/network-manager`](../../../core/mesh/network-manager/docs/README.md)
|
|
195
|
-
| [`@dxos/document-model`](../../../core/echo/document-model/docs/README.md)
|
|
196
|
-
| [`@dxos/protocol-plugin-presence`](../../../core/mesh/protocol-plugin-presence/docs/README.md)
|
|
197
|
-
| [`@dxos/protocol-plugin-replicator`](../../../core/mesh/protocol-plugin-replicator/docs/README.md) |
|
|
198
|
-
| [`@dxos/protocol-plugin-rpc`](../../../core/mesh/protocol-plugin-rpc/docs/README.md)
|
|
199
|
-
| [`@dxos/protocols`](../../../core/protocols/docs/README.md)
|
|
200
|
-
| [`@dxos/random-access-storage`](../../../common/random-access-storage/docs/README.md)
|
|
201
|
-
| [`@dxos/react-async`](../../../common/react-async/docs/README.md)
|
|
202
|
-
| [`@dxos/rpc`](../../../core/mesh/rpc/docs/README.md)
|
|
203
|
-
| [`@dxos/rpc-tunnel`](../../../core/mesh/rpc-tunnel/docs/README.md)
|
|
204
|
-
| [`@dxos/teleport`](../../../core/mesh/teleport/docs/README.md)
|
|
205
|
-
| [`@dxos/teleport-plugin-replicator`](../../../core/mesh/teleport-plugin-replicator/docs/README.md) |
|
|
206
|
-
| [`@dxos/text-model`](../../../core/echo/text-model/docs/README.md)
|
|
207
|
-
| [`@dxos/timeframe`](../../../common/timeframe/docs/README.md)
|
|
208
|
-
| [`@dxos/util`](../../../common/util/docs/README.md)
|
|
171
|
+
| Module | Direct |
|
|
172
|
+
| -------------------------------------------------------------------------------------------------- | ------- |
|
|
173
|
+
| [`@dxos/async`](../../../common/async/docs/README.md) | ✓ |
|
|
174
|
+
| [`@dxos/broadcast`](../../../core/mesh/broadcast/docs/README.md) | |
|
|
175
|
+
| [`@dxos/client`](../../client/docs/README.md) | ✓ |
|
|
176
|
+
| [`@dxos/client-services`](../../client-services/docs/README.md) | ✓ |
|
|
177
|
+
| [`@dxos/codec-protobuf`](../../../common/codec-protobuf/docs/README.md) | ✓ |
|
|
178
|
+
| [`@dxos/config`](../../config/docs/README.md) | ✓ |
|
|
179
|
+
| [`@dxos/context`](../../../common/context/docs/README.md) | |
|
|
180
|
+
| [`@dxos/credentials`](../../../core/halo/credentials/docs/README.md) | |
|
|
181
|
+
| [`@dxos/crypto`](../../../common/crypto/docs/README.md) | |
|
|
182
|
+
| [`@dxos/debug`](../../../common/debug/docs/README.md) | ✓ |
|
|
183
|
+
| [`@dxos/echo-db`](../../../core/echo/echo-db/docs/README.md) | |
|
|
184
|
+
| [`@dxos/errors`](../../errors/docs/README.md) | |
|
|
185
|
+
| [`@dxos/feed-store`](../../../common/feed-store/docs/README.md) | |
|
|
186
|
+
| [`@dxos/hypercore`](../../../common/hypercore/docs/README.md) | |
|
|
187
|
+
| [`@dxos/keyring`](../../../core/halo/keyring/docs/README.md) | |
|
|
188
|
+
| [`@dxos/keys`](../../../common/keys/docs/README.md) | ✓ |
|
|
189
|
+
| [`@dxos/log`](../../../common/log/docs/README.md) | ✓ |
|
|
190
|
+
| [`@dxos/mesh-protocol`](../../../core/mesh/mesh-protocol/docs/README.md) | |
|
|
191
|
+
| [`@dxos/messaging`](../../../core/mesh/messaging/docs/README.md) | ✓ |
|
|
192
|
+
| [`@dxos/model-factory`](../../../core/echo/model-factory/docs/README.md) | |
|
|
193
|
+
| [`@dxos/network-generator`](../../../core/mesh/network-generator/docs/README.md) | |
|
|
194
|
+
| [`@dxos/network-manager`](../../../core/mesh/network-manager/docs/README.md) | |
|
|
195
|
+
| [`@dxos/document-model`](../../../core/echo/document-model/docs/README.md) | |
|
|
196
|
+
| [`@dxos/protocol-plugin-presence`](../../../core/mesh/protocol-plugin-presence/docs/README.md) | |
|
|
197
|
+
| [`@dxos/protocol-plugin-replicator`](../../../core/mesh/protocol-plugin-replicator/docs/README.md) | |
|
|
198
|
+
| [`@dxos/protocol-plugin-rpc`](../../../core/mesh/protocol-plugin-rpc/docs/README.md) | |
|
|
199
|
+
| [`@dxos/protocols`](../../../core/protocols/docs/README.md) | ✓ |
|
|
200
|
+
| [`@dxos/random-access-storage`](../../../common/random-access-storage/docs/README.md) | |
|
|
201
|
+
| [`@dxos/react-async`](../../../common/react-async/docs/README.md) | ✓ |
|
|
202
|
+
| [`@dxos/rpc`](../../../core/mesh/rpc/docs/README.md) | ✓ |
|
|
203
|
+
| [`@dxos/rpc-tunnel`](../../../core/mesh/rpc-tunnel/docs/README.md) | ✓ |
|
|
204
|
+
| [`@dxos/teleport`](../../../core/mesh/teleport/docs/README.md) | |
|
|
205
|
+
| [`@dxos/teleport-plugin-replicator`](../../../core/mesh/teleport-plugin-replicator/docs/README.md) | |
|
|
206
|
+
| [`@dxos/text-model`](../../../core/echo/text-model/docs/README.md) | |
|
|
207
|
+
| [`@dxos/timeframe`](../../../common/timeframe/docs/README.md) | |
|
|
208
|
+
| [`@dxos/util`](../../../common/util/docs/README.md) | ✓ |
|
package/moon.yml
CHANGED
|
@@ -3,6 +3,7 @@ language: typescript
|
|
|
3
3
|
tags:
|
|
4
4
|
- ts-build
|
|
5
5
|
- ts-test
|
|
6
|
+
- ts-test-storybook
|
|
6
7
|
- typedoc
|
|
7
8
|
- pack
|
|
8
9
|
- storybook
|
|
@@ -17,7 +18,3 @@ tasks:
|
|
|
17
18
|
- '--entryPoint=src/mesh/index.ts'
|
|
18
19
|
- '--entryPoint=src/testing/index.ts'
|
|
19
20
|
- '--entryPoint=src/worker.ts'
|
|
20
|
-
test:
|
|
21
|
-
inputs:
|
|
22
|
-
- .storybook/*
|
|
23
|
-
- /tools/storybook-react/.storybook/main.ts
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/react-client",
|
|
3
|
-
"version": "0.8.4-main.
|
|
3
|
+
"version": "0.8.4-main.8360d9e660",
|
|
4
4
|
"description": "React client API",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -89,21 +89,20 @@
|
|
|
89
89
|
}
|
|
90
90
|
},
|
|
91
91
|
"dependencies": {
|
|
92
|
-
"
|
|
93
|
-
"@dxos/
|
|
94
|
-
"@dxos/
|
|
95
|
-
"@dxos/codec-protobuf": "0.8.4-main.
|
|
96
|
-
"@dxos/
|
|
97
|
-
"@dxos/
|
|
98
|
-
"@dxos/echo": "0.8.4-main.
|
|
99
|
-
"@dxos/
|
|
100
|
-
"@dxos/invariant": "0.8.4-main.
|
|
101
|
-
"@dxos/
|
|
102
|
-
"@dxos/node-std": "0.8.4-main.
|
|
103
|
-
"@dxos/
|
|
104
|
-
"@dxos/
|
|
105
|
-
"@dxos/
|
|
106
|
-
"@dxos/util": "0.8.4-main.8342792842"
|
|
92
|
+
"@dxos/async": "0.8.4-main.8360d9e660",
|
|
93
|
+
"@dxos/client": "0.8.4-main.8360d9e660",
|
|
94
|
+
"@dxos/config": "0.8.4-main.8360d9e660",
|
|
95
|
+
"@dxos/codec-protobuf": "0.8.4-main.8360d9e660",
|
|
96
|
+
"@dxos/debug": "0.8.4-main.8360d9e660",
|
|
97
|
+
"@dxos/context": "0.8.4-main.8360d9e660",
|
|
98
|
+
"@dxos/echo": "0.8.4-main.8360d9e660",
|
|
99
|
+
"@dxos/echo-react": "0.8.4-main.8360d9e660",
|
|
100
|
+
"@dxos/invariant": "0.8.4-main.8360d9e660",
|
|
101
|
+
"@dxos/log": "0.8.4-main.8360d9e660",
|
|
102
|
+
"@dxos/node-std": "0.8.4-main.8360d9e660",
|
|
103
|
+
"@dxos/protocols": "0.8.4-main.8360d9e660",
|
|
104
|
+
"@dxos/react-hooks": "0.8.4-main.8360d9e660",
|
|
105
|
+
"@dxos/util": "0.8.4-main.8360d9e660"
|
|
107
106
|
},
|
|
108
107
|
"devDependencies": {
|
|
109
108
|
"@types/react": "~19.2.7",
|
|
@@ -111,21 +110,21 @@
|
|
|
111
110
|
"react": "~19.2.3",
|
|
112
111
|
"react-dom": "~19.2.3",
|
|
113
112
|
"typedoc": "0.28.1",
|
|
114
|
-
"@dxos/
|
|
115
|
-
"@dxos/
|
|
116
|
-
"@dxos/react-ui-syntax-highlighter": "0.8.4-main.
|
|
117
|
-
"@dxos/
|
|
118
|
-
"@dxos/
|
|
119
|
-
"@dxos/ui-theme": "0.8.4-main.
|
|
113
|
+
"@dxos/react-ui": "0.8.4-main.8360d9e660",
|
|
114
|
+
"@dxos/random": "0.8.4-main.8360d9e660",
|
|
115
|
+
"@dxos/react-ui-syntax-highlighter": "0.8.4-main.8360d9e660",
|
|
116
|
+
"@dxos/storybook-utils": "0.8.4-main.8360d9e660",
|
|
117
|
+
"@dxos/test-utils": "0.8.4-main.8360d9e660",
|
|
118
|
+
"@dxos/ui-theme": "0.8.4-main.8360d9e660"
|
|
120
119
|
},
|
|
121
120
|
"peerDependencies": {
|
|
122
121
|
"react": "~19.2.3",
|
|
123
122
|
"react-dom": "~19.2.3"
|
|
124
123
|
},
|
|
125
124
|
"optionalDependencies": {
|
|
126
|
-
"@dxos/react-ui": "0.8.4-main.
|
|
127
|
-
"@dxos/ui-theme": "0.8.4-main.
|
|
128
|
-
"@dxos/random": "0.8.4-main.
|
|
125
|
+
"@dxos/react-ui": "0.8.4-main.8360d9e660",
|
|
126
|
+
"@dxos/ui-theme": "0.8.4-main.8360d9e660",
|
|
127
|
+
"@dxos/random": "0.8.4-main.8360d9e660"
|
|
129
128
|
},
|
|
130
129
|
"publishConfig": {
|
|
131
130
|
"access": "public"
|
package/src/echo/useQueue.ts
CHANGED
|
@@ -105,7 +105,7 @@ const Test = () => {
|
|
|
105
105
|
|
|
106
106
|
return (
|
|
107
107
|
<>
|
|
108
|
-
<div className='
|
|
108
|
+
<div className='mb-4 flex gap-2'>
|
|
109
109
|
<Button disabled={!!identity} onClick={handleCreateIdentity}>
|
|
110
110
|
Create Identity
|
|
111
111
|
</Button>
|
|
@@ -116,7 +116,7 @@ const Test = () => {
|
|
|
116
116
|
Authenticate with Passkey
|
|
117
117
|
</Button>
|
|
118
118
|
</div>
|
|
119
|
-
<div className='flex flex-col min-w-[28rem] divide-y divide-separator border border-separator rounded'>
|
|
119
|
+
<div className='flex flex-col min-w-[28rem] divide-y divide-separator border border-separator rounded-sm'>
|
|
120
120
|
<SyntaxHighlighter language='json'>
|
|
121
121
|
{JSON.stringify({ identity, credentials: credentials.length }, null, 2)}
|
|
122
122
|
</SyntaxHighlighter>
|
|
@@ -26,7 +26,7 @@ export type ClientRepeaterProps<P extends ClientRepeatedComponentProps> = {
|
|
|
26
26
|
controls?: FC<ClientRepeaterControlsProps>;
|
|
27
27
|
count?: number;
|
|
28
28
|
clients?: Client[];
|
|
29
|
-
types?: Type.
|
|
29
|
+
types?: Type.AnyObj[];
|
|
30
30
|
args?: Omit<P, 'id' | 'count'>;
|
|
31
31
|
} & Pick<WithClientProviderProps, 'createIdentity' | 'createSpace' | 'onCreateSpace'>;
|
|
32
32
|
|
|
@@ -7,9 +7,8 @@ import React from 'react';
|
|
|
7
7
|
import { expect, within } from 'storybook/test';
|
|
8
8
|
|
|
9
9
|
import { log } from '@dxos/log';
|
|
10
|
-
import { withLayout, withTheme } from '@dxos/react-ui/testing';
|
|
10
|
+
import { withLayout, withTheme, Loading } from '@dxos/react-ui/testing';
|
|
11
11
|
import { SyntaxHighlighter } from '@dxos/react-ui-syntax-highlighter';
|
|
12
|
-
import { render } from '@dxos/storybook-utils';
|
|
13
12
|
|
|
14
13
|
import { useClient } from '../client';
|
|
15
14
|
import { type Space, useSpaces } from '../echo';
|
|
@@ -25,7 +24,7 @@ const DefaultStory = () => {
|
|
|
25
24
|
const client = useClient();
|
|
26
25
|
const spaces = useSpaces();
|
|
27
26
|
if (!client) {
|
|
28
|
-
return
|
|
27
|
+
return <Loading data={{ client: !!client }} />;
|
|
29
28
|
}
|
|
30
29
|
|
|
31
30
|
return (
|
|
@@ -40,7 +39,7 @@ const DefaultStory = () => {
|
|
|
40
39
|
|
|
41
40
|
const meta = {
|
|
42
41
|
title: 'sdk/react-client/withClientProvider',
|
|
43
|
-
render:
|
|
42
|
+
render: DefaultStory,
|
|
44
43
|
decorators: [withTheme()],
|
|
45
44
|
tags: ['test'],
|
|
46
45
|
} satisfies Meta<typeof DefaultStory>;
|
|
@@ -3,14 +3,14 @@
|
|
|
3
3
|
//
|
|
4
4
|
|
|
5
5
|
import { type Decorator, type StoryContext } from '@storybook/react';
|
|
6
|
-
import React, {
|
|
7
|
-
import { type FallbackProps, ErrorBoundary as NaturalErrorBoundary } from 'react-error-boundary';
|
|
6
|
+
import React, { useCallback, useMemo, useRef, useState } from 'react';
|
|
8
7
|
|
|
9
8
|
import { Trigger } from '@dxos/async';
|
|
10
9
|
import { type Client } from '@dxos/client';
|
|
11
10
|
import { type Space, type SpaceId } from '@dxos/client/echo';
|
|
12
11
|
import { TestBuilder, performInvitation } from '@dxos/client/testing';
|
|
13
12
|
import { log } from '@dxos/log';
|
|
13
|
+
import { ErrorBoundary } from '@dxos/react-ui';
|
|
14
14
|
import { type MaybePromise } from '@dxos/util';
|
|
15
15
|
|
|
16
16
|
import { ClientProvider, type ClientProviderProps } from '../client';
|
|
@@ -87,7 +87,7 @@ export const withClientProvider = ({
|
|
|
87
87
|
};
|
|
88
88
|
|
|
89
89
|
return (
|
|
90
|
-
<ErrorBoundary>
|
|
90
|
+
<ErrorBoundary name='client-provider'>
|
|
91
91
|
<ClientProvider onInitialized={handleInitialized} {...props}>
|
|
92
92
|
<ClientStory.Provider value={data}>
|
|
93
93
|
<Story />
|
|
@@ -178,7 +178,7 @@ export const withMultiClientProvider = ({
|
|
|
178
178
|
{...props}
|
|
179
179
|
>
|
|
180
180
|
<ClientStory.Provider value={{ index, spaceId }}>
|
|
181
|
-
<ErrorBoundary>
|
|
181
|
+
<ErrorBoundary name='client-provider'>
|
|
182
182
|
<Story />
|
|
183
183
|
</ErrorBoundary>
|
|
184
184
|
</ClientStory.Provider>
|
|
@@ -188,34 +188,3 @@ export const withMultiClientProvider = ({
|
|
|
188
188
|
);
|
|
189
189
|
};
|
|
190
190
|
};
|
|
191
|
-
|
|
192
|
-
const ErrorBoundary = ({ children }: PropsWithChildren) => {
|
|
193
|
-
const [error, setError] = useState<Error>();
|
|
194
|
-
useEffect(() => {
|
|
195
|
-
const handleError = (event: PromiseRejectionEvent) => {
|
|
196
|
-
setError(event.reason);
|
|
197
|
-
};
|
|
198
|
-
|
|
199
|
-
window.addEventListener('unhandledrejection', handleError);
|
|
200
|
-
return () => window.removeEventListener('unhandledrejection', handleError);
|
|
201
|
-
}, []);
|
|
202
|
-
|
|
203
|
-
if (error) {
|
|
204
|
-
return <ErrorFallback error={error} resetErrorBoundary={() => setError(undefined)} />;
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
return <NaturalErrorBoundary FallbackComponent={ErrorFallback}>{children}</NaturalErrorBoundary>;
|
|
208
|
-
};
|
|
209
|
-
|
|
210
|
-
const ErrorFallback = ({ error }: FallbackProps) => {
|
|
211
|
-
const { name, message, stack } =
|
|
212
|
-
error instanceof Error ? error : { name: 'Error', message: String(error), stack: undefined };
|
|
213
|
-
|
|
214
|
-
return (
|
|
215
|
-
<div role='alert' className='flex flex-col p-4 gap-4 overflow-auto'>
|
|
216
|
-
<h1 className='text-xl text-red-500'>{name}</h1>
|
|
217
|
-
<div className='text-lg'>{message}</div>
|
|
218
|
-
{stack && <pre className='whitespace-pre-wrap text-sm text-subdued'>{stack}</pre>}
|
|
219
|
-
</div>
|
|
220
|
-
);
|
|
221
|
-
};
|
package/typedoc.json
CHANGED