viem 2.7.3 → 2.7.6
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/CHANGELOG.md +12 -0
- package/_cjs/_test/generated.js +313 -0
- package/_cjs/_test/generated.js.map +1 -0
- package/_cjs/actions/public/getBlock.js.map +1 -1
- package/_cjs/chains/definitions/x1Testnet.js +30 -0
- package/_cjs/chains/definitions/x1Testnet.js.map +1 -0
- package/_cjs/chains/index.js +3 -1
- package/_cjs/chains/index.js.map +1 -1
- package/_cjs/clients/createClient.js.map +1 -1
- package/_cjs/clients/createPublicClient.js.map +1 -1
- package/_cjs/errors/version.js +1 -1
- package/_esm/_test/generated.js +335 -0
- package/_esm/_test/generated.js.map +1 -0
- package/_esm/actions/public/getBlock.js.map +1 -1
- package/_esm/chains/definitions/x1Testnet.js +27 -0
- package/_esm/chains/definitions/x1Testnet.js.map +1 -0
- package/_esm/chains/index.js +1 -0
- package/_esm/chains/index.js.map +1 -1
- package/_esm/clients/createClient.js.map +1 -1
- package/_esm/clients/createPublicClient.js +19 -0
- package/_esm/clients/createPublicClient.js.map +1 -1
- package/_esm/errors/version.js +1 -1
- package/_test/generated.ts +350 -0
- package/_types/_test/generated.d.ts +428 -0
- package/_types/_test/generated.d.ts.map +1 -0
- package/_types/actions/public/getBlock.d.ts +2 -1
- package/_types/actions/public/getBlock.d.ts.map +1 -1
- package/_types/chains/definitions/x1Testnet.d.ts +33 -0
- package/_types/chains/definitions/x1Testnet.d.ts.map +1 -0
- package/_types/chains/index.d.ts +1 -0
- package/_types/chains/index.d.ts.map +1 -1
- package/_types/clients/createClient.d.ts +2 -2
- package/_types/clients/createClient.d.ts.map +1 -1
- package/_types/clients/createPublicClient.d.ts.map +1 -1
- package/_types/errors/version.d.ts +1 -1
- package/_types/types/chain.d.ts +3 -3
- package/_types/types/chain.d.ts.map +1 -1
- package/actions/public/getBlock.ts +2 -1
- package/chains/definitions/x1Testnet.ts +27 -0
- package/chains/index.ts +1 -0
- package/clients/createClient.ts +9 -4
- package/clients/createPublicClient.ts +1 -5
- package/errors/version.ts +1 -1
- package/package.json +15 -46
- package/types/chain.ts +13 -9
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../../types/chain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,yCAAyC,CAAA;AAC3F,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,gDAAgD,CAAA;AACzG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAA;AACzE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,KAAK,EACV,uBAAuB,EACvB,8BAA8B,EAC/B,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;
|
1
|
+
{"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../../types/chain.ts"],"names":[],"mappings":"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"}
|
@@ -10,6 +10,7 @@ import type { BlockTag } from '../../types/block.js'
|
|
10
10
|
import type { Chain } from '../../types/chain.js'
|
11
11
|
import type { Hash } from '../../types/misc.js'
|
12
12
|
import type { RpcBlock } from '../../types/rpc.js'
|
13
|
+
import type { Prettify } from '../../types/utils.js'
|
13
14
|
import type { RequestErrorType } from '../../utils/buildRequest.js'
|
14
15
|
import {
|
15
16
|
type NumberToHexErrorType,
|
@@ -54,7 +55,7 @@ export type GetBlockReturnType<
|
|
54
55
|
TChain extends Chain | undefined = undefined,
|
55
56
|
TIncludeTransactions extends boolean = false,
|
56
57
|
TBlockTag extends BlockTag = 'latest',
|
57
|
-
> = FormattedBlock<TChain, TIncludeTransactions, TBlockTag
|
58
|
+
> = Prettify<FormattedBlock<TChain, TIncludeTransactions, TBlockTag>>
|
58
59
|
|
59
60
|
export type GetBlockErrorType =
|
60
61
|
| BlockNotFoundErrorType
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import { defineChain } from '../../utils/chain/defineChain.js'
|
2
|
+
|
3
|
+
export const x1Testnet = /*#__PURE__*/ defineChain({
|
4
|
+
id: 195,
|
5
|
+
name: 'X1 Testnet',
|
6
|
+
nativeCurrency: {
|
7
|
+
decimals: 18,
|
8
|
+
name: 'OKB',
|
9
|
+
symbol: 'OKB',
|
10
|
+
},
|
11
|
+
rpcUrls: {
|
12
|
+
default: { http: ['https://x1testrpc.okx.com'] },
|
13
|
+
},
|
14
|
+
blockExplorers: {
|
15
|
+
default: {
|
16
|
+
name: 'OKLink',
|
17
|
+
url: 'https://www.oklink.com/x1-test',
|
18
|
+
},
|
19
|
+
},
|
20
|
+
contracts: {
|
21
|
+
multicall3: {
|
22
|
+
address: '0xca11bde05977b3631167028862be2a173976ca11',
|
23
|
+
blockCreated: 624344,
|
24
|
+
},
|
25
|
+
},
|
26
|
+
testnet: true,
|
27
|
+
})
|
package/chains/index.ts
CHANGED
@@ -185,6 +185,7 @@ export { wanchain } from './definitions/wanchain.js'
|
|
185
185
|
export { wanchainTestnet } from './definitions/wanchainTestnet.js'
|
186
186
|
export { wemix } from './definitions/wemix.js'
|
187
187
|
export { wemixTestnet } from './definitions/wemixTestnet.js'
|
188
|
+
export { x1Testnet } from './definitions/x1Testnet.js'
|
188
189
|
export { xdc } from './definitions/xdc.js'
|
189
190
|
export { xdcTestnet } from './definitions/xdcTestnet.js'
|
190
191
|
export { zhejiang } from './definitions/zhejiang.js'
|
package/clients/createClient.ts
CHANGED
@@ -60,8 +60,12 @@ export type ClientConfig<
|
|
60
60
|
// They are allowed to be extended, but must conform to their parameter & return type interfaces.
|
61
61
|
// Example: an extended `call` action must accept `CallParameters` as parameters,
|
62
62
|
// and conform to the `CallReturnType` return type.
|
63
|
-
type ExtendableProtectedActions
|
64
|
-
|
63
|
+
type ExtendableProtectedActions<
|
64
|
+
transport extends Transport = Transport,
|
65
|
+
chain extends Chain | undefined = Chain | undefined,
|
66
|
+
account extends Account | undefined = Account | undefined,
|
67
|
+
> = Pick<
|
68
|
+
PublicActions<transport, chain, account>,
|
65
69
|
| 'call'
|
66
70
|
| 'createContractEventFilter'
|
67
71
|
| 'createEventFilter'
|
@@ -86,7 +90,7 @@ type ExtendableProtectedActions = Pick<
|
|
86
90
|
| 'watchBlockNumber'
|
87
91
|
| 'watchContractEvent'
|
88
92
|
> &
|
89
|
-
Pick<WalletActions, 'sendTransaction' | 'writeContract'>
|
93
|
+
Pick<WalletActions<chain, account>, 'sendTransaction' | 'writeContract'>
|
90
94
|
|
91
95
|
// TODO: Move `transport` to slot index 2 since `chain` and `account` used more frequently.
|
92
96
|
// Otherwise, we end up with a lot of `Client<Transport, chain, account>` in actions.
|
@@ -99,7 +103,8 @@ export type Client<
|
|
99
103
|
> = Client_Base<transport, chain, account, rpcSchema> &
|
100
104
|
(extended extends Extended ? extended : unknown) & {
|
101
105
|
extend: <
|
102
|
-
const client extends Extended &
|
106
|
+
const client extends Extended &
|
107
|
+
Partial<ExtendableProtectedActions<transport, chain, account>>,
|
103
108
|
>(
|
104
109
|
fn: (
|
105
110
|
client: Client<transport, chain, account, rpcSchema, extended>,
|
@@ -66,11 +66,7 @@ export function createPublicClient<
|
|
66
66
|
chain extends Chain | undefined = undefined,
|
67
67
|
>(
|
68
68
|
parameters: PublicClientConfig<transport, chain>,
|
69
|
-
): PublicClient<transport, chain>
|
70
|
-
|
71
|
-
export function createPublicClient(
|
72
|
-
parameters: PublicClientConfig,
|
73
|
-
): PublicClient {
|
69
|
+
): PublicClient<transport, chain> {
|
74
70
|
const { key = 'public', name = 'Public Client' } = parameters
|
75
71
|
const client = createClient({
|
76
72
|
...parameters,
|
package/errors/version.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export const version = '2.7.
|
1
|
+
export const version = '2.7.6'
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "viem",
|
3
3
|
"description": "TypeScript Interface for Ethereum",
|
4
|
-
"version": "2.7.
|
4
|
+
"version": "2.7.6",
|
5
5
|
"main": "./_cjs/index.js",
|
6
6
|
"module": "./_esm/index.js",
|
7
7
|
"types": "./_types/index.d.ts",
|
@@ -81,39 +81,17 @@
|
|
81
81
|
},
|
82
82
|
"typesVersions": {
|
83
83
|
"*": {
|
84
|
-
"accounts": [
|
85
|
-
|
86
|
-
],
|
87
|
-
"
|
88
|
-
|
89
|
-
],
|
90
|
-
"
|
91
|
-
|
92
|
-
],
|
93
|
-
"
|
94
|
-
|
95
|
-
],
|
96
|
-
"chains/utils": [
|
97
|
-
"./_types/chains/utils.d.ts"
|
98
|
-
],
|
99
|
-
"ens": [
|
100
|
-
"./_types/ens/index.d.ts"
|
101
|
-
],
|
102
|
-
"node": [
|
103
|
-
"./_types/node/index.d.ts"
|
104
|
-
],
|
105
|
-
"op-stack": [
|
106
|
-
"./_types/chains/opStack/index.d.ts"
|
107
|
-
],
|
108
|
-
"utils": [
|
109
|
-
"./_types/utils/index.d.ts"
|
110
|
-
],
|
111
|
-
"window": [
|
112
|
-
"./_types/window/index.d.ts"
|
113
|
-
],
|
114
|
-
"zksync": [
|
115
|
-
"./_types/chains/zksync/index.d.ts"
|
116
|
-
]
|
84
|
+
"accounts": ["./_types/accounts/index.d.ts"],
|
85
|
+
"actions": ["./_types/actions/index.d.ts"],
|
86
|
+
"celo": ["./_types/chains/celo/index.d.ts"],
|
87
|
+
"chains": ["./_types/chains/index.d.ts"],
|
88
|
+
"chains/utils": ["./_types/chains/utils.d.ts"],
|
89
|
+
"ens": ["./_types/ens/index.d.ts"],
|
90
|
+
"node": ["./_types/node/index.d.ts"],
|
91
|
+
"op-stack": ["./_types/chains/opStack/index.d.ts"],
|
92
|
+
"utils": ["./_types/utils/index.d.ts"],
|
93
|
+
"window": ["./_types/window/index.d.ts"],
|
94
|
+
"zksync": ["./_types/chains/zksync/index.d.ts"]
|
117
95
|
}
|
118
96
|
},
|
119
97
|
"peerDependencies": {
|
@@ -137,21 +115,12 @@
|
|
137
115
|
"license": "MIT",
|
138
116
|
"homepage": "https://viem.sh",
|
139
117
|
"repository": "wevm/viem",
|
140
|
-
"authors": [
|
141
|
-
"awkweb.eth",
|
142
|
-
"jxom.eth"
|
143
|
-
],
|
118
|
+
"authors": ["awkweb.eth", "jxom.eth"],
|
144
119
|
"funding": [
|
145
120
|
{
|
146
121
|
"type": "github",
|
147
122
|
"url": "https://github.com/sponsors/wevm"
|
148
123
|
}
|
149
124
|
],
|
150
|
-
"keywords": [
|
151
|
-
|
152
|
-
"ethereum",
|
153
|
-
"dapps",
|
154
|
-
"wallet",
|
155
|
-
"web3"
|
156
|
-
]
|
157
|
-
}
|
125
|
+
"keywords": ["eth", "ethereum", "dapps", "wallet", "web3"]
|
126
|
+
}
|
package/types/chain.ts
CHANGED
@@ -10,7 +10,7 @@ import type {
|
|
10
10
|
TransactionSerializable,
|
11
11
|
TransactionSerializableGeneric,
|
12
12
|
} from '../types/transaction.js'
|
13
|
-
import type { IsUndefined, Prettify } from '../types/utils.js'
|
13
|
+
import type { IsNarrowable, IsUndefined, Prettify } from '../types/utils.js'
|
14
14
|
import type { FormattedBlock } from '../utils/formatters/block.js'
|
15
15
|
import type { SerializeTransactionFn } from '../utils/transaction/serializeTransaction.js'
|
16
16
|
|
@@ -236,14 +236,18 @@ export type ExtractChainFormatterReturnType<
|
|
236
236
|
chain extends Chain | undefined,
|
237
237
|
type extends keyof ChainFormatters,
|
238
238
|
fallback,
|
239
|
-
> = chain extends
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
?
|
246
|
-
|
239
|
+
> = IsNarrowable<chain, Chain> extends true
|
240
|
+
? chain extends {
|
241
|
+
formatters?:
|
242
|
+
| { [_ in type]?: infer formatter extends ChainFormatter }
|
243
|
+
| undefined
|
244
|
+
}
|
245
|
+
? chain['formatters'] extends undefined
|
246
|
+
? fallback
|
247
|
+
: IsNarrowable<formatter, ChainFormatter<type>> extends true
|
248
|
+
? ReturnType<formatter['format']>
|
249
|
+
: fallback
|
250
|
+
: fallback
|
247
251
|
: fallback
|
248
252
|
|
249
253
|
export type DeriveChain<
|