👽 Support new attachment reference system

This commit is contained in:
2025-06-02 01:08:04 +08:00
parent 152e076d44
commit 4187ceb248
50 changed files with 219 additions and 227 deletions

View File

@ -81,7 +81,7 @@ class AccountPickerSheet extends HookConsumerWidget {
final account = accounts[index];
return ListTile(
leading: ProfilePictureWidget(
fileId: account.profile.pictureId,
fileId: account.profile.picture?.id,
),
title: Text(account.nick),
subtitle: Text('@${account.name}'),

View File

@ -146,7 +146,7 @@ class StatusActivityWidget extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.start,
children: [
ProfilePictureWidget(
fileId: item.account.profile.pictureId,
fileId: item.account.profile.picture?.id,
radius: 12,
),
Expanded(

View File

@ -235,7 +235,7 @@ class AppBackground extends ConsumerWidget {
},
loading: () => const SizedBox(),
error:
(_, __) => Material(
(_, _) => Material(
color: Theme.of(context).colorScheme.surface,
child: child,
),

View File

@ -6,7 +6,7 @@ part of 'call_button.dart';
// RiverpodGenerator
// **************************************************************************
String _$ongoingCallHash() => r'd8a942e6695a7da702daeaa452464c16761ef6e7';
String _$ongoingCallHash() => r'ab7337bcd4d766897bd6d6a38f418c6bdd15eb94';
/// Copied from Dart SDK
class _SystemHash {

View File

@ -45,7 +45,7 @@ class CallControlsBar extends HookConsumerWidget {
callNotifier.localParticipant!.isSpeaking,
audioLevel:
callNotifier.localParticipant!.audioLevel,
pictureId: userInfo.value?.profile.pictureId,
pictureId: userInfo.value?.profile.picture?.id,
size: 36,
).center(),
);
@ -158,7 +158,8 @@ class CallOverlayBar extends HookConsumerWidget {
.profile
?.account
.profile
.pictureId,
.picture
?.id,
size: 36,
).center(),
);

View File

@ -106,7 +106,7 @@ class CallParticipantTile extends StatelessWidget {
return SpeakingRippleAvatar(
isSpeaking: live.isSpeaking,
audioLevel: audioLevel,
pictureId: live.participant.profile?.account.profile.pictureId,
pictureId: live.participant.profile?.account.profile.picture?.id,
size: 84,
);
}

View File

@ -111,7 +111,7 @@ class MessageItem extends HookConsumerWidget {
mainAxisSize: MainAxisSize.min,
children: [
ProfilePictureWidget(
fileId: sender.account.profile.pictureId,
fileId: sender.account.profile.picture?.id,
radius: 16,
),
Column(

View File

@ -151,7 +151,7 @@ class CheckInWidget extends HookConsumerWidget {
key: ValueKey(result != null),
),
loading: () => const Icon(Symbols.refresh),
error: (_, __) => const Icon(Symbols.error),
error: (_, _) => const Icon(Symbols.error),
),
),
),
@ -188,7 +188,7 @@ class CheckInActivityWidget extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.start,
children: [
ProfilePictureWidget(
fileId: result.account!.profile.pictureId,
fileId: result.account!.profile.picture?.id,
radius: 12,
),
Expanded(

View File

@ -159,7 +159,7 @@ class CloudFileList extends HookConsumerWidget {
),
);
},
separatorBuilder: (_, __) => const Gap(8),
separatorBuilder: (_, _) => const Gap(8),
),
),
);

View File

@ -259,7 +259,7 @@ class CloudFilePicker extends HookConsumerWidget {
progress: null,
);
},
separatorBuilder: (_, __) => const Gap(8),
separatorBuilder: (_, _) => const Gap(8),
),
),
Card(

View File

@ -118,7 +118,7 @@ class PostItem extends HookConsumerWidget {
children: [
GestureDetector(
child: ProfilePictureWidget(
fileId: item.publisher.pictureId,
fileId: item.publisher.picture?.id,
),
onTap: () {
context.router.push(

View File

@ -65,7 +65,7 @@ class PostQuickReply extends HookConsumerWidget {
children: [
GestureDetector(
child: ProfilePictureWidget(
fileId: currentPublisher.value?.pictureId,
fileId: currentPublisher.value?.picture?.id,
radius: 16,
),
onTap: () {

View File

@ -49,7 +49,7 @@ class RealmSelectionDropdown extends StatelessWidget {
child: Row(
children: [
ProfilePictureWidget(
fileId: realm.pictureId,
fileId: realm.picture?.id,
fallbackIcon: Symbols.workspaces,
radius: 16,
),