jazz-tools 0.11.3 → 0.11.4
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.
- package/.turbo/turbo-build.log +7 -7
- package/CHANGELOG.md +10 -0
- package/dist/{chunk-MVDJNBLV.js → chunk-IOK4K3XC.js} +64 -12
- package/dist/chunk-IOK4K3XC.js.map +1 -0
- package/dist/coValues/coFeed.d.ts +2 -1
- package/dist/coValues/coFeed.d.ts.map +1 -1
- package/dist/coValues/coList.d.ts +15 -2
- package/dist/coValues/coList.d.ts.map +1 -1
- package/dist/coValues/coMap.d.ts +2 -1
- package/dist/coValues/coMap.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/testing.js +1 -1
- package/package.json +2 -2
- package/src/coValues/coFeed.ts +2 -1
- package/src/coValues/coList.ts +77 -13
- package/src/coValues/coMap.ts +7 -2
- package/src/tests/coList.test.ts +313 -6
- package/src/tests/schemaUnion.test.ts +2 -1
- package/dist/chunk-MVDJNBLV.js.map +0 -1
@@ -1,6 +1,7 @@
|
|
1
1
|
import type { BinaryStreamInfo, CojsonInternalTypes, RawBinaryCoStream, RawCoStream, SessionID } from "cojson";
|
2
2
|
import type { CoValue, CoValueClass, DeeplyLoaded, DepthsIn, ID, IfCo, SchemaFor, UnCo } from "../internal.js";
|
3
3
|
import { CoValueBase, ItemsSym, Ref, inspect } from "../internal.js";
|
4
|
+
import { RegisteredAccount } from "../types.js";
|
4
5
|
import { type Account } from "./account.js";
|
5
6
|
import { type Group } from "./group.js";
|
6
7
|
/** @deprecated Use CoFeedEntry instead */
|
@@ -13,7 +14,7 @@ export type SingleCoStreamEntry<Item> = SingleCoFeedEntry<Item>;
|
|
13
14
|
export type SingleCoFeedEntry<Item> = {
|
14
15
|
value: NonNullable<Item> extends CoValue ? NonNullable<Item> | null : Item;
|
15
16
|
ref: NonNullable<Item> extends CoValue ? Ref<NonNullable<Item>> : never;
|
16
|
-
by?:
|
17
|
+
by?: RegisteredAccount | null;
|
17
18
|
madeAt: Date;
|
18
19
|
tx: CojsonInternalTypes.TransactionID;
|
19
20
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"coFeed.d.ts","sourceRoot":"","sources":["../../src/coValues/coFeed.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,gBAAgB,EAChB,mBAAmB,EAGnB,iBAAiB,EACjB,WAAW,EACX,SAAS,EACV,MAAM,QAAQ,CAAC;AAGhB,OAAO,KAAK,EAEV,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,EAAE,EACF,IAAI,EAEJ,SAAS,EACT,IAAI,EACL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,QAAQ,EACR,GAAG,EAIH,OAAO,EAQR,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAGxC,0CAA0C;AAC1C,MAAM,MAAM,aAAa,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;AAEpD,MAAM,MAAM,WAAW,CAAC,IAAI,IAAI,iBAAiB,CAAC,IAAI,CAAC,GAAG;IACxD,GAAG,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;CAChD,CAAC;AAEF,gDAAgD;AAChD,MAAM,MAAM,mBAAmB,CAAC,IAAI,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;AAEhE,MAAM,MAAM,iBAAiB,CAAC,IAAI,IAAI;IACpC,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;IAC3E,GAAG,EAAE,WAAW,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC;IACxE,EAAE,CAAC,EAAE,
|
1
|
+
{"version":3,"file":"coFeed.d.ts","sourceRoot":"","sources":["../../src/coValues/coFeed.ts"],"names":[],"mappings":"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"}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import type { RawCoList } from "cojson";
|
2
2
|
import type { CoValue, CoValueClass, CoValueFromRaw, DeeplyLoaded, DepthsIn, ID, SchemaFor, UnCo } from "../internal.js";
|
3
3
|
import { AnonymousJazzAgent, ItemsSym, Ref, inspect } from "../internal.js";
|
4
|
+
import { RegisteredAccount } from "../types.js";
|
4
5
|
import { type Account } from "./account.js";
|
5
6
|
import { type Group } from "./group.js";
|
6
7
|
/**
|
@@ -87,7 +88,7 @@ export declare class CoList<Item = any> extends Array<Item> implements CoValue {
|
|
87
88
|
[idx: number]: {
|
88
89
|
value?: Item;
|
89
90
|
ref?: Item extends CoValue ? Ref<Item> : never;
|
90
|
-
by?:
|
91
|
+
by?: RegisteredAccount;
|
91
92
|
madeAt: Date;
|
92
93
|
};
|
93
94
|
};
|
@@ -124,8 +125,20 @@ export declare class CoList<Item = any> extends Array<Item> implements CoValue {
|
|
124
125
|
unshift(...items: Item[]): number;
|
125
126
|
pop(): Item | undefined;
|
126
127
|
shift(): Item | undefined;
|
128
|
+
/**
|
129
|
+
* Splice the `CoList` at a given index.
|
130
|
+
*
|
131
|
+
* @param start - The index to start the splice.
|
132
|
+
* @param deleteCount - The number of items to delete.
|
133
|
+
* @param items - The items to insert.
|
134
|
+
*/
|
127
135
|
splice(start: number, deleteCount: number, ...items: Item[]): Item[];
|
128
|
-
|
136
|
+
/**
|
137
|
+
* Modify the `CoList` to match another list, where the changes are managed internally.
|
138
|
+
*
|
139
|
+
* @param result - The resolved list of items.
|
140
|
+
*/
|
141
|
+
applyDiff(result: Item[]): void;
|
129
142
|
toJSON(_key?: string, seenAbove?: ID<CoValue>[]): any[];
|
130
143
|
[inspect](): any[];
|
131
144
|
/** @category Internals */
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"coList.d.ts","sourceRoot":"","sources":["../../src/coValues/coList.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,SAAS,EAAE,MAAM,QAAQ,CAAC;AAGnD,OAAO,KAAK,EACV,OAAO,EACP,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,EAAE,EAGF,SAAS,EACT,IAAI,EACL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,kBAAkB,EAClB,QAAQ,EACR,GAAG,EAIH,OAAO,EAQR,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAGxC;;;;;;;;;;;;;;;;GAgBG;AAEH,qBAAa,MAAM,CAAC,IAAI,GAAG,GAAG,CAAE,SAAQ,KAAK,CAAC,IAAI,CAAE,YAAW,OAAO;IACpE;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,MAAM,CAAC,IAAI,CAAC;IAOhD;;wDAEoD;IACpD,MAAM,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,KAAK,GAAG,KAAK;IAIjC;;2BAEuB;IACf,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IACrB,6BAA6B;IACrB,KAAK,EAAE,QAAQ,CAAC;IAIxB,0BAA0B;IAClB,IAAI,EAAE,SAAS,CAAC;IACxB,0BAA0B;IAClB,WAAW,EAAE,MAAM,CAAC;IAE5B,wEAAwE;IACxE,CAAC,QAAQ,CAAC,EAAG,IAAI,CAAC;IAClB,gBAAgB;IAEhB,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC;IACpB,gBAAgB;IAChB,IAAI,OAAO,IAAI;QACb,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;KAC7B,CAEA;IAED,8BAA8B;IAC9B,IAAI,MAAM,IAAI,OAAO,GAAG,KAAK,CAI5B;IAED;;;;;;;;;;;;;;;QAeI;IACJ,IAAI,KAAK,IAAI;QACX,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,OAAO,GAC9C,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,GAC9B,KAAK,CAAC;KACX,GAAG;QACF,MAAM,EAAE,MAAM,CAAC;QACf,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CACnC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,GAAG,KAAK,CACvE,CAAC;KACH,CAQA;IAED,IAAI,MAAM,IAAI;QACZ,CAAC,GAAG,EAAE,MAAM,GAAG;YACb,KAAK,CAAC,EAAE,IAAI,CAAC;YACb,GAAG,CAAC,EAAE,IAAI,SAAS,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;YAC/C,EAAE,CAAC,EAAE,
|
1
|
+
{"version":3,"file":"coList.d.ts","sourceRoot":"","sources":["../../src/coValues/coList.ts"],"names":[],"mappings":"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"}
|
package/dist/coValues/coMap.d.ts
CHANGED
@@ -1,12 +1,13 @@
|
|
1
1
|
import { AgentID, type CoValueUniqueness, CojsonInternalTypes, type JsonValue, RawAccountID, type RawCoMap } from "cojson";
|
2
2
|
import type { AnonymousJazzAgent, CoValue, CoValueClass, DeeplyLoaded, DepthsIn, ID, IfCo, RefIfCoValue, Schema, co } from "../internal.js";
|
3
3
|
import { CoValueBase, ItemsSym, Ref, inspect } from "../internal.js";
|
4
|
+
import { RegisteredAccount } from "../types.js";
|
4
5
|
import { type Account } from "./account.js";
|
5
6
|
import { type Group } from "./group.js";
|
6
7
|
type CoMapEdit<V> = {
|
7
8
|
value?: V;
|
8
9
|
ref?: RefIfCoValue<V>;
|
9
|
-
by?:
|
10
|
+
by?: RegisteredAccount;
|
10
11
|
madeAt: Date;
|
11
12
|
key?: string;
|
12
13
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"coMap.d.ts","sourceRoot":"","sources":["../../src/coValues/coMap.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,KAAK,iBAAiB,EACtB,mBAAmB,EACnB,KAAK,SAAS,EACd,YAAY,EACZ,KAAK,QAAQ,EAEd,MAAM,QAAQ,CAAC;AAEhB,OAAO,KAAK,EACV,kBAAkB,EAClB,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,EAAE,EACF,IAAI,EAEJ,YAAY,EACZ,MAAM,EACN,EAAE,EACH,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,QAAQ,EACR,GAAG,EAGH,OAAO,EAQR,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAGxC,KAAK,SAAS,CAAC,CAAC,IAAI;IAClB,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACtB,EAAE,CAAC,EAAE,
|
1
|
+
{"version":3,"file":"coMap.d.ts","sourceRoot":"","sources":["../../src/coValues/coMap.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,KAAK,iBAAiB,EACtB,mBAAmB,EACnB,KAAK,SAAS,EACd,YAAY,EACZ,KAAK,QAAQ,EAEd,MAAM,QAAQ,CAAC;AAEhB,OAAO,KAAK,EACV,kBAAkB,EAClB,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,EAAE,EACF,IAAI,EAEJ,YAAY,EACZ,MAAM,EACN,EAAE,EACH,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,QAAQ,EACR,GAAG,EAGH,OAAO,EAQR,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AAGxC,KAAK,SAAS,CAAC,CAAC,IAAI;IAClB,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACtB,EAAE,CAAC,EAAE,iBAAiB,CAAC;IACvB,MAAM,EAAE,IAAI,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,KAAK,oBAAoB,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG;IAAE,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAA;CAAE,CAAC;AAEtE,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;KACvB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACrB,SAAS,MAAM,CAAC,GACb,CAAC,GACD,KAAK,CAAC;AAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAgCM;AACN,qBAAa,KAAM,SAAQ,WAAY,YAAW,OAAO;IACvD;;2BAEuB;IACf,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IACrB,6BAA6B;IACrB,KAAK,EAAE,OAAO,CAAC;IAIvB,0BAA0B;IAClB,IAAI,EAAE,QAAQ,CAAC;IAEvB,gBAAgB;IAEhB,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC;IACpB,gBAAgB;IAChB,IAAI,OAAO,IAC4C;QACnD,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,GAAG;QAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAC5B;IAED;;;;;;;;;;;;;;;QAeI;IACJ,IAAI,KAAK,IAAI;SACV,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;KAChE,CAkBA;IAED,gBAAgB;IACT,cAAc,CACnB,MAAM,EAAE,KAAK,EACb,OAAO,EAAE;QACP,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC;QAC3B,EAAE,EAAE,mBAAmB,CAAC,aAAa,CAAC;QACtC,EAAE,EAAE,IAAI,CAAC;QACT,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;KAC/B,EACD,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM;;;;;;;IA8Bb,8BAA8B;IAC9B,IAAI,MAAM,IAkCH,GACF,GAAmB,IAAZ,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GACxE,CACF;IAED,gBAAgB;gBAGd,OAAO,EAAE;QAAE,OAAO,EAAE,QAAQ,CAAA;KAAE,GAAG,SAAS;IAqB5C;;;;;;;;;;;;;;;;;QAiBI;IACJ,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,KAAK,EAC3B,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EACrB,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAC5B,OAAO,CAAC,EACJ;QACE,KAAK,EAAE,OAAO,GAAG,KAAK,CAAC;QACvB,MAAM,CAAC,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;KAC1C,GACD,OAAO,GACP,KAAK;IAiBX;;;OAGG;IAEH,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,GAAG,EAAE;IAgCvD,CAAC,OAAO,CAAC;IAIT;;;OAGG;IAEH,WAAW,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACrD,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,SAAS,EAC7C,KAAK,EAAE,OAAO,GAAG,KAAK,EACtB,UAAU,CAAC,EAAE,iBAAiB;;;IAoChC;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;sBAxKnC;YAAE,OAAO,EAAE,QAAQ,CAAA;SAAE,GAAG,SAAS;;;YA/I5C;;mCAEuB;;YAEvB,6BAA6B;mBACd,OAAO;YAItB,0BAA0B;kBACZ,QAAQ;YAKtB,gBAAgB;;;;0BAIK,MAAM;;YAG3B;;;;;;;;;;;;;;;gBAeI;;;;YAuBJ,gBAAgB;mCAEN,KAAK,WACJ;gBACP,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC;gBAC3B,EAAE,EAAE,mBAAmB,CAAC,aAAa,CAAC;gBACtC,EAAE,EAAE,IAAI,CAAC;gBACT,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;aAC/B,cACW,MAAM,OACb,MAAM;;;;;;;YA8Bb,8BAA8B;;;;YA4G9B;;;eAGG;0BAEW,MAAM,cAAc,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,GAAG,EAAE;YAoCvD;;;eAGG;wBAES,MAAM,SAAS,MAAM,8EAExB,OAAO,GAAG,KAAK,eACT,iBAAiB;;;YAyLhC;;;;;;eAMG;yBACU,CAAC,SAAS,KAAK,EAAE,KAAK,QAC3B,CAAC,SACA,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GACzB,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAIlC;;;;;;;;gBAQI;sBACM,CAAC,SAAS,KAAK,EAAE,KAAK,QACxB,CAAC,SACA,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,YAChB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,IAAI,GAChD,MAAM,IAAI;sBAIH,CAAC;YA8BX;;;;eAIG;kCACmB;gBAAE,OAAO,CAAC,EAAE,MAAM,CAAA;aAAE;;;;;;;QAhf1C,gBAAgB;iBAEA,GAAG;QAsJnB;;;;;;;;;;;;;;;;;YAiBI;eACU,CAAC,SAAS,KAAK,QACrB,YAAY,CAAC,CAAC,CAAC,QACf,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,YAExB;YACE,KAAK,EAAE,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;SAC1C,GACD,OAAO,GACP,KAAK;eAwHG,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;QAW9C;;;;;;;;;;;;;;;;;;;WAmBG;aACS,CAAC,SAAS,KAAK,EAAE,KAAK,QAC1B,YAAY,CAAC,CAAC,CAAC,MACjB,EAAE,CAAC,CAAC,CAAC,SACF,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GACzB,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC;QAxB9C;;;;;;;;;;;;;;;;;;;WAmBG;aAMS,CAAC,SAAS,KAAK,EAAE,KAAK,QAC1B,YAAY,CAAC,CAAC,CAAC,MACjB,EAAE,CAAC,CAAC,CAAC,MACL,OAAO,SACJ,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GACzB,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC;QAU9C;;;;;;;;;;;;;;;;;;;;;;;;;;WA0BG;kBACc,CAAC,SAAS,KAAK,EAAE,KAAK,QAC/B,YAAY,CAAC,CAAC,CAAC,MACjB,EAAE,CAAC,CAAC,CAAC,SACF,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,YAChB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,IAAI,GAChD,MAAM,IAAI;QAhCb;;;;;;;;;;;;;;;;;;;;;;;;;;WA0BG;kBAOc,CAAC,SAAS,KAAK,EAAE,KAAK,QAC/B,YAAY,CAAC,CAAC,CAAC,MACjB,EAAE,CAAC,CAAC,CAAC,MACL,OAAO,SACJ,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,YAChB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,IAAI,GAChD,MAAM,IAAI;mBAmBK,CAAC,SAAS,KAAK,QACzB,YAAY,CAAC,CAAC,CAAC,UACb,iBAAiB,CAAC,YAAY,CAAC,WAC9B,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAC3B,OAAO,GAAG,KAAK,GAAG,kBAAkB,GAea,EAAE,CAAC,CAAC,CAAC;;;IArH7D;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAChC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EACrB,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EACT,KAAK,EAAE,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GACzB,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC;IAC9C,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAChC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EACrB,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EACT,EAAE,EAAE,OAAO,EACX,KAAK,EAAE,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GACzB,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC;IAU9C;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EACrC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EACrB,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EACT,KAAK,EAAE,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,EAC1B,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,IAAI,GAChD,MAAM,IAAI;IACb,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EACrC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EACrB,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EACT,EAAE,EAAE,OAAO,EACX,KAAK,EAAE,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,EAC1B,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,IAAI,GAChD,MAAM,IAAI;IAmBb,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,KAAK,EAC/B,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EACrB,MAAM,EAAE,iBAAiB,CAAC,YAAY,CAAC,EACvC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAChC,EAAE,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,kBAAkB,GAea,EAAE,CAAC,CAAC,CAAC;IAG7D;;;;;;OAMG;IACH,YAAY,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EACjC,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GACzB,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAIlC;;;;;;;;QAQI;IACJ,SAAS,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAC9B,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,EAC1B,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,IAAI,GAChD,MAAM,IAAI;IAIb,SAAS,CAAC,CAAC,SAAS,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;IA8B1D;;;;OAIG;IACH,WAAW,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;CAG3C;AAED,MAAM,MAAM,MAAM,CAAC,GAAG,SAAS,MAAM,IAAI,OAAO,CAC9C,MAAM,GAAG,GAAG,MAAM,EAClB,MAAM,KAAK,CACZ,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,KAAK,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,GACtE,WAAW,CAAC,CAAC,CAAC,GACd,CAAC,SAAS,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,GAClD,CAAC,GAAG,IAAI,GACR,CAAC,CAAC;AAER,MAAM,MAAM,SAAS,CAAC,GAAG,SAAS,MAAM,IAAI;KACzC,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,SAAS,SAAS,GAAG,CAAC,GAAG,CAAC,GAC7C,KAAK,GACL,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;CACrD,GAAG;KACD,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;CACzE,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/testing.js
CHANGED
package/package.json
CHANGED
@@ -17,11 +17,11 @@
|
|
17
17
|
},
|
18
18
|
"type": "module",
|
19
19
|
"license": "MIT",
|
20
|
-
"version": "0.11.
|
20
|
+
"version": "0.11.4",
|
21
21
|
"dependencies": {
|
22
22
|
"@scure/bip39": "^1.3.0",
|
23
23
|
"fast-myers-diff": "^3.2.0",
|
24
|
-
"cojson": "0.11.
|
24
|
+
"cojson": "0.11.4"
|
25
25
|
},
|
26
26
|
"devDependencies": {
|
27
27
|
"tsup": "8.3.5",
|
package/src/coValues/coFeed.ts
CHANGED
@@ -39,6 +39,7 @@ import {
|
|
39
39
|
subscribeToCoValueWithoutMe,
|
40
40
|
subscribeToExistingCoValue,
|
41
41
|
} from "../internal.js";
|
42
|
+
import { RegisteredAccount } from "../types.js";
|
42
43
|
import { type Account } from "./account.js";
|
43
44
|
import { type Group } from "./group.js";
|
44
45
|
import { RegisteredSchemas } from "./registeredSchemas.js";
|
@@ -56,7 +57,7 @@ export type SingleCoStreamEntry<Item> = SingleCoFeedEntry<Item>;
|
|
56
57
|
export type SingleCoFeedEntry<Item> = {
|
57
58
|
value: NonNullable<Item> extends CoValue ? NonNullable<Item> | null : Item;
|
58
59
|
ref: NonNullable<Item> extends CoValue ? Ref<NonNullable<Item>> : never;
|
59
|
-
by?:
|
60
|
+
by?: RegisteredAccount | null;
|
60
61
|
madeAt: Date;
|
61
62
|
tx: CojsonInternalTypes.TransactionID;
|
62
63
|
};
|
package/src/coValues/coList.ts
CHANGED
@@ -30,6 +30,7 @@ import {
|
|
30
30
|
subscriptionsScopes,
|
31
31
|
} from "../internal.js";
|
32
32
|
import { coValuesCache } from "../lib/cache.js";
|
33
|
+
import { RegisteredAccount } from "../types.js";
|
33
34
|
import { type Account } from "./account.js";
|
34
35
|
import { type Group } from "./group.js";
|
35
36
|
import { RegisteredSchemas } from "./registeredSchemas.js";
|
@@ -154,7 +155,7 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
|
|
154
155
|
[idx: number]: {
|
155
156
|
value?: Item;
|
156
157
|
ref?: Item extends CoValue ? Ref<Item> : never;
|
157
|
-
by?:
|
158
|
+
by?: RegisteredAccount;
|
158
159
|
madeAt: Date;
|
159
160
|
};
|
160
161
|
} {
|
@@ -275,6 +276,13 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
|
|
275
276
|
return first;
|
276
277
|
}
|
277
278
|
|
279
|
+
/**
|
280
|
+
* Splice the `CoList` at a given index.
|
281
|
+
*
|
282
|
+
* @param start - The index to start the splice.
|
283
|
+
* @param deleteCount - The number of items to delete.
|
284
|
+
* @param items - The items to insert.
|
285
|
+
*/
|
278
286
|
splice(start: number, deleteCount: number, ...items: Item[]): Item[] {
|
279
287
|
const deleted = this.slice(start, start + deleteCount);
|
280
288
|
|
@@ -286,24 +294,62 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
|
|
286
294
|
this._raw.delete(idxToDelete);
|
287
295
|
}
|
288
296
|
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
297
|
+
const rawItems = toRawItems(items as Item[], this._schema[ItemsSym]);
|
298
|
+
|
299
|
+
// If there are no items to insert, return the deleted items
|
300
|
+
if (rawItems.length === 0) {
|
301
|
+
return deleted;
|
302
|
+
}
|
303
|
+
|
304
|
+
// Fast path for single item insertion
|
305
|
+
if (rawItems.length === 1) {
|
306
|
+
const item = rawItems[0];
|
307
|
+
if (item === undefined) return deleted;
|
308
|
+
if (start === 0) {
|
309
|
+
this._raw.prepend(item);
|
310
|
+
} else {
|
311
|
+
this._raw.append(item, Math.max(start - 1, 0));
|
312
|
+
}
|
313
|
+
return deleted;
|
314
|
+
}
|
315
|
+
|
316
|
+
// Handle multiple items
|
317
|
+
if (start === 0) {
|
318
|
+
// Iterate in reverse order without creating a new array
|
319
|
+
for (let i = rawItems.length - 1; i >= 0; i--) {
|
320
|
+
const item = rawItems[i];
|
321
|
+
if (item === undefined) continue;
|
322
|
+
this._raw.prepend(item);
|
323
|
+
}
|
324
|
+
} else {
|
325
|
+
let appendAfter = Math.max(start - 1, 0);
|
326
|
+
for (const item of rawItems) {
|
327
|
+
if (item === undefined) continue;
|
328
|
+
this._raw.append(item, appendAfter);
|
329
|
+
appendAfter++;
|
330
|
+
}
|
293
331
|
}
|
294
332
|
|
295
333
|
return deleted;
|
296
334
|
}
|
297
335
|
|
298
|
-
|
336
|
+
/**
|
337
|
+
* Modify the `CoList` to match another list, where the changes are managed internally.
|
338
|
+
*
|
339
|
+
* @param result - The resolved list of items.
|
340
|
+
*/
|
341
|
+
applyDiff(result: Item[]) {
|
299
342
|
const current = this._raw.asArray() as Item[];
|
300
|
-
const
|
301
|
-
? (aIdx: number, bIdx: number) =>
|
302
|
-
|
343
|
+
const comparator = isRefEncoded(this._schema[ItemsSym])
|
344
|
+
? (aIdx: number, bIdx: number) => {
|
345
|
+
return (
|
346
|
+
(current[aIdx] as CoValue)?.id === (result[bIdx] as CoValue)?.id
|
347
|
+
);
|
348
|
+
}
|
303
349
|
: undefined;
|
304
|
-
|
305
|
-
|
306
|
-
].reverse()) {
|
350
|
+
|
351
|
+
const patches = [...calcPatch(current, result, comparator)];
|
352
|
+
for (const [from, to, insert] of patches.reverse()) {
|
307
353
|
this.splice(from, to - from, ...insert);
|
308
354
|
}
|
309
355
|
}
|
@@ -505,6 +551,12 @@ export class CoList<Item = any> extends Array<Item> implements CoValue {
|
|
505
551
|
}
|
506
552
|
}
|
507
553
|
|
554
|
+
/**
|
555
|
+
* Convert an array of items to a raw array of items.
|
556
|
+
* @param items - The array of items to convert.
|
557
|
+
* @param itemDescriptor - The descriptor of the items.
|
558
|
+
* @returns The raw array of items.
|
559
|
+
*/
|
508
560
|
function toRawItems<Item>(items: Item[], itemDescriptor: Schema) {
|
509
561
|
const rawItems =
|
510
562
|
itemDescriptor === "json"
|
@@ -560,7 +612,19 @@ const CoListProxyHandler: ProxyHandler<CoList> = {
|
|
560
612
|
} else if ("encoded" in itemDescriptor) {
|
561
613
|
rawValue = itemDescriptor.encoded.encode(value);
|
562
614
|
} else if (isRefEncoded(itemDescriptor)) {
|
563
|
-
|
615
|
+
if (value === null) {
|
616
|
+
if (itemDescriptor.optional) {
|
617
|
+
rawValue = null;
|
618
|
+
} else {
|
619
|
+
throw new Error(`Cannot set required reference ${key} to null`);
|
620
|
+
}
|
621
|
+
} else if (value?.id) {
|
622
|
+
rawValue = value.id;
|
623
|
+
} else {
|
624
|
+
throw new Error(
|
625
|
+
`Cannot set reference ${key} to a non-CoValue. Got ${value}`,
|
626
|
+
);
|
627
|
+
}
|
564
628
|
}
|
565
629
|
target._raw.replace(Number(key), rawValue);
|
566
630
|
return true;
|
package/src/coValues/coMap.ts
CHANGED
@@ -36,6 +36,7 @@ import {
|
|
36
36
|
subscribeToExistingCoValue,
|
37
37
|
subscriptionsScopes,
|
38
38
|
} from "../internal.js";
|
39
|
+
import { RegisteredAccount } from "../types.js";
|
39
40
|
import { type Account } from "./account.js";
|
40
41
|
import { type Group } from "./group.js";
|
41
42
|
import { RegisteredSchemas } from "./registeredSchemas.js";
|
@@ -43,7 +44,7 @@ import { RegisteredSchemas } from "./registeredSchemas.js";
|
|
43
44
|
type CoMapEdit<V> = {
|
44
45
|
value?: V;
|
45
46
|
ref?: RefIfCoValue<V>;
|
46
|
-
by?:
|
47
|
+
by?: RegisteredAccount;
|
47
48
|
madeAt: Date;
|
48
49
|
key?: string;
|
49
50
|
};
|
@@ -710,11 +711,15 @@ const CoMapProxyHandler: ProxyHandler<CoMap> = {
|
|
710
711
|
} else {
|
711
712
|
throw new Error(`Cannot set required reference ${key} to null`);
|
712
713
|
}
|
713
|
-
} else {
|
714
|
+
} else if (value?.id) {
|
714
715
|
target._raw.set(key, value.id);
|
715
716
|
subscriptionsScopes
|
716
717
|
.get(target)
|
717
718
|
?.onRefAccessedOrSet(target.id, value.id);
|
719
|
+
} else {
|
720
|
+
throw new Error(
|
721
|
+
`Cannot set reference ${key} to a non-CoValue. Got ${value}`,
|
722
|
+
);
|
718
723
|
}
|
719
724
|
}
|
720
725
|
return true;
|