GroupChannel.fromJson constructor

GroupChannel.fromJson(
  1. Map<String, dynamic> json
)

Implementation

factory GroupChannel.fromJson(Map<String, dynamic> json) {
  final channel = _$GroupChannelFromJson(json)
    ..set(SendbirdChat().chat); // Set the singleton chat

  if (channel.messageDeletionTimestamp != null) {
    MessageRetentionManager().syncGroupChannelMessages(
      channel.chat,
      channel: channel,
      messageDeletionTimestamp: channel.messageDeletionTimestamp!,
      canNotifyChannelChanged: false,
    );
  }

  //+ [DBManager]
  if (channel.chat.dbManager.isEnabled()) {
    channel.chat.dbManager.upsertGroupChannels([channel]);
  }
  //- [DBManager]

  return channel;
}