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:
49
pubspec.yaml
49
pubspec.yaml
@@ -58,6 +58,7 @@ dependencies:
|
||||
flutter_screenutil: ^5.9.3
|
||||
google_fonts: ^6.3.3
|
||||
shimmer: ^3.0.0
|
||||
skeletonizer: ^2.1.3
|
||||
flutter_launcher_icons: ^0.14.4
|
||||
scratcher: ^2.5.0
|
||||
confetti: ^0.8.0
|
||||
@@ -65,6 +66,15 @@ dependencies:
|
||||
mqtt_client: ^10.3.0
|
||||
flutter_map: ^8.3.1
|
||||
latlong2: ^0.10.1
|
||||
# The delivery line's maps. The parcel line draws its maps with flutter_map
|
||||
# (OSM tiles + OSRM, keyless — see views/helpers/widgets/miler_map.dart); the
|
||||
# ported delivery screens under lib/xpress were built against MapLibre and are
|
||||
# kept verbatim, so both engines ship. Only one line runs per session, so only
|
||||
# one is ever instantiated.
|
||||
maplibre_gl: ^0.26.2
|
||||
animated_toggle_switch: ^0.8.7
|
||||
another_flushbar: ^2.2.4
|
||||
lucide_icons_flutter: ^3.1.17
|
||||
|
||||
dev_dependencies:
|
||||
flutter_test:
|
||||
@@ -102,25 +112,48 @@ flutter:
|
||||
- assets/lotties/
|
||||
|
||||
fonts:
|
||||
# The delivery line's typeface. The ported screens under lib/xpress read
|
||||
# FontConstants.fontFamily = 'Proxima Nova' on every text style; the files
|
||||
# were already in assets/fonts but the family was never declared, so without
|
||||
# this every delivery screen falls back to Roboto.
|
||||
- family: Proxima Nova
|
||||
fonts:
|
||||
- asset: assets/fonts/ProximaNova/proximanova_regular.ttf
|
||||
weight: 400
|
||||
- asset: assets/fonts/ProximaNova/proximanova_bold.otf
|
||||
weight: 700
|
||||
- family: Manrope
|
||||
fonts:
|
||||
- asset: assets/fonts/Manrope/Manrope-VF.ttf
|
||||
- family: PlusJakartaSans
|
||||
fonts:
|
||||
- asset: assets/fonts/PlusJakartaSans/PlusJakartaSans-VF.ttf
|
||||
- family: poppins
|
||||
# ── The app's typeface ──
|
||||
#
|
||||
# Declared as `poppins` with a lowercase path on every asset — and the files
|
||||
# on disk are `assets/fonts/Poppins/Poppins-*.ttf`. Asset bundling is
|
||||
# case-sensitive on both platforms, so not one of these seven resolved and
|
||||
# the family had never rendered a single glyph. Anything asking for it fell
|
||||
# back to Roboto, silently.
|
||||
#
|
||||
# All seven static weights are declared because Poppins ships as separate
|
||||
# files rather than a variable font like Manrope did. The app leans on w800
|
||||
# and w900 for headings; without those two entries Flutter would synthesise
|
||||
# them by smearing SemiBold, which is what makes a heading look muddy at
|
||||
# exactly the size it is meant to be read from.
|
||||
- family: Poppins
|
||||
fonts:
|
||||
- asset: assets/fonts/poppins/poppins-Light.ttf
|
||||
- asset: assets/fonts/Poppins/Poppins-Light.ttf
|
||||
weight: 300
|
||||
- asset: assets/fonts/poppins/poppins-Regular.ttf
|
||||
- asset: assets/fonts/Poppins/Poppins-Regular.ttf
|
||||
weight: 400
|
||||
- asset: assets/fonts/poppins/poppins-Medium.ttf
|
||||
- asset: assets/fonts/Poppins/Poppins-Medium.ttf
|
||||
weight: 500
|
||||
- asset: assets/fonts/poppins/poppins-SemiBold.ttf
|
||||
- asset: assets/fonts/Poppins/Poppins-SemiBold.ttf
|
||||
weight: 600
|
||||
- asset: assets/fonts/poppins/poppins-Bold.ttf
|
||||
- asset: assets/fonts/Poppins/Poppins-Bold.ttf
|
||||
weight: 700
|
||||
- asset: assets/fonts/poppins/poppins-ExtraBold.ttf
|
||||
- asset: assets/fonts/Poppins/Poppins-ExtraBold.ttf
|
||||
weight: 800
|
||||
- asset: assets/fonts/poppins/poppins-Black.ttf
|
||||
- asset: assets/fonts/Poppins/Poppins-Black.ttf
|
||||
weight: 900
|
||||
|
||||
Reference in New Issue
Block a user