jazz-tools 0.20.5 → 0.20.6
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 +54 -54
- package/CHANGELOG.md +9 -0
- package/package.json +4 -4
- package/src/react-core/tests/useCoState.test.ts +67 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
> jazz-tools@0.20.
|
|
2
|
+
> jazz-tools@0.20.6 build /home/runner/_work/jazz/jazz/packages/jazz-tools
|
|
3
3
|
> tsup && pnpm types && pnpm build:svelte && pnpm build:better-auth-svelte
|
|
4
4
|
|
|
5
5
|
[34mCLI[39m Building entry: {"index":"src/index.ts","testing":"src/testing.ts","tools/ssr":"src/tools/ssr/index.ts"}
|
|
@@ -109,110 +109,110 @@
|
|
|
109
109
|
[34mESM[39m Build start
|
|
110
110
|
[32mESM[39m [1mdist/tiptap/index.js [22m[32m564.00 B[39m
|
|
111
111
|
[32mESM[39m [1mdist/tiptap/index.js.map [22m[32m1.21 KB[39m
|
|
112
|
-
[32mESM[39m ⚡️ Build success in
|
|
112
|
+
[32mESM[39m ⚡️ Build success in 35ms
|
|
113
113
|
[32mESM[39m [1mdist/worker/index.js [22m[32m3.45 KB[39m
|
|
114
|
-
[32mESM[39m [1mdist/worker/napi-crypto.js [22m[32m110.00 B[39m
|
|
115
114
|
[32mESM[39m [1mdist/worker/edge-wasm.js [22m[32m259.00 B[39m
|
|
115
|
+
[32mESM[39m [1mdist/worker/napi-crypto.js [22m[32m110.00 B[39m
|
|
116
116
|
[32mESM[39m [1mdist/worker/index.js.map [22m[32m6.97 KB[39m
|
|
117
|
-
[32mESM[39m [1mdist/worker/napi-crypto.js.map [22m[32m162.00 B[39m
|
|
118
117
|
[32mESM[39m [1mdist/worker/edge-wasm.js.map [22m[32m505.00 B[39m
|
|
119
|
-
[32mESM[39m
|
|
118
|
+
[32mESM[39m [1mdist/worker/napi-crypto.js.map [22m[32m162.00 B[39m
|
|
119
|
+
[32mESM[39m ⚡️ Build success in 34ms
|
|
120
120
|
[32mESM[39m [1mdist/better-auth/auth/client.js [22m[32m4.54 KB[39m
|
|
121
|
-
[32mESM[39m [1mdist/better-auth/auth/react.js [22m[32m813.00 B[39m
|
|
122
121
|
[32mESM[39m [1mdist/better-auth/auth/server.js [22m[32m8.40 KB[39m
|
|
122
|
+
[32mESM[39m [1mdist/better-auth/auth/react.js [22m[32m813.00 B[39m
|
|
123
123
|
[32mESM[39m [1mdist/better-auth/auth/client.js.map [22m[32m8.44 KB[39m
|
|
124
|
-
[32mESM[39m [1mdist/better-auth/auth/react.js.map [22m[32m2.07 KB[39m
|
|
125
124
|
[32mESM[39m [1mdist/better-auth/auth/server.js.map [22m[32m15.40 KB[39m
|
|
126
|
-
[32mESM[39m
|
|
125
|
+
[32mESM[39m [1mdist/better-auth/auth/react.js.map [22m[32m2.07 KB[39m
|
|
126
|
+
[32mESM[39m ⚡️ Build success in 29ms
|
|
127
127
|
[32mESM[39m [1mdist/media/index.js [22m[32m236.00 B[39m
|
|
128
|
-
[32mESM[39m [1mdist/media/index.browser.js [22m[32m2.79 KB[39m
|
|
129
128
|
[32mESM[39m [1mdist/media/index.native.js [22m[32m4.04 KB[39m
|
|
130
|
-
[32mESM[39m [1mdist/media/chunk-IRL3KNPO.js [22m[32m6.70 KB[39m
|
|
131
129
|
[32mESM[39m [1mdist/media/index.server.js [22m[32m2.95 KB[39m
|
|
130
|
+
[32mESM[39m [1mdist/media/chunk-IRL3KNPO.js [22m[32m6.70 KB[39m
|
|
131
|
+
[32mESM[39m [1mdist/media/index.browser.js [22m[32m2.79 KB[39m
|
|
132
132
|
[32mESM[39m [1mdist/media/index.js.map [22m[32m71.00 B[39m
|
|
133
|
-
[32mESM[39m [1mdist/media/index.
|
|
133
|
+
[32mESM[39m [1mdist/media/index.server.js.map [22m[32m6.37 KB[39m
|
|
134
134
|
[32mESM[39m [1mdist/media/index.native.js.map [22m[32m8.17 KB[39m
|
|
135
135
|
[32mESM[39m [1mdist/media/chunk-IRL3KNPO.js.map [22m[32m17.00 KB[39m
|
|
136
|
-
[32mESM[39m [1mdist/media/index.
|
|
137
|
-
[32mESM[39m ⚡️ Build success in
|
|
138
|
-
[32mESM[39m [1mdist/react-core/chunk-UOYH6JFJ.js [22m[32m189.00 B[39m
|
|
139
|
-
[32mESM[39m [1mdist/react-core/testing.js [22m[32m904.00 B[39m
|
|
140
|
-
[32mESM[39m [1mdist/react-core/index.js [22m[32m17.87 KB[39m
|
|
141
|
-
[32mESM[39m [1mdist/react-core/chunk-UOYH6JFJ.js.map [22m[32m363.00 B[39m
|
|
142
|
-
[32mESM[39m [1mdist/react-core/testing.js.map [22m[32m1.34 KB[39m
|
|
143
|
-
[32mESM[39m [1mdist/react-core/index.js.map [22m[32m58.59 KB[39m
|
|
144
|
-
[32mESM[39m ⚡️ Build success in 38ms
|
|
136
|
+
[32mESM[39m [1mdist/media/index.browser.js.map [22m[32m6.15 KB[39m
|
|
137
|
+
[32mESM[39m ⚡️ Build success in 37ms
|
|
145
138
|
[32mESM[39m [1mdist/expo/index.js [22m[32m4.70 KB[39m
|
|
146
139
|
[32mESM[39m [1mdist/expo/testing.js [22m[32m112.00 B[39m
|
|
147
140
|
[32mESM[39m [1mdist/expo/polyfills.js [22m[32m858.00 B[39m
|
|
148
|
-
[32mESM[39m [1mdist/expo/index.js.map [22m[32m10.26 KB[39m
|
|
149
141
|
[32mESM[39m [1mdist/expo/testing.js.map [22m[32m168.00 B[39m
|
|
142
|
+
[32mESM[39m [1mdist/expo/index.js.map [22m[32m10.26 KB[39m
|
|
150
143
|
[32mESM[39m [1mdist/expo/polyfills.js.map [22m[32m1.61 KB[39m
|
|
151
|
-
[32mESM[39m ⚡️ Build success in
|
|
144
|
+
[32mESM[39m ⚡️ Build success in 40ms
|
|
152
145
|
[32mESM[39m [1mdist/browser/index.js [22m[32m15.96 KB[39m
|
|
153
146
|
[32mESM[39m [1mdist/browser/index.js.map [22m[32m34.06 KB[39m
|
|
154
|
-
[32mESM[39m ⚡️ Build success in
|
|
147
|
+
[32mESM[39m ⚡️ Build success in 52ms
|
|
148
|
+
[32mESM[39m [1mdist/react-core/index.js [22m[32m17.87 KB[39m
|
|
149
|
+
[32mESM[39m [1mdist/react-core/testing.js [22m[32m904.00 B[39m
|
|
150
|
+
[32mESM[39m [1mdist/react-core/chunk-UOYH6JFJ.js [22m[32m189.00 B[39m
|
|
151
|
+
[32mESM[39m [1mdist/react-core/index.js.map [22m[32m58.59 KB[39m
|
|
152
|
+
[32mESM[39m [1mdist/react-core/testing.js.map [22m[32m1.34 KB[39m
|
|
153
|
+
[32mESM[39m [1mdist/react-core/chunk-UOYH6JFJ.js.map [22m[32m363.00 B[39m
|
|
154
|
+
[32mESM[39m ⚡️ Build success in 51ms
|
|
155
155
|
[32mESM[39m [1mdist/better-auth/database-adapter/index.js [22m[32m26.65 KB[39m
|
|
156
156
|
[32mESM[39m [1mdist/better-auth/database-adapter/index.js.map [22m[32m58.27 KB[39m
|
|
157
|
-
[32mESM[39m ⚡️ Build success in
|
|
158
|
-
[32mESM[39m [1mdist/react/index.js
|
|
159
|
-
[32mESM[39m [1mdist/react/testing.js [22m[32m122.00 B[39m
|
|
160
|
-
[32mESM[39m [1mdist/react/ssr.js [22m[32m693.00 B[39m
|
|
161
|
-
[32mESM[39m [1mdist/react/index.js.map [22m[32m55.45 KB[39m
|
|
162
|
-
[32mESM[39m [1mdist/react/testing.js.map [22m[32m165.00 B[39m
|
|
163
|
-
[32mESM[39m [1mdist/react/ssr.js.map [22m[32m1.10 KB[39m
|
|
164
|
-
[32mESM[39m ⚡️ Build success in 70ms
|
|
165
|
-
[32mESM[39m [1mdist/react-native-core/index.js [22m[32m34.14 KB[39m
|
|
166
|
-
[32mESM[39m [1mdist/react-native-core/testing.js [22m[32m119.00 B[39m
|
|
167
|
-
[32mESM[39m [1mdist/react-native-core/index.js.map [22m[32m68.45 KB[39m
|
|
168
|
-
[32mESM[39m [1mdist/react-native-core/testing.js.map [22m[32m175.00 B[39m
|
|
169
|
-
[32mESM[39m ⚡️ Build success in 86ms
|
|
170
|
-
[32mESM[39m [1mdist/prosemirror/index.js [22m[32m77.76 KB[39m
|
|
171
|
-
[32mESM[39m [1mdist/prosemirror/index.js.map [22m[32m307.20 KB[39m
|
|
172
|
-
[32mESM[39m ⚡️ Build success in 90ms
|
|
157
|
+
[32mESM[39m ⚡️ Build success in 57ms
|
|
158
|
+
[32mESM[39m [1mdist/react-native/index.js [22m[32m36.68 KB[39m
|
|
173
159
|
[32mESM[39m [1mdist/react-native/testing.js [22m[32m120.00 B[39m
|
|
174
160
|
[32mESM[39m [1mdist/react-native/polyfills.js [22m[32m858.00 B[39m
|
|
175
|
-
[32mESM[39m [1mdist/react-native/index.js
|
|
161
|
+
[32mESM[39m [1mdist/react-native/index.js.map [22m[32m74.00 KB[39m
|
|
176
162
|
[32mESM[39m [1mdist/react-native/polyfills.js.map [22m[32m1.61 KB[39m
|
|
177
163
|
[32mESM[39m [1mdist/react-native/testing.js.map [22m[32m176.00 B[39m
|
|
178
|
-
[32mESM[39m
|
|
179
|
-
[32mESM[39m
|
|
180
|
-
[32mESM[39m [1mdist/
|
|
164
|
+
[32mESM[39m ⚡️ Build success in 62ms
|
|
165
|
+
[32mESM[39m [1mdist/prosemirror/index.js [22m[32m77.76 KB[39m
|
|
166
|
+
[32mESM[39m [1mdist/prosemirror/index.js.map [22m[32m307.20 KB[39m
|
|
167
|
+
[32mESM[39m ⚡️ Build success in 71ms
|
|
168
|
+
[32mESM[39m [1mdist/react-native-core/index.js [22m[32m34.14 KB[39m
|
|
169
|
+
[32mESM[39m [1mdist/react-native-core/testing.js [22m[32m119.00 B[39m
|
|
170
|
+
[32mESM[39m [1mdist/react-native-core/index.js.map [22m[32m68.45 KB[39m
|
|
171
|
+
[32mESM[39m [1mdist/react-native-core/testing.js.map [22m[32m175.00 B[39m
|
|
172
|
+
[32mESM[39m ⚡️ Build success in 73ms
|
|
173
|
+
[32mESM[39m [1mdist/react/testing.js [22m[32m122.00 B[39m
|
|
174
|
+
[32mESM[39m [1mdist/react/ssr.js [22m[32m693.00 B[39m
|
|
175
|
+
[32mESM[39m [1mdist/react/index.js [22m[32m26.02 KB[39m
|
|
176
|
+
[32mESM[39m [1mdist/react/testing.js.map [22m[32m165.00 B[39m
|
|
177
|
+
[32mESM[39m [1mdist/react/ssr.js.map [22m[32m1.10 KB[39m
|
|
178
|
+
[32mESM[39m [1mdist/react/index.js.map [22m[32m55.45 KB[39m
|
|
179
|
+
[32mESM[39m ⚡️ Build success in 73ms
|
|
181
180
|
[32mESM[39m [1mdist/inspector/index.js [22m[32m37.49 KB[39m
|
|
181
|
+
[32mESM[39m [1mdist/inspector/standalone.js [22m[32m12.61 KB[39m
|
|
182
182
|
[32mESM[39m [1mdist/inspector/chunk-6JPVMI3V.js [22m[32m130.10 KB[39m
|
|
183
183
|
[32mESM[39m [1mdist/inspector/standalone.js.map [22m[32m20.11 KB[39m
|
|
184
184
|
[32mESM[39m [1mdist/inspector/index.js.map [22m[32m63.80 KB[39m
|
|
185
185
|
[32mESM[39m [1mdist/inspector/chunk-6JPVMI3V.js.map [22m[32m225.43 KB[39m
|
|
186
|
-
[32mESM[39m ⚡️ Build success in
|
|
187
|
-
[32mESM[39m [1mdist/tools/ssr.js [22m[32m156.00 B[39m
|
|
188
|
-
[32mESM[39m [1mdist/testing.js [22m[32m8.56 KB[39m
|
|
186
|
+
[32mESM[39m ⚡️ Build success in 80ms
|
|
189
187
|
[32mESM[39m [1mdist/index.js [22m[32m32.17 KB[39m
|
|
190
188
|
[32mESM[39m [1mdist/chunk-K4D7IMFM.js [22m[32m690.00 B[39m
|
|
189
|
+
[32mESM[39m [1mdist/tools/ssr.js [22m[32m156.00 B[39m
|
|
191
190
|
[32mESM[39m [1mdist/chunk-ZQWSQH6L.js [22m[32m945.00 B[39m
|
|
191
|
+
[32mESM[39m [1mdist/testing.js [22m[32m8.56 KB[39m
|
|
192
192
|
[32mESM[39m [1mdist/chunk-HBWUGW37.js [22m[32m237.48 KB[39m
|
|
193
|
-
[32mESM[39m [1mdist/tools/ssr.js.map [22m[32m71.00 B[39m
|
|
194
|
-
[32mESM[39m [1mdist/testing.js.map [22m[32m16.22 KB[39m
|
|
195
193
|
[32mESM[39m [1mdist/index.js.map [22m[32m65.34 KB[39m
|
|
196
194
|
[32mESM[39m [1mdist/chunk-K4D7IMFM.js.map [22m[32m1.10 KB[39m
|
|
195
|
+
[32mESM[39m [1mdist/tools/ssr.js.map [22m[32m71.00 B[39m
|
|
197
196
|
[32mESM[39m [1mdist/chunk-ZQWSQH6L.js.map [22m[32m71.00 B[39m
|
|
197
|
+
[32mESM[39m [1mdist/testing.js.map [22m[32m16.22 KB[39m
|
|
198
198
|
[32mESM[39m [1mdist/chunk-HBWUGW37.js.map [22m[32m558.55 KB[39m
|
|
199
|
-
[32mESM[39m ⚡️ Build success in
|
|
199
|
+
[32mESM[39m ⚡️ Build success in 113ms
|
|
200
200
|
[32mESM[39m [1mdist/inspector/register-custom-element.js [22m[32m305.00 B[39m
|
|
201
|
-
[32mESM[39m [1mdist/inspector/register-custom-element.js.map [22m[32m445.00 B[39m
|
|
202
201
|
[32mESM[39m [1mdist/inspector/custom-element-TJNWN4WC.js [22m[32m1.64 MB[39m
|
|
202
|
+
[32mESM[39m [1mdist/inspector/register-custom-element.js.map [22m[32m445.00 B[39m
|
|
203
203
|
[32mESM[39m [1mdist/inspector/custom-element-TJNWN4WC.js.map [22m[32m2.52 MB[39m
|
|
204
|
-
[32mESM[39m ⚡️ Build success in
|
|
204
|
+
[32mESM[39m ⚡️ Build success in 141ms
|
|
205
205
|
|
|
206
|
-
> jazz-tools@0.20.
|
|
206
|
+
> jazz-tools@0.20.6 types /home/runner/_work/jazz/jazz/packages/jazz-tools
|
|
207
207
|
> tsc --outDir dist
|
|
208
208
|
|
|
209
209
|
|
|
210
|
-
> jazz-tools@0.20.
|
|
210
|
+
> jazz-tools@0.20.6 build:svelte /home/runner/_work/jazz/jazz/packages/jazz-tools
|
|
211
211
|
> rm -rf dist/svelte && svelte-package -i src/svelte -o dist/svelte --tsconfig tsconfig.svelte.json
|
|
212
212
|
|
|
213
213
|
src/svelte -> dist/svelte
|
|
214
214
|
|
|
215
|
-
> jazz-tools@0.20.
|
|
215
|
+
> jazz-tools@0.20.6 build:better-auth-svelte /home/runner/_work/jazz/jazz/packages/jazz-tools
|
|
216
216
|
> mkdir -p dist/better-auth/auth && svelte-package -i src/better-auth/auth -o dist/better-auth/auth-temp --tsconfig tsconfig.svelte.json && cp dist/better-auth/auth-temp/svelte.svelte dist/better-auth/auth/svelte.svelte && cp dist/better-auth/auth-temp/svelte.svelte.d.ts dist/better-auth/auth/svelte.d.ts && rm -rf dist/better-auth/auth-temp
|
|
217
217
|
|
|
218
218
|
src/better-auth/auth -> dist/better-auth/auth-temp
|
package/CHANGELOG.md
CHANGED
package/package.json
CHANGED
|
@@ -196,7 +196,7 @@
|
|
|
196
196
|
},
|
|
197
197
|
"type": "module",
|
|
198
198
|
"license": "MIT",
|
|
199
|
-
"version": "0.20.
|
|
199
|
+
"version": "0.20.6",
|
|
200
200
|
"dependencies": {
|
|
201
201
|
"@manuscripts/prosemirror-recreate-steps": "^0.1.4",
|
|
202
202
|
"@scure/base": "1.2.1",
|
|
@@ -213,9 +213,9 @@
|
|
|
213
213
|
"prosemirror-transform": "^1.9.0",
|
|
214
214
|
"use-sync-external-store": "^1.5.0",
|
|
215
215
|
"zod": "4.1.11",
|
|
216
|
-
"cojson": "0.20.
|
|
217
|
-
"cojson-storage-indexeddb": "0.20.
|
|
218
|
-
"cojson-transport-ws": "0.20.
|
|
216
|
+
"cojson": "0.20.6",
|
|
217
|
+
"cojson-storage-indexeddb": "0.20.6",
|
|
218
|
+
"cojson-transport-ws": "0.20.6"
|
|
219
219
|
},
|
|
220
220
|
"devDependencies": {
|
|
221
221
|
"@scure/bip39": "^1.3.0",
|
|
@@ -1025,4 +1025,71 @@ describe("useCoState", () => {
|
|
|
1025
1025
|
assertLoaded(result.current);
|
|
1026
1026
|
expect(result.current.value).toBe("test");
|
|
1027
1027
|
});
|
|
1028
|
+
|
|
1029
|
+
it("should render without infinite re-renders when accessing 2-level nested unresolved co-values", async () => {
|
|
1030
|
+
const account = await createJazzTestAccount({
|
|
1031
|
+
isCurrentActiveAccount: true,
|
|
1032
|
+
});
|
|
1033
|
+
|
|
1034
|
+
// 3-level schema: Organization -> Project -> Task
|
|
1035
|
+
const Task = co.map({
|
|
1036
|
+
title: z.string(),
|
|
1037
|
+
});
|
|
1038
|
+
|
|
1039
|
+
const Project = co.map({
|
|
1040
|
+
name: z.string(),
|
|
1041
|
+
task: co.optional(Task),
|
|
1042
|
+
});
|
|
1043
|
+
|
|
1044
|
+
const Organization = co.map({
|
|
1045
|
+
name: z.string(),
|
|
1046
|
+
project: co.optional(Project),
|
|
1047
|
+
});
|
|
1048
|
+
|
|
1049
|
+
const org = Organization.create({
|
|
1050
|
+
name: "Test Org",
|
|
1051
|
+
project: Project.create({
|
|
1052
|
+
name: "Test Project",
|
|
1053
|
+
task: Task.create({ title: "Test Task" }),
|
|
1054
|
+
}),
|
|
1055
|
+
});
|
|
1056
|
+
|
|
1057
|
+
let renderCount = 0;
|
|
1058
|
+
|
|
1059
|
+
const { result } = renderHook(
|
|
1060
|
+
() => {
|
|
1061
|
+
renderCount++;
|
|
1062
|
+
const orgState = useCoState(Organization, org.$jazz.id, {
|
|
1063
|
+
resolve: {
|
|
1064
|
+
project: {},
|
|
1065
|
+
},
|
|
1066
|
+
});
|
|
1067
|
+
|
|
1068
|
+
// Access 2-level nested unresolved co-values
|
|
1069
|
+
if (orgState.$isLoaded) {
|
|
1070
|
+
const project = orgState.project;
|
|
1071
|
+
if (project?.$isLoaded) {
|
|
1072
|
+
// This should not cause infinite re-renders
|
|
1073
|
+
const _ = project.task;
|
|
1074
|
+
}
|
|
1075
|
+
}
|
|
1076
|
+
|
|
1077
|
+
return orgState;
|
|
1078
|
+
},
|
|
1079
|
+
{
|
|
1080
|
+
account,
|
|
1081
|
+
},
|
|
1082
|
+
);
|
|
1083
|
+
|
|
1084
|
+
await waitFor(() => {
|
|
1085
|
+
assertLoaded(result.current);
|
|
1086
|
+
expect(result.current.name).toBe("Test Org");
|
|
1087
|
+
});
|
|
1088
|
+
|
|
1089
|
+
// Wait a bit to ensure no additional re-renders occur
|
|
1090
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
1091
|
+
|
|
1092
|
+
// Should not have excessive re-renders
|
|
1093
|
+
expect(renderCount).toBeLessThan(10);
|
|
1094
|
+
});
|
|
1028
1095
|
});
|