feat: enhance UI, branding assets, onboarding flow, and screen layouts

This commit is contained in:
R-Bharathraj
2026-09-18 15:23:30 +05:30
parent cafffd27e0
commit 5122eebc11
68 changed files with 1661 additions and 470 deletions

View File

@@ -13,10 +13,15 @@ import '../state/shifts_controller.dart';
import '../widgets/collapsing_header.dart';
import '../widgets/common.dart';
import '../widgets/shift_card.dart';
import '../widgets/krow_wordmark.dart';
class TodayScreen extends ConsumerWidget {
const TodayScreen({super.key});
/// Brand line (40) + gap + identity row (44) + gap + stats, plus 6/18
/// padding.
static const _expandedHeader = 188.0;
String _greeting() {
final h = DateTime.now().hour;
if (h < 12) return 'Good morning';
@@ -39,16 +44,24 @@ class TodayScreen extends ConsumerWidget {
body: CustomScrollView(
slivers: [
KrowSliverHeader(
expandedHeight: 152,
expandedHeight: _expandedHeader,
collapsedHeight: 60,
builder: (context, t) => HeaderCrossFade(
t: t,
expandedHeight: 152,
expandedHeight: _expandedHeader,
expanded: Padding(
padding: const EdgeInsets.fromLTRB(20, 8, 20, 20),
padding: const EdgeInsets.fromLTRB(20, 6, 20, 18),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
HeaderBrandLine(
trailing: HeaderIconButton(
icon: LucideIcons.messageCircle,
tooltip: 'Support',
onPressed: () => context.push('/support'),
),
),
const SizedBox(height: 14),
Row(
children: [
_Avatar(worker.initials),
@@ -69,6 +82,8 @@ class TodayScreen extends ConsumerWidget {
const SizedBox(height: 2),
Text(
worker.name,
maxLines: 1,
overflow: TextOverflow.ellipsis,
style: const TextStyle(
fontSize: 22,
fontWeight: FontWeight.w700,
@@ -79,14 +94,9 @@ class TodayScreen extends ConsumerWidget {
],
),
),
HeaderIconButton(
icon: LucideIcons.messageCircle,
tooltip: 'Support',
onPressed: () => context.push('/support'),
),
],
),
const SizedBox(height: 18),
const SizedBox(height: 16),
Row(
children: [
// Flexible, not free-sized: on a 320px screen the two