import jwt from "jsonwebtoken"; import { A_TEAM_ID, A_USER_EMAIL, A_USER_ID } from "./testData"; export const A_USER_BEARER = bearer(A_USER_ID, A_USER_EMAIL); function createJWT(userId: string, email?: string, name?: string): string { return jwt.sign( { sub: "this-is-a-frontegg-id-which-should-never-be-used", userMetadata: { userIdentifier: userId, teams: { [A_TEAM_ID]: { isAdmin: false } }, }, email, name, }, aPrivateRSAKey(), { algorithm: "RS256", expiresIn: "1h", } ); } function aPrivateRSAKey(): jwt.Secret { return `-----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEAriSg52t+awGz7ytfu0ac9T/LBgE77ZDXzM8VSlAU99AS4qQS XZV35IWRs51tvixEnrPVkBzjB4Km1v3+OKIVbuAhoNZ4SQu0e7gK8KFx1lwDnJoX 8Jvg8pH7PBFqHGKYW+wVRl9PTYRHS8e0pcRos11zHzEtUqZkVI7apaNcw423bozg OOp5jzsvQROoOc0uF8cKcyGEKhnGB8sZ/akKdQYR3iIfhhOvuklq3wkj4OKqhW1o U3lNiY4puJga/n/o6J8DbSlp3VU6A2bdx6yVWEkPY35OIFugTmMu3AIfOG3JSFrS MUheXohiAsdezqN18bVHVL5hWMO12i7SoPOD+QIDAQABAoIBAQCRrUKNVXcjvQDx Cq/C0odrAjqsg0vGqGxegL2mtOdVh1LFFcvnTapGGRaR0xiDBjVBLd9x9zhUiA9Z upB4f96+KfD3w3JMaOZKuOMt+WBpmf/LeXydY0kCouwwi8Dgjfo2q4AApqqIhie+ VQnhwjR0F7C+Xz0y7s7vjbGK7uYjD4BQpfLjb++Il8psjL0Bzu4l3ofrLqRTvomg 8mTafzBTSKEN+ELdWtOcPC8CG5Eg/2mvO2iLePLoJZZaPwDmBwapjVG8SRy2doKW wJzBN8C1cKderDcwlTrFoZZbScXdCrBut56bT1tqwsEcVsdcmsQiLSrueObFBar3 4dhWJN6BAoGBAOJD1va1YIlZAiwVsyogfBFe19phTvRbyxWj7lV4NI2/s3f24wkj svr9+qsOgYYfAXoZfXu2SXeAoJ7ZgOvp9B0lyOjFEbV4TemLVd6wRtSXTWUiBRc7 EUPlQyGzIgBQuoRBs1rVqV1W1zPXe1nf+aim2/uIwJ7uOSDxzIXeiSUFAoGBAMUH RJhezgY2Q2Ibndxt6Nohu68vCqKfQ07IEck0j4UG8NuebwLbuHNUa/vafeN6wGDN yS/vQDSdalF0ybr98jQ0mpSw26G3+yGjMpAixR0SyT/eic943O4MRoJlpyXIuso7 BuK+EDxXYXts5Plyvms/Vk1sar1O4JMzaNYK3JVlAoGAE0LpKslX9XlBSRVz0hM/ 3I6xW2LLQNwLlsUExfvcpXB7S6wVubJzSxCR5Tvv5MYA7y76Uqy65lRp1/v2EJ8y 68RKrR4Rmtwp7caxwapJ7VEQApr5yfd6SchbhaPlMhetORMKvKHRsCNzYHNoicca TrQdp/UFSMJI1LggzAicri0CgYEAh3Fjmksx3dtXnw3VCz8TH0CpQNhZu0k4f+PR NjvHnW8UDCVxsslQlxel09BzUfmEXgeZEjaqMIE2ISDjvIPuCC1RRn39vcI4BPun OqZsUnwjlKBqpBE17v7JScKPkM3YekTxitWVW6XGAY7uKPzUIe28aiTpi5G5l/dz ThDRanECgYA/4ghMwWJGa3vYhyla6Z/c7UAzkMymJ0fwfYU5JX1dgU/u7YWsd0bd 4w3Gz5ZsxOB0wdmcsmLMTdaVx/29LnQrcdidnWF4h8r0X22e88625kTwmCfaAhoR Qt4VLvcPw9P/9z2NmfNF1R1N4A9SFw3pc1AicH08tZCx2E18psvKVQ== -----END RSA PRIVATE KEY-----`; } function createJWTWithNoTeam(): string { return jwt.sign( { sub: "this-is-a-frontegg-id-which-should-never-be-used", userMetadata: { userIdentifier: A_USER_ID }, email: A_USER_EMAIL, }, aPrivateRSAKey(), { algorithm: "RS256", expiresIn: "1h", } ); } export function bearer(userId: string, email?: string, name?: string): string { return `Bearer ${createJWT(userId, email, name)}`; } export function validBearerWithNoTeam(): string { return `Bearer ${createJWTWithNoTeam()}`; }