cojson 0.17.9 → 0.17.11

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 (86) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +18 -0
  3. package/dist/coValueCore/SessionMap.d.ts +45 -0
  4. package/dist/coValueCore/SessionMap.d.ts.map +1 -0
  5. package/dist/coValueCore/SessionMap.js +118 -0
  6. package/dist/coValueCore/SessionMap.js.map +1 -0
  7. package/dist/coValueCore/coValueCore.d.ts +10 -4
  8. package/dist/coValueCore/coValueCore.d.ts.map +1 -1
  9. package/dist/coValueCore/coValueCore.js +55 -68
  10. package/dist/coValueCore/coValueCore.js.map +1 -1
  11. package/dist/coValueCore/verifiedState.d.ts +15 -19
  12. package/dist/coValueCore/verifiedState.d.ts.map +1 -1
  13. package/dist/coValueCore/verifiedState.js +24 -87
  14. package/dist/coValueCore/verifiedState.js.map +1 -1
  15. package/dist/coValues/account.d.ts +4 -0
  16. package/dist/coValues/account.d.ts.map +1 -1
  17. package/dist/coValues/account.js +24 -4
  18. package/dist/coValues/account.js.map +1 -1
  19. package/dist/coValues/group.d.ts.map +1 -1
  20. package/dist/coValues/group.js +6 -2
  21. package/dist/coValues/group.js.map +1 -1
  22. package/dist/crypto/PureJSCrypto.d.ts +31 -3
  23. package/dist/crypto/PureJSCrypto.d.ts.map +1 -1
  24. package/dist/crypto/PureJSCrypto.js +115 -0
  25. package/dist/crypto/PureJSCrypto.js.map +1 -1
  26. package/dist/crypto/WasmCrypto.d.ts +23 -4
  27. package/dist/crypto/WasmCrypto.d.ts.map +1 -1
  28. package/dist/crypto/WasmCrypto.js +44 -2
  29. package/dist/crypto/WasmCrypto.js.map +1 -1
  30. package/dist/crypto/crypto.d.ts +17 -1
  31. package/dist/crypto/crypto.d.ts.map +1 -1
  32. package/dist/crypto/crypto.js.map +1 -1
  33. package/dist/localNode.d.ts +1 -0
  34. package/dist/localNode.d.ts.map +1 -1
  35. package/dist/localNode.js +10 -5
  36. package/dist/localNode.js.map +1 -1
  37. package/dist/permissions.d.ts +17 -1
  38. package/dist/permissions.d.ts.map +1 -1
  39. package/dist/permissions.js.map +1 -1
  40. package/dist/sync.d.ts.map +1 -1
  41. package/dist/sync.js +55 -49
  42. package/dist/sync.js.map +1 -1
  43. package/dist/tests/PureJSCrypto.test.d.ts +2 -0
  44. package/dist/tests/PureJSCrypto.test.d.ts.map +1 -0
  45. package/dist/tests/PureJSCrypto.test.js +102 -0
  46. package/dist/tests/PureJSCrypto.test.js.map +1 -0
  47. package/dist/tests/WasmCrypto.test.d.ts +2 -0
  48. package/dist/tests/WasmCrypto.test.d.ts.map +1 -0
  49. package/dist/tests/WasmCrypto.test.js +88 -0
  50. package/dist/tests/WasmCrypto.test.js.map +1 -0
  51. package/dist/tests/coValueCore.test.js +62 -187
  52. package/dist/tests/coValueCore.test.js.map +1 -1
  53. package/dist/tests/coreWasm.test.d.ts +2 -0
  54. package/dist/tests/coreWasm.test.d.ts.map +1 -0
  55. package/dist/tests/coreWasm.test.js +80 -0
  56. package/dist/tests/coreWasm.test.js.map +1 -0
  57. package/dist/tests/group.addMember.test.js +6 -11
  58. package/dist/tests/group.addMember.test.js.map +1 -1
  59. package/dist/tests/sync.load.test.js +40 -1
  60. package/dist/tests/sync.load.test.js.map +1 -1
  61. package/dist/tests/sync.test.js +1 -1
  62. package/dist/tests/sync.test.js.map +1 -1
  63. package/dist/tests/testUtils.d.ts +3 -0
  64. package/dist/tests/testUtils.d.ts.map +1 -1
  65. package/dist/tests/testUtils.js +4 -1
  66. package/dist/tests/testUtils.js.map +1 -1
  67. package/package.json +3 -3
  68. package/src/coValueCore/SessionMap.ts +229 -0
  69. package/src/coValueCore/coValueCore.ts +106 -121
  70. package/src/coValueCore/verifiedState.ts +61 -132
  71. package/src/coValues/account.ts +28 -4
  72. package/src/coValues/group.ts +10 -2
  73. package/src/crypto/PureJSCrypto.ts +206 -2
  74. package/src/crypto/WasmCrypto.ts +95 -4
  75. package/src/crypto/crypto.ts +38 -1
  76. package/src/localNode.ts +18 -10
  77. package/src/permissions.ts +17 -1
  78. package/src/sync.ts +63 -59
  79. package/src/tests/PureJSCrypto.test.ts +153 -0
  80. package/src/tests/WasmCrypto.test.ts +128 -0
  81. package/src/tests/coValueCore.test.ts +81 -293
  82. package/src/tests/coreWasm.test.ts +142 -0
  83. package/src/tests/group.addMember.test.ts +69 -63
  84. package/src/tests/sync.load.test.ts +52 -0
  85. package/src/tests/sync.test.ts +0 -2
  86. package/src/tests/testUtils.ts +9 -1
@@ -1,12 +1,14 @@
1
1
  import { Result } from "neverthrow";
2
2
  import { AnyRawCoValue } from "../coValue.js";
3
- import { CryptoProvider, Encrypted, Hash, KeyID, Signature, SignerID, StreamingHash } from "../crypto/crypto.js";
3
+ import { CryptoProvider, Encrypted, KeyID, KeySecret, Signature, SignerID } from "../crypto/crypto.js";
4
4
  import { RawCoID, SessionID, TransactionID } from "../ids.js";
5
5
  import { Stringified } from "../jsonStringify.js";
6
6
  import { JsonObject, JsonValue } from "../jsonValue.js";
7
7
  import { PermissionsDef as RulesetDef } from "../permissions.js";
8
8
  import { CoValueKnownState, NewContentMessage } from "../sync.js";
9
9
  import { TryAddTransactionsError } from "./coValueCore.js";
10
+ import { SessionMap } from "./SessionMap.js";
11
+ import { ControlledAccountOrAgent } from "../coValues/account.js";
10
12
  export type CoValueHeader = {
11
13
  type: AnyRawCoValue["type"];
12
14
  ruleset: RulesetDef;
@@ -31,33 +33,27 @@ export type TrustingTransaction = {
31
33
  changes: Stringified<JsonValue[]>;
32
34
  };
33
35
  export type Transaction = PrivateTransaction | TrustingTransaction;
34
- type SessionLog = {
35
- readonly transactions: Transaction[];
36
- streamingHash?: StreamingHash;
37
- readonly signatureAfter: {
38
- [txIdx: number]: Signature | undefined;
39
- };
40
- lastSignature: Signature;
41
- };
42
- export type ValidatedSessions = Map<SessionID, SessionLog>;
43
36
  export declare class VerifiedState {
44
37
  readonly id: RawCoID;
45
38
  readonly crypto: CryptoProvider;
46
39
  readonly header: CoValueHeader;
47
- readonly sessions: ValidatedSessions;
40
+ readonly sessions: SessionMap;
48
41
  private _cachedKnownState?;
49
42
  private _cachedNewContentSinceEmpty;
50
43
  private streamingKnownState?;
51
44
  lastAccessed: number | undefined;
52
- constructor(id: RawCoID, crypto: CryptoProvider, header: CoValueHeader, sessions: ValidatedSessions, streamingKnownState?: CoValueKnownState["sessions"]);
45
+ constructor(id: RawCoID, crypto: CryptoProvider, header: CoValueHeader, sessions?: SessionMap, streamingKnownState?: CoValueKnownState["sessions"]);
53
46
  clone(): VerifiedState;
54
- tryAddTransactions(sessionID: SessionID, signerID: SignerID, newTransactions: Transaction[], givenExpectedNewHash: Hash | undefined, newSignature: Signature, skipVerify?: boolean, givenNewStreamingHash?: StreamingHash): Result<true, TryAddTransactionsError>;
55
- getLastSignatureCheckpoint(sessionID: SessionID): number;
56
- private doAddTransactions;
57
- expectedNewHashAfter(sessionID: SessionID, newTransactions: Transaction[]): {
58
- expectedNewHash: Hash;
59
- newStreamingHash: StreamingHash;
47
+ tryAddTransactions(sessionID: SessionID, signerID: SignerID | undefined, newTransactions: Transaction[], newSignature: Signature, skipVerify?: boolean): Result<true, TryAddTransactionsError>;
48
+ makeNewTrustingTransaction(sessionID: SessionID, signerAgent: ControlledAccountOrAgent, changes: JsonValue[]): {
49
+ signature: Signature;
50
+ transaction: Transaction;
60
51
  };
52
+ makeNewPrivateTransaction(sessionID: SessionID, signerAgent: ControlledAccountOrAgent, changes: JsonValue[], keyID: KeyID, keySecret: KeySecret): {
53
+ signature: Signature;
54
+ transaction: Transaction;
55
+ };
56
+ getLastSignatureCheckpoint(sessionID: SessionID): number;
61
57
  newContentSince(knownState: CoValueKnownState | undefined): NewContentMessage[] | undefined;
62
58
  /**
63
59
  * Returns the known state considering the known state of the streaming source
@@ -69,6 +65,6 @@ export declare class VerifiedState {
69
65
  knownState(): CoValueKnownState;
70
66
  /** @internal */
71
67
  knownStateUncached(): CoValueKnownState;
68
+ decryptTransaction(sessionID: SessionID, txIndex: number, keySecret: KeySecret): JsonValue[] | undefined;
72
69
  }
73
- export {};
74
70
  //# sourceMappingURL=verifiedState.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verifiedState.d.ts","sourceRoot":"","sources":["../../src/coValueCore/verifiedState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verifiedState.d.ts","sourceRoot":"","sources":["../../src/coValueCore/verifiedState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAW,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAM9C,OAAO,EACL,cAAc,EACd,SAAS,EAET,KAAK,EACL,SAAS,EACT,SAAS,EACT,QAAQ,EAET,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,cAAc,IAAI,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAElE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAc,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAElE,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,EAAE,UAAU,CAAC;IACpB,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;CACzB,GAAG,iBAAiB,CAAC;AAEtB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,IAAI,MAAM,EAAE,GAAG,IAAI,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,SAAS,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,KAAK,CAAC;IACf,gBAAgB,EAAE,SAAS,CAAC,SAAS,EAAE,EAAE;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,EAAE,EAAE,aAAa,CAAA;KAAE,CAAC,CAAC;CAC9E,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,UAAU,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,kBAAkB,GAAG,mBAAmB,CAAC;AAEnE,qBAAa,aAAa;IACxB,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC9B,OAAO,CAAC,iBAAiB,CAAC,CAAoB;IAC9C,OAAO,CAAC,2BAA2B,CAAkC;IACrE,OAAO,CAAC,mBAAmB,CAAC,CAAgC;IACrD,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;gBAGtC,EAAE,EAAE,OAAO,EACX,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,aAAa,EACrB,QAAQ,CAAC,EAAE,UAAU,EACrB,mBAAmB,CAAC,EAAE,iBAAiB,CAAC,UAAU,CAAC;IAWrD,KAAK,IAAI,aAAa;IAUtB,kBAAkB,CAChB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAC9B,eAAe,EAAE,WAAW,EAAE,EAC9B,YAAY,EAAE,SAAS,EACvB,UAAU,GAAE,OAAe,GAC1B,MAAM,CAAC,IAAI,EAAE,uBAAuB,CAAC;IAiBxC,0BAA0B,CACxB,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,wBAAwB,EACrC,OAAO,EAAE,SAAS,EAAE;;;;IActB,yBAAyB,CACvB,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,wBAAwB,EACrC,OAAO,EAAE,SAAS,EAAE,EACpB,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS;;;;IAgBtB,0BAA0B,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM;IAWxD,eAAe,CACb,UAAU,EAAE,iBAAiB,GAAG,SAAS,GACxC,iBAAiB,EAAE,GAAG,SAAS;IAoHlC;;;;OAIG;IACH,uBAAuB,IAAI,iBAAiB;IAgC5C,WAAW,IAAI,OAAO;IAOtB,UAAU,IAAI,iBAAiB;IAU/B,gBAAgB;IAChB,kBAAkB,IAAI,iBAAiB;IAcvC,kBAAkB,CAChB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,SAAS,GACnB,SAAS,EAAE,GAAG,SAAS;CAG3B"}
@@ -1,109 +1,43 @@
1
- import { err, ok } from "neverthrow";
2
1
  import { createContentMessage, exceedsRecommendedSize, getTransactionSize, } from "../coValueContentMessage.js";
3
- import { StreamingHash, } from "../crypto/crypto.js";
2
+ import { SessionMap } from "./SessionMap.js";
4
3
  export class VerifiedState {
5
4
  constructor(id, crypto, header, sessions, streamingKnownState) {
6
5
  this.id = id;
7
6
  this.crypto = crypto;
8
7
  this.header = header;
9
- this.sessions = sessions;
8
+ this.sessions = sessions ?? new SessionMap(id, crypto);
10
9
  this.streamingKnownState = streamingKnownState
11
10
  ? { ...streamingKnownState }
12
11
  : undefined;
13
12
  }
14
13
  clone() {
15
- // do a deep clone, including the sessions
16
- const clonedSessions = new Map();
17
- for (let [sessionID, sessionLog] of this.sessions) {
18
- clonedSessions.set(sessionID, {
19
- lastSignature: sessionLog.lastSignature,
20
- streamingHash: sessionLog.streamingHash?.clone(),
21
- signatureAfter: { ...sessionLog.signatureAfter },
22
- transactions: sessionLog.transactions.slice(),
23
- });
24
- }
25
- return new VerifiedState(this.id, this.crypto, this.header, clonedSessions, this.streamingKnownState);
14
+ return new VerifiedState(this.id, this.crypto, this.header, this.sessions.clone(), this.streamingKnownState ? { ...this.streamingKnownState } : undefined);
26
15
  }
27
- tryAddTransactions(sessionID, signerID, newTransactions, givenExpectedNewHash, newSignature, skipVerify = false, givenNewStreamingHash) {
28
- if (skipVerify === true) {
29
- this.doAddTransactions(sessionID, newTransactions, newSignature, givenNewStreamingHash);
16
+ tryAddTransactions(sessionID, signerID, newTransactions, newSignature, skipVerify = false) {
17
+ const result = this.sessions.addTransaction(sessionID, signerID, newTransactions, newSignature, skipVerify);
18
+ if (result.isOk()) {
19
+ this._cachedNewContentSinceEmpty = undefined;
20
+ this._cachedKnownState = undefined;
30
21
  }
31
- else {
32
- const { expectedNewHash, newStreamingHash } = this.expectedNewHashAfter(sessionID, newTransactions);
33
- if (givenExpectedNewHash && givenExpectedNewHash !== expectedNewHash) {
34
- return err({
35
- type: "InvalidHash",
36
- id: this.id,
37
- expectedNewHash,
38
- givenExpectedNewHash,
39
- });
40
- }
41
- if (!this.crypto.verify(newSignature, expectedNewHash, signerID)) {
42
- return err({
43
- type: "InvalidSignature",
44
- id: this.id,
45
- newSignature,
46
- sessionID,
47
- signerID,
48
- });
49
- }
50
- this.doAddTransactions(sessionID, newTransactions, newSignature, newStreamingHash);
51
- }
52
- return ok(true);
22
+ return result;
53
23
  }
54
- getLastSignatureCheckpoint(sessionID) {
55
- const sessionLog = this.sessions.get(sessionID);
56
- if (!sessionLog?.signatureAfter)
57
- return -1;
58
- return Object.keys(sessionLog.signatureAfter).reduce((max, idx) => Math.max(max, parseInt(idx)), -1);
24
+ makeNewTrustingTransaction(sessionID, signerAgent, changes) {
25
+ const result = this.sessions.makeNewTrustingTransaction(sessionID, signerAgent, changes);
26
+ this._cachedNewContentSinceEmpty = undefined;
27
+ this._cachedKnownState = undefined;
28
+ return result;
59
29
  }
60
- doAddTransactions(sessionID, newTransactions, newSignature, newStreamingHash) {
61
- const sessionLog = this.sessions.get(sessionID);
62
- const transactions = sessionLog?.transactions ?? [];
63
- for (const tx of newTransactions) {
64
- transactions.push(tx);
65
- }
66
- const signatureAfter = sessionLog?.signatureAfter ?? {};
67
- const lastInbetweenSignatureIdx = this.getLastSignatureCheckpoint(sessionID);
68
- const sizeOfTxsSinceLastInbetweenSignature = transactions
69
- .slice(lastInbetweenSignatureIdx + 1)
70
- .reduce((sum, tx) => sum + getTransactionSize(tx), 0);
71
- if (exceedsRecommendedSize(sizeOfTxsSinceLastInbetweenSignature)) {
72
- signatureAfter[transactions.length - 1] = newSignature;
73
- }
74
- this.sessions.set(sessionID, {
75
- transactions,
76
- streamingHash: newStreamingHash,
77
- lastSignature: newSignature,
78
- signatureAfter: signatureAfter,
79
- });
30
+ makeNewPrivateTransaction(sessionID, signerAgent, changes, keyID, keySecret) {
31
+ const result = this.sessions.makeNewPrivateTransaction(sessionID, signerAgent, changes, keyID, keySecret);
80
32
  this._cachedNewContentSinceEmpty = undefined;
81
33
  this._cachedKnownState = undefined;
34
+ return result;
82
35
  }
83
- expectedNewHashAfter(sessionID, newTransactions) {
36
+ getLastSignatureCheckpoint(sessionID) {
84
37
  const sessionLog = this.sessions.get(sessionID);
85
- if (!sessionLog?.streamingHash) {
86
- const streamingHash = new StreamingHash(this.crypto);
87
- const oldTransactions = sessionLog?.transactions ?? [];
88
- for (const transaction of oldTransactions) {
89
- streamingHash.update(transaction);
90
- }
91
- for (const transaction of newTransactions) {
92
- streamingHash.update(transaction);
93
- }
94
- return {
95
- expectedNewHash: streamingHash.digest(),
96
- newStreamingHash: streamingHash,
97
- };
98
- }
99
- const streamingHash = sessionLog.streamingHash.clone();
100
- for (const transaction of newTransactions) {
101
- streamingHash.update(transaction);
102
- }
103
- return {
104
- expectedNewHash: streamingHash.digest(),
105
- newStreamingHash: streamingHash,
106
- };
38
+ if (!sessionLog?.signatureAfter)
39
+ return -1;
40
+ return Object.keys(sessionLog.signatureAfter).reduce((max, idx) => Math.max(max, parseInt(idx)), -1);
107
41
  }
108
42
  newContentSince(knownState) {
109
43
  const isKnownStateEmpty = !knownState?.header && !knownState?.sessions;
@@ -246,6 +180,9 @@ export class VerifiedState {
246
180
  sessions,
247
181
  };
248
182
  }
183
+ decryptTransaction(sessionID, txIndex, keySecret) {
184
+ return this.sessions.decryptTransaction(sessionID, txIndex, keySecret);
185
+ }
249
186
  }
250
187
  function getNextKnownSignatureIdx(log, knownStateForSessionID, sentStateForSessionID) {
251
188
  return Object.keys(log.signatureAfter)
@@ -1 +1 @@
1
- {"version":3,"file":"verifiedState.js","sourceRoot":"","sources":["../../src/coValueCore/verifiedState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verifiedState.js","sourceRoot":"","sources":["../../src/coValueCore/verifiedState.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,10 @@ export declare class ControlledAccount implements ControlledAccountOrAgent {
31
31
  account: RawAccount<AccountMeta>;
32
32
  agentSecret: AgentSecret;
33
33
  _cachedCurrentAgentID: AgentID | undefined;
34
+ _cachedCurrentSignerID: SignerID | undefined;
35
+ _cachedCurrentSignerSecret: SignerSecret | undefined;
36
+ _cachedCurrentSealerID: SealerID | undefined;
37
+ _cachedCurrentSealerSecret: SealerSecret | undefined;
34
38
  crypto: CryptoProvider;
35
39
  constructor(account: RawAccount<AccountMeta>, agentSecret: AgentSecret);
36
40
  get id(): RawAccountID;
@@ -1 +1 @@
1
- {"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../../src/coValues/account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAKjD,OAAO,EACL,aAAa,EAEd,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,WAAW,EACX,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,YAAY,EACb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEpD,wBAAgB,kCAAkC,CAChD,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,cAAc,GACrB,aAAa,CAWf;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,uBAAuB,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,qBAAa,UAAU,CACrB,IAAI,SAAS,WAAW,GAAG,WAAW,CACtC,SAAQ,QAAQ,CAAC,IAAI,CAAC;IACtB,qBAAqB,EAAE,OAAO,GAAG,SAAS,CAAC;IAE3C,cAAc,IAAI,OAAO;IAsBzB,YAAY,CAAC,CAAC,EAAE,WAAW,GAAG,YAAY;CAG3C;AAED,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC;IAC3B,WAAW,EAAE,WAAW,CAAC;IAEzB,cAAc,EAAE,MAAM,OAAO,CAAC;IAC9B,eAAe,EAAE,MAAM,QAAQ,CAAC;IAChC,mBAAmB,EAAE,MAAM,YAAY,CAAC;IACxC,eAAe,EAAE,MAAM,QAAQ,CAAC;IAChC,mBAAmB,EAAE,MAAM,YAAY,CAAC;CACzC;AAED,cAAc;AACd,qBAAa,iBAAkB,YAAW,wBAAwB;IAChE,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IACjC,WAAW,EAAE,WAAW,CAAC;IACzB,qBAAqB,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3C,MAAM,EAAE,cAAc,CAAC;gBAEX,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,WAAW;IAMtE,IAAI,EAAE,IAAI,YAAY,CAErB;IAED,cAAc,IAAI,OAAO;IASzB,eAAe;IAIf,mBAAmB,IAAI,YAAY;IAInC,eAAe;IAIf,mBAAmB,IAAI,YAAY;CAGpC;AAED,qBAAa,eAAgB,YAAW,wBAAwB;IAErD,WAAW,EAAE,WAAW;IACxB,MAAM,EAAE,cAAc;gBADtB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,cAAc;IAG/B,IAAI,EAAE,IAAI,OAAO,CAEhB;IAED,cAAc;IAId,eAAe;IAIf,mBAAmB,IAAI,YAAY;IAInC,eAAe;IAIf,mBAAmB,IAAI,YAAY;CAGpC;AAED,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC;AAC9C,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;AAE5C,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,qBAAa,UAAU,CACrB,KAAK,SAAS,YAAY,GAAG,YAAY,EACzC,IAAI,SAAS,UAAU,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,CAClD,SAAQ,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;CAAG;AAElC,MAAM,MAAM,mBAAmB,CAAC,IAAI,SAAS,WAAW,GAAG,WAAW,IAAI,CACxE,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,EACzB,SAAS,EAAE,SAAS,EACpB,aAAa,CAAC,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,KAC7B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,wBAAgB,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,UAAU,CAK7D"}
1
+ {"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../../src/coValues/account.ts"],"names":[],"mappings":"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"}
@@ -51,16 +51,36 @@ export class ControlledAccount {
51
51
  return agentID;
52
52
  }
53
53
  currentSignerID() {
54
- return this.crypto.getAgentSignerID(this.currentAgentID());
54
+ if (this._cachedCurrentSignerID) {
55
+ return this._cachedCurrentSignerID;
56
+ }
57
+ const signerID = this.crypto.getAgentSignerID(this.currentAgentID());
58
+ this._cachedCurrentSignerID = signerID;
59
+ return signerID;
55
60
  }
56
61
  currentSignerSecret() {
57
- return this.crypto.getAgentSignerSecret(this.agentSecret);
62
+ if (this._cachedCurrentSignerSecret) {
63
+ return this._cachedCurrentSignerSecret;
64
+ }
65
+ const signerSecret = this.crypto.getAgentSignerSecret(this.agentSecret);
66
+ this._cachedCurrentSignerSecret = signerSecret;
67
+ return signerSecret;
58
68
  }
59
69
  currentSealerID() {
60
- return this.crypto.getAgentSealerID(this.currentAgentID());
70
+ if (this._cachedCurrentSealerID) {
71
+ return this._cachedCurrentSealerID;
72
+ }
73
+ const sealerID = this.crypto.getAgentSealerID(this.currentAgentID());
74
+ this._cachedCurrentSealerID = sealerID;
75
+ return sealerID;
61
76
  }
62
77
  currentSealerSecret() {
63
- return this.crypto.getAgentSealerSecret(this.agentSecret);
78
+ if (this._cachedCurrentSealerSecret) {
79
+ return this._cachedCurrentSealerSecret;
80
+ }
81
+ const sealerSecret = this.crypto.getAgentSealerSecret(this.agentSecret);
82
+ this._cachedCurrentSealerSecret = sealerSecret;
83
+ return sealerSecret;
64
84
  }
65
85
  }
66
86
  export class ControlledAgent {
@@ -1 +1 @@
1
- {"version":3,"file":"account.js","sourceRoot":"","sources":["../../src/coValues/account.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"account.js","sourceRoot":"","sources":["../../src/coValues/account.ts"],"names":[],"mappings":"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"}
@@ -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,EACZ,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,KAAK,EACL,SAAS,EACT,MAAM,EACP,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,OAAO,EACP,mBAAmB,EACnB,oBAAoB,EAMrB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,IAAI,EAAoB,MAAM,mBAAmB,CAAC;AAIxE,OAAO,EACL,wBAAwB,EACxB,UAAU,EACV,YAAY,EACb,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE/D,eAAO,MAAM,QAAQ,YAAsB,CAAC;AAC5C,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC;AAElC,MAAM,MAAM,wBAAwB,GAChC,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,OAAO,CAAC;AAEZ,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;IAC/B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;IAC5B,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,GAAG,IAAI,CAAC;IACpC,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC;IAClB,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,CAAC,WAAW,EAAE,eAAe,YAAY,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;IAC9D,CAAC,aAAa,EAAE,GAAG,KAAK,QAAQ,YAAY,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IAC7E,CAAC,aAAa,EAAE,GAAG,KAAK,QAAQ,QAAQ,EAAE,GAAG,SAAS,CAAC;IACvD,CAAC,eAAe,EAAE,GAAG,KAAK,QAAQ,KAAK,EAAE,GAAG,SAAS,CACnD,SAAS,EACT;QAAE,WAAW,EAAE,KAAK,CAAC;QAAC,YAAY,EAAE,KAAK,CAAA;KAAE,CAC5C,CAAC;IACF,CAAC,MAAM,EAAE,oBAAoB,GAAG,wBAAwB,CAAC;IACzD,CAAC,KAAK,EAAE,mBAAmB,GAAG,SAAS,GAAG,QAAQ,CAAC;CACpD,CAAC;AAuDF;;;;;;;;;;;;;;;;;;;;KAoBK;AACL,qBAAa,QAAQ,CACnB,IAAI,SAAS,UAAU,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,CAClD,SAAQ,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC;IAClC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAE1C,kBAAkB,CAAC,EAAE,KAAK,CAAC;gBAGzB,IAAI,EAAE,oBAAoB,EAC1B,OAAO,CAAC,EAAE;QACR,yBAAyB,EAAE,OAAO,CAAC;KACpC;IAQH;;;;OAIG;IACH,MAAM,CAAC,SAAS,EAAE,YAAY,GAAG,OAAO,QAAQ,GAAG,IAAI,GAAG,SAAS;IAInE;;;;OAIG;IACH,gBAAgB;IAChB,cAAc,CACZ,SAAS,EAAE,YAAY,GAAG,OAAO,GAAG,OAAO,QAAQ,GAClD,IAAI,GAAG,SAAS;IAuCnB,qBAAqB,CAAC,GAAG,EAAE,oBAAoB,EAAE,MAAM,CAAC,EAAE,MAAM;IAmBhE,eAAe,CAAC,MAAM,CAAC,EAAE,MAAM;IAoB/B,iBAAiB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI;IA0BrD;;;;OAIG;IACH,MAAM,IAAI,IAAI,GAAG,SAAS;IAI1B;;;;;OAKG;IACH,SAAS,CACP,OAAO,EAAE,UAAU,GAAG,wBAAwB,GAAG,QAAQ,EACzD,IAAI,EAAE,IAAI;IAKZ,gBAAgB;IAChB,iBAAiB,CACf,OAAO,EAAE,UAAU,GAAG,wBAAwB,GAAG,OAAO,GAAG,QAAQ,EACnE,IAAI,EAAE,IAAI;IAqHZ,mCAAmC,CACjC,SAAS,EAAE,YAAY,GAAG,OAAO,EACjC,KAAK,EAAE,OAAO;IAyChB,OAAO,CAAC,2BAA2B;IAqBnC,OAAO,CAAC,gBAAgB;IAcxB,mBAAmB;IAsCnB,aAAa,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,EAAE;IAM3C,mBAAmB;IAYnB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS;IAa/C,kBAAkB,CAAC,KAAK,EAAE,KAAK;IAqH/B,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW;YAC3B,KAAK;gBAAU,SAAS;;IAqBvD,gBAAgB;IAChB,aAAa,CAAC,gBAAgB,CAAC,EAAE,YAAY,GAAG,OAAO,GAAG,UAAU;IA4JpE,sDAAsD;IACtD,eAAe,CAAC,MAAM,EAAE,QAAQ;IA2BhC,iBAAiB;;;;IAajB,MAAM,CACJ,MAAM,EAAE,QAAQ,EAChB,IAAI,GAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAqB;IA2D7D,YAAY,CAAC,MAAM,EAAE,QAAQ;IAmC7B;;;;;;OAMG;IACH,YAAY,CAAC,OAAO,EAAE,UAAU,GAAG,wBAAwB,GAAG,QAAQ;IAUtE;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY;IAW7C;;;;;OAKG;IACH,SAAS,CAAC,CAAC,SAAS,QAAQ,EAC1B,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAClB,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,EACtB,WAAW,GAAE,UAAU,GAAG,SAAqB,EAC/C,UAAU,GAAE,iBAAkD,GAC7D,CAAC;IAoBJ;;;;;OAKG;IACH,UAAU,CAAC,CAAC,SAAS,SAAS,EAC5B,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,EACnB,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,EACtB,WAAW,GAAE,UAAU,GAAG,SAAqB,EAC/C,UAAU,GAAE,iBAAkD,GAC7D,CAAC;IAoBJ;;;;;OAKG;IACH,eAAe,CAAC,CAAC,SAAS,cAAc,EACtC,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,EACtB,WAAW,GAAE,UAAU,GAAG,SAAqB,GAC9C,CAAC;IAoBJ,kCAAkC;IAClC,YAAY,CAAC,CAAC,SAAS,WAAW,EAChC,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,EACtB,UAAU,GAAE,iBAAkD,GAC7D,CAAC;IAcJ,kCAAkC;IAClC,kBAAkB,CAAC,CAAC,SAAS,iBAAiB,EAC5C,IAAI,GAAE,CAAC,CAAC,YAAY,CAAsB,EAC1C,UAAU,GAAE,iBAAkD,GAC7D,CAAC;CAaL;AAED,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,IAAI,GAAG,SAAS,GAC7B,YAAY,IAAI,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAO3D;AAgCD,MAAM,MAAM,YAAY,GAAG,iBAAiB,MAAM,EAAE,CAAC;AAMrD,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,YAAY,cAMpE"}
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,EACZ,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,KAAK,EACL,SAAS,EACT,MAAM,EACP,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,OAAO,EACP,mBAAmB,EACnB,oBAAoB,EAMrB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,IAAI,EAAoB,MAAM,mBAAmB,CAAC;AAIxE,OAAO,EACL,wBAAwB,EACxB,UAAU,EACV,YAAY,EACb,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE/D,eAAO,MAAM,QAAQ,YAAsB,CAAC;AAC5C,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC;AAElC,MAAM,MAAM,wBAAwB,GAChC,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,OAAO,CAAC;AAEZ,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;IAC/B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;IAC5B,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,GAAG,IAAI,CAAC;IACpC,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC;IAClB,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,CAAC,WAAW,EAAE,eAAe,YAAY,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;IAC9D,CAAC,aAAa,EAAE,GAAG,KAAK,QAAQ,YAAY,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IAC7E,CAAC,aAAa,EAAE,GAAG,KAAK,QAAQ,QAAQ,EAAE,GAAG,SAAS,CAAC;IACvD,CAAC,eAAe,EAAE,GAAG,KAAK,QAAQ,KAAK,EAAE,GAAG,SAAS,CACnD,SAAS,EACT;QAAE,WAAW,EAAE,KAAK,CAAC;QAAC,YAAY,EAAE,KAAK,CAAA;KAAE,CAC5C,CAAC;IACF,CAAC,MAAM,EAAE,oBAAoB,GAAG,wBAAwB,CAAC;IACzD,CAAC,KAAK,EAAE,mBAAmB,GAAG,SAAS,GAAG,QAAQ,CAAC;CACpD,CAAC;AAuDF;;;;;;;;;;;;;;;;;;;;KAoBK;AACL,qBAAa,QAAQ,CACnB,IAAI,SAAS,UAAU,GAAG,IAAI,GAAG,UAAU,GAAG,IAAI,CAClD,SAAQ,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC;IAClC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAE1C,kBAAkB,CAAC,EAAE,KAAK,CAAC;gBAGzB,IAAI,EAAE,oBAAoB,EAC1B,OAAO,CAAC,EAAE;QACR,yBAAyB,EAAE,OAAO,CAAC;KACpC;IAQH;;;;OAIG;IACH,MAAM,CAAC,SAAS,EAAE,YAAY,GAAG,OAAO,QAAQ,GAAG,IAAI,GAAG,SAAS;IAInE;;;;OAIG;IACH,gBAAgB;IAChB,cAAc,CACZ,SAAS,EAAE,YAAY,GAAG,OAAO,GAAG,OAAO,QAAQ,GAClD,IAAI,GAAG,SAAS;IAuCnB,qBAAqB,CAAC,GAAG,EAAE,oBAAoB,EAAE,MAAM,CAAC,EAAE,MAAM;IAmBhE,eAAe,CAAC,MAAM,CAAC,EAAE,MAAM;IAoB/B,iBAAiB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI;IA0BrD;;;;OAIG;IACH,MAAM,IAAI,IAAI,GAAG,SAAS;IAI1B;;;;;OAKG;IACH,SAAS,CACP,OAAO,EAAE,UAAU,GAAG,wBAAwB,GAAG,QAAQ,EACzD,IAAI,EAAE,IAAI;IAKZ,gBAAgB;IAChB,iBAAiB,CACf,OAAO,EAAE,UAAU,GAAG,wBAAwB,GAAG,OAAO,GAAG,QAAQ,EACnE,IAAI,EAAE,IAAI;IA6HZ,mCAAmC,CACjC,SAAS,EAAE,YAAY,GAAG,OAAO,EACjC,KAAK,EAAE,OAAO;IAyChB,OAAO,CAAC,2BAA2B;IAqBnC,OAAO,CAAC,gBAAgB;IAcxB,mBAAmB;IAsCnB,aAAa,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,EAAE;IAM3C,mBAAmB;IAYnB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS;IAa/C,kBAAkB,CAAC,KAAK,EAAE,KAAK;IAqH/B,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW;YAC3B,KAAK;gBAAU,SAAS;;IAqBvD,gBAAgB;IAChB,aAAa,CAAC,gBAAgB,CAAC,EAAE,YAAY,GAAG,OAAO,GAAG,UAAU;IA4JpE,sDAAsD;IACtD,eAAe,CAAC,MAAM,EAAE,QAAQ;IA2BhC,iBAAiB;;;;IAajB,MAAM,CACJ,MAAM,EAAE,QAAQ,EAChB,IAAI,GAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAqB;IA2D7D,YAAY,CAAC,MAAM,EAAE,QAAQ;IAmC7B;;;;;;OAMG;IACH,YAAY,CAAC,OAAO,EAAE,UAAU,GAAG,wBAAwB,GAAG,QAAQ;IAUtE;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY;IAW7C;;;;;OAKG;IACH,SAAS,CAAC,CAAC,SAAS,QAAQ,EAC1B,IAAI,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAClB,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,EACtB,WAAW,GAAE,UAAU,GAAG,SAAqB,EAC/C,UAAU,GAAE,iBAAkD,GAC7D,CAAC;IAoBJ;;;;;OAKG;IACH,UAAU,CAAC,CAAC,SAAS,SAAS,EAC5B,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,EACnB,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,EACtB,WAAW,GAAE,UAAU,GAAG,SAAqB,EAC/C,UAAU,GAAE,iBAAkD,GAC7D,CAAC;IAoBJ;;;;;OAKG;IACH,eAAe,CAAC,CAAC,SAAS,cAAc,EACtC,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,EACtB,WAAW,GAAE,UAAU,GAAG,SAAqB,GAC9C,CAAC;IAoBJ,kCAAkC;IAClC,YAAY,CAAC,CAAC,SAAS,WAAW,EAChC,IAAI,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,EACtB,UAAU,GAAE,iBAAkD,GAC7D,CAAC;IAcJ,kCAAkC;IAClC,kBAAkB,CAAC,CAAC,SAAS,iBAAiB,EAC5C,IAAI,GAAE,CAAC,CAAC,YAAY,CAAsB,EAC1C,UAAU,GAAE,iBAAkD,GAC7D,CAAC;CAaL;AAED,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,IAAI,GAAG,SAAS,GAC7B,YAAY,IAAI,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAO3D;AAgCD,MAAM,MAAM,YAAY,GAAG,iBAAiB,MAAM,EAAE,CAAC;AAMrD,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,YAAY,cAMpE"}
@@ -235,12 +235,16 @@ export class RawGroup extends RawCoMap {
235
235
  */
236
236
  if (role === "writeOnly" || role === "writeOnlyInvite") {
237
237
  const previousRole = this.get(memberKey);
238
- this.set(memberKey, role, "trusting");
238
+ if (previousRole === "admin" &&
239
+ memberKey !== this.core.node.getCurrentAgent().id) {
240
+ throw new Error("Administrators cannot demote other administrators in a group");
241
+ }
239
242
  if (previousRole === "reader" ||
240
243
  previousRole === "writer" ||
241
244
  previousRole === "admin") {
242
- this.rotateReadKey();
245
+ this.rotateReadKey(memberKey);
243
246
  }
247
+ this.set(memberKey, role, "trusting");
244
248
  this.internalCreateWriteOnlyKeyForMember(memberKey, agent);
245
249
  }
246
250
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"group.js","sourceRoot":"","sources":["../../src/coValues/group.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"group.js","sourceRoot":"","sources":["../../src/coValues/group.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
1
  import { blake3 } from "@noble/hashes/blake3";
2
- import { RawCoID, TransactionID } from "../ids.js";
2
+ import { PrivateTransaction, Transaction, TrustingTransaction } from "../coValueCore/verifiedState.js";
3
+ import { RawCoID, SessionID, TransactionID } from "../ids.js";
3
4
  import { Stringified } from "../jsonStringify.js";
4
5
  import { JsonValue } from "../jsonValue.js";
5
- import { CryptoProvider, Encrypted, KeySecret, Sealed, SealerID, SealerSecret, Signature, SignerID, SignerSecret } from "./crypto.js";
6
+ import { CryptoProvider, Encrypted, KeyID, KeySecret, Sealed, SealerID, SealerSecret, SessionLogImpl, Signature, SignerID, SignerSecret } from "./crypto.js";
7
+ import { ControlledAccountOrAgent } from "../coValues/account.js";
6
8
  type Blake3State = ReturnType<typeof blake3.create>;
7
9
  /**
8
10
  * Pure JavaScript implementation of the CryptoProvider interface using noble-curves and noble-ciphers libraries.
@@ -23,7 +25,7 @@ export declare class PureJSCrypto extends CryptoProvider<Blake3State> {
23
25
  blake3IncrementalUpdate(state: Blake3State, data: Uint8Array): import("@noble/hashes/utils").HashXOF<import("@noble/hashes/utils").HashXOF<import("@noble/hashes/utils").HashXOF<any>>>;
24
26
  blake3DigestForState(state: Blake3State): Uint8Array;
25
27
  generateNonce(input: Uint8Array): Uint8Array;
26
- protected generateJsonNonce(material: JsonValue): Uint8Array;
28
+ generateJsonNonce(material: JsonValue): Uint8Array;
27
29
  newEd25519SigningKey(): Uint8Array;
28
30
  getSignerID(secret: SignerSecret): SignerID;
29
31
  sign(secret: SignerSecret, message: JsonValue): Signature;
@@ -45,6 +47,32 @@ export declare class PureJSCrypto extends CryptoProvider<Blake3State> {
45
47
  in: RawCoID;
46
48
  tx: TransactionID;
47
49
  }): T | undefined;
50
+ createSessionLog(coID: RawCoID, sessionID: SessionID, signerID?: SignerID): SessionLogImpl;
51
+ }
52
+ export declare class PureJSSessionLog implements SessionLogImpl {
53
+ private readonly coID;
54
+ private readonly sessionID;
55
+ private readonly signerID;
56
+ private readonly crypto;
57
+ transactions: string[];
58
+ lastSignature: Signature | undefined;
59
+ streamingHash: Blake3State;
60
+ constructor(coID: RawCoID, sessionID: SessionID, signerID: SignerID | undefined, crypto: PureJSCrypto);
61
+ clone(): SessionLogImpl;
62
+ tryAdd(transactions: Transaction[], newSignature: Signature, skipVerify: boolean): void;
63
+ internalTryAdd(transactions: string[], newSignature: Signature, skipVerify: boolean): `signature_z${string}`;
64
+ expectedHashAfter(transactionsJson: string[]): string;
65
+ internalAddNewTransaction(transaction: string, signerAgent: ControlledAccountOrAgent): `signature_z${string}`;
66
+ addNewPrivateTransaction(signerAgent: ControlledAccountOrAgent, changes: JsonValue[], keyID: KeyID, keySecret: KeySecret, madeAt: number): {
67
+ signature: Signature;
68
+ transaction: PrivateTransaction;
69
+ };
70
+ addNewTrustingTransaction(signerAgent: ControlledAccountOrAgent, changes: JsonValue[], madeAt: number): {
71
+ signature: Signature;
72
+ transaction: TrustingTransaction;
73
+ };
74
+ decryptNextTransactionChangesJson(txIndex: number, keySecret: KeySecret): string;
75
+ free(): void;
48
76
  }
49
77
  export {};
50
78
  //# sourceMappingURL=PureJSCrypto.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PureJSCrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/PureJSCrypto.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,WAAW,EAAmB,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EACL,cAAc,EACd,SAAS,EACT,SAAS,EACT,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,YAAY,EAGb,MAAM,aAAa,CAAC;AAErB,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;AAEpD;;;;;;;GAOG;AACH,qBAAa,YAAa,SAAQ,cAAc,CAAC,WAAW,CAAC;WAC9C,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IAI5C,gBAAgB,IAAI,WAAW;IAI/B,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW;IAIjD,cAAc,CAAC,IAAI,EAAE,UAAU;IAI/B,yBAAyB,CACvB,IAAI,EAAE,UAAU,EAChB,EAAE,OAAO,EAAE,EAAE;QAAE,OAAO,EAAE,UAAU,CAAA;KAAE;IAKtC,uBAAuB,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU;IAI5D,oBAAoB,CAAC,KAAK,EAAE,WAAW,GAAG,UAAU;IAIpD,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU;IAI5C,SAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,GAAG,UAAU;IAI5D,oBAAoB,IAAI,UAAU;IAIlC,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,QAAQ;IAQ3C,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,GAAG,SAAS;IAQzD,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,GAAG,OAAO;IAQvE,qBAAqB,IAAI,UAAU;IAInC,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,QAAQ;IAQ3C,OAAO,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,SAAS,SAAS,EAC9C,KAAK,EAAE,CAAC,EACR,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,CAAC,GACf,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;IAWlB,UAAU,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,SAAS,SAAS,EACjD,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1B,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,CAAC,GACf,WAAW,CAAC,CAAC,CAAC;IAcjB,IAAI,CAAC,CAAC,SAAS,SAAS,EAAE,EACxB,OAAO,EACP,IAAI,EACJ,EAAE,EACF,aAAa,GACd,EAAE;QACD,OAAO,EAAE,CAAC,CAAC;QACX,IAAI,EAAE,YAAY,CAAC;QACnB,EAAE,EAAE,QAAQ,CAAC;QACb,aAAa,EAAE;YAAE,EAAE,EAAE,OAAO,CAAC;YAAC,EAAE,EAAE,aAAa,CAAA;SAAE,CAAC;KACnD,GAAG,MAAM,CAAC,CAAC,CAAC;IAkBb,MAAM,CAAC,CAAC,SAAS,SAAS,EACxB,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EACjB,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,QAAQ,EACd,aAAa,EAAE;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,EAAE,EAAE,aAAa,CAAA;KAAE,GAChD,CAAC,GAAG,SAAS;CAsBjB"}
1
+ {"version":3,"file":"PureJSCrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/PureJSCrypto.ts"],"names":[],"mappings":"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"}