signify-ts 0.1.1 → 0.2.1

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 (115) hide show
  1. package/README.md +96 -47
  2. package/dist/buffer-polyfill.d.ts +1 -0
  3. package/dist/exports.d.ts +40 -0
  4. package/dist/index.d.ts +4 -3
  5. package/dist/keri/app/aiding.d.ts +138 -0
  6. package/dist/keri/app/clienting.d.ts +182 -0
  7. package/dist/keri/app/contacting.d.ts +93 -0
  8. package/dist/keri/app/controller.d.ts +49 -0
  9. package/dist/keri/app/coring.d.ts +121 -0
  10. package/dist/keri/app/credentialing.d.ts +245 -0
  11. package/dist/keri/app/escrowing.d.ts +19 -0
  12. package/dist/keri/app/exchanging.d.ts +60 -0
  13. package/dist/keri/app/grouping.d.ts +44 -0
  14. package/dist/keri/app/habery.d.ts +48 -47
  15. package/dist/keri/app/notifying.d.ts +34 -0
  16. package/dist/keri/core/authing.d.ts +10 -9
  17. package/dist/keri/core/bexter.d.ts +7 -0
  18. package/dist/keri/core/cigar.d.ts +8 -8
  19. package/dist/keri/core/cipher.d.ts +5 -5
  20. package/dist/keri/core/core.d.ts +59 -53
  21. package/dist/keri/core/counter.d.ts +43 -43
  22. package/dist/keri/core/decrypter.d.ts +10 -10
  23. package/dist/keri/core/diger.d.ts +21 -21
  24. package/dist/keri/core/encrypter.d.ts +9 -9
  25. package/dist/keri/core/eventing.d.ts +54 -21
  26. package/dist/keri/core/httping.d.ts +44 -34
  27. package/dist/keri/core/indexer.d.ts +98 -88
  28. package/dist/keri/core/keeping.d.ts +103 -1
  29. package/dist/keri/core/kering.d.ts +5 -5
  30. package/dist/keri/core/manager.d.ts +174 -172
  31. package/dist/keri/core/matter.d.ts +116 -69
  32. package/dist/keri/core/number.d.ts +7 -6
  33. package/dist/keri/core/pather.d.ts +7 -0
  34. package/dist/keri/core/prefixer.d.ts +15 -15
  35. package/dist/keri/core/saider.d.ts +23 -23
  36. package/dist/keri/core/salter.d.ts +23 -23
  37. package/dist/keri/core/seqner.d.ts +15 -0
  38. package/dist/keri/core/serder.d.ts +31 -23
  39. package/dist/keri/core/siger.d.ts +18 -18
  40. package/dist/keri/core/signer.d.ts +34 -34
  41. package/dist/keri/core/tholder.d.ts +29 -14
  42. package/dist/keri/core/utils.d.ts +20 -15
  43. package/dist/keri/core/vdring.d.ts +16 -0
  44. package/dist/keri/core/verfer.d.ts +13 -12
  45. package/dist/keri/end/ending.d.ts +13 -13
  46. package/dist/math.d.ts +1 -0
  47. package/dist/ready.d.ts +1 -0
  48. package/dist/signify-ts.cjs +7842 -0
  49. package/dist/signify-ts.cjs.development.js +6369 -256
  50. package/dist/signify-ts.cjs.development.js.map +1 -1
  51. package/dist/signify-ts.cjs.map +7 -0
  52. package/dist/signify-ts.cjs.production.min.js +1 -1
  53. package/dist/signify-ts.cjs.production.min.js.map +1 -1
  54. package/dist/signify-ts.esm.js +6205 -229
  55. package/dist/signify-ts.esm.js.map +1 -1
  56. package/dist/signify-ts.mjs +7818 -0
  57. package/dist/signify-ts.mjs.map +7 -0
  58. package/package.json +49 -49
  59. package/src/buffer-polyfill.ts +5 -0
  60. package/src/exports.ts +44 -0
  61. package/src/index.ts +4 -5
  62. package/src/keri/app/aiding.ts +493 -0
  63. package/src/keri/app/clienting.ts +492 -0
  64. package/src/keri/app/contacting.ts +188 -0
  65. package/src/keri/app/controller.ts +372 -0
  66. package/src/keri/app/coring.ts +225 -0
  67. package/src/keri/app/credentialing.ts +841 -0
  68. package/src/keri/app/escrowing.ts +34 -0
  69. package/src/keri/app/exchanging.ts +220 -0
  70. package/src/keri/app/grouping.ts +90 -0
  71. package/src/keri/app/habery.ts +118 -85
  72. package/src/keri/app/notifying.ts +69 -0
  73. package/src/keri/core/authing.ts +73 -85
  74. package/src/keri/core/bexter.ts +138 -0
  75. package/src/keri/core/cigar.ts +10 -11
  76. package/src/keri/core/cipher.ts +23 -14
  77. package/src/keri/core/core.ts +223 -81
  78. package/src/keri/core/counter.ts +182 -116
  79. package/src/keri/core/decrypter.ts +48 -34
  80. package/src/keri/core/diger.ts +23 -22
  81. package/src/keri/core/encrypter.ts +37 -27
  82. package/src/keri/core/eventing.ts +468 -106
  83. package/src/keri/core/httping.ts +151 -105
  84. package/src/keri/core/indexer.ts +313 -211
  85. package/src/keri/core/keeping.ts +679 -3
  86. package/src/keri/core/kering.ts +4 -6
  87. package/src/keri/core/manager.ts +660 -499
  88. package/src/keri/core/matter.ts +382 -148
  89. package/src/keri/core/number.ts +56 -11
  90. package/src/keri/core/pather.ts +98 -0
  91. package/src/keri/core/prefixer.ts +122 -101
  92. package/src/keri/core/saider.ts +104 -76
  93. package/src/keri/core/salter.ts +71 -40
  94. package/src/keri/core/seqner.ts +46 -0
  95. package/src/keri/core/serder.ts +102 -38
  96. package/src/keri/core/siger.ts +19 -18
  97. package/src/keri/core/signer.ts +73 -53
  98. package/src/keri/core/tholder.ts +196 -30
  99. package/src/keri/core/utils.ts +121 -50
  100. package/src/keri/core/vdring.ts +94 -0
  101. package/src/keri/core/verfer.ts +22 -9
  102. package/src/keri/end/ending.ts +111 -101
  103. package/src/math.ts +3 -0
  104. package/src/ready.ts +5 -0
  105. package/dist/keri/app/accountant.d.ts +0 -10
  106. package/dist/keri/app/apping.d.ts +0 -1
  107. package/dist/keri/app/client.d.ts +0 -7
  108. package/dist/keri/app/signify.d.ts +0 -6
  109. package/src/keri/app/accountant.ts +0 -35
  110. package/src/keri/app/apping.ts +0 -12
  111. package/src/keri/app/client.ts +0 -30
  112. package/src/keri/app/signify.ts +0 -12
  113. package/src/keri/app/tsconfig.json +0 -100
  114. package/src/keri/core/tsconfig.json +0 -100
  115. package/src/keri/end/tsconfig.json +0 -100
@@ -1,21 +1,66 @@
1
+ import { Matter, MatterArgs, NumDex } from './matter';
2
+ import { bytesToInt, intToBytes } from './utils';
1
3
 
2
- export class PNumber {
3
- private readonly _num: number = 0;
4
- constructor(num?: number | string, numh?: string) {
5
- // TODO: Implelment logic
6
- if (typeof(num) == "number") {
7
- this._num = num
8
- } else if (numh != undefined) {
9
- this._num = parseInt(numh, 16)
4
+ export class CesrNumber extends Matter {
5
+ constructor(
6
+ { raw, code, qb64b, qb64, qb2 }: MatterArgs,
7
+ num?: number | string,
8
+ numh?: string
9
+ ) {
10
+ let _num;
11
+ if (
12
+ raw == undefined &&
13
+ qb64 == undefined &&
14
+ qb64b == undefined &&
15
+ qb2 == undefined
16
+ ) {
17
+ if (typeof num == 'number') {
18
+ _num = num;
19
+ } else if (numh != undefined) {
20
+ _num = parseInt(numh, 16);
21
+ } else {
22
+ _num = 0;
23
+ }
10
24
  }
11
25
 
26
+ if (_num == undefined) {
27
+ throw new Error('Invalid whole number');
28
+ }
29
+
30
+ if (_num <= 256 ** 2 - 1) {
31
+ // make short version of code
32
+ code = NumDex.Short;
33
+ } else if (_num <= 256 ** 4 - 1) {
34
+ // make long version of code
35
+ code = code = NumDex.Long;
36
+ } else if (_num <= 256 ** 8 - 1) {
37
+ // make big version of code
38
+ code = code = NumDex.Big;
39
+ } else if (_num <= 256 ** 16 - 1) {
40
+ // make huge version of code
41
+ code = code = NumDex.Huge;
42
+ } else {
43
+ throw new Error('Invalid num = {num}, too large to encode.');
44
+ }
45
+
46
+ raw = intToBytes(_num, Matter._rawSize(code));
47
+
48
+ super({ raw, code, qb64b, qb64, qb2 });
49
+
50
+ if (!NumDex.has(this.code)) {
51
+ throw new Error('Invalid code ' + code + ' for Number');
52
+ }
12
53
  }
13
54
 
14
55
  get num(): number {
15
- return this._num;
56
+ return bytesToInt(this.raw);
16
57
  }
17
58
 
18
59
  get numh(): string {
19
- return this._num.toString(16)
60
+ return this.num.toString(16);
61
+ }
62
+
63
+ get positive(): boolean {
64
+ return this.num > 0;
20
65
  }
21
- }
66
+ }
@@ -0,0 +1,98 @@
1
+ import { Bexter, Reb64 } from './bexter';
2
+ import { MatterArgs, MtrDex } from './matter';
3
+ import { EmptyMaterialError } from './kering';
4
+
5
+ /*
6
+ Pather is a subclass of Bexter that provides SAD Path language specific functionality
7
+ for variable length strings that only contain Base64 URL safe characters. Pather allows
8
+ the specification of SAD Paths as a list of field components which will be converted to the
9
+ Base64 URL safe character representation.
10
+
11
+ Additionally, Pather provides .rawify for extracting and serializing the content targeted by
12
+ .path for a SAD, represented as an instance of Serder. Pather enforces Base64 URL character
13
+ safety by leveraging the fact that SADs must have static field ordering. Any field label can
14
+ be replaced by its field ordinal to allow for path specification and traversal for any field
15
+ labels that contain non-Base64 URL safe characters.
16
+
17
+
18
+ Examples: strings:
19
+ path = []
20
+ text = "-"
21
+ qb64 = '6AABAAA-'
22
+
23
+ path = ["A"]
24
+ text = "-A"
25
+ qb64 = '5AABAA-A'
26
+
27
+ path = ["A", "B"]
28
+ text = "-A-B"
29
+ qb64 = '4AAB-A-B'
30
+
31
+ path = ["A", 1, "B", 3]
32
+ text = "-A-1-B-3"
33
+ qb64 = '4AAC-A-1-B-3'
34
+
35
+ */
36
+
37
+ export class Pather extends Bexter {
38
+ constructor(
39
+ { raw, code = MtrDex.StrB64_L0, qb64b, qb64, qb2 }: MatterArgs,
40
+ bext?: string,
41
+ path?: string[]
42
+ ) {
43
+ if (
44
+ raw === undefined &&
45
+ bext === undefined &&
46
+ qb64b === undefined &&
47
+ qb64 === undefined &&
48
+ qb2 === undefined
49
+ ) {
50
+ if (path === undefined)
51
+ throw new EmptyMaterialError('Missing bext string.');
52
+
53
+ bext = Pather._bextify(path);
54
+ }
55
+
56
+ super({ raw, code, qb64b, qb64, qb2 }, bext);
57
+ }
58
+
59
+ // TODO: implement SAD access methods like resolve, root, strip, startswith and tail
60
+
61
+ get path(): string[] {
62
+ if (!this.bext.startsWith('-')) {
63
+ throw new Error('invalid SAD ptr');
64
+ }
65
+
66
+ let path = this.bext;
67
+ while (path.charAt(0) === '-') {
68
+ path = path.substring(1);
69
+ }
70
+
71
+ const apath = path.split('-');
72
+ if (apath[0] !== '') {
73
+ return apath;
74
+ } else {
75
+ return [];
76
+ }
77
+ }
78
+
79
+ static _bextify(path: any[]): string {
80
+ const vath = [];
81
+ for (const p of path) {
82
+ let sp = '';
83
+ if (typeof p === 'number') {
84
+ sp = p.toString();
85
+ } else {
86
+ sp = p;
87
+ }
88
+
89
+ const match = Reb64.exec(sp);
90
+ if (!match) {
91
+ throw new Error(`"Non Base64 path component = ${p}.`);
92
+ }
93
+
94
+ vath.push(sp);
95
+ }
96
+ return '-' + vath.join('-');
97
+ }
98
+ }
@@ -1,212 +1,233 @@
1
- import {Matter, MatterArgs, MtrDex} from "./matter";
2
- import {EmptyMaterialError} from "./kering";
3
- import {Dict, Ilks} from "./core";
4
- import {sizeify} from "./serder";
5
- import {Verfer} from "./verfer";
1
+ import { Matter, MatterArgs, MtrDex } from './matter';
2
+ import { EmptyMaterialError } from './kering';
3
+ import { Dict, Ilks } from './core';
4
+ import { sizeify } from './serder';
5
+ import { Verfer } from './verfer';
6
6
 
7
- import {createHash} from "blake3"
8
-
9
- const Dummy: string = "#"
7
+ import { blake3 } from '@noble/hashes/blake3';
10
8
 
9
+ const Dummy: string = '#';
11
10
 
12
11
  export class Prefixer extends Matter {
13
- private readonly _derive: Function | undefined
14
- private readonly _verify: Function | undefined
12
+ private readonly _derive: Function | undefined;
13
+ private readonly _verify: Function | undefined;
15
14
 
16
- constructor({raw, code, qb64b, qb64, qb2}: MatterArgs, ked?: Dict<any>) {
15
+ constructor({ raw, code, qb64b, qb64, qb2 }: MatterArgs, ked?: Dict<any>) {
17
16
  try {
18
- super({raw, code, qb64b, qb64, qb2});
17
+ super({ raw, code, qb64b, qb64, qb2 });
19
18
  } catch (e) {
20
19
  if (e instanceof EmptyMaterialError) {
21
- if (ked == undefined || (code == undefined && !("i" in ked))) {
22
- throw e
20
+ if (ked == undefined || (code == undefined && !('i' in ked))) {
21
+ throw e;
23
22
  }
24
23
 
25
24
  if (code == undefined) {
26
- super({qb64: ked['i'], code: code})
27
- code = this.code
25
+ super({ qb64: ked['i'], code: code });
26
+ code = this.code;
28
27
  }
29
28
 
30
- let _derive
29
+ let _derive;
31
30
  if (code == MtrDex.Ed25519N) {
32
- _derive = Prefixer._derive_ed25519N
31
+ _derive = Prefixer._derive_ed25519N;
33
32
  } else if (code == MtrDex.Ed25519) {
34
- _derive = Prefixer._derive_ed25519
33
+ _derive = Prefixer._derive_ed25519;
35
34
  } else if (code == MtrDex.Blake3_256) {
36
- _derive = Prefixer._derive_blake3_256
35
+ _derive = Prefixer._derive_blake3_256;
37
36
  } else {
38
- throw new Error(`Unsupported code = ${code} for prefixer.`)
37
+ throw new Error(`Unsupported code = ${code} for prefixer.`);
39
38
  }
40
39
 
41
- [raw, code] = _derive(ked)
42
- super({raw: raw, code: code})
43
- this._derive = _derive
40
+ [raw, code] = _derive(ked);
41
+ super({ raw: raw, code: code });
42
+ this._derive = _derive;
44
43
  } else {
45
- throw e
44
+ throw e;
46
45
  }
47
46
  }
48
47
 
49
48
  if (this.code == MtrDex.Ed25519N) {
50
- this._verify = this._verify_ed25519N
49
+ this._verify = this._verify_ed25519N;
51
50
  } else if (this.code == MtrDex.Ed25519) {
52
- this._verify = this._verify_ed25519
51
+ this._verify = this._verify_ed25519;
53
52
  } else if (this.code == MtrDex.Blake3_256) {
54
- this._verify = this._verify_blake3_256
53
+ this._verify = this._verify_blake3_256;
55
54
  } else {
56
- throw new Error(`Unsupported code = ${code} for prefixer.`)
55
+ throw new Error(`Unsupported code = ${code} for prefixer.`);
57
56
  }
58
-
59
57
  }
60
58
 
61
59
  derive(ked: Dict<any>): [Uint8Array, string] {
62
- if (ked["i"] != Ilks.icp) {
63
- throw new Error(`Non-incepting ilk ${ked['i']} for prefix derivation`)
60
+ if (ked['i'] != Ilks.icp) {
61
+ throw new Error(
62
+ `Non-incepting ilk ${ked['i']} for prefix derivation`
63
+ );
64
64
  }
65
- return this._derive!(ked)
65
+ return this._derive!(ked);
66
66
  }
67
67
 
68
68
  verify(ked: Dict<any>, prefixed: boolean = false): boolean {
69
- if (ked["i"] != Ilks.icp) {
70
- throw new Error(`Non-incepting ilk ${ked['i']} for prefix derivation`)
69
+ if (ked['i'] != Ilks.icp) {
70
+ throw new Error(
71
+ `Non-incepting ilk ${ked['i']} for prefix derivation`
72
+ );
71
73
  }
72
- return this._verify!(ked, this.qb64, prefixed)
74
+ return this._verify!(ked, this.qb64, prefixed);
73
75
  }
74
76
 
75
-
76
77
  static _derive_ed25519N(ked: Dict<any>): [Uint8Array, string] {
77
- let verfer
78
- let keys = ked["k"]
78
+ let verfer;
79
+ const keys = ked['k'];
79
80
  if (keys.length != 1) {
80
- throw new Error(`Basic derivation needs at most 1 key got ${keys.length} keys instead`)
81
+ throw new Error(
82
+ `Basic derivation needs at most 1 key got ${keys.length} keys instead`
83
+ );
81
84
  }
82
85
  try {
83
- verfer = new Verfer({qb64: keys[0]})
86
+ verfer = new Verfer({ qb64: keys[0] });
84
87
  } catch (e) {
85
- throw new Error(`Error extracting public key = ${e}`)
88
+ throw new Error(`Error extracting public key = ${e}`);
86
89
  }
87
90
 
88
91
  if (!(verfer.code in [MtrDex.Ed25519N])) {
89
- throw new Error(`Mismatch derivation code = ${verfer.code}`)
92
+ throw new Error(`Mismatch derivation code = ${verfer.code}`);
90
93
  }
91
94
 
92
- let next = 'n' in ked ? ked['n'] : []
95
+ const next = 'n' in ked ? ked['n'] : [];
93
96
  if (verfer.code == MtrDex.Ed25519N && next.length > 0) {
94
- throw new Error(`Non-empty nxt = ${next} for non-transferable code = ${verfer.code}`)
97
+ throw new Error(
98
+ `Non-empty nxt = ${next} for non-transferable code = ${verfer.code}`
99
+ );
95
100
  }
96
101
 
97
- let backers = 'b' in ked ? ked['b'] : []
102
+ const backers = 'b' in ked ? ked['b'] : [];
98
103
  if (verfer.code == MtrDex.Ed25519N && backers.length > 0) {
99
- throw new Error(`Non-empty b =${backers} for non-transferable code = ${verfer.code}`)
104
+ throw new Error(
105
+ `Non-empty b =${backers} for non-transferable code = ${verfer.code}`
106
+ );
100
107
  }
101
108
 
102
- let anchor = 'a' in ked ? ked['a'] : []
109
+ const anchor = 'a' in ked ? ked['a'] : [];
103
110
  if (verfer.code == MtrDex.Ed25519N && anchor.length > 0) {
104
- throw new Error(`Non-empty a = ${verfer.code} for non-transferable code = ${verfer.code}`)
111
+ throw new Error(
112
+ `Non-empty a = ${verfer.code} for non-transferable code = ${verfer.code}`
113
+ );
105
114
  }
106
115
 
107
- return [verfer.raw, verfer.code]
108
-
116
+ return [verfer.raw, verfer.code];
109
117
  }
110
118
 
111
119
  static _derive_ed25519(ked: Dict<any>): [Uint8Array, string] {
112
- let verfer
113
- let keys = ked["k"]
120
+ let verfer;
121
+ const keys = ked['k'];
114
122
  if (keys.length != 1) {
115
- throw new Error(`Basic derivation needs at most 1 key got ${keys.length} keys instead`)
123
+ throw new Error(
124
+ `Basic derivation needs at most 1 key got ${keys.length} keys instead`
125
+ );
116
126
  }
117
127
 
118
128
  try {
119
- verfer = new Verfer({qb64: keys[0]})
129
+ verfer = new Verfer({ qb64: keys[0] });
120
130
  } catch (e) {
121
- throw new Error(`Error extracting public key = ${e}`)
131
+ throw new Error(`Error extracting public key = ${e}`);
122
132
  }
123
133
 
124
134
  if (verfer.code in [MtrDex.Ed25519]) {
125
- throw new Error(`Mismatch derivation code = ${verfer.code}`)
135
+ throw new Error(`Mismatch derivation code = ${verfer.code}`);
126
136
  }
127
137
 
128
- return [verfer.raw, verfer.code]
138
+ return [verfer.raw, verfer.code];
129
139
  }
130
140
 
131
141
  static _derive_blake3_256(ked: Dict<any>): [Uint8Array, string] {
132
- let kd = ked
133
- let ilk = ked["t"]
134
- if (ilk != Ilks.icp) {
135
- throw new Error(`Invalid ilk = ${ilk} to derive pre.`)
136
- }
137
-
138
- kd["i"] = "".padStart(Matter.Sizes.get(MtrDex.Blake3_256)!.fs, Dummy)
139
- kd["d"] = ked["i"]
140
- let [raw] = sizeify(ked)
141
- const hasher = createHash();
142
- const dig = hasher.update(raw).digest('');
143
- return [dig, MtrDex.Blake3_256]
142
+ const kd = ked;
143
+ const ilk = ked['t'];
144
+ if (![Ilks.icp, Ilks.dip, Ilks.vcp, Ilks.dip].includes(ilk)) {
145
+ throw new Error(`Invalid ilk = ${ilk} to derive pre.`);
146
+ }
147
+
148
+ kd['i'] = ''.padStart(Matter.Sizes.get(MtrDex.Blake3_256)!.fs!, Dummy);
149
+ kd['d'] = ked['i'];
150
+ const [raw] = sizeify(ked);
151
+ const dig = Buffer.from(
152
+ blake3.create({ dkLen: 32 }).update(raw).digest()
153
+ );
154
+ return [dig, MtrDex.Blake3_256];
144
155
  }
145
156
 
146
- _verify_ed25519N(ked: Dict<any>, pre: string, prefixed: boolean = false): boolean {
157
+ _verify_ed25519N(
158
+ ked: Dict<any>,
159
+ pre: string,
160
+ prefixed: boolean = false
161
+ ): boolean {
147
162
  try {
148
- let keys = ked["k"]
163
+ const keys = ked['k'];
149
164
  if (keys.length != 1) {
150
- return false
165
+ return false;
151
166
  }
152
167
 
153
168
  if (keys[0] != pre) {
154
- return false
169
+ return false;
155
170
  }
156
171
 
157
- if (prefixed && ked["i"] != pre) {
158
- return false
172
+ if (prefixed && ked['i'] != pre) {
173
+ return false;
159
174
  }
160
175
 
161
- let next = 'n' in ked ? ked['n'] : []
162
- if (next.length > 0) { // must be empty
163
- return false
176
+ const next = 'n' in ked ? ked['n'] : [];
177
+ if (next.length > 0) {
178
+ // must be empty
179
+ return false;
164
180
  }
165
181
  } catch (e) {
166
- return false
182
+ return false;
167
183
  }
168
184
 
169
- return true
170
-
185
+ return true;
171
186
  }
172
187
 
173
- _verify_ed25519(ked: Dict<any>, pre: string, prefixed: boolean = false): boolean {
188
+ _verify_ed25519(
189
+ ked: Dict<any>,
190
+ pre: string,
191
+ prefixed: boolean = false
192
+ ): boolean {
174
193
  try {
175
- let keys = ked["k"]
194
+ const keys = ked['k'];
176
195
  if (keys.length != 1) {
177
- return false
196
+ return false;
178
197
  }
179
198
 
180
199
  if (keys[0] != pre) {
181
- return false
200
+ return false;
182
201
  }
183
202
 
184
- if (prefixed && ked["i"] != pre) {
185
- return false
203
+ if (prefixed && ked['i'] != pre) {
204
+ return false;
186
205
  }
187
206
  } catch (e) {
188
- return false
207
+ return false;
189
208
  }
190
209
 
191
- return true
210
+ return true;
192
211
  }
193
212
 
194
- _verify_blake3_256(ked: Dict<any>, pre: string, prefixed: boolean = false): boolean {
213
+ _verify_blake3_256(
214
+ ked: Dict<any>,
215
+ pre: string,
216
+ prefixed: boolean = false
217
+ ): boolean {
195
218
  try {
196
- let [raw,] = Prefixer._derive_blake3_256(ked)
197
- let crymat = new Matter({raw: raw, code: MtrDex.Blake3_256})
219
+ const [raw] = Prefixer._derive_blake3_256(ked);
220
+ const crymat = new Matter({ raw: raw, code: MtrDex.Blake3_256 });
198
221
  if (crymat.qb64 != pre) {
199
- return false
222
+ return false;
200
223
  }
201
224
 
202
- if (prefixed && ked["i"] != pre) {
203
- return false
225
+ if (prefixed && ked['i'] != pre) {
226
+ return false;
204
227
  }
205
-
206
228
  } catch (e) {
207
- return false
229
+ return false;
208
230
  }
209
- return true
210
-
231
+ return true;
211
232
  }
212
- }
233
+ }