jazz-tools 0.19.7 → 0.19.8
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/.turbo/turbo-build.log +61 -57
- package/CHANGELOG.md +15 -0
- package/dist/{chunk-CUS6O5NE.js → chunk-2S3Z2CN6.js} +116 -49
- package/dist/chunk-2S3Z2CN6.js.map +1 -0
- package/dist/expo/polyfills.js +22 -0
- package/dist/expo/polyfills.js.map +1 -0
- package/dist/index.js +26 -6
- package/dist/index.js.map +1 -1
- package/dist/react-core/hooks.d.ts.map +1 -1
- package/dist/react-core/index.js +17 -6
- package/dist/react-core/index.js.map +1 -1
- package/dist/react-native/index.d.ts +1 -1
- package/dist/react-native/index.d.ts.map +1 -1
- package/dist/react-native/index.js +713 -9
- package/dist/react-native/index.js.map +1 -1
- package/dist/react-native/polyfills.js +22 -0
- package/dist/react-native/polyfills.js.map +1 -0
- package/dist/react-native-core/index.d.ts.map +1 -1
- package/dist/react-native-core/index.js.map +1 -1
- package/dist/testing.js +1 -1
- package/dist/tools/coValues/account.d.ts +3 -3
- package/dist/tools/coValues/account.d.ts.map +1 -1
- package/dist/tools/coValues/coFeed.d.ts +3 -3
- package/dist/tools/coValues/coFeed.d.ts.map +1 -1
- package/dist/tools/coValues/coList.d.ts +4 -4
- package/dist/tools/coValues/coList.d.ts.map +1 -1
- package/dist/tools/coValues/coMap.d.ts +7 -7
- package/dist/tools/coValues/coMap.d.ts.map +1 -1
- package/dist/tools/coValues/coPlainText.d.ts +2 -2
- package/dist/tools/coValues/coPlainText.d.ts.map +1 -1
- package/dist/tools/coValues/coVector.d.ts +2 -2
- package/dist/tools/coValues/coVector.d.ts.map +1 -1
- package/dist/tools/coValues/deepLoading.d.ts +24 -0
- package/dist/tools/coValues/deepLoading.d.ts.map +1 -1
- package/dist/tools/coValues/group.d.ts +2 -2
- package/dist/tools/coValues/group.d.ts.map +1 -1
- package/dist/tools/coValues/interfaces.d.ts +6 -6
- package/dist/tools/coValues/interfaces.d.ts.map +1 -1
- package/dist/tools/coValues/schemaUnion.d.ts +2 -2
- package/dist/tools/coValues/schemaUnion.d.ts.map +1 -1
- package/dist/tools/config.d.ts +3 -0
- package/dist/tools/config.d.ts.map +1 -0
- package/dist/tools/exports.d.ts +2 -0
- package/dist/tools/exports.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/AccountSchema.d.ts +2 -2
- package/dist/tools/implementation/zodSchema/schemaTypes/AccountSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/CoDiscriminatedUnionSchema.d.ts +2 -2
- package/dist/tools/implementation/zodSchema/schemaTypes/CoDiscriminatedUnionSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.d.ts +2 -2
- package/dist/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/CoListSchema.d.ts +4 -4
- package/dist/tools/implementation/zodSchema/schemaTypes/CoListSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/CoMapSchema.d.ts +4 -4
- package/dist/tools/implementation/zodSchema/schemaTypes/CoMapSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/CoRecordSchema.d.ts +4 -4
- package/dist/tools/implementation/zodSchema/schemaTypes/CoRecordSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/FileStreamSchema.d.ts +2 -2
- package/dist/tools/implementation/zodSchema/schemaTypes/FileStreamSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/GroupSchema.d.ts +2 -2
- package/dist/tools/implementation/zodSchema/schemaTypes/GroupSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/PlainTextSchema.d.ts +2 -2
- package/dist/tools/implementation/zodSchema/schemaTypes/PlainTextSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/schemaTypes/RichTextSchema.d.ts +2 -2
- package/dist/tools/implementation/zodSchema/schemaTypes/RichTextSchema.d.ts.map +1 -1
- package/dist/tools/implementation/zodSchema/zodCo.d.ts.map +1 -1
- package/dist/tools/subscribe/JazzError.d.ts.map +1 -1
- package/dist/tools/subscribe/SubscriptionScope.d.ts +10 -1
- package/dist/tools/subscribe/SubscriptionScope.d.ts.map +1 -1
- package/dist/tools/subscribe/errorReporting.d.ts +31 -0
- package/dist/tools/subscribe/errorReporting.d.ts.map +1 -0
- package/dist/tools/testing.d.ts.map +1 -1
- package/dist/tools/tests/errorReporting.test.d.ts +2 -0
- package/dist/tools/tests/errorReporting.test.d.ts.map +1 -0
- package/package.json +13 -5
- package/src/react-core/hooks.ts +16 -0
- package/src/react-native/index.ts +1 -1
- package/src/react-native-core/index.ts +2 -0
- package/src/react-native-core/polyfills/index.js +28 -0
- package/src/tools/coValues/account.ts +3 -4
- package/src/tools/coValues/coFeed.ts +3 -2
- package/src/tools/coValues/coList.ts +4 -4
- package/src/tools/coValues/coMap.ts +4 -4
- package/src/tools/coValues/coPlainText.ts +2 -2
- package/src/tools/coValues/coVector.ts +2 -2
- package/src/tools/coValues/deepLoading.ts +31 -0
- package/src/tools/coValues/group.ts +2 -2
- package/src/tools/coValues/interfaces.ts +19 -23
- package/src/tools/coValues/schemaUnion.ts +2 -2
- package/src/tools/config.ts +9 -0
- package/src/tools/exports.ts +4 -0
- package/src/tools/implementation/zodSchema/schemaTypes/AccountSchema.ts +2 -2
- package/src/tools/implementation/zodSchema/schemaTypes/CoDiscriminatedUnionSchema.ts +2 -2
- package/src/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.ts +2 -2
- package/src/tools/implementation/zodSchema/schemaTypes/CoListSchema.ts +4 -4
- package/src/tools/implementation/zodSchema/schemaTypes/CoMapSchema.ts +4 -4
- package/src/tools/implementation/zodSchema/schemaTypes/CoRecordSchema.ts +4 -10
- package/src/tools/implementation/zodSchema/schemaTypes/FileStreamSchema.ts +2 -2
- package/src/tools/implementation/zodSchema/schemaTypes/GroupSchema.ts +2 -2
- package/src/tools/implementation/zodSchema/schemaTypes/PlainTextSchema.ts +2 -2
- package/src/tools/implementation/zodSchema/schemaTypes/RichTextSchema.ts +2 -2
- package/src/tools/subscribe/JazzError.ts +9 -6
- package/src/tools/subscribe/SubscriptionScope.ts +110 -27
- package/src/tools/subscribe/errorReporting.ts +67 -0
- package/src/tools/tests/deepLoading.test.ts +47 -47
- package/src/tools/tests/errorReporting.test.ts +103 -0
- package/src/tools/tests/load.test.ts +21 -1
- package/src/tools/tests/request.test.ts +2 -1
- package/src/tools/tests/subscribe.test.ts +44 -0
- package/tsup.config.ts +16 -0
- package/dist/chunk-CUS6O5NE.js.map +0 -1
|
@@ -1297,6 +1297,50 @@ describe("subscribeToCoValue", () => {
|
|
|
1297
1297
|
expect(result.data[chunks]).toBe("new entry");
|
|
1298
1298
|
});
|
|
1299
1299
|
|
|
1300
|
+
it("should emit not emit when the content doesn't bring real changes", async () => {
|
|
1301
|
+
const alice = await createJazzTestAccount();
|
|
1302
|
+
|
|
1303
|
+
const Person = co.map({
|
|
1304
|
+
name: z.string(),
|
|
1305
|
+
});
|
|
1306
|
+
const PersonList = co.list(Person);
|
|
1307
|
+
|
|
1308
|
+
const group = Group.create(alice);
|
|
1309
|
+
|
|
1310
|
+
const person1 = Person.create({ name: "John" }, group);
|
|
1311
|
+
const person2 = Person.create({ name: "Jane" }, group);
|
|
1312
|
+
|
|
1313
|
+
const personList = PersonList.create([person1, person2], group);
|
|
1314
|
+
|
|
1315
|
+
const spy = vi.fn();
|
|
1316
|
+
// Test subscribing to the large coValue
|
|
1317
|
+
const unsubscribe = subscribeToCoValue(
|
|
1318
|
+
coValueClassFromCoValueClassOrSchema(PersonList),
|
|
1319
|
+
personList.$jazz.id,
|
|
1320
|
+
{
|
|
1321
|
+
loadAs: alice,
|
|
1322
|
+
resolve: {
|
|
1323
|
+
$each: true,
|
|
1324
|
+
},
|
|
1325
|
+
syncResolution: true,
|
|
1326
|
+
},
|
|
1327
|
+
spy,
|
|
1328
|
+
);
|
|
1329
|
+
|
|
1330
|
+
onTestFinished(unsubscribe);
|
|
1331
|
+
|
|
1332
|
+
expect(spy).toHaveBeenCalledTimes(1);
|
|
1333
|
+
|
|
1334
|
+
// Test that updates to the large coValue are properly subscribed
|
|
1335
|
+
spy.mockClear();
|
|
1336
|
+
|
|
1337
|
+
group.addMember("everyone", "reader");
|
|
1338
|
+
|
|
1339
|
+
await new Promise((resolve) => setTimeout(resolve, 5));
|
|
1340
|
+
|
|
1341
|
+
expect(spy).not.toHaveBeenCalled();
|
|
1342
|
+
});
|
|
1343
|
+
|
|
1300
1344
|
it.fails(
|
|
1301
1345
|
"should return the latest loaded state when a deeply loaded child becomes not accessible",
|
|
1302
1346
|
async () => {
|
package/tsup.config.ts
CHANGED
|
@@ -43,8 +43,16 @@ export default defineConfig([
|
|
|
43
43
|
index: "src/expo/index.ts",
|
|
44
44
|
testing: "src/expo/testing.ts",
|
|
45
45
|
crypto: "src/expo/crypto.ts",
|
|
46
|
+
polyfills: "src/react-native-core/polyfills/index.js",
|
|
46
47
|
},
|
|
47
48
|
outDir: "dist/expo",
|
|
49
|
+
external: [
|
|
50
|
+
"jazz-tools",
|
|
51
|
+
"readable-stream",
|
|
52
|
+
"@azure/core-asynciterator-polyfill",
|
|
53
|
+
"react-native-get-random-values",
|
|
54
|
+
"react-native-fast-encoder",
|
|
55
|
+
],
|
|
48
56
|
},
|
|
49
57
|
{
|
|
50
58
|
...cfg,
|
|
@@ -107,8 +115,16 @@ export default defineConfig([
|
|
|
107
115
|
index: "src/react-native/index.ts",
|
|
108
116
|
testing: "src/react-native/testing.ts",
|
|
109
117
|
crypto: "src/react-native/crypto.ts",
|
|
118
|
+
polyfills: "src/react-native-core/polyfills/index.js",
|
|
110
119
|
},
|
|
111
120
|
outDir: "dist/react-native",
|
|
121
|
+
external: [
|
|
122
|
+
"jazz-tools",
|
|
123
|
+
"readable-stream",
|
|
124
|
+
"@azure/core-asynciterator-polyfill",
|
|
125
|
+
"react-native-get-random-values",
|
|
126
|
+
"react-native-fast-encoder",
|
|
127
|
+
],
|
|
112
128
|
},
|
|
113
129
|
{
|
|
114
130
|
...cfg,
|