polish 4.0.0 and prepare 4.0.1

This commit is contained in:
Salvatore Giordano
2022-05-03 11:58:55 +02:00
parent 9c05625f9b
commit 41f2d55f70
8 changed files with 86 additions and 95 deletions
@@ -1,7 +1,7 @@
---
id: migration_guide_4_0
sidebar_position: 14
title: Migration Guide For The Stream Chat Flutter SDK v4.0
title: Migration Guide v4.0
---
**Version 4.0.0** of the Stream Chat Flutter SDK carries significant architectural changes to improve the developer experience by giving you more control and flexibility in how you use our core components and UI widgets.
@@ -44,7 +44,7 @@ See the sections below on “deprecated classes” for a complete list of change
This section highlights functionality removed.
## Removed methods and classes
### Removed Methods And Classes
In version 4 we removed the following deprecated methods and classes:
@@ -733,7 +733,7 @@ The controller makes it much simpler to dynamically modify the message input.
## Stream Chat Flutter Core
Various changes have been made to the Core package, most notably, the indroduction of all of the controllers mentioned above:
Various changes have been made to the Core package, most notably, the indroduction of all of the controllers mentioned above.
These controllers replace the business logic implementations (Bloc). Please note that this is not related to the well-known Flutter Bloc package, but instead refers to the naming we used for our business logic components.
@@ -12,7 +12,7 @@ part of 'attachment_file.dart';
T _$identity<T>(T value) => value;
final _privateConstructorUsedError = UnsupportedError(
'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more informations: https://github.com/rrousselGit/freezed#custom-getters-and-methods');
'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#custom-getters-and-methods');
UploadState _$UploadStateFromJson(Map<String, dynamic> json) {
switch (json['runtimeType']) {
@@ -31,39 +31,6 @@ UploadState _$UploadStateFromJson(Map<String, dynamic> json) {
}
}
/// @nodoc
class _$UploadStateTearOff {
const _$UploadStateTearOff();
Preparing preparing() {
return const Preparing();
}
InProgress inProgress({required int uploaded, required int total}) {
return InProgress(
uploaded: uploaded,
total: total,
);
}
Success success() {
return const Success();
}
Failed failed({required String error}) {
return Failed(
error: error,
);
}
UploadState fromJson(Map<String, Object?> json) {
return UploadState.fromJson(json);
}
}
/// @nodoc
const $UploadState = _$UploadStateTearOff();
/// @nodoc
mixin _$UploadState {
@optionalTypeArgs
@@ -154,7 +121,7 @@ class _$PreparingCopyWithImpl<$Res> extends _$UploadStateCopyWithImpl<$Res>
/// @nodoc
@JsonSerializable()
class _$Preparing implements Preparing {
const _$Preparing({String? $type}) : $type = $type ?? 'preparing';
const _$Preparing({final String? $type}) : $type = $type ?? 'preparing';
factory _$Preparing.fromJson(Map<String, dynamic> json) =>
_$$PreparingFromJson(json);
@@ -173,6 +140,7 @@ class _$Preparing implements Preparing {
(other.runtimeType == runtimeType && other is Preparing);
}
@JsonKey(ignore: true)
@override
int get hashCode => runtimeType.hashCode;
@@ -301,7 +269,7 @@ class _$InProgressCopyWithImpl<$Res> extends _$UploadStateCopyWithImpl<$Res>
@JsonSerializable()
class _$InProgress implements InProgress {
const _$InProgress(
{required this.uploaded, required this.total, String? $type})
{required this.uploaded, required this.total, final String? $type})
: $type = $type ?? 'inProgress';
factory _$InProgress.fromJson(Map<String, dynamic> json) =>
@@ -329,6 +297,7 @@ class _$InProgress implements InProgress {
const DeepCollectionEquality().equals(other.total, total));
}
@JsonKey(ignore: true)
@override
int get hashCode => Object.hash(
runtimeType,
@@ -421,14 +390,14 @@ class _$InProgress implements InProgress {
}
abstract class InProgress implements UploadState {
const factory InProgress({required int uploaded, required int total}) =
_$InProgress;
const factory InProgress(
{required final int uploaded, required final int total}) = _$InProgress;
factory InProgress.fromJson(Map<String, dynamic> json) =
_$InProgress.fromJson;
int get uploaded;
int get total;
int get uploaded => throw _privateConstructorUsedError;
int get total => throw _privateConstructorUsedError;
@JsonKey(ignore: true)
$InProgressCopyWith<InProgress> get copyWith =>
throw _privateConstructorUsedError;
@@ -453,7 +422,7 @@ class _$SuccessCopyWithImpl<$Res> extends _$UploadStateCopyWithImpl<$Res>
/// @nodoc
@JsonSerializable()
class _$Success implements Success {
const _$Success({String? $type}) : $type = $type ?? 'success';
const _$Success({final String? $type}) : $type = $type ?? 'success';
factory _$Success.fromJson(Map<String, dynamic> json) =>
_$$SuccessFromJson(json);
@@ -472,6 +441,7 @@ class _$Success implements Success {
(other.runtimeType == runtimeType && other is Success);
}
@JsonKey(ignore: true)
@override
int get hashCode => runtimeType.hashCode;
@@ -593,7 +563,7 @@ class _$FailedCopyWithImpl<$Res> extends _$UploadStateCopyWithImpl<$Res>
/// @nodoc
@JsonSerializable()
class _$Failed implements Failed {
const _$Failed({required this.error, String? $type})
const _$Failed({required this.error, final String? $type})
: $type = $type ?? 'failed';
factory _$Failed.fromJson(Map<String, dynamic> json) =>
@@ -618,6 +588,7 @@ class _$Failed implements Failed {
const DeepCollectionEquality().equals(other.error, error));
}
@JsonKey(ignore: true)
@override
int get hashCode =>
Object.hash(runtimeType, const DeepCollectionEquality().hash(error));
@@ -708,11 +679,11 @@ class _$Failed implements Failed {
}
abstract class Failed implements UploadState {
const factory Failed({required String error}) = _$Failed;
const factory Failed({required final String error}) = _$Failed;
factory Failed.fromJson(Map<String, dynamic> json) = _$Failed.fromJson;
String get error;
String get error => throw _privateConstructorUsedError;
@JsonKey(ignore: true)
$FailedCopyWith<Failed> get copyWith => throw _privateConstructorUsedError;
}
@@ -46,11 +46,13 @@ class StreamInfoTile extends StatelessWidget {
@override
Widget build(BuildContext context) {
final chatThemeData = StreamChatTheme.of(context);
return PortalEntry(
return PortalTarget(
visible: showMessage,
portalAnchor: tileAnchor ?? Alignment.topCenter,
childAnchor: childAnchor ?? Alignment.bottomCenter,
portal: Container(
anchor: Aligned(
follower: tileAnchor ?? Alignment.topCenter,
target: childAnchor ?? Alignment.bottomCenter,
),
portalFollower: Container(
height: 25,
color: backgroundColor ??
chatThemeData.colorTheme.textLowEmphasis.withOpacity(0.9),
@@ -659,9 +659,9 @@ class _StreamMessageWidgetState extends State<StreamMessageWidget>
if (widget.showUserAvatar == DisplayWidget.hide)
SizedBox(width: avatarWidth + 4),
Flexible(
child: PortalEntry(
child: PortalTarget(
visible: showReactions,
portal: showReactions
portalFollower: showReactions
? Container(
transform:
Matrix4.translationValues(
@@ -677,10 +677,16 @@ class _StreamMessageWidgetState extends State<StreamMessageWidget>
),
)
: null,
portalAnchor:
Alignment(widget.reverse ? 1 : -1, -1),
childAnchor:
Alignment(widget.reverse ? -1 : 1, -1),
anchor: Aligned(
follower: Alignment(
widget.reverse ? 1 : -1,
-1,
),
target: Alignment(
widget.reverse ? -1 : 1,
-1,
),
),
child: Stack(
clipBehavior: Clip.none,
children: [
@@ -41,11 +41,13 @@ class StreamMultiOverlay extends StatelessWidget {
final visibleOverlay =
overlayOptions.firstWhereOrNull((element) => element.visible);
return PortalEntry(
childAnchor: childAnchor,
portalAnchor: overlayAnchor,
return PortalTarget(
anchor: Aligned(
follower: overlayAnchor ?? Alignment.center,
target: childAnchor ?? Alignment.center,
),
visible: visibleOverlay != null,
portal: visibleOverlay?.widget,
portalFollower: visibleOverlay?.widget,
child: child,
);
}
+1 -1
View File
@@ -21,7 +21,7 @@ dependencies:
flutter:
sdk: flutter
flutter_markdown: ^0.6.1
flutter_portal: ^0.4.0
flutter_portal: ^1.0.0
flutter_slidable: ^1.2.0
flutter_svg: ^1.0.1
http_parser: ^4.0.0
@@ -390,9 +390,10 @@ class ChannelsCompanion extends UpdateCompanion<ChannelEntity> {
class $ChannelsTable extends Channels
with TableInfo<$ChannelsTable, ChannelEntity> {
final GeneratedDatabase _db;
@override
final GeneratedDatabase attachedDatabase;
final String? _alias;
$ChannelsTable(this._db, [this._alias]);
$ChannelsTable(this.attachedDatabase, [this._alias]);
final VerificationMeta _idMeta = const VerificationMeta('id');
@override
late final GeneratedColumn<String?> id = GeneratedColumn<String?>(
@@ -557,7 +558,7 @@ class $ChannelsTable extends Channels
@override
$ChannelsTable createAlias(String alias) {
return $ChannelsTable(_db, alias);
return $ChannelsTable(attachedDatabase, alias);
}
static TypeConverter<Map<String, dynamic>, String> $converter0 =
@@ -1337,9 +1338,10 @@ class MessagesCompanion extends UpdateCompanion<MessageEntity> {
class $MessagesTable extends Messages
with TableInfo<$MessagesTable, MessageEntity> {
final GeneratedDatabase _db;
@override
final GeneratedDatabase attachedDatabase;
final String? _alias;
$MessagesTable(this._db, [this._alias]);
$MessagesTable(this.attachedDatabase, [this._alias]);
final VerificationMeta _idMeta = const VerificationMeta('id');
@override
late final GeneratedColumn<String?> id = GeneratedColumn<String?>(
@@ -1647,7 +1649,7 @@ class $MessagesTable extends Messages
@override
$MessagesTable createAlias(String alias) {
return $MessagesTable(_db, alias);
return $MessagesTable(attachedDatabase, alias);
}
static TypeConverter<List<String>, String> $converter0 =
@@ -2442,9 +2444,10 @@ class PinnedMessagesCompanion extends UpdateCompanion<PinnedMessageEntity> {
class $PinnedMessagesTable extends PinnedMessages
with TableInfo<$PinnedMessagesTable, PinnedMessageEntity> {
final GeneratedDatabase _db;
@override
final GeneratedDatabase attachedDatabase;
final String? _alias;
$PinnedMessagesTable(this._db, [this._alias]);
$PinnedMessagesTable(this.attachedDatabase, [this._alias]);
final VerificationMeta _idMeta = const VerificationMeta('id');
@override
late final GeneratedColumn<String?> id = GeneratedColumn<String?>(
@@ -2755,7 +2758,7 @@ class $PinnedMessagesTable extends PinnedMessages
@override
$PinnedMessagesTable createAlias(String alias) {
return $PinnedMessagesTable(_db, alias);
return $PinnedMessagesTable(attachedDatabase, alias);
}
static TypeConverter<List<String>, String> $converter0 =
@@ -3005,9 +3008,10 @@ class PinnedMessageReactionsCompanion
class $PinnedMessageReactionsTable extends PinnedMessageReactions
with TableInfo<$PinnedMessageReactionsTable, PinnedMessageReactionEntity> {
final GeneratedDatabase _db;
@override
final GeneratedDatabase attachedDatabase;
final String? _alias;
$PinnedMessageReactionsTable(this._db, [this._alias]);
$PinnedMessageReactionsTable(this.attachedDatabase, [this._alias]);
final VerificationMeta _userIdMeta = const VerificationMeta('userId');
@override
late final GeneratedColumn<String?> userId = GeneratedColumn<String?>(
@@ -3100,7 +3104,7 @@ class $PinnedMessageReactionsTable extends PinnedMessageReactions
@override
$PinnedMessageReactionsTable createAlias(String alias) {
return $PinnedMessageReactionsTable(_db, alias);
return $PinnedMessageReactionsTable(attachedDatabase, alias);
}
static TypeConverter<Map<String, Object?>, String> $converter0 =
@@ -3334,9 +3338,10 @@ class ReactionsCompanion extends UpdateCompanion<ReactionEntity> {
class $ReactionsTable extends Reactions
with TableInfo<$ReactionsTable, ReactionEntity> {
final GeneratedDatabase _db;
@override
final GeneratedDatabase attachedDatabase;
final String? _alias;
$ReactionsTable(this._db, [this._alias]);
$ReactionsTable(this.attachedDatabase, [this._alias]);
final VerificationMeta _userIdMeta = const VerificationMeta('userId');
@override
late final GeneratedColumn<String?> userId = GeneratedColumn<String?>(
@@ -3426,7 +3431,7 @@ class $ReactionsTable extends Reactions
@override
$ReactionsTable createAlias(String alias) {
return $ReactionsTable(_db, alias);
return $ReactionsTable(attachedDatabase, alias);
}
static TypeConverter<Map<String, Object?>, String> $converter0 =
@@ -3736,9 +3741,10 @@ class UsersCompanion extends UpdateCompanion<UserEntity> {
}
class $UsersTable extends Users with TableInfo<$UsersTable, UserEntity> {
final GeneratedDatabase _db;
@override
final GeneratedDatabase attachedDatabase;
final String? _alias;
$UsersTable(this._db, [this._alias]);
$UsersTable(this.attachedDatabase, [this._alias]);
final VerificationMeta _idMeta = const VerificationMeta('id');
@override
late final GeneratedColumn<String?> id = GeneratedColumn<String?>(
@@ -3865,7 +3871,7 @@ class $UsersTable extends Users with TableInfo<$UsersTable, UserEntity> {
@override
$UsersTable createAlias(String alias) {
return $UsersTable(_db, alias);
return $UsersTable(attachedDatabase, alias);
}
static TypeConverter<Map<String, Object?>, String> $converter0 =
@@ -4235,9 +4241,10 @@ class MembersCompanion extends UpdateCompanion<MemberEntity> {
class $MembersTable extends Members
with TableInfo<$MembersTable, MemberEntity> {
final GeneratedDatabase _db;
@override
final GeneratedDatabase attachedDatabase;
final String? _alias;
$MembersTable(this._db, [this._alias]);
$MembersTable(this.attachedDatabase, [this._alias]);
final VerificationMeta _userIdMeta = const VerificationMeta('userId');
@override
late final GeneratedColumn<String?> userId = GeneratedColumn<String?>(
@@ -4409,7 +4416,7 @@ class $MembersTable extends Members
@override
$MembersTable createAlias(String alias) {
return $MembersTable(_db, alias);
return $MembersTable(attachedDatabase, alias);
}
}
@@ -4585,9 +4592,10 @@ class ReadsCompanion extends UpdateCompanion<ReadEntity> {
}
class $ReadsTable extends Reads with TableInfo<$ReadsTable, ReadEntity> {
final GeneratedDatabase _db;
@override
final GeneratedDatabase attachedDatabase;
final String? _alias;
$ReadsTable(this._db, [this._alias]);
$ReadsTable(this.attachedDatabase, [this._alias]);
final VerificationMeta _lastReadMeta = const VerificationMeta('lastRead');
@override
late final GeneratedColumn<DateTime?> lastRead = GeneratedColumn<DateTime?>(
@@ -4664,7 +4672,7 @@ class $ReadsTable extends Reads with TableInfo<$ReadsTable, ReadEntity> {
@override
$ReadsTable createAlias(String alias) {
return $ReadsTable(_db, alias);
return $ReadsTable(attachedDatabase, alias);
}
}
@@ -4789,9 +4797,10 @@ class ChannelQueriesCompanion extends UpdateCompanion<ChannelQueryEntity> {
class $ChannelQueriesTable extends ChannelQueries
with TableInfo<$ChannelQueriesTable, ChannelQueryEntity> {
final GeneratedDatabase _db;
@override
final GeneratedDatabase attachedDatabase;
final String? _alias;
$ChannelQueriesTable(this._db, [this._alias]);
$ChannelQueriesTable(this.attachedDatabase, [this._alias]);
final VerificationMeta _queryHashMeta = const VerificationMeta('queryHash');
@override
late final GeneratedColumn<String?> queryHash = GeneratedColumn<String?>(
@@ -4840,7 +4849,7 @@ class $ChannelQueriesTable extends ChannelQueries
@override
$ChannelQueriesTable createAlias(String alias) {
return $ChannelQueriesTable(_db, alias);
return $ChannelQueriesTable(attachedDatabase, alias);
}
}
@@ -5105,9 +5114,10 @@ class ConnectionEventsCompanion extends UpdateCompanion<ConnectionEventEntity> {
class $ConnectionEventsTable extends ConnectionEvents
with TableInfo<$ConnectionEventsTable, ConnectionEventEntity> {
final GeneratedDatabase _db;
@override
final GeneratedDatabase attachedDatabase;
final String? _alias;
$ConnectionEventsTable(this._db, [this._alias]);
$ConnectionEventsTable(this.attachedDatabase, [this._alias]);
final VerificationMeta _idMeta = const VerificationMeta('id');
@override
late final GeneratedColumn<int?> id = GeneratedColumn<int?>(
@@ -5215,7 +5225,7 @@ class $ConnectionEventsTable extends ConnectionEvents
@override
$ConnectionEventsTable createAlias(String alias) {
return $ConnectionEventsTable(_db, alias);
return $ConnectionEventsTable(attachedDatabase, alias);
}
static TypeConverter<Map<String, dynamic>, String> $converter0 =
@@ -10,7 +10,7 @@ environment:
flutter: ">=1.17.0"
dependencies:
drift: ">=1.3.0 < 1.4.0"
drift: ^1.5.0
flutter:
sdk: flutter
logging: ^1.0.1
@@ -24,8 +24,8 @@ dependencies:
dev_dependencies:
build_runner: ^2.0.1
dart_code_metrics: ^4.4.0
drift_dev: ">=1.3.0 < 1.4.0"
drift_dev: ^1.5.2
flutter_test:
sdk: flutter
mocktail: ^0.2.0
mocktail: ^0.3.0