cojson 0.18.0 → 0.18.1

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 (62) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +6 -0
  3. package/dist/coValueCore/branching.d.ts +36 -0
  4. package/dist/coValueCore/branching.d.ts.map +1 -0
  5. package/dist/coValueCore/branching.js +122 -0
  6. package/dist/coValueCore/branching.js.map +1 -0
  7. package/dist/coValueCore/coValueCore.d.ts +71 -5
  8. package/dist/coValueCore/coValueCore.d.ts.map +1 -1
  9. package/dist/coValueCore/coValueCore.js +162 -53
  10. package/dist/coValueCore/coValueCore.js.map +1 -1
  11. package/dist/coValueCore/decodeTransactionChangesAndMeta.d.ts +3 -0
  12. package/dist/coValueCore/decodeTransactionChangesAndMeta.d.ts.map +1 -0
  13. package/dist/coValueCore/decodeTransactionChangesAndMeta.js +59 -0
  14. package/dist/coValueCore/decodeTransactionChangesAndMeta.js.map +1 -0
  15. package/dist/coValueCore/verifiedState.d.ts.map +1 -1
  16. package/dist/coValues/coList.d.ts +3 -3
  17. package/dist/coValues/coList.d.ts.map +1 -1
  18. package/dist/coValues/coList.js +4 -7
  19. package/dist/coValues/coList.js.map +1 -1
  20. package/dist/coValues/coMap.d.ts +3 -3
  21. package/dist/coValues/coMap.d.ts.map +1 -1
  22. package/dist/coValues/coMap.js +6 -6
  23. package/dist/coValues/coMap.js.map +1 -1
  24. package/dist/coValues/coStream.d.ts +3 -3
  25. package/dist/coValues/coStream.d.ts.map +1 -1
  26. package/dist/coValues/coStream.js +4 -4
  27. package/dist/coValues/coStream.js.map +1 -1
  28. package/dist/ids.d.ts.map +1 -1
  29. package/dist/ids.js.map +1 -1
  30. package/dist/jsonStringify.d.ts +1 -0
  31. package/dist/jsonStringify.d.ts.map +1 -1
  32. package/dist/jsonStringify.js +8 -0
  33. package/dist/jsonStringify.js.map +1 -1
  34. package/dist/permissions.d.ts +2 -7
  35. package/dist/permissions.d.ts.map +1 -1
  36. package/dist/permissions.js +72 -70
  37. package/dist/permissions.js.map +1 -1
  38. package/dist/tests/branching.test.d.ts +2 -0
  39. package/dist/tests/branching.test.d.ts.map +1 -0
  40. package/dist/tests/branching.test.js +99 -0
  41. package/dist/tests/branching.test.js.map +1 -0
  42. package/dist/tests/coValueCore.test.js +2 -3
  43. package/dist/tests/coValueCore.test.js.map +1 -1
  44. package/dist/tests/sync.storage.test.js +1 -3
  45. package/dist/tests/sync.storage.test.js.map +1 -1
  46. package/dist/tests/sync.upload.test.js +1 -3
  47. package/dist/tests/sync.upload.test.js.map +1 -1
  48. package/package.json +2 -2
  49. package/src/coValueCore/branching.ts +198 -0
  50. package/src/coValueCore/coValueCore.ts +255 -72
  51. package/src/coValueCore/decodeTransactionChangesAndMeta.ts +81 -0
  52. package/src/coValueCore/verifiedState.ts +1 -1
  53. package/src/coValues/coList.ts +8 -10
  54. package/src/coValues/coMap.ts +8 -11
  55. package/src/coValues/coStream.ts +7 -8
  56. package/src/ids.ts +4 -1
  57. package/src/jsonStringify.ts +8 -0
  58. package/src/permissions.ts +80 -89
  59. package/src/tests/branching.test.ts +141 -0
  60. package/src/tests/coValueCore.test.ts +2 -3
  61. package/src/tests/sync.storage.test.ts +3 -3
  62. package/src/tests/sync.upload.test.ts +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"coStream.js","sourceRoot":"","sources":["../../src/coValues/coStream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coStream.js","sourceRoot":"","sources":["../../src/coValues/coStream.ts"],"names":[],"mappings":"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"}
package/dist/ids.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../src/ids.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGpD,MAAM,MAAM,OAAO,GAAG,OAAO,MAAM,EAAE,CAAC;AACtC,MAAM,MAAM,oBAAoB,GAAG,UAAU,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;AAC9D,MAAM,MAAM,mBAAmB,GAAG,SAAS,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;AAE5D,wBAAgB,SAAS,CAAC,EAAE,EAAE,OAAO,GAAG,EAAE,IAAI,OAAO,CAEpD;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,OAAO,GAAG,UAAU,CAEtD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAE3D;AAED,MAAM,MAAM,aAAa,GAAG;IAAE,SAAS,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtE,MAAM,MAAM,OAAO,GAAG,WAAW,MAAM,YAAY,MAAM,EAAE,CAAC;AAE5D,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,EAAE,IAAI,OAAO,CAMnD;AAED,MAAM,MAAM,SAAS,GAAG,GAAG,YAAY,GAAG,OAAO,aAAa,MAAM,EAAE,CAAC;AAEvE,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,MAAM,GACV,GAAG,IAAI,oBAAoB,CAE7B;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,oBAAoB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAE1E;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI,mBAAmB,CAE7E;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAExE;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,+BAUhD;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,qBAYvD"}
1
+ {"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../src/ids.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAGpD,MAAM,MAAM,OAAO,GAAG,OAAO,MAAM,EAAE,CAAC;AACtC,MAAM,MAAM,oBAAoB,GAAG,UAAU,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;AAC9D,MAAM,MAAM,mBAAmB,GAAG,SAAS,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;AAE5D,wBAAgB,SAAS,CAAC,EAAE,EAAE,OAAO,GAAG,EAAE,IAAI,OAAO,CAEpD;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,OAAO,GAAG,UAAU,CAEtD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAE3D;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,WAAW,MAAM,YAAY,MAAM,EAAE,CAAC;AAE5D,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,EAAE,IAAI,OAAO,CAMnD;AAED,MAAM,MAAM,SAAS,GAAG,GAAG,YAAY,GAAG,OAAO,aAAa,MAAM,EAAE,CAAC;AAEvE,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,MAAM,GACV,GAAG,IAAI,oBAAoB,CAE7B;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,oBAAoB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAE1E;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI,mBAAmB,CAE7E;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAExE;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,+BAUhD;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,OAAO,EAAE,qBAYvD"}
package/dist/ids.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ids.js","sourceRoot":"","sources":["../src/ids.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAIrC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAMrD,MAAM,UAAU,SAAS,CAAC,EAAW;IACnC,OAAO,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAAW;IACxC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAiB;IAChD,OAAO,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,EAAa,CAAC;AAC5E,CAAC;AAMD,MAAM,UAAU,SAAS,CAAC,EAAU;IAClC,OAAO,CACL,OAAO,EAAE,KAAK,QAAQ;QACtB,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QACxB,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CACxB,CAAC;AACJ,CAAC;AAID,MAAM,UAAU,sBAAsB,CACpC,GAAW;IAEX,OAAO,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAyB;IACxD,OAAO,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAmB,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAW;IAC/C,OAAO,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAwB;IACtD,OAAO,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAmB,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,GAAY;IAC/C,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAE9C,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC;QAChC,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;SAAM,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,GAAc,CAAC;IACxB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAe;IACtD,MAAM,kBAAkB,GAAc,EAAE,CAAC;IAEzC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAExC,IAAI,KAAK,EAAE,CAAC;YACV,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,OAAO,kBAAkB,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"ids.js","sourceRoot":"","sources":["../src/ids.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAIrC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAMrD,MAAM,UAAU,SAAS,CAAC,EAAW;IACnC,OAAO,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAAW;IACxC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAiB;IAChD,OAAO,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,EAAa,CAAC;AAC5E,CAAC;AASD,MAAM,UAAU,SAAS,CAAC,EAAU;IAClC,OAAO,CACL,OAAO,EAAE,KAAK,QAAQ;QACtB,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QACxB,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CACxB,CAAC;AACJ,CAAC;AAID,MAAM,UAAU,sBAAsB,CACpC,GAAW;IAEX,OAAO,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAyB;IACxD,OAAO,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAmB,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAW;IAC/C,OAAO,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAwB;IACtD,OAAO,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAmB,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,GAAY;IAC/C,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAE9C,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC;QAChC,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;SAAM,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,GAAc,CAAC;IACxB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAe;IACtD,MAAM,kBAAkB,GAAc,EAAE,CAAC;IAEzC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAExC,IAAI,KAAK,EAAE,CAAC;YACV,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,OAAO,kBAAkB,CAAC;AAC5B,CAAC"}
@@ -4,4 +4,5 @@ export type Stringified<T> = string & {
4
4
  export declare function stableStringify<T>(data: T): Stringified<T>;
5
5
  export declare function stableStringify(data: undefined): undefined;
6
6
  export declare function parseJSON<T>(json: Stringified<T>): T;
7
+ export declare function safeParseJSON<T>(json: Stringified<T>): T | undefined;
7
8
  //# sourceMappingURL=jsonStringify.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"jsonStringify.d.ts","sourceRoot":"","sources":["../src/jsonStringify.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,MAAM,GAAG;IAAE,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC;AAEpD,wBAAgB,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;AAC5D,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;AA4D5D,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAEpD"}
1
+ {"version":3,"file":"jsonStringify.d.ts","sourceRoot":"","sources":["../src/jsonStringify.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,MAAM,GAAG;IAAE,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC;AAEpD,wBAAgB,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;AAC5D,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAAC;AA4D5D,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAEpD;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAMpE"}
@@ -54,4 +54,12 @@ export function stableStringify(data) {
54
54
  export function parseJSON(json) {
55
55
  return JSON.parse(json);
56
56
  }
57
+ export function safeParseJSON(json) {
58
+ try {
59
+ return JSON.parse(json);
60
+ }
61
+ catch (e) {
62
+ return undefined;
63
+ }
64
+ }
57
65
  //# sourceMappingURL=jsonStringify.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"jsonStringify.js","sourceRoot":"","sources":["../src/jsonStringify.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jsonStringify.js","sourceRoot":"","sources":["../src/jsonStringify.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,7 @@
1
1
  import { CoValueCore } from "./coValueCore/coValueCore.js";
2
- import { Transaction } from "./coValueCore/verifiedState.js";
3
2
  import { RawAccountID } from "./coValues/account.js";
4
3
  import { KeyID } from "./crypto/crypto.js";
5
- import { AgentID, RawCoID, TransactionID } from "./ids.js";
6
- import { CoValueKnownState } from "./sync.js";
4
+ import { AgentID, RawCoID } from "./ids.js";
7
5
  export type PermissionsDef = {
8
6
  type: "group";
9
7
  initialAdmin: RawAccountID | AgentID;
@@ -32,10 +30,7 @@ export type AccountRole =
32
30
  | "writeOnly";
33
31
  export type Role = AccountRole | "revoked" | "adminInvite" | "writerInvite" | "readerInvite" | "writeOnlyInvite";
34
32
  export declare function disablePermissionErrors(): void;
35
- export declare function determineValidTransactions(coValue: CoValueCore, knownTransactions?: CoValueKnownState["sessions"]): {
36
- txID: TransactionID;
37
- tx: Transaction;
38
- }[];
33
+ export declare function determineValidTransactions(coValue: CoValueCore): void;
39
34
  export declare function isWriteKeyForMember(co: string): co is `writeKeyFor_${RawAccountID | AgentID}`;
40
35
  export declare function getAccountOrAgentFromWriteKeyForMember(co: `writeKeyFor_${RawAccountID | AgentID}`): RawAccountID | AgentID;
41
36
  export declare function isKeyForKeyField(co: string): co is `${KeyID}_for_${KeyID}`;
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAc,YAAY,EAAc,MAAM,uBAAuB,CAAC;AAS7E,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EACL,OAAO,EAEP,OAAO,EAEP,aAAa,EAEd,MAAM,UAAU,CAAC;AAIlB,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAI9C,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAA;CAAE,GACvD;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAE/B,MAAM,MAAM,WAAW;AACrB;;GAEG;AACD,QAAQ;AACV;;GAEG;GACD,QAAQ;AACV;;GAEG;GACD,OAAO;AACT;;GAEG;GACD,WAAW,CAAC;AAEhB,MAAM,MAAM,IAAI,GACZ,WAAW,GACX,SAAS,GACT,aAAa,GACb,cAAc,GACd,cAAc,GACd,iBAAiB,CAAC;AAOtB,wBAAgB,uBAAuB,SAEtC;AAaD,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,WAAW,EACpB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,UAAU,CAAC,GAChD;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,EAAE,EAAE,WAAW,CAAA;CAAE,EAAE,CAqF5C;AAsVD,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,GACT,EAAE,IAAI,eAAe,YAAY,GAAG,OAAO,EAAE,CAE/C;AAED,wBAAgB,sCAAsC,CACpD,EAAE,EAAE,eAAe,YAAY,GAAG,OAAO,EAAE,GAC1C,YAAY,GAAG,OAAO,CAExB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,EAAE,IAAI,GAAG,KAAK,QAAQ,KAAK,EAAE,CAE1E;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,MAAM,GACT,EAAE,IAAI,GAAG,KAAK,QAAQ,YAAY,GAAG,OAAO,EAAE,CAMhD"}
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,EAAc,YAAY,EAAc,MAAM,uBAAuB,CAAC;AAS7E,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EACL,OAAO,EAEP,OAAO,EAIR,MAAM,UAAU,CAAC;AAQlB,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAA;CAAE,GACvD;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAE/B,MAAM,MAAM,WAAW;AACrB;;GAEG;AACD,QAAQ;AACV;;GAEG;GACD,QAAQ;AACV;;GAEG;GACD,OAAO;AACT;;GAEG;GACD,WAAW,CAAC;AAEhB,MAAM,MAAM,IAAI,GACZ,WAAW,GACX,SAAS,GACT,aAAa,GACb,cAAc,GACd,cAAc,GACd,iBAAiB,CAAC;AAOtB,wBAAgB,uBAAuB,SAEtC;AAaD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,WAAW,QAsE9D;AA+VD,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,GACT,EAAE,IAAI,eAAe,YAAY,GAAG,OAAO,EAAE,CAE/C;AAED,wBAAgB,sCAAsC,CACpD,EAAE,EAAE,eAAe,YAAY,GAAG,OAAO,EAAE,GAC1C,YAAY,GAAG,OAAO,CAExB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,EAAE,IAAI,GAAG,KAAK,QAAQ,KAAK,EAAE,CAE1E;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,MAAM,GACT,EAAE,IAAI,GAAG,KAAK,QAAQ,YAAY,GAAG,OAAO,EAAE,CAMhD"}
@@ -3,7 +3,6 @@ import { EVERYONE, isInheritableRole, } from "./coValues/group.js";
3
3
  import { getParentGroupId, } from "./ids.js";
4
4
  import { parseJSON } from "./jsonStringify.js";
5
5
  import { logger } from "./logger.js";
6
- import { accountOrAgentIDfromSessionID } from "./typeUtils/accountOrAgentIDfromSessionID.js";
7
6
  import { expectGroup } from "./typeUtils/expectGroup.js";
8
7
  let logPermissionErrors = true;
9
8
  export function disablePermissionErrors() {
@@ -15,7 +14,7 @@ function logPermissionError(message, attributes) {
15
14
  }
16
15
  logger.debug("Permission error: " + message, attributes);
17
16
  }
18
- export function determineValidTransactions(coValue, knownTransactions) {
17
+ export function determineValidTransactions(coValue) {
19
18
  if (!coValue.isAvailable()) {
20
19
  throw new Error("determineValidTransactions CoValue is not available");
21
20
  }
@@ -24,8 +23,7 @@ export function determineValidTransactions(coValue, knownTransactions) {
24
23
  if (!initialAdmin) {
25
24
  throw new Error("Group must have initialAdmin");
26
25
  }
27
- return determineValidTransactionsForGroup(coValue, initialAdmin)
28
- .validTransactions;
26
+ determineValidTransactionsForGroup(coValue, initialAdmin);
29
27
  }
30
28
  else if (coValue.verified.header.ruleset.type === "ownedByGroup") {
31
29
  const groupContent = expectGroup(coValue.node
@@ -34,42 +32,33 @@ export function determineValidTransactions(coValue, knownTransactions) {
34
32
  if (groupContent.type !== "comap") {
35
33
  throw new Error("Group must be a map");
36
34
  }
37
- const validTransactions = [];
38
- for (const [sessionID, sessionLog] of coValue.verified.sessions.entries()) {
39
- const transactor = accountOrAgentIDfromSessionID(sessionID);
40
- const knownTransactionsForSession = knownTransactions?.[sessionID] ?? -1;
41
- sessionLog.transactions.forEach((tx, txIndex) => {
42
- if (knownTransactionsForSession >= txIndex) {
43
- return;
44
- }
45
- const groupAtTime = groupContent.atTime(tx.madeAt);
46
- const effectiveTransactor = agentInAccountOrMemberInGroup(transactor, groupAtTime);
47
- if (!effectiveTransactor) {
48
- return;
49
- }
50
- const transactorRoleAtTxTime = groupAtTime.roleOfInternal(effectiveTransactor);
51
- if (transactorRoleAtTxTime !== "admin" &&
52
- transactorRoleAtTxTime !== "writer" &&
53
- transactorRoleAtTxTime !== "writeOnly") {
54
- return;
55
- }
56
- validTransactions.push({ txID: { sessionID, txIndex }, tx });
57
- });
35
+ for (const tx of coValue.verifiedTransactions) {
36
+ if (tx.isValidated) {
37
+ continue;
38
+ }
39
+ tx.isValidated = true;
40
+ const wasValid = tx.isValid;
41
+ const groupAtTime = groupContent.atTime(tx.madeAt);
42
+ const effectiveTransactor = agentInAccountOrMemberInGroup(tx.author, groupAtTime);
43
+ if (!effectiveTransactor) {
44
+ tx.isValid = false;
45
+ continue;
46
+ }
47
+ const transactorRoleAtTxTime = groupAtTime.roleOfInternal(effectiveTransactor);
48
+ if (transactorRoleAtTxTime !== "admin" &&
49
+ transactorRoleAtTxTime !== "writer" &&
50
+ transactorRoleAtTxTime !== "writeOnly") {
51
+ tx.isValid = false;
52
+ continue;
53
+ }
54
+ tx.isValid = true;
58
55
  }
59
- return validTransactions;
60
56
  }
61
57
  else if (coValue.verified.header.ruleset.type === "unsafeAllowAll") {
62
- const validTransactions = [];
63
- for (const [sessionID, sessionLog] of coValue.verified.sessions.entries()) {
64
- const knownTransactionsForSession = knownTransactions?.[sessionID] ?? -1;
65
- sessionLog.transactions.forEach((tx, txIndex) => {
66
- if (knownTransactionsForSession >= txIndex) {
67
- return;
68
- }
69
- validTransactions.push({ txID: { sessionID, txIndex }, tx });
70
- });
58
+ for (const tx of coValue.verifiedTransactions) {
59
+ tx.isValid = true;
60
+ tx.isValidated = true;
71
61
  }
72
- return validTransactions;
73
62
  }
74
63
  else {
75
64
  throw new Error("Unknown ruleset type " +
@@ -116,28 +105,20 @@ function resolveMemberStateFromParentReference(coValue, memberState, parentRefer
116
105
  }
117
106
  }
118
107
  function determineValidTransactionsForGroup(coValue, initialAdmin, extendChain) {
119
- const allTransactionsSorted = [];
120
- for (const [sessionID, sessionLog] of coValue.verified?.sessions.entries() ??
121
- []) {
122
- sessionLog.transactions.forEach((tx, txIndex) => {
123
- allTransactionsSorted.push({ sessionID, txIndex, tx });
124
- });
125
- }
126
- allTransactionsSorted.sort((a, b) => {
127
- return a.tx.madeAt - b.tx.madeAt;
108
+ coValue.verifiedTransactions.sort((a, b) => {
109
+ return a.madeAt - b.madeAt;
128
110
  });
129
111
  const memberState = {};
130
112
  const writeOnlyKeys = {};
131
113
  const validTransactions = [];
132
114
  const writeKeys = new Set();
133
- for (const { sessionID, txIndex, tx } of allTransactionsSorted) {
134
- const transactor = accountOrAgentIDfromSessionID(sessionID);
115
+ for (const transaction of coValue.verifiedTransactions) {
116
+ const transactor = transaction.author;
117
+ transaction.isValidated = true;
118
+ const tx = transaction.tx;
135
119
  if (tx.privacy === "private") {
136
120
  if (memberState[transactor] === "admin") {
137
- validTransactions.push({
138
- txID: { sessionID, txIndex },
139
- tx,
140
- });
121
+ transaction.isValid = true;
141
122
  continue;
142
123
  }
143
124
  else {
@@ -145,40 +126,48 @@ function determineValidTransactionsForGroup(coValue, initialAdmin, extendChain)
145
126
  continue;
146
127
  }
147
128
  }
148
- let changes;
149
- try {
150
- changes = parseJSON(tx.changes);
151
- }
152
- catch (e) {
153
- logPermissionError("Invalid JSON in transaction", {
154
- id: coValue.id,
155
- tx,
156
- });
157
- continue;
129
+ let changes = transaction.changes;
130
+ if (!changes) {
131
+ try {
132
+ changes = parseJSON(tx.changes);
133
+ transaction.changes = changes;
134
+ }
135
+ catch (e) {
136
+ logPermissionError("Invalid JSON in transaction", {
137
+ id: coValue.id,
138
+ tx,
139
+ });
140
+ transaction.hasInvalidChanges = true;
141
+ continue;
142
+ }
158
143
  }
159
144
  const change = changes[0];
160
145
  if (changes.length !== 1) {
161
146
  logPermissionError("Group transaction must have exactly one change");
147
+ transaction.isValid = false;
162
148
  continue;
163
149
  }
164
150
  if (change.op !== "set") {
165
151
  logPermissionError("Group transaction must set a role or readKey");
152
+ transaction.isValid = false;
166
153
  continue;
167
154
  }
168
155
  if (change.key === "readKey") {
169
156
  if (memberState[transactor] !== "admin") {
170
157
  logPermissionError("Only admins can set readKeys");
158
+ transaction.isValid = false;
171
159
  continue;
172
160
  }
173
- validTransactions.push({ txID: { sessionID, txIndex }, tx });
161
+ transaction.isValid = true;
174
162
  continue;
175
163
  }
176
164
  else if (change.key === "profile") {
177
165
  if (memberState[transactor] !== "admin") {
178
166
  logPermissionError("Only admins can set profile");
167
+ transaction.isValid = false;
179
168
  continue;
180
169
  }
181
- validTransactions.push({ txID: { sessionID, txIndex }, tx });
170
+ transaction.isValid = true;
182
171
  continue;
183
172
  }
184
173
  else if (change.key === "root") {
@@ -186,7 +175,7 @@ function determineValidTransactionsForGroup(coValue, initialAdmin, extendChain)
186
175
  logPermissionError("Only admins can set root");
187
176
  continue;
188
177
  }
189
- validTransactions.push({ txID: { sessionID, txIndex }, tx });
178
+ transaction.isValid = true;
190
179
  continue;
191
180
  }
192
181
  else if (isKeyForKeyField(change.key) ||
@@ -198,15 +187,17 @@ function determineValidTransactionsForGroup(coValue, initialAdmin, extendChain)
198
187
  memberState[transactor] !== "writeOnlyInvite" &&
199
188
  !isOwnWriteKeyRevelation(change.key, transactor, writeOnlyKeys)) {
200
189
  logPermissionError("Only admins can reveal keys");
190
+ transaction.isValid = false;
201
191
  continue;
202
192
  }
203
193
  // TODO: check validity of agents who the key is revealed to?
204
- validTransactions.push({ txID: { sessionID, txIndex }, tx });
194
+ transaction.isValid = true;
205
195
  continue;
206
196
  }
207
197
  else if (isParentExtension(change.key)) {
208
198
  if (memberState[transactor] !== "admin") {
209
199
  logPermissionError("Only admins can set parent extensions");
200
+ transaction.isValid = false;
210
201
  continue;
211
202
  }
212
203
  extendChain = extendChain ?? new Set([]);
@@ -214,13 +205,14 @@ function determineValidTransactionsForGroup(coValue, initialAdmin, extendChain)
214
205
  // Circular reference detected, drop all the transactions involved
215
206
  if (extendChain.has(coValue.id)) {
216
207
  logPermissionError("Circular extend detected, dropping the transaction");
208
+ transaction.isValid = false;
217
209
  continue;
218
210
  }
219
- validTransactions.push({ txID: { sessionID, txIndex }, tx });
211
+ transaction.isValid = true;
220
212
  continue;
221
213
  }
222
214
  else if (isChildExtension(change.key)) {
223
- validTransactions.push({ txID: { sessionID, txIndex }, tx });
215
+ transaction.isValid = true;
224
216
  continue;
225
217
  }
226
218
  else if (isWriteKeyForMember(change.key)) {
@@ -229,6 +221,7 @@ function determineValidTransactionsForGroup(coValue, initialAdmin, extendChain)
229
221
  memberState[transactor] !== "writeOnlyInvite" &&
230
222
  memberKey !== transactor) {
231
223
  logPermissionError("Only admins can set writeKeys");
224
+ transaction.isValid = false;
232
225
  continue;
233
226
  }
234
227
  writeOnlyKeys[memberKey] = change.value;
@@ -242,10 +235,11 @@ function determineValidTransactionsForGroup(coValue, initialAdmin, extendChain)
242
235
  */
243
236
  if (writeKeys.has(change.key) && memberState[transactor] !== "admin") {
244
237
  logPermissionError("Write key already exists and can't be overridden by invite");
238
+ transaction.isValid = false;
245
239
  continue;
246
240
  }
247
241
  writeKeys.add(change.key);
248
- validTransactions.push({ txID: { sessionID, txIndex }, tx });
242
+ transaction.isValid = true;
249
243
  continue;
250
244
  }
251
245
  const affectedMember = change.key;
@@ -260,6 +254,7 @@ function determineValidTransactionsForGroup(coValue, initialAdmin, extendChain)
260
254
  change.value !== "readerInvite" &&
261
255
  change.value !== "writeOnlyInvite") {
262
256
  logPermissionError("Group transaction must set a valid role");
257
+ transaction.isValid = false;
263
258
  continue;
264
259
  }
265
260
  if (affectedMember === EVERYONE &&
@@ -268,6 +263,7 @@ function determineValidTransactionsForGroup(coValue, initialAdmin, extendChain)
268
263
  change.value === "writeOnly" ||
269
264
  change.value === "revoked")) {
270
265
  logPermissionError("Everyone can only be set to reader, writer, writeOnly or revoked");
266
+ transaction.isValid = false;
271
267
  continue;
272
268
  }
273
269
  const isFirstSelfAppointment = !memberState[transactor] &&
@@ -283,42 +279,48 @@ function determineValidTransactionsForGroup(coValue, initialAdmin, extendChain)
283
279
  affectedMember !== transactor &&
284
280
  assignedRole !== "admin") {
285
281
  logPermissionError("Admins can only demote themselves.");
282
+ transaction.isValid = false;
286
283
  continue;
287
284
  }
288
285
  }
289
286
  else if (memberState[transactor] === "adminInvite") {
290
287
  if (change.value !== "admin") {
291
288
  logPermissionError("AdminInvites can only create admins.");
289
+ transaction.isValid = false;
292
290
  continue;
293
291
  }
294
292
  }
295
293
  else if (memberState[transactor] === "writerInvite") {
296
294
  if (change.value !== "writer") {
297
295
  logPermissionError("WriterInvites can only create writers.");
296
+ transaction.isValid = false;
298
297
  continue;
299
298
  }
300
299
  }
301
300
  else if (memberState[transactor] === "readerInvite") {
302
301
  if (change.value !== "reader") {
303
302
  logPermissionError("ReaderInvites can only create reader.");
303
+ transaction.isValid = false;
304
304
  continue;
305
305
  }
306
306
  }
307
307
  else if (memberState[transactor] === "writeOnlyInvite") {
308
308
  if (change.value !== "writeOnly") {
309
309
  logPermissionError("WriteOnlyInvites can only create writeOnly.");
310
+ transaction.isValid = false;
310
311
  continue;
311
312
  }
312
313
  }
313
314
  else {
314
315
  logPermissionError("Group transaction must be made by current admin or invite");
316
+ transaction.isValid = false;
315
317
  continue;
316
318
  }
317
319
  }
318
320
  memberState[affectedMember] = change.value;
319
- validTransactions.push({ txID: { sessionID, txIndex }, tx });
321
+ transaction.isValid = true;
320
322
  }
321
- return { validTransactions, memberState };
323
+ return { memberState };
322
324
  }
323
325
  function agentInAccountOrMemberInGroup(transactor, groupAtTime) {
324
326
  if (transactor === groupAtTime.id && groupAtTime instanceof RawAccount) {
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=branching.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branching.test.d.ts","sourceRoot":"","sources":["../../src/tests/branching.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,99 @@
1
+ import { describe, expect, test } from "vitest";
2
+ import { createTestNode } from "./testUtils.js";
3
+ import { expectMap } from "../coValue.js";
4
+ describe("Branching Logic", () => {
5
+ describe("Branch Operations with Transactions", () => {
6
+ test("should maintain separate transaction histories", async () => {
7
+ const node = createTestNode();
8
+ const group = node.createGroup();
9
+ const originalMap = group.createMap();
10
+ const branchName = "feature-branch";
11
+ // Add transactions to original map
12
+ originalMap.set("originalKey1", "value1", "trusting");
13
+ originalMap.set("originalKey2", "value2", "trusting");
14
+ const branch = expectMap(originalMap.core.createBranch(branchName, group.id).getCurrentContent());
15
+ // Add transactions to branch
16
+ branch.set("branchKey1", "branchValue1", "trusting");
17
+ branch.set("branchKey2", "branchValue2", "trusting");
18
+ expect(originalMap.get("branchKey1")).toBe(undefined);
19
+ expect(originalMap.get("branchKey2")).toBe(undefined);
20
+ expect(branch.get("branchKey2")).toBe("branchValue2");
21
+ expect(branch.get("branchKey1")).toBe("branchValue1");
22
+ expect(branch.get("originalKey1")).toBe("value1");
23
+ expect(branch.get("originalKey2")).toBe("value2");
24
+ });
25
+ });
26
+ describe("Branch Merging", () => {
27
+ test("should merge branch transactions back to source", () => {
28
+ const node = createTestNode();
29
+ const group = node.createGroup();
30
+ const originalMap = group.createMap();
31
+ const branchName = "feature-branch";
32
+ // Add transactions to original map
33
+ originalMap.set("key1", "value1", "trusting");
34
+ originalMap.set("key2", "value2", "trusting");
35
+ // Create branch
36
+ const branch = expectMap(originalMap.core.createBranch(branchName, group.id).getCurrentContent());
37
+ // Add transactions to branch
38
+ branch.set("key1", "branchValue1", "trusting");
39
+ // Merge branch
40
+ const result = expectMap(branch.core.mergeBranch().getCurrentContent());
41
+ // Check that source now has branch transactions
42
+ expect(result.get("key1")).toBe("branchValue1");
43
+ expect(result.get("key2")).toBe("value2");
44
+ });
45
+ test("should not merge branch transactions back to source if they are already merged", () => {
46
+ const node = createTestNode();
47
+ const group = node.createGroup();
48
+ const originalMap = group.createMap();
49
+ const branchName = "feature-branch";
50
+ // Add transactions to original map
51
+ originalMap.set("key1", "value1", "trusting");
52
+ originalMap.set("key2", "value2", "trusting");
53
+ // Create branch
54
+ const branch = expectMap(originalMap.core.createBranch(branchName, group.id).getCurrentContent());
55
+ // Add transactions to branch
56
+ branch.set("key1", "branchValue1", "trusting");
57
+ // Merge branch twice
58
+ expectMap(branch.core.mergeBranch().getCurrentContent());
59
+ const result = expectMap(branch.core.mergeBranch().getCurrentContent());
60
+ expect(result.core.mergeCommits.length).toBe(1);
61
+ // Check that source now has branch transactions
62
+ expect(result.get("key1")).toBe("branchValue1");
63
+ expect(result.get("key2")).toBe("value2");
64
+ });
65
+ test("should not create a merge commit if the branch is empty", () => {
66
+ const node = createTestNode();
67
+ const group = node.createGroup();
68
+ const originalMap = group.createMap();
69
+ const branchName = "feature-branch";
70
+ // Add transactions to original map
71
+ originalMap.set("key1", "value1", "trusting");
72
+ originalMap.set("key2", "value2", "trusting");
73
+ // Create branch
74
+ const branch = expectMap(originalMap.core.createBranch(branchName, group.id).getCurrentContent());
75
+ // Merge branch twice
76
+ const result = expectMap(branch.core.mergeBranch().getCurrentContent());
77
+ expect(result.core.mergeCommits.length).toBe(0);
78
+ });
79
+ test("should merge the new changes from the branch after the last merge", () => {
80
+ const node = createTestNode();
81
+ const group = node.createGroup();
82
+ const originalMap = group.createMap();
83
+ const branchName = "feature-branch";
84
+ originalMap.set("key1", "value1", "trusting");
85
+ originalMap.set("key2", "value2", "trusting");
86
+ const branch = expectMap(originalMap.core.createBranch(branchName, group.id).getCurrentContent());
87
+ branch.set("key1", "branchValue1", "trusting");
88
+ branch.core.mergeBranch();
89
+ expect(originalMap.get("key1")).toBe("branchValue1");
90
+ expect(originalMap.get("key2")).toBe("value2");
91
+ branch.set("key2", "branchValue2", "trusting");
92
+ branch.core.mergeBranch();
93
+ expect(originalMap.core.mergeCommits.length).toBe(2);
94
+ expect(originalMap.get("key1")).toBe("branchValue1");
95
+ expect(originalMap.get("key2")).toBe("branchValue2");
96
+ });
97
+ });
98
+ });
99
+ //# sourceMappingURL=branching.test.js.map