Merge pull request #1110 from rlee1990/develop
This commit is contained in:
@@ -1,10 +1,17 @@
|
|||||||
|
## Upcoming
|
||||||
|
|
||||||
|
✅ Added
|
||||||
|
|
||||||
|
- Added support for extra data in attachment file uploader. Thanks, [@rlee1990](https://github.com/rlee1990).
|
||||||
|
|
||||||
## 4.0.1
|
## 4.0.1
|
||||||
|
|
||||||
- Minor fixes
|
- Minor fixes
|
||||||
|
|
||||||
## 4.0.0
|
## 4.0.0
|
||||||
|
|
||||||
For upgrading to V4, please refer to the [V4 Migration Guide](https://getstream.io/chat/docs/sdk/flutter/guides/migration_guide_4_0/)
|
For upgrading to V4, please refer to
|
||||||
|
the [V4 Migration Guide](https://getstream.io/chat/docs/sdk/flutter/guides/migration_guide_4_0/)
|
||||||
|
|
||||||
✅ Added
|
✅ Added
|
||||||
|
|
||||||
@@ -19,8 +26,10 @@ For upgrading to V4, please refer to the [V4 Migration Guide](https://getstream.
|
|||||||
any channel.
|
any channel.
|
||||||
- [[#1047]](https://github.com/GetStream/stream-chat-flutter/issues/1047) `own_capabilities` extraData missing after
|
- [[#1047]](https://github.com/GetStream/stream-chat-flutter/issues/1047) `own_capabilities` extraData missing after
|
||||||
channel update.
|
channel update.
|
||||||
- [[#1054]](https://github.com/GetStream/stream-chat-flutter/issues/1054) Fix `Unsupported operation: Cannot remove from an unmodifiable list`.
|
- [[#1054]](https://github.com/GetStream/stream-chat-flutter/issues/1054)
|
||||||
- [[#1033]](https://github.com/GetStream/stream-chat-flutter/issues/1033) Hard delete from dashboard does not delete message from client.
|
Fix `Unsupported operation: Cannot remove from an unmodifiable list`.
|
||||||
|
- [[#1033]](https://github.com/GetStream/stream-chat-flutter/issues/1033) Hard delete from dashboard does not delete
|
||||||
|
message from client.
|
||||||
- Send only `user_id` while reconnecting.
|
- Send only `user_id` while reconnecting.
|
||||||
|
|
||||||
✅ Added
|
✅ Added
|
||||||
@@ -53,8 +62,10 @@ For upgrading to V4, please refer to the [V4 Migration Guide](https://getstream.
|
|||||||
any channel.
|
any channel.
|
||||||
- [[#1047]](https://github.com/GetStream/stream-chat-flutter/issues/1047) `own_capabilities` extraData missing after
|
- [[#1047]](https://github.com/GetStream/stream-chat-flutter/issues/1047) `own_capabilities` extraData missing after
|
||||||
channel update.
|
channel update.
|
||||||
- [[#1054]](https://github.com/GetStream/stream-chat-flutter/issues/1054) Fix `Unsupported operation: Cannot remove from an unmodifiable list`.
|
- [[#1054]](https://github.com/GetStream/stream-chat-flutter/issues/1054)
|
||||||
- [[#1033]](https://github.com/GetStream/stream-chat-flutter/issues/1033) Hard delete from dashboard does not delete message from client.
|
Fix `Unsupported operation: Cannot remove from an unmodifiable list`.
|
||||||
|
- [[#1033]](https://github.com/GetStream/stream-chat-flutter/issues/1033) Hard delete from dashboard does not delete
|
||||||
|
message from client.
|
||||||
- Send only `user_id` while reconnecting.
|
- Send only `user_id` while reconnecting.
|
||||||
|
|
||||||
✅ Added
|
✅ Added
|
||||||
|
|||||||
@@ -448,12 +448,14 @@ class Channel {
|
|||||||
it.file!,
|
it.file!,
|
||||||
onSendProgress: onSendProgress,
|
onSendProgress: onSendProgress,
|
||||||
cancelToken: cancelToken,
|
cancelToken: cancelToken,
|
||||||
|
extraData: it.extraData,
|
||||||
).then((it) => it.file);
|
).then((it) => it.file);
|
||||||
} else {
|
} else {
|
||||||
future = sendFile(
|
future = sendFile(
|
||||||
it.file!,
|
it.file!,
|
||||||
onSendProgress: onSendProgress,
|
onSendProgress: onSendProgress,
|
||||||
cancelToken: cancelToken,
|
cancelToken: cancelToken,
|
||||||
|
extraData: it.extraData,
|
||||||
).then((it) => it.file);
|
).then((it) => it.file);
|
||||||
}
|
}
|
||||||
_cancelableAttachmentUploadRequest[it.id] = cancelToken;
|
_cancelableAttachmentUploadRequest[it.id] = cancelToken;
|
||||||
@@ -757,6 +759,7 @@ class Channel {
|
|||||||
AttachmentFile file, {
|
AttachmentFile file, {
|
||||||
ProgressCallback? onSendProgress,
|
ProgressCallback? onSendProgress,
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
}) {
|
}) {
|
||||||
_checkInitialized();
|
_checkInitialized();
|
||||||
return _client.sendFile(
|
return _client.sendFile(
|
||||||
@@ -765,6 +768,7 @@ class Channel {
|
|||||||
type,
|
type,
|
||||||
onSendProgress: onSendProgress,
|
onSendProgress: onSendProgress,
|
||||||
cancelToken: cancelToken,
|
cancelToken: cancelToken,
|
||||||
|
extraData: extraData,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -773,6 +777,7 @@ class Channel {
|
|||||||
AttachmentFile file, {
|
AttachmentFile file, {
|
||||||
ProgressCallback? onSendProgress,
|
ProgressCallback? onSendProgress,
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
}) {
|
}) {
|
||||||
_checkInitialized();
|
_checkInitialized();
|
||||||
return _client.sendImage(
|
return _client.sendImage(
|
||||||
@@ -781,6 +786,7 @@ class Channel {
|
|||||||
type,
|
type,
|
||||||
onSendProgress: onSendProgress,
|
onSendProgress: onSendProgress,
|
||||||
cancelToken: cancelToken,
|
cancelToken: cancelToken,
|
||||||
|
extraData: extraData,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -805,6 +811,7 @@ class Channel {
|
|||||||
Future<EmptyResponse> deleteFile(
|
Future<EmptyResponse> deleteFile(
|
||||||
String url, {
|
String url, {
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
}) {
|
}) {
|
||||||
_checkInitialized();
|
_checkInitialized();
|
||||||
return _client.deleteFile(
|
return _client.deleteFile(
|
||||||
@@ -812,6 +819,7 @@ class Channel {
|
|||||||
id!,
|
id!,
|
||||||
type,
|
type,
|
||||||
cancelToken: cancelToken,
|
cancelToken: cancelToken,
|
||||||
|
extraData: extraData,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -819,6 +827,7 @@ class Channel {
|
|||||||
Future<EmptyResponse> deleteImage(
|
Future<EmptyResponse> deleteImage(
|
||||||
String url, {
|
String url, {
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
}) {
|
}) {
|
||||||
_checkInitialized();
|
_checkInitialized();
|
||||||
return _client.deleteImage(
|
return _client.deleteImage(
|
||||||
@@ -826,6 +835,7 @@ class Channel {
|
|||||||
id!,
|
id!,
|
||||||
type,
|
type,
|
||||||
cancelToken: cancelToken,
|
cancelToken: cancelToken,
|
||||||
|
extraData: extraData,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -728,6 +728,7 @@ class StreamChatClient {
|
|||||||
String channelType, {
|
String channelType, {
|
||||||
ProgressCallback? onSendProgress,
|
ProgressCallback? onSendProgress,
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
}) =>
|
}) =>
|
||||||
_chatApi.fileUploader.sendFile(
|
_chatApi.fileUploader.sendFile(
|
||||||
file,
|
file,
|
||||||
@@ -735,6 +736,7 @@ class StreamChatClient {
|
|||||||
channelType,
|
channelType,
|
||||||
onSendProgress: onSendProgress,
|
onSendProgress: onSendProgress,
|
||||||
cancelToken: cancelToken,
|
cancelToken: cancelToken,
|
||||||
|
extraData: extraData,
|
||||||
);
|
);
|
||||||
|
|
||||||
/// Send a [image] to the [channelId] of type [channelType]
|
/// Send a [image] to the [channelId] of type [channelType]
|
||||||
@@ -744,6 +746,7 @@ class StreamChatClient {
|
|||||||
String channelType, {
|
String channelType, {
|
||||||
ProgressCallback? onSendProgress,
|
ProgressCallback? onSendProgress,
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
}) =>
|
}) =>
|
||||||
_chatApi.fileUploader.sendImage(
|
_chatApi.fileUploader.sendImage(
|
||||||
image,
|
image,
|
||||||
@@ -751,6 +754,7 @@ class StreamChatClient {
|
|||||||
channelType,
|
channelType,
|
||||||
onSendProgress: onSendProgress,
|
onSendProgress: onSendProgress,
|
||||||
cancelToken: cancelToken,
|
cancelToken: cancelToken,
|
||||||
|
extraData: extraData,
|
||||||
);
|
);
|
||||||
|
|
||||||
/// Delete a file from this channel
|
/// Delete a file from this channel
|
||||||
@@ -759,12 +763,14 @@ class StreamChatClient {
|
|||||||
String channelId,
|
String channelId,
|
||||||
String channelType, {
|
String channelType, {
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
}) =>
|
}) =>
|
||||||
_chatApi.fileUploader.deleteFile(
|
_chatApi.fileUploader.deleteFile(
|
||||||
url,
|
url,
|
||||||
channelId,
|
channelId,
|
||||||
channelType,
|
channelType,
|
||||||
cancelToken: cancelToken,
|
cancelToken: cancelToken,
|
||||||
|
extraData: extraData,
|
||||||
);
|
);
|
||||||
|
|
||||||
/// Delete an image from this channel
|
/// Delete an image from this channel
|
||||||
@@ -773,12 +779,14 @@ class StreamChatClient {
|
|||||||
String channelId,
|
String channelId,
|
||||||
String channelType, {
|
String channelType, {
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
}) =>
|
}) =>
|
||||||
_chatApi.fileUploader.deleteImage(
|
_chatApi.fileUploader.deleteImage(
|
||||||
url,
|
url,
|
||||||
channelId,
|
channelId,
|
||||||
channelType,
|
channelType,
|
||||||
cancelToken: cancelToken,
|
cancelToken: cancelToken,
|
||||||
|
extraData: extraData,
|
||||||
);
|
);
|
||||||
|
|
||||||
/// Replaces the [channelId] of type [ChannelType] data with [data].
|
/// Replaces the [channelId] of type [ChannelType] data with [data].
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ abstract class AttachmentFileUploader {
|
|||||||
String channelType, {
|
String channelType, {
|
||||||
ProgressCallback? onSendProgress,
|
ProgressCallback? onSendProgress,
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
});
|
});
|
||||||
|
|
||||||
/// Uploads a [file] to the given channel.
|
/// Uploads a [file] to the given channel.
|
||||||
@@ -29,6 +30,7 @@ abstract class AttachmentFileUploader {
|
|||||||
String channelType, {
|
String channelType, {
|
||||||
ProgressCallback? onSendProgress,
|
ProgressCallback? onSendProgress,
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
});
|
});
|
||||||
|
|
||||||
/// Deletes a image using its [url] from the given channel.
|
/// Deletes a image using its [url] from the given channel.
|
||||||
@@ -40,6 +42,7 @@ abstract class AttachmentFileUploader {
|
|||||||
String channelId,
|
String channelId,
|
||||||
String channelType, {
|
String channelType, {
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
});
|
});
|
||||||
|
|
||||||
/// Deletes a file using its [url] from the given channel.
|
/// Deletes a file using its [url] from the given channel.
|
||||||
@@ -51,6 +54,7 @@ abstract class AttachmentFileUploader {
|
|||||||
String channelId,
|
String channelId,
|
||||||
String channelType, {
|
String channelType, {
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -68,6 +72,7 @@ class StreamAttachmentFileUploader implements AttachmentFileUploader {
|
|||||||
String channelType, {
|
String channelType, {
|
||||||
ProgressCallback? onSendProgress,
|
ProgressCallback? onSendProgress,
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
}) async {
|
}) async {
|
||||||
final multiPartFile = await file.toMultipartFile();
|
final multiPartFile = await file.toMultipartFile();
|
||||||
final response = await _client.postFile(
|
final response = await _client.postFile(
|
||||||
@@ -86,6 +91,7 @@ class StreamAttachmentFileUploader implements AttachmentFileUploader {
|
|||||||
String channelType, {
|
String channelType, {
|
||||||
ProgressCallback? onSendProgress,
|
ProgressCallback? onSendProgress,
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
}) async {
|
}) async {
|
||||||
final multiPartFile = await file.toMultipartFile();
|
final multiPartFile = await file.toMultipartFile();
|
||||||
final response = await _client.postFile(
|
final response = await _client.postFile(
|
||||||
@@ -103,6 +109,7 @@ class StreamAttachmentFileUploader implements AttachmentFileUploader {
|
|||||||
String channelId,
|
String channelId,
|
||||||
String channelType, {
|
String channelType, {
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
}) async {
|
}) async {
|
||||||
final response = await _client.delete(
|
final response = await _client.delete(
|
||||||
'/channels/$channelType/$channelId/image',
|
'/channels/$channelType/$channelId/image',
|
||||||
@@ -118,6 +125,7 @@ class StreamAttachmentFileUploader implements AttachmentFileUploader {
|
|||||||
String channelId,
|
String channelId,
|
||||||
String channelType, {
|
String channelType, {
|
||||||
CancelToken? cancelToken,
|
CancelToken? cancelToken,
|
||||||
|
Map<String, Object?>? extraData,
|
||||||
}) async {
|
}) async {
|
||||||
final response = await _client.delete(
|
final response = await _client.delete(
|
||||||
'/channels/$channelType/$channelId/file',
|
'/channels/$channelType/$channelId/file',
|
||||||
|
|||||||
@@ -313,6 +313,7 @@ void main() {
|
|||||||
channelType,
|
channelType,
|
||||||
onSendProgress: any(named: 'onSendProgress'),
|
onSendProgress: any(named: 'onSendProgress'),
|
||||||
cancelToken: any(named: 'cancelToken'),
|
cancelToken: any(named: 'cancelToken'),
|
||||||
|
extraData: any(named: 'extraData'),
|
||||||
)).thenAnswer((_) async => sendImageResponse);
|
)).thenAnswer((_) async => sendImageResponse);
|
||||||
|
|
||||||
when(() => client.sendFile(
|
when(() => client.sendFile(
|
||||||
@@ -321,6 +322,7 @@ void main() {
|
|||||||
channelType,
|
channelType,
|
||||||
onSendProgress: any(named: 'onSendProgress'),
|
onSendProgress: any(named: 'onSendProgress'),
|
||||||
cancelToken: any(named: 'cancelToken'),
|
cancelToken: any(named: 'cancelToken'),
|
||||||
|
extraData: any(named: 'extraData'),
|
||||||
)).thenAnswer((_) async => sendFileResponse);
|
)).thenAnswer((_) async => sendFileResponse);
|
||||||
|
|
||||||
when(() => client.sendMessage(
|
when(() => client.sendMessage(
|
||||||
@@ -440,6 +442,7 @@ void main() {
|
|||||||
channelType,
|
channelType,
|
||||||
onSendProgress: any(named: 'onSendProgress'),
|
onSendProgress: any(named: 'onSendProgress'),
|
||||||
cancelToken: any(named: 'cancelToken'),
|
cancelToken: any(named: 'cancelToken'),
|
||||||
|
extraData: any(named: 'extraData'),
|
||||||
)).called(2);
|
)).called(2);
|
||||||
|
|
||||||
verify(() => client.sendFile(
|
verify(() => client.sendFile(
|
||||||
@@ -448,6 +451,7 @@ void main() {
|
|||||||
channelType,
|
channelType,
|
||||||
onSendProgress: any(named: 'onSendProgress'),
|
onSendProgress: any(named: 'onSendProgress'),
|
||||||
cancelToken: any(named: 'cancelToken'),
|
cancelToken: any(named: 'cancelToken'),
|
||||||
|
extraData: any(named: 'extraData'),
|
||||||
)).called(1);
|
)).called(1);
|
||||||
|
|
||||||
verify(() => client.sendMessage(
|
verify(() => client.sendMessage(
|
||||||
@@ -524,6 +528,7 @@ void main() {
|
|||||||
channelType,
|
channelType,
|
||||||
onSendProgress: any(named: 'onSendProgress'),
|
onSendProgress: any(named: 'onSendProgress'),
|
||||||
cancelToken: any(named: 'cancelToken'),
|
cancelToken: any(named: 'cancelToken'),
|
||||||
|
extraData: any(named: 'extraData'),
|
||||||
)).thenAnswer((_) async => sendImageResponse);
|
)).thenAnswer((_) async => sendImageResponse);
|
||||||
|
|
||||||
when(() => client.sendFile(
|
when(() => client.sendFile(
|
||||||
@@ -532,6 +537,7 @@ void main() {
|
|||||||
channelType,
|
channelType,
|
||||||
onSendProgress: any(named: 'onSendProgress'),
|
onSendProgress: any(named: 'onSendProgress'),
|
||||||
cancelToken: any(named: 'cancelToken'),
|
cancelToken: any(named: 'cancelToken'),
|
||||||
|
extraData: any(named: 'extraData'),
|
||||||
)).thenAnswer((_) async => sendFileResponse);
|
)).thenAnswer((_) async => sendFileResponse);
|
||||||
|
|
||||||
when(() => client.updateMessage(
|
when(() => client.updateMessage(
|
||||||
@@ -649,6 +655,7 @@ void main() {
|
|||||||
channelType,
|
channelType,
|
||||||
onSendProgress: any(named: 'onSendProgress'),
|
onSendProgress: any(named: 'onSendProgress'),
|
||||||
cancelToken: any(named: 'cancelToken'),
|
cancelToken: any(named: 'cancelToken'),
|
||||||
|
extraData: any(named: 'extraData'),
|
||||||
)).called(2);
|
)).called(2);
|
||||||
|
|
||||||
verify(() => client.sendFile(
|
verify(() => client.sendFile(
|
||||||
@@ -657,6 +664,7 @@ void main() {
|
|||||||
channelType,
|
channelType,
|
||||||
onSendProgress: any(named: 'onSendProgress'),
|
onSendProgress: any(named: 'onSendProgress'),
|
||||||
cancelToken: any(named: 'cancelToken'),
|
cancelToken: any(named: 'cancelToken'),
|
||||||
|
extraData: any(named: 'extraData'),
|
||||||
)).called(1);
|
)).called(1);
|
||||||
|
|
||||||
verify(() => client.updateMessage(
|
verify(() => client.updateMessage(
|
||||||
|
|||||||
Reference in New Issue
Block a user