@qevm/hash 5.7.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 (48) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +34 -0
  3. package/lib/_version.d.ts +2 -0
  4. package/lib/_version.d.ts.map +1 -0
  5. package/lib/_version.js +5 -0
  6. package/lib/_version.js.map +1 -0
  7. package/lib/ens-normalize/decoder.d.ts +50 -0
  8. package/lib/ens-normalize/decoder.d.ts.map +1 -0
  9. package/lib/ens-normalize/decoder.js +266 -0
  10. package/lib/ens-normalize/decoder.js.map +1 -0
  11. package/lib/ens-normalize/include.d.ts +30 -0
  12. package/lib/ens-normalize/include.d.ts.map +1 -0
  13. package/lib/ens-normalize/include.js +38 -0
  14. package/lib/ens-normalize/include.js.map +1 -0
  15. package/lib/ens-normalize/lib.d.ts +31 -0
  16. package/lib/ens-normalize/lib.d.ts.map +1 -0
  17. package/lib/ens-normalize/lib.js +148 -0
  18. package/lib/ens-normalize/lib.js.map +1 -0
  19. package/lib/id.d.ts +2 -0
  20. package/lib/id.d.ts.map +1 -0
  21. package/lib/id.js +10 -0
  22. package/lib/id.js.map +1 -0
  23. package/lib/index.d.ts +7 -0
  24. package/lib/index.d.ts.map +1 -0
  25. package/lib/index.js +17 -0
  26. package/lib/index.js.map +1 -0
  27. package/lib/message.d.ts +4 -0
  28. package/lib/message.d.ts.map +1 -0
  29. package/lib/message.js +19 -0
  30. package/lib/message.js.map +1 -0
  31. package/lib/namehash.d.ts +5 -0
  32. package/lib/namehash.d.ts.map +1 -0
  33. package/lib/namehash.js +79 -0
  34. package/lib/namehash.js.map +1 -0
  35. package/lib/typed-data.d.ts +29 -0
  36. package/lib/typed-data.d.ts.map +1 -0
  37. package/lib/typed-data.js +501 -0
  38. package/lib/typed-data.js.map +1 -0
  39. package/package.json +32 -0
  40. package/src.ts/_version.ts +1 -0
  41. package/src.ts/ens-normalize/decoder.ts +283 -0
  42. package/src.ts/ens-normalize/include.ts +37 -0
  43. package/src.ts/ens-normalize/lib.ts +140 -0
  44. package/src.ts/id.ts +6 -0
  45. package/src.ts/index.ts +24 -0
  46. package/src.ts/message.ts +15 -0
  47. package/src.ts/namehash.ts +83 -0
  48. package/src.ts/typed-data.ts +507 -0
@@ -0,0 +1,501 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.TypedDataEncoder = void 0;
40
+ var address_1 = require("@qevm/address");
41
+ var bignumber_1 = require("@ethersproject/bignumber");
42
+ var bytes_1 = require("@qevm/bytes");
43
+ var keccak256_1 = require("@ethersproject/keccak256");
44
+ var properties_1 = require("@ethersproject/properties");
45
+ var logger_1 = require("@ethersproject/logger");
46
+ var _version_1 = require("./_version");
47
+ var logger = new logger_1.Logger(_version_1.version);
48
+ var id_1 = require("./id");
49
+ var padding = new Uint8Array(32);
50
+ padding.fill(0);
51
+ var NegativeOne = bignumber_1.BigNumber.from(-1);
52
+ var Zero = bignumber_1.BigNumber.from(0);
53
+ var One = bignumber_1.BigNumber.from(1);
54
+ var MaxUint256 = bignumber_1.BigNumber.from("0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");
55
+ function hexPadRight(value) {
56
+ var bytes = (0, bytes_1.arrayify)(value);
57
+ var padOffset = bytes.length % 32;
58
+ if (padOffset) {
59
+ return (0, bytes_1.hexConcat)([bytes, padding.slice(padOffset)]);
60
+ }
61
+ return (0, bytes_1.hexlify)(bytes);
62
+ }
63
+ var hexTrue = (0, bytes_1.hexZeroPad)(One.toHexString(), 32);
64
+ var hexFalse = (0, bytes_1.hexZeroPad)(Zero.toHexString(), 32);
65
+ var domainFieldTypes = {
66
+ name: "string",
67
+ version: "string",
68
+ chainId: "uint256",
69
+ verifyingContract: "address",
70
+ salt: "bytes32"
71
+ };
72
+ var domainFieldNames = [
73
+ "name", "version", "chainId", "verifyingContract", "salt"
74
+ ];
75
+ function checkString(key) {
76
+ return function (value) {
77
+ if (typeof (value) !== "string") {
78
+ logger.throwArgumentError("invalid domain value for " + JSON.stringify(key), "domain." + key, value);
79
+ }
80
+ return value;
81
+ };
82
+ }
83
+ var domainChecks = {
84
+ name: checkString("name"),
85
+ version: checkString("version"),
86
+ chainId: function (value) {
87
+ try {
88
+ return bignumber_1.BigNumber.from(value).toString();
89
+ }
90
+ catch (error) { }
91
+ return logger.throwArgumentError("invalid domain value for \"chainId\"", "domain.chainId", value);
92
+ },
93
+ verifyingContract: function (value) {
94
+ try {
95
+ return (0, address_1.getAddress)(value).toLowerCase();
96
+ }
97
+ catch (error) { }
98
+ return logger.throwArgumentError("invalid domain value \"verifyingContract\"", "domain.verifyingContract", value);
99
+ },
100
+ salt: function (value) {
101
+ try {
102
+ var bytes = (0, bytes_1.arrayify)(value);
103
+ if (bytes.length !== 32) {
104
+ throw new Error("bad length");
105
+ }
106
+ return (0, bytes_1.hexlify)(bytes);
107
+ }
108
+ catch (error) { }
109
+ return logger.throwArgumentError("invalid domain value \"salt\"", "domain.salt", value);
110
+ }
111
+ };
112
+ function getBaseEncoder(type) {
113
+ // intXX and uintXX
114
+ {
115
+ var match = type.match(/^(u?)int(\d*)$/);
116
+ if (match) {
117
+ var signed = (match[1] === "");
118
+ var width = parseInt(match[2] || "256");
119
+ if (width % 8 !== 0 || width > 256 || (match[2] && match[2] !== String(width))) {
120
+ logger.throwArgumentError("invalid numeric width", "type", type);
121
+ }
122
+ var boundsUpper_1 = MaxUint256.mask(signed ? (width - 1) : width);
123
+ var boundsLower_1 = signed ? boundsUpper_1.add(One).mul(NegativeOne) : Zero;
124
+ return function (value) {
125
+ var v = bignumber_1.BigNumber.from(value);
126
+ if (v.lt(boundsLower_1) || v.gt(boundsUpper_1)) {
127
+ logger.throwArgumentError("value out-of-bounds for " + type, "value", value);
128
+ }
129
+ return (0, bytes_1.hexZeroPad)(v.toTwos(256).toHexString(), 32);
130
+ };
131
+ }
132
+ }
133
+ // bytesXX
134
+ {
135
+ var match = type.match(/^bytes(\d+)$/);
136
+ if (match) {
137
+ var width_1 = parseInt(match[1]);
138
+ if (width_1 === 0 || width_1 > 32 || match[1] !== String(width_1)) {
139
+ logger.throwArgumentError("invalid bytes width", "type", type);
140
+ }
141
+ return function (value) {
142
+ var bytes = (0, bytes_1.arrayify)(value);
143
+ if (bytes.length !== width_1) {
144
+ logger.throwArgumentError("invalid length for " + type, "value", value);
145
+ }
146
+ return hexPadRight(value);
147
+ };
148
+ }
149
+ }
150
+ switch (type) {
151
+ case "address": return function (value) {
152
+ return (0, bytes_1.hexZeroPad)((0, address_1.getAddress)(value), 32);
153
+ };
154
+ case "bool": return function (value) {
155
+ return ((!value) ? hexFalse : hexTrue);
156
+ };
157
+ case "bytes": return function (value) {
158
+ return (0, keccak256_1.keccak256)(value);
159
+ };
160
+ case "string": return function (value) {
161
+ return (0, id_1.id)(value);
162
+ };
163
+ }
164
+ return null;
165
+ }
166
+ function encodeType(name, fields) {
167
+ return name + "(" + fields.map(function (_a) {
168
+ var name = _a.name, type = _a.type;
169
+ return (type + " " + name);
170
+ }).join(",") + ")";
171
+ }
172
+ var TypedDataEncoder = /** @class */ (function () {
173
+ function TypedDataEncoder(types) {
174
+ (0, properties_1.defineReadOnly)(this, "types", Object.freeze((0, properties_1.deepCopy)(types)));
175
+ (0, properties_1.defineReadOnly)(this, "_encoderCache", {});
176
+ (0, properties_1.defineReadOnly)(this, "_types", {});
177
+ // Link struct types to their direct child structs
178
+ var links = {};
179
+ // Link structs to structs which contain them as a child
180
+ var parents = {};
181
+ // Link all subtypes within a given struct
182
+ var subtypes = {};
183
+ Object.keys(types).forEach(function (type) {
184
+ links[type] = {};
185
+ parents[type] = [];
186
+ subtypes[type] = {};
187
+ });
188
+ var _loop_1 = function (name_1) {
189
+ var uniqueNames = {};
190
+ types[name_1].forEach(function (field) {
191
+ // Check each field has a unique name
192
+ if (uniqueNames[field.name]) {
193
+ logger.throwArgumentError("duplicate variable name " + JSON.stringify(field.name) + " in " + JSON.stringify(name_1), "types", types);
194
+ }
195
+ uniqueNames[field.name] = true;
196
+ // Get the base type (drop any array specifiers)
197
+ var baseType = field.type.match(/^([^\x5b]*)(\x5b|$)/)[1];
198
+ if (baseType === name_1) {
199
+ logger.throwArgumentError("circular type reference to " + JSON.stringify(baseType), "types", types);
200
+ }
201
+ // Is this a base encoding type?
202
+ var encoder = getBaseEncoder(baseType);
203
+ if (encoder) {
204
+ return;
205
+ }
206
+ if (!parents[baseType]) {
207
+ logger.throwArgumentError("unknown type " + JSON.stringify(baseType), "types", types);
208
+ }
209
+ // Add linkage
210
+ parents[baseType].push(name_1);
211
+ links[name_1][baseType] = true;
212
+ });
213
+ };
214
+ for (var name_1 in types) {
215
+ _loop_1(name_1);
216
+ }
217
+ // Deduce the primary type
218
+ var primaryTypes = Object.keys(parents).filter(function (n) { return (parents[n].length === 0); });
219
+ if (primaryTypes.length === 0) {
220
+ logger.throwArgumentError("missing primary type", "types", types);
221
+ }
222
+ else if (primaryTypes.length > 1) {
223
+ logger.throwArgumentError("ambiguous primary types or unused types: " + primaryTypes.map(function (t) { return (JSON.stringify(t)); }).join(", "), "types", types);
224
+ }
225
+ (0, properties_1.defineReadOnly)(this, "primaryType", primaryTypes[0]);
226
+ // Check for circular type references
227
+ function checkCircular(type, found) {
228
+ if (found[type]) {
229
+ logger.throwArgumentError("circular type reference to " + JSON.stringify(type), "types", types);
230
+ }
231
+ found[type] = true;
232
+ Object.keys(links[type]).forEach(function (child) {
233
+ if (!parents[child]) {
234
+ return;
235
+ }
236
+ // Recursively check children
237
+ checkCircular(child, found);
238
+ // Mark all ancestors as having this decendant
239
+ Object.keys(found).forEach(function (subtype) {
240
+ subtypes[subtype][child] = true;
241
+ });
242
+ });
243
+ delete found[type];
244
+ }
245
+ checkCircular(this.primaryType, {});
246
+ // Compute each fully describe type
247
+ for (var name_2 in subtypes) {
248
+ var st = Object.keys(subtypes[name_2]);
249
+ st.sort();
250
+ this._types[name_2] = encodeType(name_2, types[name_2]) + st.map(function (t) { return encodeType(t, types[t]); }).join("");
251
+ }
252
+ }
253
+ TypedDataEncoder.prototype.getEncoder = function (type) {
254
+ var encoder = this._encoderCache[type];
255
+ if (!encoder) {
256
+ encoder = this._encoderCache[type] = this._getEncoder(type);
257
+ }
258
+ return encoder;
259
+ };
260
+ TypedDataEncoder.prototype._getEncoder = function (type) {
261
+ var _this = this;
262
+ // Basic encoder type (address, bool, uint256, etc)
263
+ {
264
+ var encoder = getBaseEncoder(type);
265
+ if (encoder) {
266
+ return encoder;
267
+ }
268
+ }
269
+ // Array
270
+ var match = type.match(/^(.*)(\x5b(\d*)\x5d)$/);
271
+ if (match) {
272
+ var subtype_1 = match[1];
273
+ var subEncoder_1 = this.getEncoder(subtype_1);
274
+ var length_1 = parseInt(match[3]);
275
+ return function (value) {
276
+ if (length_1 >= 0 && value.length !== length_1) {
277
+ logger.throwArgumentError("array length mismatch; expected length ${ arrayLength }", "value", value);
278
+ }
279
+ var result = value.map(subEncoder_1);
280
+ if (_this._types[subtype_1]) {
281
+ result = result.map(keccak256_1.keccak256);
282
+ }
283
+ return (0, keccak256_1.keccak256)((0, bytes_1.hexConcat)(result));
284
+ };
285
+ }
286
+ // Struct
287
+ var fields = this.types[type];
288
+ if (fields) {
289
+ var encodedType_1 = (0, id_1.id)(this._types[type]);
290
+ return function (value) {
291
+ var values = fields.map(function (_a) {
292
+ var name = _a.name, type = _a.type;
293
+ var result = _this.getEncoder(type)(value[name]);
294
+ if (_this._types[type]) {
295
+ return (0, keccak256_1.keccak256)(result);
296
+ }
297
+ return result;
298
+ });
299
+ values.unshift(encodedType_1);
300
+ return (0, bytes_1.hexConcat)(values);
301
+ };
302
+ }
303
+ return logger.throwArgumentError("unknown type: " + type, "type", type);
304
+ };
305
+ TypedDataEncoder.prototype.encodeType = function (name) {
306
+ var result = this._types[name];
307
+ if (!result) {
308
+ logger.throwArgumentError("unknown type: " + JSON.stringify(name), "name", name);
309
+ }
310
+ return result;
311
+ };
312
+ TypedDataEncoder.prototype.encodeData = function (type, value) {
313
+ return this.getEncoder(type)(value);
314
+ };
315
+ TypedDataEncoder.prototype.hashStruct = function (name, value) {
316
+ return (0, keccak256_1.keccak256)(this.encodeData(name, value));
317
+ };
318
+ TypedDataEncoder.prototype.encode = function (value) {
319
+ return this.encodeData(this.primaryType, value);
320
+ };
321
+ TypedDataEncoder.prototype.hash = function (value) {
322
+ return this.hashStruct(this.primaryType, value);
323
+ };
324
+ TypedDataEncoder.prototype._visit = function (type, value, callback) {
325
+ var _this = this;
326
+ // Basic encoder type (address, bool, uint256, etc)
327
+ {
328
+ var encoder = getBaseEncoder(type);
329
+ if (encoder) {
330
+ return callback(type, value);
331
+ }
332
+ }
333
+ // Array
334
+ var match = type.match(/^(.*)(\x5b(\d*)\x5d)$/);
335
+ if (match) {
336
+ var subtype_2 = match[1];
337
+ var length_2 = parseInt(match[3]);
338
+ if (length_2 >= 0 && value.length !== length_2) {
339
+ logger.throwArgumentError("array length mismatch; expected length ${ arrayLength }", "value", value);
340
+ }
341
+ return value.map(function (v) { return _this._visit(subtype_2, v, callback); });
342
+ }
343
+ // Struct
344
+ var fields = this.types[type];
345
+ if (fields) {
346
+ return fields.reduce(function (accum, _a) {
347
+ var name = _a.name, type = _a.type;
348
+ accum[name] = _this._visit(type, value[name], callback);
349
+ return accum;
350
+ }, {});
351
+ }
352
+ return logger.throwArgumentError("unknown type: " + type, "type", type);
353
+ };
354
+ TypedDataEncoder.prototype.visit = function (value, callback) {
355
+ return this._visit(this.primaryType, value, callback);
356
+ };
357
+ TypedDataEncoder.from = function (types) {
358
+ return new TypedDataEncoder(types);
359
+ };
360
+ TypedDataEncoder.getPrimaryType = function (types) {
361
+ return TypedDataEncoder.from(types).primaryType;
362
+ };
363
+ TypedDataEncoder.hashStruct = function (name, types, value) {
364
+ return TypedDataEncoder.from(types).hashStruct(name, value);
365
+ };
366
+ TypedDataEncoder.hashDomain = function (domain) {
367
+ var domainFields = [];
368
+ for (var name_3 in domain) {
369
+ var type = domainFieldTypes[name_3];
370
+ if (!type) {
371
+ logger.throwArgumentError("invalid typed-data domain key: " + JSON.stringify(name_3), "domain", domain);
372
+ }
373
+ domainFields.push({ name: name_3, type: type });
374
+ }
375
+ domainFields.sort(function (a, b) {
376
+ return domainFieldNames.indexOf(a.name) - domainFieldNames.indexOf(b.name);
377
+ });
378
+ return TypedDataEncoder.hashStruct("EIP712Domain", { EIP712Domain: domainFields }, domain);
379
+ };
380
+ TypedDataEncoder.encode = function (domain, types, value) {
381
+ return (0, bytes_1.hexConcat)([
382
+ "0x1901",
383
+ TypedDataEncoder.hashDomain(domain),
384
+ TypedDataEncoder.from(types).hash(value)
385
+ ]);
386
+ };
387
+ TypedDataEncoder.hash = function (domain, types, value) {
388
+ return (0, keccak256_1.keccak256)(TypedDataEncoder.encode(domain, types, value));
389
+ };
390
+ // Replaces all address types with ENS names with their looked up address
391
+ TypedDataEncoder.resolveNames = function (domain, types, value, resolveName) {
392
+ return __awaiter(this, void 0, void 0, function () {
393
+ var ensCache, encoder, _a, _b, _i, name_4, _c, _d;
394
+ return __generator(this, function (_e) {
395
+ switch (_e.label) {
396
+ case 0:
397
+ // Make a copy to isolate it from the object passed in
398
+ domain = (0, properties_1.shallowCopy)(domain);
399
+ ensCache = {};
400
+ // Do we need to look up the domain's verifyingContract?
401
+ if (domain.verifyingContract && !(0, bytes_1.isHexString)(domain.verifyingContract, 20)) {
402
+ ensCache[domain.verifyingContract] = "0x";
403
+ }
404
+ encoder = TypedDataEncoder.from(types);
405
+ // Get a list of all the addresses
406
+ encoder.visit(value, function (type, value) {
407
+ if (type === "address" && !(0, bytes_1.isHexString)(value, 20)) {
408
+ ensCache[value] = "0x";
409
+ }
410
+ return value;
411
+ });
412
+ _a = [];
413
+ for (_b in ensCache)
414
+ _a.push(_b);
415
+ _i = 0;
416
+ _e.label = 1;
417
+ case 1:
418
+ if (!(_i < _a.length)) return [3 /*break*/, 4];
419
+ name_4 = _a[_i];
420
+ _c = ensCache;
421
+ _d = name_4;
422
+ return [4 /*yield*/, resolveName(name_4)];
423
+ case 2:
424
+ _c[_d] = _e.sent();
425
+ _e.label = 3;
426
+ case 3:
427
+ _i++;
428
+ return [3 /*break*/, 1];
429
+ case 4:
430
+ // Replace the domain verifyingContract if needed
431
+ if (domain.verifyingContract && ensCache[domain.verifyingContract]) {
432
+ domain.verifyingContract = ensCache[domain.verifyingContract];
433
+ }
434
+ // Replace all ENS names with their address
435
+ value = encoder.visit(value, function (type, value) {
436
+ if (type === "address" && ensCache[value]) {
437
+ return ensCache[value];
438
+ }
439
+ return value;
440
+ });
441
+ return [2 /*return*/, { domain: domain, value: value }];
442
+ }
443
+ });
444
+ });
445
+ };
446
+ TypedDataEncoder.getPayload = function (domain, types, value) {
447
+ // Validate the domain fields
448
+ TypedDataEncoder.hashDomain(domain);
449
+ // Derive the EIP712Domain Struct reference type
450
+ var domainValues = {};
451
+ var domainTypes = [];
452
+ domainFieldNames.forEach(function (name) {
453
+ var value = domain[name];
454
+ if (value == null) {
455
+ return;
456
+ }
457
+ domainValues[name] = domainChecks[name](value);
458
+ domainTypes.push({ name: name, type: domainFieldTypes[name] });
459
+ });
460
+ var encoder = TypedDataEncoder.from(types);
461
+ var typesWithDomain = (0, properties_1.shallowCopy)(types);
462
+ if (typesWithDomain.EIP712Domain) {
463
+ logger.throwArgumentError("types must not contain EIP712Domain type", "types.EIP712Domain", types);
464
+ }
465
+ else {
466
+ typesWithDomain.EIP712Domain = domainTypes;
467
+ }
468
+ // Validate the data structures and types
469
+ encoder.encode(value);
470
+ return {
471
+ types: typesWithDomain,
472
+ domain: domainValues,
473
+ primaryType: encoder.primaryType,
474
+ message: encoder.visit(value, function (type, value) {
475
+ // bytes
476
+ if (type.match(/^bytes(\d*)/)) {
477
+ return (0, bytes_1.hexlify)((0, bytes_1.arrayify)(value));
478
+ }
479
+ // uint or int
480
+ if (type.match(/^u?int/)) {
481
+ return bignumber_1.BigNumber.from(value).toString();
482
+ }
483
+ switch (type) {
484
+ case "address":
485
+ return value.toLowerCase();
486
+ case "bool":
487
+ return !!value;
488
+ case "string":
489
+ if (typeof (value) !== "string") {
490
+ logger.throwArgumentError("invalid string", "value", value);
491
+ }
492
+ return value;
493
+ }
494
+ return logger.throwArgumentError("unsupported type", "type", type);
495
+ })
496
+ };
497
+ };
498
+ return TypedDataEncoder;
499
+ }());
500
+ exports.TypedDataEncoder = TypedDataEncoder;
501
+ //# sourceMappingURL=typed-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typed-data.js","sourceRoot":"","sources":["../src.ts/typed-data.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,32 @@
1
+ {
2
+ "author": "Eugene Kuleshov",
3
+ "dependencies": {
4
+ "@qevm/abstract-signer": "^5.7.1",
5
+ "@qevm/address": "^5.7.0",
6
+ "@ethersproject/base64": "^5.7.0",
7
+ "@ethersproject/bignumber": "^5.7.0",
8
+ "@qevm/bytes": "5.7.1",
9
+ "@ethersproject/keccak256": "^5.7.0",
10
+ "@ethersproject/logger": "^5.7.0",
11
+ "@ethersproject/properties": "^5.7.0",
12
+ "@ethersproject/strings": "^5.7.0"
13
+ },
14
+ "description": "Hash utility functions for quantum Ethereum.",
15
+ "keywords": [
16
+ "qevm",
17
+ "qethers"
18
+ ],
19
+ "license": "MIT",
20
+ "main": "./lib/index.js",
21
+ "module": "./lib.esm/index.js",
22
+ "name": "@qevm/hash",
23
+ "publishConfig": {
24
+ "access": "public"
25
+ },
26
+ "scripts": {
27
+ "test": "echo \"Error: no test specified\" && exit 1"
28
+ },
29
+ "sideEffects": false,
30
+ "types": "./lib/index.d.ts",
31
+ "version": "5.7.1"
32
+ }
@@ -0,0 +1 @@
1
+ export const version = "hash/5.7.0";