{
  "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": "kFASA,IAAMA,EAAW,CACf,UAAW,EACb,EAEaC,EACXC,GACiC,CACjC,GAAI,CAACA,EACH,OAAOF,EAGT,IAAMG,EAAeC,EAAsBF,CAAK,EAEhD,GAAI,CAACC,EACH,OAAOH,EAGT,IAAMK,EAAUC,EAAiB,EAC3B,CAAE,IAAAC,EAAK,UAAAC,CAAU,EAAIL,EAErBM,EAAYD,GAAW,UAE7B,GAAI,CAACC,EACH,OAAOT,EAGT,IAAMU,EAAYD,EAAYF,EAExBI,EAAYN,EAAUK,EAEtBE,EAAsBF,EAAYL,EAExC,MAAO,CAAE,UAAAM,EAAW,UAAAD,EAAW,oBAAAE,CAAoB,CACrD",
  "names": ["notFound", "getTokenExpiration", "token", "decodedToken", "decodeNativeAuthToken", "unixNow", "getUnixTimestamp", "ttl", "extraInfo", "timestamp", "expiresAt", "isExpired", "secondsUntilExpires"]
}
