@pomade/core 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.
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,EAYN,MAAM,eAAe,CAAA;AAKtB,OAAO,KAAK,EAAC,WAAW,EAAE,YAAY,EAAC,MAAM,gBAAgB,CAAA;AAE7D,OAAO,KAAK,EAAC,YAAY,EAAc,MAAM,iBAAiB,CAAA;AAG9D,OAAO,EAAC,GAAG,EAAE,SAAS,EAAC,MAAM,UAAU,CAAA;AACvC,OAAO,EAsBL,YAAY,EACZ,WAAW,EACX,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,UAAU,EACX,MAAM,cAAc,CAAA;AAErB,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,EAAE,CAAA;CAChB,CAAA;AAED,qBAAa,MAAM;IACjB,GAAG,EAAE,GAAG,CAAA;IACR,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;gBAEN,OAAO,EAAE,aAAa;IAQlC,IAAI;IAIJ,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,SAAS,CAAC,YAAY,GAAG,eAAe,CAAC,EACtE,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GACnB;QACD,EAAE,EAAE,OAAO,CAAA;QACX,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,CAAA;QAC7B,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;QACpB,YAAY,EAAE,MAAM,CAAA;KACrB;IAaD,MAAM,CAAC,cAAc;WAWR,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,UAAO;;;;;;;;;IAyDjF,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;;;;WAqBtC,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,WAA0B;;;WAmB/D,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;YA7HxD,OAAO;iBACF,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE;;sBAEf,MAAM;;WAoJT,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE;YAvJ7D,OAAO;iBACF,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE;;sBAEf,MAAM;;WA8KT,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;;;;;WA2BjE,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;YA5M1D,OAAO;iBACF,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE;;sBAEf,MAAM;;WAmOT,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE;YAtO/D,OAAO;iBACF,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE;;sBAEf,MAAM;;WA6PT,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;;;;;IAyB3E,IAAI,CAAC,YAAY,EAAE,YAAY;;;eAgCuB,WAAW;;;;;;IAOjE,kBAAkB,CAAC,OAAO,EAAE,MAAM;IA+BlC,YAAY;;;;IAqBZ,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;;;;CAoBpD"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAYN,MAAM,eAAe,CAAA;AAKtB,OAAO,KAAK,EAAC,WAAW,EAAE,YAAY,EAAC,MAAM,gBAAgB,CAAA;AAE7D,OAAO,KAAK,EAAC,YAAY,EAAc,MAAM,iBAAiB,CAAA;AAG9D,OAAO,EAAC,GAAG,EAAE,SAAS,EAAC,MAAM,UAAU,CAAA;AACvC,OAAO,EAsBL,YAAY,EACZ,WAAW,EACX,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,UAAU,EACX,MAAM,cAAc,CAAA;AAErB,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,EAAE,CAAA;CAChB,CAAA;AAED,qBAAa,MAAM;IACjB,GAAG,EAAE,GAAG,CAAA;IACR,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,KAAK,EAAE,YAAY,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;gBAEN,OAAO,EAAE,aAAa;IAQlC,IAAI;IAIJ,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,SAAS,CAAC,YAAY,GAAG,eAAe,CAAC,EACtE,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GACnB;QACD,EAAE,EAAE,OAAO,CAAA;QACX,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,CAAA;QAC7B,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;QACpB,YAAY,EAAE,MAAM,CAAA;KACrB;IAyCD,MAAM,CAAC,cAAc;WAWR,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,UAAO;;;;;;;;;IAyDjF,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;;;;WAqBtC,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,WAA0B;;;WAmB/D,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;YAzJxD,OAAO;iBACF,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE;;sBAEf,MAAM;;WAgLT,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE;YAnL7D,OAAO;iBACF,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE;;sBAEf,MAAM;;WA0MT,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;;;;;WA2BjE,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;YAxO1D,OAAO;iBACF,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE;;sBAEf,MAAM;;WA+PT,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE;YAlQ/D,OAAO;iBACF,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE;;sBAEf,MAAM;;WAyRT,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;;;;;IAyB3E,IAAI,CAAC,YAAY,EAAE,YAAY;;;eAgCuB,WAAW;;;;;;IAOjE,kBAAkB,CAAC,OAAO,EAAE,MAAM;IA+BlC,YAAY;;;;IAqBZ,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;;;;CAoBpD"}
package/dist/client.js CHANGED
@@ -1,4 +1,4 @@
1
- import { nth, tryCatch, groupBy, removeUndefined, shuffle, sortBy, first, last, isDefined, identity, sample, textEncoder, } from "@welshman/lib";
1
+ import { tryCatch, groupBy, removeUndefined, shuffle, sortBy, first, last, isDefined, identity, sample, textEncoder, } from "@welshman/lib";
2
2
  import { extract } from "@noble/hashes/hkdf.js";
3
3
  import { sha256 } from "@noble/hashes/sha2.js";
4
4
  import { hexToBytes, bytesToHex } from "@noble/hashes/utils.js";
@@ -25,9 +25,31 @@ export class Client {
25
25
  this.rpc.stop();
26
26
  }
27
27
  static _buildOptions(clientSecret, messages) {
28
- const items = messages.flatMap(m => m?.payload.items?.map(item => [item.client, m.event.pubkey, item.idx]) || []);
29
- const itemsByClient = Array.from(groupBy(([client, peer, idx]) => client, items));
30
- const options = itemsByClient.map(([client, items]) => [client, sortBy(nth(2), items).map(nth(1))]);
28
+ // Extract all items with their metadata
29
+ const items = messages.flatMap(m => m?.payload.items?.map(item => ({
30
+ client: item.client,
31
+ peer: m.event.pubkey,
32
+ idx: item.idx,
33
+ total: item.total,
34
+ })) || []);
35
+ // Group by client
36
+ const itemsByClient = Array.from(groupBy(item => item.client, items));
37
+ // Build options, filtering out incomplete sets
38
+ const options = [];
39
+ for (const [client, clientItems] of itemsByClient) {
40
+ // Get the expected total (should be the same for all items of this client)
41
+ const total = clientItems[0]?.total;
42
+ if (!total || clientItems.length < total)
43
+ continue;
44
+ // Check that we have all indices from 1 to total
45
+ const idxSet = new Set(clientItems.map(item => item.idx));
46
+ const hasAllIndices = Array.from({ length: total }, (_, i) => i + 1).every(idx => idxSet.has(idx));
47
+ if (!hasAllIndices)
48
+ continue;
49
+ // Sort by idx and map to peers
50
+ const peers = sortBy(item => item.idx, clientItems).map(item => item.peer);
51
+ options.push([client, peers]);
52
+ }
31
53
  const ok = messages.some(m => m?.payload.ok) && options.length > 0;
32
54
  return { ok, options, messages, clientSecret };
33
55
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EACR,OAAO,EACP,eAAe,EACf,OAAO,EACP,MAAM,EACN,KAAK,EACL,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,MAAM,EACN,WAAW,GACZ,MAAM,eAAe,CAAA;AACtB,OAAO,EAAC,OAAO,EAAC,MAAM,uBAAuB,CAAA;AAC7C,OAAO,EAAC,MAAM,EAAC,MAAM,uBAAuB,CAAA;AAC5C,OAAO,EAAC,UAAU,EAAE,UAAU,EAAC,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAC,MAAM,gBAAgB,CAAA;AAExE,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAA;AAEnC,OAAO,EAAC,MAAM,EAAC,MAAM,aAAa,CAAA;AAClC,OAAO,EAAC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAC,MAAM,WAAW,CAAA;AAC3E,OAAO,EAAC,GAAG,EAAY,MAAM,UAAU,CAAA;AACvC,OAAO,EACL,YAAY,EACZ,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,YAAY,EACZ,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,eAAe,GAUhB,MAAM,cAAc,CAAA;AAQrB,MAAM,OAAO,MAAM;IACjB,GAAG,CAAK;IACR,KAAK,CAAU;IACf,KAAK,CAAc;IACnB,MAAM,CAAQ;IACd,UAAU,CAAQ;IAElB,YAAY,OAAsB;QAChC,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAClC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACvC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAChD,CAAC;IAED,IAAI;QACF,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;IACjB,CAAC;IAED,MAAM,CAAC,aAAa,CAClB,YAAoB,EACpB,QAAoB;QAOpB,wCAAwC;QACxC,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAC5B,CAAC,CAAC,EAAE,CACF,CAAC,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM;YACpB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CAAC,IAAI,EAAE,CACZ,CAAA;QAED,kBAAkB;QAClB,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;QAErE,+CAA+C;QAC/C,MAAM,OAAO,GAAyB,EAAE,CAAA;QAExC,KAAK,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,aAAa,EAAE,CAAC;YAClD,2EAA2E;YAC3E,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,CAAA;YACnC,IAAI,CAAC,KAAK,IAAI,WAAW,CAAC,MAAM,GAAG,KAAK;gBAAE,SAAQ;YAElD,iDAAiD;YACjD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;YACzD,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,KAAK,EAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAC7E,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAChB,CAAA;YAED,IAAI,CAAC,aAAa;gBAAE,SAAQ;YAE5B,+BAA+B;YAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;QAC/B,CAAC;QAED,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;QAElE,OAAO,EAAC,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAC,CAAA;IAC9C,CAAC;IAED,MAAM,CAAC,cAAc;QACnB,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,6EAA6E,CAAC,CAAA;YAC1F,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAChD,CAAC;QAED,OAAO,OAAO,CAAC,aAAa,CAAA;IAC9B,CAAC;IAED,WAAW;IAEX,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAiB,EAAE,CAAS,EAAE,UAAkB,EAAE,QAAQ,GAAG,IAAI;QACrF,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,6EAA6E,CAAC,CAAA;YAC1F,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACxD,CAAC;QAED,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;QACrD,CAAC;QAED,MAAM,MAAM,GAAG,UAAU,EAAE,CAAA;QAC3B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAA;QAC3B,MAAM,EAAC,KAAK,EAAE,MAAM,EAAC,GAAG,GAAG,CAAC,mBAAmB,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAA;QAC3E,MAAM,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;QAC7D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAA;QAE9C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAC5B,OAAO,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzC,MAAM,QAAQ,GAAG,MAAM,GAAG;qBACvB,OAAO,CAAC,sBAAsB,CAAC,KAAK,EAAG,CAAC;qBACxC,IAAI,CAAC,mBAAmB,CAAC,EAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAC,CAAC,CAAC;qBACnD,OAAO,CAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;oBAC5C,IAAI,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC9B,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;4BACvB,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;wBAC3C,CAAC;wBAED,OAAO,CAAC,OAAO,CAAC,CAAA;oBAClB,CAAC;gBACH,CAAC,CAAC,CAAA;gBAEJ,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxB,OAAO,QAAQ,CAAA;gBACjB,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CACH,CAAA;QAED,GAAG,CAAC,IAAI,EAAE,CAAA;QAEV,MAAM,EAAE,GAAG,YAAY,CAAC,IAAI,KAAK,CAAC,CAAA;QAClC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,GAAG,CAAC,IAAI,CAAa,CAAA;QAE/D,OAAO;YACL,EAAE;YACF,QAAQ;YACR,aAAa,EAAE;gBACb,KAAK;gBACL,KAAK;gBACL,MAAM;aACP;SACF,CAAA;IACH,CAAC;IAED,iBAAiB;IAEjB,KAAK,CAAC,aAAa,CAAC,KAAa,EAAE,QAAgB;QACjD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE;YAC/B,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;YAExD,OAAO,IAAI,CAAC,GAAG;iBACZ,OAAO,CAAC,IAAI,CAAC;iBACb,IAAI,CAAC,iBAAiB,CAAC,EAAC,KAAK,EAAE,aAAa,EAAC,CAAC,CAAC;iBAC/C,OAAO,CAAiC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;gBAC5D,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;oBACnC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CACH,CAAA;QAED,OAAO,EAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAC,CAAA;IAC3D,CAAC;IAED,YAAY;IAEZ,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAa,EAAE,KAAK,GAAG,MAAM,CAAC,cAAc,EAAE;QAC1E,MAAM,YAAY,GAAG,UAAU,EAAE,CAAA;QACjC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAA;QAEjC,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAC3B,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE;YAC1B,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YAE/C,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAC,UAAU,EAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACtE,CAAC,CAAC,CACH,CAAA;QAED,GAAG,CAAC,IAAI,EAAE,CAAA;QAEV,OAAO,EAAC,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAC,CAAA;IAClC,CAAC;IAED,QAAQ;IAER,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAa,EAAE,QAAgB;QAC5D,MAAM,YAAY,GAAG,UAAU,EAAE,CAAA;QACjC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAA;QAEjC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,MAAM,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE;YAC5C,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YAC/C,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;YACxD,MAAM,IAAI,GAAG,EAAC,UAAU,EAAE,aAAa,EAAC,CAAA;YAExC,OAAO,GAAG;iBACP,OAAO,CAAC,IAAI,CAAC;iBACb,IAAI,CAAC,cAAc,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC;iBAC5B,OAAO,CAA0B,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;gBACrD,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC5B,OAAO,CAAC,OAAO,CAAC,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CACH,CAAA;QAED,GAAG,CAAC,IAAI,EAAE,CAAA;QAEV,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;IACnD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAa,EAAE,UAAoB;QACjE,MAAM,YAAY,GAAG,UAAU,EAAE,CAAA;QACjC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAA;QAEjC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAC,SAAS,EAAC,EAAE;YAC/B,MAAM,EAAC,IAAI,EAAE,GAAG,EAAC,GAAG,eAAe,CAAC,SAAS,CAAC,CAAA;YAC9C,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YAC/C,MAAM,IAAI,GAAG,EAAC,UAAU,EAAE,GAAG,EAAC,CAAA;YAE9B,OAAO,GAAG;iBACP,OAAO,CAAC,IAAI,CAAC;iBACb,IAAI,CAAC,cAAc,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC;iBAC5B,OAAO,CAA0B,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;gBACrD,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC5B,OAAO,CAAC,OAAO,CAAC,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CACH,CAAA;QAED,GAAG,CAAC,IAAI,EAAE,CAAA;QAEV,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;IACnD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,YAAoB,EAAE,MAAc,EAAE,KAAe;QAC5E,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAA;QAEjC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACpB,OAAO,GAAG;iBACP,OAAO,CAAC,IAAI,CAAC;iBACb,IAAI,CAAC,eAAe,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;iBAC/B,OAAO,CAAyB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;gBACpD,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC3B,OAAO,CAAC,OAAO,CAAC,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CACH,CAAA;QAED,GAAG,CAAC,IAAI,EAAE,CAAA;QAEV,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAA;QACjE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;QAC/D,MAAM,aAAa,GAAG,EAAE,CAAC,CAAC,CAAE,EAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAmB,CAAC,CAAC,CAAC,SAAS,CAAA;QAE9F,OAAO,EAAC,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAC,CAAA;IACtC,CAAC;IAED,WAAW;IAEX,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,KAAa,EAAE,QAAgB;QAC9D,MAAM,YAAY,GAAG,UAAU,EAAE,CAAA;QACjC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAA;QAEjC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,MAAM,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE;YAC5C,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YAC/C,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;YACxD,MAAM,IAAI,GAAG,EAAC,UAAU,EAAE,aAAa,EAAC,CAAA;YAExC,OAAO,GAAG;iBACP,OAAO,CAAC,IAAI,CAAC;iBACb,IAAI,CAAC,iBAAiB,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC;iBAC/B,OAAO,CAA6B,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;gBACxD,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC/B,OAAO,CAAC,OAAO,CAAC,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CACH,CAAA;QAED,GAAG,CAAC,IAAI,EAAE,CAAA;QAEV,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;IACnD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,KAAa,EAAE,UAAoB;QACnE,MAAM,YAAY,GAAG,UAAU,EAAE,CAAA;QACjC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAA;QAEjC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAC,SAAS,EAAC,EAAE;YAC/B,MAAM,EAAC,IAAI,EAAE,GAAG,EAAC,GAAG,eAAe,CAAC,SAAS,CAAC,CAAA;YAC9C,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YAC/C,MAAM,IAAI,GAAG,EAAC,UAAU,EAAE,GAAG,EAAC,CAAA;YAE9B,OAAO,GAAG;iBACP,OAAO,CAAC,IAAI,CAAC;iBACb,IAAI,CAAC,iBAAiB,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC;iBAC/B,OAAO,CAA6B,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;gBACxD,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC/B,OAAO,CAAC,OAAO,CAAC,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CACH,CAAA;QAED,GAAG,CAAC,IAAI,EAAE,CAAA;QAEV,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;IACnD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,YAAoB,EAAE,MAAc,EAAE,KAAe;QAC/E,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAA;QAEjC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACf,OAAO,GAAG;iBACP,OAAO,CAAC,IAAI,CAAC;iBACb,IAAI,CAAC,kBAAkB,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC;iBAClC,OAAO,CAA4B,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;gBACvD,IAAI,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC9B,OAAO,CAAC,OAAO,CAAC,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CACH,CAAA;QAED,GAAG,CAAC,IAAI,EAAE,CAAA;QAEV,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,KAAK,CAAA;QACjE,MAAM,MAAM,GAAG,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;QACnE,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,KAAM,EAAE,MAAM,CAAC,CAAC,CAAA;QAEzE,OAAO,EAAC,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAC,CAAA;IACxD,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,YAA0B;QACnC,2FAA2F;QAC3F,MAAM,EAAC,SAAS,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,KAAK,CAAA;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;QACjD,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QAC1D,MAAM,QAAQ,GAAG,GAAG,CAAC,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA;QAE/D,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;QAEnE,MAAM,OAAO,GAAG,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;QAE5D,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAChB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAE,CAAA;YAEjC,OAAO,IAAI,CAAC,GAAG;iBACZ,OAAO,CAAC,IAAI,CAAC;iBACb,IAAI,CAAC,eAAe,CAAC,EAAC,OAAO,EAAC,CAAC,CAAC;iBAChC,OAAO,CAAwB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;gBACnD,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC1B,OAAO,CAAC,OAAO,CAAC,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CACH,CAAA;QAED,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACvC,MAAM,GAAG,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;YACpD,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAE,CAAC,OAAO,CAAC,MAAO,CAAC,CAAA;YAClD,MAAM,GAAG,GAAG,GAAG,CAAC,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YAEzD,IAAI,GAAG,EAAE,CAAC;gBACR,OAAO,EAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAC,GAAG,KAAK,EAAE,GAAG,EAAgB,EAAC,CAAA;YACpE,CAAC;QACH,CAAC;QAED,OAAO,EAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAC,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,OAAe;QACtC,2FAA2F;QAC3F,MAAM,EAAC,SAAS,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,KAAK,CAAA;QACvC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QAE1D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACtB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAE,CAAA;YACjC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YAEtC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC,CAAA;YAEtD,OAAO,OAAO,CAAC,OAAO,CAAc,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;gBACvD,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC1B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;gBACjC,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CACH,CAAA;QAED,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,OAAO,UAAU,CACf,OAAO,CACL,MAAM,EACN,UAAU,CAAC,GAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACnD,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAC/B,CACF,CAAA;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,MAAM,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE;YAC5C,MAAM,EAAC,KAAK,EAAE,IAAI,EAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAA;YAEnF,IAAI,IAAI,EAAE,CAAC;gBACT,OAAO,IAAI,CAAC,GAAG;qBACZ,OAAO,CAAC,IAAI,CAAC;qBACb,IAAI,CAAC,eAAe,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC;qBAC7B,OAAO,CAA+B,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;oBAC1D,IAAI,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;wBACjC,OAAO,CAAC,OAAO,CAAC,CAAA;oBAClB,CAAC;gBACH,CAAC,CAAC,CAAA;YACN,CAAC;QACH,CAAC,CAAC,CACH,CAAA;QAED,OAAO,EAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAC,CAAA;IAC3D,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAc,EAAE,KAAe;QACjD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE;YAC1B,MAAM,EAAC,KAAK,EAAE,IAAI,EAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAA;YAErF,IAAI,IAAI,EAAE,CAAC;gBACT,OAAO,IAAI,CAAC,GAAG;qBACZ,OAAO,CAAC,IAAI,CAAC;qBACb,IAAI,CAAC,iBAAiB,CAAC,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC,CAAC;qBACvC,OAAO,CAAiC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;oBAC5D,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;wBACnC,OAAO,CAAC,OAAO,CAAC,CAAA;oBAClB,CAAC;gBACH,CAAC,CAAC,CAAA;YACN,CAAC;QACH,CAAC,CAAC,CACH,CAAA;QAED,OAAO,EAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAC,CAAA;IAC3D,CAAC;CACF"}
package/dist/signer.d.ts CHANGED
@@ -74,6 +74,8 @@ export declare class Signer {
74
74
  ok: Promise<boolean>;
75
75
  receive: <T>(handler: import("./rpc.js").MessageHandlerWithCallback<T>) => Promise<import("@welshman/lib").Maybe<T>>;
76
76
  } | undefined>;
77
+ _addSession(client: string, session: SignerSession): Promise<void>;
78
+ _deleteSession(client: string): Promise<void>;
77
79
  handleRegisterRequest({ payload, event }: WithEvent<RegisterRequest>): Promise<unknown>;
78
80
  handleRecoverySetup({ payload, event }: WithEvent<RecoverySetup>): Promise<unknown>;
79
81
  handleChallengeRequest({ payload, event }: WithEvent<ChallengeRequest>): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../src/signer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../src/signer.ts"],"names":[],"mappings":"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"}
package/dist/signer.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { Lib } from "@frostr/bifrost";
2
2
  import { randomBytes, bytesToHex } from "@noble/hashes/utils.js";
3
- import { now, filter, removeUndefined, append, ms, uniq, between, call, int, ago, MINUTE, HOUR, YEAR, } from "@welshman/lib";
3
+ import { now, filter, remove, removeUndefined, append, ms, uniq, between, call, int, ago, MINUTE, HOUR, YEAR, } from "@welshman/lib";
4
4
  import { getPubkey, verifyEvent, getTagValue, HTTP_AUTH } from "@welshman/util";
5
5
  import { Method, isPasswordAuth, isOTPAuth } from "./schema.js";
6
6
  import { RPC } from "./rpc.js";
@@ -125,7 +125,7 @@ export class Signer {
125
125
  }
126
126
  async _checkKeyReuse(event) {
127
127
  if (await this.sessions.get(event.pubkey)) {
128
- debug("[signer]: session key re-used", event.pubkey);
128
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: session key re-used`);
129
129
  return this.rpc.channel(event.pubkey, false).send(makeRecoveryOptions({
130
130
  ok: false,
131
131
  message: "Do not re-use session keys.",
@@ -133,7 +133,7 @@ export class Signer {
133
133
  }));
134
134
  }
135
135
  if (await this.recoveries.get(event.pubkey)) {
136
- debug("[signer]: recovery key re-used", event.pubkey);
136
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: recovery key re-used`);
137
137
  return this.rpc.channel(event.pubkey, false).send(makeRecoveryOptions({
138
138
  ok: false,
139
139
  message: "Do not re-use recovery keys.",
@@ -141,7 +141,7 @@ export class Signer {
141
141
  }));
142
142
  }
143
143
  if (await this.logins.get(event.pubkey)) {
144
- debug("[signer]: login key re-used", event.pubkey);
144
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: login key re-used`);
145
145
  return this.rpc.channel(event.pubkey, false).send(makeRecoveryOptions({
146
146
  ok: false,
147
147
  message: "Do not re-use login keys.",
@@ -149,9 +149,38 @@ export class Signer {
149
149
  }));
150
150
  }
151
151
  }
152
+ async _addSession(client, session) {
153
+ await this.sessions.set(client, session);
154
+ if (session.email_hash) {
155
+ let index = await this.sessionsByEmailHash.get(session.email_hash);
156
+ if (!index) {
157
+ index = { clients: [] };
158
+ }
159
+ await this.sessionsByEmailHash.set(session.email_hash, {
160
+ clients: append(client, index.clients),
161
+ });
162
+ }
163
+ }
164
+ async _deleteSession(client) {
165
+ const session = await this.sessions.get(client);
166
+ if (session) {
167
+ if (session.email_hash) {
168
+ const index = await this.sessionsByEmailHash.get(session.email_hash);
169
+ if (index) {
170
+ const clients = remove(client, index.clients);
171
+ if (clients.length === 0) {
172
+ await this.sessionsByEmailHash.delete(session.email_hash);
173
+ }
174
+ else {
175
+ await this.sessionsByEmailHash.set(session.email_hash, { clients });
176
+ }
177
+ }
178
+ }
179
+ await this.sessions.delete(client);
180
+ }
181
+ }
152
182
  // Registration
153
183
  async handleRegisterRequest({ payload, event }) {
154
- debug("[signer]: attempting to register session", event.pubkey);
155
184
  return this.options.storage.tx(async () => {
156
185
  const { group, share, recovery } = payload;
157
186
  const cb = (ok, message) => this.rpc
@@ -160,26 +189,26 @@ export class Signer {
160
189
  if (await this._checkKeyReuse(event))
161
190
  return;
162
191
  if (!between([0, group.commits.length], group.threshold)) {
163
- debug("[signer]: invalid group threshold", event.pubkey);
192
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: invalid group threshold`);
164
193
  return cb(false, "Invalid group threshold.");
165
194
  }
166
195
  if (!Lib.is_group_member(group, share)) {
167
- debug("[signer]: share does not belong to the provided group", event.pubkey);
196
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: share does not belong to the provided group`);
168
197
  return cb(false, "Share does not belong to the provided group.");
169
198
  }
170
199
  if (uniq(group.commits.map(c => c.idx)).length !== group.commits.length) {
171
- debug("[signer]: group contains duplicate member indices", event.pubkey);
200
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: group contains duplicate member indices`);
172
201
  return cb(false, "Group contains duplicate member indices.");
173
202
  }
174
203
  if (!group.commits.find(c => c.idx === share.idx)) {
175
- debug("[signer]: share index not found in group commits", event.pubkey);
204
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: share index not found in group commits`);
176
205
  return cb(false, "Share index not found in group commits.");
177
206
  }
178
207
  if (await this.sessions.get(event.pubkey)) {
179
- debug("[signer]: client is already registered", event.pubkey);
208
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: client is already registered`);
180
209
  return cb(false, "Client is already registered.");
181
210
  }
182
- await this.sessions.set(event.pubkey, {
211
+ await this._addSession(event.pubkey, {
183
212
  client: event.pubkey,
184
213
  event,
185
214
  share,
@@ -187,7 +216,7 @@ export class Signer {
187
216
  recovery,
188
217
  last_activity: now(),
189
218
  });
190
- debug("[signer]: registered", event.pubkey);
219
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: registered`);
191
220
  return cb(true, "Your key has been registered");
192
221
  });
193
222
  }
@@ -196,7 +225,7 @@ export class Signer {
196
225
  return this.options.storage.tx(async () => {
197
226
  const session = await this.sessions.get(event.pubkey);
198
227
  if (!session) {
199
- debug("[signer]: no session found for recovery setup", event.pubkey);
228
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: no session found for recovery setup`);
200
229
  return this.rpc.channel(event.pubkey, false).send(makeRecoverySetupResult({
201
230
  ok: false,
202
231
  message: "No session found.",
@@ -204,7 +233,7 @@ export class Signer {
204
233
  }));
205
234
  }
206
235
  if (!session.recovery) {
207
- debug("[signer]: recovery is disabled for session", event.pubkey);
236
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: recovery is disabled for session`);
208
237
  return this.rpc.channel(event.pubkey, false).send(makeRecoverySetupResult({
209
238
  ok: false,
210
239
  message: "Recovery is disabled on this session.",
@@ -214,7 +243,7 @@ export class Signer {
214
243
  // recovery method has to be bound at (or shorly after) session, otherwise an attacker with access
215
244
  // to any session could escalate permissions by setting up their own recovery method
216
245
  if (session.event.created_at < ago(15, MINUTE)) {
217
- debug("[signer]: recovery method set too late", event.pubkey);
246
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: recovery method set too late`);
218
247
  return this.rpc.channel(event.pubkey, false).send(makeRecoverySetupResult({
219
248
  ok: false,
220
249
  message: "Recovery method must be set within 5 minutes of session.",
@@ -222,7 +251,7 @@ export class Signer {
222
251
  }));
223
252
  }
224
253
  if (session.email) {
225
- debug("[signer]: recovery is already set", event.pubkey);
254
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: recovery is already set`);
226
255
  return this.rpc.channel(event.pubkey, false).send(makeRecoverySetupResult({
227
256
  ok: false,
228
257
  message: "Recovery has already been initialized.",
@@ -230,7 +259,7 @@ export class Signer {
230
259
  }));
231
260
  }
232
261
  if (!payload.password_hash.match(/^[a-f0-9]{64}$/)) {
233
- debug("[signer]: invalid password_hash provided on setup", event.pubkey);
262
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: invalid password_hash provided on setup`);
234
263
  return this.rpc.channel(event.pubkey, false).send(makeRecoverySetupResult({
235
264
  ok: false,
236
265
  message: "Recovery method password hash must be an argon2id hash of user email and password.",
@@ -239,16 +268,14 @@ export class Signer {
239
268
  }
240
269
  const { email, password_hash } = payload;
241
270
  const email_hash = await hashEmail(email, this.pubkey);
242
- const index = (await this.sessionsByEmailHash.get(email_hash)) || { clients: [] };
243
- await this.sessions.set(event.pubkey, {
271
+ await this._addSession(event.pubkey, {
244
272
  ...session,
245
273
  last_activity: now(),
246
274
  email,
247
275
  email_hash,
248
276
  password_hash,
249
277
  });
250
- await this.sessionsByEmailHash.set(email_hash, { clients: append(event.pubkey, index.clients) });
251
- debug("[signer]: recovery method initialized", event.pubkey);
278
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: recovery method initialized`);
252
279
  this.rpc.channel(event.pubkey, false).send(makeRecoverySetupResult({
253
280
  ok: true,
254
281
  message: "Recovery method successfully initialized.",
@@ -274,14 +301,14 @@ export class Signer {
274
301
  return;
275
302
  const sessions = await this._getAuthenticatedSessions(payload.auth);
276
303
  if (sessions.length === 0) {
277
- debug("[signer]: no sessions found for recovery", event.pubkey);
304
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: no sessions found for recovery`);
278
305
  return this.rpc.channel(event.pubkey, false).send(makeRecoveryOptions({
279
306
  ok: false,
280
307
  message: "No sessions found.",
281
308
  prev: event.id,
282
309
  }));
283
310
  }
284
- debug("[signer]: sending recovery options", event.pubkey);
311
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: sending recovery options`);
285
312
  const clients = sessions.map(s => s.client);
286
313
  const items = sessions.map(makeSessionItem);
287
314
  await this.recoveries.set(event.pubkey, { event, clients });
@@ -295,7 +322,7 @@ export class Signer {
295
322
  async handleRecoverySelect({ payload, event }) {
296
323
  const recovery = await this.recoveries.get(event.pubkey);
297
324
  if (!recovery) {
298
- debug("[signer]: no active recovery found", event.pubkey);
325
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: no active recovery found`);
299
326
  return this.rpc.channel(event.pubkey, false).send(makeRecoveryResult({
300
327
  ok: false,
301
328
  message: `No active recovery found.`,
@@ -305,7 +332,7 @@ export class Signer {
305
332
  // Cleanup right away
306
333
  await this.recoveries.delete(event.pubkey);
307
334
  if (!recovery.clients.includes(payload.client)) {
308
- debug("[signer]: invalid session selected for recovery", event.pubkey);
335
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: invalid session selected for recovery`);
309
336
  return this.rpc.channel(event.pubkey, false).send(makeRecoveryResult({
310
337
  ok: false,
311
338
  message: `Invalid session selected for recovery.`,
@@ -314,7 +341,7 @@ export class Signer {
314
341
  }
315
342
  const session = await this.sessions.get(payload.client);
316
343
  if (!session) {
317
- debug("[signer]: recovery session not found", event.pubkey);
344
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: recovery session not found`);
318
345
  return this.rpc.channel(event.pubkey, false).send(makeRecoveryResult({
319
346
  ok: false,
320
347
  message: `Recovery session not found.`,
@@ -328,7 +355,7 @@ export class Signer {
328
355
  share: session.share,
329
356
  prev: event.id,
330
357
  }));
331
- debug("[signer]: recovery successfully completed", event.pubkey);
358
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: recovery successfully completed`);
332
359
  }
333
360
  // Login
334
361
  async handleLoginStart({ payload, event }) {
@@ -336,14 +363,14 @@ export class Signer {
336
363
  return;
337
364
  const sessions = await this._getAuthenticatedSessions(payload.auth);
338
365
  if (sessions.length === 0) {
339
- debug("[signer]: no sessions found for login", event.pubkey);
366
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: no sessions found for login`);
340
367
  return this.rpc.channel(event.pubkey, false).send(makeLoginOptions({
341
368
  ok: false,
342
369
  message: "No sessions found.",
343
370
  prev: event.id,
344
371
  }));
345
372
  }
346
- debug("[signer]: sending login options", event.pubkey);
373
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: sending login options`);
347
374
  const clients = sessions.map(s => s.client);
348
375
  const items = sessions.map(makeSessionItem);
349
376
  await this.logins.set(event.pubkey, { event, clients });
@@ -357,7 +384,7 @@ export class Signer {
357
384
  async handleLoginSelect({ payload, event }) {
358
385
  const login = await this.logins.get(event.pubkey);
359
386
  if (!login) {
360
- debug("[signer]: no active login found", event.pubkey);
387
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: no active login found`);
361
388
  return this.rpc.channel(event.pubkey, false).send(makeLoginResult({
362
389
  ok: false,
363
390
  message: `No active login found.`,
@@ -367,7 +394,7 @@ export class Signer {
367
394
  // Cleanup right away
368
395
  await this.logins.delete(event.pubkey);
369
396
  if (!login.clients.includes(payload.client)) {
370
- debug("[signer]: invalid session selected for login", event.pubkey);
397
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: invalid session selected for login`);
371
398
  return this.rpc.channel(event.pubkey, false).send(makeLoginResult({
372
399
  ok: false,
373
400
  message: `Invalid session selected for login.`,
@@ -376,19 +403,22 @@ export class Signer {
376
403
  }
377
404
  const session = await this.sessions.get(payload.client);
378
405
  if (!session) {
379
- debug("[signer]: login session not found", event.pubkey);
406
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: login session not found`);
380
407
  return this.rpc.channel(event.pubkey, false).send(makeLoginResult({
381
408
  ok: false,
382
409
  message: `Login session not found.`,
383
410
  prev: event.id,
384
411
  }));
385
412
  }
386
- await this.sessions.set(event.pubkey, {
413
+ await this._addSession(event.pubkey, {
387
414
  event,
388
415
  recovery: true,
389
416
  client: event.pubkey,
390
417
  share: session.share,
391
418
  group: session.group,
419
+ email: session.email,
420
+ email_hash: session.email_hash,
421
+ password_hash: session.password_hash,
392
422
  last_activity: now(),
393
423
  });
394
424
  this.rpc.channel(event.pubkey, false).send(makeLoginResult({
@@ -397,40 +427,48 @@ export class Signer {
397
427
  group: session.group,
398
428
  prev: event.id,
399
429
  }));
400
- debug("[signer]: login successfully completed", event.pubkey);
430
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: login successfully completed`);
401
431
  }
402
432
  // Signing
403
433
  async handleSignRequest({ payload, event }) {
404
- debug("[signer]: attempting signing flow", event.pubkey);
405
434
  return this.options.storage.tx(async () => {
406
435
  const session = await this.sessions.get(event.pubkey);
407
436
  if (!session) {
408
- debug("[signer]: signing failed", event.pubkey);
437
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: signing failed - no session found`);
409
438
  return this.rpc.channel(event.pubkey, false).send(makeSignResult({
410
439
  ok: false,
411
440
  message: "No session found for client",
412
441
  prev: event.id,
413
442
  }));
414
443
  }
415
- const ctx = Lib.get_session_ctx(session.group, payload.request);
416
- const partialSignature = Lib.create_psig_pkg(ctx, session.share);
417
- await this.sessions.set(event.pubkey, { ...session, last_activity: now() });
418
- debug("[signer]: signing complete", event.pubkey);
419
- this.rpc.channel(event.pubkey, false).send(makeSignResult({
420
- result: partialSignature,
421
- ok: true,
422
- message: "Successfully signed event",
423
- prev: event.id,
424
- }));
444
+ try {
445
+ const ctx = Lib.get_session_ctx(session.group, payload.request);
446
+ const partialSignature = Lib.create_psig_pkg(ctx, session.share);
447
+ await this.sessions.set(event.pubkey, { ...session, last_activity: now() });
448
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: signing complete`);
449
+ this.rpc.channel(event.pubkey, false).send(makeSignResult({
450
+ result: partialSignature,
451
+ ok: true,
452
+ message: "Successfully signed event",
453
+ prev: event.id,
454
+ }));
455
+ }
456
+ catch (e) {
457
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: signing failed - ${e.message || e}`);
458
+ return this.rpc.channel(event.pubkey, false).send(makeSignResult({
459
+ ok: false,
460
+ message: "Failed to sign event",
461
+ prev: event.id,
462
+ }));
463
+ }
425
464
  });
426
465
  }
427
466
  // Key exchange
428
467
  async handleEcdhRequest({ payload, event }) {
429
- debug("[signer]: attempting ecdh flow", event.pubkey);
430
468
  return this.options.storage.tx(async () => {
431
469
  const session = await this.sessions.get(event.pubkey);
432
470
  if (!session) {
433
- debug("[signer]: ecdh failed", event.pubkey);
471
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: ecdh failed - no session found`);
434
472
  return this.rpc.channel(event.pubkey, false).send(makeSignResult({
435
473
  ok: false,
436
474
  message: "No session found for client",
@@ -438,21 +476,31 @@ export class Signer {
438
476
  }));
439
477
  }
440
478
  const { members, ecdh_pk } = payload;
441
- const ecdhPackage = Lib.create_ecdh_pkg(members, ecdh_pk, session.share);
442
- await this.sessions.set(event.pubkey, { ...session, last_activity: now() });
443
- debug("[signer]: ecdh complete", event.pubkey);
444
- this.rpc.channel(event.pubkey, false).send(makeEcdhResult({
445
- result: ecdhPackage,
446
- ok: true,
447
- message: "Successfully signed event",
448
- prev: event.id,
449
- }));
479
+ try {
480
+ const ecdhPackage = Lib.create_ecdh_pkg(members, ecdh_pk, session.share);
481
+ await this.sessions.set(event.pubkey, { ...session, last_activity: now() });
482
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: ecdh complete`);
483
+ this.rpc.channel(event.pubkey, false).send(makeEcdhResult({
484
+ result: ecdhPackage,
485
+ ok: true,
486
+ message: "Successfully signed event",
487
+ prev: event.id,
488
+ }));
489
+ }
490
+ catch (e) {
491
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: ecdh failed - ${e.message || e}`);
492
+ return this.rpc.channel(event.pubkey, false).send(makeSignResult({
493
+ ok: false,
494
+ message: "Key derivation failed",
495
+ prev: event.id,
496
+ }));
497
+ }
450
498
  });
451
499
  }
452
500
  // Session management
453
501
  async handleSessionList({ payload, event }) {
454
502
  if (!this._isNip98AuthValid(payload.auth, Method.SessionList)) {
455
- debug("[signer]: invalid auth event for session list", event.pubkey);
503
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: invalid auth event for session list`);
456
504
  return this.rpc.channel(event.pubkey, false).send(makeSessionListResult({
457
505
  items: [],
458
506
  ok: false,
@@ -460,14 +508,13 @@ export class Signer {
460
508
  prev: event.id,
461
509
  }));
462
510
  }
463
- debug("[signer]: attempting to retrieve session list", event.pubkey);
464
511
  const items = [];
465
512
  for (const [_, session] of await this.sessions.entries()) {
466
513
  if (session.group.group_pk.slice(2) === payload.auth.pubkey) {
467
514
  items.push(makeSessionItem(session));
468
515
  }
469
516
  }
470
- debug("[signer]: successfully retrieved session list", event.pubkey);
517
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: successfully retrieved session list`);
471
518
  this.rpc.channel(event.pubkey, false).send(makeSessionListResult({
472
519
  items,
473
520
  ok: true,
@@ -477,19 +524,18 @@ export class Signer {
477
524
  }
478
525
  async handleSessionDelete({ payload, event }) {
479
526
  if (!this._isNip98AuthValid(payload.auth, Method.SessionDelete)) {
480
- debug("[signer]: invalid auth event for session deletion", event.pubkey);
527
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: invalid auth event for session deletion`);
481
528
  return this.rpc.channel(event.pubkey, false).send(makeSessionDeleteResult({
482
529
  ok: false,
483
530
  message: "Failed to delete selected session.",
484
531
  prev: event.id,
485
532
  }));
486
533
  }
487
- debug("[signer]: attempting to delete session", event.pubkey);
488
534
  return this.options.storage.tx(async () => {
489
535
  const session = await this.sessions.get(payload.client);
490
536
  if (session?.group.group_pk.slice(2) === payload.auth.pubkey) {
491
- await this.sessions.delete(payload.client);
492
- debug("[signer]: deleted session", event.pubkey);
537
+ await this._deleteSession(payload.client);
538
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: deleted session`, payload.client);
493
539
  this.rpc.channel(event.pubkey, false).send(makeSessionDeleteResult({
494
540
  ok: true,
495
541
  message: "Successfully deleted selected session.",
@@ -497,7 +543,7 @@ export class Signer {
497
543
  }));
498
544
  }
499
545
  else {
500
- debug("[signer]: failed to delete session", event.pubkey);
546
+ debug(`[signer ${event.pubkey.slice(0, 8)}]: failed to delete session`, payload.client);
501
547
  return this.rpc.channel(event.pubkey, false).send(makeSessionDeleteResult({
502
548
  ok: false,
503
549
  message: "Failed to logout selected client.",
@@ -1 +1 @@
1
- {"version":3,"file":"signer.js","sourceRoot":"","sources":["../src/signer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signer.js","sourceRoot":"","sources":["../src/signer.ts"],"names":[],"mappings":"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"}
package/dist/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pomade/core",
3
- "version": "0.0.7",
3
+ "version": "0.0.8",
4
4
  "author": "hodlbod",
5
5
  "license": "MIT",
6
6
  "description": "Recovery protocol and implementation for nostr multisig signers.",
@@ -34,15 +34,17 @@
34
34
  "typescript": "^5.9.3"
35
35
  },
36
36
  "dependencies": {
37
+ "base58-js": "^3.0.3",
38
+ "hash-wasm": "^4.12.0",
39
+ "zod": "^4.1.13"
40
+ },
41
+ "peerDependencies": {
37
42
  "@frostr/bifrost": "^1.0.7",
38
43
  "@noble/hashes": "^2.0.1",
39
44
  "@welshman/lib": "^0.7.1",
40
45
  "@welshman/net": "^0.7.1",
41
46
  "@welshman/util": "^0.7.1",
42
- "base58-js": "^3.0.3",
43
- "hash-wasm": "^4.12.0",
44
- "nostr-tools": "^2.19.3",
45
- "zod": "^4.1.13"
47
+ "nostr-tools": "^2.19.3"
46
48
  },
47
49
  "scripts": {
48
50
  "test": "vitest -r __tests__ --bail=1 --run",