mirror of
https://github.com/kuhyx/diet-guard.git
synced 2026-11-11 14:07:40 +01:00
The credential **fields** appear on every platform; the **fetch button** only where it can work. That split is the point, not an oversight: the panel sends no CORS headers so a browser cannot call it, but the desktop app is where a password is most likely to be typed, and the credential syncs — so hiding the fields on web would mean the phone could only ever be set up by typing on the phone. On web the button is replaced by a line saying why, and noting the login still reaches the phone from there. The section says the password is stored and synced in plain text rather than implying otherwise. The button disables itself while a fetch is in flight, so an impatient double-tap cannot pay a second login plus three requests against a third party. The result line says dishes were added to the **food bank** and that the user still logs them when eaten — the wording carries the delivered-is-not-eaten rule to the one place a user actually reads. `settings_screen.dart` was already at 247 of its 250-line budget, so the section owns its own leading divider and the fetch handler lives beside it; the screen spends one line on it. 678 Dart tests. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QQpCiPaSbyRpwsLkH3dgsX |
||
|---|---|---|
| .. | ||
| desktop | ||
| models | ||
| screens | ||
| services | ||
| widgets | ||
| fake_notifications.dart | ||
| fake_secure_storage.dart | ||
| firebase_backend_google_test.dart | ||
| google_platform_test.dart | ||
| google_sign_in_backend_test.dart | ||
| keyboard_operability_test.dart | ||
| kuchnia_bank_interop_test.dart | ||
| kuchnia_parity_test.dart | ||
| repo_invariants_test.dart | ||
| sync_merge_kuchnia_test.dart | ||
| widget_test.dart | ||