jazz-tools 0.7.3 → 0.7.8

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- {"version":3,"file":"coMap.test.js","sourceRoot":"","sources":["../../src/tests/coMap.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coMap.test.js","sourceRoot":"","sources":["../../src/tests/coMap.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "types": "./src/index.ts",
6
6
  "type": "module",
7
7
  "license": "MIT",
8
- "version": "0.7.3",
8
+ "version": "0.7.8",
9
9
  "dependencies": {
10
10
  "@effect/schema": "^0.66.16",
11
11
  "effect": "^3.1.5",
@@ -1,4 +1,4 @@
1
- import { LocalNode } from "cojson";
1
+ import { LocalNode, cojsonInternals } from "cojson";
2
2
  import type {
3
3
  AgentSecret,
4
4
  CoID,
@@ -214,6 +214,29 @@ export class Account extends CoValueBase implements CoValue {
214
214
  return this.fromNode(node) as A;
215
215
  }
216
216
 
217
+ static createAs<A extends Account>(
218
+ this: CoValueClass<A> & typeof Account,
219
+ as: Account,
220
+ options: {
221
+ creationProps: { name: string };
222
+ },
223
+ ) {
224
+ // TODO: is there a cleaner way to do this?
225
+ const connectedPeers = cojsonInternals.connectedPeers(
226
+ "creatingAccount",
227
+ "createdAccount",
228
+ { peer1role: "server", peer2role: "client" },
229
+ );
230
+
231
+ as._raw.core.node.syncManager.addPeer(connectedPeers[1]);
232
+
233
+ return this.create<A>({
234
+ creationProps: options.creationProps,
235
+ crypto: as._raw.core.node.crypto,
236
+ peersToLoadFrom: [connectedPeers[0]],
237
+ });
238
+ }
239
+
217
240
  static fromNode<A extends Account>(
218
241
  this: CoValueClass<A>,
219
242
  node: LocalNode,
@@ -17,7 +17,6 @@ import type {
17
17
  import {
18
18
  Account,
19
19
  Group,
20
- InitValues,
21
20
  ItemsSym,
22
21
  Ref,
23
22
  SchemaInit,
@@ -35,9 +34,40 @@ import {
35
34
  import { encodeSync, decodeSync } from "@effect/schema/Schema";
36
35
  import { Effect, Stream } from "effect";
37
36
 
38
- /** @category CoValues */
37
+ /**
38
+ * CoLists are collaborative versions of plain arrays.
39
+ *
40
+ * * @categoryDescription Content
41
+ * You can access items on a `CoList` as if they were normal items on a plain array, using `[]` notation, etc.
42
+ *
43
+ * Since `CoList` is a subclass of `Array`, you can use all the normal array methods like `push`, `pop`, `splice`, etc.
44
+ *
45
+ * ```ts
46
+ * colorList[0];
47
+ * colorList[3] = "yellow";
48
+ * colorList.push("Kawazaki Green");
49
+ * colorList.splice(1, 1);
50
+ * ```
51
+ *
52
+ * @category CoValues
53
+ */
39
54
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
40
55
  export class CoList<Item = any> extends Array<Item> implements CoValue {
56
+ /**
57
+ * Declare a `CoList` by subclassing `CoList.Of(...)` and passing the item schema using `co`.
58
+ *
59
+ * @example
60
+ * ```ts
61
+ * class ColorList extends CoList.Of(
62
+ * co.string
63
+ * ) {}
64
+ * class AnimalList extends CoList.Of(
65
+ * co.ref(Animal)
66
+ * ) {}
67
+ * ```
68
+ *
69
+ * @category Declaration
70
+ */
41
71
  static Of<Item>(item: Item): typeof CoList<Item> {
42
72
  // TODO: cache superclass for item class
43
73
  return class CoListOf extends CoList<Item> {
@@ -45,36 +75,62 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
45
75
  };
46
76
  }
47
77
 
48
- /** @deprecated Use UPPERCASE `CoList.Of` instead! */
78
+ /**
79
+ * @ignore
80
+ * @deprecated Use UPPERCASE `CoList.Of` instead! */
49
81
  static of(..._args: never): never {
50
82
  throw new Error("Can't use Array.of with CoLists");
51
83
  }
52
84
 
85
+ /**
86
+ * The ID of this `CoList`
87
+ * @category Content */
53
88
  id!: ID<this>;
89
+ /** @category Type Helpers */
54
90
  _type!: "CoList";
55
91
  static {
56
92
  this.prototype._type = "CoList";
57
93
  }
94
+ /** @category Internals */
58
95
  _raw!: RawCoList;
96
+ /** @category Internals */
59
97
  _instanceID!: string;
60
98
 
61
99
  /** @internal This is only a marker type and doesn't exist at runtime */
62
100
  [ItemsSym]!: Item;
101
+ /** @internal */
63
102
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
64
103
  static _schema: any;
104
+ /** @internal */
65
105
  get _schema(): {
66
106
  [ItemsSym]: SchemaFor<Item>;
67
107
  } {
68
108
  return (this.constructor as typeof CoList)._schema;
69
109
  }
70
110
 
111
+ /** @category Collaboration */
71
112
  get _owner(): Account | Group {
72
113
  return this._raw.group instanceof RawAccount
73
114
  ? Account.fromRaw(this._raw.group)
74
115
  : Group.fromRaw(this._raw.group);
75
116
  }
76
117
 
77
- /** @category Content */
118
+ /**
119
+ * If a `CoList`'s items are a `co.ref(...)`, you can use `coList._refs[i]` to access
120
+ * the `Ref` instead of the potentially loaded/null value.
121
+ *
122
+ * This allows you to always get the ID or load the value manually.
123
+ *
124
+ * @example
125
+ * ```ts
126
+ * animals._refs[0].id; // => ID<Animal>
127
+ * animals._refs[0].value;
128
+ * // => Animal | null
129
+ * const animal = await animals._refs[0].load();
130
+ * ```
131
+ *
132
+ * @category Content
133
+ **/
78
134
  get _refs(): {
79
135
  [idx: number]: Exclude<Item, null> extends CoValue
80
136
  ? Ref<UnCo<Exclude<Item, null>>>
@@ -115,17 +171,14 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
115
171
  return Account.fromNode(this._raw.core.node);
116
172
  }
117
173
 
118
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
119
- [InitValues]?: any;
120
-
121
174
  static get [Symbol.species]() {
122
175
  return Array;
123
176
  }
124
177
 
125
178
  constructor(
126
179
  options:
127
- | { init: Item[]; owner: Account | Group }
128
- | { fromRaw: RawCoList },
180
+ | { fromRaw: RawCoList }
181
+ | undefined
129
182
  ) {
130
183
  super();
131
184
 
@@ -134,12 +187,7 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
134
187
  enumerable: false,
135
188
  });
136
189
 
137
- if ("owner" in options) {
138
- this[InitValues] = {
139
- init: options.init,
140
- owner: options.owner,
141
- };
142
- } else if ("fromRaw" in options) {
190
+ if (options && "fromRaw" in options) {
143
191
  Object.defineProperties(this, {
144
192
  id: {
145
193
  value: options.fromRaw.id,
@@ -152,17 +200,48 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
152
200
  return new Proxy(this, CoListProxyHandler as ProxyHandler<this>);
153
201
  }
154
202
 
203
+ /**
204
+ * Create a new CoList with the given initial values and owner.
205
+ *
206
+ * The owner (a Group or Account) determines access rights to the CoMap.
207
+ *
208
+ * The CoList will immediately be persisted and synced to connected peers.
209
+ *
210
+ * @example
211
+ * ```ts
212
+ * const colours = ColorList.create(
213
+ * ["red", "green", "blue"],
214
+ * { owner: me }
215
+ * );
216
+ * const animals = AnimalList.create(
217
+ * [cat, dog, fish],
218
+ * { owner: me }
219
+ * );
220
+ * ```
221
+ *
222
+ * @category Creation
223
+ **/
155
224
  static create<L extends CoList>(
156
225
  this: CoValueClass<L>,
157
226
  items: UnCo<L[number]>[],
158
227
  options: { owner: Account | Group },
159
228
  ) {
160
- return new this({ init: items, owner: options.owner });
229
+ const instance = new this({ init: items, owner: options.owner });
230
+ const raw = options.owner._raw.createList(
231
+ toRawItems(items, instance._schema[ItemsSym]),
232
+ );
233
+
234
+ Object.defineProperties(instance, {
235
+ id: {
236
+ value: raw.id,
237
+ enumerable: false,
238
+ },
239
+ _raw: { value: raw, enumerable: false },
240
+ });
241
+
242
+ return instance;
161
243
  }
162
244
 
163
- push(...items: Item[]): number;
164
- /** @private For exact type compatibility with Array superclass */
165
- push(...items: Item[]): number;
166
245
  push(...items: Item[]): number {
167
246
  for (const item of toRawItems(
168
247
  items as Item[],
@@ -174,9 +253,6 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
174
253
  return this._raw.entries().length;
175
254
  }
176
255
 
177
- unshift(...items: Item[]): number;
178
- /** @private For exact type compatibility with Array superclass */
179
- unshift(...items: Item[]): number;
180
256
  unshift(...items: Item[]): number {
181
257
  for (const item of toRawItems(
182
258
  items as Item[],
@@ -247,6 +323,7 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
247
323
  return this.toJSON();
248
324
  }
249
325
 
326
+ /** @category Internals */
250
327
  static fromRaw<V extends CoList>(
251
328
  this: CoValueClass<V> & typeof CoList,
252
329
  raw: RawCoList,
@@ -254,6 +331,7 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
254
331
  return new this({ fromRaw: raw });
255
332
  }
256
333
 
334
+ /** @internal */
257
335
  static schema<V extends CoList>(
258
336
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
259
337
  this: { new (...args: any): V } & typeof CoList,
@@ -263,7 +341,28 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
263
341
  Object.assign(this._schema, def);
264
342
  }
265
343
 
266
- /** @category Subscription & Loading */
344
+ /**
345
+ * Load a `CoList` with a given ID, as a given account.
346
+ *
347
+ * `depth` specifies if item CoValue references should be loaded as well before resolving.
348
+ * The `DeeplyLoaded` return type guarantees that corresponding referenced CoValues are loaded to the specified depth.
349
+ *
350
+ * You can pass `[]` or for shallowly loading only this CoList, or `[itemDepth]` for recursively loading referenced CoValues.
351
+ *
352
+ * Check out the `load` methods on `CoMap`/`CoList`/`CoStream`/`Group`/`Account` to see which depth structures are valid to nest.
353
+ *
354
+ * @example
355
+ * ```ts
356
+ * const animalsWithVets =
357
+ * await ListOfAnimals.load(
358
+ * "co_zdsMhHtfG6VNKt7RqPUPvUtN2Ax",
359
+ * me,
360
+ * [{ vet: {} }]
361
+ * );
362
+ * ```
363
+ *
364
+ * @category Subscription & Loading
365
+ */
267
366
  static load<L extends CoList, Depth>(
268
367
  this: CoValueClass<L>,
269
368
  id: ID<L>,
@@ -273,7 +372,13 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
273
372
  return loadCoValue(this, id, as, depth);
274
373
  }
275
374
 
276
- /** @category Subscription & Loading */
375
+ /**
376
+ * Effectful version of `CoList.load()`.
377
+ *
378
+ * Needs to be run inside an `AccountCtx` context.
379
+ *
380
+ * @category Subscription & Loading
381
+ */
277
382
  static loadEf<L extends CoList, Depth>(
278
383
  this: CoValueClass<L>,
279
384
  id: ID<L>,
@@ -282,7 +387,34 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
282
387
  return loadCoValueEf<L, Depth>(this, id, depth);
283
388
  }
284
389
 
285
- /** @category Subscription & Loading */
390
+ /**
391
+ * Load and subscribe to a `CoList` with a given ID, as a given account.
392
+ *
393
+ * Automatically also subscribes to updates to all referenced/nested CoValues as soon as they are accessed in the listener.
394
+ *
395
+ * `depth` specifies if item CoValue references should be loaded as well before calling `listener` for the first time.
396
+ * The `DeeplyLoaded` return type guarantees that corresponding referenced CoValues are loaded to the specified depth.
397
+ *
398
+ * You can pass `[]` or for shallowly loading only this CoList, or `[itemDepth]` for recursively loading referenced CoValues.
399
+ *
400
+ * Check out the `load` methods on `CoMap`/`CoList`/`CoStream`/`Group`/`Account` to see which depth structures are valid to nest.
401
+ *
402
+ * Returns an unsubscribe function that you should call when you no longer need updates.
403
+ *
404
+ * Also see the `useCoState` hook to reactively subscribe to a CoValue in a React component.
405
+ *
406
+ * @example
407
+ * ```ts
408
+ * const unsub = ListOfAnimals.subscribe(
409
+ * "co_zdsMhHtfG6VNKt7RqPUPvUtN2Ax",
410
+ * me,
411
+ * { vet: {} },
412
+ * (animalsWithVets) => console.log(animalsWithVets)
413
+ * );
414
+ * ```
415
+ *
416
+ * @category Subscription & Loading
417
+ */
286
418
  static subscribe<L extends CoList, Depth>(
287
419
  this: CoValueClass<L>,
288
420
  id: ID<L>,
@@ -293,7 +425,13 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
293
425
  return subscribeToCoValue<L, Depth>(this, id, as, depth, listener);
294
426
  }
295
427
 
296
- /** @category Subscription & Loading */
428
+ /**
429
+ * Effectful version of `CoList.subscribe()` that returns a stream of updates.
430
+ *
431
+ * Needs to be run inside an `AccountCtx` context.
432
+ *
433
+ * @category Subscription & Loading
434
+ */
297
435
  static subscribeEf<L extends CoList, Depth>(
298
436
  this: CoValueClass<L>,
299
437
  id: ID<L>,
@@ -302,7 +440,13 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
302
440
  return subscribeToCoValueEf<L, Depth>(this, id, depth);
303
441
  }
304
442
 
305
- /** @category Subscription & Loading */
443
+ /**
444
+ * Given an already loaded `CoList`, ensure that items are loaded to the specified depth.
445
+ *
446
+ * Works like `CoList.load()`, but you don't need to pass the ID or the account to load as again.
447
+ *
448
+ * @category Subscription & Loading
449
+ */
306
450
  ensureLoaded<L extends CoList, Depth>(
307
451
  this: L,
308
452
  depth: Depth & DepthsIn<L>,
@@ -310,7 +454,15 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
310
454
  return ensureCoValueLoaded(this, depth);
311
455
  }
312
456
 
313
- /** @category Subscription & Loading */
457
+ /**
458
+ * Given an already loaded `CoList`, subscribe to updates to the `CoList` and ensure that items are loaded to the specified depth.
459
+ *
460
+ * Works like `CoList.subscribe()`, but you don't need to pass the ID or the account to load as again.
461
+ *
462
+ * Returns an unsubscribe function that you should call when you no longer need updates.
463
+ *
464
+ * @category Subscription & Loading
465
+ **/
314
466
  subscribe<L extends CoList, Depth>(
315
467
  this: L,
316
468
  depth: Depth & DepthsIn<L>,
@@ -341,24 +493,6 @@ function toRawItems<Item>(items: Item[], itemDescriptor: Schema) {
341
493
  return rawItems;
342
494
  }
343
495
 
344
- function init(list: CoList) {
345
- if (list[InitValues]) {
346
- const { init, owner } = list[InitValues];
347
- const raw = owner._raw.createList(
348
- toRawItems(init, list._schema[ItemsSym]),
349
- );
350
-
351
- Object.defineProperties(list, {
352
- id: {
353
- value: raw.id,
354
- enumerable: false,
355
- },
356
- _raw: { value: raw, enumerable: false },
357
- });
358
- delete list[InitValues];
359
- }
360
- }
361
-
362
496
  const CoListProxyHandler: ProxyHandler<CoList> = {
363
497
  get(target, key, receiver) {
364
498
  if (typeof key === "string" && !isNaN(+key)) {
@@ -394,7 +528,6 @@ const CoListProxyHandler: ProxyHandler<CoList> = {
394
528
  (target.constructor as typeof CoList)._schema ||= {};
395
529
  (target.constructor as typeof CoList)._schema[ItemsSym] =
396
530
  value[SchemaInit];
397
- init(target);
398
531
  return true;
399
532
  }
400
533
  if (typeof key === "string" && !isNaN(+key)) {
@@ -423,7 +556,6 @@ const CoListProxyHandler: ProxyHandler<CoList> = {
423
556
  (target.constructor as typeof CoList)._schema ||= {};
424
557
  (target.constructor as typeof CoList)._schema[ItemsSym] =
425
558
  descriptor.value[SchemaInit];
426
- init(target);
427
559
  return true;
428
560
  } else {
429
561
  return Reflect.defineProperty(target, key, descriptor);