feat(ui): add generated premium assets
Build & Deploy Pluriwave / Build APK + AAB release (push) Successful in 1m17s
Build & Deploy Pluriwave / Análisis de código (push) Successful in 11s

This commit is contained in:
2026-05-20 22:15:16 +02:00
parent 2fb794a43b
commit 3be59d740c
18 changed files with 146 additions and 23 deletions
+1
View File
@@ -56,6 +56,7 @@ class PantallaFavoritos extends StatelessWidget {
scale: Tween<double>(begin: 1, end: 1.03).animate(animation),
child: child,
),
// ignore: deprecated_member_use
onReorder: (oldIndex, newIndex) async {
if (newIndex > oldIndex) newIndex--;
final emisora = favoritos[oldIndex];
+60
View File
@@ -46,6 +46,7 @@ class _PantallaInicioState extends State<PantallaInicio> {
child: CustomScrollView(
slivers: [
SliverToBoxAdapter(child: _heroHeader(context, estado)),
const SliverToBoxAdapter(child: _AuroraWaveBanner()),
SliverToBoxAdapter(child: _seccionTendencias(estado, theme)),
SliverToBoxAdapter(child: _chipGeneros(context, theme)),
if (estado.error != null)
@@ -238,6 +239,65 @@ class _PantallaInicioState extends State<PantallaInicio> {
}
}
class _AuroraWaveBanner extends StatelessWidget {
const _AuroraWaveBanner();
@override
Widget build(BuildContext context) {
final t = context.pluriTokens;
return Padding(
padding: EdgeInsets.fromLTRB(t.spacingMd, 4, t.spacingMd, 8),
child: ClipRRect(
borderRadius: BorderRadius.circular(t.radiusLg),
child: Stack(
alignment: Alignment.centerLeft,
children: [
Image.asset(
'assets/images/aurora_wave_banner.png',
height: 108,
width: double.infinity,
fit: BoxFit.cover,
errorBuilder: (_, __, ___) => const SizedBox.shrink(),
),
Container(
height: 108,
decoration: BoxDecoration(
gradient: LinearGradient(
colors: [
Colors.black.withValues(alpha: 0.58),
Colors.transparent,
],
),
),
),
Padding(
padding: const EdgeInsets.all(16),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
children: [
Text(
'Live spectrum',
style: Theme.of(context).textTheme.titleMedium?.copyWith(
fontWeight: FontWeight.w900,
),
),
const SizedBox(height: 4),
Text(
'Ondas aurora en tiempo real',
style: Theme.of(context).textTheme.bodySmall,
),
],
),
),
],
),
),
);
}
}
class _ChipShimmer extends StatelessWidget {
final ThemeData theme;
const _ChipShimmer({required this.theme});