exportChat method

dynamic exportChat()

Implementation

exportChat() async {
  if (chatList.isNotEmpty) {
    var permission =
        await AppPermission.getStoragePermission(context: context);
    if (permission) {
      Mirrorfly.exportChatConversationToEmail(
          jid: profile.jid.checkNull(),
          flyCallBack: (FlyResponse response) async {
            debugPrint("exportChatConversationToEmail $response");
            if (response.isSuccess && response.hasData) {
              var data = exportModelFromJson(response.data);
              if (data.mediaAttachmentsUrl != null) {
                if (data.mediaAttachmentsUrl!.isNotEmpty) {
                  var xfiles = <XFile>[];
                  data.mediaAttachmentsUrl
                      ?.forEach((element) => xfiles.add(XFile(element)));
                  await Share.shareXFiles(xfiles);
                }
              }
            }
          });
    } else {
      toToast(AppConstants.permissionDenied);
    }
  } else {
    toToast(AppConstants.noConversation);
  }
}