@inco/js 0.1.20 → 0.1.22
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 +86 -30
- package/dist/encryption/index.cjs +1745 -35
- package/dist/encryption/index.mjs +1745 -35
- package/dist/generated/abis/addTwo.d.ts +8 -0
- package/dist/generated/abis/index.cjs +11 -0
- package/dist/generated/abis/index.mjs +11 -0
- package/dist/generated/lightning.d.ts +252 -6
- package/dist/index.cjs +1992 -35
- package/dist/index.d.ts +1 -0
- package/dist/index.mjs +1992 -35
- package/dist/lite/index.cjs +2068 -87
- package/dist/lite/index.mjs +5767 -3724
- package/dist/lite/reencrypt.d.ts +2 -2
- package/dist/local/index.cjs +31 -878
- package/dist/local/index.mjs +5358 -6142
- package/dist/local/local-node.d.ts +1 -2
- package/dist/reencryption/index.cjs +2034 -66
- package/dist/reencryption/index.mjs +2034 -66
- package/dist/viem.d.ts +53 -52
- package/package.json +1 -1
@@ -41,7 +41,7 @@ var __export = (target, all) => {
|
|
41
41
|
};
|
42
42
|
var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
|
43
43
|
|
44
|
-
//
|
44
|
+
// node_modules/viem/_esm/utils/data/isHex.js
|
45
45
|
function isHex(value6, { strict: strict2 = true } = {}) {
|
46
46
|
if (!value6)
|
47
47
|
return false;
|
@@ -50,18 +50,19 @@ function isHex(value6, { strict: strict2 = true } = {}) {
|
|
50
50
|
return strict2 ? /^0x[0-9a-fA-F]*$/.test(value6) : value6.startsWith("0x");
|
51
51
|
}
|
52
52
|
|
53
|
-
//
|
53
|
+
// node_modules/viem/_esm/utils/data/size.js
|
54
54
|
function size21(value6) {
|
55
55
|
if (isHex(value6, { strict: false }))
|
56
56
|
return Math.ceil((value6.length - 2) / 2);
|
57
57
|
return value6.length;
|
58
58
|
}
|
59
|
-
var init_size = () => {
|
59
|
+
var init_size = () => {
|
60
|
+
};
|
60
61
|
|
61
|
-
//
|
62
|
-
var version = "2.
|
62
|
+
// node_modules/viem/_esm/errors/version.js
|
63
|
+
var version = "2.22.23";
|
63
64
|
|
64
|
-
//
|
65
|
+
// node_modules/viem/_esm/errors/base.js
|
65
66
|
function walk(err, fn) {
|
66
67
|
if (fn?.(err))
|
67
68
|
return err;
|
@@ -149,7 +150,7 @@ var init_base = __esm(() => {
|
|
149
150
|
};
|
150
151
|
});
|
151
152
|
|
152
|
-
//
|
153
|
+
// node_modules/viem/_esm/errors/abi.js
|
153
154
|
var AbiEncodingLengthMismatchError, BytesSizeMismatchError, UnsupportedPackedAbiType;
|
154
155
|
var init_abi = __esm(() => {
|
155
156
|
init_base();
|
@@ -179,10 +180,15 @@ var init_abi = __esm(() => {
|
|
179
180
|
};
|
180
181
|
});
|
181
182
|
|
182
|
-
//
|
183
|
-
var SizeExceedsPaddingSizeError;
|
183
|
+
// node_modules/viem/_esm/errors/data.js
|
184
|
+
var SliceOffsetOutOfBoundsError, SizeExceedsPaddingSizeError;
|
184
185
|
var init_data = __esm(() => {
|
185
186
|
init_base();
|
187
|
+
SliceOffsetOutOfBoundsError = class SliceOffsetOutOfBoundsError extends BaseError {
|
188
|
+
constructor({ offset, position, size: size22 }) {
|
189
|
+
super(`Slice ${position === "start" ? "starting" : "ending"} at offset "${offset}" is out-of-bounds (size: ${size22}).`, { name: "SliceOffsetOutOfBoundsError" });
|
190
|
+
}
|
191
|
+
};
|
186
192
|
SizeExceedsPaddingSizeError = class SizeExceedsPaddingSizeError extends BaseError {
|
187
193
|
constructor({ size: size22, targetSize, type: type2 }) {
|
188
194
|
super(`${type2.charAt(0).toUpperCase()}${type2.slice(1).toLowerCase()} size (${size22}) exceeds padding size (${targetSize}).`, { name: "SizeExceedsPaddingSizeError" });
|
@@ -190,7 +196,7 @@ var init_data = __esm(() => {
|
|
190
196
|
};
|
191
197
|
});
|
192
198
|
|
193
|
-
//
|
199
|
+
// node_modules/viem/_esm/utils/data/pad.js
|
194
200
|
function pad(hexOrBytes, { dir: dir2, size: size22 = 32 } = {}) {
|
195
201
|
if (typeof hexOrBytes === "string")
|
196
202
|
return padHex(hexOrBytes, { dir: dir2, size: size22 });
|
@@ -228,7 +234,7 @@ var init_pad = __esm(() => {
|
|
228
234
|
init_data();
|
229
235
|
});
|
230
236
|
|
231
|
-
//
|
237
|
+
// node_modules/viem/_esm/errors/encoding.js
|
232
238
|
var IntegerOutOfRangeError, SizeOverflowError;
|
233
239
|
var init_encoding = __esm(() => {
|
234
240
|
init_base();
|
@@ -244,7 +250,26 @@ var init_encoding = __esm(() => {
|
|
244
250
|
};
|
245
251
|
});
|
246
252
|
|
247
|
-
//
|
253
|
+
// node_modules/viem/_esm/utils/data/trim.js
|
254
|
+
function trim(hexOrBytes, { dir: dir2 = "left" } = {}) {
|
255
|
+
let data = typeof hexOrBytes === "string" ? hexOrBytes.replace("0x", "") : hexOrBytes;
|
256
|
+
let sliceLength = 0;
|
257
|
+
for (let i = 0;i < data.length - 1; i++) {
|
258
|
+
if (data[dir2 === "left" ? i : data.length - i - 1].toString() === "0")
|
259
|
+
sliceLength++;
|
260
|
+
else
|
261
|
+
break;
|
262
|
+
}
|
263
|
+
data = dir2 === "left" ? data.slice(sliceLength) : data.slice(0, data.length - sliceLength);
|
264
|
+
if (typeof hexOrBytes === "string") {
|
265
|
+
if (data.length === 1 && dir2 === "right")
|
266
|
+
data = `${data}0`;
|
267
|
+
return `0x${data.length % 2 === 1 ? `0${data}` : data}`;
|
268
|
+
}
|
269
|
+
return data;
|
270
|
+
}
|
271
|
+
|
272
|
+
// node_modules/viem/_esm/utils/encoding/fromHex.js
|
248
273
|
function assertSize(hexOrBytes, { size: size22 }) {
|
249
274
|
if (size21(hexOrBytes) > size22)
|
250
275
|
throw new SizeOverflowError({
|
@@ -252,12 +277,28 @@ function assertSize(hexOrBytes, { size: size22 }) {
|
|
252
277
|
maxSize: size22
|
253
278
|
});
|
254
279
|
}
|
280
|
+
function hexToBigInt(hex, opts = {}) {
|
281
|
+
const { signed } = opts;
|
282
|
+
if (opts.size)
|
283
|
+
assertSize(hex, { size: opts.size });
|
284
|
+
const value6 = BigInt(hex);
|
285
|
+
if (!signed)
|
286
|
+
return value6;
|
287
|
+
const size22 = (hex.length - 2) / 2;
|
288
|
+
const max6 = (1n << BigInt(size22) * 8n - 1n) - 1n;
|
289
|
+
if (value6 <= max6)
|
290
|
+
return value6;
|
291
|
+
return value6 - BigInt(`0x${"f".padStart(size22 * 2, "f")}`) - 1n;
|
292
|
+
}
|
293
|
+
function hexToNumber(hex, opts = {}) {
|
294
|
+
return Number(hexToBigInt(hex, opts));
|
295
|
+
}
|
255
296
|
var init_fromHex = __esm(() => {
|
256
297
|
init_encoding();
|
257
298
|
init_size();
|
258
299
|
});
|
259
300
|
|
260
|
-
//
|
301
|
+
// node_modules/viem/_esm/utils/encoding/toHex.js
|
261
302
|
function toHex(value6, opts = {}) {
|
262
303
|
if (typeof value6 === "number" || typeof value6 === "bigint")
|
263
304
|
return numberToHex(value6, opts);
|
@@ -329,7 +370,7 @@ var init_toHex = __esm(() => {
|
|
329
370
|
encoder2 = /* @__PURE__ */ new TextEncoder;
|
330
371
|
});
|
331
372
|
|
332
|
-
//
|
373
|
+
// node_modules/viem/_esm/utils/encoding/toBytes.js
|
333
374
|
function toBytes(value6, opts = {}) {
|
334
375
|
if (typeof value6 === "number" || typeof value6 === "bigint")
|
335
376
|
return numberToBytes(value6, opts);
|
@@ -434,7 +475,8 @@ function aoutput(out, instance) {
|
|
434
475
|
throw new Error("digestInto() expects output buffer of length at least " + min4);
|
435
476
|
}
|
436
477
|
}
|
437
|
-
var init__assert = () => {
|
478
|
+
var init__assert = () => {
|
479
|
+
};
|
438
480
|
|
439
481
|
// ../node_modules/@noble/hashes/esm/_u64.js
|
440
482
|
function fromBig(n, le = false) {
|
@@ -461,6 +503,12 @@ var init__u64 = __esm(() => {
|
|
461
503
|
function u32(arr) {
|
462
504
|
return new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));
|
463
505
|
}
|
506
|
+
function createView(arr) {
|
507
|
+
return new DataView(arr.buffer, arr.byteOffset, arr.byteLength);
|
508
|
+
}
|
509
|
+
function rotr(word, shift2) {
|
510
|
+
return word << 32 - shift2 | word >>> shift2;
|
511
|
+
}
|
464
512
|
function byteSwap(word) {
|
465
513
|
return word << 24 & 4278190080 | word << 8 & 16711680 | word >>> 8 & 65280 | word >>> 24 & 255;
|
466
514
|
}
|
@@ -696,7 +744,7 @@ var init_sha3 = __esm(() => {
|
|
696
744
|
shake256 = /* @__PURE__ */ genShake(31, 136, 256 / 8);
|
697
745
|
});
|
698
746
|
|
699
|
-
//
|
747
|
+
// node_modules/viem/_esm/utils/hash/keccak256.js
|
700
748
|
function keccak256(value6, to_) {
|
701
749
|
const to = to_ || "hex";
|
702
750
|
const bytes = keccak_256(isHex(value6, { strict: false }) ? toBytes(value6) : value6);
|
@@ -710,7 +758,7 @@ var init_keccak256 = __esm(() => {
|
|
710
758
|
init_toHex();
|
711
759
|
});
|
712
760
|
|
713
|
-
//
|
761
|
+
// node_modules/viem/_esm/errors/address.js
|
714
762
|
var InvalidAddressError;
|
715
763
|
var init_address = __esm(() => {
|
716
764
|
init_base();
|
@@ -727,7 +775,7 @@ var init_address = __esm(() => {
|
|
727
775
|
};
|
728
776
|
});
|
729
777
|
|
730
|
-
//
|
778
|
+
// node_modules/viem/_esm/utils/lru.js
|
731
779
|
var LruMap;
|
732
780
|
var init_lru = __esm(() => {
|
733
781
|
LruMap = class LruMap extends Map {
|
@@ -761,7 +809,7 @@ var init_lru = __esm(() => {
|
|
761
809
|
};
|
762
810
|
});
|
763
811
|
|
764
|
-
//
|
812
|
+
// node_modules/viem/_esm/utils/address/getAddress.js
|
765
813
|
function checksumAddress(address_, chainId) {
|
766
814
|
if (checksumAddressCache.has(`${address_}.${chainId}`))
|
767
815
|
return checksumAddressCache.get(`${address_}.${chainId}`);
|
@@ -788,7 +836,7 @@ var init_getAddress = __esm(() => {
|
|
788
836
|
checksumAddressCache = /* @__PURE__ */ new LruMap(8192);
|
789
837
|
});
|
790
838
|
|
791
|
-
//
|
839
|
+
// node_modules/viem/_esm/utils/address/isAddress.js
|
792
840
|
function isAddress(address, options) {
|
793
841
|
const { strict: strict2 = true } = options ?? {};
|
794
842
|
const cacheKey = `${address}.${strict2}`;
|
@@ -814,12 +862,58 @@ var init_isAddress = __esm(() => {
|
|
814
862
|
isAddressCache = /* @__PURE__ */ new LruMap(8192);
|
815
863
|
});
|
816
864
|
|
817
|
-
//
|
865
|
+
// node_modules/viem/_esm/utils/data/concat.js
|
818
866
|
function concatHex(values7) {
|
819
867
|
return `0x${values7.reduce((acc, x) => acc + x.replace("0x", ""), "")}`;
|
820
868
|
}
|
821
869
|
|
822
|
-
//
|
870
|
+
// node_modules/viem/_esm/utils/data/slice.js
|
871
|
+
function slice(value6, start5, end6, { strict: strict2 } = {}) {
|
872
|
+
if (isHex(value6, { strict: false }))
|
873
|
+
return sliceHex(value6, start5, end6, {
|
874
|
+
strict: strict2
|
875
|
+
});
|
876
|
+
return sliceBytes(value6, start5, end6, {
|
877
|
+
strict: strict2
|
878
|
+
});
|
879
|
+
}
|
880
|
+
function assertStartOffset(value6, start5) {
|
881
|
+
if (typeof start5 === "number" && start5 > 0 && start5 > size21(value6) - 1)
|
882
|
+
throw new SliceOffsetOutOfBoundsError({
|
883
|
+
offset: start5,
|
884
|
+
position: "start",
|
885
|
+
size: size21(value6)
|
886
|
+
});
|
887
|
+
}
|
888
|
+
function assertEndOffset(value6, start5, end6) {
|
889
|
+
if (typeof start5 === "number" && typeof end6 === "number" && size21(value6) !== end6 - start5) {
|
890
|
+
throw new SliceOffsetOutOfBoundsError({
|
891
|
+
offset: end6,
|
892
|
+
position: "end",
|
893
|
+
size: size21(value6)
|
894
|
+
});
|
895
|
+
}
|
896
|
+
}
|
897
|
+
function sliceBytes(value_, start5, end6, { strict: strict2 } = {}) {
|
898
|
+
assertStartOffset(value_, start5);
|
899
|
+
const value6 = value_.slice(start5, end6);
|
900
|
+
if (strict2)
|
901
|
+
assertEndOffset(value6, start5, end6);
|
902
|
+
return value6;
|
903
|
+
}
|
904
|
+
function sliceHex(value_, start5, end6, { strict: strict2 } = {}) {
|
905
|
+
assertStartOffset(value_, start5);
|
906
|
+
const value6 = `0x${value_.replace("0x", "").slice((start5 ?? 0) * 2, (end6 ?? value_.length) * 2)}`;
|
907
|
+
if (strict2)
|
908
|
+
assertEndOffset(value6, start5, end6);
|
909
|
+
return value6;
|
910
|
+
}
|
911
|
+
var init_slice = __esm(() => {
|
912
|
+
init_data();
|
913
|
+
init_size();
|
914
|
+
});
|
915
|
+
|
916
|
+
// node_modules/viem/_esm/utils/regex.js
|
823
917
|
var arrayRegex, bytesRegex, integerRegex;
|
824
918
|
var init_regex = __esm(() => {
|
825
919
|
arrayRegex = /^(.*)\[([0-9]*)\]$/;
|
@@ -827,6 +921,861 @@ var init_regex = __esm(() => {
|
|
827
921
|
integerRegex = /^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/;
|
828
922
|
});
|
829
923
|
|
924
|
+
// node_modules/viem/_esm/errors/cursor.js
|
925
|
+
var NegativeOffsetError, PositionOutOfBoundsError, RecursiveReadLimitExceededError;
|
926
|
+
var init_cursor = __esm(() => {
|
927
|
+
init_base();
|
928
|
+
NegativeOffsetError = class NegativeOffsetError extends BaseError {
|
929
|
+
constructor({ offset }) {
|
930
|
+
super(`Offset \`${offset}\` cannot be negative.`, {
|
931
|
+
name: "NegativeOffsetError"
|
932
|
+
});
|
933
|
+
}
|
934
|
+
};
|
935
|
+
PositionOutOfBoundsError = class PositionOutOfBoundsError extends BaseError {
|
936
|
+
constructor({ length: length4, position }) {
|
937
|
+
super(`Position \`${position}\` is out of bounds (\`0 < position < ${length4}\`).`, { name: "PositionOutOfBoundsError" });
|
938
|
+
}
|
939
|
+
};
|
940
|
+
RecursiveReadLimitExceededError = class RecursiveReadLimitExceededError extends BaseError {
|
941
|
+
constructor({ count: count5, limit }) {
|
942
|
+
super(`Recursive read limit of \`${limit}\` exceeded (recursive read count: \`${count5}\`).`, { name: "RecursiveReadLimitExceededError" });
|
943
|
+
}
|
944
|
+
};
|
945
|
+
});
|
946
|
+
|
947
|
+
// node_modules/viem/_esm/utils/cursor.js
|
948
|
+
function createCursor(bytes, { recursiveReadLimit = 8192 } = {}) {
|
949
|
+
const cursor = Object.create(staticCursor);
|
950
|
+
cursor.bytes = bytes;
|
951
|
+
cursor.dataView = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
|
952
|
+
cursor.positionReadCount = new Map;
|
953
|
+
cursor.recursiveReadLimit = recursiveReadLimit;
|
954
|
+
return cursor;
|
955
|
+
}
|
956
|
+
var staticCursor;
|
957
|
+
var init_cursor2 = __esm(() => {
|
958
|
+
init_cursor();
|
959
|
+
staticCursor = {
|
960
|
+
bytes: new Uint8Array,
|
961
|
+
dataView: new DataView(new ArrayBuffer(0)),
|
962
|
+
position: 0,
|
963
|
+
positionReadCount: new Map,
|
964
|
+
recursiveReadCount: 0,
|
965
|
+
recursiveReadLimit: Number.POSITIVE_INFINITY,
|
966
|
+
assertReadLimit() {
|
967
|
+
if (this.recursiveReadCount >= this.recursiveReadLimit)
|
968
|
+
throw new RecursiveReadLimitExceededError({
|
969
|
+
count: this.recursiveReadCount + 1,
|
970
|
+
limit: this.recursiveReadLimit
|
971
|
+
});
|
972
|
+
},
|
973
|
+
assertPosition(position) {
|
974
|
+
if (position < 0 || position > this.bytes.length - 1)
|
975
|
+
throw new PositionOutOfBoundsError({
|
976
|
+
length: this.bytes.length,
|
977
|
+
position
|
978
|
+
});
|
979
|
+
},
|
980
|
+
decrementPosition(offset) {
|
981
|
+
if (offset < 0)
|
982
|
+
throw new NegativeOffsetError({ offset });
|
983
|
+
const position = this.position - offset;
|
984
|
+
this.assertPosition(position);
|
985
|
+
this.position = position;
|
986
|
+
},
|
987
|
+
getReadCount(position) {
|
988
|
+
return this.positionReadCount.get(position || this.position) || 0;
|
989
|
+
},
|
990
|
+
incrementPosition(offset) {
|
991
|
+
if (offset < 0)
|
992
|
+
throw new NegativeOffsetError({ offset });
|
993
|
+
const position = this.position + offset;
|
994
|
+
this.assertPosition(position);
|
995
|
+
this.position = position;
|
996
|
+
},
|
997
|
+
inspectByte(position_) {
|
998
|
+
const position = position_ ?? this.position;
|
999
|
+
this.assertPosition(position);
|
1000
|
+
return this.bytes[position];
|
1001
|
+
},
|
1002
|
+
inspectBytes(length4, position_) {
|
1003
|
+
const position = position_ ?? this.position;
|
1004
|
+
this.assertPosition(position + length4 - 1);
|
1005
|
+
return this.bytes.subarray(position, position + length4);
|
1006
|
+
},
|
1007
|
+
inspectUint8(position_) {
|
1008
|
+
const position = position_ ?? this.position;
|
1009
|
+
this.assertPosition(position);
|
1010
|
+
return this.bytes[position];
|
1011
|
+
},
|
1012
|
+
inspectUint16(position_) {
|
1013
|
+
const position = position_ ?? this.position;
|
1014
|
+
this.assertPosition(position + 1);
|
1015
|
+
return this.dataView.getUint16(position);
|
1016
|
+
},
|
1017
|
+
inspectUint24(position_) {
|
1018
|
+
const position = position_ ?? this.position;
|
1019
|
+
this.assertPosition(position + 2);
|
1020
|
+
return (this.dataView.getUint16(position) << 8) + this.dataView.getUint8(position + 2);
|
1021
|
+
},
|
1022
|
+
inspectUint32(position_) {
|
1023
|
+
const position = position_ ?? this.position;
|
1024
|
+
this.assertPosition(position + 3);
|
1025
|
+
return this.dataView.getUint32(position);
|
1026
|
+
},
|
1027
|
+
pushByte(byte) {
|
1028
|
+
this.assertPosition(this.position);
|
1029
|
+
this.bytes[this.position] = byte;
|
1030
|
+
this.position++;
|
1031
|
+
},
|
1032
|
+
pushBytes(bytes) {
|
1033
|
+
this.assertPosition(this.position + bytes.length - 1);
|
1034
|
+
this.bytes.set(bytes, this.position);
|
1035
|
+
this.position += bytes.length;
|
1036
|
+
},
|
1037
|
+
pushUint8(value6) {
|
1038
|
+
this.assertPosition(this.position);
|
1039
|
+
this.bytes[this.position] = value6;
|
1040
|
+
this.position++;
|
1041
|
+
},
|
1042
|
+
pushUint16(value6) {
|
1043
|
+
this.assertPosition(this.position + 1);
|
1044
|
+
this.dataView.setUint16(this.position, value6);
|
1045
|
+
this.position += 2;
|
1046
|
+
},
|
1047
|
+
pushUint24(value6) {
|
1048
|
+
this.assertPosition(this.position + 2);
|
1049
|
+
this.dataView.setUint16(this.position, value6 >> 8);
|
1050
|
+
this.dataView.setUint8(this.position + 2, value6 & ~4294967040);
|
1051
|
+
this.position += 3;
|
1052
|
+
},
|
1053
|
+
pushUint32(value6) {
|
1054
|
+
this.assertPosition(this.position + 3);
|
1055
|
+
this.dataView.setUint32(this.position, value6);
|
1056
|
+
this.position += 4;
|
1057
|
+
},
|
1058
|
+
readByte() {
|
1059
|
+
this.assertReadLimit();
|
1060
|
+
this._touch();
|
1061
|
+
const value6 = this.inspectByte();
|
1062
|
+
this.position++;
|
1063
|
+
return value6;
|
1064
|
+
},
|
1065
|
+
readBytes(length4, size22) {
|
1066
|
+
this.assertReadLimit();
|
1067
|
+
this._touch();
|
1068
|
+
const value6 = this.inspectBytes(length4);
|
1069
|
+
this.position += size22 ?? length4;
|
1070
|
+
return value6;
|
1071
|
+
},
|
1072
|
+
readUint8() {
|
1073
|
+
this.assertReadLimit();
|
1074
|
+
this._touch();
|
1075
|
+
const value6 = this.inspectUint8();
|
1076
|
+
this.position += 1;
|
1077
|
+
return value6;
|
1078
|
+
},
|
1079
|
+
readUint16() {
|
1080
|
+
this.assertReadLimit();
|
1081
|
+
this._touch();
|
1082
|
+
const value6 = this.inspectUint16();
|
1083
|
+
this.position += 2;
|
1084
|
+
return value6;
|
1085
|
+
},
|
1086
|
+
readUint24() {
|
1087
|
+
this.assertReadLimit();
|
1088
|
+
this._touch();
|
1089
|
+
const value6 = this.inspectUint24();
|
1090
|
+
this.position += 3;
|
1091
|
+
return value6;
|
1092
|
+
},
|
1093
|
+
readUint32() {
|
1094
|
+
this.assertReadLimit();
|
1095
|
+
this._touch();
|
1096
|
+
const value6 = this.inspectUint32();
|
1097
|
+
this.position += 4;
|
1098
|
+
return value6;
|
1099
|
+
},
|
1100
|
+
get remaining() {
|
1101
|
+
return this.bytes.length - this.position;
|
1102
|
+
},
|
1103
|
+
setPosition(position) {
|
1104
|
+
const oldPosition = this.position;
|
1105
|
+
this.assertPosition(position);
|
1106
|
+
this.position = position;
|
1107
|
+
return () => this.position = oldPosition;
|
1108
|
+
},
|
1109
|
+
_touch() {
|
1110
|
+
if (this.recursiveReadLimit === Number.POSITIVE_INFINITY)
|
1111
|
+
return;
|
1112
|
+
const count5 = this.getReadCount();
|
1113
|
+
this.positionReadCount.set(this.position, count5 + 1);
|
1114
|
+
if (count5 > 0)
|
1115
|
+
this.recursiveReadCount++;
|
1116
|
+
}
|
1117
|
+
};
|
1118
|
+
});
|
1119
|
+
|
1120
|
+
// node_modules/viem/_esm/constants/unit.js
|
1121
|
+
var gweiUnits;
|
1122
|
+
var init_unit = __esm(() => {
|
1123
|
+
gweiUnits = {
|
1124
|
+
ether: -9,
|
1125
|
+
wei: 9
|
1126
|
+
};
|
1127
|
+
});
|
1128
|
+
|
1129
|
+
// node_modules/viem/_esm/utils/unit/formatUnits.js
|
1130
|
+
function formatUnits(value6, decimals) {
|
1131
|
+
let display = value6.toString();
|
1132
|
+
const negative2 = display.startsWith("-");
|
1133
|
+
if (negative2)
|
1134
|
+
display = display.slice(1);
|
1135
|
+
display = display.padStart(decimals, "0");
|
1136
|
+
let [integer3, fraction] = [
|
1137
|
+
display.slice(0, display.length - decimals),
|
1138
|
+
display.slice(display.length - decimals)
|
1139
|
+
];
|
1140
|
+
fraction = fraction.replace(/(0+)$/, "");
|
1141
|
+
return `${negative2 ? "-" : ""}${integer3 || "0"}${fraction ? `.${fraction}` : ""}`;
|
1142
|
+
}
|
1143
|
+
|
1144
|
+
// node_modules/viem/_esm/utils/unit/formatGwei.js
|
1145
|
+
function formatGwei(wei, unit = "wei") {
|
1146
|
+
return formatUnits(wei, gweiUnits[unit]);
|
1147
|
+
}
|
1148
|
+
var init_formatGwei = __esm(() => {
|
1149
|
+
init_unit();
|
1150
|
+
});
|
1151
|
+
|
1152
|
+
// node_modules/viem/_esm/errors/transaction.js
|
1153
|
+
function prettyPrint(args2) {
|
1154
|
+
const entries3 = Object.entries(args2).map(([key, value6]) => {
|
1155
|
+
if (value6 === undefined || value6 === false)
|
1156
|
+
return null;
|
1157
|
+
return [key, value6];
|
1158
|
+
}).filter(Boolean);
|
1159
|
+
const maxLength2 = entries3.reduce((acc, [key]) => Math.max(acc, key.length), 0);
|
1160
|
+
return entries3.map(([key, value6]) => ` ${`${key}:`.padEnd(maxLength2 + 1)} ${value6}`).join(`
|
1161
|
+
`);
|
1162
|
+
}
|
1163
|
+
var InvalidLegacyVError, InvalidSerializableTransactionError, InvalidStorageKeySizeError;
|
1164
|
+
var init_transaction = __esm(() => {
|
1165
|
+
init_base();
|
1166
|
+
InvalidLegacyVError = class InvalidLegacyVError extends BaseError {
|
1167
|
+
constructor({ v }) {
|
1168
|
+
super(`Invalid \`v\` value "${v}". Expected 27 or 28.`, {
|
1169
|
+
name: "InvalidLegacyVError"
|
1170
|
+
});
|
1171
|
+
}
|
1172
|
+
};
|
1173
|
+
InvalidSerializableTransactionError = class InvalidSerializableTransactionError extends BaseError {
|
1174
|
+
constructor({ transaction }) {
|
1175
|
+
super("Cannot infer a transaction type from provided transaction.", {
|
1176
|
+
metaMessages: [
|
1177
|
+
"Provided Transaction:",
|
1178
|
+
"{",
|
1179
|
+
prettyPrint(transaction),
|
1180
|
+
"}",
|
1181
|
+
"",
|
1182
|
+
"To infer the type, either provide:",
|
1183
|
+
"- a `type` to the Transaction, or",
|
1184
|
+
"- an EIP-1559 Transaction with `maxFeePerGas`, or",
|
1185
|
+
"- an EIP-2930 Transaction with `gasPrice` & `accessList`, or",
|
1186
|
+
"- an EIP-4844 Transaction with `blobs`, `blobVersionedHashes`, `sidecars`, or",
|
1187
|
+
"- an EIP-7702 Transaction with `authorizationList`, or",
|
1188
|
+
"- a Legacy Transaction with `gasPrice`"
|
1189
|
+
],
|
1190
|
+
name: "InvalidSerializableTransactionError"
|
1191
|
+
});
|
1192
|
+
}
|
1193
|
+
};
|
1194
|
+
InvalidStorageKeySizeError = class InvalidStorageKeySizeError extends BaseError {
|
1195
|
+
constructor({ storageKey }) {
|
1196
|
+
super(`Size for storage key "${storageKey}" is invalid. Expected 32 bytes. Got ${Math.floor((storageKey.length - 2) / 2)} bytes.`, { name: "InvalidStorageKeySizeError" });
|
1197
|
+
}
|
1198
|
+
};
|
1199
|
+
});
|
1200
|
+
|
1201
|
+
// node_modules/viem/_esm/errors/node.js
|
1202
|
+
var ExecutionRevertedError, FeeCapTooHighError, FeeCapTooLowError, NonceTooHighError, NonceTooLowError, NonceMaxValueError, InsufficientFundsError, IntrinsicGasTooHighError, IntrinsicGasTooLowError, TransactionTypeNotSupportedError, TipAboveFeeCapError;
|
1203
|
+
var init_node = __esm(() => {
|
1204
|
+
init_formatGwei();
|
1205
|
+
init_base();
|
1206
|
+
ExecutionRevertedError = class ExecutionRevertedError extends BaseError {
|
1207
|
+
constructor({ cause: cause2, message } = {}) {
|
1208
|
+
const reason = message?.replace("execution reverted: ", "")?.replace("execution reverted", "");
|
1209
|
+
super(`Execution reverted ${reason ? `with reason: ${reason}` : "for an unknown reason"}.`, {
|
1210
|
+
cause: cause2,
|
1211
|
+
name: "ExecutionRevertedError"
|
1212
|
+
});
|
1213
|
+
}
|
1214
|
+
};
|
1215
|
+
Object.defineProperty(ExecutionRevertedError, "code", {
|
1216
|
+
enumerable: true,
|
1217
|
+
configurable: true,
|
1218
|
+
writable: true,
|
1219
|
+
value: 3
|
1220
|
+
});
|
1221
|
+
Object.defineProperty(ExecutionRevertedError, "nodeMessage", {
|
1222
|
+
enumerable: true,
|
1223
|
+
configurable: true,
|
1224
|
+
writable: true,
|
1225
|
+
value: /execution reverted/
|
1226
|
+
});
|
1227
|
+
FeeCapTooHighError = class FeeCapTooHighError extends BaseError {
|
1228
|
+
constructor({ cause: cause2, maxFeePerGas } = {}) {
|
1229
|
+
super(`The fee cap (\`maxFeePerGas\`${maxFeePerGas ? ` = ${formatGwei(maxFeePerGas)} gwei` : ""}) cannot be higher than the maximum allowed value (2^256-1).`, {
|
1230
|
+
cause: cause2,
|
1231
|
+
name: "FeeCapTooHighError"
|
1232
|
+
});
|
1233
|
+
}
|
1234
|
+
};
|
1235
|
+
Object.defineProperty(FeeCapTooHighError, "nodeMessage", {
|
1236
|
+
enumerable: true,
|
1237
|
+
configurable: true,
|
1238
|
+
writable: true,
|
1239
|
+
value: /max fee per gas higher than 2\^256-1|fee cap higher than 2\^256-1/
|
1240
|
+
});
|
1241
|
+
FeeCapTooLowError = class FeeCapTooLowError extends BaseError {
|
1242
|
+
constructor({ cause: cause2, maxFeePerGas } = {}) {
|
1243
|
+
super(`The fee cap (\`maxFeePerGas\`${maxFeePerGas ? ` = ${formatGwei(maxFeePerGas)}` : ""} gwei) cannot be lower than the block base fee.`, {
|
1244
|
+
cause: cause2,
|
1245
|
+
name: "FeeCapTooLowError"
|
1246
|
+
});
|
1247
|
+
}
|
1248
|
+
};
|
1249
|
+
Object.defineProperty(FeeCapTooLowError, "nodeMessage", {
|
1250
|
+
enumerable: true,
|
1251
|
+
configurable: true,
|
1252
|
+
writable: true,
|
1253
|
+
value: /max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/
|
1254
|
+
});
|
1255
|
+
NonceTooHighError = class NonceTooHighError extends BaseError {
|
1256
|
+
constructor({ cause: cause2, nonce } = {}) {
|
1257
|
+
super(`Nonce provided for the transaction ${nonce ? `(${nonce}) ` : ""}is higher than the next one expected.`, { cause: cause2, name: "NonceTooHighError" });
|
1258
|
+
}
|
1259
|
+
};
|
1260
|
+
Object.defineProperty(NonceTooHighError, "nodeMessage", {
|
1261
|
+
enumerable: true,
|
1262
|
+
configurable: true,
|
1263
|
+
writable: true,
|
1264
|
+
value: /nonce too high/
|
1265
|
+
});
|
1266
|
+
NonceTooLowError = class NonceTooLowError extends BaseError {
|
1267
|
+
constructor({ cause: cause2, nonce } = {}) {
|
1268
|
+
super([
|
1269
|
+
`Nonce provided for the transaction ${nonce ? `(${nonce}) ` : ""}is lower than the current nonce of the account.`,
|
1270
|
+
"Try increasing the nonce or find the latest nonce with `getTransactionCount`."
|
1271
|
+
].join(`
|
1272
|
+
`), { cause: cause2, name: "NonceTooLowError" });
|
1273
|
+
}
|
1274
|
+
};
|
1275
|
+
Object.defineProperty(NonceTooLowError, "nodeMessage", {
|
1276
|
+
enumerable: true,
|
1277
|
+
configurable: true,
|
1278
|
+
writable: true,
|
1279
|
+
value: /nonce too low|transaction already imported|already known/
|
1280
|
+
});
|
1281
|
+
NonceMaxValueError = class NonceMaxValueError extends BaseError {
|
1282
|
+
constructor({ cause: cause2, nonce } = {}) {
|
1283
|
+
super(`Nonce provided for the transaction ${nonce ? `(${nonce}) ` : ""}exceeds the maximum allowed nonce.`, { cause: cause2, name: "NonceMaxValueError" });
|
1284
|
+
}
|
1285
|
+
};
|
1286
|
+
Object.defineProperty(NonceMaxValueError, "nodeMessage", {
|
1287
|
+
enumerable: true,
|
1288
|
+
configurable: true,
|
1289
|
+
writable: true,
|
1290
|
+
value: /nonce has max value/
|
1291
|
+
});
|
1292
|
+
InsufficientFundsError = class InsufficientFundsError extends BaseError {
|
1293
|
+
constructor({ cause: cause2 } = {}) {
|
1294
|
+
super([
|
1295
|
+
"The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account."
|
1296
|
+
].join(`
|
1297
|
+
`), {
|
1298
|
+
cause: cause2,
|
1299
|
+
metaMessages: [
|
1300
|
+
"This error could arise when the account does not have enough funds to:",
|
1301
|
+
" - pay for the total gas fee,",
|
1302
|
+
" - pay for the value to send.",
|
1303
|
+
" ",
|
1304
|
+
"The cost of the transaction is calculated as `gas * gas fee + value`, where:",
|
1305
|
+
" - `gas` is the amount of gas needed for transaction to execute,",
|
1306
|
+
" - `gas fee` is the gas fee,",
|
1307
|
+
" - `value` is the amount of ether to send to the recipient."
|
1308
|
+
],
|
1309
|
+
name: "InsufficientFundsError"
|
1310
|
+
});
|
1311
|
+
}
|
1312
|
+
};
|
1313
|
+
Object.defineProperty(InsufficientFundsError, "nodeMessage", {
|
1314
|
+
enumerable: true,
|
1315
|
+
configurable: true,
|
1316
|
+
writable: true,
|
1317
|
+
value: /insufficient funds|exceeds transaction sender account balance/
|
1318
|
+
});
|
1319
|
+
IntrinsicGasTooHighError = class IntrinsicGasTooHighError extends BaseError {
|
1320
|
+
constructor({ cause: cause2, gas } = {}) {
|
1321
|
+
super(`The amount of gas ${gas ? `(${gas}) ` : ""}provided for the transaction exceeds the limit allowed for the block.`, {
|
1322
|
+
cause: cause2,
|
1323
|
+
name: "IntrinsicGasTooHighError"
|
1324
|
+
});
|
1325
|
+
}
|
1326
|
+
};
|
1327
|
+
Object.defineProperty(IntrinsicGasTooHighError, "nodeMessage", {
|
1328
|
+
enumerable: true,
|
1329
|
+
configurable: true,
|
1330
|
+
writable: true,
|
1331
|
+
value: /intrinsic gas too high|gas limit reached/
|
1332
|
+
});
|
1333
|
+
IntrinsicGasTooLowError = class IntrinsicGasTooLowError extends BaseError {
|
1334
|
+
constructor({ cause: cause2, gas } = {}) {
|
1335
|
+
super(`The amount of gas ${gas ? `(${gas}) ` : ""}provided for the transaction is too low.`, {
|
1336
|
+
cause: cause2,
|
1337
|
+
name: "IntrinsicGasTooLowError"
|
1338
|
+
});
|
1339
|
+
}
|
1340
|
+
};
|
1341
|
+
Object.defineProperty(IntrinsicGasTooLowError, "nodeMessage", {
|
1342
|
+
enumerable: true,
|
1343
|
+
configurable: true,
|
1344
|
+
writable: true,
|
1345
|
+
value: /intrinsic gas too low/
|
1346
|
+
});
|
1347
|
+
TransactionTypeNotSupportedError = class TransactionTypeNotSupportedError extends BaseError {
|
1348
|
+
constructor({ cause: cause2 }) {
|
1349
|
+
super("The transaction type is not supported for this chain.", {
|
1350
|
+
cause: cause2,
|
1351
|
+
name: "TransactionTypeNotSupportedError"
|
1352
|
+
});
|
1353
|
+
}
|
1354
|
+
};
|
1355
|
+
Object.defineProperty(TransactionTypeNotSupportedError, "nodeMessage", {
|
1356
|
+
enumerable: true,
|
1357
|
+
configurable: true,
|
1358
|
+
writable: true,
|
1359
|
+
value: /transaction type not valid/
|
1360
|
+
});
|
1361
|
+
TipAboveFeeCapError = class TipAboveFeeCapError extends BaseError {
|
1362
|
+
constructor({ cause: cause2, maxPriorityFeePerGas, maxFeePerGas } = {}) {
|
1363
|
+
super([
|
1364
|
+
`The provided tip (\`maxPriorityFeePerGas\`${maxPriorityFeePerGas ? ` = ${formatGwei(maxPriorityFeePerGas)} gwei` : ""}) cannot be higher than the fee cap (\`maxFeePerGas\`${maxFeePerGas ? ` = ${formatGwei(maxFeePerGas)} gwei` : ""}).`
|
1365
|
+
].join(`
|
1366
|
+
`), {
|
1367
|
+
cause: cause2,
|
1368
|
+
name: "TipAboveFeeCapError"
|
1369
|
+
});
|
1370
|
+
}
|
1371
|
+
};
|
1372
|
+
Object.defineProperty(TipAboveFeeCapError, "nodeMessage", {
|
1373
|
+
enumerable: true,
|
1374
|
+
configurable: true,
|
1375
|
+
writable: true,
|
1376
|
+
value: /max priority fee per gas higher than max fee per gas|tip higher than fee cap/
|
1377
|
+
});
|
1378
|
+
});
|
1379
|
+
|
1380
|
+
// node_modules/viem/_esm/utils/formatters/formatter.js
|
1381
|
+
function defineFormatter(type2, format7) {
|
1382
|
+
return ({ exclude: exclude3, format: overrides }) => {
|
1383
|
+
return {
|
1384
|
+
exclude: exclude3,
|
1385
|
+
format: (args2) => {
|
1386
|
+
const formatted = format7(args2);
|
1387
|
+
if (exclude3) {
|
1388
|
+
for (const key of exclude3) {
|
1389
|
+
delete formatted[key];
|
1390
|
+
}
|
1391
|
+
}
|
1392
|
+
return {
|
1393
|
+
...formatted,
|
1394
|
+
...overrides(args2)
|
1395
|
+
};
|
1396
|
+
},
|
1397
|
+
type: type2
|
1398
|
+
};
|
1399
|
+
};
|
1400
|
+
}
|
1401
|
+
|
1402
|
+
// node_modules/viem/_esm/constants/number.js
|
1403
|
+
var maxInt8, maxInt16, maxInt24, maxInt32, maxInt40, maxInt48, maxInt56, maxInt64, maxInt72, maxInt80, maxInt88, maxInt96, maxInt104, maxInt112, maxInt120, maxInt128, maxInt136, maxInt144, maxInt152, maxInt160, maxInt168, maxInt176, maxInt184, maxInt192, maxInt200, maxInt208, maxInt216, maxInt224, maxInt232, maxInt240, maxInt248, maxInt256, minInt8, minInt16, minInt24, minInt32, minInt40, minInt48, minInt56, minInt64, minInt72, minInt80, minInt88, minInt96, minInt104, minInt112, minInt120, minInt128, minInt136, minInt144, minInt152, minInt160, minInt168, minInt176, minInt184, minInt192, minInt200, minInt208, minInt216, minInt224, minInt232, minInt240, minInt248, minInt256, maxUint8, maxUint16, maxUint24, maxUint32, maxUint40, maxUint48, maxUint56, maxUint64, maxUint72, maxUint80, maxUint88, maxUint96, maxUint104, maxUint112, maxUint120, maxUint128, maxUint136, maxUint144, maxUint152, maxUint160, maxUint168, maxUint176, maxUint184, maxUint192, maxUint200, maxUint208, maxUint216, maxUint224, maxUint232, maxUint240, maxUint248, maxUint256;
|
1404
|
+
var init_number = __esm(() => {
|
1405
|
+
maxInt8 = 2n ** (8n - 1n) - 1n;
|
1406
|
+
maxInt16 = 2n ** (16n - 1n) - 1n;
|
1407
|
+
maxInt24 = 2n ** (24n - 1n) - 1n;
|
1408
|
+
maxInt32 = 2n ** (32n - 1n) - 1n;
|
1409
|
+
maxInt40 = 2n ** (40n - 1n) - 1n;
|
1410
|
+
maxInt48 = 2n ** (48n - 1n) - 1n;
|
1411
|
+
maxInt56 = 2n ** (56n - 1n) - 1n;
|
1412
|
+
maxInt64 = 2n ** (64n - 1n) - 1n;
|
1413
|
+
maxInt72 = 2n ** (72n - 1n) - 1n;
|
1414
|
+
maxInt80 = 2n ** (80n - 1n) - 1n;
|
1415
|
+
maxInt88 = 2n ** (88n - 1n) - 1n;
|
1416
|
+
maxInt96 = 2n ** (96n - 1n) - 1n;
|
1417
|
+
maxInt104 = 2n ** (104n - 1n) - 1n;
|
1418
|
+
maxInt112 = 2n ** (112n - 1n) - 1n;
|
1419
|
+
maxInt120 = 2n ** (120n - 1n) - 1n;
|
1420
|
+
maxInt128 = 2n ** (128n - 1n) - 1n;
|
1421
|
+
maxInt136 = 2n ** (136n - 1n) - 1n;
|
1422
|
+
maxInt144 = 2n ** (144n - 1n) - 1n;
|
1423
|
+
maxInt152 = 2n ** (152n - 1n) - 1n;
|
1424
|
+
maxInt160 = 2n ** (160n - 1n) - 1n;
|
1425
|
+
maxInt168 = 2n ** (168n - 1n) - 1n;
|
1426
|
+
maxInt176 = 2n ** (176n - 1n) - 1n;
|
1427
|
+
maxInt184 = 2n ** (184n - 1n) - 1n;
|
1428
|
+
maxInt192 = 2n ** (192n - 1n) - 1n;
|
1429
|
+
maxInt200 = 2n ** (200n - 1n) - 1n;
|
1430
|
+
maxInt208 = 2n ** (208n - 1n) - 1n;
|
1431
|
+
maxInt216 = 2n ** (216n - 1n) - 1n;
|
1432
|
+
maxInt224 = 2n ** (224n - 1n) - 1n;
|
1433
|
+
maxInt232 = 2n ** (232n - 1n) - 1n;
|
1434
|
+
maxInt240 = 2n ** (240n - 1n) - 1n;
|
1435
|
+
maxInt248 = 2n ** (248n - 1n) - 1n;
|
1436
|
+
maxInt256 = 2n ** (256n - 1n) - 1n;
|
1437
|
+
minInt8 = -(2n ** (8n - 1n));
|
1438
|
+
minInt16 = -(2n ** (16n - 1n));
|
1439
|
+
minInt24 = -(2n ** (24n - 1n));
|
1440
|
+
minInt32 = -(2n ** (32n - 1n));
|
1441
|
+
minInt40 = -(2n ** (40n - 1n));
|
1442
|
+
minInt48 = -(2n ** (48n - 1n));
|
1443
|
+
minInt56 = -(2n ** (56n - 1n));
|
1444
|
+
minInt64 = -(2n ** (64n - 1n));
|
1445
|
+
minInt72 = -(2n ** (72n - 1n));
|
1446
|
+
minInt80 = -(2n ** (80n - 1n));
|
1447
|
+
minInt88 = -(2n ** (88n - 1n));
|
1448
|
+
minInt96 = -(2n ** (96n - 1n));
|
1449
|
+
minInt104 = -(2n ** (104n - 1n));
|
1450
|
+
minInt112 = -(2n ** (112n - 1n));
|
1451
|
+
minInt120 = -(2n ** (120n - 1n));
|
1452
|
+
minInt128 = -(2n ** (128n - 1n));
|
1453
|
+
minInt136 = -(2n ** (136n - 1n));
|
1454
|
+
minInt144 = -(2n ** (144n - 1n));
|
1455
|
+
minInt152 = -(2n ** (152n - 1n));
|
1456
|
+
minInt160 = -(2n ** (160n - 1n));
|
1457
|
+
minInt168 = -(2n ** (168n - 1n));
|
1458
|
+
minInt176 = -(2n ** (176n - 1n));
|
1459
|
+
minInt184 = -(2n ** (184n - 1n));
|
1460
|
+
minInt192 = -(2n ** (192n - 1n));
|
1461
|
+
minInt200 = -(2n ** (200n - 1n));
|
1462
|
+
minInt208 = -(2n ** (208n - 1n));
|
1463
|
+
minInt216 = -(2n ** (216n - 1n));
|
1464
|
+
minInt224 = -(2n ** (224n - 1n));
|
1465
|
+
minInt232 = -(2n ** (232n - 1n));
|
1466
|
+
minInt240 = -(2n ** (240n - 1n));
|
1467
|
+
minInt248 = -(2n ** (248n - 1n));
|
1468
|
+
minInt256 = -(2n ** (256n - 1n));
|
1469
|
+
maxUint8 = 2n ** 8n - 1n;
|
1470
|
+
maxUint16 = 2n ** 16n - 1n;
|
1471
|
+
maxUint24 = 2n ** 24n - 1n;
|
1472
|
+
maxUint32 = 2n ** 32n - 1n;
|
1473
|
+
maxUint40 = 2n ** 40n - 1n;
|
1474
|
+
maxUint48 = 2n ** 48n - 1n;
|
1475
|
+
maxUint56 = 2n ** 56n - 1n;
|
1476
|
+
maxUint64 = 2n ** 64n - 1n;
|
1477
|
+
maxUint72 = 2n ** 72n - 1n;
|
1478
|
+
maxUint80 = 2n ** 80n - 1n;
|
1479
|
+
maxUint88 = 2n ** 88n - 1n;
|
1480
|
+
maxUint96 = 2n ** 96n - 1n;
|
1481
|
+
maxUint104 = 2n ** 104n - 1n;
|
1482
|
+
maxUint112 = 2n ** 112n - 1n;
|
1483
|
+
maxUint120 = 2n ** 120n - 1n;
|
1484
|
+
maxUint128 = 2n ** 128n - 1n;
|
1485
|
+
maxUint136 = 2n ** 136n - 1n;
|
1486
|
+
maxUint144 = 2n ** 144n - 1n;
|
1487
|
+
maxUint152 = 2n ** 152n - 1n;
|
1488
|
+
maxUint160 = 2n ** 160n - 1n;
|
1489
|
+
maxUint168 = 2n ** 168n - 1n;
|
1490
|
+
maxUint176 = 2n ** 176n - 1n;
|
1491
|
+
maxUint184 = 2n ** 184n - 1n;
|
1492
|
+
maxUint192 = 2n ** 192n - 1n;
|
1493
|
+
maxUint200 = 2n ** 200n - 1n;
|
1494
|
+
maxUint208 = 2n ** 208n - 1n;
|
1495
|
+
maxUint216 = 2n ** 216n - 1n;
|
1496
|
+
maxUint224 = 2n ** 224n - 1n;
|
1497
|
+
maxUint232 = 2n ** 232n - 1n;
|
1498
|
+
maxUint240 = 2n ** 240n - 1n;
|
1499
|
+
maxUint248 = 2n ** 248n - 1n;
|
1500
|
+
maxUint256 = 2n ** 256n - 1n;
|
1501
|
+
});
|
1502
|
+
|
1503
|
+
// ../node_modules/@noble/hashes/esm/_md.js
|
1504
|
+
function setBigUint64(view, byteOffset, value6, isLE2) {
|
1505
|
+
if (typeof view.setBigUint64 === "function")
|
1506
|
+
return view.setBigUint64(byteOffset, value6, isLE2);
|
1507
|
+
const _32n2 = BigInt(32);
|
1508
|
+
const _u32_max = BigInt(4294967295);
|
1509
|
+
const wh = Number(value6 >> _32n2 & _u32_max);
|
1510
|
+
const wl = Number(value6 & _u32_max);
|
1511
|
+
const h = isLE2 ? 4 : 0;
|
1512
|
+
const l = isLE2 ? 0 : 4;
|
1513
|
+
view.setUint32(byteOffset + h, wh, isLE2);
|
1514
|
+
view.setUint32(byteOffset + l, wl, isLE2);
|
1515
|
+
}
|
1516
|
+
function Chi(a, b, c) {
|
1517
|
+
return a & b ^ ~a & c;
|
1518
|
+
}
|
1519
|
+
function Maj(a, b, c) {
|
1520
|
+
return a & b ^ a & c ^ b & c;
|
1521
|
+
}
|
1522
|
+
var HashMD;
|
1523
|
+
var init__md = __esm(() => {
|
1524
|
+
init__assert();
|
1525
|
+
init_utils();
|
1526
|
+
HashMD = class HashMD extends Hash {
|
1527
|
+
constructor(blockLen, outputLen, padOffset, isLE2) {
|
1528
|
+
super();
|
1529
|
+
this.blockLen = blockLen;
|
1530
|
+
this.outputLen = outputLen;
|
1531
|
+
this.padOffset = padOffset;
|
1532
|
+
this.isLE = isLE2;
|
1533
|
+
this.finished = false;
|
1534
|
+
this.length = 0;
|
1535
|
+
this.pos = 0;
|
1536
|
+
this.destroyed = false;
|
1537
|
+
this.buffer = new Uint8Array(blockLen);
|
1538
|
+
this.view = createView(this.buffer);
|
1539
|
+
}
|
1540
|
+
update(data) {
|
1541
|
+
aexists(this);
|
1542
|
+
const { view, buffer: buffer3, blockLen } = this;
|
1543
|
+
data = toBytes2(data);
|
1544
|
+
const len = data.length;
|
1545
|
+
for (let pos = 0;pos < len; ) {
|
1546
|
+
const take10 = Math.min(blockLen - this.pos, len - pos);
|
1547
|
+
if (take10 === blockLen) {
|
1548
|
+
const dataView = createView(data);
|
1549
|
+
for (;blockLen <= len - pos; pos += blockLen)
|
1550
|
+
this.process(dataView, pos);
|
1551
|
+
continue;
|
1552
|
+
}
|
1553
|
+
buffer3.set(data.subarray(pos, pos + take10), this.pos);
|
1554
|
+
this.pos += take10;
|
1555
|
+
pos += take10;
|
1556
|
+
if (this.pos === blockLen) {
|
1557
|
+
this.process(view, 0);
|
1558
|
+
this.pos = 0;
|
1559
|
+
}
|
1560
|
+
}
|
1561
|
+
this.length += data.length;
|
1562
|
+
this.roundClean();
|
1563
|
+
return this;
|
1564
|
+
}
|
1565
|
+
digestInto(out) {
|
1566
|
+
aexists(this);
|
1567
|
+
aoutput(out, this);
|
1568
|
+
this.finished = true;
|
1569
|
+
const { buffer: buffer3, view, blockLen, isLE: isLE2 } = this;
|
1570
|
+
let { pos } = this;
|
1571
|
+
buffer3[pos++] = 128;
|
1572
|
+
this.buffer.subarray(pos).fill(0);
|
1573
|
+
if (this.padOffset > blockLen - pos) {
|
1574
|
+
this.process(view, 0);
|
1575
|
+
pos = 0;
|
1576
|
+
}
|
1577
|
+
for (let i = pos;i < blockLen; i++)
|
1578
|
+
buffer3[i] = 0;
|
1579
|
+
setBigUint64(view, blockLen - 8, BigInt(this.length * 8), isLE2);
|
1580
|
+
this.process(view, 0);
|
1581
|
+
const oview = createView(out);
|
1582
|
+
const len = this.outputLen;
|
1583
|
+
if (len % 4)
|
1584
|
+
throw new Error("_sha2: outputLen should be aligned to 32bit");
|
1585
|
+
const outLen = len / 4;
|
1586
|
+
const state = this.get();
|
1587
|
+
if (outLen > state.length)
|
1588
|
+
throw new Error("_sha2: outputLen bigger than state");
|
1589
|
+
for (let i = 0;i < outLen; i++)
|
1590
|
+
oview.setUint32(4 * i, state[i], isLE2);
|
1591
|
+
}
|
1592
|
+
digest() {
|
1593
|
+
const { buffer: buffer3, outputLen } = this;
|
1594
|
+
this.digestInto(buffer3);
|
1595
|
+
const res = buffer3.slice(0, outputLen);
|
1596
|
+
this.destroy();
|
1597
|
+
return res;
|
1598
|
+
}
|
1599
|
+
_cloneInto(to) {
|
1600
|
+
to || (to = new this.constructor);
|
1601
|
+
to.set(...this.get());
|
1602
|
+
const { blockLen, buffer: buffer3, length: length4, finished, destroyed, pos } = this;
|
1603
|
+
to.length = length4;
|
1604
|
+
to.pos = pos;
|
1605
|
+
to.finished = finished;
|
1606
|
+
to.destroyed = destroyed;
|
1607
|
+
if (length4 % blockLen)
|
1608
|
+
to.buffer.set(buffer3);
|
1609
|
+
return to;
|
1610
|
+
}
|
1611
|
+
};
|
1612
|
+
});
|
1613
|
+
|
1614
|
+
// ../node_modules/@noble/hashes/esm/sha256.js
|
1615
|
+
var SHA256_K, SHA256_IV, SHA256_W, SHA256, sha256;
|
1616
|
+
var init_sha256 = __esm(() => {
|
1617
|
+
init__md();
|
1618
|
+
init_utils();
|
1619
|
+
SHA256_K = /* @__PURE__ */ new Uint32Array([
|
1620
|
+
1116352408,
|
1621
|
+
1899447441,
|
1622
|
+
3049323471,
|
1623
|
+
3921009573,
|
1624
|
+
961987163,
|
1625
|
+
1508970993,
|
1626
|
+
2453635748,
|
1627
|
+
2870763221,
|
1628
|
+
3624381080,
|
1629
|
+
310598401,
|
1630
|
+
607225278,
|
1631
|
+
1426881987,
|
1632
|
+
1925078388,
|
1633
|
+
2162078206,
|
1634
|
+
2614888103,
|
1635
|
+
3248222580,
|
1636
|
+
3835390401,
|
1637
|
+
4022224774,
|
1638
|
+
264347078,
|
1639
|
+
604807628,
|
1640
|
+
770255983,
|
1641
|
+
1249150122,
|
1642
|
+
1555081692,
|
1643
|
+
1996064986,
|
1644
|
+
2554220882,
|
1645
|
+
2821834349,
|
1646
|
+
2952996808,
|
1647
|
+
3210313671,
|
1648
|
+
3336571891,
|
1649
|
+
3584528711,
|
1650
|
+
113926993,
|
1651
|
+
338241895,
|
1652
|
+
666307205,
|
1653
|
+
773529912,
|
1654
|
+
1294757372,
|
1655
|
+
1396182291,
|
1656
|
+
1695183700,
|
1657
|
+
1986661051,
|
1658
|
+
2177026350,
|
1659
|
+
2456956037,
|
1660
|
+
2730485921,
|
1661
|
+
2820302411,
|
1662
|
+
3259730800,
|
1663
|
+
3345764771,
|
1664
|
+
3516065817,
|
1665
|
+
3600352804,
|
1666
|
+
4094571909,
|
1667
|
+
275423344,
|
1668
|
+
430227734,
|
1669
|
+
506948616,
|
1670
|
+
659060556,
|
1671
|
+
883997877,
|
1672
|
+
958139571,
|
1673
|
+
1322822218,
|
1674
|
+
1537002063,
|
1675
|
+
1747873779,
|
1676
|
+
1955562222,
|
1677
|
+
2024104815,
|
1678
|
+
2227730452,
|
1679
|
+
2361852424,
|
1680
|
+
2428436474,
|
1681
|
+
2756734187,
|
1682
|
+
3204031479,
|
1683
|
+
3329325298
|
1684
|
+
]);
|
1685
|
+
SHA256_IV = /* @__PURE__ */ new Uint32Array([
|
1686
|
+
1779033703,
|
1687
|
+
3144134277,
|
1688
|
+
1013904242,
|
1689
|
+
2773480762,
|
1690
|
+
1359893119,
|
1691
|
+
2600822924,
|
1692
|
+
528734635,
|
1693
|
+
1541459225
|
1694
|
+
]);
|
1695
|
+
SHA256_W = /* @__PURE__ */ new Uint32Array(64);
|
1696
|
+
SHA256 = class SHA256 extends HashMD {
|
1697
|
+
constructor() {
|
1698
|
+
super(64, 32, 8, false);
|
1699
|
+
this.A = SHA256_IV[0] | 0;
|
1700
|
+
this.B = SHA256_IV[1] | 0;
|
1701
|
+
this.C = SHA256_IV[2] | 0;
|
1702
|
+
this.D = SHA256_IV[3] | 0;
|
1703
|
+
this.E = SHA256_IV[4] | 0;
|
1704
|
+
this.F = SHA256_IV[5] | 0;
|
1705
|
+
this.G = SHA256_IV[6] | 0;
|
1706
|
+
this.H = SHA256_IV[7] | 0;
|
1707
|
+
}
|
1708
|
+
get() {
|
1709
|
+
const { A, B, C, D, E, F, G, H } = this;
|
1710
|
+
return [A, B, C, D, E, F, G, H];
|
1711
|
+
}
|
1712
|
+
set(A, B, C, D, E, F, G, H) {
|
1713
|
+
this.A = A | 0;
|
1714
|
+
this.B = B | 0;
|
1715
|
+
this.C = C | 0;
|
1716
|
+
this.D = D | 0;
|
1717
|
+
this.E = E | 0;
|
1718
|
+
this.F = F | 0;
|
1719
|
+
this.G = G | 0;
|
1720
|
+
this.H = H | 0;
|
1721
|
+
}
|
1722
|
+
process(view, offset) {
|
1723
|
+
for (let i = 0;i < 16; i++, offset += 4)
|
1724
|
+
SHA256_W[i] = view.getUint32(offset, false);
|
1725
|
+
for (let i = 16;i < 64; i++) {
|
1726
|
+
const W15 = SHA256_W[i - 15];
|
1727
|
+
const W2 = SHA256_W[i - 2];
|
1728
|
+
const s0 = rotr(W15, 7) ^ rotr(W15, 18) ^ W15 >>> 3;
|
1729
|
+
const s1 = rotr(W2, 17) ^ rotr(W2, 19) ^ W2 >>> 10;
|
1730
|
+
SHA256_W[i] = s1 + SHA256_W[i - 7] + s0 + SHA256_W[i - 16] | 0;
|
1731
|
+
}
|
1732
|
+
let { A, B, C, D, E, F, G, H } = this;
|
1733
|
+
for (let i = 0;i < 64; i++) {
|
1734
|
+
const sigma1 = rotr(E, 6) ^ rotr(E, 11) ^ rotr(E, 25);
|
1735
|
+
const T1 = H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i] | 0;
|
1736
|
+
const sigma0 = rotr(A, 2) ^ rotr(A, 13) ^ rotr(A, 22);
|
1737
|
+
const T2 = sigma0 + Maj(A, B, C) | 0;
|
1738
|
+
H = G;
|
1739
|
+
G = F;
|
1740
|
+
F = E;
|
1741
|
+
E = D + T1 | 0;
|
1742
|
+
D = C;
|
1743
|
+
C = B;
|
1744
|
+
B = A;
|
1745
|
+
A = T1 + T2 | 0;
|
1746
|
+
}
|
1747
|
+
A = A + this.A | 0;
|
1748
|
+
B = B + this.B | 0;
|
1749
|
+
C = C + this.C | 0;
|
1750
|
+
D = D + this.D | 0;
|
1751
|
+
E = E + this.E | 0;
|
1752
|
+
F = F + this.F | 0;
|
1753
|
+
G = G + this.G | 0;
|
1754
|
+
H = H + this.H | 0;
|
1755
|
+
this.set(A, B, C, D, E, F, G, H);
|
1756
|
+
}
|
1757
|
+
roundClean() {
|
1758
|
+
SHA256_W.fill(0);
|
1759
|
+
}
|
1760
|
+
destroy() {
|
1761
|
+
this.set(0, 0, 0, 0, 0, 0, 0, 0);
|
1762
|
+
this.buffer.fill(0);
|
1763
|
+
}
|
1764
|
+
};
|
1765
|
+
sha256 = /* @__PURE__ */ wrapConstructor(() => new SHA256);
|
1766
|
+
});
|
1767
|
+
|
1768
|
+
// node_modules/viem/_esm/errors/chain.js
|
1769
|
+
var InvalidChainIdError;
|
1770
|
+
var init_chain = __esm(() => {
|
1771
|
+
init_base();
|
1772
|
+
InvalidChainIdError = class InvalidChainIdError extends BaseError {
|
1773
|
+
constructor({ chainId }) {
|
1774
|
+
super(typeof chainId === "number" ? `Chain ID "${chainId}" is invalid.` : "Chain ID is invalid.", { name: "InvalidChainIdError" });
|
1775
|
+
}
|
1776
|
+
};
|
1777
|
+
});
|
1778
|
+
|
830
1779
|
// ../node_modules/sha3/sponge/permute/copy/index.js
|
831
1780
|
var require_copy = __commonJS((exports2, module2) => {
|
832
1781
|
var copy4 = function copy(I, i) {
|
@@ -1501,7 +2450,8 @@ var tracingFunction = (name) => {
|
|
1501
2450
|
};
|
1502
2451
|
};
|
1503
2452
|
var internalCall = /* @__PURE__ */ tracingFunction("effect_internal_function");
|
1504
|
-
var genConstructor = function* () {
|
2453
|
+
var genConstructor = function* () {
|
2454
|
+
}.constructor;
|
1505
2455
|
|
1506
2456
|
// ../node_modules/effect/dist/esm/Hash.js
|
1507
2457
|
var randomHashCache = /* @__PURE__ */ globalValue(/* @__PURE__ */ Symbol.for("effect/Hash/randomHashCache"), () => new WeakMap);
|
@@ -1848,7 +2798,8 @@ var StructuralCommitPrototype = {
|
|
1848
2798
|
...StructuralPrototype
|
1849
2799
|
};
|
1850
2800
|
var Base = /* @__PURE__ */ function() {
|
1851
|
-
function Base2() {
|
2801
|
+
function Base2() {
|
2802
|
+
}
|
1852
2803
|
Base2.prototype = CommitPrototype;
|
1853
2804
|
return Base2;
|
1854
2805
|
}();
|
@@ -5351,7 +6302,8 @@ var Reference = () => (id, options) => {
|
|
5351
6302
|
Error.stackTraceLimit = 2;
|
5352
6303
|
const creationError = new Error;
|
5353
6304
|
Error.stackTraceLimit = limit;
|
5354
|
-
function ReferenceClass() {
|
6305
|
+
function ReferenceClass() {
|
6306
|
+
}
|
5355
6307
|
Object.setPrototypeOf(ReferenceClass, ReferenceProto);
|
5356
6308
|
ReferenceClass.key = id;
|
5357
6309
|
ReferenceClass.defaultValue = options.defaultValue;
|
@@ -8291,7 +9243,8 @@ var prettyErrorMessage = (u) => {
|
|
8291
9243
|
if (hasProperty(u, "toString") && isFunction2(u["toString"]) && u["toString"] !== Object.prototype.toString && u["toString"] !== globalThis.Array.prototype.toString) {
|
8292
9244
|
return u["toString"]();
|
8293
9245
|
}
|
8294
|
-
} catch {
|
9246
|
+
} catch {
|
9247
|
+
}
|
8295
9248
|
return stringifyCircular(u);
|
8296
9249
|
};
|
8297
9250
|
var locationRegex = /\((.*)\)/g;
|
@@ -8865,7 +9818,8 @@ var zip2 = /* @__PURE__ */ dual(2, (self, that) => flatMap6(self, (a) => map9(th
|
|
8865
9818
|
var zipLeft = /* @__PURE__ */ dual(2, (self, that) => flatMap6(self, (a) => as(that, a)));
|
8866
9819
|
var zipRight = /* @__PURE__ */ dual(2, (self, that) => flatMap6(self, () => that));
|
8867
9820
|
var never = /* @__PURE__ */ asyncInterrupt(() => {
|
8868
|
-
const interval = setInterval(() => {
|
9821
|
+
const interval = setInterval(() => {
|
9822
|
+
}, 2 ** 31 - 1);
|
8869
9823
|
return sync(() => clearInterval(interval));
|
8870
9824
|
});
|
8871
9825
|
var interruptFiber = (self) => flatMap6(fiberId, (fiberId2) => pipe(self, interruptAsFiber(fiberId2)));
|
@@ -12685,11 +13639,16 @@ class Const {
|
|
12685
13639
|
get value() {
|
12686
13640
|
return this.effect;
|
12687
13641
|
}
|
12688
|
-
onStart(_context, _effect, _parent, _fiber) {
|
12689
|
-
|
12690
|
-
|
12691
|
-
|
12692
|
-
|
13642
|
+
onStart(_context, _effect, _parent, _fiber) {
|
13643
|
+
}
|
13644
|
+
onEnd(_value, _fiber) {
|
13645
|
+
}
|
13646
|
+
onEffect(_fiber, _effect) {
|
13647
|
+
}
|
13648
|
+
onSuspend(_fiber) {
|
13649
|
+
}
|
13650
|
+
onResume(_fiber) {
|
13651
|
+
}
|
12693
13652
|
map(f) {
|
12694
13653
|
return new ProxySupervisor(this, pipe(this.value, map9(f)));
|
12695
13654
|
}
|
@@ -13163,7 +14122,8 @@ class FiberRuntime extends Class {
|
|
13163
14122
|
return whileLoop({
|
13164
14123
|
while: () => !isDone3,
|
13165
14124
|
body,
|
13166
|
-
step: () => {
|
14125
|
+
step: () => {
|
14126
|
+
}
|
13167
14127
|
});
|
13168
14128
|
}
|
13169
14129
|
return null;
|
@@ -22693,7 +23653,414 @@ class TrieIterator {
|
|
22693
23653
|
}
|
22694
23654
|
}
|
22695
23655
|
var isTrie = (u) => hasProperty(u, TrieTypeId);
|
22696
|
-
//
|
23656
|
+
// node_modules/viem/_esm/utils/encoding/toRlp.js
|
23657
|
+
init_base();
|
23658
|
+
init_cursor2();
|
23659
|
+
init_toBytes();
|
23660
|
+
init_toHex();
|
23661
|
+
function toRlp(bytes, to = "hex") {
|
23662
|
+
const encodable = getEncodable(bytes);
|
23663
|
+
const cursor = createCursor(new Uint8Array(encodable.length));
|
23664
|
+
encodable.encode(cursor);
|
23665
|
+
if (to === "hex")
|
23666
|
+
return bytesToHex2(cursor.bytes);
|
23667
|
+
return cursor.bytes;
|
23668
|
+
}
|
23669
|
+
function getEncodable(bytes) {
|
23670
|
+
if (Array.isArray(bytes))
|
23671
|
+
return getEncodableList(bytes.map((x) => getEncodable(x)));
|
23672
|
+
return getEncodableBytes(bytes);
|
23673
|
+
}
|
23674
|
+
function getEncodableList(list) {
|
23675
|
+
const bodyLength = list.reduce((acc, x) => acc + x.length, 0);
|
23676
|
+
const sizeOfBodyLength = getSizeOfLength(bodyLength);
|
23677
|
+
const length4 = (() => {
|
23678
|
+
if (bodyLength <= 55)
|
23679
|
+
return 1 + bodyLength;
|
23680
|
+
return 1 + sizeOfBodyLength + bodyLength;
|
23681
|
+
})();
|
23682
|
+
return {
|
23683
|
+
length: length4,
|
23684
|
+
encode(cursor) {
|
23685
|
+
if (bodyLength <= 55) {
|
23686
|
+
cursor.pushByte(192 + bodyLength);
|
23687
|
+
} else {
|
23688
|
+
cursor.pushByte(192 + 55 + sizeOfBodyLength);
|
23689
|
+
if (sizeOfBodyLength === 1)
|
23690
|
+
cursor.pushUint8(bodyLength);
|
23691
|
+
else if (sizeOfBodyLength === 2)
|
23692
|
+
cursor.pushUint16(bodyLength);
|
23693
|
+
else if (sizeOfBodyLength === 3)
|
23694
|
+
cursor.pushUint24(bodyLength);
|
23695
|
+
else
|
23696
|
+
cursor.pushUint32(bodyLength);
|
23697
|
+
}
|
23698
|
+
for (const { encode: encode6 } of list) {
|
23699
|
+
encode6(cursor);
|
23700
|
+
}
|
23701
|
+
}
|
23702
|
+
};
|
23703
|
+
}
|
23704
|
+
function getEncodableBytes(bytesOrHex) {
|
23705
|
+
const bytes = typeof bytesOrHex === "string" ? hexToBytes(bytesOrHex) : bytesOrHex;
|
23706
|
+
const sizeOfBytesLength = getSizeOfLength(bytes.length);
|
23707
|
+
const length4 = (() => {
|
23708
|
+
if (bytes.length === 1 && bytes[0] < 128)
|
23709
|
+
return 1;
|
23710
|
+
if (bytes.length <= 55)
|
23711
|
+
return 1 + bytes.length;
|
23712
|
+
return 1 + sizeOfBytesLength + bytes.length;
|
23713
|
+
})();
|
23714
|
+
return {
|
23715
|
+
length: length4,
|
23716
|
+
encode(cursor) {
|
23717
|
+
if (bytes.length === 1 && bytes[0] < 128) {
|
23718
|
+
cursor.pushBytes(bytes);
|
23719
|
+
} else if (bytes.length <= 55) {
|
23720
|
+
cursor.pushByte(128 + bytes.length);
|
23721
|
+
cursor.pushBytes(bytes);
|
23722
|
+
} else {
|
23723
|
+
cursor.pushByte(128 + 55 + sizeOfBytesLength);
|
23724
|
+
if (sizeOfBytesLength === 1)
|
23725
|
+
cursor.pushUint8(bytes.length);
|
23726
|
+
else if (sizeOfBytesLength === 2)
|
23727
|
+
cursor.pushUint16(bytes.length);
|
23728
|
+
else if (sizeOfBytesLength === 3)
|
23729
|
+
cursor.pushUint24(bytes.length);
|
23730
|
+
else
|
23731
|
+
cursor.pushUint32(bytes.length);
|
23732
|
+
cursor.pushBytes(bytes);
|
23733
|
+
}
|
23734
|
+
}
|
23735
|
+
};
|
23736
|
+
}
|
23737
|
+
function getSizeOfLength(length4) {
|
23738
|
+
if (length4 < 2 ** 8)
|
23739
|
+
return 1;
|
23740
|
+
if (length4 < 2 ** 16)
|
23741
|
+
return 2;
|
23742
|
+
if (length4 < 2 ** 24)
|
23743
|
+
return 3;
|
23744
|
+
if (length4 < 2 ** 32)
|
23745
|
+
return 4;
|
23746
|
+
throw new BaseError("Length is too large.");
|
23747
|
+
}
|
23748
|
+
// node_modules/viem/_esm/utils/formatters/transaction.js
|
23749
|
+
init_fromHex();
|
23750
|
+
var transactionType = {
|
23751
|
+
"0x0": "legacy",
|
23752
|
+
"0x1": "eip2930",
|
23753
|
+
"0x2": "eip1559",
|
23754
|
+
"0x3": "eip4844",
|
23755
|
+
"0x4": "eip7702"
|
23756
|
+
};
|
23757
|
+
function formatTransaction(transaction) {
|
23758
|
+
const transaction_ = {
|
23759
|
+
...transaction,
|
23760
|
+
blockHash: transaction.blockHash ? transaction.blockHash : null,
|
23761
|
+
blockNumber: transaction.blockNumber ? BigInt(transaction.blockNumber) : null,
|
23762
|
+
chainId: transaction.chainId ? hexToNumber(transaction.chainId) : undefined,
|
23763
|
+
gas: transaction.gas ? BigInt(transaction.gas) : undefined,
|
23764
|
+
gasPrice: transaction.gasPrice ? BigInt(transaction.gasPrice) : undefined,
|
23765
|
+
maxFeePerBlobGas: transaction.maxFeePerBlobGas ? BigInt(transaction.maxFeePerBlobGas) : undefined,
|
23766
|
+
maxFeePerGas: transaction.maxFeePerGas ? BigInt(transaction.maxFeePerGas) : undefined,
|
23767
|
+
maxPriorityFeePerGas: transaction.maxPriorityFeePerGas ? BigInt(transaction.maxPriorityFeePerGas) : undefined,
|
23768
|
+
nonce: transaction.nonce ? hexToNumber(transaction.nonce) : undefined,
|
23769
|
+
to: transaction.to ? transaction.to : null,
|
23770
|
+
transactionIndex: transaction.transactionIndex ? Number(transaction.transactionIndex) : null,
|
23771
|
+
type: transaction.type ? transactionType[transaction.type] : undefined,
|
23772
|
+
typeHex: transaction.type ? transaction.type : undefined,
|
23773
|
+
value: transaction.value ? BigInt(transaction.value) : undefined,
|
23774
|
+
v: transaction.v ? BigInt(transaction.v) : undefined
|
23775
|
+
};
|
23776
|
+
if (transaction.authorizationList)
|
23777
|
+
transaction_.authorizationList = formatAuthorizationList(transaction.authorizationList);
|
23778
|
+
transaction_.yParity = (() => {
|
23779
|
+
if (transaction.yParity)
|
23780
|
+
return Number(transaction.yParity);
|
23781
|
+
if (typeof transaction_.v === "bigint") {
|
23782
|
+
if (transaction_.v === 0n || transaction_.v === 27n)
|
23783
|
+
return 0;
|
23784
|
+
if (transaction_.v === 1n || transaction_.v === 28n)
|
23785
|
+
return 1;
|
23786
|
+
if (transaction_.v >= 35n)
|
23787
|
+
return transaction_.v % 2n === 0n ? 1 : 0;
|
23788
|
+
}
|
23789
|
+
return;
|
23790
|
+
})();
|
23791
|
+
if (transaction_.type === "legacy") {
|
23792
|
+
delete transaction_.accessList;
|
23793
|
+
delete transaction_.maxFeePerBlobGas;
|
23794
|
+
delete transaction_.maxFeePerGas;
|
23795
|
+
delete transaction_.maxPriorityFeePerGas;
|
23796
|
+
delete transaction_.yParity;
|
23797
|
+
}
|
23798
|
+
if (transaction_.type === "eip2930") {
|
23799
|
+
delete transaction_.maxFeePerBlobGas;
|
23800
|
+
delete transaction_.maxFeePerGas;
|
23801
|
+
delete transaction_.maxPriorityFeePerGas;
|
23802
|
+
}
|
23803
|
+
if (transaction_.type === "eip1559") {
|
23804
|
+
delete transaction_.maxFeePerBlobGas;
|
23805
|
+
}
|
23806
|
+
return transaction_;
|
23807
|
+
}
|
23808
|
+
var defineTransaction = /* @__PURE__ */ defineFormatter("transaction", formatTransaction);
|
23809
|
+
function formatAuthorizationList(authorizationList) {
|
23810
|
+
return authorizationList.map((authorization) => ({
|
23811
|
+
contractAddress: authorization.address,
|
23812
|
+
chainId: Number(authorization.chainId),
|
23813
|
+
nonce: Number(authorization.nonce),
|
23814
|
+
r: authorization.r,
|
23815
|
+
s: authorization.s,
|
23816
|
+
yParity: Number(authorization.yParity)
|
23817
|
+
}));
|
23818
|
+
}
|
23819
|
+
|
23820
|
+
// node_modules/viem/_esm/utils/formatters/block.js
|
23821
|
+
function formatBlock(block) {
|
23822
|
+
const transactions = (block.transactions ?? []).map((transaction) => {
|
23823
|
+
if (typeof transaction === "string")
|
23824
|
+
return transaction;
|
23825
|
+
return formatTransaction(transaction);
|
23826
|
+
});
|
23827
|
+
return {
|
23828
|
+
...block,
|
23829
|
+
baseFeePerGas: block.baseFeePerGas ? BigInt(block.baseFeePerGas) : null,
|
23830
|
+
blobGasUsed: block.blobGasUsed ? BigInt(block.blobGasUsed) : undefined,
|
23831
|
+
difficulty: block.difficulty ? BigInt(block.difficulty) : undefined,
|
23832
|
+
excessBlobGas: block.excessBlobGas ? BigInt(block.excessBlobGas) : undefined,
|
23833
|
+
gasLimit: block.gasLimit ? BigInt(block.gasLimit) : undefined,
|
23834
|
+
gasUsed: block.gasUsed ? BigInt(block.gasUsed) : undefined,
|
23835
|
+
hash: block.hash ? block.hash : null,
|
23836
|
+
logsBloom: block.logsBloom ? block.logsBloom : null,
|
23837
|
+
nonce: block.nonce ? block.nonce : null,
|
23838
|
+
number: block.number ? BigInt(block.number) : null,
|
23839
|
+
size: block.size ? BigInt(block.size) : undefined,
|
23840
|
+
timestamp: block.timestamp ? BigInt(block.timestamp) : undefined,
|
23841
|
+
transactions,
|
23842
|
+
totalDifficulty: block.totalDifficulty ? BigInt(block.totalDifficulty) : null
|
23843
|
+
};
|
23844
|
+
}
|
23845
|
+
var defineBlock = /* @__PURE__ */ defineFormatter("block", formatBlock);
|
23846
|
+
|
23847
|
+
// node_modules/viem/_esm/utils/blob/blobsToCommitments.js
|
23848
|
+
init_toBytes();
|
23849
|
+
init_toHex();
|
23850
|
+
function blobsToCommitments(parameters) {
|
23851
|
+
const { kzg } = parameters;
|
23852
|
+
const to = parameters.to ?? (typeof parameters.blobs[0] === "string" ? "hex" : "bytes");
|
23853
|
+
const blobs = typeof parameters.blobs[0] === "string" ? parameters.blobs.map((x) => hexToBytes(x)) : parameters.blobs;
|
23854
|
+
const commitments = [];
|
23855
|
+
for (const blob of blobs)
|
23856
|
+
commitments.push(Uint8Array.from(kzg.blobToKzgCommitment(blob)));
|
23857
|
+
return to === "bytes" ? commitments : commitments.map((x) => bytesToHex2(x));
|
23858
|
+
}
|
23859
|
+
|
23860
|
+
// node_modules/viem/_esm/utils/blob/blobsToProofs.js
|
23861
|
+
init_toBytes();
|
23862
|
+
init_toHex();
|
23863
|
+
function blobsToProofs(parameters) {
|
23864
|
+
const { kzg } = parameters;
|
23865
|
+
const to = parameters.to ?? (typeof parameters.blobs[0] === "string" ? "hex" : "bytes");
|
23866
|
+
const blobs = typeof parameters.blobs[0] === "string" ? parameters.blobs.map((x) => hexToBytes(x)) : parameters.blobs;
|
23867
|
+
const commitments = typeof parameters.commitments[0] === "string" ? parameters.commitments.map((x) => hexToBytes(x)) : parameters.commitments;
|
23868
|
+
const proofs = [];
|
23869
|
+
for (let i = 0;i < blobs.length; i++) {
|
23870
|
+
const blob = blobs[i];
|
23871
|
+
const commitment = commitments[i];
|
23872
|
+
proofs.push(Uint8Array.from(kzg.computeBlobKzgProof(blob, commitment)));
|
23873
|
+
}
|
23874
|
+
return to === "bytes" ? proofs : proofs.map((x) => bytesToHex2(x));
|
23875
|
+
}
|
23876
|
+
|
23877
|
+
// node_modules/viem/_esm/utils/blob/commitmentToVersionedHash.js
|
23878
|
+
init_toHex();
|
23879
|
+
|
23880
|
+
// node_modules/viem/_esm/utils/hash/sha256.js
|
23881
|
+
init_sha256();
|
23882
|
+
init_toBytes();
|
23883
|
+
init_toHex();
|
23884
|
+
function sha2562(value6, to_) {
|
23885
|
+
const to = to_ || "hex";
|
23886
|
+
const bytes = sha256(isHex(value6, { strict: false }) ? toBytes(value6) : value6);
|
23887
|
+
if (to === "bytes")
|
23888
|
+
return bytes;
|
23889
|
+
return toHex(bytes);
|
23890
|
+
}
|
23891
|
+
|
23892
|
+
// node_modules/viem/_esm/utils/blob/commitmentToVersionedHash.js
|
23893
|
+
function commitmentToVersionedHash(parameters) {
|
23894
|
+
const { commitment, version: version2 = 1 } = parameters;
|
23895
|
+
const to = parameters.to ?? (typeof commitment === "string" ? "hex" : "bytes");
|
23896
|
+
const versionedHash = sha2562(commitment, "bytes");
|
23897
|
+
versionedHash.set([version2], 0);
|
23898
|
+
return to === "bytes" ? versionedHash : bytesToHex2(versionedHash);
|
23899
|
+
}
|
23900
|
+
|
23901
|
+
// node_modules/viem/_esm/utils/blob/commitmentsToVersionedHashes.js
|
23902
|
+
function commitmentsToVersionedHashes(parameters) {
|
23903
|
+
const { commitments, version: version2 } = parameters;
|
23904
|
+
const to = parameters.to ?? (typeof commitments[0] === "string" ? "hex" : "bytes");
|
23905
|
+
const hashes = [];
|
23906
|
+
for (const commitment of commitments) {
|
23907
|
+
hashes.push(commitmentToVersionedHash({
|
23908
|
+
commitment,
|
23909
|
+
to,
|
23910
|
+
version: version2
|
23911
|
+
}));
|
23912
|
+
}
|
23913
|
+
return hashes;
|
23914
|
+
}
|
23915
|
+
|
23916
|
+
// node_modules/viem/_esm/constants/blob.js
|
23917
|
+
var blobsPerTransaction = 6;
|
23918
|
+
var bytesPerFieldElement = 32;
|
23919
|
+
var fieldElementsPerBlob = 4096;
|
23920
|
+
var bytesPerBlob = bytesPerFieldElement * fieldElementsPerBlob;
|
23921
|
+
var maxBytesPerTransaction = bytesPerBlob * blobsPerTransaction - 1 - 1 * fieldElementsPerBlob * blobsPerTransaction;
|
23922
|
+
|
23923
|
+
// node_modules/viem/_esm/constants/kzg.js
|
23924
|
+
var versionedHashVersionKzg = 1;
|
23925
|
+
|
23926
|
+
// node_modules/viem/_esm/errors/blob.js
|
23927
|
+
init_base();
|
23928
|
+
|
23929
|
+
class BlobSizeTooLargeError extends BaseError {
|
23930
|
+
constructor({ maxSize, size: size22 }) {
|
23931
|
+
super("Blob size is too large.", {
|
23932
|
+
metaMessages: [`Max: ${maxSize} bytes`, `Given: ${size22} bytes`],
|
23933
|
+
name: "BlobSizeTooLargeError"
|
23934
|
+
});
|
23935
|
+
}
|
23936
|
+
}
|
23937
|
+
|
23938
|
+
class EmptyBlobError extends BaseError {
|
23939
|
+
constructor() {
|
23940
|
+
super("Blob data must not be empty.", { name: "EmptyBlobError" });
|
23941
|
+
}
|
23942
|
+
}
|
23943
|
+
|
23944
|
+
class InvalidVersionedHashSizeError extends BaseError {
|
23945
|
+
constructor({ hash: hash2, size: size22 }) {
|
23946
|
+
super(`Versioned hash "${hash2}" size is invalid.`, {
|
23947
|
+
metaMessages: ["Expected: 32", `Received: ${size22}`],
|
23948
|
+
name: "InvalidVersionedHashSizeError"
|
23949
|
+
});
|
23950
|
+
}
|
23951
|
+
}
|
23952
|
+
|
23953
|
+
class InvalidVersionedHashVersionError extends BaseError {
|
23954
|
+
constructor({ hash: hash2, version: version2 }) {
|
23955
|
+
super(`Versioned hash "${hash2}" version is invalid.`, {
|
23956
|
+
metaMessages: [
|
23957
|
+
`Expected: ${versionedHashVersionKzg}`,
|
23958
|
+
`Received: ${version2}`
|
23959
|
+
],
|
23960
|
+
name: "InvalidVersionedHashVersionError"
|
23961
|
+
});
|
23962
|
+
}
|
23963
|
+
}
|
23964
|
+
|
23965
|
+
// node_modules/viem/_esm/utils/blob/toBlobs.js
|
23966
|
+
init_cursor2();
|
23967
|
+
init_size();
|
23968
|
+
init_toBytes();
|
23969
|
+
init_toHex();
|
23970
|
+
function toBlobs(parameters) {
|
23971
|
+
const to = parameters.to ?? (typeof parameters.data === "string" ? "hex" : "bytes");
|
23972
|
+
const data = typeof parameters.data === "string" ? hexToBytes(parameters.data) : parameters.data;
|
23973
|
+
const size_ = size21(data);
|
23974
|
+
if (!size_)
|
23975
|
+
throw new EmptyBlobError;
|
23976
|
+
if (size_ > maxBytesPerTransaction)
|
23977
|
+
throw new BlobSizeTooLargeError({
|
23978
|
+
maxSize: maxBytesPerTransaction,
|
23979
|
+
size: size_
|
23980
|
+
});
|
23981
|
+
const blobs = [];
|
23982
|
+
let active2 = true;
|
23983
|
+
let position = 0;
|
23984
|
+
while (active2) {
|
23985
|
+
const blob = createCursor(new Uint8Array(bytesPerBlob));
|
23986
|
+
let size22 = 0;
|
23987
|
+
while (size22 < fieldElementsPerBlob) {
|
23988
|
+
const bytes = data.slice(position, position + (bytesPerFieldElement - 1));
|
23989
|
+
blob.pushByte(0);
|
23990
|
+
blob.pushBytes(bytes);
|
23991
|
+
if (bytes.length < 31) {
|
23992
|
+
blob.pushByte(128);
|
23993
|
+
active2 = false;
|
23994
|
+
break;
|
23995
|
+
}
|
23996
|
+
size22++;
|
23997
|
+
position += 31;
|
23998
|
+
}
|
23999
|
+
blobs.push(blob);
|
24000
|
+
}
|
24001
|
+
return to === "bytes" ? blobs.map((x) => x.bytes) : blobs.map((x) => bytesToHex2(x.bytes));
|
24002
|
+
}
|
24003
|
+
|
24004
|
+
// node_modules/viem/_esm/utils/blob/toBlobSidecars.js
|
24005
|
+
function toBlobSidecars(parameters) {
|
24006
|
+
const { data, kzg, to } = parameters;
|
24007
|
+
const blobs = parameters.blobs ?? toBlobs({ data, to });
|
24008
|
+
const commitments = parameters.commitments ?? blobsToCommitments({ blobs, kzg, to });
|
24009
|
+
const proofs = parameters.proofs ?? blobsToProofs({ blobs, commitments, kzg, to });
|
24010
|
+
const sidecars = [];
|
24011
|
+
for (let i = 0;i < blobs.length; i++)
|
24012
|
+
sidecars.push({
|
24013
|
+
blob: blobs[i],
|
24014
|
+
commitment: commitments[i],
|
24015
|
+
proof: proofs[i]
|
24016
|
+
});
|
24017
|
+
return sidecars;
|
24018
|
+
}
|
24019
|
+
|
24020
|
+
// node_modules/viem/_esm/utils/transaction/getTransactionType.js
|
24021
|
+
init_transaction();
|
24022
|
+
function getTransactionType(transaction) {
|
24023
|
+
if (transaction.type)
|
24024
|
+
return transaction.type;
|
24025
|
+
if (typeof transaction.authorizationList !== "undefined")
|
24026
|
+
return "eip7702";
|
24027
|
+
if (typeof transaction.blobs !== "undefined" || typeof transaction.blobVersionedHashes !== "undefined" || typeof transaction.maxFeePerBlobGas !== "undefined" || typeof transaction.sidecars !== "undefined")
|
24028
|
+
return "eip4844";
|
24029
|
+
if (typeof transaction.maxFeePerGas !== "undefined" || typeof transaction.maxPriorityFeePerGas !== "undefined") {
|
24030
|
+
return "eip1559";
|
24031
|
+
}
|
24032
|
+
if (typeof transaction.gasPrice !== "undefined") {
|
24033
|
+
if (typeof transaction.accessList !== "undefined")
|
24034
|
+
return "eip2930";
|
24035
|
+
return "legacy";
|
24036
|
+
}
|
24037
|
+
throw new InvalidSerializableTransactionError({ transaction });
|
24038
|
+
}
|
24039
|
+
|
24040
|
+
// node_modules/viem/_esm/utils/formatters/log.js
|
24041
|
+
function formatLog(log3, { args: args2, eventName } = {}) {
|
24042
|
+
return {
|
24043
|
+
...log3,
|
24044
|
+
blockHash: log3.blockHash ? log3.blockHash : null,
|
24045
|
+
blockNumber: log3.blockNumber ? BigInt(log3.blockNumber) : null,
|
24046
|
+
logIndex: log3.logIndex ? Number(log3.logIndex) : null,
|
24047
|
+
transactionHash: log3.transactionHash ? log3.transactionHash : null,
|
24048
|
+
transactionIndex: log3.transactionIndex ? Number(log3.transactionIndex) : null,
|
24049
|
+
...eventName ? { args: args2, eventName } : {}
|
24050
|
+
};
|
24051
|
+
}
|
24052
|
+
|
24053
|
+
// node_modules/viem/_esm/utils/chain/defineChain.js
|
24054
|
+
function defineChain(chain) {
|
24055
|
+
return {
|
24056
|
+
formatters: undefined,
|
24057
|
+
fees: undefined,
|
24058
|
+
serializers: undefined,
|
24059
|
+
...chain
|
24060
|
+
};
|
24061
|
+
}
|
24062
|
+
|
24063
|
+
// node_modules/viem/_esm/utils/abi/encodePacked.js
|
22697
24064
|
init_abi();
|
22698
24065
|
init_address();
|
22699
24066
|
init_isAddress();
|
@@ -22762,7 +24129,350 @@ function encode6(type2, value6, isArray2 = false) {
|
|
22762
24129
|
throw new UnsupportedPackedAbiType(type2);
|
22763
24130
|
}
|
22764
24131
|
|
22765
|
-
//
|
24132
|
+
// node_modules/viem/_esm/utils/formatters/transactionReceipt.js
|
24133
|
+
init_fromHex();
|
24134
|
+
var receiptStatuses = {
|
24135
|
+
"0x0": "reverted",
|
24136
|
+
"0x1": "success"
|
24137
|
+
};
|
24138
|
+
function formatTransactionReceipt(transactionReceipt) {
|
24139
|
+
const receipt = {
|
24140
|
+
...transactionReceipt,
|
24141
|
+
blockNumber: transactionReceipt.blockNumber ? BigInt(transactionReceipt.blockNumber) : null,
|
24142
|
+
contractAddress: transactionReceipt.contractAddress ? transactionReceipt.contractAddress : null,
|
24143
|
+
cumulativeGasUsed: transactionReceipt.cumulativeGasUsed ? BigInt(transactionReceipt.cumulativeGasUsed) : null,
|
24144
|
+
effectiveGasPrice: transactionReceipt.effectiveGasPrice ? BigInt(transactionReceipt.effectiveGasPrice) : null,
|
24145
|
+
gasUsed: transactionReceipt.gasUsed ? BigInt(transactionReceipt.gasUsed) : null,
|
24146
|
+
logs: transactionReceipt.logs ? transactionReceipt.logs.map((log3) => formatLog(log3)) : null,
|
24147
|
+
to: transactionReceipt.to ? transactionReceipt.to : null,
|
24148
|
+
transactionIndex: transactionReceipt.transactionIndex ? hexToNumber(transactionReceipt.transactionIndex) : null,
|
24149
|
+
status: transactionReceipt.status ? receiptStatuses[transactionReceipt.status] : null,
|
24150
|
+
type: transactionReceipt.type ? transactionType[transactionReceipt.type] || transactionReceipt.type : null
|
24151
|
+
};
|
24152
|
+
if (transactionReceipt.blobGasPrice)
|
24153
|
+
receipt.blobGasPrice = BigInt(transactionReceipt.blobGasPrice);
|
24154
|
+
if (transactionReceipt.blobGasUsed)
|
24155
|
+
receipt.blobGasUsed = BigInt(transactionReceipt.blobGasUsed);
|
24156
|
+
return receipt;
|
24157
|
+
}
|
24158
|
+
var defineTransactionReceipt = /* @__PURE__ */ defineFormatter("transactionReceipt", formatTransactionReceipt);
|
24159
|
+
|
24160
|
+
// node_modules/viem/_esm/utils/transaction/assertTransaction.js
|
24161
|
+
init_number();
|
24162
|
+
init_address();
|
24163
|
+
init_base();
|
24164
|
+
init_chain();
|
24165
|
+
init_node();
|
24166
|
+
init_isAddress();
|
24167
|
+
init_size();
|
24168
|
+
init_slice();
|
24169
|
+
init_fromHex();
|
24170
|
+
function assertTransactionEIP7702(transaction) {
|
24171
|
+
const { authorizationList } = transaction;
|
24172
|
+
if (authorizationList) {
|
24173
|
+
for (const authorization of authorizationList) {
|
24174
|
+
const { contractAddress, chainId } = authorization;
|
24175
|
+
if (!isAddress(contractAddress))
|
24176
|
+
throw new InvalidAddressError({ address: contractAddress });
|
24177
|
+
if (chainId < 0)
|
24178
|
+
throw new InvalidChainIdError({ chainId });
|
24179
|
+
}
|
24180
|
+
}
|
24181
|
+
assertTransactionEIP1559(transaction);
|
24182
|
+
}
|
24183
|
+
function assertTransactionEIP4844(transaction) {
|
24184
|
+
const { blobVersionedHashes } = transaction;
|
24185
|
+
if (blobVersionedHashes) {
|
24186
|
+
if (blobVersionedHashes.length === 0)
|
24187
|
+
throw new EmptyBlobError;
|
24188
|
+
for (const hash2 of blobVersionedHashes) {
|
24189
|
+
const size_ = size21(hash2);
|
24190
|
+
const version2 = hexToNumber(slice(hash2, 0, 1));
|
24191
|
+
if (size_ !== 32)
|
24192
|
+
throw new InvalidVersionedHashSizeError({ hash: hash2, size: size_ });
|
24193
|
+
if (version2 !== versionedHashVersionKzg)
|
24194
|
+
throw new InvalidVersionedHashVersionError({
|
24195
|
+
hash: hash2,
|
24196
|
+
version: version2
|
24197
|
+
});
|
24198
|
+
}
|
24199
|
+
}
|
24200
|
+
assertTransactionEIP1559(transaction);
|
24201
|
+
}
|
24202
|
+
function assertTransactionEIP1559(transaction) {
|
24203
|
+
const { chainId, maxPriorityFeePerGas, maxFeePerGas, to } = transaction;
|
24204
|
+
if (chainId <= 0)
|
24205
|
+
throw new InvalidChainIdError({ chainId });
|
24206
|
+
if (to && !isAddress(to))
|
24207
|
+
throw new InvalidAddressError({ address: to });
|
24208
|
+
if (maxFeePerGas && maxFeePerGas > maxUint256)
|
24209
|
+
throw new FeeCapTooHighError({ maxFeePerGas });
|
24210
|
+
if (maxPriorityFeePerGas && maxFeePerGas && maxPriorityFeePerGas > maxFeePerGas)
|
24211
|
+
throw new TipAboveFeeCapError({ maxFeePerGas, maxPriorityFeePerGas });
|
24212
|
+
}
|
24213
|
+
function assertTransactionEIP2930(transaction) {
|
24214
|
+
const { chainId, maxPriorityFeePerGas, gasPrice, maxFeePerGas, to } = transaction;
|
24215
|
+
if (chainId <= 0)
|
24216
|
+
throw new InvalidChainIdError({ chainId });
|
24217
|
+
if (to && !isAddress(to))
|
24218
|
+
throw new InvalidAddressError({ address: to });
|
24219
|
+
if (maxPriorityFeePerGas || maxFeePerGas)
|
24220
|
+
throw new BaseError("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.");
|
24221
|
+
if (gasPrice && gasPrice > maxUint256)
|
24222
|
+
throw new FeeCapTooHighError({ maxFeePerGas: gasPrice });
|
24223
|
+
}
|
24224
|
+
function assertTransactionLegacy(transaction) {
|
24225
|
+
const { chainId, maxPriorityFeePerGas, gasPrice, maxFeePerGas, to } = transaction;
|
24226
|
+
if (to && !isAddress(to))
|
24227
|
+
throw new InvalidAddressError({ address: to });
|
24228
|
+
if (typeof chainId !== "undefined" && chainId <= 0)
|
24229
|
+
throw new InvalidChainIdError({ chainId });
|
24230
|
+
if (maxPriorityFeePerGas || maxFeePerGas)
|
24231
|
+
throw new BaseError("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.");
|
24232
|
+
if (gasPrice && gasPrice > maxUint256)
|
24233
|
+
throw new FeeCapTooHighError({ maxFeePerGas: gasPrice });
|
24234
|
+
}
|
24235
|
+
|
24236
|
+
// node_modules/viem/_esm/utils/transaction/serializeTransaction.js
|
24237
|
+
init_transaction();
|
24238
|
+
init_toHex();
|
24239
|
+
|
24240
|
+
// node_modules/viem/_esm/experimental/eip7702/utils/serializeAuthorizationList.js
|
24241
|
+
init_toHex();
|
24242
|
+
function serializeAuthorizationList(authorizationList) {
|
24243
|
+
if (!authorizationList || authorizationList.length === 0)
|
24244
|
+
return [];
|
24245
|
+
const serializedAuthorizationList = [];
|
24246
|
+
for (const authorization of authorizationList) {
|
24247
|
+
const { contractAddress, chainId, nonce, ...signature } = authorization;
|
24248
|
+
serializedAuthorizationList.push([
|
24249
|
+
chainId ? toHex(chainId) : "0x",
|
24250
|
+
contractAddress,
|
24251
|
+
nonce ? toHex(nonce) : "0x",
|
24252
|
+
...toYParitySignatureArray({}, signature)
|
24253
|
+
]);
|
24254
|
+
}
|
24255
|
+
return serializedAuthorizationList;
|
24256
|
+
}
|
24257
|
+
|
24258
|
+
// node_modules/viem/_esm/utils/transaction/serializeAccessList.js
|
24259
|
+
init_address();
|
24260
|
+
init_transaction();
|
24261
|
+
init_isAddress();
|
24262
|
+
function serializeAccessList(accessList) {
|
24263
|
+
if (!accessList || accessList.length === 0)
|
24264
|
+
return [];
|
24265
|
+
const serializedAccessList = [];
|
24266
|
+
for (let i = 0;i < accessList.length; i++) {
|
24267
|
+
const { address, storageKeys } = accessList[i];
|
24268
|
+
for (let j = 0;j < storageKeys.length; j++) {
|
24269
|
+
if (storageKeys[j].length - 2 !== 64) {
|
24270
|
+
throw new InvalidStorageKeySizeError({ storageKey: storageKeys[j] });
|
24271
|
+
}
|
24272
|
+
}
|
24273
|
+
if (!isAddress(address, { strict: false })) {
|
24274
|
+
throw new InvalidAddressError({ address });
|
24275
|
+
}
|
24276
|
+
serializedAccessList.push([address, storageKeys]);
|
24277
|
+
}
|
24278
|
+
return serializedAccessList;
|
24279
|
+
}
|
24280
|
+
|
24281
|
+
// node_modules/viem/_esm/utils/transaction/serializeTransaction.js
|
24282
|
+
function serializeTransaction(transaction, signature) {
|
24283
|
+
const type2 = getTransactionType(transaction);
|
24284
|
+
if (type2 === "eip1559")
|
24285
|
+
return serializeTransactionEIP1559(transaction, signature);
|
24286
|
+
if (type2 === "eip2930")
|
24287
|
+
return serializeTransactionEIP2930(transaction, signature);
|
24288
|
+
if (type2 === "eip4844")
|
24289
|
+
return serializeTransactionEIP4844(transaction, signature);
|
24290
|
+
if (type2 === "eip7702")
|
24291
|
+
return serializeTransactionEIP7702(transaction, signature);
|
24292
|
+
return serializeTransactionLegacy(transaction, signature);
|
24293
|
+
}
|
24294
|
+
function serializeTransactionEIP7702(transaction, signature) {
|
24295
|
+
const { authorizationList, chainId, gas, nonce, to, value: value6, maxFeePerGas, maxPriorityFeePerGas, accessList, data } = transaction;
|
24296
|
+
assertTransactionEIP7702(transaction);
|
24297
|
+
const serializedAccessList = serializeAccessList(accessList);
|
24298
|
+
const serializedAuthorizationList = serializeAuthorizationList(authorizationList);
|
24299
|
+
return concatHex([
|
24300
|
+
"0x04",
|
24301
|
+
toRlp([
|
24302
|
+
toHex(chainId),
|
24303
|
+
nonce ? toHex(nonce) : "0x",
|
24304
|
+
maxPriorityFeePerGas ? toHex(maxPriorityFeePerGas) : "0x",
|
24305
|
+
maxFeePerGas ? toHex(maxFeePerGas) : "0x",
|
24306
|
+
gas ? toHex(gas) : "0x",
|
24307
|
+
to ?? "0x",
|
24308
|
+
value6 ? toHex(value6) : "0x",
|
24309
|
+
data ?? "0x",
|
24310
|
+
serializedAccessList,
|
24311
|
+
serializedAuthorizationList,
|
24312
|
+
...toYParitySignatureArray(transaction, signature)
|
24313
|
+
])
|
24314
|
+
]);
|
24315
|
+
}
|
24316
|
+
function serializeTransactionEIP4844(transaction, signature) {
|
24317
|
+
const { chainId, gas, nonce, to, value: value6, maxFeePerBlobGas, maxFeePerGas, maxPriorityFeePerGas, accessList, data } = transaction;
|
24318
|
+
assertTransactionEIP4844(transaction);
|
24319
|
+
let blobVersionedHashes = transaction.blobVersionedHashes;
|
24320
|
+
let sidecars = transaction.sidecars;
|
24321
|
+
if (transaction.blobs && (typeof blobVersionedHashes === "undefined" || typeof sidecars === "undefined")) {
|
24322
|
+
const blobs2 = typeof transaction.blobs[0] === "string" ? transaction.blobs : transaction.blobs.map((x) => bytesToHex2(x));
|
24323
|
+
const kzg = transaction.kzg;
|
24324
|
+
const commitments2 = blobsToCommitments({
|
24325
|
+
blobs: blobs2,
|
24326
|
+
kzg
|
24327
|
+
});
|
24328
|
+
if (typeof blobVersionedHashes === "undefined")
|
24329
|
+
blobVersionedHashes = commitmentsToVersionedHashes({
|
24330
|
+
commitments: commitments2
|
24331
|
+
});
|
24332
|
+
if (typeof sidecars === "undefined") {
|
24333
|
+
const proofs2 = blobsToProofs({ blobs: blobs2, commitments: commitments2, kzg });
|
24334
|
+
sidecars = toBlobSidecars({ blobs: blobs2, commitments: commitments2, proofs: proofs2 });
|
24335
|
+
}
|
24336
|
+
}
|
24337
|
+
const serializedAccessList = serializeAccessList(accessList);
|
24338
|
+
const serializedTransaction = [
|
24339
|
+
toHex(chainId),
|
24340
|
+
nonce ? toHex(nonce) : "0x",
|
24341
|
+
maxPriorityFeePerGas ? toHex(maxPriorityFeePerGas) : "0x",
|
24342
|
+
maxFeePerGas ? toHex(maxFeePerGas) : "0x",
|
24343
|
+
gas ? toHex(gas) : "0x",
|
24344
|
+
to ?? "0x",
|
24345
|
+
value6 ? toHex(value6) : "0x",
|
24346
|
+
data ?? "0x",
|
24347
|
+
serializedAccessList,
|
24348
|
+
maxFeePerBlobGas ? toHex(maxFeePerBlobGas) : "0x",
|
24349
|
+
blobVersionedHashes ?? [],
|
24350
|
+
...toYParitySignatureArray(transaction, signature)
|
24351
|
+
];
|
24352
|
+
const blobs = [];
|
24353
|
+
const commitments = [];
|
24354
|
+
const proofs = [];
|
24355
|
+
if (sidecars)
|
24356
|
+
for (let i = 0;i < sidecars.length; i++) {
|
24357
|
+
const { blob, commitment, proof } = sidecars[i];
|
24358
|
+
blobs.push(blob);
|
24359
|
+
commitments.push(commitment);
|
24360
|
+
proofs.push(proof);
|
24361
|
+
}
|
24362
|
+
return concatHex([
|
24363
|
+
"0x03",
|
24364
|
+
sidecars ? toRlp([serializedTransaction, blobs, commitments, proofs]) : toRlp(serializedTransaction)
|
24365
|
+
]);
|
24366
|
+
}
|
24367
|
+
function serializeTransactionEIP1559(transaction, signature) {
|
24368
|
+
const { chainId, gas, nonce, to, value: value6, maxFeePerGas, maxPriorityFeePerGas, accessList, data } = transaction;
|
24369
|
+
assertTransactionEIP1559(transaction);
|
24370
|
+
const serializedAccessList = serializeAccessList(accessList);
|
24371
|
+
const serializedTransaction = [
|
24372
|
+
toHex(chainId),
|
24373
|
+
nonce ? toHex(nonce) : "0x",
|
24374
|
+
maxPriorityFeePerGas ? toHex(maxPriorityFeePerGas) : "0x",
|
24375
|
+
maxFeePerGas ? toHex(maxFeePerGas) : "0x",
|
24376
|
+
gas ? toHex(gas) : "0x",
|
24377
|
+
to ?? "0x",
|
24378
|
+
value6 ? toHex(value6) : "0x",
|
24379
|
+
data ?? "0x",
|
24380
|
+
serializedAccessList,
|
24381
|
+
...toYParitySignatureArray(transaction, signature)
|
24382
|
+
];
|
24383
|
+
return concatHex([
|
24384
|
+
"0x02",
|
24385
|
+
toRlp(serializedTransaction)
|
24386
|
+
]);
|
24387
|
+
}
|
24388
|
+
function serializeTransactionEIP2930(transaction, signature) {
|
24389
|
+
const { chainId, gas, data, nonce, to, value: value6, accessList, gasPrice } = transaction;
|
24390
|
+
assertTransactionEIP2930(transaction);
|
24391
|
+
const serializedAccessList = serializeAccessList(accessList);
|
24392
|
+
const serializedTransaction = [
|
24393
|
+
toHex(chainId),
|
24394
|
+
nonce ? toHex(nonce) : "0x",
|
24395
|
+
gasPrice ? toHex(gasPrice) : "0x",
|
24396
|
+
gas ? toHex(gas) : "0x",
|
24397
|
+
to ?? "0x",
|
24398
|
+
value6 ? toHex(value6) : "0x",
|
24399
|
+
data ?? "0x",
|
24400
|
+
serializedAccessList,
|
24401
|
+
...toYParitySignatureArray(transaction, signature)
|
24402
|
+
];
|
24403
|
+
return concatHex([
|
24404
|
+
"0x01",
|
24405
|
+
toRlp(serializedTransaction)
|
24406
|
+
]);
|
24407
|
+
}
|
24408
|
+
function serializeTransactionLegacy(transaction, signature) {
|
24409
|
+
const { chainId = 0, gas, data, nonce, to, value: value6, gasPrice } = transaction;
|
24410
|
+
assertTransactionLegacy(transaction);
|
24411
|
+
let serializedTransaction = [
|
24412
|
+
nonce ? toHex(nonce) : "0x",
|
24413
|
+
gasPrice ? toHex(gasPrice) : "0x",
|
24414
|
+
gas ? toHex(gas) : "0x",
|
24415
|
+
to ?? "0x",
|
24416
|
+
value6 ? toHex(value6) : "0x",
|
24417
|
+
data ?? "0x"
|
24418
|
+
];
|
24419
|
+
if (signature) {
|
24420
|
+
const v = (() => {
|
24421
|
+
if (signature.v >= 35n) {
|
24422
|
+
const inferredChainId = (signature.v - 35n) / 2n;
|
24423
|
+
if (inferredChainId > 0)
|
24424
|
+
return signature.v;
|
24425
|
+
return 27n + (signature.v === 35n ? 0n : 1n);
|
24426
|
+
}
|
24427
|
+
if (chainId > 0)
|
24428
|
+
return BigInt(chainId * 2) + BigInt(35n + signature.v - 27n);
|
24429
|
+
const v2 = 27n + (signature.v === 27n ? 0n : 1n);
|
24430
|
+
if (signature.v !== v2)
|
24431
|
+
throw new InvalidLegacyVError({ v: signature.v });
|
24432
|
+
return v2;
|
24433
|
+
})();
|
24434
|
+
const r = trim(signature.r);
|
24435
|
+
const s = trim(signature.s);
|
24436
|
+
serializedTransaction = [
|
24437
|
+
...serializedTransaction,
|
24438
|
+
toHex(v),
|
24439
|
+
r === "0x00" ? "0x" : r,
|
24440
|
+
s === "0x00" ? "0x" : s
|
24441
|
+
];
|
24442
|
+
} else if (chainId > 0) {
|
24443
|
+
serializedTransaction = [
|
24444
|
+
...serializedTransaction,
|
24445
|
+
toHex(chainId),
|
24446
|
+
"0x",
|
24447
|
+
"0x"
|
24448
|
+
];
|
24449
|
+
}
|
24450
|
+
return toRlp(serializedTransaction);
|
24451
|
+
}
|
24452
|
+
function toYParitySignatureArray(transaction, signature_) {
|
24453
|
+
const signature = signature_ ?? transaction;
|
24454
|
+
const { v, yParity } = signature;
|
24455
|
+
if (typeof signature.r === "undefined")
|
24456
|
+
return [];
|
24457
|
+
if (typeof signature.s === "undefined")
|
24458
|
+
return [];
|
24459
|
+
if (typeof v === "undefined" && typeof yParity === "undefined")
|
24460
|
+
return [];
|
24461
|
+
const r = trim(signature.r);
|
24462
|
+
const s = trim(signature.s);
|
24463
|
+
const yParity_ = (() => {
|
24464
|
+
if (typeof yParity === "number")
|
24465
|
+
return yParity ? toHex(1) : "0x";
|
24466
|
+
if (v === 0n)
|
24467
|
+
return "0x";
|
24468
|
+
if (v === 1n)
|
24469
|
+
return toHex(1);
|
24470
|
+
return v === 27n ? "0x" : toHex(1);
|
24471
|
+
})();
|
24472
|
+
return [yParity_, r === "0x00" ? "0x" : r, s === "0x00" ? "0x" : s];
|
24473
|
+
}
|
24474
|
+
|
24475
|
+
// node_modules/viem/_esm/index.js
|
22766
24476
|
init_toBytes();
|
22767
24477
|
init_toHex();
|
22768
24478
|
// src/schema.ts
|