viem 0.2.0-0-2-0.20230329T025357 → 0.2.0-0-2-0.20230330T023229

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 (69) hide show
  1. package/dist/abi.d.ts +3 -3
  2. package/dist/abi.js +2 -2
  3. package/dist/abi.mjs +1 -1
  4. package/dist/accounts/index.d.ts +5 -14
  5. package/dist/accounts/index.js +20 -30
  6. package/dist/accounts/index.js.map +1 -1
  7. package/dist/accounts/index.mjs +14 -24
  8. package/dist/accounts/index.mjs.map +1 -1
  9. package/dist/{chain-5b28fc53.d.ts → chain-9da1e6b6.d.ts} +132 -120
  10. package/dist/{chain-e9b996ff.d.ts → chain-b53ed5d9.d.ts} +1 -1
  11. package/dist/chains.d.ts +867 -99
  12. package/dist/chains.js +115 -63
  13. package/dist/chains.js.map +1 -1
  14. package/dist/chains.mjs +58 -6
  15. package/dist/chains.mjs.map +1 -1
  16. package/dist/{chunk-564BCC7H.js → chunk-2ESQNALV.js} +18 -16
  17. package/dist/chunk-2ESQNALV.js.map +1 -0
  18. package/dist/{chunk-CXE4XSMF.js → chunk-ASAFFZMD.js} +19 -19
  19. package/dist/{chunk-UCZWRYV5.mjs → chunk-B7WOV4RY.mjs} +18 -16
  20. package/dist/chunk-B7WOV4RY.mjs.map +1 -0
  21. package/dist/{chunk-D3ALNUWN.js → chunk-GNHXOZCH.js} +6 -6
  22. package/dist/{chunk-BJ5KRDTG.mjs → chunk-RFOQRRYW.mjs} +2 -2
  23. package/dist/{chunk-7QEOFHC7.mjs → chunk-S4GWZ3LJ.mjs} +2 -2
  24. package/dist/contract.d.ts +8 -8
  25. package/dist/contract.js +2 -2
  26. package/dist/contract.mjs +1 -1
  27. package/dist/{createClient-e52de308.d.ts → createTransport-e031366b.d.ts} +36 -34
  28. package/dist/{eip1193-9080db42.d.ts → eip1193-e79469af.d.ts} +1 -1
  29. package/dist/{encodeFunctionResult-47ad60ed.d.ts → encodeFunctionResult-d206ceb9.d.ts} +15 -15
  30. package/dist/{encodePacked-35c796fb.d.ts → encodePacked-b36ce88a.d.ts} +1 -1
  31. package/dist/ens.d.ts +5 -5
  32. package/dist/ens.js +3 -3
  33. package/dist/ens.mjs +2 -2
  34. package/dist/ethers.d.ts +2 -2
  35. package/dist/ethers.js +4 -4
  36. package/dist/ethers.mjs +2 -2
  37. package/dist/{formatAbiItem-d9e801dd.d.ts → formatAbiItem-a7a3fb0f.d.ts} +1 -1
  38. package/dist/{getAbiItem-1d94ae0e.d.ts → getAbiItem-5e8b01de.d.ts} +3 -3
  39. package/dist/index.d.ts +49 -15
  40. package/dist/index.js +214 -138
  41. package/dist/index.js.map +1 -1
  42. package/dist/index.mjs +123 -47
  43. package/dist/index.mjs.map +1 -1
  44. package/dist/{parseGwei-f14525ab.d.ts → parseGwei-7678c2fa.d.ts} +5 -5
  45. package/dist/public.d.ts +5 -5
  46. package/dist/public.js +2 -2
  47. package/dist/public.mjs +1 -1
  48. package/dist/publicKeyToAddress-87b9856c.d.ts +16 -0
  49. package/dist/{test-f3d06763.d.ts → test-68dbda5b.d.ts} +3 -3
  50. package/dist/test.d.ts +5 -5
  51. package/dist/test.js +2 -2
  52. package/dist/test.mjs +1 -1
  53. package/dist/{typedData-42b43450.d.ts → typedData-8b24374d.d.ts} +1 -1
  54. package/dist/utils/index.d.ts +15 -15
  55. package/dist/utils/index.js +4 -2
  56. package/dist/utils/index.mjs +3 -1
  57. package/dist/wallet.d.ts +5 -5
  58. package/dist/wallet.js +2 -2
  59. package/dist/wallet.mjs +1 -1
  60. package/dist/{watchPendingTransactions-468f53f2.d.ts → watchPendingTransactions-53449c4e.d.ts} +34 -31
  61. package/dist/window.d.ts +2 -2
  62. package/package.json +3 -3
  63. package/dist/chunk-564BCC7H.js.map +0 -1
  64. package/dist/chunk-UCZWRYV5.mjs.map +0 -1
  65. package/dist/parseAccount-4209fa24.d.ts +0 -6
  66. /package/dist/{chunk-CXE4XSMF.js.map → chunk-ASAFFZMD.js.map} +0 -0
  67. /package/dist/{chunk-D3ALNUWN.js.map → chunk-GNHXOZCH.js.map} +0 -0
  68. /package/dist/{chunk-BJ5KRDTG.mjs.map → chunk-RFOQRRYW.mjs.map} +0 -0
  69. /package/dist/{chunk-7QEOFHC7.mjs.map → chunk-S4GWZ3LJ.mjs.map} +0 -0
@@ -11,27 +11,27 @@
11
11
 
12
12
 
13
13
 
14
- var _chunk564BCC7Hjs = require('./chunk-564BCC7H.js');
14
+ var _chunk2ESQNALVjs = require('./chunk-2ESQNALV.js');
15
15
 
16
16
  // src/utils/ens/labelhash.ts
17
17
  function labelhash(label) {
18
18
  let result = new Uint8Array(32).fill(0);
19
19
  if (!label)
20
- return _chunk564BCC7Hjs.bytesToHex.call(void 0, result);
21
- return _chunk564BCC7Hjs.keccak256.call(void 0, _chunk564BCC7Hjs.stringToBytes.call(void 0, label));
20
+ return _chunk2ESQNALVjs.bytesToHex.call(void 0, result);
21
+ return _chunk2ESQNALVjs.keccak256.call(void 0, _chunk2ESQNALVjs.stringToBytes.call(void 0, label));
22
22
  }
23
23
 
24
24
  // src/utils/ens/namehash.ts
25
25
  function namehash(name) {
26
26
  let result = new Uint8Array(32).fill(0);
27
27
  if (!name)
28
- return _chunk564BCC7Hjs.bytesToHex.call(void 0, result);
28
+ return _chunk2ESQNALVjs.bytesToHex.call(void 0, result);
29
29
  const labels = name.split(".");
30
30
  for (let i = labels.length - 1; i >= 0; i -= 1) {
31
- const hashed = _chunk564BCC7Hjs.keccak256.call(void 0, _chunk564BCC7Hjs.stringToBytes.call(void 0, labels[i]), "bytes");
32
- result = _chunk564BCC7Hjs.keccak256.call(void 0, _chunk564BCC7Hjs.concat.call(void 0, [result, hashed]), "bytes");
31
+ const hashed = _chunk2ESQNALVjs.keccak256.call(void 0, _chunk2ESQNALVjs.stringToBytes.call(void 0, labels[i]), "bytes");
32
+ result = _chunk2ESQNALVjs.keccak256.call(void 0, _chunk2ESQNALVjs.concat.call(void 0, [result, hashed]), "bytes");
33
33
  }
34
- return _chunk564BCC7Hjs.bytesToHex.call(void 0, result);
34
+ return _chunk2ESQNALVjs.bytesToHex.call(void 0, result);
35
35
  }
36
36
 
37
37
  // src/utils/ens/packetToBytes.ts
@@ -39,7 +39,7 @@ function packetToBytes(packet) {
39
39
  function length(value2) {
40
40
  if (value2 === "." || value2 === "..")
41
41
  return 1;
42
- return _chunk564BCC7Hjs.toBytes.call(void 0, value2.replace(/^\.|\.$/gm, "")).length + 2;
42
+ return _chunk2ESQNALVjs.toBytes.call(void 0, value2.replace(/^\.|\.$/gm, "")).length + 2;
43
43
  }
44
44
  const bytes = new Uint8Array(length(packet));
45
45
  const value = packet.replace(/^\.|\.$/gm, "");
@@ -48,7 +48,7 @@ function packetToBytes(packet) {
48
48
  let offset = 0;
49
49
  const list = value.split(".");
50
50
  for (let i = 0; i < list.length; i++) {
51
- const encoded = _chunk564BCC7Hjs.toBytes.call(void 0, list[i]);
51
+ const encoded = _chunk2ESQNALVjs.toBytes.call(void 0, list[i]);
52
52
  bytes[offset] = encoded.length;
53
53
  bytes.set(encoded, offset + 1);
54
54
  offset += encoded.length + 1;
@@ -69,13 +69,13 @@ async function getEnsAddress(client, {
69
69
  throw new Error(
70
70
  "client chain not configured. universalResolverAddress is required."
71
71
  );
72
- universalResolverAddress = _chunk564BCC7Hjs.getChainContractAddress.call(void 0, {
72
+ universalResolverAddress = _chunk2ESQNALVjs.getChainContractAddress.call(void 0, {
73
73
  blockNumber,
74
74
  chain: client.chain,
75
75
  contract: "ensUniversalResolver"
76
76
  });
77
77
  }
78
- const res = await _chunk564BCC7Hjs.readContract.call(void 0, client, {
78
+ const res = await _chunk2ESQNALVjs.readContract.call(void 0, client, {
79
79
  address: universalResolverAddress,
80
80
  abi: [
81
81
  {
@@ -94,8 +94,8 @@ async function getEnsAddress(client, {
94
94
  ],
95
95
  functionName: "resolve",
96
96
  args: [
97
- _chunk564BCC7Hjs.toHex.call(void 0, packetToBytes(name)),
98
- _chunk564BCC7Hjs.encodeFunctionData.call(void 0, {
97
+ _chunk2ESQNALVjs.toHex.call(void 0, packetToBytes(name)),
98
+ _chunk2ESQNALVjs.encodeFunctionData.call(void 0, {
99
99
  abi: [
100
100
  {
101
101
  name: "addr",
@@ -112,7 +112,7 @@ async function getEnsAddress(client, {
112
112
  blockNumber,
113
113
  blockTag
114
114
  });
115
- return _chunk564BCC7Hjs.decodeFunctionResult.call(void 0, {
115
+ return _chunk2ESQNALVjs.decodeFunctionResult.call(void 0, {
116
116
  abi: [
117
117
  {
118
118
  name: "addr",
@@ -140,7 +140,7 @@ async function getEnsName(client, {
140
140
  throw new Error(
141
141
  "client chain not configured. universalResolverAddress is required."
142
142
  );
143
- universalResolverAddress = _chunk564BCC7Hjs.getChainContractAddress.call(void 0, {
143
+ universalResolverAddress = _chunk2ESQNALVjs.getChainContractAddress.call(void 0, {
144
144
  blockNumber,
145
145
  chain: client.chain,
146
146
  contract: "ensUniversalResolver"
@@ -148,7 +148,7 @@ async function getEnsName(client, {
148
148
  }
149
149
  const reverseNode = `${address.toLowerCase().substring(2)}.addr.reverse`;
150
150
  try {
151
- const res = await _chunk564BCC7Hjs.readContract.call(void 0, client, {
151
+ const res = await _chunk2ESQNALVjs.readContract.call(void 0, client, {
152
152
  address: universalResolverAddress,
153
153
  abi: [
154
154
  {
@@ -165,13 +165,13 @@ async function getEnsName(client, {
165
165
  }
166
166
  ],
167
167
  functionName: "reverse",
168
- args: [_chunk564BCC7Hjs.toHex.call(void 0, packetToBytes(reverseNode))],
168
+ args: [_chunk2ESQNALVjs.toHex.call(void 0, packetToBytes(reverseNode))],
169
169
  blockNumber,
170
170
  blockTag
171
171
  });
172
172
  return res[0];
173
173
  } catch (error) {
174
- if (error instanceof _chunk564BCC7Hjs.ContractFunctionExecutionError && error.cause.reason === _chunk564BCC7Hjs.panicReasons[50])
174
+ if (error instanceof _chunk2ESQNALVjs.ContractFunctionExecutionError && error.cause.reason === _chunk2ESQNALVjs.panicReasons[50])
175
175
  return null;
176
176
  throw error;
177
177
  }
@@ -183,4 +183,4 @@ async function getEnsName(client, {
183
183
 
184
184
 
185
185
  exports.labelhash = labelhash; exports.namehash = namehash; exports.getEnsAddress = getEnsAddress; exports.getEnsName = getEnsName;
186
- //# sourceMappingURL=chunk-CXE4XSMF.js.map
186
+ //# sourceMappingURL=chunk-ASAFFZMD.js.map
@@ -35,7 +35,7 @@ var package_default = {
35
35
  "dev:docs": "pnpm -r --filter site dev",
36
36
  format: "rome format src/ --write",
37
37
  lint: "rome check .",
38
- "lint:fix": "pnpm lint --apply-suggested",
38
+ "lint:fix": "pnpm lint --apply",
39
39
  playground: "pnpm --filter playground-browser dev",
40
40
  postinstall: "pnpm dev && pnpm contracts:build",
41
41
  preinstall: "npx only-allow pnpm",
@@ -148,10 +148,10 @@ var package_default = {
148
148
  sideEffects: false,
149
149
  dependencies: {
150
150
  "@noble/hashes": "^1.1.2",
151
- "@noble/secp256k1": "^1.7.1",
151
+ "@noble/curves": "^0.9.0",
152
152
  "@scure/bip32": "^1.2.0",
153
153
  "@scure/bip39": "^1.1.1",
154
- "@wagmi/chains": "~0.2.11",
154
+ "@wagmi/chains": "~0.2.15",
155
155
  abitype: "~0.7.1",
156
156
  "idna-uts46-hx": "^4.1.2",
157
157
  "isomorphic-ws": "^5.0.0",
@@ -179,7 +179,7 @@ var package_default = {
179
179
  execa: "^6.1.0",
180
180
  "fs-extra": "^10.1.0",
181
181
  rimraf: "^4.1.2",
182
- rome: "^11.0.0",
182
+ rome: "^12.0.0",
183
183
  "simple-git-hooks": "^2.8.1",
184
184
  "size-limit": "^8.2.4",
185
185
  tsup: "^6.6.0",
@@ -2956,6 +2956,12 @@ function parseAccount(account) {
2956
2956
  return account;
2957
2957
  }
2958
2958
 
2959
+ // src/accounts/utils/publicKeyToAddress.ts
2960
+ function publicKeyToAddress(publicKey) {
2961
+ const address = keccak256(`0x${publicKey.substring(4)}`).substring(26);
2962
+ return checksumAddress(`0x${address}`);
2963
+ }
2964
+
2959
2965
  // src/utils/promise/withCache.ts
2960
2966
  var promiseCache = /* @__PURE__ */ new Map();
2961
2967
  var responseCache = /* @__PURE__ */ new Map();
@@ -3837,16 +3843,11 @@ async function recoverAddress({
3837
3843
  const signatureHex = isHex(signature) ? signature : toHex(signature);
3838
3844
  const hashHex = isHex(hash2) ? hash2 : toHex(hash2);
3839
3845
  const v = hexToNumber(`0x${signatureHex.slice(130)}`);
3840
- const { recoverPublicKey } = await import("@noble/secp256k1");
3841
- const publicKey = toHex(
3842
- recoverPublicKey(
3843
- hashHex.substring(2),
3844
- signatureHex.substring(2, 130),
3845
- v - 27
3846
- )
3847
- );
3848
- const address = keccak256(`0x${publicKey.substring(4)}`).substring(26);
3849
- return checksumAddress(`0x${address}`);
3846
+ const { secp256k1 } = await import("@noble/curves/secp256k1");
3847
+ const publicKey = secp256k1.Signature.fromCompact(
3848
+ signatureHex.substring(2, 130)
3849
+ ).addRecoveryBit(v - 27).recoverPublicKey(hashHex.substring(2)).toHex(false);
3850
+ return publicKeyToAddress(`0x${publicKey}`);
3850
3851
  }
3851
3852
 
3852
3853
  // src/utils/signature/recoverMessageAddress.ts
@@ -6347,7 +6348,6 @@ export {
6347
6348
  getFunctionSelector,
6348
6349
  isHash,
6349
6350
  isAddress,
6350
- checksumAddress,
6351
6351
  getAddress,
6352
6352
  getContractAddress2 as getContractAddress,
6353
6353
  getCreateAddress,
@@ -6376,6 +6376,8 @@ export {
6376
6376
  parseAbiParameter,
6377
6377
  parseAbiParameters,
6378
6378
  parseAccount,
6379
+ publicKeyToAddress,
6380
+ wait,
6379
6381
  isDeterministicError,
6380
6382
  buildRequest,
6381
6383
  defineChain,
@@ -6498,4 +6500,4 @@ export {
6498
6500
  formatGwei,
6499
6501
  parseEther
6500
6502
  };
6501
- //# sourceMappingURL=chunk-UCZWRYV5.mjs.map
6503
+ //# sourceMappingURL=chunk-B7WOV4RY.mjs.map