| const REGEX_IS_INSTALLATION_LEGACY = /^v1\./; | |
| const REGEX_IS_INSTALLATION = /^ghs_/; | |
| const REGEX_IS_USER_TO_SERVER = /^ghu_/; | |
| export async function auth(token) { | |
| const isApp = token.split(/\./).length === 3; | |
| const isInstallation = REGEX_IS_INSTALLATION_LEGACY.test(token) || | |
| REGEX_IS_INSTALLATION.test(token); | |
| const isUserToServer = REGEX_IS_USER_TO_SERVER.test(token); | |
| const tokenType = isApp | |
| ? "app" | |
| : isInstallation | |
| ? "installation" | |
| : isUserToServer | |
| ? "user-to-server" | |
| : "oauth"; | |
| return { | |
| type: "token", | |
| token: token, | |
| tokenType, | |
| }; | |
| } |