@dxos/client-services 0.1.35 → 0.1.36
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/dist/lib/browser/{chunk-H5IXSSI7.mjs → chunk-2AYYVPWN.mjs} +835 -950
- package/dist/lib/browser/chunk-2AYYVPWN.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +9 -11
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/packlets/testing/index.mjs +212 -74
- package/dist/lib/browser/packlets/testing/index.mjs.map +3 -3
- package/dist/lib/node/index.cjs +942 -1058
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/packlets/testing/index.cjs +1089 -1067
- package/dist/lib/node/packlets/testing/index.cjs.map +4 -4
- package/dist/types/src/packlets/identity/identity-manager.d.ts +1 -0
- package/dist/types/src/packlets/identity/identity-manager.d.ts.map +1 -1
- package/dist/types/src/packlets/identity/identity.d.ts +3 -3
- package/dist/types/src/packlets/identity/identity.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/device-invitation-protocol.d.ts +18 -0
- package/dist/types/src/packlets/invitations/device-invitation-protocol.d.ts.map +1 -0
- package/dist/types/src/packlets/invitations/device-invitation-protocol.test.d.ts +2 -0
- package/dist/types/src/packlets/invitations/device-invitation-protocol.test.d.ts.map +1 -0
- package/dist/types/src/packlets/invitations/index.d.ts +4 -4
- package/dist/types/src/packlets/invitations/index.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/invitation-protocol.d.ts +12 -0
- package/dist/types/src/packlets/invitations/invitation-protocol.d.ts.map +1 -0
- package/dist/types/src/packlets/invitations/invitations-handler.d.ts +38 -0
- package/dist/types/src/packlets/invitations/invitations-handler.d.ts.map +1 -0
- package/dist/types/src/packlets/invitations/invitations-service.d.ts +13 -15
- package/dist/types/src/packlets/invitations/invitations-service.d.ts.map +1 -1
- package/dist/types/src/packlets/invitations/space-invitation-protocol.d.ts +22 -0
- package/dist/types/src/packlets/invitations/space-invitation-protocol.d.ts.map +1 -0
- package/dist/types/src/packlets/invitations/space-invitation-protocol.test.d.ts +2 -0
- package/dist/types/src/packlets/invitations/space-invitation-protocol.test.d.ts.map +1 -0
- package/dist/types/src/packlets/services/service-context.d.ts +6 -4
- package/dist/types/src/packlets/services/service-context.d.ts.map +1 -1
- package/dist/types/src/packlets/services/service-host.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/data-space-manager.d.ts +2 -0
- package/dist/types/src/packlets/spaces/data-space-manager.d.ts.map +1 -1
- package/dist/types/src/packlets/spaces/spaces-service.d.ts.map +1 -1
- package/dist/types/src/packlets/testing/invitation-utils.d.ts +31 -2
- package/dist/types/src/packlets/testing/invitation-utils.d.ts.map +1 -1
- package/dist/types/src/packlets/testing/test-builder.d.ts +3 -3
- package/dist/types/src/packlets/testing/test-builder.d.ts.map +1 -1
- package/dist/types/src/packlets/tests/invitations.test.d.ts +2 -0
- package/dist/types/src/packlets/tests/invitations.test.d.ts.map +1 -0
- package/dist/types/src/packlets/vault/worker-runtime.d.ts +2 -0
- package/dist/types/src/packlets/vault/worker-runtime.d.ts.map +1 -1
- package/package.json +30 -30
- package/src/packlets/identity/identity-manager.ts +2 -1
- package/src/packlets/identity/identity.ts +3 -3
- package/src/packlets/invitations/{device-invitations-handler.test.ts → device-invitation-protocol.test.ts} +3 -3
- package/src/packlets/invitations/device-invitation-protocol.ts +83 -0
- package/src/packlets/invitations/index.ts +4 -4
- package/src/packlets/invitations/invitation-protocol.ts +21 -0
- package/src/packlets/invitations/invitations-handler.ts +462 -0
- package/src/packlets/invitations/invitations-service.ts +127 -104
- package/src/packlets/invitations/space-invitation-protocol.test.ts +221 -0
- package/src/packlets/invitations/space-invitation-protocol.ts +117 -0
- package/src/packlets/services/service-context.test.ts +11 -4
- package/src/packlets/services/service-context.ts +40 -19
- package/src/packlets/services/service-host.ts +4 -12
- package/src/packlets/services/service-registry.test.ts +23 -25
- package/src/packlets/spaces/data-space-manager.ts +5 -0
- package/src/packlets/spaces/spaces-service.ts +7 -2
- package/src/packlets/storage/storage.ts +2 -0
- package/src/packlets/testing/invitation-utils.ts +219 -31
- package/src/packlets/testing/test-builder.ts +33 -22
- package/src/packlets/tests/client-services.test.ts +33 -76
- package/src/packlets/tests/halo-profile.test.ts +2 -28
- package/src/packlets/tests/invitations.test.ts +389 -0
- package/src/packlets/tests/spaces-invitations.test.ts +12 -30
- package/src/packlets/tests/spaces.test.ts +30 -28
- package/src/packlets/vault/worker-runtime.ts +4 -0
- package/dist/lib/browser/chunk-H5IXSSI7.mjs.map +0 -7
- package/dist/types/src/packlets/invitations/device-invitations-handler.d.ts +0 -30
- package/dist/types/src/packlets/invitations/device-invitations-handler.d.ts.map +0 -1
- package/dist/types/src/packlets/invitations/device-invitations-handler.test.d.ts +0 -2
- package/dist/types/src/packlets/invitations/device-invitations-handler.test.d.ts.map +0 -1
- package/dist/types/src/packlets/invitations/device-invitations-service.d.ts +0 -13
- package/dist/types/src/packlets/invitations/device-invitations-service.d.ts.map +0 -1
- package/dist/types/src/packlets/invitations/device-invitations-service.test.d.ts +0 -2
- package/dist/types/src/packlets/invitations/device-invitations-service.test.d.ts.map +0 -1
- package/dist/types/src/packlets/invitations/space-invitations-handler.d.ts +0 -26
- package/dist/types/src/packlets/invitations/space-invitations-handler.d.ts.map +0 -1
- package/dist/types/src/packlets/invitations/space-invitations-handler.test.d.ts +0 -2
- package/dist/types/src/packlets/invitations/space-invitations-handler.test.d.ts.map +0 -1
- package/dist/types/src/packlets/invitations/space-invitations-service.d.ts +0 -16
- package/dist/types/src/packlets/invitations/space-invitations-service.d.ts.map +0 -1
- package/dist/types/src/packlets/invitations/space-invitations-service.test.d.ts +0 -2
- package/dist/types/src/packlets/invitations/space-invitations-service.test.d.ts.map +0 -1
- package/src/packlets/invitations/device-invitations-handler.ts +0 -370
- package/src/packlets/invitations/device-invitations-service.test.ts +0 -96
- package/src/packlets/invitations/device-invitations-service.ts +0 -24
- package/src/packlets/invitations/space-invitations-handler.test.ts +0 -246
- package/src/packlets/invitations/space-invitations-handler.ts +0 -463
- package/src/packlets/invitations/space-invitations-service.test.ts +0 -129
- package/src/packlets/invitations/space-invitations-service.ts +0 -35
|
@@ -5,23 +5,46 @@
|
|
|
5
5
|
import { expect } from 'chai';
|
|
6
6
|
|
|
7
7
|
import { asyncTimeout, Trigger } from '@dxos/async';
|
|
8
|
-
import { Client,
|
|
8
|
+
import { Client, Space, SpaceProxy } from '@dxos/client';
|
|
9
9
|
import { Config } from '@dxos/config';
|
|
10
|
-
import { raise } from '@dxos/debug';
|
|
11
10
|
import { log } from '@dxos/log';
|
|
12
11
|
import { createStorage, StorageType } from '@dxos/random-access-storage';
|
|
13
12
|
import { describe, test, afterTest } from '@dxos/test';
|
|
14
13
|
|
|
15
|
-
import { TestBuilder, testSpace } from '../testing';
|
|
14
|
+
import { performInvitation, TestBuilder, testSpace } from '../testing';
|
|
16
15
|
|
|
17
16
|
describe('Spaces', () => {
|
|
18
17
|
test('creates a space', async () => {
|
|
19
18
|
const testBuilder = new TestBuilder();
|
|
19
|
+
testBuilder.storage = createStorage({ type: StorageType.RAM });
|
|
20
20
|
|
|
21
21
|
const client = new Client({ services: testBuilder.createLocal() });
|
|
22
|
+
await client.initialize();
|
|
22
23
|
afterTest(() => client.destroy());
|
|
23
24
|
|
|
25
|
+
await client.halo.createIdentity({ displayName: 'test-user' });
|
|
26
|
+
|
|
27
|
+
// TODO(burdon): Extend basic queries.
|
|
28
|
+
const space = await client.createSpace();
|
|
29
|
+
await testSpace(space.internal.db);
|
|
30
|
+
|
|
31
|
+
expect(space.members.get()).to.be.length(1);
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
// TODO(dmaretskyi): Test suit for different conditions/storages.
|
|
35
|
+
test.skip('creates a space on webfs', async () => {
|
|
36
|
+
const testBuilder = new TestBuilder();
|
|
37
|
+
// testBuilder.storage = createStorage({ type: StorageType.WEBFS });
|
|
38
|
+
|
|
39
|
+
const host = testBuilder.createClientServicesHost();
|
|
40
|
+
await host.open();
|
|
41
|
+
afterTest(() => host.close());
|
|
42
|
+
const [client, server] = testBuilder.createClientServer(host);
|
|
43
|
+
void server.open();
|
|
44
|
+
afterTest(() => server.close());
|
|
24
45
|
await client.initialize();
|
|
46
|
+
afterTest(() => client.destroy());
|
|
47
|
+
|
|
25
48
|
await client.halo.createIdentity({ displayName: 'test-user' });
|
|
26
49
|
|
|
27
50
|
// TODO(burdon): Extend basic queries.
|
|
@@ -92,33 +115,12 @@ describe('Spaces', () => {
|
|
|
92
115
|
afterTest(() => Promise.all([client1.destroy()]));
|
|
93
116
|
afterTest(() => Promise.all([client2.destroy()]));
|
|
94
117
|
|
|
95
|
-
const success1 = new Trigger<Invitation>();
|
|
96
|
-
const success2 = new Trigger<Invitation>();
|
|
97
|
-
|
|
98
118
|
const space1 = await client1.createSpace();
|
|
99
119
|
log('createSpace', { key: space1.key });
|
|
100
|
-
const
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
const observable2 = client2.acceptInvitation(invitation);
|
|
105
|
-
observable2.subscribe({
|
|
106
|
-
onSuccess: (invitation: Invitation) => {
|
|
107
|
-
success2.wake(invitation);
|
|
108
|
-
},
|
|
109
|
-
onError: (err: Error) => raise(err)
|
|
110
|
-
});
|
|
111
|
-
},
|
|
112
|
-
onSuccess: (invitation) => {
|
|
113
|
-
log('onSuccess');
|
|
114
|
-
success1.wake(invitation);
|
|
115
|
-
},
|
|
116
|
-
onError: (err) => raise(err)
|
|
117
|
-
});
|
|
118
|
-
|
|
119
|
-
const [_, invitation2] = await Promise.all([success1.wait(), success2.wait()]);
|
|
120
|
-
|
|
121
|
-
const space2 = await client2.getSpace(invitation2.spaceKey!)!.waitUntilReady();
|
|
120
|
+
const [, { invitation: guestInvitation }] = await Promise.all(
|
|
121
|
+
performInvitation({ host: space1 as SpaceProxy, guest: client2 })
|
|
122
|
+
);
|
|
123
|
+
const space2 = await client2.getSpace(guestInvitation!.spaceKey!)!.waitUntilReady();
|
|
122
124
|
|
|
123
125
|
const hello = new Trigger();
|
|
124
126
|
{
|