jazz-tools 0.20.6 → 0.20.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.
Files changed (91) hide show
  1. package/.turbo/turbo-build.log +46 -46
  2. package/CHANGELOG.md +49 -0
  3. package/dist/{chunk-HBWUGW37.js → chunk-G7AMZRMZ.js} +451 -144
  4. package/dist/chunk-G7AMZRMZ.js.map +1 -0
  5. package/dist/expo/index.js +8 -3
  6. package/dist/expo/index.js.map +1 -1
  7. package/dist/expo/storage/expo-sqlite-adapter.d.ts +3 -1
  8. package/dist/expo/storage/expo-sqlite-adapter.d.ts.map +1 -1
  9. package/dist/index.js +1 -1
  10. package/dist/inspector/{chunk-6JPVMI3V.js → chunk-ORKZSKZF.js} +675 -736
  11. package/dist/inspector/chunk-ORKZSKZF.js.map +1 -0
  12. package/dist/inspector/{custom-element-TJNWN4WC.js → custom-element-7G7IZVLL.js} +828 -889
  13. package/dist/inspector/custom-element-7G7IZVLL.js.map +1 -0
  14. package/dist/inspector/index.js +1 -1
  15. package/dist/inspector/register-custom-element.js +1 -1
  16. package/dist/inspector/standalone.js +1 -1
  17. package/dist/inspector/utils/transactions-changes.d.ts +1 -1
  18. package/dist/inspector/utils/transactions-changes.d.ts.map +1 -1
  19. package/dist/inspector/viewer/account-or-group-text.d.ts.map +1 -1
  20. package/dist/inspector/viewer/co-binary-stream-view.d.ts +5 -0
  21. package/dist/inspector/viewer/co-binary-stream-view.d.ts.map +1 -0
  22. package/dist/inspector/viewer/co-stream-view.d.ts +1 -9
  23. package/dist/inspector/viewer/co-stream-view.d.ts.map +1 -1
  24. package/dist/inspector/viewer/page.d.ts.map +1 -1
  25. package/dist/inspector/viewer/use-resolve-covalue.d.ts.map +1 -1
  26. package/dist/media/index.native.js +2 -2
  27. package/dist/media/index.native.js.map +1 -1
  28. package/dist/react-core/tests/testUtils.d.ts.map +1 -1
  29. package/dist/react-native/index.js +21 -9
  30. package/dist/react-native/index.js.map +1 -1
  31. package/dist/react-native/storage/op-sqlite-adapter.d.ts +5 -1
  32. package/dist/react-native/storage/op-sqlite-adapter.d.ts.map +1 -1
  33. package/dist/testing.js +1 -1
  34. package/dist/tools/coValues/coFeed.d.ts +29 -1
  35. package/dist/tools/coValues/coFeed.d.ts.map +1 -1
  36. package/dist/tools/coValues/coList.d.ts +32 -11
  37. package/dist/tools/coValues/coList.d.ts.map +1 -1
  38. package/dist/tools/coValues/coMap.d.ts +61 -27
  39. package/dist/tools/coValues/coMap.d.ts.map +1 -1
  40. package/dist/tools/coValues/group.d.ts +9 -1
  41. package/dist/tools/coValues/group.d.ts.map +1 -1
  42. package/dist/tools/coValues/interfaces.d.ts +19 -2
  43. package/dist/tools/coValues/interfaces.d.ts.map +1 -1
  44. package/dist/tools/implementation/schema.d.ts +19 -2
  45. package/dist/tools/implementation/schema.d.ts.map +1 -1
  46. package/dist/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.d.ts +27 -0
  47. package/dist/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.d.ts.map +1 -1
  48. package/dist/tools/implementation/zodSchema/schemaTypes/CoListSchema.d.ts +30 -1
  49. package/dist/tools/implementation/zodSchema/schemaTypes/CoListSchema.d.ts.map +1 -1
  50. package/dist/tools/implementation/zodSchema/schemaTypes/CoMapSchema.d.ts +30 -1
  51. package/dist/tools/implementation/zodSchema/schemaTypes/CoMapSchema.d.ts.map +1 -1
  52. package/dist/tools/subscribe/CoValueCoreSubscription.d.ts +1 -2
  53. package/dist/tools/subscribe/CoValueCoreSubscription.d.ts.map +1 -1
  54. package/dist/tools/tests/getOrCreateUnique.test.d.ts +2 -0
  55. package/dist/tools/tests/getOrCreateUnique.test.d.ts.map +1 -0
  56. package/dist/tools/tests/testStorage.d.ts +2 -0
  57. package/dist/tools/tests/testStorage.d.ts.map +1 -1
  58. package/package.json +4 -4
  59. package/src/expo/storage/expo-sqlite-adapter.ts +9 -3
  60. package/src/inspector/tests/viewer/history-view.test.tsx +2 -0
  61. package/src/inspector/utils/transactions-changes.ts +1 -1
  62. package/src/inspector/viewer/account-or-group-text.tsx +23 -5
  63. package/src/inspector/viewer/co-binary-stream-view.tsx +177 -0
  64. package/src/inspector/viewer/co-stream-view.tsx +3 -311
  65. package/src/inspector/viewer/page.tsx +14 -0
  66. package/src/inspector/viewer/use-resolve-covalue.ts +2 -11
  67. package/src/media/create-image/react-native.ts +2 -2
  68. package/src/react-core/tests/testUtils.tsx +3 -2
  69. package/src/react-native/storage/op-sqlite-adapter.ts +26 -11
  70. package/src/tools/coValues/CoValueBase.ts +1 -1
  71. package/src/tools/coValues/coFeed.ts +159 -38
  72. package/src/tools/coValues/coList.ts +73 -31
  73. package/src/tools/coValues/coMap.ts +86 -41
  74. package/src/tools/coValues/group.ts +16 -3
  75. package/src/tools/coValues/interfaces.ts +109 -21
  76. package/src/tools/implementation/schema.ts +64 -2
  77. package/src/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.ts +48 -3
  78. package/src/tools/implementation/zodSchema/schemaTypes/CoListSchema.ts +41 -1
  79. package/src/tools/implementation/zodSchema/schemaTypes/CoMapSchema.ts +49 -1
  80. package/src/tools/subscribe/CoValueCoreSubscription.ts +9 -24
  81. package/src/tools/tests/coList.test.ts +9 -0
  82. package/src/tools/tests/coMap.record.test.ts +17 -0
  83. package/src/tools/tests/coMap.test.ts +48 -3
  84. package/src/tools/tests/coPlainText.test.ts +3 -0
  85. package/src/tools/tests/getOrCreateUnique.test.ts +1400 -0
  86. package/src/tools/tests/interfaces.test.ts +34 -0
  87. package/src/tools/tests/testStorage.ts +34 -7
  88. package/testSetup.ts +6 -0
  89. package/dist/chunk-HBWUGW37.js.map +0 -1
  90. package/dist/inspector/chunk-6JPVMI3V.js.map +0 -1
  91. package/dist/inspector/custom-element-TJNWN4WC.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
 
2
- > jazz-tools@0.20.6 build /home/runner/_work/jazz/jazz/packages/jazz-tools
2
+ > jazz-tools@0.20.8 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
  CLI Building entry: {"index":"src/index.ts","testing":"src/testing.ts","tools/ssr":"src/tools/ssr/index.ts"}
@@ -109,14 +109,14 @@
109
109
  ESM Build start
110
110
  ESM dist/tiptap/index.js 564.00 B
111
111
  ESM dist/tiptap/index.js.map 1.21 KB
112
- ESM ⚡️ Build success in 35ms
112
+ ESM ⚡️ Build success in 31ms
113
113
  ESM dist/worker/index.js 3.45 KB
114
114
  ESM dist/worker/edge-wasm.js 259.00 B
115
115
  ESM dist/worker/napi-crypto.js 110.00 B
116
116
  ESM dist/worker/index.js.map 6.97 KB
117
117
  ESM dist/worker/edge-wasm.js.map 505.00 B
118
118
  ESM dist/worker/napi-crypto.js.map 162.00 B
119
- ESM ⚡️ Build success in 34ms
119
+ ESM ⚡️ Build success in 30ms
120
120
  ESM dist/better-auth/auth/client.js 4.54 KB
121
121
  ESM dist/better-auth/auth/server.js 8.40 KB
122
122
  ESM dist/better-auth/auth/react.js 813.00 B
@@ -125,94 +125,94 @@
125
125
  ESM dist/better-auth/auth/react.js.map 2.07 KB
126
126
  ESM ⚡️ Build success in 29ms
127
127
  ESM dist/media/index.js 236.00 B
128
- ESM dist/media/index.native.js 4.04 KB
128
+ ESM dist/media/index.browser.js 2.79 KB
129
+ ESM dist/media/index.native.js 4.02 KB
129
130
  ESM dist/media/index.server.js 2.95 KB
130
131
  ESM dist/media/chunk-IRL3KNPO.js 6.70 KB
131
- ESM dist/media/index.browser.js 2.79 KB
132
132
  ESM dist/media/index.js.map 71.00 B
133
+ ESM dist/media/index.browser.js.map 6.15 KB
134
+ ESM dist/media/index.native.js.map 8.13 KB
133
135
  ESM dist/media/index.server.js.map 6.37 KB
134
- ESM dist/media/index.native.js.map 8.17 KB
135
136
  ESM dist/media/chunk-IRL3KNPO.js.map 17.00 KB
136
- ESM dist/media/index.browser.js.map 6.15 KB
137
137
  ESM ⚡️ Build success in 37ms
138
- ESM dist/expo/index.js 4.70 KB
139
- ESM dist/expo/testing.js 112.00 B
140
- ESM dist/expo/polyfills.js 858.00 B
141
- ESM dist/expo/testing.js.map 168.00 B
142
- ESM dist/expo/index.js.map 10.26 KB
143
- ESM dist/expo/polyfills.js.map 1.61 KB
144
- ESM ⚡️ Build success in 40ms
145
- ESM dist/browser/index.js 15.96 KB
146
- ESM dist/browser/index.js.map 34.06 KB
147
- ESM ⚡️ Build success in 52ms
148
138
  ESM dist/react-core/index.js 17.87 KB
149
139
  ESM dist/react-core/testing.js 904.00 B
150
140
  ESM dist/react-core/chunk-UOYH6JFJ.js 189.00 B
151
141
  ESM dist/react-core/index.js.map 58.59 KB
152
142
  ESM dist/react-core/testing.js.map 1.34 KB
153
143
  ESM dist/react-core/chunk-UOYH6JFJ.js.map 363.00 B
144
+ ESM ⚡️ Build success in 47ms
145
+ ESM dist/browser/index.js 15.96 KB
146
+ ESM dist/browser/index.js.map 34.06 KB
154
147
  ESM ⚡️ Build success in 51ms
155
148
  ESM dist/better-auth/database-adapter/index.js 26.65 KB
156
149
  ESM dist/better-auth/database-adapter/index.js.map 58.27 KB
157
- ESM ⚡️ Build success in 57ms
158
- ESM dist/react-native/index.js 36.68 KB
159
- ESM dist/react-native/testing.js 120.00 B
160
- ESM dist/react-native/polyfills.js 858.00 B
161
- ESM dist/react-native/index.js.map 74.00 KB
162
- ESM dist/react-native/polyfills.js.map 1.61 KB
163
- ESM dist/react-native/testing.js.map 176.00 B
164
- ESM ⚡️ Build success in 62ms
150
+ ESM ⚡️ Build success in 41ms
165
151
  ESM dist/prosemirror/index.js 77.76 KB
166
152
  ESM dist/prosemirror/index.js.map 307.20 KB
167
- ESM ⚡️ Build success in 71ms
153
+ ESM ⚡️ Build success in 56ms
154
+ ESM dist/expo/index.js 4.86 KB
155
+ ESM dist/expo/testing.js 112.00 B
156
+ ESM dist/expo/polyfills.js 858.00 B
157
+ ESM dist/expo/index.js.map 10.59 KB
158
+ ESM dist/expo/testing.js.map 168.00 B
159
+ ESM dist/expo/polyfills.js.map 1.61 KB
160
+ ESM ⚡️ Build success in 51ms
168
161
  ESM dist/react-native-core/index.js 34.14 KB
169
162
  ESM dist/react-native-core/testing.js 119.00 B
170
163
  ESM dist/react-native-core/index.js.map 68.45 KB
171
164
  ESM dist/react-native-core/testing.js.map 175.00 B
172
- ESM ⚡️ Build success in 73ms
165
+ ESM ⚡️ Build success in 65ms
166
+ ESM dist/react-native/index.js 37.08 KB
167
+ ESM dist/react-native/testing.js 120.00 B
168
+ ESM dist/react-native/polyfills.js 858.00 B
169
+ ESM dist/react-native/index.js.map 74.82 KB
170
+ ESM dist/react-native/testing.js.map 176.00 B
171
+ ESM dist/react-native/polyfills.js.map 1.61 KB
172
+ ESM ⚡️ Build success in 67ms
173
+ ESM dist/react/index.js 26.02 KB
173
174
  ESM dist/react/testing.js 122.00 B
174
175
  ESM dist/react/ssr.js 693.00 B
175
- ESM dist/react/index.js 26.02 KB
176
+ ESM dist/react/index.js.map 55.45 KB
176
177
  ESM dist/react/testing.js.map 165.00 B
177
178
  ESM dist/react/ssr.js.map 1.10 KB
178
- ESM dist/react/index.js.map 55.45 KB
179
- ESM ⚡️ Build success in 73ms
179
+ ESM ⚡️ Build success in 64ms
180
180
  ESM dist/inspector/index.js 37.49 KB
181
181
  ESM dist/inspector/standalone.js 12.61 KB
182
- ESM dist/inspector/chunk-6JPVMI3V.js 130.10 KB
183
- ESM dist/inspector/standalone.js.map 20.11 KB
182
+ ESM dist/inspector/chunk-ORKZSKZF.js 128.83 KB
184
183
  ESM dist/inspector/index.js.map 63.80 KB
185
- ESM dist/inspector/chunk-6JPVMI3V.js.map 225.43 KB
186
- ESM ⚡️ Build success in 80ms
184
+ ESM dist/inspector/standalone.js.map 20.11 KB
185
+ ESM dist/inspector/chunk-ORKZSKZF.js.map 222.34 KB
186
+ ESM ⚡️ Build success in 81ms
187
187
  ESM dist/index.js 32.17 KB
188
- ESM dist/chunk-K4D7IMFM.js 690.00 B
188
+ ESM dist/testing.js 8.56 KB
189
+ ESM dist/chunk-G7AMZRMZ.js 247.36 KB
189
190
  ESM dist/tools/ssr.js 156.00 B
191
+ ESM dist/chunk-K4D7IMFM.js 690.00 B
190
192
  ESM dist/chunk-ZQWSQH6L.js 945.00 B
191
- ESM dist/testing.js 8.56 KB
192
- ESM dist/chunk-HBWUGW37.js 237.48 KB
193
+ ESM dist/testing.js.map 16.22 KB
193
194
  ESM dist/index.js.map 65.34 KB
194
195
  ESM dist/chunk-K4D7IMFM.js.map 1.10 KB
195
196
  ESM dist/tools/ssr.js.map 71.00 B
196
197
  ESM dist/chunk-ZQWSQH6L.js.map 71.00 B
197
- ESM dist/testing.js.map 16.22 KB
198
- ESM dist/chunk-HBWUGW37.js.map 558.55 KB
199
- ESM ⚡️ Build success in 113ms
198
+ ESM dist/chunk-G7AMZRMZ.js.map 578.08 KB
199
+ ESM ⚡️ Build success in 111ms
200
200
  ESM dist/inspector/register-custom-element.js 305.00 B
201
- ESM dist/inspector/custom-element-TJNWN4WC.js 1.64 MB
202
201
  ESM dist/inspector/register-custom-element.js.map 445.00 B
203
- ESM dist/inspector/custom-element-TJNWN4WC.js.map 2.52 MB
204
- ESM ⚡️ Build success in 141ms
202
+ ESM dist/inspector/custom-element-7G7IZVLL.js 1.64 MB
203
+ ESM dist/inspector/custom-element-7G7IZVLL.js.map 2.52 MB
204
+ ESM ⚡️ Build success in 140ms
205
205
 
206
- > jazz-tools@0.20.6 types /home/runner/_work/jazz/jazz/packages/jazz-tools
206
+ > jazz-tools@0.20.8 types /home/runner/_work/jazz/jazz/packages/jazz-tools
207
207
  > tsc --outDir dist
208
208
 
209
209
 
210
- > jazz-tools@0.20.6 build:svelte /home/runner/_work/jazz/jazz/packages/jazz-tools
210
+ > jazz-tools@0.20.8 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.6 build:better-auth-svelte /home/runner/_work/jazz/jazz/packages/jazz-tools
215
+ > jazz-tools@0.20.8 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
@@ -1,5 +1,54 @@
1
1
  # jazz-tools
2
2
 
3
+ ## 0.20.8
4
+
5
+ ### Patch Changes
6
+
7
+ - 8688239: Add `getOrCreateUnique` method to CoMap, CoList, and CoFeed
8
+
9
+ This new method provides a "get or create only" semantic - it returns an existing value as-is, and only uses the provided value when creating a new CoValue. Unlike `upsertUnique`, it does NOT update existing values with the provided value.
10
+
11
+ Example usage:
12
+
13
+ ```typescript
14
+ const billingStatus = await BillingStatus.getOrCreateUnique({
15
+ value: { status: "pending" },
16
+ unique: `billing-${user.$jazz.id}`,
17
+ owner: billingGroup,
18
+ });
19
+ ```
20
+
21
+ Also deprecates `loadUnique` and `upsertUnique` methods in favor of `getOrCreateUnique`.
22
+
23
+ - fc4163a: Delayed CoValue content parsing in subscriptions until the value is fully downloaded, avoiding unnecessary intermediate parsing
24
+ - c7be307: Improved FileStream base64 encoding performance by using `bytesToBase64url` instead of `btoa` with `String.fromCharCode`. Added native `toBase64`/`fromBase64` support in cojson when available.
25
+
26
+ **Benchmark results (5MB file):**
27
+ - `asBase64`: 732.39 op/sec vs 49.78 op/sec (**+1371.36% faster**)
28
+ - `write`: 12.53 op/sec vs 12.19 op/sec (+2.79%)
29
+ - `getChunks`: 695.03 op/sec vs 153.89 op/sec (**+351.64% faster**)
30
+
31
+ - 739ea48: Fixed createdAt getter to use CoValue's header
32
+ - b38a526: fix: prevent conflicts between concurrent async SQLite transactions
33
+ - f701fd7: Added optional `name` metadata to Groups. Groups can now be created with a display name (e.g. `Group.create({ owner: account, name: "Engineering" })`)
34
+ - 0fa9e15: Fix issue with CoRecord serialisation
35
+ - Updated dependencies [c7be307]
36
+ - Updated dependencies [b38a526]
37
+ - Updated dependencies [f701fd7]
38
+ - Updated dependencies [99f9d47]
39
+ - cojson@0.20.8
40
+ - cojson-storage-indexeddb@0.20.8
41
+ - cojson-transport-ws@0.20.8
42
+
43
+ ## 0.20.7
44
+
45
+ ### Patch Changes
46
+
47
+ - Updated dependencies [988941c]
48
+ - cojson@0.20.7
49
+ - cojson-transport-ws@0.20.7
50
+ - cojson-storage-indexeddb@0.20.7
51
+
3
52
  ## 0.20.6
4
53
 
5
54
  ### Patch Changes