@sap/cli-core
Version:
Command-Line Interface (CLI) Core Module
16 lines (15 loc) • 1.96 kB
JavaScript
import { create as createNextHandler } from "../next.js";
import { create as createOrHandler } from "../or.js";
import { create as createOauthHandler } from "./oauth/index.js";
import { create as createResilientHandler } from "../resilient.js";
import { create as createCacheSecretsProvider } from "./oauth/secretsProvider/cache.js";
import { create as createRefreshTokenHandler } from "./oauth/tokenProvider/refreshToken.js";
import { create as createSetAuthorizationHandler } from "./oauth/tokenProvider/setAuthorization.js";
import { create as createPasscodeHandler } from "./passcode/index.js";
import { create as createOptionsHandler } from "../options/index.js";
import { AuthenticationMethod, OPTION_ACCESS_TOKEN, OPTION_AUTHORIZATION_FLOW, OPTION_AUTHORIZATION_URL, OPTION_CLIENT_ID, OPTION_CLIENT_SECRET, OPTION_CODE, OPTION_PASSCODE, OPTION_REFRESH_TOKEN, OPTION_SECRETS_FILE, OPTION_TOKEN_URL, } from "../../../constants.js";
import { getAuthenticationMethods } from "../../../config/core.js";
import { create as createSucceedHandler } from "../succeed.js";
export const create = () => createNextHandler("commands.handler.authentication", createResilientHandler(createNextHandler("commands.handler.authentication$oauth", createCacheSecretsProvider(), createRefreshTokenHandler())), createOptionsHandler(OPTION_CLIENT_ID), createOptionsHandler(OPTION_CLIENT_SECRET), createOptionsHandler(OPTION_ACCESS_TOKEN), createOptionsHandler(OPTION_REFRESH_TOKEN), createOptionsHandler(OPTION_CODE), createOptionsHandler(OPTION_TOKEN_URL), createOptionsHandler(OPTION_AUTHORIZATION_URL), createOptionsHandler(OPTION_AUTHORIZATION_FLOW), getAuthenticationMethods().includes(AuthenticationMethod.passcode)
? createOptionsHandler(OPTION_PASSCODE)
: createSucceedHandler(), createOptionsHandler(OPTION_SECRETS_FILE), createOrHandler("commands.handler.authentication$handler", createSetAuthorizationHandler(), createPasscodeHandler(), createOauthHandler()));