@clerk/shared
Version:
Internal package utils used by the Clerk SDKs
24 lines (22 loc) • 1.33 kB
JavaScript
import { forwardClerkQueryParams } from "./queryParams.mjs";
//#region src/internal/clerk-js/completeSignUpFlow.ts
const completeSignUpFlow = ({ signUp, verifyEmailPath, verifyPhonePath, protectCheckPath, continuePath, navigate, handleComplete, redirectUrl = "", redirectUrlComplete = "", oidcPrompt }) => {
if (signUp.status === "complete") return handleComplete && handleComplete();
else if (signUp.status === "missing_requirements") {
if (signUp.missingFields.some((mf) => mf === "enterprise_sso")) return signUp.authenticateWithRedirect({
strategy: "enterprise_sso",
redirectUrl,
redirectUrlComplete,
continueSignUp: true,
oidcPrompt
});
const params = forwardClerkQueryParams();
if ((!!signUp.protectCheck || signUp.missingFields.some((mf) => mf === "protect_check")) && protectCheckPath) return navigate(protectCheckPath, { searchParams: params });
if (signUp.unverifiedFields?.includes("email_address") && verifyEmailPath) return navigate(verifyEmailPath, { searchParams: params });
if (signUp.unverifiedFields?.includes("phone_number") && verifyPhonePath) return navigate(verifyPhonePath, { searchParams: params });
if (continuePath) return navigate(continuePath, { searchParams: params });
}
};
//#endregion
export { completeSignUpFlow };
//# sourceMappingURL=completeSignUpFlow.mjs.map