treewide(refactor): rename files to follow the same style

This commit is contained in:
Henry Hiles 2026-07-18 12:12:54 -04:00
commit 7992f0e815
Signed by: Henry-Hiles
SSH key fingerprint: SHA256:VKQUdS31Q90KvX7EkKMHMBpUspcmItAh86a+v7PGiIs
81 changed files with 167 additions and 167 deletions

47
lib/controllers/user.dart Normal file
View file

@ -0,0 +1,47 @@
import "dart:async";
import "package:collection/collection.dart";
import "package:flutter_riverpod/flutter_riverpod.dart";
import "package:nexus/controllers/members.dart";
import "package:nexus/controllers/profile.dart";
import "package:nexus/helpers/extensions/get_localpart.dart";
import "package:nexus/models/configs/user.dart";
import "package:nexus/models/content/membership.dart";
class UserController extends AsyncNotifier<MembershipContent> {
final UserConfig config;
UserController(this.config);
@override
Future<MembershipContent> build() async {
final member = config.roomId == null
? null
: await ref.watch(
MembersController.provider(config.roomId!).selectAsync(
(value) => value.firstWhereOrNull(
(membership) => membership.stateKey == config.userId,
),
),
);
if (member?.content case final MembershipContent content) {
return content;
}
final profile = await ref.watch(
ProfileController.provider(config.userId).future,
);
return .new(
status: .leave,
avatarUrl: profile.avatarUrl,
displayName: profile.displayName ?? config.userId.localpart,
);
}
static final provider =
AsyncNotifierProvider.family<
UserController,
MembershipContent,
UserConfig
>(UserController.new);
}