cojson 0.0.7 → 0.0.8

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 (92) hide show
  1. package/.eslintrc.cjs +11 -8
  2. package/dist/coValue.d.ts +97 -0
  3. package/dist/coValue.js +381 -0
  4. package/dist/coValue.js.map +1 -0
  5. package/dist/coValue.test.d.ts +1 -0
  6. package/dist/coValue.test.js +78 -0
  7. package/dist/coValue.test.js.map +1 -0
  8. package/dist/contentType.d.ts +15 -0
  9. package/dist/contentType.js +7 -0
  10. package/dist/contentType.js.map +1 -0
  11. package/dist/contentType.test.d.ts +1 -0
  12. package/dist/contentType.test.js +149 -0
  13. package/dist/contentType.test.js.map +1 -0
  14. package/dist/contentTypes/coList.d.ts +11 -0
  15. package/dist/contentTypes/coList.js +16 -0
  16. package/dist/contentTypes/coList.js.map +1 -0
  17. package/dist/contentTypes/coMap.d.ts +56 -0
  18. package/dist/contentTypes/coMap.js +126 -0
  19. package/dist/contentTypes/coMap.js.map +1 -0
  20. package/dist/contentTypes/coStream.d.ts +11 -0
  21. package/dist/contentTypes/coStream.js +16 -0
  22. package/dist/contentTypes/coStream.js.map +1 -0
  23. package/dist/contentTypes/static.d.ts +11 -0
  24. package/dist/contentTypes/static.js +14 -0
  25. package/dist/contentTypes/static.js.map +1 -0
  26. package/dist/crypto.d.ts +97 -0
  27. package/dist/crypto.js +156 -0
  28. package/dist/crypto.js.map +1 -0
  29. package/dist/crypto.test.d.ts +1 -0
  30. package/dist/crypto.test.js +115 -0
  31. package/dist/crypto.test.js.map +1 -0
  32. package/dist/ids.d.ts +7 -0
  33. package/dist/ids.js +2 -0
  34. package/dist/ids.js.map +1 -0
  35. package/dist/index.d.ts +19 -0
  36. package/dist/index.js +13 -0
  37. package/dist/index.js.map +1 -0
  38. package/dist/jsonValue.d.ts +7 -0
  39. package/dist/jsonValue.js +2 -0
  40. package/dist/jsonValue.js.map +1 -0
  41. package/dist/node.d.ts +33 -0
  42. package/dist/node.js +113 -0
  43. package/dist/node.js.map +1 -0
  44. package/dist/permissions.d.ts +54 -0
  45. package/dist/permissions.js +218 -0
  46. package/dist/permissions.js.map +1 -0
  47. package/dist/permissions.test.d.ts +1 -0
  48. package/dist/permissions.test.js +794 -0
  49. package/dist/permissions.test.js.map +1 -0
  50. package/dist/sync.d.ts +80 -0
  51. package/dist/sync.js +271 -0
  52. package/dist/sync.js.map +1 -0
  53. package/dist/sync.test.d.ts +1 -0
  54. package/dist/sync.test.js +826 -0
  55. package/dist/sync.test.js.map +1 -0
  56. package/package.json +5 -4
  57. package/src/coValue.test.ts +3 -4
  58. package/src/coValue.ts +11 -11
  59. package/src/contentType.test.ts +3 -3
  60. package/src/contentType.ts +6 -6
  61. package/src/contentTypes/coList.ts +4 -4
  62. package/src/contentTypes/coMap.ts +6 -6
  63. package/src/contentTypes/coStream.ts +4 -4
  64. package/src/contentTypes/static.ts +5 -5
  65. package/src/crypto.test.ts +1 -1
  66. package/src/crypto.ts +2 -2
  67. package/src/index.ts +8 -8
  68. package/src/jsonValue.ts +1 -1
  69. package/src/node.ts +6 -7
  70. package/src/permissions.test.ts +5 -5
  71. package/src/permissions.ts +7 -7
  72. package/src/sync.test.ts +7 -7
  73. package/src/sync.ts +6 -6
  74. package/tsconfig.json +1 -7
  75. package/dist/coValue.mjs +0 -437
  76. package/dist/coValue.test.mjs +0 -122
  77. package/dist/contentType.mjs +0 -7
  78. package/dist/contentType.test.mjs +0 -179
  79. package/dist/contentTypes/coList.mjs +0 -18
  80. package/dist/contentTypes/coMap.mjs +0 -126
  81. package/dist/contentTypes/coStream.mjs +0 -18
  82. package/dist/contentTypes/static.mjs +0 -16
  83. package/dist/crypto.mjs +0 -207
  84. package/dist/crypto.test.mjs +0 -155
  85. package/dist/ids.mjs +0 -1
  86. package/dist/index.mjs +0 -21
  87. package/dist/jsonValue.mjs +0 -1
  88. package/dist/node.mjs +0 -144
  89. package/dist/permissions.mjs +0 -244
  90. package/dist/permissions.test.mjs +0 -985
  91. package/dist/sync.mjs +0 -318
  92. package/dist/sync.test.mjs +0 -861
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync.test.js","sourceRoot":"","sources":["../src/sync.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -5,13 +5,13 @@
5
5
  "types": "src/index.ts",
6
6
  "type": "module",
7
7
  "license": "MIT",
8
- "version": "0.0.7",
8
+ "version": "0.0.8",
9
9
  "devDependencies": {
10
10
  "@types/jest": "^29.5.3",
11
11
  "@typescript-eslint/eslint-plugin": "^6.2.1",
12
12
  "@typescript-eslint/parser": "^6.2.1",
13
- "esbuild": "^0.19.0",
14
13
  "eslint": "^8.46.0",
14
+ "eslint-plugin-require-extensions": "^0.1.3",
15
15
  "jest": "^29.6.2",
16
16
  "ts-jest": "^29.1.1",
17
17
  "typescript": "5.0.2"
@@ -26,8 +26,9 @@
26
26
  },
27
27
  "scripts": {
28
28
  "test": "jest",
29
- "build": "esbuild `find src \\( -name '*.ts' -o -name '*.tsx' \\)` --out-extension:.js=.mjs --platform=node --target=node14 --outdir=dist",
30
- "prepublishOnly": "yarn run build"
29
+ "lint": "eslint src/**/*.ts",
30
+ "build": "npm run lint && rm -rf ./dist && tsc --declaration --sourceMap --outDir dist",
31
+ "prepublishOnly": "npm run build"
31
32
  },
32
33
  "jest": {
33
34
  "preset": "ts-jest",
@@ -1,13 +1,12 @@
1
1
  import {
2
- CoValue,
3
2
  Transaction,
4
3
  getAgent,
5
4
  getAgentID,
6
5
  newRandomAgentCredential,
7
6
  newRandomSessionID,
8
- } from "./coValue";
9
- import { LocalNode } from "./node";
10
- import { createdNowUnique, sign, uniquenessForHeader } from "./crypto";
7
+ } from './coValue.js';
8
+ import { LocalNode } from './node.js';
9
+ import { createdNowUnique, sign } from './crypto.js';
11
10
 
12
11
  test("Can create coValue with new agent credentials and add transaction to it", () => {
13
12
  const agentCredential = newRandomAgentCredential("agent1");
package/src/coValue.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { randomBytes } from "@noble/hashes/utils";
2
- import { ContentType } from "./contentType";
3
- import { Static } from "./contentTypes/static";
4
- import { CoStream } from "./contentTypes/coStream";
5
- import { CoMap } from "./contentTypes/coMap";
2
+ import { ContentType } from './contentType.js';
3
+ import { Static } from './contentTypes/static.js';
4
+ import { CoStream } from './contentTypes/coStream.js';
5
+ import { CoMap } from './contentTypes/coMap.js';
6
6
  import {
7
7
  Encrypted,
8
8
  Hash,
@@ -29,19 +29,19 @@ import {
29
29
  recipientSecretToBytes,
30
30
  signatorySecretFromBytes,
31
31
  recipientSecretFromBytes,
32
- } from "./crypto";
33
- import { JsonValue } from "./jsonValue";
32
+ } from './crypto.js';
33
+ import { JsonValue } from './jsonValue.js';
34
34
  import { base58 } from "@scure/base";
35
35
  import {
36
36
  PermissionsDef as RulesetDef,
37
37
  Team,
38
38
  determineValidTransactions,
39
39
  expectTeamContent,
40
- } from "./permissions";
41
- import { LocalNode } from "./node";
42
- import { CoValueKnownState, NewContentMessage } from "./sync";
43
- import { AgentID, RawCoValueID, SessionID, TransactionID } from "./ids";
44
- import { CoList } from "./contentTypes/coList";
40
+ } from './permissions.js';
41
+ import { LocalNode } from './node.js';
42
+ import { CoValueKnownState, NewContentMessage } from './sync.js';
43
+ import { AgentID, RawCoValueID, SessionID, TransactionID } from './ids.js';
44
+ import { CoList } from './contentTypes/coList.js';
45
45
 
46
46
  export type CoValueHeader = {
47
47
  type: ContentType["type"];
@@ -4,9 +4,9 @@ import {
4
4
  getAgentID,
5
5
  newRandomAgentCredential,
6
6
  newRandomSessionID,
7
- } from "./coValue";
8
- import { createdNowUnique } from "./crypto";
9
- import { LocalNode } from "./node";
7
+ } from './coValue.js';
8
+ import { createdNowUnique } from "./crypto.js";
9
+ import { LocalNode } from "./node.js";
10
10
 
11
11
  test("Empty COJSON Map works", () => {
12
12
  const agentCredential = newRandomAgentCredential("agent1");
@@ -1,9 +1,9 @@
1
- import { JsonValue } from "./jsonValue";
2
- import { RawCoValueID } from "./ids";
3
- import { CoMap } from "./contentTypes/coMap";
4
- import { CoStream } from "./contentTypes/coStream";
5
- import { Static } from "./contentTypes/static";
6
- import { CoList } from "./contentTypes/coList";
1
+ import { JsonValue } from './jsonValue.js';
2
+ import { RawCoValueID } from './ids.js';
3
+ import { CoMap } from './contentTypes/coMap.js';
4
+ import { CoStream } from './contentTypes/coStream.js';
5
+ import { Static } from './contentTypes/static.js';
6
+ import { CoList } from './contentTypes/coList.js';
7
7
 
8
8
  export type CoValueID<T extends ContentType> = RawCoValueID & {
9
9
  readonly __type: T;
@@ -1,10 +1,10 @@
1
- import { JsonObject, JsonValue } from "../jsonValue";
2
- import { CoValueID } from "../contentType";
3
- import { CoValue } from "../coValue";
1
+ import { JsonObject, JsonValue } from '../jsonValue.js';
2
+ import { CoValueID } from '../contentType.js';
3
+ import { CoValue } from '../coValue.js';
4
4
 
5
5
  export class CoList<T extends JsonValue, Meta extends JsonValue> {
6
6
  id: CoValueID<CoList<T, Meta>>;
7
- type: "colist" = "colist";
7
+ type = "colist" as const;
8
8
  coValue: CoValue;
9
9
 
10
10
  constructor(coValue: CoValue) {
@@ -1,7 +1,7 @@
1
- import { JsonObject, JsonValue } from "../jsonValue";
2
- import { TransactionID } from "../ids";
3
- import { CoValueID } from "../contentType";
4
- import { CoValue } from "../coValue";
1
+ import { JsonObject, JsonValue } from '../jsonValue.js';
2
+ import { TransactionID } from '../ids.js';
3
+ import { CoValueID } from '../contentType.js';
4
+ import { CoValue } from '../coValue.js';
5
5
 
6
6
  type MapOp<K extends string, V extends JsonValue> = {
7
7
  txID: TransactionID;
@@ -31,7 +31,7 @@ export class CoMap<
31
31
  > {
32
32
  id: CoValueID<CoMap<MM, Meta>>;
33
33
  coValue: CoValue;
34
- type: "comap" = "comap";
34
+ type = "comap" as const;
35
35
  ops: {
36
36
  [KK in K]?: MapOp<K, M[KK]>[];
37
37
  };
@@ -61,7 +61,7 @@ export class CoMap<
61
61
  txID,
62
62
  madeAt,
63
63
  changeIdx,
64
- ...(change as any),
64
+ ...(change as MapOpPayload<K, M[K]>),
65
65
  });
66
66
  }
67
67
  }
@@ -1,10 +1,10 @@
1
- import { JsonObject, JsonValue } from "../jsonValue";
2
- import { CoValueID } from "../contentType";
3
- import { CoValue } from "../coValue";
1
+ import { JsonObject, JsonValue } from '../jsonValue.js';
2
+ import { CoValueID } from '../contentType.js';
3
+ import { CoValue } from '../coValue.js';
4
4
 
5
5
  export class CoStream<T extends JsonValue, Meta extends JsonValue> {
6
6
  id: CoValueID<CoStream<T, Meta>>;
7
- type: "costream" = "costream";
7
+ type = "costream" as const;
8
8
  coValue: CoValue;
9
9
 
10
10
  constructor(coValue: CoValue) {
@@ -1,10 +1,10 @@
1
- import { JsonObject, JsonValue } from "../jsonValue";
2
- import { CoValueID } from "../contentType";
3
- import { CoValue } from "../coValue";
1
+ import { JsonObject, JsonValue } from '../jsonValue.js';
2
+ import { CoValueID } from '../contentType.js';
3
+ import { CoValue } from '../coValue.js';
4
4
 
5
5
  export class Static<T extends JsonValue> {
6
6
  id: CoValueID<Static<T>>;
7
- type: "static" = "static";
7
+ type = "static" as const;
8
8
  coValue: CoValue;
9
9
 
10
10
  constructor(coValue: CoValue) {
@@ -16,7 +16,7 @@ export class Static<T extends JsonValue> {
16
16
  throw new Error("Method not implemented.");
17
17
  }
18
18
 
19
- subscribe(listener: (coMap: Static<T>) => void): () => void {
19
+ subscribe(_listener: (coMap: Static<T>) => void): () => void {
20
20
  throw new Error("Method not implemented.");
21
21
  }
22
22
  }
@@ -14,7 +14,7 @@ import {
14
14
  decryptForTransaction,
15
15
  sealKeySecret,
16
16
  unsealKeySecret,
17
- } from "./crypto";
17
+ } from './crypto.js';
18
18
  import { base58, base64url } from "@scure/base";
19
19
  import { x25519 } from "@noble/curves/ed25519";
20
20
  import { xsalsa20_poly1305 } from "@noble/ciphers/salsa";
package/src/crypto.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  import { ed25519, x25519 } from "@noble/curves/ed25519";
2
2
  import { xsalsa20_poly1305, xsalsa20 } from "@noble/ciphers/salsa";
3
- import { JsonValue } from "./jsonValue";
3
+ import { JsonValue } from './jsonValue.js';
4
4
  import { base58, base64url } from "@scure/base";
5
5
  import stableStringify from "fast-json-stable-stringify";
6
6
  import { blake3 } from "@noble/hashes/blake3";
7
7
  import { randomBytes } from "@noble/ciphers/webcrypto/utils";
8
- import { RawCoValueID, TransactionID } from "./ids";
8
+ import { RawCoValueID, TransactionID } from './ids.js';
9
9
 
10
10
  export type SignatorySecret = `signatorySecret_z${string}`;
11
11
  export type SignatoryID = `signatory_z${string}`;
package/src/index.ts CHANGED
@@ -6,15 +6,15 @@ import {
6
6
  getAgentID,
7
7
  newRandomAgentCredential,
8
8
  newRandomSessionID,
9
- } from "./coValue";
10
- import { LocalNode } from "./node";
11
- import { CoMap } from "./contentTypes/coMap";
9
+ } from './coValue.js';
10
+ import { LocalNode } from './node.js';
11
+ import { CoMap } from './contentTypes/coMap.js';
12
12
 
13
- import type { AgentCredential } from "./coValue";
14
- import type { AgentID, SessionID } from "./ids";
15
- import type { CoValueID, ContentType } from "./contentType";
16
- import type { JsonValue } from "./jsonValue";
17
- import type { SyncMessage } from "./sync";
13
+ import type { AgentCredential } from './coValue.js';
14
+ import type { AgentID, SessionID } from './ids.js';
15
+ import type { CoValueID, ContentType } from './contentType.js';
16
+ import type { JsonValue } from './jsonValue.js';
17
+ import type { SyncMessage } from './sync.js';
18
18
 
19
19
  type Value = JsonValue | ContentType;
20
20
 
package/src/jsonValue.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { CoValueID, ContentType } from "./contentType";
1
+ import { CoValueID, ContentType } from './contentType.js';
2
2
 
3
3
  export type JsonAtom = string | number | boolean | null;
4
4
  export type JsonValue = JsonAtom | JsonArray | JsonObject | CoValueID<ContentType>;
package/src/node.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { createdNowUnique, newRandomKeySecret, seal } from "./crypto";
1
+ import { createdNowUnique, newRandomKeySecret, seal } from './crypto.js';
2
2
  import {
3
3
  CoValue,
4
4
  AgentCredential,
@@ -7,13 +7,12 @@ import {
7
7
  getAgentID,
8
8
  getAgentCoValueHeader,
9
9
  CoValueHeader,
10
- agentIDfromSessionID,
11
10
  newRandomAgentCredential,
12
- } from "./coValue";
13
- import { Team, expectTeamContent } from "./permissions";
14
- import { SyncManager } from "./sync";
15
- import { AgentID, RawCoValueID, SessionID } from "./ids";
16
- import { CoValueID, ContentType } from ".";
11
+ } from './coValue.js';
12
+ import { Team, expectTeamContent } from './permissions.js';
13
+ import { SyncManager } from './sync.js';
14
+ import { AgentID, RawCoValueID, SessionID } from './ids.js';
15
+ import { CoValueID, ContentType } from './contentType.js';
17
16
 
18
17
  export class LocalNode {
19
18
  coValues: { [key: RawCoValueID]: CoValueState } = {};
@@ -3,17 +3,17 @@ import {
3
3
  getAgentID,
4
4
  newRandomAgentCredential,
5
5
  newRandomSessionID,
6
- } from "./coValue";
7
- import { LocalNode } from "./node";
8
- import { expectMap } from "./contentType";
9
- import { expectTeamContent } from "./permissions";
6
+ } from './coValue.js';
7
+ import { LocalNode } from './node.js';
8
+ import { expectMap } from './contentType.js';
9
+ import { expectTeamContent } from './permissions.js';
10
10
  import {
11
11
  createdNowUnique,
12
12
  getRecipientID,
13
13
  newRandomKeySecret,
14
14
  seal,
15
15
  sealKeySecret,
16
- } from "./crypto";
16
+ } from './crypto.js';
17
17
 
18
18
  function teamWithTwoAdmins() {
19
19
  const { team, admin, adminID, node } = newTeam();
@@ -1,6 +1,6 @@
1
- import { ContentType } from "./contentType";
2
- import { CoMap, MapOpPayload } from "./contentTypes/coMap";
3
- import { JsonValue } from "./jsonValue";
1
+ import { ContentType } from './contentType.js';
2
+ import { CoMap, MapOpPayload } from './contentTypes/coMap.js';
3
+ import { JsonValue } from './jsonValue.js';
4
4
  import {
5
5
  Encrypted,
6
6
  KeyID,
@@ -12,16 +12,16 @@ import {
12
12
  newRandomKeySecret,
13
13
  seal,
14
14
  sealKeySecret,
15
- } from "./crypto";
15
+ } from './crypto.js';
16
16
  import {
17
17
  AgentCredential,
18
18
  CoValue,
19
19
  Transaction,
20
20
  TrustingTransaction,
21
21
  agentIDfromSessionID,
22
- } from "./coValue";
23
- import { LocalNode } from ".";
24
- import { AgentID, RawCoValueID, SessionID, TransactionID } from "./ids";
22
+ } from './coValue.js';
23
+ import { LocalNode } from "./node.js";
24
+ import { AgentID, RawCoValueID, SessionID, TransactionID } from './ids.js';
25
25
 
26
26
  export type PermissionsDef =
27
27
  | { type: "team"; initialAdmin: AgentID; parentTeams?: RawCoValueID[] }
package/src/sync.test.ts CHANGED
@@ -3,18 +3,18 @@ import {
3
3
  getAgentID,
4
4
  newRandomAgentCredential,
5
5
  newRandomSessionID,
6
- } from "./coValue";
7
- import { LocalNode } from "./node";
8
- import { Peer, PeerID, SyncMessage } from "./sync";
9
- import { expectMap } from "./contentType";
10
- import { MapOpPayload } from "./contentTypes/coMap";
11
- import { Team } from "./permissions";
6
+ } from './coValue.js';
7
+ import { LocalNode } from './node.js';
8
+ import { Peer, PeerID, SyncMessage } from './sync.js';
9
+ import { expectMap } from './contentType.js';
10
+ import { MapOpPayload } from './contentTypes/coMap.js';
11
+ import { Team } from './permissions.js';
12
12
  import {
13
13
  ReadableStream,
14
14
  WritableStream,
15
15
  TransformStream,
16
16
  } from "isomorphic-streams";
17
- import { AgentID } from "./ids";
17
+ import { AgentID } from './ids.js';
18
18
 
19
19
  test(
20
20
  "Node replies with initial tx and header to empty subscribe",
package/src/sync.ts CHANGED
@@ -1,10 +1,10 @@
1
- import { Hash, Signature } from "./crypto";
2
- import { CoValueHeader, Transaction } from "./coValue";
3
- import { CoValue } from "./coValue";
4
- import { LocalNode } from "./node";
5
- import { newLoadingState } from "./node";
1
+ import { Hash, Signature } from './crypto.js';
2
+ import { CoValueHeader, Transaction } from './coValue.js';
3
+ import { CoValue } from './coValue.js';
4
+ import { LocalNode } from './node.js';
5
+ import { newLoadingState } from './node.js';
6
6
  import { ReadableStream, WritableStream, WritableStreamDefaultWriter } from "isomorphic-streams";
7
- import { RawCoValueID, SessionID } from "./ids";
7
+ import { RawCoValueID, SessionID } from './ids.js';
8
8
 
9
9
  export type CoValueKnownState = {
10
10
  coValueID: RawCoValueID;
package/tsconfig.json CHANGED
@@ -2,18 +2,12 @@
2
2
  "compilerOptions": {
3
3
  "lib": ["ESNext"],
4
4
  "module": "esnext",
5
- "target": "esnext",
5
+ "target": "ES2020",
6
6
  "moduleResolution": "bundler",
7
7
  "moduleDetection": "force",
8
- "allowImportingTsExtensions": true,
9
8
  "strict": true,
10
- "downlevelIteration": true,
11
9
  "skipLibCheck": true,
12
- "jsx": "preserve",
13
- "allowSyntheticDefaultImports": true,
14
10
  "forceConsistentCasingInFileNames": true,
15
- "allowJs": true,
16
- "noEmit": true,
17
11
  "noUncheckedIndexedAccess": true,
18
12
  "esModuleInterop": true,
19
13
  },