@pomade/core 0.0.4 → 0.0.6

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/util.d.ts CHANGED
@@ -1,7 +1,4 @@
1
1
  import type { EventTemplate } from "@welshman/util";
2
- export declare const bcryptOptions: {
3
- rounds: number;
4
- };
5
2
  export declare function prepAndSign(secret: string, event: EventTemplate): {
6
3
  sig: string;
7
4
  tags: string[][];
@@ -32,17 +29,25 @@ export declare const argonOptions: {
32
29
  m: number;
33
30
  p: number;
34
31
  };
35
- export declare function hashEmail(email: string, peer: string): Promise<string>;
36
- export declare function hashPassword(email: string, password: string, peer: string): Promise<string>;
32
+ export type ArgonImpl = (value: Uint8Array, salt: Uint8Array, options: {
33
+ t: number;
34
+ m: number;
35
+ p: number;
36
+ }) => Promise<Uint8Array>;
37
+ export declare function hashEmail(email: string, signer: string): Promise<string>;
38
+ export declare function hashPassword(password: string, signer: string): Promise<string>;
37
39
  export type Context = {
38
40
  debug: boolean;
39
41
  signerPubkeys: string[];
40
42
  indexerRelays: string[];
43
+ argonImpl: ArgonImpl;
41
44
  setSignerPubkeys: (pubkeys: string[]) => void;
42
45
  setIndexerRelays: (relays: string[]) => void;
46
+ setArgonWorker: (workerModuleOrPromise: any) => void;
43
47
  };
44
48
  export declare const context: Context;
45
49
  export declare function debug(...args: any): void;
50
+ export declare const LOCAL_RELAY_URL = "local://welshman.relay/";
46
51
  export declare const isRelay: (url: string) => boolean;
47
52
  export declare const normalizeRelay: (url: string) => string;
48
53
  export declare const relayCache: Map<string, string[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAA;AAcjD,eAAO,MAAM,aAAa;;CAEzB,CAAA;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa;;;;;;;;EAE/D;AAED,eAAO,MAAM,KAAK;;;;;;;;sBAOE,MAAM,UAAU,MAAM,KAAK,MAAM;sBAEjC,MAAM,UAAU,MAAM,KAAK,MAAM;CAEpD,CAAA;AAID,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAUxD;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM;;;EAMhD;AAID,eAAO,MAAM,YAAY;;;;CAA6B,CAAA;AAEtD,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,mBAE1D;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,mBAE/E;AAID,MAAM,MAAM,OAAO,GAAG;IACpB,KAAK,EAAE,OAAO,CAAA;IACd,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IAC7C,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;CAC7C,CAAA;AAED,eAAO,MAAM,OAAO,EAAE,OAmBrB,CAAA;AAED,wBAAgB,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,QAIjC;AAID,eAAO,MAAM,OAAO,GAAI,KAAK,MAAM,YAAuD,CAAA;AAE1F,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,WACc,CAAA;AAExD,eAAO,MAAM,UAAU,uBAA8B,CAAA;AAErD,eAAO,MAAM,WAAW,GAAU,QAAQ,MAAM,EAAE,SAAS,WAAW,sBAoBrE,CAAA;AAED,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,MAAM,EACN,MAAM,GACP,EAAE;IACD,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB,0DAUA"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAA;AAcjD,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa;;;;;;;;EAE/D;AAED,eAAO,MAAM,KAAK;;;;;;;;sBAOE,MAAM,UAAU,MAAM,KAAK,MAAM;sBAEjC,MAAM,UAAU,MAAM,KAAK,MAAM;CAEpD,CAAA;AAID,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAUxD;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM;;;EAMhD;AAID,eAAO,MAAM,YAAY;;;;CAA6B,CAAA;AAEtD,MAAM,MAAM,SAAS,GAAG,CACtB,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAC,KACvC,OAAO,CAAC,UAAU,CAAC,CAAA;AA2BxB,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,mBAU5D;AAED,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,mBAIlE;AAID,MAAM,MAAM,OAAO,GAAG;IACpB,KAAK,EAAE,OAAO,CAAA;IACd,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,SAAS,EAAE,SAAS,CAAA;IACpB,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IAC7C,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IAC5C,cAAc,EAAE,CAAC,qBAAqB,EAAE,GAAG,KAAK,IAAI,CAAA;CACrD,CAAA;AAED,eAAO,MAAM,OAAO,EAAE,OAqCrB,CAAA;AAED,wBAAgB,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,QAIjC;AAID,eAAO,MAAM,eAAe,4BAA4B,CAAA;AAExD,eAAO,MAAM,OAAO,GAAI,KAAK,MAAM,YAAuD,CAAA;AAE1F,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,WACc,CAAA;AAExD,eAAO,MAAM,UAAU,uBAA8B,CAAA;AAErD,eAAO,MAAM,WAAW,GAAU,QAAQ,MAAM,EAAE,SAAS,WAAW,sBAoBrE,CAAA;AAED,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,MAAM,EACN,MAAM,GACP,EAAE;IACD,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB,0DAUA"}
package/dist/util.js CHANGED
@@ -1,14 +1,11 @@
1
1
  import * as b58 from "base58-js";
2
2
  import * as nt44 from "nostr-tools/nip44";
3
- import { argon2id } from "@noble/hashes/argon2.js";
3
+ import { argon2id } from "hash-wasm";
4
4
  import { bytesToHex } from "@noble/hashes/utils.js";
5
- import { cached, uniq, textEncoder, hexToBytes } from "@welshman/lib";
5
+ import { cached, once, uniq, textEncoder, hexToBytes } from "@welshman/lib";
6
6
  import { prep, sign, getPubkey, RELAYS, getTagValues, normalizeRelayUrl, isRelayUrl, } from "@welshman/util";
7
- import { publish, request, LOCAL_RELAY_URL } from "@welshman/net";
7
+ import { publish, request } from "@welshman/net";
8
8
  // Signing and encryption
9
- export const bcryptOptions = {
10
- rounds: 10,
11
- };
12
9
  export function prepAndSign(secret, event) {
13
10
  return sign(prep(event, getPubkey(secret)), secret);
14
11
  }
@@ -38,20 +35,41 @@ export function decodeChallenge(challenge) {
38
35
  }
39
36
  // Payload hashing
40
37
  export const argonOptions = { t: 2, m: 32 * 1024, p: 1 };
41
- export async function hashEmail(email, peer) {
42
- return bytesToHex(argon2id(textEncoder.encode(email), hexToBytes(peer), argonOptions));
38
+ const warnArgonImpl = once(() => {
39
+ // @ts-ignore
40
+ if (typeof window !== "undefined") {
41
+ console.warn("Default argon implementation can lead to UI jank. Call `context.setArgonWorker(import('@pomade/core/argon-worker.js?worker'))` to improve performance.");
42
+ }
43
+ });
44
+ const defaultArgonImpl = async (value, salt, options) => {
45
+ warnArgonImpl();
46
+ return argon2id({
47
+ password: value,
48
+ salt: salt,
49
+ parallelism: options.p,
50
+ iterations: options.t,
51
+ memorySize: options.m,
52
+ hashLength: 32,
53
+ outputType: "binary",
54
+ });
55
+ };
56
+ const emailHashCache = new Map();
57
+ export async function hashEmail(email, signer) {
58
+ let hash = emailHashCache.get(email + signer);
59
+ if (!hash) {
60
+ hash = bytesToHex(await context.argonImpl(textEncoder.encode(email), hexToBytes(signer), argonOptions));
61
+ emailHashCache.set(email + signer, hash);
62
+ }
63
+ return hash;
43
64
  }
44
- export async function hashPassword(email, password, peer) {
45
- return bytesToHex(argon2id(textEncoder.encode(email + password), hexToBytes(peer), argonOptions));
65
+ export async function hashPassword(password, signer) {
66
+ return bytesToHex(await context.argonImpl(textEncoder.encode(password), hexToBytes(signer), argonOptions));
46
67
  }
47
68
  export const context = {
48
69
  debug: false,
49
70
  signerPubkeys: [],
50
- indexerRelays: [
51
- "wss://indexer.coracle.social/",
52
- "wss://relay.nostr.band/",
53
- "wss://purplepag.es/",
54
- ],
71
+ indexerRelays: ["wss://indexer.coracle.social/", "wss://relay.damus.io/", "wss://purplepag.es/"],
72
+ argonImpl: defaultArgonImpl,
55
73
  setSignerPubkeys(pubkeys) {
56
74
  context.signerPubkeys = pubkeys;
57
75
  // Prime our relay cache
@@ -62,6 +80,24 @@ export const context = {
62
80
  setIndexerRelays(relays) {
63
81
  context.indexerRelays = relays.filter(isRelay).map(normalizeRelay);
64
82
  },
83
+ setArgonWorker(workerModuleOrPromise) {
84
+ context.argonImpl = async (value, salt, options) => {
85
+ const workerModule = await Promise.resolve(workerModuleOrPromise);
86
+ const WorkerClass = workerModule.default || workerModule;
87
+ const worker = new WorkerClass();
88
+ return new Promise((resolve, reject) => {
89
+ worker.onmessage = (e) => {
90
+ resolve(e.data);
91
+ worker.terminate();
92
+ };
93
+ worker.onerror = (e) => {
94
+ reject(e.error || e);
95
+ worker.terminate();
96
+ };
97
+ worker.postMessage({ value, salt, options });
98
+ });
99
+ };
100
+ },
65
101
  };
66
102
  export function debug(...args) {
67
103
  if (context.debug) {
@@ -69,6 +105,7 @@ export function debug(...args) {
69
105
  }
70
106
  }
71
107
  // Relays
108
+ export const LOCAL_RELAY_URL = "local://welshman.relay/";
72
109
  export const isRelay = (url) => (url === LOCAL_RELAY_URL ? true : isRelayUrl(url));
73
110
  export const normalizeRelay = (url) => url === LOCAL_RELAY_URL ? url : normalizeRelayUrl(url);
74
111
  export const relayCache = new Map();
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.4",
3
+ "version": "0.0.6",
4
4
  "author": "hodlbod",
5
5
  "license": "MIT",
6
6
  "description": "Recovery protocol and implementation for nostr multisig signers.",
@@ -16,8 +16,14 @@
16
16
  ],
17
17
  "main": "dist/index.js",
18
18
  "types": "dist/index.d.ts",
19
+ "exports": {
20
+ ".": {
21
+ "types": "./dist/index.d.ts",
22
+ "default": "./dist/index.js"
23
+ },
24
+ "./argon-worker.js": "./dist/argon-worker.js"
25
+ },
19
26
  "devDependencies": {
20
- "@types/bcrypt": "^6.0.0",
21
27
  "@typescript-eslint/eslint-plugin": "^8.49.0",
22
28
  "@typescript-eslint/parser": "^8.49.0",
23
29
  "eslint": "^9.39.1",
@@ -34,14 +40,14 @@
34
40
  "@welshman/net": "^0.7.1",
35
41
  "@welshman/util": "^0.7.1",
36
42
  "base58-js": "^3.0.3",
37
- "bcrypt": "^6.0.0",
43
+ "hash-wasm": "^4.12.0",
38
44
  "nostr-tools": "^2.19.3",
39
45
  "zod": "^4.1.13"
40
46
  },
41
47
  "scripts": {
42
48
  "test": "vitest -r __tests__ --bail=1 --run",
43
49
  "test:watch": "vitest -r __tests__ --bail=1",
44
- "build": "rimraf ./dist && tsc -b --force",
50
+ "build": "rimraf ./dist && tsc -b --force && cp src/argon-worker.js dist/",
45
51
  "lint": "eslint . --ext .ts,.tsx",
46
52
  "lint:fix": "eslint . --ext .ts,.tsx --fix",
47
53
  "format": "prettier --write \"**/*.{ts,tsx,json,md}\""