feat(ui): refine navigation and sleep timer
Build & Deploy Pluriwave / Análisis de código (push) Successful in 21s
Build & Deploy Pluriwave / Build APK + AAB release (push) Successful in 2m19s

This commit is contained in:
2026-05-22 13:12:50 +02:00
parent 0edad1bfcb
commit e1d1d6c639
11 changed files with 755 additions and 124 deletions
+44
View File
@@ -0,0 +1,44 @@
import 'package:flutter/material.dart';
import '../tema/pluriwave_theme.dart';
abstract final class PluriLayout {
static const double horizontal = 16;
static const double sectionGap = 12;
static const double panelGap = 12;
static const double compactGap = 8;
static const double bottomChromeInset = 146;
static const EdgeInsets pageListPadding = EdgeInsets.fromLTRB(
0,
0,
0,
bottomChromeInset,
);
static const EdgeInsets pageContentPadding = EdgeInsets.symmetric(
horizontal: horizontal,
);
static const EdgeInsets sheetPadding = EdgeInsets.all(18);
}
class PluriPanelColumn extends StatelessWidget {
const PluriPanelColumn({super.key, required this.children, this.gap});
final List<Widget> children;
final double? gap;
@override
Widget build(BuildContext context) {
final resolvedGap = gap ?? context.pluriTokens.spacingSm + 4;
return Column(
children: [
for (var i = 0; i < children.length; i++) ...[
if (i > 0) SizedBox(height: resolvedGap),
children[i],
],
],
);
}
}