mirror of
https://github.com/we-promise/sure.git
synced 2026-07-13 05:15:19 +00:00
* feat(mobile): in-app update prompt via upgrader package - Add upgrader ^13.5.0 dependency for automatic update checks - Show UpgradeAlert after authentication, with a 5-minute delay so users can settle in before being prompted - Dialog shows at most once every 7 days per store version - Only "Later" and "Update now" buttons — ignore button removed via showIgnore: false - Custom _SureUpgraderMessages with mustache body template (v13 API) - Add "Check for updates" tile in Settings for manual checks: calls updateVersionInfo() and shows an AlertDialog with store URL if an update is available, or a snackbar if already up to date - Timer resets on logout so the delay restarts on next sign-in Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(mobile): address upgrader review comments - Mount UpgradeAlert unconditionally so MainNavigationScreen is never remounted when the timer fires, preserving navigation state - Dispose _manualUpgrader in SettingsScreen to remove its lifecycle observer when the screen is torn down - Show update dialog even when store version metadata is incomplete (falls back to 'a newer version'); disable Update now button rather than silently no-oping when store URL is unavailable Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(mobile): show snackbar when store URL cannot be opened Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(mobile): dispose manual upgrader if unmounted after initialize Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
70 lines
1.7 KiB
YAML
70 lines
1.7 KiB
YAML
name: sure_mobile
|
|
description: A mobile app for Sure personal finance management
|
|
publish_to: 'none'
|
|
version: 0.6.9+20260402
|
|
|
|
environment:
|
|
sdk: '>=3.3.0 <4.0.0'
|
|
flutter: '>=3.27.0'
|
|
|
|
dependencies:
|
|
flutter:
|
|
sdk: flutter
|
|
cupertino_icons: ^1.0.6
|
|
http: ^1.1.0
|
|
provider: ^6.1.1
|
|
shared_preferences: ^2.2.2
|
|
flutter_secure_storage: ^10.0.0
|
|
intl: ^0.18.1
|
|
sqflite: ^2.4.2
|
|
path: ^1.9.1
|
|
connectivity_plus: ^7.0.0
|
|
uuid: ^4.5.2
|
|
app_links: ^6.4.0
|
|
url_launcher: ^6.2.5
|
|
flutter_svg: ^2.2.0
|
|
package_info_plus: ^8.0.0
|
|
local_auth: ^2.3.0
|
|
flutter_markdown: ^0.7.2
|
|
sentry_flutter: ^8.14.2
|
|
upgrader: ^13.5.0
|
|
|
|
dev_dependencies:
|
|
flutter_test:
|
|
sdk: flutter
|
|
flutter_lints: ^6.0.0
|
|
flutter_launcher_icons: ^0.14.4
|
|
|
|
flutter:
|
|
uses-material-design: true
|
|
assets:
|
|
- assets/icon/
|
|
- assets/images/
|
|
- assets/icons/lucide/
|
|
# Geist + Geist Mono (SIL OFL-1.1 — see assets/fonts/OFL.txt). The theme
|
|
# (SureTokens.fontSans/fontMono) already names these families; bundling the
|
|
# assets here makes them actually render instead of falling back to the
|
|
# platform system font.
|
|
fonts:
|
|
- family: Geist
|
|
fonts:
|
|
- asset: assets/fonts/Geist-Regular.ttf
|
|
- asset: assets/fonts/Geist-Medium.ttf
|
|
weight: 500
|
|
- asset: assets/fonts/Geist-SemiBold.ttf
|
|
weight: 600
|
|
- asset: assets/fonts/Geist-Bold.ttf
|
|
weight: 700
|
|
- family: Geist Mono
|
|
fonts:
|
|
- asset: assets/fonts/GeistMono-Regular.ttf
|
|
|
|
flutter_launcher_icons:
|
|
android: true
|
|
ios: true
|
|
image_path: "assets/icon/app_icon.png"
|
|
image_path_ios_dark_transparent: "assets/icon/app_icon.png"
|
|
adaptive_icon_background: "#FFFFFF"
|
|
adaptive_icon_foreground: "assets/icon/app_icon.png"
|
|
remove_alpha_ios: true
|