@dxos/react-client 0.5.3-main.59db342 → 0.5.3-main.61bbff4

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 (29) hide show
  1. package/dist/lib/browser/{chunk-BQ4BAP42.mjs → chunk-26VFTP7R.mjs} +38 -30
  2. package/dist/lib/browser/chunk-26VFTP7R.mjs.map +7 -0
  3. package/dist/lib/browser/echo/index.mjs +3 -3
  4. package/dist/lib/browser/echo/index.mjs.map +3 -3
  5. package/dist/lib/browser/halo/index.mjs +1 -1
  6. package/dist/lib/browser/invitations/index.mjs +1 -1
  7. package/dist/lib/browser/meta.json +1 -1
  8. package/dist/lib/browser/testing/index.mjs +1 -1
  9. package/dist/lib/browser/testing/index.mjs.map +3 -3
  10. package/dist/lib/node/{chunk-X5URYLUS.cjs → chunk-TQWLADVH.cjs} +41 -33
  11. package/dist/lib/node/chunk-TQWLADVH.cjs.map +7 -0
  12. package/dist/lib/node/echo/index.cjs +3 -3
  13. package/dist/lib/node/echo/index.cjs.map +3 -3
  14. package/dist/lib/node/halo/index.cjs +2 -2
  15. package/dist/lib/node/invitations/index.cjs +7 -7
  16. package/dist/lib/node/invitations/index.cjs.map +1 -1
  17. package/dist/lib/node/meta.json +1 -1
  18. package/dist/lib/node/testing/index.cjs +1 -1
  19. package/dist/lib/node/testing/index.cjs.map +3 -3
  20. package/dist/types/src/echo/useMembers.d.ts +1 -1
  21. package/dist/types/src/echo/useMembers.d.ts.map +1 -1
  22. package/dist/types/src/invitations/useInvitationStatus.d.ts +10 -6
  23. package/dist/types/src/invitations/useInvitationStatus.d.ts.map +1 -1
  24. package/package.json +17 -17
  25. package/src/echo/useMembers.ts +2 -2
  26. package/src/invitations/useInvitationStatus.ts +46 -36
  27. package/src/testing/ClientRepeater.tsx +1 -1
  28. package/dist/lib/browser/chunk-BQ4BAP42.mjs.map +0 -7
  29. package/dist/lib/node/chunk-X5URYLUS.cjs.map +0 -7
@@ -1 +1 @@
1
- {"version":3,"file":"useMembers.d.ts","sourceRoot":"","sources":["../../../../src/echo/useMembers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAKhD,eAAO,MAAM,UAAU,aAAc,SAAS,GAAG,SAAS,KAAG,WAAW,EAQvE,CAAC"}
1
+ {"version":3,"file":"useMembers.d.ts","sourceRoot":"","sources":["../../../../src/echo/useMembers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAKtE,eAAO,MAAM,UAAU,aAAc,SAAS,GAAG,SAAS,KAAG,WAAW,EAQvE,CAAC"}
@@ -6,18 +6,21 @@ export type InvitationResult = {
6
6
  swarmKey: PublicKey | null;
7
7
  target: string | null;
8
8
  };
9
- export type InvitationAction = {
9
+ type InvitationPayload = {
10
+ invitation: Invitation;
11
+ };
12
+ export type InvitationAction = ({
10
13
  status: Invitation.State.INIT | Invitation.State.CONNECTED | Invitation.State.READY_FOR_AUTHENTICATION | Invitation.State.AUTHENTICATING;
11
- } | {
14
+ } & InvitationPayload) | ({
12
15
  status: Invitation.State.CONNECTING;
13
16
  observable: CancellableInvitationObservable;
14
- } | {
17
+ } & InvitationPayload) | ({
15
18
  status: Invitation.State.SUCCESS;
16
19
  result: InvitationResult;
17
- } | {
20
+ } & InvitationPayload) | ({
18
21
  status: Invitation.State.CANCELLED | Invitation.State.TIMEOUT;
19
22
  haltedAt: Invitation.State;
20
- } | {
23
+ } & InvitationPayload) | {
21
24
  status: Invitation.State.ERROR;
22
25
  error?: Error;
23
26
  haltedAt: Invitation.State;
@@ -37,5 +40,6 @@ export type InvitationStatus = {
37
40
  connect(observable: CancellableInvitationObservable): void;
38
41
  authenticate(authCode: string): Promise<void>;
39
42
  };
40
- export declare const useInvitationStatus: (initialObservable?: CancellableInvitationObservable) => InvitationStatus;
43
+ export declare const useInvitationStatus: (observable?: CancellableInvitationObservable) => InvitationStatus;
44
+ export {};
41
45
  //# sourceMappingURL=useInvitationStatus.d.ts.map
@@ -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;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
+ {"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,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,gBAAiB,+BAA+B,KAAG,gBA0HlF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/react-client",
3
- "version": "0.5.3-main.59db342",
3
+ "version": "0.5.3-main.61bbff4",
4
4
  "description": "React client API",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -91,17 +91,17 @@
91
91
  }
92
92
  },
93
93
  "dependencies": {
94
- "@dxos/async": "0.5.3-main.59db342",
95
- "@dxos/client": "0.5.3-main.59db342",
96
- "@dxos/config": "0.5.3-main.59db342",
97
- "@dxos/codec-protobuf": "0.5.3-main.59db342",
98
- "@dxos/debug": "0.5.3-main.59db342",
99
- "@dxos/echo-signals": "0.5.3-main.59db342",
100
- "@dxos/invariant": "0.5.3-main.59db342",
101
- "@dxos/log": "0.5.3-main.59db342",
102
- "@dxos/node-std": "0.5.3-main.59db342",
103
- "@dxos/react-async": "0.5.3-main.59db342",
104
- "@dxos/util": "0.5.3-main.59db342"
94
+ "@dxos/config": "0.5.3-main.61bbff4",
95
+ "@dxos/async": "0.5.3-main.61bbff4",
96
+ "@dxos/client": "0.5.3-main.61bbff4",
97
+ "@dxos/echo-signals": "0.5.3-main.61bbff4",
98
+ "@dxos/codec-protobuf": "0.5.3-main.61bbff4",
99
+ "@dxos/debug": "0.5.3-main.61bbff4",
100
+ "@dxos/log": "0.5.3-main.61bbff4",
101
+ "@dxos/invariant": "0.5.3-main.61bbff4",
102
+ "@dxos/node-std": "0.5.3-main.61bbff4",
103
+ "@dxos/react-async": "0.5.3-main.61bbff4",
104
+ "@dxos/util": "0.5.3-main.61bbff4"
105
105
  },
106
106
  "devDependencies": {
107
107
  "@testing-library/dom": "^8.17.1",
@@ -112,10 +112,10 @@
112
112
  "react": "^18.2.0",
113
113
  "react-dom": "^18.2.0",
114
114
  "yjs": "^13.6.10",
115
- "@dxos/random": "0.5.3-main.59db342",
116
- "@dxos/react-ui": "0.5.3-main.59db342",
117
- "@dxos/react-ui-theme": "0.5.3-main.59db342",
118
- "@dxos/storybook-utils": "0.5.3-main.59db342"
115
+ "@dxos/random": "0.5.3-main.61bbff4",
116
+ "@dxos/react-ui": "0.5.3-main.61bbff4",
117
+ "@dxos/react-ui-theme": "0.5.3-main.61bbff4",
118
+ "@dxos/storybook-utils": "0.5.3-main.61bbff4"
119
119
  },
120
120
  "peerDependencies": {
121
121
  "react": "*",
@@ -123,7 +123,7 @@
123
123
  },
124
124
  "optionalDependencies": {
125
125
  "yjs": "^13.6.10",
126
- "@dxos/random": "0.5.3-main.59db342"
126
+ "@dxos/random": "0.5.3-main.61bbff4"
127
127
  },
128
128
  "publishConfig": {
129
129
  "access": "public"
@@ -4,7 +4,7 @@
4
4
 
5
5
  import { MulticastObservable } from '@dxos/async';
6
6
  import { type PublicKey } from '@dxos/client';
7
- import { SpaceMember } from '@dxos/client/echo';
7
+ import { HaloSpaceMember, type SpaceMember } from '@dxos/client/echo';
8
8
  import { useMulticastObservable } from '@dxos/react-async';
9
9
 
10
10
  import { useSpaces } from './useSpaces';
@@ -16,5 +16,5 @@ export const useMembers = (spaceKey: PublicKey | undefined): SpaceMember[] => {
16
16
 
17
17
  // EMPTY_OBSERVABLE needs to be a stable reference to avoid re-subscribing on every render.
18
18
  const members = useMulticastObservable(space?.members ?? MulticastObservable.empty()) ?? [];
19
- return members.filter((member) => member.presence !== SpaceMember.PresenceState.REMOVED);
19
+ return members.filter((member) => member.role !== HaloSpaceMember.Role.REMOVED);
20
20
  };
@@ -25,33 +25,36 @@ interface InvitationReducerState {
25
25
  haltedAt?: Invitation.State;
26
26
  result: InvitationResult;
27
27
  error?: number;
28
- observable?: CancellableInvitationObservable | AuthenticatingInvitationObservable;
29
28
  id?: string;
29
+ multiUse?: boolean;
30
30
  invitationCode?: string;
31
31
  authCode?: string;
32
- multiUse?: boolean;
32
+ authMethod?: Invitation.AuthMethod;
33
+ type?: Invitation.Type;
33
34
  }
34
35
 
36
+ type InvitationPayload = { invitation: Invitation };
37
+
35
38
  export type InvitationAction =
36
- | {
39
+ | ({
37
40
  status:
38
41
  | Invitation.State.INIT
39
42
  | Invitation.State.CONNECTED
40
43
  | Invitation.State.READY_FOR_AUTHENTICATION
41
44
  | Invitation.State.AUTHENTICATING;
42
- }
43
- | {
45
+ } & InvitationPayload)
46
+ | ({
44
47
  status: Invitation.State.CONNECTING;
45
48
  observable: CancellableInvitationObservable;
46
- }
47
- | {
49
+ } & InvitationPayload)
50
+ | ({
48
51
  status: Invitation.State.SUCCESS;
49
52
  result: InvitationResult;
50
- }
51
- | {
53
+ } & InvitationPayload)
54
+ | ({
52
55
  status: Invitation.State.CANCELLED | Invitation.State.TIMEOUT;
53
56
  haltedAt: Invitation.State;
54
- }
57
+ } & InvitationPayload)
55
58
  | {
56
59
  status: Invitation.State.ERROR;
57
60
  error?: Error;
@@ -75,12 +78,24 @@ export type InvitationStatus = {
75
78
  authenticate(authCode: string): Promise<void>;
76
79
  };
77
80
 
78
- export const useInvitationStatus = (initialObservable?: CancellableInvitationObservable): InvitationStatus => {
81
+ export const useInvitationStatus = (observable?: CancellableInvitationObservable): InvitationStatus => {
79
82
  const [state, dispatch] = useReducer<Reducer<InvitationReducerState, InvitationAction>, null>(
80
83
  (prev, action) => {
81
84
  log('useInvitationStatus', { action });
85
+ const invitationProps =
86
+ 'invitation' in action
87
+ ? {
88
+ id: action.invitation.invitationId,
89
+ multiUse: action.invitation.multiUse,
90
+ invitationCode: InvitationEncoder.encode(action.invitation),
91
+ authCode: action.invitation.authCode,
92
+ authMethod: action.invitation.authMethod,
93
+ type: action.invitation.type,
94
+ }
95
+ : {};
82
96
  return {
83
97
  ...prev,
98
+ ...invitationProps,
84
99
  // TODO(burdon): State.
85
100
  status: action.status,
86
101
  // `invitationObservable`, `secret`, and `result` is persisted between the status-actions that set them.
@@ -93,16 +108,20 @@ export const useInvitationStatus = (initialObservable?: CancellableInvitationObs
93
108
  action.status === Invitation.State.TIMEOUT) && {
94
109
  haltedAt: typeof prev.haltedAt === 'undefined' ? action.haltedAt : prev.haltedAt,
95
110
  }),
96
- observable:
97
- action.status === Invitation.State.CONNECTING ? action.observable ?? prev.observable : prev.observable,
98
111
  } as InvitationReducerState;
99
112
  },
100
113
  null,
101
114
  (_arg: null) => {
115
+ const invitation = observable?.get();
102
116
  return {
103
117
  status: Invitation.State.INIT,
104
118
  result: { spaceKey: null, identityKey: null, swarmKey: null, target: null },
105
- observable: initialObservable,
119
+ id: invitation?.invitationId,
120
+ multiUse: invitation?.multiUse,
121
+ invitationCode: invitation ? InvitationEncoder.encode(invitation) : undefined,
122
+ authCode: invitation?.authCode,
123
+ authMethod: invitation?.authMethod,
124
+ type: invitation?.type,
106
125
  };
107
126
  },
108
127
  );
@@ -112,10 +131,12 @@ export const useInvitationStatus = (initialObservable?: CancellableInvitationObs
112
131
  useEffect(() => {
113
132
  const update = (invitation: Invitation) => {
114
133
  switch (invitation.state) {
134
+ case Invitation.State.INIT:
115
135
  case Invitation.State.CONNECTED:
116
136
  case Invitation.State.READY_FOR_AUTHENTICATION:
117
137
  case Invitation.State.AUTHENTICATING: {
118
138
  dispatch({
139
+ invitation,
119
140
  status: invitation.state,
120
141
  });
121
142
  break;
@@ -123,6 +144,7 @@ export const useInvitationStatus = (initialObservable?: CancellableInvitationObs
123
144
 
124
145
  case Invitation.State.SUCCESS: {
125
146
  dispatch({
147
+ invitation,
126
148
  status: invitation.state,
127
149
  result: {
128
150
  spaceKey: invitation.spaceKey || null,
@@ -136,58 +158,46 @@ export const useInvitationStatus = (initialObservable?: CancellableInvitationObs
136
158
 
137
159
  case Invitation.State.CANCELLED:
138
160
  case Invitation.State.TIMEOUT: {
139
- dispatch({ status: invitation.state, haltedAt: state.status });
161
+ dispatch({ invitation, status: invitation.state, haltedAt: state.status });
140
162
  break;
141
163
  }
142
164
  }
143
165
  };
144
166
 
145
- const subscription = state.observable?.subscribe(update, (err: Error) => {
167
+ const subscription = observable?.subscribe(update, (err: Error) => {
146
168
  dispatch({ status: Invitation.State.ERROR, error: err, haltedAt: state.status });
147
169
  });
148
170
 
149
- const currentState = state.observable?.get();
171
+ const currentState = observable?.get();
150
172
  if (currentState) {
151
173
  update(currentState);
152
174
  }
153
175
 
154
176
  return () => subscription?.unsubscribe();
155
- }, [state.observable, state.status]);
177
+ }, [observable, state.status]);
156
178
 
157
179
  // Return memoized callbacks & values.
158
180
 
159
181
  const connect = useCallback((observable: CancellableInvitationObservable) => {
160
- dispatch({ status: Invitation.State.CONNECTING, observable });
182
+ dispatch({ invitation: observable.get(), status: Invitation.State.CONNECTING, observable });
161
183
  }, []);
162
184
 
163
185
  const authenticate = useCallback(
164
186
  (authCode: string) => {
165
187
  log('authenticating...', { authCode });
166
- return (state.observable as AuthenticatingInvitationObservable).authenticate(authCode);
188
+ return (observable as AuthenticatingInvitationObservable).authenticate(authCode);
167
189
  },
168
- [state.observable],
190
+ [observable],
169
191
  );
170
192
 
171
- const cancel = useCallback(async () => state.observable?.cancel(), [state.observable]);
193
+ const cancel = useCallback(async () => observable?.cancel(), [observable]);
172
194
 
173
195
  return useMemo(() => {
174
- const invitation = state.observable?.get();
175
- const result = {
176
- status: state.status,
177
- haltedAt: state.haltedAt,
178
- result: state.result,
179
- error: state.error,
196
+ return {
197
+ ...state,
180
198
  cancel,
181
199
  connect,
182
200
  authenticate,
183
- id: invitation?.invitationId,
184
- multiUse: invitation?.multiUse,
185
- invitationCode: invitation ? InvitationEncoder.encode(invitation) : undefined,
186
- authCode: invitation?.authCode,
187
- authMethod: invitation?.authMethod,
188
- type: invitation?.type,
189
201
  };
190
-
191
- return result;
192
202
  }, [state, cancel, connect, authenticate]);
193
203
  };
@@ -60,7 +60,7 @@ export const ClientRepeater = <P extends RepeatedComponentProps>(props: ClientRe
60
60
 
61
61
  useEffect(() => {
62
62
  const timeout = setTimeout(async () => {
63
- const clients = [...Array(count)].map((_) => new Client({ services: testBuilder.createLocal() }));
63
+ const clients = [...Array(count)].map((_) => new Client({ services: testBuilder.createLocalClientServices() }));
64
64
  await Promise.all(clients.map((client) => client.initialize()));
65
65
  schema && clients.map((client) => client.addSchema(...schema));
66
66
 
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/invitations/index.ts", "../../../src/invitations/useInvitationStatus.ts"],
4
- "sourcesContent": ["//\n// Copyright 2020 DXOS.org\n//\n\n// NOTE: Export * fails here.\nexport {\n AuthenticatingInvitationObservable,\n CancellableInvitationObservable,\n InvitationEncoder,\n Invitation,\n type Invitations,\n InvitationsProxy,\n} from '@dxos/client/invitations';\n\nexport * from './useInvitationStatus';\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { useReducer, type Reducer, useMemo, useCallback, useEffect } from 'react';\n\nimport { type PublicKey } from '@dxos/client';\nimport {\n type AuthenticatingInvitationObservable,\n type CancellableInvitationObservable,\n Invitation,\n InvitationEncoder,\n} from '@dxos/client/invitations';\nimport { log } from '@dxos/log';\n\nexport type InvitationResult = {\n spaceKey: PublicKey | null;\n identityKey: PublicKey | null;\n swarmKey: PublicKey | null;\n target: string | null;\n};\n\ninterface InvitationReducerState {\n status: Invitation.State; // TODO(burdon): Rename state.\n haltedAt?: Invitation.State;\n result: InvitationResult;\n error?: number;\n observable?: CancellableInvitationObservable | AuthenticatingInvitationObservable;\n id?: string;\n invitationCode?: string;\n authCode?: string;\n multiUse?: boolean;\n}\n\nexport type InvitationAction =\n | {\n status:\n | Invitation.State.INIT\n | Invitation.State.CONNECTED\n | Invitation.State.READY_FOR_AUTHENTICATION\n | Invitation.State.AUTHENTICATING;\n }\n | {\n status: Invitation.State.CONNECTING;\n observable: CancellableInvitationObservable;\n }\n | {\n status: Invitation.State.SUCCESS;\n result: InvitationResult;\n }\n | {\n status: Invitation.State.CANCELLED | Invitation.State.TIMEOUT;\n haltedAt: Invitation.State;\n }\n | {\n status: Invitation.State.ERROR;\n error?: Error;\n haltedAt: Invitation.State;\n };\n\nexport type InvitationStatus = {\n id?: string;\n invitationCode?: string;\n authCode?: string;\n authMethod?: Invitation.AuthMethod;\n type?: Invitation.Type;\n status: Invitation.State;\n haltedAt?: Invitation.State;\n multiUse?: boolean;\n result: InvitationResult;\n error?: number;\n cancel(): void;\n // TODO(wittjosiah): Remove?\n connect(observable: CancellableInvitationObservable): void;\n authenticate(authCode: string): Promise<void>;\n};\n\nexport const useInvitationStatus = (initialObservable?: CancellableInvitationObservable): InvitationStatus => {\n const [state, dispatch] = useReducer<Reducer<InvitationReducerState, InvitationAction>, null>(\n (prev, action) => {\n log('useInvitationStatus', { action });\n return {\n ...prev,\n // TODO(burdon): State.\n status: action.status,\n // `invitationObservable`, `secret`, and `result` is persisted between the status-actions that set them.\n result: action.status === Invitation.State.SUCCESS ? action.result : prev.result,\n // `error` gets set each time we enter the error state\n ...(action.status === Invitation.State.ERROR && { error: action.error }),\n // `haltedAt` gets set on only the first error/cancelled/timeout action and reset on any others.\n ...((action.status === Invitation.State.ERROR ||\n action.status === Invitation.State.CANCELLED ||\n action.status === Invitation.State.TIMEOUT) && {\n haltedAt: typeof prev.haltedAt === 'undefined' ? action.haltedAt : prev.haltedAt,\n }),\n observable:\n action.status === Invitation.State.CONNECTING ? action.observable ?? prev.observable : prev.observable,\n } as InvitationReducerState;\n },\n null,\n (_arg: null) => {\n return {\n status: Invitation.State.INIT,\n result: { spaceKey: null, identityKey: null, swarmKey: null, target: null },\n observable: initialObservable,\n };\n },\n );\n\n // Handle unmount.\n\n useEffect(() => {\n const update = (invitation: Invitation) => {\n switch (invitation.state) {\n case Invitation.State.CONNECTED:\n case Invitation.State.READY_FOR_AUTHENTICATION:\n case Invitation.State.AUTHENTICATING: {\n dispatch({\n status: invitation.state,\n });\n break;\n }\n\n case Invitation.State.SUCCESS: {\n dispatch({\n status: invitation.state,\n result: {\n spaceKey: invitation.spaceKey || null,\n identityKey: invitation.identityKey || null,\n swarmKey: invitation.swarmKey || null,\n target: invitation.target || null,\n },\n });\n break;\n }\n\n case Invitation.State.CANCELLED:\n case Invitation.State.TIMEOUT: {\n dispatch({ status: invitation.state, haltedAt: state.status });\n break;\n }\n }\n };\n\n const subscription = state.observable?.subscribe(update, (err: Error) => {\n dispatch({ status: Invitation.State.ERROR, error: err, haltedAt: state.status });\n });\n\n const currentState = state.observable?.get();\n if (currentState) {\n update(currentState);\n }\n\n return () => subscription?.unsubscribe();\n }, [state.observable, state.status]);\n\n // Return memoized callbacks & values.\n\n const connect = useCallback((observable: CancellableInvitationObservable) => {\n dispatch({ status: Invitation.State.CONNECTING, observable });\n }, []);\n\n const authenticate = useCallback(\n (authCode: string) => {\n log('authenticating...', { authCode });\n return (state.observable as AuthenticatingInvitationObservable).authenticate(authCode);\n },\n [state.observable],\n );\n\n const cancel = useCallback(async () => state.observable?.cancel(), [state.observable]);\n\n return useMemo(() => {\n const invitation = state.observable?.get();\n const result = {\n status: state.status,\n haltedAt: state.haltedAt,\n result: state.result,\n error: state.error,\n cancel,\n connect,\n authenticate,\n id: invitation?.invitationId,\n multiUse: invitation?.multiUse,\n invitationCode: invitation ? InvitationEncoder.encode(invitation) : undefined,\n authCode: invitation?.authCode,\n authMethod: invitation?.authMethod,\n type: invitation?.type,\n };\n\n return result;\n }, [state, cancel, connect, authenticate]);\n};\n"],
5
- "mappings": "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",
6
- "names": ["AuthenticatingInvitationObservable", "CancellableInvitationObservable", "InvitationEncoder", "Invitation", "InvitationsProxy", "useReducer", "useMemo", "useCallback", "useEffect", "Invitation", "InvitationEncoder", "log", "useInvitationStatus", "initialObservable", "state", "dispatch", "prev", "action", "status", "result", "State", "SUCCESS", "ERROR", "error", "CANCELLED", "TIMEOUT", "haltedAt", "observable", "CONNECTING", "_arg", "INIT", "spaceKey", "identityKey", "swarmKey", "target", "update", "invitation", "CONNECTED", "READY_FOR_AUTHENTICATION", "AUTHENTICATING", "subscription", "subscribe", "err", "currentState", "get", "unsubscribe", "connect", "authenticate", "authCode", "cancel", "id", "invitationId", "multiUse", "invitationCode", "encode", "undefined", "authMethod", "type"]
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/invitations/index.ts", "../../../src/invitations/useInvitationStatus.ts"],
4
- "sourcesContent": ["//\n// Copyright 2020 DXOS.org\n//\n\n// NOTE: Export * fails here.\nexport {\n AuthenticatingInvitationObservable,\n CancellableInvitationObservable,\n InvitationEncoder,\n Invitation,\n type Invitations,\n InvitationsProxy,\n} from '@dxos/client/invitations';\n\nexport * from './useInvitationStatus';\n", "//\n// Copyright 2022 DXOS.org\n//\n\nimport { useReducer, type Reducer, useMemo, useCallback, useEffect } from 'react';\n\nimport { type PublicKey } from '@dxos/client';\nimport {\n type AuthenticatingInvitationObservable,\n type CancellableInvitationObservable,\n Invitation,\n InvitationEncoder,\n} from '@dxos/client/invitations';\nimport { log } from '@dxos/log';\n\nexport type InvitationResult = {\n spaceKey: PublicKey | null;\n identityKey: PublicKey | null;\n swarmKey: PublicKey | null;\n target: string | null;\n};\n\ninterface InvitationReducerState {\n status: Invitation.State; // TODO(burdon): Rename state.\n haltedAt?: Invitation.State;\n result: InvitationResult;\n error?: number;\n observable?: CancellableInvitationObservable | AuthenticatingInvitationObservable;\n id?: string;\n invitationCode?: string;\n authCode?: string;\n multiUse?: boolean;\n}\n\nexport type InvitationAction =\n | {\n status:\n | Invitation.State.INIT\n | Invitation.State.CONNECTED\n | Invitation.State.READY_FOR_AUTHENTICATION\n | Invitation.State.AUTHENTICATING;\n }\n | {\n status: Invitation.State.CONNECTING;\n observable: CancellableInvitationObservable;\n }\n | {\n status: Invitation.State.SUCCESS;\n result: InvitationResult;\n }\n | {\n status: Invitation.State.CANCELLED | Invitation.State.TIMEOUT;\n haltedAt: Invitation.State;\n }\n | {\n status: Invitation.State.ERROR;\n error?: Error;\n haltedAt: Invitation.State;\n };\n\nexport type InvitationStatus = {\n id?: string;\n invitationCode?: string;\n authCode?: string;\n authMethod?: Invitation.AuthMethod;\n type?: Invitation.Type;\n status: Invitation.State;\n haltedAt?: Invitation.State;\n multiUse?: boolean;\n result: InvitationResult;\n error?: number;\n cancel(): void;\n // TODO(wittjosiah): Remove?\n connect(observable: CancellableInvitationObservable): void;\n authenticate(authCode: string): Promise<void>;\n};\n\nexport const useInvitationStatus = (initialObservable?: CancellableInvitationObservable): InvitationStatus => {\n const [state, dispatch] = useReducer<Reducer<InvitationReducerState, InvitationAction>, null>(\n (prev, action) => {\n log('useInvitationStatus', { action });\n return {\n ...prev,\n // TODO(burdon): State.\n status: action.status,\n // `invitationObservable`, `secret`, and `result` is persisted between the status-actions that set them.\n result: action.status === Invitation.State.SUCCESS ? action.result : prev.result,\n // `error` gets set each time we enter the error state\n ...(action.status === Invitation.State.ERROR && { error: action.error }),\n // `haltedAt` gets set on only the first error/cancelled/timeout action and reset on any others.\n ...((action.status === Invitation.State.ERROR ||\n action.status === Invitation.State.CANCELLED ||\n action.status === Invitation.State.TIMEOUT) && {\n haltedAt: typeof prev.haltedAt === 'undefined' ? action.haltedAt : prev.haltedAt,\n }),\n observable:\n action.status === Invitation.State.CONNECTING ? action.observable ?? prev.observable : prev.observable,\n } as InvitationReducerState;\n },\n null,\n (_arg: null) => {\n return {\n status: Invitation.State.INIT,\n result: { spaceKey: null, identityKey: null, swarmKey: null, target: null },\n observable: initialObservable,\n };\n },\n );\n\n // Handle unmount.\n\n useEffect(() => {\n const update = (invitation: Invitation) => {\n switch (invitation.state) {\n case Invitation.State.CONNECTED:\n case Invitation.State.READY_FOR_AUTHENTICATION:\n case Invitation.State.AUTHENTICATING: {\n dispatch({\n status: invitation.state,\n });\n break;\n }\n\n case Invitation.State.SUCCESS: {\n dispatch({\n status: invitation.state,\n result: {\n spaceKey: invitation.spaceKey || null,\n identityKey: invitation.identityKey || null,\n swarmKey: invitation.swarmKey || null,\n target: invitation.target || null,\n },\n });\n break;\n }\n\n case Invitation.State.CANCELLED:\n case Invitation.State.TIMEOUT: {\n dispatch({ status: invitation.state, haltedAt: state.status });\n break;\n }\n }\n };\n\n const subscription = state.observable?.subscribe(update, (err: Error) => {\n dispatch({ status: Invitation.State.ERROR, error: err, haltedAt: state.status });\n });\n\n const currentState = state.observable?.get();\n if (currentState) {\n update(currentState);\n }\n\n return () => subscription?.unsubscribe();\n }, [state.observable, state.status]);\n\n // Return memoized callbacks & values.\n\n const connect = useCallback((observable: CancellableInvitationObservable) => {\n dispatch({ status: Invitation.State.CONNECTING, observable });\n }, []);\n\n const authenticate = useCallback(\n (authCode: string) => {\n log('authenticating...', { authCode });\n return (state.observable as AuthenticatingInvitationObservable).authenticate(authCode);\n },\n [state.observable],\n );\n\n const cancel = useCallback(async () => state.observable?.cancel(), [state.observable]);\n\n return useMemo(() => {\n const invitation = state.observable?.get();\n const result = {\n status: state.status,\n haltedAt: state.haltedAt,\n result: state.result,\n error: state.error,\n cancel,\n connect,\n authenticate,\n id: invitation?.invitationId,\n multiUse: invitation?.multiUse,\n invitationCode: invitation ? InvitationEncoder.encode(invitation) : undefined,\n authCode: invitation?.authCode,\n authMethod: invitation?.authMethod,\n type: invitation?.type,\n };\n\n return result;\n }, [state, cancel, connect, authenticate]);\n};\n"],
5
- "mappings": "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",
6
- "names": ["import_invitations", "useInvitationStatus", "initialObservable", "state", "dispatch", "useReducer", "prev", "action", "log", "status", "result", "Invitation", "State", "SUCCESS", "ERROR", "error", "CANCELLED", "TIMEOUT", "haltedAt", "observable", "CONNECTING", "_arg", "INIT", "spaceKey", "identityKey", "swarmKey", "target", "useEffect", "update", "invitation", "CONNECTED", "READY_FOR_AUTHENTICATION", "AUTHENTICATING", "subscription", "subscribe", "err", "currentState", "get", "unsubscribe", "connect", "useCallback", "authenticate", "authCode", "cancel", "useMemo", "id", "invitationId", "multiUse", "invitationCode", "InvitationEncoder", "encode", "undefined", "authMethod", "type"]
7
- }