refactor: user entity (#16655)

* refactor: user entity

* fix: add users to album & user profile url

* chore: rebase fixes

* generate files

* fix(mobile): timeline not reset on login

* fix: test stub

* refactor: rename user model (#16813)

* refactor: rename user model

* simplify import

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>

* chore: generate files

* fix: use getAllAccessible instead of getAll

---------

Co-authored-by: shenlong-tanwen <139912620+shalong-tanwen@users.noreply.github.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
This commit is contained in:
shenlong 2025-03-12 19:26:56 +05:30 committed by GitHub
parent a75718ce99
commit d1c8fe5303
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
82 changed files with 1039 additions and 947 deletions

View file

@ -2,13 +2,14 @@ import 'dart:async';
import 'package:hooks_riverpod/hooks_riverpod.dart';
import 'package:immich_mobile/domain/models/store.model.dart';
import 'package:immich_mobile/domain/models/user.model.dart';
import 'package:immich_mobile/entities/store.entity.dart';
import 'package:immich_mobile/entities/user.entity.dart';
import 'package:immich_mobile/infrastructure/utils/user.converter.dart';
import 'package:immich_mobile/providers/api.provider.dart';
import 'package:immich_mobile/services/api.service.dart';
import 'package:immich_mobile/services/timeline.service.dart';
class CurrentUserProvider extends StateNotifier<User?> {
class CurrentUserProvider extends StateNotifier<UserDto?> {
CurrentUserProvider(this._apiService) : super(null) {
state = Store.tryGet(StoreKey.currentUser);
streamSub =
@ -16,7 +17,7 @@ class CurrentUserProvider extends StateNotifier<User?> {
}
final ApiService _apiService;
late final StreamSubscription<User?> streamSub;
late final StreamSubscription<UserDto?> streamSub;
refresh() async {
try {
@ -25,7 +26,7 @@ class CurrentUserProvider extends StateNotifier<User?> {
if (user != null) {
await Store.put(
StoreKey.currentUser,
User.fromUserDto(user, userPreferences),
UserConverter.fromAdminDto(user, userPreferences),
);
}
} catch (_) {}
@ -39,7 +40,7 @@ class CurrentUserProvider extends StateNotifier<User?> {
}
final currentUserProvider =
StateNotifierProvider<CurrentUserProvider, User?>((ref) {
StateNotifierProvider<CurrentUserProvider, UserDto?>((ref) {
return CurrentUserProvider(
ref.watch(apiServiceProvider),
);