@metamask-previews/transaction-controller 25.2.0-preview-59bf6d5d → 25.3.0-preview-07ab424

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 (107) hide show
  1. package/CHANGELOG.md +28 -1
  2. package/dist/TransactionController.js +14 -13
  3. package/dist/TransactionController.mjs +13 -12
  4. package/dist/{chunk-PF3UOCRW.js → chunk-2AYEGKAN.js} +7 -7
  5. package/dist/{chunk-5IHLDAOF.js → chunk-2JERLB6M.js} +3 -3
  6. package/dist/{chunk-I6RY3XOG.mjs → chunk-5L7EMVB3.mjs} +20 -16
  7. package/dist/chunk-5L7EMVB3.mjs.map +1 -0
  8. package/dist/{chunk-BYBPZUHS.mjs → chunk-A4P4B3OF.mjs} +14 -6
  9. package/dist/chunk-A4P4B3OF.mjs.map +1 -0
  10. package/dist/{chunk-DWHMMJOW.mjs → chunk-AMDQXP37.mjs} +2 -2
  11. package/dist/{chunk-VEJ3MIZG.js → chunk-HBNQEJEM.js} +11 -2
  12. package/dist/chunk-HBNQEJEM.js.map +1 -0
  13. package/dist/chunk-HMOSP33F.js +36 -0
  14. package/dist/chunk-HMOSP33F.js.map +1 -0
  15. package/dist/chunk-HQSNKCXI.mjs +36 -0
  16. package/dist/chunk-HQSNKCXI.mjs.map +1 -0
  17. package/dist/{chunk-6XMG522E.mjs → chunk-K4KOSAGM.mjs} +8 -3
  18. package/dist/chunk-K4KOSAGM.mjs.map +1 -0
  19. package/dist/{chunk-PGTV7236.mjs → chunk-K7UC23EG.mjs} +3 -3
  20. package/dist/{chunk-JRBREX22.mjs → chunk-KG4UW4K4.mjs} +17 -4
  21. package/dist/chunk-KG4UW4K4.mjs.map +1 -0
  22. package/dist/{chunk-GE57YNGX.js → chunk-KT6UAKBB.js} +8 -3
  23. package/dist/chunk-KT6UAKBB.js.map +1 -0
  24. package/dist/{chunk-TZTP4JVA.js → chunk-L4S5SEV3.js} +4 -4
  25. package/dist/{chunk-7BG5XOXJ.js → chunk-NLE3SS2S.js} +26 -22
  26. package/dist/chunk-NLE3SS2S.js.map +1 -0
  27. package/dist/{chunk-QRSTF45Q.mjs → chunk-OLIA2HD4.mjs} +3 -3
  28. package/dist/{chunk-HS277C77.js → chunk-SD6CWFDF.js} +16 -3
  29. package/dist/chunk-SD6CWFDF.js.map +1 -0
  30. package/dist/{chunk-QEX3QMSL.js → chunk-SOSF65FI.js} +3 -3
  31. package/dist/{chunk-W57BD6NX.mjs → chunk-UADPSS35.mjs} +11 -2
  32. package/dist/chunk-UADPSS35.mjs.map +1 -0
  33. package/dist/{chunk-FHG5GY6F.js → chunk-UCY5PFZI.js} +6 -6
  34. package/dist/{chunk-GC77BSQZ.js → chunk-V5X6MZHN.js} +16 -8
  35. package/dist/chunk-V5X6MZHN.js.map +1 -0
  36. package/dist/{chunk-5UL3VDFT.mjs → chunk-VAOKN3J4.mjs} +2 -2
  37. package/dist/{chunk-IK55QTGO.mjs → chunk-ZWKHTNLF.mjs} +2 -2
  38. package/dist/errors.js +15 -0
  39. package/dist/errors.js.map +1 -0
  40. package/dist/errors.mjs +15 -0
  41. package/dist/errors.mjs.map +1 -0
  42. package/dist/gas-flows/DefaultGasFeeFlow.js +5 -5
  43. package/dist/gas-flows/DefaultGasFeeFlow.mjs +4 -4
  44. package/dist/gas-flows/LineaGasFeeFlow.js +6 -6
  45. package/dist/gas-flows/LineaGasFeeFlow.mjs +5 -5
  46. package/dist/helpers/EtherscanRemoteTransactionSource.js +1 -1
  47. package/dist/helpers/EtherscanRemoteTransactionSource.mjs +1 -1
  48. package/dist/helpers/GasFeePoller.js +4 -4
  49. package/dist/helpers/GasFeePoller.mjs +3 -3
  50. package/dist/helpers/MultichainTrackingHelper.js +1 -1
  51. package/dist/helpers/MultichainTrackingHelper.mjs +1 -1
  52. package/dist/helpers/PendingTransactionTracker.js +1 -1
  53. package/dist/helpers/PendingTransactionTracker.mjs +1 -1
  54. package/dist/index.js +18 -15
  55. package/dist/index.mjs +17 -14
  56. package/dist/tsconfig.build.tsbuildinfo +1 -1
  57. package/dist/types/TransactionController.d.ts.map +1 -1
  58. package/dist/types/errors.d.ts +15 -0
  59. package/dist/types/errors.d.ts.map +1 -0
  60. package/dist/types/index.d.ts +1 -1
  61. package/dist/types/index.d.ts.map +1 -1
  62. package/dist/types/types.d.ts +12 -4
  63. package/dist/types/types.d.ts.map +1 -1
  64. package/dist/types/utils/simulation-api.d.ts.map +1 -1
  65. package/dist/types/utils/simulation.d.ts.map +1 -1
  66. package/dist/types/utils/transaction-type.d.ts.map +1 -1
  67. package/dist/types.js +4 -2
  68. package/dist/types.mjs +3 -1
  69. package/dist/utils/external-transactions.js +1 -1
  70. package/dist/utils/external-transactions.mjs +1 -1
  71. package/dist/utils/gas-fees.js +4 -4
  72. package/dist/utils/gas-fees.mjs +3 -3
  73. package/dist/utils/gas-flow.js +3 -3
  74. package/dist/utils/gas-flow.mjs +2 -2
  75. package/dist/utils/simulation-api.js +4 -2
  76. package/dist/utils/simulation-api.mjs +3 -1
  77. package/dist/utils/simulation.js +5 -4
  78. package/dist/utils/simulation.mjs +4 -3
  79. package/dist/utils/swaps.js +1 -1
  80. package/dist/utils/swaps.mjs +1 -1
  81. package/dist/utils/transaction-type.js +3 -3
  82. package/dist/utils/transaction-type.mjs +2 -2
  83. package/dist/utils/utils.js +1 -1
  84. package/dist/utils/utils.mjs +1 -1
  85. package/dist/utils/validation.js +1 -1
  86. package/dist/utils/validation.mjs +1 -1
  87. package/package.json +2 -2
  88. package/dist/chunk-6XMG522E.mjs.map +0 -1
  89. package/dist/chunk-7BG5XOXJ.js.map +0 -1
  90. package/dist/chunk-BYBPZUHS.mjs.map +0 -1
  91. package/dist/chunk-GC77BSQZ.js.map +0 -1
  92. package/dist/chunk-GE57YNGX.js.map +0 -1
  93. package/dist/chunk-HS277C77.js.map +0 -1
  94. package/dist/chunk-I6RY3XOG.mjs.map +0 -1
  95. package/dist/chunk-JRBREX22.mjs.map +0 -1
  96. package/dist/chunk-VEJ3MIZG.js.map +0 -1
  97. package/dist/chunk-W57BD6NX.mjs.map +0 -1
  98. /package/dist/{chunk-PF3UOCRW.js.map → chunk-2AYEGKAN.js.map} +0 -0
  99. /package/dist/{chunk-5IHLDAOF.js.map → chunk-2JERLB6M.js.map} +0 -0
  100. /package/dist/{chunk-DWHMMJOW.mjs.map → chunk-AMDQXP37.mjs.map} +0 -0
  101. /package/dist/{chunk-PGTV7236.mjs.map → chunk-K7UC23EG.mjs.map} +0 -0
  102. /package/dist/{chunk-TZTP4JVA.js.map → chunk-L4S5SEV3.js.map} +0 -0
  103. /package/dist/{chunk-QRSTF45Q.mjs.map → chunk-OLIA2HD4.mjs.map} +0 -0
  104. /package/dist/{chunk-QEX3QMSL.js.map → chunk-SOSF65FI.js.map} +0 -0
  105. /package/dist/{chunk-FHG5GY6F.js.map → chunk-UCY5PFZI.js.map} +0 -0
  106. /package/dist/{chunk-5UL3VDFT.mjs.map → chunk-VAOKN3J4.mjs.map} +0 -0
  107. /package/dist/{chunk-IK55QTGO.mjs.map → chunk-ZWKHTNLF.mjs.map} +0 -0
@@ -1,12 +1,12 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkPF3UOCRWjs = require('./chunk-PF3UOCRW.js');
3
+ var _chunk2AYEGKANjs = require('./chunk-2AYEGKAN.js');
4
4
 
5
5
 
6
6
  var _chunkS6VGOPUYjs = require('./chunk-S6VGOPUY.js');
7
7
 
8
8
 
9
- var _chunkVEJ3MIZGjs = require('./chunk-VEJ3MIZG.js');
9
+ var _chunkHBNQEJEMjs = require('./chunk-HBNQEJEM.js');
10
10
 
11
11
 
12
12
 
@@ -48,7 +48,7 @@ var LineaGasFeeFlow = class {
48
48
  return await _chunkZ4BLTVTBjs.__privateMethod.call(void 0, this, _getLineaGasFees, getLineaGasFees_fn).call(this, request);
49
49
  } catch (error) {
50
50
  log("Using default flow as fallback due to error", error);
51
- return new (0, _chunkPF3UOCRWjs.DefaultGasFeeFlow)().getGasFees(request);
51
+ return new (0, _chunk2AYEGKANjs.DefaultGasFeeFlow)().getGasFees(request);
52
52
  }
53
53
  }
54
54
  };
@@ -63,7 +63,7 @@ getLineaGasFees_fn = async function(request) {
63
63
  log("Generated priority fees", _chunkZ4BLTVTBjs.__privateMethod.call(void 0, this, _feesToString, feesToString_fn).call(this, priorityFees));
64
64
  const maxFees = _chunkZ4BLTVTBjs.__privateMethod.call(void 0, this, _getMaxFees, getMaxFees_fn).call(this, baseFees, priorityFees);
65
65
  log("Generated max fees", _chunkZ4BLTVTBjs.__privateMethod.call(void 0, this, _feesToString, feesToString_fn).call(this, maxFees));
66
- const estimates = Object.values(_chunkVEJ3MIZGjs.GasFeeEstimateLevel).reduce(
66
+ const estimates = Object.values(_chunkHBNQEJEMjs.GasFeeEstimateLevel).reduce(
67
67
  (result, level) => ({
68
68
  ...result,
69
69
  [level]: {
@@ -110,7 +110,7 @@ getMaxFees_fn = function(baseFees, priorityFees) {
110
110
  };
111
111
  _feesToString = new WeakSet();
112
112
  feesToString_fn = function(fees) {
113
- return Object.values(_chunkVEJ3MIZGjs.GasFeeEstimateLevel).map(
113
+ return Object.values(_chunkHBNQEJEMjs.GasFeeEstimateLevel).map(
114
114
  (level) => fees[level].toString(10)
115
115
  );
116
116
  };
@@ -118,4 +118,4 @@ feesToString_fn = function(fees) {
118
118
 
119
119
 
120
120
  exports.LineaGasFeeFlow = LineaGasFeeFlow;
121
- //# sourceMappingURL=chunk-FHG5GY6F.js.map
121
+ //# sourceMappingURL=chunk-UCY5PFZI.js.map
@@ -1,6 +1,11 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkGE57YNGXjs = require('./chunk-GE57YNGX.js');
3
+ var _chunkKT6UAKBBjs = require('./chunk-KT6UAKBB.js');
4
+
5
+
6
+
7
+
8
+ var _chunkHMOSP33Fjs = require('./chunk-HMOSP33F.js');
4
9
 
5
10
 
6
11
  var _chunkS6VGOPUYjs = require('./chunk-S6VGOPUY.js');
@@ -11,11 +16,12 @@ var _controllerutils = require('@metamask/controller-utils');
11
16
  var _metamaskethabis = require('@metamask/metamask-eth-abis');
12
17
  var _utils = require('@metamask/utils');
13
18
  var log = _utils.createModuleLogger.call(void 0, _chunkS6VGOPUYjs.projectLogger, "simulation");
19
+ var REVERTED_ERRORS = ["execution reverted", "insufficient funds for gas"];
14
20
  async function getSimulationData(request) {
15
21
  const { chainId, from, to, value, data } = request;
16
22
  log("Getting simulation data", request);
17
23
  try {
18
- const response = await _chunkGE57YNGXjs.simulateTransactions.call(void 0, chainId, {
24
+ const response = await _chunkKT6UAKBBjs.simulateTransactions.call(void 0, chainId, {
19
25
  transactions: [
20
26
  {
21
27
  data,
@@ -30,8 +36,11 @@ async function getSimulationData(request) {
30
36
  withLogs: true
31
37
  });
32
38
  const transactionError = response.transactions?.[0]?.error;
39
+ if (REVERTED_ERRORS.some((error) => transactionError?.includes(error))) {
40
+ throw new (0, _chunkHMOSP33Fjs.SimulationRevertedError)();
41
+ }
33
42
  if (transactionError) {
34
- throw { message: transactionError };
43
+ throw new (0, _chunkHMOSP33Fjs.SimulationError)(transactionError);
35
44
  }
36
45
  const nativeBalanceChange = getNativeBalanceChange(request.from, response);
37
46
  const events = getEvents(response);
@@ -48,8 +57,7 @@ async function getSimulationData(request) {
48
57
  tokenBalanceChanges: [],
49
58
  error: {
50
59
  code: rawError.code,
51
- message: rawError.message,
52
- isReverted: rawError.message?.includes("execution reverted") ?? false
60
+ message: rawError.message
53
61
  }
54
62
  };
55
63
  }
@@ -125,12 +133,12 @@ async function getTokenBalanceChanges(request, events) {
125
133
  if (!balanceTransactions.length) {
126
134
  return [];
127
135
  }
128
- const response = await _chunkGE57YNGXjs.simulateTransactions.call(void 0, request.chainId, {
136
+ const response = await _chunkKT6UAKBBjs.simulateTransactions.call(void 0, request.chainId, {
129
137
  transactions: [...balanceTransactions, request, ...balanceTransactions]
130
138
  });
131
139
  log("Balance simulation response", response);
132
140
  if (response.transactions.length !== balanceTransactions.length * 2 + 1) {
133
- throw new Error("Invalid response from simulation API");
141
+ throw new (0, _chunkHMOSP33Fjs.SimulationInvalidResponseError)();
134
142
  }
135
143
  return [...balanceTransactionsByToken.keys()].map((token, index) => {
136
144
  const previousBalance = normalizeReturnValue(
@@ -262,4 +270,4 @@ function normalizeReturnValue(value) {
262
270
 
263
271
 
264
272
  exports.getSimulationData = getSimulationData;
265
- //# sourceMappingURL=chunk-GC77BSQZ.js.map
273
+ //# sourceMappingURL=chunk-V5X6MZHN.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/simulation.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Fragment, LogDescription, Result } from '@ethersproject/abi';\nimport { Interface } from '@ethersproject/abi';\nimport { hexToBN, toHex } from '@metamask/controller-utils';\nimport { abiERC20, abiERC721, abiERC1155 } from '@metamask/metamask-eth-abis';\nimport { createModuleLogger, type Hex } from '@metamask/utils';\n\nimport {\n SimulationError,\n SimulationInvalidResponseError,\n SimulationRevertedError,\n} from '../errors';\nimport { projectLogger } from '../logger';\nimport type {\n SimulationBalanceChange,\n SimulationData,\n SimulationTokenBalanceChange,\n SimulationToken,\n} from '../types';\nimport { SimulationTokenStandard } from '../types';\nimport { simulateTransactions } from './simulation-api';\nimport type {\n SimulationResponseLog,\n SimulationRequestTransaction,\n SimulationResponse,\n SimulationResponseCallTrace,\n} from './simulation-api';\n\nconst log = createModuleLogger(projectLogger, 'simulation');\n\nconst REVERTED_ERRORS = ['execution reverted', 'insufficient funds for gas'];\n\ntype ABI = Fragment[];\n\nexport type GetSimulationDataRequest = {\n chainId: Hex;\n from: Hex;\n to?: Hex;\n value?: Hex;\n data?: Hex;\n};\n\ntype ParsedEvent = {\n contractAddress: Hex;\n tokenStandard: SimulationTokenStandard;\n name: string;\n args: Record<string, Hex | Hex[]>;\n abi: ABI;\n};\n\n/**\n * Generate simulation data for a transaction.\n * @param request - The transaction to simulate.\n * @param request.chainId - The chain ID of the transaction.\n * @param request.from - The sender of the transaction.\n * @param request.to - The recipient of the transaction.\n * @param request.value - The value of the transaction.\n * @param request.data - The data of the transaction.\n * @returns The simulation data.\n */\nexport async function getSimulationData(\n request: GetSimulationDataRequest,\n): Promise<SimulationData> {\n const { chainId, from, to, value, data } = request;\n\n log('Getting simulation data', request);\n\n try {\n const response = await simulateTransactions(chainId, {\n transactions: [\n {\n data,\n from,\n maxFeePerGas: '0x0',\n maxPriorityFeePerGas: '0x0',\n to,\n value,\n },\n ],\n withCallTrace: true,\n withLogs: true,\n });\n\n const transactionError = response.transactions?.[0]?.error;\n\n if (REVERTED_ERRORS.some((error) => transactionError?.includes(error))) {\n throw new SimulationRevertedError();\n }\n\n if (transactionError) {\n throw new SimulationError(transactionError);\n }\n\n const nativeBalanceChange = getNativeBalanceChange(request.from, response);\n const events = getEvents(response);\n\n log('Parsed events', events);\n\n const tokenBalanceChanges = await getTokenBalanceChanges(request, events);\n\n return {\n nativeBalanceChange,\n tokenBalanceChanges,\n };\n } catch (error) {\n log('Failed to get simulation data', error, request);\n\n const rawError = error as { code?: number; message?: string };\n\n return {\n tokenBalanceChanges: [],\n error: {\n code: rawError.code,\n message: rawError.message,\n },\n };\n }\n}\n\n/**\n * Extract the native balance change from a simulation response.\n * @param userAddress - The user's account address.\n * @param response - The simulation response.\n * @returns The native balance change or undefined if unchanged.\n */\nfunction getNativeBalanceChange(\n userAddress: Hex,\n response: SimulationResponse,\n): SimulationBalanceChange | undefined {\n const transactionResponse = response.transactions[0];\n\n /* istanbul ignore next */\n if (!transactionResponse) {\n return undefined;\n }\n\n const { stateDiff } = transactionResponse;\n const previousBalance = stateDiff?.pre?.[userAddress]?.balance;\n const newBalance = stateDiff?.post?.[userAddress]?.balance;\n\n if (!previousBalance || !newBalance) {\n return undefined;\n }\n\n return getSimulationBalanceChange(previousBalance, newBalance);\n}\n\n/**\n * Extract events from a simulation response.\n * @param response - The simulation response.\n * @returns The parsed events.\n */\nfunction getEvents(response: SimulationResponse): ParsedEvent[] {\n /* istanbul ignore next */\n const logs = extractLogs(\n response.transactions[0]?.callTrace ?? ({} as SimulationResponseCallTrace),\n );\n\n log('Extracted logs', logs);\n\n const erc20Interface = new Interface(abiERC20);\n const erc721Interface = new Interface(abiERC721);\n const erc1155Interface = new Interface(abiERC1155);\n\n return logs\n .map((currentLog) => {\n const event = parseLog(\n currentLog,\n erc20Interface,\n erc721Interface,\n erc1155Interface,\n );\n\n if (!event) {\n log('Failed to parse log', currentLog);\n return undefined;\n }\n\n /* istanbul ignore next */\n const inputs = event.abi.find((e) => e.name === event.name)?.inputs;\n\n /* istanbul ignore if */\n if (!inputs) {\n log('Failed to find inputs for event', event);\n return undefined;\n }\n\n const args = parseEventArgs(event.args, inputs);\n\n return {\n contractAddress: currentLog.address,\n tokenStandard: event.standard,\n name: event.name,\n args,\n abi: event.abi,\n };\n })\n .filter((e) => e !== undefined) as ParsedEvent[];\n}\n\n/**\n * Parse event arguments using ABI input definitions.\n * @param args - The raw event arguments.\n * @param abiInputs - The ABI input definitions.\n * @returns The parsed event arguments.\n */\nfunction parseEventArgs(\n args: Result,\n abiInputs: { name: string }[],\n): Record<string, Hex | Hex[]> {\n return args.reduce((result, arg, index) => {\n const name = abiInputs[index].name.replace('_', '');\n const value = parseEventArgValue(arg);\n\n result[name] = value;\n\n return result;\n }, {});\n}\n\n/**\n * Parse an event argument value.\n * @param value - The event argument value.\n * @returns The parsed event argument value.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction parseEventArgValue(value: any): Hex | Hex[] {\n if (Array.isArray(value)) {\n return value.map(parseEventArgValue) as Hex[];\n }\n\n return (value.toHexString?.() ?? value).toLowerCase();\n}\n\n/**\n * Generate token balance changes from parsed events.\n * @param request - The transaction that was simulated.\n * @param events - The parsed events.\n * @returns An array of token balance changes.\n */\nasync function getTokenBalanceChanges(\n request: GetSimulationDataRequest,\n events: ParsedEvent[],\n): Promise<SimulationTokenBalanceChange[]> {\n const balanceTransactionsByToken = getTokenBalanceTransactions(\n request,\n events,\n );\n\n const balanceTransactions = [...balanceTransactionsByToken.values()];\n\n log('Generated balance transactions', balanceTransactions);\n\n if (!balanceTransactions.length) {\n return [];\n }\n\n const response = await simulateTransactions(request.chainId as Hex, {\n transactions: [...balanceTransactions, request, ...balanceTransactions],\n });\n\n log('Balance simulation response', response);\n\n if (response.transactions.length !== balanceTransactions.length * 2 + 1) {\n throw new SimulationInvalidResponseError();\n }\n\n return [...balanceTransactionsByToken.keys()]\n .map((token, index) => {\n const previousBalance = normalizeReturnValue(\n response.transactions[index].return,\n );\n\n const newBalance = normalizeReturnValue(\n response.transactions[index + balanceTransactions.length + 1].return,\n );\n\n const balanceChange = getSimulationBalanceChange(\n previousBalance,\n newBalance,\n );\n\n if (!balanceChange) {\n return undefined;\n }\n\n return {\n ...token,\n ...balanceChange,\n };\n })\n .filter((change) => change !== undefined) as SimulationTokenBalanceChange[];\n}\n\n/**\n * Generate transactions to check token balances.\n * @param request - The transaction that was simulated.\n * @param events - The parsed events.\n * @returns A map of token balance transactions keyed by token.\n */\nfunction getTokenBalanceTransactions(\n request: GetSimulationDataRequest,\n events: ParsedEvent[],\n): Map<SimulationToken, SimulationRequestTransaction> {\n const tokenKeys = new Set();\n\n return events.reduce((result, event) => {\n if (\n !['Transfer', 'TransferSingle', 'TransferBatch'].includes(event.name) ||\n ![event.args.from, event.args.to].includes(request.from)\n ) {\n log('Ignoring event', event);\n return result;\n }\n\n // ERC-20 does not have a token ID so default to undefined.\n let tokenIds: (Hex | undefined)[] = [undefined];\n\n if (event.tokenStandard === SimulationTokenStandard.erc721) {\n tokenIds = [event.args.tokenId as Hex];\n }\n\n if (\n event.tokenStandard === SimulationTokenStandard.erc1155 &&\n event.name === 'TransferSingle'\n ) {\n tokenIds = [event.args.id as Hex];\n }\n\n if (\n event.tokenStandard === SimulationTokenStandard.erc1155 &&\n event.name === 'TransferBatch'\n ) {\n tokenIds = event.args.ids as Hex[];\n }\n\n log('Extracted token ids', tokenIds);\n\n for (const tokenId of tokenIds) {\n const simulationToken: SimulationToken = {\n address: event.contractAddress,\n standard: event.tokenStandard,\n id: tokenId,\n };\n\n const tokenKey = JSON.stringify(simulationToken);\n\n if (tokenKeys.has(tokenKey)) {\n log(\n 'Ignoring additional event with same contract and token ID',\n simulationToken,\n );\n continue;\n }\n\n tokenKeys.add(tokenKey);\n\n const parameters = [request.from];\n\n if (event.tokenStandard === SimulationTokenStandard.erc1155) {\n parameters.push(tokenId as Hex);\n }\n\n result.set(simulationToken, {\n from: request.from,\n to: event.contractAddress,\n data: new Interface(event.abi).encodeFunctionData(\n 'balanceOf',\n parameters,\n ) as Hex,\n });\n }\n\n return result;\n }, new Map<SimulationToken, SimulationRequestTransaction>());\n}\n\n/**\n * Parse a raw event log using known ABIs.\n * @param eventLog - The raw event log.\n * @param erc20 - The ERC-20 ABI interface.\n * @param erc721 - The ERC-721 ABI interface.\n * @param erc1155 - The ERC-1155 ABI interface.\n * @returns The parsed event log or undefined if it could not be parsed.\n */\nfunction parseLog(\n eventLog: SimulationResponseLog,\n erc20: Interface,\n erc721: Interface,\n erc1155: Interface,\n):\n | (LogDescription & { abi: ABI; standard: SimulationTokenStandard })\n | undefined {\n const abisByStandard = [\n {\n abi: abiERC20,\n contractInterface: erc20,\n standard: SimulationTokenStandard.erc20,\n },\n {\n abi: abiERC721,\n contractInterface: erc721,\n standard: SimulationTokenStandard.erc721,\n },\n {\n abi: abiERC1155,\n contractInterface: erc1155,\n standard: SimulationTokenStandard.erc1155,\n },\n ];\n\n for (const { abi, contractInterface, standard } of abisByStandard) {\n try {\n return {\n ...contractInterface.parseLog(eventLog),\n abi,\n standard,\n };\n } catch (e) {\n continue;\n }\n }\n\n return undefined;\n}\n\n/**\n * Extract all logs from a call trace tree.\n * @param call - The root call trace.\n * @returns An array of logs.\n */\nfunction extractLogs(\n call: SimulationResponseCallTrace,\n): SimulationResponseLog[] {\n /* istanbul ignore next */\n const logs = call.logs ?? [];\n\n /* istanbul ignore next */\n const nestedCalls = call.calls ?? [];\n\n return [\n ...logs,\n ...nestedCalls.map((nestedCall) => extractLogs(nestedCall)).flat(),\n ];\n}\n\n/**\n * Generate balance change data from previous and new balances.\n * @param previousBalance - The previous balance.\n * @param newBalance - The new balance.\n * @returns The balance change data or undefined if unchanged.\n */\nfunction getSimulationBalanceChange(\n previousBalance: Hex,\n newBalance: Hex,\n): SimulationBalanceChange | undefined {\n const differenceBN = hexToBN(newBalance).sub(hexToBN(previousBalance));\n const isDecrease = differenceBN.isNeg();\n const difference = toHex(differenceBN.abs());\n\n if (differenceBN.isZero()) {\n log('Balance change is zero');\n return undefined;\n }\n\n return {\n previousBalance,\n newBalance,\n difference,\n isDecrease,\n };\n}\n\n/**\n * Normalize a return value.\n * @param value - The return value to normalize.\n * @returns The normalized return value.\n */\nfunction normalizeReturnValue(value: Hex): Hex {\n return toHex(hexToBN(value));\n}\n"]}
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-KFL2GGZC.mjs";
4
4
  import {
5
5
  getGasFeeFlow
6
- } from "./chunk-DWHMMJOW.mjs";
6
+ } from "./chunk-AMDQXP37.mjs";
7
7
  import {
8
8
  projectLogger
9
9
  } from "./chunk-UQQWZT6C.mjs";
@@ -179,4 +179,4 @@ getUnapprovedTransactions_fn = function() {
179
179
  export {
180
180
  GasFeePoller
181
181
  };
182
- //# sourceMappingURL=chunk-5UL3VDFT.mjs.map
182
+ //# sourceMappingURL=chunk-VAOKN3J4.mjs.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-3D3SA6PY.mjs";
4
4
  import {
5
5
  getGasFeeFlow
6
- } from "./chunk-DWHMMJOW.mjs";
6
+ } from "./chunk-AMDQXP37.mjs";
7
7
  import {
8
8
  projectLogger
9
9
  } from "./chunk-UQQWZT6C.mjs";
@@ -205,4 +205,4 @@ export {
205
205
  updateGasFees,
206
206
  gweiDecimalToWeiHex
207
207
  };
208
- //# sourceMappingURL=chunk-IK55QTGO.mjs.map
208
+ //# sourceMappingURL=chunk-ZWKHTNLF.mjs.map
package/dist/errors.js ADDED
@@ -0,0 +1,15 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+ var _chunkHMOSP33Fjs = require('./chunk-HMOSP33F.js');
7
+ require('./chunk-HBNQEJEM.js');
8
+ require('./chunk-Z4BLTVTB.js');
9
+
10
+
11
+
12
+
13
+
14
+ exports.SimulationChainNotSupportedError = _chunkHMOSP33Fjs.SimulationChainNotSupportedError; exports.SimulationError = _chunkHMOSP33Fjs.SimulationError; exports.SimulationInvalidResponseError = _chunkHMOSP33Fjs.SimulationInvalidResponseError; exports.SimulationRevertedError = _chunkHMOSP33Fjs.SimulationRevertedError;
15
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import {
2
+ SimulationChainNotSupportedError,
3
+ SimulationError,
4
+ SimulationInvalidResponseError,
5
+ SimulationRevertedError
6
+ } from "./chunk-HQSNKCXI.mjs";
7
+ import "./chunk-UADPSS35.mjs";
8
+ import "./chunk-XUI43LEZ.mjs";
9
+ export {
10
+ SimulationChainNotSupportedError,
11
+ SimulationError,
12
+ SimulationInvalidResponseError,
13
+ SimulationRevertedError
14
+ };
15
+ //# sourceMappingURL=errors.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,15 +1,15 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkPF3UOCRWjs = require('../chunk-PF3UOCRW.js');
4
- require('../chunk-5IHLDAOF.js');
3
+ var _chunk2AYEGKANjs = require('../chunk-2AYEGKAN.js');
4
+ require('../chunk-2JERLB6M.js');
5
5
  require('../chunk-5OQ373JS.js');
6
6
  require('../chunk-UGFBA4GV.js');
7
- require('../chunk-TZTP4JVA.js');
7
+ require('../chunk-L4S5SEV3.js');
8
8
  require('../chunk-ITDY6AIZ.js');
9
9
  require('../chunk-S6VGOPUY.js');
10
- require('../chunk-VEJ3MIZG.js');
10
+ require('../chunk-HBNQEJEM.js');
11
11
  require('../chunk-Z4BLTVTB.js');
12
12
 
13
13
 
14
- exports.DefaultGasFeeFlow = _chunkPF3UOCRWjs.DefaultGasFeeFlow;
14
+ exports.DefaultGasFeeFlow = _chunk2AYEGKANjs.DefaultGasFeeFlow;
15
15
  //# sourceMappingURL=DefaultGasFeeFlow.js.map
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  DefaultGasFeeFlow
3
- } from "../chunk-QRSTF45Q.mjs";
4
- import "../chunk-IK55QTGO.mjs";
3
+ } from "../chunk-OLIA2HD4.mjs";
4
+ import "../chunk-ZWKHTNLF.mjs";
5
5
  import "../chunk-3D3SA6PY.mjs";
6
6
  import "../chunk-J56A7UCK.mjs";
7
- import "../chunk-DWHMMJOW.mjs";
7
+ import "../chunk-AMDQXP37.mjs";
8
8
  import "../chunk-Z3HHSD5I.mjs";
9
9
  import "../chunk-UQQWZT6C.mjs";
10
- import "../chunk-W57BD6NX.mjs";
10
+ import "../chunk-UADPSS35.mjs";
11
11
  import "../chunk-XUI43LEZ.mjs";
12
12
  export {
13
13
  DefaultGasFeeFlow
@@ -1,16 +1,16 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkFHG5GY6Fjs = require('../chunk-FHG5GY6F.js');
4
- require('../chunk-PF3UOCRW.js');
5
- require('../chunk-5IHLDAOF.js');
3
+ var _chunkUCY5PFZIjs = require('../chunk-UCY5PFZI.js');
4
+ require('../chunk-2AYEGKAN.js');
5
+ require('../chunk-2JERLB6M.js');
6
6
  require('../chunk-5OQ373JS.js');
7
7
  require('../chunk-UGFBA4GV.js');
8
- require('../chunk-TZTP4JVA.js');
8
+ require('../chunk-L4S5SEV3.js');
9
9
  require('../chunk-ITDY6AIZ.js');
10
10
  require('../chunk-S6VGOPUY.js');
11
- require('../chunk-VEJ3MIZG.js');
11
+ require('../chunk-HBNQEJEM.js');
12
12
  require('../chunk-Z4BLTVTB.js');
13
13
 
14
14
 
15
- exports.LineaGasFeeFlow = _chunkFHG5GY6Fjs.LineaGasFeeFlow;
15
+ exports.LineaGasFeeFlow = _chunkUCY5PFZIjs.LineaGasFeeFlow;
16
16
  //# sourceMappingURL=LineaGasFeeFlow.js.map
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  LineaGasFeeFlow
3
- } from "../chunk-PGTV7236.mjs";
4
- import "../chunk-QRSTF45Q.mjs";
5
- import "../chunk-IK55QTGO.mjs";
3
+ } from "../chunk-K7UC23EG.mjs";
4
+ import "../chunk-OLIA2HD4.mjs";
5
+ import "../chunk-ZWKHTNLF.mjs";
6
6
  import "../chunk-3D3SA6PY.mjs";
7
7
  import "../chunk-J56A7UCK.mjs";
8
- import "../chunk-DWHMMJOW.mjs";
8
+ import "../chunk-AMDQXP37.mjs";
9
9
  import "../chunk-Z3HHSD5I.mjs";
10
10
  import "../chunk-UQQWZT6C.mjs";
11
- import "../chunk-W57BD6NX.mjs";
11
+ import "../chunk-UADPSS35.mjs";
12
12
  import "../chunk-XUI43LEZ.mjs";
13
13
  export {
14
14
  LineaGasFeeFlow
@@ -4,7 +4,7 @@ var _chunkF3CMU2DMjs = require('../chunk-F3CMU2DM.js');
4
4
  require('../chunk-CXXGL43K.js');
5
5
  require('../chunk-ITDY6AIZ.js');
6
6
  require('../chunk-S6VGOPUY.js');
7
- require('../chunk-VEJ3MIZG.js');
7
+ require('../chunk-HBNQEJEM.js');
8
8
  require('../chunk-Z4BLTVTB.js');
9
9
 
10
10
 
@@ -4,7 +4,7 @@ import {
4
4
  import "../chunk-VEREDMI2.mjs";
5
5
  import "../chunk-Z3HHSD5I.mjs";
6
6
  import "../chunk-UQQWZT6C.mjs";
7
- import "../chunk-W57BD6NX.mjs";
7
+ import "../chunk-UADPSS35.mjs";
8
8
  import "../chunk-XUI43LEZ.mjs";
9
9
  export {
10
10
  EtherscanRemoteTransactionSource
@@ -1,12 +1,12 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkQEX3QMSLjs = require('../chunk-QEX3QMSL.js');
3
+ var _chunkSOSF65FIjs = require('../chunk-SOSF65FI.js');
4
4
  require('../chunk-R7NJVDWN.js');
5
- require('../chunk-TZTP4JVA.js');
5
+ require('../chunk-L4S5SEV3.js');
6
6
  require('../chunk-S6VGOPUY.js');
7
- require('../chunk-VEJ3MIZG.js');
7
+ require('../chunk-HBNQEJEM.js');
8
8
  require('../chunk-Z4BLTVTB.js');
9
9
 
10
10
 
11
- exports.GasFeePoller = _chunkQEX3QMSLjs.GasFeePoller;
11
+ exports.GasFeePoller = _chunkSOSF65FIjs.GasFeePoller;
12
12
  //# sourceMappingURL=GasFeePoller.js.map
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  GasFeePoller
3
- } from "../chunk-5UL3VDFT.mjs";
3
+ } from "../chunk-VAOKN3J4.mjs";
4
4
  import "../chunk-KFL2GGZC.mjs";
5
- import "../chunk-DWHMMJOW.mjs";
5
+ import "../chunk-AMDQXP37.mjs";
6
6
  import "../chunk-UQQWZT6C.mjs";
7
- import "../chunk-W57BD6NX.mjs";
7
+ import "../chunk-UADPSS35.mjs";
8
8
  import "../chunk-XUI43LEZ.mjs";
9
9
  export {
10
10
  GasFeePoller
@@ -5,7 +5,7 @@ require('../chunk-F3CMU2DM.js');
5
5
  require('../chunk-CXXGL43K.js');
6
6
  require('../chunk-ITDY6AIZ.js');
7
7
  require('../chunk-S6VGOPUY.js');
8
- require('../chunk-VEJ3MIZG.js');
8
+ require('../chunk-HBNQEJEM.js');
9
9
  require('../chunk-Z4BLTVTB.js');
10
10
 
11
11
 
@@ -5,7 +5,7 @@ import "../chunk-IZI7FQIN.mjs";
5
5
  import "../chunk-VEREDMI2.mjs";
6
6
  import "../chunk-Z3HHSD5I.mjs";
7
7
  import "../chunk-UQQWZT6C.mjs";
8
- import "../chunk-W57BD6NX.mjs";
8
+ import "../chunk-UADPSS35.mjs";
9
9
  import "../chunk-XUI43LEZ.mjs";
10
10
  export {
11
11
  MultichainTrackingHelper
@@ -2,7 +2,7 @@
2
2
 
3
3
  var _chunk5XBULBP2js = require('../chunk-5XBULBP2.js');
4
4
  require('../chunk-S6VGOPUY.js');
5
- require('../chunk-VEJ3MIZG.js');
5
+ require('../chunk-HBNQEJEM.js');
6
6
  require('../chunk-Z4BLTVTB.js');
7
7
 
8
8
 
@@ -2,7 +2,7 @@ import {
2
2
  PendingTransactionTracker
3
3
  } from "../chunk-JRQHIBG5.mjs";
4
4
  import "../chunk-UQQWZT6C.mjs";
5
- import "../chunk-W57BD6NX.mjs";
5
+ import "../chunk-UADPSS35.mjs";
6
6
  import "../chunk-XUI43LEZ.mjs";
7
7
  export {
8
8
  PendingTransactionTracker
package/dist/index.js CHANGED
@@ -2,25 +2,28 @@
2
2
 
3
3
 
4
4
 
5
- var _chunk7BG5XOXJjs = require('./chunk-7BG5XOXJ.js');
5
+ var _chunkNLE3SS2Sjs = require('./chunk-NLE3SS2S.js');
6
+
7
+
8
+ var _chunkSD6CWFDFjs = require('./chunk-SD6CWFDF.js');
6
9
  require('./chunk-VH47Q6TS.js');
7
10
  require('./chunk-RQKICZYP.js');
8
11
  require('./chunk-QP75SWIQ.js');
9
12
  require('./chunk-ZNZEJDOE.js');
10
- require('./chunk-GC77BSQZ.js');
11
- require('./chunk-GE57YNGX.js');
12
-
13
-
14
- var _chunkHS277C77js = require('./chunk-HS277C77.js');
15
- require('./chunk-QEX3QMSL.js');
13
+ require('./chunk-V5X6MZHN.js');
14
+ require('./chunk-KT6UAKBB.js');
15
+ require('./chunk-SOSF65FI.js');
16
16
  require('./chunk-R7NJVDWN.js');
17
17
  require('./chunk-DTDTOMTB.js');
18
18
  require('./chunk-NRWEI43Q.js');
19
+ require('./chunk-F3CMU2DM.js');
19
20
  require('./chunk-5XBULBP2.js');
21
+ require('./chunk-CXXGL43K.js');
20
22
  require('./chunk-7LXE4KHV.js');
21
- require('./chunk-FHG5GY6F.js');
22
- require('./chunk-PF3UOCRW.js');
23
- require('./chunk-5IHLDAOF.js');
23
+ require('./chunk-HMOSP33F.js');
24
+ require('./chunk-UCY5PFZI.js');
25
+ require('./chunk-2AYEGKAN.js');
26
+ require('./chunk-2JERLB6M.js');
24
27
  require('./chunk-5OQ373JS.js');
25
28
 
26
29
 
@@ -28,9 +31,7 @@ require('./chunk-5OQ373JS.js');
28
31
  var _chunkUGFBA4GVjs = require('./chunk-UGFBA4GV.js');
29
32
 
30
33
 
31
- var _chunkTZTP4JVAjs = require('./chunk-TZTP4JVA.js');
32
- require('./chunk-F3CMU2DM.js');
33
- require('./chunk-CXXGL43K.js');
34
+ var _chunkL4S5SEV3js = require('./chunk-L4S5SEV3.js');
34
35
  require('./chunk-ITDY6AIZ.js');
35
36
  require('./chunk-S6VGOPUY.js');
36
37
 
@@ -40,7 +41,8 @@ require('./chunk-S6VGOPUY.js');
40
41
 
41
42
 
42
43
 
43
- var _chunkVEJ3MIZGjs = require('./chunk-VEJ3MIZG.js');
44
+
45
+ var _chunkHBNQEJEMjs = require('./chunk-HBNQEJEM.js');
44
46
  require('./chunk-Z4BLTVTB.js');
45
47
 
46
48
 
@@ -56,5 +58,6 @@ require('./chunk-Z4BLTVTB.js');
56
58
 
57
59
 
58
60
 
59
- exports.CANCEL_RATE = _chunk7BG5XOXJjs.CANCEL_RATE; exports.HARDFORK = _chunk7BG5XOXJjs.HARDFORK; exports.SimulationTokenStandard = _chunkVEJ3MIZGjs.SimulationTokenStandard; exports.TransactionController = _chunk7BG5XOXJjs.TransactionController; exports.TransactionEnvelopeType = _chunkVEJ3MIZGjs.TransactionEnvelopeType; exports.TransactionStatus = _chunkVEJ3MIZGjs.TransactionStatus; exports.TransactionType = _chunkVEJ3MIZGjs.TransactionType; exports.UserFeeLevel = _chunkVEJ3MIZGjs.UserFeeLevel; exports.WalletDevice = _chunkVEJ3MIZGjs.WalletDevice; exports.determineTransactionType = _chunkHS277C77js.determineTransactionType; exports.isEIP1559Transaction = _chunkUGFBA4GVjs.isEIP1559Transaction; exports.mergeGasFeeEstimates = _chunkTZTP4JVAjs.mergeGasFeeEstimates; exports.normalizeTransactionParams = _chunkUGFBA4GVjs.normalizeTransactionParams;
61
+
62
+ exports.CANCEL_RATE = _chunkNLE3SS2Sjs.CANCEL_RATE; exports.HARDFORK = _chunkNLE3SS2Sjs.HARDFORK; exports.SimulationErrorCode = _chunkHBNQEJEMjs.SimulationErrorCode; exports.SimulationTokenStandard = _chunkHBNQEJEMjs.SimulationTokenStandard; exports.TransactionController = _chunkNLE3SS2Sjs.TransactionController; exports.TransactionEnvelopeType = _chunkHBNQEJEMjs.TransactionEnvelopeType; exports.TransactionStatus = _chunkHBNQEJEMjs.TransactionStatus; exports.TransactionType = _chunkHBNQEJEMjs.TransactionType; exports.UserFeeLevel = _chunkHBNQEJEMjs.UserFeeLevel; exports.WalletDevice = _chunkHBNQEJEMjs.WalletDevice; exports.determineTransactionType = _chunkSD6CWFDFjs.determineTransactionType; exports.isEIP1559Transaction = _chunkUGFBA4GVjs.isEIP1559Transaction; exports.mergeGasFeeEstimates = _chunkL4S5SEV3js.mergeGasFeeEstimates; exports.normalizeTransactionParams = _chunkUGFBA4GVjs.normalizeTransactionParams;
60
63
  //# sourceMappingURL=index.js.map
package/dist/index.mjs CHANGED
@@ -2,25 +2,28 @@ import {
2
2
  CANCEL_RATE,
3
3
  HARDFORK,
4
4
  TransactionController
5
- } from "./chunk-I6RY3XOG.mjs";
5
+ } from "./chunk-5L7EMVB3.mjs";
6
+ import {
7
+ determineTransactionType
8
+ } from "./chunk-KG4UW4K4.mjs";
6
9
  import "./chunk-NM6OYEPP.mjs";
7
10
  import "./chunk-XKNFL657.mjs";
8
11
  import "./chunk-XGRAHX6T.mjs";
9
12
  import "./chunk-NHRBO3LU.mjs";
10
- import "./chunk-BYBPZUHS.mjs";
11
- import "./chunk-6XMG522E.mjs";
12
- import {
13
- determineTransactionType
14
- } from "./chunk-JRBREX22.mjs";
15
- import "./chunk-5UL3VDFT.mjs";
13
+ import "./chunk-A4P4B3OF.mjs";
14
+ import "./chunk-K4KOSAGM.mjs";
15
+ import "./chunk-VAOKN3J4.mjs";
16
16
  import "./chunk-KFL2GGZC.mjs";
17
17
  import "./chunk-Y7ENNK7L.mjs";
18
18
  import "./chunk-ZQFMTLZJ.mjs";
19
+ import "./chunk-IZI7FQIN.mjs";
19
20
  import "./chunk-JRQHIBG5.mjs";
21
+ import "./chunk-VEREDMI2.mjs";
20
22
  import "./chunk-FRKQ3Z2L.mjs";
21
- import "./chunk-PGTV7236.mjs";
22
- import "./chunk-QRSTF45Q.mjs";
23
- import "./chunk-IK55QTGO.mjs";
23
+ import "./chunk-HQSNKCXI.mjs";
24
+ import "./chunk-K7UC23EG.mjs";
25
+ import "./chunk-OLIA2HD4.mjs";
26
+ import "./chunk-ZWKHTNLF.mjs";
24
27
  import "./chunk-3D3SA6PY.mjs";
25
28
  import {
26
29
  isEIP1559Transaction,
@@ -28,23 +31,23 @@ import {
28
31
  } from "./chunk-J56A7UCK.mjs";
29
32
  import {
30
33
  mergeGasFeeEstimates
31
- } from "./chunk-DWHMMJOW.mjs";
32
- import "./chunk-IZI7FQIN.mjs";
33
- import "./chunk-VEREDMI2.mjs";
34
+ } from "./chunk-AMDQXP37.mjs";
34
35
  import "./chunk-Z3HHSD5I.mjs";
35
36
  import "./chunk-UQQWZT6C.mjs";
36
37
  import {
38
+ SimulationErrorCode,
37
39
  SimulationTokenStandard,
38
40
  TransactionEnvelopeType,
39
41
  TransactionStatus,
40
42
  TransactionType,
41
43
  UserFeeLevel,
42
44
  WalletDevice
43
- } from "./chunk-W57BD6NX.mjs";
45
+ } from "./chunk-UADPSS35.mjs";
44
46
  import "./chunk-XUI43LEZ.mjs";
45
47
  export {
46
48
  CANCEL_RATE,
47
49
  HARDFORK,
50
+ SimulationErrorCode,
48
51
  SimulationTokenStandard,
49
52
  TransactionController,
50
53
  TransactionEnvelopeType,