jazz-tools 0.8.21 → 0.8.27

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 (42) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/native/coValues/{coStream.js → coFeed.js} +9 -5
  3. package/dist/native/coValues/coFeed.js.map +1 -0
  4. package/dist/native/coValues/coList.js +2 -2
  5. package/dist/native/coValues/coMap.js +2 -2
  6. package/dist/native/coValues/deepLoading.js.map +1 -1
  7. package/dist/native/coValues/extensions/imageDef.js +2 -2
  8. package/dist/native/coValues/extensions/imageDef.js.map +1 -1
  9. package/dist/native/coValues/schemaUnion.js +95 -0
  10. package/dist/native/coValues/schemaUnion.js.map +1 -0
  11. package/dist/native/exports.js +1 -1
  12. package/dist/native/exports.js.map +1 -1
  13. package/dist/native/internal.js +2 -1
  14. package/dist/native/internal.js.map +1 -1
  15. package/dist/web/coValues/{coStream.js → coFeed.js} +9 -5
  16. package/dist/web/coValues/coFeed.js.map +1 -0
  17. package/dist/web/coValues/coList.js +2 -2
  18. package/dist/web/coValues/coMap.js +2 -2
  19. package/dist/web/coValues/deepLoading.js.map +1 -1
  20. package/dist/web/coValues/extensions/imageDef.js +2 -2
  21. package/dist/web/coValues/extensions/imageDef.js.map +1 -1
  22. package/dist/web/coValues/schemaUnion.js +95 -0
  23. package/dist/web/coValues/schemaUnion.js.map +1 -0
  24. package/dist/web/exports.js +1 -1
  25. package/dist/web/exports.js.map +1 -1
  26. package/dist/web/internal.js +2 -1
  27. package/dist/web/internal.js.map +1 -1
  28. package/package.json +2 -2
  29. package/src/coValues/{coStream.ts → coFeed.ts} +50 -38
  30. package/src/coValues/coList.ts +2 -2
  31. package/src/coValues/coMap.ts +2 -2
  32. package/src/coValues/deepLoading.ts +6 -6
  33. package/src/coValues/extensions/imageDef.ts +4 -9
  34. package/src/coValues/schemaUnion.ts +108 -0
  35. package/src/exports.ts +3 -0
  36. package/src/internal.ts +2 -1
  37. package/src/tests/{coStream.test.ts → coFeed.test.ts} +21 -30
  38. package/src/tests/deepLoading.test.ts +2 -2
  39. package/src/tests/schemaUnion.test.ts +118 -0
  40. package/src/tests/subscribe.test.ts +4 -4
  41. package/dist/native/coValues/coStream.js.map +0 -1
  42. package/dist/web/coValues/coStream.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # jazz-tools
2
2
 
3
+ ## 0.8.27
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [75fdff4]
8
+ - cojson@0.8.27
9
+
10
+ ## 0.8.23
11
+
12
+ ### Patch Changes
13
+
14
+ - d348c2d: Rename BinaryCoStream to FileStream
15
+ - 6902b5b: Rename CoStream to CoFeed
16
+ - 1a0cd3d: Added SchemaUnion.Of(), a new API that lets you express unions of other Schema definitions (often different subclasses of a parent Schema class) that are correctly narrowed in TypeScript and correctly instantiated at runtime based on a discriminating field in the raw loaded CoValue.
17
+ - Updated dependencies [6f745be]
18
+ - Updated dependencies [124bf67]
19
+ - cojson@0.8.23
20
+
3
21
  ## 0.8.21
4
22
 
5
23
  ### Patch Changes
@@ -1,12 +1,14 @@
1
1
  var _a;
2
2
  import { MAX_RECOMMENDED_TX_SIZE, cojsonInternals } from "cojson";
3
3
  import { Account, CoValueBase, ItemsSym, Ref, SchemaInit, co, ensureCoValueLoaded, inspect, isRefEncoded, loadCoValue, subscribeToCoValue, subscribeToExistingCoValue, } from "../internal.js";
4
+ /** @deprecated Use CoFeed instead */
5
+ export { CoFeed as CoStream };
4
6
  /** @category CoValues */
5
7
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
- export class CoStream extends CoValueBase {
8
+ export class CoFeed extends CoValueBase {
7
9
  static Of(item) {
8
10
  var _b, _c;
9
- return _c = class CoStreamOf extends _a {
11
+ return _c = class CoFeedOf extends _a {
10
12
  constructor() {
11
13
  super(...arguments);
12
14
  this[_b] = item;
@@ -123,7 +125,7 @@ export class CoStream extends CoValueBase {
123
125
  return subscribeToExistingCoValue(this, depth, listener);
124
126
  }
125
127
  }
126
- _a = CoStream;
128
+ _a = CoFeed;
127
129
  (() => {
128
130
  _a.prototype._type = "CoStream";
129
131
  })();
@@ -287,8 +289,10 @@ const CoStreamPerSessionProxyHandler = (innerTarget, accessFrom) => ({
287
289
  }
288
290
  },
289
291
  });
292
+ /** @deprecated Use CoFeed instead */
293
+ export { FileStream as BinaryCoStream };
290
294
  /** @category CoValues */
291
- export class BinaryCoStream extends CoValueBase {
295
+ export class FileStream extends CoValueBase {
292
296
  constructor(options) {
293
297
  super();
294
298
  let raw;
@@ -408,4 +412,4 @@ export class BinaryCoStream extends CoValueBase {
408
412
  return subscribeToExistingCoValue(this, depth, listener);
409
413
  }
410
414
  }
411
- //# sourceMappingURL=coStream.js.map
415
+ //# sourceMappingURL=coFeed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coFeed.js","sourceRoot":"","sources":["../../../src/coValues/coFeed.ts"],"names":[],"mappings":"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"}
@@ -222,7 +222,7 @@ export class CoList extends Array {
222
222
  *
223
223
  * You can pass `[]` or for shallowly loading only this CoList, or `[itemDepth]` for recursively loading referenced CoValues.
224
224
  *
225
- * Check out the `load` methods on `CoMap`/`CoList`/`CoStream`/`Group`/`Account` to see which depth structures are valid to nest.
225
+ * Check out the `load` methods on `CoMap`/`CoList`/`CoFeed`/`Group`/`Account` to see which depth structures are valid to nest.
226
226
  *
227
227
  * @example
228
228
  * ```ts
@@ -249,7 +249,7 @@ export class CoList extends Array {
249
249
  *
250
250
  * You can pass `[]` or for shallowly loading only this CoList, or `[itemDepth]` for recursively loading referenced CoValues.
251
251
  *
252
- * Check out the `load` methods on `CoMap`/`CoList`/`CoStream`/`Group`/`Account` to see which depth structures are valid to nest.
252
+ * Check out the `load` methods on `CoMap`/`CoList`/`CoFeed`/`Group`/`Account` to see which depth structures are valid to nest.
253
253
  *
254
254
  * Returns an unsubscribe function that you should call when you no longer need updates.
255
255
  *
@@ -245,7 +245,7 @@ export class CoMap extends CoValueBase {
245
245
  *
246
246
  * You can pass `[]` or `{}` for shallowly loading only this CoMap, or `{ fieldA: depthA, fieldB: depthB }` for recursively loading referenced CoValues.
247
247
  *
248
- * Check out the `load` methods on `CoMap`/`CoList`/`CoStream`/`Group`/`Account` to see which depth structures are valid to nest.
248
+ * Check out the `load` methods on `CoMap`/`CoList`/`CoFeed`/`Group`/`Account` to see which depth structures are valid to nest.
249
249
  *
250
250
  * @example
251
251
  * ```ts
@@ -271,7 +271,7 @@ export class CoMap extends CoValueBase {
271
271
  *
272
272
  * You can pass `[]` or `{}` for shallowly loading only this CoMap, or `{ fieldA: depthA, fieldB: depthB }` for recursively loading referenced CoValues.
273
273
  *
274
- * Check out the `load` methods on `CoMap`/`CoList`/`CoStream`/`Group`/`Account` to see which depth structures are valid to nest.
274
+ * Check out the `load` methods on `CoMap`/`CoList`/`CoFeed`/`Group`/`Account` to see which depth structures are valid to nest.
275
275
  *
276
276
  * Returns an unsubscribe function that you should call when you no longer need updates.
277
277
  *
@@ -1 +1 @@
1
- {"version":3,"file":"deepLoading.js","sourceRoot":"","sources":["../../../src/coValues/deepLoading.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deepLoading.js","sourceRoot":"","sources":["../../../src/coValues/deepLoading.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  var _a;
2
- import { BinaryCoStream, CoMap, co, subscriptionsScopes, } from "../../internal.js";
2
+ import { CoMap, FileStream, co, subscriptionsScopes } from "../../internal.js";
3
3
  /** @category Media */
4
4
  export class ImageDefinition extends CoMap {
5
5
  constructor() {
6
6
  super(...arguments);
7
7
  this.originalSize = co.json();
8
8
  this.placeholderDataURL = co.string;
9
- this[_a] = co.ref(BinaryCoStream);
9
+ this[_a] = co.ref(FileStream);
10
10
  }
11
11
  highestResAvailable(options) {
12
12
  if (!subscriptionsScopes.get(this)) {
@@ -1 +1 @@
1
- {"version":3,"file":"imageDef.js","sourceRoot":"","sources":["../../../../src/coValues/extensions/imageDef.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,cAAc,EACd,KAAK,EACL,EAAE,EACF,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAE3B,sBAAsB;AACtB,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAA1C;;QACE,iBAAY,GAAG,EAAE,CAAC,IAAI,EAAoB,CAAC;QAC3C,uBAAkB,GAAI,EAAE,CAAC,MAAM,CAAC;QAEhC,QAAU,GAAG,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IA8CtC,CAAC;IA3CC,mBAAmB,CAAC,OAEnB;QACC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CACV,yEAAyE,CAC1E,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAC1C,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC;YACtB,CAAC,OAAO,EAAE,QAAQ,KAAK,SAAS;gBAC9B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,CACxB,CAAC;QAE7B,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACxB,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,OAAO,MAAM,GAAG,MAAM,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,IAAI,0BAA6D,CAAC;QAElE,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC;gBACtD,0BAA0B,GAAG,UAAU,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,OAAO,CACL,0BAA0B,IAAI;oBAC5B,GAAG,EAAE,0BAA0B;oBAC/B,MAAM,EAAE,IAAI,CAAC,0BAA0B,CAAE;iBAC1C,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO,CACL,0BAA0B,IAAI;YAC5B,GAAG,EAAE,0BAA0B;YAC/B,MAAM,EAAE,IAAI,CAAC,0BAA0B,CAAE;SAC1C,CACF,CAAC;IACJ,CAAC;CACF;KA9CE,EAAE,CAAC,KAAK"}
1
+ {"version":3,"file":"imageDef.js","sourceRoot":"","sources":["../../../../src/coValues/extensions/imageDef.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE/E,sBAAsB;AACtB,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAA1C;;QACE,iBAAY,GAAG,EAAE,CAAC,IAAI,EAAoB,CAAC;QAC3C,uBAAkB,GAAI,EAAE,CAAC,MAAM,CAAC;QAEhC,QAAU,GAAG,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IA8ClC,CAAC;IA3CC,mBAAmB,CAAC,OAEnB;QACC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CACV,yEAAyE,CAC1E,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAC1C,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC;YACtB,CAAC,OAAO,EAAE,QAAQ,KAAK,SAAS;gBAC9B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,CACxB,CAAC;QAE7B,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACxB,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,OAAO,MAAM,GAAG,MAAM,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,IAAI,0BAA6D,CAAC;QAElE,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC;gBACtD,0BAA0B,GAAG,UAAU,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,OAAO,CACL,0BAA0B,IAAI;oBAC5B,GAAG,EAAE,0BAA0B;oBAC/B,MAAM,EAAE,IAAI,CAAC,0BAA0B,CAAE;iBAC1C,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO,CACL,0BAA0B,IAAI;YAC5B,GAAG,EAAE,0BAA0B;YAC/B,MAAM,EAAE,IAAI,CAAC,0BAA0B,CAAE;SAC1C,CACF,CAAC;IACJ,CAAC;CACF;KA9CE,EAAE,CAAC,KAAK"}
@@ -0,0 +1,95 @@
1
+ import { CoValueBase, } from "../internal.js";
2
+ /**
3
+ * SchemaUnion allows you to create union types of CoValues that can be discriminated at runtime.
4
+ *
5
+ * @categoryDescription Declaration
6
+ * Declare your union types by extending `SchemaUnion.Of(...)` and passing a discriminator function
7
+ * that determines which concrete type to use based on the raw data.
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * import { SchemaUnion, CoMap } from "jazz-tools";
12
+ *
13
+ * class BaseWidget extends CoMap {
14
+ * type = co.string;
15
+ * }
16
+ *
17
+ * class ButtonWidget extends BaseWidget {
18
+ * type = co.literal("button");
19
+ * label = co.string;
20
+ * }
21
+ *
22
+ * class SliderWidget extends BaseWidget {
23
+ * type = co.literal("slider");
24
+ * min = co.number;
25
+ * max = co.number;
26
+ * }
27
+ *
28
+ * const WidgetUnion = SchemaUnion.Of<BaseWidget>((raw) => {
29
+ * switch (raw.get("type")) {
30
+ * case "button": return ButtonWidget;
31
+ * case "slider": return SliderWidget;
32
+ * default: throw new Error("Unknown widget type");
33
+ * }
34
+ * });
35
+ * ```
36
+ *
37
+ * @categoryDescription Loading
38
+ * When loading a SchemaUnion, the correct subclass will be instantiated based on the discriminator.
39
+ * You can narrow the returned instance to a subclass by using `instanceof` like so:
40
+ *
41
+ * @example
42
+ * ```ts
43
+ * const widget = await loadCoValue(WidgetUnion, id, me, {});
44
+ * if (widget instanceof ButtonWidget) {
45
+ * console.log(widget.label);
46
+ * } else if (widget instanceof SliderWidget) {
47
+ * console.log(widget.min, widget.max);
48
+ * }
49
+ * ```
50
+ *
51
+ * @category CoValues
52
+ */
53
+ export class SchemaUnion extends CoValueBase {
54
+ /**
55
+ * Create a new union type from a discriminator function.
56
+ *
57
+ * The discriminator function receives the raw data and should return the appropriate
58
+ * concrete class to use for that data.
59
+ *
60
+ * @param discriminator - Function that determines which concrete type to use
61
+ * @returns A new class that can create/load instances of the union type
62
+ *
63
+ * @example
64
+ * ```ts
65
+ * const WidgetUnion = SchemaUnion.Of<BaseWidget>((raw) => {
66
+ * switch (raw.get("type")) {
67
+ * case "button": return ButtonWidget;
68
+ * case "slider": return SliderWidget;
69
+ * default: throw new Error("Unknown widget type");
70
+ * }
71
+ * });
72
+ * ```
73
+ *
74
+ * @category Creation
75
+ */
76
+ static Of(discriminator) {
77
+ return class SchemaUnionClass extends SchemaUnion {
78
+ static fromRaw(raw) {
79
+ const ResolvedClass = discriminator(raw);
80
+ return ResolvedClass.fromRaw(raw);
81
+ }
82
+ };
83
+ }
84
+ /**
85
+ * Create an instance from raw data. This is called internally and should not be used directly.
86
+ * Use {@link SchemaUnion.Of} to create a union type instead.
87
+ *
88
+ * @internal
89
+ */
90
+ // @ts-ignore
91
+ static fromRaw(raw) {
92
+ throw new Error("Not implemented");
93
+ }
94
+ }
95
+ //# sourceMappingURL=schemaUnion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemaUnion.js","sourceRoot":"","sources":["../../../src/coValues/schemaUnion.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,GAGZ,MAAM,gBAAgB,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,MAAM,OAAgB,WAAY,SAAQ,WAAW;IACnD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,MAAM,CAAC,EAAE,CACP,aAAsE;QAEtE,OAAO,MAAM,gBAAiB,SAAQ,WAAW;YAC/C,MAAM,CAAU,OAAO,CAErB,GAAc;gBAEd,MAAM,aAAa,GAAG,aAAa,CACjC,GAAgB,CACiC,CAAC;gBACpD,OAAO,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACpC,CAAC;SACiD,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACH,aAAa;IACb,MAAM,CAAC,OAAO,CAA2C,GAAc;QACrE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
1
  export { Encoders, co } from "./internal.js";
2
- export { Account, BinaryCoStream, CoList, CoMap, CoStream, CoValueBase, Group, ImageDefinition, Profile, isControlledAccount, } from "./internal.js";
2
+ export { Account, FileStream, BinaryCoStream, CoList, CoMap, CoFeed, CoStream, CoValueBase, Group, ImageDefinition, Profile, isControlledAccount, SchemaUnion, } from "./internal.js";
3
3
  export { createCoValueObservable, loadCoValue, subscribeToCoValue, } from "./internal.js";
4
4
  export { AnonymousJazzAgent, createAnonymousJazzContext, createJazzContext, ephemeralCredentialsAuth, fixedCredentialsAuth, randomSessionProvider, } from "./internal.js";
5
5
  //# sourceMappingURL=exports.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exports.js","sourceRoot":"","sources":["../../src/exports.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EACL,OAAO,EACP,cAAc,EACd,MAAM,EACN,KAAK,EACL,QAAQ,EACR,WAAW,EACX,KAAK,EACL,eAAe,EACf,OAAO,EACP,mBAAmB,GAIpB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,uBAAuB,EACvB,WAAW,EACX,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,iBAAiB,EACjB,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,GAItB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"exports.js","sourceRoot":"","sources":["../../src/exports.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EACL,OAAO,EACP,UAAU,EACV,cAAc,EACd,MAAM,EACN,KAAK,EACL,MAAM,EACN,QAAQ,EACR,WAAW,EACX,KAAK,EACL,eAAe,EACf,OAAO,EACP,mBAAmB,EACnB,WAAW,GAIZ,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,uBAAuB,EACvB,WAAW,EACX,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,iBAAiB,EACjB,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,GAItB,MAAM,eAAe,CAAC"}
@@ -4,7 +4,8 @@ export * from "./coValues/interfaces.js";
4
4
  export * from "./coValues/coMap.js";
5
5
  export * from "./coValues/account.js";
6
6
  export * from "./coValues/coList.js";
7
- export * from "./coValues/coStream.js";
7
+ export * from "./coValues/coFeed.js";
8
+ export * from "./coValues/schemaUnion.js";
8
9
  export * from "./coValues/group.js";
9
10
  export * from "./implementation/errors.js";
10
11
  export * from "./implementation/refs.js";
@@ -1 +1 @@
1
- {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../src/internal.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AAEzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uCAAuC,CAAC;AACtD,cAAc,2BAA2B,CAAC;AAE1C,cAAc,mCAAmC,CAAC;AAElD,cAAc,mCAAmC,CAAC;AAElD,OAAO,wCAAwC,CAAC"}
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../src/internal.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AAEzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AAEpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uCAAuC,CAAC;AACtD,cAAc,2BAA2B,CAAC;AAE1C,cAAc,mCAAmC,CAAC;AAElD,cAAc,mCAAmC,CAAC;AAElD,OAAO,wCAAwC,CAAC"}
@@ -1,12 +1,14 @@
1
1
  var _a;
2
2
  import { MAX_RECOMMENDED_TX_SIZE, cojsonInternals } from "cojson";
3
3
  import { Account, CoValueBase, ItemsSym, Ref, SchemaInit, co, ensureCoValueLoaded, inspect, isRefEncoded, loadCoValue, subscribeToCoValue, subscribeToExistingCoValue, } from "../internal.js";
4
+ /** @deprecated Use CoFeed instead */
5
+ export { CoFeed as CoStream };
4
6
  /** @category CoValues */
5
7
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
- export class CoStream extends CoValueBase {
8
+ export class CoFeed extends CoValueBase {
7
9
  static Of(item) {
8
10
  var _b, _c;
9
- return _c = class CoStreamOf extends _a {
11
+ return _c = class CoFeedOf extends _a {
10
12
  constructor() {
11
13
  super(...arguments);
12
14
  this[_b] = item;
@@ -123,7 +125,7 @@ export class CoStream extends CoValueBase {
123
125
  return subscribeToExistingCoValue(this, depth, listener);
124
126
  }
125
127
  }
126
- _a = CoStream;
128
+ _a = CoFeed;
127
129
  (() => {
128
130
  _a.prototype._type = "CoStream";
129
131
  })();
@@ -287,8 +289,10 @@ const CoStreamPerSessionProxyHandler = (innerTarget, accessFrom) => ({
287
289
  }
288
290
  },
289
291
  });
292
+ /** @deprecated Use CoFeed instead */
293
+ export { FileStream as BinaryCoStream };
290
294
  /** @category CoValues */
291
- export class BinaryCoStream extends CoValueBase {
295
+ export class FileStream extends CoValueBase {
292
296
  constructor(options) {
293
297
  super();
294
298
  let raw;
@@ -408,4 +412,4 @@ export class BinaryCoStream extends CoValueBase {
408
412
  return subscribeToExistingCoValue(this, depth, listener);
409
413
  }
410
414
  }
411
- //# sourceMappingURL=coStream.js.map
415
+ //# sourceMappingURL=coFeed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coFeed.js","sourceRoot":"","sources":["../../../src/coValues/coFeed.ts"],"names":[],"mappings":";AAWA,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAclE,OAAO,EACL,OAAO,EACP,WAAW,EACX,QAAQ,EACR,GAAG,EACH,UAAU,EACV,EAAE,EACF,mBAAmB,EACnB,OAAO,EACP,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AAoBxB,qCAAqC;AACrC,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,CAAC;AAE9B,yBAAyB;AACzB,8DAA8D;AAC9D,MAAM,OAAO,MAAmB,SAAQ,WAAW;IACjD,MAAM,CAAC,EAAE,CAAO,IAAsB;;QACpC,YAAO,MAAM,QAAS,SAAQ,EAAY;gBAAnC;;oBACL,QAAU,GAAG,IAAI,CAAC;gBACpB,CAAC;aAAA;iBADE,EAAE,CAAC,KAAK;eACT;IACJ,CAAC;IAaD,IAAI,OAAO;QAGT,OAAQ,IAAI,CAAC,WAA6B,CAAC,OAAO,CAAC;IACrD,CAAC;IAID,IAAI,IAAI;QACN,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAID,IAAI,gBAAgB;QAClB,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,SAAU,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,YACE,OAE4B;QAE5B,KAAK,EAAE,CAAC;QAER,IAAI,OAAO,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;YACpC,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE;gBAC5B,EAAE,EAAE;oBACF,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE;oBACzB,UAAU,EAAE,KAAK;iBAClB;gBACD,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;aACpD,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,oBAA0C,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,CAAC,MAAM,CAEX,IAAyD,EACzD,OAAmC;QAEnC,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1D,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QAE9C,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE;YAChC,EAAE,EAAE;gBACF,KAAK,EAAE,GAAG,CAAC,EAAE;gBACb,UAAU,EAAE,KAAK;aAClB;YACD,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE;SACxC,CAAC,CAAC;QAEH,IAAI,IAAI,EAAE,CAAC;YACT,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,GAAG,KAAa;QACnB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAEO,QAAQ,CAAC,IAAU;QACzB,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAW,CAAC;QAExD,IAAI,cAAc,KAAK,MAAM,EAAE,CAAC;YAC9B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAiB,CAAC,CAAC;QACpC,CAAC;aAAM,IAAI,SAAS,IAAI,cAAc,EAAE,CAAC;YACvC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACtD,CAAC;aAAM,IAAI,YAAY,CAAC,cAAc,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAE,IAA2B,CAAC,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,MAAM;QAMJ,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAW,CAAC;QACxD,MAAM,MAAM,GACV,cAAc,KAAK,MAAM;YACvB,CAAC,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC;YACnB,CAAC,CAAC,SAAS,IAAI,cAAc;gBAC3B,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM;gBAC/B,CAAC,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,IAAK,CAAa,CAAC,EAAE,CAAC;QAE/C,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG,MAAM,CAAC,WAAW,CACnB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;gBAC7C,OAAO;gBACP,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;aACpB,CAAC,CACH;YACD,EAAE,EAAE,MAAM,CAAC,WAAW,CACpB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;gBACxD,OAAO;gBACP,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;aACpB,CAAC,CACH;SACF,CAAC;IACJ,CAAC;IAED,CAAC,OAAO,CAAC;QAMP,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,MAAM,CAGX,GAA2C;QAE3C,IAAI,CAAC,OAAO,KAAK,EAAE,CAAC;QACpB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACnC,CAAC;IAED,uCAAuC;IACvC,MAAM,CAAC,IAAI,CAET,EAAS,EACT,EAAW,EACX,KAA0B;QAE1B,OAAO,WAAW,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,uCAAuC;IACvC,MAAM,CAAC,SAAS,CAEd,EAAS,EACT,EAAW,EACX,KAA0B,EAC1B,QAAiD;QAEjD,OAAO,kBAAkB,CAAW,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACrE,CAAC;IAED,uCAAuC;IACvC,YAAY,CAEV,KAA0B;QAE1B,OAAO,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,uCAAuC;IACvC,SAAS,CAEP,KAA0B,EAC1B,QAAiD;QAEjD,OAAO,0BAA0B,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;CACF;;AAtLC;IACE,GAAK,SAAS,CAAC,KAAK,GAAG,UAAU,CAAC;AACpC,CAAC,GAAA,CAAA;AAsLH,SAAS,iBAAiB,CACxB,UAAmB,EACnB,QAKC,EACD,QAAsC,EACtC,SAAkC,EAClC,SAAiB;IAEjB,OAAO;QACL,IAAI,KAAK;YAGP,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;gBACzB,OAAO,QAAQ,CAAC,KAER,CAAC;YACX,CAAC;iBAAM,IAAI,SAAS,IAAI,SAAS,EAAE,CAAC;gBAClC,OAAO,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAClD,CAAC;iBAAM,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;gBACnC,OAAO,IAAI,CAAC,GAAG,EAAE,UAAU,CACzB,UAAU,EACV,QAAQ,CAAC,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,SAAS,GAAG,QAAQ,CAAC,EAAE,CAAC,OAAO,GAAG,QAAQ,CACC,CAAC;YAC1E,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QACD,IAAI,GAAG;YAGL,IAAI,SAAS,KAAK,MAAM,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;gBACpD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;gBAC7B,OAAO,IAAI,GAAG,CACZ,KAA+B,EAC/B,QAAQ,EACR,SAAS,CAC4D,CAAC;YAC1E,CAAC;iBAAM,CAAC;gBACN,OAAO,SAAkB,CAAC;YAC5B,CAAC;QACH,CAAC;QACD,IAAI,EAAE;YACJ,OAAO,CACL,SAAS;gBACT,IAAI,GAAG,CAAU,SAAmC,EAAE,QAAQ,EAAE;oBAC9D,GAAG,EAAE,OAAO;oBACZ,QAAQ,EAAE,KAAK;iBAChB,CAAC,EAAE,UAAU,CACZ,UAAU,EACV,QAAQ,CAAC,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,SAAS,GAAG,QAAQ,CAAC,EAAE,CAAC,OAAO,GAAG,KAAK,CAClE,CACF,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,QAAQ,CAAC,EAAE;QACnB,EAAE,EAAE,QAAQ,CAAC,EAAE;KAChB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAyB;IACxD,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ;QACvB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAmB,CAAC,CAAC;YAE7D,IAAI,CAAC,QAAQ;gBAAE,OAAO;YACtB,MAAM,KAAK,GAAG,iBAAiB,CAC7B,QAAQ,EACR,QAAQ,EACR,MAAM,CAAC,SAAS,EAChB,GAA6B,EAC7B,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CACzB,CAAC;YAEF,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE;gBAClC,GAAG,EAAE,GAAG,EAAE;oBACR,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAmB,CAAC,CAAC;oBAC/D,OAAO,CAAC,QAAQ,CAAC;wBACf,OAAO,IAAI,EAAE,CAAC;4BACZ,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC;4BACtC,IAAI,QAAQ,CAAC,IAAI;gCAAE,OAAO;4BAC1B,MAAM,iBAAiB,CACrB,QAAQ,EACR,QAAQ,CAAC,KAAK,EACd,MAAM,CAAC,SAAS,EAChB,GAA6B,EAC7B,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CACzB,CAAC;wBACJ,CAAC;wBACD,8DAA8D;oBAChE,CAAC,CAAC,EAAqD,CAAC;gBAC1D,CAAC;aACF,CAAC,CAAC;YAEH,OAAO,KAAK,CAAC;QACf,CAAC;aAAM,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;YAChC,OAAO,IAAI,KAAK,CAAC,EAAE,EAAE,8BAA8B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IACD,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ;QAC9B,IAAI,GAAG,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;YACxE,MAAM,CAAC,WAA6B,CAAC,OAAO,KAAK,EAAE,CAAC;YACpD,MAAM,CAAC,WAA6B,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACrD,KAAK,CAAC,UAAU,CAAC,CAAC;YACpB,OAAO,IAAI,CAAC;QACd,CAAC;aAAM,CAAC;YACN,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IACD,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU;QACpC,IACE,UAAU,CAAC,KAAK;YAChB,GAAG,KAAK,QAAQ;YAChB,OAAO,UAAU,CAAC,KAAK,KAAK,QAAQ;YACpC,UAAU,IAAI,UAAU,CAAC,KAAK,EAC9B,CAAC;YACA,MAAM,CAAC,WAA6B,CAAC,OAAO,KAAK,EAAE,CAAC;YACpD,MAAM,CAAC,WAA6B,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACrD,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;aAAM,CAAC;YACN,OAAO,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IACD,OAAO,CAAC,MAAM;QACZ,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAErC,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YAC/C,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IACD,wBAAwB,CAAC,MAAM,EAAE,GAAG;QAClC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,OAAO;gBACL,YAAY,EAAE,IAAI;gBAClB,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,KAAK;aAChB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,OAAO,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;CACF,CAAC;AAEF,MAAM,8BAA8B,GAAG,CACrC,WAAmB,EACnB,UAAkB,EACmB,EAAE,CAAC,CAAC;IACzC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ;QACxB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACvD,MAAM,SAAS,GAAG,GAAgB,CAAC;YACnC,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAExD,IAAI,CAAC,QAAQ;gBAAE,OAAO;YACtB,MAAM,EAAE,GAAG,eAAe,CAAC,6BAA6B,CAAC,SAAS,CAAC,CAAC;YAEpE,MAAM,KAAK,GAAG,iBAAiB,CAC7B,UAAU,EACV,QAAQ,EACR,WAAW,CAAC,SAAS,EACrB,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC7B,CAAC,CAAE,EAA6B;gBAChC,CAAC,CAAC,SAAS,EACb,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAC9B,CAAC;YAEF,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE;gBAClC,GAAG,EAAE,GAAG,EAAE;oBACR,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBAC1D,OAAO,CAAC,QAAQ,CAAC;wBACf,OAAO,IAAI,EAAE,CAAC;4BACZ,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC;4BACtC,IAAI,QAAQ,CAAC,IAAI;gCAAE,OAAO;4BAC1B,MAAM,iBAAiB,CACrB,UAAU,EACV,QAAQ,CAAC,KAAK,EACd,WAAW,CAAC,SAAS,EACrB,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC;gCAC7B,CAAC,CAAE,EAA6B;gCAChC,CAAC,CAAC,SAAS,EACb,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAC9B,CAAC;wBACJ,CAAC;wBACD,8DAA8D;oBAChE,CAAC,CAAC,EAAqD,CAAC;gBAC1D,CAAC;aACF,CAAC,CAAC;YAEH,OAAO,KAAK,CAAC;QACf,CAAC;aAAM,CAAC;YACN,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IACD,OAAO;QACL,OAAO,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;IACrC,CAAC;IACD,wBAAwB,CAAC,MAAM,EAAE,GAAG;QAClC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACrD,OAAO;gBACL,YAAY,EAAE,IAAI;gBAClB,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,KAAK;aAChB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,OAAO,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;CACF,CAAC,CAAC;AAEH,qCAAqC;AACrC,OAAO,EAAE,UAAU,IAAI,cAAc,EAAE,CAAC;AAExC,yBAAyB;AACzB,MAAM,OAAO,UAAW,SAAQ,WAAW;IAKzC,YACE,OAMK;QAEL,KAAK,EAAE,CAAC;QAER,IAAI,GAAsB,CAAC;QAE3B,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;YACzB,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;YACpC,GAAG,GAAG,QAAQ,CAAC,kBAAkB,EAAE,CAAC;QACtC,CAAC;QAED,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE;YAC5B,EAAE,EAAE;gBACF,KAAK,EAAE,GAAG,CAAC,EAAE;gBACb,UAAU,EAAE,KAAK;aAClB;YACD,KAAK,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,KAAK,EAAE;YACrD,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE;SACxC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,MAAM,CAEX,OAAmC;QAEnC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED,SAAS,CAAC,OAET;QAGC,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IAC7D,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,OAAyB;QAC7B,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,CAAC,IAAgB;QACnB,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,GAAG;QACD,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,OAAuC;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;YAC5B,eAAe,EAAE,OAAO,EAAE,eAAe;SAC1C,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,aAAa;QACb,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,UAAU,CACrB,EAAkB,EAClB,EAAW,EACX,OAEC;QAED,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAEzC;;;WAGG;QACH,IAAI,CAAC,OAAO,EAAE,eAAe,IAAI,CAAC,MAAM,EAAE,mBAAmB,EAAE,EAAE,CAAC;YAChE,MAAM,GAAG,MAAM,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,EAAE;gBACjD,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;oBACjE,IAAI,KAAK,CAAC,mBAAmB,EAAE,EAAE,CAAC;wBAChC,WAAW,EAAE,CAAC;wBACd,OAAO,CAAC,KAAK,CAAC,CAAC;oBACjB,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,EAAE,MAAM,CAAC;YACpB,eAAe,EAAE,OAAO,EAAE,eAAe;SAC1C,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,cAAc,CACzB,IAAiB,EACjB,OAGC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAErD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEzB,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QACtD,MAAM,CAAC,KAAK,CAAC;YACX,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,cAAc,EAAE,IAAI,CAAC,IAAI;YACzB,QAAQ,EAAE,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;SACvD,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,uBAAuB,CAAC;QAE1C,IAAI,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEpC,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,SAAS,EAAE,CAAC;YACtD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC;YAE9C,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,GAAG,GAAG,EAAE,CAAC;gBAC1C,OAAO,CAAC,UAAU,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;gBACxC,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAClC,CAAC;YAED,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;QACD,MAAM,CAAC,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,OAAO,CAAC,KAAK,CACX,oCAAoC,EACpC,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,EACpB,wBAAwB,EACxB,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CACrD,CAAC;QACF,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;QAExB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM;QASJ,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG,IAAI,CAAC,SAAS,EAAE;SACpB,CAAC;IACJ,CAAC;IAED,CAAC,OAAO,CAAC;QACP,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;IAED,uCAAuC;IACvC,MAAM,CAAC,IAAI,CAET,EAAS,EACT,EAAW,EACX,KAA0B;QAE1B,OAAO,WAAW,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,uCAAuC;IACvC,MAAM,CAAC,SAAS,CAEd,EAAS,EACT,EAAW,EACX,KAA0B,EAC1B,QAAiD;QAEjD,OAAO,kBAAkB,CAAW,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACrE,CAAC;IAED,uCAAuC;IACvC,YAAY,CAEV,KAA0B;QAE1B,OAAO,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,uCAAuC;IACvC,SAAS,CAEP,KAA0B,EAC1B,QAAiD;QAEjD,OAAO,0BAA0B,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;CACF"}
@@ -222,7 +222,7 @@ export class CoList extends Array {
222
222
  *
223
223
  * You can pass `[]` or for shallowly loading only this CoList, or `[itemDepth]` for recursively loading referenced CoValues.
224
224
  *
225
- * Check out the `load` methods on `CoMap`/`CoList`/`CoStream`/`Group`/`Account` to see which depth structures are valid to nest.
225
+ * Check out the `load` methods on `CoMap`/`CoList`/`CoFeed`/`Group`/`Account` to see which depth structures are valid to nest.
226
226
  *
227
227
  * @example
228
228
  * ```ts
@@ -249,7 +249,7 @@ export class CoList extends Array {
249
249
  *
250
250
  * You can pass `[]` or for shallowly loading only this CoList, or `[itemDepth]` for recursively loading referenced CoValues.
251
251
  *
252
- * Check out the `load` methods on `CoMap`/`CoList`/`CoStream`/`Group`/`Account` to see which depth structures are valid to nest.
252
+ * Check out the `load` methods on `CoMap`/`CoList`/`CoFeed`/`Group`/`Account` to see which depth structures are valid to nest.
253
253
  *
254
254
  * Returns an unsubscribe function that you should call when you no longer need updates.
255
255
  *
@@ -245,7 +245,7 @@ export class CoMap extends CoValueBase {
245
245
  *
246
246
  * You can pass `[]` or `{}` for shallowly loading only this CoMap, or `{ fieldA: depthA, fieldB: depthB }` for recursively loading referenced CoValues.
247
247
  *
248
- * Check out the `load` methods on `CoMap`/`CoList`/`CoStream`/`Group`/`Account` to see which depth structures are valid to nest.
248
+ * Check out the `load` methods on `CoMap`/`CoList`/`CoFeed`/`Group`/`Account` to see which depth structures are valid to nest.
249
249
  *
250
250
  * @example
251
251
  * ```ts
@@ -271,7 +271,7 @@ export class CoMap extends CoValueBase {
271
271
  *
272
272
  * You can pass `[]` or `{}` for shallowly loading only this CoMap, or `{ fieldA: depthA, fieldB: depthB }` for recursively loading referenced CoValues.
273
273
  *
274
- * Check out the `load` methods on `CoMap`/`CoList`/`CoStream`/`Group`/`Account` to see which depth structures are valid to nest.
274
+ * Check out the `load` methods on `CoMap`/`CoList`/`CoFeed`/`Group`/`Account` to see which depth structures are valid to nest.
275
275
  *
276
276
  * Returns an unsubscribe function that you should call when you no longer need updates.
277
277
  *
@@ -1 +1 @@
1
- {"version":3,"file":"deepLoading.js","sourceRoot":"","sources":["../../../src/coValues/deepLoading.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deepLoading.js","sourceRoot":"","sources":["../../../src/coValues/deepLoading.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  var _a;
2
- import { BinaryCoStream, CoMap, co, subscriptionsScopes, } from "../../internal.js";
2
+ import { CoMap, FileStream, co, subscriptionsScopes } from "../../internal.js";
3
3
  /** @category Media */
4
4
  export class ImageDefinition extends CoMap {
5
5
  constructor() {
6
6
  super(...arguments);
7
7
  this.originalSize = co.json();
8
8
  this.placeholderDataURL = co.string;
9
- this[_a] = co.ref(BinaryCoStream);
9
+ this[_a] = co.ref(FileStream);
10
10
  }
11
11
  highestResAvailable(options) {
12
12
  if (!subscriptionsScopes.get(this)) {
@@ -1 +1 @@
1
- {"version":3,"file":"imageDef.js","sourceRoot":"","sources":["../../../../src/coValues/extensions/imageDef.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,cAAc,EACd,KAAK,EACL,EAAE,EACF,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAE3B,sBAAsB;AACtB,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAA1C;;QACE,iBAAY,GAAG,EAAE,CAAC,IAAI,EAAoB,CAAC;QAC3C,uBAAkB,GAAI,EAAE,CAAC,MAAM,CAAC;QAEhC,QAAU,GAAG,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IA8CtC,CAAC;IA3CC,mBAAmB,CAAC,OAEnB;QACC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CACV,yEAAyE,CAC1E,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAC1C,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC;YACtB,CAAC,OAAO,EAAE,QAAQ,KAAK,SAAS;gBAC9B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,CACxB,CAAC;QAE7B,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACxB,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,OAAO,MAAM,GAAG,MAAM,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,IAAI,0BAA6D,CAAC;QAElE,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC;gBACtD,0BAA0B,GAAG,UAAU,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,OAAO,CACL,0BAA0B,IAAI;oBAC5B,GAAG,EAAE,0BAA0B;oBAC/B,MAAM,EAAE,IAAI,CAAC,0BAA0B,CAAE;iBAC1C,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO,CACL,0BAA0B,IAAI;YAC5B,GAAG,EAAE,0BAA0B;YAC/B,MAAM,EAAE,IAAI,CAAC,0BAA0B,CAAE;SAC1C,CACF,CAAC;IACJ,CAAC;CACF;KA9CE,EAAE,CAAC,KAAK"}
1
+ {"version":3,"file":"imageDef.js","sourceRoot":"","sources":["../../../../src/coValues/extensions/imageDef.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE/E,sBAAsB;AACtB,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAA1C;;QACE,iBAAY,GAAG,EAAE,CAAC,IAAI,EAAoB,CAAC;QAC3C,uBAAkB,GAAI,EAAE,CAAC,MAAM,CAAC;QAEhC,QAAU,GAAG,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IA8ClC,CAAC;IA3CC,mBAAmB,CAAC,OAEnB;QACC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CACV,yEAAyE,CAC1E,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAC1C,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC;YACtB,CAAC,OAAO,EAAE,QAAQ,KAAK,SAAS;gBAC9B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,CACxB,CAAC;QAE7B,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACxB,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,OAAO,MAAM,GAAG,MAAM,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,IAAI,0BAA6D,CAAC;QAElE,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC;gBACtD,0BAA0B,GAAG,UAAU,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,OAAO,CACL,0BAA0B,IAAI;oBAC5B,GAAG,EAAE,0BAA0B;oBAC/B,MAAM,EAAE,IAAI,CAAC,0BAA0B,CAAE;iBAC1C,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO,CACL,0BAA0B,IAAI;YAC5B,GAAG,EAAE,0BAA0B;YAC/B,MAAM,EAAE,IAAI,CAAC,0BAA0B,CAAE;SAC1C,CACF,CAAC;IACJ,CAAC;CACF;KA9CE,EAAE,CAAC,KAAK"}
@@ -0,0 +1,95 @@
1
+ import { CoValueBase, } from "../internal.js";
2
+ /**
3
+ * SchemaUnion allows you to create union types of CoValues that can be discriminated at runtime.
4
+ *
5
+ * @categoryDescription Declaration
6
+ * Declare your union types by extending `SchemaUnion.Of(...)` and passing a discriminator function
7
+ * that determines which concrete type to use based on the raw data.
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * import { SchemaUnion, CoMap } from "jazz-tools";
12
+ *
13
+ * class BaseWidget extends CoMap {
14
+ * type = co.string;
15
+ * }
16
+ *
17
+ * class ButtonWidget extends BaseWidget {
18
+ * type = co.literal("button");
19
+ * label = co.string;
20
+ * }
21
+ *
22
+ * class SliderWidget extends BaseWidget {
23
+ * type = co.literal("slider");
24
+ * min = co.number;
25
+ * max = co.number;
26
+ * }
27
+ *
28
+ * const WidgetUnion = SchemaUnion.Of<BaseWidget>((raw) => {
29
+ * switch (raw.get("type")) {
30
+ * case "button": return ButtonWidget;
31
+ * case "slider": return SliderWidget;
32
+ * default: throw new Error("Unknown widget type");
33
+ * }
34
+ * });
35
+ * ```
36
+ *
37
+ * @categoryDescription Loading
38
+ * When loading a SchemaUnion, the correct subclass will be instantiated based on the discriminator.
39
+ * You can narrow the returned instance to a subclass by using `instanceof` like so:
40
+ *
41
+ * @example
42
+ * ```ts
43
+ * const widget = await loadCoValue(WidgetUnion, id, me, {});
44
+ * if (widget instanceof ButtonWidget) {
45
+ * console.log(widget.label);
46
+ * } else if (widget instanceof SliderWidget) {
47
+ * console.log(widget.min, widget.max);
48
+ * }
49
+ * ```
50
+ *
51
+ * @category CoValues
52
+ */
53
+ export class SchemaUnion extends CoValueBase {
54
+ /**
55
+ * Create a new union type from a discriminator function.
56
+ *
57
+ * The discriminator function receives the raw data and should return the appropriate
58
+ * concrete class to use for that data.
59
+ *
60
+ * @param discriminator - Function that determines which concrete type to use
61
+ * @returns A new class that can create/load instances of the union type
62
+ *
63
+ * @example
64
+ * ```ts
65
+ * const WidgetUnion = SchemaUnion.Of<BaseWidget>((raw) => {
66
+ * switch (raw.get("type")) {
67
+ * case "button": return ButtonWidget;
68
+ * case "slider": return SliderWidget;
69
+ * default: throw new Error("Unknown widget type");
70
+ * }
71
+ * });
72
+ * ```
73
+ *
74
+ * @category Creation
75
+ */
76
+ static Of(discriminator) {
77
+ return class SchemaUnionClass extends SchemaUnion {
78
+ static fromRaw(raw) {
79
+ const ResolvedClass = discriminator(raw);
80
+ return ResolvedClass.fromRaw(raw);
81
+ }
82
+ };
83
+ }
84
+ /**
85
+ * Create an instance from raw data. This is called internally and should not be used directly.
86
+ * Use {@link SchemaUnion.Of} to create a union type instead.
87
+ *
88
+ * @internal
89
+ */
90
+ // @ts-ignore
91
+ static fromRaw(raw) {
92
+ throw new Error("Not implemented");
93
+ }
94
+ }
95
+ //# sourceMappingURL=schemaUnion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemaUnion.js","sourceRoot":"","sources":["../../../src/coValues/schemaUnion.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,GAGZ,MAAM,gBAAgB,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,MAAM,OAAgB,WAAY,SAAQ,WAAW;IACnD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,MAAM,CAAC,EAAE,CACP,aAAsE;QAEtE,OAAO,MAAM,gBAAiB,SAAQ,WAAW;YAC/C,MAAM,CAAU,OAAO,CAErB,GAAc;gBAEd,MAAM,aAAa,GAAG,aAAa,CACjC,GAAgB,CACiC,CAAC;gBACpD,OAAO,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACpC,CAAC;SACiD,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACH,aAAa;IACb,MAAM,CAAC,OAAO,CAA2C,GAAc;QACrE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
1
  export { Encoders, co } from "./internal.js";
2
- export { Account, BinaryCoStream, CoList, CoMap, CoStream, CoValueBase, Group, ImageDefinition, Profile, isControlledAccount, } from "./internal.js";
2
+ export { Account, FileStream, BinaryCoStream, CoList, CoMap, CoFeed, CoStream, CoValueBase, Group, ImageDefinition, Profile, isControlledAccount, SchemaUnion, } from "./internal.js";
3
3
  export { createCoValueObservable, loadCoValue, subscribeToCoValue, } from "./internal.js";
4
4
  export { AnonymousJazzAgent, createAnonymousJazzContext, createJazzContext, ephemeralCredentialsAuth, fixedCredentialsAuth, randomSessionProvider, } from "./internal.js";
5
5
  //# sourceMappingURL=exports.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exports.js","sourceRoot":"","sources":["../../src/exports.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EACL,OAAO,EACP,cAAc,EACd,MAAM,EACN,KAAK,EACL,QAAQ,EACR,WAAW,EACX,KAAK,EACL,eAAe,EACf,OAAO,EACP,mBAAmB,GAIpB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,uBAAuB,EACvB,WAAW,EACX,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,iBAAiB,EACjB,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,GAItB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"exports.js","sourceRoot":"","sources":["../../src/exports.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EACL,OAAO,EACP,UAAU,EACV,cAAc,EACd,MAAM,EACN,KAAK,EACL,MAAM,EACN,QAAQ,EACR,WAAW,EACX,KAAK,EACL,eAAe,EACf,OAAO,EACP,mBAAmB,EACnB,WAAW,GAIZ,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,uBAAuB,EACvB,WAAW,EACX,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,iBAAiB,EACjB,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,GAItB,MAAM,eAAe,CAAC"}
@@ -4,7 +4,8 @@ export * from "./coValues/interfaces.js";
4
4
  export * from "./coValues/coMap.js";
5
5
  export * from "./coValues/account.js";
6
6
  export * from "./coValues/coList.js";
7
- export * from "./coValues/coStream.js";
7
+ export * from "./coValues/coFeed.js";
8
+ export * from "./coValues/schemaUnion.js";
8
9
  export * from "./coValues/group.js";
9
10
  export * from "./implementation/errors.js";
10
11
  export * from "./implementation/refs.js";
@@ -1 +1 @@
1
- {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../src/internal.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AAEzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uCAAuC,CAAC;AACtD,cAAc,2BAA2B,CAAC;AAE1C,cAAc,mCAAmC,CAAC;AAElD,cAAc,mCAAmC,CAAC;AAElD,OAAO,wCAAwC,CAAC"}
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../src/internal.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AAEzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AAEpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uCAAuC,CAAC;AACtD,cAAc,2BAA2B,CAAC;AAE1C,cAAc,mCAAmC,CAAC;AAElD,cAAc,mCAAmC,CAAC;AAElD,OAAO,wCAAwC,CAAC"}
package/package.json CHANGED
@@ -19,10 +19,10 @@
19
19
  },
20
20
  "type": "module",
21
21
  "license": "MIT",
22
- "version": "0.8.21",
22
+ "version": "0.8.27",
23
23
  "dependencies": {
24
24
  "fast-check": "^3.17.2",
25
- "cojson": "0.8.21"
25
+ "cojson": "0.8.27"
26
26
  },
27
27
  "devDependencies": {
28
28
  "typescript": "^5.3.3",