Miler rider app: surface system, visible design language, backend lifecycle
Design system - MilerSurface ladder (canvas → working → raised → floating) with MilerPanel as layer 1; canvas moved to #DEE3EA so white separates at 1.290:1. - Visible vocabulary applied across Home, Deliveries, Activity, Account and the sheets: hero heads (tabular numeral + small caption, clamped at 1.3x), canvas wells for anything that opens, small filled tags for shelf labels, demoted placeholders. Recorded in DESIGN_SYSTEM.md §6. - One icon family: 222 Material glyphs migrated to Lucide; none left outside lib/xpress. - Colour semantics corrected: amber only for what is genuinely owed, brand red reserved for the live stop, disabled primaries go neutral rather than pale. Data and lifecycle - lib/data/lifecycle.dart reads mutations for what they prove; route_order.dart makes admin sequence the single ordering authority; service_day.dart, and stop_area.dart rewritten against live Coimbatore addresses (digit-token stripping, city stoplist, street suffixes, stammer collapse). - countLabel states the load once, in bags. Testing - 1440 tests passing; golden shot harnesses for Home, Deliveries, Activity, sheets and verify, with test/failures/ now gitignored (diff debris). - New pins: home_gutter_test, stop_area_test, plus updated structural bounds. Note: this commit also carries pre-existing working-tree deletions that were present before this work (API_SPEC.md, README.md, demo test fixtures). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:lucide_icons_flutter/lucide_icons.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:get/get.dart';
|
||||
@@ -239,7 +240,7 @@ class _SignInState extends State<SignIn> {
|
||||
cursorColor: ColorConstants.primary,
|
||||
style: TextStyle(
|
||||
fontSize: 18.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
fontWeight: FontWeight.w600,
|
||||
letterSpacing: 1.2,
|
||||
color: ColorConstants.slateText,
|
||||
fontFamily: FontConstants.fontFamily,
|
||||
@@ -258,7 +259,7 @@ class _SignInState extends State<SignIn> {
|
||||
floatingLabelBehavior: FloatingLabelBehavior.always,
|
||||
labelStyle: TextStyle(
|
||||
fontSize: 13.sp,
|
||||
fontWeight: FontWeight.w700,
|
||||
fontWeight: FontWeight.w600,
|
||||
letterSpacing: -0.1,
|
||||
color: error
|
||||
? ColorConstants.errorRed
|
||||
@@ -271,7 +272,7 @@ class _SignInState extends State<SignIn> {
|
||||
hintStyle: TextStyle(
|
||||
color: ColorConstants.secondaryText,
|
||||
fontSize: 18.sp,
|
||||
fontWeight: FontWeight.w600,
|
||||
fontWeight: FontWeight.w500,
|
||||
letterSpacing: 1.2,
|
||||
fontFamily: FontConstants.fontFamily,
|
||||
),
|
||||
@@ -292,7 +293,7 @@ class _SignInState extends State<SignIn> {
|
||||
'+91',
|
||||
style: TextStyle(
|
||||
fontSize: 17.sp,
|
||||
fontWeight: FontWeight.w800,
|
||||
fontWeight: FontWeight.w700,
|
||||
letterSpacing: -0.2,
|
||||
color: ColorConstants.slateText,
|
||||
fontFamily: FontConstants.fontFamily,
|
||||
@@ -312,7 +313,7 @@ class _SignInState extends State<SignIn> {
|
||||
? Padding(
|
||||
padding: EdgeInsets.only(right: 14.w),
|
||||
child: Icon(
|
||||
Icons.check_circle_rounded,
|
||||
LucideIcons.circleCheck,
|
||||
size: 20.sp,
|
||||
color: ColorConstants.acceptGreen,
|
||||
),
|
||||
@@ -357,7 +358,7 @@ class _SignInState extends State<SignIn> {
|
||||
text: 'Terms of Service',
|
||||
style: TextStyle(
|
||||
color: ColorConstants.slateText,
|
||||
fontWeight: FontWeight.w800,
|
||||
fontWeight: FontWeight.w700,
|
||||
decoration: TextDecoration.underline,
|
||||
decorationColor: ColorConstants.borderStrong,
|
||||
fontFamily: FontConstants.fontFamily,
|
||||
@@ -369,7 +370,7 @@ class _SignInState extends State<SignIn> {
|
||||
text: 'Privacy Policy',
|
||||
style: TextStyle(
|
||||
color: ColorConstants.slateText,
|
||||
fontWeight: FontWeight.w800,
|
||||
fontWeight: FontWeight.w700,
|
||||
decoration: TextDecoration.underline,
|
||||
decorationColor: ColorConstants.borderStrong,
|
||||
fontFamily: FontConstants.fontFamily,
|
||||
@@ -418,7 +419,9 @@ class _IndiaFlag extends StatelessWidget {
|
||||
borderRadius: BorderRadius.circular(2.5.r),
|
||||
child: Column(
|
||||
children: [
|
||||
const Expanded(child: ColoredBox(color: _saffron, child: SizedBox.expand())),
|
||||
const Expanded(
|
||||
child: ColoredBox(color: _saffron, child: SizedBox.expand()),
|
||||
),
|
||||
Expanded(
|
||||
child: Container(
|
||||
color: Colors.white,
|
||||
@@ -433,7 +436,9 @@ class _IndiaFlag extends StatelessWidget {
|
||||
),
|
||||
),
|
||||
),
|
||||
const Expanded(child: ColoredBox(color: _green, child: SizedBox.expand())),
|
||||
const Expanded(
|
||||
child: ColoredBox(color: _green, child: SizedBox.expand()),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user