cojson 0.0.23 → 0.1.0
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/README.md +1 -1
- package/dist/account.d.ts +4 -4
- package/dist/account.js +7 -7
- package/dist/account.js.map +1 -1
- package/dist/coValue.d.ts +2 -2
- package/dist/coValue.js +23 -23
- package/dist/coValue.js.map +1 -1
- package/dist/{team.d.ts → group.d.ts} +7 -7
- package/dist/{team.js → group.js} +24 -24
- package/dist/group.js.map +1 -0
- package/dist/index.d.ts +4 -4
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/node.d.ts +3 -3
- package/dist/node.js +33 -30
- package/dist/node.js.map +1 -1
- package/dist/permissions.d.ts +3 -3
- package/dist/permissions.js +13 -13
- package/dist/permissions.js.map +1 -1
- package/dist/testUtils.d.ts +8 -8
- package/dist/testUtils.js +19 -19
- package/dist/testUtils.js.map +1 -1
- package/package.json +2 -2
- package/src/account.test.ts +7 -7
- package/src/account.ts +8 -8
- package/src/coValue.test.ts +5 -5
- package/src/coValue.ts +24 -24
- package/src/{team.ts → group.ts} +31 -31
- package/src/index.ts +4 -4
- package/src/node.ts +40 -36
- package/src/permissions.test.ts +303 -303
- package/src/permissions.ts +16 -16
- package/src/sync.test.ts +74 -74
- package/src/testUtils.ts +19 -19
- package/dist/team.js.map +0 -1
package/README.md
CHANGED
|
@@ -27,7 +27,7 @@ THIS IS WORK IN PROGRESS
|
|
|
27
27
|
|
|
28
28
|
### `Collaborative` Values
|
|
29
29
|
- CoMap (`string` → `Immutable`, last-writer-wins per key)
|
|
30
|
-
-
|
|
30
|
+
- Group (`AgentID` → `Role`)
|
|
31
31
|
- CoList (`Immutable[]`, addressable positions, insertAfter semantics)
|
|
32
32
|
- Agent (`{signerID, sealerID}[]`)
|
|
33
33
|
- CoStream (independent per-session streams of `Immutable`s)
|
package/dist/account.d.ts
CHANGED
|
@@ -3,9 +3,9 @@ import { CoID } from "./contentType.js";
|
|
|
3
3
|
import { AgentSecret, SealerID, SealerSecret, SignerID, SignerSecret } from "./crypto.js";
|
|
4
4
|
import { AgentID } from "./ids.js";
|
|
5
5
|
import { CoMap, LocalNode } from "./index.js";
|
|
6
|
-
import {
|
|
6
|
+
import { Group, GroupContent } from "./group.js";
|
|
7
7
|
export declare function accountHeaderForInitialAgentSecret(agentSecret: AgentSecret): CoValueHeader;
|
|
8
|
-
export declare class Account extends
|
|
8
|
+
export declare class Account extends Group {
|
|
9
9
|
get id(): AccountID;
|
|
10
10
|
getCurrentAgentID(): AgentID;
|
|
11
11
|
}
|
|
@@ -20,7 +20,7 @@ export interface GeneralizedControlledAccount {
|
|
|
20
20
|
}
|
|
21
21
|
export declare class ControlledAccount extends Account implements GeneralizedControlledAccount {
|
|
22
22
|
agentSecret: AgentSecret;
|
|
23
|
-
constructor(agentSecret: AgentSecret,
|
|
23
|
+
constructor(agentSecret: AgentSecret, groupMap: CoMap<AccountContent, AccountMeta>, node: LocalNode);
|
|
24
24
|
currentAgentID(): AgentID;
|
|
25
25
|
currentSignerID(): SignerID;
|
|
26
26
|
currentSignerSecret(): SignerSecret;
|
|
@@ -37,7 +37,7 @@ export declare class AnonymousControlledAccount implements GeneralizedControlled
|
|
|
37
37
|
currentSealerID(): SealerID;
|
|
38
38
|
currentSealerSecret(): SealerSecret;
|
|
39
39
|
}
|
|
40
|
-
export type AccountContent =
|
|
40
|
+
export type AccountContent = GroupContent & {
|
|
41
41
|
profile: CoID<Profile>;
|
|
42
42
|
};
|
|
43
43
|
export type AccountMeta = {
|
package/dist/account.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { getAgentID, getAgentSealerID, getAgentSealerSecret, getAgentSignerID, getAgentSignerSecret, } from "./crypto.js";
|
|
2
|
-
import {
|
|
2
|
+
import { Group } from "./group.js";
|
|
3
3
|
export function accountHeaderForInitialAgentSecret(agentSecret) {
|
|
4
4
|
const agent = getAgentID(agentSecret);
|
|
5
5
|
return {
|
|
6
6
|
type: "comap",
|
|
7
|
-
ruleset: { type: "
|
|
7
|
+
ruleset: { type: "group", initialAdmin: agent },
|
|
8
8
|
meta: {
|
|
9
9
|
type: "account",
|
|
10
10
|
},
|
|
@@ -12,12 +12,12 @@ export function accountHeaderForInitialAgentSecret(agentSecret) {
|
|
|
12
12
|
uniqueness: null,
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
|
-
export class Account extends
|
|
15
|
+
export class Account extends Group {
|
|
16
16
|
get id() {
|
|
17
|
-
return this.
|
|
17
|
+
return this.groupMap.id;
|
|
18
18
|
}
|
|
19
19
|
getCurrentAgentID() {
|
|
20
|
-
const agents = this.
|
|
20
|
+
const agents = this.groupMap
|
|
21
21
|
.keys()
|
|
22
22
|
.filter((k) => k.startsWith("sealer_"));
|
|
23
23
|
if (agents.length !== 1) {
|
|
@@ -27,8 +27,8 @@ export class Account extends Team {
|
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
export class ControlledAccount extends Account {
|
|
30
|
-
constructor(agentSecret,
|
|
31
|
-
super(
|
|
30
|
+
constructor(agentSecret, groupMap, node) {
|
|
31
|
+
super(groupMap, node);
|
|
32
32
|
this.agentSecret = agentSecret;
|
|
33
33
|
}
|
|
34
34
|
currentAgentID() {
|
package/dist/account.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.js","sourceRoot":"","sources":["../src/account.ts"],"names":[],"mappings":"AAEA,OAAO,EAMH,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,GACvB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"account.js","sourceRoot":"","sources":["../src/account.ts"],"names":[],"mappings":"AAEA,OAAO,EAMH,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,GACvB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,KAAK,EAAgB,MAAM,YAAY,CAAC;AAEjD,MAAM,UAAU,kCAAkC,CAC9C,WAAwB;IAExB,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACtC,OAAO;QACH,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE;QAC/C,IAAI,EAAE;YACF,IAAI,EAAE,SAAS;SAClB;QACD,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,IAAI;KACnB,CAAC;AACN,CAAC;AAED,MAAM,OAAO,OAAQ,SAAQ,KAAK;IAC9B,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAe,CAAC;IACzC,CAAC;IAED,iBAAiB;QACb,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ;aACvB,IAAI,EAAE;aACN,MAAM,CAAC,CAAC,CAAC,EAAgB,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;QAE1D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,MAAM,IAAI,KAAK,CACX,6CAA6C,GAAG,MAAM,CAAC,MAAM,CAChE,CAAC;SACL;QAED,OAAO,MAAM,CAAC,CAAC,CAAE,CAAC;IACtB,CAAC;CACJ;AAaD,MAAM,OAAO,iBACT,SAAQ,OAAO;IAKf,YACI,WAAwB,EACxB,QAA4C,EAC5C,IAAe;QAEf,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAEtB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACnC,CAAC;IAED,cAAc;QACV,OAAO,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,eAAe;QACX,OAAO,gBAAgB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,mBAAmB;QACf,OAAO,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAED,eAAe;QACX,OAAO,gBAAgB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,mBAAmB;QACf,OAAO,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;CACJ;AAED,MAAM,OAAO,0BAA0B;IAKnC,YAAY,WAAwB;QAChC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACnC,CAAC;IAED,IAAI,EAAE;QACF,OAAO,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,cAAc;QACV,OAAO,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,eAAe;QACX,OAAO,gBAAgB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,mBAAmB;QACf,OAAO,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAED,eAAe;QACX,OAAO,gBAAgB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,mBAAmB;QACf,OAAO,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;CACJ;AAUD,MAAM,UAAU,WAAW,CAAC,EAAsB;IAC9C,OAAO,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC"}
|
package/dist/coValue.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { ContentType } from "./contentType.js";
|
|
|
2
2
|
import { Encrypted, Hash, KeySecret, Signature, StreamingHash, KeyID } from "./crypto.js";
|
|
3
3
|
import { JsonObject, JsonValue } from "./jsonValue.js";
|
|
4
4
|
import { PermissionsDef as RulesetDef } from "./permissions.js";
|
|
5
|
-
import {
|
|
5
|
+
import { Group } from "./group.js";
|
|
6
6
|
import { LocalNode } from "./node.js";
|
|
7
7
|
import { CoValueKnownState, NewContentMessage } from "./sync.js";
|
|
8
8
|
import { RawCoID, SessionID, TransactionID } from "./ids.js";
|
|
@@ -76,7 +76,7 @@ export declare class CoValue {
|
|
|
76
76
|
id: KeyID;
|
|
77
77
|
};
|
|
78
78
|
getReadKey(keyID: KeyID): KeySecret | undefined;
|
|
79
|
-
|
|
79
|
+
getGroup(): Group;
|
|
80
80
|
getTx(txID: TransactionID): Transaction | undefined;
|
|
81
81
|
newContentSince(knownState: CoValueKnownState | undefined): NewContentMessage | undefined;
|
|
82
82
|
getDependedOnCoValues(): RawCoID[];
|
package/dist/coValue.js
CHANGED
|
@@ -5,7 +5,7 @@ import { CoMap } from "./contentTypes/coMap.js";
|
|
|
5
5
|
import { StreamingHash, unseal, shortHash, sign, verify, encryptForTransaction, decryptForTransaction, decryptKeySecret, getAgentSignerID, getAgentSealerID, } from "./crypto.js";
|
|
6
6
|
import { base58 } from "@scure/base";
|
|
7
7
|
import { determineValidTransactions, isKeyForKeyField, } from "./permissions.js";
|
|
8
|
-
import {
|
|
8
|
+
import { Group, expectGroupContent } from "./group.js";
|
|
9
9
|
import { CoList } from "./contentTypes/coList.js";
|
|
10
10
|
export function idforHeader(header) {
|
|
11
11
|
const hash = shortHash(header);
|
|
@@ -24,10 +24,10 @@ export class CoValue {
|
|
|
24
24
|
this.header = header;
|
|
25
25
|
this._sessions = internalInitSessions;
|
|
26
26
|
this.node = node;
|
|
27
|
-
if (header.ruleset.type == "
|
|
27
|
+
if (header.ruleset.type == "ownedByGroup") {
|
|
28
28
|
this.node
|
|
29
|
-
.expectCoValueLoaded(header.ruleset.
|
|
30
|
-
.subscribe((
|
|
29
|
+
.expectCoValueLoaded(header.ruleset.group)
|
|
30
|
+
.subscribe((_groupUpdate) => {
|
|
31
31
|
this._cachedContent = undefined;
|
|
32
32
|
const newContent = this.getCurrentContent();
|
|
33
33
|
for (const listener of this.listeners) {
|
|
@@ -212,8 +212,8 @@ export class CoValue {
|
|
|
212
212
|
return allTransactions;
|
|
213
213
|
}
|
|
214
214
|
getCurrentReadKey() {
|
|
215
|
-
if (this.header.ruleset.type === "
|
|
216
|
-
const content =
|
|
215
|
+
if (this.header.ruleset.type === "group") {
|
|
216
|
+
const content = expectGroupContent(this.getCurrentContent());
|
|
217
217
|
const currentKeyId = content.get("readKey");
|
|
218
218
|
if (!currentKeyId) {
|
|
219
219
|
throw new Error("No readKey set");
|
|
@@ -224,18 +224,18 @@ export class CoValue {
|
|
|
224
224
|
id: currentKeyId,
|
|
225
225
|
};
|
|
226
226
|
}
|
|
227
|
-
else if (this.header.ruleset.type === "
|
|
227
|
+
else if (this.header.ruleset.type === "ownedByGroup") {
|
|
228
228
|
return this.node
|
|
229
|
-
.expectCoValueLoaded(this.header.ruleset.
|
|
229
|
+
.expectCoValueLoaded(this.header.ruleset.group)
|
|
230
230
|
.getCurrentReadKey();
|
|
231
231
|
}
|
|
232
232
|
else {
|
|
233
|
-
throw new Error("Only
|
|
233
|
+
throw new Error("Only groups or values owned by groups have read secrets");
|
|
234
234
|
}
|
|
235
235
|
}
|
|
236
236
|
getReadKey(keyID) {
|
|
237
|
-
if (this.header.ruleset.type === "
|
|
238
|
-
const content =
|
|
237
|
+
if (this.header.ruleset.type === "group") {
|
|
238
|
+
const content = expectGroupContent(this.getCurrentContent());
|
|
239
239
|
// Try to find key revelation for us
|
|
240
240
|
const readKeyEntry = content.getLastEntry(`${keyID}_for_${this.node.account.id}`);
|
|
241
241
|
if (readKeyEntry) {
|
|
@@ -272,21 +272,21 @@ export class CoValue {
|
|
|
272
272
|
}
|
|
273
273
|
return undefined;
|
|
274
274
|
}
|
|
275
|
-
else if (this.header.ruleset.type === "
|
|
275
|
+
else if (this.header.ruleset.type === "ownedByGroup") {
|
|
276
276
|
return this.node
|
|
277
|
-
.expectCoValueLoaded(this.header.ruleset.
|
|
277
|
+
.expectCoValueLoaded(this.header.ruleset.group)
|
|
278
278
|
.getReadKey(keyID);
|
|
279
279
|
}
|
|
280
280
|
else {
|
|
281
|
-
throw new Error("Only
|
|
281
|
+
throw new Error("Only groups or values owned by groups have read secrets");
|
|
282
282
|
}
|
|
283
283
|
}
|
|
284
|
-
|
|
285
|
-
if (this.header.ruleset.type !== "
|
|
286
|
-
throw new Error("Only values owned by
|
|
284
|
+
getGroup() {
|
|
285
|
+
if (this.header.ruleset.type !== "ownedByGroup") {
|
|
286
|
+
throw new Error("Only values owned by groups have groups");
|
|
287
287
|
}
|
|
288
|
-
return new
|
|
289
|
-
.expectCoValueLoaded(this.header.ruleset.
|
|
288
|
+
return new Group(expectGroupContent(this.node
|
|
289
|
+
.expectCoValueLoaded(this.header.ruleset.group)
|
|
290
290
|
.getCurrentContent()), this.node);
|
|
291
291
|
}
|
|
292
292
|
getTx(txID) {
|
|
@@ -322,12 +322,12 @@ export class CoValue {
|
|
|
322
322
|
return newContent;
|
|
323
323
|
}
|
|
324
324
|
getDependedOnCoValues() {
|
|
325
|
-
return this.header.ruleset.type === "
|
|
326
|
-
?
|
|
325
|
+
return this.header.ruleset.type === "group"
|
|
326
|
+
? expectGroupContent(this.getCurrentContent())
|
|
327
327
|
.keys()
|
|
328
328
|
.filter((k) => k.startsWith("co_"))
|
|
329
|
-
: this.header.ruleset.type === "
|
|
330
|
-
? [this.header.ruleset.
|
|
329
|
+
: this.header.ruleset.type === "ownedByGroup"
|
|
330
|
+
? [this.header.ruleset.group]
|
|
331
331
|
: [];
|
|
332
332
|
}
|
|
333
333
|
}
|
package/dist/coValue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coValue.js","sourceRoot":"","sources":["../src/coValue.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"coValue.js","sourceRoot":"","sources":["../src/coValue.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { LocalNode } from "./node.js";
|
|
|
6
6
|
import { SessionID } from "./ids.js";
|
|
7
7
|
import { AccountIDOrAgentID, GeneralizedControlledAccount, Profile } from "./account.js";
|
|
8
8
|
import { Role } from "./permissions.js";
|
|
9
|
-
export type
|
|
9
|
+
export type GroupContent = {
|
|
10
10
|
profile: CoID<Profile> | null;
|
|
11
11
|
[key: AccountIDOrAgentID]: Role;
|
|
12
12
|
readKey: KeyID;
|
|
@@ -16,12 +16,12 @@ export type TeamContent = {
|
|
|
16
16
|
encryptingID: KeyID;
|
|
17
17
|
}>;
|
|
18
18
|
};
|
|
19
|
-
export declare function
|
|
20
|
-
export declare class
|
|
21
|
-
|
|
19
|
+
export declare function expectGroupContent(content: ContentType): CoMap<GroupContent, JsonObject | null>;
|
|
20
|
+
export declare class Group {
|
|
21
|
+
groupMap: CoMap<GroupContent, JsonObject | null>;
|
|
22
22
|
node: LocalNode;
|
|
23
|
-
constructor(
|
|
24
|
-
get id(): CoID<CoMap<
|
|
23
|
+
constructor(groupMap: CoMap<GroupContent, JsonObject | null>, node: LocalNode);
|
|
24
|
+
get id(): CoID<CoMap<GroupContent, JsonObject | null>>;
|
|
25
25
|
roleOf(accountID: AccountIDOrAgentID): Role | undefined;
|
|
26
26
|
myRole(): Role | undefined;
|
|
27
27
|
addMember(accountID: AccountIDOrAgentID, role: Role): void;
|
|
@@ -31,7 +31,7 @@ export declare class Team {
|
|
|
31
31
|
createMap<M extends {
|
|
32
32
|
[key: string]: JsonValue;
|
|
33
33
|
}, Meta extends JsonObject | null = null>(meta?: Meta): CoMap<M, Meta>;
|
|
34
|
-
testWithDifferentAccount(account: GeneralizedControlledAccount, sessionId: SessionID):
|
|
34
|
+
testWithDifferentAccount(account: GeneralizedControlledAccount, sessionId: SessionID): Group;
|
|
35
35
|
}
|
|
36
36
|
export type InviteSecret = `inviteSecret_z${string}`;
|
|
37
37
|
export declare function secretSeedFromInviteSecret(inviteSecret: InviteSecret): Uint8Array;
|
|
@@ -1,40 +1,40 @@
|
|
|
1
1
|
import { createdNowUnique, newRandomKeySecret, seal, encryptKeySecret, getAgentSealerID, newRandomSecretSeed, agentSecretFromSecretSeed, getAgentID, } from "./crypto.js";
|
|
2
2
|
import { isAgentID } from "./ids.js";
|
|
3
3
|
import { base58 } from "@scure/base";
|
|
4
|
-
export function
|
|
4
|
+
export function expectGroupContent(content) {
|
|
5
5
|
if (content.type !== "comap") {
|
|
6
6
|
throw new Error("Expected map");
|
|
7
7
|
}
|
|
8
8
|
return content;
|
|
9
9
|
}
|
|
10
|
-
export class
|
|
11
|
-
constructor(
|
|
12
|
-
this.
|
|
10
|
+
export class Group {
|
|
11
|
+
constructor(groupMap, node) {
|
|
12
|
+
this.groupMap = groupMap;
|
|
13
13
|
this.node = node;
|
|
14
14
|
}
|
|
15
15
|
get id() {
|
|
16
|
-
return this.
|
|
16
|
+
return this.groupMap.id;
|
|
17
17
|
}
|
|
18
18
|
roleOf(accountID) {
|
|
19
|
-
return this.
|
|
19
|
+
return this.groupMap.get(accountID);
|
|
20
20
|
}
|
|
21
21
|
myRole() {
|
|
22
22
|
return this.roleOf(this.node.account.id);
|
|
23
23
|
}
|
|
24
24
|
addMember(accountID, role) {
|
|
25
|
-
this.
|
|
26
|
-
const currentReadKey = this.
|
|
25
|
+
this.groupMap = this.groupMap.edit((map) => {
|
|
26
|
+
const currentReadKey = this.groupMap.coValue.getCurrentReadKey();
|
|
27
27
|
if (!currentReadKey.secret) {
|
|
28
28
|
throw new Error("Can't add member without read key secret");
|
|
29
29
|
}
|
|
30
|
-
const agent = this.node.resolveAccountAgent(accountID, "Expected to know agent to add them to
|
|
30
|
+
const agent = this.node.resolveAccountAgent(accountID, "Expected to know agent to add them to group");
|
|
31
31
|
map.set(accountID, role, "trusting");
|
|
32
32
|
if (map.get(accountID) !== role) {
|
|
33
33
|
throw new Error("Failed to set role");
|
|
34
34
|
}
|
|
35
|
-
map.set(`${currentReadKey.id}_for_${accountID}`, seal(currentReadKey.secret, this.
|
|
36
|
-
in: this.
|
|
37
|
-
tx: this.
|
|
35
|
+
map.set(`${currentReadKey.id}_for_${accountID}`, seal(currentReadKey.secret, this.groupMap.coValue.node.account.currentSealerSecret(), getAgentSealerID(agent), {
|
|
36
|
+
in: this.groupMap.coValue.id,
|
|
37
|
+
tx: this.groupMap.coValue.nextTransactionID(),
|
|
38
38
|
}), "trusting");
|
|
39
39
|
});
|
|
40
40
|
}
|
|
@@ -46,16 +46,16 @@ export class Team {
|
|
|
46
46
|
return inviteSecretFromSecretSeed(secretSeed);
|
|
47
47
|
}
|
|
48
48
|
rotateReadKey() {
|
|
49
|
-
const currentlyPermittedReaders = this.
|
|
49
|
+
const currentlyPermittedReaders = this.groupMap.keys().filter((key) => {
|
|
50
50
|
if (key.startsWith("co_") || isAgentID(key)) {
|
|
51
|
-
const role = this.
|
|
51
|
+
const role = this.groupMap.get(key);
|
|
52
52
|
return (role === "admin" || role === "writer" || role === "reader");
|
|
53
53
|
}
|
|
54
54
|
else {
|
|
55
55
|
return false;
|
|
56
56
|
}
|
|
57
57
|
});
|
|
58
|
-
const maybeCurrentReadKey = this.
|
|
58
|
+
const maybeCurrentReadKey = this.groupMap.coValue.getCurrentReadKey();
|
|
59
59
|
if (!maybeCurrentReadKey.secret) {
|
|
60
60
|
throw new Error("Can't rotate read key secret we don't have access to");
|
|
61
61
|
}
|
|
@@ -64,12 +64,12 @@ export class Team {
|
|
|
64
64
|
secret: maybeCurrentReadKey.secret,
|
|
65
65
|
};
|
|
66
66
|
const newReadKey = newRandomKeySecret();
|
|
67
|
-
this.
|
|
67
|
+
this.groupMap = this.groupMap.edit((map) => {
|
|
68
68
|
for (const readerID of currentlyPermittedReaders) {
|
|
69
69
|
const reader = this.node.resolveAccountAgent(readerID, "Expected to know currently permitted reader");
|
|
70
|
-
map.set(`${newReadKey.id}_for_${readerID}`, seal(newReadKey.secret, this.
|
|
71
|
-
in: this.
|
|
72
|
-
tx: this.
|
|
70
|
+
map.set(`${newReadKey.id}_for_${readerID}`, seal(newReadKey.secret, this.groupMap.coValue.node.account.currentSealerSecret(), getAgentSealerID(reader), {
|
|
71
|
+
in: this.groupMap.coValue.id,
|
|
72
|
+
tx: this.groupMap.coValue.nextTransactionID(),
|
|
73
73
|
}), "trusting");
|
|
74
74
|
}
|
|
75
75
|
map.set(`${currentReadKey.id}_for_${newReadKey.id}`, encryptKeySecret({
|
|
@@ -80,7 +80,7 @@ export class Team {
|
|
|
80
80
|
});
|
|
81
81
|
}
|
|
82
82
|
removeMember(accountID) {
|
|
83
|
-
this.
|
|
83
|
+
this.groupMap = this.groupMap.edit((map) => {
|
|
84
84
|
map.set(accountID, "revoked", "trusting");
|
|
85
85
|
});
|
|
86
86
|
this.rotateReadKey();
|
|
@@ -90,8 +90,8 @@ export class Team {
|
|
|
90
90
|
.createCoValue({
|
|
91
91
|
type: "comap",
|
|
92
92
|
ruleset: {
|
|
93
|
-
type: "
|
|
94
|
-
|
|
93
|
+
type: "ownedByGroup",
|
|
94
|
+
group: this.groupMap.id,
|
|
95
95
|
},
|
|
96
96
|
meta: meta || null,
|
|
97
97
|
...createdNowUnique(),
|
|
@@ -99,7 +99,7 @@ export class Team {
|
|
|
99
99
|
.getCurrentContent();
|
|
100
100
|
}
|
|
101
101
|
testWithDifferentAccount(account, sessionId) {
|
|
102
|
-
return new
|
|
102
|
+
return new Group(expectGroupContent(this.groupMap.coValue
|
|
103
103
|
.testWithDifferentAccount(account, sessionId)
|
|
104
104
|
.getCurrentContent()), this.node);
|
|
105
105
|
}
|
|
@@ -113,4 +113,4 @@ export function secretSeedFromInviteSecret(inviteSecret) {
|
|
|
113
113
|
}
|
|
114
114
|
return base58.decode(inviteSecret.slice("inviteSecret_z".length));
|
|
115
115
|
}
|
|
116
|
-
//# sourceMappingURL=
|
|
116
|
+
//# sourceMappingURL=group.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"group.js","sourceRoot":"","sources":["../src/group.ts"],"names":[],"mappings":"AAGA,OAAO,EAIH,gBAAgB,EAChB,kBAAkB,EAClB,IAAI,EACJ,gBAAgB,EAChB,gBAAgB,EAEhB,mBAAmB,EACnB,yBAAyB,EACzB,UAAU,GACb,MAAM,aAAa,CAAC;AAErB,OAAO,EAAa,SAAS,EAAE,MAAM,UAAU,CAAC;AAOhD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAarC,MAAM,UAAU,kBAAkB,CAC9B,OAAoB;IAEpB,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;KACnC;IAED,OAAO,OAAiD,CAAC;AAC7D,CAAC;AAED,MAAM,OAAO,KAAK;IAId,YACI,QAAgD,EAChD,IAAe;QAEf,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,SAA6B;QAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,SAAS,CAAC,SAA6B,EAAE,IAAU;QAC/C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACvC,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAEjE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;gBACxB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;aAC/D;YAED,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,mBAAmB,CACvC,SAAS,EACT,6CAA6C,CAChD,CAAC;YAEF,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;YAErC,IAAI,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;gBAC7B,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;aACzC;YAED,GAAG,CAAC,GAAG,CACH,GAAG,cAAc,CAAC,EAAE,QAAQ,SAAS,EAAE,EACvC,IAAI,CACA,cAAc,CAAC,MAAM,EACrB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,EACxD,gBAAgB,CAAC,KAAK,CAAC,EACvB;gBACI,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBAC5B,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE;aAChD,CACJ,EACD,UAAU,CACb,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED,YAAY,CAAC,IAAmC;QAC5C,MAAM,UAAU,GAAG,mBAAmB,EAAE,CAAC;QAEzC,MAAM,YAAY,GAAG,yBAAyB,CAAC,UAAU,CAAC,CAAC;QAC3D,MAAM,QAAQ,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;QAE1C,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,IAAI,QAAgB,CAAC,CAAC;QAElD,OAAO,0BAA0B,CAAC,UAAU,CAAC,CAAC;IAClD,CAAC;IAED,aAAa;QACT,MAAM,yBAAyB,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;YAClE,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE;gBACzC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACpC,OAAO,CACH,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,QAAQ,CAC7D,CAAC;aACL;iBAAM;gBACH,OAAO,KAAK,CAAC;aAChB;QACL,CAAC,CAAyB,CAAC;QAE3B,MAAM,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAEtE,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE;YAC7B,MAAM,IAAI,KAAK,CACX,sDAAsD,CACzD,CAAC;SACL;QAED,MAAM,cAAc,GAAG;YACnB,EAAE,EAAE,mBAAmB,CAAC,EAAE;YAC1B,MAAM,EAAE,mBAAmB,CAAC,MAAM;SACrC,CAAC;QAEF,MAAM,UAAU,GAAG,kBAAkB,EAAE,CAAC;QAExC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACvC,KAAK,MAAM,QAAQ,IAAI,yBAAyB,EAAE;gBAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,mBAAmB,CACxC,QAAQ,EACR,6CAA6C,CAChD,CAAC;gBAEF,GAAG,CAAC,GAAG,CACH,GAAG,UAAU,CAAC,EAAE,QAAQ,QAAQ,EAAE,EAClC,IAAI,CACA,UAAU,CAAC,MAAM,EACjB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,EACxD,gBAAgB,CAAC,MAAM,CAAC,EACxB;oBACI,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;oBAC5B,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE;iBAChD,CACJ,EACD,UAAU,CACb,CAAC;aACL;YAED,GAAG,CAAC,GAAG,CACH,GAAG,cAAc,CAAC,EAAE,QAAQ,UAAU,CAAC,EAAE,EAAE,EAC3C,gBAAgB,CAAC;gBACb,UAAU,EAAE,UAAU;gBACtB,SAAS,EAAE,cAAc;aAC5B,CAAC,CAAC,SAAS,EACZ,UAAU,CACb,CAAC;YAEF,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACP,CAAC;IAED,YAAY,CAAC,SAA6B;QACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACvC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,aAAa,EAAE,CAAC;IACzB,CAAC;IAED,SAAS,CAGP,IAAW;QACT,OAAO,IAAI,CAAC,IAAI;aACX,aAAa,CAAC;YACX,IAAI,EAAE,OAAO;YACb,OAAO,EAAE;gBACL,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;aAC1B;YACD,IAAI,EAAE,IAAI,IAAI,IAAI;YAClB,GAAG,gBAAgB,EAAE;SACxB,CAAC;aACD,iBAAiB,EAAoB,CAAC;IAC/C,CAAC;IAED,wBAAwB,CACpB,OAAqC,EACrC,SAAoB;QAEpB,OAAO,IAAI,KAAK,CACZ,kBAAkB,CACd,IAAI,CAAC,QAAQ,CAAC,OAAO;aAChB,wBAAwB,CAAC,OAAO,EAAE,SAAS,CAAC;aAC5C,iBAAiB,EAAE,CAC3B,EACD,IAAI,CAAC,IAAI,CACZ,CAAC;IACN,CAAC;CACJ;AAID,SAAS,0BAA0B,CAAC,UAAsB;IACtD,OAAO,iBAAiB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,YAA0B;IACjE,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE;QAC5C,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;KAC5C;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;AACtE,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,14 +5,14 @@ import { agentSecretFromBytes, agentSecretToBytes, getAgentID, newRandomAgentSec
|
|
|
5
5
|
import { connectedPeers } from "./streamUtils.js";
|
|
6
6
|
import { AnonymousControlledAccount, ControlledAccount } from "./account.js";
|
|
7
7
|
import { rawCoIDtoBytes, rawCoIDfromBytes } from "./ids.js";
|
|
8
|
-
import {
|
|
8
|
+
import { Group, expectGroupContent } from "./group.js";
|
|
9
9
|
import type { SessionID, AgentID } from "./ids.js";
|
|
10
10
|
import type { CoID, ContentType } from "./contentType.js";
|
|
11
11
|
import type { JsonValue } from "./jsonValue.js";
|
|
12
12
|
import type { SyncMessage, Peer } from "./sync.js";
|
|
13
13
|
import type { AgentSecret } from "./crypto.js";
|
|
14
14
|
import type { AccountID, AccountContent, ProfileContent, Profile } from "./account.js";
|
|
15
|
-
import type { InviteSecret } from "./
|
|
15
|
+
import type { InviteSecret } from "./group.js";
|
|
16
16
|
type Value = JsonValue | ContentType;
|
|
17
17
|
export declare const cojsonInternals: {
|
|
18
18
|
agentSecretFromBytes: typeof agentSecretFromBytes;
|
|
@@ -27,9 +27,9 @@ export declare const cojsonInternals: {
|
|
|
27
27
|
agentSecretFromSecretSeed: typeof agentSecretFromSecretSeed;
|
|
28
28
|
secretSeedLength: number;
|
|
29
29
|
shortHashLength: number;
|
|
30
|
-
|
|
30
|
+
expectGroupContent: typeof expectGroupContent;
|
|
31
31
|
};
|
|
32
|
-
export { LocalNode, CoValue, CoMap, AnonymousControlledAccount, ControlledAccount,
|
|
32
|
+
export { LocalNode, CoValue, CoMap, AnonymousControlledAccount, ControlledAccount, Group };
|
|
33
33
|
export type { Value, JsonValue, ContentType, CoID, AgentSecret, SessionID, SyncMessage, AgentID, AccountID, Peer, AccountContent, Profile, ProfileContent, InviteSecret };
|
|
34
34
|
export declare namespace CojsonInternalTypes {
|
|
35
35
|
type CoValueKnownState = import("./sync.js").CoValueKnownState;
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import { agentSecretFromBytes, agentSecretToBytes, getAgentID, newRandomAgentSec
|
|
|
5
5
|
import { connectedPeers } from "./streamUtils.js";
|
|
6
6
|
import { AnonymousControlledAccount, ControlledAccount } from "./account.js";
|
|
7
7
|
import { rawCoIDtoBytes, rawCoIDfromBytes } from "./ids.js";
|
|
8
|
-
import {
|
|
8
|
+
import { Group, expectGroupContent } from "./group.js";
|
|
9
9
|
export const cojsonInternals = {
|
|
10
10
|
agentSecretFromBytes,
|
|
11
11
|
agentSecretToBytes,
|
|
@@ -19,7 +19,7 @@ export const cojsonInternals = {
|
|
|
19
19
|
agentSecretFromSecretSeed,
|
|
20
20
|
secretSeedLength,
|
|
21
21
|
shortHashLength,
|
|
22
|
-
|
|
22
|
+
expectGroupContent
|
|
23
23
|
};
|
|
24
|
-
export { LocalNode, CoValue, CoMap, AnonymousControlledAccount, ControlledAccount,
|
|
24
|
+
export { LocalNode, CoValue, CoMap, AnonymousControlledAccount, ControlledAccount, Group };
|
|
25
25
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EACH,oBAAoB,EACpB,kBAAkB,EAClB,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,gBAAgB,EAChB,eAAe,GAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EACH,oBAAoB,EACpB,kBAAkB,EAClB,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,gBAAgB,EAChB,eAAe,GAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAiBtD,MAAM,CAAC,MAAM,eAAe,GAAG;IAC3B,oBAAoB;IACpB,kBAAkB;IAClB,kBAAkB;IAClB,oBAAoB;IACpB,cAAc;IACd,UAAU;IACV,cAAc;IACd,gBAAgB;IAChB,mBAAmB;IACnB,yBAAyB;IACzB,gBAAgB;IAChB,eAAe;IACf,kBAAkB;CACrB,CAAC;AAEF,OAAO,EACH,SAAS,EACT,OAAO,EACP,KAAK,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,KAAK,EACR,CAAC"}
|
package/dist/node.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AgentSecret } from "./crypto.js";
|
|
2
2
|
import { CoValue, CoValueHeader } from "./coValue.js";
|
|
3
|
-
import { InviteSecret,
|
|
3
|
+
import { InviteSecret, Group } from "./group.js";
|
|
4
4
|
import { Peer, SyncManager } from "./sync.js";
|
|
5
5
|
import { AgentID, RawCoID, SessionID } from "./ids.js";
|
|
6
6
|
import { CoID, ContentType } from "./contentType.js";
|
|
@@ -24,12 +24,12 @@ export declare class LocalNode {
|
|
|
24
24
|
loadCoValue(id: RawCoID): Promise<CoValue>;
|
|
25
25
|
load<T extends ContentType>(id: CoID<T>): Promise<T>;
|
|
26
26
|
loadProfile(id: AccountID): Promise<Profile>;
|
|
27
|
-
acceptInvite<T extends ContentType>(
|
|
27
|
+
acceptInvite<T extends ContentType>(groupOrOwnedValueID: CoID<T>, inviteSecret: InviteSecret): Promise<void>;
|
|
28
28
|
expectCoValueLoaded(id: RawCoID, expectation?: string): CoValue;
|
|
29
29
|
expectProfileLoaded(id: AccountID, expectation?: string): Profile;
|
|
30
30
|
createAccount(name: string, agentSecret?: `sealerSecret_z${string}/signerSecret_z${string}`): ControlledAccount;
|
|
31
31
|
resolveAccountAgent(id: AccountIDOrAgentID, expectation?: string): AgentID;
|
|
32
|
-
|
|
32
|
+
createGroup(): Group;
|
|
33
33
|
testWithDifferentAccount(account: GeneralizedControlledAccount, ownSessionID: SessionID): LocalNode;
|
|
34
34
|
}
|
|
35
35
|
type CoValueState = {
|