Co-authored-by: MENDOZA BALLARDO GAEL RICARDO <gael-meb123@users.noreply.github.com>

Co-authored-by: Azareth-Tr <Azareth-Tr@users.noreply.github.com>
Co-authored-by: eddgranados12 <eddgranados12@users.noreply.github.com>

vistas de mockup
This commit is contained in:
shinra32
2026-05-22 20:46:14 -06:00
parent 21a73162df
commit 3ef6a9220c
5 changed files with 882 additions and 41 deletions

View File

@@ -1,4 +1,5 @@
import 'package:dio/dio.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
@@ -6,7 +7,10 @@ import '../constants/auth_constants.dart';
import '../storage/secure_storage.dart';
final apiClientProvider = Provider<Dio>((ref) {
final baseUrl = dotenv.env['API_BASE_URL'] ?? 'http://10.0.2.2:8000';
final defaultBaseUrl = kIsWeb
? 'http://localhost:8000'
: 'http://10.0.2.2:8000';
final baseUrl = dotenv.env['API_BASE_URL'] ?? defaultBaseUrl;
final secureStorage = ref.read(secureStorageProvider);
final dio = Dio(

View File

@@ -24,16 +24,22 @@ class AuthController extends AsyncNotifier<AuthState> {
Future<void> login({required String email, required String password}) async {
state = const AsyncLoading<AuthState>();
final session = await ref
.read(authServiceProvider)
.login(email: email, password: password);
state = AsyncData(
AuthState.authenticated(
token: session.token,
userRole: session.userRole,
routeId: session.routeId,
),
);
try {
final session = await ref
.read(authServiceProvider)
.login(email: email, password: password);
state = AsyncData(
AuthState.authenticated(
token: session.token,
userRole: session.userRole,
routeId: session.routeId,
),
);
} catch (error, stackTrace) {
state = AsyncError<AuthState>(error, stackTrace);
rethrow;
}
}
Future<void> register({
@@ -42,16 +48,22 @@ class AuthController extends AsyncNotifier<AuthState> {
required String password,
}) async {
state = const AsyncLoading<AuthState>();
final session = await ref
.read(authServiceProvider)
.register(email: email, phone: phone, password: password);
state = AsyncData(
AuthState.authenticated(
token: session.token,
userRole: session.userRole,
routeId: session.routeId,
),
);
try {
final session = await ref
.read(authServiceProvider)
.register(email: email, phone: phone, password: password);
state = AsyncData(
AuthState.authenticated(
token: session.token,
userRole: session.userRole,
routeId: session.routeId,
),
);
} catch (error, stackTrace) {
state = AsyncError<AuthState>(error, stackTrace);
rethrow;
}
}
Future<void> logout() async {