Implementation
static ThemeData get lightTheme {
return ThemeData(
useMaterial3: true,
colorScheme: RALIColorScheme.lightColorScheme,
textTheme: RALITextTheme.textTheme,
// Component themes
elevatedButtonTheme: ElevatedButtonThemeData(
style: ElevatedButton.styleFrom(
elevation: RALIMaterialElevation.materialElevation[2],
padding: RALIEdgeInsets.button,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(RALISpacing.radiusSm),
),
),
),
inputDecorationTheme: InputDecorationTheme(
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(RALISpacing.radiusSm),
borderSide: BorderSide.none,
),
filled: true,
fillColor: RALIColors.surface,
contentPadding: RALIEdgeInsets.allMd,
),
cardTheme: CardTheme(
elevation: RALIMaterialElevation.materialElevation[1],
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(RALISpacing.radiusSm),
),
margin: RALIEdgeInsets.allSm,
),
floatingActionButtonTheme: FloatingActionButtonThemeData(
elevation: RALIMaterialElevation.materialElevation[3],
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(RALISpacing.radiusSm),
),
),
// Additional customizations
visualDensity: VisualDensity.adaptivePlatformDensity,
scaffoldBackgroundColor: RALIColors.background,
appBarTheme: const AppBarTheme(
color: RALIColors.surface,
elevation: 0,
),
);
}