diff --git a/frontend/src/app/feature/landing/landing.component.html b/frontend/src/app/feature/landing/landing.component.html
index 9a6203d..b7c6a4b 100644
--- a/frontend/src/app/feature/landing/landing.component.html
+++ b/frontend/src/app/feature/landing/landing.component.html
@@ -182,7 +182,7 @@
- @if (showLogin() || showRegister()) {
+ @if (showLogin() || showRegister() || showRecoverPassword()) {
@if (showLogin()) {
-
+
}
@if (showRegister()) {
}
+ @if (showRecoverPassword()) {
+
+ }
}
diff --git a/frontend/src/app/feature/landing/landing.component.ts b/frontend/src/app/feature/landing/landing.component.ts
index 5cfe0c5..aa1867e 100644
--- a/frontend/src/app/feature/landing/landing.component.ts
+++ b/frontend/src/app/feature/landing/landing.component.ts
@@ -11,11 +11,12 @@ import { ActivatedRoute, RouterLink } from '@angular/router';
import { AuthService } from '@service/auth.service';
import { LoginComponent } from '../auth/login/login.component';
import { RegisterComponent } from '../auth/register/register.component';
+import { RecoverPasswordComponent } from '../auth/recover-password/recover-password.component';
@Component({
selector: 'app-landing-page',
standalone: true,
- imports: [NgFor, RouterLink, LoginComponent, RegisterComponent],
+ imports: [NgFor, RouterLink, LoginComponent, RegisterComponent, RecoverPasswordComponent],
templateUrl: './landing.component.html',
changeDetection: ChangeDetectionStrategy.OnPush,
})
@@ -26,6 +27,7 @@ export class LandingComponent implements OnInit, OnDestroy {
route: ActivatedRoute = inject(ActivatedRoute);
showLogin = signal(false);
showRegister = signal(false);
+ showRecoverPassword = signal(false);
ngOnInit() {
this.startAutoplay();
@@ -43,18 +45,28 @@ export class LandingComponent implements OnInit, OnDestroy {
showLoginForm() {
this.showLogin.set(true);
this.showRegister.set(false);
+ this.showRecoverPassword.set(false);
document.body.style.overflow = 'hidden';
}
showRegisterForm() {
this.showRegister.set(true);
this.showLogin.set(false);
+ this.showRecoverPassword.set(false);
+ document.body.style.overflow = 'hidden';
+ }
+
+ showRecoverPasswordForm() {
+ this.showRecoverPassword.set(true);
+ this.showLogin.set(false);
+ this.showRegister.set(false);
document.body.style.overflow = 'hidden';
}
hideAuthForms() {
this.showLogin.set(false);
this.showRegister.set(false);
+ this.showRecoverPassword.set(false);
document.body.style.overflow = 'auto';
}
diff --git a/justfile b/justfile
new file mode 100644
index 0000000..1d68253
--- /dev/null
+++ b/justfile
@@ -0,0 +1,23 @@
+# Info
+info:
+ just --list
+
+# Starts the project in development mode
+start:
+ command -v concurrently &> /dev/null || bun add -g concurrently
+ command -v watchexec &> /dev/null || brew install watchexec
+ docker compose up -d
+ conc -n "frontend,backend" "cd frontend && bun run start" "cd backend/ && watchexec -r -e java ./gradlew :bootRun"
+
+# Builds both the backend and frontend docker images (obv)
+build:
+ just build-fe
+ just build-be
+
+# Builds the backend docker image
+build-be:
+ docker buildx build -f backend/.docker/Dockerfile -t git.kjan.de/szut/casino-backend:latest backend
+
+# Builds the frontend docker image
+build-fe:
+ docker buildx build -f frontend/.docker/Dockerfile -t git.kjan.de/szut/casino-frontend:latest frontend