{
  "version": 3,
  "sources": ["../../../../src/services/nativeAuth/methods/getTokenExpiration.ts"],
  "sourcesContent": ["import { getUnixTimestamp } from 'utils/dateTime/getUnixTimestamp';\nimport { decodeNativeAuthToken } from '../helpers/decodeNativeAuthToken';\n\nexport interface GetTokenExpirationReturnType {\n  isExpired: boolean;\n  expiresAt?: number;\n  secondsUntilExpires?: number;\n}\n\nconst notFound = {\n  isExpired: false\n};\n\nexport const getTokenExpiration = (\n  token?: string\n): GetTokenExpirationReturnType => {\n  if (!token) {\n    return notFound;\n  }\n\n  const decodedToken = decodeNativeAuthToken(token);\n\n  if (!decodedToken) {\n    return notFound;\n  }\n\n  const unixNow = getUnixTimestamp();\n  const { ttl, extraInfo } = decodedToken;\n\n  const timestamp = extraInfo?.timestamp;\n\n  if (!timestamp) {\n    return notFound;\n  }\n\n  const expiresAt = timestamp + ttl;\n\n  const isExpired = unixNow > expiresAt;\n\n  const secondsUntilExpires = expiresAt - unixNow;\n\n  return { isExpired, expiresAt, secondsUntilExpires };\n};\n"],
  "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAiC,2CACjCC,EAAsC,4CAQtC,MAAMC,EAAW,CACf,UAAW,EACb,EAEaJ,EACXK,GACiC,CACjC,GAAI,CAACA,EACH,OAAOD,EAGT,MAAME,KAAe,yBAAsBD,CAAK,EAEhD,GAAI,CAACC,EACH,OAAOF,EAGT,MAAMG,KAAU,oBAAiB,EAC3B,CAAE,IAAAC,EAAK,UAAAC,CAAU,EAAIH,EAErBI,EAAYD,GAAW,UAE7B,GAAI,CAACC,EACH,OAAON,EAGT,MAAMO,EAAYD,EAAYF,EAExBI,EAAYL,EAAUI,EAEtBE,EAAsBF,EAAYJ,EAExC,MAAO,CAAE,UAAAK,EAAW,UAAAD,EAAW,oBAAAE,CAAoB,CACrD",
  "names": ["getTokenExpiration_exports", "__export", "getTokenExpiration", "__toCommonJS", "import_getUnixTimestamp", "import_decodeNativeAuthToken", "notFound", "token", "decodedToken", "unixNow", "ttl", "extraInfo", "timestamp", "expiresAt", "isExpired", "secondsUntilExpires"]
}
