@sentio/sdk 2.61.0-rc.7 → 2.61.0-rc.9

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.
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/fuel/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAQN,OAAO,EAEP,QAAQ,EAIT,MAAM,OAAO,CAAA;AACd,OAAO,EAAW,eAAe,EAAE,MAAM,YAAY,CAAA;AAErD,MAAM,MAAM,eAAe,GAAG;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,yBAAyB,EAAE,eAEvC,CAAA;AAWD,wBAAsB,qBAAqB,CAAC,cAAc,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC,CA+B7G;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,GAAG,GAAG,SAAS,EAAE,GAAG,EAAE,OAAO;;;SAS/D;AAED,wBAAsB,4BAA4B,CAChD,cAAc,EAAE,GAAG,EACnB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,eAAe,CAAC,CAqE1B"}
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/fuel/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAQN,OAAO,EAEP,QAAQ,EAIT,MAAM,OAAO,CAAA;AACd,OAAO,EAAW,eAAe,EAAE,MAAM,YAAY,CAAA;AAErD,MAAM,MAAM,eAAe,GAAG;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,yBAAyB,EAAE,eAEvC,CAAA;AAWD,wBAAsB,qBAAqB,CAAC,cAAc,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC,CAsC7G;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,GAAG,GAAG,SAAS,EAAE,GAAG,EAAE,OAAO;;;SAuB/D;AAED,wBAAsB,4BAA4B,CAChD,cAAc,EAAE,GAAG,EACnB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,eAAe,CAAC,CAqE1B"}
@@ -13,7 +13,16 @@ function findSenderFromInputs(inputs, baseAssetId) {
13
13
  export async function decodeFuelTransaction(gqlTransaction, provider) {
14
14
  const rawPayload = arrayify(gqlTransaction.rawPayload);
15
15
  const receipts = gqlTransaction?.status.receipts?.map(deserializeReceipt) || [];
16
- const [decodedTransaction] = new TransactionCoder().decode(rawPayload, 0);
16
+ let decodedTransaction;
17
+ try {
18
+ const [d] = new TransactionCoder().decode(rawPayload, 0);
19
+ decodedTransaction = d;
20
+ }
21
+ catch (e) {
22
+ // If the transaction cannot be decoded, we log the payload in hex and rethrow it
23
+ console.error('Failed to decode transaction payload:', e, 'payload', Buffer.from(rawPayload).toString('hex'));
24
+ throw e;
25
+ }
17
26
  const { gasCosts, feeParameters, txParameters, baseAssetId } = (await provider.getChain()).consensusParameters;
18
27
  const blockNumber = gqlTransaction.status?.block?.header?.height;
19
28
  const { gasPriceFactor, gasPerByte } = feeParameters;
@@ -42,14 +51,20 @@ export async function decodeFuelTransaction(gqlTransaction, provider) {
42
51
  };
43
52
  }
44
53
  export function decodeLog(receipt, abi) {
45
- if (receipt && (receipt.type === ReceiptType.LogData || receipt.type === ReceiptType.Log)) {
46
- const interfaceToUse = new Interface(abi);
47
- const data = receipt.type === ReceiptType.Log ? new BigNumberCoder('u64').encode(receipt.val0) : receipt.data;
48
- const logId = receipt.rb.toString();
49
- const [decodedLog] = interfaceToUse.decodeLog(data, logId);
50
- return { logId, data: decodedLog };
54
+ try {
55
+ if (receipt && (receipt.type === ReceiptType.LogData || receipt.type === ReceiptType.Log)) {
56
+ const interfaceToUse = new Interface(abi);
57
+ const data = receipt.type === ReceiptType.Log ? new BigNumberCoder('u64').encode(receipt.val0) : receipt.data;
58
+ const logId = receipt.rb.toString();
59
+ const [decodedLog] = interfaceToUse.decodeLog(data, logId);
60
+ return { logId, data: decodedLog };
61
+ }
62
+ return null;
63
+ }
64
+ catch (e) {
65
+ console.error('Failed to decode log', e, 'Please make sure you provide the correct abi.', e, 'receipt', receipt, 'abi', abi);
66
+ throw e;
51
67
  }
52
- return null;
53
68
  }
54
69
  export async function decodeFuelTransactionWithAbi(gqlTransaction, abiMap, provider) {
55
70
  const rawPayload = arrayify(gqlTransaction.rawPayload);
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/fuel/transaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/fuel/transaction.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentio/sdk",
3
- "version": "2.61.0-rc.7",
3
+ "version": "2.61.0-rc.9",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "exports": {
@@ -97,8 +97,8 @@
97
97
  "typechain": "^8.3.2",
98
98
  "utility-types": "^3.11.0",
99
99
  "yaml": "^2.3.4",
100
- "@sentio/protos": "2.61.0-rc.7",
101
- "@sentio/runtime": "^2.61.0-rc.7"
100
+ "@sentio/protos": "2.61.0-rc.9",
101
+ "@sentio/runtime": "^2.61.0-rc.9"
102
102
  },
103
103
  "peerDependencies": {
104
104
  "@sentio/tsup": "^8.3.5-rc.1"
@@ -36,8 +36,15 @@ function findSenderFromInputs(inputs: Input[] | undefined, baseAssetId: string):
36
36
  export async function decodeFuelTransaction(gqlTransaction: any, provider: Provider): Promise<FuelTransaction> {
37
37
  const rawPayload = arrayify(gqlTransaction.rawPayload)
38
38
  const receipts = gqlTransaction?.status.receipts?.map(deserializeReceipt) || []
39
-
40
- const [decodedTransaction] = new TransactionCoder().decode(rawPayload, 0)
39
+ let decodedTransaction: any
40
+ try {
41
+ const [d] = new TransactionCoder().decode(rawPayload, 0)
42
+ decodedTransaction = d
43
+ } catch (e) {
44
+ // If the transaction cannot be decoded, we log the payload in hex and rethrow it
45
+ console.error('Failed to decode transaction payload:', e, 'payload', Buffer.from(rawPayload).toString('hex'))
46
+ throw e
47
+ }
41
48
  const { gasCosts, feeParameters, txParameters, baseAssetId } = (await provider.getChain()).consensusParameters
42
49
  const blockNumber = gqlTransaction.status?.block?.header?.height
43
50
  const { gasPriceFactor, gasPerByte } = feeParameters
@@ -67,14 +74,28 @@ export async function decodeFuelTransaction(gqlTransaction: any, provider: Provi
67
74
  }
68
75
 
69
76
  export function decodeLog(receipt: any | undefined, abi: JsonAbi) {
70
- if (receipt && (receipt.type === ReceiptType.LogData || receipt.type === ReceiptType.Log)) {
71
- const interfaceToUse = new Interface(abi)
72
- const data = receipt.type === ReceiptType.Log ? new BigNumberCoder('u64').encode(receipt.val0) : receipt.data
73
- const logId: string = receipt.rb.toString()
74
- const [decodedLog] = interfaceToUse.decodeLog(data, logId)
75
- return { logId, data: decodedLog }
77
+ try {
78
+ if (receipt && (receipt.type === ReceiptType.LogData || receipt.type === ReceiptType.Log)) {
79
+ const interfaceToUse = new Interface(abi)
80
+ const data = receipt.type === ReceiptType.Log ? new BigNumberCoder('u64').encode(receipt.val0) : receipt.data
81
+ const logId: string = receipt.rb.toString()
82
+ const [decodedLog] = interfaceToUse.decodeLog(data, logId)
83
+ return { logId, data: decodedLog }
84
+ }
85
+ return null
86
+ } catch (e) {
87
+ console.error(
88
+ 'Failed to decode log',
89
+ e,
90
+ 'Please make sure you provide the correct abi.',
91
+ e,
92
+ 'receipt',
93
+ receipt,
94
+ 'abi',
95
+ abi
96
+ )
97
+ throw e
76
98
  }
77
- return null
78
99
  }
79
100
 
80
101
  export async function decodeFuelTransactionWithAbi(