Commit Graph

47 Commits

Author SHA1 Message Date
2247833203 feat(legacy-settings): DST-aware timezone with phone auto-detect 2026-04-22 01:10:10 +02:00
aa3ffdb6a7 refactor(legacy): migrate theming to Material 3 + SfColors extension
Replace the ThemePort/ThemeCode abstraction (GetIt-registered adapter)
with a Riverpod-driven Material 3 ColorScheme, an SfColors ThemeExtension
for brand tokens, and a user-facing appearance selector for light/dark/
system modes. Persisted via SharedPreferences, reacts to system
brightness changes. Payments mode keeps the existing ThemePort API.

Highlights
- New legacy_theme package: LegacyAppTheme (light/dark), LegacyColorSchemes,
  SfColors ThemeExtension, LegacyThemePreferences, LegacyThemeNotifier,
  LegacyThemeSelector. Timeframe-based variants scaffolded but disabled.
- New /legacy/dashboard/control_panel/settings/appearance route + screen.
- MaterialApp.router picks the legacy theme only when isLegacyMode.
- ~90 ThemeCode.* usages migrated to colorScheme.* / context.sfColors.*.
- 25 widgets dropped the 'ThemePort theme' constructor param.
- ~145 hardcoded colors migrated (exact hex 1:1, grey.shade tiers,
  destructive red -> colorScheme.error, background whites -> surface).
  Content-over-color whites, transparents, and brand semantic reds/
  oranges/greens intentionally preserved.
- sf_localizations updated with appearance / appearanceDescription keys
  in all six locales.
2026-04-19 04:47:22 +02:00
c7e32d1399 refactor(activity-meter): redesign screen with honest per-range stats 2026-04-15 21:51:08 +02:00
ec14ad49e5 bump build to 9 2026-04-14 15:16:39 +02:00
811e92defc bump build to 8 2026-04-14 11:03:10 +02:00
693f55369c feat(version-check): add in-app update prompt with Remote Config
Adds a production-grade in-app version check that prompts users to update when a new build is available. Soft updates are dismissable. Force updates block the app entirely. Configured via FirebaseRemote Config so rollouts can be triggered without redeploying.

- Sealed result types (NoUpdate / SoftUpdate / ForceUpdate) for type-safe pattern matching
- AppVersionCheckService
- AppUpdateGate widget encapsulates listener, route guard and dialog wireup, isolated from save_family_app
- Serialized notifier operations prevent race between dismiss and refresh, mounted checks blindar disposal edge cases                                                                                                  - Build-aware dismiss persistence via SharedPreferences
2026-04-09 14:52:37 +02:00
7445021cf3 bump build to 7 2026-04-08 16:30:38 +02:00
7b91447cad feat(tracking): add sf_tracking package and instrument legacy module
Introduces packages/sf_tracking — a multi-client, GDPR-first analytics layer with feature mixins, a GoRouter listener for automatic screen views, and a user properties helper that runs on login.
Wires the package into the legacy module 61 events
2026-04-07 13:47:07 +02:00
81284d7efe feat(firebase): integrate Firebase + APNs/FCM push notifications
Phase 2 of multi-environment setup. Adds Firebase core, Crashlytics,
Analytics, Remote Config, Performance, Messaging and flutter_local_notifications,
plus full APNs configuration for iOS push.

- Wire setupFirebase(env) and setupNotifications() in initApp
- Add firebase_options for dev and staging via flutterfire (sf-platform-pre)
- Register google-services / firebase-perf / crashlytics gradle plugins
- Add per-flavor GoogleService-Info.plist with Build Phase script that
  copies the right plist into the .app bundle based on \$CONFIGURATION
- Bump iOS deployment target 13.0 -> 15.0 (required by firebase_analytics)
- Pin flutter_local_notifications to ^19.4.2 (v20+ needs Dart SDK >=3.10)
- Add aps-environment to staging (development) and production entitlements;
  development flavor intentionally excluded (no App Store Connect entry)
- Fix AppDelegate.swift to call super.application after forwarding to
  AntelopAppDelegate, otherwise Firebase Messaging swizzling breaks and
  the APNs token is never captured
- Crashlytics reports in all builds (debug + release) for early detection
- Tag analytics events with env user property per flavor
- App Check intentionally not included (debug-token friction with large
  QA team); can be re-added release-only later
2026-04-07 03:33:25 +02:00
3c4159ae8c chore: upgrade melos to 7.5.1 with pub workspaces and dep catalog
- Upgrade Melos to 7.5.1 using Dart pub workspaces (Melos 7 paradigm).
- Replace per-package pubspec_overrides.yaml with workspace-native resolution. Add dependencies.yaml as a centralized catalog for all external deps with sync_deps.dart tool to propagate and validate versions across the monorepo.
2026-04-06 23:08:51 +02:00
3d267aff37 chore: clean up flutter analyze warnings
Highlights:
- Add publish_to: 'none' to legacy pubspec.yaml files                                                      - Replace print() with dart:developer log() in Treezor SDK
- Add !context.mounted guards in async callbacks (defensive bug fix)                                                       - Add super.key to widget constructors
- Remove redundant @Default(null) from device_model                                     - Fix implementation_imports in legacy_auth datasources                                        - Add ignore comments for scaffolding code
- Add missing shared_preferences dependency in splash module                                                                                                            Mostly code quality improvements, with one defensive bug fix              context.mounted) and one missing dependency fix (shared_preferences).
2026-04-06 22:21:22 +02:00
b63b06ef14 refactor: group payment app modules under payment/ folder 2026-04-06 21:21:15 +02:00
c79cbeffcc bump build to 6 2026-03-25 14:43:27 +01:00
33f3dfa252 feat: type device settings and capabilities, centralize device updates, and improve error handling
- Type device.settings and device.capabilities from untyped maps to Freezed models
  - Centralize all device settings updates through shared DeviceSettingsUpdateDatasource
  - Add frequency selectors for location and heart rate, pedometer toggle, and health measurement countdown with Lottie animation
  - Replace raw backend error messages with typed i18n error events across location, health, and activity meter
  - Fix silent error swallowing in commands datasource and stuck dialog in locate device
2026-03-25 02:15:25 +01:00
435a9c04f9 bump build to 5 2026-03-18 21:00:03 +01:00
88269c40f8 Add iOS privacy keys for staging/dev flavors, bump build to 4, hide SF Pay button 2026-03-16 15:09:26 +01:00
ec4e42b408 settings ui 2026-03-12 17:40:06 +01:00
644d1c2abe Legacy modules refactor: auth, control panel, location module, and session persistence 2026-03-09 02:28:31 +01:00
01de94876b legacy login refactor 2026-03-06 00:44:12 +01:00
74309006b1 fixes 2026-03-05 15:42:34 +01:00
cf03bbc1b5 Merge commit '014ef1ad2615fe2981f18ed28adcde17edda4f1e' into fusion-app 2026-03-05 12:53:39 +01:00
ef0abc2f85 feat: add multi-environment support (development, staging, production)
- Replace dotenv with compile-time dart-define-from-file config per flavor
  - Add Android product flavors with applicationIdSuffix and per-flavor AndroidManifest
  - Add iOS build configurations, schemes, per-flavor plists and entitlements
  - Configure ProGuard rules for R8 compatibility with Entrust/Antelop SDK
  - Restructure assets into shared/ and per-flavor directories
  - Generate per-flavor launcher icons for Android and iOS
  - Refactor app initialization into initApp() with per-flavor entry points
  - Update asset paths across auth, home, profile, splash modules and sf_shared
2026-03-01 00:12:47 +01:00
0c93440f9b app state fixed 2026-02-25 18:37:17 +01:00
2ba83a22ac Payout, payin , moves between wallets in same user, childScreens, transactions , card children block and unblock 2026-02-17 20:54:14 +01:00
5186c21e9a Merge branch 'customer-service' into legacy
# Conflicts:
#	apps/mobile_app/lib/navigation/app_router.dart
#	modules/legacy/melos_legacy.iml
#	packages/navigation/lib/app_routes.dart
#	packages/sf_localizations/assets/l10n/en.json
#	packages/sf_localizations/assets/l10n/es.json
#	packages/sf_localizations/lib/src/generated/i18n.dart
2026-02-13 09:34:45 +01:00
4f5e69c6fc Merge branch 'functions' into legacy
# Conflicts:
#	apps/mobile_app/lib/navigation/app_router.dart
#	apps/mobile_app/pubspec.yaml
#	modules/legacy/melos_legacy.iml
#	packages/design_system/fonts/config.json
2026-02-13 09:20:45 +01:00
5803286a3f payments package added to hipay transactions 2026-02-12 16:01:57 +01:00
1cd18b002c added functions module and functions and contacts screens, state and use cases 2026-02-05 17:51:52 +01:00
880dd85d2b added account_settings, linked_devices and edit_linked_device screens and state 2026-01-29 17:45:14 +01:00
cd578352f9 Added customer service and contact screens and state 2026-01-28 17:36:01 +01:00
12edcd0940 added legacy and legacy_dashboard_shell modules 2026-01-27 12:45:25 +01:00
9d1bb6c22a treezor , sca proff and create child profile 2026-01-27 02:28:52 +03:00
60a49060a1 added hub module 2026-01-23 14:52:08 +01:00
ddbfbc1ebf treezor packages and native configs adapted to main app 2026-01-21 12:19:56 +01:00
80b0750f62 added device setup flow, qr reader, createChildProfile models and cookies packages 2026-01-20 07:37:29 +01:00
b90d1f635c flutter launcher icon 2026-01-18 14:01:25 +01:00
e83bb02be8 added splash module, fonts and display bundle label 2026-01-15 09:20:45 +01:00
d7706bf639 Merge remote-tracking branch 'origin/auth-login-and-2fa-login' into auth-recover-password 2026-01-05 10:35:18 +01:00
8754884544 sign up parameters fixed change document, documentType and country code 2026-01-05 10:03:18 +01:00
2e3681d36d added size utils to recoverPassword 2025-12-12 13:42:06 +01:00
AlcalaJulian
6b3776f618 feat(auth,sf_infrastructure): register QuestiaApi/Dio and connect link_phone remote datasource 2025-12-04 16:07:02 +01:00
73a2c46999 Merge remote-tracking branch 'origin/develop' into components
# Conflicts:
#	apps/mobile_app/lib/navigation/app_router.dart
#	apps/mobile_app/pubspec.yaml
#	modules/auth/lib/src/device_sign_up/add_kid_screen.dart
#	modules/auth/lib/src/login/presentation/link_phone_screen.dart
#	modules/auth/lib/src/login/presentation/login_screen.dart
#	modules/auth/lib/src/login/presentation/phone_code_screen.dart
#	modules/auth/lib/src/onboarding/presentation/welcome_screen.dart
#	modules/auth/lib/src/recover_password/presentation/new_password_screen.dart
#	modules/auth/lib/src/sign_up/signup_screen.dart
#	modules/home/lib/src/presentation/deposit_screen.dart
#	modules/home/lib/src/presentation/home_screen.dart
#	modules/home/lib/src/presentation/wage_screen.dart
#	modules/notifications/lib/src/core/activity_list.dart
#	packages/design_system/lib/design_system.dart
2025-12-03 16:24:04 +01:00
AlcalaJulian
8d11c08f81 localizations fixes 2025-12-03 13:42:14 +01:00
AlcalaJulian
d381908ff1 added flutter icons files and intl packages 2025-11-24 12:55:20 +01:00
8201bff0a7 - created snackbar, step indicator, money text, text field and progress bar components.
- created wallet balance block, wallet item and kid line chart widgets.
- restructured onboarding, signup and device signup screens into layouts and main screens.
- updated signup and kid wallet screens to 17/11 design.
2025-11-21 15:28:46 +01:00
AlcalaJulian
4225f7510b tab navigation 2025-11-17 00:15:31 +01:00
AlcalaJulian
5ca37d2822 - create auth, main shell, home, profile, notifications and settings modules.
- added navigation, utils, design system and shared packages
- implemented go router in entiered app
- implemented flutter riverpod instead provider
2025-11-13 15:16:00 +01:00