viem 0.0.1-alpha.26 → 0.0.1-alpha.27

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/dist/chains.js CHANGED
@@ -4,32 +4,32 @@
4
4
 
5
5
 
6
6
 
7
- var _chunkDSQO3E4Fjs = require('./chunk-DSQO3E4F.js');
7
+ var _chunkW7KWIGWOjs = require('./chunk-W7KWIGWO.js');
8
8
 
9
9
  // src/chains.ts
10
10
  var _chains = require('@wagmi/chains'); var chains = _interopRequireWildcard(_chains);
11
11
  var celoFormatters = {
12
- block: _chunkDSQO3E4Fjs.defineBlock.call(void 0, {
12
+ block: _chunkW7KWIGWOjs.defineBlock.call(void 0, {
13
13
  exclude: ["difficulty", "gasLimit", "mixHash", "nonce", "uncles"],
14
14
  format: (block) => ({
15
15
  randomness: block.randomness
16
16
  })
17
17
  }),
18
- transaction: _chunkDSQO3E4Fjs.defineTransaction.call(void 0, {
18
+ transaction: _chunkW7KWIGWOjs.defineTransaction.call(void 0, {
19
19
  format: (transaction) => ({
20
20
  feeCurrency: transaction.feeCurrency,
21
21
  gatewayFee: transaction.gatewayFee ? BigInt(transaction.gatewayFee) : null,
22
22
  gatewayFeeRecipient: transaction.gatewayFeeRecipient
23
23
  })
24
24
  }),
25
- transactionReceipt: _chunkDSQO3E4Fjs.defineTransactionReceipt.call(void 0, {
25
+ transactionReceipt: _chunkW7KWIGWOjs.defineTransactionReceipt.call(void 0, {
26
26
  format: (transaction) => ({
27
27
  feeCurrency: transaction.feeCurrency,
28
28
  gatewayFee: transaction.gatewayFee ? BigInt(transaction.gatewayFee) : null,
29
29
  gatewayFeeRecipient: transaction.gatewayFeeRecipient
30
30
  })
31
31
  }),
32
- transactionRequest: _chunkDSQO3E4Fjs.defineTransactionRequest.call(void 0, {
32
+ transactionRequest: _chunkW7KWIGWOjs.defineTransactionRequest.call(void 0, {
33
33
  format: (transactionRequest) => ({
34
34
  feeCurrency: transactionRequest.feeCurrency,
35
35
  gatewayFee: transactionRequest.gatewayFee,
@@ -37,52 +37,52 @@ var celoFormatters = {
37
37
  })
38
38
  })
39
39
  };
40
- var arbitrum2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.arbitrum);
41
- var arbitrumGoerli2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.arbitrumGoerli);
42
- var aurora2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.aurora);
43
- var auroraGoerli = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.auroraTestnet);
44
- var avalanche2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.avalanche);
45
- var avalancheFuji2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.avalancheFuji);
46
- var bronos2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.bronos);
47
- var bronosTestnet2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.bronosTestnet);
48
- var bsc2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.bsc);
49
- var bscTestnet2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.bscTestnet);
50
- var canto2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.canto);
51
- var celo2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, {
40
+ var arbitrum2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.arbitrum);
41
+ var arbitrumGoerli2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.arbitrumGoerli);
42
+ var aurora2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.aurora);
43
+ var auroraGoerli = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.auroraTestnet);
44
+ var avalanche2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.avalanche);
45
+ var avalancheFuji2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.avalancheFuji);
46
+ var bronos2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.bronos);
47
+ var bronosTestnet2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.bronosTestnet);
48
+ var bsc2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.bsc);
49
+ var bscTestnet2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.bscTestnet);
50
+ var canto2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.canto);
51
+ var celo2 = _chunkW7KWIGWOjs.defineChain.call(void 0, {
52
52
  ...chains.celo,
53
53
  formatters: celoFormatters
54
54
  });
55
- var celoAlfajores2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, {
55
+ var celoAlfajores2 = _chunkW7KWIGWOjs.defineChain.call(void 0, {
56
56
  ...chains.celoAlfajores,
57
57
  formatters: celoFormatters
58
58
  });
59
- var crossbell2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.crossbell);
60
- var evmos2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.evmos);
61
- var evmosTestnet2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.evmosTestnet);
62
- var fantom2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.fantom);
63
- var fantomTestnet2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.fantomTestnet);
64
- var filecoin2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.filecoin);
65
- var filecoinTestnet = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.filecoinHyperspace);
66
- var foundry2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.foundry);
67
- var goerli2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.goerli);
68
- var gnosis2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.gnosis);
69
- var gnosisChiado2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.gnosisChiado);
70
- var hardhat2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.hardhat);
71
- var iotex2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.iotex);
72
- var iotexTestnet2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.iotexTestnet);
73
- var localhost2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.localhost);
74
- var mainnet2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.mainnet);
75
- var metis2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.metis);
76
- var metisGoerli2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.metisGoerli);
77
- var optimism2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.optimism);
78
- var optimismGoerli2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.optimismGoerli);
79
- var polygon2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.polygon);
80
- var polygonMumbai2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.polygonMumbai);
81
- var sepolia2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.sepolia);
82
- var taraxa2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.taraxa);
83
- var taraxaTestnet2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.taraxaTestnet);
84
- var zkSync2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.zkSync);
85
- var zkSyncTestnet2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.zkSyncTestnet);
59
+ var crossbell2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.crossbell);
60
+ var evmos2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.evmos);
61
+ var evmosTestnet2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.evmosTestnet);
62
+ var fantom2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.fantom);
63
+ var fantomTestnet2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.fantomTestnet);
64
+ var filecoin2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.filecoin);
65
+ var filecoinTestnet = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.filecoinHyperspace);
66
+ var foundry2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.foundry);
67
+ var goerli2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.goerli);
68
+ var gnosis2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.gnosis);
69
+ var gnosisChiado2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.gnosisChiado);
70
+ var hardhat2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.hardhat);
71
+ var iotex2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.iotex);
72
+ var iotexTestnet2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.iotexTestnet);
73
+ var localhost2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.localhost);
74
+ var mainnet2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.mainnet);
75
+ var metis2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.metis);
76
+ var metisGoerli2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.metisGoerli);
77
+ var optimism2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.optimism);
78
+ var optimismGoerli2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.optimismGoerli);
79
+ var polygon2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.polygon);
80
+ var polygonMumbai2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.polygonMumbai);
81
+ var sepolia2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.sepolia);
82
+ var taraxa2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.taraxa);
83
+ var taraxaTestnet2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.taraxaTestnet);
84
+ var zkSync2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.zkSync);
85
+ var zkSyncTestnet2 = _chunkW7KWIGWOjs.defineChain.call(void 0, chains.zkSyncTestnet);
86
86
 
87
87
 
88
88
 
@@ -125,5 +125,5 @@ var zkSyncTestnet2 = _chunkDSQO3E4Fjs.defineChain.call(void 0, chains.zkSyncTest
125
125
 
126
126
 
127
127
 
128
- exports.arbitrum = arbitrum2; exports.arbitrumGoerli = arbitrumGoerli2; exports.aurora = aurora2; exports.auroraGoerli = auroraGoerli; exports.avalanche = avalanche2; exports.avalancheFuji = avalancheFuji2; exports.bronos = bronos2; exports.bronosTestnet = bronosTestnet2; exports.bsc = bsc2; exports.bscTestnet = bscTestnet2; exports.canto = canto2; exports.celo = celo2; exports.celoAlfajores = celoAlfajores2; exports.crossbell = crossbell2; exports.defineChain = _chunkDSQO3E4Fjs.defineChain; exports.evmos = evmos2; exports.evmosTestnet = evmosTestnet2; exports.fantom = fantom2; exports.fantomTestnet = fantomTestnet2; exports.filecoin = filecoin2; exports.filecoinTestnet = filecoinTestnet; exports.foundry = foundry2; exports.gnosis = gnosis2; exports.gnosisChiado = gnosisChiado2; exports.goerli = goerli2; exports.hardhat = hardhat2; exports.iotex = iotex2; exports.iotexTestnet = iotexTestnet2; exports.localhost = localhost2; exports.mainnet = mainnet2; exports.metis = metis2; exports.metisGoerli = metisGoerli2; exports.optimism = optimism2; exports.optimismGoerli = optimismGoerli2; exports.polygon = polygon2; exports.polygonMumbai = polygonMumbai2; exports.sepolia = sepolia2; exports.taraxa = taraxa2; exports.taraxaTestnet = taraxaTestnet2; exports.zkSync = zkSync2; exports.zkSyncTestnet = zkSyncTestnet2;
128
+ exports.arbitrum = arbitrum2; exports.arbitrumGoerli = arbitrumGoerli2; exports.aurora = aurora2; exports.auroraGoerli = auroraGoerli; exports.avalanche = avalanche2; exports.avalancheFuji = avalancheFuji2; exports.bronos = bronos2; exports.bronosTestnet = bronosTestnet2; exports.bsc = bsc2; exports.bscTestnet = bscTestnet2; exports.canto = canto2; exports.celo = celo2; exports.celoAlfajores = celoAlfajores2; exports.crossbell = crossbell2; exports.defineChain = _chunkW7KWIGWOjs.defineChain; exports.evmos = evmos2; exports.evmosTestnet = evmosTestnet2; exports.fantom = fantom2; exports.fantomTestnet = fantomTestnet2; exports.filecoin = filecoin2; exports.filecoinTestnet = filecoinTestnet; exports.foundry = foundry2; exports.gnosis = gnosis2; exports.gnosisChiado = gnosisChiado2; exports.goerli = goerli2; exports.hardhat = hardhat2; exports.iotex = iotex2; exports.iotexTestnet = iotexTestnet2; exports.localhost = localhost2; exports.mainnet = mainnet2; exports.metis = metis2; exports.metisGoerli = metisGoerli2; exports.optimism = optimism2; exports.optimismGoerli = optimismGoerli2; exports.polygon = polygon2; exports.polygonMumbai = polygonMumbai2; exports.sepolia = sepolia2; exports.taraxa = taraxa2; exports.taraxaTestnet = taraxaTestnet2; exports.zkSync = zkSync2; exports.zkSyncTestnet = zkSyncTestnet2;
129
129
  //# sourceMappingURL=chains.js.map
package/dist/chains.mjs CHANGED
@@ -4,7 +4,7 @@ import {
4
4
  defineTransaction,
5
5
  defineTransactionReceipt,
6
6
  defineTransactionRequest
7
- } from "./chunk-PRG3BBPZ.mjs";
7
+ } from "./chunk-AKGXRZDN.mjs";
8
8
 
9
9
  // src/chains.ts
10
10
  import * as chains from "@wagmi/chains";
@@ -10,7 +10,7 @@
10
10
 
11
11
 
12
12
 
13
- var _chunkDSQO3E4Fjs = require('./chunk-DSQO3E4F.js');
13
+ var _chunkW7KWIGWOjs = require('./chunk-W7KWIGWO.js');
14
14
 
15
15
  // src/actions/wallet/addChain.ts
16
16
  async function addChain(client, chain) {
@@ -19,7 +19,7 @@ async function addChain(client, chain) {
19
19
  method: "wallet_addEthereumChain",
20
20
  params: [
21
21
  {
22
- chainId: _chunkDSQO3E4Fjs.numberToHex.call(void 0, id),
22
+ chainId: _chunkW7KWIGWOjs.numberToHex.call(void 0, id),
23
23
  chainName: name,
24
24
  nativeCurrency,
25
25
  rpcUrls: rpcUrls.default.http,
@@ -32,7 +32,7 @@ async function addChain(client, chain) {
32
32
  // src/actions/wallet/getAccounts.ts
33
33
  async function getAccounts(client) {
34
34
  const addresses = await client.request({ method: "eth_accounts" });
35
- return addresses.map((address) => _chunkDSQO3E4Fjs.checksumAddress.call(void 0, address));
35
+ return addresses.map((address) => _chunkW7KWIGWOjs.checksumAddress.call(void 0, address));
36
36
  }
37
37
 
38
38
  // src/actions/wallet/getPermissions.ts
@@ -44,7 +44,7 @@ async function getPermissions(client) {
44
44
  // src/actions/wallet/requestAccounts.ts
45
45
  async function requestAccounts(client) {
46
46
  const addresses = await client.request({ method: "eth_requestAccounts" });
47
- return addresses.map((address) => _chunkDSQO3E4Fjs.getAddress.call(void 0, address));
47
+ return addresses.map((address) => _chunkW7KWIGWOjs.getAddress.call(void 0, address));
48
48
  }
49
49
 
50
50
  // src/actions/wallet/requestPermissions.ts
@@ -71,9 +71,9 @@ async function sendTransaction(client, {
71
71
  ...rest
72
72
  }) {
73
73
  if (maxFeePerGas !== void 0 && maxPriorityFeePerGas !== void 0 && maxFeePerGas < maxPriorityFeePerGas)
74
- throw new (0, _chunkDSQO3E4Fjs.InvalidGasArgumentsError)();
74
+ throw new (0, _chunkW7KWIGWOjs.InvalidGasArgumentsError)();
75
75
  const formatter = _optionalChain([chain, 'optionalAccess', _ => _.formatters, 'optionalAccess', _2 => _2.transactionRequest]);
76
- const request_ = _chunkDSQO3E4Fjs.format.call(void 0,
76
+ const request_ = _chunkW7KWIGWOjs.format.call(void 0,
77
77
  {
78
78
  from,
79
79
  accessList,
@@ -86,10 +86,10 @@ async function sendTransaction(client, {
86
86
  to,
87
87
  value,
88
88
  // Pick out extra data that might exist on the chain's transaction request type.
89
- ..._chunkDSQO3E4Fjs.extract.call(void 0, rest, { formatter })
89
+ ..._chunkW7KWIGWOjs.extract.call(void 0, rest, { formatter })
90
90
  },
91
91
  {
92
- formatter: formatter || _chunkDSQO3E4Fjs.formatTransactionRequest
92
+ formatter: formatter || _chunkW7KWIGWOjs.formatTransactionRequest
93
93
  }
94
94
  );
95
95
  const hash = await client.request({
@@ -104,15 +104,15 @@ async function signMessage(client, { from, data: data_ }) {
104
104
  let data;
105
105
  if (typeof data_ === "string") {
106
106
  if (!data_.startsWith("0x"))
107
- throw new (0, _chunkDSQO3E4Fjs.BaseError)(
108
- `data ("${data_}") must be a hex value. Encode it first to a hex with the \`encodeHex\` util.`,
107
+ throw new (0, _chunkW7KWIGWOjs.BaseError)(
108
+ `data ("${data_}") must be a hex value. Encode it first to a hex with the \`toHex\` util.`,
109
109
  {
110
110
  docsPath: "/TODO"
111
111
  }
112
112
  );
113
113
  data = data_;
114
114
  } else {
115
- data = _chunkDSQO3E4Fjs.encodeHex.call(void 0, data_);
115
+ data = _chunkW7KWIGWOjs.toHex.call(void 0, data_);
116
116
  }
117
117
  const signed = await client.request({
118
118
  method: "personal_sign",
@@ -127,7 +127,7 @@ async function switchChain(client, { id }) {
127
127
  method: "wallet_switchEthereumChain",
128
128
  params: [
129
129
  {
130
- chainId: _chunkDSQO3E4Fjs.numberToHex.call(void 0, id)
130
+ chainId: _chunkW7KWIGWOjs.numberToHex.call(void 0, id)
131
131
  }
132
132
  ]
133
133
  });
@@ -150,7 +150,7 @@ async function writeContract(client, {
150
150
  functionName,
151
151
  ...request
152
152
  }) {
153
- const data = _chunkDSQO3E4Fjs.encodeFunctionData.call(void 0, {
153
+ const data = _chunkW7KWIGWOjs.encodeFunctionData.call(void 0, {
154
154
  abi,
155
155
  args,
156
156
  functionName
@@ -165,7 +165,7 @@ async function writeContract(client, {
165
165
 
166
166
  // src/actions/wallet/deployContract.ts
167
167
  function deployContract(walletClient, { abi, args, bytecode, ...request }) {
168
- const calldata = _chunkDSQO3E4Fjs.encodeDeployData.call(void 0, {
168
+ const calldata = _chunkW7KWIGWOjs.encodeDeployData.call(void 0, {
169
169
  abi,
170
170
  args,
171
171
  bytecode
@@ -189,4 +189,4 @@ function deployContract(walletClient, { abi, args, bytecode, ...request }) {
189
189
 
190
190
 
191
191
  exports.addChain = addChain; exports.deployContract = deployContract; exports.getAccounts = getAccounts; exports.getPermissions = getPermissions; exports.requestAccounts = requestAccounts; exports.requestPermissions = requestPermissions; exports.sendTransaction = sendTransaction; exports.signMessage = signMessage; exports.switchChain = switchChain; exports.watchAsset = watchAsset; exports.writeContract = writeContract;
192
- //# sourceMappingURL=chunk-YTG4YXMB.js.map
192
+ //# sourceMappingURL=chunk-2DSFM32P.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/actions/wallet/addChain.ts","../src/actions/wallet/getAccounts.ts","../src/actions/wallet/getPermissions.ts","../src/actions/wallet/requestAccounts.ts","../src/actions/wallet/requestPermissions.ts","../src/actions/wallet/sendTransaction.ts","../src/actions/wallet/signMessage.ts","../src/actions/wallet/switchChain.ts","../src/actions/wallet/watchAsset.ts","../src/actions/wallet/writeContract.ts","../src/actions/wallet/deployContract.ts"],"names":[],"mappings":"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","sourcesContent":["import type { WalletClient } from '../../clients'\nimport type { Chain } from '../../types'\nimport { numberToHex } from '../../utils'\n\nexport async function addChain(client: WalletClient, chain: Chain) {\n const { id, name, nativeCurrency, rpcUrls, blockExplorers } = chain\n await client.request({\n method: 'wallet_addEthereumChain',\n params: [\n {\n chainId: numberToHex(id),\n chainName: name,\n nativeCurrency,\n rpcUrls: rpcUrls.default.http,\n blockExplorerUrls: blockExplorers\n ? Object.values(blockExplorers).map(({ url }) => url)\n : undefined,\n },\n ],\n })\n}\n","import type { WalletClient } from '../../clients'\nimport { checksumAddress } from '../../utils/address'\n\nexport async function getAccounts(client: WalletClient) {\n const addresses = await client.request({ method: 'eth_accounts' })\n return addresses.map((address) => checksumAddress(address))\n}\n","import type { WalletClient } from '../../clients'\nimport type { WalletPermission } from '../../types/eip1193'\n\nexport type GetPermissionsResponse = WalletPermission[]\n\nexport async function getPermissions(client: WalletClient) {\n const permissions = await client.request({ method: 'wallet_getPermissions' })\n return permissions\n}\n","import type { WalletClient } from '../../clients'\nimport { getAddress } from '../../utils'\n\nexport async function requestAccounts(client: WalletClient) {\n const addresses = await client.request({ method: 'eth_requestAccounts' })\n return addresses.map((address) => getAddress(address))\n}\n","import type { WalletClient } from '../../clients'\nimport type { WalletPermission } from '../../types/eip1193'\n\nexport type RequestPermissionsArgs = {\n eth_accounts: Record<string, any>\n} & {\n [key: string]: Record<string, any>\n}\nexport type RequestPermissionsResponse = WalletPermission[]\n\nexport async function requestPermissions(\n client: WalletClient,\n permissions: RequestPermissionsArgs,\n) {\n return client.request({\n method: 'wallet_requestPermissions',\n params: [permissions],\n })\n}\n","import type { WalletClient } from '../../clients'\nimport { InvalidGasArgumentsError } from '../../errors'\nimport type {\n Chain,\n Formatter,\n Hash,\n MergeIntersectionProperties,\n TransactionRequest,\n} from '../../types'\nimport type { Formatted, TransactionRequestFormatter } from '../../utils'\nimport { extract, format, formatTransactionRequest } from '../../utils'\n\nexport type FormattedTransactionRequest<\n TFormatter extends Formatter | undefined = Formatter,\n> = MergeIntersectionProperties<\n Formatted<TFormatter, TransactionRequest, true>,\n TransactionRequest\n>\n\nexport type SendTransactionArgs<TChain extends Chain = Chain> =\n FormattedTransactionRequest<TransactionRequestFormatter<TChain>> & {\n chain?: TChain\n }\n\nexport type SendTransactionResponse = Hash\n\nexport async function sendTransaction<TChain extends Chain>(\n client: WalletClient,\n {\n chain,\n from,\n accessList,\n data,\n gas,\n gasPrice,\n maxFeePerGas,\n maxPriorityFeePerGas,\n nonce,\n to,\n value,\n ...rest\n }: SendTransactionArgs<TChain>,\n): Promise<SendTransactionResponse> {\n if (\n maxFeePerGas !== undefined &&\n maxPriorityFeePerGas !== undefined &&\n maxFeePerGas < maxPriorityFeePerGas\n )\n throw new InvalidGasArgumentsError()\n\n const formatter = chain?.formatters?.transactionRequest\n const request_ = format(\n {\n from,\n accessList,\n data,\n gas,\n gasPrice,\n maxFeePerGas,\n maxPriorityFeePerGas,\n nonce,\n to,\n value,\n // Pick out extra data that might exist on the chain's transaction request type.\n ...extract(rest, { formatter }),\n } as TransactionRequest,\n {\n formatter: formatter || formatTransactionRequest,\n },\n )\n\n const hash = await client.request({\n method: 'eth_sendTransaction',\n params: [request_],\n })\n return hash\n}\n","import type { WalletClient } from '../../clients'\nimport { BaseError } from '../../errors'\nimport type { Address, ByteArray, Hex } from '../../types'\nimport { encodeHex } from '../../utils'\n\nexport type SignMessageArgs = {\n from: Address\n data: Hex | ByteArray\n}\n\nexport type SignMessageResponse = Hex\n\nexport async function signMessage(\n client: WalletClient,\n { from, data: data_ }: SignMessageArgs,\n): Promise<SignMessageResponse> {\n let data\n if (typeof data_ === 'string') {\n if (!data_.startsWith('0x'))\n throw new BaseError(\n `data (\"${data_}\") must be a hex value. Encode it first to a hex with the \\`encodeHex\\` util.`,\n {\n docsPath: '/TODO',\n },\n )\n data = data_\n } else {\n data = encodeHex(data_)\n }\n const signed = await client.request({\n method: 'personal_sign',\n params: [data, from],\n })\n return signed\n}\n","import type { WalletClient } from '../../clients'\nimport { Chain } from '../../types'\nimport { numberToHex } from '../../utils'\n\nexport type SwitchChainArgs = { id: Chain['id'] }\n\nexport async function switchChain(\n client: WalletClient,\n { id }: SwitchChainArgs,\n) {\n await client.request({\n method: 'wallet_switchEthereumChain',\n params: [\n {\n chainId: numberToHex(id),\n },\n ],\n })\n}\n","import type { WalletClient } from '../../clients'\nimport type { WatchAssetParams } from '../../types/eip1193'\n\nexport type WatchAssetArgs = WatchAssetParams\nexport type WatchAssetResponse = boolean\n\nexport async function watchAsset(\n client: WalletClient,\n params: WatchAssetParams,\n): Promise<WatchAssetResponse> {\n const added = await client.request({\n method: 'wallet_watchAsset',\n params: [params],\n })\n return added\n}\n","import { Abi } from 'abitype'\n\nimport type { WalletClient } from '../../clients'\nimport type { Chain, ContractConfig, GetValue } from '../../types'\nimport { EncodeFunctionDataArgs, encodeFunctionData } from '../../utils'\nimport {\n sendTransaction,\n SendTransactionArgs,\n SendTransactionResponse,\n} from './sendTransaction'\n\nexport type WriteContractArgs<\n TChain extends Chain = Chain,\n TAbi extends Abi | readonly unknown[] = Abi,\n TFunctionName extends string = string,\n> = Omit<SendTransactionArgs<TChain>, 'to' | 'data' | 'value'> & {\n value?: GetValue<TAbi, TFunctionName, SendTransactionArgs<TChain>['value']>\n} & ContractConfig<TAbi, TFunctionName, 'payable' | 'nonpayable'>\n\nexport type WriteContractResponse = SendTransactionResponse\n\nexport async function writeContract<\n TChain extends Chain,\n TAbi extends Abi | readonly unknown[],\n TFunctionName extends string,\n>(\n client: WalletClient,\n {\n abi,\n address,\n args,\n functionName,\n ...request\n }: WriteContractArgs<TChain, TAbi, TFunctionName>,\n): Promise<WriteContractResponse> {\n const data = encodeFunctionData({\n abi,\n args,\n functionName,\n } as unknown as EncodeFunctionDataArgs<TAbi, TFunctionName>)\n const hash = await sendTransaction(client, {\n data,\n to: address,\n ...request,\n } as unknown as SendTransactionArgs<TChain>)\n return hash\n}\n","import { Abi, Narrow } from 'abitype'\nimport { WalletClient } from '../../clients'\n\nimport { Chain, ExtractConstructorArgsFromAbi, Hex } from '../../types'\nimport { encodeDeployData } from '../../utils'\nimport {\n sendTransaction,\n SendTransactionArgs,\n SendTransactionResponse,\n} from '../wallet'\n\nexport type DeployContractArgs<\n TChain extends Chain = Chain,\n TAbi extends Abi | readonly unknown[] = Abi,\n> = Omit<\n SendTransactionArgs<TChain>,\n 'accessList' | 'to' | 'data' | 'value'\n> & {\n abi: Narrow<TAbi>\n bytecode: Hex\n} & ExtractConstructorArgsFromAbi<TAbi>\n\nexport type DeployContractResponse = SendTransactionResponse\n\nexport function deployContract<TChain extends Chain, TAbi extends Abi>(\n walletClient: WalletClient,\n { abi, args, bytecode, ...request }: DeployContractArgs<TChain, TAbi>,\n): Promise<DeployContractResponse> {\n const calldata = encodeDeployData({\n abi,\n args,\n bytecode,\n } as unknown as DeployContractArgs<TChain, TAbi>)\n return sendTransaction(walletClient, {\n ...request,\n data: calldata,\n } as unknown as SendTransactionArgs<TChain>)\n}\n"]}
1
+ {"version":3,"sources":["../src/actions/wallet/addChain.ts","../src/actions/wallet/getAccounts.ts","../src/actions/wallet/getPermissions.ts","../src/actions/wallet/requestAccounts.ts","../src/actions/wallet/requestPermissions.ts","../src/actions/wallet/sendTransaction.ts","../src/actions/wallet/signMessage.ts","../src/actions/wallet/switchChain.ts","../src/actions/wallet/watchAsset.ts","../src/actions/wallet/writeContract.ts","../src/actions/wallet/deployContract.ts"],"names":[],"mappings":"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","sourcesContent":["import type { WalletClient } from '../../clients'\nimport type { Chain } from '../../types'\nimport { numberToHex } from '../../utils'\n\nexport async function addChain(client: WalletClient, chain: Chain) {\n const { id, name, nativeCurrency, rpcUrls, blockExplorers } = chain\n await client.request({\n method: 'wallet_addEthereumChain',\n params: [\n {\n chainId: numberToHex(id),\n chainName: name,\n nativeCurrency,\n rpcUrls: rpcUrls.default.http,\n blockExplorerUrls: blockExplorers\n ? Object.values(blockExplorers).map(({ url }) => url)\n : undefined,\n },\n ],\n })\n}\n","import type { WalletClient } from '../../clients'\nimport { checksumAddress } from '../../utils/address'\n\nexport async function getAccounts(client: WalletClient) {\n const addresses = await client.request({ method: 'eth_accounts' })\n return addresses.map((address) => checksumAddress(address))\n}\n","import type { WalletClient } from '../../clients'\nimport type { WalletPermission } from '../../types/eip1193'\n\nexport type GetPermissionsResponse = WalletPermission[]\n\nexport async function getPermissions(client: WalletClient) {\n const permissions = await client.request({ method: 'wallet_getPermissions' })\n return permissions\n}\n","import type { WalletClient } from '../../clients'\nimport { getAddress } from '../../utils'\n\nexport async function requestAccounts(client: WalletClient) {\n const addresses = await client.request({ method: 'eth_requestAccounts' })\n return addresses.map((address) => getAddress(address))\n}\n","import type { WalletClient } from '../../clients'\nimport type { WalletPermission } from '../../types/eip1193'\n\nexport type RequestPermissionsArgs = {\n eth_accounts: Record<string, any>\n} & {\n [key: string]: Record<string, any>\n}\nexport type RequestPermissionsResponse = WalletPermission[]\n\nexport async function requestPermissions(\n client: WalletClient,\n permissions: RequestPermissionsArgs,\n) {\n return client.request({\n method: 'wallet_requestPermissions',\n params: [permissions],\n })\n}\n","import type { WalletClient } from '../../clients'\nimport { InvalidGasArgumentsError } from '../../errors'\nimport type {\n Chain,\n Formatter,\n Hash,\n MergeIntersectionProperties,\n TransactionRequest,\n} from '../../types'\nimport type { Formatted, TransactionRequestFormatter } from '../../utils'\nimport { extract, format, formatTransactionRequest } from '../../utils'\n\nexport type FormattedTransactionRequest<\n TFormatter extends Formatter | undefined = Formatter,\n> = MergeIntersectionProperties<\n Formatted<TFormatter, TransactionRequest, true>,\n TransactionRequest\n>\n\nexport type SendTransactionArgs<TChain extends Chain = Chain> =\n FormattedTransactionRequest<TransactionRequestFormatter<TChain>> & {\n chain?: TChain\n }\n\nexport type SendTransactionResponse = Hash\n\nexport async function sendTransaction<TChain extends Chain>(\n client: WalletClient,\n {\n chain,\n from,\n accessList,\n data,\n gas,\n gasPrice,\n maxFeePerGas,\n maxPriorityFeePerGas,\n nonce,\n to,\n value,\n ...rest\n }: SendTransactionArgs<TChain>,\n): Promise<SendTransactionResponse> {\n if (\n maxFeePerGas !== undefined &&\n maxPriorityFeePerGas !== undefined &&\n maxFeePerGas < maxPriorityFeePerGas\n )\n throw new InvalidGasArgumentsError()\n\n const formatter = chain?.formatters?.transactionRequest\n const request_ = format(\n {\n from,\n accessList,\n data,\n gas,\n gasPrice,\n maxFeePerGas,\n maxPriorityFeePerGas,\n nonce,\n to,\n value,\n // Pick out extra data that might exist on the chain's transaction request type.\n ...extract(rest, { formatter }),\n } as TransactionRequest,\n {\n formatter: formatter || formatTransactionRequest,\n },\n )\n\n const hash = await client.request({\n method: 'eth_sendTransaction',\n params: [request_],\n })\n return hash\n}\n","import type { WalletClient } from '../../clients'\nimport { BaseError } from '../../errors'\nimport type { Address, ByteArray, Hex } from '../../types'\nimport { toHex } from '../../utils'\n\nexport type SignMessageArgs = {\n from: Address\n data: Hex | ByteArray\n}\n\nexport type SignMessageResponse = Hex\n\nexport async function signMessage(\n client: WalletClient,\n { from, data: data_ }: SignMessageArgs,\n): Promise<SignMessageResponse> {\n let data\n if (typeof data_ === 'string') {\n if (!data_.startsWith('0x'))\n throw new BaseError(\n `data (\"${data_}\") must be a hex value. Encode it first to a hex with the \\`toHex\\` util.`,\n {\n docsPath: '/TODO',\n },\n )\n data = data_\n } else {\n data = toHex(data_)\n }\n const signed = await client.request({\n method: 'personal_sign',\n params: [data, from],\n })\n return signed\n}\n","import type { WalletClient } from '../../clients'\nimport { Chain } from '../../types'\nimport { numberToHex } from '../../utils'\n\nexport type SwitchChainArgs = { id: Chain['id'] }\n\nexport async function switchChain(\n client: WalletClient,\n { id }: SwitchChainArgs,\n) {\n await client.request({\n method: 'wallet_switchEthereumChain',\n params: [\n {\n chainId: numberToHex(id),\n },\n ],\n })\n}\n","import type { WalletClient } from '../../clients'\nimport type { WatchAssetParams } from '../../types/eip1193'\n\nexport type WatchAssetArgs = WatchAssetParams\nexport type WatchAssetResponse = boolean\n\nexport async function watchAsset(\n client: WalletClient,\n params: WatchAssetParams,\n): Promise<WatchAssetResponse> {\n const added = await client.request({\n method: 'wallet_watchAsset',\n params: [params],\n })\n return added\n}\n","import { Abi } from 'abitype'\n\nimport type { WalletClient } from '../../clients'\nimport type { Chain, ContractConfig, GetValue } from '../../types'\nimport { EncodeFunctionDataArgs, encodeFunctionData } from '../../utils'\nimport {\n sendTransaction,\n SendTransactionArgs,\n SendTransactionResponse,\n} from './sendTransaction'\n\nexport type WriteContractArgs<\n TChain extends Chain = Chain,\n TAbi extends Abi | readonly unknown[] = Abi,\n TFunctionName extends string = string,\n> = Omit<SendTransactionArgs<TChain>, 'to' | 'data' | 'value'> & {\n value?: GetValue<TAbi, TFunctionName, SendTransactionArgs<TChain>['value']>\n} & ContractConfig<TAbi, TFunctionName, 'payable' | 'nonpayable'>\n\nexport type WriteContractResponse = SendTransactionResponse\n\nexport async function writeContract<\n TChain extends Chain,\n TAbi extends Abi | readonly unknown[],\n TFunctionName extends string,\n>(\n client: WalletClient,\n {\n abi,\n address,\n args,\n functionName,\n ...request\n }: WriteContractArgs<TChain, TAbi, TFunctionName>,\n): Promise<WriteContractResponse> {\n const data = encodeFunctionData({\n abi,\n args,\n functionName,\n } as unknown as EncodeFunctionDataArgs<TAbi, TFunctionName>)\n const hash = await sendTransaction(client, {\n data,\n to: address,\n ...request,\n } as unknown as SendTransactionArgs<TChain>)\n return hash\n}\n","import { Abi, Narrow } from 'abitype'\nimport { WalletClient } from '../../clients'\n\nimport { Chain, ExtractConstructorArgsFromAbi, Hex } from '../../types'\nimport { encodeDeployData } from '../../utils'\nimport {\n sendTransaction,\n SendTransactionArgs,\n SendTransactionResponse,\n} from '../wallet'\n\nexport type DeployContractArgs<\n TChain extends Chain = Chain,\n TAbi extends Abi | readonly unknown[] = Abi,\n> = Omit<\n SendTransactionArgs<TChain>,\n 'accessList' | 'to' | 'data' | 'value'\n> & {\n abi: Narrow<TAbi>\n bytecode: Hex\n} & ExtractConstructorArgsFromAbi<TAbi>\n\nexport type DeployContractResponse = SendTransactionResponse\n\nexport function deployContract<TChain extends Chain, TAbi extends Abi>(\n walletClient: WalletClient,\n { abi, args, bytecode, ...request }: DeployContractArgs<TChain, TAbi>,\n): Promise<DeployContractResponse> {\n const calldata = encodeDeployData({\n abi,\n args,\n bytecode,\n } as unknown as DeployContractArgs<TChain, TAbi>)\n return sendTransaction(walletClient, {\n ...request,\n data: calldata,\n } as unknown as SendTransactionArgs<TChain>)\n}\n"]}