Skip to content

Conversation

@amaury901130
Copy link
Collaborator

@amaury901130 amaury901130 commented Nov 17, 2025

Description

  • New Login Form example.
  • Example manage Form State and Validations.
  • Add PrimaryButton Component.

Preview

Screenshot 2025-11-17 at 2 31 00 PM

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR implements a new login form feature with form state management and validation, restructuring the authentication flow to follow a cleaner modular architecture. The changes introduce reusable UI components, form validators, and reorganize the file structure to separate authentication pages from main application pages.

  • Adds comprehensive form validation for email and password fields with user-friendly error messages
  • Introduces a reusable PrimaryButton component with loading and disabled states
  • Restructures page organization: /pages/auth/ for authentication and /pages/main/ for main app screens

Reviewed Changes

Copilot reviewed 17 out of 24 changed files in this pull request and generated 11 comments.

Show a summary per file
File Description
modules/domain/lib/services/auth_service.dart Reformatted logInWithCredentials method parameters for better readability
modules/domain/lib/bloc/auth/auth_cubit.dart Changed login method to use named parameters and renamed username to email
modules/common/lib/validators/form_validator.dart Added new validator class with email and strong password validation methods
modules/common/lib/core/resource.dart Added message getter to RError class for easier error message access
app/pubspec.yaml Added gap package dependency for spacing widgets
app/lib/presentation/ui/pages/main/home/home_view.dart Created new home view with logout functionality
app/lib/presentation/ui/pages/main/home/home_page.dart Updated import path to reflect new directory structure
app/lib/presentation/ui/pages/auth/login/login_page.dart Implemented new login page with centered card layout
app/lib/presentation/ui/pages/auth/login/login_form.dart Created comprehensive login form with validation, terms agreement, and error handling
app/lib/presentation/ui/components/primary_button.dart Added reusable primary button component with loading and disabled states
app/lib/presentation/themes/spacing.dart Removed old Spacing class (replaced by Dimen constants)
app/lib/presentation/themes/local_theme.dart Enhanced disabled button styling and added card theme configuration
app/lib/presentation/resources/resources.dart Removed Spacing extensions (migrated to Dimen constants)
app/lib/presentation/resources/locale/intl_*.arb Added localization strings for login form labels, errors, and instructions
app/lib/presentation/resources/locale/generated/*.dart Auto-generated localization code from new ARB entries
app/lib/presentation/resources/dim.dart Added spacing and dimension constants to replace old Spacing class
app/lib/presentation/navigation/routers.dart Updated import paths to reflect new directory structure
app/lib/presentation/ui/pages/auth/sign_up/* Created placeholder sign-up page files

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@amaury901130 amaury901130 force-pushed the feature/login-form-managament branch from 098fc84 to 0d86fb4 Compare November 17, 2025 17:32
Copy link
Contributor

@tarruk tarruk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚀

@amaury901130 amaury901130 merged commit 2b4975e into main Nov 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants