editMessage method
Future<Map>
editMessage(
- dynamic message,
- dynamic config,
- int? messageAttachedCallbackID,
- int? multipleMediaUploadingCallbackID,
)
Implementation
Future<Map<dynamic, dynamic>> editMessage(
dynamic message,
dynamic config,
int? messageAttachedCallbackID,
int? multipleMediaUploadingCallbackID) async {
final _message = mapToJSObj(message);
final _config = mapToJSObj(config);
Map notification = {
'onMessageAttached': allowInterop((message) {
ZIMMessageAttachedCallback? callback = ZIMCommonData
.zimMessageAttachedCallbackMap[messageAttachedCallbackID];
if (callback != null) {
callback(ZIMConverter.oZIMMessage(jsObjectToMap(message)));
}
}),
'multipleMediaUploadingCallbackID': allowInterop((message,
currentFileSize,
totalFileSize,
messageInfoIndex,
currentIndexFileSize,
totalIndexFileSize) {
ZIMMultipleMediaUploadingProgress? progress =
ZIMCommonData.multipleMediaUploadingProgressMap[
multipleMediaUploadingCallbackID];
if (progress != null) {
progress(
ZIMConverter.oZIMMessage(jsObjectToMap(message))
as ZIMMultipleMessage,
currentFileSize,
totalFileSize,
messageInfoIndex,
currentIndexFileSize,
totalIndexFileSize);
}
})
};
final result = await promiseToFuture(ZIM
.getInstance()!
.editMessage(_message, _config, mapToJSObj(notification)))
.catchError(handleError);
return jsObjectToMap(result);
}