@qevm/bytes 5.7.1 → 5.7.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/README.md +3 -5
- package/lib/_version.d.ts +1 -1
- package/lib/_version.js +1 -1
- package/lib/index.d.ts +4 -4
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +66 -66
- package/lib/index.js.map +1 -1
- package/package.json +29 -25
- package/src.ts/_version.ts +1 -1
- package/src.ts/index.ts +127 -66
package/README.md
CHANGED
|
@@ -1,17 +1,15 @@
|
|
|
1
1
|
Byte Manipulation
|
|
2
2
|
=================
|
|
3
3
|
|
|
4
|
-
This sub-module is part of the [ethers project](https://github.com/ethers-io/ethers.js).
|
|
4
|
+
This sub-module is part of the qethers, a fork of [ethers project](https://github.com/ethers-io/ethers.js).
|
|
5
5
|
|
|
6
6
|
It is responsible for manipulating binary data.
|
|
7
7
|
|
|
8
|
-
For more information, see the [documentation](https://docs.ethers.io/v5/api/utils/bytes/).
|
|
9
|
-
|
|
10
8
|
|
|
11
9
|
Importing
|
|
12
10
|
---------
|
|
13
11
|
|
|
14
|
-
Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/
|
|
12
|
+
Most users will prefer to use the [umbrella package](https://www.npmjs.com/package/@qevm/qethers),
|
|
15
13
|
but for those with more specific needs, individual components can be imported.
|
|
16
14
|
|
|
17
15
|
```javascript
|
|
@@ -54,7 +52,7 @@ const {
|
|
|
54
52
|
SignatureLike,
|
|
55
53
|
Signature
|
|
56
54
|
|
|
57
|
-
} = require("@
|
|
55
|
+
} = require("@qevm/bytes");
|
|
58
56
|
```
|
|
59
57
|
|
|
60
58
|
|
package/lib/_version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "bytes/5.7.
|
|
1
|
+
export declare const version = "bytes/5.7.2";
|
|
2
2
|
//# sourceMappingURL=_version.d.ts.map
|
package/lib/_version.js
CHANGED
package/lib/index.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
export
|
|
2
|
-
export
|
|
3
|
-
export
|
|
1
|
+
export type Bytes = ArrayLike<number>;
|
|
2
|
+
export type BytesLike = Bytes | string;
|
|
3
|
+
export type DataOptions = {
|
|
4
4
|
allowMissingPrefix?: boolean;
|
|
5
5
|
hexPad?: "left" | "right" | null;
|
|
6
6
|
};
|
|
7
7
|
export interface Hexable {
|
|
8
8
|
toHexString(): string;
|
|
9
9
|
}
|
|
10
|
-
export
|
|
10
|
+
export type SignatureLike = {
|
|
11
11
|
signature: string;
|
|
12
12
|
publicKey: string;
|
|
13
13
|
} | BytesLike;
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"AASA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;AAEtC,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,MAAM,CAAC;AAEvC,MAAM,MAAM,WAAW,GAAG;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;CACpC,CAAC;AAEF,MAAM,WAAW,OAAO;IACpB,WAAW,IAAI,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,aAAa,GACnB;IACI,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB,GACD,SAAS,CAAC;AAEhB,MAAM,WAAW,SAAS;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACrB;AAuBD,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,SAAS,CAE1D;AAMD,wBAAgB,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,KAAK,CAsBlD;AAED,wBAAgB,QAAQ,CACpB,KAAK,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,EACnC,OAAO,CAAC,EAAE,WAAW,GACtB,UAAU,CA6DZ;AAED,wBAAgB,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,UAAU,CAYlE;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAmBvD;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,CAUpE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAQhE;AAID,wBAAgB,OAAO,CACnB,KAAK,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,EAC5C,OAAO,CAAC,EAAE,WAAW,GACtB,MAAM,CAuER;AAUD,wBAAgB,aAAa,CAAC,IAAI,EAAE,SAAS,UAQ5C;AAED,wBAAgB,YAAY,CACxB,IAAI,EAAE,SAAS,EACf,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,MAAM,GACnB,MAAM,CAcR;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,MAAM,CAMjE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAM7E;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CActD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAgBnE;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,aAAa,GAAG,SAAS,CAgBlE;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,aAAa,GAAG,MAAM,CAI9D"}
|
package/lib/index.js
CHANGED
|
@@ -1,29 +1,43 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
exports.isBytesLike = isBytesLike;
|
|
4
|
+
exports.isBytes = isBytes;
|
|
5
|
+
exports.arrayify = arrayify;
|
|
6
|
+
exports.concat = concat;
|
|
7
|
+
exports.stripZeros = stripZeros;
|
|
8
|
+
exports.zeroPad = zeroPad;
|
|
9
|
+
exports.isHexString = isHexString;
|
|
10
|
+
exports.hexlify = hexlify;
|
|
11
|
+
exports.hexDataLength = hexDataLength;
|
|
12
|
+
exports.hexDataSlice = hexDataSlice;
|
|
13
|
+
exports.hexConcat = hexConcat;
|
|
14
|
+
exports.hexValue = hexValue;
|
|
15
|
+
exports.hexStripZeros = hexStripZeros;
|
|
16
|
+
exports.hexZeroPad = hexZeroPad;
|
|
17
|
+
exports.splitSignature = splitSignature;
|
|
18
|
+
exports.joinSignature = joinSignature;
|
|
19
|
+
const logger_1 = require("@qevm/logger");
|
|
20
|
+
const _version_1 = require("./_version");
|
|
21
|
+
const logger = new logger_1.Logger(_version_1.version);
|
|
7
22
|
///////////////////////////////
|
|
8
23
|
function isHexable(value) {
|
|
9
|
-
return !!
|
|
24
|
+
return !!value.toHexString;
|
|
10
25
|
}
|
|
11
26
|
function addSlice(array) {
|
|
12
27
|
if (array.slice) {
|
|
13
28
|
return array;
|
|
14
29
|
}
|
|
15
30
|
array.slice = function () {
|
|
16
|
-
|
|
31
|
+
const args = Array.prototype.slice.call(arguments);
|
|
17
32
|
return addSlice(new Uint8Array(Array.prototype.slice.apply(array, args)));
|
|
18
33
|
};
|
|
19
34
|
return array;
|
|
20
35
|
}
|
|
21
36
|
function isBytesLike(value) {
|
|
22
|
-
return (
|
|
37
|
+
return (isHexString(value) && !(value.length % 2)) || isBytes(value);
|
|
23
38
|
}
|
|
24
|
-
exports.isBytesLike = isBytesLike;
|
|
25
39
|
function isInteger(value) {
|
|
26
|
-
return
|
|
40
|
+
return typeof value === "number" && value == value && value % 1 === 0;
|
|
27
41
|
}
|
|
28
42
|
function isBytes(value) {
|
|
29
43
|
if (value == null) {
|
|
@@ -32,28 +46,27 @@ function isBytes(value) {
|
|
|
32
46
|
if (value.constructor === Uint8Array) {
|
|
33
47
|
return true;
|
|
34
48
|
}
|
|
35
|
-
if (typeof
|
|
49
|
+
if (typeof value === "string") {
|
|
36
50
|
return false;
|
|
37
51
|
}
|
|
38
52
|
if (!isInteger(value.length) || value.length < 0) {
|
|
39
53
|
return false;
|
|
40
54
|
}
|
|
41
|
-
for (
|
|
42
|
-
|
|
55
|
+
for (let i = 0; i < value.length; i++) {
|
|
56
|
+
const v = value[i];
|
|
43
57
|
if (!isInteger(v) || v < 0 || v >= 256) {
|
|
44
58
|
return false;
|
|
45
59
|
}
|
|
46
60
|
}
|
|
47
61
|
return true;
|
|
48
62
|
}
|
|
49
|
-
exports.isBytes = isBytes;
|
|
50
63
|
function arrayify(value, options) {
|
|
51
64
|
if (!options) {
|
|
52
65
|
options = {};
|
|
53
66
|
}
|
|
54
|
-
if (typeof
|
|
67
|
+
if (typeof value === "number") {
|
|
55
68
|
logger.checkSafeUint53(value, "invalid arrayify value");
|
|
56
|
-
|
|
69
|
+
const result = [];
|
|
57
70
|
while (value) {
|
|
58
71
|
result.unshift(value & 0xff);
|
|
59
72
|
value = parseInt(String(value / 256));
|
|
@@ -63,14 +76,16 @@ function arrayify(value, options) {
|
|
|
63
76
|
}
|
|
64
77
|
return addSlice(new Uint8Array(result));
|
|
65
78
|
}
|
|
66
|
-
if (options.allowMissingPrefix &&
|
|
79
|
+
if (options.allowMissingPrefix &&
|
|
80
|
+
typeof value === "string" &&
|
|
81
|
+
value.substring(0, 2) !== "0x") {
|
|
67
82
|
value = "0x" + value;
|
|
68
83
|
}
|
|
69
84
|
if (isHexable(value)) {
|
|
70
85
|
value = value.toHexString();
|
|
71
86
|
}
|
|
72
87
|
if (isHexString(value)) {
|
|
73
|
-
|
|
88
|
+
let hex = value.substring(2);
|
|
74
89
|
if (hex.length % 2) {
|
|
75
90
|
if (options.hexPad === "left") {
|
|
76
91
|
hex = "0" + hex;
|
|
@@ -82,8 +97,8 @@ function arrayify(value, options) {
|
|
|
82
97
|
logger.throwArgumentError("hex data is odd-length", "value", value);
|
|
83
98
|
}
|
|
84
99
|
}
|
|
85
|
-
|
|
86
|
-
for (
|
|
100
|
+
const result = [];
|
|
101
|
+
for (let i = 0; i < hex.length; i += 2) {
|
|
87
102
|
result.push(parseInt(hex.substring(i, i + 2), 16));
|
|
88
103
|
}
|
|
89
104
|
return addSlice(new Uint8Array(result));
|
|
@@ -93,25 +108,23 @@ function arrayify(value, options) {
|
|
|
93
108
|
}
|
|
94
109
|
return logger.throwArgumentError("invalid arrayify value", "value", value);
|
|
95
110
|
}
|
|
96
|
-
exports.arrayify = arrayify;
|
|
97
111
|
function concat(items) {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
objects.reduce(
|
|
112
|
+
const objects = items.map((item) => arrayify(item));
|
|
113
|
+
const length = objects.reduce((accum, item) => accum + item.length, 0);
|
|
114
|
+
const result = new Uint8Array(length);
|
|
115
|
+
objects.reduce((offset, object) => {
|
|
102
116
|
result.set(object, offset);
|
|
103
117
|
return offset + object.length;
|
|
104
118
|
}, 0);
|
|
105
119
|
return addSlice(result);
|
|
106
120
|
}
|
|
107
|
-
exports.concat = concat;
|
|
108
121
|
function stripZeros(value) {
|
|
109
|
-
|
|
122
|
+
let result = arrayify(value);
|
|
110
123
|
if (result.length === 0) {
|
|
111
124
|
return result;
|
|
112
125
|
}
|
|
113
126
|
// Find the first non-zero entry
|
|
114
|
-
|
|
127
|
+
let start = 0;
|
|
115
128
|
while (start < result.length && result[start] === 0) {
|
|
116
129
|
start++;
|
|
117
130
|
}
|
|
@@ -121,19 +134,17 @@ function stripZeros(value) {
|
|
|
121
134
|
}
|
|
122
135
|
return result;
|
|
123
136
|
}
|
|
124
|
-
exports.stripZeros = stripZeros;
|
|
125
137
|
function zeroPad(value, length) {
|
|
126
138
|
value = arrayify(value);
|
|
127
139
|
if (value.length > length) {
|
|
128
140
|
logger.throwArgumentError("value out of range", "value", arguments[0]);
|
|
129
141
|
}
|
|
130
|
-
|
|
142
|
+
const result = new Uint8Array(length);
|
|
131
143
|
result.set(value, length - value.length);
|
|
132
144
|
return addSlice(result);
|
|
133
145
|
}
|
|
134
|
-
exports.zeroPad = zeroPad;
|
|
135
146
|
function isHexString(value, length) {
|
|
136
|
-
if (typeof
|
|
147
|
+
if (typeof value !== "string" || !value.match(/^0x[0-9A-Fa-f]*$/)) {
|
|
137
148
|
return false;
|
|
138
149
|
}
|
|
139
150
|
if (length && value.length !== 2 + 2 * length) {
|
|
@@ -141,15 +152,14 @@ function isHexString(value, length) {
|
|
|
141
152
|
}
|
|
142
153
|
return true;
|
|
143
154
|
}
|
|
144
|
-
|
|
145
|
-
var HexCharacters = "0123456789abcdef";
|
|
155
|
+
const HexCharacters = "0123456789abcdef";
|
|
146
156
|
function hexlify(value, options) {
|
|
147
157
|
if (!options) {
|
|
148
158
|
options = {};
|
|
149
159
|
}
|
|
150
|
-
if (typeof
|
|
160
|
+
if (typeof value === "number") {
|
|
151
161
|
logger.checkSafeUint53(value, "invalid hexlify value");
|
|
152
|
-
|
|
162
|
+
let hex = "";
|
|
153
163
|
while (value) {
|
|
154
164
|
hex = HexCharacters[value & 0xf] + hex;
|
|
155
165
|
value = Math.floor(value / 16);
|
|
@@ -162,14 +172,16 @@ function hexlify(value, options) {
|
|
|
162
172
|
}
|
|
163
173
|
return "0x00";
|
|
164
174
|
}
|
|
165
|
-
if (typeof
|
|
175
|
+
if (typeof value === "bigint") {
|
|
166
176
|
value = value.toString(16);
|
|
167
177
|
if (value.length % 2) {
|
|
168
|
-
return
|
|
178
|
+
return "0x0" + value;
|
|
169
179
|
}
|
|
170
180
|
return "0x" + value;
|
|
171
181
|
}
|
|
172
|
-
if (options.allowMissingPrefix &&
|
|
182
|
+
if (options.allowMissingPrefix &&
|
|
183
|
+
typeof value === "string" &&
|
|
184
|
+
value.substring(0, 2) !== "0x") {
|
|
173
185
|
value = "0x" + value;
|
|
174
186
|
}
|
|
175
187
|
if (isHexable(value)) {
|
|
@@ -190,16 +202,15 @@ function hexlify(value, options) {
|
|
|
190
202
|
return value.toLowerCase();
|
|
191
203
|
}
|
|
192
204
|
if (isBytes(value)) {
|
|
193
|
-
|
|
194
|
-
for (
|
|
195
|
-
|
|
205
|
+
let result = "0x";
|
|
206
|
+
for (let i = 0; i < value.length; i++) {
|
|
207
|
+
let v = value[i];
|
|
196
208
|
result += HexCharacters[(v & 0xf0) >> 4] + HexCharacters[v & 0x0f];
|
|
197
209
|
}
|
|
198
210
|
return result;
|
|
199
211
|
}
|
|
200
212
|
return logger.throwArgumentError("invalid hexlify value", "value", value);
|
|
201
213
|
}
|
|
202
|
-
exports.hexlify = hexlify;
|
|
203
214
|
/*
|
|
204
215
|
function unoddify(value: BytesLike | Hexable | number): BytesLike | Hexable | number {
|
|
205
216
|
if (typeof(value) === "string" && value.length % 2 && value.substring(0, 2) === "0x") {
|
|
@@ -209,20 +220,19 @@ function unoddify(value: BytesLike | Hexable | number): BytesLike | Hexable | nu
|
|
|
209
220
|
}
|
|
210
221
|
*/
|
|
211
222
|
function hexDataLength(data) {
|
|
212
|
-
if (typeof
|
|
223
|
+
if (typeof data !== "string") {
|
|
213
224
|
data = hexlify(data);
|
|
214
225
|
}
|
|
215
|
-
else if (!isHexString(data) ||
|
|
226
|
+
else if (!isHexString(data) || data.length % 2) {
|
|
216
227
|
return null;
|
|
217
228
|
}
|
|
218
229
|
return (data.length - 2) / 2;
|
|
219
230
|
}
|
|
220
|
-
exports.hexDataLength = hexDataLength;
|
|
221
231
|
function hexDataSlice(data, offset, endOffset) {
|
|
222
|
-
if (typeof
|
|
232
|
+
if (typeof data !== "string") {
|
|
223
233
|
data = hexlify(data);
|
|
224
234
|
}
|
|
225
|
-
else if (!isHexString(data) ||
|
|
235
|
+
else if (!isHexString(data) || data.length % 2) {
|
|
226
236
|
logger.throwArgumentError("invalid hexData", "value", data);
|
|
227
237
|
}
|
|
228
238
|
offset = 2 + 2 * offset;
|
|
@@ -231,40 +241,36 @@ function hexDataSlice(data, offset, endOffset) {
|
|
|
231
241
|
}
|
|
232
242
|
return "0x" + data.substring(offset);
|
|
233
243
|
}
|
|
234
|
-
exports.hexDataSlice = hexDataSlice;
|
|
235
244
|
function hexConcat(items) {
|
|
236
|
-
|
|
237
|
-
items.forEach(
|
|
245
|
+
let result = "0x";
|
|
246
|
+
items.forEach((item) => {
|
|
238
247
|
result += hexlify(item).substring(2);
|
|
239
248
|
});
|
|
240
249
|
return result;
|
|
241
250
|
}
|
|
242
|
-
exports.hexConcat = hexConcat;
|
|
243
251
|
function hexValue(value) {
|
|
244
|
-
|
|
252
|
+
const trimmed = hexStripZeros(hexlify(value, { hexPad: "left" }));
|
|
245
253
|
if (trimmed === "0x") {
|
|
246
254
|
return "0x0";
|
|
247
255
|
}
|
|
248
256
|
return trimmed;
|
|
249
257
|
}
|
|
250
|
-
exports.hexValue = hexValue;
|
|
251
258
|
function hexStripZeros(value) {
|
|
252
|
-
if (typeof
|
|
259
|
+
if (typeof value !== "string") {
|
|
253
260
|
value = hexlify(value);
|
|
254
261
|
}
|
|
255
262
|
if (!isHexString(value)) {
|
|
256
263
|
logger.throwArgumentError("invalid hex string", "value", value);
|
|
257
264
|
}
|
|
258
265
|
value = value.substring(2);
|
|
259
|
-
|
|
266
|
+
let offset = 0;
|
|
260
267
|
while (offset < value.length && value[offset] === "0") {
|
|
261
268
|
offset++;
|
|
262
269
|
}
|
|
263
270
|
return "0x" + value.substring(offset);
|
|
264
271
|
}
|
|
265
|
-
exports.hexStripZeros = hexStripZeros;
|
|
266
272
|
function hexZeroPad(value, length) {
|
|
267
|
-
if (typeof
|
|
273
|
+
if (typeof value !== "string") {
|
|
268
274
|
value = hexlify(value);
|
|
269
275
|
}
|
|
270
276
|
else if (!isHexString(value)) {
|
|
@@ -278,14 +284,13 @@ function hexZeroPad(value, length) {
|
|
|
278
284
|
}
|
|
279
285
|
return value;
|
|
280
286
|
}
|
|
281
|
-
exports.hexZeroPad = hexZeroPad;
|
|
282
287
|
function splitSignature(signature) {
|
|
283
|
-
|
|
288
|
+
const result = {
|
|
284
289
|
signature: "",
|
|
285
290
|
publicKey: "",
|
|
286
291
|
};
|
|
287
292
|
if (isBytesLike(signature)) {
|
|
288
|
-
|
|
293
|
+
let bytes = arrayify(signature);
|
|
289
294
|
result.publicKey = hexlify(bytes.slice(0, 1184));
|
|
290
295
|
result.signature = hexlify(bytes.slice(1184));
|
|
291
296
|
}
|
|
@@ -295,13 +300,8 @@ function splitSignature(signature) {
|
|
|
295
300
|
}
|
|
296
301
|
return result;
|
|
297
302
|
}
|
|
298
|
-
exports.splitSignature = splitSignature;
|
|
299
303
|
function joinSignature(signature) {
|
|
300
304
|
signature = splitSignature(signature);
|
|
301
|
-
return hexlify(concat([
|
|
302
|
-
signature.publicKey,
|
|
303
|
-
signature.signature
|
|
304
|
-
]));
|
|
305
|
+
return hexlify(concat([signature.publicKey, signature.signature]));
|
|
305
306
|
}
|
|
306
|
-
exports.joinSignature = joinSignature;
|
|
307
307
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src.ts/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,27 +1,31 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
"qethers"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
"
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
"
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
2
|
+
"contributors": [
|
|
3
|
+
"Eugene Kuleshov <kulevgen32@gmail.com>",
|
|
4
|
+
"Richard Moore <me@ricmoo.com>"
|
|
5
|
+
],
|
|
6
|
+
"dependencies": {
|
|
7
|
+
"@qevm/logger": "^5.7.1"
|
|
8
|
+
},
|
|
9
|
+
"description": "Bytes utility functions for qethers.",
|
|
10
|
+
"keywords": [
|
|
11
|
+
"QuantumEVM",
|
|
12
|
+
"QEVM",
|
|
13
|
+
"qethers"
|
|
14
|
+
],
|
|
15
|
+
"license": "MIT",
|
|
16
|
+
"main": "./lib/index.js",
|
|
17
|
+
"module": "./lib.esm/index.js",
|
|
18
|
+
"name": "@qevm/bytes",
|
|
19
|
+
"publishConfig": {
|
|
20
|
+
"access": "public"
|
|
21
|
+
},
|
|
22
|
+
"scripts": {
|
|
23
|
+
"auto-build": "npm run build -- -w",
|
|
24
|
+
"build": "tsc -p ./tsconfig.json",
|
|
25
|
+
"test": "echo \"Error: no test specified\" && exit 1"
|
|
26
|
+
},
|
|
27
|
+
"sideEffects": false,
|
|
28
|
+
"tarballHash": "0xd063b80f586d9923d11307949ef6b65855c5a58a836fb36b9e4a71f987001ecf",
|
|
29
|
+
"types": "./lib/index.d.ts",
|
|
30
|
+
"version": "5.7.2"
|
|
27
31
|
}
|
package/src.ts/_version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const version = "bytes/5.7.
|
|
1
|
+
export const version = "bytes/5.7.2";
|
package/src.ts/index.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { Logger } from "@
|
|
3
|
+
import { Logger } from "@qevm/logger";
|
|
4
4
|
import { version } from "./_version";
|
|
5
5
|
const logger = new Logger(version);
|
|
6
6
|
|
|
@@ -20,61 +20,80 @@ export interface Hexable {
|
|
|
20
20
|
toHexString(): string;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
export type SignatureLike =
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
23
|
+
export type SignatureLike =
|
|
24
|
+
| {
|
|
25
|
+
signature: string;
|
|
26
|
+
publicKey: string;
|
|
27
|
+
}
|
|
28
|
+
| BytesLike;
|
|
27
29
|
|
|
28
30
|
export interface Signature {
|
|
29
|
-
signature: string
|
|
30
|
-
publicKey: string
|
|
31
|
+
signature: string;
|
|
32
|
+
publicKey: string;
|
|
31
33
|
}
|
|
32
34
|
|
|
33
35
|
///////////////////////////////
|
|
34
36
|
|
|
35
|
-
|
|
36
37
|
function isHexable(value: any): value is Hexable {
|
|
37
|
-
return !!
|
|
38
|
+
return !!value.toHexString;
|
|
38
39
|
}
|
|
39
40
|
|
|
40
41
|
function addSlice(array: Uint8Array): Uint8Array {
|
|
41
|
-
if (array.slice) {
|
|
42
|
+
if (array.slice) {
|
|
43
|
+
return array;
|
|
44
|
+
}
|
|
42
45
|
|
|
43
|
-
array.slice = function() {
|
|
46
|
+
array.slice = function () {
|
|
44
47
|
const args = Array.prototype.slice.call(arguments);
|
|
45
|
-
return addSlice(
|
|
46
|
-
|
|
48
|
+
return addSlice(
|
|
49
|
+
new Uint8Array(Array.prototype.slice.apply(array, args)),
|
|
50
|
+
);
|
|
51
|
+
};
|
|
47
52
|
|
|
48
53
|
return array;
|
|
49
54
|
}
|
|
50
55
|
|
|
51
56
|
export function isBytesLike(value: any): value is BytesLike {
|
|
52
|
-
return (
|
|
57
|
+
return (isHexString(value) && !(value.length % 2)) || isBytes(value);
|
|
53
58
|
}
|
|
54
59
|
|
|
55
60
|
function isInteger(value: number) {
|
|
56
|
-
return
|
|
61
|
+
return typeof value === "number" && value == value && value % 1 === 0;
|
|
57
62
|
}
|
|
58
63
|
|
|
59
64
|
export function isBytes(value: any): value is Bytes {
|
|
60
|
-
if (value == null) {
|
|
65
|
+
if (value == null) {
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
61
68
|
|
|
62
|
-
if (value.constructor === Uint8Array) {
|
|
63
|
-
|
|
64
|
-
|
|
69
|
+
if (value.constructor === Uint8Array) {
|
|
70
|
+
return true;
|
|
71
|
+
}
|
|
72
|
+
if (typeof value === "string") {
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
75
|
+
if (!isInteger(value.length) || value.length < 0) {
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
65
78
|
|
|
66
79
|
for (let i = 0; i < value.length; i++) {
|
|
67
80
|
const v = value[i];
|
|
68
|
-
if (!isInteger(v) || v < 0 || v >= 256) {
|
|
81
|
+
if (!isInteger(v) || v < 0 || v >= 256) {
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
69
84
|
}
|
|
70
85
|
return true;
|
|
71
86
|
}
|
|
72
87
|
|
|
88
|
+
export function arrayify(
|
|
89
|
+
value: BytesLike | Hexable | number,
|
|
90
|
+
options?: DataOptions,
|
|
91
|
+
): Uint8Array {
|
|
92
|
+
if (!options) {
|
|
93
|
+
options = {};
|
|
94
|
+
}
|
|
73
95
|
|
|
74
|
-
|
|
75
|
-
if (!options) { options = { }; }
|
|
76
|
-
|
|
77
|
-
if (typeof(value) === "number") {
|
|
96
|
+
if (typeof value === "number") {
|
|
78
97
|
logger.checkSafeUint53(value, "invalid arrayify value");
|
|
79
98
|
|
|
80
99
|
const result = [];
|
|
@@ -82,16 +101,24 @@ export function arrayify(value: BytesLike | Hexable | number, options?: DataOpti
|
|
|
82
101
|
result.unshift(value & 0xff);
|
|
83
102
|
value = parseInt(String(value / 256));
|
|
84
103
|
}
|
|
85
|
-
if (result.length === 0) {
|
|
104
|
+
if (result.length === 0) {
|
|
105
|
+
result.push(0);
|
|
106
|
+
}
|
|
86
107
|
|
|
87
108
|
return addSlice(new Uint8Array(result));
|
|
88
109
|
}
|
|
89
110
|
|
|
90
|
-
if (
|
|
91
|
-
|
|
111
|
+
if (
|
|
112
|
+
options.allowMissingPrefix &&
|
|
113
|
+
typeof value === "string" &&
|
|
114
|
+
value.substring(0, 2) !== "0x"
|
|
115
|
+
) {
|
|
116
|
+
value = "0x" + value;
|
|
92
117
|
}
|
|
93
118
|
|
|
94
|
-
if (isHexable(value)) {
|
|
119
|
+
if (isHexable(value)) {
|
|
120
|
+
value = value.toHexString();
|
|
121
|
+
}
|
|
95
122
|
|
|
96
123
|
if (isHexString(value)) {
|
|
97
124
|
let hex = (<string>value).substring(2);
|
|
@@ -101,7 +128,11 @@ export function arrayify(value: BytesLike | Hexable | number, options?: DataOpti
|
|
|
101
128
|
} else if (options.hexPad === "right") {
|
|
102
129
|
hex += "0";
|
|
103
130
|
} else {
|
|
104
|
-
logger.throwArgumentError(
|
|
131
|
+
logger.throwArgumentError(
|
|
132
|
+
"hex data is odd-length",
|
|
133
|
+
"value",
|
|
134
|
+
value,
|
|
135
|
+
);
|
|
105
136
|
}
|
|
106
137
|
}
|
|
107
138
|
|
|
@@ -121,8 +152,8 @@ export function arrayify(value: BytesLike | Hexable | number, options?: DataOpti
|
|
|
121
152
|
}
|
|
122
153
|
|
|
123
154
|
export function concat(items: ReadonlyArray<BytesLike>): Uint8Array {
|
|
124
|
-
const objects = items.map(item => arrayify(item));
|
|
125
|
-
const length = objects.reduce((accum, item) =>
|
|
155
|
+
const objects = items.map((item) => arrayify(item));
|
|
156
|
+
const length = objects.reduce((accum, item) => accum + item.length, 0);
|
|
126
157
|
|
|
127
158
|
const result = new Uint8Array(length);
|
|
128
159
|
|
|
@@ -137,11 +168,15 @@ export function concat(items: ReadonlyArray<BytesLike>): Uint8Array {
|
|
|
137
168
|
export function stripZeros(value: BytesLike): Uint8Array {
|
|
138
169
|
let result: Uint8Array = arrayify(value);
|
|
139
170
|
|
|
140
|
-
if (result.length === 0) {
|
|
171
|
+
if (result.length === 0) {
|
|
172
|
+
return result;
|
|
173
|
+
}
|
|
141
174
|
|
|
142
175
|
// Find the first non-zero entry
|
|
143
176
|
let start = 0;
|
|
144
|
-
while (start < result.length && result[start] === 0) {
|
|
177
|
+
while (start < result.length && result[start] === 0) {
|
|
178
|
+
start++;
|
|
179
|
+
}
|
|
145
180
|
|
|
146
181
|
// If we started with zeros, strip them
|
|
147
182
|
if (start) {
|
|
@@ -163,21 +198,27 @@ export function zeroPad(value: BytesLike, length: number): Uint8Array {
|
|
|
163
198
|
return addSlice(result);
|
|
164
199
|
}
|
|
165
200
|
|
|
166
|
-
|
|
167
201
|
export function isHexString(value: any, length?: number): boolean {
|
|
168
|
-
if (typeof
|
|
169
|
-
return false
|
|
202
|
+
if (typeof value !== "string" || !value.match(/^0x[0-9A-Fa-f]*$/)) {
|
|
203
|
+
return false;
|
|
204
|
+
}
|
|
205
|
+
if (length && value.length !== 2 + 2 * length) {
|
|
206
|
+
return false;
|
|
170
207
|
}
|
|
171
|
-
if (length && value.length !== 2 + 2 * length) { return false; }
|
|
172
208
|
return true;
|
|
173
209
|
}
|
|
174
210
|
|
|
175
211
|
const HexCharacters: string = "0123456789abcdef";
|
|
176
212
|
|
|
177
|
-
export function hexlify(
|
|
178
|
-
|
|
213
|
+
export function hexlify(
|
|
214
|
+
value: BytesLike | Hexable | number | bigint,
|
|
215
|
+
options?: DataOptions,
|
|
216
|
+
): string {
|
|
217
|
+
if (!options) {
|
|
218
|
+
options = {};
|
|
219
|
+
}
|
|
179
220
|
|
|
180
|
-
if (typeof
|
|
221
|
+
if (typeof value === "number") {
|
|
181
222
|
logger.checkSafeUint53(value, "invalid hexlify value");
|
|
182
223
|
|
|
183
224
|
let hex = "";
|
|
@@ -187,24 +228,34 @@ export function hexlify(value: BytesLike | Hexable | number | bigint, options?:
|
|
|
187
228
|
}
|
|
188
229
|
|
|
189
230
|
if (hex.length) {
|
|
190
|
-
if (hex.length % 2) {
|
|
231
|
+
if (hex.length % 2) {
|
|
232
|
+
hex = "0" + hex;
|
|
233
|
+
}
|
|
191
234
|
return "0x" + hex;
|
|
192
235
|
}
|
|
193
236
|
|
|
194
237
|
return "0x00";
|
|
195
238
|
}
|
|
196
239
|
|
|
197
|
-
if (typeof
|
|
240
|
+
if (typeof value === "bigint") {
|
|
198
241
|
value = value.toString(16);
|
|
199
|
-
if (value.length % 2) {
|
|
242
|
+
if (value.length % 2) {
|
|
243
|
+
return "0x0" + value;
|
|
244
|
+
}
|
|
200
245
|
return "0x" + value;
|
|
201
246
|
}
|
|
202
247
|
|
|
203
|
-
if (
|
|
204
|
-
|
|
248
|
+
if (
|
|
249
|
+
options.allowMissingPrefix &&
|
|
250
|
+
typeof value === "string" &&
|
|
251
|
+
value.substring(0, 2) !== "0x"
|
|
252
|
+
) {
|
|
253
|
+
value = "0x" + value;
|
|
205
254
|
}
|
|
206
255
|
|
|
207
|
-
if (isHexable(value)) {
|
|
256
|
+
if (isHexable(value)) {
|
|
257
|
+
return value.toHexString();
|
|
258
|
+
}
|
|
208
259
|
|
|
209
260
|
if (isHexString(value)) {
|
|
210
261
|
if ((<string>value).length % 2) {
|
|
@@ -213,7 +264,11 @@ export function hexlify(value: BytesLike | Hexable | number | bigint, options?:
|
|
|
213
264
|
} else if (options.hexPad === "right") {
|
|
214
265
|
value += "0";
|
|
215
266
|
} else {
|
|
216
|
-
logger.throwArgumentError(
|
|
267
|
+
logger.throwArgumentError(
|
|
268
|
+
"hex data is odd-length",
|
|
269
|
+
"value",
|
|
270
|
+
value,
|
|
271
|
+
);
|
|
217
272
|
}
|
|
218
273
|
}
|
|
219
274
|
return (<string>value).toLowerCase();
|
|
@@ -222,8 +277,8 @@ export function hexlify(value: BytesLike | Hexable | number | bigint, options?:
|
|
|
222
277
|
if (isBytes(value)) {
|
|
223
278
|
let result = "0x";
|
|
224
279
|
for (let i = 0; i < value.length; i++) {
|
|
225
|
-
|
|
226
|
-
|
|
280
|
+
let v = value[i];
|
|
281
|
+
result += HexCharacters[(v & 0xf0) >> 4] + HexCharacters[v & 0x0f];
|
|
227
282
|
}
|
|
228
283
|
return result;
|
|
229
284
|
}
|
|
@@ -240,20 +295,24 @@ function unoddify(value: BytesLike | Hexable | number): BytesLike | Hexable | nu
|
|
|
240
295
|
}
|
|
241
296
|
*/
|
|
242
297
|
export function hexDataLength(data: BytesLike) {
|
|
243
|
-
if (typeof
|
|
298
|
+
if (typeof data !== "string") {
|
|
244
299
|
data = hexlify(data);
|
|
245
|
-
} else if (!isHexString(data) ||
|
|
300
|
+
} else if (!isHexString(data) || data.length % 2) {
|
|
246
301
|
return null;
|
|
247
302
|
}
|
|
248
303
|
|
|
249
304
|
return (data.length - 2) / 2;
|
|
250
305
|
}
|
|
251
306
|
|
|
252
|
-
export function hexDataSlice(
|
|
253
|
-
|
|
307
|
+
export function hexDataSlice(
|
|
308
|
+
data: BytesLike,
|
|
309
|
+
offset: number,
|
|
310
|
+
endOffset?: number,
|
|
311
|
+
): string {
|
|
312
|
+
if (typeof data !== "string") {
|
|
254
313
|
data = hexlify(data);
|
|
255
|
-
} else if (!isHexString(data) ||
|
|
256
|
-
logger.throwArgumentError("invalid hexData", "value", data
|
|
314
|
+
} else if (!isHexString(data) || data.length % 2) {
|
|
315
|
+
logger.throwArgumentError("invalid hexData", "value", data);
|
|
257
316
|
}
|
|
258
317
|
|
|
259
318
|
offset = 2 + 2 * offset;
|
|
@@ -275,24 +334,30 @@ export function hexConcat(items: ReadonlyArray<BytesLike>): string {
|
|
|
275
334
|
|
|
276
335
|
export function hexValue(value: BytesLike | Hexable | number | bigint): string {
|
|
277
336
|
const trimmed = hexStripZeros(hexlify(value, { hexPad: "left" }));
|
|
278
|
-
if (trimmed === "0x") {
|
|
337
|
+
if (trimmed === "0x") {
|
|
338
|
+
return "0x0";
|
|
339
|
+
}
|
|
279
340
|
return trimmed;
|
|
280
341
|
}
|
|
281
342
|
|
|
282
343
|
export function hexStripZeros(value: BytesLike): string {
|
|
283
|
-
if (typeof
|
|
344
|
+
if (typeof value !== "string") {
|
|
345
|
+
value = hexlify(value);
|
|
346
|
+
}
|
|
284
347
|
|
|
285
348
|
if (!isHexString(value)) {
|
|
286
349
|
logger.throwArgumentError("invalid hex string", "value", value);
|
|
287
350
|
}
|
|
288
351
|
value = value.substring(2);
|
|
289
352
|
let offset = 0;
|
|
290
|
-
while (offset < value.length && value[offset] === "0") {
|
|
353
|
+
while (offset < value.length && value[offset] === "0") {
|
|
354
|
+
offset++;
|
|
355
|
+
}
|
|
291
356
|
return "0x" + value.substring(offset);
|
|
292
357
|
}
|
|
293
358
|
|
|
294
359
|
export function hexZeroPad(value: BytesLike, length: number): string {
|
|
295
|
-
if (typeof
|
|
360
|
+
if (typeof value !== "string") {
|
|
296
361
|
value = hexlify(value);
|
|
297
362
|
} else if (!isHexString(value)) {
|
|
298
363
|
logger.throwArgumentError("invalid hex string", "value", value);
|
|
@@ -310,16 +375,15 @@ export function hexZeroPad(value: BytesLike, length: number): string {
|
|
|
310
375
|
}
|
|
311
376
|
|
|
312
377
|
export function splitSignature(signature: SignatureLike): Signature {
|
|
313
|
-
const result: Signature ={
|
|
378
|
+
const result: Signature = {
|
|
314
379
|
signature: "",
|
|
315
380
|
publicKey: "",
|
|
316
381
|
};
|
|
317
382
|
|
|
318
383
|
if (isBytesLike(signature)) {
|
|
319
384
|
let bytes: Uint8Array = arrayify(signature);
|
|
320
|
-
result.publicKey = hexlify(bytes.slice(0,1184));
|
|
385
|
+
result.publicKey = hexlify(bytes.slice(0, 1184));
|
|
321
386
|
result.signature = hexlify(bytes.slice(1184));
|
|
322
|
-
|
|
323
387
|
} else {
|
|
324
388
|
result.publicKey = signature.publicKey;
|
|
325
389
|
result.signature = signature.signature;
|
|
@@ -331,8 +395,5 @@ export function splitSignature(signature: SignatureLike): Signature {
|
|
|
331
395
|
export function joinSignature(signature: SignatureLike): string {
|
|
332
396
|
signature = splitSignature(signature);
|
|
333
397
|
|
|
334
|
-
return hexlify(concat([
|
|
335
|
-
signature.publicKey,
|
|
336
|
-
signature.signature
|
|
337
|
-
]));
|
|
398
|
+
return hexlify(concat([signature.publicKey, signature.signature]));
|
|
338
399
|
}
|