@0xtorch/evm 0.0.97 → 0.0.98
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/_cjs/logic/getTransactionDetail/index.js +6 -3
- package/_cjs/logic/getTransactionDetail/index.js.map +1 -1
- package/_esm/logic/getTransactionDetail/index.js +6 -3
- package/_esm/logic/getTransactionDetail/index.js.map +1 -1
- package/_types/logic/getTransactionDetail/index.d.ts +2 -1
- package/_types/logic/getTransactionDetail/index.d.ts.map +1 -1
- package/logic/getTransactionDetail/index.ts +7 -1
- package/package.json +1 -1
|
@@ -3,17 +3,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getTransactionDetail = void 0;
|
|
4
4
|
const types_1 = require("../../types");
|
|
5
5
|
const decodeTokenTransferLogs_1 = require("./decodeTokenTransferLogs");
|
|
6
|
-
const getTransactionDetail = async ({ chain, hash, timestamp: optionalTimestamp, internalTransactions = [], }) => {
|
|
6
|
+
const getTransactionDetail = async ({ chain, hash, timestamp: optionalTimestamp, internalTransactions = [], timeout, }) => {
|
|
7
7
|
const [transaction, receipt] = await Promise.all([
|
|
8
8
|
chain.client.call({
|
|
9
9
|
clientCall: (client) => client.getTransaction({ hash }),
|
|
10
|
+
timeout,
|
|
10
11
|
}),
|
|
11
12
|
chain.client.call({
|
|
12
13
|
clientCall: (client) => client.getTransactionReceipt({ hash }),
|
|
14
|
+
timeout,
|
|
13
15
|
}),
|
|
14
16
|
]);
|
|
15
17
|
const timestamp = optionalTimestamp ??
|
|
16
|
-
(await getTimestampOfBlockNumber(chain, receipt.blockNumber));
|
|
18
|
+
(await getTimestampOfBlockNumber(chain, receipt.blockNumber, timeout));
|
|
17
19
|
const { erc20Transfers, erc721Transfers, erc1155Transfers, logs } = (0, decodeTokenTransferLogs_1.decodeTokenTransferLogs)(receipt.logs.map((log) => ({
|
|
18
20
|
address: (0, types_1.toLowerHex)(log.address),
|
|
19
21
|
data: (0, types_1.toLowerHex)(log.data),
|
|
@@ -44,9 +46,10 @@ const getTransactionDetail = async ({ chain, hash, timestamp: optionalTimestamp,
|
|
|
44
46
|
};
|
|
45
47
|
};
|
|
46
48
|
exports.getTransactionDetail = getTransactionDetail;
|
|
47
|
-
const getTimestampOfBlockNumber = async (chain, blockNumber) => {
|
|
49
|
+
const getTimestampOfBlockNumber = async (chain, blockNumber, timeout) => {
|
|
48
50
|
const block = await chain.client.call({
|
|
49
51
|
clientCall: (client) => client.getBlock({ blockNumber }),
|
|
52
|
+
timeout,
|
|
50
53
|
});
|
|
51
54
|
return Number(block.timestamp) * 1000;
|
|
52
55
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../logic/getTransactionDetail/index.ts"],"names":[],"mappings":";;;AACA,uCAIoB;AAEpB,uEAAmE;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../logic/getTransactionDetail/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import { toLowerHex, } from '../../types';
|
|
2
2
|
import { decodeTokenTransferLogs } from './decodeTokenTransferLogs';
|
|
3
|
-
export const getTransactionDetail = async ({ chain, hash, timestamp: optionalTimestamp, internalTransactions = [], }) => {
|
|
3
|
+
export const getTransactionDetail = async ({ chain, hash, timestamp: optionalTimestamp, internalTransactions = [], timeout, }) => {
|
|
4
4
|
const [transaction, receipt] = await Promise.all([
|
|
5
5
|
chain.client.call({
|
|
6
6
|
clientCall: (client) => client.getTransaction({ hash }),
|
|
7
|
+
timeout,
|
|
7
8
|
}),
|
|
8
9
|
chain.client.call({
|
|
9
10
|
clientCall: (client) => client.getTransactionReceipt({ hash }),
|
|
11
|
+
timeout,
|
|
10
12
|
}),
|
|
11
13
|
]);
|
|
12
14
|
const timestamp = optionalTimestamp ??
|
|
13
|
-
(await getTimestampOfBlockNumber(chain, receipt.blockNumber));
|
|
15
|
+
(await getTimestampOfBlockNumber(chain, receipt.blockNumber, timeout));
|
|
14
16
|
const { erc20Transfers, erc721Transfers, erc1155Transfers, logs } = decodeTokenTransferLogs(receipt.logs.map((log) => ({
|
|
15
17
|
address: toLowerHex(log.address),
|
|
16
18
|
data: toLowerHex(log.data),
|
|
@@ -40,9 +42,10 @@ export const getTransactionDetail = async ({ chain, hash, timestamp: optionalTim
|
|
|
40
42
|
value: transaction.value,
|
|
41
43
|
};
|
|
42
44
|
};
|
|
43
|
-
const getTimestampOfBlockNumber = async (chain, blockNumber) => {
|
|
45
|
+
const getTimestampOfBlockNumber = async (chain, blockNumber, timeout) => {
|
|
44
46
|
const block = await chain.client.call({
|
|
45
47
|
clientCall: (client) => client.getBlock({ blockNumber }),
|
|
48
|
+
timeout,
|
|
46
49
|
});
|
|
47
50
|
return Number(block.timestamp) * 1000;
|
|
48
51
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../logic/getTransactionDetail/index.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,UAAU,GACX,MAAM,aAAa,CAAA;AAEpB,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../logic/getTransactionDetail/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,8 @@ type GetTransactionDetailParameters = {
|
|
|
6
6
|
hash: LowerHex;
|
|
7
7
|
timestamp?: number;
|
|
8
8
|
internalTransactions?: readonly InternalTransaction[];
|
|
9
|
+
timeout?: number;
|
|
9
10
|
};
|
|
10
|
-
export declare const getTransactionDetail: ({ chain, hash, timestamp: optionalTimestamp, internalTransactions, }: GetTransactionDetailParameters) => Promise<TransactionDetail>;
|
|
11
|
+
export declare const getTransactionDetail: ({ chain, hash, timestamp: optionalTimestamp, internalTransactions, timeout, }: GetTransactionDetailParameters) => Promise<TransactionDetail>;
|
|
11
12
|
export {};
|
|
12
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../logic/getTransactionDetail/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EAEd,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AAGtE,KAAK,8BAA8B,GAAG;IACpC,KAAK,EAAE,KAAK,CAAA;IACZ,IAAI,EAAE,QAAQ,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,oBAAoB,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../logic/getTransactionDetail/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EAEd,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AAGtE,KAAK,8BAA8B,GAAG;IACpC,KAAK,EAAE,KAAK,CAAA;IACZ,IAAI,EAAE,QAAQ,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,oBAAoB,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAA;IACrD,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,oBAAoB,kFAM9B,8BAA8B,KAAG,OAAO,CAAC,iBAAiB,CAiD5D,CAAA"}
|
|
@@ -12,6 +12,7 @@ type GetTransactionDetailParameters = {
|
|
|
12
12
|
hash: LowerHex
|
|
13
13
|
timestamp?: number
|
|
14
14
|
internalTransactions?: readonly InternalTransaction[]
|
|
15
|
+
timeout?: number
|
|
15
16
|
}
|
|
16
17
|
|
|
17
18
|
export const getTransactionDetail = async ({
|
|
@@ -19,18 +20,21 @@ export const getTransactionDetail = async ({
|
|
|
19
20
|
hash,
|
|
20
21
|
timestamp: optionalTimestamp,
|
|
21
22
|
internalTransactions = [],
|
|
23
|
+
timeout,
|
|
22
24
|
}: GetTransactionDetailParameters): Promise<TransactionDetail> => {
|
|
23
25
|
const [transaction, receipt] = await Promise.all([
|
|
24
26
|
chain.client.call({
|
|
25
27
|
clientCall: (client) => client.getTransaction({ hash }),
|
|
28
|
+
timeout,
|
|
26
29
|
}),
|
|
27
30
|
chain.client.call({
|
|
28
31
|
clientCall: (client) => client.getTransactionReceipt({ hash }),
|
|
32
|
+
timeout,
|
|
29
33
|
}),
|
|
30
34
|
])
|
|
31
35
|
const timestamp =
|
|
32
36
|
optionalTimestamp ??
|
|
33
|
-
(await getTimestampOfBlockNumber(chain, receipt.blockNumber))
|
|
37
|
+
(await getTimestampOfBlockNumber(chain, receipt.blockNumber, timeout))
|
|
34
38
|
|
|
35
39
|
const { erc20Transfers, erc721Transfers, erc1155Transfers, logs } =
|
|
36
40
|
decodeTokenTransferLogs(
|
|
@@ -71,9 +75,11 @@ export const getTransactionDetail = async ({
|
|
|
71
75
|
const getTimestampOfBlockNumber = async (
|
|
72
76
|
chain: Chain,
|
|
73
77
|
blockNumber: bigint,
|
|
78
|
+
timeout?: number,
|
|
74
79
|
): Promise<number> => {
|
|
75
80
|
const block = await chain.client.call({
|
|
76
81
|
clientCall: (client) => client.getBlock({ blockNumber }),
|
|
82
|
+
timeout,
|
|
77
83
|
})
|
|
78
84
|
return Number(block.timestamp) * 1000
|
|
79
85
|
}
|