diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml new file mode 100644 index 0000000..5b9e6a5 --- /dev/null +++ b/.github/workflows/main.yaml @@ -0,0 +1,16 @@ +name: Main Workflow + +on: + push: + branches: + - main + pull_request: + branches: + - main + - dev + - feat/* + - fix/* + +jobs: + run-tests: + uses: ./tests/docker-build.yaml diff --git a/.github/workflows/tests/docker-build.yaml b/.github/workflows/tests/docker-build.yaml index def7e0f..42dd3d0 100644 --- a/.github/workflows/tests/docker-build.yaml +++ b/.github/workflows/tests/docker-build.yaml @@ -2,12 +2,7 @@ name: Docker Build Check # Déclencheur pour chaque pull request on: - pull_request: - branches: - - main - - dev - - feat/* - - fix/* + workflow_call: jobs: build: diff --git a/angular.json b/angular.json index deaf0c9..84e08a9 100644 --- a/angular.json +++ b/angular.json @@ -37,7 +37,7 @@ ], "scripts": [], "server": "src/main.server.ts", - "prerender": true, + "prerender": false, "ssr": { "entry": "server.ts" } diff --git a/src/app/app.component.html b/src/app/app.component.html index 056d9d7..8937ae1 100644 --- a/src/app/app.component.html +++ b/src/app/app.component.html @@ -1,4 +1,4 @@ -
+
diff --git a/src/app/app.component.ts b/src/app/app.component.ts index 91d2c5b..3a90be5 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -1,8 +1,9 @@ -import { Component } from '@angular/core'; -import { CommonModule } from '@angular/common'; -import { RouterOutlet } from '@angular/router'; +import {Component, inject} from '@angular/core'; +import {CommonModule} from '@angular/common'; +import {RouterOutlet} from '@angular/router'; import {NavBarComponent} from "@app/shared/components/nav-bar/nav-bar.component"; import {FooterComponent} from "@app/shared/components/footer/footer.component"; +import {ThemeService} from '@app/core/services/theme/theme.service'; @Component({ selector: 'app-root', @@ -13,4 +14,5 @@ import {FooterComponent} from "@app/shared/components/footer/footer.component"; }) export class AppComponent { title = 'TrouveTonProfile'; + themeService = inject(ThemeService); } diff --git a/src/app/core/services/theme/theme.service.spec.ts b/src/app/core/services/theme/theme.service.spec.ts new file mode 100644 index 0000000..1c2957b --- /dev/null +++ b/src/app/core/services/theme/theme.service.spec.ts @@ -0,0 +1,16 @@ +import { TestBed } from '@angular/core/testing'; + +import { ThemeService } from './theme.service'; + +describe('ThemeService', () => { + let service: ThemeService; + + beforeEach(() => { + TestBed.configureTestingModule({}); + service = TestBed.inject(ThemeService); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); +}); diff --git a/src/app/core/services/theme/theme.service.ts b/src/app/core/services/theme/theme.service.ts new file mode 100644 index 0000000..959e976 --- /dev/null +++ b/src/app/core/services/theme/theme.service.ts @@ -0,0 +1,14 @@ +import {Injectable, signal} from '@angular/core'; + +@Injectable({ + providedIn: 'root' +}) +export class ThemeService { + + darkModeSignal = signal('null'); + + updateDarkMode() { + this.darkModeSignal.update((value) => (value === 'dark' ? 'null' : 'dark')); + } + +} diff --git a/src/app/shared/components/nav-bar/nav-bar.component.html b/src/app/shared/components/nav-bar/nav-bar.component.html index 2eaed96..e642f5e 100644 --- a/src/app/shared/components/nav-bar/nav-bar.component.html +++ b/src/app/shared/components/nav-bar/nav-bar.component.html @@ -1,29 +1,46 @@ -
+