{"version":3,"file":"handleAuthApiRouteRequestForPagesRouter.mjs","sources":["../../../src/auth/handleAuthApiRouteRequestForPagesRouter.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getRedirectOrDefault, hasActiveUserSessionWithPagesRouter, isSupportedAuthApiRoutePath, } from './utils';\nimport { handleSignInCallbackRequestForPagesRouter, handleSignInSignUpRequestForPagesRouter, handleSignOutCallbackRequestForPagesRouter, handleSignOutRequestForPagesRouter, } from './handlers';\nexport const handleAuthApiRouteRequestForPagesRouter = async ({ request, response, userPoolClientId, oAuthConfig, handlerInput, origin, setCookieOptions, runWithAmplifyServerContext, }) => {\n    if (request.method !== 'GET') {\n        response.status(405).end();\n        return;\n    }\n    const { slug } = request.query;\n    // don't support [...slug] here\n    if (slug === undefined || Array.isArray(slug)) {\n        response.status(400).end();\n        return;\n    }\n    if (!isSupportedAuthApiRoutePath(slug)) {\n        response.status(404).end();\n        return;\n    }\n    switch (slug) {\n        case 'sign-up': {\n            const hasActiveUserSession = await hasActiveUserSessionWithPagesRouter({\n                request,\n                response,\n                runWithAmplifyServerContext,\n            });\n            if (hasActiveUserSession) {\n                response.redirect(302, getRedirectOrDefault(handlerInput.redirectOnSignInComplete));\n                return;\n            }\n            handleSignInSignUpRequestForPagesRouter({\n                customState: handlerInput.customState,\n                oAuthConfig,\n                origin,\n                request,\n                response,\n                setCookieOptions,\n                type: 'signUp',\n                userPoolClientId,\n            });\n            break;\n        }\n        case 'sign-in': {\n            const hasActiveUserSession = await hasActiveUserSessionWithPagesRouter({\n                request,\n                response,\n                runWithAmplifyServerContext,\n            });\n            if (hasActiveUserSession) {\n                response.redirect(302, getRedirectOrDefault(handlerInput.redirectOnSignInComplete));\n                return;\n            }\n            handleSignInSignUpRequestForPagesRouter({\n                customState: handlerInput.customState,\n                oAuthConfig,\n                origin,\n                request,\n                response,\n                setCookieOptions,\n                type: 'signIn',\n                userPoolClientId,\n            });\n            break;\n        }\n        case 'sign-out':\n            handleSignOutRequestForPagesRouter({\n                oAuthConfig,\n                origin,\n                response,\n                setCookieOptions,\n                userPoolClientId,\n            });\n            break;\n        case 'sign-in-callback':\n            // In pages router the response is sent via calling `response.end()` or\n            // `response.send()`. The response is not returned from the handler.\n            // To ensure these two methods are called before the handler returns,\n            // we use `await` here.\n            await handleSignInCallbackRequestForPagesRouter({\n                handlerInput,\n                oAuthConfig,\n                origin,\n                request,\n                response,\n                setCookieOptions,\n                userPoolClientId,\n            });\n            break;\n        case 'sign-out-callback':\n            // In pages router the response is sent via calling `response.end()` or\n            // `response.send()`. The response is not returned from the handler.\n            // To ensure these two methods are called before the handler returns,\n            // we use `await` here.\n            await handleSignOutCallbackRequestForPagesRouter({\n                handlerInput,\n                oAuthConfig,\n                origin,\n                request,\n                response,\n                setCookieOptions,\n                userPoolClientId,\n            });\n            break;\n        // default:\n        // is unreachable by the guard of isSupportedAuthApiRoutePath()\n    }\n};\n"],"names":[],"mappings":";;;;;;;;;;AAAA;AACA;AAGY,MAAC,uCAAuC,GAAG,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,2BAA2B,GAAG,KAAK;AAC7L,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,EAAE;AAClC,QAAQ,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE;AAClC,QAAQ;AACR,IAAI;AACJ,IAAI,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK;AAClC;AACA,IAAI,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;AACnD,QAAQ,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE;AAClC,QAAQ;AACR,IAAI;AACJ,IAAI,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE;AAC5C,QAAQ,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE;AAClC,QAAQ;AACR,IAAI;AACJ,IAAI,QAAQ,IAAI;AAChB,QAAQ,KAAK,SAAS,EAAE;AACxB,YAAY,MAAM,oBAAoB,GAAG,MAAM,mCAAmC,CAAC;AACnF,gBAAgB,OAAO;AACvB,gBAAgB,QAAQ;AACxB,gBAAgB,2BAA2B;AAC3C,aAAa,CAAC;AACd,YAAY,IAAI,oBAAoB,EAAE;AACtC,gBAAgB,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,oBAAoB,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC;AACnG,gBAAgB;AAChB,YAAY;AACZ,YAAY,uCAAuC,CAAC;AACpD,gBAAgB,WAAW,EAAE,YAAY,CAAC,WAAW;AACrD,gBAAgB,WAAW;AAC3B,gBAAgB,MAAM;AACtB,gBAAgB,OAAO;AACvB,gBAAgB,QAAQ;AACxB,gBAAgB,gBAAgB;AAChC,gBAAgB,IAAI,EAAE,QAAQ;AAC9B,gBAAgB,gBAAgB;AAChC,aAAa,CAAC;AACd,YAAY;AACZ,QAAQ;AACR,QAAQ,KAAK,SAAS,EAAE;AACxB,YAAY,MAAM,oBAAoB,GAAG,MAAM,mCAAmC,CAAC;AACnF,gBAAgB,OAAO;AACvB,gBAAgB,QAAQ;AACxB,gBAAgB,2BAA2B;AAC3C,aAAa,CAAC;AACd,YAAY,IAAI,oBAAoB,EAAE;AACtC,gBAAgB,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,oBAAoB,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC;AACnG,gBAAgB;AAChB,YAAY;AACZ,YAAY,uCAAuC,CAAC;AACpD,gBAAgB,WAAW,EAAE,YAAY,CAAC,WAAW;AACrD,gBAAgB,WAAW;AAC3B,gBAAgB,MAAM;AACtB,gBAAgB,OAAO;AACvB,gBAAgB,QAAQ;AACxB,gBAAgB,gBAAgB;AAChC,gBAAgB,IAAI,EAAE,QAAQ;AAC9B,gBAAgB,gBAAgB;AAChC,aAAa,CAAC;AACd,YAAY;AACZ,QAAQ;AACR,QAAQ,KAAK,UAAU;AACvB,YAAY,kCAAkC,CAAC;AAC/C,gBAAgB,WAAW;AAC3B,gBAAgB,MAAM;AACtB,gBAAgB,QAAQ;AACxB,gBAAgB,gBAAgB;AAChC,gBAAgB,gBAAgB;AAChC,aAAa,CAAC;AACd,YAAY;AACZ,QAAQ,KAAK,kBAAkB;AAC/B;AACA;AACA;AACA;AACA,YAAY,MAAM,yCAAyC,CAAC;AAC5D,gBAAgB,YAAY;AAC5B,gBAAgB,WAAW;AAC3B,gBAAgB,MAAM;AACtB,gBAAgB,OAAO;AACvB,gBAAgB,QAAQ;AACxB,gBAAgB,gBAAgB;AAChC,gBAAgB,gBAAgB;AAChC,aAAa,CAAC;AACd,YAAY;AACZ,QAAQ,KAAK,mBAAmB;AAChC;AACA;AACA;AACA;AACA,YAAY,MAAM,0CAA0C,CAAC;AAC7D,gBAAgB,YAAY;AAC5B,gBAAgB,WAAW;AAC3B,gBAAgB,MAAM;AACtB,gBAAgB,OAAO;AACvB,gBAAgB,QAAQ;AACxB,gBAAgB,gBAAgB;AAChC,gBAAgB,gBAAgB;AAChC,aAAa,CAAC;AACd,YAAY;AACZ;AACA;AACA;AACA;;;;"}