cojson 0.19.3 → 0.19.5
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 +1 -1
- package/CHANGELOG.md +15 -0
- package/dist/coValues/coList.d.ts +10 -4
- package/dist/coValues/coList.d.ts.map +1 -1
- package/dist/coValues/coList.js +30 -4
- package/dist/coValues/coList.js.map +1 -1
- package/dist/coValues/coMap.d.ts +3 -2
- package/dist/coValues/coMap.d.ts.map +1 -1
- package/dist/coValues/coMap.js +8 -10
- package/dist/coValues/coMap.js.map +1 -1
- package/dist/coValues/coPlainText.d.ts +2 -1
- package/dist/coValues/coPlainText.d.ts.map +1 -1
- package/dist/coValues/coPlainText.js +5 -2
- package/dist/coValues/coPlainText.js.map +1 -1
- package/dist/coValues/group.d.ts +7 -3
- package/dist/coValues/group.d.ts.map +1 -1
- package/dist/coValues/group.js +70 -24
- package/dist/coValues/group.js.map +1 -1
- package/dist/storage/sqlite/client.d.ts +3 -3
- package/dist/storage/sqlite/client.d.ts.map +1 -1
- package/dist/storage/sqlite/client.js +1 -1
- package/dist/storage/sqlite/client.js.map +1 -1
- package/dist/storage/sqliteAsync/client.d.ts +3 -3
- package/dist/storage/sqliteAsync/client.d.ts.map +1 -1
- package/dist/storage/sqliteAsync/client.js +1 -1
- package/dist/storage/sqliteAsync/client.js.map +1 -1
- package/dist/storage/storageAsync.d.ts.map +1 -1
- package/dist/storage/storageAsync.js +7 -7
- package/dist/storage/storageAsync.js.map +1 -1
- package/dist/storage/storageSync.d.ts.map +1 -1
- package/dist/storage/storageSync.js +7 -7
- package/dist/storage/storageSync.js.map +1 -1
- package/dist/storage/types.d.ts +18 -14
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/tests/coList.test.js +28 -1
- package/dist/tests/coList.test.js.map +1 -1
- package/dist/tests/group.parentGroupCache.test.d.ts +2 -0
- package/dist/tests/group.parentGroupCache.test.d.ts.map +1 -0
- package/dist/tests/group.parentGroupCache.test.js +216 -0
- package/dist/tests/group.parentGroupCache.test.js.map +1 -0
- package/package.json +3 -3
- package/src/coValues/coList.ts +41 -8
- package/src/coValues/coMap.ts +15 -11
- package/src/coValues/coPlainText.ts +6 -2
- package/src/coValues/group.ts +99 -24
- package/src/storage/sqlite/client.ts +6 -3
- package/src/storage/sqliteAsync/client.ts +8 -3
- package/src/storage/storageAsync.ts +8 -5
- package/src/storage/storageSync.ts +8 -5
- package/src/storage/types.ts +43 -37
- package/src/tests/coList.test.ts +36 -3
- package/src/tests/group.parentGroupCache.test.ts +293 -0
package/.turbo/turbo-build.log
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# cojson
|
|
2
2
|
|
|
3
|
+
## 0.19.5
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 343c2e4: Improve the permission checks performance by optimizing the parent groups retrival
|
|
8
|
+
- cojson-core-wasm@0.19.5
|
|
9
|
+
- cojson-core-napi@0.19.5
|
|
10
|
+
|
|
11
|
+
## 0.19.4
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- cojson-core-wasm@0.19.4
|
|
16
|
+
- cojson-core-napi@0.19.4
|
|
17
|
+
|
|
3
18
|
## 0.19.3
|
|
4
19
|
|
|
5
20
|
### Patch Changes
|
|
@@ -56,6 +56,11 @@ export declare class RawCoList<Item extends JsonValue = JsonValue, Meta extends
|
|
|
56
56
|
};
|
|
57
57
|
};
|
|
58
58
|
};
|
|
59
|
+
/** @internal */
|
|
60
|
+
atTimeFilter?: number;
|
|
61
|
+
/** @category 6. Meta */
|
|
62
|
+
readonly _item: Item;
|
|
63
|
+
/** @internal */
|
|
59
64
|
_cachedEntries?: {
|
|
60
65
|
value: Item;
|
|
61
66
|
madeAt: number;
|
|
@@ -66,16 +71,17 @@ export declare class RawCoList<Item extends JsonValue = JsonValue, Meta extends
|
|
|
66
71
|
lastValidTransaction: number | undefined;
|
|
67
72
|
totalValidTransactions: number;
|
|
68
73
|
private resetInternalState;
|
|
69
|
-
/** @category 6. Meta */
|
|
70
|
-
readonly _item: Item;
|
|
71
74
|
/** @internal */
|
|
72
|
-
constructor(core: AvailableCoValueCore);
|
|
75
|
+
constructor(core: AvailableCoValueCore, atTimeFilter?: number);
|
|
73
76
|
private getInsertionsEntry;
|
|
74
77
|
private createInsertionsEntry;
|
|
75
78
|
private isDeleted;
|
|
76
79
|
private pushDeletionsByInsertionEntry;
|
|
77
80
|
processNewTransactions(): void;
|
|
81
|
+
private _processNewTransactions;
|
|
78
82
|
rebuildFromCore(): void;
|
|
83
|
+
isTimeTravelEntity(): boolean;
|
|
84
|
+
private isFilteredOut;
|
|
79
85
|
/** @category 6. Meta */
|
|
80
86
|
get headerMeta(): Meta;
|
|
81
87
|
/** @category 6. Meta */
|
|
@@ -85,7 +91,7 @@ export declare class RawCoList<Item extends JsonValue = JsonValue, Meta extends
|
|
|
85
91
|
*
|
|
86
92
|
* @category 4. Time travel
|
|
87
93
|
*/
|
|
88
|
-
atTime(
|
|
94
|
+
atTime(time: number): this;
|
|
89
95
|
/**
|
|
90
96
|
* Get the item currently at `idx`.
|
|
91
97
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coList.d.ts","sourceRoot":"","sources":["../../src/coValues/coList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGxD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"coList.d.ts","sourceRoot":"","sources":["../../src/coValues/coList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGxD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,MAAM,IAAI,GAAG,aAAa,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzD,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAC9C;IACE,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE,CAAC,CAAC;IACT,MAAM,EAAE,IAAI,GAAG,KAAK,CAAC;CACtB,GACD;IACE,EAAE,EAAE,KAAK,CAAC;IACV,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC;CACvB,CAAC;AAEN,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,KAAK,CAAC;IACV,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,SAAS,IACzC,kBAAkB,CAAC,CAAC,CAAC,GACrB,iBAAiB,CAAC;AAEtB,KAAK,cAAc,CAAC,CAAC,SAAS,SAAS,IAAI;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,IAAI,EAAE,CAAC;IACrB,UAAU,EAAE,IAAI,EAAE,CAAC;IACnB,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;CAC/B,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,IAAI,CAAC;IACjB,MAAM,EAAE,iBAAiB,CAAC;CAC3B,CAAC;AAEF,qBAAa,SAAS,CACpB,IAAI,SAAS,SAAS,GAAG,SAAS,EAClC,IAAI,SAAS,UAAU,GAAG,IAAI,GAAG,IAAI,CACrC,YAAW,UAAU;IAErB,wBAAwB;IACxB,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,wBAAwB;IACxB,IAAI,EAAE,QAAQ,GAAG,aAAa,CAAqB;IACnD,wBAAwB;IACxB,IAAI,EAAE,oBAAoB,CAAC;IAE3B,0CAA0C;IAC1C,UAAU,EAAE,IAAI,EAAE,CAAM;IACxB,SAAS,EAAE,IAAI,EAAE,CAAM;IACvB,UAAU,EAAE;QACV,CAAC,SAAS,EAAE,SAAS,GAAG;YACtB,CAAC,KAAK,EAAE,MAAM,GAAG;gBACf,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;aAC3C,CAAC;SACH,CAAC;KACH,CAAM;IACP,oBAAoB,EAAE;QACpB,CAAC,gBAAgB,EAAE,SAAS,GAAG;YAC7B,CAAC,YAAY,EAAE,MAAM,GAAG;gBACtB,CAAC,gBAAgB,EAAE,MAAM,GAAG,aAAa,EAAE,CAAC;aAC7C,CAAC;SACH,CAAC;KACH,CAAM;IAEP,gBAAgB;IAChB,YAAY,CAAC,EAAE,MAAM,CAAa;IAElC,wBAAwB;IACxB,QAAQ,CAAC,KAAK,EAAG,IAAI,CAAC;IAEtB,gBAAgB;IAChB,cAAc,CAAC,EAAE;QACf,KAAK,EAAE,IAAI,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,IAAI,CAAC;KACZ,EAAE,CAAC;IACJ,iBAAiB,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAM;IAChD,OAAO,EAAE,MAAM,CAAK;IACpB,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,sBAAsB,EAAE,MAAM,CAAK;IAEnC,OAAO,CAAC,kBAAkB;IAW1B,gBAAgB;gBACJ,IAAI,EAAE,oBAAoB,EAAE,YAAY,CAAC,EAAE,MAAM;IAc7D,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,qBAAqB;IAwB7B,OAAO,CAAC,SAAS;IAkBjB,OAAO,CAAC,6BAA6B;IAyBrC,sBAAsB;IAOtB,OAAO,CAAC,uBAAuB;IAmG/B,eAAe;IAOf,kBAAkB;IAIlB,OAAO,CAAC,aAAa;IAOrB,wBAAwB;IACxB,IAAI,UAAU,IAAI,IAAI,CAErB;IAED,wBAAwB;IACxB,IAAI,KAAK,IAAI,QAAQ,CAEpB;IAED;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI1B;;;;OAIG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAQlC;;;;QAII;IACJ,OAAO,IAAI,IAAI,EAAE;IAIjB,gBAAgB;IAChB,OAAO,IAAI;QACT,KAAK,EAAE,IAAI,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,IAAI,CAAC;KACZ,EAAE;IASH,gBAAgB;IAChB,eAAe,IAAI;QACjB,KAAK,EAAE,IAAI,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,IAAI,CAAC;KACZ,EAAE;IAeH,gBAAgB;IAChB,OAAO,CAAC,iBAAiB;IAmDzB;;;;OAIG;IACH,MAAM,IAAI,IAAI,EAAE;IAIhB,gCAAgC;IAChC,MAAM,CAAC,GAAG,EAAE,MAAM,GACd;QACE,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC;QAC3B,EAAE,EAAE,aAAa,CAAC;QAClB,EAAE,EAAE,IAAI,CAAC;QACT,KAAK,EAAE,IAAI,CAAC;KACb,GACD,SAAS;IAmBb,gCAAgC;IAChC,aAAa,IAAI;QACf,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC;QAC3B,EAAE,EAAE,aAAa,CAAC;QAClB,EAAE,EAAE,IAAI,CAAC;KAEV,EAAE;IA+BH,gCAAgC;IAChC,SAAS,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,IAAI,KAAK,IAAI,GAAG,MAAM,IAAI;IAMvD;;;;;;;QAOI;IACJ,MAAM,CACJ,IAAI,EAAE,IAAI,EACV,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,GAAE,SAAS,GAAG,UAAsB;IAK7C;;;;;;;;OAQG;IACH,WAAW,CACT,KAAK,EAAE,IAAI,EAAE,EACb,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,GAAE,SAAS,GAAG,UAAsB;IAuC7C;;;;;;;;OAQG;IACH,OAAO,CACL,IAAI,EAAE,IAAI,EACV,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,GAAE,SAAS,GAAG,UAAsB;IAmC7C;;;;;;;QAOI;IACJ,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,SAAS,GAAG,UAAsB;IAmB9D,OAAO,CACL,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,IAAI,EACb,OAAO,GAAE,SAAS,GAAG,UAAsB;CAwB9C"}
|
package/dist/coValues/coList.js
CHANGED
|
@@ -12,7 +12,7 @@ export class RawCoList {
|
|
|
12
12
|
this.totalValidTransactions = 0;
|
|
13
13
|
}
|
|
14
14
|
/** @internal */
|
|
15
|
-
constructor(core) {
|
|
15
|
+
constructor(core, atTimeFilter) {
|
|
16
16
|
/** @category 6. Meta */
|
|
17
17
|
this.type = "colist";
|
|
18
18
|
/** The internal state of the RawCoList */
|
|
@@ -20,12 +20,20 @@ export class RawCoList {
|
|
|
20
20
|
this.beforeEnd = [];
|
|
21
21
|
this.insertions = {};
|
|
22
22
|
this.deletionsByInsertion = {};
|
|
23
|
+
/** @internal */
|
|
24
|
+
this.atTimeFilter = undefined;
|
|
23
25
|
this.knownTransactions = {};
|
|
24
26
|
this.version = 0;
|
|
25
27
|
this.totalValidTransactions = 0;
|
|
26
28
|
this.id = core.id;
|
|
27
29
|
this.core = core;
|
|
28
|
-
this.
|
|
30
|
+
this.insertions = {};
|
|
31
|
+
this.deletionsByInsertion = {};
|
|
32
|
+
this.afterStart = [];
|
|
33
|
+
this.beforeEnd = [];
|
|
34
|
+
this.knownTransactions = { [core.id]: 0 };
|
|
35
|
+
this.atTimeFilter = atTimeFilter;
|
|
36
|
+
this._processNewTransactions();
|
|
29
37
|
}
|
|
30
38
|
getInsertionsEntry(opID) {
|
|
31
39
|
const index = getSessionIndex(opID);
|
|
@@ -90,6 +98,12 @@ export class RawCoList {
|
|
|
90
98
|
list.push(value);
|
|
91
99
|
}
|
|
92
100
|
processNewTransactions() {
|
|
101
|
+
if (this.isTimeTravelEntity()) {
|
|
102
|
+
throw new Error("Cannot process transactions on a time travel entity");
|
|
103
|
+
}
|
|
104
|
+
this._processNewTransactions();
|
|
105
|
+
}
|
|
106
|
+
_processNewTransactions() {
|
|
93
107
|
const transactions = this.core.getValidSortedTransactions({
|
|
94
108
|
ignorePrivateTransactions: false,
|
|
95
109
|
knownTransactions: this.knownTransactions,
|
|
@@ -101,6 +115,9 @@ export class RawCoList {
|
|
|
101
115
|
let oldestValidTransaction = undefined;
|
|
102
116
|
this._cachedEntries = undefined;
|
|
103
117
|
for (const { txID, changes, madeAt } of transactions) {
|
|
118
|
+
if (this.isFilteredOut(madeAt)) {
|
|
119
|
+
continue;
|
|
120
|
+
}
|
|
104
121
|
lastValidTransaction = Math.max(lastValidTransaction ?? 0, madeAt);
|
|
105
122
|
oldestValidTransaction = Math.min(oldestValidTransaction ?? Infinity, madeAt);
|
|
106
123
|
for (const [changeIdx, changeUntyped] of changes.entries()) {
|
|
@@ -174,6 +191,15 @@ export class RawCoList {
|
|
|
174
191
|
this.resetInternalState();
|
|
175
192
|
this.processNewTransactions();
|
|
176
193
|
}
|
|
194
|
+
isTimeTravelEntity() {
|
|
195
|
+
return Boolean(this.atTimeFilter);
|
|
196
|
+
}
|
|
197
|
+
isFilteredOut(time) {
|
|
198
|
+
if (this.atTimeFilter === undefined) {
|
|
199
|
+
return false;
|
|
200
|
+
}
|
|
201
|
+
return time > this.atTimeFilter;
|
|
202
|
+
}
|
|
177
203
|
/** @category 6. Meta */
|
|
178
204
|
get headerMeta() {
|
|
179
205
|
return this.core.verified.header.meta;
|
|
@@ -187,8 +213,8 @@ export class RawCoList {
|
|
|
187
213
|
*
|
|
188
214
|
* @category 4. Time travel
|
|
189
215
|
*/
|
|
190
|
-
atTime(
|
|
191
|
-
|
|
216
|
+
atTime(time) {
|
|
217
|
+
return new RawCoList(this.core, time);
|
|
192
218
|
}
|
|
193
219
|
/**
|
|
194
220
|
* Get the item currently at `idx`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coList.js","sourceRoot":"","sources":["../../src/coValues/coList.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"coList.js","sourceRoot":"","sources":["../../src/coValues/coList.ts"],"names":[],"mappings":"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"}
|
package/dist/coValues/coMap.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CoID, RawCoValue } from "../coValue.js";
|
|
2
|
-
import { AvailableCoValueCore } from "../coValueCore/coValueCore.js";
|
|
2
|
+
import { AvailableCoValueCore, DecryptedTransaction } from "../coValueCore/coValueCore.js";
|
|
3
3
|
import { AgentID, RawCoID, TransactionID } from "../ids.js";
|
|
4
4
|
import { JsonObject, JsonValue } from "../jsonValue.js";
|
|
5
5
|
import { RawAccountID } from "./account.js";
|
|
@@ -44,7 +44,7 @@ export declare class RawCoMap<Shape extends {
|
|
|
44
44
|
knownTransactions: Record<RawCoID, number>;
|
|
45
45
|
totalValidTransactions: number;
|
|
46
46
|
version: number;
|
|
47
|
-
|
|
47
|
+
protected resetInternalState(): void;
|
|
48
48
|
/** @internal */
|
|
49
49
|
ignorePrivateTransactions: boolean;
|
|
50
50
|
/** @internal */
|
|
@@ -56,6 +56,7 @@ export declare class RawCoMap<Shape extends {
|
|
|
56
56
|
ignorePrivateTransactions: boolean;
|
|
57
57
|
});
|
|
58
58
|
processNewTransactions(): void;
|
|
59
|
+
handleNewTransaction(transaction: DecryptedTransaction): void;
|
|
59
60
|
rebuildFromCore(): void;
|
|
60
61
|
isTimeTravelEntity(): boolean;
|
|
61
62
|
/** @category 6. Meta */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coMap.d.ts","sourceRoot":"","sources":["../../src/coValues/coMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,
|
|
1
|
+
{"version":3,"file":"coMap.d.ts","sourceRoot":"","sources":["../../src/coValues/coMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGxD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,KAAK,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,SAAS,GAAG,SAAS,IAAI;IAC9D,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAGF,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,SAAS,GAAG,SAAS,IACtE;IACE,EAAE,EAAE,KAAK,CAAC;IACV,GAAG,EAAE,CAAC,CAAC;IACP,KAAK,EAAE,CAAC,CAAC;CACV,GACD;IACE,EAAE,EAAE,KAAK,CAAC;IACV,GAAG,EAAE,CAAC,CAAC;CACR,CAAC;AAEN,qBAAa,QAAQ,CACnB,KAAK,SAAS;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAA;CAAE,GAAG;IACvD,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;CACtC,EACD,IAAI,SAAS,UAAU,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,CAClD,YAAW,UAAU;IAErB,wBAAwB;IACxB,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,wBAAwB;IACxB,IAAI,UAAoB;IACxB,wBAAwB;IACxB,IAAI,EAAE,oBAAoB,CAAC;IAE3B,gBAAgB;IAChB,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED,gBAAgB;IAChB,IAAI,gBAAgB,IAAI,MAAM,CAE7B;IAED,yCAAyC;IACzC,GAAG,EAAE;SACF,GAAG,IAAI,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE;KACzD,CAAM;IACP,MAAM,EAAE;SACL,GAAG,IAAI,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;KACvD,CAAM;IAGP,iBAAiB,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAM;IAChD,sBAAsB,EAAE,MAAM,CAAK;IACnC,OAAO,EAAE,MAAM,CAAK;IAEpB,SAAS,CAAC,kBAAkB;IAO5B,gBAAgB;IAChB,yBAAyB,EAAE,OAAO,CAAC;IACnC,gBAAgB;IAChB,YAAY,CAAC,EAAE,MAAM,CAAa;IAClC,wBAAwB;IACxB,QAAQ,CAAC,MAAM,EAAG,KAAK,CAAC;IAExB,gBAAgB;gBAEd,IAAI,EAAE,oBAAoB,EAC1B,OAAO,CAAC,EAAE;QACR,yBAAyB,EAAE,OAAO,CAAC;KACpC;IAWH,sBAAsB;IA6DtB,oBAAoB,CAAC,WAAW,EAAE,oBAAoB;IAEtD,eAAe;IAOf,kBAAkB;IAIlB,wBAAwB;IACxB,IAAI,UAAU,IAAI,IAAI,CAErB;IAED,wBAAwB;IACxB,IAAI,KAAK,IAAI,QAAQ,CAEpB;IAED,+BAA+B;IAC/B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAS1B,gBAAgB;IAChB,eAAe,CAAC,CAAC,SAAS,MAAM,KAAK,GAAG,MAAM,EAC5C,GAAG,EAAE,CAAC,GACL,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS;IAcnC;;;8BAG0B;IAC1B,IAAI,CAAC,CAAC,SAAS,MAAM,KAAK,GAAG,MAAM,GAAG,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,EAAE;IAgBlE,MAAM,CAAC,CAAC,SAAS,MAAM,KAAK,GAAG,MAAM,EAAE,GAAG,EAAE,CAAC,OAzK1C,GAAG;IAoMN;;;;QAII;IACJ,GAAG,CAAC,CAAC,SAAS,MAAM,KAAK,GAAG,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS;IAcjE,2BAA2B;IAC3B,QAAQ,IAAI;SACT,CAAC,IAAI,MAAM,KAAK,GAAG,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;KACtC;IAiBD,2BAA2B;IAC3B,MAAM,IAAI;SACP,CAAC,IAAI,MAAM,KAAK,GAAG,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;KACtC;IAID,gCAAgC;IAChC,SAAS,CAAC,CAAC,SAAS,MAAM,KAAK,GAAG,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM;;;;;;IAiB3D,gCAAgC;IAChC,UAAU,CAAC,CAAC,SAAS,MAAM,KAAK,GAAG,MAAM,EACvC,GAAG,EAAE,CAAC,GAEJ;QACE,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC;QAC3B,EAAE,EAAE,aAAa,CAAC;QAClB,EAAE,EAAE,IAAI,CAAC;QACT,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;KAClB,GACD,SAAS;IAUb,gCAAgC;IAC/B,OAAO,CAAC,CAAC,SAAS,MAAM,KAAK,GAAG,MAAM,EAAE,GAAG,EAAE,CAAC;;;;;;IAmB/C,gCAAgC;IAChC,SAAS,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,KAAK,IAAI,GAAG,MAAM,IAAI;IAMtD;;;;;;;QAOI;IACJ,GAAG,CAAC,CAAC,SAAS,MAAM,KAAK,GAAG,MAAM,EAChC,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EACf,OAAO,GAAE,SAAS,GAAG,UAAsB,GAC1C,IAAI;IAmBP,MAAM,CACJ,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EACvB,OAAO,GAAE,SAAS,GAAG,UAAsB,GAC1C,IAAI;IAiBP;;;;;;;QAOI;IACJ,MAAM,CACJ,GAAG,EAAE,MAAM,KAAK,GAAG,MAAM,EACzB,OAAO,GAAE,SAAS,GAAG,UAAsB;CAkB9C;AAED,wBAAgB,oBAAoB,CAClC,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,SAAS,GAAG,SAAS,EAC/B,EAAE,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;;;;;EAOhB"}
|
package/dist/coValues/coMap.js
CHANGED
|
@@ -48,7 +48,8 @@ export class RawCoMap {
|
|
|
48
48
|
}
|
|
49
49
|
const { ops } = this;
|
|
50
50
|
const changedEntries = new Map();
|
|
51
|
-
for (const
|
|
51
|
+
for (const transaction of newValidTransactions) {
|
|
52
|
+
const { txID, changes, madeAt, tx } = transaction;
|
|
52
53
|
for (let changeIdx = 0; changeIdx < changes.length; changeIdx++) {
|
|
53
54
|
const change = changes[changeIdx];
|
|
54
55
|
const entry = {
|
|
@@ -69,6 +70,7 @@ export class RawCoMap {
|
|
|
69
70
|
changedEntries.set(change.key, entries);
|
|
70
71
|
}
|
|
71
72
|
}
|
|
73
|
+
this.handleNewTransaction(transaction);
|
|
72
74
|
}
|
|
73
75
|
for (const entries of changedEntries.values()) {
|
|
74
76
|
entries.sort(this.core.compareTransactions);
|
|
@@ -78,6 +80,7 @@ export class RawCoMap {
|
|
|
78
80
|
}
|
|
79
81
|
this.totalValidTransactions += newValidTransactions.length;
|
|
80
82
|
}
|
|
83
|
+
handleNewTransaction(transaction) { }
|
|
81
84
|
rebuildFromCore() {
|
|
82
85
|
this.version += 1;
|
|
83
86
|
this.resetInternalState();
|
|
@@ -96,15 +99,10 @@ export class RawCoMap {
|
|
|
96
99
|
}
|
|
97
100
|
/** @category 4. Time travel */
|
|
98
101
|
atTime(time) {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
const clone = Object.create(this);
|
|
104
|
-
clone.atTimeFilter = time;
|
|
105
|
-
clone.latest = {};
|
|
106
|
-
return clone;
|
|
107
|
-
}
|
|
102
|
+
const clone = Object.create(this);
|
|
103
|
+
clone.atTimeFilter = time;
|
|
104
|
+
clone.latest = {};
|
|
105
|
+
return clone;
|
|
108
106
|
}
|
|
109
107
|
/** @internal */
|
|
110
108
|
timeFilteredOps(key) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coMap.js","sourceRoot":"","sources":["../../src/coValues/coMap.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"coMap.js","sourceRoot":"","sources":["../../src/coValues/coMap.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,9 +46,10 @@ export declare class RawCoPlainText<Meta extends JsonObject | null = JsonObject
|
|
|
46
46
|
/** @category 6. Meta */
|
|
47
47
|
type: "coplaintext";
|
|
48
48
|
_cachedMapping: WeakMap<NonNullable<typeof this._cachedEntries>, PlaintextIdxMapping>;
|
|
49
|
-
constructor(core: AvailableCoValueCore);
|
|
49
|
+
constructor(core: AvailableCoValueCore, atTimeFilter?: number);
|
|
50
50
|
get mapping(): PlaintextIdxMapping;
|
|
51
51
|
toString(): string;
|
|
52
|
+
atTime(time: number): this;
|
|
52
53
|
/**
|
|
53
54
|
* Inserts `text` before the character at index `idx`.
|
|
54
55
|
* If idx is 0, inserts at the start of the text.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coPlainText.d.ts","sourceRoot":"","sources":["../../src/coValues/coPlainText.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAErE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAqB,IAAI,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEjE,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG;IAAE,iBAAiB,EAAE,IAAI,CAAA;CAAE,CAAC;AAEnE,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,eAAe,CAEzD;AAED,KAAK,mBAAmB,GAAG;IACzB,aAAa,EAAE,IAAI,EAAE,CAAC;IACtB,YAAY,EAAE,IAAI,EAAE,CAAC;IACrB,YAAY,EAAE;QAAE,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAAA;KAAE,CAAC;IAClD,aAAa,EAAE;QAAE,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAAA;KAAE,CAAC;CACpD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,cAAc,CACzB,IAAI,SAAS,UAAU,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,CAClD,SAAQ,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC;IAC/B,wBAAwB;IACxB,IAAI,gBAA0B;IAE9B,cAAc,EAAE,OAAO,CACrB,WAAW,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,EACvC,mBAAmB,CACpB,CAAC;gBAEU,IAAI,EAAE,oBAAoB;
|
|
1
|
+
{"version":3,"file":"coPlainText.d.ts","sourceRoot":"","sources":["../../src/coValues/coPlainText.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAErE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAqB,IAAI,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEjE,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG;IAAE,iBAAiB,EAAE,IAAI,CAAA;CAAE,CAAC;AAEnE,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,eAAe,CAEzD;AAED,KAAK,mBAAmB,GAAG;IACzB,aAAa,EAAE,IAAI,EAAE,CAAC;IACtB,YAAY,EAAE,IAAI,EAAE,CAAC;IACrB,YAAY,EAAE;QAAE,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAAA;KAAE,CAAC;IAClD,aAAa,EAAE;QAAE,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CAAA;KAAE,CAAC;CACpD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,cAAc,CACzB,IAAI,SAAS,UAAU,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,CAClD,SAAQ,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC;IAC/B,wBAAwB;IACxB,IAAI,gBAA0B;IAE9B,cAAc,EAAE,OAAO,CACrB,WAAW,CAAC,OAAO,IAAI,CAAC,cAAc,CAAC,EACvC,mBAAmB,CACpB,CAAC;gBAEU,IAAI,EAAE,oBAAoB,EAAE,YAAY,CAAC,EAAE,MAAM;IAK7D,IAAI,OAAO,wBA6BV;IAED,QAAQ;IAMR,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI1B;;;;;;;;OAQG;IACH,YAAY,CACV,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,SAAS,GAAG,UAAsB;IAqB7C,WAAW,CACT,IAAI,EAAE,MAAM,EAAE,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,SAAS,GAAG,UAAsB;IAS7C;;;;;;;OAOG;IACH,WAAW,CACT,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,SAAS,GAAG,UAAsB;IAW7C,WAAW,CACT,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,EAC1C,OAAO,GAAE,SAAS,GAAG,UAAsB;IAsB7C,2DAA2D;IAC3D,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IAInC,8DAA8D;IAC9D,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM;CAG3C"}
|
|
@@ -32,8 +32,8 @@ export function stringifyOpID(opID) {
|
|
|
32
32
|
* ```
|
|
33
33
|
*/
|
|
34
34
|
export class RawCoPlainText extends RawCoList {
|
|
35
|
-
constructor(core) {
|
|
36
|
-
super(core);
|
|
35
|
+
constructor(core, atTimeFilter) {
|
|
36
|
+
super(core, atTimeFilter);
|
|
37
37
|
/** @category 6. Meta */
|
|
38
38
|
this.type = "coplaintext";
|
|
39
39
|
this._cachedMapping = new WeakMap();
|
|
@@ -67,6 +67,9 @@ export class RawCoPlainText extends RawCoList {
|
|
|
67
67
|
.map((entry) => entry.value)
|
|
68
68
|
.join("");
|
|
69
69
|
}
|
|
70
|
+
atTime(time) {
|
|
71
|
+
return new RawCoPlainText(this.core, time);
|
|
72
|
+
}
|
|
70
73
|
/**
|
|
71
74
|
* Inserts `text` before the character at index `idx`.
|
|
72
75
|
* If idx is 0, inserts at the start of the text.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coPlainText.js","sourceRoot":"","sources":["../../src/coValues/coPlainText.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EAA2B,SAAS,EAAE,MAAM,aAAa,CAAC;AAIjE,MAAM,UAAU,aAAa,CAAC,IAAU;IACtC,OAAO,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,EAAqB,CAAC;AAClF,CAAC;AASD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,OAAO,cAEX,SAAQ,SAAuB;IAS/B,YAAY,IAA0B;
|
|
1
|
+
{"version":3,"file":"coPlainText.js","sourceRoot":"","sources":["../../src/coValues/coPlainText.ts"],"names":[],"mappings":"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"}
|
package/dist/coValues/group.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { CoID } from "../coValue.js";
|
|
2
|
-
import type { AvailableCoValueCore, CoValueCore } from "../coValueCore/coValueCore.js";
|
|
2
|
+
import type { AvailableCoValueCore, CoValueCore, DecryptedTransaction } from "../coValueCore/coValueCore.js";
|
|
3
3
|
import type { CoValueUniqueness } from "../coValueCore/verifiedState.js";
|
|
4
4
|
import type { CryptoProvider, Encrypted, KeyID, KeySecret, Sealed } from "../crypto/crypto.js";
|
|
5
5
|
import { AgentID, ChildGroupReference, ParentGroupReference } from "../ids.js";
|
|
@@ -53,9 +53,13 @@ export type GroupShape = {
|
|
|
53
53
|
export declare class RawGroup<Meta extends JsonObject | null = JsonObject | null> extends RawCoMap<GroupShape, Meta> {
|
|
54
54
|
protected readonly crypto: CryptoProvider;
|
|
55
55
|
_lastReadableKeyId?: KeyID;
|
|
56
|
+
private parentGroupsChanges;
|
|
57
|
+
protected resetInternalState(): void;
|
|
56
58
|
constructor(core: AvailableCoValueCore, options?: {
|
|
57
59
|
ignorePrivateTransactions: boolean;
|
|
58
60
|
});
|
|
61
|
+
handleNewTransaction(transaction: DecryptedTransaction): void;
|
|
62
|
+
private updateParentGroupCache;
|
|
59
63
|
migrate(): void;
|
|
60
64
|
/**
|
|
61
65
|
* Returns the current role of a given account.
|
|
@@ -70,8 +74,8 @@ export declare class RawGroup<Meta extends JsonObject | null = JsonObject | null
|
|
|
70
74
|
*/
|
|
71
75
|
/** @internal */
|
|
72
76
|
roleOfInternal(accountID: RawAccountID | AgentID | typeof EVERYONE): Role | undefined;
|
|
73
|
-
|
|
74
|
-
getParentGroups(
|
|
77
|
+
getParentGroup(id: CoID<RawGroup>, atTime?: number): RawGroup<JsonObject | null>;
|
|
78
|
+
getParentGroups(): RawGroup<JsonObject | null>[];
|
|
75
79
|
forEachChildGroup(callback: (child: RawGroup) => void): void;
|
|
76
80
|
/**
|
|
77
81
|
* Returns the role of the current account in the group.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../src/coValues/group.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,EACV,oBAAoB,EACpB,WAAW,
|
|
1
|
+
{"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../src/coValues/group.ts"],"names":[],"mappings":"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"}
|
package/dist/coValues/group.js
CHANGED
|
@@ -72,6 +72,37 @@ function rotateReadKeyIfNeeded(group) {
|
|
|
72
72
|
group.rotateReadKey();
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
|
+
class TimeBasedEntry {
|
|
76
|
+
constructor() {
|
|
77
|
+
this.changes = [];
|
|
78
|
+
}
|
|
79
|
+
addChange(madeAt, value) {
|
|
80
|
+
const changes = this.changes;
|
|
81
|
+
const newChange = { madeAt, value };
|
|
82
|
+
// Insert the change in chronological order
|
|
83
|
+
// Find the correct position by searching backwards from the end
|
|
84
|
+
let insertIndex = changes.length;
|
|
85
|
+
while (insertIndex > 0 && changes[insertIndex - 1].madeAt > madeAt) {
|
|
86
|
+
insertIndex--;
|
|
87
|
+
}
|
|
88
|
+
// Insert at the correct position to maintain chronological order
|
|
89
|
+
if (insertIndex === changes.length) {
|
|
90
|
+
changes.push(newChange);
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
changes.splice(insertIndex, 0, newChange);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
getLatest() {
|
|
97
|
+
return this.changes[this.changes.length - 1]?.value;
|
|
98
|
+
}
|
|
99
|
+
getAtTime(atTime) {
|
|
100
|
+
if (atTime === undefined) {
|
|
101
|
+
return this.getLatest();
|
|
102
|
+
}
|
|
103
|
+
return this.changes.findLast((change) => change.madeAt <= atTime)?.value;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
75
106
|
/** A `Group` is a scope for permissions of its members (`"reader" | "writer" | "admin"`), applying to objects owned by that group.
|
|
76
107
|
*
|
|
77
108
|
* A `Group` object exposes methods for permission management and allows you to create new CoValues owned by that group.
|
|
@@ -94,11 +125,38 @@ function rotateReadKeyIfNeeded(group) {
|
|
|
94
125
|
* ```
|
|
95
126
|
* */
|
|
96
127
|
export class RawGroup extends RawCoMap {
|
|
128
|
+
resetInternalState() {
|
|
129
|
+
super.resetInternalState();
|
|
130
|
+
this.parentGroupsChanges = new Map();
|
|
131
|
+
this._lastReadableKeyId = undefined;
|
|
132
|
+
}
|
|
97
133
|
constructor(core, options) {
|
|
98
134
|
super(core, options);
|
|
99
135
|
this.crypto = core.node.crypto;
|
|
100
136
|
this.migrate();
|
|
101
137
|
}
|
|
138
|
+
// We override the handleNewTransaction hook from CoMap to build the parent group cache
|
|
139
|
+
handleNewTransaction(transaction) {
|
|
140
|
+
if (!this.parentGroupsChanges) {
|
|
141
|
+
this.parentGroupsChanges = new Map();
|
|
142
|
+
}
|
|
143
|
+
// Build parent group cache incrementally
|
|
144
|
+
for (const changeValue of transaction.changes) {
|
|
145
|
+
const change = changeValue;
|
|
146
|
+
if (change.op === "set" && isParentGroupReference(change.key)) {
|
|
147
|
+
this.updateParentGroupCache(change.key, change.value, transaction.madeAt);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
updateParentGroupCache(key, value, timestamp) {
|
|
152
|
+
const parentGroupId = key.substring(7); // Remove 'parent_' prefix
|
|
153
|
+
let entry = this.parentGroupsChanges.get(parentGroupId);
|
|
154
|
+
if (!entry) {
|
|
155
|
+
entry = new TimeBasedEntry();
|
|
156
|
+
this.parentGroupsChanges.set(parentGroupId, entry);
|
|
157
|
+
}
|
|
158
|
+
entry.addChange(timestamp, value);
|
|
159
|
+
}
|
|
102
160
|
migrate() {
|
|
103
161
|
if (!this.core.isGroup()) {
|
|
104
162
|
return;
|
|
@@ -138,14 +196,12 @@ export class RawGroup extends RawCoMap {
|
|
|
138
196
|
roleHere = undefined;
|
|
139
197
|
}
|
|
140
198
|
let roleInfo = roleHere;
|
|
141
|
-
for (const
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
const group = this.getParentGroupFromKey(key, this.atTimeFilter);
|
|
145
|
-
if (!group)
|
|
199
|
+
for (const [parentGroupId, entry] of this.parentGroupsChanges.entries()) {
|
|
200
|
+
const role = entry.getAtTime(this.atTimeFilter);
|
|
201
|
+
if (!role || role === "revoked")
|
|
146
202
|
continue;
|
|
147
|
-
const
|
|
148
|
-
const parentRole =
|
|
203
|
+
const parentGroup = this.getParentGroup(parentGroupId, this.atTimeFilter);
|
|
204
|
+
const parentRole = parentGroup.roleOfInternal(accountID);
|
|
149
205
|
if (!isInheritableRole(parentRole)) {
|
|
150
206
|
continue;
|
|
151
207
|
}
|
|
@@ -161,11 +217,8 @@ export class RawGroup extends RawCoMap {
|
|
|
161
217
|
}
|
|
162
218
|
return roleInfo;
|
|
163
219
|
}
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
return null;
|
|
167
|
-
}
|
|
168
|
-
const parent = this.core.node.expectCoValueLoaded(getParentGroupId(key), "Expected parent group to be loaded");
|
|
220
|
+
getParentGroup(id, atTime) {
|
|
221
|
+
const parent = this.core.node.expectCoValueLoaded(id, "Expected parent group to be loaded");
|
|
169
222
|
const group = expectGroup(parent.getCurrentContent());
|
|
170
223
|
if (atTime) {
|
|
171
224
|
return group.atTime(atTime);
|
|
@@ -174,20 +227,13 @@ export class RawGroup extends RawCoMap {
|
|
|
174
227
|
return group;
|
|
175
228
|
}
|
|
176
229
|
}
|
|
177
|
-
getParentGroups(
|
|
230
|
+
getParentGroups() {
|
|
178
231
|
const groups = [];
|
|
179
|
-
for (const
|
|
180
|
-
|
|
232
|
+
for (const [parentGroupId, entry] of this.parentGroupsChanges.entries()) {
|
|
233
|
+
const role = entry.getAtTime(this.atTimeFilter);
|
|
234
|
+
if (!role || role === "revoked")
|
|
181
235
|
continue;
|
|
182
|
-
|
|
183
|
-
if (group) {
|
|
184
|
-
if (atTime) {
|
|
185
|
-
groups.push(group.atTime(atTime));
|
|
186
|
-
}
|
|
187
|
-
else {
|
|
188
|
-
groups.push(group);
|
|
189
|
-
}
|
|
190
|
-
}
|
|
236
|
+
groups.push(this.getParentGroup(parentGroupId, this.atTimeFilter));
|
|
191
237
|
}
|
|
192
238
|
return groups;
|
|
193
239
|
}
|