viem 0.0.1-alpha.19 → 0.0.1-alpha.20
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/{rpc-858670f1.d.ts → chain-32f56cfa.d.ts} +68 -18
- package/dist/chain-f12cdc7f.d.ts +5 -0
- package/dist/chains.d.ts +757 -170
- package/dist/chains.js +80 -86
- package/dist/chains.js.map +1 -1
- package/dist/chains.mjs +120 -126
- package/dist/chains.mjs.map +1 -1
- package/dist/{chunk-PHSAQQGZ.mjs → chunk-5Q6FSUU2.mjs} +75 -37
- package/dist/chunk-5Q6FSUU2.mjs.map +1 -0
- package/dist/{chunk-24EKKMUO.js → chunk-FHXXG7I6.js} +12 -12
- package/dist/chunk-FHXXG7I6.js.map +1 -0
- package/dist/{chunk-HRE6LYF3.js → chunk-IAQPMSGJ.js} +13 -13
- package/dist/chunk-IAQPMSGJ.js.map +1 -0
- package/dist/{chunk-IVWG22RQ.mjs → chunk-MYQNZSWD.mjs} +69 -12
- package/dist/chunk-MYQNZSWD.mjs.map +1 -0
- package/dist/{chunk-NYMS65YI.js → chunk-NHAKUPTF.js} +124 -67
- package/dist/chunk-NHAKUPTF.js.map +1 -0
- package/dist/{chunk-BZFF747V.js → chunk-SF4I2NKC.js} +81 -43
- package/dist/chunk-SF4I2NKC.js.map +1 -0
- package/dist/{chunk-VAT5CEF7.mjs → chunk-T7CBAKLI.mjs} +2 -2
- package/dist/chunk-T7CBAKLI.mjs.map +1 -0
- package/dist/{chunk-CTU4PQLY.js → chunk-YFKR74XG.js} +14 -14
- package/dist/{chunk-CTU4PQLY.js.map → chunk-YFKR74XG.js.map} +0 -0
- package/dist/{chunk-NSRORL3O.mjs → chunk-YODUQCHJ.mjs} +2 -2
- package/dist/{chunk-NSRORL3O.mjs.map → chunk-YODUQCHJ.mjs.map} +0 -0
- package/dist/{chunk-E7LH5H76.mjs → chunk-ZVGTYLKU.mjs} +2 -2
- package/dist/chunk-ZVGTYLKU.mjs.map +1 -0
- package/dist/clients/index.d.ts +7 -8
- package/dist/clients/index.js +3 -3
- package/dist/clients/index.mjs +2 -2
- package/dist/{transactionReceipt-aed524b4.d.ts → contract-9af4608b.d.ts} +30 -18
- package/dist/{createClient-03ba79e8.d.ts → createClient-5d316c7e.d.ts} +2 -2
- package/dist/{createPublicClient-818241ba.d.ts → createPublicClient-9d2b42e1.d.ts} +3 -3
- package/dist/{createTestClient-24eb7be8.d.ts → createTestClient-79498dab.d.ts} +3 -3
- package/dist/{createWalletClient-7cbd6ad1.d.ts → createWalletClient-f69a5230.d.ts} +3 -3
- package/dist/{eip1193-71d8e27d.d.ts → eip1193-6c485d63.d.ts} +1 -1
- package/dist/index.d.ts +45 -23
- package/dist/index.js +10 -6
- package/dist/index.mjs +9 -5
- package/dist/{parseGwei-dbd12305.d.ts → parseGwei-4308ad80.d.ts} +17 -4
- package/dist/public.d.ts +9 -10
- package/dist/public.js +4 -4
- package/dist/public.mjs +3 -3
- package/dist/{sendTransaction-d09961a7.d.ts → sendTransaction-1c8290a9.d.ts} +3 -4
- package/dist/{stopImpersonatingAccount-c8a00be7.d.ts → stopImpersonatingAccount-7781842a.d.ts} +2 -2
- package/dist/test.d.ts +5 -6
- package/dist/test.js +3 -3
- package/dist/test.mjs +2 -2
- package/dist/transactionRequest-341b6ed2.d.ts +15 -0
- package/dist/utils/index.d.ts +9 -8
- package/dist/utils/index.js +22 -2
- package/dist/utils/index.mjs +25 -5
- package/dist/wallet.d.ts +7 -8
- package/dist/wallet.js +3 -3
- package/dist/wallet.mjs +2 -2
- package/dist/{watchAsset-c39645b7.d.ts → watchAsset-afaad3c7.d.ts} +3 -4
- package/dist/{watchPendingTransactions-01e6be4f.d.ts → watchPendingTransactions-3b722547.d.ts} +21 -16
- package/dist/{webSocket-3a00015b.d.ts → webSocket-b180e679.d.ts} +2 -2
- package/dist/window.d.ts +3 -2
- package/package.json +3 -3
- package/src/_test/abis.ts +188 -0
- package/src/_test/constants.ts +0 -3
- package/src/_test/index.ts +5 -2
- package/src/actions/index.test.ts +2 -0
- package/src/actions/index.ts +6 -0
- package/src/actions/public/call.ts +2 -1
- package/src/actions/public/createContractEventFilter.test.ts +119 -0
- package/src/actions/public/createContractEventFilter.ts +69 -0
- package/src/actions/public/createEventFilter.ts +5 -8
- package/src/actions/public/deployContract.ts +1 -2
- package/src/actions/public/getBlock.test.ts +3 -3
- package/src/actions/public/getBlock.ts +1 -2
- package/src/actions/public/getBlockTransactionCount.ts +1 -2
- package/src/actions/public/getFilterChanges.test.ts +9 -7
- package/src/actions/public/getFilterLogs.test.ts +7 -5
- package/src/actions/public/getLogs.test.ts +7 -5
- package/src/actions/public/getLogs.ts +3 -2
- package/src/actions/public/getTransaction.ts +1 -2
- package/src/actions/public/getTransactionConfirmations.ts +1 -2
- package/src/actions/public/getTransactionReceipt.test.ts +24 -62
- package/src/actions/public/getTransactionReceipt.ts +1 -2
- package/src/actions/public/index.test.ts +4 -0
- package/src/actions/public/index.ts +18 -0
- package/src/actions/public/readContract.ts +1 -1
- package/src/actions/public/simulateContract.ts +1 -1
- package/src/actions/public/waitForTransactionReceipt.ts +1 -2
- package/src/actions/public/watchBlocks.test.ts +27 -2
- package/src/actions/public/watchBlocks.ts +33 -14
- package/src/actions/public/watchContractEvent.test.ts +301 -0
- package/src/actions/public/watchContractEvent.ts +108 -0
- package/src/actions/public/watchEvent.test.ts +190 -0
- package/src/actions/public/watchEvent.ts +95 -0
- package/src/actions/public/watchPendingTransactions.ts +1 -0
- package/src/actions/wallet/addChain.ts +1 -1
- package/src/actions/wallet/sendTransaction.ts +2 -1
- package/src/actions/wallet/switchChain.ts +1 -1
- package/src/actions/wallet/writeContract.ts +1 -1
- package/src/chains.test.ts +830 -52
- package/src/chains.ts +90 -158
- package/src/clients/createClient.ts +1 -1
- package/src/clients/createPublicClient.ts +1 -1
- package/src/clients/createTestClient.ts +1 -1
- package/src/clients/createWalletClient.ts +1 -1
- package/src/clients/transports/createTransport.ts +1 -1
- package/src/index.test.ts +2 -0
- package/src/index.ts +10 -2
- package/src/types/chain.ts +6 -0
- package/src/types/contract.ts +17 -2
- package/src/types/formatter.ts +23 -0
- package/src/types/index.ts +6 -0
- package/src/types/transaction.ts +1 -1
- package/src/utils/abi/decodeErrorResult.ts +2 -2
- package/src/utils/abi/decodeFunctionData.ts +2 -2
- package/src/utils/abi/encodeErrorResult.ts +2 -2
- package/src/utils/abi/encodeEventTopics.ts +4 -4
- package/src/utils/abi/encodeFunctionData.ts +2 -2
- package/src/utils/abi/{formatAbiItemWithParams.test.ts → formatAbiItem.test.ts} +11 -11
- package/src/utils/abi/{formatAbiItemWithParams.ts → formatAbiItem.ts} +1 -1
- package/src/utils/abi/index.test.ts +1 -1
- package/src/utils/abi/index.ts +1 -1
- package/src/utils/chain.test.ts +43 -0
- package/src/utils/chain.ts +8 -0
- package/src/utils/contract/getContractError.ts +2 -6
- package/src/utils/formatters/block.ts +4 -3
- package/src/utils/formatters/extract.ts +1 -1
- package/src/utils/formatters/format.ts +39 -2
- package/src/utils/formatters/index.test.ts +10 -0
- package/src/utils/formatters/index.ts +15 -5
- package/src/utils/formatters/transaction.ts +16 -4
- package/src/utils/formatters/transactionReceipt.ts +13 -4
- package/src/utils/formatters/transactionRequest.ts +12 -3
- package/src/utils/hash/getEventSignature.ts +2 -2
- package/src/utils/index.test.ts +24 -1
- package/src/utils/index.ts +12 -1
- package/src/{constants.test.ts → utils/unit/constants.test.ts} +0 -5
- package/src/{constants.ts → utils/unit/constants.ts} +0 -6
- package/src/utils/unit/formatEther.ts +1 -1
- package/src/utils/unit/formatGwei.ts +1 -1
- package/src/utils/unit/index.test.ts +12 -0
- package/src/utils/unit/index.ts +1 -0
- package/src/utils/unit/parseEther.ts +1 -1
- package/src/utils/unit/parseGwei.ts +1 -1
- package/dist/chunk-24EKKMUO.js.map +0 -1
- package/dist/chunk-BZFF747V.js.map +0 -1
- package/dist/chunk-E7LH5H76.mjs.map +0 -1
- package/dist/chunk-HRE6LYF3.js.map +0 -1
- package/dist/chunk-IVWG22RQ.mjs.map +0 -1
- package/dist/chunk-NYMS65YI.js.map +0 -1
- package/dist/chunk-PHSAQQGZ.mjs.map +0 -1
- package/dist/chunk-VAT5CEF7.mjs.map +0 -1
- package/dist/transactionRequest-8e970b0e.d.ts +0 -33
@@ -9,7 +9,7 @@ var __publicField = (obj, key, value) => {
|
|
9
9
|
var package_default = {
|
10
10
|
name: "viem",
|
11
11
|
description: "TypeScript Interface for Ethereum",
|
12
|
-
version: "0.0.1-alpha.
|
12
|
+
version: "0.0.1-alpha.20",
|
13
13
|
scripts: {
|
14
14
|
anvil: "source .env && anvil --fork-url $VITE_ANVIL_FORK_URL --fork-block-number $VITE_ANVIL_BLOCK_NUMBER --block-time $VITE_ANVIL_BLOCK_TIME",
|
15
15
|
bench: "vitest bench --no-threads",
|
@@ -94,8 +94,8 @@ var package_default = {
|
|
94
94
|
sideEffects: false,
|
95
95
|
dependencies: {
|
96
96
|
"@noble/hashes": "^1.1.2",
|
97
|
-
"@wagmi/chains": "0.
|
98
|
-
abitype: "
|
97
|
+
"@wagmi/chains": "~0.2.6",
|
98
|
+
abitype: "~0.2.5"
|
99
99
|
},
|
100
100
|
devDependencies: {
|
101
101
|
"@actions/core": "^1.10.0",
|
@@ -1292,7 +1292,7 @@ function getContractError(err, {
|
|
1292
1292
|
includeFunctionName: false,
|
1293
1293
|
includeName: false
|
1294
1294
|
}) : void 0;
|
1295
|
-
const functionWithParams = abiItem ?
|
1295
|
+
const functionWithParams = abiItem ? formatAbiItem(abiItem, { includeName: true }) : void 0;
|
1296
1296
|
if (err instanceof AbiDecodingZeroDataError) {
|
1297
1297
|
return new ContractMethodZeroDataError({
|
1298
1298
|
abi,
|
@@ -1794,8 +1794,8 @@ function hasDynamicChild(param) {
|
|
1794
1794
|
return false;
|
1795
1795
|
}
|
1796
1796
|
|
1797
|
-
// src/utils/abi/
|
1798
|
-
function
|
1797
|
+
// src/utils/abi/formatAbiItem.ts
|
1798
|
+
function formatAbiItem(abiItem, { includeName = false } = {}) {
|
1799
1799
|
if (abiItem.type !== "function" && abiItem.type !== "event" && abiItem.type !== "error")
|
1800
1800
|
throw new InvalidDefinitionTypeError(abiItem.type);
|
1801
1801
|
return `${abiItem.name}(${getParams(abiItem.inputs, { includeName })})`;
|
@@ -1819,7 +1819,7 @@ function getParam(param, { includeName }) {
|
|
1819
1819
|
function decodeErrorResult({ abi, data }) {
|
1820
1820
|
const signature = slice(data, 0, 4);
|
1821
1821
|
const description = abi.find(
|
1822
|
-
(x) => signature === getFunctionSignature(
|
1822
|
+
(x) => signature === getFunctionSignature(formatAbiItem(x))
|
1823
1823
|
);
|
1824
1824
|
if (!description)
|
1825
1825
|
throw new AbiErrorSignatureNotFoundError(signature, {
|
@@ -1835,7 +1835,7 @@ function decodeErrorResult({ abi, data }) {
|
|
1835
1835
|
function decodeFunctionData({ abi, data }) {
|
1836
1836
|
const signature = slice(data, 0, 4);
|
1837
1837
|
const description = abi.find(
|
1838
|
-
(x) => signature === getFunctionSignature(
|
1838
|
+
(x) => signature === getFunctionSignature(formatAbiItem(x))
|
1839
1839
|
);
|
1840
1840
|
if (!description)
|
1841
1841
|
throw new AbiFunctionSignatureNotFoundError(signature, {
|
@@ -1903,7 +1903,7 @@ function encodeErrorResult({ abi, errorName, args }) {
|
|
1903
1903
|
const description = getAbiItem({ abi, name: errorName });
|
1904
1904
|
if (!description)
|
1905
1905
|
throw new AbiErrorNotFoundError(errorName, { docsPath: docsPath3 });
|
1906
|
-
const definition =
|
1906
|
+
const definition = formatAbiItem(description);
|
1907
1907
|
const signature = getFunctionSignature(definition);
|
1908
1908
|
let data = "0x";
|
1909
1909
|
if (args && args.length > 0) {
|
@@ -1921,7 +1921,7 @@ function encodeEventTopics({ abi, eventName, args }) {
|
|
1921
1921
|
throw new AbiEventNotFoundError(eventName, {
|
1922
1922
|
docsPath: "/docs/contract/encodeEventTopics"
|
1923
1923
|
});
|
1924
|
-
const definition =
|
1924
|
+
const definition = formatAbiItem(abiItem);
|
1925
1925
|
const signature = getEventSignature(definition);
|
1926
1926
|
let topics = [];
|
1927
1927
|
if (args && "inputs" in abiItem) {
|
@@ -1952,7 +1952,7 @@ function encodeFunctionData({ abi, args, functionName }) {
|
|
1952
1952
|
throw new AbiFunctionNotFoundError(functionName, {
|
1953
1953
|
docsPath: "/docs/contract/encodeFunctionData"
|
1954
1954
|
});
|
1955
|
-
const definition =
|
1955
|
+
const definition = formatAbiItem(description);
|
1956
1956
|
const signature = getFunctionSignature(definition);
|
1957
1957
|
const data = "inputs" in description && description.inputs ? encodeAbi({
|
1958
1958
|
params: description.inputs,
|
@@ -2035,26 +2035,41 @@ function buildRequest(request) {
|
|
2035
2035
|
};
|
2036
2036
|
}
|
2037
2037
|
|
2038
|
-
// src/
|
2039
|
-
|
2040
|
-
|
2041
|
-
|
2042
|
-
|
2043
|
-
|
2044
|
-
|
2045
|
-
|
2046
|
-
}
|
2047
|
-
|
2048
|
-
|
2049
|
-
|
2050
|
-
|
2038
|
+
// src/utils/chain.ts
|
2039
|
+
function defineChain(chain) {
|
2040
|
+
return chain;
|
2041
|
+
}
|
2042
|
+
|
2043
|
+
// src/utils/formatters/format.ts
|
2044
|
+
function format3(data, { formatter }) {
|
2045
|
+
return formatter(data);
|
2046
|
+
}
|
2047
|
+
function defineFormatter({
|
2048
|
+
format: format4
|
2049
|
+
}) {
|
2050
|
+
return ({
|
2051
|
+
exclude,
|
2052
|
+
format: formatOverride
|
2053
|
+
}) => (data) => {
|
2054
|
+
const formatted = format4(data);
|
2055
|
+
if (exclude) {
|
2056
|
+
for (const key of exclude) {
|
2057
|
+
delete formatted[key];
|
2058
|
+
}
|
2059
|
+
}
|
2060
|
+
return {
|
2061
|
+
...formatted,
|
2062
|
+
...formatOverride?.(data)
|
2063
|
+
};
|
2064
|
+
};
|
2065
|
+
}
|
2066
|
+
|
2067
|
+
// src/utils/formatters/transaction.ts
|
2051
2068
|
var transactionType = {
|
2052
2069
|
"0x0": "legacy",
|
2053
2070
|
"0x1": "eip2930",
|
2054
2071
|
"0x2": "eip1559"
|
2055
2072
|
};
|
2056
|
-
|
2057
|
-
// src/utils/formatters/transaction.ts
|
2058
2073
|
function formatTransaction(transaction) {
|
2059
2074
|
const transaction_ = {
|
2060
2075
|
...transaction,
|
@@ -2080,6 +2095,7 @@ function formatTransaction(transaction) {
|
|
2080
2095
|
}
|
2081
2096
|
return transaction_;
|
2082
2097
|
}
|
2098
|
+
var defineTransaction = defineFormatter({ format: formatTransaction });
|
2083
2099
|
|
2084
2100
|
// src/utils/formatters/block.ts
|
2085
2101
|
function formatBlock(block) {
|
@@ -2101,6 +2117,7 @@ function formatBlock(block) {
|
|
2101
2117
|
totalDifficulty: block.totalDifficulty ? BigInt(block.totalDifficulty) : null
|
2102
2118
|
};
|
2103
2119
|
}
|
2120
|
+
var defineBlock = defineFormatter({ format: formatBlock });
|
2104
2121
|
|
2105
2122
|
// src/utils/formatters/extract.ts
|
2106
2123
|
function extract(value, { formatter }) {
|
@@ -2128,11 +2145,6 @@ function formatFeeHistory(feeHistory) {
|
|
2128
2145
|
};
|
2129
2146
|
}
|
2130
2147
|
|
2131
|
-
// src/utils/formatters/format.ts
|
2132
|
-
function format3(data, { formatter }) {
|
2133
|
-
return formatter(data);
|
2134
|
-
}
|
2135
|
-
|
2136
2148
|
// src/utils/formatters/log.ts
|
2137
2149
|
function formatLog(log) {
|
2138
2150
|
return {
|
@@ -2161,6 +2173,9 @@ function formatTransactionReceipt(transactionReceipt) {
|
|
2161
2173
|
type: transactionReceipt.type ? transactionType[transactionReceipt.type] : null
|
2162
2174
|
};
|
2163
2175
|
}
|
2176
|
+
var defineTransactionReceipt = defineFormatter({
|
2177
|
+
format: formatTransactionReceipt
|
2178
|
+
});
|
2164
2179
|
|
2165
2180
|
// src/utils/formatters/transactionRequest.ts
|
2166
2181
|
function formatTransactionRequest(transactionRequest) {
|
@@ -2174,6 +2189,9 @@ function formatTransactionRequest(transactionRequest) {
|
|
2174
2189
|
value: typeof transactionRequest.value !== "undefined" ? numberToHex(transactionRequest.value) : void 0
|
2175
2190
|
};
|
2176
2191
|
}
|
2192
|
+
var defineTransactionRequest = defineFormatter({
|
2193
|
+
format: formatTransactionRequest
|
2194
|
+
});
|
2177
2195
|
|
2178
2196
|
// src/utils/promise/withCache.ts
|
2179
2197
|
var promiseCache = /* @__PURE__ */ new Map();
|
@@ -2447,6 +2465,20 @@ var rpc = {
|
|
2447
2465
|
webSocketAsync
|
2448
2466
|
};
|
2449
2467
|
|
2468
|
+
// src/utils/unit/constants.ts
|
2469
|
+
var etherUnits = {
|
2470
|
+
gwei: 9,
|
2471
|
+
wei: 18
|
2472
|
+
};
|
2473
|
+
var gweiUnits = {
|
2474
|
+
ether: -9,
|
2475
|
+
wei: 9
|
2476
|
+
};
|
2477
|
+
var weiUnits = {
|
2478
|
+
ether: -18,
|
2479
|
+
gwei: -9
|
2480
|
+
};
|
2481
|
+
|
2450
2482
|
// src/utils/unit/formatUnit.ts
|
2451
2483
|
function formatUnit(value, decimals) {
|
2452
2484
|
let display = value.toString();
|
@@ -2597,7 +2629,7 @@ export {
|
|
2597
2629
|
isAddressEqual,
|
2598
2630
|
encodeAbi,
|
2599
2631
|
decodeAbi,
|
2600
|
-
|
2632
|
+
formatAbiItem,
|
2601
2633
|
decodeErrorResult,
|
2602
2634
|
decodeFunctionData,
|
2603
2635
|
decodeFunctionResult,
|
@@ -2609,23 +2641,29 @@ export {
|
|
2609
2641
|
encodeFunctionResult,
|
2610
2642
|
formatAbiItemWithArgs,
|
2611
2643
|
buildRequest,
|
2612
|
-
|
2613
|
-
|
2614
|
-
|
2644
|
+
defineChain,
|
2645
|
+
format3 as format,
|
2646
|
+
defineFormatter,
|
2615
2647
|
transactionType,
|
2616
2648
|
formatTransaction,
|
2649
|
+
defineTransaction,
|
2617
2650
|
formatBlock,
|
2651
|
+
defineBlock,
|
2618
2652
|
extract,
|
2619
2653
|
formatFeeHistory,
|
2620
|
-
format3 as format,
|
2621
2654
|
formatLog,
|
2622
2655
|
formatTransactionReceipt,
|
2656
|
+
defineTransactionReceipt,
|
2623
2657
|
formatTransactionRequest,
|
2658
|
+
defineTransactionRequest,
|
2624
2659
|
getCache,
|
2625
2660
|
withCache,
|
2626
2661
|
wait,
|
2627
2662
|
getSocket,
|
2628
2663
|
rpc,
|
2664
|
+
etherUnits,
|
2665
|
+
gweiUnits,
|
2666
|
+
weiUnits,
|
2629
2667
|
formatUnit,
|
2630
2668
|
formatEther,
|
2631
2669
|
formatGwei,
|
@@ -2642,4 +2680,4 @@ export {
|
|
2642
2680
|
WaitForTransactionReceiptTimeoutError,
|
2643
2681
|
UrlRequiredError
|
2644
2682
|
};
|
2645
|
-
//# sourceMappingURL=chunk-
|
2683
|
+
//# sourceMappingURL=chunk-5Q6FSUU2.mjs.map
|