@@ -301,19 +301,17 @@ class Channel {
|
|||||||
user: _client.state.user,
|
user: _client.state.user,
|
||||||
quotedMessage: quotedMessage,
|
quotedMessage: quotedMessage,
|
||||||
status: MessageSendingStatus.sending,
|
status: MessageSendingStatus.sending,
|
||||||
attachments: [
|
attachments: message.attachments?.map(
|
||||||
...message.attachments.map(
|
(it) {
|
||||||
(it) {
|
if (it.uploadState.isSuccess) return it;
|
||||||
if (it.uploadState.isSuccess) return it;
|
return it.copyWith(
|
||||||
return it.copyWith(
|
uploadState: UploadState.inProgress(
|
||||||
uploadState: UploadState.inProgress(
|
uploaded: 0,
|
||||||
uploaded: 0,
|
total: it.file?.size ?? it.extraData['file_size'],
|
||||||
total: it.file?.size ?? it.extraData['file_size'],
|
),
|
||||||
),
|
);
|
||||||
);
|
},
|
||||||
},
|
)?.toList(),
|
||||||
)
|
|
||||||
],
|
|
||||||
);
|
);
|
||||||
|
|
||||||
if (message.parentId != null && message.id == null) {
|
if (message.parentId != null && message.id == null) {
|
||||||
@@ -328,16 +326,18 @@ class Channel {
|
|||||||
state?.addMessage(message);
|
state?.addMessage(message);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
final attachmentsUploadCompleter = Completer<Message>();
|
if (message.attachments?.isNotEmpty == true) {
|
||||||
_messageAttachmentsUploadCompleter[message.id] =
|
final attachmentsUploadCompleter = Completer<Message>();
|
||||||
attachmentsUploadCompleter;
|
_messageAttachmentsUploadCompleter[message.id] =
|
||||||
|
attachmentsUploadCompleter;
|
||||||
|
|
||||||
unawaited(_uploadAttachments(
|
unawaited(_uploadAttachments(
|
||||||
message.id,
|
message.id,
|
||||||
message.attachments.map((it) => it.id),
|
message.attachments.map((it) => it.id),
|
||||||
));
|
));
|
||||||
|
|
||||||
message = await attachmentsUploadCompleter.future;
|
message = await attachmentsUploadCompleter.future;
|
||||||
|
}
|
||||||
|
|
||||||
final response = await _client.post(
|
final response = await _client.post(
|
||||||
'$_channelURL/message',
|
'$_channelURL/message',
|
||||||
@@ -374,34 +374,34 @@ class Channel {
|
|||||||
message = message.copyWith(
|
message = message.copyWith(
|
||||||
status: MessageSendingStatus.updating,
|
status: MessageSendingStatus.updating,
|
||||||
updatedAt: message.updatedAt ?? DateTime.now(),
|
updatedAt: message.updatedAt ?? DateTime.now(),
|
||||||
attachments: [
|
attachments: message.attachments?.map(
|
||||||
...message.attachments.map(
|
(it) {
|
||||||
(it) {
|
if (it.uploadState.isSuccess) return it;
|
||||||
if (it.uploadState.isSuccess) return it;
|
return it.copyWith(
|
||||||
return it.copyWith(
|
uploadState: UploadState.inProgress(
|
||||||
uploadState: UploadState.inProgress(
|
uploaded: 0,
|
||||||
uploaded: 0,
|
total: it.file?.size ?? it.extraData['file_size'],
|
||||||
total: it.file?.size ?? it.extraData['file_size'],
|
),
|
||||||
),
|
);
|
||||||
);
|
},
|
||||||
},
|
)?.toList(),
|
||||||
)
|
|
||||||
],
|
|
||||||
);
|
);
|
||||||
|
|
||||||
state?.addMessage(message);
|
state?.addMessage(message);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
final attachmentsUploadCompleter = Completer<Message>();
|
if (message.attachments?.isNotEmpty == true) {
|
||||||
_messageAttachmentsUploadCompleter[message.id] =
|
final attachmentsUploadCompleter = Completer<Message>();
|
||||||
attachmentsUploadCompleter;
|
_messageAttachmentsUploadCompleter[message.id] =
|
||||||
|
attachmentsUploadCompleter;
|
||||||
|
|
||||||
unawaited(_uploadAttachments(
|
unawaited(_uploadAttachments(
|
||||||
message.id,
|
message.id,
|
||||||
message.attachments.map((it) => it.id),
|
message.attachments.map((it) => it.id),
|
||||||
));
|
));
|
||||||
|
|
||||||
message = await attachmentsUploadCompleter.future;
|
message = await attachmentsUploadCompleter.future;
|
||||||
|
}
|
||||||
|
|
||||||
final response = await _client.updateMessage(message);
|
final response = await _client.updateMessage(message);
|
||||||
state?.addMessage(response?.message?.copyWith(
|
state?.addMessage(response?.message?.copyWith(
|
||||||
|
|||||||
Reference in New Issue
Block a user