{
  "version": 3,
  "sources": ["../../src/providers/DappProvider/helpers/signErrors/handleSignError.ts"],
  "sourcesContent": ["import {\n  CANCEL_TRANSACTION_TOAST_DEFAULT_DURATION,\n  CANCEL_TRANSACTION_TOAST_ID,\n  ERROR_SIGNING_TOAST_ID\n} from 'constants/transactions.constants';\nimport { createCustomToast } from 'store/actions/toasts/toastsActions';\nimport {\n  IconNamesEnum,\n  SigningErrorsEnum,\n  SigningWarningsEnum\n} from 'types/enums.types';\n\nconst states = {\n  error: {\n    title: SigningErrorsEnum.errorSigning.toString(),\n    iconClassName: 'danger',\n    toastId: `${ERROR_SIGNING_TOAST_ID}-${Date.now()}`\n  },\n  warning: {\n    title: SigningWarningsEnum.cancelled.toString(),\n    iconClassName: 'warning',\n    toastId: `${CANCEL_TRANSACTION_TOAST_ID}-${Date.now()}`\n  }\n};\n\nconst errorsMap = {\n  extensionResponse: 'Unable to sign transactions', // extension\n  'Transaction canceled': 'Transaction canceled', // web wallet\n  'cancelled by user': 'Transaction signing cancelled by user', // custom\n  'denied by the user': 'Transaction signing denied by the user' // ledger\n};\n\nconst getUserError = (error: string) => {\n  for (const [key, value] of Object.entries(errorsMap)) {\n    if (error.includes(key)) {\n      return value;\n    }\n  }\n  return SigningErrorsEnum.errorSigning;\n};\n\nexport function handleSignError(\n  error: unknown,\n  type: 'error' | 'warning' = 'error'\n) {\n  const originalError = (error as Error)?.message;\n  const errorMessage = getUserError(originalError);\n\n  const isKnownError = errorMessage !== SigningErrorsEnum.errorSigning;\n\n  const errorType = isKnownError ? 'warning' : type;\n\n  const state = Object.keys(states).includes(errorType)\n    ? states[errorType]\n    : states.error;\n\n  const { toastId, iconClassName, title } = state;\n\n  createCustomToast({\n    toastId,\n    duration: CANCEL_TRANSACTION_TOAST_DEFAULT_DURATION,\n    icon: IconNamesEnum.close,\n    iconClassName,\n    message: errorMessage,\n    title\n  });\n\n  return errorMessage;\n}\n"],
  "mappings": "gGAYA,IAAMA,EAAS,CACb,MAAO,CACL,2BAAsC,SAAS,EAC/C,cAAe,SACf,QAAS,GAAGC,CAAsB,IAAI,KAAK,IAAI,CAAC,EAClD,EACA,QAAS,CACP,yBAAqC,SAAS,EAC9C,cAAe,UACf,QAAS,GAAGC,CAA2B,IAAI,KAAK,IAAI,CAAC,EACvD,CACF,EAEMC,EAAY,CAChB,kBAAmB,8BACnB,uBAAwB,uBACxB,oBAAqB,wCACrB,qBAAsB,wCACxB,EAEMC,EAAgBC,GAAkB,CACtC,OAAW,CAACC,EAAKC,CAAK,IAAK,OAAO,QAAQJ,CAAS,EACjD,GAAIE,EAAM,SAASC,CAAG,EACpB,OAAOC,EAGX,0BACF,EAEO,SAASC,EACdH,EACAI,EAA4B,QAC5B,CACA,IAAMC,EAAiBL,GAAiB,QAClCM,EAAeP,EAAaM,CAAa,EAIzCE,EAFeD,yBAEY,UAAYF,EAEvCI,EAAQ,OAAO,KAAKb,CAAM,EAAE,SAASY,CAAS,EAChDZ,EAAOY,CAAS,EAChBZ,EAAO,MAEL,CAAE,QAAAc,EAAS,cAAAC,EAAe,MAAAC,CAAM,EAAIH,EAE1C,OAAAI,EAAkB,CAChB,QAAAH,EACA,SAAU,IACV,aACA,cAAAC,EACA,QAASJ,EACT,MAAAK,CACF,CAAC,EAEML,CACT",
  "names": ["states", "ERROR_SIGNING_TOAST_ID", "CANCEL_TRANSACTION_TOAST_ID", "errorsMap", "getUserError", "error", "key", "value", "handleSignError", "type", "originalError", "errorMessage", "errorType", "state", "toastId", "iconClassName", "title", "createCustomToast"]
}
