{
  "version": 3,
  "sources": ["../../src/utils/transactions/getInterpretedTransaction/getInterpretedTransaction.ts"],
  "sourcesContent": ["import {\n  InterpretedTransactionType,\n  ServerTransactionType,\n  TransactionAgeType,\n  TransactionMethodType\n} from 'types/serverTransactions.types';\nimport { TokenArgumentType } from 'types/serverTransactions.types';\nimport { timeAgo } from 'utils/operations/timeRemaining';\nimport { isContract } from 'utils/validation/isContract';\nimport { explorerUrlBuilder } from '../explorerUrlBuilder';\nimport { getExplorerLink } from '../getExplorerLink';\nimport { getHumanReadableTimeFormat } from '../getHumanReadableTimeFormat';\nimport { getTransactionTokens } from './getTransactionValue/helpers/getTransactionTokens';\nimport { getTokenFromData } from './helpers/getTokenFromData';\nimport { getTransactionIconInfo } from './helpers/getTransactionIconInfo';\nimport { getTransactionMethod } from './helpers/getTransactionMethod';\nimport { getTransactionReceiver } from './helpers/getTransactionReceiver';\nimport { getTransactionReceiverAssets } from './helpers/getTransactionReceiverAssets';\nimport { getTransactionTransferType } from './helpers/getTransactionTransferType';\n\nexport interface GetInterpretedTransactionType {\n  address: string;\n  explorerAddress: string;\n  transaction: ServerTransactionType;\n}\n\nexport function getInterpretedTransaction({\n  transaction,\n  address,\n  explorerAddress\n}: GetInterpretedTransactionType): InterpretedTransactionType {\n  const tokenIdentifier =\n    transaction.tokenIdentifier ?? getTokenFromData(transaction.data).tokenId;\n\n  const receiver = getTransactionReceiver(transaction);\n  const receiverAssets = getTransactionReceiverAssets(transaction);\n  const age: TransactionAgeType = {\n    timeAgo: timeAgo(transaction.timestamp * 1000, true),\n    tooltip: getHumanReadableTimeFormat({\n      value: transaction.timestamp,\n      noSeconds: false,\n      utc: true\n    })\n  };\n\n  const direction = getTransactionTransferType({\n    address,\n    transaction,\n    receiver\n  });\n\n  const method: TransactionMethodType = {\n    actionDescription: transaction.action?.description,\n    name: getTransactionMethod(transaction)\n  };\n\n  const transactionTokens: TokenArgumentType[] =\n    getTransactionTokens(transaction);\n\n  const senderLink = getExplorerLink({\n    explorerAddress,\n    to: explorerUrlBuilder.accountDetails(transaction.sender)\n  });\n\n  const receiverLink = getExplorerLink({\n    explorerAddress,\n    to: explorerUrlBuilder.accountDetails(receiver)\n  });\n\n  const senderShardLink = getExplorerLink({\n    explorerAddress,\n    to: explorerUrlBuilder.senderShard(transaction.senderShard)\n  });\n\n  const receiverShardLink = getExplorerLink({\n    explorerAddress,\n    to: explorerUrlBuilder.receiverShard(transaction.receiverShard)\n  });\n\n  const transactionHash = transaction.originalTxHash || transaction.txHash;\n\n  const transactionLink = getExplorerLink({\n    explorerAddress,\n    to: explorerUrlBuilder.transactionDetails(transactionHash)\n  });\n\n  return {\n    ...transaction,\n    txHash: transactionHash,\n    tokenIdentifier,\n    receiver,\n    receiverAssets,\n    transactionDetails: {\n      age,\n      direction,\n      method,\n      iconInfo: getTransactionIconInfo(transaction),\n      transactionTokens,\n      isContract: isContract(transaction.sender)\n    },\n    links: {\n      senderLink,\n      receiverLink,\n      senderShardLink,\n      receiverShardLink,\n      transactionLink\n    }\n  };\n}\n"],
  "mappings": "ueA0BO,SAASA,EAA0B,CACxC,YAAAC,EACA,QAAAC,EACA,gBAAAC,CACF,EAA8D,CAC5D,IAAMC,EACJH,EAAY,iBAAmBI,EAAiBJ,EAAY,IAAI,EAAE,QAE9DK,EAAWC,EAAuBN,CAAW,EAC7CO,EAAiBC,EAA6BR,CAAW,EACzDS,EAA0B,CAC9B,QAASC,EAAQV,EAAY,UAAY,IAAM,EAAI,EACnD,QAASW,EAA2B,CAClC,MAAOX,EAAY,UACnB,UAAW,GACX,IAAK,EACP,CAAC,CACH,EAEMY,EAAYC,EAA2B,CAC3C,QAAAZ,EACA,YAAAD,EACA,SAAAK,CACF,CAAC,EAEKS,EAAgC,CACpC,kBAAmBd,EAAY,QAAQ,YACvC,KAAMe,EAAqBf,CAAW,CACxC,EAEMgB,EACJC,EAAqBjB,CAAW,EAE5BkB,EAAaC,EAAgB,CACjC,gBAAAjB,EACA,GAAIkB,EAAmB,eAAepB,EAAY,MAAM,CAC1D,CAAC,EAEKqB,EAAeF,EAAgB,CACnC,gBAAAjB,EACA,GAAIkB,EAAmB,eAAef,CAAQ,CAChD,CAAC,EAEKiB,EAAkBH,EAAgB,CACtC,gBAAAjB,EACA,GAAIkB,EAAmB,YAAYpB,EAAY,WAAW,CAC5D,CAAC,EAEKuB,EAAoBJ,EAAgB,CACxC,gBAAAjB,EACA,GAAIkB,EAAmB,cAAcpB,EAAY,aAAa,CAChE,CAAC,EAEKwB,EAAkBxB,EAAY,gBAAkBA,EAAY,OAE5DyB,EAAkBN,EAAgB,CACtC,gBAAAjB,EACA,GAAIkB,EAAmB,mBAAmBI,CAAe,CAC3D,CAAC,EAED,MAAO,CACL,GAAGxB,EACH,OAAQwB,EACR,gBAAArB,EACA,SAAAE,EACA,eAAAE,EACA,mBAAoB,CAClB,IAAAE,EACA,UAAAG,EACA,OAAAE,EACA,SAAUY,EAAuB1B,CAAW,EAC5C,kBAAAgB,EACA,WAAYW,EAAW3B,EAAY,MAAM,CAC3C,EACA,MAAO,CACL,WAAAkB,EACA,aAAAG,EACA,gBAAAC,EACA,kBAAAC,EACA,gBAAAE,CACF,CACF,CACF",
  "names": ["getInterpretedTransaction", "transaction", "address", "explorerAddress", "tokenIdentifier", "getTokenFromData", "receiver", "getTransactionReceiver", "receiverAssets", "getTransactionReceiverAssets", "age", "timeAgo", "getHumanReadableTimeFormat", "direction", "getTransactionTransferType", "method", "getTransactionMethod", "transactionTokens", "getTransactionTokens", "senderLink", "getExplorerLink", "explorerUrlBuilder", "receiverLink", "senderShardLink", "receiverShardLink", "transactionHash", "transactionLink", "getTransactionIconInfo", "isContract"]
}
