jazz-tools 0.7.0-alpha.9 → 0.7.3
Sign up to get free protection for your applications and to get access to all the features.
- package/.eslintrc.cjs +3 -10
- package/.prettierrc.js +9 -0
- package/.turbo/turbo-build.log +14 -15
- package/.turbo/turbo-lint.log +4 -0
- package/.turbo/turbo-test.log +140 -0
- package/CHANGELOG.md +331 -27
- package/LICENSE.txt +1 -1
- package/README.md +10 -2
- package/dist/coValues/account.js +86 -41
- package/dist/coValues/account.js.map +1 -1
- package/dist/coValues/coList.js +75 -48
- package/dist/coValues/coList.js.map +1 -1
- package/dist/coValues/coMap.js +167 -44
- package/dist/coValues/coMap.js.map +1 -1
- package/dist/coValues/coStream.js +192 -35
- package/dist/coValues/coStream.js.map +1 -1
- package/dist/coValues/deepLoading.js +60 -0
- package/dist/coValues/deepLoading.js.map +1 -0
- package/dist/coValues/extensions/imageDef.js +10 -7
- package/dist/coValues/extensions/imageDef.js.map +1 -1
- package/dist/coValues/group.js +73 -13
- package/dist/coValues/group.js.map +1 -1
- package/dist/coValues/interfaces.js +58 -35
- package/dist/coValues/interfaces.js.map +1 -1
- package/dist/implementation/devtoolsFormatters.js +114 -0
- package/dist/implementation/devtoolsFormatters.js.map +1 -0
- package/dist/implementation/refs.js +58 -18
- package/dist/implementation/refs.js.map +1 -1
- package/dist/implementation/schema.js +58 -0
- package/dist/implementation/schema.js.map +1 -0
- package/dist/implementation/subscriptionScope.js +19 -1
- package/dist/implementation/subscriptionScope.js.map +1 -1
- package/dist/implementation/symbols.js +5 -0
- package/dist/implementation/symbols.js.map +1 -0
- package/dist/index.js +4 -5
- package/dist/index.js.map +1 -1
- package/dist/internal.js +5 -2
- package/dist/internal.js.map +1 -1
- package/dist/tests/coList.test.js +51 -48
- package/dist/tests/coList.test.js.map +1 -1
- package/dist/tests/coMap.test.js +131 -74
- package/dist/tests/coMap.test.js.map +1 -1
- package/dist/tests/coStream.test.js +56 -41
- package/dist/tests/coStream.test.js.map +1 -1
- package/dist/tests/deepLoading.test.js +188 -0
- package/dist/tests/deepLoading.test.js.map +1 -0
- package/dist/tests/groupsAndAccounts.test.js +83 -0
- package/dist/tests/groupsAndAccounts.test.js.map +1 -0
- package/package.json +17 -9
- package/src/coValues/account.ts +186 -128
- package/src/coValues/coList.ts +156 -107
- package/src/coValues/coMap.ts +272 -148
- package/src/coValues/coStream.ts +388 -87
- package/src/coValues/deepLoading.ts +229 -0
- package/src/coValues/extensions/imageDef.ts +17 -13
- package/src/coValues/group.ts +166 -59
- package/src/coValues/interfaces.ts +189 -160
- package/src/implementation/devtoolsFormatters.ts +110 -0
- package/src/implementation/inspect.ts +1 -1
- package/src/implementation/refs.ts +80 -28
- package/src/implementation/schema.ts +141 -0
- package/src/implementation/subscriptionScope.ts +48 -12
- package/src/implementation/symbols.ts +11 -0
- package/src/index.ts +19 -8
- package/src/internal.ts +7 -3
- package/src/tests/coList.test.ts +77 -62
- package/src/tests/coMap.test.ts +201 -114
- package/src/tests/coStream.test.ts +113 -84
- package/src/tests/deepLoading.test.ts +304 -0
- package/src/tests/groupsAndAccounts.test.ts +91 -0
- package/dist/implementation/encoding.js +0 -26
- package/dist/implementation/encoding.js.map +0 -1
- package/src/implementation/encoding.ts +0 -105
@@ -1,23 +1,17 @@
|
|
1
|
-
import { expect, describe, test
|
2
|
-
import { webcrypto } from "node:crypto";
|
1
|
+
import { expect, describe, test } from "vitest";
|
3
2
|
import { connectedPeers } from "cojson/src/streamUtils.js";
|
4
3
|
import { newRandomSessionID } from "cojson/src/coValueCore.js";
|
5
4
|
import { Effect, Queue } from "effect";
|
6
|
-
import { Account, CoList,
|
7
|
-
|
8
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
9
|
-
globalThis.crypto = webcrypto;
|
10
|
-
}
|
11
|
-
beforeEach(async () => {
|
12
|
-
await jazzReady;
|
13
|
-
});
|
5
|
+
import { Account, CoList, WasmCrypto, co, isControlledAccount, } from "../index.js";
|
6
|
+
const Crypto = await WasmCrypto.create();
|
14
7
|
describe("Simple CoList operations", async () => {
|
15
8
|
const me = await Account.create({
|
16
|
-
name: "Hermes Puggington",
|
9
|
+
creationProps: { name: "Hermes Puggington" },
|
10
|
+
crypto: Crypto,
|
17
11
|
});
|
18
|
-
class TestList extends CoList.Of(
|
12
|
+
class TestList extends CoList.Of(co.string) {
|
19
13
|
}
|
20
|
-
const list =
|
14
|
+
const list = TestList.create(["bread", "butter", "onion"], { owner: me });
|
21
15
|
test("Construction", () => {
|
22
16
|
expect(list[0]).toBe("bread");
|
23
17
|
expect(list[1]).toBe("butter");
|
@@ -32,7 +26,7 @@ describe("Simple CoList operations", async () => {
|
|
32
26
|
});
|
33
27
|
describe("Mutation", () => {
|
34
28
|
test("assignment", () => {
|
35
|
-
const list =
|
29
|
+
const list = TestList.create(["bread", "butter", "onion"], {
|
36
30
|
owner: me,
|
37
31
|
});
|
38
32
|
list[1] = "margarine";
|
@@ -44,7 +38,7 @@ describe("Simple CoList operations", async () => {
|
|
44
38
|
expect(list[1]).toBe("margarine");
|
45
39
|
});
|
46
40
|
test("push", () => {
|
47
|
-
const list =
|
41
|
+
const list = TestList.create(["bread", "butter", "onion"], {
|
48
42
|
owner: me,
|
49
43
|
});
|
50
44
|
list.push("cheese");
|
@@ -57,7 +51,7 @@ describe("Simple CoList operations", async () => {
|
|
57
51
|
]);
|
58
52
|
});
|
59
53
|
test("unshift", () => {
|
60
|
-
const list =
|
54
|
+
const list = TestList.create(["bread", "butter", "onion"], {
|
61
55
|
owner: me,
|
62
56
|
});
|
63
57
|
list.unshift("lettuce");
|
@@ -70,7 +64,7 @@ describe("Simple CoList operations", async () => {
|
|
70
64
|
]);
|
71
65
|
});
|
72
66
|
test("pop", () => {
|
73
|
-
const list =
|
67
|
+
const list = TestList.create(["bread", "butter", "onion"], {
|
74
68
|
owner: me,
|
75
69
|
});
|
76
70
|
expect(list.pop()).toBe("onion");
|
@@ -78,45 +72,46 @@ describe("Simple CoList operations", async () => {
|
|
78
72
|
expect(list._raw.asArray()).toEqual(["bread", "butter"]);
|
79
73
|
});
|
80
74
|
test("shift", () => {
|
81
|
-
const list =
|
75
|
+
const list = TestList.create(["bread", "butter", "onion"], {
|
82
76
|
owner: me,
|
83
77
|
});
|
84
78
|
expect(list.shift()).toBe("bread");
|
85
79
|
expect(list.length).toBe(2);
|
86
80
|
expect(list._raw.asArray()).toEqual(["butter", "onion"]);
|
87
81
|
});
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
82
|
+
test("splice", () => {
|
83
|
+
const list = TestList.create(["bread", "butter", "onion"], {
|
84
|
+
owner: me,
|
85
|
+
});
|
86
|
+
list.splice(1, 1, "salt", "pepper");
|
87
|
+
expect(list.length).toBe(4);
|
88
|
+
expect(list._raw.asArray()).toEqual([
|
89
|
+
"bread",
|
90
|
+
"salt",
|
91
|
+
"pepper",
|
92
|
+
"onion",
|
93
|
+
]);
|
94
|
+
});
|
101
95
|
});
|
102
96
|
});
|
103
97
|
describe("CoList resolution", async () => {
|
104
|
-
class TwiceNestedList extends CoList.Of(
|
98
|
+
class TwiceNestedList extends CoList.Of(co.string) {
|
105
99
|
joined() {
|
106
100
|
return this.join(",");
|
107
101
|
}
|
108
102
|
}
|
109
|
-
class NestedList extends CoList.Of(
|
103
|
+
class NestedList extends CoList.Of(co.ref(TwiceNestedList)) {
|
110
104
|
}
|
111
|
-
class TestList extends CoList.Of(
|
105
|
+
class TestList extends CoList.Of(co.ref(NestedList)) {
|
112
106
|
}
|
113
107
|
const initNodeAndList = async () => {
|
114
108
|
const me = await Account.create({
|
115
|
-
name: "Hermes Puggington",
|
109
|
+
creationProps: { name: "Hermes Puggington" },
|
110
|
+
crypto: Crypto,
|
116
111
|
});
|
117
|
-
const list =
|
118
|
-
|
119
|
-
|
112
|
+
const list = TestList.create([
|
113
|
+
NestedList.create([TwiceNestedList.create(["a", "b"], { owner: me })], { owner: me }),
|
114
|
+
NestedList.create([TwiceNestedList.create(["c", "d"], { owner: me })], { owner: me }),
|
120
115
|
], { owner: me });
|
121
116
|
return { me, list };
|
122
117
|
};
|
@@ -130,30 +125,33 @@ describe("CoList resolution", async () => {
|
|
130
125
|
test("Loading and availability", async () => {
|
131
126
|
const { me, list } = await initNodeAndList();
|
132
127
|
const [initialAsPeer, secondPeer] = connectedPeers("initial", "second", { peer1role: "server", peer2role: "client" });
|
128
|
+
if (!isControlledAccount(me)) {
|
129
|
+
throw "me is not a controlled account";
|
130
|
+
}
|
133
131
|
me._raw.core.node.syncManager.addPeer(secondPeer);
|
134
132
|
const meOnSecondPeer = await Account.become({
|
135
133
|
accountID: me.id,
|
136
134
|
accountSecret: me._raw.agentSecret,
|
137
135
|
peersToLoadFrom: [initialAsPeer],
|
136
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
138
137
|
sessionID: newRandomSessionID(me.id),
|
138
|
+
crypto: Crypto,
|
139
139
|
});
|
140
|
-
const loadedList = await TestList.load(list.id,
|
140
|
+
const loadedList = await TestList.load(list.id, meOnSecondPeer, []);
|
141
141
|
expect(loadedList?.[0]).toBe(null);
|
142
142
|
expect(loadedList?._refs[0]?.id).toEqual(list[0].id);
|
143
|
-
const loadedNestedList = await NestedList.load(list[0].id,
|
144
|
-
as: meOnSecondPeer,
|
145
|
-
});
|
143
|
+
const loadedNestedList = await NestedList.load(list[0].id, meOnSecondPeer, []);
|
146
144
|
expect(loadedList?.[0]).toBeDefined();
|
147
145
|
expect(loadedList?.[0]?.[0]).toBe(null);
|
148
146
|
expect(loadedList?.[0]?._refs[0]?.id).toEqual(list[0][0].id);
|
149
147
|
expect(loadedList?._refs[0]?.value).toEqual(loadedNestedList);
|
150
|
-
const loadedTwiceNestedList = await TwiceNestedList.load(list[0][0].id,
|
148
|
+
const loadedTwiceNestedList = await TwiceNestedList.load(list[0][0].id, meOnSecondPeer, []);
|
151
149
|
expect(loadedList?.[0]?.[0]).toBeDefined();
|
152
150
|
expect(loadedList?.[0]?.[0]?.[0]).toBe("a");
|
153
151
|
expect(loadedList?.[0]?.[0]?.joined()).toBe("a,b");
|
154
152
|
expect(loadedList?.[0]?._refs[0]?.id).toEqual(list[0]?.[0]?.id);
|
155
153
|
expect(loadedList?.[0]?._refs[0]?.value).toEqual(loadedTwiceNestedList);
|
156
|
-
const otherNestedList =
|
154
|
+
const otherNestedList = NestedList.create([TwiceNestedList.create(["e", "f"], { owner: meOnSecondPeer })], { owner: meOnSecondPeer });
|
157
155
|
loadedList[0] = otherNestedList;
|
158
156
|
expect(loadedList?.[0]).toEqual(otherNestedList);
|
159
157
|
expect(loadedList?._refs[0]?.id).toEqual(otherNestedList.id);
|
@@ -161,18 +159,23 @@ describe("CoList resolution", async () => {
|
|
161
159
|
test("Subscription & auto-resolution", async () => {
|
162
160
|
const { me, list } = await initNodeAndList();
|
163
161
|
const [initialAsPeer, secondPeer] = connectedPeers("initial", "second", { peer1role: "server", peer2role: "client" });
|
162
|
+
if (!isControlledAccount(me)) {
|
163
|
+
throw "me is not a controlled account";
|
164
|
+
}
|
164
165
|
me._raw.core.node.syncManager.addPeer(secondPeer);
|
165
166
|
const meOnSecondPeer = await Account.become({
|
166
167
|
accountID: me.id,
|
167
168
|
accountSecret: me._raw.agentSecret,
|
168
169
|
peersToLoadFrom: [initialAsPeer],
|
170
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
169
171
|
sessionID: newRandomSessionID(me.id),
|
172
|
+
crypto: Crypto,
|
170
173
|
});
|
171
174
|
await Effect.runPromise(Effect.gen(function* ($) {
|
172
175
|
const queue = yield* $(Queue.unbounded());
|
173
|
-
TestList.subscribe(list.id,
|
176
|
+
TestList.subscribe(list.id, meOnSecondPeer, [], (subscribedList) => {
|
174
177
|
console.log("subscribedList?.[0]?.[0]?.[0]", subscribedList?.[0]?.[0]?.[0]);
|
175
|
-
Effect.runPromise(Queue.offer(queue, subscribedList));
|
178
|
+
void Effect.runPromise(Queue.offer(queue, subscribedList));
|
176
179
|
});
|
177
180
|
const update1 = yield* $(Queue.take(queue));
|
178
181
|
expect(update1?.[0]).toBe(null);
|
@@ -187,10 +190,10 @@ describe("CoList resolution", async () => {
|
|
187
190
|
const update4 = yield* $(Queue.take(queue));
|
188
191
|
expect(update4?.[0]?.[0]?.[0]).toBe("x");
|
189
192
|
// When assigning a new nested value, we get an update
|
190
|
-
const newTwiceNestedList =
|
193
|
+
const newTwiceNestedList = TwiceNestedList.create(["y", "z"], {
|
191
194
|
owner: meOnSecondPeer,
|
192
195
|
});
|
193
|
-
const newNestedList =
|
196
|
+
const newNestedList = NestedList.create([newTwiceNestedList], {
|
194
197
|
owner: meOnSecondPeer,
|
195
198
|
});
|
196
199
|
update4[0] = newNestedList;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"coList.test.js","sourceRoot":"","sources":["../../src/tests/coList.test.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"coList.test.js","sourceRoot":"","sources":["../../src/tests/coList.test.ts"],"names":[],"mappings":"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"}
|