diff --git a/sandkasten/src/app/app-routing.module.ts b/sandkasten/src/app/app-routing.module.ts
index 0297262..8f1ac42 100644
--- a/sandkasten/src/app/app-routing.module.ts
+++ b/sandkasten/src/app/app-routing.module.ts
@@ -1,7 +1,15 @@
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
+import { EditorComponent } from './editor/editor.component';
+import { LandingPageComponent } from './landing-page/landing-page.component';
+import { OutputComponent } from './output/output.component';
-const routes: Routes = [];
+// Toutes les routes de l'application sont définies ici
+const routes: Routes = [
+ { path: '', component: LandingPageComponent },
+ { path: 'editor', component: EditorComponent },
+ { path: 'output', component: OutputComponent }
+];
@NgModule({
imports: [RouterModule.forRoot(routes)],
diff --git a/sandkasten/src/app/app.component.css b/sandkasten/src/app/app.component.css
index 6f55f37..e69de29 100644
--- a/sandkasten/src/app/app.component.css
+++ b/sandkasten/src/app/app.component.css
@@ -1,14 +0,0 @@
-.code_container {
- display: grid;
- grid-template-columns: 1fr 1fr;
-
- color: white;
-}
-
-.code_container .code_input {
- background: red;
-}
-
-.code_container .code_output {
- background: blue;
-}
diff --git a/sandkasten/src/app/app.component.html b/sandkasten/src/app/app.component.html
index 2d60ea4..f741a93 100644
--- a/sandkasten/src/app/app.component.html
+++ b/sandkasten/src/app/app.component.html
@@ -1,6 +1,5 @@
diff --git a/sandkasten/src/app/app.module.ts b/sandkasten/src/app/app.module.ts
index d19b568..27535a2 100644
--- a/sandkasten/src/app/app.module.ts
+++ b/sandkasten/src/app/app.module.ts
@@ -4,17 +4,19 @@ import { BrowserModule } from '@angular/platform-browser';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { HeaderComponent } from './header/header.component';
-import { CodeInputComponent } from './code-input/code-input.component';
-import { CodeOutputComponent } from './code-output/code-output.component';
import { FooterComponent } from './footer/footer.component';
+import { EditorComponent } from './editor/editor.component';
+import { OutputComponent } from './output/output.component';
+import { LandingPageComponent } from './landing-page/landing-page.component';
@NgModule({
declarations: [
AppComponent,
HeaderComponent,
- CodeInputComponent,
- CodeOutputComponent,
- FooterComponent
+ FooterComponent,
+ EditorComponent,
+ OutputComponent,
+ LandingPageComponent
],
imports: [
BrowserModule,
diff --git a/sandkasten/src/app/code-input/code-input.component.css b/sandkasten/src/app/code-input/code-input.component.css
deleted file mode 100644
index 0f6cfd3..0000000
--- a/sandkasten/src/app/code-input/code-input.component.css
+++ /dev/null
@@ -1,5 +0,0 @@
-.code_input .code_input_textarea {
- background-color: #cccccc;
- min-height: 80vh;
- width: 100%;
-}
diff --git a/sandkasten/src/app/code-input/code-input.component.html b/sandkasten/src/app/code-input/code-input.component.html
deleted file mode 100644
index 848e552..0000000
--- a/sandkasten/src/app/code-input/code-input.component.html
+++ /dev/null
@@ -1,10 +0,0 @@
-
diff --git a/sandkasten/src/app/code-input/code-input.component.ts b/sandkasten/src/app/code-input/code-input.component.ts
deleted file mode 100644
index 401deca..0000000
--- a/sandkasten/src/app/code-input/code-input.component.ts
+++ /dev/null
@@ -1,14 +0,0 @@
-import { Component } from '@angular/core';
-
-@Component({
- selector: 'app-code-input',
- templateUrl: './code-input.component.html',
- styleUrls: ['./code-input.component.css']
-})
-export class CodeInputComponent {
- reponse!: string;
- onRunButtonClicked() {
- this.reponse = 'Run button clicked';
- console.log('Run button clicked');
- }
-}
diff --git a/sandkasten/src/app/code-output/code-output.component.html b/sandkasten/src/app/code-output/code-output.component.html
deleted file mode 100644
index 47bdf6e..0000000
--- a/sandkasten/src/app/code-output/code-output.component.html
+++ /dev/null
@@ -1 +0,0 @@
-code-output works!
diff --git a/sandkasten/src/app/code-output/code-output.component.spec.ts b/sandkasten/src/app/code-output/code-output.component.spec.ts
deleted file mode 100644
index 2e0c61e..0000000
--- a/sandkasten/src/app/code-output/code-output.component.spec.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-import { ComponentFixture, TestBed } from '@angular/core/testing';
-
-import { CodeOutputComponent } from './code-output.component';
-
-describe('CodeOutputComponent', () => {
- let component: CodeOutputComponent;
- let fixture: ComponentFixture;
-
- beforeEach(() => {
- TestBed.configureTestingModule({
- declarations: [CodeOutputComponent]
- });
- fixture = TestBed.createComponent(CodeOutputComponent);
- component = fixture.componentInstance;
- fixture.detectChanges();
- });
-
- it('should create', () => {
- expect(component).toBeTruthy();
- });
-});
diff --git a/sandkasten/src/app/code-output/code-output.component.ts b/sandkasten/src/app/code-output/code-output.component.ts
deleted file mode 100644
index 4cd492c..0000000
--- a/sandkasten/src/app/code-output/code-output.component.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import { Component } from '@angular/core';
-
-@Component({
- selector: 'app-code-output',
- templateUrl: './code-output.component.html',
- styleUrls: ['./code-output.component.css']
-})
-export class CodeOutputComponent {
-
-}
diff --git a/sandkasten/src/app/editor/editor.component.css b/sandkasten/src/app/editor/editor.component.css
new file mode 100644
index 0000000..ca8f153
--- /dev/null
+++ b/sandkasten/src/app/editor/editor.component.css
@@ -0,0 +1,5 @@
+.code_input .code_input_textarea {
+ background-color: #cccccc;
+ min-height: 80vh;
+ width: 100%;
+}
\ No newline at end of file
diff --git a/sandkasten/src/app/editor/editor.component.html b/sandkasten/src/app/editor/editor.component.html
new file mode 100644
index 0000000..92d0eec
--- /dev/null
+++ b/sandkasten/src/app/editor/editor.component.html
@@ -0,0 +1,13 @@
+
diff --git a/sandkasten/src/app/code-input/code-input.component.spec.ts b/sandkasten/src/app/editor/editor.component.spec.ts
similarity index 50%
rename from sandkasten/src/app/code-input/code-input.component.spec.ts
rename to sandkasten/src/app/editor/editor.component.spec.ts
index 39d907b..430658f 100644
--- a/sandkasten/src/app/code-input/code-input.component.spec.ts
+++ b/sandkasten/src/app/editor/editor.component.spec.ts
@@ -1,16 +1,16 @@
import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { CodeInputComponent } from './code-input.component';
+import { EditorComponent } from './editor.component';
-describe('CodeInputComponent', () => {
- let component: CodeInputComponent;
- let fixture: ComponentFixture;
+describe('EditorComponent', () => {
+ let component: EditorComponent;
+ let fixture: ComponentFixture;
beforeEach(() => {
TestBed.configureTestingModule({
- declarations: [CodeInputComponent]
+ declarations: [EditorComponent]
});
- fixture = TestBed.createComponent(CodeInputComponent);
+ fixture = TestBed.createComponent(EditorComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
diff --git a/sandkasten/src/app/editor/editor.component.ts b/sandkasten/src/app/editor/editor.component.ts
new file mode 100644
index 0000000..ed58f23
--- /dev/null
+++ b/sandkasten/src/app/editor/editor.component.ts
@@ -0,0 +1,35 @@
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+
+@Component({
+ selector: 'app-editor',
+ templateUrl: './editor.component.html',
+ styleUrls: ['./editor.component.css']
+})
+export class EditorComponent implements OnInit{
+ loadingProgress: number = 0; // Pour suivre la progression du chargement
+ isLoaded: boolean = false; // Pour vérifier si le chargement est terminé
+
+ constructor(private router: Router){}
+
+ ngOnInit(): void {
+
+ }
+
+ // Si click sur "Run", on redirige vers la page d'output
+ onRunButtonClicked() {
+ this.loadingProgress = 0;
+ this.isLoaded = false;
+
+ // Simuler le chargement pendant 5 secondes
+ const interval = setInterval(() => {
+ this.loadingProgress++;
+ if (this.loadingProgress >= 100) {
+ clearInterval(interval); // Arrêtez la simulation de chargement
+ this.isLoaded = true;
+ // Redirigez vers une autre page (par exemple, 'output')
+ this.router.navigate(['/output']);
+ }
+ }, 50); // Augmenter la valeur pour ralentir la progression du chargement si nécessaire
+ }
+}
diff --git a/sandkasten/src/app/header/header.component.css b/sandkasten/src/app/header/header.component.css
index 898bc4f..cde8f28 100644
--- a/sandkasten/src/app/header/header.component.css
+++ b/sandkasten/src/app/header/header.component.css
@@ -1,7 +1,19 @@
-.header-card {
- width: 35%;
+img {
+ width: 5%;
+ }
+
- img {
- width: 10%;
+a {
+ margin: 0 10px;
+ color: #333;
+ text-decoration: none;
+
+ &:hover {
+ text-decoration: underline;
}
+}
+
+.active {
+ color: #666;
+ text-decoration: underline;
}
\ No newline at end of file
diff --git a/sandkasten/src/app/header/header.component.html b/sandkasten/src/app/header/header.component.html
index 52d2a6f..dcb40ae 100644
--- a/sandkasten/src/app/header/header.component.html
+++ b/sandkasten/src/app/header/header.component.html
@@ -3,4 +3,18 @@
{{ description }}
Version : {{ version }}
+
diff --git a/sandkasten/src/app/landing-page/landing-page.component.css b/sandkasten/src/app/landing-page/landing-page.component.css
new file mode 100644
index 0000000..c9d73f9
--- /dev/null
+++ b/sandkasten/src/app/landing-page/landing-page.component.css
@@ -0,0 +1,15 @@
+.landing-block {
+ position: absolute;
+ top: 50%;
+ left: 50%;
+ transform: translate(-50%, -50%);
+}
+
+.landing-links {
+ width: 100%;
+ text-align: center;
+}
+
+button{
+ font-size: 20px;
+}
\ No newline at end of file
diff --git a/sandkasten/src/app/landing-page/landing-page.component.html b/sandkasten/src/app/landing-page/landing-page.component.html
new file mode 100644
index 0000000..a8b9e13
--- /dev/null
+++ b/sandkasten/src/app/landing-page/landing-page.component.html
@@ -0,0 +1,6 @@
+
+

+
+
+
+
diff --git a/sandkasten/src/app/landing-page/landing-page.component.spec.ts b/sandkasten/src/app/landing-page/landing-page.component.spec.ts
new file mode 100644
index 0000000..5b7ad0b
--- /dev/null
+++ b/sandkasten/src/app/landing-page/landing-page.component.spec.ts
@@ -0,0 +1,21 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { LandingPageComponent } from './landing-page.component';
+
+describe('LandingPageComponent', () => {
+ let component: LandingPageComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(() => {
+ TestBed.configureTestingModule({
+ declarations: [LandingPageComponent]
+ });
+ fixture = TestBed.createComponent(LandingPageComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/sandkasten/src/app/landing-page/landing-page.component.ts b/sandkasten/src/app/landing-page/landing-page.component.ts
new file mode 100644
index 0000000..3379e6e
--- /dev/null
+++ b/sandkasten/src/app/landing-page/landing-page.component.ts
@@ -0,0 +1,18 @@
+import { Component, OnInit } from '@angular/core';
+import { Router } from '@angular/router';
+
+@Component({
+ selector: 'app-landing-page',
+ templateUrl: './landing-page.component.html',
+ styleUrls: ['./landing-page.component.css']
+})
+export class LandingPageComponent implements OnInit{
+ constructor(private router: Router){}
+ ngOnInit(): void {
+
+ }
+ // Si click sur "Run", on redirige vers la page d'édition
+ onContinue():void{
+ this.router.navigateByUrl('/editor');
+ }
+}
diff --git a/sandkasten/src/app/code-output/code-output.component.css b/sandkasten/src/app/output/output.component.css
similarity index 100%
rename from sandkasten/src/app/code-output/code-output.component.css
rename to sandkasten/src/app/output/output.component.css
diff --git a/sandkasten/src/app/output/output.component.html b/sandkasten/src/app/output/output.component.html
new file mode 100644
index 0000000..3021571
--- /dev/null
+++ b/sandkasten/src/app/output/output.component.html
@@ -0,0 +1 @@
+output works!
diff --git a/sandkasten/src/app/output/output.component.spec.ts b/sandkasten/src/app/output/output.component.spec.ts
new file mode 100644
index 0000000..3a05fbe
--- /dev/null
+++ b/sandkasten/src/app/output/output.component.spec.ts
@@ -0,0 +1,21 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { OutputComponent } from './output.component';
+
+describe('OutputComponent', () => {
+ let component: OutputComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(() => {
+ TestBed.configureTestingModule({
+ declarations: [OutputComponent]
+ });
+ fixture = TestBed.createComponent(OutputComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/sandkasten/src/app/output/output.component.ts b/sandkasten/src/app/output/output.component.ts
new file mode 100644
index 0000000..f0d2b4b
--- /dev/null
+++ b/sandkasten/src/app/output/output.component.ts
@@ -0,0 +1,10 @@
+import { Component } from '@angular/core';
+
+@Component({
+ selector: 'app-output',
+ templateUrl: './output.component.html',
+ styleUrls: ['./output.component.css']
+})
+export class OutputComponent {
+
+}
diff --git a/sandkasten/src/styles.css b/sandkasten/src/styles.css
index e47fee6..cd925f9 100644
--- a/sandkasten/src/styles.css
+++ b/sandkasten/src/styles.css
@@ -1,3 +1,20 @@
* {
font-family: Roboto, Helvetica, sans-serif;
+}
+
+button {
+ background-color: transparent;
+ box-sizing: border-box;
+ padding: 5px 10px;
+ border: none;
+ box-shadow: lightgray 3px 3px 7px;
+ margin-right: 20px;
+ outline: none;
+ font-size: 20px;
+ font-weight: 500;
+
+ &:active {
+ transform: translate(1px, 1px);
+ box-shadow: lightgray 0 0 5px;
+ }
}
\ No newline at end of file