@pedwise/next-firebase-auth-edge
Version:
Next.js 13 Firebase Authentication for Edge and server runtimes. Dedicated for Next 13 server components. Compatible with Next.js middleware.
18 lines (15 loc) • 443 B
text/typescript
import { decode } from "./decode";
import { DecodedJWTPayload } from "./types";
export type IsExpiredOptions = {
readonly expiredWithinSeconds?: number;
};
export function isExpired(
jwt: string,
{ expiredWithinSeconds = 0 }: IsExpiredOptions = {}
): boolean {
const { exp } = decode(jwt) as DecodedJWTPayload;
return (
typeof exp === "number" &&
exp < Math.floor(new Date().getTime() / 1000) + expiredWithinSeconds
);
}