@w3lib/evm-batch-call 0.2.0 → 0.4.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 (108) hide show
  1. package/CHANGELOG.md +56 -0
  2. package/README.md +184 -30
  3. package/contracts/DeploylessMulticall3.sol +5 -0
  4. package/dist/aggregate.d.ts +25 -3
  5. package/dist/aggregate.d.ts.map +1 -1
  6. package/dist/aggregate.js +143 -5
  7. package/dist/aggregate.js.map +1 -1
  8. package/dist/batcher.d.ts +6 -1
  9. package/dist/batcher.d.ts.map +1 -1
  10. package/dist/batcher.js +59 -9
  11. package/dist/batcher.js.map +1 -1
  12. package/dist/call.d.ts +27 -2
  13. package/dist/call.d.ts.map +1 -1
  14. package/dist/call.js +22 -0
  15. package/dist/call.js.map +1 -1
  16. package/dist/chains.d.ts +7 -0
  17. package/dist/chains.d.ts.map +1 -1
  18. package/dist/chains.js +11 -0
  19. package/dist/chains.js.map +1 -1
  20. package/dist/deployless.d.ts +1 -1
  21. package/dist/deployless.d.ts.map +1 -1
  22. package/dist/deployless.js +1 -1
  23. package/dist/deployless.js.map +1 -1
  24. package/dist/erc20.d.ts +70 -4
  25. package/dist/erc20.d.ts.map +1 -1
  26. package/dist/erc20.js +121 -5
  27. package/dist/erc20.js.map +1 -1
  28. package/dist/events.d.ts +25 -0
  29. package/dist/events.d.ts.map +1 -0
  30. package/dist/events.js +25 -0
  31. package/dist/events.js.map +1 -0
  32. package/dist/fallback.d.ts +54 -3
  33. package/dist/fallback.d.ts.map +1 -1
  34. package/dist/fallback.js +273 -21
  35. package/dist/fallback.js.map +1 -1
  36. package/dist/index.d.ts +10 -8
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +7 -5
  39. package/dist/index.js.map +1 -1
  40. package/dist/multicall.d.ts.map +1 -1
  41. package/dist/multicall.js +33 -2
  42. package/dist/multicall.js.map +1 -1
  43. package/dist/nft.d.ts +5 -0
  44. package/dist/nft.d.ts.map +1 -1
  45. package/dist/nft.js +5 -0
  46. package/dist/nft.js.map +1 -1
  47. package/dist/owner.d.ts +145 -0
  48. package/dist/owner.d.ts.map +1 -0
  49. package/dist/owner.js +510 -0
  50. package/dist/owner.js.map +1 -0
  51. package/dist/provider.d.ts +63 -18
  52. package/dist/provider.d.ts.map +1 -1
  53. package/dist/provider.js +166 -100
  54. package/dist/provider.js.map +1 -1
  55. package/dist/scan.d.ts +59 -0
  56. package/dist/scan.d.ts.map +1 -0
  57. package/dist/scan.js +245 -0
  58. package/dist/scan.js.map +1 -0
  59. package/dist/shortcuts.d.ts +34 -35
  60. package/dist/shortcuts.d.ts.map +1 -1
  61. package/dist/shortcuts.js +41 -73
  62. package/dist/shortcuts.js.map +1 -1
  63. package/dist/source.d.ts +6 -2
  64. package/dist/source.d.ts.map +1 -1
  65. package/dist/source.js +49 -6
  66. package/dist/source.js.map +1 -1
  67. package/dist/subpaths/nft.d.ts +46 -0
  68. package/dist/subpaths/nft.d.ts.map +1 -0
  69. package/dist/subpaths/nft.js +55 -0
  70. package/dist/subpaths/nft.js.map +1 -0
  71. package/dist/subpaths/owner.d.ts +33 -0
  72. package/dist/subpaths/owner.d.ts.map +1 -0
  73. package/dist/subpaths/owner.js +34 -0
  74. package/dist/subpaths/owner.js.map +1 -0
  75. package/dist/tron.d.ts +2 -0
  76. package/dist/tron.d.ts.map +1 -1
  77. package/dist/tron.js +5 -0
  78. package/dist/tron.js.map +1 -1
  79. package/dist/util.d.ts +5 -0
  80. package/dist/util.d.ts.map +1 -1
  81. package/dist/util.js +23 -0
  82. package/dist/util.js.map +1 -1
  83. package/dist/watch.d.ts +25 -0
  84. package/dist/watch.d.ts.map +1 -0
  85. package/dist/watch.js +105 -0
  86. package/dist/watch.js.map +1 -0
  87. package/package.json +19 -10
  88. package/src/aggregate.ts +177 -9
  89. package/src/batcher.ts +69 -9
  90. package/src/call.ts +42 -2
  91. package/src/chains.ts +15 -0
  92. package/src/deployless.ts +1 -1
  93. package/src/erc20.ts +171 -8
  94. package/src/events.ts +42 -0
  95. package/src/fallback.ts +306 -22
  96. package/src/index.ts +20 -27
  97. package/src/multicall.ts +34 -2
  98. package/src/nft.ts +5 -0
  99. package/src/owner.ts +660 -0
  100. package/src/provider.ts +255 -112
  101. package/src/scan.ts +293 -0
  102. package/src/shortcuts.ts +76 -88
  103. package/src/source.ts +51 -8
  104. package/src/subpaths/nft.ts +107 -0
  105. package/src/subpaths/owner.ts +69 -0
  106. package/src/tron.ts +7 -0
  107. package/src/util.ts +27 -0
  108. package/src/watch.ts +149 -0
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
package/dist/scan.d.ts ADDED
@@ -0,0 +1,59 @@
1
+ import type { TokenSource } from './owner.js';
2
+ /** 增量扫描的进度,按 chainId + 地址保存 */
3
+ export interface TransferScanState {
4
+ /** 第一个扫描的区块(之前的历史不扫描) */
5
+ startBlock: number;
6
+ /** 已扫描到的区块号(含);第一次调用且 lookbackBlocks 为 0 时等于 startBlock - 1 */
7
+ cursor: number;
8
+ /** 扫描中发现的代币合约地址(小写) */
9
+ tokens: string[];
10
+ /** 当前使用的单次查询区块范围:出错时缩小,连续成功后翻倍,直到 rangeLimit / blockRange 选项 */
11
+ blockRange: number;
12
+ /** 节点的区块范围上限(报错里给出的,或减半试出来的),记录 1 天后失效,之后会重新试更大的范围 */
13
+ rangeLimit?: number;
14
+ /** rangeLimit 的记录时间(毫秒时间戳) */
15
+ rangeLimitAt?: number;
16
+ /** 节点不开放 getLogs 时,在这个时间之前不再尝试(毫秒时间戳) */
17
+ pausedUntil?: number;
18
+ }
19
+ /** 进度存储:默认存在内存里;传自定义存储可以跨页面刷新 / 重启接着扫(如 localStorage、数据库) */
20
+ export interface TransferScanStorage {
21
+ get(key: string): TransferScanState | undefined | Promise<TransferScanState | undefined>;
22
+ set(key: string, state: TransferScanState): void | Promise<void>;
23
+ }
24
+ /** 内存存储(默认):最多保存 1000 个地址,超出时淘汰最早的 */
25
+ export declare function memoryScanStorage(limit?: number): TransferScanStorage;
26
+ /**
27
+ * 基于 getItem / setItem 的存储(如浏览器的 localStorage):
28
+ * `transferScan({ storage: keyValueScanStorage(localStorage) })`
29
+ */
30
+ export declare function keyValueScanStorage(store: {
31
+ getItem(key: string): string | null;
32
+ setItem(key: string, value: string): void;
33
+ }, prefix?: string): TransferScanStorage;
34
+ export interface TransferScanOptions {
35
+ /** 进度存储,默认内存(进程 / 页面结束就丢失) */
36
+ storage?: TransferScanStorage;
37
+ /** 第一次调用时往回扫多少个区块,默认 0(只从现在开始往后扫) */
38
+ lookbackBlocks?: number;
39
+ /** 单次 getLogs 的最大区块范围,默认 1000;节点有上限时自动缩小 */
40
+ blockRange?: number;
41
+ /** 每次调用最多发多少个 getLogs 请求,默认 20;落后很多时分多次追上 */
42
+ maxRequests?: number;
43
+ /** 每次调用的扫描时间预算(毫秒),默认 5000:超过后不再发新请求,留到下次调用 */
44
+ timeBudget?: number;
45
+ /** 只扫到最新区块往前这么多个区块,默认 5:避开链重组,也避免节点之间高度不一致时漏扫 */
46
+ confirmations?: number;
47
+ }
48
+ /**
49
+ * 增量扫描地址收到的 ERC20 代币(Transfer 事件,to = 该地址):第一次调用记下当前区块,之后每次从上次的位置往后扫。
50
+ * 用来补充代币列表发现不了的新代币。作为代币来源使用:`combine(defaultTokenSource(), transferScan())`,
51
+ * 或在 getOwnerTokens 里用 `scanTransfers: true`。
52
+ *
53
+ * 局限:只能发现开始扫描之后收到的代币(除非设置 lookbackBlocks);需要节点支持 eth_getLogs,免费公共节点限制较多
54
+ *(BSC 上只有 blockrazor 可用且每次最多 25 个区块);Tron 不支持。
55
+ */
56
+ export declare function transferScan(options?: TransferScanOptions): TokenSource;
57
+ /** 读取某地址的扫描进度(不存在时为 undefined) */
58
+ export declare function getTransferScanState(chainId: number, owner: string, storage?: TransferScanStorage): Promise<TransferScanState | undefined>;
59
+ //# sourceMappingURL=scan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../src/scan.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAmB,WAAW,EAAE,MAAM,YAAY,CAAA;AAM9D,+BAA+B;AAC/B,MAAM,WAAW,iBAAiB;IAChC,yBAAyB;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,+DAA+D;IAC/D,MAAM,EAAE,MAAM,CAAA;IACd,uBAAuB;IACvB,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,gEAAgE;IAChE,UAAU,EAAE,MAAM,CAAA;IAClB,sDAAsD;IACtD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,8BAA8B;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,6DAA6D;AAC7D,MAAM,WAAW,mBAAmB;IAClC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,GAAG,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAAA;IACxF,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACjE;AAED,sCAAsC;AACtC,wBAAgB,iBAAiB,CAAC,KAAK,SAAO,GAAG,mBAAmB,CAYnE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IAAE,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAAE,MAAM,SAAyB,GAAG,mBAAmB,CAkBnL;AAED,MAAM,WAAW,mBAAmB;IAClC,8BAA8B;IAC9B,OAAO,CAAC,EAAE,mBAAmB,CAAA;IAC7B,qCAAqC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,iDAAiD;IACjD,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAoFD;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,WAAW,CA+G3E;AAED,kCAAkC;AAClC,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAoC,GAAG,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAEhK"}
package/dist/scan.js ADDED
@@ -0,0 +1,245 @@
1
+ import { errorText, GetLogsError } from './fallback.js';
2
+ import { isTronChain } from './source.js';
3
+ /** ERC20 / ERC721 的 Transfer(address,address,uint256) 事件 */
4
+ const TRANSFER_TOPIC = '0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef';
5
+ /** 内存存储(默认):最多保存 1000 个地址,超出时淘汰最早的 */
6
+ export function memoryScanStorage(limit = 1000) {
7
+ const map = new Map();
8
+ return {
9
+ get: (key) => map.get(key),
10
+ set: (key, state) => {
11
+ map.delete(key);
12
+ map.set(key, state);
13
+ if (map.size > limit) {
14
+ map.delete(map.keys().next().value);
15
+ }
16
+ },
17
+ };
18
+ }
19
+ /**
20
+ * 基于 getItem / setItem 的存储(如浏览器的 localStorage):
21
+ * `transferScan({ storage: keyValueScanStorage(localStorage) })`
22
+ */
23
+ export function keyValueScanStorage(store, prefix = 'w3lib:transfer-scan:') {
24
+ return {
25
+ get: (key) => {
26
+ try {
27
+ const raw = store.getItem(prefix + key);
28
+ return raw ? JSON.parse(raw) : undefined; // 格式在读取后校验
29
+ }
30
+ catch {
31
+ return undefined;
32
+ }
33
+ },
34
+ set: (key, state) => {
35
+ try {
36
+ store.setItem(prefix + key, JSON.stringify(state));
37
+ }
38
+ catch {
39
+ // 存储满或不可用:只影响下次能否接着扫
40
+ }
41
+ },
42
+ };
43
+ }
44
+ const defaultStorage = memoryScanStorage();
45
+ /** 节点不开放 getLogs 时,暂停多久再试 */
46
+ const PAUSE_ON_UNSUPPORTED = 10 * 60 * 1000;
47
+ /** 记下的区块范围上限多久后失效(节点可能换了 / 调整了限制) */
48
+ const RANGE_LIMIT_TTL = 24 * 60 * 60 * 1000;
49
+ /** 连续成功多少次后把范围翻倍 */
50
+ const GROW_AFTER = 2;
51
+ /** 按节点返回的错误信息分类 */
52
+ function kindOf(text) {
53
+ if (/too many|rate.?limit|429|temporarily|unavailable|busy|timed? ?out|timeout|network|ECONN|ENOTFOUND|socket|fetch failed|missing response|bad response|50[234]|quota|credits|compute units/i.test(text)) {
54
+ return 'transient'; // 限频 / 超时 / 连不上:换个时间重试即可
55
+ }
56
+ if (/range|too (?:large|wide|big)|exceed|query returned more than|more than \d+ (?:results|logs)|response size|block limit/i.test(text)) {
57
+ return 'range';
58
+ }
59
+ if (/method not found|-32601|not supported|unsupported|not available|does not exist|not (?:allowed|enabled|whitelisted)|disabled/i.test(text)) {
60
+ return 'unsupported';
61
+ }
62
+ return 'other';
63
+ }
64
+ /** 每个节点的错误;GetLogsError 里没有错误表示没有节点支持 getLogs */
65
+ function errorTexts(err) {
66
+ if (err instanceof GetLogsError) {
67
+ return err.errors.length ? err.errors.map(errorText) : ['getLogs is not supported'];
68
+ }
69
+ return [errorText(err)];
70
+ }
71
+ const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
72
+ /** 从错误信息里找区块范围上限,如 “log query range must not exceed 25 blocks”“maximum block range: 5000” */
73
+ function parseRangeLimit(texts) {
74
+ let best = null;
75
+ for (const raw of texts) {
76
+ const text = raw.replace(/(\d),(?=\d{3}\b)/g, '$1'); // 10,000 → 10000
77
+ const match = /(?:exceed|maximum|max|limit(?:ed)? (?:of|to)?|up to|range)[^\d]{0,40}?(\d{1,7})\s*blocks?/i.exec(text) ??
78
+ /(\d{1,7})\s*blocks?[^.]{0,20}(?:range|limit|maximum)/i.exec(text) ??
79
+ /block range[^\d]{0,20}(\d{1,7})/i.exec(text);
80
+ const n = match ? Number(match[1]) : NaN;
81
+ if (Number.isInteger(n) && n > 0 && (best === null || n > best)) {
82
+ best = n; // 多个节点给了不同上限时取最大的(能用的节点里最宽松的那个)
83
+ }
84
+ }
85
+ return best;
86
+ }
87
+ const isInt = (value, min) => Number.isSafeInteger(value) && value >= min;
88
+ const isTime = (value) => typeof value === 'number' && Number.isFinite(value);
89
+ /** 校验存储里读出的进度:格式不对(旧版本 / 被改坏)时丢弃,重新开始 */
90
+ function parseState(raw) {
91
+ const s = raw;
92
+ if (!s || typeof s !== 'object' || !isInt(s.startBlock, 0) || !isInt(s.cursor, -1) || !isInt(s.blockRange, 1) || !Array.isArray(s.tokens)) {
93
+ return undefined;
94
+ }
95
+ if (!s.tokens.every((t) => typeof t === 'string' && /^0x[0-9a-fA-F]{40}$/.test(t))) {
96
+ return undefined;
97
+ }
98
+ return {
99
+ startBlock: s.startBlock,
100
+ cursor: s.cursor,
101
+ tokens: s.tokens.map((t) => t.toLowerCase()),
102
+ blockRange: s.blockRange,
103
+ ...(isInt(s.rangeLimit, 1) && isTime(s.rangeLimitAt) ? { rangeLimit: s.rangeLimit, rangeLimitAt: s.rangeLimitAt } : {}),
104
+ ...(isTime(s.pausedUntil) ? { pausedUntil: s.pausedUntil } : {}),
105
+ };
106
+ }
107
+ async function loadState(storage, key) {
108
+ try {
109
+ return parseState(await storage.get(key));
110
+ }
111
+ catch {
112
+ return undefined;
113
+ }
114
+ }
115
+ /**
116
+ * 增量扫描地址收到的 ERC20 代币(Transfer 事件,to = 该地址):第一次调用记下当前区块,之后每次从上次的位置往后扫。
117
+ * 用来补充代币列表发现不了的新代币。作为代币来源使用:`combine(defaultTokenSource(), transferScan())`,
118
+ * 或在 getOwnerTokens 里用 `scanTransfers: true`。
119
+ *
120
+ * 局限:只能发现开始扫描之后收到的代币(除非设置 lookbackBlocks);需要节点支持 eth_getLogs,免费公共节点限制较多
121
+ *(BSC 上只有 blockrazor 可用且每次最多 25 个区块);Tron 不支持。
122
+ */
123
+ export function transferScan(options = {}) {
124
+ const storage = options.storage ?? defaultStorage;
125
+ const lookback = Math.max(0, Math.floor(options.lookbackBlocks ?? 0));
126
+ const maxRange = Math.max(1, Math.floor(options.blockRange ?? 1000));
127
+ const maxRequests = Math.max(1, options.maxRequests ?? 20);
128
+ const timeBudget = options.timeBudget ?? 5000;
129
+ const confirmations = Math.max(0, Math.floor(options.confirmations ?? 5));
130
+ return {
131
+ name: 'transfers',
132
+ async discover({ chainId, owner, provider }) {
133
+ if (!provider || isTronChain(chainId) || !/^0x[0-9a-fA-F]{40}$/.test(owner)) {
134
+ return null;
135
+ }
136
+ const key = `${chainId}:${owner.toLowerCase()}`;
137
+ const saved = await loadState(storage, key);
138
+ const toResult = (state) => (state?.tokens ?? []).map((address) => ({ address }));
139
+ if (saved?.pausedUntil && Date.now() < saved.pausedUntil) {
140
+ return toResult(saved);
141
+ }
142
+ const startedAt = Date.now();
143
+ let target;
144
+ try {
145
+ target = (await provider.getBlockNumber()) - confirmations;
146
+ }
147
+ catch {
148
+ return saved ? toResult(saved) : null; // 节点不支持 / 暂时不可用:返回已发现的代币
149
+ }
150
+ const now = Date.now();
151
+ let state;
152
+ if (saved) {
153
+ state = { ...saved, tokens: [...saved.tokens] };
154
+ delete state.pausedUntil;
155
+ if (state.rangeLimitAt !== undefined && now - state.rangeLimitAt > RANGE_LIMIT_TTL) {
156
+ delete state.rangeLimit;
157
+ delete state.rangeLimitAt;
158
+ }
159
+ }
160
+ else {
161
+ const cursor = Math.max(-1, target - lookback);
162
+ state = { startBlock: cursor + 1, cursor, tokens: [], blockRange: maxRange };
163
+ }
164
+ const tokens = new Set(state.tokens);
165
+ const ownerTopic = `0x${owner.slice(2).toLowerCase().padStart(64, '0')}`;
166
+ const cap = () => Math.min(maxRange, state.rangeLimit ?? maxRange);
167
+ const setLimit = (limit) => {
168
+ state.rangeLimit = limit;
169
+ state.rangeLimitAt = Date.now();
170
+ };
171
+ let range = Math.min(state.blockRange, cap());
172
+ let successes = 0;
173
+ let transient = 0;
174
+ for (let requests = 0; requests < maxRequests && state.cursor < target; requests++) {
175
+ if (timeBudget > 0 && Date.now() - startedAt >= timeBudget) {
176
+ break; // 超出时间预算,留到下次调用
177
+ }
178
+ const fromBlock = state.cursor + 1;
179
+ const toBlock = Math.min(target, fromBlock + range - 1);
180
+ try {
181
+ const logs = await provider.getLogs({ fromBlock, toBlock, topics: [TRANSFER_TOPIC, null, ownerTopic] });
182
+ for (const log of logs) {
183
+ // ERC20 的 Transfer 有 3 个 topic;ERC721 的 tokenId 也是 indexed,有 4 个,排除
184
+ if (log.topics.length === 3) {
185
+ tokens.add(log.address.toLowerCase());
186
+ }
187
+ }
188
+ state.cursor = toBlock;
189
+ transient = 0;
190
+ if (++successes >= GROW_AFTER && range < cap()) {
191
+ range = Math.min(cap(), range * 2); // 之前缩小过(偶发错误 / 换了节点):逐步放大回去
192
+ successes = 0;
193
+ }
194
+ }
195
+ catch (err) {
196
+ successes = 0;
197
+ const texts = errorTexts(err);
198
+ const kinds = texts.map(kindOf);
199
+ // 上次成功的节点这次的错误最能说明问题(其他节点可能一直就不能用,它们的报错不代表当前范围有问题)
200
+ const preferred = err instanceof GetLogsError && err.preferred !== undefined ? kindOf(errorText(err.preferred)) : undefined;
201
+ const limit = parseRangeLimit(texts);
202
+ if (limit !== null && limit < range) {
203
+ range = limit; // 节点明确给了范围上限
204
+ setLimit(limit);
205
+ }
206
+ else if (kinds.every((k) => k === 'unsupported')) {
207
+ // 所有节点都不开放 getLogs:暂停一段时间,避免每次调用都白发请求
208
+ state.pausedUntil = Date.now() + PAUSE_ON_UNSUPPORTED;
209
+ break;
210
+ }
211
+ else if (preferred === 'transient' || (preferred === undefined && kinds.every((k) => k === 'transient' || k === 'unsupported'))) {
212
+ // 在用的节点只是限频 / 超时:不缩小范围,退避后重试;连续 3 次就留到下次调用
213
+ const remaining = timeBudget > 0 ? timeBudget - (Date.now() - startedAt) : Infinity;
214
+ if (++transient >= 3 || remaining <= 0) {
215
+ break;
216
+ }
217
+ await sleep(Math.min(500 * transient, remaining));
218
+ }
219
+ else if (range > 1) {
220
+ range = Math.max(1, Math.floor(range / 2)); // 范围超限但没说上限:减半再试
221
+ setLimit(range);
222
+ }
223
+ else {
224
+ state.pausedUntil = Date.now() + PAUSE_ON_UNSUPPORTED; // 连 1 个区块都查不了
225
+ break;
226
+ }
227
+ }
228
+ }
229
+ state.blockRange = range;
230
+ state.tokens = [...tokens];
231
+ try {
232
+ await storage.set(key, state);
233
+ }
234
+ catch {
235
+ // 存储不可用:只影响下次能否接着扫
236
+ }
237
+ return toResult(state);
238
+ },
239
+ };
240
+ }
241
+ /** 读取某地址的扫描进度(不存在时为 undefined) */
242
+ export async function getTransferScanState(chainId, owner, storage = defaultStorage) {
243
+ return loadState(storage, `${chainId}:${owner.toLowerCase()}`);
244
+ }
245
+ //# sourceMappingURL=scan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan.js","sourceRoot":"","sources":["../src/scan.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import type { CallOverrides } from './aggregate.js';
2
- import type { BalanceToken, DefaultTokenField, TokenAllowance, TokenBalance, TokenDetails, TokenField } from './erc20.js';
3
- import type { DefaultNftCollectionField, Erc1155Balance, NftBalance, NftCollection, NftCollectionField, NftCollectionsOptions, NftItem, NftOwner, NftTokenUri } from './nft.js';
4
- import { Provider, type BalancesOptions, type ProviderConfig, type TokensOptions } from './provider.js';
2
+ import type { BalanceToken, DefaultTokenField, RawTokenAllowance, RawTokenBalance, TokenAllowance, TokenBalance, TokenDetails, TokenField } from './erc20.js';
3
+ import { Provider, type AllowancesOptions, type BalancesOptions, type BalancesQuery, type ProviderConfig, type TokensOptions } from './provider.js';
5
4
  import type { ProviderSource } from './source.js';
6
5
  /** getBalances / getTokens 共用的节点参数 */
7
6
  export interface ShortcutProviderOptions extends ProviderConfig {
@@ -13,15 +12,27 @@ export interface ShortcutProviderOptions extends ProviderConfig {
13
12
  * - ethers Provider
14
13
  * - 浏览器插件钱包:`window.ethereum`(EIP-1193)、`window.tronWeb`
15
14
  * - 混合数组,如 `[window.ethereum, 'https://…']`:钱包出错或不在这条链上时自动用后面的节点
15
+ * - 已创建的 Provider 实例:直接使用(chainId 和其他节点配置以实例为准,不能再传)
16
16
  */
17
- provider?: ProviderSource | readonly ProviderSource[];
17
+ provider?: ProviderSource | readonly ProviderSource[] | Provider;
18
18
  }
19
19
  export interface GetBalancesOptions extends BalancesOptions, ShortcutProviderOptions {
20
20
  }
21
21
  export interface GetTokensOptions<F extends TokenField = DefaultTokenField> extends TokensOptions<F>, ShortcutProviderOptions {
22
22
  }
23
+ export interface GetAllowancesOptions extends AllowancesOptions, ShortcutProviderOptions {
24
+ }
23
25
  export interface ShortcutOptions extends CallOverrides, ShortcutProviderOptions {
24
26
  }
27
+ /**
28
+ * 拆出节点参数、调用参数和函数自己的参数(ownKeys),其余作为 Provider 配置;值为 undefined 的参数忽略。
29
+ * 子路径(/nft、/owner)的快捷函数也用它,与 getBalances 共享 Provider 缓存
30
+ */
31
+ export declare function resolve<T extends ShortcutOptions, K extends keyof T & string = never>(options: T, ownKeys?: readonly K[]): {
32
+ provider: Provider;
33
+ overrides: CallOverrides;
34
+ own: Pick<T, K>;
35
+ };
25
36
  /**
26
37
  * 批量查余额(主币 + 代币,一次请求),返回原始余额、decimals 和换算后的数值。
27
38
  *
@@ -33,10 +44,25 @@ export interface ShortcutOptions extends CallOverrides, ShortcutProviderOptions
33
44
  * await getBalances(user, tokens, { provider: 'https://bsc-dataseed.bnbchain.org' })
34
45
  * await getBalances(user, tokens, { chainId: 56, provider: [window.ethereum, 'https://…'] }) // 钱包优先,失败用公共节点
35
46
  * await getBalances(user, tokens, { chainId: 56, symbol: true }) // 同时返回 symbol
47
+ * await getBalances(user, tokens, { chainId: 56, decimals: false }) // 只查余额,不带 decimals / formatted
36
48
  * // [{ token: NATIVE_TOKEN, native: true, balance: '1500000000000000000', decimals: 18, formatted: '1.5', success: true }, ...]
37
49
  * ```
38
50
  */
51
+ export declare function getBalances(owner: string, tokens: readonly BalanceToken[], options: GetBalancesOptions & {
52
+ decimals: false;
53
+ }): Promise<RawTokenBalance[]>;
39
54
  export declare function getBalances(owner: string, tokens: readonly BalanceToken[], options?: GetBalancesOptions): Promise<TokenBalance[]>;
55
+ /**
56
+ * 多个钱包一次查(同一条链上合成一次 multicall),结果与 queries 一一对应。节点参数与 getBalances 相同。
57
+ *
58
+ * ```ts
59
+ * const [a, b] = await getMultiBalances([{ owner: walletA, tokens: [NATIVE_TOKEN, USDT] }, { owner: walletB, tokens: [USDT] }], { chainId: 56 })
60
+ * ```
61
+ */
62
+ export declare function getMultiBalances(queries: readonly BalancesQuery[], options: GetBalancesOptions & {
63
+ decimals: false;
64
+ }): Promise<RawTokenBalance[][]>;
65
+ export declare function getMultiBalances(queries: readonly BalancesQuery[], options?: GetBalancesOptions): Promise<TokenBalance[][]>;
40
66
  /**
41
67
  * 批量查 ERC20 代币详情(一次请求),可以选择返回哪些字段。节点参数与 getBalances 相同。
42
68
  *
@@ -57,37 +83,10 @@ export declare function getTokens<const F extends TokenField = DefaultTokenField
57
83
  * if (!usdt.unlimited && BigInt(usdt.allowance) < amount) { // 需要 approve
58
84
  * ```
59
85
  */
60
- export declare function getAllowances(owner: string, spender: string, tokens: readonly BalanceToken[], options?: ShortcutOptions): Promise<TokenAllowance[]>;
61
- export interface GetNftCollectionsOptions<F extends NftCollectionField = DefaultNftCollectionField> extends NftCollectionsOptions<F>, ShortcutProviderOptions {
62
- }
63
- /**
64
- * 批量查 NFT 集合信息,字段可选(默认 standard / name / symbol)。
65
- *
66
- * ```ts
67
- * await getNftCollections([BAYC, MAYC], { chainId: 1, fields: ['standard', 'name', 'totalSupply'] })
68
- * // [{ address: BAYC, standard: 'ERC721', name: 'BoredApeYachtClub', totalSupply: '10000', success: true }, ...]
69
- * ```
70
- */
71
- export declare function getNftCollections<const F extends NftCollectionField = DefaultNftCollectionField>(collections: readonly string[], options?: GetNftCollectionsOptions<F>): Promise<NftCollection<F>[]>;
72
- /** 批量查 ERC721 持有数量:`await getNftBalances(user, [BAYC, MAYC], { chainId: 1 })` */
73
- export declare function getNftBalances(owner: string, collections: readonly string[], options?: ShortcutOptions): Promise<NftBalance[]>;
74
- /** 批量查 ERC721 持有人:`await getNftOwners([{ contract: BAYC, tokenId: 1 }], { chainId: 1 })` */
75
- export declare function getNftOwners(items: readonly NftItem[], options?: ShortcutOptions): Promise<NftOwner[]>;
76
- export interface GetNftTokenUrisOptions extends ShortcutOptions {
77
- /** 把 ipfs://xxx 转成 `${ipfsGateway}xxx`,如 'https://ipfs.io/ipfs/' */
78
- ipfsGateway?: string;
79
- }
80
- /**
81
- * 批量查 NFT 元数据地址(ERC721 tokenURI / ERC1155 uri 自动兼容)。
82
- *
83
- * ```ts
84
- * await getNftTokenUris([{ contract: BAYC, tokenId: 1 }], { chainId: 1, ipfsGateway: 'https://ipfs.io/ipfs/' })
85
- * // [{ contract: BAYC, tokenId: '1', uri: 'https://ipfs.io/ipfs/Qm…/1', success: true }]
86
- * ```
87
- */
88
- export declare function getNftTokenUris(items: readonly NftItem[], options?: GetNftTokenUrisOptions): Promise<NftTokenUri[]>;
89
- /** 批量查 ERC1155 余额:`await getErc1155Balances(user, [{ contract, tokenId: 1 }], { chainId: 137 })` */
90
- export declare function getErc1155Balances(owner: string, items: readonly NftItem[], options?: ShortcutOptions): Promise<Erc1155Balance[]>;
86
+ export declare function getAllowances(owner: string, spender: string, tokens: readonly BalanceToken[], options: GetAllowancesOptions & {
87
+ decimals: false;
88
+ }): Promise<RawTokenAllowance[]>;
89
+ export declare function getAllowances(owner: string, spender: string, tokens: readonly BalanceToken[], options?: GetAllowancesOptions): Promise<TokenAllowance[]>;
91
90
  /** 测试用:按参数取(或创建)Provider,用于验证缓存复用(不在包的公开导出里) */
92
91
  export declare function resolveProviderForTest(options: ShortcutOptions): Provider;
93
92
  /** 测试用:清空 getBalances / getTokens 的 Provider 缓存 */
@@ -1 +1 @@
1
- {"version":3,"file":"shortcuts.d.ts","sourceRoot":"","sources":["../src/shortcuts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shortcuts.d.ts","sourceRoot":"","sources":["../src/shortcuts.ts"],"names":[],"mappings":"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"}