@waku/core 0.0.1 → 0.0.2
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/CHANGELOG.md +9 -0
- package/bundle/{index-691c0be6.js → index-a67d7136.js} +1 -1
- package/bundle/{index-0a4bdddc.js → index-f7e049ad.js} +1 -1
- package/bundle/index.js +24853 -3555
- package/bundle/lib/peer_discovery_static_list.js +18 -4
- package/bundle/lib/predefined_bootstrap_nodes.js +1 -1
- package/bundle/lib/wait_for_remote_peer.js +2 -3
- package/bundle/lib/waku_message/topic_only_message.js +2 -3
- package/bundle/lib/waku_message/version_0.js +317 -4
- package/bundle/{message-e2db79d7.js → message-049c8b67.js} +861 -2
- package/bundle/{topic_only_message-34f36fa6.js → topic_only_message-5ad3a869.js} +1 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.js +0 -3
- package/dist/index.js.map +1 -1
- package/dist/lib/waku_filter/index.d.ts +2 -2
- package/dist/lib/waku_filter/index.js.map +1 -1
- package/dist/lib/waku_message/version_0.d.ts +3 -2
- package/dist/lib/waku_message/version_0.js +2 -1
- package/dist/lib/waku_message/version_0.js.map +1 -1
- package/dist/lib/waku_relay/index.d.ts +4 -3
- package/dist/lib/waku_relay/index.js.map +1 -1
- package/dist/lib/waku_store/index.d.ts +4 -4
- package/package.json +3 -118
- package/src/index.ts +0 -10
- package/src/lib/waku_filter/index.ts +4 -3
- package/src/lib/waku_message/version_0.ts +5 -3
- package/src/lib/waku_relay/index.ts +4 -3
- package/src/lib/waku_store/index.ts +5 -5
- package/bundle/crypto-8551d579.js +0 -2585
- package/bundle/crypto-b00764b7.js +0 -1772
- package/bundle/enr-564d4a51.js +0 -20785
- package/bundle/enr-9fc5eed8.js +0 -20786
- package/bundle/enr-f6e82a53.js +0 -20785
- package/bundle/events-fcbda4dc.js +0 -76
- package/bundle/index-02d21809.js +0 -20
- package/bundle/index-2ae915be.js +0 -1854
- package/bundle/index-a013a259.js +0 -20
- package/bundle/index-ba42b4fc.js +0 -862
- package/bundle/lib/enr.js +0 -8
- package/bundle/lib/peer_discovery_dns.js +0 -5018
- package/bundle/lib/utils.js +0 -1
- package/bundle/lib/waku_message/version_1.js +0 -463
- package/bundle/multiaddr_to_peer_info-c406b1e1.js +0 -19
- package/bundle/multiaddr_to_peer_info-fd1de516.js +0 -19
- package/bundle/utils-9a3221f2.js +0 -815
- package/bundle/version_0-e6fe440c.js +0 -317
- package/dist/lib/crypto.d.ts +0 -34
- package/dist/lib/crypto.js +0 -79
- package/dist/lib/crypto.js.map +0 -1
- package/dist/lib/enr/constants.d.ts +0 -4
- package/dist/lib/enr/constants.js +0 -8
- package/dist/lib/enr/constants.js.map +0 -1
- package/dist/lib/enr/enr.d.ts +0 -90
- package/dist/lib/enr/enr.js +0 -432
- package/dist/lib/enr/enr.js.map +0 -1
- package/dist/lib/enr/index.d.ts +0 -5
- package/dist/lib/enr/index.js +0 -6
- package/dist/lib/enr/index.js.map +0 -1
- package/dist/lib/enr/keypair/index.d.ts +0 -8
- package/dist/lib/enr/keypair/index.js +0 -53
- package/dist/lib/enr/keypair/index.js.map +0 -1
- package/dist/lib/enr/keypair/secp256k1.d.ts +0 -13
- package/dist/lib/enr/keypair/secp256k1.js +0 -57
- package/dist/lib/enr/keypair/secp256k1.js.map +0 -1
- package/dist/lib/enr/keypair/types.d.ts +0 -13
- package/dist/lib/enr/keypair/types.js +0 -7
- package/dist/lib/enr/keypair/types.js.map +0 -1
- package/dist/lib/enr/multiaddr_from_fields.d.ts +0 -2
- package/dist/lib/enr/multiaddr_from_fields.js +0 -8
- package/dist/lib/enr/multiaddr_from_fields.js.map +0 -1
- package/dist/lib/enr/multiaddrs_codec.d.ts +0 -3
- package/dist/lib/enr/multiaddrs_codec.js +0 -32
- package/dist/lib/enr/multiaddrs_codec.js.map +0 -1
- package/dist/lib/enr/types.d.ts +0 -8
- package/dist/lib/enr/types.js +0 -3
- package/dist/lib/enr/types.js.map +0 -1
- package/dist/lib/enr/v4.d.ts +0 -3
- package/dist/lib/enr/v4.js +0 -14
- package/dist/lib/enr/v4.js.map +0 -1
- package/dist/lib/enr/waku2_codec.d.ts +0 -8
- package/dist/lib/enr/waku2_codec.js +0 -36
- package/dist/lib/enr/waku2_codec.js.map +0 -1
- package/dist/lib/peer_discovery_dns/dns.d.ts +0 -48
- package/dist/lib/peer_discovery_dns/dns.js +0 -158
- package/dist/lib/peer_discovery_dns/dns.js.map +0 -1
- package/dist/lib/peer_discovery_dns/dns_over_https.d.ts +0 -32
- package/dist/lib/peer_discovery_dns/dns_over_https.js +0 -87
- package/dist/lib/peer_discovery_dns/dns_over_https.js.map +0 -1
- package/dist/lib/peer_discovery_dns/enrtree.d.ts +0 -33
- package/dist/lib/peer_discovery_dns/enrtree.js +0 -76
- package/dist/lib/peer_discovery_dns/enrtree.js.map +0 -1
- package/dist/lib/peer_discovery_dns/fetch_nodes.d.ts +0 -14
- package/dist/lib/peer_discovery_dns/fetch_nodes.js +0 -133
- package/dist/lib/peer_discovery_dns/fetch_nodes.js.map +0 -1
- package/dist/lib/peer_discovery_dns/index.d.ts +0 -30
- package/dist/lib/peer_discovery_dns/index.js +0 -54
- package/dist/lib/peer_discovery_dns/index.js.map +0 -1
- package/dist/lib/utils.d.ts +0 -22
- package/dist/lib/utils.js +0 -40
- package/dist/lib/utils.js.map +0 -1
- package/dist/lib/waku_message/constants.d.ts +0 -12
- package/dist/lib/waku_message/constants.js +0 -10
- package/dist/lib/waku_message/constants.js.map +0 -1
- package/dist/lib/waku_message/ecies.d.ts +0 -17
- package/dist/lib/waku_message/ecies.js +0 -126
- package/dist/lib/waku_message/ecies.js.map +0 -1
- package/dist/lib/waku_message/symmetric.d.ts +0 -3
- package/dist/lib/waku_message/symmetric.js +0 -18
- package/dist/lib/waku_message/symmetric.js.map +0 -1
- package/dist/lib/waku_message/version_1.d.ts +0 -93
- package/dist/lib/waku_message/version_1.js +0 -325
- package/dist/lib/waku_message/version_1.js.map +0 -1
- package/src/lib/crypto.ts +0 -100
- package/src/lib/enr/constants.ts +0 -10
- package/src/lib/enr/enr.ts +0 -516
- package/src/lib/enr/index.ts +0 -5
- package/src/lib/enr/keypair/index.ts +0 -76
- package/src/lib/enr/keypair/secp256k1.ts +0 -69
- package/src/lib/enr/keypair/types.ts +0 -14
- package/src/lib/enr/multiaddr_from_fields.ts +0 -18
- package/src/lib/enr/multiaddrs_codec.ts +0 -50
- package/src/lib/enr/types.ts +0 -11
- package/src/lib/enr/v4.ts +0 -22
- package/src/lib/enr/waku2_codec.ts +0 -39
- package/src/lib/peer_discovery_dns/dns.ts +0 -223
- package/src/lib/peer_discovery_dns/dns_over_https.ts +0 -98
- package/src/lib/peer_discovery_dns/enrtree.ts +0 -123
- package/src/lib/peer_discovery_dns/fetch_nodes.ts +0 -180
- package/src/lib/peer_discovery_dns/index.ts +0 -84
- package/src/lib/utils.ts +0 -50
- package/src/lib/waku_message/constants.ts +0 -10
- package/src/lib/waku_message/ecies.ts +0 -194
- package/src/lib/waku_message/symmetric.ts +0 -33
- package/src/lib/waku_message/version_1.ts +0 -457
package/bundle/utils-9a3221f2.js
DELETED
@@ -1,815 +0,0 @@
|
|
1
|
-
function base(ALPHABET, name) {
|
2
|
-
if (ALPHABET.length >= 255) {
|
3
|
-
throw new TypeError('Alphabet too long');
|
4
|
-
}
|
5
|
-
var BASE_MAP = new Uint8Array(256);
|
6
|
-
for (var j = 0; j < BASE_MAP.length; j++) {
|
7
|
-
BASE_MAP[j] = 255;
|
8
|
-
}
|
9
|
-
for (var i = 0; i < ALPHABET.length; i++) {
|
10
|
-
var x = ALPHABET.charAt(i);
|
11
|
-
var xc = x.charCodeAt(0);
|
12
|
-
if (BASE_MAP[xc] !== 255) {
|
13
|
-
throw new TypeError(x + ' is ambiguous');
|
14
|
-
}
|
15
|
-
BASE_MAP[xc] = i;
|
16
|
-
}
|
17
|
-
var BASE = ALPHABET.length;
|
18
|
-
var LEADER = ALPHABET.charAt(0);
|
19
|
-
var FACTOR = Math.log(BASE) / Math.log(256);
|
20
|
-
var iFACTOR = Math.log(256) / Math.log(BASE);
|
21
|
-
function encode(source) {
|
22
|
-
if (source instanceof Uint8Array);
|
23
|
-
else if (ArrayBuffer.isView(source)) {
|
24
|
-
source = new Uint8Array(source.buffer, source.byteOffset, source.byteLength);
|
25
|
-
} else if (Array.isArray(source)) {
|
26
|
-
source = Uint8Array.from(source);
|
27
|
-
}
|
28
|
-
if (!(source instanceof Uint8Array)) {
|
29
|
-
throw new TypeError('Expected Uint8Array');
|
30
|
-
}
|
31
|
-
if (source.length === 0) {
|
32
|
-
return '';
|
33
|
-
}
|
34
|
-
var zeroes = 0;
|
35
|
-
var length = 0;
|
36
|
-
var pbegin = 0;
|
37
|
-
var pend = source.length;
|
38
|
-
while (pbegin !== pend && source[pbegin] === 0) {
|
39
|
-
pbegin++;
|
40
|
-
zeroes++;
|
41
|
-
}
|
42
|
-
var size = (pend - pbegin) * iFACTOR + 1 >>> 0;
|
43
|
-
var b58 = new Uint8Array(size);
|
44
|
-
while (pbegin !== pend) {
|
45
|
-
var carry = source[pbegin];
|
46
|
-
var i = 0;
|
47
|
-
for (var it1 = size - 1; (carry !== 0 || i < length) && it1 !== -1; it1--, i++) {
|
48
|
-
carry += 256 * b58[it1] >>> 0;
|
49
|
-
b58[it1] = carry % BASE >>> 0;
|
50
|
-
carry = carry / BASE >>> 0;
|
51
|
-
}
|
52
|
-
if (carry !== 0) {
|
53
|
-
throw new Error('Non-zero carry');
|
54
|
-
}
|
55
|
-
length = i;
|
56
|
-
pbegin++;
|
57
|
-
}
|
58
|
-
var it2 = size - length;
|
59
|
-
while (it2 !== size && b58[it2] === 0) {
|
60
|
-
it2++;
|
61
|
-
}
|
62
|
-
var str = LEADER.repeat(zeroes);
|
63
|
-
for (; it2 < size; ++it2) {
|
64
|
-
str += ALPHABET.charAt(b58[it2]);
|
65
|
-
}
|
66
|
-
return str;
|
67
|
-
}
|
68
|
-
function decodeUnsafe(source) {
|
69
|
-
if (typeof source !== 'string') {
|
70
|
-
throw new TypeError('Expected String');
|
71
|
-
}
|
72
|
-
if (source.length === 0) {
|
73
|
-
return new Uint8Array();
|
74
|
-
}
|
75
|
-
var psz = 0;
|
76
|
-
if (source[psz] === ' ') {
|
77
|
-
return;
|
78
|
-
}
|
79
|
-
var zeroes = 0;
|
80
|
-
var length = 0;
|
81
|
-
while (source[psz] === LEADER) {
|
82
|
-
zeroes++;
|
83
|
-
psz++;
|
84
|
-
}
|
85
|
-
var size = (source.length - psz) * FACTOR + 1 >>> 0;
|
86
|
-
var b256 = new Uint8Array(size);
|
87
|
-
while (source[psz]) {
|
88
|
-
var carry = BASE_MAP[source.charCodeAt(psz)];
|
89
|
-
if (carry === 255) {
|
90
|
-
return;
|
91
|
-
}
|
92
|
-
var i = 0;
|
93
|
-
for (var it3 = size - 1; (carry !== 0 || i < length) && it3 !== -1; it3--, i++) {
|
94
|
-
carry += BASE * b256[it3] >>> 0;
|
95
|
-
b256[it3] = carry % 256 >>> 0;
|
96
|
-
carry = carry / 256 >>> 0;
|
97
|
-
}
|
98
|
-
if (carry !== 0) {
|
99
|
-
throw new Error('Non-zero carry');
|
100
|
-
}
|
101
|
-
length = i;
|
102
|
-
psz++;
|
103
|
-
}
|
104
|
-
if (source[psz] === ' ') {
|
105
|
-
return;
|
106
|
-
}
|
107
|
-
var it4 = size - length;
|
108
|
-
while (it4 !== size && b256[it4] === 0) {
|
109
|
-
it4++;
|
110
|
-
}
|
111
|
-
var vch = new Uint8Array(zeroes + (size - it4));
|
112
|
-
var j = zeroes;
|
113
|
-
while (it4 !== size) {
|
114
|
-
vch[j++] = b256[it4++];
|
115
|
-
}
|
116
|
-
return vch;
|
117
|
-
}
|
118
|
-
function decode(string) {
|
119
|
-
var buffer = decodeUnsafe(string);
|
120
|
-
if (buffer) {
|
121
|
-
return buffer;
|
122
|
-
}
|
123
|
-
throw new Error(`Non-${ name } character`);
|
124
|
-
}
|
125
|
-
return {
|
126
|
-
encode: encode,
|
127
|
-
decodeUnsafe: decodeUnsafe,
|
128
|
-
decode: decode
|
129
|
-
};
|
130
|
-
}
|
131
|
-
var src = base;
|
132
|
-
var _brrp__multiformats_scope_baseX = src;
|
133
|
-
|
134
|
-
const coerce = o => {
|
135
|
-
if (o instanceof Uint8Array && o.constructor.name === 'Uint8Array')
|
136
|
-
return o;
|
137
|
-
if (o instanceof ArrayBuffer)
|
138
|
-
return new Uint8Array(o);
|
139
|
-
if (ArrayBuffer.isView(o)) {
|
140
|
-
return new Uint8Array(o.buffer, o.byteOffset, o.byteLength);
|
141
|
-
}
|
142
|
-
throw new Error('Unknown type, must be binary type');
|
143
|
-
};
|
144
|
-
const fromString$1 = str => new TextEncoder().encode(str);
|
145
|
-
const toString$1 = b => new TextDecoder().decode(b);
|
146
|
-
|
147
|
-
class Encoder {
|
148
|
-
constructor(name, prefix, baseEncode) {
|
149
|
-
this.name = name;
|
150
|
-
this.prefix = prefix;
|
151
|
-
this.baseEncode = baseEncode;
|
152
|
-
}
|
153
|
-
encode(bytes) {
|
154
|
-
if (bytes instanceof Uint8Array) {
|
155
|
-
return `${ this.prefix }${ this.baseEncode(bytes) }`;
|
156
|
-
} else {
|
157
|
-
throw Error('Unknown type, must be binary type');
|
158
|
-
}
|
159
|
-
}
|
160
|
-
}
|
161
|
-
class Decoder {
|
162
|
-
constructor(name, prefix, baseDecode) {
|
163
|
-
this.name = name;
|
164
|
-
this.prefix = prefix;
|
165
|
-
if (prefix.codePointAt(0) === undefined) {
|
166
|
-
throw new Error('Invalid prefix character');
|
167
|
-
}
|
168
|
-
this.prefixCodePoint = prefix.codePointAt(0);
|
169
|
-
this.baseDecode = baseDecode;
|
170
|
-
}
|
171
|
-
decode(text) {
|
172
|
-
if (typeof text === 'string') {
|
173
|
-
if (text.codePointAt(0) !== this.prefixCodePoint) {
|
174
|
-
throw Error(`Unable to decode multibase string ${ JSON.stringify(text) }, ${ this.name } decoder only supports inputs prefixed with ${ this.prefix }`);
|
175
|
-
}
|
176
|
-
return this.baseDecode(text.slice(this.prefix.length));
|
177
|
-
} else {
|
178
|
-
throw Error('Can only multibase decode strings');
|
179
|
-
}
|
180
|
-
}
|
181
|
-
or(decoder) {
|
182
|
-
return or(this, decoder);
|
183
|
-
}
|
184
|
-
}
|
185
|
-
class ComposedDecoder {
|
186
|
-
constructor(decoders) {
|
187
|
-
this.decoders = decoders;
|
188
|
-
}
|
189
|
-
or(decoder) {
|
190
|
-
return or(this, decoder);
|
191
|
-
}
|
192
|
-
decode(input) {
|
193
|
-
const prefix = input[0];
|
194
|
-
const decoder = this.decoders[prefix];
|
195
|
-
if (decoder) {
|
196
|
-
return decoder.decode(input);
|
197
|
-
} else {
|
198
|
-
throw RangeError(`Unable to decode multibase string ${ JSON.stringify(input) }, only inputs prefixed with ${ Object.keys(this.decoders) } are supported`);
|
199
|
-
}
|
200
|
-
}
|
201
|
-
}
|
202
|
-
const or = (left, right) => new ComposedDecoder({
|
203
|
-
...left.decoders || { [left.prefix]: left },
|
204
|
-
...right.decoders || { [right.prefix]: right }
|
205
|
-
});
|
206
|
-
class Codec {
|
207
|
-
constructor(name, prefix, baseEncode, baseDecode) {
|
208
|
-
this.name = name;
|
209
|
-
this.prefix = prefix;
|
210
|
-
this.baseEncode = baseEncode;
|
211
|
-
this.baseDecode = baseDecode;
|
212
|
-
this.encoder = new Encoder(name, prefix, baseEncode);
|
213
|
-
this.decoder = new Decoder(name, prefix, baseDecode);
|
214
|
-
}
|
215
|
-
encode(input) {
|
216
|
-
return this.encoder.encode(input);
|
217
|
-
}
|
218
|
-
decode(input) {
|
219
|
-
return this.decoder.decode(input);
|
220
|
-
}
|
221
|
-
}
|
222
|
-
const from$1 = ({name, prefix, encode, decode}) => new Codec(name, prefix, encode, decode);
|
223
|
-
const baseX = ({prefix, name, alphabet}) => {
|
224
|
-
const {encode, decode} = _brrp__multiformats_scope_baseX(alphabet, name);
|
225
|
-
return from$1({
|
226
|
-
prefix,
|
227
|
-
name,
|
228
|
-
encode,
|
229
|
-
decode: text => coerce(decode(text))
|
230
|
-
});
|
231
|
-
};
|
232
|
-
const decode$2 = (string, alphabet, bitsPerChar, name) => {
|
233
|
-
const codes = {};
|
234
|
-
for (let i = 0; i < alphabet.length; ++i) {
|
235
|
-
codes[alphabet[i]] = i;
|
236
|
-
}
|
237
|
-
let end = string.length;
|
238
|
-
while (string[end - 1] === '=') {
|
239
|
-
--end;
|
240
|
-
}
|
241
|
-
const out = new Uint8Array(end * bitsPerChar / 8 | 0);
|
242
|
-
let bits = 0;
|
243
|
-
let buffer = 0;
|
244
|
-
let written = 0;
|
245
|
-
for (let i = 0; i < end; ++i) {
|
246
|
-
const value = codes[string[i]];
|
247
|
-
if (value === undefined) {
|
248
|
-
throw new SyntaxError(`Non-${ name } character`);
|
249
|
-
}
|
250
|
-
buffer = buffer << bitsPerChar | value;
|
251
|
-
bits += bitsPerChar;
|
252
|
-
if (bits >= 8) {
|
253
|
-
bits -= 8;
|
254
|
-
out[written++] = 255 & buffer >> bits;
|
255
|
-
}
|
256
|
-
}
|
257
|
-
if (bits >= bitsPerChar || 255 & buffer << 8 - bits) {
|
258
|
-
throw new SyntaxError('Unexpected end of data');
|
259
|
-
}
|
260
|
-
return out;
|
261
|
-
};
|
262
|
-
const encode$3 = (data, alphabet, bitsPerChar) => {
|
263
|
-
const pad = alphabet[alphabet.length - 1] === '=';
|
264
|
-
const mask = (1 << bitsPerChar) - 1;
|
265
|
-
let out = '';
|
266
|
-
let bits = 0;
|
267
|
-
let buffer = 0;
|
268
|
-
for (let i = 0; i < data.length; ++i) {
|
269
|
-
buffer = buffer << 8 | data[i];
|
270
|
-
bits += 8;
|
271
|
-
while (bits > bitsPerChar) {
|
272
|
-
bits -= bitsPerChar;
|
273
|
-
out += alphabet[mask & buffer >> bits];
|
274
|
-
}
|
275
|
-
}
|
276
|
-
if (bits) {
|
277
|
-
out += alphabet[mask & buffer << bitsPerChar - bits];
|
278
|
-
}
|
279
|
-
if (pad) {
|
280
|
-
while (out.length * bitsPerChar & 7) {
|
281
|
-
out += '=';
|
282
|
-
}
|
283
|
-
}
|
284
|
-
return out;
|
285
|
-
};
|
286
|
-
const rfc4648 = ({name, prefix, bitsPerChar, alphabet}) => {
|
287
|
-
return from$1({
|
288
|
-
prefix,
|
289
|
-
name,
|
290
|
-
encode(input) {
|
291
|
-
return encode$3(input, alphabet, bitsPerChar);
|
292
|
-
},
|
293
|
-
decode(input) {
|
294
|
-
return decode$2(input, alphabet, bitsPerChar, name);
|
295
|
-
}
|
296
|
-
});
|
297
|
-
};
|
298
|
-
|
299
|
-
const identity$2 = from$1({
|
300
|
-
prefix: '\0',
|
301
|
-
name: 'identity',
|
302
|
-
encode: buf => toString$1(buf),
|
303
|
-
decode: str => fromString$1(str)
|
304
|
-
});
|
305
|
-
|
306
|
-
var identityBase = /*#__PURE__*/Object.freeze({
|
307
|
-
__proto__: null,
|
308
|
-
identity: identity$2
|
309
|
-
});
|
310
|
-
|
311
|
-
const base2 = rfc4648({
|
312
|
-
prefix: '0',
|
313
|
-
name: 'base2',
|
314
|
-
alphabet: '01',
|
315
|
-
bitsPerChar: 1
|
316
|
-
});
|
317
|
-
|
318
|
-
var base2$1 = /*#__PURE__*/Object.freeze({
|
319
|
-
__proto__: null,
|
320
|
-
base2: base2
|
321
|
-
});
|
322
|
-
|
323
|
-
const base8 = rfc4648({
|
324
|
-
prefix: '7',
|
325
|
-
name: 'base8',
|
326
|
-
alphabet: '01234567',
|
327
|
-
bitsPerChar: 3
|
328
|
-
});
|
329
|
-
|
330
|
-
var base8$1 = /*#__PURE__*/Object.freeze({
|
331
|
-
__proto__: null,
|
332
|
-
base8: base8
|
333
|
-
});
|
334
|
-
|
335
|
-
const base10 = baseX({
|
336
|
-
prefix: '9',
|
337
|
-
name: 'base10',
|
338
|
-
alphabet: '0123456789'
|
339
|
-
});
|
340
|
-
|
341
|
-
var base10$1 = /*#__PURE__*/Object.freeze({
|
342
|
-
__proto__: null,
|
343
|
-
base10: base10
|
344
|
-
});
|
345
|
-
|
346
|
-
const base16 = rfc4648({
|
347
|
-
prefix: 'f',
|
348
|
-
name: 'base16',
|
349
|
-
alphabet: '0123456789abcdef',
|
350
|
-
bitsPerChar: 4
|
351
|
-
});
|
352
|
-
const base16upper = rfc4648({
|
353
|
-
prefix: 'F',
|
354
|
-
name: 'base16upper',
|
355
|
-
alphabet: '0123456789ABCDEF',
|
356
|
-
bitsPerChar: 4
|
357
|
-
});
|
358
|
-
|
359
|
-
var base16$1 = /*#__PURE__*/Object.freeze({
|
360
|
-
__proto__: null,
|
361
|
-
base16: base16,
|
362
|
-
base16upper: base16upper
|
363
|
-
});
|
364
|
-
|
365
|
-
const base32 = rfc4648({
|
366
|
-
prefix: 'b',
|
367
|
-
name: 'base32',
|
368
|
-
alphabet: 'abcdefghijklmnopqrstuvwxyz234567',
|
369
|
-
bitsPerChar: 5
|
370
|
-
});
|
371
|
-
const base32upper = rfc4648({
|
372
|
-
prefix: 'B',
|
373
|
-
name: 'base32upper',
|
374
|
-
alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567',
|
375
|
-
bitsPerChar: 5
|
376
|
-
});
|
377
|
-
const base32pad = rfc4648({
|
378
|
-
prefix: 'c',
|
379
|
-
name: 'base32pad',
|
380
|
-
alphabet: 'abcdefghijklmnopqrstuvwxyz234567=',
|
381
|
-
bitsPerChar: 5
|
382
|
-
});
|
383
|
-
const base32padupper = rfc4648({
|
384
|
-
prefix: 'C',
|
385
|
-
name: 'base32padupper',
|
386
|
-
alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=',
|
387
|
-
bitsPerChar: 5
|
388
|
-
});
|
389
|
-
const base32hex = rfc4648({
|
390
|
-
prefix: 'v',
|
391
|
-
name: 'base32hex',
|
392
|
-
alphabet: '0123456789abcdefghijklmnopqrstuv',
|
393
|
-
bitsPerChar: 5
|
394
|
-
});
|
395
|
-
const base32hexupper = rfc4648({
|
396
|
-
prefix: 'V',
|
397
|
-
name: 'base32hexupper',
|
398
|
-
alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUV',
|
399
|
-
bitsPerChar: 5
|
400
|
-
});
|
401
|
-
const base32hexpad = rfc4648({
|
402
|
-
prefix: 't',
|
403
|
-
name: 'base32hexpad',
|
404
|
-
alphabet: '0123456789abcdefghijklmnopqrstuv=',
|
405
|
-
bitsPerChar: 5
|
406
|
-
});
|
407
|
-
const base32hexpadupper = rfc4648({
|
408
|
-
prefix: 'T',
|
409
|
-
name: 'base32hexpadupper',
|
410
|
-
alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUV=',
|
411
|
-
bitsPerChar: 5
|
412
|
-
});
|
413
|
-
const base32z = rfc4648({
|
414
|
-
prefix: 'h',
|
415
|
-
name: 'base32z',
|
416
|
-
alphabet: 'ybndrfg8ejkmcpqxot1uwisza345h769',
|
417
|
-
bitsPerChar: 5
|
418
|
-
});
|
419
|
-
|
420
|
-
var base32$1 = /*#__PURE__*/Object.freeze({
|
421
|
-
__proto__: null,
|
422
|
-
base32: base32,
|
423
|
-
base32upper: base32upper,
|
424
|
-
base32pad: base32pad,
|
425
|
-
base32padupper: base32padupper,
|
426
|
-
base32hex: base32hex,
|
427
|
-
base32hexupper: base32hexupper,
|
428
|
-
base32hexpad: base32hexpad,
|
429
|
-
base32hexpadupper: base32hexpadupper,
|
430
|
-
base32z: base32z
|
431
|
-
});
|
432
|
-
|
433
|
-
const base36 = baseX({
|
434
|
-
prefix: 'k',
|
435
|
-
name: 'base36',
|
436
|
-
alphabet: '0123456789abcdefghijklmnopqrstuvwxyz'
|
437
|
-
});
|
438
|
-
const base36upper = baseX({
|
439
|
-
prefix: 'K',
|
440
|
-
name: 'base36upper',
|
441
|
-
alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
|
442
|
-
});
|
443
|
-
|
444
|
-
var base36$1 = /*#__PURE__*/Object.freeze({
|
445
|
-
__proto__: null,
|
446
|
-
base36: base36,
|
447
|
-
base36upper: base36upper
|
448
|
-
});
|
449
|
-
|
450
|
-
const base58btc = baseX({
|
451
|
-
name: 'base58btc',
|
452
|
-
prefix: 'z',
|
453
|
-
alphabet: '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'
|
454
|
-
});
|
455
|
-
const base58flickr = baseX({
|
456
|
-
name: 'base58flickr',
|
457
|
-
prefix: 'Z',
|
458
|
-
alphabet: '123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ'
|
459
|
-
});
|
460
|
-
|
461
|
-
var base58 = /*#__PURE__*/Object.freeze({
|
462
|
-
__proto__: null,
|
463
|
-
base58btc: base58btc,
|
464
|
-
base58flickr: base58flickr
|
465
|
-
});
|
466
|
-
|
467
|
-
const base64 = rfc4648({
|
468
|
-
prefix: 'm',
|
469
|
-
name: 'base64',
|
470
|
-
alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',
|
471
|
-
bitsPerChar: 6
|
472
|
-
});
|
473
|
-
const base64pad = rfc4648({
|
474
|
-
prefix: 'M',
|
475
|
-
name: 'base64pad',
|
476
|
-
alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=',
|
477
|
-
bitsPerChar: 6
|
478
|
-
});
|
479
|
-
const base64url = rfc4648({
|
480
|
-
prefix: 'u',
|
481
|
-
name: 'base64url',
|
482
|
-
alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_',
|
483
|
-
bitsPerChar: 6
|
484
|
-
});
|
485
|
-
const base64urlpad = rfc4648({
|
486
|
-
prefix: 'U',
|
487
|
-
name: 'base64urlpad',
|
488
|
-
alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=',
|
489
|
-
bitsPerChar: 6
|
490
|
-
});
|
491
|
-
|
492
|
-
var base64$1 = /*#__PURE__*/Object.freeze({
|
493
|
-
__proto__: null,
|
494
|
-
base64: base64,
|
495
|
-
base64pad: base64pad,
|
496
|
-
base64url: base64url,
|
497
|
-
base64urlpad: base64urlpad
|
498
|
-
});
|
499
|
-
|
500
|
-
const alphabet = Array.from('\uD83D\uDE80\uD83E\uDE90\u2604\uD83D\uDEF0\uD83C\uDF0C\uD83C\uDF11\uD83C\uDF12\uD83C\uDF13\uD83C\uDF14\uD83C\uDF15\uD83C\uDF16\uD83C\uDF17\uD83C\uDF18\uD83C\uDF0D\uD83C\uDF0F\uD83C\uDF0E\uD83D\uDC09\u2600\uD83D\uDCBB\uD83D\uDDA5\uD83D\uDCBE\uD83D\uDCBF\uD83D\uDE02\u2764\uD83D\uDE0D\uD83E\uDD23\uD83D\uDE0A\uD83D\uDE4F\uD83D\uDC95\uD83D\uDE2D\uD83D\uDE18\uD83D\uDC4D\uD83D\uDE05\uD83D\uDC4F\uD83D\uDE01\uD83D\uDD25\uD83E\uDD70\uD83D\uDC94\uD83D\uDC96\uD83D\uDC99\uD83D\uDE22\uD83E\uDD14\uD83D\uDE06\uD83D\uDE44\uD83D\uDCAA\uD83D\uDE09\u263A\uD83D\uDC4C\uD83E\uDD17\uD83D\uDC9C\uD83D\uDE14\uD83D\uDE0E\uD83D\uDE07\uD83C\uDF39\uD83E\uDD26\uD83C\uDF89\uD83D\uDC9E\u270C\u2728\uD83E\uDD37\uD83D\uDE31\uD83D\uDE0C\uD83C\uDF38\uD83D\uDE4C\uD83D\uDE0B\uD83D\uDC97\uD83D\uDC9A\uD83D\uDE0F\uD83D\uDC9B\uD83D\uDE42\uD83D\uDC93\uD83E\uDD29\uD83D\uDE04\uD83D\uDE00\uD83D\uDDA4\uD83D\uDE03\uD83D\uDCAF\uD83D\uDE48\uD83D\uDC47\uD83C\uDFB6\uD83D\uDE12\uD83E\uDD2D\u2763\uD83D\uDE1C\uD83D\uDC8B\uD83D\uDC40\uD83D\uDE2A\uD83D\uDE11\uD83D\uDCA5\uD83D\uDE4B\uD83D\uDE1E\uD83D\uDE29\uD83D\uDE21\uD83E\uDD2A\uD83D\uDC4A\uD83E\uDD73\uD83D\uDE25\uD83E\uDD24\uD83D\uDC49\uD83D\uDC83\uD83D\uDE33\u270B\uD83D\uDE1A\uD83D\uDE1D\uD83D\uDE34\uD83C\uDF1F\uD83D\uDE2C\uD83D\uDE43\uD83C\uDF40\uD83C\uDF37\uD83D\uDE3B\uD83D\uDE13\u2B50\u2705\uD83E\uDD7A\uD83C\uDF08\uD83D\uDE08\uD83E\uDD18\uD83D\uDCA6\u2714\uD83D\uDE23\uD83C\uDFC3\uD83D\uDC90\u2639\uD83C\uDF8A\uD83D\uDC98\uD83D\uDE20\u261D\uD83D\uDE15\uD83C\uDF3A\uD83C\uDF82\uD83C\uDF3B\uD83D\uDE10\uD83D\uDD95\uD83D\uDC9D\uD83D\uDE4A\uD83D\uDE39\uD83D\uDDE3\uD83D\uDCAB\uD83D\uDC80\uD83D\uDC51\uD83C\uDFB5\uD83E\uDD1E\uD83D\uDE1B\uD83D\uDD34\uD83D\uDE24\uD83C\uDF3C\uD83D\uDE2B\u26BD\uD83E\uDD19\u2615\uD83C\uDFC6\uD83E\uDD2B\uD83D\uDC48\uD83D\uDE2E\uD83D\uDE46\uD83C\uDF7B\uD83C\uDF43\uD83D\uDC36\uD83D\uDC81\uD83D\uDE32\uD83C\uDF3F\uD83E\uDDE1\uD83C\uDF81\u26A1\uD83C\uDF1E\uD83C\uDF88\u274C\u270A\uD83D\uDC4B\uD83D\uDE30\uD83E\uDD28\uD83D\uDE36\uD83E\uDD1D\uD83D\uDEB6\uD83D\uDCB0\uD83C\uDF53\uD83D\uDCA2\uD83E\uDD1F\uD83D\uDE41\uD83D\uDEA8\uD83D\uDCA8\uD83E\uDD2C\u2708\uD83C\uDF80\uD83C\uDF7A\uD83E\uDD13\uD83D\uDE19\uD83D\uDC9F\uD83C\uDF31\uD83D\uDE16\uD83D\uDC76\uD83E\uDD74\u25B6\u27A1\u2753\uD83D\uDC8E\uD83D\uDCB8\u2B07\uD83D\uDE28\uD83C\uDF1A\uD83E\uDD8B\uD83D\uDE37\uD83D\uDD7A\u26A0\uD83D\uDE45\uD83D\uDE1F\uD83D\uDE35\uD83D\uDC4E\uD83E\uDD32\uD83E\uDD20\uD83E\uDD27\uD83D\uDCCC\uD83D\uDD35\uD83D\uDC85\uD83E\uDDD0\uD83D\uDC3E\uD83C\uDF52\uD83D\uDE17\uD83E\uDD11\uD83C\uDF0A\uD83E\uDD2F\uD83D\uDC37\u260E\uD83D\uDCA7\uD83D\uDE2F\uD83D\uDC86\uD83D\uDC46\uD83C\uDFA4\uD83D\uDE47\uD83C\uDF51\u2744\uD83C\uDF34\uD83D\uDCA3\uD83D\uDC38\uD83D\uDC8C\uD83D\uDCCD\uD83E\uDD40\uD83E\uDD22\uD83D\uDC45\uD83D\uDCA1\uD83D\uDCA9\uD83D\uDC50\uD83D\uDCF8\uD83D\uDC7B\uD83E\uDD10\uD83E\uDD2E\uD83C\uDFBC\uD83E\uDD75\uD83D\uDEA9\uD83C\uDF4E\uD83C\uDF4A\uD83D\uDC7C\uD83D\uDC8D\uD83D\uDCE3\uD83E\uDD42');
|
501
|
-
const alphabetBytesToChars = alphabet.reduce((p, c, i) => {
|
502
|
-
p[i] = c;
|
503
|
-
return p;
|
504
|
-
}, []);
|
505
|
-
const alphabetCharsToBytes = alphabet.reduce((p, c, i) => {
|
506
|
-
p[c.codePointAt(0)] = i;
|
507
|
-
return p;
|
508
|
-
}, []);
|
509
|
-
function encode$2(data) {
|
510
|
-
return data.reduce((p, c) => {
|
511
|
-
p += alphabetBytesToChars[c];
|
512
|
-
return p;
|
513
|
-
}, '');
|
514
|
-
}
|
515
|
-
function decode$1(str) {
|
516
|
-
const byts = [];
|
517
|
-
for (const char of str) {
|
518
|
-
const byt = alphabetCharsToBytes[char.codePointAt(0)];
|
519
|
-
if (byt === undefined) {
|
520
|
-
throw new Error(`Non-base256emoji character: ${ char }`);
|
521
|
-
}
|
522
|
-
byts.push(byt);
|
523
|
-
}
|
524
|
-
return new Uint8Array(byts);
|
525
|
-
}
|
526
|
-
const base256emoji = from$1({
|
527
|
-
prefix: '\uD83D\uDE80',
|
528
|
-
name: 'base256emoji',
|
529
|
-
encode: encode$2,
|
530
|
-
decode: decode$1
|
531
|
-
});
|
532
|
-
|
533
|
-
var base256emoji$1 = /*#__PURE__*/Object.freeze({
|
534
|
-
__proto__: null,
|
535
|
-
base256emoji: base256emoji
|
536
|
-
});
|
537
|
-
|
538
|
-
var encode_1 = encode$1;
|
539
|
-
var MSB = 128, REST = 127, MSBALL = ~REST, INT = Math.pow(2, 31);
|
540
|
-
function encode$1(num, out, offset) {
|
541
|
-
out = out || [];
|
542
|
-
offset = offset || 0;
|
543
|
-
var oldOffset = offset;
|
544
|
-
while (num >= INT) {
|
545
|
-
out[offset++] = num & 255 | MSB;
|
546
|
-
num /= 128;
|
547
|
-
}
|
548
|
-
while (num & MSBALL) {
|
549
|
-
out[offset++] = num & 255 | MSB;
|
550
|
-
num >>>= 7;
|
551
|
-
}
|
552
|
-
out[offset] = num | 0;
|
553
|
-
encode$1.bytes = offset - oldOffset + 1;
|
554
|
-
return out;
|
555
|
-
}
|
556
|
-
var decode = read;
|
557
|
-
var MSB$1 = 128, REST$1 = 127;
|
558
|
-
function read(buf, offset) {
|
559
|
-
var res = 0, offset = offset || 0, shift = 0, counter = offset, b, l = buf.length;
|
560
|
-
do {
|
561
|
-
if (counter >= l) {
|
562
|
-
read.bytes = 0;
|
563
|
-
throw new RangeError('Could not decode varint');
|
564
|
-
}
|
565
|
-
b = buf[counter++];
|
566
|
-
res += shift < 28 ? (b & REST$1) << shift : (b & REST$1) * Math.pow(2, shift);
|
567
|
-
shift += 7;
|
568
|
-
} while (b >= MSB$1);
|
569
|
-
read.bytes = counter - offset;
|
570
|
-
return res;
|
571
|
-
}
|
572
|
-
var N1 = Math.pow(2, 7);
|
573
|
-
var N2 = Math.pow(2, 14);
|
574
|
-
var N3 = Math.pow(2, 21);
|
575
|
-
var N4 = Math.pow(2, 28);
|
576
|
-
var N5 = Math.pow(2, 35);
|
577
|
-
var N6 = Math.pow(2, 42);
|
578
|
-
var N7 = Math.pow(2, 49);
|
579
|
-
var N8 = Math.pow(2, 56);
|
580
|
-
var N9 = Math.pow(2, 63);
|
581
|
-
var length = function (value) {
|
582
|
-
return value < N1 ? 1 : value < N2 ? 2 : value < N3 ? 3 : value < N4 ? 4 : value < N5 ? 5 : value < N6 ? 6 : value < N7 ? 7 : value < N8 ? 8 : value < N9 ? 9 : 10;
|
583
|
-
};
|
584
|
-
var varint = {
|
585
|
-
encode: encode_1,
|
586
|
-
decode: decode,
|
587
|
-
encodingLength: length
|
588
|
-
};
|
589
|
-
var _brrp_varint = varint;
|
590
|
-
|
591
|
-
const encodeTo = (int, target, offset = 0) => {
|
592
|
-
_brrp_varint.encode(int, target, offset);
|
593
|
-
return target;
|
594
|
-
};
|
595
|
-
const encodingLength = int => {
|
596
|
-
return _brrp_varint.encodingLength(int);
|
597
|
-
};
|
598
|
-
|
599
|
-
const create = (code, digest) => {
|
600
|
-
const size = digest.byteLength;
|
601
|
-
const sizeOffset = encodingLength(code);
|
602
|
-
const digestOffset = sizeOffset + encodingLength(size);
|
603
|
-
const bytes = new Uint8Array(digestOffset + size);
|
604
|
-
encodeTo(code, bytes, 0);
|
605
|
-
encodeTo(size, bytes, sizeOffset);
|
606
|
-
bytes.set(digest, digestOffset);
|
607
|
-
return new Digest(code, size, digest, bytes);
|
608
|
-
};
|
609
|
-
class Digest {
|
610
|
-
constructor(code, size, digest, bytes) {
|
611
|
-
this.code = code;
|
612
|
-
this.size = size;
|
613
|
-
this.digest = digest;
|
614
|
-
this.bytes = bytes;
|
615
|
-
}
|
616
|
-
}
|
617
|
-
|
618
|
-
const from = ({name, code, encode}) => new Hasher(name, code, encode);
|
619
|
-
class Hasher {
|
620
|
-
constructor(name, code, encode) {
|
621
|
-
this.name = name;
|
622
|
-
this.code = code;
|
623
|
-
this.encode = encode;
|
624
|
-
}
|
625
|
-
digest(input) {
|
626
|
-
if (input instanceof Uint8Array) {
|
627
|
-
const result = this.encode(input);
|
628
|
-
return result instanceof Uint8Array ? create(this.code, result) : result.then(digest => create(this.code, digest));
|
629
|
-
} else {
|
630
|
-
throw Error('Unknown type, must be binary type');
|
631
|
-
}
|
632
|
-
}
|
633
|
-
}
|
634
|
-
|
635
|
-
const sha = name => async data => new Uint8Array(await crypto.subtle.digest(name, data));
|
636
|
-
const sha256 = from({
|
637
|
-
name: 'sha2-256',
|
638
|
-
code: 18,
|
639
|
-
encode: sha('SHA-256')
|
640
|
-
});
|
641
|
-
const sha512 = from({
|
642
|
-
name: 'sha2-512',
|
643
|
-
code: 19,
|
644
|
-
encode: sha('SHA-512')
|
645
|
-
});
|
646
|
-
|
647
|
-
var sha2 = /*#__PURE__*/Object.freeze({
|
648
|
-
__proto__: null,
|
649
|
-
sha256: sha256,
|
650
|
-
sha512: sha512
|
651
|
-
});
|
652
|
-
|
653
|
-
const code = 0;
|
654
|
-
const name = 'identity';
|
655
|
-
const encode = coerce;
|
656
|
-
const digest = input => create(code, encode(input));
|
657
|
-
const identity = {
|
658
|
-
code,
|
659
|
-
name,
|
660
|
-
encode,
|
661
|
-
digest
|
662
|
-
};
|
663
|
-
|
664
|
-
var identity$1 = /*#__PURE__*/Object.freeze({
|
665
|
-
__proto__: null,
|
666
|
-
identity: identity
|
667
|
-
});
|
668
|
-
|
669
|
-
new TextEncoder();
|
670
|
-
new TextDecoder();
|
671
|
-
|
672
|
-
const bases = {
|
673
|
-
...identityBase,
|
674
|
-
...base2$1,
|
675
|
-
...base8$1,
|
676
|
-
...base10$1,
|
677
|
-
...base16$1,
|
678
|
-
...base32$1,
|
679
|
-
...base36$1,
|
680
|
-
...base58,
|
681
|
-
...base64$1,
|
682
|
-
...base256emoji$1
|
683
|
-
};
|
684
|
-
({
|
685
|
-
...sha2,
|
686
|
-
...identity$1
|
687
|
-
});
|
688
|
-
|
689
|
-
function asUint8Array(buf) {
|
690
|
-
if (globalThis.Buffer != null) {
|
691
|
-
return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength);
|
692
|
-
}
|
693
|
-
return buf;
|
694
|
-
}
|
695
|
-
|
696
|
-
function allocUnsafe(size = 0) {
|
697
|
-
if (globalThis.Buffer != null && globalThis.Buffer.allocUnsafe != null) {
|
698
|
-
return asUint8Array(globalThis.Buffer.allocUnsafe(size));
|
699
|
-
}
|
700
|
-
return new Uint8Array(size);
|
701
|
-
}
|
702
|
-
|
703
|
-
function createCodec(name, prefix, encode, decode) {
|
704
|
-
return {
|
705
|
-
name,
|
706
|
-
prefix,
|
707
|
-
encoder: {
|
708
|
-
name,
|
709
|
-
prefix,
|
710
|
-
encode
|
711
|
-
},
|
712
|
-
decoder: { decode }
|
713
|
-
};
|
714
|
-
}
|
715
|
-
const string = createCodec('utf8', 'u', buf => {
|
716
|
-
const decoder = new TextDecoder('utf8');
|
717
|
-
return 'u' + decoder.decode(buf);
|
718
|
-
}, str => {
|
719
|
-
const encoder = new TextEncoder();
|
720
|
-
return encoder.encode(str.substring(1));
|
721
|
-
});
|
722
|
-
const ascii = createCodec('ascii', 'a', buf => {
|
723
|
-
let string = 'a';
|
724
|
-
for (let i = 0; i < buf.length; i++) {
|
725
|
-
string += String.fromCharCode(buf[i]);
|
726
|
-
}
|
727
|
-
return string;
|
728
|
-
}, str => {
|
729
|
-
str = str.substring(1);
|
730
|
-
const buf = allocUnsafe(str.length);
|
731
|
-
for (let i = 0; i < str.length; i++) {
|
732
|
-
buf[i] = str.charCodeAt(i);
|
733
|
-
}
|
734
|
-
return buf;
|
735
|
-
});
|
736
|
-
const BASES = {
|
737
|
-
utf8: string,
|
738
|
-
'utf-8': string,
|
739
|
-
hex: bases.base16,
|
740
|
-
latin1: ascii,
|
741
|
-
ascii: ascii,
|
742
|
-
binary: ascii,
|
743
|
-
...bases
|
744
|
-
};
|
745
|
-
|
746
|
-
function fromString(string, encoding = 'utf8') {
|
747
|
-
const base = BASES[encoding];
|
748
|
-
if (!base) {
|
749
|
-
throw new Error(`Unsupported encoding "${ encoding }"`);
|
750
|
-
}
|
751
|
-
if ((encoding === 'utf8' || encoding === 'utf-8') && globalThis.Buffer != null && globalThis.Buffer.from != null) {
|
752
|
-
return asUint8Array(globalThis.Buffer.from(string, 'utf-8'));
|
753
|
-
}
|
754
|
-
return base.decoder.decode(`${ base.prefix }${ string }`);
|
755
|
-
}
|
756
|
-
|
757
|
-
function toString(array, encoding = 'utf8') {
|
758
|
-
const base = BASES[encoding];
|
759
|
-
if (!base) {
|
760
|
-
throw new Error(`Unsupported encoding "${ encoding }"`);
|
761
|
-
}
|
762
|
-
if ((encoding === 'utf8' || encoding === 'utf-8') && globalThis.Buffer != null && globalThis.Buffer.from != null) {
|
763
|
-
return globalThis.Buffer.from(array.buffer, array.byteOffset, array.byteLength).toString('utf8');
|
764
|
-
}
|
765
|
-
return base.encoder.encode(array).substring(1);
|
766
|
-
}
|
767
|
-
|
768
|
-
/**
|
769
|
-
* Convert input to a byte array.
|
770
|
-
*
|
771
|
-
* Handles both `0x` prefixed and non-prefixed strings.
|
772
|
-
*/
|
773
|
-
function hexToBytes(hex) {
|
774
|
-
if (typeof hex === "string") {
|
775
|
-
const _hex = hex.replace(/^0x/i, "");
|
776
|
-
return fromString(_hex.toLowerCase(), "base16");
|
777
|
-
}
|
778
|
-
return hex;
|
779
|
-
}
|
780
|
-
/**
|
781
|
-
* Convert byte array to hex string (no `0x` prefix).
|
782
|
-
*/
|
783
|
-
const bytesToHex = (bytes) => toString(bytes, "base16");
|
784
|
-
/**
|
785
|
-
* Decode byte array to utf-8 string.
|
786
|
-
*/
|
787
|
-
const bytesToUtf8 = (b) => toString(b, "utf8");
|
788
|
-
/**
|
789
|
-
* Encode utf-8 string to byte array.
|
790
|
-
*/
|
791
|
-
const utf8ToBytes = (s) => fromString(s, "utf8");
|
792
|
-
/**
|
793
|
-
* Concatenate using Uint8Arrays as `Buffer` has a different behavior with `DataView`
|
794
|
-
*/
|
795
|
-
function concat(byteArrays, totalLength) {
|
796
|
-
const len = totalLength ?? byteArrays.reduce((acc, curr) => acc + curr.length, 0);
|
797
|
-
const res = new Uint8Array(len);
|
798
|
-
let offset = 0;
|
799
|
-
for (const bytes of byteArrays) {
|
800
|
-
res.set(bytes, offset);
|
801
|
-
offset += bytes.length;
|
802
|
-
}
|
803
|
-
return res;
|
804
|
-
}
|
805
|
-
|
806
|
-
var utils = /*#__PURE__*/Object.freeze({
|
807
|
-
__proto__: null,
|
808
|
-
hexToBytes: hexToBytes,
|
809
|
-
bytesToHex: bytesToHex,
|
810
|
-
bytesToUtf8: bytesToUtf8,
|
811
|
-
utf8ToBytes: utf8ToBytes,
|
812
|
-
concat: concat
|
813
|
-
});
|
814
|
-
|
815
|
-
export { allocUnsafe as a, asUint8Array as b, concat as c, bytesToHex as d, utf8ToBytes as e, fromString as f, bytesToUtf8 as g, hexToBytes as h, sha256 as s, toString as t, utils as u };
|