feat(account): 增加账号中心页面与入口

This commit is contained in:
Zhou Weidong committed 2026-10-19 09:50:23 +08:00
1 parent c68f02449f
commit da095115d4
23 files changed
+2343 -60

No files matched your search

+8
View File
@@ -6,6 +6,7 @@ import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'core/config/locale_controller.dart';
import 'core/data/remote/account_api.dart';
import 'core/data/remote/api_client.dart';
import 'core/data/remote/auth_api.dart';
import 'core/data/remote/catalog_api.dart';
@@ -18,6 +19,7 @@ import 'core/data/remote/notice_api.dart';
import 'core/data/remote/playback_api.dart';
import 'core/data/remote/watch_api.dart';
import 'core/data/repositories/catalog_repository.dart';
import 'core/data/repositories/account_repository.dart';
import 'core/data/repositories/category_repository.dart';
import 'core/data/repositories/comment_repository.dart';
import 'core/data/repositories/download_repository.dart';
@@ -53,6 +55,7 @@ class LumaDramaApp extends StatefulWidget {
this.commentRepository,
this.interactionRepository,
this.noticeRepository,
this.accountRepository,
this.haptics = const FlutterHaptics(),
});
@@ -68,6 +71,7 @@ class LumaDramaApp extends StatefulWidget {
final CommentRepository? commentRepository;
final InteractionRepository? interactionRepository;
final NoticeRepository? noticeRepository;
final AccountRepository? accountRepository;
final Haptics haptics;
@override
@@ -138,6 +142,9 @@ class _LumaDramaAppState extends State<LumaDramaApp> {
late final NoticeRepository _noticeRepository =
widget.noticeRepository ?? HttpNoticeRepository(NoticeApi(_apiClient));
late final AccountRepository _accountRepository =
widget.accountRepository ?? HttpAccountRepository(AccountApi(_apiClient));
late final InteractionController _interactionController =
InteractionController(_interactionRepository);
@@ -188,6 +195,7 @@ class _LumaDramaAppState extends State<LumaDramaApp> {
Provider<CommentRepository>.value(value: _commentRepository),
Provider<InteractionRepository>.value(value: _interactionRepository),
Provider<NoticeRepository>.value(value: _noticeRepository),
Provider<AccountRepository>.value(value: _accountRepository),
Provider<Haptics>.value(value: widget.haptics),
ChangeNotifierProvider(
create: (_) => CatalogController(_catalogRepository)..load(),