🚑 Fix cannot load ongoing call
This commit is contained in:
parent
c991590b27
commit
e4a5ac9d0a
@ -14,7 +14,8 @@ class Call {
|
||||
String externalId;
|
||||
int founderId;
|
||||
int channelId;
|
||||
List<dynamic> participants;
|
||||
@JsonKey(defaultValue: [])
|
||||
List<dynamic>? participants;
|
||||
Channel channel;
|
||||
|
||||
Call({
|
||||
|
@ -19,7 +19,7 @@ Call _$CallFromJson(Map<String, dynamic> json) => Call(
|
||||
externalId: json['external_id'] as String,
|
||||
founderId: (json['founder_id'] as num).toInt(),
|
||||
channelId: (json['channel_id'] as num).toInt(),
|
||||
participants: json['participants'] as List<dynamic>,
|
||||
participants: json['participants'] as List<dynamic>? ?? [],
|
||||
channel: Channel.fromJson(json['channel'] as Map<String, dynamic>),
|
||||
);
|
||||
|
||||
|
@ -98,6 +98,7 @@ class _ChannelChatScreenState extends State<ChannelChatScreen>
|
||||
setState(() => _ongoingCall = Call.fromJson(resp.body));
|
||||
}
|
||||
} catch (e) {
|
||||
print((e as dynamic).stackTrace);
|
||||
context.showErrorDialog(e);
|
||||
}
|
||||
|
||||
|
@ -53,11 +53,11 @@ class ChannelCallIndicator extends StatelessWidget {
|
||||
return Text('callOngoingJoined'.trParams({
|
||||
'duration': call.lastDuration.value,
|
||||
}));
|
||||
} else if (ongoingCall.participants.isEmpty) {
|
||||
} else if (ongoingCall.participants!.isEmpty) {
|
||||
return Text('callOngoingEmpty'.tr);
|
||||
} else {
|
||||
return Text('callOngoingParticipants'.trParams({
|
||||
'count': ongoingCall.participants.length.toString(),
|
||||
'count': ongoingCall.participants!.length.toString(),
|
||||
}));
|
||||
}
|
||||
}),
|
||||
@ -66,14 +66,14 @@ class ChannelCallIndicator extends StatelessWidget {
|
||||
if (call.isInitialized.value) {
|
||||
return const SizedBox.shrink();
|
||||
}
|
||||
if (ongoingCall.participants.isNotEmpty) {
|
||||
if (ongoingCall.participants!.isNotEmpty) {
|
||||
return Container(
|
||||
height: 28,
|
||||
constraints: const BoxConstraints(maxWidth: 120),
|
||||
child: AvatarStack(
|
||||
height: 28,
|
||||
borderWidth: 0,
|
||||
avatars: ongoingCall.participants.map((x) {
|
||||
avatars: ongoingCall.participants!.map((x) {
|
||||
final userinfo =
|
||||
Account.fromJson(jsonDecode(x['metadata']));
|
||||
return PlatformInfo.canCacheImage
|
||||
|
@ -16,7 +16,7 @@ class AppNavigationRegion extends StatelessWidget {
|
||||
});
|
||||
|
||||
void _gotoChannel(Channel item) {
|
||||
AppRouter.instance.pushReplacementNamed(
|
||||
AppRouter.instance.goNamed(
|
||||
'channelChat',
|
||||
pathParameters: {'alias': item.alias},
|
||||
queryParameters: {
|
||||
|
Loading…
Reference in New Issue
Block a user