Files
fotospiel-app/resources/js/admin/mobile/lib/onboardingGuard.ts
Codex Agent 22cb7ed7ce
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (push) Has been cancelled
tests / ui (push) Has been cancelled
fix: resolve typescript and build errors across admin and guest apps
2026-01-07 13:25:30 +01:00

43 lines
926 B
TypeScript

import {
ADMIN_EVENT_CREATE_PATH,
ADMIN_BILLING_PATH,
} from '../../constants';
type OnboardingRedirectInput = {
hasEvents: boolean;
hasActivePackage: boolean;
remainingEvents?: number | null;
pathname: string;
isBillingPath: boolean;
isOnboardingDismissed?: boolean;
isOnboardingCompleted?: boolean;
};
export function resolveOnboardingRedirect({
hasEvents,
hasActivePackage,
remainingEvents,
pathname,
isBillingPath,
isOnboardingDismissed,
isOnboardingCompleted,
}: OnboardingRedirectInput): string | null {
if (isOnboardingDismissed || isOnboardingCompleted) {
return null;
}
if (isBillingPath) {
return null;
}
if (pathname.startsWith(ADMIN_EVENT_CREATE_PATH)) {
return null;
}
if (!hasEvents && (!hasActivePackage || (remainingEvents !== undefined && remainingEvents !== null && remainingEvents <= 0))) {
return ADMIN_BILLING_PATH;
}
return null;
}