All checks were successful
ci/woodpecker/push/ci Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com> Co-committed-by: Jason Woltje <jason@diversecanvas.com>
18 lines
550 B
TypeScript
18 lines
550 B
TypeScript
import { CanActivate, ExecutionContext, ForbiddenException, Injectable } from "@nestjs/common";
|
|
import { OnboardingService } from "./onboarding.service";
|
|
|
|
@Injectable()
|
|
export class OnboardingGuard implements CanActivate {
|
|
constructor(private readonly onboardingService: OnboardingService) {}
|
|
|
|
async canActivate(_context: ExecutionContext): Promise<boolean> {
|
|
const completed = await this.onboardingService.isCompleted();
|
|
|
|
if (completed) {
|
|
throw new ForbiddenException("Onboarding already completed");
|
|
}
|
|
|
|
return true;
|
|
}
|
|
}
|