@dxos/react-client 2.17.4 → 2.18.0
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/.rush/temp/package-deps_build:test.json +5 -4
- package/dist/src/hooks/echo-queries/index.d.ts +1 -0
- package/dist/src/hooks/echo-queries/index.d.ts.map +1 -1
- package/dist/src/hooks/echo-queries/index.js +1 -0
- package/dist/src/hooks/echo-queries/index.js.map +1 -1
- package/dist/src/hooks/echo-queries/useRemoteParties.d.ts +8 -0
- package/dist/src/hooks/echo-queries/useRemoteParties.d.ts.map +1 -0
- package/dist/src/hooks/echo-queries/useRemoteParties.js +24 -0
- package/dist/src/hooks/echo-queries/useRemoteParties.js.map +1 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/stories/halo-invitations.stories.d.ts.map +1 -1
- package/dist/stories/halo-invitations.stories.js +16 -15
- package/dist/stories/halo-invitations.stories.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -10
- package/react-client.build.log +5 -5
- package/src/hooks/echo-queries/index.ts +1 -0
- package/src/hooks/echo-queries/useRemoteParties.ts +25 -0
- package/src/index.ts +1 -0
- package/stories/halo-invitations.stories.tsx +26 -23
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"files": {
|
|
3
3
|
"packages/sdk/react-client/README.md": "74b1bea48e8138294857cdd6c2fd61f26ace3eea",
|
|
4
|
-
"packages/sdk/react-client/package.json": "
|
|
4
|
+
"packages/sdk/react-client/package.json": "a198e3d9de7e91fcbfbecbaf3d2fe13ba974bc29",
|
|
5
5
|
"packages/sdk/react-client/src/components/ErrorBoundary.tsx": "91375fbb436d662704178a10b7d208778adc6a4b",
|
|
6
6
|
"packages/sdk/react-client/src/components/index.ts": "b6cf15d642a2a01e283162c0a66bcec0d3baa628",
|
|
7
7
|
"packages/sdk/react-client/src/config.ts": "d236b6f901757d19de14695e3313e1f718ff7592",
|
|
@@ -17,10 +17,11 @@
|
|
|
17
17
|
"packages/sdk/react-client/src/hooks/client/useClient.ts": "a343c1f83f92060b9c251dc5a2994de4a79963e3",
|
|
18
18
|
"packages/sdk/react-client/src/hooks/client/useConfig.ts": "8f379a2e40118646eeda8858780c76351fe09b04",
|
|
19
19
|
"packages/sdk/react-client/src/hooks/client/useProfile.ts": "2930b4adf867d968cd3c4017be3471c8cbaba7cc",
|
|
20
|
-
"packages/sdk/react-client/src/hooks/echo-queries/index.ts": "
|
|
20
|
+
"packages/sdk/react-client/src/hooks/echo-queries/index.ts": "3eb29bc51f3b511a86adc34047138f80b20e0d25",
|
|
21
21
|
"packages/sdk/react-client/src/hooks/echo-queries/useContacts.ts": "b92c6235df04bb02bb4d5660fbe37682415b3f1d",
|
|
22
22
|
"packages/sdk/react-client/src/hooks/echo-queries/useMembers.tsx": "e6c7aac282302b6169a25b0fd4b66d2fe181caf2",
|
|
23
23
|
"packages/sdk/react-client/src/hooks/echo-queries/useParties.ts": "2a145e7a7f0ecd7bde1315f838ea583935c167e3",
|
|
24
|
+
"packages/sdk/react-client/src/hooks/echo-queries/useRemoteParties.ts": "8b593476e66e49cf798c85796e8a6aed6a33405b",
|
|
24
25
|
"packages/sdk/react-client/src/hooks/echo-selections/index.ts": "bd7c992f3c4355158dcb3698d4d93d919b8325fa",
|
|
25
26
|
"packages/sdk/react-client/src/hooks/echo-selections/search.ts": "d78a5b3b688dc5535e5fff2953bf911bf22dd2e8",
|
|
26
27
|
"packages/sdk/react-client/src/hooks/echo-selections/useSelection.ts": "386aea0d2f27eb4fed65eb4b63b92492567c95e5",
|
|
@@ -35,9 +36,9 @@
|
|
|
35
36
|
"packages/sdk/react-client/src/hooks/wns/registryBotFactories.ts": "a765b94908c14fe83a4d61fa19ac24b383772bd3",
|
|
36
37
|
"packages/sdk/react-client/src/hooks/wns/registryBots.ts": "5430bbff71bc12b59eff67d19b00e87f5924f814",
|
|
37
38
|
"packages/sdk/react-client/src/hooks/wns/types.ts": "42fb64aaafbe4648d8f817bbb278b5cce197dd95",
|
|
38
|
-
"packages/sdk/react-client/src/index.ts": "
|
|
39
|
+
"packages/sdk/react-client/src/index.ts": "6683ff6fb32940e726e95675637ef4fd240a129d",
|
|
39
40
|
"packages/sdk/react-client/stories/client.stories.tsx": "a88da635bd98d7ac43670e7b5d7b48d7a7440b8c",
|
|
40
|
-
"packages/sdk/react-client/stories/halo-invitations.stories.tsx": "
|
|
41
|
+
"packages/sdk/react-client/stories/halo-invitations.stories.tsx": "8753e5a3af83c1d93908acaa6c0472c30d3d869e",
|
|
41
42
|
"packages/sdk/react-client/stories/helpers/ClientPanel.tsx": "73b28aa5d68415fa05cb8897be8bd98979acca97",
|
|
42
43
|
"packages/sdk/react-client/stories/helpers/ContactsSelector.tsx": "702919f8031ab1c923b0ef829ee10ec3527dbba4",
|
|
43
44
|
"packages/sdk/react-client/stories/helpers/Container.tsx": "e29cf68901def12f486abefdd2471b32c3956cbd",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/echo-queries/index.ts"],"names":[],"mappings":"AAIA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/hooks/echo-queries/index.ts"],"names":[],"mappings":"AAIA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC"}
|
|
@@ -16,4 +16,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
16
16
|
__exportStar(require("./useContacts"), exports);
|
|
17
17
|
__exportStar(require("./useMembers"), exports);
|
|
18
18
|
__exportStar(require("./useParties"), exports);
|
|
19
|
+
__exportStar(require("./useRemoteParties"), exports);
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/hooks/echo-queries/index.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;AAEF,gDAA8B;AAC9B,+CAA6B;AAC7B,+CAA6B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/hooks/echo-queries/index.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;AAEF,gDAA8B;AAC9B,+CAA6B;AAC7B,+CAA6B;AAC7B,qDAAmC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get all Parties available to current user.
|
|
3
|
+
* To be used with `ClientProvider` or `ClientInitializer` component wrapper.
|
|
4
|
+
*/
|
|
5
|
+
export declare const useRemoteParties: () => {
|
|
6
|
+
key?: Uint8Array | undefined;
|
|
7
|
+
}[];
|
|
8
|
+
//# sourceMappingURL=useRemoteParties.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRemoteParties.d.ts","sourceRoot":"","sources":["../../../../src/hooks/echo-queries/useRemoteParties.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,eAAO,MAAM,gBAAgB;;GAY5B,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2020 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.useRemoteParties = void 0;
|
|
7
|
+
const react_1 = require("react");
|
|
8
|
+
const client_1 = require("../client");
|
|
9
|
+
/**
|
|
10
|
+
* Get all Parties available to current user.
|
|
11
|
+
* To be used with `ClientProvider` or `ClientInitializer` component wrapper.
|
|
12
|
+
*/
|
|
13
|
+
const useRemoteParties = () => {
|
|
14
|
+
const client = (0, client_1.useClient)();
|
|
15
|
+
const [parties, setParties] = (0, react_1.useState)([]);
|
|
16
|
+
(0, react_1.useEffect)(() => {
|
|
17
|
+
const stream = client.services.PartyService.SubscribeParties();
|
|
18
|
+
stream.subscribe(result => { var _a; return setParties((_a = result.parties) !== null && _a !== void 0 ? _a : []); }, console.error);
|
|
19
|
+
return () => stream.close();
|
|
20
|
+
}, []);
|
|
21
|
+
return parties;
|
|
22
|
+
};
|
|
23
|
+
exports.useRemoteParties = useRemoteParties;
|
|
24
|
+
//# sourceMappingURL=useRemoteParties.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRemoteParties.js","sourceRoot":"","sources":["../../../../src/hooks/echo-queries/useRemoteParties.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAEF,iCAA4C;AAE5C,sCAAsC;AAEtC;;;GAGG;AACI,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;IAC3B,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAuB,EAAE,CAAC,CAAC;IAEjE,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC;QAC/D,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,WAAC,OAAA,UAAU,CAAC,MAAA,MAAM,CAAC,OAAO,mCAAI,EAAE,CAAC,CAAA,EAAA,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAE5E,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAZW,QAAA,gBAAgB,oBAY3B"}
|
package/dist/src/index.d.ts
CHANGED
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -16,4 +16,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
16
16
|
__exportStar(require("./components"), exports);
|
|
17
17
|
__exportStar(require("./containers"), exports);
|
|
18
18
|
__exportStar(require("./hooks"), exports);
|
|
19
|
+
__exportStar(require("./config"), exports);
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;AAEF,+CAA6B;AAC7B,+CAA6B;AAC7B,0CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;AAEF,+CAA6B;AAC7B,+CAA6B;AAC7B,0CAAwB;AACxB,2CAAyB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"halo-invitations.stories.d.ts","sourceRoot":"","sources":["../../stories/halo-invitations.stories.tsx"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"halo-invitations.stories.d.ts","sourceRoot":"","sources":["../../stories/halo-invitations.stories.tsx"],"names":[],"mappings":";;;;AAwBA,wBAEE;AAqIF,eAAO,MAAM,OAAO,mBAsBnB,CAAC"}
|
|
@@ -37,16 +37,17 @@ exports.default = {
|
|
|
37
37
|
*/
|
|
38
38
|
const HaloInvitationContainer = () => {
|
|
39
39
|
const client = (0, src_1.useClient)();
|
|
40
|
-
const [
|
|
41
|
-
const [
|
|
40
|
+
const [invitation, setInvitation] = (0, react_1.useState)();
|
|
41
|
+
const [pin, setPin] = (0, react_1.useState)('');
|
|
42
42
|
const handleCreateInvitation = async () => {
|
|
43
|
-
const invitation = await client.createHaloInvitation(
|
|
43
|
+
const invitation = await client.createHaloInvitation({
|
|
44
44
|
onFinish: () => {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
}
|
|
45
|
+
setInvitation(undefined);
|
|
46
|
+
setPin('');
|
|
47
|
+
},
|
|
48
|
+
onPinGenerated: setPin
|
|
48
49
|
});
|
|
49
|
-
|
|
50
|
+
setInvitation(invitation);
|
|
50
51
|
};
|
|
51
52
|
if (!client.halo.hasProfile()) {
|
|
52
53
|
return null;
|
|
@@ -54,8 +55,8 @@ const HaloInvitationContainer = () => {
|
|
|
54
55
|
return (react_1.default.createElement(material_1.Box, { sx: { padding: 1 } },
|
|
55
56
|
react_1.default.createElement(material_1.Toolbar, null,
|
|
56
57
|
react_1.default.createElement(material_1.Button, { onClick: handleCreateInvitation }, "Create Invitation")),
|
|
57
|
-
|
|
58
|
-
react_1.default.createElement(material_1.TextField, { disabled: true, multiline: true, fullWidth: true, value: invitationCode, maxRows: 3 }))),
|
|
58
|
+
invitation && (react_1.default.createElement(material_1.Box, { sx: { marginTop: 1 } },
|
|
59
|
+
react_1.default.createElement(material_1.TextField, { disabled: true, multiline: true, fullWidth: true, value: invitation.invitationCode, maxRows: 3 }))),
|
|
59
60
|
pin && (react_1.default.createElement(material_1.Box, { sx: { marginTop: 1 } },
|
|
60
61
|
react_1.default.createElement(material_1.TextField, { disabled: true, type: 'text', value: pin })))));
|
|
61
62
|
};
|
|
@@ -65,14 +66,13 @@ const HaloInvitationContainer = () => {
|
|
|
65
66
|
const HaloAuthenticationContainer = () => {
|
|
66
67
|
const client = (0, src_1.useClient)();
|
|
67
68
|
const [status, setStatus] = (0, react_1.useState)({});
|
|
68
|
-
const [secretProvider, secretResolver] = (0, src_1.useSecretProvider)();
|
|
69
69
|
const handleSubmit = async (invitationCode) => {
|
|
70
70
|
try {
|
|
71
71
|
const invitation = (0, client_1.decodeInvitation)(invitationCode);
|
|
72
|
-
//
|
|
72
|
+
// Claim an invitation for this device to join an existing Halo.
|
|
73
73
|
if (invitation.identityKey) {
|
|
74
|
-
await client.
|
|
75
|
-
setStatus({ identity: invitation.identityKey.toString() });
|
|
74
|
+
const finishAuthentication = await client.joinHaloInvitation(invitation);
|
|
75
|
+
setStatus({ identity: invitation.identityKey.toString(), finishAuthentication });
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
78
|
catch (err) {
|
|
@@ -80,8 +80,9 @@ const HaloAuthenticationContainer = () => {
|
|
|
80
80
|
setStatus({ error: err });
|
|
81
81
|
}
|
|
82
82
|
};
|
|
83
|
-
const handleAuthenticate = (pin) => {
|
|
84
|
-
|
|
83
|
+
const handleAuthenticate = async (pin) => {
|
|
84
|
+
var _a;
|
|
85
|
+
await ((_a = status.finishAuthentication) === null || _a === void 0 ? void 0 : _a.call(status, pin));
|
|
85
86
|
};
|
|
86
87
|
return (react_1.default.createElement(helpers_1.PartyJoinPanel, { status: status, onSubmit: handleSubmit, onAuthenticate: handleAuthenticate }));
|
|
87
88
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"halo-invitations.stories.js","sourceRoot":"","sources":["../../stories/halo-invitations.stories.tsx"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;;;;;;;AAEF,+CAAwC;AAExC,4CAEuB;
|
|
1
|
+
{"version":3,"file":"halo-invitations.stories.js","sourceRoot":"","sources":["../../stories/halo-invitations.stories.tsx"],"names":[],"mappings":"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"}
|