{
  "version": 3,
  "sources": ["../../../../../src/providers/DappProvider/helpers/signTransactions/signTransactionsWithProvider.ts"],
  "sourcesContent": ["import {\n  Address,\n  Transaction,\n  TransactionOptions,\n  TransactionVersion\n} from 'lib/sdkCore';\nimport { getAccount } from 'methods/account/getAccount';\nimport {\n  IProvider,\n  ProviderTypeEnum\n} from 'providers/types/providerFactory.types';\nimport { setAccountNonce } from 'store/actions/account/accountActions';\nimport { refreshAccount } from 'utils/account/refreshAccount';\nimport { computeNonces } from '../computeNonces/computeNonces';\n\nexport type SignTransactionsOptionsType = {\n  skipGuardian?: boolean;\n  callback?: (signedTransactions: Transaction[]) => Promise<Transaction[]>;\n};\n\ntype SignTransactionsType = {\n  provider: IProvider;\n  transactions: Transaction[];\n  options?: SignTransactionsOptionsType;\n};\n\nexport async function signTransactionsWithProvider({\n  provider,\n  transactions,\n  options = {}\n}: SignTransactionsType): Promise<Transaction[]> {\n  await refreshAccount();\n  const { isGuarded, activeGuardianAddress, nonce } = getAccount();\n  const isLedger = provider.getType() === ProviderTypeEnum.ledger;\n\n  const transactionsWithComputedNonce = computeNonces({\n    latestNonce: nonce,\n    transactions\n  });\n\n  const transactionsToSign =\n    activeGuardianAddress && isGuarded && !options.skipGuardian\n      ? transactionsWithComputedNonce?.map((transaction) => {\n          transaction.version = TransactionVersion.withTxOptions().valueOf();\n          transaction.options = TransactionOptions.withOptions({\n            guarded: true,\n            ...(isLedger ? { hashSign: true } : {})\n          }).valueOf();\n\n          transaction.guardian = Address.newFromBech32(activeGuardianAddress);\n\n          return transaction;\n        })\n      : transactionsWithComputedNonce;\n\n  const signedTransactions: Transaction[] =\n    (await provider.signTransactions(transactionsToSign, options)) ?? [];\n\n  setAccountNonce(nonce + signedTransactions.length);\n\n  return signedTransactions;\n}\n"],
  "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,kCAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAKO,uBACPC,EAA2B,sCAC3BC,EAGO,iDACPC,EAAgC,gDAChCC,EAA+B,wCAC/BC,EAA8B,0CAa9B,eAAsBP,EAA6B,CACjD,SAAAQ,EACA,aAAAC,EACA,QAAAC,EAAU,CAAC,CACb,EAAiD,CAC/C,QAAM,kBAAe,EACrB,KAAM,CAAE,UAAAC,EAAW,sBAAAC,EAAuB,MAAAC,CAAM,KAAI,cAAW,EACzDC,EAAWN,EAAS,QAAQ,IAAM,mBAAiB,OAEnDO,KAAgC,iBAAc,CAClD,YAAaF,EACb,aAAAJ,CACF,CAAC,EAEKO,EACJJ,GAAyBD,GAAa,CAACD,EAAQ,aAC3CK,GAA+B,IAAKE,IAClCA,EAAY,QAAU,qBAAmB,cAAc,EAAE,QAAQ,EACjEA,EAAY,QAAU,qBAAmB,YAAY,CACnD,QAAS,GACT,GAAIH,EAAW,CAAE,SAAU,EAAK,EAAI,CAAC,CACvC,CAAC,EAAE,QAAQ,EAEXG,EAAY,SAAW,UAAQ,cAAcL,CAAqB,EAE3DK,EACR,EACDF,EAEAG,EACH,MAAMV,EAAS,iBAAiBQ,EAAoBN,CAAO,GAAM,CAAC,EAErE,4BAAgBG,EAAQK,EAAmB,MAAM,EAE1CA,CACT",
  "names": ["signTransactionsWithProvider_exports", "__export", "signTransactionsWithProvider", "__toCommonJS", "import_sdkCore", "import_getAccount", "import_providerFactory", "import_accountActions", "import_refreshAccount", "import_computeNonces", "provider", "transactions", "options", "isGuarded", "activeGuardianAddress", "nonce", "isLedger", "transactionsWithComputedNonce", "transactionsToSign", "transaction", "signedTransactions"]
}
