Merge pull request 'add basic routing and nav-bar' (#2) from routing into master

Reviewed-on: #2
fix/structure
remrem 12 months ago
commit b198c891e6

@ -1,6 +1,12 @@
<h1>Ratatouille</h1>
<div class="wrapper">
<app-recipe-list></app-recipe-list>
<app-recipe-form></app-recipe-form>
</div>
<nav>
<ul>
<li><a routerLink="/" routerLinkActive="active" ariaCurrentWhenActive="page">Home</a></li>
<li><a routerLink="/add" routerLinkActive="active" ariaCurrentWhenActive="page">Add Recipe</a></li>
</ul>
</nav>
<div id="page-wrapper">
<router-outlet></router-outlet>
</div>

@ -1,5 +1,5 @@
import { Component } from '@angular/core';
import { RouterOutlet } from '@angular/router';
import { RouterOutlet, RouterLink } from '@angular/router';
import { RecipeFormComponent } from './recipe-form/recipe-form.component';
import { RecipeService } from './services/recipe.service';
import { Recipe } from './model/recipe.model';
@ -10,6 +10,7 @@ import { RecipeListComponent } from './components/recipe-list/recipe-list.compon
standalone: true,
imports: [
RouterOutlet,
RouterLink,
RecipeFormComponent,
RecipeListComponent,
],

@ -6,3 +6,4 @@ import { routes } from './app.routes';
export const appConfig: ApplicationConfig = {
providers: [provideRouter(routes)]
};

@ -1,3 +1,9 @@
import { Routes } from '@angular/router';
import { Routes } from '@angular/router'
export const routes: Routes = [];
import { RecipeFormComponent } from "./recipe-form/recipe-form.component";
import { RecipeListComponent } from "./components/recipe-list/recipe-list.component";
export const routes: Routes = [
{ path: 'add', component: RecipeFormComponent },
{ path: '', component: RecipeListComponent }
];

@ -0,0 +1,5 @@
#recipe-list {
display: flex;
flex-wrap: wrap;
gap: 2rem;
}

@ -1,4 +1,3 @@
<p>recipe-list works!</p>
<div>
<div id="recipe-list">
<app-recipe-mini *ngFor="let recipe of recipes" [recipe]="recipe"></app-recipe-mini>
</div>
</div>

@ -3,8 +3,7 @@
border-radius: 8px;
overflow: hidden;
width: 300px;
margin: 10px;
box-shadow: 0 4px 8px rgba(0,0,0,0.1);
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
.recipe-image img {
@ -59,6 +58,7 @@ button span {
position: relative;
z-index: 1;
}
button i {
position: absolute;
inset: 0;
@ -105,9 +105,11 @@ button:hover i::after {
0% {
transform: translateX(0);
}
50% {
transform: translateX(5px);
}
100% {
transform: translateX(0);
}
@ -117,10 +119,12 @@ button:hover i::after {
0% {
box-shadow: #27272c;
}
50% {
box-shadow: 0 0 25px var(--clr);
}
100% {
box-shadow: #27272c;
}
}
}

@ -1,10 +1,11 @@
<div class="recipe-card">
<div class="recipe-image">
<img [src]="recipe.image" onerror="this.onerror=null;this.src='https://placehold.co/100x100';" alt="{{recipe.name}}">
<img [src]="recipe.image" onerror="this.onerror=null;this.src='https://placehold.co/100x100';"
alt="{{recipe.name}}">
</div>
<div class="recipe-details">
<h2>{{recipe.name}}</h2>
<p>{{recipe.description}}</p>
<button (click)="navigateToRecipe()" style="--clr:#39FF14"><span>Voir la recette</span><i></i></button>
</div>
</div>
</div>

@ -1 +1,3 @@
/* You can add global styles to this file, and also import other style files */
:root {
font-family: "Helvetica";
}
Loading…
Cancel
Save