keri 0.0.7 → 0.0.8-dev.3be59ff

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/dist/cli/main.js CHANGED
@@ -1,10 +1,11 @@
1
1
  #!/usr/bin/env -S node --no-warnings
2
2
  import { program } from "commander";
3
+ import process from "node:process";
3
4
  import { Controller } from "../controller.js";
4
5
  import { SqliteStorage } from "../db/storage-sqlite.js";
5
6
  import { KeyManager } from "../keystore/key-manager.js";
6
7
  import { keri } from "../events/events.js";
7
- import { PassphraseEncrypter } from "../keystore/encrypt.js";
8
+ import { Message } from "cesr";
8
9
  const storage = new SqliteStorage({ filename: ".keri/db.sqlite" });
9
10
  storage.init();
10
11
  function getStringArray(options, key) {
@@ -41,19 +42,18 @@ function getString(options, key) {
41
42
  program.command("resolve <oobi>").action(async (oobi) => {
42
43
  const controller = new Controller({
43
44
  storage,
44
- keyManager: new KeyManager({ storage, encrypter: new PassphraseEncrypter("") }),
45
+ keyManager: new KeyManager({ storage }),
45
46
  });
46
47
  await controller.resolve(oobi);
47
48
  });
48
49
  program
49
50
  .command("incept")
50
- .requiredOption("--passcode <passcode>")
51
+ .option("--passcode <passcode>")
51
52
  .option("--wit <wit...>")
52
53
  .action(async (options) => {
53
- const passcode = getString(options, "passcode");
54
+ const passcode = getOptionalString(options, "passcode");
54
55
  const wits = getStringArray(options, "wit");
55
- const encrypter = new PassphraseEncrypter(passcode);
56
- const keystore = new KeyManager({ encrypter, storage });
56
+ const keystore = new KeyManager({ storage, passphrase: passcode });
57
57
  const controller = new Controller({ storage, keyManager: keystore });
58
58
  const event = await controller.createIdentifier({ wits });
59
59
  console.log(event.i);
@@ -65,10 +65,10 @@ program
65
65
  .requiredOption("--route <route>")
66
66
  .requiredOption("--topic <topic>")
67
67
  .requiredOption("--receiver <receiver aid>")
68
- .requiredOption("--passcode <passcode>")
68
+ .option("--passcode <passcode>")
69
69
  .requiredOption("--data <data>")
70
70
  .action(async (options) => {
71
- const passcode = getString(options, "passcode");
71
+ const passcode = getOptionalString(options, "passcode");
72
72
  const sender = getString(options, "sender");
73
73
  const receiver = getString(options, "receiver");
74
74
  const route = getString(options, "route");
@@ -76,34 +76,34 @@ program
76
76
  const data = JSON.parse(getString(options, "data"));
77
77
  const keystore = new KeyManager({
78
78
  storage,
79
- encrypter: new PassphraseEncrypter(passcode),
79
+ passphrase: passcode,
80
80
  });
81
81
  const controller = new Controller({ storage, keyManager: keystore });
82
- const client = await controller.getClient(receiver);
83
- await controller.forward(client, {
82
+ const message = new Message(keri.exchange({
83
+ i: sender,
84
+ r: route,
85
+ q: {},
86
+ a: { i: sender, ...data },
87
+ e: {},
88
+ }));
89
+ await controller.forward({
84
90
  sender: await controller.state(sender),
85
91
  topic,
86
92
  recipient: receiver,
87
- event: keri.exchange({
88
- i: sender,
89
- r: route,
90
- q: {},
91
- a: { i: sender, ...data },
92
- e: {},
93
- }),
93
+ message,
94
94
  });
95
95
  });
96
96
  program
97
97
  .command("create-registry")
98
98
  .description("Creates a new credential registry")
99
99
  .requiredOption("--owner <owner aid>")
100
- .requiredOption("--passcode <passcode>")
100
+ .option("--passcode <passcode>")
101
101
  .action(async (options) => {
102
- const passcode = getString(options, "passcode");
102
+ const passcode = getOptionalString(options, "passcode");
103
103
  const owner = getString(options, "owner");
104
104
  const keystore = new KeyManager({
105
105
  storage,
106
- encrypter: new PassphraseEncrypter(passcode),
106
+ passphrase: passcode,
107
107
  });
108
108
  const controller = new Controller({ storage, keyManager: keystore });
109
109
  const registry = await controller.createRegistry({ owner });
@@ -119,9 +119,9 @@ program
119
119
  .requiredOption("--rules <rules>")
120
120
  .option("--salt <salt>")
121
121
  .option("--edges <edges>")
122
- .requiredOption("--passcode <passcode>")
122
+ .option("--passcode <passcode>")
123
123
  .action(async (options) => {
124
- const passcode = getString(options, "passcode");
124
+ const passcode = getOptionalString(options, "passcode");
125
125
  const registryId = getString(options, "registry");
126
126
  const receiver = getString(options, "receiver");
127
127
  const schemaId = getString(options, "schema");
@@ -131,7 +131,7 @@ program
131
131
  const edges = JSON.parse(getOptionalString(options, "edges") ?? "null");
132
132
  const keystore = new KeyManager({
133
133
  storage,
134
- encrypter: new PassphraseEncrypter(passcode),
134
+ passphrase: passcode,
135
135
  });
136
136
  const controller = new Controller({ storage, keyManager: keystore });
137
137
  const acdc = await controller.createCredential({
@@ -143,24 +143,28 @@ program
143
143
  rules: rules,
144
144
  edges: edges || undefined,
145
145
  });
146
+ const s = await controller.store.get(acdc.d);
147
+ if (!s) {
148
+ throw new Error("Failed to store created credential");
149
+ }
146
150
  console.log(acdc.d);
147
151
  });
148
152
  program
149
153
  .command("ipex-grant")
150
154
  .requiredOption("--said <aid>")
151
- .requiredOption("--passcode <passcode>")
155
+ .option("--passcode <passcode>")
152
156
  .action(async (options) => {
153
- const passcode = getString(options, "passcode");
157
+ const passcode = getOptionalString(options, "passcode");
154
158
  const said = getString(options, "said");
155
159
  const keystore = new KeyManager({
156
160
  storage,
157
- encrypter: new PassphraseEncrypter(passcode),
161
+ passphrase: passcode,
158
162
  });
159
163
  const controller = new Controller({
160
164
  storage,
161
165
  keyManager: keystore,
162
166
  });
163
- const acdc = (await controller.store.get(said))?.event;
167
+ const acdc = (await controller.store.get(said))?.body;
164
168
  if (!acdc) {
165
169
  throw new Error(`No ACDC found for said ${said}`);
166
170
  }
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"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"}
package/dist/client.d.ts CHANGED
@@ -1,9 +1,6 @@
1
- import { type KeyEvent, type ReceiptEvent } from "./events/events.ts";
2
- import { type KeyEventMessage, type LocationRecord } from "./events/event-store.ts";
3
- export interface Message {
4
- event: KeyEvent;
5
- attachment: string;
6
- }
1
+ import { type ReceiptEvent } from "./events/events.ts";
2
+ import { type LocationRecord } from "./events/event-store.ts";
3
+ import { type Message } from "cesr";
7
4
  export interface SendArgs {
8
5
  messages: Message[];
9
6
  }
@@ -15,7 +12,6 @@ export declare class Client {
15
12
  #private;
16
13
  role: string;
17
14
  constructor(options: ClientOptions);
18
- getReceipt(message: Message): Promise<KeyEventMessage<ReceiptEvent>>;
19
- sendMessage(message: Message): Promise<void>;
15
+ getReceipt(message: Message): Promise<Message<ReceiptEvent>>;
16
+ sendMessage(message: Message, signal?: AbortSignal): Promise<Message[]>;
20
17
  }
21
- export declare function parseKeyEvents(input: ReadableStream<Uint8Array>): AsyncIterableIterator<KeyEventMessage>;
package/dist/client.js CHANGED
@@ -1,4 +1,6 @@
1
- import { cesr, CountCode_10, parseMessages } from "cesr/__unstable__";
1
+ import {} from "./events/events.js";
2
+ import {} from "./events/event-store.js";
3
+ import { parse } from "cesr";
2
4
  export class Client {
3
5
  #location;
4
6
  role;
@@ -13,10 +15,10 @@ export class Client {
13
15
  }
14
16
  const response = await fetch(url, {
15
17
  method: "POST",
16
- body: JSON.stringify(message.event),
18
+ body: JSON.stringify(message.body),
17
19
  headers: {
18
20
  "Content-Type": "application/cesr+json",
19
- "CESR-ATTACHMENT": message.attachment,
21
+ "CESR-ATTACHMENT": message.attachments.text(),
20
22
  },
21
23
  });
22
24
  if (!response.ok) {
@@ -25,64 +27,59 @@ export class Client {
25
27
  if (!response.body) {
26
28
  throw new Error(`Failed to send event: ${response.status} ${response.statusText}`);
27
29
  }
28
- for await (const event of parseKeyEvents(response.body)) {
29
- if (event.event.t === "rct" && event.event.d === message.event.d) {
30
- return event;
30
+ for await (const incoming of parse(response.body)) {
31
+ if (incoming.body.t === "rct" && incoming.body.d === message.body.d) {
32
+ return incoming;
31
33
  }
32
34
  }
33
35
  throw new Error(`Failed to get receipt for event: ${response.status} ${response.statusText}`);
34
36
  }
35
- async sendMessage(message) {
37
+ async sendMessage(message, signal) {
36
38
  const url = new URL("/", this.#location.url);
39
+ const body = JSON.stringify(message.body);
40
+ const headers = {
41
+ "Content-Type": "application/cesr+json",
42
+ "CESR-ATTACHMENT": message.attachments.text(),
43
+ "CESR-DESTINATION": this.#location.eid,
44
+ };
37
45
  const response = await fetch(url, {
38
46
  method: "POST",
39
- body: JSON.stringify(message.event),
40
- headers: {
41
- "Content-Type": "application/cesr+json",
42
- "CESR-ATTACHMENT": message.attachment,
43
- "CESR-DESTINATION": this.#location.eid,
44
- },
47
+ body,
48
+ headers,
49
+ signal,
45
50
  });
46
51
  if (!response.ok) {
47
52
  throw new Error(`Failed to send event: ${response.status} ${response.statusText}`);
48
53
  }
49
- }
50
- }
51
- export async function* parseKeyEvents(input) {
52
- for await (const message of parseMessages(input)) {
53
- const signatures = [];
54
- const receipts = [];
55
- let group = null;
56
- for (const attachment of message.attachments) {
57
- if (attachment.startsWith("-")) {
58
- group = cesr.decodeCounter(attachment);
59
- }
60
- else if (group) {
61
- switch (group.code) {
62
- case CountCode_10.ControllerIdxSigs:
63
- signatures.push(attachment);
64
- break;
65
- case CountCode_10.NonTransReceiptCouples:
66
- receipts.push(attachment);
67
- break;
54
+ if (!response.body) {
55
+ return [];
56
+ }
57
+ const contentType = response.headers.get("Content-Type");
58
+ if (!contentType) {
59
+ return [];
60
+ }
61
+ if (contentType === "text/event-stream") {
62
+ const reader = response.body.getReader();
63
+ while (true) {
64
+ const { done, value } = await reader.read();
65
+ if (done) {
66
+ break;
67
+ }
68
+ const str = new TextDecoder().decode(value);
69
+ for (const line of str.split("\n")) {
70
+ if (line.startsWith("data: ")) {
71
+ const data = line.slice(6);
72
+ const message = await Array.fromAsync(parse(data));
73
+ reader.cancel("Got message, cancelling reader");
74
+ return message;
75
+ }
68
76
  }
69
77
  }
70
78
  }
71
- yield {
72
- event: message.payload,
73
- receipts: decouple(receipts).map(([backer, signature]) => ({ backer, signature })),
74
- signatures,
75
- timestamp: new Date(),
76
- };
77
- }
78
- }
79
- function decouple(arr) {
80
- const result = [];
81
- for (let i = 0; i < arr.length; i++) {
82
- if (i % 2 === 0) {
83
- result.push([arr[i], arr[i + 1]]);
79
+ if (contentType?.startsWith("application/json")) {
80
+ return [];
84
81
  }
82
+ return await Array.fromAsync(parse(response.body));
85
83
  }
86
- return result;
87
84
  }
88
85
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,YAAY,EAAgB,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAkBpF,MAAM,OAAO,MAAM;IACjB,SAAS,CAAiB;IAC1B,IAAI,CAAS;IAEb,YAAY,OAAsB;QAChC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAgB;QAC/B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC1D,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;YACnC,OAAO,EAAE;gBACP,cAAc,EAAE,uBAAuB;gBACvC,iBAAiB,EAAE,OAAO,CAAC,UAAU;aACtC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACrF,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACrF,CAAC;QAED,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACxD,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBACjE,OAAO,KAAsC,CAAC;YAChD,CAAC;QACH,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,oCAAoC,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IAChG,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAgB;QAChC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAE7C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;YACnC,OAAO,EAAE;gBACP,cAAc,EAAE,uBAAuB;gBACvC,iBAAiB,EAAE,OAAO,CAAC,UAAU;gBACrC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG;aACvC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;CACF;AAED,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,cAAc,CAAC,KAAiC;IACrE,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAa,EAAE,CAAC;QAE9B,IAAI,KAAK,GAAmB,IAAI,CAAC;QAEjC,KAAK,MAAM,UAAU,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YAC7C,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC/B,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YACzC,CAAC;iBAAM,IAAI,KAAK,EAAE,CAAC;gBACjB,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;oBACnB,KAAK,YAAY,CAAC,iBAAiB;wBACjC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAC5B,MAAM;oBACR,KAAK,YAAY,CAAC,sBAAsB;wBACtC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;wBAC1B,MAAM;gBACV,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM;YACJ,KAAK,EAAE,OAAO,CAAC,OAAmB;YAClC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;YAClF,UAAU;YACV,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAI,GAAQ;IAC3B,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
- import { ControllerEventStore, type KeyValueStorage, type KeyEventMessage, type KeyState, type LocationRecord } from "./events/event-store.ts";
2
- import type { Key, KeyManager } from "./keystore/key-manager.ts";
1
+ import { ControllerEventStore, type KeyValueStorage, type KeyState, type LocationRecord } from "./events/event-store.ts";
2
+ import { type KeyManager } from "./keystore/key-manager.ts";
3
3
  import { type KeyEvent, type InteractEvent, type CredentialEvent, type RegistryInceptEvent } from "./events/events.ts";
4
4
  import { Client } from "./client.ts";
5
+ import { Message } from "cesr";
5
6
  export interface ControllerDeps {
6
7
  keyManager: KeyManager;
7
8
  storage: KeyValueStorage;
@@ -12,15 +13,15 @@ export interface IpexGrantArgs {
12
13
  timestamp?: string;
13
14
  }
14
15
  export interface ForwardArgs {
15
- event: KeyEvent;
16
+ message: Message<KeyEvent>;
16
17
  sender: KeyState;
17
18
  topic: string;
18
19
  recipient: string;
19
- attachment?: string;
20
20
  timestamp?: string;
21
21
  }
22
22
  export interface InceptArgs {
23
- keys?: Key[];
23
+ keys?: string[];
24
+ next?: string[];
24
25
  wits?: string[];
25
26
  toad?: number;
26
27
  }
@@ -47,17 +48,18 @@ export declare class Controller {
47
48
  get store(): ControllerEventStore;
48
49
  constructor(deps: ControllerDeps);
49
50
  createIdentifier(args?: InceptArgs): Promise<KeyState>;
51
+ addMailbox(aid: string, eid: string): Promise<void>;
50
52
  interact(args: InteractArgs): Promise<InteractEvent>;
51
53
  createRegistry(args: CreateRegistryArgs): Promise<RegistryInceptEvent>;
52
54
  createCredential(args: CreateCredentialArgs): Promise<CredentialEvent>;
53
55
  resolve(oobi: string): Promise<void>;
54
56
  getClient(cid: string): Promise<Client>;
55
57
  getLocation(aid: string): Promise<LocationRecord>;
56
- submit(event: KeyEvent, signatures: string[]): Promise<void>;
58
+ private submit;
57
59
  state(said: string): Promise<KeyState>;
58
- listEvents(id: string): Promise<KeyEventMessage[]>;
60
+ listEvents(id: string): Promise<Message<KeyEvent>[]>;
59
61
  sendCredentialArficats(credential: CredentialEvent, recipient: string): Promise<void>;
60
62
  grant(args: IpexGrantArgs): Promise<void>;
61
- forward(client: Client, args: ForwardArgs): Promise<void>;
63
+ forward(args: ForwardArgs): Promise<void>;
62
64
  sign(event: Record<string, unknown>, keys: string[]): Promise<string[]>;
63
65
  }