jazz-tools 0.17.14 → 0.18.1

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 (250) hide show
  1. package/.svelte-kit/__package__/jazz.class.svelte.js +1 -1
  2. package/.svelte-kit/__package__/media/image.svelte +3 -9
  3. package/.svelte-kit/__package__/media/image.svelte.d.ts +1 -6
  4. package/.svelte-kit/__package__/media/image.svelte.d.ts.map +1 -1
  5. package/.svelte-kit/__package__/media/image.types.d.ts +7 -0
  6. package/.svelte-kit/__package__/media/image.types.d.ts.map +1 -0
  7. package/.svelte-kit/__package__/media/image.types.js +1 -0
  8. package/.svelte-kit/__package__/tests/media/image.svelte.test.js +31 -31
  9. package/.turbo/turbo-build.log +60 -46
  10. package/CHANGELOG.md +41 -0
  11. package/dist/better-auth/auth/client.d.ts +29 -0
  12. package/dist/better-auth/auth/client.d.ts.map +1 -0
  13. package/dist/better-auth/auth/client.js +127 -0
  14. package/dist/better-auth/auth/client.js.map +1 -0
  15. package/dist/better-auth/auth/react.d.ts +2170 -0
  16. package/dist/better-auth/auth/react.d.ts.map +1 -0
  17. package/dist/better-auth/auth/react.js +40 -0
  18. package/dist/better-auth/auth/react.js.map +1 -0
  19. package/dist/better-auth/auth/server.d.ts +14 -0
  20. package/dist/better-auth/auth/server.d.ts.map +1 -0
  21. package/dist/better-auth/auth/server.js +198 -0
  22. package/dist/better-auth/auth/server.js.map +1 -0
  23. package/dist/better-auth/auth/tests/client.test.d.ts +2 -0
  24. package/dist/better-auth/auth/tests/client.test.d.ts.map +1 -0
  25. package/dist/better-auth/auth/tests/server.test.d.ts +2 -0
  26. package/dist/better-auth/auth/tests/server.test.d.ts.map +1 -0
  27. package/dist/browser/index.js +2 -2
  28. package/dist/browser/index.js.map +1 -1
  29. package/dist/{chunk-LZOF6WP5.js → chunk-IERUTUXB.js} +1336 -1017
  30. package/dist/chunk-IERUTUXB.js.map +1 -0
  31. package/dist/index.js +18 -18
  32. package/dist/index.js.map +1 -1
  33. package/dist/inspector/{custom-element-ZSNTCECD.js → custom-element-WCY6D3QJ.js} +3 -3
  34. package/dist/inspector/{custom-element-ZSNTCECD.js.map → custom-element-WCY6D3QJ.js.map} +1 -1
  35. package/dist/inspector/index.js +1 -1
  36. package/dist/inspector/index.js.map +1 -1
  37. package/dist/inspector/register-custom-element.js +1 -1
  38. package/dist/media/{chunk-E5J3WLQW.js → chunk-KR2V6X2N.js} +14 -9
  39. package/dist/media/chunk-KR2V6X2N.js.map +1 -0
  40. package/dist/media/create-image.d.ts +6 -6
  41. package/dist/media/index.browser.d.ts +6 -6
  42. package/dist/media/index.browser.js +1 -1
  43. package/dist/media/index.d.ts +1 -1
  44. package/dist/media/index.js +1 -1
  45. package/dist/media/index.native.d.ts +6 -6
  46. package/dist/media/index.native.js +1 -1
  47. package/dist/media/utils.d.ts.map +1 -1
  48. package/dist/prosemirror/index.js +2 -2
  49. package/dist/prosemirror/index.js.map +1 -1
  50. package/dist/react/index.js +7 -5
  51. package/dist/react/index.js.map +1 -1
  52. package/dist/react-core/hooks.d.ts.map +1 -1
  53. package/dist/react-core/index.js +4675 -23
  54. package/dist/react-core/index.js.map +1 -1
  55. package/dist/react-native-core/index.js +1 -1
  56. package/dist/react-native-core/index.js.map +1 -1
  57. package/dist/svelte/jazz.class.svelte.js +1 -1
  58. package/dist/svelte/media/image.svelte +3 -9
  59. package/dist/svelte/media/image.svelte.d.ts +1 -6
  60. package/dist/svelte/media/image.svelte.d.ts.map +1 -1
  61. package/dist/svelte/media/image.types.d.ts +7 -0
  62. package/dist/svelte/media/image.types.d.ts.map +1 -0
  63. package/dist/svelte/media/image.types.js +1 -0
  64. package/dist/svelte/tests/media/image.svelte.test.js +31 -31
  65. package/dist/testing.js +18 -14
  66. package/dist/testing.js.map +1 -1
  67. package/dist/tools/coValues/CoFieldInit.d.ts +13 -0
  68. package/dist/tools/coValues/CoFieldInit.d.ts.map +1 -0
  69. package/dist/tools/coValues/CoValueBase.d.ts +18 -15
  70. package/dist/tools/coValues/CoValueBase.d.ts.map +1 -1
  71. package/dist/tools/coValues/account.d.ts +101 -46
  72. package/dist/tools/coValues/account.d.ts.map +1 -1
  73. package/dist/tools/coValues/coFeed.d.ts +78 -62
  74. package/dist/tools/coValues/coFeed.d.ts.map +1 -1
  75. package/dist/tools/coValues/coList.d.ts +212 -99
  76. package/dist/tools/coValues/coList.d.ts.map +1 -1
  77. package/dist/tools/coValues/coMap.d.ts +210 -192
  78. package/dist/tools/coValues/coMap.d.ts.map +1 -1
  79. package/dist/tools/coValues/coPlainText.d.ts +30 -22
  80. package/dist/tools/coValues/coPlainText.d.ts.map +1 -1
  81. package/dist/tools/coValues/deepLoading.d.ts +13 -13
  82. package/dist/tools/coValues/deepLoading.d.ts.map +1 -1
  83. package/dist/tools/coValues/extensions/imageDef.d.ts +1 -1
  84. package/dist/tools/coValues/group.d.ts +32 -32
  85. package/dist/tools/coValues/group.d.ts.map +1 -1
  86. package/dist/tools/coValues/inbox.d.ts.map +1 -1
  87. package/dist/tools/coValues/interfaces.d.ts +18 -17
  88. package/dist/tools/coValues/interfaces.d.ts.map +1 -1
  89. package/dist/tools/coValues/profile.d.ts +6 -5
  90. package/dist/tools/coValues/profile.d.ts.map +1 -1
  91. package/dist/tools/coValues/schemaUnion.d.ts +3 -3
  92. package/dist/tools/coValues/schemaUnion.d.ts.map +1 -1
  93. package/dist/tools/exports.d.ts +1 -1
  94. package/dist/tools/exports.d.ts.map +1 -1
  95. package/dist/tools/implementation/anonymousJazzAgent.d.ts +2 -1
  96. package/dist/tools/implementation/anonymousJazzAgent.d.ts.map +1 -1
  97. package/dist/tools/implementation/schema.d.ts +5 -5
  98. package/dist/tools/implementation/schema.d.ts.map +1 -1
  99. package/dist/tools/implementation/symbols.d.ts +2 -0
  100. package/dist/tools/implementation/symbols.d.ts.map +1 -1
  101. package/dist/tools/implementation/zodSchema/schemaTypes/AccountSchema.d.ts +2 -2
  102. package/dist/tools/implementation/zodSchema/schemaTypes/AccountSchema.d.ts.map +1 -1
  103. package/dist/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.d.ts +6 -2
  104. package/dist/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.d.ts.map +1 -1
  105. package/dist/tools/implementation/zodSchema/schemaTypes/CoListSchema.d.ts +8 -3
  106. package/dist/tools/implementation/zodSchema/schemaTypes/CoListSchema.d.ts.map +1 -1
  107. package/dist/tools/implementation/zodSchema/schemaTypes/CoMapSchema.d.ts +12 -7
  108. package/dist/tools/implementation/zodSchema/schemaTypes/CoMapSchema.d.ts.map +1 -1
  109. package/dist/tools/implementation/zodSchema/schemaTypes/CoRecordSchema.d.ts +13 -7
  110. package/dist/tools/implementation/zodSchema/schemaTypes/CoRecordSchema.d.ts.map +1 -1
  111. package/dist/tools/implementation/zodSchema/schemaTypes/FileStreamSchema.d.ts +11 -2
  112. package/dist/tools/implementation/zodSchema/schemaTypes/FileStreamSchema.d.ts.map +1 -1
  113. package/dist/tools/implementation/zodSchema/schemaTypes/PlainTextSchema.d.ts +4 -0
  114. package/dist/tools/implementation/zodSchema/schemaTypes/PlainTextSchema.d.ts.map +1 -1
  115. package/dist/tools/implementation/zodSchema/schemaTypes/RichTextSchema.d.ts +4 -0
  116. package/dist/tools/implementation/zodSchema/schemaTypes/RichTextSchema.d.ts.map +1 -1
  117. package/dist/tools/implementation/zodSchema/typeConverters/{CoFieldInit.d.ts → CoFieldSchemaInit.d.ts} +7 -7
  118. package/dist/tools/implementation/zodSchema/typeConverters/CoFieldSchemaInit.d.ts.map +1 -0
  119. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchema.d.ts +4 -4
  120. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchema.d.ts.map +1 -1
  121. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchemaCoValuesNullable.d.ts +4 -4
  122. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchemaCoValuesNullable.d.ts.map +1 -1
  123. package/dist/tools/implementation/zodSchema/zodCo.d.ts +3 -3
  124. package/dist/tools/implementation/zodSchema/zodCo.d.ts.map +1 -1
  125. package/dist/tools/internal.d.ts +2 -1
  126. package/dist/tools/internal.d.ts.map +1 -1
  127. package/dist/tools/lib/migration.d.ts +1 -1
  128. package/dist/tools/lib/migration.d.ts.map +1 -1
  129. package/dist/tools/subscribe/SubscriptionScope.d.ts.map +1 -1
  130. package/dist/tools/subscribe/index.d.ts +1 -1
  131. package/dist/tools/subscribe/index.d.ts.map +1 -1
  132. package/dist/tools/subscribe/utils.d.ts +2 -2
  133. package/dist/tools/subscribe/utils.d.ts.map +1 -1
  134. package/dist/tools/testing.d.ts.map +1 -1
  135. package/dist/tools/tests/utils.d.ts +2 -6
  136. package/dist/tools/tests/utils.d.ts.map +1 -1
  137. package/dist/worker/index.js +3 -3
  138. package/dist/worker/index.js.map +1 -1
  139. package/package.json +23 -4
  140. package/src/better-auth/auth/client.ts +169 -0
  141. package/src/better-auth/auth/react.tsx +105 -0
  142. package/src/better-auth/auth/server.ts +250 -0
  143. package/src/better-auth/auth/tests/client.test.ts +249 -0
  144. package/src/better-auth/auth/tests/server.test.ts +226 -0
  145. package/src/browser/auth/PasskeyAuth.ts +2 -2
  146. package/src/browser/createBrowserContext.ts +2 -2
  147. package/src/browser/tests/PasskeyAuth.test.ts +2 -2
  148. package/src/inspector/custom-element.tsx +2 -2
  149. package/src/inspector/viewer/new-app.tsx +1 -1
  150. package/src/media/create-image.test.ts +7 -7
  151. package/src/media/create-image.ts +5 -3
  152. package/src/media/index.ts +1 -1
  153. package/src/media/utils.test.ts +72 -66
  154. package/src/media/utils.ts +9 -6
  155. package/src/prosemirror/lib/plugin.ts +1 -1
  156. package/src/prosemirror/lib/sync.ts +1 -1
  157. package/src/prosemirror/tests/plugin.test.ts +4 -4
  158. package/src/react/media/image.tsx +2 -2
  159. package/src/react/tests/media/image.test.tsx +52 -32
  160. package/src/react-core/hooks.ts +11 -5
  161. package/src/react-core/tests/useAccount.test.ts +16 -22
  162. package/src/react-core/tests/useCoState.test.ts +19 -19
  163. package/src/react-core/tests/useInboxSender.test.ts +5 -2
  164. package/src/react-core/tests/usePassPhraseAuth.test.ts +6 -6
  165. package/src/react-native-core/media/image.tsx +1 -1
  166. package/src/svelte/jazz.class.svelte.ts +1 -1
  167. package/src/svelte/media/image.svelte +3 -9
  168. package/src/svelte/media/image.types.ts +7 -0
  169. package/src/svelte/tests/media/image.svelte.test.ts +34 -32
  170. package/src/tools/auth/DemoAuth.ts +2 -2
  171. package/src/tools/auth/PassphraseAuth.ts +2 -2
  172. package/src/tools/auth/clerk/index.ts +2 -2
  173. package/src/tools/auth/clerk/tests/JazzClerkAuth.test.ts +1 -1
  174. package/src/tools/coValues/CoFieldInit.ts +20 -0
  175. package/src/tools/coValues/CoValueBase.ts +40 -60
  176. package/src/tools/coValues/account.ts +311 -232
  177. package/src/tools/coValues/coFeed.ts +185 -153
  178. package/src/tools/coValues/coList.ts +507 -334
  179. package/src/tools/coValues/coMap.ts +434 -286
  180. package/src/tools/coValues/coPlainText.ts +94 -110
  181. package/src/tools/coValues/deepLoading.ts +13 -13
  182. package/src/tools/coValues/group.ts +100 -114
  183. package/src/tools/coValues/inbox.ts +16 -14
  184. package/src/tools/coValues/interfaces.ts +49 -31
  185. package/src/tools/coValues/profile.ts +8 -6
  186. package/src/tools/coValues/request.ts +9 -9
  187. package/src/tools/coValues/schemaUnion.ts +11 -5
  188. package/src/tools/exports.ts +1 -1
  189. package/src/tools/implementation/ContextManager.ts +4 -4
  190. package/src/tools/implementation/anonymousJazzAgent.ts +2 -1
  191. package/src/tools/implementation/createContext.ts +1 -1
  192. package/src/tools/implementation/devtoolsFormatters.ts +9 -9
  193. package/src/tools/implementation/invites.ts +2 -2
  194. package/src/tools/implementation/schema.ts +7 -7
  195. package/src/tools/implementation/symbols.ts +3 -0
  196. package/src/tools/implementation/zodSchema/schemaTypes/AccountSchema.ts +2 -2
  197. package/src/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.ts +11 -2
  198. package/src/tools/implementation/zodSchema/schemaTypes/CoListSchema.ts +18 -7
  199. package/src/tools/implementation/zodSchema/schemaTypes/CoMapSchema.ts +17 -7
  200. package/src/tools/implementation/zodSchema/schemaTypes/CoRecordSchema.ts +20 -11
  201. package/src/tools/implementation/zodSchema/schemaTypes/FileStreamSchema.ts +19 -2
  202. package/src/tools/implementation/zodSchema/schemaTypes/PlainTextSchema.ts +6 -0
  203. package/src/tools/implementation/zodSchema/schemaTypes/RichTextSchema.ts +6 -0
  204. package/src/tools/implementation/zodSchema/typeConverters/{CoFieldInit.ts → CoFieldSchemaInit.ts} +11 -11
  205. package/src/tools/implementation/zodSchema/typeConverters/InstanceOfSchema.ts +4 -4
  206. package/src/tools/implementation/zodSchema/typeConverters/InstanceOfSchemaCoValuesNullable.ts +4 -4
  207. package/src/tools/implementation/zodSchema/zodCo.ts +3 -3
  208. package/src/tools/internal.ts +2 -1
  209. package/src/tools/lib/migration.ts +5 -5
  210. package/src/tools/subscribe/SubscriptionScope.ts +32 -24
  211. package/src/tools/subscribe/index.ts +4 -4
  212. package/src/tools/subscribe/utils.ts +11 -11
  213. package/src/tools/testing.ts +17 -13
  214. package/src/tools/tests/ContextManager.test.ts +70 -59
  215. package/src/tools/tests/PassphraseAuth.test.ts +2 -2
  216. package/src/tools/tests/account.test.ts +188 -67
  217. package/src/tools/tests/coDiscriminatedUnion.test-d.ts +12 -6
  218. package/src/tools/tests/coDiscriminatedUnion.test.ts +26 -17
  219. package/src/tools/tests/coFeed.test-d.ts +18 -17
  220. package/src/tools/tests/coFeed.test.ts +108 -97
  221. package/src/tools/tests/coList.test-d.ts +18 -23
  222. package/src/tools/tests/coList.test.ts +350 -165
  223. package/src/tools/tests/coMap.record.test-d.ts +9 -13
  224. package/src/tools/tests/coMap.record.test.ts +37 -23
  225. package/src/tools/tests/coMap.test-d.ts +43 -21
  226. package/src/tools/tests/coMap.test.ts +459 -182
  227. package/src/tools/tests/coOptional.test.ts +28 -13
  228. package/src/tools/tests/coPlainText.test.ts +15 -15
  229. package/src/tools/tests/createContext.test.ts +14 -14
  230. package/src/tools/tests/deepLoading.test.ts +95 -94
  231. package/src/tools/tests/exportImport.test.ts +61 -41
  232. package/src/tools/tests/groupsAndAccounts.test.ts +333 -116
  233. package/src/tools/tests/inbox.test.ts +22 -17
  234. package/src/tools/tests/interfaces.test.ts +12 -11
  235. package/src/tools/tests/invites.test.ts +6 -4
  236. package/src/tools/tests/load.test.ts +20 -18
  237. package/src/tools/tests/patterns/notifications.test.ts +7 -7
  238. package/src/tools/tests/patterns/quest.test.ts +3 -3
  239. package/src/tools/tests/patterns/requestToJoin.test.ts +22 -22
  240. package/src/tools/tests/request.test.ts +38 -39
  241. package/src/tools/tests/schemaUnion.test.ts +64 -10
  242. package/src/tools/tests/subscribe.test.ts +64 -64
  243. package/src/tools/tests/testing.test.ts +7 -11
  244. package/src/tools/tests/utils.ts +3 -3
  245. package/src/tools/tests/zod.test.ts +3 -3
  246. package/src/worker/index.ts +3 -3
  247. package/tsup.config.ts +9 -0
  248. package/dist/chunk-LZOF6WP5.js.map +0 -1
  249. package/dist/media/chunk-E5J3WLQW.js.map +0 -1
  250. package/dist/tools/implementation/zodSchema/typeConverters/CoFieldInit.d.ts.map +0 -1
@@ -28,104 +28,104 @@ describe("highestResAvailable", async () => {
28
28
  });
29
29
 
30
30
  it("returns original if progressive is false", async () => {
31
- const original = await createFileStream(account._owner);
31
+ const original = await createFileStream(account.$jazz.owner);
32
32
  const imageDef = ImageDefinition.create(
33
33
  {
34
34
  originalSize: [1920, 1080],
35
35
  progressive: false,
36
36
  original,
37
37
  },
38
- { owner: account._owner },
38
+ { owner: account.$jazz.owner },
39
39
  );
40
40
 
41
- imageDef["1920x1080"] = original;
41
+ imageDef.$jazz.set("1920x1080", original);
42
42
 
43
43
  const result = highestResAvailable(imageDef, 256, 256);
44
- expect(result?.image.id).toBe(original.id);
44
+ expect(result?.image.$jazz.id).toBe(original.$jazz.id);
45
45
  });
46
46
 
47
47
  it("returns original if progressive is true but no resizes present", async () => {
48
- const original = await createFileStream(account._owner, 1);
48
+ const original = await createFileStream(account.$jazz.owner, 1);
49
49
  const imageDef = ImageDefinition.create(
50
50
  {
51
51
  originalSize: [1920, 1080],
52
52
  progressive: true,
53
53
  original,
54
54
  },
55
- { owner: account._owner },
55
+ { owner: account.$jazz.owner },
56
56
  );
57
57
 
58
- imageDef["1920x1080"] = original;
58
+ imageDef.$jazz.set("1920x1080", original);
59
59
 
60
60
  const result = highestResAvailable(imageDef, 256, 256);
61
- expect(result?.image.id).toBe(original.id);
61
+ expect(result?.image.$jazz.id).toBe(original.$jazz.id);
62
62
  });
63
63
 
64
64
  it("returns closest available resize if progressive is true", async () => {
65
- const original = await createFileStream(account._owner);
66
- const resize256 = await createFileStream(account._owner, 1);
65
+ const original = await createFileStream(account.$jazz.owner);
66
+ const resize256 = await createFileStream(account.$jazz.owner, 1);
67
67
  const imageDef = ImageDefinition.create(
68
68
  {
69
69
  originalSize: [1920, 1080],
70
70
  progressive: true,
71
71
  original,
72
72
  },
73
- { owner: account._owner },
73
+ { owner: account.$jazz.owner },
74
74
  );
75
75
 
76
- imageDef["1920x1080"] = original;
77
- imageDef["256x256"] = resize256;
76
+ imageDef.$jazz.set("1920x1080", original);
77
+ imageDef.$jazz.set("256x256", resize256);
78
78
 
79
79
  const result = highestResAvailable(imageDef, 256, 256);
80
- expect(result?.image.id).toBe(resize256.id);
80
+ expect(result?.image.$jazz.id).toBe(resize256.$jazz.id);
81
81
  });
82
82
 
83
83
  it("returns original if wanted size matches original size", async () => {
84
- const original = await createFileStream(account._owner);
84
+ const original = await createFileStream(account.$jazz.owner);
85
85
  const imageDef = ImageDefinition.create(
86
86
  {
87
87
  originalSize: [1024, 1024],
88
88
  progressive: true,
89
89
  original,
90
90
  },
91
- { owner: account._owner },
91
+ { owner: account.$jazz.owner },
92
92
  );
93
93
 
94
- imageDef["1024x1024"] = original;
94
+ imageDef.$jazz.set("1024x1024", original);
95
95
 
96
96
  const result = highestResAvailable(imageDef, 1024, 1024);
97
- expect(result?.image.id).toBe(original.id);
97
+ expect(result?.image.$jazz.id).toBe(original.$jazz.id);
98
98
  });
99
99
 
100
100
  it("returns best fit among multiple resizes", async () => {
101
- const original = await createFileStream(account._owner);
102
- const resize256 = await createFileStream(account._owner, 1);
103
- const resize1024 = await createFileStream(account._owner, 1);
104
- const resize2048 = await createFileStream(account._owner, 1);
101
+ const original = await createFileStream(account.$jazz.owner);
102
+ const resize256 = await createFileStream(account.$jazz.owner, 1);
103
+ const resize1024 = await createFileStream(account.$jazz.owner, 1);
104
+ const resize2048 = await createFileStream(account.$jazz.owner, 1);
105
105
  const imageDef = ImageDefinition.create(
106
106
  {
107
107
  originalSize: [2048, 2048],
108
108
  progressive: true,
109
109
  original,
110
110
  },
111
- { owner: account._owner },
111
+ { owner: account.$jazz.owner },
112
112
  );
113
113
 
114
- imageDef["256x256"] = resize256;
115
- imageDef["1024x1024"] = resize1024;
116
- imageDef["2048x2048"] = resize2048;
114
+ imageDef.$jazz.set("256x256", resize256);
115
+ imageDef.$jazz.set("1024x1024", resize1024);
116
+ imageDef.$jazz.set("2048x2048", resize2048);
117
117
 
118
118
  // Closest to 900x900 is 1024
119
119
  const result = highestResAvailable(imageDef, 900, 900);
120
- expect(result?.image.id).toBe(resize1024.id);
120
+ expect(result?.image.$jazz.id).toBe(resize1024.$jazz.id);
121
121
  });
122
122
 
123
123
  it("returns the best fit resolution", async () => {
124
- const original = await createFileStream(account._owner, 1);
125
- const resize256 = await createFileStream(account._owner, 1);
126
- const resize2048 = await createFileStream(account._owner, 1);
124
+ const original = await createFileStream(account.$jazz.owner, 1);
125
+ const resize256 = await createFileStream(account.$jazz.owner, 1);
126
+ const resize2048 = await createFileStream(account.$jazz.owner, 1);
127
127
  // 1024 is not loaded yet
128
- const resize1024 = FileStream.create({ owner: account._owner });
128
+ const resize1024 = FileStream.create({ owner: account.$jazz.owner });
129
129
  resize1024.start({ mimeType: "image/jpeg" });
130
130
  // Don't end resize1024, so it has no chunks
131
131
 
@@ -135,42 +135,42 @@ describe("highestResAvailable", async () => {
135
135
  progressive: true,
136
136
  original,
137
137
  },
138
- { owner: account._owner },
138
+ { owner: account.$jazz.owner },
139
139
  );
140
- imageDef["256x256"] = resize256;
141
- imageDef["1024x1024"] = resize1024;
142
- imageDef["2048x2048"] = resize2048;
140
+ imageDef.$jazz.set("256x256", resize256);
141
+ imageDef.$jazz.set("1024x1024", resize1024);
142
+ imageDef.$jazz.set("2048x2048", resize2048);
143
143
 
144
144
  // Closest to 900x900 is 1024
145
145
  const result = highestResAvailable(imageDef, 900, 900);
146
- expect(result?.image.id).toBe(resize2048.id);
146
+ expect(result?.image.$jazz.id).toBe(resize2048.$jazz.id);
147
147
  });
148
148
 
149
149
  it("returns original if no resizes are loaded (missing chunks)", async () => {
150
- const original = await createFileStream(account._owner);
150
+ const original = await createFileStream(account.$jazz.owner);
151
151
  const imageDef = ImageDefinition.create(
152
152
  {
153
153
  originalSize: [256, 256],
154
154
  progressive: true,
155
155
  original,
156
156
  },
157
- { owner: account._owner },
157
+ { owner: account.$jazz.owner },
158
158
  );
159
159
 
160
- imageDef["256x256"] = original;
160
+ imageDef.$jazz.set("256x256", original);
161
161
  // 1024 is not loaded yet
162
- const resize1024 = FileStream.create({ owner: account._owner });
162
+ const resize1024 = FileStream.create({ owner: account.$jazz.owner });
163
163
  resize1024.start({ mimeType: "image/jpeg" });
164
164
  // Don't end resize1024, so it has no chunks
165
- imageDef["1024x1024"] = resize1024;
165
+ imageDef.$jazz.set("1024x1024", resize1024);
166
166
 
167
167
  const result = highestResAvailable(imageDef, 1024, 1024);
168
168
  // Only original is valid
169
- expect(result?.image.id).toBe(original.id);
169
+ expect(result?.image.$jazz.id).toBe(original.$jazz.id);
170
170
  });
171
171
 
172
172
  it("returns the first loaded resize if original is not loaded yet(missing chunks)", async () => {
173
- const original = FileStream.create({ owner: account._owner });
173
+ const original = FileStream.create({ owner: account.$jazz.owner });
174
174
  original.start({ mimeType: "image/jpeg" });
175
175
  // Don't call .end(), so it has no chunks
176
176
 
@@ -180,18 +180,21 @@ describe("highestResAvailable", async () => {
180
180
  progressive: true,
181
181
  original,
182
182
  },
183
- { owner: account._owner },
183
+ { owner: account.$jazz.owner },
184
184
  );
185
185
 
186
- imageDef["256x256"] = await createFileStream(account._owner, 1);
186
+ imageDef.$jazz.set(
187
+ "256x256",
188
+ await createFileStream(account.$jazz.owner, 1),
189
+ );
187
190
 
188
191
  const result = highestResAvailable(imageDef, 1024, 1024);
189
192
  // Only original is valid
190
- expect(result?.image.id).toBe(imageDef["256x256"].id);
193
+ expect(result?.image.$jazz.id).toBe(imageDef["256x256"]!.$jazz.id);
191
194
  });
192
195
 
193
196
  it("returns the highest resolution if no good match is found", async () => {
194
- const original = await createFileStream(account._owner, 1);
197
+ const original = await createFileStream(account.$jazz.owner, 1);
195
198
 
196
199
  const imageDef = ImageDefinition.create(
197
200
  {
@@ -199,14 +202,17 @@ describe("highestResAvailable", async () => {
199
202
  progressive: true,
200
203
  original,
201
204
  },
202
- { owner: account._owner },
205
+ { owner: account.$jazz.owner },
203
206
  );
204
207
 
205
- imageDef["256x256"] = await createFileStream(account._owner, 1);
206
- imageDef["300x300"] = original;
208
+ imageDef.$jazz.set(
209
+ "256x256",
210
+ await createFileStream(account.$jazz.owner, 1),
211
+ );
212
+ imageDef.$jazz.set("300x300", original);
207
213
 
208
214
  const result = highestResAvailable(imageDef, 1024, 1024);
209
- expect(result?.image.id).toBe(original.id);
215
+ expect(result?.image.$jazz.id).toBe(original.$jazz.id);
210
216
  });
211
217
  });
212
218
 
@@ -237,12 +243,12 @@ describe("loadImageBySize", async () => {
237
243
  },
238
244
  { owner },
239
245
  );
240
- imageDef[`${originalSize[0]}x${originalSize[1]}`] = original;
246
+ imageDef.$jazz.set(`${originalSize[0]}x${originalSize[1]}`, original);
241
247
 
242
248
  for (const size of sizes) {
243
249
  if (!size) continue;
244
250
  const [w, h] = size;
245
- imageDef[`${w}x${h}`] = await createFileStream(owner, 1);
251
+ imageDef.$jazz.set(`${w}x${h}`, await createFileStream(owner, 1));
246
252
  }
247
253
  return imageDef;
248
254
  };
@@ -250,7 +256,7 @@ describe("loadImageBySize", async () => {
250
256
  it("returns original if progressive is false", async () => {
251
257
  const imageDef = await createImageDef([[1920, 1080]], false);
252
258
  const result = await loadImageBySize(imageDef, 256, 256);
253
- expect(result?.image.id).toBe(imageDef["1920x1080"]!.id);
259
+ expect(result?.image.$jazz.id).toBe(imageDef["1920x1080"]!.$jazz.id);
254
260
  });
255
261
 
256
262
  it("returns the original image already loaded", async () => {
@@ -266,20 +272,20 @@ describe("loadImageBySize", async () => {
266
272
  setActiveAccount(account2);
267
273
 
268
274
  const result = await loadImageBySize(imageDef, 256, 256);
269
- expect(result?.image.id).toBe(imageDef["1920x1080"]!.id);
275
+ expect(result?.image.$jazz.id).toBe(imageDef["1920x1080"]!.$jazz.id);
270
276
  expect(result?.image.isBinaryStreamEnded()).toBe(true);
271
277
  expect(result?.image.asBase64()).toStrictEqual(expect.any(String));
272
278
  });
273
279
 
274
280
  it("returns null if no sizes are available", async () => {
275
- const original = await createFileStream(account._owner, 1);
281
+ const original = await createFileStream(account.$jazz.owner, 1);
276
282
  const imageDef = ImageDefinition.create(
277
283
  {
278
284
  originalSize: [1920, 1080],
279
285
  progressive: true,
280
286
  original,
281
287
  },
282
- { owner: account._owner },
288
+ { owner: account.$jazz.owner },
283
289
  );
284
290
  const result = await loadImageBySize(imageDef, 256, 256);
285
291
  expect(result).toBeNull();
@@ -290,8 +296,8 @@ describe("loadImageBySize", async () => {
290
296
  [256, 256],
291
297
  [1920, 1080],
292
298
  ]);
293
- const result = await loadImageBySize(imageDef.id, 256, 256);
294
- expect(result?.image.id).toBe(imageDef["256x256"]!.id);
299
+ const result = await loadImageBySize(imageDef.$jazz.id, 256, 256);
300
+ expect(result?.image.$jazz.id).toBe(imageDef["256x256"]!.$jazz.id);
295
301
  expect(result?.width).toBe(256);
296
302
  expect(result?.height).toBe(256);
297
303
  });
@@ -303,7 +309,7 @@ describe("loadImageBySize", async () => {
303
309
  [2048, 2048],
304
310
  ]);
305
311
  const result = await loadImageBySize(imageDef, 900, 900);
306
- expect(result?.image.id).toBe(imageDef["1024x1024"]!.id);
312
+ expect(result?.image.$jazz.id).toBe(imageDef["1024x1024"]!.$jazz.id);
307
313
  expect(result?.width).toBe(1024);
308
314
  expect(result?.height).toBe(1024);
309
315
  });
@@ -314,20 +320,20 @@ describe("loadImageBySize", async () => {
314
320
  [300, 300],
315
321
  ]);
316
322
  const result = await loadImageBySize(imageDef, 1024, 1024);
317
- expect(result?.image.id).toBe(imageDef["300x300"]!.id);
323
+ expect(result?.image.$jazz.id).toBe(imageDef["300x300"]!.$jazz.id);
318
324
  expect(result?.width).toBe(300);
319
325
  expect(result?.height).toBe(300);
320
326
  });
321
327
 
322
328
  it("returns null if the best target is not loaded", async () => {
323
- const original = await createFileStream(account._owner, 1);
329
+ const original = await createFileStream(account.$jazz.owner, 1);
324
330
  const imageDef = ImageDefinition.create(
325
331
  {
326
332
  originalSize: [256, 256],
327
333
  progressive: true,
328
334
  original,
329
335
  },
330
- { owner: account._owner },
336
+ { owner: account.$jazz.owner },
331
337
  );
332
338
  // No resizes added
333
339
  const result = await loadImageBySize(imageDef, 1024, 1024);
@@ -340,7 +346,7 @@ describe("loadImageBySize", async () => {
340
346
  [1024, 1024],
341
347
  ]);
342
348
  const result = await loadImageBySize(imageDef, 1024, 1024);
343
- expect(result?.image.id).toBe(imageDef["1024x1024"]!.id);
349
+ expect(result?.image.$jazz.id).toBe(imageDef["1024x1024"]!.$jazz.id);
344
350
  expect(result?.width).toBe(1024);
345
351
  expect(result?.height).toBe(1024);
346
352
  });
@@ -365,9 +371,9 @@ describe("loadImageBySize", async () => {
365
371
  const account2 = await createJazzTestAccount();
366
372
  setActiveAccount(account2);
367
373
 
368
- const result = await loadImageBySize(imageDef.id, 1024, 1024);
374
+ const result = await loadImageBySize(imageDef.$jazz.id, 1024, 1024);
369
375
  expect(result).not.toBeNull();
370
- expect(result?.image.id).toBe(imageDef["1024x1024"]!.id);
376
+ expect(result?.image.$jazz.id).toBe(imageDef["1024x1024"]!.$jazz.id);
371
377
  expect(result?.image.isBinaryStreamEnded()).toBe(true);
372
378
  expect(result?.image.asBase64()).toStrictEqual(expect.any(String));
373
379
  });
@@ -6,7 +6,7 @@ export function highestResAvailable(
6
6
  wantedWidth: number,
7
7
  wantedHeight: number,
8
8
  ): { width: number; height: number; image: FileStream } | null {
9
- const availableSizes: [number, number, string][] = image._raw
9
+ const availableSizes: [number, number, string][] = image.$jazz.raw
10
10
  .keys()
11
11
  .filter((key) => /^\d+x\d+$/.test(key))
12
12
  .map((key) => {
@@ -29,7 +29,9 @@ export function highestResAvailable(
29
29
  return {
30
30
  size,
31
31
  match: sizesMatchWanted(size[0], size[1], wantedWidth, wantedHeight),
32
- isLoaded: isLoaded(image._raw.get(size[2]) as CoID<any> | undefined),
32
+ isLoaded: isLoaded(
33
+ image.$jazz.raw.get(size[2]) as CoID<any> | undefined,
34
+ ),
33
35
  };
34
36
  })
35
37
  .sort((a, b) => a.match - b.match);
@@ -102,7 +104,7 @@ function isLoaded(id: CoID<any> | null | undefined): boolean {
102
104
  return false;
103
105
  }
104
106
 
105
- return !!Account.getMe()._raw.core.node.getLoaded(id);
107
+ return !!Account.getMe().$jazz.localNode.getLoaded(id);
106
108
  }
107
109
 
108
110
  export async function loadImage(
@@ -131,7 +133,7 @@ export async function loadImage(
131
133
  return null;
132
134
  }
133
135
 
134
- const loadedOriginal = await FileStream.load(imageOrId.original.id);
136
+ const loadedOriginal = await FileStream.load(imageOrId.original.$jazz.id);
135
137
 
136
138
  if (!loadedOriginal) {
137
139
  console.warn("Unable to find the original image");
@@ -150,6 +152,7 @@ export async function loadImageBySize(
150
152
  wantedWidth: number,
151
153
  wantedHeight: number,
152
154
  ): Promise<{ width: number; height: number; image: FileStream } | null> {
155
+ // @ts-expect-error The resolved type for CoMap does not include catchall properties
153
156
  const image: ImageDefinition | null =
154
157
  typeof imageOrId === "string"
155
158
  ? await ImageDefinition.load(imageOrId)
@@ -163,7 +166,7 @@ export async function loadImageBySize(
163
166
  return loadImage(imageOrId);
164
167
  }
165
168
 
166
- const availableSizes: [number, number, string][] = image._raw
169
+ const availableSizes: [number, number, string][] = image.$jazz.raw
167
170
  .keys()
168
171
  .filter((key) => /^\d+x\d+$/.test(key))
169
172
  .map((key) => {
@@ -189,7 +192,7 @@ export async function loadImageBySize(
189
192
  // image[bestTarget.size[2]] returns undefined if FileStream hasn't loaded yet.
190
193
  // Since we only need the file's ID to fetch it later, we check the raw _refs
191
194
  // which contain only the linked covalue's ID.
192
- const file = image._refs[bestTarget.size[2]];
195
+ const file = image.$jazz.refs[bestTarget.size[2]];
193
196
 
194
197
  if (!file) {
195
198
  return null;
@@ -57,7 +57,7 @@ export function createJazzPlugin(
57
57
  setView(editorView);
58
58
 
59
59
  if (coRichText) {
60
- coRichText.subscribe(handleCoRichTextChange);
60
+ coRichText.$jazz.subscribe(handleCoRichTextChange);
61
61
  }
62
62
 
63
63
  return {
@@ -109,7 +109,7 @@ export function createSyncHandlers(coRichText: CoRichText | undefined) {
109
109
  const str = proseMirrorToHtml(tr.doc);
110
110
  localChange = true;
111
111
  try {
112
- coRichText.applyDiff(str);
112
+ coRichText.$jazz.applyDiff(str);
113
113
  } finally {
114
114
  localChange = false;
115
115
  }
@@ -64,7 +64,7 @@ describe("createJazzPlugin", () => {
64
64
  const { coRichText, view } = await setupTest();
65
65
 
66
66
  // Update CoRichText content
67
- coRichText.applyDiff("<p>Updated content</p>");
67
+ coRichText.$jazz.applyDiff("<p>Updated content</p>");
68
68
 
69
69
  // Wait for the next tick to allow the update to propagate
70
70
  await new Promise((resolve) => setTimeout(resolve, 0));
@@ -135,7 +135,7 @@ describe("createJazzPlugin", () => {
135
135
  expect(view.state.selection.to).toBe(5);
136
136
 
137
137
  // Update CoRichText content
138
- coRichText.applyDiff("<p>Hello world</p>");
138
+ coRichText.$jazz.applyDiff("<p>Hello world</p>");
139
139
 
140
140
  await new Promise((resolve) => setTimeout(resolve, 0));
141
141
 
@@ -153,7 +153,7 @@ describe("createJazzPlugin", () => {
153
153
  await new Promise((resolve) => setTimeout(resolve, 0));
154
154
 
155
155
  // Update CoRichText content
156
- coRichText.applyDiff(
156
+ coRichText.$jazz.applyDiff(
157
157
  "<ol><li><p>A <strong>hu</strong><em><strong>man</strong></em>.</p></li></ol>",
158
158
  );
159
159
 
@@ -171,7 +171,7 @@ describe("createJazzPlugin", () => {
171
171
  );
172
172
 
173
173
  // Update CoRichText content
174
- coRichText.applyDiff("<p>A human💪</p>");
174
+ coRichText.$jazz.applyDiff("<p>A human💪</p>");
175
175
 
176
176
  // Wait for the next tick to allow the update to propagate
177
177
  await new Promise((resolve) => setTimeout(resolve, 0));
@@ -149,7 +149,7 @@ export const Image = forwardRef<HTMLImageElement, ImageProps>(function Image(
149
149
  );
150
150
 
151
151
  if (!bestImage) return image.placeholderDataURL;
152
- if (lastBestImage.current?.[0] === bestImage.image.id)
152
+ if (lastBestImage.current?.[0] === bestImage.image.$jazz.id)
153
153
  return lastBestImage.current?.[1];
154
154
 
155
155
  const blob = bestImage.image.toBlob();
@@ -157,7 +157,7 @@ export const Image = forwardRef<HTMLImageElement, ImageProps>(function Image(
157
157
  if (blob) {
158
158
  const url = URL.createObjectURL(blob);
159
159
  revokeObjectURL(lastBestImage.current?.[1]);
160
- lastBestImage.current = [bestImage.image.id, url];
160
+ lastBestImage.current = [bestImage.image.$jazz.id, url];
161
161
  return url;
162
162
  }
163
163