Files
Base-QR-FlutterApp/lib/theme/app_theme.dart
T
Alejandro Lara 50fe9a9d36 Initial commit: QR Scanner Flutter app
App móvil para validar pases QR contra base-admin-web con login Cognito,
escáner en tiempo real, feedback auditivo/háptico y README completo.
2026-06-09 17:03:06 -06:00

59 lines
2.1 KiB
Dart

import 'package:flutter/material.dart';
class AppTheme {
static const Color primary = Color(0xFF00D4AA);
static const Color primaryDark = Color(0xFF00A88A);
static const Color backgroundDark = Color(0xFF0A0E1A);
static const Color surfaceDark = Color(0xFF141B2D);
static const Color accent = Color(0xFF6C63FF);
static const Color success = Color(0xFF22C55E);
static const Color successDark = Color(0xFF16A34A);
static const Color warning = Color(0xFFFBBF24);
static const Color warningDark = Color(0xFFF59E0B);
static ThemeData get darkTheme {
return ThemeData(
useMaterial3: true,
brightness: Brightness.dark,
colorScheme: ColorScheme.dark(
primary: primary,
secondary: accent,
surface: surfaceDark,
onPrimary: Colors.white,
onSurface: Colors.white,
),
scaffoldBackgroundColor: backgroundDark,
inputDecorationTheme: InputDecorationTheme(
filled: true,
fillColor: Colors.white.withValues(alpha: 0.06),
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(14),
borderSide: BorderSide.none,
),
enabledBorder: OutlineInputBorder(
borderRadius: BorderRadius.circular(14),
borderSide: BorderSide(color: Colors.white.withValues(alpha: 0.08)),
),
focusedBorder: OutlineInputBorder(
borderRadius: BorderRadius.circular(14),
borderSide: const BorderSide(color: primary, width: 1.5),
),
errorBorder: OutlineInputBorder(
borderRadius: BorderRadius.circular(14),
borderSide: const BorderSide(color: Color(0xFFFF6B6B)),
),
contentPadding: const EdgeInsets.symmetric(horizontal: 20, vertical: 18),
hintStyle: TextStyle(color: Colors.white.withValues(alpha: 0.4)),
),
elevatedButtonTheme: ElevatedButtonThemeData(
style: ElevatedButton.styleFrom(
elevation: 0,
padding: const EdgeInsets.symmetric(vertical: 18),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(14),
),
),
),
);
}
}