Run `make format` so the whole repo is consistent under the project formatter.
Whitespace only; no logic changes. Touches a few widgets and tests that were
unformatted on main (dart-format version drift), so `make check` is fully green.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The project uses EUPL v1.2, not MIT. Updated consent dialog to display
the actual EUPL license text and point to the official EUPL license page.
- Changed 'Licentie (MIT)' to 'Licentie (EUPL 1.2)'
- Updated _getLicenseText() with EUPL v1.2 summary
- Fixed license link to https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
Implement three privacy features:
1. Consent gate at app startup - users must accept privacy terms before using OciDeck
2. License visibility - MIT license displayed in consent dialog
3. Consent revocation - privacy settings tab allows users to withdraw consent and return to consent screen
Changes:
- New ConsentProvider for managing consent state with SharedPreferences persistence
- New ConsentDialog with privacy explanation and MIT license (expandable)
- Added Privacy tab to settings dialog with revoke consent button
- Updated localization strings for Dutch/English consent screens
Consent flow:
- On first launch or after revocation, consent screen blocks app access
- Users can read privacy terms, view license, and accept to proceed
- Consent can be revoked anytime from Settings → Privacy tab
- After revocation, app returns to consent screen on next launch
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>