{
  "version": 3,
  "sources": ["../../src/services/nativeAuth/helpers/decodeNativeAuthToken.ts"],
  "sourcesContent": ["import { decodeBase64 } from 'utils/decoders/base64Utils';\nimport { DecodedLoginTokenType, decodeLoginToken } from './decodeLoginToken';\n\nfunction isString(x: any) {\n  return Object.prototype.toString.call(x) === '[object String]';\n}\n\ninterface DecodedNativeAuthTokenType extends DecodedLoginTokenType {\n  address: string;\n  body: string;\n  signature: string;\n}\n\nexport const decodeNativeAuthToken = (\n  accessToken?: string\n): DecodedNativeAuthTokenType | null => {\n  if (!accessToken || !isString(accessToken)) {\n    return null;\n  }\n\n  const parts = accessToken.split('.');\n\n  if (parts.length !== 3) {\n    console.error(\n      'Invalid nativeAuthToken. You may be trying to decode a loginToken. Try using decodeLoginToken method instead'\n    );\n    return null;\n  }\n\n  try {\n    const [address, body, signature] = parts;\n    const parsedAddress = decodeBase64(address);\n    const parsedBody = decodeBase64(body);\n    const parsedInitToken = decodeLoginToken(parsedBody);\n\n    if (!parsedInitToken) {\n      return {\n        address: parsedAddress,\n        body: parsedBody,\n        signature,\n        blockHash: '',\n        origin: '',\n        ttl: 0\n      };\n    }\n\n    const result = {\n      ...parsedInitToken,\n      address: parsedAddress,\n      body: parsedBody,\n      signature\n    };\n\n    // if empty object, delete extraInfo\n    if (!parsedInitToken.extraInfo?.timestamp) {\n      delete result.extraInfo;\n    }\n\n    return result;\n  } catch (_err) {\n    return null;\n  }\n};\n"],
  "mappings": "kFAGA,SAASA,EAASC,EAAQ,CACxB,OAAO,OAAO,UAAU,SAAS,KAAKA,CAAC,IAAM,iBAC/C,CAQO,IAAMC,EACXC,GACsC,CACtC,GAAI,CAACA,GAAe,CAACH,EAASG,CAAW,EACvC,OAAO,KAGT,IAAMC,EAAQD,EAAY,MAAM,GAAG,EAEnC,GAAIC,EAAM,SAAW,EACnB,eAAQ,MACN,8GACF,EACO,KAGT,GAAI,CACF,GAAM,CAACC,EAASC,EAAMC,CAAS,EAAIH,EAC7BI,EAAgBC,EAAaJ,CAAO,EACpCK,EAAaD,EAAaH,CAAI,EAC9BK,EAAkBC,EAAiBF,CAAU,EAEnD,GAAI,CAACC,EACH,MAAO,CACL,QAASH,EACT,KAAME,EACN,UAAAH,EACA,UAAW,GACX,OAAQ,GACR,IAAK,CACP,EAGF,IAAMM,EAAS,CACb,GAAGF,EACH,QAASH,EACT,KAAME,EACN,UAAAH,CACF,EAGA,OAAKI,EAAgB,WAAW,WAC9B,OAAOE,EAAO,UAGTA,CACT,MAAe,CACb,OAAO,IACT,CACF",
  "names": ["isString", "x", "decodeNativeAuthToken", "accessToken", "parts", "address", "body", "signature", "parsedAddress", "decodeBase64", "parsedBody", "parsedInitToken", "decodeLoginToken", "result"]
}
