@owlmeans/did 0.1.18-rc.45 → 0.1.18-rc.46

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 (41) hide show
  1. package/README.md +2 -2
  2. package/agent-meta/manifest.json +2 -2
  3. package/agent-meta/skills/did/SKILL.md +1 -1
  4. package/build/i18n.js +17 -17
  5. package/build/i18n.js.map +1 -1
  6. package/build/model.d.ts.map +1 -1
  7. package/build/model.js +4 -4
  8. package/build/model.js.map +1 -1
  9. package/build/utils/index.d.ts +2 -0
  10. package/build/utils/index.d.ts.map +1 -1
  11. package/build/utils/index.js.map +1 -1
  12. package/build/utils/key.d.ts.map +1 -1
  13. package/build/utils/key.js +2 -2
  14. package/build/utils/key.js.map +1 -1
  15. package/build/utils/mnemonic/types.d.ts +13 -0
  16. package/build/utils/mnemonic/types.d.ts.map +1 -0
  17. package/build/utils/mnemonic/types.js +2 -0
  18. package/build/utils/mnemonic/types.js.map +1 -0
  19. package/build/utils/mnemonic.d.ts +3 -18
  20. package/build/utils/mnemonic.d.ts.map +1 -1
  21. package/build/utils/mnemonic.js +13 -11
  22. package/build/utils/mnemonic.js.map +1 -1
  23. package/build/utils/types.d.ts +10 -2
  24. package/build/utils/types.d.ts.map +1 -1
  25. package/build/utils.d.ts +3 -4
  26. package/build/utils.d.ts.map +1 -1
  27. package/build/utils.js +24 -20
  28. package/build/utils.js.map +1 -1
  29. package/build/wallet.d.ts.map +1 -1
  30. package/build/wallet.js +3 -3
  31. package/build/wallet.js.map +1 -1
  32. package/package.json +6 -6
  33. package/src/i18n.ts +18 -17
  34. package/src/model.ts +4 -4
  35. package/src/utils/index.ts +2 -0
  36. package/src/utils/key.ts +3 -3
  37. package/src/utils/mnemonic/types.ts +13 -0
  38. package/src/utils/mnemonic.ts +18 -15
  39. package/src/utils/types.ts +10 -2
  40. package/src/utils.ts +31 -24
  41. package/src/wallet.ts +4 -4
package/README.md CHANGED
@@ -12,7 +12,7 @@ Hierarchical deterministic (HD) wallet and DID document management for OwlMeans
12
12
  ## Installation
13
13
 
14
14
  ```bash
15
- bun add @owlmeans/did@^0.1.18-rc.45
15
+ bun add @owlmeans/did@^0.1.18-rc.46
16
16
  ```
17
17
 
18
18
  ## Usage
@@ -65,7 +65,7 @@ This package ships embedded agent skills under `agent-meta/`. After installing y
65
65
  your project's skill store (`.agents/skills/`):
66
66
 
67
67
  ```sh
68
- npx @owlmeans/agent-skills@^0.1.18-rc.48
68
+ npx @owlmeans/agent-skills@^0.1.18-rc.49
69
69
  ```
70
70
 
71
71
  The embedded files are version-matched to this package release. Do not edit them
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schemaVersion": 2,
3
3
  "package": "@owlmeans/did",
4
- "version": "0.1.18-rc.45",
5
- "generatedAt": "2026-10-05T08:32:19.139Z",
4
+ "version": "0.1.18-rc.46",
5
+ "generatedAt": "2026-10-05T21:03:06.419Z",
6
6
  "canonicalRepo": "https://github.com/owlmeans/common",
7
7
  "entries": [
8
8
  {
@@ -8,7 +8,7 @@ user-invocable: false
8
8
  # @owlmeans/did
9
9
 
10
10
  **Layer:** Core
11
- **Install:** `"@owlmeans/did": "^0.1.18-rc.45"` in `dependencies`
11
+ **Install:** `"@owlmeans/did": "^0.1.18-rc.46"` in `dependencies`
12
12
 
13
13
  This package adds a **derivable** key type on top of `@owlmeans/basic-keys` and a wallet that stores
14
14
  keys derived from one mnemonic seed. Importing it registers the `owlmk` key type into the shared
package/build/i18n.js CHANGED
@@ -1,4 +1,3 @@
1
- import { addI18nLib } from '@owlmeans/i18n';
2
1
  import en from './i18n/en.json' with { type: 'json' };
3
2
  import pl from './i18n/pl.json' with { type: 'json' };
4
3
  import ru from './i18n/ru.json' with { type: 'json' };
@@ -15,20 +14,21 @@ import walletUk from './i18n/wallet-uk.json' with { type: 'json' };
15
14
  import walletEs from './i18n/wallet-es.json' with { type: 'json' };
16
15
  import walletDe from './i18n/wallet-de.json' with { type: 'json' };
17
16
  import walletFr from './i18n/wallet-fr.json' with { type: 'json' };
18
- addI18nLib('en', 'keys', en, { ns: 'did' });
19
- addI18nLib('pl', 'keys', pl, { ns: 'did' });
20
- addI18nLib('ru', 'keys', ru, { ns: 'did' });
21
- addI18nLib('be', 'keys', be, { ns: 'did' });
22
- addI18nLib('uk', 'keys', uk, { ns: 'did' });
23
- addI18nLib('es', 'keys', es, { ns: 'did' });
24
- addI18nLib('de', 'keys', de, { ns: 'did' });
25
- addI18nLib('fr', 'keys', fr, { ns: 'did' });
26
- addI18nLib('en', 'wallet', walletEn, { ns: 'did' });
27
- addI18nLib('pl', 'wallet', walletPl, { ns: 'did' });
28
- addI18nLib('ru', 'wallet', walletRu, { ns: 'did' });
29
- addI18nLib('be', 'wallet', walletBe, { ns: 'did' });
30
- addI18nLib('uk', 'wallet', walletUk, { ns: 'did' });
31
- addI18nLib('es', 'wallet', walletEs, { ns: 'did' });
32
- addI18nLib('de', 'wallet', walletDe, { ns: 'did' });
33
- addI18nLib('fr', 'wallet', walletFr, { ns: 'did' });
17
+ import { i18nHelper } from '@owlmeans/i18n';
18
+ i18nHelper.addI18nLib('en', 'keys', en, { ns: 'did' });
19
+ i18nHelper.addI18nLib('pl', 'keys', pl, { ns: 'did' });
20
+ i18nHelper.addI18nLib('ru', 'keys', ru, { ns: 'did' });
21
+ i18nHelper.addI18nLib('be', 'keys', be, { ns: 'did' });
22
+ i18nHelper.addI18nLib('uk', 'keys', uk, { ns: 'did' });
23
+ i18nHelper.addI18nLib('es', 'keys', es, { ns: 'did' });
24
+ i18nHelper.addI18nLib('de', 'keys', de, { ns: 'did' });
25
+ i18nHelper.addI18nLib('fr', 'keys', fr, { ns: 'did' });
26
+ i18nHelper.addI18nLib('en', 'wallet', walletEn, { ns: 'did' });
27
+ i18nHelper.addI18nLib('pl', 'wallet', walletPl, { ns: 'did' });
28
+ i18nHelper.addI18nLib('ru', 'wallet', walletRu, { ns: 'did' });
29
+ i18nHelper.addI18nLib('be', 'wallet', walletBe, { ns: 'did' });
30
+ i18nHelper.addI18nLib('uk', 'wallet', walletUk, { ns: 'did' });
31
+ i18nHelper.addI18nLib('es', 'wallet', walletEs, { ns: 'did' });
32
+ i18nHelper.addI18nLib('de', 'wallet', walletDe, { ns: 'did' });
33
+ i18nHelper.addI18nLib('fr', 'wallet', walletFr, { ns: 'did' });
34
34
  //# sourceMappingURL=i18n.js.map
package/build/i18n.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAM7C,eAAO,MAAM,eAAe,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,KAAK,WA4C3D,CAAA"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAM7C,eAAO,MAAM,eAAe,WAAY,OAAO,GAAG,MAAM,KAAG,WA4C1D,CAAA"}
package/build/model.js CHANGED
@@ -1,9 +1,9 @@
1
1
  import { makeKeyPairModel, plugins } from '@owlmeans/basic-keys';
2
2
  import { DIDKeyError } from './errors.js';
3
- import { assertType, prepareKey } from '@owlmeans/basic-keys/utils';
3
+ import { keyUtils } from '@owlmeans/basic-keys/utils';
4
4
  import { base64 } from '@scure/base';
5
5
  import { KP_SEP, MAX_DEPTH } from './consts.js';
6
- export const makeDidKeyModel = input => {
6
+ export const makeDidKeyModel = (input) => {
7
7
  if (typeof input == 'string') {
8
8
  const plugin = plugins[input];
9
9
  if (plugin != null && (plugin.fromSeed == null || plugin.derive == null)) {
@@ -15,7 +15,7 @@ export const makeDidKeyModel = input => {
15
15
  if (model.keyPair == null) {
16
16
  throw new DIDKeyError('no:keypair');
17
17
  }
18
- assertType(model.keyPair?.type);
18
+ keyUtils.assertType(model.keyPair?.type);
19
19
  if (model.keyPair.privateKey == null) {
20
20
  throw new DIDKeyError('no:pk');
21
21
  }
@@ -27,7 +27,7 @@ export const makeDidKeyModel = input => {
27
27
  if (item == null) {
28
28
  throw new DIDKeyError('no:path');
29
29
  }
30
- const newKey = [model.keyPair.type, base64.encode(plugins[model.keyPair.type].derive(prepareKey(model.keyPair.privateKey), item))].join(':');
30
+ const newKey = [model.keyPair.type, base64.encode(plugins[model.keyPair.type].derive(keyUtils.prepareKey(model.keyPair.privateKey), item))].join(':');
31
31
  const derived = makeDidKeyModel(newKey);
32
32
  if (derived.keyPair == null) {
33
33
  throw new DIDKeyError('derived:missgenerated');
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAgB,MAAM,sBAAsB,CAAA;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAE/C,MAAM,CAAC,MAAM,eAAe,GAA8C,KAAK,CAAC,EAAE;IAChF,IAAI,OAAO,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;QAC7B,IAAI,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC;YACzE,MAAM,IAAI,WAAW,CAAC,iBAAiB,KAAK,EAAE,CAAC,CAAA;QACjD,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAgB,gBAAgB,CAAC,KAAK,CAAgB,CAAA;IAEjE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE;QACpB,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YAC1B,MAAM,IAAI,WAAW,CAAC,YAAY,CAAC,CAAA;QACrC,CAAC;QACD,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;YACrC,MAAM,IAAI,WAAW,CAAC,OAAO,CAAC,CAAA;QAChC,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC,CAAA;QAE5E,IAAI,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;YAC7B,MAAM,IAAI,WAAW,CAAC,UAAU,CAAC,CAAA;QACnC,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA;QAC1B,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,WAAW,CAAC,SAAS,CAAC,CAAA;QAClC,CAAC;QAED,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAC/C,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAO,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAChF,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEZ,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,CAAA;QACvC,IAAI,OAAO,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,WAAW,CAAC,uBAAuB,CAAC,CAAA;QAChD,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QAC3B,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,aAAa,EAAE,CAAA;QAE9C,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;IACxE,CAAC,CAAA;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAgB,MAAM,sBAAsB,CAAA;AAE9E,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAE/C,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAwB,EAAe,EAAE;IACvE,IAAI,OAAO,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;QAC7B,IAAI,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC;YACzE,MAAM,IAAI,WAAW,CAAC,iBAAiB,KAAK,EAAE,CAAC,CAAA;QACjD,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAgB,gBAAgB,CAAC,KAAK,CAAgB,CAAA;IAEjE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE;QACpB,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YAC1B,MAAM,IAAI,WAAW,CAAC,YAAY,CAAC,CAAA;QACrC,CAAC;QACD,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QACxC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;YACrC,MAAM,IAAI,WAAW,CAAC,OAAO,CAAC,CAAA;QAChC,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC,CAAA;QAE5E,IAAI,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;YAC7B,MAAM,IAAI,WAAW,CAAC,UAAU,CAAC,CAAA;QACnC,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA;QAC1B,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,WAAW,CAAC,SAAS,CAAC,CAAA;QAClC,CAAC;QAED,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAC/C,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CACzF,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEZ,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,CAAA;QACvC,IAAI,OAAO,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,WAAW,CAAC,uBAAuB,CAAC,CAAA;QAChD,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QAC3B,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,aAAa,EAAE,CAAA;QAE9C,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;IACxE,CAAC,CAAA;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA"}
@@ -1,3 +1,5 @@
1
+ export type * from './types.js';
2
+ export type * from './mnemonic/types.js';
1
3
  export * from './mnemonic.js';
2
4
  export * from './key.js';
3
5
  export * from '../utils.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AACA,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AACA,mBAAmB,YAAY,CAAA;AAC/B,mBAAmB,qBAAqB,CAAA;AACxC,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AACA,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAGA,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"key.d.ts","sourceRoot":"","sources":["../../src/utils/key.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7C,eAAO,MAAM,UAAU,SAAU,MAAM,GAAG,UAAU,SAAQ,MAAM,eAoBjE,CAAA"}
1
+ {"version":3,"file":"key.d.ts","sourceRoot":"","sources":["../../src/utils/key.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7C,eAAO,MAAM,UAAU,SAAU,MAAM,GAAG,UAAU,SAAQ,MAAM,KAAa,UAoB9E,CAAA"}
@@ -1,4 +1,4 @@
1
- import { assertType } from '@owlmeans/basic-keys/utils';
1
+ import { keyUtils } from '@owlmeans/basic-keys/utils';
2
2
  import { KEY_OWL } from '../consts.js';
3
3
  import { base64 } from '@scure/base';
4
4
  import { plugins } from '../plugins/index.js';
@@ -7,7 +7,7 @@ export const produceKey = (seed, type = KEY_OWL) => {
7
7
  if (typeof seed === 'string') {
8
8
  seed = base64.decode(seed);
9
9
  }
10
- assertType(type);
10
+ keyUtils.assertType(type);
11
11
  if (plugins[type].fromSeed == null) {
12
12
  throw new DIDKeyError(`non-derivable:${type}`);
13
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"key.js","sourceRoot":"","sources":["../../src/utils/key.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAG1C,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAyB,EAAE,IAAI,GAAW,OAAO,EAAE,EAAE;IAC9E,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC5B,CAAC;IACD,UAAU,CAAC,IAAI,CAAC,CAAA;IAEhB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;QACnC,MAAM,IAAI,WAAW,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAA;IAChD,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC/C,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;IACpD,MAAM,OAAO,GAAe;QAC1B,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;QACrC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;QACnC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1C,IAAI;KACL,CAAA;IAED,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
1
+ {"version":3,"file":"key.js","sourceRoot":"","sources":["../../src/utils/key.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAG1C,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAyB,EAAE,IAAI,GAAW,OAAO,EAAc,EAAE;IAC1F,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC5B,CAAC;IACD,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAEzB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;QACnC,MAAM,IAAI,WAAW,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAA;IAChD,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC/C,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;IACpD,MAAM,OAAO,GAAe;QAC1B,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC;QACrC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC;QACnC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC1C,IAAI;KACL,CAAA;IAED,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
@@ -0,0 +1,13 @@
1
+ import type { MnemonicOptions } from '../../types.js';
2
+ /** BIP-39 mnemonics: generation and the seed and entropy derived from them. */
3
+ export interface MnemonicHelper {
4
+ /** A new mnemonic of `opts.size` words (12–24, default 18). @throws {SyntaxError} outside that range */
5
+ generateMnemonic: (opts?: MnemonicOptions) => string;
6
+ /** The BIP-39 seed of a mnemonic, base64. */
7
+ toSeed: (mnemonic: string) => string;
8
+ /** The BIP-39 seed of a mnemonic, hex. */
9
+ toEntropy: (mnemonic: string) => string;
10
+ /** The mnemonic of hex entropy. */
11
+ toMnemonic: (seed: string) => string;
12
+ }
13
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/mnemonic/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAErD,+EAA+E;AAC/E,MAAM,WAAW,cAAc;IAC7B,wGAAwG;IACxG,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE,eAAe,KAAK,MAAM,CAAA;IACpD,6CAA6C;IAC7C,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAA;IACpC,0CAA0C;IAC1C,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,CAAA;IACvC,mCAAmC;IACnC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAA;CACrC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/utils/mnemonic/types.ts"],"names":[],"mappings":""}
@@ -1,19 +1,4 @@
1
- import type { MnemonicOptions } from '../types.js';
2
- declare const generateMnemonic: (opts?: MnemonicOptions) => string;
3
- declare const toSeed: (mnemonic: string) => string;
4
- declare const toEntropy: (mnemonic: string) => string;
5
- declare const toMnemonic: (seed: string) => string;
6
- export declare const createMnemonicHelper: () => {
7
- generateMnemonic: typeof generateMnemonic;
8
- toSeed: typeof toSeed;
9
- toEntropy: typeof toEntropy;
10
- toMnemonic: typeof toMnemonic;
11
- };
12
- export declare const mnemonicHelper: {
13
- generateMnemonic: typeof generateMnemonic;
14
- toSeed: typeof toSeed;
15
- toEntropy: typeof toEntropy;
16
- toMnemonic: typeof toMnemonic;
17
- };
18
- export {};
1
+ import type { MnemonicHelper } from './mnemonic/types.js';
2
+ export declare const createMnemonicHelper: () => MnemonicHelper;
3
+ export declare const mnemonicHelper: MnemonicHelper;
19
4
  //# sourceMappingURL=mnemonic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mnemonic.d.ts","sourceRoot":"","sources":["../../src/utils/mnemonic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAKlD,QAAA,MAAM,gBAAgB,UAAW,eAAe,KAAG,MASlD,CAAA;AAED,QAAA,MAAM,MAAM,aAAc,MAAM,KAAG,MACU,CAAA;AAE7C,QAAA,MAAM,SAAS,aAAc,MAAM,KAAG,MACI,CAAA;AAE1C,QAAA,MAAM,UAAU,SAAU,MAAM,KAAG,MACmB,CAAA;AAEtD,eAAO,MAAM,oBAAoB;;;;;CAA8D,CAAA;AAE/F,eAAO,MAAM,cAAc;;;;;CAAyB,CAAA"}
1
+ {"version":3,"file":"mnemonic.d.ts","sourceRoot":"","sources":["../../src/utils/mnemonic.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,eAAO,MAAM,oBAAoB,QAAO,cAsBvC,CAAA;AAED,eAAO,MAAM,cAAc,gBAAyB,CAAA"}
@@ -1,17 +1,19 @@
1
1
  import { generateMnemonic as generate, mnemonicToSeedSync, entropyToMnemonic } from '@scure/bip39';
2
2
  import { hex, base64 } from '@scure/base';
3
3
  import { wordlist } from '@scure/bip39/wordlists/english.js';
4
- const generateMnemonic = (opts) => {
5
- const size = opts?.size ?? 18;
6
- if (size < 12 || size > 24) {
7
- throw new SyntaxError('Mnemonic size should be between 12 and 24');
8
- }
9
- const strength = Math.round(256 * size / 24);
10
- return generate(wordlist, strength + (32 - strength % 32));
4
+ export const createMnemonicHelper = () => {
5
+ const generateMnemonic = (opts) => {
6
+ const size = opts?.size ?? 18;
7
+ if (size < 12 || size > 24) {
8
+ throw new SyntaxError('Mnemonic size should be between 12 and 24');
9
+ }
10
+ const strength = Math.round(256 * size / 24);
11
+ return generate(wordlist, strength + (32 - strength % 32));
12
+ };
13
+ const toSeed = (mnemonic) => base64.encode(mnemonicToSeedSync(mnemonic));
14
+ const toEntropy = (mnemonic) => hex.encode(mnemonicToSeedSync(mnemonic));
15
+ const toMnemonic = (seed) => entropyToMnemonic(hex.decode(seed), wordlist);
16
+ return { generateMnemonic, toSeed, toEntropy, toMnemonic };
11
17
  };
12
- const toSeed = (mnemonic) => base64.encode(mnemonicToSeedSync(mnemonic));
13
- const toEntropy = (mnemonic) => hex.encode(mnemonicToSeedSync(mnemonic));
14
- const toMnemonic = (seed) => entropyToMnemonic(hex.decode(seed), wordlist);
15
- export const createMnemonicHelper = () => ({ generateMnemonic, toSeed, toEntropy, toMnemonic });
16
18
  export const mnemonicHelper = createMnemonicHelper();
17
19
  //# sourceMappingURL=mnemonic.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mnemonic.js","sourceRoot":"","sources":["../../src/utils/mnemonic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,IAAI,QAAQ,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAClG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAA;AAE5D,MAAM,gBAAgB,GAAG,CAAC,IAAsB,EAAU,EAAE;IAC1D,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,IAAI,EAAE,CAAA;IAE7B,IAAI,IAAI,GAAG,EAAE,IAAI,IAAI,GAAG,EAAE,EAAE,CAAC;QAC3B,MAAM,IAAI,WAAW,CAAC,2CAA2C,CAAC,CAAA;IACpE,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC,CAAA;IAC5C,OAAO,QAAQ,CAAC,QAAe,EAAE,QAAQ,GAAG,CAAC,EAAE,GAAG,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAA;AACnE,CAAC,CAAA;AAED,MAAM,MAAM,GAAG,CAAC,QAAgB,EAAU,EAAE,CAC1C,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAA;AAE7C,MAAM,SAAS,GAAG,CAAC,QAAgB,EAAU,EAAE,CAC7C,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAA;AAE1C,MAAM,UAAU,GAAG,CAAC,IAAY,EAAU,EAAE,CAC1C,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,QAAe,CAAC,CAAA;AAEtD,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAA;AAE/F,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,EAAE,CAAA"}
1
+ {"version":3,"file":"mnemonic.js","sourceRoot":"","sources":["../../src/utils/mnemonic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,IAAI,QAAQ,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAClG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAA;AAG5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAmB,EAAE;IACvD,MAAM,gBAAgB,GAAG,CAAC,IAAsB,EAAU,EAAE;QAC1D,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,IAAI,EAAE,CAAA;QAE7B,IAAI,IAAI,GAAG,EAAE,IAAI,IAAI,GAAG,EAAE,EAAE,CAAC;YAC3B,MAAM,IAAI,WAAW,CAAC,2CAA2C,CAAC,CAAA;QACpE,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC,CAAA;QAC5C,OAAO,QAAQ,CAAC,QAAe,EAAE,QAAQ,GAAG,CAAC,EAAE,GAAG,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAA;IACnE,CAAC,CAAA;IAED,MAAM,MAAM,GAAG,CAAC,QAAgB,EAAU,EAAE,CAC1C,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAA;IAE7C,MAAM,SAAS,GAAG,CAAC,QAAgB,EAAU,EAAE,CAC7C,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAA;IAE1C,MAAM,UAAU,GAAG,CAAC,IAAY,EAAU,EAAE,CAC1C,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,QAAe,CAAC,CAAA;IAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,CAAA;AAC5D,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,EAAE,CAAA"}
@@ -1,3 +1,11 @@
1
- import type { createMnemonicHelper } from './mnemonic.js';
2
- export type MnemonicHelper = ReturnType<typeof createMnemonicHelper>;
1
+ import type { KeyMeta } from '../types.js';
2
+ /** Wallet key paths composed from key metadata. */
3
+ export interface KeyPathUtils {
4
+ /** Join path items with the key-path separator; an array item is joined with the prefix one. */
5
+ toPath: (...args: (string | string[])[]) => string;
6
+ /** The derivation path of a key described by its metadata: service, entity, profile. */
7
+ mataToPath: (meta: Partial<KeyMeta>) => string;
8
+ /** Whether a key's metadata carries every field the needle asks for (`name` is ignored). */
9
+ matchMeta: (haystack: KeyMeta, needle: Partial<KeyMeta>) => boolean;
10
+ }
3
11
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAEzD,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAE1C,mDAAmD;AACnD,MAAM,WAAW,YAAY;IAC3B,gGAAgG;IAChG,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,KAAK,MAAM,CAAA;IAClD,wFAAwF;IACxF,UAAU,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,MAAM,CAAA;IAC9C,4FAA4F;IAC5F,SAAS,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,OAAO,CAAA;CACpE"}
package/build/utils.d.ts CHANGED
@@ -1,5 +1,4 @@
1
- import type { KeyMeta } from './types.js';
2
- export declare const toPath: (...args: (string | string[])[]) => string;
3
- export declare const mataToPath: (meta: Partial<KeyMeta>) => string;
4
- export declare const matchMeta: (haystack: KeyMeta, needle: Partial<KeyMeta>) => boolean;
1
+ import type { KeyPathUtils } from './utils/types.js';
2
+ export declare const createKeyPathUtils: () => KeyPathUtils;
3
+ export declare const keyPathUtils: KeyPathUtils;
5
4
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAGzC,eAAO,MAAM,MAAM,YAAa,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC,EAAE,WAEvC,CAAA;AAEd,eAAO,MAAM,UAAU,SAAU,OAAO,CAAC,OAAO,CAAC,KAAG,MAcnD,CAAA;AAED,eAAO,MAAM,SAAS,aAAc,OAAO,UAAU,OAAO,CAAC,OAAO,CAAC,KAAG,OAQlE,CAAA"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAEpD,eAAO,MAAM,kBAAkB,QAAO,YAgCrC,CAAA;AAED,eAAO,MAAM,YAAY,cAAuB,CAAA"}
package/build/utils.js CHANGED
@@ -1,24 +1,28 @@
1
1
  import { ENTITY_PREFIX, KP_SEP, PREFIX_SEP, PROFILE_PREFIX, SERVICE_PREFIX } from './consts.js';
2
2
  import { skipFields } from './consts.local.js';
3
- export const toPath = (...args) => args.map(arg => Array.isArray(arg) ? arg.join(PREFIX_SEP) : arg).join(KP_SEP);
4
- export const mataToPath = (meta) => {
5
- const { scopes, id, entityId } = meta;
6
- const items = [];
7
- if (scopes != null && scopes.length === 1) {
8
- items.push([SERVICE_PREFIX, scopes[0]]);
9
- }
10
- if (entityId != null) {
11
- items.push([ENTITY_PREFIX, entityId]);
12
- }
13
- if (id != null) {
14
- items.push([PROFILE_PREFIX, id]);
15
- }
16
- return toPath(...items);
3
+ export const createKeyPathUtils = () => {
4
+ const toPath = (...args) => args.map(arg => Array.isArray(arg) ? arg.join(PREFIX_SEP) : arg).join(KP_SEP);
5
+ const mataToPath = (meta) => {
6
+ const { scopes, id, entityId } = meta;
7
+ const items = [];
8
+ if (scopes != null && scopes.length === 1) {
9
+ items.push([SERVICE_PREFIX, scopes[0]]);
10
+ }
11
+ if (entityId != null) {
12
+ items.push([ENTITY_PREFIX, entityId]);
13
+ }
14
+ if (id != null) {
15
+ items.push([PROFILE_PREFIX, id]);
16
+ }
17
+ return toPath(...items);
18
+ };
19
+ const matchMeta = (haystack, needle) => Object.entries(needle).every(([key, value]) => skipFields.includes(key)
20
+ || (haystack[key] != null
21
+ && (Array.isArray(value)
22
+ ? Array.isArray(haystack[key])
23
+ && value.every(value => haystack[key].includes(value))
24
+ : haystack[key] === value)));
25
+ return { toPath, mataToPath, matchMeta };
17
26
  };
18
- export const matchMeta = (haystack, needle) => Object.entries(needle).every(([key, value]) => skipFields.includes(key)
19
- || (haystack[key] != null
20
- && (Array.isArray(value)
21
- ? Array.isArray(haystack[key])
22
- && value.every(value => haystack[key].includes(value))
23
- : haystack[key] === value)));
27
+ export const keyPathUtils = createKeyPathUtils();
24
28
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE/F,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,GAAG,IAA2B,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAChE,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CACvD,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;AAEd,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAsB,EAAU,EAAE;IAC3D,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;IACrC,MAAM,KAAK,GAA0B,EAAE,CAAA;IACvC,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1C,KAAK,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACzC,CAAC;IACD,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAA;IACvC,CAAC;IACD,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,CAAA;IAClC,CAAC;IAED,OAAO,MAAM,CAAC,GAAG,KAAK,CAAC,CAAA;AACzB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,QAAiB,EAAE,MAAwB,EAAW,EAAE,CAChF,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAC5C,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;OACrB,CAAC,QAAQ,CAAC,GAA4B,CAAC,IAAI,IAAI;WAC7C,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACtB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAA4B,CAAC,CAAC;mBACpD,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAE,QAAQ,CAAC,GAA4B,CAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC9F,CAAC,CAAC,QAAQ,CAAC,GAA4B,CAAC,KAAK,KAAK,CAAC,CACtD,CAAC,CAAA"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE/F,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAG9C,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAiB,EAAE;IACnD,MAAM,MAAM,GAAG,CAAC,GAAG,IAA2B,EAAU,EAAE,CAAC,IAAI,CAAC,GAAG,CACjE,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CACvD,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAEd,MAAM,UAAU,GAAG,CAAC,IAAsB,EAAU,EAAE;QACpD,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QACrC,MAAM,KAAK,GAA0B,EAAE,CAAA;QACvC,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACzC,CAAC;QACD,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAA;QACvC,CAAC;QACD,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,CAAA;QAClC,CAAC;QAED,OAAO,MAAM,CAAC,GAAG,KAAK,CAAC,CAAA;IACzB,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,CAAC,QAAiB,EAAE,MAAwB,EAAW,EAAE,CACzE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAC5C,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC;WACrB,CAAC,QAAQ,CAAC,GAA4B,CAAC,IAAI,IAAI;eAC7C,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBACtB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAA4B,CAAC,CAAC;uBACpD,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAE,QAAQ,CAAC,GAA4B,CAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC9F,CAAC,CAAC,QAAQ,CAAC,GAA4B,CAAC,KAAK,KAAK,CAAC,CACtD,CAAC,CAAA;IAEN,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,CAAA;AAC1C,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../src/wallet.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAe,QAAQ,EAAE,SAAS,EAAyC,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAS/H,eAAO,MAAM,UAAU,UAAiB,QAAQ,SAAS,oBAAoB,uBA4K5E,CAAA"}
1
+ {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../src/wallet.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAe,QAAQ,EAAE,SAAS,EAAyC,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAS/H,eAAO,MAAM,UAAU,UAAiB,QAAQ,SAAS,oBAAoB,KAAG,OAAO,CAAC,SAAS,CA4KhG,CAAA"}
package/build/wallet.js CHANGED
@@ -4,7 +4,7 @@ import { plugins } from './plugins/index.js';
4
4
  import { ed25519owlPluginBuilder } from './plugins/ed25519owl.js';
5
5
  import { produceKey } from './utils/key.js';
6
6
  import { makeDidKeyModel } from './model.js';
7
- import { mataToPath, matchMeta } from './utils.js';
7
+ import { keyPathUtils } from './utils.js';
8
8
  import { mnemonicHelper } from './utils/mnemonic.js';
9
9
  export const makeWallet = async (store, opts) => {
10
10
  if (await store.master.load(MASTER) == null) {
@@ -78,14 +78,14 @@ export const makeWallet = async (store, opts) => {
78
78
  find: async (meta) => {
79
79
  const where = Object.fromEntries(Object.entries(meta).filter(([_, v]) => typeof v !== 'boolean'));
80
80
  const result = await store.meta.list(where);
81
- const keys = await Promise.all(result.items.filter(item => matchMeta(item, meta))
81
+ const keys = await Promise.all(result.items.filter(item => keyPathUtils.matchMeta(item, meta))
82
82
  .map(async (meta) => store.keys.get(meta.id)));
83
83
  return keys.map(key => makeDidKeyModel(key));
84
84
  },
85
85
  provide: async (meta) => {
86
86
  const found = await wallet.find(meta);
87
87
  if (found.length === 0) {
88
- const path = mataToPath(meta);
88
+ const path = keyPathUtils.mataToPath(meta);
89
89
  const master = await wallet.master();
90
90
  const key = master.derive(path);
91
91
  if (meta.name == null) {
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../src/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAGjF,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAAE,KAAe,EAAE,IAA2B,EAAE,EAAE;IAC/E,IAAI,MAAM,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC;YACtC,MAAM,IAAI,sBAAsB,CAAC,QAAQ,CAAC,CAAA;QAC5C,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,IAAI,OAAO,CAAA;IAClC,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAC1B,IAAI,IAAI,EAAE,eAAe,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAc;QACxB,KAAK;QAEL,QAAQ,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;YACrB,MAAM,QAAQ,GAAG,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;YAEtD,MAAM,IAAI,GAAG;gBACX,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,QAAQ,CAAC;gBAC3C,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAC1C,MAAM,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,CAAA;QAC7D,CAAC;QAED,QAAQ,EAAE,KAAK,EAAC,KAAK,EAAC,EAAE;YACtB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YAC7C,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;gBACxB,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,IAAI,cAAc,CAAC,UAAU,CAAC,CAAA;gBACtC,CAAC;gBACD,OAAO,KAAK,CAAA;YACd,CAAC;YAED,OAAO,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC/C,CAAC;QAED,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEnE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YACvB,IAAI,GAAG,CAAC,OAAO,IAAI,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;gBAC1D,MAAM,IAAI,cAAc,CAAC,mBAAmB,CAAC,CAAA;YAC/C,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAA;YACzD,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,MAAM,IAAI,cAAc,CAAC,YAAY,CAAC,CAAA;YACxC,CAAC;YACD,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,aAAa,EAAE,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;YACpE,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC,CAAA;QAC/D,CAAC;QAED,IAAI,EAAE,KAAK,EAAC,GAAG,EAAC,EAAE;YAChB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,IAAI,IAAI,IAAI,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBACvC,MAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAA;gBACpC,CAAC;gBAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC;YAED,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAA;QACzC,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAC1B,IAAI,GAAG,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;gBACxB,MAAM,IAAI,cAAc,CAAC,mBAAmB,CAAC,CAAA;YAC/C,CAAC;YACD,MAAM,GAAG,GAAG,GAAG,CAAC,aAAa,EAAE,CAAA;YAC/B,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;YACpE,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YAE9D,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,CAAA;QACjD,CAAC;QAED,GAAG,EAAE,KAAK,EAAC,GAAG,EAAC,EAAE;YACf,IAAI,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;gBACvC,MAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAA;YACpC,CAAC;YACD,OAAO,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;QACnD,CAAC;QAED,IAAI,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;YACjB,MAAM,KAAK,GAA4B,MAAM,CAAC,WAAW,CACvD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,SAAS,CAAC,CAChE,CAAA;YACD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAE3C,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;iBAC9E,GAAG,CAAC,KAAK,EAAC,IAAI,EAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YAE9C,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;QAC9C,CAAC;QAED,OAAO,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;YACpB,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACrC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;gBAC7B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,EAAE,CAAA;gBACpC,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBAC/B,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;oBACtB,MAAM,IAAI,WAAW,CAAC,SAAS,CAAC,CAAA;gBAClC,CAAC;gBACD,MAAM,UAAU,GAAY;oBAC1B,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI;iBAC7D,CAAA;gBACD,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;gBAEjC,OAAO,CAAC,GAAG,CAAC,CAAA;YACd,CAAC;YAED,OAAO,KAAK,CAAA;QACd,CAAC;QAED,MAAM,EAAE,KAAK,EAAC,GAAG,EAAC,EAAE;YAClB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;oBACrB,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAA;gBAC3C,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAc,CAAC,CAAA;gBAC9C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAA8B,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;oBAC1E,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBAC3B,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;gBACzB,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;oBAChB,MAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAA;gBACpC,CAAC;gBACD,OAAO,GAAG,CAAA;YACZ,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACtC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;gBAChB,MAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAA;YACpC,CAAC;YACD,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAC5B,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,CAAA;YAClC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAA;YAE9C,OAAO,KAAK,CAAA;QACd,CAAC;QAED,GAAG,EAAE,KAAK,IAAI,EAAE;YACd,MAAM,MAAM,GAAoB,EAAE,CAAA;YAClC,IAAI,IAAI,GAAG,KAAK,CAAA;YAChB,GAAG,CAAC;gBACF,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;gBACpG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;gBAC3B,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAA;YAC9D,CAAC,QAAQ,IAAI,EAAC;YAEd,OAAO,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;QAChD,CAAC;QAED,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,MAAM,MAAM,GAAc,EAAE,CAAA;YAC5B,IAAI,IAAI,GAAG,KAAK,CAAA;YAChB,GAAG,CAAC;gBACF,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;gBACpG,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;gBAC3B,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAA;YAC9D,CAAC,QAAQ,IAAI,EAAC;YAEd,OAAO,MAAM,CAAA;QACf,CAAC;KACF,CAAA;IAED,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC;QAChB,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACtC,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA"}
1
+ {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../src/wallet.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@owlmeans/did",
3
- "version": "0.1.18-rc.45",
3
+ "version": "0.1.18-rc.46",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -24,11 +24,11 @@
24
24
  "dependencies": {
25
25
  "@noble/curves": "^2.4.0",
26
26
  "@noble/hashes": "^2.4.0",
27
- "@owlmeans/auth": "^0.1.18-rc.39",
28
- "@owlmeans/basic-keys": "^0.1.18-rc.47",
29
- "@owlmeans/error": "^0.1.18-rc.37",
30
- "@owlmeans/i18n": "^0.1.18-rc.38",
31
- "@owlmeans/resource": "^0.1.18-rc.39",
27
+ "@owlmeans/auth": "^0.1.18-rc.40",
28
+ "@owlmeans/basic-keys": "^0.1.18-rc.48",
29
+ "@owlmeans/error": "^0.1.18-rc.38",
30
+ "@owlmeans/i18n": "^0.1.18-rc.39",
31
+ "@owlmeans/resource": "^0.1.18-rc.40",
32
32
  "@scure/base": "^2.4.0",
33
33
  "@scure/bip39": "^2.4.0"
34
34
  },
package/src/i18n.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { addI18nLib } from '@owlmeans/i18n'
1
+
2
2
 
3
3
  import en from './i18n/en.json' with { type: 'json' }
4
4
  import pl from './i18n/pl.json' with { type: 'json' }
@@ -17,21 +17,22 @@ import walletUk from './i18n/wallet-uk.json' with { type: 'json' }
17
17
  import walletEs from './i18n/wallet-es.json' with { type: 'json' }
18
18
  import walletDe from './i18n/wallet-de.json' with { type: 'json' }
19
19
  import walletFr from './i18n/wallet-fr.json' with { type: 'json' }
20
+ import { i18nHelper } from '@owlmeans/i18n'
20
21
 
21
- addI18nLib('en', 'keys', en, { ns: 'did' })
22
- addI18nLib('pl', 'keys', pl, { ns: 'did' })
23
- addI18nLib('ru', 'keys', ru, { ns: 'did' })
24
- addI18nLib('be', 'keys', be, { ns: 'did' })
25
- addI18nLib('uk', 'keys', uk, { ns: 'did' })
26
- addI18nLib('es', 'keys', es, { ns: 'did' })
27
- addI18nLib('de', 'keys', de, { ns: 'did' })
28
- addI18nLib('fr', 'keys', fr, { ns: 'did' })
22
+ i18nHelper.addI18nLib('en', 'keys', en, { ns: 'did' })
23
+ i18nHelper.addI18nLib('pl', 'keys', pl, { ns: 'did' })
24
+ i18nHelper.addI18nLib('ru', 'keys', ru, { ns: 'did' })
25
+ i18nHelper.addI18nLib('be', 'keys', be, { ns: 'did' })
26
+ i18nHelper.addI18nLib('uk', 'keys', uk, { ns: 'did' })
27
+ i18nHelper.addI18nLib('es', 'keys', es, { ns: 'did' })
28
+ i18nHelper.addI18nLib('de', 'keys', de, { ns: 'did' })
29
+ i18nHelper.addI18nLib('fr', 'keys', fr, { ns: 'did' })
29
30
 
30
- addI18nLib('en', 'wallet', walletEn, { ns: 'did' })
31
- addI18nLib('pl', 'wallet', walletPl, { ns: 'did' })
32
- addI18nLib('ru', 'wallet', walletRu, { ns: 'did' })
33
- addI18nLib('be', 'wallet', walletBe, { ns: 'did' })
34
- addI18nLib('uk', 'wallet', walletUk, { ns: 'did' })
35
- addI18nLib('es', 'wallet', walletEs, { ns: 'did' })
36
- addI18nLib('de', 'wallet', walletDe, { ns: 'did' })
37
- addI18nLib('fr', 'wallet', walletFr, { ns: 'did' })
31
+ i18nHelper.addI18nLib('en', 'wallet', walletEn, { ns: 'did' })
32
+ i18nHelper.addI18nLib('pl', 'wallet', walletPl, { ns: 'did' })
33
+ i18nHelper.addI18nLib('ru', 'wallet', walletRu, { ns: 'did' })
34
+ i18nHelper.addI18nLib('be', 'wallet', walletBe, { ns: 'did' })
35
+ i18nHelper.addI18nLib('uk', 'wallet', walletUk, { ns: 'did' })
36
+ i18nHelper.addI18nLib('es', 'wallet', walletEs, { ns: 'did' })
37
+ i18nHelper.addI18nLib('de', 'wallet', walletDe, { ns: 'did' })
38
+ i18nHelper.addI18nLib('fr', 'wallet', walletFr, { ns: 'did' })
package/src/model.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  import { makeKeyPairModel, plugins, type KeyPair } from '@owlmeans/basic-keys'
2
2
  import type { DIDKeyModel } from './types.js'
3
3
  import { DIDKeyError } from './errors.js'
4
- import { assertType, prepareKey } from '@owlmeans/basic-keys/utils'
4
+ import { keyUtils } from '@owlmeans/basic-keys/utils'
5
5
  import { base64 } from '@scure/base'
6
6
  import { KP_SEP, MAX_DEPTH } from './consts.js'
7
7
 
8
- export const makeDidKeyModel: (input?: KeyPair | string) => DIDKeyModel = input => {
8
+ export const makeDidKeyModel = (input?: KeyPair | string): DIDKeyModel => {
9
9
  if (typeof input == 'string') {
10
10
  const plugin = plugins[input]
11
11
  if (plugin != null && (plugin.fromSeed == null || plugin.derive == null)) {
@@ -18,7 +18,7 @@ export const makeDidKeyModel: (input?: KeyPair | string) => DIDKeyModel = input
18
18
  if (model.keyPair == null) {
19
19
  throw new DIDKeyError('no:keypair')
20
20
  }
21
- assertType(model.keyPair?.type)
21
+ keyUtils.assertType(model.keyPair?.type)
22
22
  if (model.keyPair.privateKey == null) {
23
23
  throw new DIDKeyError('no:pk')
24
24
  }
@@ -35,7 +35,7 @@ export const makeDidKeyModel: (input?: KeyPair | string) => DIDKeyModel = input
35
35
  }
36
36
 
37
37
  const newKey = [model.keyPair.type, base64.encode(
38
- plugins[model.keyPair.type].derive!(prepareKey(model.keyPair.privateKey), item)
38
+ plugins[model.keyPair.type].derive!(keyUtils.prepareKey(model.keyPair.privateKey), item)
39
39
  )].join(':')
40
40
 
41
41
  const derived = makeDidKeyModel(newKey)
@@ -1,4 +1,6 @@
1
1
 
2
+ export type * from './types.js'
3
+ export type * from './mnemonic/types.js'
2
4
  export * from './mnemonic.js'
3
5
  export * from './key.js'
4
6
  export * from '../utils.js'
package/src/utils/key.ts CHANGED
@@ -1,16 +1,16 @@
1
1
 
2
- import { assertType } from '@owlmeans/basic-keys/utils'
2
+ import { keyUtils } from '@owlmeans/basic-keys/utils'
3
3
  import { KEY_OWL } from '../consts.js'
4
4
  import { base64 } from '@scure/base'
5
5
  import { plugins } from '../plugins/index.js'
6
6
  import { DIDKeyError } from '../errors.js'
7
7
  import type { DIDKeyPair } from '../types.js'
8
8
 
9
- export const produceKey = (seed: string | Uint8Array, type: string = KEY_OWL) => {
9
+ export const produceKey = (seed: string | Uint8Array, type: string = KEY_OWL): DIDKeyPair => {
10
10
  if (typeof seed === 'string') {
11
11
  seed = base64.decode(seed)
12
12
  }
13
- assertType(type)
13
+ keyUtils.assertType(type)
14
14
 
15
15
  if (plugins[type].fromSeed == null) {
16
16
  throw new DIDKeyError(`non-derivable:${type}`)
@@ -0,0 +1,13 @@
1
+ import type { MnemonicOptions } from '../../types.js'
2
+
3
+ /** BIP-39 mnemonics: generation and the seed and entropy derived from them. */
4
+ export interface MnemonicHelper {
5
+ /** A new mnemonic of `opts.size` words (12–24, default 18). @throws {SyntaxError} outside that range */
6
+ generateMnemonic: (opts?: MnemonicOptions) => string
7
+ /** The BIP-39 seed of a mnemonic, base64. */
8
+ toSeed: (mnemonic: string) => string
9
+ /** The BIP-39 seed of a mnemonic, hex. */
10
+ toEntropy: (mnemonic: string) => string
11
+ /** The mnemonic of hex entropy. */
12
+ toMnemonic: (seed: string) => string
13
+ }
@@ -2,27 +2,30 @@ import type { MnemonicOptions } from '../types.js'
2
2
  import { generateMnemonic as generate, mnemonicToSeedSync, entropyToMnemonic } from '@scure/bip39'
3
3
  import { hex, base64 } from '@scure/base'
4
4
  import { wordlist } from '@scure/bip39/wordlists/english.js'
5
+ import type { MnemonicHelper } from './mnemonic/types.js'
5
6
 
6
- const generateMnemonic = (opts?: MnemonicOptions): string => {
7
- const size = opts?.size ?? 18
7
+ export const createMnemonicHelper = (): MnemonicHelper => {
8
+ const generateMnemonic = (opts?: MnemonicOptions): string => {
9
+ const size = opts?.size ?? 18
8
10
 
9
- if (size < 12 || size > 24) {
10
- throw new SyntaxError('Mnemonic size should be between 12 and 24')
11
- }
11
+ if (size < 12 || size > 24) {
12
+ throw new SyntaxError('Mnemonic size should be between 12 and 24')
13
+ }
12
14
 
13
- const strength = Math.round(256 * size / 24)
14
- return generate(wordlist as any, strength + (32 - strength % 32))
15
- }
15
+ const strength = Math.round(256 * size / 24)
16
+ return generate(wordlist as any, strength + (32 - strength % 32))
17
+ }
16
18
 
17
- const toSeed = (mnemonic: string): string =>
18
- base64.encode(mnemonicToSeedSync(mnemonic))
19
+ const toSeed = (mnemonic: string): string =>
20
+ base64.encode(mnemonicToSeedSync(mnemonic))
19
21
 
20
- const toEntropy = (mnemonic: string): string =>
21
- hex.encode(mnemonicToSeedSync(mnemonic))
22
+ const toEntropy = (mnemonic: string): string =>
23
+ hex.encode(mnemonicToSeedSync(mnemonic))
22
24
 
23
- const toMnemonic = (seed: string): string =>
24
- entropyToMnemonic(hex.decode(seed), wordlist as any)
25
+ const toMnemonic = (seed: string): string =>
26
+ entropyToMnemonic(hex.decode(seed), wordlist as any)
25
27
 
26
- export const createMnemonicHelper = () => ({ generateMnemonic, toSeed, toEntropy, toMnemonic })
28
+ return { generateMnemonic, toSeed, toEntropy, toMnemonic }
29
+ }
27
30
 
28
31
  export const mnemonicHelper = createMnemonicHelper()
@@ -1,3 +1,11 @@
1
- import type { createMnemonicHelper } from './mnemonic.js'
1
+ import type { KeyMeta } from '../types.js'
2
2
 
3
- export type MnemonicHelper = ReturnType<typeof createMnemonicHelper>
3
+ /** Wallet key paths composed from key metadata. */
4
+ export interface KeyPathUtils {
5
+ /** Join path items with the key-path separator; an array item is joined with the prefix one. */
6
+ toPath: (...args: (string | string[])[]) => string
7
+ /** The derivation path of a key described by its metadata: service, entity, profile. */
8
+ mataToPath: (meta: Partial<KeyMeta>) => string
9
+ /** Whether a key's metadata carries every field the needle asks for (`name` is ignored). */
10
+ matchMeta: (haystack: KeyMeta, needle: Partial<KeyMeta>) => boolean
11
+ }
package/src/utils.ts CHANGED
@@ -1,33 +1,40 @@
1
1
  import { ENTITY_PREFIX, KP_SEP, PREFIX_SEP, PROFILE_PREFIX, SERVICE_PREFIX } from './consts.js'
2
2
  import type { KeyMeta } from './types.js'
3
3
  import { skipFields } from './consts.local.js'
4
+ import type { KeyPathUtils } from './utils/types.js'
4
5
 
5
- export const toPath = (...args: (string | string[])[]) => args.map(
6
- arg => Array.isArray(arg) ? arg.join(PREFIX_SEP) : arg
7
- ).join(KP_SEP)
6
+ export const createKeyPathUtils = (): KeyPathUtils => {
7
+ const toPath = (...args: (string | string[])[]): string => args.map(
8
+ arg => Array.isArray(arg) ? arg.join(PREFIX_SEP) : arg
9
+ ).join(KP_SEP)
8
10
 
9
- export const mataToPath = (meta: Partial<KeyMeta>): string => {
10
- const { scopes, id, entityId } = meta
11
- const items: (string | string[])[] = []
12
- if (scopes != null && scopes.length === 1) {
13
- items.push([SERVICE_PREFIX, scopes[0]])
14
- }
15
- if (entityId != null) {
16
- items.push([ENTITY_PREFIX, entityId])
17
- }
18
- if (id != null) {
19
- items.push([PROFILE_PREFIX, id])
11
+ const mataToPath = (meta: Partial<KeyMeta>): string => {
12
+ const { scopes, id, entityId } = meta
13
+ const items: (string | string[])[] = []
14
+ if (scopes != null && scopes.length === 1) {
15
+ items.push([SERVICE_PREFIX, scopes[0]])
16
+ }
17
+ if (entityId != null) {
18
+ items.push([ENTITY_PREFIX, entityId])
19
+ }
20
+ if (id != null) {
21
+ items.push([PROFILE_PREFIX, id])
22
+ }
23
+
24
+ return toPath(...items)
20
25
  }
21
26
 
22
- return toPath(...items)
27
+ const matchMeta = (haystack: KeyMeta, needle: Partial<KeyMeta>): boolean =>
28
+ Object.entries(needle).every(([key, value]) =>
29
+ skipFields.includes(key)
30
+ || (haystack[key as keyof typeof haystack] != null
31
+ && (Array.isArray(value)
32
+ ? Array.isArray(haystack[key as keyof typeof haystack])
33
+ && value.every(value => (haystack[key as keyof typeof haystack] as unknown[]).includes(value))
34
+ : haystack[key as keyof typeof haystack] === value)
35
+ ))
36
+
37
+ return { toPath, mataToPath, matchMeta }
23
38
  }
24
39
 
25
- export const matchMeta = (haystack: KeyMeta, needle: Partial<KeyMeta>): boolean =>
26
- Object.entries(needle).every(([key, value]) =>
27
- skipFields.includes(key)
28
- || (haystack[key as keyof typeof haystack] != null
29
- && (Array.isArray(value)
30
- ? Array.isArray(haystack[key as keyof typeof haystack])
31
- && value.every(value => (haystack[key as keyof typeof haystack] as unknown[]).includes(value))
32
- : haystack[key as keyof typeof haystack] === value)
33
- ))
40
+ export const keyPathUtils = createKeyPathUtils()
package/src/wallet.ts CHANGED
@@ -6,10 +6,10 @@ import { plugins } from './plugins/index.js'
6
6
  import { ed25519owlPluginBuilder } from './plugins/ed25519owl.js'
7
7
  import { produceKey } from './utils/key.js'
8
8
  import { makeDidKeyModel } from './model.js'
9
- import { mataToPath, matchMeta } from './utils.js'
9
+ import { keyPathUtils } from './utils.js'
10
10
  import { mnemonicHelper } from './utils/mnemonic.js'
11
11
 
12
- export const makeWallet = async (store: DIDStore, opts?: MakeDIDWalletOptions) => {
12
+ export const makeWallet = async (store: DIDStore, opts?: MakeDIDWalletOptions): Promise<DIDWallet> => {
13
13
  if (await store.master.load(MASTER) == null) {
14
14
  if (!opts?.force && !opts?.allowEmpty) {
15
15
  throw new DIDInitializationError('master')
@@ -100,7 +100,7 @@ export const makeWallet = async (store: DIDStore, opts?: MakeDIDWalletOptions) =
100
100
  )
101
101
  const result = await store.meta.list(where)
102
102
 
103
- const keys = await Promise.all(result.items.filter(item => matchMeta(item, meta))
103
+ const keys = await Promise.all(result.items.filter(item => keyPathUtils.matchMeta(item, meta))
104
104
  .map(async meta => store.keys.get(meta.id)))
105
105
 
106
106
  return keys.map(key => makeDidKeyModel(key))
@@ -109,7 +109,7 @@ export const makeWallet = async (store: DIDStore, opts?: MakeDIDWalletOptions) =
109
109
  provide: async meta => {
110
110
  const found = await wallet.find(meta)
111
111
  if (found.length === 0) {
112
- const path = mataToPath(meta)
112
+ const path = keyPathUtils.mataToPath(meta)
113
113
  const master = await wallet.master()
114
114
  const key = master.derive(path)
115
115
  if (meta.name == null) {