@w3lib/solana-batch-call 0.2.2 → 0.3.0

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 (78) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +132 -2
  3. package/dist/client.d.ts +4 -0
  4. package/dist/client.d.ts.map +1 -1
  5. package/dist/client.js +8 -0
  6. package/dist/client.js.map +1 -1
  7. package/dist/index.d.ts +1 -1
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +1 -1
  10. package/dist/index.js.map +1 -1
  11. package/dist/layout.d.ts +5 -0
  12. package/dist/layout.d.ts.map +1 -1
  13. package/dist/layout.js +16 -0
  14. package/dist/layout.js.map +1 -1
  15. package/dist/lp.d.ts +123 -0
  16. package/dist/lp.d.ts.map +1 -0
  17. package/dist/lp.js +631 -0
  18. package/dist/lp.js.map +1 -0
  19. package/dist/lpMath.d.ts +37 -0
  20. package/dist/lpMath.d.ts.map +1 -0
  21. package/dist/lpMath.js +176 -0
  22. package/dist/lpMath.js.map +1 -0
  23. package/dist/shortcuts.d.ts +8 -0
  24. package/dist/shortcuts.d.ts.map +1 -1
  25. package/dist/shortcuts.js +1 -1
  26. package/dist/shortcuts.js.map +1 -1
  27. package/dist/subpaths/lp.d.ts +31 -0
  28. package/dist/subpaths/lp.d.ts.map +1 -0
  29. package/dist/subpaths/lp.js +33 -0
  30. package/dist/subpaths/lp.js.map +1 -0
  31. package/dist/subpaths/write.d.ts +22 -0
  32. package/dist/subpaths/write.d.ts.map +1 -0
  33. package/dist/subpaths/write.js +19 -0
  34. package/dist/subpaths/write.js.map +1 -0
  35. package/dist/write/batch.d.ts +41 -0
  36. package/dist/write/batch.d.ts.map +1 -0
  37. package/dist/write/batch.js +46 -0
  38. package/dist/write/batch.js.map +1 -0
  39. package/dist/write/collect.d.ts +50 -0
  40. package/dist/write/collect.d.ts.map +1 -0
  41. package/dist/write/collect.js +220 -0
  42. package/dist/write/collect.js.map +1 -0
  43. package/dist/write/instructions.d.ts +16 -0
  44. package/dist/write/instructions.d.ts.map +1 -0
  45. package/dist/write/instructions.js +89 -0
  46. package/dist/write/instructions.js.map +1 -0
  47. package/dist/write/send.d.ts +115 -0
  48. package/dist/write/send.d.ts.map +1 -0
  49. package/dist/write/send.js +720 -0
  50. package/dist/write/send.js.map +1 -0
  51. package/dist/write/signer.d.ts +94 -0
  52. package/dist/write/signer.d.ts.map +1 -0
  53. package/dist/write/signer.js +197 -0
  54. package/dist/write/signer.js.map +1 -0
  55. package/dist/write/transaction.d.ts +75 -0
  56. package/dist/write/transaction.d.ts.map +1 -0
  57. package/dist/write/transaction.js +133 -0
  58. package/dist/write/transaction.js.map +1 -0
  59. package/dist/write/transfer.d.ts +72 -0
  60. package/dist/write/transfer.d.ts.map +1 -0
  61. package/dist/write/transfer.js +127 -0
  62. package/dist/write/transfer.js.map +1 -0
  63. package/package.json +23 -12
  64. package/src/client.ts +10 -0
  65. package/src/index.ts +1 -0
  66. package/src/layout.ts +17 -0
  67. package/src/lp.ts +849 -0
  68. package/src/lpMath.ts +205 -0
  69. package/src/shortcuts.ts +1 -1
  70. package/src/subpaths/lp.ts +62 -0
  71. package/src/subpaths/write.ts +29 -0
  72. package/src/write/batch.ts +78 -0
  73. package/src/write/collect.ts +286 -0
  74. package/src/write/instructions.ts +98 -0
  75. package/src/write/send.ts +876 -0
  76. package/src/write/signer.ts +314 -0
  77. package/src/write/transaction.ts +181 -0
  78. package/src/write/transfer.ts +189 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.3.0
4
+
5
+ ### 新功能
6
+
7
+ - 批量写操作,子路径 `@w3lib/solana-batch-call/write`(只做查询时打包不会带上;不依赖 Solana SDK,私钥用 WebCrypto 的 Ed25519 签名,没有新增依赖):
8
+ - `batchTransfer`:一对多转账(SOL / SPL Token / Token-2022,可混合),多个收款人打包进同一笔交易,收款人没有 ATA 时自动创建
9
+ - `batchCollect`:多钱包归集,`feePayer` 付全部手续费(子钱包不需要 SOL),可选关闭清空的代币账户、扫空 SOL
10
+ - `batchCall`:批量调用程序,指令可以是 web3.js / @solana/kit / 本库格式
11
+ - 每笔先模拟,失败的调用单独剔除;计算单元上限按模拟结果设置,优先费用默认按最近费用自动设置;blockhash 过期未上链时自动换新 blockhash 重发
12
+ - 浏览器钱包:Wallet Standard 钱包、@solana/wallet-adapter 的 adapter / useWallet()、@solana/kit 的 TransactionSigner,可以和私钥混用;同一批交易钱包只确认一次
13
+ - 指令工具:`systemTransfer`、`transferChecked`、`createAssociatedTokenAccountIdempotent`、`closeAccount`、`setComputeUnitLimit`、`setComputeUnitPrice`
14
+ - LP 仓位,子路径 `@w3lib/solana-batch-call/lp`:`getLpPositions` / `lpPositions` 查一个地址的 Raydium CLMM、Orca Whirlpool 仓位 NFT 和 Raydium AMM v4、CPMM 的 LP 代币,两种代币的数量、未领取手续费、可选美元价值(DefiLlama)。账户布局和计算用主网快照与官方 SDK 逐位核对;免费公共节点可以用 `mints` / `pools` 指定代币和池子
15
+ - `parseUnits`(`formatUnits` 的逆运算);`SolanaClient.isNativeMint(mint)`、`SolanaClient.commitment`
16
+
3
17
  ## 0.2.2
4
18
 
5
19
  - 修复:服务端临时故障(-32000 server busy / overloaded / temporarily unavailable / timeout,或 HTTP 5xx + -32603)不再暂停批量 10 分钟,按节点故障处理、换节点(与限频一样不降级,降级只会加重负载)。批量收到 5xx + -32603 时先重试一次批量(偶发故障这次就成功);仍失败时逐条发送,逐条成功说明节点用 5xx 拒绝批量,才暂停批量。5xx 下的其他错误(方法数量超限、账户数超限、参数错误、minContextSlot 等)照常按类型处理
package/README.md CHANGED
@@ -1,11 +1,13 @@
1
1
  # @w3lib/solana-batch-call
2
2
 
3
- Solana 批量读取库:余额(SOL / SPL Token / Token-2022)、代币详情、NFT。不依赖 Solana SDK,直接发 JSON-RPC。
3
+ Solana 批量读取库:余额(SOL / SPL Token / Token-2022)、代币详情、NFT、[LP 仓位](#lp-仓位)(子路径 `/lp`);以及[批量写操作](#批量写操作)(一对多转账、多钱包归集、批量调用程序,子路径 `/write`)。不依赖 Solana SDK,直接发 JSON-RPC。
4
4
 
5
5
  ```bash
6
6
  pnpm add @w3lib/solana-batch-call
7
7
  ```
8
8
 
9
+ **在线 demo**:<https://web3-lib.github.io/libs/solana/>(余额、代币信息、资产列表、NFT、LP 仓位,显示每次查询实际发出的 RPC 调用数)。本地运行:`pnpm --filter @w3lib/solana-batch-call demo`(http://localhost:5175)
10
+
9
11
  - **一次请求查一批**:账户读取用 `getMultipleAccounts`(自动去重、按 100 个一组拆分、最多同时 3 个请求);同一 tick 内发起的 RPC 调用合并成一个 JSON-RPC 批量请求
10
12
  - **免费节点也能查余额**:指定代币时在本地推导关联代币账户(ATA)地址,和 mint 账户一起用 `getMultipleAccounts` 读完,不需要 `getTokenAccountsByOwner` 这类索引方法
11
13
  - **只查主币不读账户数据**:SOL 余额(`getSolBalances`、单币模式里的主币)用带 `dataSlice` 的 `getMultipleAccounts` 只取 lamports,与代币账户分开两组、同一个批量请求发出——钱包是数据很大的程序账户时也不会拖慢或超时
@@ -87,6 +89,53 @@ await getOwnerNfts(owner) // 某地址持有的全部 NFT(需要支持索
87
89
 
88
90
  需要支持 `getTokenAccountsByOwner` 的节点,内置的免费公共节点大多不支持。
89
91
 
92
+ ## LP 仓位
93
+
94
+ 查一个地址的流动性仓位(子路径 `@w3lib/solana-batch-call/lp`,不用时打包不会带上,约 14KB / gzip 约 5.5KB):**Raydium CLMM**、**Orca Whirlpool** 的仓位 NFT,**Raydium AMM v4**、**Raydium CPMM** 的 LP 代币。返回两种代币的数量、未领取的手续费(集中流动性),可选美元价值。
95
+
96
+ ```ts
97
+ import { getLpPositions } from '@w3lib/solana-batch-call/lp'
98
+
99
+ // 扫描地址的全部代币账户找仓位 NFT 和 LP 代币(需要支持 getTokenAccountsByOwner 的节点)
100
+ await getLpPositions(owner, { provider: 'https://my-rpc.example' })
101
+ // [
102
+ // { type: 'clmm', protocol: 'raydium-clmm', protocolName: 'Raydium CLMM', pool: '3ucNos…', positionMint: '6MZXir…', position: '18Pfqm…',
103
+ // token0: { mint: So111…, symbol: 'SOL', decimals: 9 }, token1: { mint: EPjF…, symbol: 'USDC', decimals: 6 },
104
+ // amount0: '140261364355', amount0Formatted: '140.261364355', amount1Formatted: '6852.200542',
105
+ // fees0Formatted: '0.546399344', fees1Formatted: '59.504301', fee: 400, tickSpacing: 1, tickLower: -23362, tickUpper: -19392, tick: -22166,
106
+ // inRange: true, liquidity: '357565923571', price: 108.99, priceLower: 96.7, priceUpper: 143.8 },
107
+ // { type: 'amm', protocol: 'raydium-amm', pool: '58oQCh…', lpMint: '8HoQne…', balance, totalSupply, share: 0.18, amount0Formatted, amount1Formatted, … },
108
+ // ]
109
+
110
+ // 免费公共节点:指定仓位 NFT / LP 代币的 mint(按 ATA 读余额),AMM v4 / CPMM 再指定池子
111
+ await getLpPositions(owner, { mints: [positionNft, lpMint], pools: [ammPool] })
112
+
113
+ // 美元价值(DefiLlama,默认不查):valueUsd、feesUsd,结果按价值排序
114
+ await getLpPositions(owner, { provider, prices: true })
115
+ ```
116
+
117
+ | 选项 | 说明 |
118
+ | --- | --- |
119
+ | `mints` | 只看这些代币(仓位 NFT 的 mint、LP 代币的 mint),按 ATA 读余额,免费节点也能用。不传时扫描全部代币账户(需要支持 `getTokenAccountsByOwner` 的节点) |
120
+ | `pools` | Raydium AMM v4 / CPMM 的池子地址。LP 代币要找到对应的池子:不在这里的按 LP mint 用 `getProgramAccounts` 查找(免费公共节点大多不支持,这时报错并提示传 `pools`,或用 `protocols` 只查 CLMM / Whirlpool);不是 AMM v4 / CPMM 池子的地址会报错;不持有 Raydium 的 LP 代币时不会用到 |
121
+ | `protocols` | 只查某些协议:`'raydium-clmm'`、`'orca-whirlpool'`、`'raydium-amm'`、`'raydium-cpmm'`,默认全部 |
122
+ | `includeClosed` | 返回已清空的仓位(流动性为 0、手续费也领完,NFT 还在),默认 false |
123
+ | `prices` | `true` 用 DefiLlama,也可以传自己的 `SolanaPriceSource`;默认不查。价格源出错时照样返回仓位,只是 `valueUsd` / `feesUsd` 为 null |
124
+ | `onPriceError` | 价格源出错时调用(传入错误),用来区分“价格服务出错”和“代币没有价格” |
125
+ | `fetch` | 自定义 fetch(如走代理):快捷函数里同时用于节点请求和查价 |
126
+ | `signal` | 取消查询(AbortSignal) |
127
+
128
+ **怎么找仓位**:精度 0、数量 1 的代币按 PDA `["position", mint]` 推导 Raydium / Orca 的仓位账户,存在就是仓位;其他代币读 mint,mint 权限是 AMM v4(`5Q544f…`)或 CPMM 的权限地址时是 Raydium 的 LP 代币。整个查询一般 4~5 次请求(扫描 / 读余额、仓位账户和 mint、池子、tick 数组和金库、代币信息),每次都是批量读取。
129
+
130
+ **数值**(与链上程序的计算逐位一致,测试用主网账户快照与官方 SDK 核对过):
131
+
132
+ - 集中流动性:数量是撤出全部流动性能拿到的数量(向下取整,不含手续费);手续费 = 已记账的 + 流动性 × 区间内手续费增长的变化,与程序领取时的计算相同,不含挖矿奖励。Orca 固定大小和可变大小(DynamicTickArray)的 tick 数组都支持;有流动性却读不到两端的 tick 数据时(极少见)`fees0` / `fees1` 为 null,不会只报已记账的部分
133
+ - AMM v4 / CPMM:LP 份额 × (金库余额 − 不属于 LP 的部分)向下取整,与撤出流动性时一致。AMM v4 扣掉待提取的收益(need_take_pnl),CPMM 扣掉协议 / 基金 / 创建者手续费;总量用池子记录的 LP 数量。AMM v4 的池子还能用 OpenBook 挂单时(status 不是 6 SwapOnly,现在很少见),挂单里的资金没算进来,数量会略少
134
+ - `fee` 是手续费率(百万分之一,400 = 0.04%);价格都是 token1 / token0,按精度换算的浮点数,只用于展示
135
+ - Wrapped SOL 显示为 SOL(按客户端的 `nativeMints` 配置),价格就是 SOL 的价格
136
+
137
+ **局限**:质押在农场里的 LP 代币、Orca 的仓位组合(Position Bundle)、锁仓的 Raydium 仓位(NFT 不在用户名下)查不到;Meteora 等其他 DEX 暂不支持。免费公共节点不支持扫描(`getTokenAccountsByOwner`)和按 LP mint 找池子(`getProgramAccounts`),需要传 `mints` / `pools` 或用自己的节点(官方节点 `api.mainnet-beta.solana.com` 两个方法都支持,但只能在服务端用,且按方法限频:同一个批量请求里有两个 `getTokenAccountsByOwner` 就会被拒,可以用 `new HttpRpc(url, { batch: false })` 关闭合并)。
138
+
90
139
  ## 余额的三种模式
91
140
 
92
141
  | | 指定 mints(默认,`accounts: 'ata'`) | 指定 mints + `accounts: 'all'` | 扫描(不传 mints,或 `scan: true`) |
@@ -239,6 +288,86 @@ new SolanaClient(provider?, {
239
288
 
240
289
  在 Node 里通过代理访问节点时:Node 自带的 `fetch` 默认不读 `HTTPS_PROXY`,Node 24+ 可以设置 `NODE_USE_ENV_PROXY=1`,或者通过 `fetch` 选项传入自定义实现。
241
290
 
291
+ ## 批量写操作
292
+
293
+ 子路径 `@w3lib/solana-batch-call/write`:只做查询时打包不会带上这部分代码。不依赖 Solana SDK,私钥签名用运行环境的 WebCrypto(Ed25519)。
294
+
295
+ ```ts
296
+ import { NATIVE_MINT, SolanaClient } from '@w3lib/solana-batch-call'
297
+ import { batchCall, batchCollect, batchTransfer } from '@w3lib/solana-batch-call/write'
298
+
299
+ const client = new SolanaClient('https://my-rpc.example')
300
+
301
+ // 一对多转账:多个收款人打包进同一笔交易(按 1232 字节上限自动分笔);代币收款人没有 ATA 时自动创建
302
+ await batchTransfer(client, secretKey, [
303
+ { to: a, formatted: '0.5' }, // 默认 SOL(options.token)
304
+ { to: b, token: USDC, formatted: '20' },
305
+ ])
306
+
307
+ // 归集:多个钱包 → 一个地址。feePayer 付所有手续费,子钱包不需要有 SOL,多个钱包的转账打包进同一笔交易
308
+ const { results } = await batchCollect(client, [key1, key2, key3], hotWallet, {
309
+ tokens: [USDC, NATIVE_MINT], // 包含 SOL:代币归集确认后扫空 SOL
310
+ feePayer: gasKey,
311
+ closeAccounts: true, // 关闭清空的代币账户,租金(约 0.00204 SOL)退回钱包后一起扫走
312
+ })
313
+
314
+ // 批量调用程序:每个调用是一组原子执行的指令(web3.js / @solana/kit / 本库格式都可以)
315
+ await batchCall(client, [
316
+ { from: key1, instructions: [ix1, ix2] },
317
+ { from: key2, instructions: ix3, signers: [newAccountKeypair] },
318
+ ], { feePayer: gasKey })
319
+ ```
320
+
321
+ **钱包**:base58 私钥(Phantom 等导出的 64 字节格式或 32 字节种子)、solana-keygen 的 JSON 数组、`Uint8Array`(64 字节,或 32 字节种子)、web3.js 的 `Keypair`、@solana/kit 的 `KeyPairSigner`,或自定义 `{ address, sign(message) }`(KMS / 硬件钱包,或运行环境的 WebCrypto 不支持 Ed25519 时自己用 @noble/curves 签名)。错误信息里不会带出私钥。32 字节的 base58 字符串不接受(和地址长得一样,传错成地址时会悄悄变成另一个钱包),32 字节种子请传 `Uint8Array`。
322
+
323
+ **浏览器钱包**:`from`、`feePayer`、`signers` 都可以直接传浏览器钱包,可以和私钥混用(如浏览器钱包当 `feePayer` 给一批子钱包付手续费):
324
+
325
+ ```ts
326
+ // @solana/wallet-adapter(React):传 useWallet() 的返回值,或 wallet.adapter
327
+ const wallet = useWallet()
328
+ await batchTransfer(client, wallet, recipients)
329
+
330
+ // 直接用 Wallet Standard(Phantom / Solflare / Backpack / OKX 等都实现了)
331
+ import { getWallets } from '@wallet-standard/app'
332
+ const phantom = getWallets().get().find((w) => w.name === 'Phantom') // 已连接;指定账户传 { wallet: phantom, account }
333
+ await batchCollect(client, [key1, key2], hotWallet, { tokens: [USDC], feePayer: phantom })
334
+
335
+ // @solana/kit 的 TransactionSigner(如 @solana/react 的 useWalletAccountTransactionSigner)
336
+ await batchCall(client, [{ from: signer, instructions }])
337
+ ```
338
+
339
+ - **一次确认**:同一批交易先全部模拟,再让钱包一次签完(Wallet Standard 的 `signTransaction` 一次传多笔),然后发送。所以同一批里依赖前面交易结果的调用模拟会失败(钱包签名前还没有交易发出):这类调用分成两次调用。例外:交易过期没上链时自动重发,每笔会再请求一次签名;同一个钱包出现在多个手续费支付者分组里时(如 batchCall 里不同调用的付款方不同),每组请求一次
340
+ - 钱包先签、本地私钥后签(有的钱包只在交易没有其他签名时才会往里加指令)。钱包改了交易(如加了优先费用)时:只有它一个签名者就接受(用户在钱包里确认过,这时 `fee` 为 null);还有其他签名者时这笔失败,不让本地私钥去签钱包改过的内容
341
+ - 用户拒绝时这批交易都是 `failed`,`error` 为 `'rejected by user'`
342
+ - 钱包换了交易的 blockhash 时,不知道新 blockhash 的有效期,这笔不会自动重发(误判过期再发一笔可能两笔都上链),等不到确认时为 `pending`
343
+ - 钱包需要支持 Wallet Standard(主流钱包都支持);不支持的 adapter(如部分硬件钱包 adapter)可以包成 @solana/kit 的 `TransactionPartialSigner`:`{ address, signTransactions: (txs) => … }`,`txs` 里是消息字节,返回 `{ [address]: 签名 }`
344
+
345
+ **打包与发送**:
346
+ - 同一手续费支付者的相邻调用打包进同一笔交易(`mode: 'pack'`,默认;`'tx'` 每个调用一笔)。Solana 一笔交易本来就能放多条指令,不需要 EVM 上 Disperse 那样的合约
347
+ - 每笔先模拟:失败的调用(余额不足、账户冻结、SOL 转给新地址但低于免租下限等)单独标记 `failed`,其余重新模拟后照常发送;模拟失败且同一支付者还有未确认的交易时,先等它们确认再模拟一次(后一笔依赖前一笔的结果时自动正确处理)。节点暂时的问题(限频、高度落后)会重试,不当成调用失败
348
+ - 计算单元上限按模拟结果设置(× 1.1 + 1000),优先费用默认 `'auto'`:按这笔交易可写账户的最近费用取 75 分位,不超过 `maxPriorityFee`(默认 1,000,000 micro-lamports / CU)。调用里自带的 SetComputeUnitLimit / SetComputeUnitPrice 指令会被去掉(和库加的重复会让交易失败),优先费用用 `priorityFee` 指定
349
+ - 交易发出后不等确认就发下一笔;等待期间每两次轮询重发一次原交易,一次 `getSignatureStatuses` 查所有交易。blockhash 过期仍没上链时换新 blockhash 重新模拟、重发,最多 `retries` 次(默认 2)。判断过期时,再查一次历史的那个节点的数据必须不早于看到过期的那个 slot(多节点 / 负载均衡时落后的节点可能还没看到已上链的交易),否则这一轮先不判断,避免重复执行
350
+ - Token-2022:有转账手续费的代币,`amount` 是转出的数量,收款方实际收到的更少;带 transfer hook 的代币,TransferChecked 需要额外的账户,本库不支持(模拟会失败,这一项 `failed`)
351
+ - 同一笔交易上链后才失败时一起回滚,里面的调用都是 `reverted`
352
+
353
+ **结果**:与输入一一对应,可以直接 `JSON.stringify`:
354
+
355
+ ```ts
356
+ { index: 0, from, status: 'confirmed', signature: '5x…', slot: 123, fee: '5000', computeUnits: 450, error: null }
357
+ // batchTransfer 另有 to / token / native / amount / formatted / createdAccount;
358
+ // batchCollect 另有 to / token / native / amount / formatted / close(关闭代币账户的结果)
359
+ ```
360
+
361
+ `status` 与 EVM 版相同:`confirmed` / `reverted`(上链但失败,手续费已扣)/ `failed`(没有发出去,不花手续费)/ `sent`(`wait: false`;或广播时节点都连不上,交易可能已发出,`error` 里有说明)/ `pending`(等到 `timeout` 还没确认)/ `skipped` / `simulated`(`dryRun`)。`fee` 是整笔交易的手续费(每个签名 5000 lamports + 优先费用),同一笔交易里的调用相同,不含新建账户的租金。
362
+
363
+ **归集流程**(`batchCollect`):一次读出所有钱包的余额 → 归集地址没有该代币的 ATA 时创建(传了 `feePayer` 时随第一批转账创建;不传时先由第一个有这种代币的钱包单独创建,其他钱包只需付得起手续费)→ 打包发送代币转账(`closeAccounts` 时随后关闭代币账户)→ 包含 SOL 时等代币归集确认,按最新余额扫空 SOL:传了 `feePayer` 时整个余额转走,否则扣掉这笔的手续费后转走(余额归零)。代币没有全部归集成功的钱包不扫 SOL;余额为 0、低于 `minAmount`、钱包就是归集地址或 `feePayer` 的项为 `skipped`。Solana 上不需要先给子钱包补 gas,传 `feePayer` 即可;不传时没有 SOL 的钱包对应的项失败。`dryRun` 时代币转账照常模拟,扫 SOL 的金额要等归集之后才知道,只标记 `simulated`、不做模拟。
364
+
365
+ **共同选项**(`SendOptions`):`feePayer`、`priorityFee` / `maxPriorityFee`、`wait`(默认 true)、`timeout`(默认 120 秒)、`pollInterval`(默认 2 秒)、`retries`(默认 2)、`commitment`(`'confirmed'` / `'finalized'`)、`concurrency`(不同手续费支付者并发数,默认 8)、`dryRun`、`signal`、`onUpdate`。
366
+
367
+ **指令工具**:`systemTransfer`、`transferChecked`、`createAssociatedTokenAccountIdempotent`、`closeAccount`、`setComputeUnitLimit`、`setComputeUnitPrice`,生成本库格式的指令,可直接放进 `batchCall`。
368
+
369
+ **体积**(esbuild 打包、minify,对比只用 `SolanaClient`):引入 `batchTransfer` 增加约 22KB(gzip 约 8KB),三个函数都引入增加约 28KB(gzip 约 10KB),含浏览器钱包适配;没有新增依赖。
370
+
242
371
  ## 工具函数
243
372
 
244
373
  ```ts
@@ -251,13 +380,14 @@ import {
251
380
  parseMint, parseTokenAccount, parseMetaplexMetadata, // 账户数据解析
252
381
  parseTransferFeeConfig, // Token-2022 转账手续费扩展
253
382
  formatUnits, // 按精度换算:formatUnits(1_500_000_000n, 9) === '1.5'(formatAmount 是同一个函数的旧名字,已不推荐)
383
+ parseUnits, // 反过来:parseUnits('1.5', 9) === 1_500_000_000n
254
384
  TOKEN_PROGRAM_ID, TOKEN_2022_PROGRAM_ID, NATIVE_MINT, GENESIS_HASHES,
255
385
  } from '@w3lib/solana-batch-call'
256
386
  ```
257
387
 
258
388
  ## 运行环境
259
389
 
260
- Node 20.19+(依赖的 `@noble/hashes` 2.x 要求)、现代浏览器。
390
+ Node 20.19+(依赖的 `@noble/hashes` 2.x 要求)、现代浏览器。写操作用私钥签名时需要 WebCrypto 支持 Ed25519(Node 20+、Chrome 137+、Firefox 129+、Safari 17+);不支持的环境(如 React Native)传自定义 `{ address, sign }`。
261
391
 
262
392
  ## 开发
263
393
 
package/dist/client.d.ts CHANGED
@@ -129,6 +129,10 @@ export declare class SolanaClient {
129
129
  constructor(provider?: RpcSource | readonly RpcSource[], config?: ClientConfig);
130
130
  /** 节点所在网络(按创世区块哈希识别);不是 mainnet / devnet / testnet 时为 null */
131
131
  getCluster(): Promise<Cluster | null>;
132
+ /** 默认的 commitment(ClientConfig.commitment,默认 'confirmed') */
133
+ get commitment(): Commitment;
134
+ /** 是否按原生 SOL 处理这个 mint(ClientConfig.nativeMints) */
135
+ isNativeMint(mint: string): boolean;
132
136
  /** 直接发 JSON-RPC 调用(同样参与自动合并与故障切换) */
133
137
  request<T = unknown>(method: string, params?: readonly unknown[], options?: RequestOptions): Promise<T>;
134
138
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -274,6 +274,14 @@ export class SolanaClient {
274
274
  async getCluster() {
275
275
  return this.#cluster ?? clusterOfGenesis(await this.#genesis());
276
276
  }
277
+ /** 默认的 commitment(ClientConfig.commitment,默认 'confirmed') */
278
+ get commitment() {
279
+ return this.#commitment;
280
+ }
281
+ /** 是否按原生 SOL 处理这个 mint(ClientConfig.nativeMints) */
282
+ isNativeMint(mint) {
283
+ return this.#nativeMints.has(mint);
284
+ }
277
285
  /** 直接发 JSON-RPC 调用(同样参与自动合并与故障切换) */
278
286
  request(method, params, options = {}) {
279
287
  return abortable(options.signal, () => this.transport.request(method, params));
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,7 +3,7 @@ export { getBalances, getMultiBalances, getNftOwners, getNfts, getOwnerNfts, get
3
3
  export { DEFAULT_TOKEN_FIELDS, type Commitment, type DefaultTokenField, type FailureReason, type NftDetails, type NftOwner, type OwnedToken, type SolBalance, type TokenBalance, type TokenDetails, type TokenField, type TokenProgramName, type TokenProgramOption, type TokenStandard, type TransferFee, type TransferFeeConfig, } from './types.js';
4
4
  export { ASSOCIATED_TOKEN_PROGRAM_ID, DEFAULT_RPC_URLS, GENESIS_HASHES, METADATA_PROGRAM_ID, NATIVE_MINT, SOL_DECIMALS, SYSTEM_PROGRAM_ID, TOKEN_2022_PROGRAM_ID, TOKEN_PROGRAM_ID, clusterOfGenesis, type Cluster, } from './constants.js';
5
5
  export { decodeAddress, encodeAddress, findProgramAddress, getAssociatedTokenAddress, getMetadataAddress, isAddress, isOnCurve } from './address.js';
6
- export { formatAmount, formatUnits, parseMetaplexMetadata, parseMint, parseTokenAccount, parseTransferFeeConfig, type AccountInfo, type MetaplexMetadata, type MintInfo, type TokenAccountInfo, type TokenMetadata, type TransferFeeConfigInfo, type TransferFeeInfo, } from './layout.js';
6
+ export { formatAmount, formatUnits, parseMetaplexMetadata, parseMint, parseTokenAccount, parseTransferFeeConfig, parseUnits, type AccountInfo, type MetaplexMetadata, type MintInfo, type TokenAccountInfo, type TokenMetadata, type TransferFeeConfigInfo, type TransferFeeInfo, } from './layout.js';
7
7
  export { AllNodesFailedError, FallbackRpc, HttpError, HttpRpc, MIN_CONTEXT_SLOT_NOT_REACHED, RpcError, isNodeFault, nodeLabel, onRequest, type FallbackOptions, type HttpRpcOptions, type RequestEvent, type RpcTransport, } from './rpc.js';
8
8
  export { NetworkCheckedRpc, NetworkMismatchError, type RpcSource, type SourceOptions } from './source.js';
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,aAAa,GACnB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,cAAc,EACd,cAAc,EACd,SAAS,EACT,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,eAAe,GACrB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,oBAAoB,EACpB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,iBAAiB,GACvB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,2BAA2B,EAC3B,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,KAAK,OAAO,GACb,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACpJ,OAAO,EACL,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,SAAS,EACT,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,GACrB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,SAAS,EACT,OAAO,EACP,4BAA4B,EAC5B,QAAQ,EACR,WAAW,EACX,SAAS,EACT,SAAS,EACT,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,YAAY,GAClB,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,aAAa,GACnB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,cAAc,EACd,cAAc,EACd,SAAS,EACT,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,eAAe,GACrB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,oBAAoB,EACpB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,iBAAiB,GACvB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,2BAA2B,EAC3B,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,KAAK,OAAO,GACb,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACpJ,OAAO,EACL,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,SAAS,EACT,iBAAiB,EACjB,sBAAsB,EACtB,UAAU,EACV,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,GACrB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,SAAS,EACT,OAAO,EACP,4BAA4B,EAC5B,QAAQ,EACR,WAAW,EACX,SAAS,EACT,SAAS,EACT,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,YAAY,GAClB,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAA"}
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@ export { getBalances, getMultiBalances, getNftOwners, getNfts, getOwnerNfts, get
3
3
  export { DEFAULT_TOKEN_FIELDS, } from './types.js';
4
4
  export { ASSOCIATED_TOKEN_PROGRAM_ID, DEFAULT_RPC_URLS, GENESIS_HASHES, METADATA_PROGRAM_ID, NATIVE_MINT, SOL_DECIMALS, SYSTEM_PROGRAM_ID, TOKEN_2022_PROGRAM_ID, TOKEN_PROGRAM_ID, clusterOfGenesis, } from './constants.js';
5
5
  export { decodeAddress, encodeAddress, findProgramAddress, getAssociatedTokenAddress, getMetadataAddress, isAddress, isOnCurve } from './address.js';
6
- export { formatAmount, formatUnits, parseMetaplexMetadata, parseMint, parseTokenAccount, parseTransferFeeConfig, } from './layout.js';
6
+ export { formatAmount, formatUnits, parseMetaplexMetadata, parseMint, parseTokenAccount, parseTransferFeeConfig, parseUnits, } from './layout.js';
7
7
  export { AllNodesFailedError, FallbackRpc, HttpError, HttpRpc, MIN_CONTEXT_SLOT_NOT_REACHED, RpcError, isNodeFault, nodeLabel, onRequest, } from './rpc.js';
8
8
  export { NetworkCheckedRpc, NetworkMismatchError } from './source.js';
9
9
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GAYtB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,cAAc,EACd,cAAc,EACd,SAAS,EACT,aAAa,GAQd,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,oBAAoB,GAgBrB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,2BAA2B,EAC3B,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,GAEjB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACpJ,OAAO,EACL,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,SAAS,EACT,iBAAiB,EACjB,sBAAsB,GAQvB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,SAAS,EACT,OAAO,EACP,4BAA4B,EAC5B,QAAQ,EACR,WAAW,EACX,SAAS,EACT,SAAS,GAKV,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAsC,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GAYtB,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,cAAc,EACd,cAAc,EACd,SAAS,EACT,aAAa,GAQd,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,oBAAoB,GAgBrB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,2BAA2B,EAC3B,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,GAEjB,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACpJ,OAAO,EACL,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,SAAS,EACT,iBAAiB,EACjB,sBAAsB,EACtB,UAAU,GAQX,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,SAAS,EACT,OAAO,EACP,4BAA4B,EAC5B,QAAQ,EACR,WAAW,EACX,SAAS,EACT,SAAS,GAKV,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAsC,MAAM,aAAa,CAAA"}
package/dist/layout.d.ts CHANGED
@@ -76,6 +76,11 @@ export interface MetaplexMetadata extends TokenMetadata {
76
76
  export declare function parseMetaplexMetadata(data: Uint8Array): MetaplexMetadata;
77
77
  /** 按精度格式化(与 ethers 的 formatUnits 同名同义):formatUnits(1_500_000_000n, 9) === '1.5';不四舍五入,整数不带小数点 */
78
78
  export declare function formatUnits(value: bigint, decimals: number): string;
79
+ /**
80
+ * formatUnits 的逆运算(与 ethers 的 parseUnits 同名同义):parseUnits('1.5', 9) === 1_500_000_000n。
81
+ * 小数位超过精度时报错(不四舍五入;多出的只有 0 时允许)
82
+ */
83
+ export declare function parseUnits(value: string, decimals: number): bigint;
79
84
  /**
80
85
  * 同 formatUnits。
81
86
  * @deprecated 改用 formatUnits:formatAmount 这个名字容易和项目里的数字展示函数撞名
@@ -1 +1 @@
1
- {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../src/layout.ts"],"names":[],"mappings":"AAEA,iCAAiC;AACjC,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW;IACX,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,UAAU,CAAA;IAChB,UAAU,EAAE,OAAO,CAAA;CACpB;AA4ED,MAAM,WAAW,QAAQ;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,OAAO,CAAA;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,sCAAsC;IACtC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAA;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;CACZ;AAYD,6EAA6E;AAC7E,wBAAgB,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,QAAQ,CAqBpD;AA4CD,mFAAmF;AACnF,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,sCAAsC;AACtC,MAAM,WAAW,qBAAqB;IACpC,6BAA6B;IAC7B,0BAA0B,EAAE,MAAM,GAAG,IAAI,CAAA;IACzC,yBAAyB,EAAE,MAAM,GAAG,IAAI,CAAA;IACxC,2BAA2B;IAC3B,cAAc,EAAE,MAAM,CAAA;IACtB,qCAAqC;IACrC,KAAK,EAAE,eAAe,CAAA;IACtB,4BAA4B;IAC5B,KAAK,EAAE,eAAe,CAAA;CACvB;AAID;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,UAAU,GAAG,qBAAqB,GAAG,IAAI,CA2BrF;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAED,+CAA+C;AAC/C,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,gBAAgB,CAMpE;AAED,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACrD,eAAe,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,oBAAoB,EAAE,MAAM,CAAA;IAC5B,QAAQ,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACtE,mBAAmB,EAAE,OAAO,CAAA;IAC5B,SAAS,EAAE,OAAO,CAAA;IAClB,+HAA+H;IAC/H,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,UAAU,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAA;CAC1D;AAED,2DAA2D;AAC3D,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,UAAU,GAAG,gBAAgB,CA0CxE;AAED,iGAAiG;AACjG,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAMnE;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,oBAAc,CAAA"}
1
+ {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../src/layout.ts"],"names":[],"mappings":"AAEA,iCAAiC;AACjC,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW;IACX,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,UAAU,CAAA;IAChB,UAAU,EAAE,OAAO,CAAA;CACpB;AA4ED,MAAM,WAAW,QAAQ;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,OAAO,CAAA;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,sCAAsC;IACtC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAA;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;CACZ;AAYD,6EAA6E;AAC7E,wBAAgB,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,QAAQ,CAqBpD;AA4CD,mFAAmF;AACnF,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,sCAAsC;AACtC,MAAM,WAAW,qBAAqB;IACpC,6BAA6B;IAC7B,0BAA0B,EAAE,MAAM,GAAG,IAAI,CAAA;IACzC,yBAAyB,EAAE,MAAM,GAAG,IAAI,CAAA;IACxC,2BAA2B;IAC3B,cAAc,EAAE,MAAM,CAAA;IACtB,qCAAqC;IACrC,KAAK,EAAE,eAAe,CAAA;IACtB,4BAA4B;IAC5B,KAAK,EAAE,eAAe,CAAA;CACvB;AAID;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,UAAU,GAAG,qBAAqB,GAAG,IAAI,CA2BrF;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAED,+CAA+C;AAC/C,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,gBAAgB,CAMpE;AAED,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACrD,eAAe,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,oBAAoB,EAAE,MAAM,CAAA;IAC5B,QAAQ,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACtE,mBAAmB,EAAE,OAAO,CAAA;IAC5B,SAAS,EAAE,OAAO,CAAA;IAClB,+HAA+H;IAC/H,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,UAAU,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAA;CAC1D;AAED,2DAA2D;AAC3D,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,UAAU,GAAG,gBAAgB,CA0CxE;AAED,iGAAiG;AACjG,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAMnE;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAWlE;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,oBAAc,CAAA"}
package/dist/layout.js CHANGED
@@ -229,6 +229,22 @@ export function formatUnits(value, decimals) {
229
229
  const fraction = digits.slice(digits.length - decimals).replace(/0+$/, '');
230
230
  return `${negative ? '-' : ''}${whole}${fraction ? `.${fraction}` : ''}`;
231
231
  }
232
+ /**
233
+ * formatUnits 的逆运算(与 ethers 的 parseUnits 同名同义):parseUnits('1.5', 9) === 1_500_000_000n。
234
+ * 小数位超过精度时报错(不四舍五入;多出的只有 0 时允许)
235
+ */
236
+ export function parseUnits(value, decimals) {
237
+ const match = /^(-)?(\d*)(?:\.(\d*))?$/.exec(value.trim());
238
+ if (!match || (!match[2] && !match[3])) {
239
+ throw new Error(`Invalid amount: ${JSON.stringify(value)}`);
240
+ }
241
+ const fraction = match[3] ?? '';
242
+ if (/[1-9]/.test(fraction.slice(decimals))) {
243
+ throw new Error(`Too many decimals: ${value} (max ${decimals})`);
244
+ }
245
+ const amount = BigInt((match[2] || '0') + fraction.slice(0, decimals).padEnd(decimals, '0'));
246
+ return match[1] ? -amount : amount;
247
+ }
232
248
  /**
233
249
  * 同 formatUnits。
234
250
  * @deprecated 改用 formatUnits:formatAmount 这个名字容易和项目里的数字展示函数撞名