Compare commits
2 Commits
0.0.42
...
3.8.3+hotf
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
95889be7a2 | ||
|
|
6c4ca2fb56 |
19
.github/workflows/issue-translator.yml
vendored
Normal file
19
.github/workflows/issue-translator.yml
vendored
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
name: 'issue-translator'
|
||||||
|
on:
|
||||||
|
issue_comment:
|
||||||
|
types: [created]
|
||||||
|
issues:
|
||||||
|
types: [opened]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: usthe/issues-translate-action@v2.7
|
||||||
|
with:
|
||||||
|
BOT_GITHUB_TOKEN: ${{ secrets.BOT_TOKEN }}
|
||||||
|
IS_MODIFY_TITLE: true
|
||||||
|
# not require, default false, . Decide whether to modify the issue title
|
||||||
|
# if true, the robot account @Issues-translate-bot must have modification permissions, invite @Issues-translate-bot to your project or use your custom bot.
|
||||||
|
CUSTOM_BOT_NOTE: Bot detected the issue body's language is not English, translate it automatically. 👯👭🏻🧑🤝🧑👫🧑🏿🤝🧑🏻👩🏾🤝👨🏿👬🏿
|
||||||
|
# not require. Customize the translation robot prefix message.
|
||||||
@@ -1,3 +1,7 @@
|
|||||||
|
## 3.8.3+hotfix.12
|
||||||
|
|
||||||
|
- [Bug fixes and performance enhancements.](https://github.com/openimsdk/openim-sdk-core/releases/tag/v3.8.3-patch.12)
|
||||||
|
|
||||||
## 3.8.3+hotfix.10.1
|
## 3.8.3+hotfix.10.1
|
||||||
|
|
||||||
- [Bug fixes and performance enhancements.](https://github.com/openimsdk/openim-sdk-core/releases/tag/v3.8.3-patch.10)
|
- [Bug fixes and performance enhancements.](https://github.com/openimsdk/openim-sdk-core/releases/tag/v3.8.3-patch.10)
|
||||||
|
|||||||
@@ -36,7 +36,7 @@ android {
|
|||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation 'io.openim:core-sdk:3.8.3-patch10@aar'
|
implementation 'io.openim:core-sdk:3.8.3-patch12@aar'
|
||||||
testImplementation("junit:junit:4.13.2")
|
testImplementation("junit:junit:4.13.2")
|
||||||
testImplementation("org.mockito:mockito-core:5.0.0")
|
testImplementation("org.mockito:mockito-core:5.0.0")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1 +1,2 @@
|
|||||||
rootProject.name = 'flutter_openim_sdk'
|
rootProject.name = 'flutter_openim_sdk'
|
||||||
|
|
||||||
@@ -13,19 +13,4 @@ public class OnUserListener implements open_im_sdk_callback.OnUserListener {
|
|||||||
public void onUserStatusChanged(String s) {
|
public void onUserStatusChanged(String s) {
|
||||||
CommonUtil.emitEvent("userListener", "onUserStatusChanged", s);
|
CommonUtil.emitEvent("userListener", "onUserStatusChanged", s);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onUserCommandAdd(String s) {
|
|
||||||
CommonUtil.emitEvent("userListener", "onUserCommandAdd", s);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onUserCommandDelete(String s) {
|
|
||||||
CommonUtil.emitEvent("userListener", "onUserCommandDelete", s);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onUserCommandUpdate(String s) {
|
|
||||||
CommonUtil.emitEvent("userListener", "onUserCommandUpdate", s);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -650,7 +650,7 @@ code + .copy-button {
|
|||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
function configurationCacheProblems() { return (
|
function configurationCacheProblems() { return (
|
||||||
// begin-report-data
|
// begin-report-data
|
||||||
{"diagnostics":[{"problem":[{"text":"Disabling Gradle user home cache cleanup with the 'org.gradle.cache.cleanup' property has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 9.0."}],"contextualLabel":"Disabling Gradle user home cache cleanup with the 'org.gradle.cache.cleanup' property has been deprecated.","documentationLink":"https://docs.gradle.org/8.12/userguide/upgrading_version_8.html#disabling_user_home_cache_cleanup","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"disabling-gradle-user-home-cache-cleanup-with-the-org-gradle-cache-cleanup-property","displayName":"Disabling Gradle user home cache cleanup with the 'org.gradle.cache.cleanup' property has been deprecated."}]},{"problem":[{"text":"Disabling Gradle user home cache cleanup with the 'org.gradle.cache.cleanup' property has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 9.0."}],"contextualLabel":"Disabling Gradle user home cache cleanup with the 'org.gradle.cache.cleanup' property has been deprecated.","documentationLink":"https://docs.gradle.org/8.12/userguide/upgrading_version_8.html#disabling_user_home_cache_cleanup","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"disabling-gradle-user-home-cache-cleanup-with-the-org-gradle-cache-cleanup-property","displayName":"Disabling Gradle user home cache cleanup with the 'org.gradle.cache.cleanup' property has been deprecated."}]}],"problemsReport":{"totalProblemCount":2,"buildName":"android","requestedTasks":"assembleDebug","documentationLink":"https://docs.gradle.org/8.12/userguide/problems-report.html","documentationLinkCaption":"Problem report","summaries":[]}}
|
{"diagnostics":[{"locations":[{"pluginId":"dev.flutter.flutter-gradle-plugin"}],"problem":[{"text":"Space-assignment syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Space-assignment syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.12/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"space-assignment-syntax-in-groovy-dsl","displayName":"Space-assignment syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('url = <value>') instead."}]]},{"locations":[{"pluginId":"dev.flutter.flutter-gradle-plugin"}],"problem":[{"text":"Space-assignment syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Space-assignment syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.12/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"space-assignment-syntax-in-groovy-dsl","displayName":"Space-assignment syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('url = <value>') instead."}]]},{"locations":[{"pluginId":"dev.flutter.flutter-gradle-plugin"}],"problem":[{"text":"Space-assignment syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Space-assignment syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.12/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"space-assignment-syntax-in-groovy-dsl","displayName":"Space-assignment syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('shrinkResources = <value>') instead."}]]}],"problemsReport":{"totalProblemCount":3,"buildName":"android","requestedTasks":"","documentationLink":"https://docs.gradle.org/8.12/userguide/problems-report.html","documentationLinkCaption":"Problem report","summaries":[]}}
|
||||||
// end-report-data
|
// end-report-data
|
||||||
);}
|
);}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -2,8 +2,8 @@ PODS:
|
|||||||
- Flutter (1.0.0)
|
- Flutter (1.0.0)
|
||||||
- flutter_openim_sdk (0.0.1):
|
- flutter_openim_sdk (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- OpenIMSDKCore (= 3.8.3-hotfix.10)
|
- OpenIMSDKCore (= 3.8.3-hotfix.12)
|
||||||
- OpenIMSDKCore (3.8.3-hotfix.10)
|
- OpenIMSDKCore (3.8.3-hotfix.12)
|
||||||
|
|
||||||
DEPENDENCIES:
|
DEPENDENCIES:
|
||||||
- Flutter (from `Flutter`)
|
- Flutter (from `Flutter`)
|
||||||
@@ -21,9 +21,9 @@ EXTERNAL SOURCES:
|
|||||||
|
|
||||||
SPEC CHECKSUMS:
|
SPEC CHECKSUMS:
|
||||||
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
|
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
|
||||||
flutter_openim_sdk: 59aa0c08eb7499a1790168e10539e4dd915ced6e
|
flutter_openim_sdk: bb2a5af4aeda4b44362ca6c223c1515e2fee795d
|
||||||
OpenIMSDKCore: bc9a6e5de2aabed76e4f69fe06a7c9df1d945afc
|
OpenIMSDKCore: 02383b2a3f989a1fff29ad5f83c1dac1ee5bfb36
|
||||||
|
|
||||||
PODFILE CHECKSUM: 819463e6a0290f5a72f145ba7cde16e8b6ef0796
|
PODFILE CHECKSUM: 7be2f5f74864d463a8ad433546ed1de7e0f29aef
|
||||||
|
|
||||||
COCOAPODS: 1.16.2
|
COCOAPODS: 1.16.2
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ packages:
|
|||||||
path: ".."
|
path: ".."
|
||||||
relative: true
|
relative: true
|
||||||
source: path
|
source: path
|
||||||
version: "3.8.3+hotfix.10"
|
version: "3.8.3+hotfix.10.1"
|
||||||
flutter_test:
|
flutter_test:
|
||||||
dependency: "direct dev"
|
dependency: "direct dev"
|
||||||
description: flutter
|
description: flutter
|
||||||
|
|||||||
@@ -17,13 +17,13 @@ A new Flutter project.
|
|||||||
s.dependency 'Flutter'
|
s.dependency 'Flutter'
|
||||||
s.platform = :ios, '11.0'
|
s.platform = :ios, '11.0'
|
||||||
|
|
||||||
s.dependency 'OpenIMSDKCore','3.8.3-hotfix.10'
|
s.dependency 'OpenIMSDKCore','3.8.3-hotfix.12'
|
||||||
s.static_framework = true
|
s.static_framework = true
|
||||||
s.library = 'resolv'
|
s.library = 'resolv'
|
||||||
|
|
||||||
# s.vendored_frameworks = 'Framework/*.xcframework'
|
# s.vendored_frameworks = 'Framework/*.xcframework'
|
||||||
# Flutter.framework does not contain a i386 slice.
|
# Flutter.framework does not contain a i386 slice.
|
||||||
s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386 arm64' }
|
s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' }
|
||||||
s.swift_version = '5.0'
|
s.swift_version = '5.0'
|
||||||
|
|
||||||
s.resource_bundles = {'flutter_openim_sdk_privacy' => ['Resources/PrivacyInfo.xcprivacy']}
|
s.resource_bundles = {'flutter_openim_sdk_privacy' => ['Resources/PrivacyInfo.xcprivacy']}
|
||||||
|
|||||||
@@ -429,7 +429,7 @@ class GetGroupApplicationListAsRecipientReq {
|
|||||||
final int offset;
|
final int offset;
|
||||||
final int count;
|
final int count;
|
||||||
|
|
||||||
GetGroupApplicationListAsRecipientReq({
|
GetGroupApplicationListAsRecipientReq({
|
||||||
this.groupIDs = const [],
|
this.groupIDs = const [],
|
||||||
this.handleResults = const [],
|
this.handleResults = const [],
|
||||||
required this.offset,
|
required this.offset,
|
||||||
@@ -466,8 +466,8 @@ class GetGroupApplicationListAsApplicantReq {
|
|||||||
GetGroupApplicationListAsApplicantReq({
|
GetGroupApplicationListAsApplicantReq({
|
||||||
this.groupIDs = const [],
|
this.groupIDs = const [],
|
||||||
this.handleResults = const [],
|
this.handleResults = const [],
|
||||||
required this.offset,
|
this.offset = 0,
|
||||||
required this.count,
|
this.count = 40,
|
||||||
});
|
});
|
||||||
|
|
||||||
GetGroupApplicationListAsApplicantReq.fromJson(Map<String, dynamic> json)
|
GetGroupApplicationListAsApplicantReq.fromJson(Map<String, dynamic> json)
|
||||||
|
|||||||
@@ -257,7 +257,8 @@ class Message {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) =>
|
bool operator ==(Object other) =>
|
||||||
identical(this, other) || other is Message && runtimeType == other.runtimeType && clientMsgID == other.clientMsgID;
|
identical(this, other) ||
|
||||||
|
other is Message && runtimeType == other.runtimeType && clientMsgID == other.clientMsgID;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get hashCode => clientMsgID.hashCode;
|
int get hashCode => clientMsgID.hashCode;
|
||||||
@@ -787,12 +788,15 @@ class AttachedInfoElem {
|
|||||||
/// Do not send offline push notifications
|
/// Do not send offline push notifications
|
||||||
bool? notSenderNotificationPush;
|
bool? notSenderNotificationPush;
|
||||||
|
|
||||||
|
UploadProgress? uploadProgress;
|
||||||
|
|
||||||
AttachedInfoElem({
|
AttachedInfoElem({
|
||||||
this.groupHasReadInfo,
|
this.groupHasReadInfo,
|
||||||
this.isPrivateChat,
|
this.isPrivateChat,
|
||||||
this.hasReadTime,
|
this.hasReadTime,
|
||||||
this.burnDuration,
|
this.burnDuration,
|
||||||
this.notSenderNotificationPush,
|
this.notSenderNotificationPush,
|
||||||
|
this.uploadProgress,
|
||||||
});
|
});
|
||||||
|
|
||||||
AttachedInfoElem.fromJson(Map<String, dynamic> json) {
|
AttachedInfoElem.fromJson(Map<String, dynamic> json) {
|
||||||
@@ -801,6 +805,7 @@ class AttachedInfoElem {
|
|||||||
hasReadTime = json['hasReadTime'];
|
hasReadTime = json['hasReadTime'];
|
||||||
burnDuration = json['burnDuration'];
|
burnDuration = json['burnDuration'];
|
||||||
notSenderNotificationPush = json['notSenderNotificationPush'];
|
notSenderNotificationPush = json['notSenderNotificationPush'];
|
||||||
|
uploadProgress = json['uploadProgress'] == null ? null : UploadProgress.fromJson(json['uploadProgress']);
|
||||||
}
|
}
|
||||||
|
|
||||||
Map<String, dynamic> toJson() {
|
Map<String, dynamic> toJson() {
|
||||||
@@ -810,6 +815,33 @@ class AttachedInfoElem {
|
|||||||
data['hasReadTime'] = this.hasReadTime;
|
data['hasReadTime'] = this.hasReadTime;
|
||||||
data['burnDuration'] = this.burnDuration;
|
data['burnDuration'] = this.burnDuration;
|
||||||
data['notSenderNotificationPush'] = this.notSenderNotificationPush;
|
data['notSenderNotificationPush'] = this.notSenderNotificationPush;
|
||||||
|
data['uploadProgress'] = uploadProgress?.toJson();
|
||||||
|
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class UploadProgress {
|
||||||
|
int? total;
|
||||||
|
int? save;
|
||||||
|
int? current;
|
||||||
|
String? uploadID;
|
||||||
|
|
||||||
|
UploadProgress({this.total, this.save, this.current, this.uploadID});
|
||||||
|
|
||||||
|
UploadProgress.fromJson(Map<String, dynamic> json) {
|
||||||
|
total = json['total'] ?? 0;
|
||||||
|
save = json['save'] ?? 0;
|
||||||
|
current = json['current'] ?? 0;
|
||||||
|
uploadID = json['uploadID'] ?? '';
|
||||||
|
}
|
||||||
|
|
||||||
|
Map<String, dynamic> toJson() {
|
||||||
|
final data = <String, dynamic>{};
|
||||||
|
data['total'] = total;
|
||||||
|
data['save'] = save;
|
||||||
|
data['current'] = current;
|
||||||
|
data['uploadID'] = uploadID;
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -879,7 +911,9 @@ class AdvancedTextElem {
|
|||||||
|
|
||||||
AdvancedTextElem.fromJson(Map<String, dynamic> json) {
|
AdvancedTextElem.fromJson(Map<String, dynamic> json) {
|
||||||
text = json['text'];
|
text = json['text'];
|
||||||
messageEntityList = json['messageEntityList'] == null ? null : (json['messageEntityList'] as List).map((e) => MessageEntity.fromJson(e)).toList();
|
messageEntityList = json['messageEntityList'] == null
|
||||||
|
? null
|
||||||
|
: (json['messageEntityList'] as List).map((e) => MessageEntity.fromJson(e)).toList();
|
||||||
}
|
}
|
||||||
|
|
||||||
Map<String, dynamic> toJson() {
|
Map<String, dynamic> toJson() {
|
||||||
@@ -961,7 +995,8 @@ class ReadReceiptInfo {
|
|||||||
/// Conversation type [ConversationType]
|
/// Conversation type [ConversationType]
|
||||||
int? sessionType;
|
int? sessionType;
|
||||||
|
|
||||||
ReadReceiptInfo({this.userID, this.groupID, this.msgIDList, this.readTime, this.msgFrom, this.contentType, this.sessionType});
|
ReadReceiptInfo(
|
||||||
|
{this.userID, this.groupID, this.msgIDList, this.readTime, this.msgFrom, this.contentType, this.sessionType});
|
||||||
|
|
||||||
ReadReceiptInfo.fromJson(Map<String, dynamic> json) {
|
ReadReceiptInfo.fromJson(Map<String, dynamic> json) {
|
||||||
userID = json['uid'] ?? json['userID'];
|
userID = json['uid'] ?? json['userID'];
|
||||||
@@ -1132,7 +1167,8 @@ class AdvancedMessage {
|
|||||||
});
|
});
|
||||||
|
|
||||||
AdvancedMessage.fromJson(Map<String, dynamic> json) {
|
AdvancedMessage.fromJson(Map<String, dynamic> json) {
|
||||||
messageList = json['messageList'] == null ? null : (json['messageList'] as List).map((e) => Message.fromJson(e)).toList();
|
messageList =
|
||||||
|
json['messageList'] == null ? null : (json['messageList'] as List).map((e) => Message.fromJson(e)).toList();
|
||||||
isEnd = json['isEnd'];
|
isEnd = json['isEnd'];
|
||||||
errCode = json['errCode'];
|
errCode = json['errCode'];
|
||||||
errMsg = json['errMsg'];
|
errMsg = json['errMsg'];
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'package:flutter/services.dart';
|
|||||||
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
|
import 'package:flutter_openim_sdk/flutter_openim_sdk.dart';
|
||||||
|
|
||||||
class OpenIM {
|
class OpenIM {
|
||||||
static const version = '3.8.3+hotfix.10.1';
|
static const version = '3.8.3+hotfix.12';
|
||||||
|
|
||||||
static const _channel = MethodChannel('flutter_openim_sdk');
|
static const _channel = MethodChannel('flutter_openim_sdk');
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
name: flutter_openim_sdk
|
name: flutter_openim_sdk
|
||||||
description: An instant messaging plug-in that supports Android and IOS. And the server is also all open source.
|
description: An instant messaging plug-in that supports Android and IOS. And the server is also all open source.
|
||||||
version: 3.8.3+hotfix.10.1
|
version: 3.8.3+hotfix.12
|
||||||
homepage: https://www.openim.io
|
homepage: https://www.openim.io
|
||||||
repository: https://github.com/openimsdk/open-im-sdk-flutter
|
repository: https://github.com/openimsdk/open-im-sdk-flutter
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user