feat(apps): update UI screens and shared components

- Update home screen with new composer and interactions
- Update settings screens with new profile flow
- Update calendar share dialog
- Update contacts screen
- Add new shared widgets: confirm_sheet, phone_prefix_selector
- Add new formatters: phone_display_formatter
- Update tests for modified components
This commit is contained in:
qzl
2026-03-19 18:43:08 +08:00
parent f0af44d840
commit 8d4a14150b
24 changed files with 868 additions and 989 deletions
@@ -6,6 +6,7 @@ import 'package:social_app/core/theme/design_tokens.dart';
import 'package:social_app/shared/widgets/app_loading_indicator.dart';
import 'package:social_app/shared/widgets/toast/toast.dart';
import 'package:social_app/shared/widgets/toast/toast_type.dart';
import 'package:social_app/shared/utils/phone_display_formatter.dart';
import 'package:social_app/features/friends/data/friends_api.dart';
import 'package:social_app/features/settings/data/settings_api.dart';
import 'package:social_app/features/users/data/models/user_response.dart';
@@ -98,7 +99,9 @@ class _SettingsScreenState extends State<SettingsScreen> {
}
final username = _user?.username ?? '未设置';
final email = _user?.email ?? '未设置';
final phone = _user?.phone == null
? '未设置'
: formatPhoneForDisplay(_user?.phone);
return Container(
width: double.infinity,
@@ -195,7 +198,7 @@ class _SettingsScreenState extends State<SettingsScreen> {
),
const SizedBox(height: 6),
Text(
email,
phone,
style: TextStyle(
fontSize: 13,
fontWeight: FontWeight.w500,