merge from master and resolve conflicts, also used BackgroundSecondary instead of 'blank' color in LoginPage
commit
9d04f3b5a5
Binary file not shown.
After Width: | Height: | Size: 512 B |
After Width: | Height: | Size: 931 B |
After Width: | Height: | Size: 977 B |
After Width: | Height: | Size: 896 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 1.2 KiB |
@ -0,0 +1,154 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
|
||||
x:Class="ShoopNCook.Views.LoginPage"
|
||||
Title="LoginPage"
|
||||
BackgroundColor="{StaticResource BackgroundPrimary}">
|
||||
<VerticalStackLayout
|
||||
Margin="20, 75, 20, 20">
|
||||
<Label
|
||||
FontFamily="PoppinsBold"
|
||||
Text="Welcome Back!"
|
||||
FontSize="32"
|
||||
TextColor="{StaticResource TextColorPrimary}"
|
||||
FontAttributes="Bold"
|
||||
VerticalOptions="Start"
|
||||
HorizontalOptions="Start" />
|
||||
|
||||
<Label
|
||||
Text="Fill in your credentials or continue with social media"
|
||||
FontFamily="PoppinsBold"
|
||||
FontSize="20"
|
||||
TextColor="{StaticResource TextColorSecondary}"
|
||||
VerticalOptions="Start"
|
||||
HorizontalOptions="Start" />
|
||||
|
||||
<Border
|
||||
StrokeThickness="1"
|
||||
Stroke="{StaticResource BackgroundPrimary}"
|
||||
StrokeShape="RoundRectangle 12"
|
||||
Margin="0,30,0,20"
|
||||
>
|
||||
<Grid
|
||||
Padding="5"
|
||||
BackgroundColor="{StaticResource BackgroundSecondary}"
|
||||
ColumnDefinitions="Auto,Auto,*"
|
||||
>
|
||||
|
||||
<Image
|
||||
Grid.Column="1"
|
||||
Source="email_icon.svg">
|
||||
</Image>
|
||||
<Entry
|
||||
StyleId="{x:Null}"
|
||||
Grid.Column="2"
|
||||
Placeholder="Mail address"
|
||||
TextColor="Black"></Entry>
|
||||
</Grid>
|
||||
</Border>
|
||||
|
||||
<Border
|
||||
StrokeThickness="1"
|
||||
Stroke="{StaticResource BackgroundPrimary}"
|
||||
StrokeShape="RoundRectangle 12"
|
||||
>
|
||||
<Grid
|
||||
Padding="5"
|
||||
BackgroundColor="{StaticResource BackgroundSecondary}"
|
||||
ColumnDefinitions="Auto,Auto,*,Auto">
|
||||
|
||||
<Image
|
||||
Grid.Column="1"
|
||||
Source="password_icon.svg">
|
||||
</Image>
|
||||
<Entry
|
||||
Grid.Column="2"
|
||||
Placeholder="Password"
|
||||
TextColor="Black"
|
||||
IsPassword="True"></Entry>
|
||||
<ImageButton
|
||||
Grid.Column="3"
|
||||
Source="visibility_off.svg"
|
||||
HeightRequest="30">
|
||||
</ImageButton>
|
||||
</Grid>
|
||||
</Border>
|
||||
|
||||
<Label
|
||||
TextColor="{StaticResource TextColorSecondary}"
|
||||
HorizontalOptions="End">
|
||||
Forgot Password ?
|
||||
</Label>
|
||||
|
||||
|
||||
<Border
|
||||
Margin="0, 30, 0, 0"
|
||||
Stroke="{StaticResource BackgroundPrimary}"
|
||||
StrokeShape="RoundRectangle 12">
|
||||
<Label
|
||||
HeightRequest="50"
|
||||
BackgroundColor="{StaticResource ActionButton}"
|
||||
HorizontalTextAlignment="Center"
|
||||
VerticalTextAlignment="Center">
|
||||
LOG IN</Label>
|
||||
</Border>
|
||||
|
||||
<HorizontalStackLayout
|
||||
HorizontalOptions="Center"
|
||||
Margin="0, 20, 0, 0"
|
||||
Spacing="6">
|
||||
<Rectangle
|
||||
BackgroundColor="Gray"
|
||||
WidthRequest="15"
|
||||
HeightRequest="3"/>
|
||||
<Label
|
||||
TextColor="{StaticResource TextColorSecondary}">
|
||||
Or continue with</Label>
|
||||
<Rectangle
|
||||
BackgroundColor="Gray"
|
||||
WidthRequest="15"
|
||||
HeightRequest="3"/>
|
||||
</HorizontalStackLayout>
|
||||
|
||||
<HorizontalStackLayout
|
||||
Margin="0, 20, 0, 0"
|
||||
Spacing="15"
|
||||
HorizontalOptions="Center">
|
||||
<Border
|
||||
HeightRequest="75"
|
||||
WidthRequest="75"
|
||||
BackgroundColor="#e9f4ff"
|
||||
StrokeShape="RoundRectangle 25 25 25 25"
|
||||
Stroke="{StaticResource BackgroundPrimary}">
|
||||
<Image
|
||||
HeightRequest="50"
|
||||
Source="google_logo.svg"/>
|
||||
</Border>
|
||||
|
||||
<Border
|
||||
HeightRequest="75"
|
||||
WidthRequest="75"
|
||||
BackgroundColor="#4460a0"
|
||||
StrokeShape="RoundRectangle 25 25 25 25"
|
||||
Stroke="{StaticResource BackgroundPrimary}">
|
||||
<Image
|
||||
WidthRequest="40"
|
||||
Source="facebook_logo.svg"/>
|
||||
</Border>
|
||||
</HorizontalStackLayout>
|
||||
|
||||
<HorizontalStackLayout
|
||||
Spacing="4"
|
||||
HorizontalOptions="Center"
|
||||
Margin="0, 20, 0, 0">
|
||||
<Label
|
||||
TextColor="{StaticResource TextColorPrimary}">
|
||||
New User?</Label>
|
||||
<Label
|
||||
FontAttributes="Bold"
|
||||
TextColor="{StaticResource TextColorPrimary}">
|
||||
Create Account</Label>
|
||||
</HorizontalStackLayout>
|
||||
|
||||
</VerticalStackLayout>
|
||||
</ContentPage>
|
@ -0,0 +1,9 @@
|
||||
namespace ShoopNCook.Views;
|
||||
|
||||
public partial class LoginPage : ContentPage
|
||||
{
|
||||
public LoginPage()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
Binary file not shown.
@ -0,0 +1,53 @@
|
||||
# Diagramme de séquence Shop&Cook
|
||||
|
||||
## Interactions entre Utilisateur, Shop&Cook et API
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant Utilisateur
|
||||
participant Shop&Cook
|
||||
participant API
|
||||
|
||||
Utilisateur->>+Shop&Cook: Ouvre l'application
|
||||
Shop&Cook->>+Utilisateur: Affiche l'écran de connexion
|
||||
|
||||
Utilisateur->>+Shop&Cook: Se connecte / S'inscrit
|
||||
Shop&Cook->>+API: Valide les informations de connexion / inscription
|
||||
API-->>-Shop&Cook: Retourne le résultat de la validation
|
||||
Shop&Cook-->>-Utilisateur: Affiche l'écran d'accueil ou un message d'erreur
|
||||
|
||||
Utilisateur->>+Shop&Cook: Recherche des recettes avec filtres
|
||||
Shop&Cook->>+API: Récupère les recettes filtrées
|
||||
API-->>-Shop&Cook: Retourne les recettes filtrées
|
||||
Shop&Cook-->>-Utilisateur: Affiche les recettes filtrées
|
||||
|
||||
Utilisateur->>+Shop&Cook: Aime/Ajoute aux favoris une recette
|
||||
Shop&Cook->>+API: Met à jour le statut de la recette
|
||||
API-->>-Shop&Cook: Confirme la mise à jour
|
||||
Shop&Cook-->>-Utilisateur: Met à jour l'affichage de la recette
|
||||
|
||||
Utilisateur->>+Shop&Cook: Accède aux paramètres
|
||||
Shop&Cook-->>-Utilisateur: Affiche les options de paramètres
|
||||
|
||||
Utilisateur->>+Shop&Cook: Change le thème/le mot de passe
|
||||
Shop&Cook->>+API: Enregistre les modifications
|
||||
API-->>-Shop&Cook: Confirme l'enregistrement
|
||||
Shop&Cook-->>-Utilisateur: Met à jour l'affichage et confirme les modifications
|
||||
|
||||
Utilisateur->>+Shop&Cook: Clique sur une recette
|
||||
Shop&Cook->>+API: Récupère les détails de la recette
|
||||
API-->>-Shop&Cook: Retourne les détails de la recette
|
||||
Shop&Cook-->>-Utilisateur: Affiche les détails de la recette
|
||||
|
||||
Utilisateur->>+Shop&Cook: Choisit le nombre de personnes et ajoute au panier
|
||||
Shop&Cook-->>-Utilisateur: Met à jour le panier
|
||||
|
||||
Utilisateur->>+Shop&Cook: Planifie un repas pour un jour de la semaine
|
||||
Shop&Cook-->>-Utilisateur: Met à jour le planning
|
||||
|
||||
Utilisateur->>+Shop&Cook: Génère la liste de courses
|
||||
Shop&Cook->>+API: Récupère les ingrédients nécessaires
|
||||
API-->>-Shop&Cook: Retourne la liste des ingrédients
|
||||
Shop&Cook-->>-Utilisateur: Affiche la liste de courses
|
||||
|
||||
```
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in new issue