jazz-tools 0.18.37 → 0.19.0

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 (309) hide show
  1. package/.svelte-kit/__package__/jazz.class.svelte.d.ts +8 -8
  2. package/.svelte-kit/__package__/jazz.class.svelte.d.ts.map +1 -1
  3. package/.svelte-kit/__package__/jazz.class.svelte.js +39 -14
  4. package/.svelte-kit/__package__/media/image.svelte +6 -5
  5. package/.svelte-kit/__package__/media/image.svelte.d.ts.map +1 -1
  6. package/.svelte-kit/__package__/tests/AccountCoState.svelte.test-d.d.ts +2 -0
  7. package/.svelte-kit/__package__/tests/AccountCoState.svelte.test-d.d.ts.map +1 -0
  8. package/.svelte-kit/__package__/tests/AccountCoState.svelte.test-d.js +19 -0
  9. package/.svelte-kit/__package__/tests/CoState.svelte.test-d.d.ts +2 -0
  10. package/.svelte-kit/__package__/tests/CoState.svelte.test-d.d.ts.map +1 -0
  11. package/.svelte-kit/__package__/tests/CoState.svelte.test-d.js +16 -0
  12. package/.svelte-kit/__package__/tests/CoState.svelte.test.d.ts +2 -0
  13. package/.svelte-kit/__package__/tests/CoState.svelte.test.d.ts.map +1 -0
  14. package/.svelte-kit/__package__/tests/CoState.svelte.test.js +42 -0
  15. package/.svelte-kit/__package__/tests/TestCoStateWrapper.svelte +23 -0
  16. package/.svelte-kit/__package__/tests/TestCoStateWrapper.svelte.d.ts +12 -0
  17. package/.svelte-kit/__package__/tests/TestCoStateWrapper.svelte.d.ts.map +1 -0
  18. package/.turbo/turbo-build.log +53 -53
  19. package/CHANGELOG.md +33 -0
  20. package/dist/better-auth/database-adapter/index.js +14 -11
  21. package/dist/better-auth/database-adapter/index.js.map +1 -1
  22. package/dist/better-auth/database-adapter/repository/generic.d.ts +1 -1
  23. package/dist/better-auth/database-adapter/repository/generic.d.ts.map +1 -1
  24. package/dist/better-auth/database-adapter/repository/user.d.ts.map +1 -1
  25. package/dist/{chunk-OSQ7S47Q.js → chunk-P3YLNFN4.js} +504 -232
  26. package/dist/chunk-P3YLNFN4.js.map +1 -0
  27. package/dist/index.js +14 -6
  28. package/dist/index.js.map +1 -1
  29. package/dist/inspector/{custom-element-SUVJ7CPN.js → custom-element-QESCMFY7.js} +13 -3
  30. package/dist/inspector/{custom-element-SUVJ7CPN.js.map → custom-element-QESCMFY7.js.map} +1 -1
  31. package/dist/inspector/index.js +12 -2
  32. package/dist/inspector/index.js.map +1 -1
  33. package/dist/inspector/register-custom-element.js +1 -1
  34. package/dist/inspector/viewer/history-view.d.ts.map +1 -1
  35. package/dist/media/{chunk-K6GCHLQU.js → chunk-3LKBM3G3.js} +23 -15
  36. package/dist/media/chunk-3LKBM3G3.js.map +1 -0
  37. package/dist/media/create-image/browser.d.ts +2 -2
  38. package/dist/media/create-image/react-native.d.ts +2 -2
  39. package/dist/media/create-image/server.d.ts +2 -2
  40. package/dist/media/create-image-factory.d.ts +2 -2
  41. package/dist/media/index.browser.js +1 -1
  42. package/dist/media/index.js +1 -1
  43. package/dist/media/index.native.js +1 -1
  44. package/dist/media/index.server.js +1 -1
  45. package/dist/media/utils.d.ts.map +1 -1
  46. package/dist/react/hooks.d.ts +1 -1
  47. package/dist/react/hooks.d.ts.map +1 -1
  48. package/dist/react/index.d.ts +1 -1
  49. package/dist/react/index.d.ts.map +1 -1
  50. package/dist/react/index.js +31 -15
  51. package/dist/react/index.js.map +1 -1
  52. package/dist/react/media/image.d.ts.map +1 -1
  53. package/dist/react-core/hooks.d.ts +126 -224
  54. package/dist/react-core/hooks.d.ts.map +1 -1
  55. package/dist/react-core/index.js +65 -63
  56. package/dist/react-core/index.js.map +1 -1
  57. package/dist/react-core/subscription-provider.d.ts.map +1 -1
  58. package/dist/react-core/tests/createCoValueSubscriptionContext.test.d.ts +2 -0
  59. package/dist/react-core/tests/createCoValueSubscriptionContext.test.d.ts.map +1 -0
  60. package/dist/react-core/tests/useAccount.selector.test.d.ts +2 -0
  61. package/dist/react-core/tests/useAccount.selector.test.d.ts.map +1 -0
  62. package/dist/react-core/tests/useCoState.selector.test.d.ts +2 -0
  63. package/dist/react-core/tests/useCoState.selector.test.d.ts.map +1 -0
  64. package/dist/react-native-core/hooks.d.ts +1 -1
  65. package/dist/react-native-core/hooks.d.ts.map +1 -1
  66. package/dist/react-native-core/index.js +7 -5
  67. package/dist/react-native-core/index.js.map +1 -1
  68. package/dist/react-native-core/media/image.d.ts.map +1 -1
  69. package/dist/svelte/jazz.class.svelte.d.ts +8 -8
  70. package/dist/svelte/jazz.class.svelte.d.ts.map +1 -1
  71. package/dist/svelte/jazz.class.svelte.js +39 -14
  72. package/dist/svelte/media/image.svelte +6 -5
  73. package/dist/svelte/media/image.svelte.d.ts.map +1 -1
  74. package/dist/svelte/tests/AccountCoState.svelte.test-d.d.ts +2 -0
  75. package/dist/svelte/tests/AccountCoState.svelte.test-d.d.ts.map +1 -0
  76. package/dist/svelte/tests/AccountCoState.svelte.test-d.js +19 -0
  77. package/dist/svelte/tests/CoState.svelte.test-d.d.ts +2 -0
  78. package/dist/svelte/tests/CoState.svelte.test-d.d.ts.map +1 -0
  79. package/dist/svelte/tests/CoState.svelte.test-d.js +16 -0
  80. package/dist/svelte/tests/CoState.svelte.test.d.ts +2 -0
  81. package/dist/svelte/tests/CoState.svelte.test.d.ts.map +1 -0
  82. package/dist/svelte/tests/CoState.svelte.test.js +42 -0
  83. package/dist/svelte/tests/TestCoStateWrapper.svelte +23 -0
  84. package/dist/svelte/tests/TestCoStateWrapper.svelte.d.ts +12 -0
  85. package/dist/svelte/tests/TestCoStateWrapper.svelte.d.ts.map +1 -0
  86. package/dist/testing.js +3 -1
  87. package/dist/testing.js.map +1 -1
  88. package/dist/tools/coValues/CoValueBase.d.ts +4 -1
  89. package/dist/tools/coValues/CoValueBase.d.ts.map +1 -1
  90. package/dist/tools/coValues/account.d.ts +6 -6
  91. package/dist/tools/coValues/account.d.ts.map +1 -1
  92. package/dist/tools/coValues/coFeed.d.ts +5 -5
  93. package/dist/tools/coValues/coFeed.d.ts.map +1 -1
  94. package/dist/tools/coValues/coList.d.ts +9 -8
  95. package/dist/tools/coValues/coList.d.ts.map +1 -1
  96. package/dist/tools/coValues/coMap.d.ts +17 -17
  97. package/dist/tools/coValues/coMap.d.ts.map +1 -1
  98. package/dist/tools/coValues/coPlainText.d.ts +3 -3
  99. package/dist/tools/coValues/coPlainText.d.ts.map +1 -1
  100. package/dist/tools/coValues/coVector.d.ts +3 -3
  101. package/dist/tools/coValues/coVector.d.ts.map +1 -1
  102. package/dist/tools/coValues/deepLoading.d.ts +66 -36
  103. package/dist/tools/coValues/deepLoading.d.ts.map +1 -1
  104. package/dist/tools/coValues/extensions/imageDef.d.ts +1 -1
  105. package/dist/tools/coValues/extensions/imageDef.d.ts.map +1 -1
  106. package/dist/tools/coValues/group.d.ts +2 -2
  107. package/dist/tools/coValues/group.d.ts.map +1 -1
  108. package/dist/tools/coValues/inbox.d.ts.map +1 -1
  109. package/dist/tools/coValues/interfaces.d.ts +14 -6
  110. package/dist/tools/coValues/interfaces.d.ts.map +1 -1
  111. package/dist/tools/coValues/request.d.ts.map +1 -1
  112. package/dist/tools/coValues/schemaUnion.d.ts +2 -2
  113. package/dist/tools/coValues/schemaUnion.d.ts.map +1 -1
  114. package/dist/tools/exports.d.ts +3 -3
  115. package/dist/tools/exports.d.ts.map +1 -1
  116. package/dist/tools/implementation/refs.d.ts +3 -3
  117. package/dist/tools/implementation/refs.d.ts.map +1 -1
  118. package/dist/tools/implementation/schema.d.ts +2 -2
  119. package/dist/tools/implementation/schema.d.ts.map +1 -1
  120. package/dist/tools/implementation/schemaUtils.d.ts +8 -0
  121. package/dist/tools/implementation/schemaUtils.d.ts.map +1 -1
  122. package/dist/tools/implementation/zodSchema/runtimeConverters/coValueSchemaTransformation.d.ts.map +1 -1
  123. package/dist/tools/implementation/zodSchema/schemaTypes/AccountSchema.d.ts +33 -18
  124. package/dist/tools/implementation/zodSchema/schemaTypes/AccountSchema.d.ts.map +1 -1
  125. package/dist/tools/implementation/zodSchema/schemaTypes/CoDiscriminatedUnionSchema.d.ts +5 -4
  126. package/dist/tools/implementation/zodSchema/schemaTypes/CoDiscriminatedUnionSchema.d.ts.map +1 -1
  127. package/dist/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.d.ts +23 -12
  128. package/dist/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.d.ts.map +1 -1
  129. package/dist/tools/implementation/zodSchema/schemaTypes/CoListSchema.d.ts +29 -18
  130. package/dist/tools/implementation/zodSchema/schemaTypes/CoListSchema.d.ts.map +1 -1
  131. package/dist/tools/implementation/zodSchema/schemaTypes/CoMapSchema.d.ts +39 -22
  132. package/dist/tools/implementation/zodSchema/schemaTypes/CoMapSchema.d.ts.map +1 -1
  133. package/dist/tools/implementation/zodSchema/schemaTypes/CoOptionalSchema.d.ts +1 -0
  134. package/dist/tools/implementation/zodSchema/schemaTypes/CoOptionalSchema.d.ts.map +1 -1
  135. package/dist/tools/implementation/zodSchema/schemaTypes/CoRecordSchema.d.ts +30 -19
  136. package/dist/tools/implementation/zodSchema/schemaTypes/CoRecordSchema.d.ts.map +1 -1
  137. package/dist/tools/implementation/zodSchema/schemaTypes/CoValueSchema.d.ts +5 -0
  138. package/dist/tools/implementation/zodSchema/schemaTypes/CoValueSchema.d.ts.map +1 -1
  139. package/dist/tools/implementation/zodSchema/schemaTypes/CoVectorSchema.d.ts +6 -5
  140. package/dist/tools/implementation/zodSchema/schemaTypes/CoVectorSchema.d.ts.map +1 -1
  141. package/dist/tools/implementation/zodSchema/schemaTypes/FileStreamSchema.d.ts +3 -2
  142. package/dist/tools/implementation/zodSchema/schemaTypes/FileStreamSchema.d.ts.map +1 -1
  143. package/dist/tools/implementation/zodSchema/schemaTypes/GroupSchema.d.ts +3 -2
  144. package/dist/tools/implementation/zodSchema/schemaTypes/GroupSchema.d.ts.map +1 -1
  145. package/dist/tools/implementation/zodSchema/schemaTypes/PlainTextSchema.d.ts +3 -2
  146. package/dist/tools/implementation/zodSchema/schemaTypes/PlainTextSchema.d.ts.map +1 -1
  147. package/dist/tools/implementation/zodSchema/schemaTypes/RichTextSchema.d.ts +3 -2
  148. package/dist/tools/implementation/zodSchema/schemaTypes/RichTextSchema.d.ts.map +1 -1
  149. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchema.d.ts +3 -0
  150. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchema.d.ts.map +1 -1
  151. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchemaCoValuesMaybeLoaded.d.ts +22 -0
  152. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchemaCoValuesMaybeLoaded.d.ts.map +1 -0
  153. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOrPrimitiveOfSchema.d.ts +4 -0
  154. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOrPrimitiveOfSchema.d.ts.map +1 -1
  155. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOrPrimitiveOfSchemaCoValuesMaybeLoaded.d.ts +9 -0
  156. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOrPrimitiveOfSchemaCoValuesMaybeLoaded.d.ts.map +1 -0
  157. package/dist/tools/implementation/zodSchema/zodCo.d.ts.map +1 -1
  158. package/dist/tools/implementation/zodSchema/zodSchema.d.ts +7 -6
  159. package/dist/tools/implementation/zodSchema/zodSchema.d.ts.map +1 -1
  160. package/dist/tools/internal.d.ts +3 -3
  161. package/dist/tools/internal.d.ts.map +1 -1
  162. package/dist/tools/lib/utils.d.ts +14 -0
  163. package/dist/tools/lib/utils.d.ts.map +1 -0
  164. package/dist/tools/lib/utils.test.d.ts +2 -0
  165. package/dist/tools/lib/utils.test.d.ts.map +1 -0
  166. package/dist/tools/subscribe/CoValueCoreSubscription.d.ts +3 -2
  167. package/dist/tools/subscribe/CoValueCoreSubscription.d.ts.map +1 -1
  168. package/dist/tools/subscribe/JazzError.d.ts +4 -3
  169. package/dist/tools/subscribe/JazzError.d.ts.map +1 -1
  170. package/dist/tools/subscribe/SubscriptionScope.d.ts +6 -5
  171. package/dist/tools/subscribe/SubscriptionScope.d.ts.map +1 -1
  172. package/dist/tools/subscribe/index.d.ts.map +1 -1
  173. package/dist/tools/subscribe/types.d.ts +23 -3
  174. package/dist/tools/subscribe/types.d.ts.map +1 -1
  175. package/dist/tools/subscribe/utils.d.ts.map +1 -1
  176. package/dist/tools/testing.d.ts +3 -2
  177. package/dist/tools/testing.d.ts.map +1 -1
  178. package/dist/tools/tests/schema.resolved.test.d.ts +2 -0
  179. package/dist/tools/tests/schema.resolved.test.d.ts.map +1 -0
  180. package/dist/tools/tests/utils.d.ts +2 -1
  181. package/dist/tools/tests/utils.d.ts.map +1 -1
  182. package/package.json +4 -4
  183. package/src/better-auth/database-adapter/index.ts +2 -2
  184. package/src/better-auth/database-adapter/repository/account.ts +3 -3
  185. package/src/better-auth/database-adapter/repository/generic.ts +9 -6
  186. package/src/better-auth/database-adapter/repository/user.ts +6 -2
  187. package/src/better-auth/database-adapter/schema.ts +1 -1
  188. package/src/better-auth/database-adapter/tests/index.test.ts +3 -4
  189. package/src/inspector/tests/viewer/history-view.test.tsx +74 -10
  190. package/src/inspector/viewer/history-view.tsx +14 -5
  191. package/src/media/utils.test.ts +5 -0
  192. package/src/media/utils.ts +25 -16
  193. package/src/react/hooks.tsx +2 -2
  194. package/src/react/index.ts +2 -2
  195. package/src/react/media/image.tsx +10 -2
  196. package/src/react/tests/useAcceptInvite.test.ts +3 -1
  197. package/src/react-core/hooks.ts +226 -304
  198. package/src/react-core/subscription-provider.tsx +14 -7
  199. package/src/react-core/tests/createCoValueSubscriptionContext.test.tsx +233 -0
  200. package/src/react-core/tests/subscription.bench.tsx +32 -15
  201. package/src/react-core/tests/{useAccountWithSelector.test.ts → useAccount.selector.test.ts} +72 -24
  202. package/src/react-core/tests/useAccount.test.ts +92 -106
  203. package/src/react-core/tests/{useCoStateWithSelector.test.ts → useCoState.selector.test.ts} +23 -8
  204. package/src/react-core/tests/useCoState.test.ts +173 -49
  205. package/src/react-core/tests/useInboxSender.test.ts +3 -1
  206. package/src/react-core/tests/usePassPhraseAuth.test.ts +11 -82
  207. package/src/react-core/tests/useSubscriptionSelector.test.ts +48 -14
  208. package/src/react-native-core/hooks.tsx +2 -2
  209. package/src/react-native-core/media/image.tsx +3 -1
  210. package/src/svelte/jazz.class.svelte.ts +103 -27
  211. package/src/svelte/media/image.svelte +6 -5
  212. package/src/svelte/tests/AccountCoState.svelte.test-d.ts +23 -0
  213. package/src/svelte/tests/CoState.svelte.test-d.ts +20 -0
  214. package/src/svelte/tests/CoState.svelte.test.ts +57 -0
  215. package/src/svelte/tests/TestCoStateWrapper.svelte +23 -0
  216. package/src/tools/coValues/CoValueBase.ts +12 -0
  217. package/src/tools/coValues/account.ts +17 -12
  218. package/src/tools/coValues/coFeed.ts +38 -15
  219. package/src/tools/coValues/coList.ts +16 -11
  220. package/src/tools/coValues/coMap.ts +15 -14
  221. package/src/tools/coValues/coPlainText.ts +6 -3
  222. package/src/tools/coValues/coVector.ts +6 -5
  223. package/src/tools/coValues/deepLoading.ts +98 -51
  224. package/src/tools/coValues/group.ts +3 -2
  225. package/src/tools/coValues/inbox.ts +11 -10
  226. package/src/tools/coValues/interfaces.ts +49 -27
  227. package/src/tools/coValues/request.ts +8 -6
  228. package/src/tools/coValues/schemaUnion.ts +2 -1
  229. package/src/tools/exports.ts +11 -1
  230. package/src/tools/implementation/refs.ts +19 -13
  231. package/src/tools/implementation/schema.ts +5 -4
  232. package/src/tools/implementation/schemaUtils.ts +15 -0
  233. package/src/tools/implementation/zodSchema/runtimeConverters/coValueSchemaTransformation.ts +4 -4
  234. package/src/tools/implementation/zodSchema/schemaTypes/AccountSchema.ts +131 -95
  235. package/src/tools/implementation/zodSchema/schemaTypes/CoDiscriminatedUnionSchema.ts +19 -9
  236. package/src/tools/implementation/zodSchema/schemaTypes/CoFeedSchema.ts +73 -22
  237. package/src/tools/implementation/zodSchema/schemaTypes/CoListSchema.ts +86 -28
  238. package/src/tools/implementation/zodSchema/schemaTypes/CoMapSchema.ts +204 -148
  239. package/src/tools/implementation/zodSchema/schemaTypes/CoOptionalSchema.ts +1 -0
  240. package/src/tools/implementation/zodSchema/schemaTypes/CoRecordSchema.ts +71 -27
  241. package/src/tools/implementation/zodSchema/schemaTypes/CoValueSchema.ts +7 -0
  242. package/src/tools/implementation/zodSchema/schemaTypes/CoVectorSchema.ts +8 -6
  243. package/src/tools/implementation/zodSchema/schemaTypes/FileStreamSchema.ts +4 -1
  244. package/src/tools/implementation/zodSchema/schemaTypes/GroupSchema.ts +4 -1
  245. package/src/tools/implementation/zodSchema/schemaTypes/PlainTextSchema.ts +4 -1
  246. package/src/tools/implementation/zodSchema/schemaTypes/RichTextSchema.ts +4 -1
  247. package/src/tools/implementation/zodSchema/typeConverters/InstanceOfSchema.ts +3 -0
  248. package/src/tools/implementation/zodSchema/typeConverters/{InstanceOfSchemaCoValuesNullable.ts → InstanceOfSchemaCoValuesMaybeLoaded.ts} +47 -39
  249. package/src/tools/implementation/zodSchema/typeConverters/InstanceOrPrimitiveOfSchema.ts +4 -0
  250. package/src/tools/implementation/zodSchema/typeConverters/{InstanceOrPrimitiveOfSchemaCoValuesNullable.ts → InstanceOrPrimitiveOfSchemaCoValuesMaybeLoaded.ts} +7 -3
  251. package/src/tools/implementation/zodSchema/zodSchema.ts +15 -7
  252. package/src/tools/internal.ts +3 -3
  253. package/src/tools/lib/utils.test.ts +56 -0
  254. package/src/tools/lib/utils.ts +32 -0
  255. package/src/tools/subscribe/CoValueCoreSubscription.ts +13 -8
  256. package/src/tools/subscribe/JazzError.ts +8 -2
  257. package/src/tools/subscribe/SubscriptionScope.ts +55 -44
  258. package/src/tools/subscribe/index.ts +12 -4
  259. package/src/tools/subscribe/types.ts +36 -2
  260. package/src/tools/subscribe/utils.ts +2 -1
  261. package/src/tools/testing.ts +5 -0
  262. package/src/tools/tests/CoValueCoreSubscription.test.ts +10 -4
  263. package/src/tools/tests/ContextManager.test.ts +12 -5
  264. package/src/tools/tests/account.test.ts +22 -12
  265. package/src/tools/tests/coDiscriminatedUnion.test.ts +8 -4
  266. package/src/tools/tests/coFeed.branch.test.ts +48 -32
  267. package/src/tools/tests/coFeed.test-d.ts +17 -10
  268. package/src/tools/tests/coFeed.test.ts +52 -30
  269. package/src/tools/tests/coList.branch.test.ts +21 -21
  270. package/src/tools/tests/coList.test-d.ts +39 -23
  271. package/src/tools/tests/coList.test.ts +51 -25
  272. package/src/tools/tests/coList.unique.test.ts +34 -29
  273. package/src/tools/tests/coMap.branch.test.ts +20 -21
  274. package/src/tools/tests/coMap.record.test-d.ts +28 -26
  275. package/src/tools/tests/coMap.record.test.ts +30 -20
  276. package/src/tools/tests/coMap.test-d.ts +31 -29
  277. package/src/tools/tests/coMap.test.ts +67 -40
  278. package/src/tools/tests/coMap.unique.test.ts +25 -24
  279. package/src/tools/tests/coVector.test.ts +29 -15
  280. package/src/tools/tests/createContext.test.ts +5 -3
  281. package/src/tools/tests/deepLoading.test.ts +314 -117
  282. package/src/tools/tests/exportImport.test.ts +16 -15
  283. package/src/tools/tests/groupsAndAccounts.test.ts +39 -16
  284. package/src/tools/tests/inbox.test.ts +3 -1
  285. package/src/tools/tests/load.test.ts +29 -23
  286. package/src/tools/tests/patterns/quest.test.ts +3 -2
  287. package/src/tools/tests/patterns/requestToJoin.test.ts +17 -17
  288. package/src/tools/tests/request.test.ts +12 -2
  289. package/src/tools/tests/schema.resolved.test.ts +723 -0
  290. package/src/tools/tests/schemaUnion.test.ts +7 -3
  291. package/src/tools/tests/subscribe.test.ts +39 -21
  292. package/src/tools/tests/testing.test.ts +3 -2
  293. package/src/tools/tests/utils.ts +15 -2
  294. package/dist/chunk-OSQ7S47Q.js.map +0 -1
  295. package/dist/media/chunk-K6GCHLQU.js.map +0 -1
  296. package/dist/react-core/tests/useAccountWithSelector.test.d.ts +0 -2
  297. package/dist/react-core/tests/useAccountWithSelector.test.d.ts.map +0 -1
  298. package/dist/react-core/tests/useCoStateWithSelector.test.d.ts +0 -2
  299. package/dist/react-core/tests/useCoStateWithSelector.test.d.ts.map +0 -1
  300. package/dist/tools/implementation/errors.d.ts +0 -2
  301. package/dist/tools/implementation/errors.d.ts.map +0 -1
  302. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchemaCoValuesNullable.d.ts +0 -19
  303. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchemaCoValuesNullable.d.ts.map +0 -1
  304. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOrPrimitiveOfSchemaCoValuesNullable.d.ts +0 -5
  305. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOrPrimitiveOfSchemaCoValuesNullable.d.ts.map +0 -1
  306. package/dist/tools/lib/id.d.ts +0 -2
  307. package/dist/tools/lib/id.d.ts.map +0 -1
  308. package/src/tools/implementation/errors.ts +0 -1
  309. package/src/tools/lib/id.ts +0 -3
@@ -1,4 +1,4 @@
1
- import type { Account, AccountClass, AnyAccountSchema, BranchDefinition, CoValueClassOrSchema, CoValueFromRaw, InstanceOfSchema, Loaded, ResolveQuery, ResolveQueryStrict } from "jazz-tools";
1
+ import type { Account, AccountClass, AnyAccountSchema, BranchDefinition, CoValueClassOrSchema, CoValueFromRaw, SchemaResolveQuery, InstanceOfSchema, Loaded, MaybeLoaded, ResolveQuery, ResolveQueryStrict } from "jazz-tools";
2
2
  type CoStateOptions<V extends CoValueClassOrSchema, R extends ResolveQuery<V>> = {
3
3
  resolve?: ResolveQueryStrict<V, R>;
4
4
  /**
@@ -15,22 +15,22 @@ type CoStateOptions<V extends CoValueClassOrSchema, R extends ResolveQuery<V>> =
15
15
  * the branch. If not provided, the branch is owned by the current user.
16
16
  *
17
17
  * For more info see the [branching](https://jazz.tools/docs/svelte/using-covalues/version-control) documentation.
18
- */
18
+ */
19
19
  unstable_branch?: BranchDefinition;
20
20
  };
21
21
  type CoStateId = string | undefined | null;
22
- export declare class CoState<V extends CoValueClassOrSchema, R extends ResolveQuery<V> = true> {
22
+ export declare class CoState<V extends CoValueClassOrSchema, R extends ResolveQuery<V> = SchemaResolveQuery<V>> {
23
23
  #private;
24
24
  constructor(Schema: V, id: CoStateId | (() => CoStateId), options?: CoStateOptions<V, R> | (() => CoStateOptions<V, R>));
25
- update(value: Loaded<V, R> | undefined | null): void;
26
- get current(): Loaded<V, R> | null | undefined;
25
+ update(value: MaybeLoaded<Loaded<V, R>>): void;
26
+ get current(): MaybeLoaded<Loaded<V, R>>;
27
27
  }
28
- export declare class AccountCoState<A extends (AccountClass<Account> & CoValueFromRaw<Account>) | AnyAccountSchema, R extends ResolveQuery<A> = true> {
28
+ export declare class AccountCoState<A extends (AccountClass<Account> & CoValueFromRaw<Account>) | AnyAccountSchema, R extends ResolveQuery<A> = SchemaResolveQuery<A>> {
29
29
  #private;
30
30
  constructor(Schema: A, options?: CoStateOptions<A, R> | (() => CoStateOptions<A, R>));
31
- update(value: Loaded<A, R> | undefined | null): void;
31
+ update(value: MaybeLoaded<Loaded<A, R>>): void;
32
32
  logOut: () => void;
33
- get current(): Loaded<A, R> | null | undefined;
33
+ get current(): MaybeLoaded<Loaded<A, R>>;
34
34
  get agent(): import("jazz-tools").AnonymousJazzAgent | InstanceOfSchema<A>;
35
35
  get isAuthenticated(): boolean;
36
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"jazz.class.svelte.d.ts","sourceRoot":"","sources":["../../../src/svelte/jazz.class.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,gBAAgB,EAChB,MAAM,EACN,YAAY,EACZ,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAUpB,KAAK,cAAc,CAAC,CAAC,SAAS,oBAAoB,EAAE,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,IAAI;IAC/E,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC;;;;;;;;;;;;;;MAcE;IACF,eAAe,CAAC,EAAE,gBAAgB,CAAA;CACnC,CAAC;AAEF,KAAK,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;AAE3C,qBAAa,OAAO,CAClB,CAAC,SAAS,oBAAoB,EAC9B,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI;;gBAU9B,MAAM,EAAE,CAAC,EACT,EAAE,EAAE,SAAS,GAAG,CAAC,MAAM,SAAS,CAAC,EACjC,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAgD/D,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI;IAM7C,IAAI,OAAO,oCAGV;CACF;AAED,qBAAa,cAAc,CACzB,CAAC,SACC,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,GACjD,gBAAgB,EAClB,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI;;gBAQpB,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IA8CpF,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI;IAM7C,MAAM,aAEJ;IAEF,IAAI,OAAO,oCAIV;IAED,IAAI,KAAK,kEAQR;IAID,IAAI,eAAe,YAElB;CACF;AAED;;;;;;;;GAQG;AACH,qBAAa,oBAAoB;;;IA6B/B,IAAI,OAAO,YAGV;CACF"}
1
+ {"version":3,"file":"jazz.class.svelte.d.ts","sourceRoot":"","sources":["../../../src/svelte/jazz.class.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAEhB,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,MAAM,EACN,WAAW,EAEX,YAAY,EACZ,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAYpB,KAAK,cAAc,CACjB,CAAC,SAAS,oBAAoB,EAC9B,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,IACvB;IACF,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,EAAE,gBAAgB,CAAC;CACpC,CAAC;AAEF,KAAK,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;AAE3C,qBAAa,OAAO,CAClB,CAAC,SAAS,oBAAoB,EAE9B,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC;;gBAc/C,MAAM,EAAE,CAAC,EACT,EAAE,EAAE,SAAS,GAAG,CAAC,MAAM,SAAS,CAAC,EACjC,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAyD/D,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IASvC,IAAI,OAAO,8BAGV;CACF;AAED,qBAAa,cAAc,CACzB,CAAC,SACG,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,GACjD,gBAAgB,EAEpB,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC;;gBAY/C,MAAM,EAAE,CAAC,EACT,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IA6D/D,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAMvC,MAAM,aAEJ;IAEF,IAAI,OAAO,8BAIV;IAED,IAAI,KAAK,kEAQR;IAID,IAAI,eAAe,YAElB;CACF;AAgBD;;;;;;;;GAQG;AACH,qBAAa,oBAAoB;;;IA6B/B,IAAI,OAAO,YAGV;CACF"}
@@ -1,10 +1,11 @@
1
- import { coValueClassFromCoValueClassOrSchema, subscribeToCoValue, } from "jazz-tools";
1
+ import { coValueClassFromCoValueClassOrSchema, subscribeToCoValue, createUnloadedCoValue, CoValueLoadingState, } from "jazz-tools";
2
2
  import { untrack } from "svelte";
3
3
  import { createSubscriber } from "svelte/reactivity";
4
4
  import { useIsAuthenticated } from "./auth/useIsAuthenticated.svelte.js";
5
5
  import { getJazzContext } from "./jazz.svelte";
6
6
  export class CoState {
7
- #value = undefined;
7
+ #value = createUnloadedCoValue("", CoValueLoadingState.LOADING);
8
+ #previousValue = undefined;
8
9
  #ctx = getJazzContext();
9
10
  #id;
10
11
  #subscribe;
@@ -22,18 +23,19 @@ export class CoState {
22
23
  const options = this.#options;
23
24
  return untrack(() => {
24
25
  if (!ctx || !id) {
25
- return this.update(undefined);
26
+ return this.update(createUnloadedCoValue(id ?? "", CoValueLoadingState.UNAVAILABLE));
26
27
  }
27
28
  const agent = "me" in ctx ? ctx.me : ctx.guest;
29
+ const resolve = getResolveQuery(Schema, options?.resolve);
28
30
  const unsubscribe = subscribeToCoValue(coValueClassFromCoValueClassOrSchema(Schema), id, {
29
31
  // @ts-expect-error The resolve query type isn't compatible with the coValueClassFromCoValueClassOrSchema conversion
30
- resolve: options?.resolve,
32
+ resolve,
31
33
  loadAs: agent,
32
34
  onUnavailable: () => {
33
- this.update(null);
35
+ this.update(createUnloadedCoValue(id, CoValueLoadingState.UNAVAILABLE));
34
36
  },
35
37
  onUnauthorized: () => {
36
- this.update(null);
38
+ this.update(createUnloadedCoValue(id, CoValueLoadingState.UNAUTHORIZED));
37
39
  },
38
40
  syncResolution: true,
39
41
  unstable_branch: options?.unstable_branch,
@@ -47,8 +49,10 @@ export class CoState {
47
49
  });
48
50
  }
49
51
  update(value) {
50
- if (this.#value === value)
52
+ if (shouldSkipUpdate(value, this.#value)) {
51
53
  return;
54
+ }
55
+ this.#previousValue = value;
52
56
  this.#value = value;
53
57
  this.#update();
54
58
  }
@@ -58,7 +62,7 @@ export class CoState {
58
62
  }
59
63
  }
60
64
  export class AccountCoState {
61
- #value = undefined;
65
+ #value = createUnloadedCoValue("", CoValueLoadingState.LOADING);
62
66
  #ctx = getJazzContext();
63
67
  #subscribe;
64
68
  #options;
@@ -73,18 +77,18 @@ export class AccountCoState {
73
77
  const options = this.#options;
74
78
  return untrack(() => {
75
79
  if (!ctx || !("me" in ctx)) {
76
- return this.update(undefined);
80
+ return this.update(createUnloadedCoValue("", CoValueLoadingState.UNAVAILABLE));
77
81
  }
78
82
  const me = ctx.me;
83
+ const resolve = getResolveQuery(Schema, options?.resolve);
79
84
  const unsubscribe = subscribeToCoValue(coValueClassFromCoValueClassOrSchema(Schema), me.$jazz.id, {
80
- // @ts-expect-error The resolve query type isn't compatible with the coValueClassFromCoValueClassOrSchema conversion
81
- resolve: options?.resolve,
85
+ resolve,
82
86
  loadAs: me,
83
87
  onUnavailable: () => {
84
- this.update(null);
88
+ this.update(createUnloadedCoValue(me.$jazz.id, CoValueLoadingState.UNAVAILABLE));
85
89
  },
86
90
  onUnauthorized: () => {
87
- this.update(null);
91
+ this.update(createUnloadedCoValue(me.$jazz.id, CoValueLoadingState.UNAUTHORIZED));
88
92
  },
89
93
  syncResolution: true,
90
94
  unstable_branch: options?.unstable_branch,
@@ -98,7 +102,7 @@ export class AccountCoState {
98
102
  });
99
103
  }
100
104
  update(value) {
101
- if (this.#value === value)
105
+ if (shouldSkipUpdate(value, this.#value))
102
106
  return;
103
107
  this.#value = value;
104
108
  this.#update();
@@ -123,6 +127,15 @@ export class AccountCoState {
123
127
  return this.#isAuthenticated.current;
124
128
  }
125
129
  }
130
+ function shouldSkipUpdate(newValue, previousValue) {
131
+ if (previousValue === newValue)
132
+ return true;
133
+ // Avoid re-renders if the value is not loaded and didn't change
134
+ return (previousValue.$jazz.id === newValue.$jazz.id &&
135
+ !previousValue.$isLoaded &&
136
+ !newValue.$isLoaded &&
137
+ previousValue.$jazz.loadingState === newValue.$jazz.loadingState);
138
+ }
126
139
  /**
127
140
  * Class that provides the current connection status to the Jazz sync server.
128
141
  *
@@ -160,3 +173,15 @@ export class SyncConnectionStatus {
160
173
  return this.#ctx.current?.connected() ?? false;
161
174
  }
162
175
  }
176
+ function getResolveQuery(Schema,
177
+ // We don't need type validation here, since this is an internal API
178
+ resolveQuery) {
179
+ if (resolveQuery) {
180
+ return resolveQuery;
181
+ }
182
+ // Check the schema is a CoValue schema (and not a CoValue class)
183
+ if ("resolveQuery" in Schema) {
184
+ return Schema.resolveQuery;
185
+ }
186
+ return true;
187
+ }
@@ -1,5 +1,5 @@
1
1
  <script lang="ts">
2
- import { ImageDefinition } from "jazz-tools";
2
+ import { CoValueLoadingState, ImageDefinition } from "jazz-tools";
3
3
  import { highestResAvailable } from "jazz-tools/media";
4
4
  import { onDestroy } from "svelte";
5
5
  import { CoState } from "../jazz.class.svelte";
@@ -25,8 +25,9 @@
25
25
  width: number | undefined;
26
26
  height: number | undefined;
27
27
  }>(() => {
28
- const originalWidth = imageState.current?.originalSize?.[0];
29
- const originalHeight = imageState.current?.originalSize?.[1];
28
+ const originalSize = imageState.current.$isLoaded ? imageState.current.originalSize : undefined;
29
+ const originalWidth = originalSize?.[0];
30
+ const originalHeight = originalSize?.[1];
30
31
 
31
32
  // Both width and height are "original"
32
33
  if (width === "original" && height === "original") {
@@ -68,13 +69,13 @@
68
69
  }
69
70
 
70
71
  const image = imageState.current;
71
- if (image === undefined)
72
+ if (image.$jazz.loadingState === CoValueLoadingState.LOADING)
72
73
  return (
73
74
  placeholder ??
74
75
  "data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="
75
76
  );
76
77
 
77
- if (!image) return undefined;
78
+ if (!image.$isLoaded) return undefined;
78
79
 
79
80
  const bestImage = highestResAvailable(
80
81
  image,
@@ -1 +1 @@
1
- {"version":3,"file":"image.svelte.d.ts","sourceRoot":"","sources":["../../../../src/svelte/media/image.svelte.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAoInD,QAAA,MAAM,KAAK,gDAAsC,CAAC;AAClD,KAAK,KAAK,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AACtC,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"image.svelte.d.ts","sourceRoot":"","sources":["../../../../src/svelte/media/image.svelte.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAqInD,QAAA,MAAM,KAAK,gDAAsC,CAAC;AAClD,KAAK,KAAK,GAAG,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC;AACtC,eAAe,KAAK,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=AccountCoState.svelte.test-d.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccountCoState.svelte.test-d.d.ts","sourceRoot":"","sources":["../../../../src/svelte/tests/AccountCoState.svelte.test-d.ts"],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ import { co } from "jazz-tools";
2
+ import { assertLoaded, createJazzTestAccount, setupJazzTestSync } from "jazz-tools/testing";
3
+ import { beforeEach, describe, expectTypeOf, test } from "vitest";
4
+ import { AccountCoState } from "../jazz.class.svelte";
5
+ describe("AccountCoState", () => {
6
+ beforeEach(async () => {
7
+ await setupJazzTestSync();
8
+ await createJazzTestAccount({
9
+ isCurrentActiveAccount: true,
10
+ creationProps: { name: "Hermes Puggington" },
11
+ });
12
+ });
13
+ test("should use the schema's resolve query if no resolve query is provided", async () => {
14
+ const AccountWithProfile = co.account().resolved({ profile: true });
15
+ const loadedAccount = new AccountCoState(AccountWithProfile);
16
+ assertLoaded(loadedAccount.current);
17
+ expectTypeOf().toEqualTypeOf();
18
+ });
19
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=CoState.svelte.test-d.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoState.svelte.test-d.d.ts","sourceRoot":"","sources":["../../../../src/svelte/tests/CoState.svelte.test-d.ts"],"names":[],"mappings":""}
@@ -0,0 +1,16 @@
1
+ import { co } from "jazz-tools";
2
+ import { assertLoaded } from "jazz-tools/testing";
3
+ import { describe, expectTypeOf, test } from "vitest";
4
+ import { CoState } from "../jazz.class.svelte";
5
+ describe("CoState", () => {
6
+ test("should use the schema's resolve query if no resolve query is provided", async () => {
7
+ const Person = co.map({
8
+ name: co.plainText(),
9
+ });
10
+ const PersonWithName = Person.resolved({ name: true });
11
+ const person = Person.create({ name: "John Doe" });
12
+ const loadedPerson = new CoState(PersonWithName, person.$jazz.id);
13
+ assertLoaded(loadedPerson.current);
14
+ expectTypeOf().toEqualTypeOf();
15
+ });
16
+ });
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=CoState.svelte.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoState.svelte.test.d.ts","sourceRoot":"","sources":["../../../../src/svelte/tests/CoState.svelte.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,42 @@
1
+ // @vitest-environment happy-dom
2
+ import { co, Account, CoValueLoadingState, Group } from "jazz-tools";
3
+ import { beforeEach, describe, expect, it } from "vitest";
4
+ import { createJazzTestAccount, setupJazzTestSync } from "../testing";
5
+ import { render, screen, waitFor } from "./testUtils";
6
+ import TestCoStateWrapper from "./TestCoStateWrapper.svelte";
7
+ describe("CoState", () => {
8
+ let serverAccount;
9
+ let clientAccount;
10
+ let publicGroup;
11
+ beforeEach(async () => {
12
+ await setupJazzTestSync();
13
+ await createJazzTestAccount({
14
+ creationProps: { name: "Server" },
15
+ isCurrentActiveAccount: true,
16
+ });
17
+ serverAccount = Account.getMe();
18
+ clientAccount = await createJazzTestAccount({
19
+ creationProps: { name: "Client" },
20
+ });
21
+ publicGroup = Group.create(serverAccount).makePublic("reader");
22
+ });
23
+ it("should use the schema's resolve query if no resolve query is provided", async () => {
24
+ const Person = co.map({
25
+ name: co.plainText(),
26
+ });
27
+ const PersonWithName = Person.resolved({ name: true });
28
+ const person = Person.create({ name: "John Doe" }, publicGroup);
29
+ render(TestCoStateWrapper, {
30
+ Schema: PersonWithName,
31
+ id: person.$jazz.id,
32
+ }, {
33
+ account: clientAccount,
34
+ });
35
+ await waitFor(() => {
36
+ expect(screen.getByTestId("loading-state").textContent).toBe(CoValueLoadingState.LOADED);
37
+ });
38
+ expect(screen.getByTestId("is-loaded").textContent).toBe("true");
39
+ const stateValue = JSON.parse(screen.getByTestId("state-value").textContent ?? "");
40
+ expect(stateValue.name).toBe("John Doe");
41
+ });
42
+ });
@@ -0,0 +1,23 @@
1
+ <script lang="ts">
2
+ import type { CoValueClassOrSchema, ResolveQuery } from 'jazz-tools';
3
+ import { CoState } from '../jazz.class.svelte';
4
+
5
+ type Props<V extends CoValueClassOrSchema, R extends ResolveQuery<V>> = {
6
+ Schema: V;
7
+ id: string;
8
+ options?: { resolve?: R };
9
+ };
10
+
11
+ let { Schema, id, options }: Props<any, any> = $props();
12
+
13
+ const state = new CoState(Schema, id, options);
14
+ </script>
15
+
16
+ <div data-testid="costate-wrapper">
17
+ <div data-testid="loading-state">{state.current.$jazz.loadingState}</div>
18
+ <div data-testid="is-loaded">{state.current.$isLoaded ? 'true' : 'false'}</div>
19
+ {#if state.current.$isLoaded}
20
+ <div data-testid="state-value">{JSON.stringify(state.current.toJSON())}</div>
21
+ {/if}
22
+ </div>
23
+
@@ -0,0 +1,12 @@
1
+ import type { CoValueClassOrSchema, ResolveQuery } from 'jazz-tools';
2
+ type Props<V extends CoValueClassOrSchema, R extends ResolveQuery<V>> = {
3
+ Schema: V;
4
+ id: string;
5
+ options?: {
6
+ resolve?: R;
7
+ };
8
+ };
9
+ declare const TestCoStateWrapper: import("svelte").Component<Props<any, any>, {}, "">;
10
+ type TestCoStateWrapper = ReturnType<typeof TestCoStateWrapper>;
11
+ export default TestCoStateWrapper;
12
+ //# sourceMappingURL=TestCoStateWrapper.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TestCoStateWrapper.svelte.d.ts","sourceRoot":"","sources":["../../../../src/svelte/tests/TestCoStateWrapper.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAInE,KAAK,KAAK,CAAC,CAAC,SAAS,oBAAoB,EAAE,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,IAAI;IACtE,MAAM,EAAE,CAAC,CAAC;IACV,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,CAAC,CAAA;KAAE,CAAC;CAC3B,CAAC;AAsBJ,QAAA,MAAM,kBAAkB,qDAAsC,CAAC;AAC/D,KAAK,kBAAkB,GAAG,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAChE,eAAe,kBAAkB,CAAC"}
@@ -1,5 +1,5 @@
1
1
 
2
- > jazz-tools@0.18.37 build /home/runner/_work/jazz/jazz/packages/jazz-tools
2
+ > jazz-tools@0.19.0 build /home/runner/_work/jazz/jazz/packages/jazz-tools
3
3
  > tsup && pnpm types && pnpm build:svelte
4
4
 
5
5
  CLI Building entry: {"index":"src/index.ts","testing":"src/testing.ts","tools/ssr":"src/tools/ssr/index.ts"}
@@ -110,102 +110,102 @@
110
110
  ESM dist/tiptap/index.js 564.00 B
111
111
  ESM dist/tiptap/index.js.map 1.21 KB
112
112
  ESM ⚡️ Build success in 47ms
113
+ ESM dist/worker/index.js 3.19 KB
114
+ ESM dist/worker/napi-crypto.js 110.00 B
115
+ ESM dist/worker/edge-wasm.js 215.00 B
116
+ ESM dist/worker/index.js.map 6.24 KB
117
+ ESM dist/worker/napi-crypto.js.map 162.00 B
118
+ ESM dist/worker/edge-wasm.js.map 434.00 B
119
+ ESM ⚡️ Build success in 48ms
113
120
  ESM dist/better-auth/auth/client.js 4.50 KB
114
121
  ESM dist/better-auth/auth/server.js 8.36 KB
115
122
  ESM dist/better-auth/auth/react.js 799.00 B
116
123
  ESM dist/better-auth/auth/client.js.map 8.32 KB
117
124
  ESM dist/better-auth/auth/server.js.map 15.31 KB
118
125
  ESM dist/better-auth/auth/react.js.map 2.04 KB
119
- ESM ⚡️ Build success in 40ms
120
- ESM dist/worker/index.js 3.19 KB
121
- ESM dist/worker/edge-wasm.js 215.00 B
122
- ESM dist/worker/napi-crypto.js 110.00 B
123
- ESM dist/worker/index.js.map 6.24 KB
124
- ESM dist/worker/edge-wasm.js.map 434.00 B
125
- ESM dist/worker/napi-crypto.js.map 162.00 B
126
- ESM ⚡️ Build success in 49ms
126
+ ESM ⚡️ Build success in 42ms
127
127
  ESM dist/react-native/index.js 2.53 KB
128
128
  ESM dist/react-native/testing.js 120.00 B
129
129
  ESM dist/react-native/crypto.js 161.00 B
130
130
  ESM dist/react-native/index.js.map 5.68 KB
131
131
  ESM dist/react-native/testing.js.map 176.00 B
132
132
  ESM dist/react-native/crypto.js.map 197.00 B
133
- ESM ⚡️ Build success in 59ms
133
+ ESM ⚡️ Build success in 45ms
134
134
  ESM dist/media/index.js 236.00 B
135
135
  ESM dist/media/index.browser.js 2.79 KB
136
136
  ESM dist/media/index.native.js 4.01 KB
137
137
  ESM dist/media/index.server.js 2.95 KB
138
- ESM dist/media/chunk-K6GCHLQU.js 6.47 KB
138
+ ESM dist/media/chunk-3LKBM3G3.js 6.69 KB
139
139
  ESM dist/media/index.js.map 71.00 B
140
140
  ESM dist/media/index.browser.js.map 6.15 KB
141
141
  ESM dist/media/index.native.js.map 8.10 KB
142
142
  ESM dist/media/index.server.js.map 6.37 KB
143
- ESM dist/media/chunk-K6GCHLQU.js.map 16.64 KB
144
- ESM ⚡️ Build success in 64ms
145
- ESM dist/react-core/index.js 14.06 KB
146
- ESM dist/react-core/testing.js 1.22 KB
147
- ESM dist/react-core/chunk-7DYMJ74I.js 279.00 B
148
- ESM dist/react-core/index.js.map 42.79 KB
149
- ESM dist/react-core/testing.js.map 1.86 KB
150
- ESM dist/react-core/chunk-7DYMJ74I.js.map 533.00 B
151
- ESM ⚡️ Build success in 62ms
143
+ ESM dist/media/chunk-3LKBM3G3.js.map 16.99 KB
144
+ ESM ⚡️ Build success in 52ms
145
+ ESM dist/browser/index.js 14.06 KB
146
+ ESM dist/browser/index.js.map 29.94 KB
147
+ ESM ⚡️ Build success in 79ms
152
148
  ESM dist/expo/index.js 4.68 KB
153
- ESM dist/expo/testing.js 112.00 B
154
149
  ESM dist/expo/crypto.js 153.00 B
150
+ ESM dist/expo/testing.js 112.00 B
155
151
  ESM dist/expo/index.js.map 10.23 KB
156
- ESM dist/expo/testing.js.map 168.00 B
157
152
  ESM dist/expo/crypto.js.map 189.00 B
158
- ESM ⚡️ Build success in 59ms
159
- ESM dist/browser/index.js 14.06 KB
160
- ESM dist/browser/index.js.map 29.94 KB
161
- ESM ⚡️ Build success in 68ms
162
- ESM dist/prosemirror/index.js 77.76 KB
163
- ESM dist/prosemirror/index.js.map 307.20 KB
164
- ESM ⚡️ Build success in 77ms
165
- ESM dist/react/index.js 25.36 KB
153
+ ESM dist/expo/testing.js.map 168.00 B
154
+ ESM ⚡️ Build success in 69ms
155
+ ESM dist/react-core/testing.js 1.22 KB
156
+ ESM dist/react-core/index.js 14.37 KB
157
+ ESM dist/react-core/chunk-7DYMJ74I.js 279.00 B
158
+ ESM dist/react-core/testing.js.map 1.86 KB
159
+ ESM dist/react-core/index.js.map 40.54 KB
160
+ ESM dist/react-core/chunk-7DYMJ74I.js.map 533.00 B
161
+ ESM ⚡️ Build success in 75ms
166
162
  ESM dist/react/testing.js 122.00 B
163
+ ESM dist/react/index.js 25.74 KB
167
164
  ESM dist/react/ssr.js 697.00 B
168
- ESM dist/react/index.js.map 54.72 KB
169
165
  ESM dist/react/testing.js.map 165.00 B
166
+ ESM dist/react/index.js.map 55.43 KB
170
167
  ESM dist/react/ssr.js.map 1.11 KB
171
- ESM ⚡️ Build success in 66ms
172
- ESM dist/react-native-core/index.js 18.96 KB
168
+ ESM ⚡️ Build success in 65ms
169
+ ESM dist/better-auth/database-adapter/index.js 26.65 KB
170
+ ESM dist/better-auth/database-adapter/index.js.map 58.26 KB
171
+ ESM ⚡️ Build success in 64ms
172
+ ESM dist/react-native-core/index.js 18.97 KB
173
173
  ESM dist/react-native-core/testing.js 119.00 B
174
174
  ESM dist/react-native-core/crypto.js 2.10 KB
175
- ESM dist/react-native-core/index.js.map 38.49 KB
175
+ ESM dist/react-native-core/index.js.map 38.60 KB
176
176
  ESM dist/react-native-core/testing.js.map 175.00 B
177
177
  ESM dist/react-native-core/crypto.js.map 4.25 KB
178
- ESM ⚡️ Build success in 73ms
179
- ESM dist/better-auth/database-adapter/index.js 26.44 KB
180
- ESM dist/better-auth/database-adapter/index.js.map 57.91 KB
181
- ESM ⚡️ Build success in 65ms
182
- ESM dist/inspector/index.js 97.13 KB
183
- ESM dist/inspector/index.js.map 170.97 KB
184
- ESM ⚡️ Build success in 102ms
185
- ESM dist/index.js 28.82 KB
186
- ESM dist/testing.js 8.48 KB
178
+ ESM ⚡️ Build success in 88ms
179
+ ESM dist/prosemirror/index.js 77.76 KB
180
+ ESM dist/prosemirror/index.js.map 307.20 KB
181
+ ESM ⚡️ Build success in 93ms
182
+ ESM dist/inspector/index.js 97.51 KB
183
+ ESM dist/inspector/index.js.map 171.35 KB
184
+ ESM ⚡️ Build success in 95ms
185
+ ESM dist/index.js 29.09 KB
186
+ ESM dist/testing.js 8.51 KB
187
+ ESM dist/chunk-P3YLNFN4.js 199.68 KB
187
188
  ESM dist/tools/ssr.js 156.00 B
188
189
  ESM dist/chunk-M2HGBOXS.js 694.00 B
189
190
  ESM dist/chunk-PZ5AY32C.js 233.00 B
190
- ESM dist/chunk-OSQ7S47Q.js 191.06 KB
191
- ESM dist/index.js.map 59.88 KB
192
- ESM dist/testing.js.map 16.07 KB
191
+ ESM dist/index.js.map 60.08 KB
192
+ ESM dist/testing.js.map 16.17 KB
193
+ ESM dist/chunk-P3YLNFN4.js.map 470.44 KB
193
194
  ESM dist/tools/ssr.js.map 71.00 B
194
195
  ESM dist/chunk-M2HGBOXS.js.map 1.10 KB
195
196
  ESM dist/chunk-PZ5AY32C.js.map 71.00 B
196
- ESM dist/chunk-OSQ7S47Q.js.map 452.42 KB
197
- ESM ⚡️ Build success in 122ms
197
+ ESM ⚡️ Build success in 111ms
198
198
  ESM dist/inspector/register-custom-element.js 218.00 B
199
- ESM dist/inspector/custom-element-SUVJ7CPN.js 1.57 MB
200
199
  ESM dist/inspector/register-custom-element.js.map 314.00 B
201
- ESM dist/inspector/custom-element-SUVJ7CPN.js.map 2.41 MB
202
- ESM ⚡️ Build success in 167ms
200
+ ESM dist/inspector/custom-element-QESCMFY7.js 1.57 MB
201
+ ESM dist/inspector/custom-element-QESCMFY7.js.map 2.41 MB
202
+ ESM ⚡️ Build success in 162ms
203
203
 
204
- > jazz-tools@0.18.37 types /home/runner/_work/jazz/jazz/packages/jazz-tools
204
+ > jazz-tools@0.19.0 types /home/runner/_work/jazz/jazz/packages/jazz-tools
205
205
  > tsc --outDir dist
206
206
 
207
207
 
208
- > jazz-tools@0.18.37 build:svelte /home/runner/_work/jazz/jazz/packages/jazz-tools
208
+ > jazz-tools@0.19.0 build:svelte /home/runner/_work/jazz/jazz/packages/jazz-tools
209
209
  > rm -rf dist/svelte && svelte-package -i src/svelte -o dist/svelte --tsconfig tsconfig.svelte.json
210
210
 
211
211
  src/svelte -> dist/svelte
package/CHANGELOG.md CHANGED
@@ -1,5 +1,38 @@
1
1
  # jazz-tools
2
2
 
3
+ ## 0.19.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 26386d9: Add explicit CoValue loading states:
8
+ - Add `$isLoaded` field to discriminate between loaded and unloaded CoValues
9
+ - Add `$jazz.loadingState` field to provide additional info about the loading state
10
+ - All methods and functions that load CoValues now return a `MaybeLoaded<CoValue>` instead of `CoValue | null | undefined`
11
+ - Rename `$onError: null` to `$onError: "catch"`
12
+ - Split the `useAccount` hook into three separate hooks:
13
+ - `useAccount`: now only returns an Account CoValue
14
+ - `useLogOut`: returns a function for logging out of the current account
15
+ - `useAgent`: returns the current agent
16
+ - Add a `select` option (and an optional `equalityFn`) to `useAccount` and `useCoState`, and remove `useAccountWithSelector` and `useCoStateWithSelector`.
17
+ - Allow specifying resolve queries at the schema level. Those queries will be used when loading CoValues, if no other resolve query is provided.
18
+
19
+ ### Patch Changes
20
+
21
+ - cojson@0.19.0
22
+ - cojson-storage-indexeddb@0.19.0
23
+ - cojson-transport-ws@0.19.0
24
+
25
+ ## 0.18.38
26
+
27
+ ### Patch Changes
28
+
29
+ - 349ca48: feat: Invalid transaction's error messages are now shown in the inspector
30
+ - Updated dependencies [349ca48]
31
+ - Updated dependencies [68781a0]
32
+ - cojson@0.18.38
33
+ - cojson-storage-indexeddb@0.18.38
34
+ - cojson-transport-ws@0.18.38
35
+
3
36
  ## 0.18.37
4
37
 
5
38
  ### Patch Changes