viem 2.0.10 → 2.1.0

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 (74) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/_cjs/chains/definitions/baseSepolia.js +4 -0
  3. package/_cjs/chains/definitions/baseSepolia.js.map +1 -1
  4. package/_cjs/chains/definitions/palm.js +32 -0
  5. package/_cjs/chains/definitions/palm.js.map +1 -0
  6. package/_cjs/chains/definitions/palmTestnet.js +33 -0
  7. package/_cjs/chains/definitions/palmTestnet.js.map +1 -0
  8. package/_cjs/chains/index.js +6 -2
  9. package/_cjs/chains/index.js.map +1 -1
  10. package/_cjs/errors/cursor.js +13 -1
  11. package/_cjs/errors/cursor.js.map +1 -1
  12. package/_cjs/errors/version.js +1 -1
  13. package/_cjs/errors/version.js.map +1 -1
  14. package/_cjs/utils/abi/decodeAbiParameters.js +117 -126
  15. package/_cjs/utils/abi/decodeAbiParameters.js.map +1 -1
  16. package/_cjs/utils/abi/decodeEventLog.js +7 -4
  17. package/_cjs/utils/abi/decodeEventLog.js.map +1 -1
  18. package/_cjs/utils/cursor.js +40 -3
  19. package/_cjs/utils/cursor.js.map +1 -1
  20. package/_cjs/utils/encoding/fromBytes.js +2 -2
  21. package/_cjs/utils/encoding/fromBytes.js.map +1 -1
  22. package/_cjs/utils/encoding/fromRlp.js +1 -1
  23. package/_cjs/utils/encoding/fromRlp.js.map +1 -1
  24. package/_esm/chains/definitions/baseSepolia.js +4 -0
  25. package/_esm/chains/definitions/baseSepolia.js.map +1 -1
  26. package/_esm/chains/definitions/palm.js +29 -0
  27. package/_esm/chains/definitions/palm.js.map +1 -0
  28. package/_esm/chains/definitions/palmTestnet.js +30 -0
  29. package/_esm/chains/definitions/palmTestnet.js.map +1 -0
  30. package/_esm/chains/index.js +2 -0
  31. package/_esm/chains/index.js.map +1 -1
  32. package/_esm/errors/cursor.js +11 -0
  33. package/_esm/errors/cursor.js.map +1 -1
  34. package/_esm/errors/version.js +1 -1
  35. package/_esm/errors/version.js.map +1 -1
  36. package/_esm/utils/abi/decodeAbiParameters.js +145 -140
  37. package/_esm/utils/abi/decodeAbiParameters.js.map +1 -1
  38. package/_esm/utils/abi/decodeEventLog.js +7 -4
  39. package/_esm/utils/abi/decodeEventLog.js.map +1 -1
  40. package/_esm/utils/cursor.js +41 -4
  41. package/_esm/utils/cursor.js.map +1 -1
  42. package/_esm/utils/encoding/fromBytes.js +2 -2
  43. package/_esm/utils/encoding/fromBytes.js.map +1 -1
  44. package/_esm/utils/encoding/fromRlp.js +1 -1
  45. package/_esm/utils/encoding/fromRlp.js.map +1 -1
  46. package/_types/chains/definitions/baseSepolia.d.ts +4 -0
  47. package/_types/chains/definitions/baseSepolia.d.ts.map +1 -1
  48. package/_types/chains/definitions/palm.d.ts +33 -0
  49. package/_types/chains/definitions/palm.d.ts.map +1 -0
  50. package/_types/chains/definitions/palmTestnet.d.ts +33 -0
  51. package/_types/chains/definitions/palmTestnet.d.ts.map +1 -0
  52. package/_types/chains/index.d.ts +2 -0
  53. package/_types/chains/index.d.ts.map +1 -1
  54. package/_types/errors/cursor.d.ts +10 -0
  55. package/_types/errors/cursor.d.ts.map +1 -1
  56. package/_types/errors/version.d.ts +1 -1
  57. package/_types/errors/version.d.ts.map +1 -1
  58. package/_types/utils/abi/decodeAbiParameters.d.ts +18 -19
  59. package/_types/utils/abi/decodeAbiParameters.d.ts.map +1 -1
  60. package/_types/utils/abi/decodeEventLog.d.ts.map +1 -1
  61. package/_types/utils/cursor.d.ts +13 -3
  62. package/_types/utils/cursor.d.ts.map +1 -1
  63. package/chains/definitions/baseSepolia.ts +4 -0
  64. package/chains/definitions/palm.ts +29 -0
  65. package/chains/definitions/palmTestnet.ts +30 -0
  66. package/chains/index.ts +2 -0
  67. package/errors/cursor.ts +13 -0
  68. package/errors/version.ts +1 -1
  69. package/package.json +1 -1
  70. package/utils/abi/decodeAbiParameters.ts +226 -249
  71. package/utils/abi/decodeEventLog.ts +9 -4
  72. package/utils/cursor.ts +53 -6
  73. package/utils/encoding/fromBytes.ts +2 -2
  74. package/utils/encoding/fromRlp.ts +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # viem
2
2
 
3
+ ## 2.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [`06105dfc`](https://github.com/wevm/viem/commit/06105dfcb01571f9278e0268f30c954f58958e2b) Thanks [@jxom](https://github.com/jxom)! - Refactored ABI decoding implementation to use a cursor instead of array copies, and prevent excessive recursive pointers.
8
+
9
+ ### Patch Changes
10
+
11
+ - [#1691](https://github.com/wevm/viem/pull/1691) [`8d011e8b`](https://github.com/wevm/viem/commit/8d011e8bf13685fe51e8cb69d6ef633fa1247e9a) Thanks [@skenaja](https://github.com/skenaja)! - Added Palm and Palm Testnet chains
12
+
13
+ - [#1684](https://github.com/wevm/viem/pull/1684) [`06a28ddb`](https://github.com/wevm/viem/commit/06a28ddbb69e51c6288e2dad0ff3b99b209e5276) Thanks [@Yuripetusko](https://github.com/Yuripetusko)! - Added Multicall3 config to Base Sepolia chain definition
14
+
3
15
  ## 2.0.10
4
16
 
5
17
  ### Patch Changes
@@ -35,6 +35,10 @@ exports.baseSepolia = (0, defineChain_js_1.defineChain)({
35
35
  blockCreated: 4446677,
36
36
  },
37
37
  },
38
+ multicall3: {
39
+ address: '0xca11bde05977b3631167028862be2a173976ca11',
40
+ blockCreated: 1059647,
41
+ },
38
42
  },
39
43
  testnet: true,
40
44
  sourceId,
@@ -1 +1 @@
1
- {"version":3,"file":"baseSepolia.js","sourceRoot":"","sources":["../../../chains/definitions/baseSepolia.ts"],"names":[],"mappings":";;;AAAA,qEAA8D;AAC9D,8DAAuD;AAEvD,MAAM,QAAQ,GAAG,QAAU,CAAA;AAEd,QAAA,WAAW,GAAiB,IAAA,4BAAW,EAAC;IACnD,GAAG,4BAAW;IACd,EAAE,EAAE,KAAK;IACT,OAAO,EAAE,cAAc;IACvB,IAAI,EAAE,cAAc;IACpB,cAAc,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;IACtE,OAAO,EAAE;QACP,OAAO,EAAE;YACP,IAAI,EAAE,CAAC,0BAA0B,CAAC;SACnC;KACF;IACD,cAAc,EAAE;QACd,OAAO,EAAE;YACP,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,qCAAqC;YAC1C,MAAM,EAAE,yCAAyC;SAClD;KACF;IACD,SAAS,EAAE;QACT,GAAG,4BAAW,CAAC,SAAS;QACxB,cAAc,EAAE;YACd,CAAC,QAAQ,CAAC,EAAE;gBACV,OAAO,EAAE,4CAA4C;aACtD;SACF;QACD,MAAM,EAAE;YACN,CAAC,QAAQ,CAAC,EAAE;gBACV,OAAO,EAAE,4CAA4C;gBACrD,YAAY,EAAE,OAAO;aACtB;SACF;KACF;IACD,OAAO,EAAE,IAAI;IACb,QAAQ;CACT,CAAC,CAAA"}
1
+ {"version":3,"file":"baseSepolia.js","sourceRoot":"","sources":["../../../chains/definitions/baseSepolia.ts"],"names":[],"mappings":";;;AAAA,qEAA8D;AAC9D,8DAAuD;AAEvD,MAAM,QAAQ,GAAG,QAAU,CAAA;AAEd,QAAA,WAAW,GAAiB,IAAA,4BAAW,EAAC;IACnD,GAAG,4BAAW;IACd,EAAE,EAAE,KAAK;IACT,OAAO,EAAE,cAAc;IACvB,IAAI,EAAE,cAAc;IACpB,cAAc,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;IACtE,OAAO,EAAE;QACP,OAAO,EAAE;YACP,IAAI,EAAE,CAAC,0BAA0B,CAAC;SACnC;KACF;IACD,cAAc,EAAE;QACd,OAAO,EAAE;YACP,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,qCAAqC;YAC1C,MAAM,EAAE,yCAAyC;SAClD;KACF;IACD,SAAS,EAAE;QACT,GAAG,4BAAW,CAAC,SAAS;QACxB,cAAc,EAAE;YACd,CAAC,QAAQ,CAAC,EAAE;gBACV,OAAO,EAAE,4CAA4C;aACtD;SACF;QACD,MAAM,EAAE;YACN,CAAC,QAAQ,CAAC,EAAE;gBACV,OAAO,EAAE,4CAA4C;gBACrD,YAAY,EAAE,OAAO;aACtB;SACF;QACD,UAAU,EAAE;YACV,OAAO,EAAE,4CAA4C;YACrD,YAAY,EAAE,OAAO;SACtB;KACF;IACD,OAAO,EAAE,IAAI;IACb,QAAQ;CACT,CAAC,CAAA"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.palm = void 0;
4
+ const defineChain_js_1 = require("../../utils/chain/defineChain.js");
5
+ exports.palm = (0, defineChain_js_1.defineChain)({
6
+ id: 11297108109,
7
+ name: 'Palm',
8
+ nativeCurrency: {
9
+ decimals: 18,
10
+ name: 'PALM',
11
+ symbol: 'PALM',
12
+ },
13
+ rpcUrls: {
14
+ default: {
15
+ http: ['https://palm-mainnet.public.blastapi.io'],
16
+ webSocket: ['wss://palm-mainnet.public.blastapi.io'],
17
+ },
18
+ },
19
+ blockExplorers: {
20
+ default: {
21
+ name: 'Chainlens',
22
+ url: 'https://palm.chainlens.com',
23
+ },
24
+ },
25
+ contracts: {
26
+ multicall3: {
27
+ address: '0xca11bde05977b3631167028862be2a173976ca11',
28
+ blockCreated: 15429248,
29
+ },
30
+ },
31
+ });
32
+ //# sourceMappingURL=palm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"palm.js","sourceRoot":"","sources":["../../../chains/definitions/palm.ts"],"names":[],"mappings":";;;AAAA,qEAA8D;AAEjD,QAAA,IAAI,GAAiB,IAAA,4BAAW,EAAC;IAC5C,EAAE,EAAE,WAAc;IAClB,IAAI,EAAE,MAAM;IACZ,cAAc,EAAE;QACd,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,MAAM;KACf;IACD,OAAO,EAAE;QACP,OAAO,EAAE;YACP,IAAI,EAAE,CAAC,yCAAyC,CAAC;YACjD,SAAS,EAAE,CAAC,uCAAuC,CAAC;SACrD;KACF;IACD,cAAc,EAAE;QACd,OAAO,EAAE;YACP,IAAI,EAAE,WAAW;YACjB,GAAG,EAAE,4BAA4B;SAClC;KACF;IACD,SAAS,EAAE;QACT,UAAU,EAAE;YACV,OAAO,EAAE,4CAA4C;YACrD,YAAY,EAAE,QAAQ;SACvB;KACF;CACF,CAAC,CAAA"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.palmTestnet = void 0;
4
+ const defineChain_js_1 = require("../../utils/chain/defineChain.js");
5
+ exports.palmTestnet = (0, defineChain_js_1.defineChain)({
6
+ id: 11297108099,
7
+ name: 'Palm Testnet',
8
+ nativeCurrency: {
9
+ decimals: 18,
10
+ name: 'PALM',
11
+ symbol: 'PALM',
12
+ },
13
+ rpcUrls: {
14
+ default: {
15
+ http: ['https://palm-mainnet.public.blastapi.io'],
16
+ webSocket: ['wss://palm-mainnet.public.blastapi.io'],
17
+ },
18
+ },
19
+ blockExplorers: {
20
+ default: {
21
+ name: 'Chainlens',
22
+ url: 'https://palm.chainlens.com',
23
+ },
24
+ },
25
+ contracts: {
26
+ multicall3: {
27
+ address: '0xca11bde05977b3631167028862be2a173976ca11',
28
+ blockCreated: 15429248,
29
+ },
30
+ },
31
+ testnet: true,
32
+ });
33
+ //# sourceMappingURL=palmTestnet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"palmTestnet.js","sourceRoot":"","sources":["../../../chains/definitions/palmTestnet.ts"],"names":[],"mappings":";;;AAAA,qEAA8D;AAEjD,QAAA,WAAW,GAAiB,IAAA,4BAAW,EAAC;IACnD,EAAE,EAAE,WAAc;IAClB,IAAI,EAAE,cAAc;IACpB,cAAc,EAAE;QACd,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,MAAM;KACf;IACD,OAAO,EAAE;QACP,OAAO,EAAE;YACP,IAAI,EAAE,CAAC,yCAAyC,CAAC;YACjD,SAAS,EAAE,CAAC,uCAAuC,CAAC;SACrD;KACF;IACD,cAAc,EAAE;QACd,OAAO,EAAE;YACP,IAAI,EAAE,WAAW;YACjB,GAAG,EAAE,4BAA4B;SAClC;KACF;IACD,SAAS,EAAE;QACT,UAAU,EAAE;YACV,OAAO,EAAE,4CAA4C;YACrD,YAAY,EAAE,QAAQ;SACvB;KACF;IACD,OAAO,EAAE,IAAI;CACd,CAAC,CAAA"}
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.fantom = exports.ektaTestnet = exports.ekta = exports.evmosTestnet = exports.evmos = exports.eosTestnet = exports.eos = exports.edgewareTestnet = exports.edgeware = exports.dogechain = exports.dfk = exports.defichainEvmTestnet = exports.defichainEvm = exports.crossbell = exports.cronosTestnet = exports.cronos = exports.coreDao = exports.confluxESpaceTestnet = exports.confluxESpace = exports.classic = exports.chiliz = exports.celoAlfajores = exports.celo = exports.canto = exports.bxnTestnet = exports.bxn = exports.bscTestnet = exports.bsc = exports.bronosTestnet = exports.bronos = exports.boba = exports.bitTorrentTestnet = exports.bitTorrent = exports.bearNetworkChainTestnet = exports.bearNetworkChainMainnet = exports.baseSepolia = exports.baseGoerli = exports.base = exports.bahamut = exports.avalancheFuji = exports.avalanche = exports.auroraTestnet = exports.aurora = exports.astarZkatana = exports.arbitrumSepolia = exports.astar = exports.arbitrumNova = exports.arbitrumGoerli = exports.arbitrum = exports.acala = void 0;
4
4
  exports.moonbeam = exports.moonbaseAlpha = exports.modeTestnet = exports.mevTestnet = exports.mev = exports.metisGoerli = exports.metis = exports.meterTestnet = exports.meter = exports.metachain = exports.mantleTestnet = exports.mantle = exports.mantaTestnet = exports.manta = exports.mandala = exports.mainnet = exports.lukso = exports.localhost = exports.lineaTestnet = exports.linea = exports.kromaSepolia = exports.kroma = exports.klaytnBaobab = exports.klaytn = exports.kavaTestnet = exports.kava = exports.holesky = exports.haqqTestedge2 = exports.haqqMainnet = exports.harmonyOne = exports.hardhat = exports.gnosisChiado = exports.gnosis = exports.goerli = exports.gobi = exports.karura = exports.jbc = exports.iotexTestnet = exports.iotex = exports.fuseSparknet = exports.fuse = exports.foundry = exports.flareTestnet = exports.flare = exports.filecoinHyperspace = exports.filecoinCalibration = exports.filecoin = exports.fibo = exports.fantomTestnet = exports.fantomSonicTestnet = void 0;
5
- exports.skaleNebulaTestnet = exports.skaleNebula = exports.skaleHumanProtocol = exports.skaleExorde = exports.skaleEuropaTestnet = exports.skaleEuropa = exports.skaleCryptoColosseum = exports.skaleCryptoBlades = exports.skaleChaosTestnet = exports.skaleCalypsoTestnet = exports.skaleCalypso = exports.skaleBlockBrawlers = exports.shimmerTestnet = exports.shimmer = exports.sepolia = exports.scrollTestnet = exports.scrollSepolia = exports.scroll = exports.sapphireTestnet = exports.sapphire = exports.saigon = exports.rootstock = exports.ronin = exports.rolluxTestnet = exports.rollux = exports.qTestnet = exports.qMainnet = exports.pulsechainV4 = exports.pulsechain = exports.polygonZkEvm = exports.polygonZkEvmTestnet = exports.polygonMumbai = exports.polygon = exports.plinga = exports.pgnTestnet = exports.pgn = exports.opBNBTestnet = exports.opBNB = exports.optimismSepolia = exports.optimismGoerli = exports.optimism = exports.okc = exports.oasisTestnet = exports.oasys = exports.nexilix = exports.nexi = exports.neonMainnet = exports.neonDevnet = exports.moonriver = exports.moonbeamDev = void 0;
6
- exports.zoraTestnet = exports.zoraSepolia = exports.zora = exports.zilliqaTestnet = exports.zilliqa = exports.zetachainAthensTestnet = exports.zkSyncSepoliaTestnet = exports.zkSyncTestnet = exports.zkSync = exports.zkFairTestnet = exports.zkFair = exports.zhejiang = exports.xdcTestnet = exports.xdc = exports.wemixTestnet = exports.wemix = exports.wanchainTestnet = exports.wanchain = exports.vechain = exports.thunderTestnet = exports.tenet = exports.telosTestnet = exports.telos = exports.taraxaTestnet = exports.taikoTestnetSepolia = exports.taikoKatla = exports.taikoJolnir = exports.taraxa = exports.syscoinTestnet = exports.syscoin = exports.shibarium = exports.shardeumSphinx = exports.spicy = exports.songbirdTestnet = exports.songbird = exports.skaleTitanTestnet = exports.skaleTitan = exports.skaleRazor = void 0;
5
+ exports.skaleHumanProtocol = exports.skaleExorde = exports.skaleEuropaTestnet = exports.skaleEuropa = exports.skaleCryptoColosseum = exports.skaleCryptoBlades = exports.skaleChaosTestnet = exports.skaleCalypsoTestnet = exports.skaleCalypso = exports.skaleBlockBrawlers = exports.shimmerTestnet = exports.shimmer = exports.sepolia = exports.scrollTestnet = exports.scrollSepolia = exports.scroll = exports.sapphireTestnet = exports.sapphire = exports.saigon = exports.rootstock = exports.ronin = exports.rolluxTestnet = exports.rollux = exports.qTestnet = exports.qMainnet = exports.pulsechainV4 = exports.pulsechain = exports.polygonZkEvm = exports.polygonZkEvmTestnet = exports.polygonMumbai = exports.polygon = exports.plinga = exports.pgnTestnet = exports.pgn = exports.palmTestnet = exports.palm = exports.opBNBTestnet = exports.opBNB = exports.optimismSepolia = exports.optimismGoerli = exports.optimism = exports.okc = exports.oasisTestnet = exports.oasys = exports.nexilix = exports.nexi = exports.neonMainnet = exports.neonDevnet = exports.moonriver = exports.moonbeamDev = void 0;
6
+ exports.zoraTestnet = exports.zoraSepolia = exports.zora = exports.zilliqaTestnet = exports.zilliqa = exports.zetachainAthensTestnet = exports.zkSyncSepoliaTestnet = exports.zkSyncTestnet = exports.zkSync = exports.zkFairTestnet = exports.zkFair = exports.zhejiang = exports.xdcTestnet = exports.xdc = exports.wemixTestnet = exports.wemix = exports.wanchainTestnet = exports.wanchain = exports.vechain = exports.thunderTestnet = exports.tenet = exports.telosTestnet = exports.telos = exports.taraxaTestnet = exports.taikoTestnetSepolia = exports.taikoKatla = exports.taikoJolnir = exports.taraxa = exports.syscoinTestnet = exports.syscoin = exports.shibarium = exports.shardeumSphinx = exports.spicy = exports.songbirdTestnet = exports.songbird = exports.skaleTitanTestnet = exports.skaleTitan = exports.skaleRazor = exports.skaleNebulaTestnet = exports.skaleNebula = void 0;
7
7
  var acala_js_1 = require("./definitions/acala.js");
8
8
  Object.defineProperty(exports, "acala", { enumerable: true, get: function () { return acala_js_1.acala; } });
9
9
  var arbitrum_js_1 = require("./definitions/arbitrum.js");
@@ -232,6 +232,10 @@ var opBNB_js_1 = require("./definitions/opBNB.js");
232
232
  Object.defineProperty(exports, "opBNB", { enumerable: true, get: function () { return opBNB_js_1.opBNB; } });
233
233
  var opBNBTestnet_js_1 = require("./definitions/opBNBTestnet.js");
234
234
  Object.defineProperty(exports, "opBNBTestnet", { enumerable: true, get: function () { return opBNBTestnet_js_1.opBNBTestnet; } });
235
+ var palm_js_1 = require("./definitions/palm.js");
236
+ Object.defineProperty(exports, "palm", { enumerable: true, get: function () { return palm_js_1.palm; } });
237
+ var palmTestnet_js_1 = require("./definitions/palmTestnet.js");
238
+ Object.defineProperty(exports, "palmTestnet", { enumerable: true, get: function () { return palmTestnet_js_1.palmTestnet; } });
235
239
  var pgn_js_1 = require("./definitions/pgn.js");
236
240
  Object.defineProperty(exports, "pgn", { enumerable: true, get: function () { return pgn_js_1.pgn; } });
237
241
  var pgnTestnet_js_1 = require("./definitions/pgnTestnet.js");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../chains/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../chains/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PositionOutOfBoundsError = exports.NegativeOffsetError = void 0;
3
+ exports.RecursiveReadLimitExceededError = exports.PositionOutOfBoundsError = exports.NegativeOffsetError = void 0;
4
4
  const base_js_1 = require("./base.js");
5
5
  class NegativeOffsetError extends base_js_1.BaseError {
6
6
  constructor({ offset }) {
@@ -26,4 +26,16 @@ class PositionOutOfBoundsError extends base_js_1.BaseError {
26
26
  }
27
27
  }
28
28
  exports.PositionOutOfBoundsError = PositionOutOfBoundsError;
29
+ class RecursiveReadLimitExceededError extends base_js_1.BaseError {
30
+ constructor({ count, limit }) {
31
+ super(`Recursive read limit of \`${limit}\` exceeded (recursive read count: \`${count}\`).`);
32
+ Object.defineProperty(this, "name", {
33
+ enumerable: true,
34
+ configurable: true,
35
+ writable: true,
36
+ value: 'RecursiveReadLimitExceededError'
37
+ });
38
+ }
39
+ }
40
+ exports.RecursiveReadLimitExceededError = RecursiveReadLimitExceededError;
29
41
  //# sourceMappingURL=cursor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../errors/cursor.ts"],"names":[],"mappings":";;;AAAA,uCAAqC;AAKrC,MAAa,mBAAoB,SAAQ,mBAAS;IAEhD,YAAY,EAAE,MAAM,EAAsB;QACxC,KAAK,CAAC,YAAY,MAAM,wBAAwB,CAAC,CAAA;QAF1C;;;;mBAAO,qBAAqB;WAAA;IAGrC,CAAC;CACF;AALD,kDAKC;AAKD,MAAa,wBAAyB,SAAQ,mBAAS;IAErD,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAwC;QACpE,KAAK,CACH,cAAc,QAAQ,yCAAyC,MAAM,MAAM,CAC5E,CAAA;QAJM;;;;mBAAO,0BAA0B;WAAA;IAK1C,CAAC;CACF;AAPD,4DAOC"}
1
+ {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../errors/cursor.ts"],"names":[],"mappings":";;;AAAA,uCAAqC;AAKrC,MAAa,mBAAoB,SAAQ,mBAAS;IAEhD,YAAY,EAAE,MAAM,EAAsB;QACxC,KAAK,CAAC,YAAY,MAAM,wBAAwB,CAAC,CAAA;QAF1C;;;;mBAAO,qBAAqB;WAAA;IAGrC,CAAC;CACF;AALD,kDAKC;AAKD,MAAa,wBAAyB,SAAQ,mBAAS;IAErD,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAwC;QACpE,KAAK,CACH,cAAc,QAAQ,yCAAyC,MAAM,MAAM,CAC5E,CAAA;QAJM;;;;mBAAO,0BAA0B;WAAA;IAK1C,CAAC;CACF;AAPD,4DAOC;AAMD,MAAa,+BAAgC,SAAQ,mBAAS;IAE5D,YAAY,EAAE,KAAK,EAAE,KAAK,EAAoC;QAC5D,KAAK,CACH,6BAA6B,KAAK,wCAAwC,KAAK,MAAM,CACtF,CAAA;QAJM;;;;mBAAO,iCAAiC;WAAA;IAKjD,CAAC;CACF;AAPD,0EAOC"}
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.version = void 0;
4
- exports.version = '2.0.10';
4
+ exports.version = '2.1.0';
5
5
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../errors/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG,QAAQ,CAAA"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../errors/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG,OAAO,CAAA"}
@@ -3,195 +3,186 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.decodeAbiParameters = void 0;
4
4
  const abi_js_1 = require("../../errors/abi.js");
5
5
  const getAddress_js_1 = require("../address/getAddress.js");
6
+ const cursor_js_1 = require("../cursor.js");
6
7
  const size_js_1 = require("../data/size.js");
7
8
  const slice_js_1 = require("../data/slice.js");
8
9
  const trim_js_1 = require("../data/trim.js");
9
- const fromHex_js_1 = require("../encoding/fromHex.js");
10
+ const fromBytes_js_1 = require("../encoding/fromBytes.js");
11
+ const toBytes_js_1 = require("../encoding/toBytes.js");
12
+ const toHex_js_1 = require("../encoding/toHex.js");
10
13
  const encodeAbiParameters_js_1 = require("./encodeAbiParameters.js");
11
14
  function decodeAbiParameters(params, data) {
12
- if (data === '0x' && params.length > 0)
15
+ const bytes = typeof data === 'string' ? (0, toBytes_js_1.hexToBytes)(data) : data;
16
+ const cursor = (0, cursor_js_1.createCursor)(bytes);
17
+ if ((0, size_js_1.size)(bytes) === 0 && params.length > 0)
13
18
  throw new abi_js_1.AbiDecodingZeroDataError();
14
19
  if ((0, size_js_1.size)(data) && (0, size_js_1.size)(data) < 32)
15
20
  throw new abi_js_1.AbiDecodingDataSizeTooSmallError({
16
- data,
21
+ data: typeof data === 'string' ? data : (0, toHex_js_1.bytesToHex)(data),
17
22
  params: params,
18
23
  size: (0, size_js_1.size)(data),
19
24
  });
20
- return decodeParams({
21
- data,
22
- params: params,
23
- });
24
- }
25
- exports.decodeAbiParameters = decodeAbiParameters;
26
- function decodeParams({ data, params, }) {
27
- const decodedValues = [];
28
- let position = 0;
29
- for (let i = 0; i < params.length; i++) {
30
- if (position >= (0, size_js_1.size)(data))
31
- throw new abi_js_1.AbiDecodingDataSizeTooSmallError({
32
- data,
33
- params,
34
- size: (0, size_js_1.size)(data),
35
- });
25
+ let consumed = 0;
26
+ const values = [];
27
+ for (let i = 0; i < params.length; ++i) {
36
28
  const param = params[i];
37
- const { consumed, value } = decodeParam({ data, param, position });
38
- decodedValues.push(value);
39
- position += consumed;
29
+ cursor.setPosition(consumed);
30
+ const [data, consumed_] = decodeParameter(cursor, param, {
31
+ staticPosition: 0,
32
+ });
33
+ consumed += consumed_;
34
+ values.push(data);
40
35
  }
41
- return decodedValues;
36
+ return values;
42
37
  }
43
- function decodeParam({ data, param, position, }) {
38
+ exports.decodeAbiParameters = decodeAbiParameters;
39
+ function decodeParameter(cursor, param, { staticPosition }) {
44
40
  const arrayComponents = (0, encodeAbiParameters_js_1.getArrayComponents)(param.type);
45
41
  if (arrayComponents) {
46
42
  const [length, type] = arrayComponents;
47
- return decodeArray(data, {
48
- length,
49
- param: { ...param, type: type },
50
- position,
51
- });
52
- }
53
- if (param.type === 'tuple') {
54
- return decodeTuple(data, { param: param, position });
55
- }
56
- if (param.type === 'string') {
57
- return decodeString(data, { position });
58
- }
59
- if (param.type.startsWith('bytes')) {
60
- return decodeBytes(data, { param, position });
61
- }
62
- const value = (0, slice_js_1.slice)(data, position, position + 32, { strict: true });
63
- if (param.type.startsWith('uint') || param.type.startsWith('int')) {
64
- return decodeNumber(value, { param });
65
- }
66
- if (param.type === 'address') {
67
- return decodeAddress(value);
68
- }
69
- if (param.type === 'bool') {
70
- return decodeBool(value);
43
+ return decodeArray(cursor, { ...param, type }, { length, staticPosition });
71
44
  }
45
+ if (param.type === 'tuple')
46
+ return decodeTuple(cursor, param, { staticPosition });
47
+ if (param.type === 'address')
48
+ return decodeAddress(cursor);
49
+ if (param.type === 'bool')
50
+ return decodeBool(cursor);
51
+ if (param.type.startsWith('bytes'))
52
+ return decodeBytes(cursor, param, { staticPosition });
53
+ if (param.type.startsWith('uint') || param.type.startsWith('int'))
54
+ return decodeNumber(cursor, param);
55
+ if (param.type === 'string')
56
+ return decodeString(cursor, { staticPosition });
72
57
  throw new abi_js_1.InvalidAbiDecodingTypeError(param.type, {
73
58
  docsPath: '/docs/contract/decodeAbiParameters',
74
59
  });
75
60
  }
76
- function decodeAddress(value) {
77
- return { consumed: 32, value: (0, getAddress_js_1.checksumAddress)((0, slice_js_1.slice)(value, -20)) };
61
+ const sizeOfLength = 32;
62
+ const sizeOfOffset = 32;
63
+ function decodeAddress(cursor) {
64
+ const value = cursor.readBytes(32);
65
+ return [(0, getAddress_js_1.checksumAddress)((0, toHex_js_1.bytesToHex)((0, slice_js_1.sliceBytes)(value, -20))), 32];
78
66
  }
79
- function decodeArray(data, { param, length, position, }) {
67
+ function decodeArray(cursor, param, { length, staticPosition }) {
80
68
  if (!length) {
81
- const offset = (0, fromHex_js_1.hexToNumber)((0, slice_js_1.slice)(data, position, position + 32, { strict: true }));
82
- if (offset < position)
83
- throw new abi_js_1.AbiDecodingOffsetOutOfBoundsError({ offset, position });
84
- const length = (0, fromHex_js_1.hexToNumber)((0, slice_js_1.slice)(data, offset, offset + 32, { strict: true }));
69
+ const offset = (0, fromBytes_js_1.bytesToNumber)(cursor.readBytes(sizeOfOffset));
70
+ const start = staticPosition + offset;
71
+ const startOfData = start + sizeOfLength;
72
+ cursor.setPosition(start);
73
+ const length = (0, fromBytes_js_1.bytesToNumber)(cursor.readBytes(sizeOfLength));
74
+ const dynamicChild = hasDynamicChild(param);
85
75
  let consumed = 0;
86
76
  const value = [];
87
77
  for (let i = 0; i < length; ++i) {
88
- const decodedChild = decodeParam({
89
- data: (0, slice_js_1.slice)(data, offset + 32),
90
- param,
91
- position: consumed,
78
+ cursor.setPosition(startOfData + (dynamicChild ? i * 32 : consumed));
79
+ const [data, consumed_] = decodeParameter(cursor, param, {
80
+ staticPosition: startOfData,
92
81
  });
93
- consumed += decodedChild.consumed;
94
- value.push(decodedChild.value);
82
+ consumed += consumed_;
83
+ value.push(data);
95
84
  }
96
- return { value, consumed: 32 };
85
+ cursor.setPosition(staticPosition + 32);
86
+ return [value, 32];
97
87
  }
98
88
  if (hasDynamicChild(param)) {
99
- const arrayComponents = (0, encodeAbiParameters_js_1.getArrayComponents)(param.type);
100
- const dynamicChild = !arrayComponents?.[0];
101
- let consumed = 0;
89
+ const offset = (0, fromBytes_js_1.bytesToNumber)(cursor.readBytes(sizeOfOffset));
90
+ const start = staticPosition + offset;
102
91
  const value = [];
103
92
  for (let i = 0; i < length; ++i) {
104
- const offset = (0, fromHex_js_1.hexToNumber)((0, slice_js_1.slice)(data, position, position + 32, { strict: true }));
105
- const decodedChild = decodeParam({
106
- data: (0, slice_js_1.slice)(data, offset),
107
- param,
108
- position: dynamicChild ? consumed : i * 32,
93
+ cursor.setPosition(start + i * 32);
94
+ const [data] = decodeParameter(cursor, param, {
95
+ staticPosition: start,
109
96
  });
110
- consumed += decodedChild.consumed;
111
- value.push(decodedChild.value);
97
+ value.push(data);
112
98
  }
113
- return { value, consumed: 32 };
99
+ cursor.setPosition(staticPosition + 32);
100
+ return [value, 32];
114
101
  }
115
102
  let consumed = 0;
116
103
  const value = [];
117
104
  for (let i = 0; i < length; ++i) {
118
- const decodedChild = decodeParam({
119
- data,
120
- param,
121
- position: position + consumed,
105
+ const [data, consumed_] = decodeParameter(cursor, param, {
106
+ staticPosition: staticPosition + consumed,
122
107
  });
123
- consumed += decodedChild.consumed;
124
- value.push(decodedChild.value);
108
+ consumed += consumed_;
109
+ value.push(data);
125
110
  }
126
- return { value, consumed };
111
+ return [value, consumed];
127
112
  }
128
- function decodeBool(value) {
129
- return { consumed: 32, value: (0, fromHex_js_1.hexToBool)(value) };
113
+ function decodeBool(cursor) {
114
+ return [(0, fromBytes_js_1.bytesToBool)(cursor.readBytes(32), { size: 32 }), 32];
130
115
  }
131
- function decodeBytes(data, { param, position }) {
116
+ function decodeBytes(cursor, param, { staticPosition }) {
132
117
  const [_, size] = param.type.split('bytes');
133
118
  if (!size) {
134
- const offset = (0, fromHex_js_1.hexToNumber)((0, slice_js_1.slice)(data, position, position + 32, { strict: true }));
135
- const length = (0, fromHex_js_1.hexToNumber)((0, slice_js_1.slice)(data, offset, offset + 32, { strict: true }));
136
- if (length === 0)
137
- return { consumed: 32, value: '0x' };
138
- const value = (0, slice_js_1.slice)(data, offset + 32, offset + 32 + length, {
139
- strict: true,
140
- });
141
- return { consumed: 32, value };
119
+ const offset = (0, fromBytes_js_1.bytesToNumber)(cursor.readBytes(32));
120
+ cursor.setPosition(staticPosition + offset);
121
+ const length = (0, fromBytes_js_1.bytesToNumber)(cursor.readBytes(32));
122
+ if (length === 0) {
123
+ cursor.setPosition(staticPosition + 32);
124
+ return ['0x', 32];
125
+ }
126
+ const data = cursor.readBytes(length);
127
+ cursor.setPosition(staticPosition + 32);
128
+ return [(0, toHex_js_1.bytesToHex)(data), 32];
142
129
  }
143
- const value = (0, slice_js_1.slice)(data, position, position + parseInt(size), {
144
- strict: true,
145
- });
146
- return { consumed: 32, value };
130
+ const value = (0, toHex_js_1.bytesToHex)(cursor.readBytes(parseInt(size), 32));
131
+ return [value, 32];
147
132
  }
148
- function decodeNumber(value, { param }) {
133
+ function decodeNumber(cursor, param) {
149
134
  const signed = param.type.startsWith('int');
150
135
  const size = parseInt(param.type.split('int')[1] || '256');
151
- return {
152
- consumed: 32,
153
- value: size > 48
154
- ? (0, fromHex_js_1.hexToBigInt)(value, { signed })
155
- : (0, fromHex_js_1.hexToNumber)(value, { signed }),
156
- };
157
- }
158
- function decodeString(data, { position }) {
159
- const offset = (0, fromHex_js_1.hexToNumber)((0, slice_js_1.slice)(data, position, position + 32, { strict: true }));
160
- const length = (0, fromHex_js_1.hexToNumber)((0, slice_js_1.slice)(data, offset, offset + 32, { strict: true }));
161
- if (length === 0)
162
- return { consumed: 32, value: '' };
163
- const value = (0, fromHex_js_1.hexToString)((0, trim_js_1.trim)((0, slice_js_1.slice)(data, offset + 32, offset + 32 + length, { strict: true })));
164
- return { consumed: 32, value };
136
+ const value = cursor.readBytes(32);
137
+ return [
138
+ size > 48
139
+ ? (0, fromBytes_js_1.bytesToBigInt)(value, { signed })
140
+ : (0, fromBytes_js_1.bytesToNumber)(value, { signed }),
141
+ 32,
142
+ ];
165
143
  }
166
- function decodeTuple(data, { param, position }) {
144
+ function decodeTuple(cursor, param, { staticPosition }) {
167
145
  const hasUnnamedChild = param.components.length === 0 || param.components.some(({ name }) => !name);
168
146
  const value = hasUnnamedChild ? [] : {};
169
147
  let consumed = 0;
170
148
  if (hasDynamicChild(param)) {
171
- const offset = (0, fromHex_js_1.hexToNumber)((0, slice_js_1.slice)(data, position, position + 32, { strict: true }));
149
+ const offset = (0, fromBytes_js_1.bytesToNumber)(cursor.readBytes(sizeOfOffset));
150
+ const start = staticPosition + offset;
172
151
  for (let i = 0; i < param.components.length; ++i) {
173
152
  const component = param.components[i];
174
- const decodedChild = decodeParam({
175
- data: (0, slice_js_1.slice)(data, offset),
176
- param: component,
177
- position: consumed,
153
+ cursor.setPosition(start + consumed);
154
+ const [data, consumed_] = decodeParameter(cursor, component, {
155
+ staticPosition: start,
178
156
  });
179
- consumed += decodedChild.consumed;
180
- value[hasUnnamedChild ? i : component?.name] = decodedChild.value;
157
+ consumed += consumed_;
158
+ value[hasUnnamedChild ? i : component?.name] = data;
181
159
  }
182
- return { consumed: 32, value };
160
+ cursor.setPosition(staticPosition + 32);
161
+ return [value, 32];
183
162
  }
184
163
  for (let i = 0; i < param.components.length; ++i) {
185
164
  const component = param.components[i];
186
- const decodedChild = decodeParam({
187
- data,
188
- param: component,
189
- position: position + consumed,
165
+ const [data, consumed_] = decodeParameter(cursor, component, {
166
+ staticPosition,
190
167
  });
191
- consumed += decodedChild.consumed;
192
- value[hasUnnamedChild ? i : component?.name] = decodedChild.value;
168
+ value[hasUnnamedChild ? i : component?.name] = data;
169
+ consumed += consumed_;
170
+ }
171
+ return [value, consumed];
172
+ }
173
+ function decodeString(cursor, { staticPosition }) {
174
+ const offset = (0, fromBytes_js_1.bytesToNumber)(cursor.readBytes(32));
175
+ const start = staticPosition + offset;
176
+ cursor.setPosition(start);
177
+ const length = (0, fromBytes_js_1.bytesToNumber)(cursor.readBytes(32));
178
+ if (length === 0) {
179
+ cursor.setPosition(staticPosition + 32);
180
+ return ['', 32];
193
181
  }
194
- return { consumed, value };
182
+ const data = cursor.readBytes(length, 32);
183
+ const value = (0, fromBytes_js_1.bytesToString)((0, trim_js_1.trim)(data));
184
+ cursor.setPosition(staticPosition + 32);
185
+ return [value, 32];
195
186
  }
196
187
  function hasDynamicChild(param) {
197
188
  const { type } = param;
@@ -1 +1 @@
1
- {"version":3,"file":"decodeAbiParameters.js","sourceRoot":"","sources":["../../../utils/abi/decodeAbiParameters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decodeAbiParameters.js","sourceRoot":"","sources":["../../../utils/abi/decodeAbiParameters.ts"],"names":[],"mappings":"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"}