- Updated import statements in `textarea.tsx`, `toggle.tsx`, and `tooltip.tsx` for consistency. - Added missing semicolons and adjusted formatting in `use-mobile.ts` and `use-mobile.tsx`. - Cleaned up `package.json` and `root.json` files by removing unnecessary line breaks. - Simplified `turbo.json` by consolidating array formatting for better readability.
32 lines
850 B
TypeScript
32 lines
850 B
TypeScript
export type InitialOnboardingNavigation =
|
|
| "login"
|
|
| "application"
|
|
| "onboarding"
|
|
| "provision_onboarding"
|
|
| "onboarding_inconsistent";
|
|
|
|
export type InitialOnboardingNavigationInput = {
|
|
isAuthenticated: boolean;
|
|
availableCompaniesCount: number;
|
|
onboardingStatus: "not_provisioned" | "pending" | "completed";
|
|
};
|
|
|
|
/** Decide la navegación sin leer ni modificar persistencia. */
|
|
export function resolveInitialOnboardingNavigation(
|
|
input: InitialOnboardingNavigationInput
|
|
): InitialOnboardingNavigation {
|
|
if (!input.isAuthenticated) {
|
|
return "login";
|
|
}
|
|
if (input.availableCompaniesCount > 0) {
|
|
return "application";
|
|
}
|
|
if (input.onboardingStatus === "pending") {
|
|
return "onboarding";
|
|
}
|
|
if (input.onboardingStatus === "completed") {
|
|
return "onboarding_inconsistent";
|
|
}
|
|
return "provision_onboarding";
|
|
}
|