jazz-tools 0.20.16 → 0.20.17

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 (87) hide show
  1. package/.turbo/turbo-build.log +54 -54
  2. package/CHANGELOG.md +11 -0
  3. package/dist/browser/createBrowserContext.d.ts +1 -12
  4. package/dist/browser/createBrowserContext.d.ts.map +1 -1
  5. package/dist/browser/index.js +1 -2
  6. package/dist/browser/index.js.map +1 -1
  7. package/dist/{chunk-WAYFZQXB.js → chunk-3BV3JUMV.js} +418 -70
  8. package/dist/chunk-3BV3JUMV.js.map +1 -0
  9. package/dist/index.js +5 -3
  10. package/dist/index.js.map +1 -1
  11. package/dist/mcp/backend-sqlite.d.ts.map +1 -1
  12. package/dist/mcp/server.d.ts.map +1 -1
  13. package/dist/mcp/server.js +4 -2
  14. package/dist/mcp/server.js.map +1 -1
  15. package/dist/react-native/index.js +4 -1
  16. package/dist/react-native/index.js.map +1 -1
  17. package/dist/react-native-core/index.js +4 -1
  18. package/dist/react-native-core/index.js.map +1 -1
  19. package/dist/react-native-core/platform.d.ts.map +1 -1
  20. package/dist/testing.js +1 -1
  21. package/dist/tools/coValues/deepLoading.d.ts +21 -1
  22. package/dist/tools/coValues/deepLoading.d.ts.map +1 -1
  23. package/dist/tools/coValues/interfaces.d.ts +1 -0
  24. package/dist/tools/coValues/interfaces.d.ts.map +1 -1
  25. package/dist/tools/coValues/registeredSchemas.d.ts +1 -1
  26. package/dist/tools/coValues/registeredSchemas.d.ts.map +1 -1
  27. package/dist/tools/coValues/snapshotRef.d.ts +114 -0
  28. package/dist/tools/coValues/snapshotRef.d.ts.map +1 -0
  29. package/dist/tools/implementation/invites.d.ts +9 -1
  30. package/dist/tools/implementation/invites.d.ts.map +1 -1
  31. package/dist/tools/implementation/schemaRuntime.d.ts +1 -0
  32. package/dist/tools/implementation/schemaRuntime.d.ts.map +1 -1
  33. package/dist/tools/implementation/zodSchema/coExport.d.ts +2 -1
  34. package/dist/tools/implementation/zodSchema/coExport.d.ts.map +1 -1
  35. package/dist/tools/implementation/zodSchema/runtimeConverters/coValueSchemaTransformation.d.ts.map +1 -1
  36. package/dist/tools/implementation/zodSchema/runtimeConverters/schemaFieldToCoFieldDef.d.ts +3 -0
  37. package/dist/tools/implementation/zodSchema/runtimeConverters/schemaFieldToCoFieldDef.d.ts.map +1 -1
  38. package/dist/tools/implementation/zodSchema/schemaInvariant.d.ts +2 -1
  39. package/dist/tools/implementation/zodSchema/schemaInvariant.d.ts.map +1 -1
  40. package/dist/tools/implementation/zodSchema/schemaPermissions.d.ts.map +1 -1
  41. package/dist/tools/implementation/zodSchema/schemaTypes/CoDiscriminatedUnionSchema.d.ts.map +1 -1
  42. package/dist/tools/implementation/zodSchema/schemaTypes/SnapshotRefSchema.d.ts +106 -0
  43. package/dist/tools/implementation/zodSchema/schemaTypes/SnapshotRefSchema.d.ts.map +1 -0
  44. package/dist/tools/implementation/zodSchema/typeConverters/CoFieldSchemaInit.d.ts +2 -2
  45. package/dist/tools/implementation/zodSchema/typeConverters/CoFieldSchemaInit.d.ts.map +1 -1
  46. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchema.d.ts +2 -2
  47. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchema.d.ts.map +1 -1
  48. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchemaCoValuesMaybeLoaded.d.ts +3 -2
  49. package/dist/tools/implementation/zodSchema/typeConverters/InstanceOfSchemaCoValuesMaybeLoaded.d.ts.map +1 -1
  50. package/dist/tools/implementation/zodSchema/zodCo.d.ts +5 -1
  51. package/dist/tools/implementation/zodSchema/zodCo.d.ts.map +1 -1
  52. package/dist/tools/implementation/zodSchema/zodSchema.d.ts +4 -3
  53. package/dist/tools/implementation/zodSchema/zodSchema.d.ts.map +1 -1
  54. package/dist/tools/internal.d.ts +2 -0
  55. package/dist/tools/internal.d.ts.map +1 -1
  56. package/dist/tools/subscribe/SubscriptionScope.d.ts.map +1 -1
  57. package/dist/tools/tests/snapshotRef.test.d.ts +2 -0
  58. package/dist/tools/tests/snapshotRef.test.d.ts.map +1 -0
  59. package/package.json +4 -4
  60. package/src/browser/createBrowserContext.ts +0 -67
  61. package/src/browser/index.ts +1 -1
  62. package/src/mcp/backend-sqlite.ts +4 -1
  63. package/src/mcp/server.ts +4 -1
  64. package/src/react-native-core/platform.ts +4 -1
  65. package/src/tools/coValues/deepLoading.ts +46 -15
  66. package/src/tools/coValues/interfaces.ts +29 -24
  67. package/src/tools/coValues/registeredSchemas.ts +1 -1
  68. package/src/tools/coValues/snapshotRef.ts +364 -0
  69. package/src/tools/implementation/invites.ts +26 -2
  70. package/src/tools/implementation/schemaRuntime.ts +1 -0
  71. package/src/tools/implementation/zodSchema/coExport.ts +2 -0
  72. package/src/tools/implementation/zodSchema/runtimeConverters/coValueSchemaTransformation.ts +10 -0
  73. package/src/tools/implementation/zodSchema/runtimeConverters/schemaFieldToCoFieldDef.ts +1 -1
  74. package/src/tools/implementation/zodSchema/schemaInvariant.ts +3 -1
  75. package/src/tools/implementation/zodSchema/schemaPermissions.ts +2 -4
  76. package/src/tools/implementation/zodSchema/schemaTypes/CoDiscriminatedUnionSchema.ts +0 -1
  77. package/src/tools/implementation/zodSchema/schemaTypes/SnapshotRefSchema.ts +259 -0
  78. package/src/tools/implementation/zodSchema/typeConverters/CoFieldSchemaInit.ts +24 -19
  79. package/src/tools/implementation/zodSchema/typeConverters/InstanceOfSchema.ts +11 -5
  80. package/src/tools/implementation/zodSchema/typeConverters/InstanceOfSchemaCoValuesMaybeLoaded.ts +18 -10
  81. package/src/tools/implementation/zodSchema/zodCo.ts +17 -0
  82. package/src/tools/implementation/zodSchema/zodSchema.ts +10 -3
  83. package/src/tools/internal.ts +2 -0
  84. package/src/tools/subscribe/SubscriptionScope.ts +22 -4
  85. package/src/tools/tests/invites.test.ts +13 -0
  86. package/src/tools/tests/snapshotRef.test.ts +688 -0
  87. package/dist/chunk-WAYFZQXB.js.map +0 -1
@@ -15,6 +15,7 @@ export * from "./coValues/coPlainText.js";
15
15
  export * from "./coValues/coRichText.js";
16
16
  export * from "./coValues/schemaUnion.js";
17
17
  export * from "./coValues/coVector.js";
18
+ export * from "./coValues/snapshotRef.js";
18
19
  export type * from "./subscribe/types.js";
19
20
  export * from "./coValues/deepLoading.js";
20
21
  export * from "./implementation/anonymousJazzAgent.js";
@@ -33,6 +34,7 @@ export * from "./implementation/zodSchema/zodSchema.js";
33
34
  export * from "./implementation/zodSchema/zodCo.js";
34
35
  export * as co from "./implementation/zodSchema/coExport.js";
35
36
  export * from "./implementation/zodSchema/schemaTypes/CoMapSchema.js";
37
+ export * from "./implementation/zodSchema/schemaTypes/SnapshotRefSchema.js";
36
38
  export * from "./implementation/zodSchema/schemaTypes/CoDiscriminatedUnionSchema.js";
37
39
  export * from "./implementation/zodSchema/schemaTypes/CoRecordSchema.js";
38
40
  export * from "./implementation/zodSchema/schemaTypes/CoListSchema.js";
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/tools/internal.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAE5C,cAAc,iCAAiC,CAAC;AAEhD,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AAEvC,mBAAmB,sBAAsB,CAAC;AAE1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wCAAwC,CAAC;AACvD,cAAc,0CAA0C,CAAC;AACzD,cAAc,0BAA0B,CAAC;AACzC,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mCAAmC,CAAC;AAElD,cAAc,YAAY,CAAC;AAC3B,cAAc,yCAAyC,CAAC;AACxD,cAAc,qCAAqC,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,wCAAwC,CAAC;AAC7D,cAAc,uDAAuD,CAAC;AACtE,cAAc,sEAAsE,CAAC;AACrF,cAAc,0DAA0D,CAAC;AACzE,cAAc,wDAAwD,CAAC;AACvE,cAAc,wDAAwD,CAAC;AACvE,cAAc,yDAAyD,CAAC;AACxE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,0DAA0D,CAAC;AACzE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,0EAA0E,CAAC;AACzF,cAAc,6FAA6F,CAAC;AAC5G,cAAc,+DAA+D,CAAC;AAC9E,cAAc,kFAAkF,CAAC;AACjG,cAAc,gEAAgE,CAAC;AAC/E,cAAc,6EAA6E,CAAC;AAC5F,cAAc,yEAAyE,CAAC;AACxF,cAAc,iDAAiD,CAAC;AAChE,cAAc,kDAAkD,CAAC;AACjE,cAAc,mCAAmC,CAAC;AAElD,cAAc,oCAAoC,CAAC;AAEnD,cAAc,0BAA0B,CAAC;AAEzC,OAAO,wDAAwD,CAAC;AAChE,OAAO,wCAAwC,CAAC"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/tools/internal.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAE5C,cAAc,iCAAiC,CAAC;AAEhD,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAE1C,mBAAmB,sBAAsB,CAAC;AAE1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wCAAwC,CAAC;AACvD,cAAc,0CAA0C,CAAC;AACzD,cAAc,0BAA0B,CAAC;AACzC,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mCAAmC,CAAC;AAElD,cAAc,YAAY,CAAC;AAC3B,cAAc,yCAAyC,CAAC;AACxD,cAAc,qCAAqC,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,wCAAwC,CAAC;AAC7D,cAAc,uDAAuD,CAAC;AACtE,cAAc,6DAA6D,CAAC;AAC5E,cAAc,sEAAsE,CAAC;AACrF,cAAc,0DAA0D,CAAC;AACzE,cAAc,wDAAwD,CAAC;AACvE,cAAc,wDAAwD,CAAC;AACvE,cAAc,yDAAyD,CAAC;AACxE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,0DAA0D,CAAC;AACzE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,0EAA0E,CAAC;AACzF,cAAc,6FAA6F,CAAC;AAC5G,cAAc,+DAA+D,CAAC;AAC9E,cAAc,kFAAkF,CAAC;AACjG,cAAc,gEAAgE,CAAC;AAC/E,cAAc,6EAA6E,CAAC;AAC5F,cAAc,yEAAyE,CAAC;AACxF,cAAc,iDAAiD,CAAC;AAChE,cAAc,kDAAkD,CAAC;AACjE,cAAc,mCAAmC,CAAC;AAElD,cAAc,oCAAoC,CAAC;AAEnD,cAAc,0BAA0B,CAAC;AAEzC,OAAO,wDAAwD,CAAC;AAChE,OAAO,wCAAwC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SubscriptionScope.d.ts","sourceRoot":"","sources":["../../../src/tools/subscribe/SubscriptionScope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SubscriptionScope.d.ts","sourceRoot":"","sources":["../../../src/tools/subscribe/SubscriptionScope.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=snapshotRef.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snapshotRef.test.d.ts","sourceRoot":"","sources":["../../../src/tools/tests/snapshotRef.test.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -206,7 +206,7 @@
206
206
  },
207
207
  "type": "module",
208
208
  "license": "MIT",
209
- "version": "0.20.16",
209
+ "version": "0.20.17",
210
210
  "dependencies": {
211
211
  "@scure/base": "1.2.1",
212
212
  "@scure/bip39": "^1.3.0",
@@ -223,9 +223,9 @@
223
223
  "prosemirror-transform": "^1.9.0",
224
224
  "use-sync-external-store": "^1.5.0",
225
225
  "zod": "4.1.11",
226
- "cojson": "0.20.16",
227
- "cojson-storage-indexeddb": "0.20.16",
228
- "cojson-transport-ws": "0.20.16"
226
+ "cojson": "0.20.17",
227
+ "cojson-storage-indexeddb": "0.20.17",
228
+ "cojson-transport-ws": "0.20.17"
229
229
  },
230
230
  "devDependencies": {
231
231
  "@scure/bip39": "^1.3.0",
@@ -13,11 +13,9 @@ import {
13
13
  CoValueFromRaw,
14
14
  CryptoProvider,
15
15
  ID,
16
- InviteSecret,
17
16
  NewAccountProps,
18
17
  SessionID,
19
18
  SyncConfig,
20
- cojsonInternals,
21
19
  createAnonymousJazzContext,
22
20
  } from "jazz-tools";
23
21
  import { createJazzContext } from "jazz-tools";
@@ -243,68 +241,3 @@ export async function createJazzBrowserContext<
243
241
  export type SessionProvider = (
244
242
  accountID: ID<Account> | AgentID,
245
243
  ) => Promise<SessionID>;
246
-
247
- /** @category Invite Links */
248
- export function createInviteLink<C extends CoValue>(
249
- value: C,
250
- role: "reader" | "writer" | "admin" | "writeOnly",
251
- // default to same address as window.location, but without hash
252
- {
253
- baseURL = window.location.href.replace(/#.*$/, ""),
254
- valueHint,
255
- }: { baseURL?: string; valueHint?: string } = {},
256
- ): string {
257
- const coValueCore = value.$jazz.raw.core;
258
- let currentCoValue = coValueCore;
259
-
260
- while (currentCoValue.verified.header.ruleset.type === "ownedByGroup") {
261
- currentCoValue = currentCoValue.getGroup().core;
262
- }
263
-
264
- const { ruleset, meta } = currentCoValue.verified.header;
265
-
266
- if (ruleset.type !== "group" || meta?.type === "account") {
267
- throw new Error("Can't create invite link for object without group");
268
- }
269
-
270
- const group = cojsonInternals.expectGroup(currentCoValue.getCurrentContent());
271
- const inviteSecret = group.createInvite(role);
272
-
273
- return `${baseURL}#/invite/${valueHint ? valueHint + "/" : ""}${
274
- value.$jazz.id
275
- }/${inviteSecret}`;
276
- }
277
-
278
- /** @category Invite Links */
279
- export function parseInviteLink<C extends CoValue>(
280
- inviteURL: string,
281
- ):
282
- | {
283
- valueID: ID<C>;
284
- valueHint?: string;
285
- inviteSecret: InviteSecret;
286
- }
287
- | undefined {
288
- const url = new URL(inviteURL);
289
- const parts = url.hash.split("/");
290
-
291
- let valueHint: string | undefined;
292
- let valueID: ID<C> | undefined;
293
- let inviteSecret: InviteSecret | undefined;
294
-
295
- if (parts[0] === "#" && parts[1] === "invite") {
296
- if (parts.length === 5) {
297
- valueHint = parts[2];
298
- valueID = parts[3] as ID<C>;
299
- inviteSecret = parts[4] as InviteSecret;
300
- } else if (parts.length === 4) {
301
- valueID = parts[2] as ID<C>;
302
- inviteSecret = parts[3] as InviteSecret;
303
- }
304
-
305
- if (!valueID || !inviteSecret) {
306
- return undefined;
307
- }
308
- return { valueID, inviteSecret, valueHint };
309
- }
310
- }
@@ -27,7 +27,7 @@ export function createInviteLink<C extends CoValue>(
27
27
  valueHint,
28
28
  }: { baseURL?: string; valueHint?: string } = {},
29
29
  ): string {
30
- return baseCreateInviteLink(value, role, baseURL, valueHint);
30
+ return baseCreateInviteLink(value, role, { baseURL, valueHint });
31
31
  }
32
32
 
33
33
  /** @category Invite Links */
@@ -33,7 +33,10 @@ export async function createSqliteBackend(
33
33
  dbPath: string,
34
34
  ): Promise<DocsBackend> {
35
35
  // Dynamic import keeps node:sqlite off the top-level parse graph
36
- const { DatabaseSync } = await import("node:sqlite");
36
+ // Use a variable so esbuild cannot statically analyse and strip the "node:" prefix.
37
+ // eslint-disable-next-line @typescript-eslint/no-implied-eval
38
+ const sqliteMod = "node:sqlite";
39
+ const { DatabaseSync } = await import(sqliteMod);
37
40
  const db = new DatabaseSync(dbPath, { readOnly: true });
38
41
 
39
42
  // ------------------------------------------------------------------
package/src/mcp/server.ts CHANGED
@@ -28,7 +28,10 @@ async function selectBackend(
28
28
  ): Promise<DocsBackend> {
29
29
  try {
30
30
  // Step 1: confirm node:sqlite is importable
31
- const { DatabaseSync } = await import("node:sqlite");
31
+ // Use a variable so esbuild cannot statically analyse and strip the "node:" prefix.
32
+ // eslint-disable-next-line @typescript-eslint/no-implied-eval
33
+ const sqliteMod = "node:sqlite";
34
+ const { DatabaseSync } = await import(sqliteMod);
32
35
 
33
36
  // Step 2: FTS5 probe on an in-memory DB
34
37
  const probe = new DatabaseSync(":memory:");
@@ -240,7 +240,10 @@ export function createInviteLink<C extends CoValue>(
240
240
  role: "reader" | "writer" | "admin",
241
241
  { baseURL, valueHint }: { baseURL?: string; valueHint?: string } = {},
242
242
  ): string {
243
- return baseCreateInviteLink(value, role, baseURL ?? "", valueHint);
243
+ return baseCreateInviteLink(value, role, {
244
+ baseURL: baseURL ?? "",
245
+ valueHint,
246
+ });
244
247
  }
245
248
 
246
249
  export function setupKvStore(
@@ -157,7 +157,20 @@ export type RefsToResolve<
157
157
  | boolean
158
158
  : V extends { [TypeSym]: "CoPlainText" | "BinaryCoStream" }
159
159
  ? boolean | OnError
160
- : boolean);
160
+ : V extends {
161
+ [TypeSym]: "SnapshotRef";
162
+ ref: infer Item;
163
+ }
164
+ ?
165
+ | ({
166
+ ref: RefsToResolve<
167
+ AsLoaded<Item>,
168
+ DepthLimit,
169
+ [0, ...CurrentDepth]
170
+ >;
171
+ } & OnError)
172
+ | boolean
173
+ : boolean);
161
174
 
162
175
  export type RefsToResolveStrict<T, V> = [V] extends [RefsToResolve<T>]
163
176
  ? RefsToResolve<T>
@@ -268,28 +281,46 @@ export type DeeplyLoaded<
268
281
  CoMapLikeLoaded<V, Depth, DepthLimit, CurrentDepth>
269
282
  : [V] extends [
270
283
  {
271
- [TypeSym]: "CoStream";
272
- byMe: CoFeedEntry<infer Item> | undefined;
284
+ [TypeSym]: "SnapshotRef";
285
+ ref: infer Item;
273
286
  },
274
287
  ]
275
- ? // Deeply loaded CoStream
276
- {
277
- byMe?: { value: AsLoaded<Item> };
278
- inCurrentSession?: { value: AsLoaded<Item> };
279
- perSession: {
280
- [key: SessionID]: { value: AsLoaded<Item> };
281
- };
282
- } & { [key: ID<Account>]: { value: AsLoaded<Item> } } & V // same reason as in CoList
288
+ ? Depth extends { ref: infer ItemDepth }
289
+ ? {
290
+ readonly ref:
291
+ | DeeplyLoaded<
292
+ AsLoaded<Item>,
293
+ ItemDepth,
294
+ DepthLimit,
295
+ [0, ...CurrentDepth]
296
+ >
297
+ | OnErrorResolvedValue<AsLoaded<Item>, ItemDepth>;
298
+ } & V
299
+ : V
283
300
  : [V] extends [
284
301
  {
285
- [TypeSym]: "BinaryCoStream";
302
+ [TypeSym]: "CoStream";
303
+ byMe: CoFeedEntry<infer Item> | undefined;
286
304
  },
287
305
  ]
288
- ? V
306
+ ? // Deeply loaded CoStream
307
+ {
308
+ byMe?: { value: AsLoaded<Item> };
309
+ inCurrentSession?: { value: AsLoaded<Item> };
310
+ perSession: {
311
+ [key: SessionID]: { value: AsLoaded<Item> };
312
+ };
313
+ } & { [key: ID<Account>]: { value: AsLoaded<Item> } } & V // same reason as in CoList
289
314
  : [V] extends [
290
315
  {
291
- [TypeSym]: "CoPlainText";
316
+ [TypeSym]: "BinaryCoStream";
292
317
  },
293
318
  ]
294
319
  ? V
295
- : never;
320
+ : [V] extends [
321
+ {
322
+ [TypeSym]: "CoPlainText";
323
+ },
324
+ ]
325
+ ? V
326
+ : never;
@@ -524,6 +524,19 @@ export function isAnonymousAgentInstance(
524
524
  return TypeSym in instance && instance[TypeSym] === "Anonymous";
525
525
  }
526
526
 
527
+ export function isAccountOrGroup(
528
+ instance: unknown,
529
+ ): instance is Account | Group {
530
+ if (typeof instance !== "object" || instance === null) {
531
+ return false;
532
+ }
533
+
534
+ return (
535
+ TypeSym in instance &&
536
+ (instance[TypeSym] === "Account" || instance[TypeSym] === "Group")
537
+ );
538
+ }
539
+
527
540
  export type CoValueCreateOptions<
528
541
  MoreOptions extends object = {},
529
542
  Owner extends Group | Account = Group,
@@ -576,25 +589,15 @@ export function parseCoValueCreateOptions(
576
589
  };
577
590
  }
578
591
 
579
- if (TypeSym in options) {
580
- if (options[TypeSym] === "Account") {
581
- const owner = accountOrGroupToGroup(options);
582
- onCreate?.(owner);
583
- return {
584
- owner,
585
- uniqueness: undefined,
586
- firstComesWins: false,
587
- restrictDeletion: undefined,
588
- };
589
- } else if (options[TypeSym] === "Group") {
590
- onCreate?.(options);
591
- return {
592
- owner: options,
593
- uniqueness: undefined,
594
- firstComesWins: false,
595
- restrictDeletion: undefined,
596
- };
597
- }
592
+ if (isAccountOrGroup(options)) {
593
+ const owner = accountOrGroupToGroup(options);
594
+ onCreate?.(owner);
595
+ return {
596
+ owner,
597
+ uniqueness: undefined,
598
+ firstComesWins: false,
599
+ restrictDeletion: undefined,
600
+ };
598
601
  }
599
602
 
600
603
  const firstComesWins = options.firstComesWins ?? false;
@@ -638,7 +641,7 @@ export function parseGroupCreateOptions(
638
641
  return { owner: activeAccountContext.get() };
639
642
  }
640
643
 
641
- if (TypeSym in options && isAccountInstance(options)) {
644
+ if (isAccountInstance(options)) {
642
645
  return { owner: options };
643
646
  }
644
647
 
@@ -652,8 +655,9 @@ export function getIdFromHeader(
652
655
  ) {
653
656
  loadAs ||= activeAccountContext.get();
654
657
 
655
- const node =
656
- loadAs[TypeSym] === "Anonymous" ? loadAs.node : loadAs.$jazz.localNode;
658
+ const node = isAnonymousAgentInstance(loadAs)
659
+ ? loadAs.node
660
+ : loadAs.$jazz.localNode;
657
661
 
658
662
  return cojsonInternals.idforHeader(header, node.crypto);
659
663
  }
@@ -760,8 +764,9 @@ export async function internalLoadUnique<
760
764
  ): Promise<Settled<Resolved<V, R>>> {
761
765
  const loadAs = options.owner.$jazz.loadedAs;
762
766
 
763
- const node =
764
- loadAs[TypeSym] === "Anonymous" ? loadAs.node : loadAs.$jazz.localNode;
767
+ const node = isAnonymousAgentInstance(loadAs)
768
+ ? loadAs.node
769
+ : loadAs.$jazz.localNode;
765
770
 
766
771
  const header = getUniqueHeader(
767
772
  options.type,
@@ -1,4 +1,4 @@
1
- import type { Account, CoMap, Group } from "../internal.js";
1
+ import { Account, CoMap, Group } from "../internal.js";
2
2
 
3
3
  /**
4
4
  * Regisering schemas into this Record to avoid circular dependencies.