package views templ LoginScreen() { @AuthScreen( "Se connecter à Xtablo", "/login-v2", "Découvrez la nouvelle expérience de connexion", LoginForm(), AuthScreenFooter("Pas encore de compte ?", "/signup", "S'inscrire"), ) } templ SignupScreen() { @AuthScreen( "S'inscrire à Xtablo", "/login", "Vous avez déjà un compte ?", SignupForm(), AuthScreenFooter("Vous avez déjà un compte ?", "/login", "Se connecter"), ) } templ AuthScreen(title string, helperHref string, helperLabel string, form templ.Component, footer templ.Component) {

{ title }

@form @AuthDivider() @GoogleButton() @footer
} templ LoginForm() {
@AuthField("email", "email", "Email *", "email", "Votre email") @AuthField("password", "password", "Mot de passe *", "password", "Votre mot de passe")
Mot de passe oublié ?
} templ SignupForm() {
@AuthField("signup-email", "email", "Email *", "email", "Votre email") @AuthField("signup-password", "password", "Mot de passe *", "password", "Choisissez un mot de passe")
} templ AuthField(fieldID string, fieldName string, fieldLabel string, inputType string, placeholder string) {
} templ AuthScreenFooter(copy string, href string, label string) {

{ copy } { label }

} templ AuthStatus(kind string, message string) { if kind == "success" {
{ message }
} else if kind == "error" { } } templ AuthDivider() {
Ou continuer avec
} templ GoogleButton() { } templ AnimatedBackground() { }