@wowok/wowok 2.3.6 → 2.3.7
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/esm/{arb-2owO8QCe.mjs → arb-NYOQp2oH.mjs} +1 -1
- package/dist/esm/{base-CqJOIkV0.mjs → base-fdHKX-jS.mjs} +1 -1
- package/dist/esm/bcs/index.d.mts +1 -1
- package/dist/esm/bridge-AHnWGzN1.mjs +1 -0
- package/dist/esm/{call-dSiG7mGI.mjs → call-7FZbEsRl.mjs} +1 -1
- package/dist/esm/client/index.d.mts +1 -1
- package/dist/esm/client/index.mjs +1 -1
- package/dist/esm/{client-DQgiytaX.mjs → client-VxiBQfen.mjs} +1 -1
- package/dist/esm/common-fDv-Cuzq.mjs +1 -1
- package/dist/esm/cryptography/index.d.mts +1 -1
- package/dist/esm/cryptography/index.mjs +1 -1
- package/dist/esm/ed25519-BrJWQ45w.mjs +1 -1
- package/dist/esm/evm-account-XzrSThfS.d.mts +185 -0
- package/dist/esm/{falcon512-B4y-EH2f.mjs → falcon512-J8Pe5emy.mjs} +1 -1
- package/dist/esm/faucet/index.mjs +1 -1
- package/dist/esm/graphql/index.d.mts +1 -1
- package/dist/esm/graphql/index.mjs +1 -1
- package/dist/esm/{graphql-VjRsBYDR.mjs → graphql-BXSiG4J0.mjs} +1 -1
- package/dist/esm/grpc/index.d.mts +1 -1
- package/dist/esm/grpc/index.mjs +1 -1
- package/dist/esm/{grpc-3W7t1ABm.mjs → grpc-clMX5Wo0.mjs} +1 -1
- package/dist/esm/{index-0oufp-hy.d.mts → index-Q3W63gcw.d.mts} +869 -10
- package/dist/esm/{index-B-cxGU73.d.mts → index-o_aMVwsK.d.mts} +6 -6
- package/dist/esm/index.d.mts +6 -3
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/jsonRpc/index.d.mts +1 -1
- package/dist/esm/jsonRpc/index.mjs +1 -1
- package/dist/esm/keypair-1v1DkI3F.mjs +1 -1
- package/dist/esm/keypairs/ed25519/index.d.mts +1 -1
- package/dist/esm/keypairs/ed25519/index.mjs +1 -1
- package/dist/esm/keypairs/falcon512/index.d.mts +1 -1
- package/dist/esm/keypairs/falcon512/index.mjs +1 -1
- package/dist/esm/keypairs/passkey/index.d.mts +1 -1
- package/dist/esm/keypairs/passkey/index.mjs +1 -1
- package/dist/esm/keypairs/secp256k1/index.d.mts +1 -1
- package/dist/esm/keypairs/secp256k1/index.mjs +1 -1
- package/dist/esm/keypairs/secp256r1/index.d.mts +1 -1
- package/dist/esm/keypairs/secp256r1/index.mjs +1 -1
- package/dist/esm/local-c-Tbdkfa.mjs +1 -1
- package/dist/esm/{messenger-TAmGUke8.mjs → messenger-Bokr4-T2.mjs} +1 -1
- package/dist/esm/{messenger-api-DsaZHAwH.mjs → messenger-api-1m7Lp85p.mjs} +1 -1
- package/dist/esm/multisig/index.d.mts +1 -1
- package/dist/esm/multisig/index.mjs +1 -1
- package/dist/esm/network-DOe6BgcD.mjs +1 -0
- package/dist/esm/networks-DhrBVvu6.d.mts +140 -0
- package/dist/esm/{object-DanBjfag.mjs → object-DzsQI-0e.mjs} +1 -1
- package/dist/esm/passkey-Dh6btBAD.mjs +1 -1
- package/dist/esm/{proof-BcgqR0Iw.mjs → proof-DER5SXw4.mjs} +1 -1
- package/dist/esm/publickey-BPT9QiGv.mjs +1 -1
- package/dist/esm/{publickey-Bkjn-YAu.mjs → publickey-S1fGFYJX.mjs} +1 -1
- package/dist/esm/publickey-qLbcTInT.mjs +1 -1
- package/dist/esm/publickey-zB4h0HOi.mjs +1 -1
- package/dist/esm/{received-D05WgVPr.mjs → received-D7jEPxlE.mjs} +1 -1
- package/dist/esm/rlp-BcIAoIV4.d.mts +51 -0
- package/dist/esm/rolldown-runtime-DkIiUugF.mjs +1 -0
- package/dist/esm/secp256k1-BZUdTK1D.mjs +1 -1
- package/dist/esm/secp256r1-COXOSFIF.mjs +1 -1
- package/dist/esm/{service-CYep3EO9.mjs → service-W7-dgV57.mjs} +1 -1
- package/dist/esm/transactions/index.d.mts +1 -1
- package/dist/esm/transactions/index.mjs +1 -1
- package/dist/esm/transactions-CDWnTSTU.mjs +1 -1
- package/dist/esm/{util-CcMp5dot.mjs → util-B3X9acB0.mjs} +1 -1
- package/dist/esm/utils/index.mjs +1 -1
- package/dist/esm/utils-IlS3fpdQ.mjs +1 -1
- package/dist/esm/verify/index.d.mts +1 -1
- package/dist/esm/verify/index.mjs +1 -1
- package/dist/esm/w/call/allocation.d.mts +1 -1
- package/dist/esm/w/call/allocation.mjs +1 -1
- package/dist/esm/w/call/arbitration.d.mts +1 -1
- package/dist/esm/w/call/arbitration.mjs +1 -1
- package/dist/esm/w/call/base.d.mts +1 -1
- package/dist/esm/w/call/base.mjs +1 -1
- package/dist/esm/w/call/bridge.d.mts +2 -0
- package/dist/esm/w/call/bridge.mjs +1 -0
- package/dist/esm/w/call/demand.d.mts +1 -1
- package/dist/esm/w/call/demand.mjs +1 -1
- package/dist/esm/w/call/guard.d.mts +1 -1
- package/dist/esm/w/call/guard.mjs +1 -1
- package/dist/esm/w/call/index.d.mts +2 -2
- package/dist/esm/w/call/index.mjs +1 -1
- package/dist/esm/w/call/machine.d.mts +1 -1
- package/dist/esm/w/call/machine.mjs +1 -1
- package/dist/esm/w/call/passport.d.mts +1 -1
- package/dist/esm/w/call/passport.mjs +1 -1
- package/dist/esm/w/call/payment.d.mts +1 -1
- package/dist/esm/w/call/payment.mjs +1 -1
- package/dist/esm/w/call/permission.d.mts +1 -1
- package/dist/esm/w/call/permission.mjs +1 -1
- package/dist/esm/w/call/progress.d.mts +1 -1
- package/dist/esm/w/call/progress.mjs +1 -1
- package/dist/esm/w/call/repository.d.mts +1 -1
- package/dist/esm/w/call/repository.mjs +1 -1
- package/dist/esm/w/call/reward.d.mts +1 -1
- package/dist/esm/w/call/reward.mjs +1 -1
- package/dist/esm/w/call/service.d.mts +1 -1
- package/dist/esm/w/call/service.mjs +1 -1
- package/dist/esm/w/call/treasury.d.mts +1 -1
- package/dist/esm/w/call/treasury.mjs +1 -1
- package/dist/esm/w/common.d.mts +1 -1
- package/dist/esm/w/common.mjs +1 -1
- package/dist/esm/w/index.d.mts +5 -2
- package/dist/esm/w/index.mjs +1 -1
- package/dist/esm/w/local/account.d.mts +1 -1
- package/dist/esm/w/local/account.mjs +1 -1
- package/dist/esm/w/local/config.mjs +1 -1
- package/dist/esm/w/local/evm/networks.d.mts +2 -0
- package/dist/esm/w/local/evm/networks.mjs +1 -0
- package/dist/esm/w/local/evm/rlp.d.mts +2 -0
- package/dist/esm/w/local/evm/rlp.mjs +1 -0
- package/dist/esm/w/local/evm-account.d.mts +3 -0
- package/dist/esm/w/local/evm-account.mjs +1 -0
- package/dist/esm/w/local/index.d.mts +5 -2
- package/dist/esm/w/local/index.mjs +1 -1
- package/dist/esm/w/local/local.mjs +1 -1
- package/dist/esm/w/local/storage.mjs +1 -1
- package/dist/esm/w/local/token.d.mts +1 -1
- package/dist/esm/w/local/token.mjs +1 -1
- package/dist/esm/w/local/util.mjs +1 -1
- package/dist/esm/w/local/wip.mjs +1 -1
- package/dist/esm/w/messenger/index.d.mts +1 -1
- package/dist/esm/w/messenger/index.mjs +1 -1
- package/dist/esm/w/messenger/messenger-api.d.mts +1 -1
- package/dist/esm/w/messenger/messenger-api.mjs +1 -1
- package/dist/esm/w/messenger/messenger.d.mts +1 -1
- package/dist/esm/w/messenger/messenger.mjs +1 -1
- package/dist/esm/w/messenger/pq/crypto.mjs +1 -1
- package/dist/esm/w/messenger/storage.d.mts +1 -1
- package/dist/esm/w/messenger/storage.mjs +1 -1
- package/dist/esm/w/messenger/types.d.mts +1 -1
- package/dist/esm/w/messenger/types.mjs +1 -1
- package/dist/esm/w/query/index.d.mts +1 -1
- package/dist/esm/w/query/index.mjs +1 -1
- package/dist/esm/w/query/object.d.mts +1 -1
- package/dist/esm/w/query/object.mjs +1 -1
- package/dist/esm/w-5GiAI3sP.mjs +1 -0
- package/package.json +13 -1
- package/dist/esm/network-BAF8qD1u.mjs +0 -1
- package/dist/esm/rolldown-runtime-D7D4PA-g.mjs +0 -1
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
//#region src/w/local/evm/networks.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* EVM 多链网络配置与注册表
|
|
4
|
+
*
|
|
5
|
+
* 设计目标:
|
|
6
|
+
* - 一份配置覆盖一条链的所有参数(chainId、rpcUrls、explorer、确认数、gas 策略、超时等)
|
|
7
|
+
* - 通过 EvmNetworkRegistry 单例集中管理,支持按 chainId / name 查找
|
|
8
|
+
* - 智能维护:备用 RPC 故障转移、chainId 缓存、健康检查
|
|
9
|
+
* - 与 BridgeConfig 协同:bridge 初始化时把 EvmChainConfig 注册进来,
|
|
10
|
+
* EvmAccount 调用时即可自动找到对应网络的 RPC,无需重复传参
|
|
11
|
+
* - 预留 L2 扩展:每条 L2 都是独立的 EvmNetworkConfig
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* 单条 EVM 链的完整网络配置
|
|
15
|
+
*
|
|
16
|
+
* 一条链 = 一个 EvmNetworkConfig。
|
|
17
|
+
* ETH 主网、未来 Arbitrum/Optimism/Base 等 L2 或 EVM 兼容链各自一份配置。
|
|
18
|
+
* 本 SDK 不支持测试网(如 Sepolia / Holesky);如需测试请使用主网或 L2。
|
|
19
|
+
*/
|
|
20
|
+
interface EvmNetworkConfig {
|
|
21
|
+
/** 网络别名(小写),如 "mainnet" / "arbitrum" / "optimism" / "base" */
|
|
22
|
+
name: string;
|
|
23
|
+
/** EVM chainId(用于交易签名) */
|
|
24
|
+
chainId: number;
|
|
25
|
+
/** RPC URL 列表(顺序尝试,第一个为主,其余备用故障转移) */
|
|
26
|
+
rpcUrls: string[];
|
|
27
|
+
/** 区块浏览器 URL(可选,用于查询交易) */
|
|
28
|
+
explorerUrl?: string;
|
|
29
|
+
/** 交易确认所需区块数(默认 1;L2 通常 1 即可) */
|
|
30
|
+
confirmations?: number;
|
|
31
|
+
/** 是否强制使用 Legacy 交易(某些 L2 或 EVM 兼容链不支持 EIP-1559) */
|
|
32
|
+
useLegacy?: boolean;
|
|
33
|
+
/** gas limit 估算倍数(默认 1.2,留余量) */
|
|
34
|
+
gasLimitMultiplier?: number;
|
|
35
|
+
/** maxPriorityFeePerGas 下限(wei,防止估算为 0) */
|
|
36
|
+
minPriorityFee?: bigint;
|
|
37
|
+
/** 单次 RPC 请求超时(ms) */
|
|
38
|
+
rpcTimeoutMs?: number;
|
|
39
|
+
/** 等待交易确认总超时(ms) */
|
|
40
|
+
txConfirmTimeoutMs?: number;
|
|
41
|
+
/** 轮询交易回执间隔(ms) */
|
|
42
|
+
pollIntervalMs?: number;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* ETH 主网默认配置
|
|
46
|
+
*
|
|
47
|
+
* NOTE: rpcUrls 使用公共 RPC 仅作占位,生产环境建议通过
|
|
48
|
+
* `EvmNetworkRegistry.Instance().register(...)` 覆盖为付费 RPC(Alchemy/Infura/自建节点)。
|
|
49
|
+
*/
|
|
50
|
+
declare const ETH_MAINNET: EvmNetworkConfig;
|
|
51
|
+
/**
|
|
52
|
+
* L2 / EVM 兼容链预留配置模板(当前不启用,仅占位)
|
|
53
|
+
* 启用时取消注释并注册到 Registry。
|
|
54
|
+
*
|
|
55
|
+
* 说明:本 SDK 不支持 EVM 测试网(如 Sepolia / Holesky)。
|
|
56
|
+
* 未来扩展方向为 Arbitrum / Optimism / Base 等 L2 主网。
|
|
57
|
+
*/
|
|
58
|
+
/**
|
|
59
|
+
* EVM 网络注册表
|
|
60
|
+
*
|
|
61
|
+
* 使用方式:
|
|
62
|
+
* const registry = EvmNetworkRegistry.Instance();
|
|
63
|
+
* registry.register(ETH_MAINNET);
|
|
64
|
+
* registry.setDefault("mainnet");
|
|
65
|
+
* const net = await registry.resolve("mainnet"); // 或 1(chainId)
|
|
66
|
+
* const net = await registry.resolve(); // 默认网络
|
|
67
|
+
*
|
|
68
|
+
* 智能维护:
|
|
69
|
+
* - RPC 故障转移:主 RPC 失败自动切换备用
|
|
70
|
+
* - chainId 缓存:避免重复 RPC 调用
|
|
71
|
+
* - 健康检查:ping RPC 确认可用性
|
|
72
|
+
*/
|
|
73
|
+
declare class EvmNetworkRegistry {
|
|
74
|
+
private static _instance;
|
|
75
|
+
/** 按 chainId 索引 */
|
|
76
|
+
private byChainId;
|
|
77
|
+
/** 按小写 name 索引 */
|
|
78
|
+
private byName;
|
|
79
|
+
/** 默认网络 chainId */
|
|
80
|
+
private defaultChainId;
|
|
81
|
+
/** chainId 缓存(RPC 返回的真实 chainId,避免重复查询) */
|
|
82
|
+
private chainIdCache;
|
|
83
|
+
/** RPC 故障转移状态:url → 下次重试时间 */
|
|
84
|
+
private unhealthyRpc;
|
|
85
|
+
private constructor();
|
|
86
|
+
static Instance(): EvmNetworkRegistry;
|
|
87
|
+
/** 注册或覆盖一条网络配置 */
|
|
88
|
+
register(config: EvmNetworkConfig): void;
|
|
89
|
+
/** 注销一条网络 */
|
|
90
|
+
unregister(chainIdOrName: number | string): void;
|
|
91
|
+
/** 设置默认网络 */
|
|
92
|
+
setDefault(chainIdOrName: number | string): void;
|
|
93
|
+
/** 直接获取配置(不触发 RPC) */
|
|
94
|
+
get(chainIdOrName?: number | string): EvmNetworkConfig | undefined;
|
|
95
|
+
/** 列出所有已注册网络 */
|
|
96
|
+
list(): EvmNetworkConfig[];
|
|
97
|
+
/** 获取默认网络(必须存在) */
|
|
98
|
+
getDefault(): EvmNetworkConfig;
|
|
99
|
+
/**
|
|
100
|
+
* 解析网络配置:
|
|
101
|
+
* 1. 若传入 chainId/name 直接命中注册表,返回
|
|
102
|
+
* 2. 若传入 rpcUrl,从缓存查 chainId 或现场查询
|
|
103
|
+
*
|
|
104
|
+
* @param network chainId | name | rpcUrl | undefined(用默认)
|
|
105
|
+
*/
|
|
106
|
+
resolve(network?: number | string): Promise<EvmNetworkConfig>;
|
|
107
|
+
/**
|
|
108
|
+
* 选出当前可用的 RPC URL(跳过被标记为不可用的)
|
|
109
|
+
*/
|
|
110
|
+
pickHealthyRpc(cfg: EvmNetworkConfig): string;
|
|
111
|
+
/** 标记 RPC 不可用(一段时间后自动恢复) */
|
|
112
|
+
markUnhealthy(url: string, retryAfterMs?: number): void;
|
|
113
|
+
/** 标记 RPC 恢复健康 */
|
|
114
|
+
markHealthy(url: string): void;
|
|
115
|
+
/** 健康检查(ping RPC 节点) */
|
|
116
|
+
ping(url: string, timeoutMs?: number): Promise<boolean>;
|
|
117
|
+
/** 通过 RPC 查询 chainId(带缓存) */
|
|
118
|
+
queryChainIdFromRpc(rpcUrl: string): Promise<number>;
|
|
119
|
+
/** 清空 chainId 缓存(切换节点后调用) */
|
|
120
|
+
clearChainIdCache(): void;
|
|
121
|
+
private buildTempConfig;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* BridgeConfig 中的 EvmChainConfig 与 Registry 的 EvmNetworkConfig 字段不完全相同:
|
|
125
|
+
* - EvmChainConfig 含 bridge 合约地址(bridge 专用)
|
|
126
|
+
* - EvmNetworkConfig 含 gas/explorer/超时等通用参数(账户操作通用)
|
|
127
|
+
*
|
|
128
|
+
* 这里提供一个桥接函数:把 BridgeConfig 中的 Evm 链注册到 Registry,
|
|
129
|
+
* 这样后续 EvmAccount 操作时通过 chainId 即可自动找到对应 RPC。
|
|
130
|
+
*/
|
|
131
|
+
declare function registerBridgeEvmNetworks(params: {
|
|
132
|
+
/** EVM 链配置(含 chainId、rpcUrl、bridge 合约地址) */evmChain: {
|
|
133
|
+
chainId: number;
|
|
134
|
+
rpcUrl: string;
|
|
135
|
+
}; /** 网络别名(可选,默认用 "chain-<chainId>") */
|
|
136
|
+
name?: string; /** 是否设为默认网络 */
|
|
137
|
+
setAsDefault?: boolean;
|
|
138
|
+
}): EvmNetworkConfig;
|
|
139
|
+
//#endregion
|
|
140
|
+
export { registerBridgeEvmNetworks as i, EvmNetworkConfig as n, EvmNetworkRegistry as r, ETH_MAINNET as t };
|