refactor(persistence): moor to drift name change migration.
Signed-off-by: xsahil03x <[email protected]>
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
targets:
|
targets:
|
||||||
$default:
|
$default:
|
||||||
builders:
|
builders:
|
||||||
moor_generator:
|
drift_dev:
|
||||||
options:
|
options:
|
||||||
generate_connect_constructor: true
|
generate_connect_constructor: true
|
||||||
data_class_to_companions: false
|
data_class_to_companions: false
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
|
|
||||||
/// Maps a [List] of type [T] into a [String] understood
|
/// Maps a [List] of type [T] into a [String] understood
|
||||||
/// by the sqlite backend.
|
/// by the sqlite backend.
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
|
|
||||||
/// Maps a [Map] of type [String], [T] into a [String] understood
|
/// Maps a [Map] of type [String], [T] into a [String] understood
|
||||||
/// by the sqlite backend.
|
/// by the sqlite backend.
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
|
|
||||||
/// Maps a [MessageSendingStatus] into a [int] understood
|
/// Maps a [MessageSendingStatus] into a [int] understood
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/channels.dart';
|
import 'package:stream_chat_persistence/src/entity/channels.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/users.dart';
|
import 'package:stream_chat_persistence/src/entity/users.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
||||||
@@ -8,11 +8,11 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
|||||||
part 'channel_dao.g.dart';
|
part 'channel_dao.g.dart';
|
||||||
|
|
||||||
/// The Data Access Object for operations in [Channels] table.
|
/// The Data Access Object for operations in [Channels] table.
|
||||||
@UseDao(tables: [Channels, Users])
|
@DriftAccessor(tables: [Channels, Users])
|
||||||
class ChannelDao extends DatabaseAccessor<MoorChatDatabase>
|
class ChannelDao extends DatabaseAccessor<DriftChatDatabase>
|
||||||
with _$ChannelDaoMixin {
|
with _$ChannelDaoMixin {
|
||||||
/// Creates a new channel dao instance
|
/// Creates a new channel dao instance
|
||||||
ChannelDao(MoorChatDatabase db) : super(db);
|
ChannelDao(DriftChatDatabase db) : super(db);
|
||||||
|
|
||||||
/// Get channel by cid
|
/// Get channel by cid
|
||||||
Future<ChannelModel?> getChannelByCid(String cid) async =>
|
Future<ChannelModel?> getChannelByCid(String cid) async =>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ part of 'channel_dao.dart';
|
|||||||
// DaoGenerator
|
// DaoGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
mixin _$ChannelDaoMixin on DatabaseAccessor<MoorChatDatabase> {
|
mixin _$ChannelDaoMixin on DatabaseAccessor<DriftChatDatabase> {
|
||||||
$ChannelsTable get channels => attachedDatabase.channels;
|
$ChannelsTable get channels => attachedDatabase.channels;
|
||||||
$UsersTable get users => attachedDatabase.users;
|
$UsersTable get users => attachedDatabase.users;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/channel_queries.dart';
|
import 'package:stream_chat_persistence/src/entity/channel_queries.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/channels.dart';
|
import 'package:stream_chat_persistence/src/entity/channels.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/users.dart';
|
import 'package:stream_chat_persistence/src/entity/users.dart';
|
||||||
@@ -11,11 +11,11 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
|||||||
part 'channel_query_dao.g.dart';
|
part 'channel_query_dao.g.dart';
|
||||||
|
|
||||||
/// The Data Access Object for operations in [ChannelQueries] table.
|
/// The Data Access Object for operations in [ChannelQueries] table.
|
||||||
@UseDao(tables: [ChannelQueries, Channels, Users])
|
@DriftAccessor(tables: [ChannelQueries, Channels, Users])
|
||||||
class ChannelQueryDao extends DatabaseAccessor<MoorChatDatabase>
|
class ChannelQueryDao extends DatabaseAccessor<DriftChatDatabase>
|
||||||
with _$ChannelQueryDaoMixin {
|
with _$ChannelQueryDaoMixin {
|
||||||
/// Creates a new channel query dao instance
|
/// Creates a new channel query dao instance
|
||||||
ChannelQueryDao(MoorChatDatabase db) : super(db);
|
ChannelQueryDao(DriftChatDatabase db) : super(db);
|
||||||
|
|
||||||
String _computeHash(Filter? filter) {
|
String _computeHash(Filter? filter) {
|
||||||
if (filter == null) {
|
if (filter == null) {
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ part of 'channel_query_dao.dart';
|
|||||||
// DaoGenerator
|
// DaoGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
mixin _$ChannelQueryDaoMixin on DatabaseAccessor<MoorChatDatabase> {
|
mixin _$ChannelQueryDaoMixin on DatabaseAccessor<DriftChatDatabase> {
|
||||||
$ChannelQueriesTable get channelQueries => attachedDatabase.channelQueries;
|
$ChannelQueriesTable get channelQueries => attachedDatabase.channelQueries;
|
||||||
$ChannelsTable get channels => attachedDatabase.channels;
|
$ChannelsTable get channels => attachedDatabase.channels;
|
||||||
$UsersTable get users => attachedDatabase.users;
|
$UsersTable get users => attachedDatabase.users;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/connection_events.dart';
|
import 'package:stream_chat_persistence/src/entity/connection_events.dart';
|
||||||
|
|
||||||
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
||||||
@@ -8,11 +8,11 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
|||||||
part 'connection_event_dao.g.dart';
|
part 'connection_event_dao.g.dart';
|
||||||
|
|
||||||
/// The Data Access Object for operations in [ConnectionEvents] table.
|
/// The Data Access Object for operations in [ConnectionEvents] table.
|
||||||
@UseDao(tables: [ConnectionEvents])
|
@DriftAccessor(tables: [ConnectionEvents])
|
||||||
class ConnectionEventDao extends DatabaseAccessor<MoorChatDatabase>
|
class ConnectionEventDao extends DatabaseAccessor<DriftChatDatabase>
|
||||||
with _$ConnectionEventDaoMixin {
|
with _$ConnectionEventDaoMixin {
|
||||||
/// Creates a new connection event dao instance
|
/// Creates a new connection event dao instance
|
||||||
ConnectionEventDao(MoorChatDatabase db) : super(db);
|
ConnectionEventDao(DriftChatDatabase db) : super(db);
|
||||||
|
|
||||||
/// Get the latest stored connection event
|
/// Get the latest stored connection event
|
||||||
Future<Event?> get connectionEvent => select(connectionEvents)
|
Future<Event?> get connectionEvent => select(connectionEvents)
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ part of 'connection_event_dao.dart';
|
|||||||
// DaoGenerator
|
// DaoGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
mixin _$ConnectionEventDaoMixin on DatabaseAccessor<MoorChatDatabase> {
|
mixin _$ConnectionEventDaoMixin on DatabaseAccessor<DriftChatDatabase> {
|
||||||
$ConnectionEventsTable get connectionEvents =>
|
$ConnectionEventsTable get connectionEvents =>
|
||||||
attachedDatabase.connectionEvents;
|
attachedDatabase.connectionEvents;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
import 'package:stream_chat_persistence/src/entity/members.dart';
|
import 'package:stream_chat_persistence/src/entity/members.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/users.dart';
|
import 'package:stream_chat_persistence/src/entity/users.dart';
|
||||||
@@ -10,11 +10,11 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
|||||||
part 'member_dao.g.dart';
|
part 'member_dao.g.dart';
|
||||||
|
|
||||||
/// The Data Access Object for operations in [Members] table.
|
/// The Data Access Object for operations in [Members] table.
|
||||||
@UseDao(tables: [Members, Users])
|
@DriftAccessor(tables: [Members, Users])
|
||||||
class MemberDao extends DatabaseAccessor<MoorChatDatabase>
|
class MemberDao extends DatabaseAccessor<DriftChatDatabase>
|
||||||
with _$MemberDaoMixin {
|
with _$MemberDaoMixin {
|
||||||
/// Creates a new member dao instance
|
/// Creates a new member dao instance
|
||||||
MemberDao(MoorChatDatabase db) : super(db);
|
MemberDao(DriftChatDatabase db) : super(db);
|
||||||
|
|
||||||
/// Get all members where [Members.channelCid] matches [cid]
|
/// Get all members where [Members.channelCid] matches [cid]
|
||||||
Future<List<Member>> getMembersByCid(String cid) async =>
|
Future<List<Member>> getMembersByCid(String cid) async =>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ part of 'member_dao.dart';
|
|||||||
// DaoGenerator
|
// DaoGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
mixin _$MemberDaoMixin on DatabaseAccessor<MoorChatDatabase> {
|
mixin _$MemberDaoMixin on DatabaseAccessor<DriftChatDatabase> {
|
||||||
$MembersTable get members => attachedDatabase.members;
|
$MembersTable get members => attachedDatabase.members;
|
||||||
$UsersTable get users => attachedDatabase.users;
|
$UsersTable get users => attachedDatabase.users;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/messages.dart';
|
import 'package:stream_chat_persistence/src/entity/messages.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/users.dart';
|
import 'package:stream_chat_persistence/src/entity/users.dart';
|
||||||
|
|
||||||
@@ -9,13 +9,13 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
|||||||
part 'message_dao.g.dart';
|
part 'message_dao.g.dart';
|
||||||
|
|
||||||
/// The Data Access Object for operations in [Messages] table.
|
/// The Data Access Object for operations in [Messages] table.
|
||||||
@UseDao(tables: [Messages, Users])
|
@DriftAccessor(tables: [Messages, Users])
|
||||||
class MessageDao extends DatabaseAccessor<MoorChatDatabase>
|
class MessageDao extends DatabaseAccessor<DriftChatDatabase>
|
||||||
with _$MessageDaoMixin {
|
with _$MessageDaoMixin {
|
||||||
/// Creates a new message dao instance
|
/// Creates a new message dao instance
|
||||||
MessageDao(this._db) : super(_db);
|
MessageDao(this._db) : super(_db);
|
||||||
|
|
||||||
final MoorChatDatabase _db;
|
final DriftChatDatabase _db;
|
||||||
|
|
||||||
$UsersTable get _users => alias(users, 'users');
|
$UsersTable get _users => alias(users, 'users');
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ part of 'message_dao.dart';
|
|||||||
// DaoGenerator
|
// DaoGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
mixin _$MessageDaoMixin on DatabaseAccessor<MoorChatDatabase> {
|
mixin _$MessageDaoMixin on DatabaseAccessor<DriftChatDatabase> {
|
||||||
$MessagesTable get messages => attachedDatabase.messages;
|
$MessagesTable get messages => attachedDatabase.messages;
|
||||||
$UsersTable get users => attachedDatabase.users;
|
$UsersTable get users => attachedDatabase.users;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/pinned_messages.dart';
|
import 'package:stream_chat_persistence/src/entity/pinned_messages.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/users.dart';
|
import 'package:stream_chat_persistence/src/entity/users.dart';
|
||||||
|
|
||||||
@@ -9,13 +9,13 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
|||||||
part 'pinned_message_dao.g.dart';
|
part 'pinned_message_dao.g.dart';
|
||||||
|
|
||||||
/// The Data Access Object for operations in [Messages] table.
|
/// The Data Access Object for operations in [Messages] table.
|
||||||
@UseDao(tables: [PinnedMessages, Users])
|
@DriftAccessor(tables: [PinnedMessages, Users])
|
||||||
class PinnedMessageDao extends DatabaseAccessor<MoorChatDatabase>
|
class PinnedMessageDao extends DatabaseAccessor<DriftChatDatabase>
|
||||||
with _$PinnedMessageDaoMixin {
|
with _$PinnedMessageDaoMixin {
|
||||||
/// Creates a new message dao instance
|
/// Creates a new message dao instance
|
||||||
PinnedMessageDao(this._db) : super(_db);
|
PinnedMessageDao(this._db) : super(_db);
|
||||||
|
|
||||||
final MoorChatDatabase _db;
|
final DriftChatDatabase _db;
|
||||||
|
|
||||||
$UsersTable get _users => alias(users, 'users');
|
$UsersTable get _users => alias(users, 'users');
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ part of 'pinned_message_dao.dart';
|
|||||||
// DaoGenerator
|
// DaoGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
mixin _$PinnedMessageDaoMixin on DatabaseAccessor<MoorChatDatabase> {
|
mixin _$PinnedMessageDaoMixin on DatabaseAccessor<DriftChatDatabase> {
|
||||||
$PinnedMessagesTable get pinnedMessages => attachedDatabase.pinnedMessages;
|
$PinnedMessagesTable get pinnedMessages => attachedDatabase.pinnedMessages;
|
||||||
$UsersTable get users => attachedDatabase.users;
|
$UsersTable get users => attachedDatabase.users;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/pinned_message_reactions.dart';
|
import 'package:stream_chat_persistence/src/entity/pinned_message_reactions.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/users.dart';
|
import 'package:stream_chat_persistence/src/entity/users.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
||||||
@@ -8,11 +8,11 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
|||||||
part 'pinned_message_reaction_dao.g.dart';
|
part 'pinned_message_reaction_dao.g.dart';
|
||||||
|
|
||||||
/// The Data Access Object for operations in [PinnedMessageReactions] table.
|
/// The Data Access Object for operations in [PinnedMessageReactions] table.
|
||||||
@UseDao(tables: [PinnedMessageReactions, Users])
|
@DriftAccessor(tables: [PinnedMessageReactions, Users])
|
||||||
class PinnedMessageReactionDao extends DatabaseAccessor<MoorChatDatabase>
|
class PinnedMessageReactionDao extends DatabaseAccessor<DriftChatDatabase>
|
||||||
with _$PinnedMessageReactionDaoMixin {
|
with _$PinnedMessageReactionDaoMixin {
|
||||||
/// Creates a new reaction dao instance
|
/// Creates a new reaction dao instance
|
||||||
PinnedMessageReactionDao(MoorChatDatabase db) : super(db);
|
PinnedMessageReactionDao(DriftChatDatabase db) : super(db);
|
||||||
|
|
||||||
/// Returns all the reactions of a particular message by matching
|
/// Returns all the reactions of a particular message by matching
|
||||||
/// [Reactions.messageId] with [messageId]
|
/// [Reactions.messageId] with [messageId]
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ part of 'pinned_message_reaction_dao.dart';
|
|||||||
// DaoGenerator
|
// DaoGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
mixin _$PinnedMessageReactionDaoMixin on DatabaseAccessor<MoorChatDatabase> {
|
mixin _$PinnedMessageReactionDaoMixin on DatabaseAccessor<DriftChatDatabase> {
|
||||||
$PinnedMessageReactionsTable get pinnedMessageReactions =>
|
$PinnedMessageReactionsTable get pinnedMessageReactions =>
|
||||||
attachedDatabase.pinnedMessageReactions;
|
attachedDatabase.pinnedMessageReactions;
|
||||||
$UsersTable get users => attachedDatabase.users;
|
$UsersTable get users => attachedDatabase.users;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/reactions.dart';
|
import 'package:stream_chat_persistence/src/entity/reactions.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/users.dart';
|
import 'package:stream_chat_persistence/src/entity/users.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
||||||
@@ -8,11 +8,11 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
|||||||
part 'reaction_dao.g.dart';
|
part 'reaction_dao.g.dart';
|
||||||
|
|
||||||
/// The Data Access Object for operations in [Reactions] table.
|
/// The Data Access Object for operations in [Reactions] table.
|
||||||
@UseDao(tables: [Reactions, Users])
|
@DriftAccessor(tables: [Reactions, Users])
|
||||||
class ReactionDao extends DatabaseAccessor<MoorChatDatabase>
|
class ReactionDao extends DatabaseAccessor<DriftChatDatabase>
|
||||||
with _$ReactionDaoMixin {
|
with _$ReactionDaoMixin {
|
||||||
/// Creates a new reaction dao instance
|
/// Creates a new reaction dao instance
|
||||||
ReactionDao(MoorChatDatabase db) : super(db);
|
ReactionDao(DriftChatDatabase db) : super(db);
|
||||||
|
|
||||||
/// Returns all the reactions of a particular message by matching
|
/// Returns all the reactions of a particular message by matching
|
||||||
/// [Reactions.messageId] with [messageId]
|
/// [Reactions.messageId] with [messageId]
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ part of 'reaction_dao.dart';
|
|||||||
// DaoGenerator
|
// DaoGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
mixin _$ReactionDaoMixin on DatabaseAccessor<MoorChatDatabase> {
|
mixin _$ReactionDaoMixin on DatabaseAccessor<DriftChatDatabase> {
|
||||||
$ReactionsTable get reactions => attachedDatabase.reactions;
|
$ReactionsTable get reactions => attachedDatabase.reactions;
|
||||||
$UsersTable get users => attachedDatabase.users;
|
$UsersTable get users => attachedDatabase.users;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/reads.dart';
|
import 'package:stream_chat_persistence/src/entity/reads.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/users.dart';
|
import 'package:stream_chat_persistence/src/entity/users.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
||||||
@@ -8,10 +8,10 @@ import 'package:stream_chat_persistence/src/mapper/mapper.dart';
|
|||||||
part 'read_dao.g.dart';
|
part 'read_dao.g.dart';
|
||||||
|
|
||||||
/// The Data Access Object for operations in [Reads] table.
|
/// The Data Access Object for operations in [Reads] table.
|
||||||
@UseDao(tables: [Reads, Users])
|
@DriftAccessor(tables: [Reads, Users])
|
||||||
class ReadDao extends DatabaseAccessor<MoorChatDatabase> with _$ReadDaoMixin {
|
class ReadDao extends DatabaseAccessor<DriftChatDatabase> with _$ReadDaoMixin {
|
||||||
/// Creates a new read dao instance
|
/// Creates a new read dao instance
|
||||||
ReadDao(MoorChatDatabase db) : super(db);
|
ReadDao(DriftChatDatabase db) : super(db);
|
||||||
|
|
||||||
/// Get all reads where [Reads.channelCid] matches [cid]
|
/// Get all reads where [Reads.channelCid] matches [cid]
|
||||||
Future<List<Read>> getReadsByCid(String cid) async => (select(reads).join([
|
Future<List<Read>> getReadsByCid(String cid) async => (select(reads).join([
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ part of 'read_dao.dart';
|
|||||||
// DaoGenerator
|
// DaoGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
mixin _$ReadDaoMixin on DatabaseAccessor<MoorChatDatabase> {
|
mixin _$ReadDaoMixin on DatabaseAccessor<DriftChatDatabase> {
|
||||||
$ReadsTable get reads => attachedDatabase.reads;
|
$ReadsTable get reads => attachedDatabase.reads;
|
||||||
$UsersTable get users => attachedDatabase.users;
|
$UsersTable get users => attachedDatabase.users;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,16 +1,16 @@
|
|||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/entity/users.dart';
|
import 'package:stream_chat_persistence/src/entity/users.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/user_mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/user_mapper.dart';
|
||||||
|
|
||||||
part 'user_dao.g.dart';
|
part 'user_dao.g.dart';
|
||||||
|
|
||||||
/// The Data Access Object for operations in [Users] table.
|
/// The Data Access Object for operations in [Users] table.
|
||||||
@UseDao(tables: [Users])
|
@DriftAccessor(tables: [Users])
|
||||||
class UserDao extends DatabaseAccessor<MoorChatDatabase> with _$UserDaoMixin {
|
class UserDao extends DatabaseAccessor<DriftChatDatabase> with _$UserDaoMixin {
|
||||||
/// Creates a new user dao instance
|
/// Creates a new user dao instance
|
||||||
UserDao(MoorChatDatabase db) : super(db);
|
UserDao(DriftChatDatabase db) : super(db);
|
||||||
|
|
||||||
/// Updates the users data with the new [userList] data
|
/// Updates the users data with the new [userList] data
|
||||||
Future<void> updateUsers(List<User> userList) => batch(
|
Future<void> updateUsers(List<User> userList) => batch(
|
||||||
|
|||||||
@@ -6,6 +6,6 @@ part of 'user_dao.dart';
|
|||||||
// DaoGenerator
|
// DaoGenerator
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
mixin _$UserDaoMixin on DatabaseAccessor<MoorChatDatabase> {
|
mixin _$UserDaoMixin on DatabaseAccessor<DriftChatDatabase> {
|
||||||
$UsersTable get users => attachedDatabase.users;
|
$UsersTable get users => attachedDatabase.users;
|
||||||
}
|
}
|
||||||
|
|||||||
+6
-6
@@ -1,4 +1,4 @@
|
|||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
|
|
||||||
import 'package:stream_chat_persistence/src/converter/converter.dart';
|
import 'package:stream_chat_persistence/src/converter/converter.dart';
|
||||||
@@ -7,10 +7,10 @@ import 'package:stream_chat_persistence/src/entity/entity.dart';
|
|||||||
|
|
||||||
export 'shared/shared_db.dart';
|
export 'shared/shared_db.dart';
|
||||||
|
|
||||||
part 'moor_chat_database.g.dart';
|
part 'drift_chat_database.g.dart';
|
||||||
|
|
||||||
/// A chat database implemented using moor
|
/// A chat database implemented using moor
|
||||||
@UseMoor(
|
@DriftDatabase(
|
||||||
tables: [
|
tables: [
|
||||||
Channels,
|
Channels,
|
||||||
Messages,
|
Messages,
|
||||||
@@ -36,15 +36,15 @@ part 'moor_chat_database.g.dart';
|
|||||||
ConnectionEventDao,
|
ConnectionEventDao,
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
class MoorChatDatabase extends _$MoorChatDatabase {
|
class DriftChatDatabase extends _$DriftChatDatabase {
|
||||||
/// Creates a new moor chat database instance
|
/// Creates a new moor chat database instance
|
||||||
MoorChatDatabase(
|
DriftChatDatabase(
|
||||||
this._userId,
|
this._userId,
|
||||||
QueryExecutor executor,
|
QueryExecutor executor,
|
||||||
) : super(executor);
|
) : super(executor);
|
||||||
|
|
||||||
/// Instantiate a new database instance
|
/// Instantiate a new database instance
|
||||||
MoorChatDatabase.connect(
|
DriftChatDatabase.connect(
|
||||||
this._userId,
|
this._userId,
|
||||||
DatabaseConnection connection,
|
DatabaseConnection connection,
|
||||||
) : super.connect(connection);
|
) : super.connect(connection);
|
||||||
+133
-242
@@ -1,6 +1,6 @@
|
|||||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||||
|
|
||||||
part of 'moor_chat_database.dart';
|
part of 'drift_chat_database.dart';
|
||||||
|
|
||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
// MoorGenerator
|
// MoorGenerator
|
||||||
@@ -56,9 +56,7 @@ class ChannelEntity extends DataClass implements Insertable<ChannelEntity> {
|
|||||||
required this.memberCount,
|
required this.memberCount,
|
||||||
this.createdById,
|
this.createdById,
|
||||||
this.extraData});
|
this.extraData});
|
||||||
factory ChannelEntity.fromData(
|
factory ChannelEntity.fromData(Map<String, dynamic> data, {String? prefix}) {
|
||||||
Map<String, dynamic> data, GeneratedDatabase db,
|
|
||||||
{String? prefix}) {
|
|
||||||
final effectivePrefix = prefix ?? '';
|
final effectivePrefix = prefix ?? '';
|
||||||
return ChannelEntity(
|
return ChannelEntity(
|
||||||
id: const StringType()
|
id: const StringType()
|
||||||
@@ -119,7 +117,7 @@ class ChannelEntity extends DataClass implements Insertable<ChannelEntity> {
|
|||||||
|
|
||||||
factory ChannelEntity.fromJson(Map<String, dynamic> json,
|
factory ChannelEntity.fromJson(Map<String, dynamic> json,
|
||||||
{ValueSerializer? serializer}) {
|
{ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return ChannelEntity(
|
return ChannelEntity(
|
||||||
id: serializer.fromJson<String>(json['id']),
|
id: serializer.fromJson<String>(json['id']),
|
||||||
type: serializer.fromJson<String>(json['type']),
|
type: serializer.fromJson<String>(json['type']),
|
||||||
@@ -137,7 +135,7 @@ class ChannelEntity extends DataClass implements Insertable<ChannelEntity> {
|
|||||||
}
|
}
|
||||||
@override
|
@override
|
||||||
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return <String, dynamic>{
|
return <String, dynamic>{
|
||||||
'id': serializer.toJson<String>(id),
|
'id': serializer.toJson<String>(id),
|
||||||
'type': serializer.toJson<String>(type),
|
'type': serializer.toJson<String>(type),
|
||||||
@@ -202,28 +200,8 @@ class ChannelEntity extends DataClass implements Insertable<ChannelEntity> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get hashCode => $mrjf($mrjc(
|
int get hashCode => Object.hash(id, type, cid, config, frozen, lastMessageAt,
|
||||||
id.hashCode,
|
createdAt, updatedAt, deletedAt, memberCount, createdById, extraData);
|
||||||
$mrjc(
|
|
||||||
type.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
cid.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
config.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
frozen.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
lastMessageAt.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
createdAt.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
updatedAt.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
deletedAt.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
memberCount.hashCode,
|
|
||||||
$mrjc(createdById.hashCode,
|
|
||||||
extraData.hashCode))))))))))));
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) =>
|
bool operator ==(Object other) =>
|
||||||
identical(this, other) ||
|
identical(this, other) ||
|
||||||
@@ -561,7 +539,7 @@ class $ChannelsTable extends Channels
|
|||||||
Set<GeneratedColumn> get $primaryKey => {cid};
|
Set<GeneratedColumn> get $primaryKey => {cid};
|
||||||
@override
|
@override
|
||||||
ChannelEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
ChannelEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
||||||
return ChannelEntity.fromData(data, _db,
|
return ChannelEntity.fromData(data,
|
||||||
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -678,9 +656,7 @@ class MessageEntity extends DataClass implements Insertable<MessageEntity> {
|
|||||||
required this.channelCid,
|
required this.channelCid,
|
||||||
this.i18n,
|
this.i18n,
|
||||||
this.extraData});
|
this.extraData});
|
||||||
factory MessageEntity.fromData(
|
factory MessageEntity.fromData(Map<String, dynamic> data, {String? prefix}) {
|
||||||
Map<String, dynamic> data, GeneratedDatabase db,
|
|
||||||
{String? prefix}) {
|
|
||||||
final effectivePrefix = prefix ?? '';
|
final effectivePrefix = prefix ?? '';
|
||||||
return MessageEntity(
|
return MessageEntity(
|
||||||
id: const StringType()
|
id: const StringType()
|
||||||
@@ -814,7 +790,7 @@ class MessageEntity extends DataClass implements Insertable<MessageEntity> {
|
|||||||
|
|
||||||
factory MessageEntity.fromJson(Map<String, dynamic> json,
|
factory MessageEntity.fromJson(Map<String, dynamic> json,
|
||||||
{ValueSerializer? serializer}) {
|
{ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return MessageEntity(
|
return MessageEntity(
|
||||||
id: serializer.fromJson<String>(json['id']),
|
id: serializer.fromJson<String>(json['id']),
|
||||||
messageText: serializer.fromJson<String?>(json['messageText']),
|
messageText: serializer.fromJson<String?>(json['messageText']),
|
||||||
@@ -847,7 +823,7 @@ class MessageEntity extends DataClass implements Insertable<MessageEntity> {
|
|||||||
}
|
}
|
||||||
@override
|
@override
|
||||||
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return <String, dynamic>{
|
return <String, dynamic>{
|
||||||
'id': serializer.toJson<String>(id),
|
'id': serializer.toJson<String>(id),
|
||||||
'messageText': serializer.toJson<String?>(messageText),
|
'messageText': serializer.toJson<String?>(messageText),
|
||||||
@@ -969,49 +945,33 @@ class MessageEntity extends DataClass implements Insertable<MessageEntity> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get hashCode => $mrjf($mrjc(
|
int get hashCode => Object.hashAll([
|
||||||
id.hashCode,
|
id,
|
||||||
$mrjc(
|
messageText,
|
||||||
messageText.hashCode,
|
attachments,
|
||||||
$mrjc(
|
status,
|
||||||
attachments.hashCode,
|
type,
|
||||||
$mrjc(
|
mentionedUsers,
|
||||||
status.hashCode,
|
reactionCounts,
|
||||||
$mrjc(
|
reactionScores,
|
||||||
type.hashCode,
|
parentId,
|
||||||
$mrjc(
|
quotedMessageId,
|
||||||
mentionedUsers.hashCode,
|
replyCount,
|
||||||
$mrjc(
|
showInChannel,
|
||||||
reactionCounts.hashCode,
|
shadowed,
|
||||||
$mrjc(
|
command,
|
||||||
reactionScores.hashCode,
|
createdAt,
|
||||||
$mrjc(
|
updatedAt,
|
||||||
parentId.hashCode,
|
deletedAt,
|
||||||
$mrjc(
|
userId,
|
||||||
quotedMessageId.hashCode,
|
pinned,
|
||||||
$mrjc(
|
pinnedAt,
|
||||||
replyCount.hashCode,
|
pinExpires,
|
||||||
$mrjc(
|
pinnedByUserId,
|
||||||
showInChannel.hashCode,
|
channelCid,
|
||||||
$mrjc(
|
i18n,
|
||||||
shadowed.hashCode,
|
extraData
|
||||||
$mrjc(
|
]);
|
||||||
command.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
createdAt
|
|
||||||
.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
updatedAt
|
|
||||||
.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
deletedAt
|
|
||||||
.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
userId
|
|
||||||
.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
pinned.hashCode,
|
|
||||||
$mrjc(pinnedAt.hashCode, $mrjc(pinExpires.hashCode, $mrjc(pinnedByUserId.hashCode, $mrjc(channelCid.hashCode, $mrjc(i18n.hashCode, extraData.hashCode)))))))))))))))))))))))));
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) =>
|
bool operator ==(Object other) =>
|
||||||
identical(this, other) ||
|
identical(this, other) ||
|
||||||
@@ -1644,7 +1604,7 @@ class $MessagesTable extends Messages
|
|||||||
Set<GeneratedColumn> get $primaryKey => {id};
|
Set<GeneratedColumn> get $primaryKey => {id};
|
||||||
@override
|
@override
|
||||||
MessageEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
MessageEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
||||||
return MessageEntity.fromData(data, _db,
|
return MessageEntity.fromData(data,
|
||||||
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1772,8 +1732,7 @@ class PinnedMessageEntity extends DataClass
|
|||||||
required this.channelCid,
|
required this.channelCid,
|
||||||
this.i18n,
|
this.i18n,
|
||||||
this.extraData});
|
this.extraData});
|
||||||
factory PinnedMessageEntity.fromData(
|
factory PinnedMessageEntity.fromData(Map<String, dynamic> data,
|
||||||
Map<String, dynamic> data, GeneratedDatabase db,
|
|
||||||
{String? prefix}) {
|
{String? prefix}) {
|
||||||
final effectivePrefix = prefix ?? '';
|
final effectivePrefix = prefix ?? '';
|
||||||
return PinnedMessageEntity(
|
return PinnedMessageEntity(
|
||||||
@@ -1911,7 +1870,7 @@ class PinnedMessageEntity extends DataClass
|
|||||||
|
|
||||||
factory PinnedMessageEntity.fromJson(Map<String, dynamic> json,
|
factory PinnedMessageEntity.fromJson(Map<String, dynamic> json,
|
||||||
{ValueSerializer? serializer}) {
|
{ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return PinnedMessageEntity(
|
return PinnedMessageEntity(
|
||||||
id: serializer.fromJson<String>(json['id']),
|
id: serializer.fromJson<String>(json['id']),
|
||||||
messageText: serializer.fromJson<String?>(json['messageText']),
|
messageText: serializer.fromJson<String?>(json['messageText']),
|
||||||
@@ -1944,7 +1903,7 @@ class PinnedMessageEntity extends DataClass
|
|||||||
}
|
}
|
||||||
@override
|
@override
|
||||||
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return <String, dynamic>{
|
return <String, dynamic>{
|
||||||
'id': serializer.toJson<String>(id),
|
'id': serializer.toJson<String>(id),
|
||||||
'messageText': serializer.toJson<String?>(messageText),
|
'messageText': serializer.toJson<String?>(messageText),
|
||||||
@@ -2066,49 +2025,33 @@ class PinnedMessageEntity extends DataClass
|
|||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get hashCode => $mrjf($mrjc(
|
int get hashCode => Object.hashAll([
|
||||||
id.hashCode,
|
id,
|
||||||
$mrjc(
|
messageText,
|
||||||
messageText.hashCode,
|
attachments,
|
||||||
$mrjc(
|
status,
|
||||||
attachments.hashCode,
|
type,
|
||||||
$mrjc(
|
mentionedUsers,
|
||||||
status.hashCode,
|
reactionCounts,
|
||||||
$mrjc(
|
reactionScores,
|
||||||
type.hashCode,
|
parentId,
|
||||||
$mrjc(
|
quotedMessageId,
|
||||||
mentionedUsers.hashCode,
|
replyCount,
|
||||||
$mrjc(
|
showInChannel,
|
||||||
reactionCounts.hashCode,
|
shadowed,
|
||||||
$mrjc(
|
command,
|
||||||
reactionScores.hashCode,
|
createdAt,
|
||||||
$mrjc(
|
updatedAt,
|
||||||
parentId.hashCode,
|
deletedAt,
|
||||||
$mrjc(
|
userId,
|
||||||
quotedMessageId.hashCode,
|
pinned,
|
||||||
$mrjc(
|
pinnedAt,
|
||||||
replyCount.hashCode,
|
pinExpires,
|
||||||
$mrjc(
|
pinnedByUserId,
|
||||||
showInChannel.hashCode,
|
channelCid,
|
||||||
$mrjc(
|
i18n,
|
||||||
shadowed.hashCode,
|
extraData
|
||||||
$mrjc(
|
]);
|
||||||
command.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
createdAt
|
|
||||||
.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
updatedAt
|
|
||||||
.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
deletedAt
|
|
||||||
.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
userId
|
|
||||||
.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
pinned.hashCode,
|
|
||||||
$mrjc(pinnedAt.hashCode, $mrjc(pinExpires.hashCode, $mrjc(pinnedByUserId.hashCode, $mrjc(channelCid.hashCode, $mrjc(i18n.hashCode, extraData.hashCode)))))))))))))))))))))))));
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) =>
|
bool operator ==(Object other) =>
|
||||||
identical(this, other) ||
|
identical(this, other) ||
|
||||||
@@ -2744,7 +2687,7 @@ class $PinnedMessagesTable extends PinnedMessages
|
|||||||
Set<GeneratedColumn> get $primaryKey => {id};
|
Set<GeneratedColumn> get $primaryKey => {id};
|
||||||
@override
|
@override
|
||||||
PinnedMessageEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
PinnedMessageEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
||||||
return PinnedMessageEntity.fromData(data, _db,
|
return PinnedMessageEntity.fromData(data,
|
||||||
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2795,8 +2738,7 @@ class PinnedMessageReactionEntity extends DataClass
|
|||||||
required this.createdAt,
|
required this.createdAt,
|
||||||
required this.score,
|
required this.score,
|
||||||
this.extraData});
|
this.extraData});
|
||||||
factory PinnedMessageReactionEntity.fromData(
|
factory PinnedMessageReactionEntity.fromData(Map<String, dynamic> data,
|
||||||
Map<String, dynamic> data, GeneratedDatabase db,
|
|
||||||
{String? prefix}) {
|
{String? prefix}) {
|
||||||
final effectivePrefix = prefix ?? '';
|
final effectivePrefix = prefix ?? '';
|
||||||
return PinnedMessageReactionEntity(
|
return PinnedMessageReactionEntity(
|
||||||
@@ -2832,7 +2774,7 @@ class PinnedMessageReactionEntity extends DataClass
|
|||||||
|
|
||||||
factory PinnedMessageReactionEntity.fromJson(Map<String, dynamic> json,
|
factory PinnedMessageReactionEntity.fromJson(Map<String, dynamic> json,
|
||||||
{ValueSerializer? serializer}) {
|
{ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return PinnedMessageReactionEntity(
|
return PinnedMessageReactionEntity(
|
||||||
userId: serializer.fromJson<String>(json['userId']),
|
userId: serializer.fromJson<String>(json['userId']),
|
||||||
messageId: serializer.fromJson<String>(json['messageId']),
|
messageId: serializer.fromJson<String>(json['messageId']),
|
||||||
@@ -2844,7 +2786,7 @@ class PinnedMessageReactionEntity extends DataClass
|
|||||||
}
|
}
|
||||||
@override
|
@override
|
||||||
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return <String, dynamic>{
|
return <String, dynamic>{
|
||||||
'userId': serializer.toJson<String>(userId),
|
'userId': serializer.toJson<String>(userId),
|
||||||
'messageId': serializer.toJson<String>(messageId),
|
'messageId': serializer.toJson<String>(messageId),
|
||||||
@@ -2884,14 +2826,8 @@ class PinnedMessageReactionEntity extends DataClass
|
|||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get hashCode => $mrjf($mrjc(
|
int get hashCode =>
|
||||||
userId.hashCode,
|
Object.hash(userId, messageId, type, createdAt, score, extraData);
|
||||||
$mrjc(
|
|
||||||
messageId.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
type.hashCode,
|
|
||||||
$mrjc(createdAt.hashCode,
|
|
||||||
$mrjc(score.hashCode, extraData.hashCode))))));
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) =>
|
bool operator ==(Object other) =>
|
||||||
identical(this, other) ||
|
identical(this, other) ||
|
||||||
@@ -3090,7 +3026,7 @@ class $PinnedMessageReactionsTable extends PinnedMessageReactions
|
|||||||
@override
|
@override
|
||||||
PinnedMessageReactionEntity map(Map<String, dynamic> data,
|
PinnedMessageReactionEntity map(Map<String, dynamic> data,
|
||||||
{String? tablePrefix}) {
|
{String? tablePrefix}) {
|
||||||
return PinnedMessageReactionEntity.fromData(data, _db,
|
return PinnedMessageReactionEntity.fromData(data,
|
||||||
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3128,9 +3064,7 @@ class ReactionEntity extends DataClass implements Insertable<ReactionEntity> {
|
|||||||
required this.createdAt,
|
required this.createdAt,
|
||||||
required this.score,
|
required this.score,
|
||||||
this.extraData});
|
this.extraData});
|
||||||
factory ReactionEntity.fromData(
|
factory ReactionEntity.fromData(Map<String, dynamic> data, {String? prefix}) {
|
||||||
Map<String, dynamic> data, GeneratedDatabase db,
|
|
||||||
{String? prefix}) {
|
|
||||||
final effectivePrefix = prefix ?? '';
|
final effectivePrefix = prefix ?? '';
|
||||||
return ReactionEntity(
|
return ReactionEntity(
|
||||||
userId: const StringType()
|
userId: const StringType()
|
||||||
@@ -3164,7 +3098,7 @@ class ReactionEntity extends DataClass implements Insertable<ReactionEntity> {
|
|||||||
|
|
||||||
factory ReactionEntity.fromJson(Map<String, dynamic> json,
|
factory ReactionEntity.fromJson(Map<String, dynamic> json,
|
||||||
{ValueSerializer? serializer}) {
|
{ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return ReactionEntity(
|
return ReactionEntity(
|
||||||
userId: serializer.fromJson<String>(json['userId']),
|
userId: serializer.fromJson<String>(json['userId']),
|
||||||
messageId: serializer.fromJson<String>(json['messageId']),
|
messageId: serializer.fromJson<String>(json['messageId']),
|
||||||
@@ -3176,7 +3110,7 @@ class ReactionEntity extends DataClass implements Insertable<ReactionEntity> {
|
|||||||
}
|
}
|
||||||
@override
|
@override
|
||||||
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return <String, dynamic>{
|
return <String, dynamic>{
|
||||||
'userId': serializer.toJson<String>(userId),
|
'userId': serializer.toJson<String>(userId),
|
||||||
'messageId': serializer.toJson<String>(messageId),
|
'messageId': serializer.toJson<String>(messageId),
|
||||||
@@ -3216,14 +3150,8 @@ class ReactionEntity extends DataClass implements Insertable<ReactionEntity> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get hashCode => $mrjf($mrjc(
|
int get hashCode =>
|
||||||
userId.hashCode,
|
Object.hash(userId, messageId, type, createdAt, score, extraData);
|
||||||
$mrjc(
|
|
||||||
messageId.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
type.hashCode,
|
|
||||||
$mrjc(createdAt.hashCode,
|
|
||||||
$mrjc(score.hashCode, extraData.hashCode))))));
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) =>
|
bool operator ==(Object other) =>
|
||||||
identical(this, other) ||
|
identical(this, other) ||
|
||||||
@@ -3418,7 +3346,7 @@ class $ReactionsTable extends Reactions
|
|||||||
Set<GeneratedColumn> get $primaryKey => {messageId, type, userId};
|
Set<GeneratedColumn> get $primaryKey => {messageId, type, userId};
|
||||||
@override
|
@override
|
||||||
ReactionEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
ReactionEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
||||||
return ReactionEntity.fromData(data, _db,
|
return ReactionEntity.fromData(data,
|
||||||
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3468,8 +3396,7 @@ class UserEntity extends DataClass implements Insertable<UserEntity> {
|
|||||||
required this.online,
|
required this.online,
|
||||||
required this.banned,
|
required this.banned,
|
||||||
required this.extraData});
|
required this.extraData});
|
||||||
factory UserEntity.fromData(Map<String, dynamic> data, GeneratedDatabase db,
|
factory UserEntity.fromData(Map<String, dynamic> data, {String? prefix}) {
|
||||||
{String? prefix}) {
|
|
||||||
final effectivePrefix = prefix ?? '';
|
final effectivePrefix = prefix ?? '';
|
||||||
return UserEntity(
|
return UserEntity(
|
||||||
id: const StringType()
|
id: const StringType()
|
||||||
@@ -3518,7 +3445,7 @@ class UserEntity extends DataClass implements Insertable<UserEntity> {
|
|||||||
|
|
||||||
factory UserEntity.fromJson(Map<String, dynamic> json,
|
factory UserEntity.fromJson(Map<String, dynamic> json,
|
||||||
{ValueSerializer? serializer}) {
|
{ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return UserEntity(
|
return UserEntity(
|
||||||
id: serializer.fromJson<String>(json['id']),
|
id: serializer.fromJson<String>(json['id']),
|
||||||
role: serializer.fromJson<String?>(json['role']),
|
role: serializer.fromJson<String?>(json['role']),
|
||||||
@@ -3533,7 +3460,7 @@ class UserEntity extends DataClass implements Insertable<UserEntity> {
|
|||||||
}
|
}
|
||||||
@override
|
@override
|
||||||
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return <String, dynamic>{
|
return <String, dynamic>{
|
||||||
'id': serializer.toJson<String>(id),
|
'id': serializer.toJson<String>(id),
|
||||||
'role': serializer.toJson<String?>(role),
|
'role': serializer.toJson<String?>(role),
|
||||||
@@ -3585,22 +3512,8 @@ class UserEntity extends DataClass implements Insertable<UserEntity> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get hashCode => $mrjf($mrjc(
|
int get hashCode => Object.hash(id, role, language, createdAt, updatedAt,
|
||||||
id.hashCode,
|
lastActive, online, banned, extraData);
|
||||||
$mrjc(
|
|
||||||
role.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
language.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
createdAt.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
updatedAt.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
lastActive.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
online.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
banned.hashCode, extraData.hashCode)))))))));
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) =>
|
bool operator ==(Object other) =>
|
||||||
identical(this, other) ||
|
identical(this, other) ||
|
||||||
@@ -3863,7 +3776,7 @@ class $UsersTable extends Users with TableInfo<$UsersTable, UserEntity> {
|
|||||||
Set<GeneratedColumn> get $primaryKey => {id};
|
Set<GeneratedColumn> get $primaryKey => {id};
|
||||||
@override
|
@override
|
||||||
UserEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
UserEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
||||||
return UserEntity.fromData(data, _db,
|
return UserEntity.fromData(data,
|
||||||
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3921,8 +3834,7 @@ class MemberEntity extends DataClass implements Insertable<MemberEntity> {
|
|||||||
required this.isModerator,
|
required this.isModerator,
|
||||||
required this.createdAt,
|
required this.createdAt,
|
||||||
required this.updatedAt});
|
required this.updatedAt});
|
||||||
factory MemberEntity.fromData(Map<String, dynamic> data, GeneratedDatabase db,
|
factory MemberEntity.fromData(Map<String, dynamic> data, {String? prefix}) {
|
||||||
{String? prefix}) {
|
|
||||||
final effectivePrefix = prefix ?? '';
|
final effectivePrefix = prefix ?? '';
|
||||||
return MemberEntity(
|
return MemberEntity(
|
||||||
userId: const StringType()
|
userId: const StringType()
|
||||||
@@ -3974,7 +3886,7 @@ class MemberEntity extends DataClass implements Insertable<MemberEntity> {
|
|||||||
|
|
||||||
factory MemberEntity.fromJson(Map<String, dynamic> json,
|
factory MemberEntity.fromJson(Map<String, dynamic> json,
|
||||||
{ValueSerializer? serializer}) {
|
{ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return MemberEntity(
|
return MemberEntity(
|
||||||
userId: serializer.fromJson<String>(json['userId']),
|
userId: serializer.fromJson<String>(json['userId']),
|
||||||
channelCid: serializer.fromJson<String>(json['channelCid']),
|
channelCid: serializer.fromJson<String>(json['channelCid']),
|
||||||
@@ -3993,7 +3905,7 @@ class MemberEntity extends DataClass implements Insertable<MemberEntity> {
|
|||||||
}
|
}
|
||||||
@override
|
@override
|
||||||
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return <String, dynamic>{
|
return <String, dynamic>{
|
||||||
'userId': serializer.toJson<String>(userId),
|
'userId': serializer.toJson<String>(userId),
|
||||||
'channelCid': serializer.toJson<String>(channelCid),
|
'channelCid': serializer.toJson<String>(channelCid),
|
||||||
@@ -4057,26 +3969,18 @@ class MemberEntity extends DataClass implements Insertable<MemberEntity> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get hashCode => $mrjf($mrjc(
|
int get hashCode => Object.hash(
|
||||||
userId.hashCode,
|
userId,
|
||||||
$mrjc(
|
channelCid,
|
||||||
channelCid.hashCode,
|
role,
|
||||||
$mrjc(
|
inviteAcceptedAt,
|
||||||
role.hashCode,
|
inviteRejectedAt,
|
||||||
$mrjc(
|
invited,
|
||||||
inviteAcceptedAt.hashCode,
|
banned,
|
||||||
$mrjc(
|
shadowBanned,
|
||||||
inviteRejectedAt.hashCode,
|
isModerator,
|
||||||
$mrjc(
|
createdAt,
|
||||||
invited.hashCode,
|
updatedAt);
|
||||||
$mrjc(
|
|
||||||
banned.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
shadowBanned.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
isModerator.hashCode,
|
|
||||||
$mrjc(createdAt.hashCode,
|
|
||||||
updatedAt.hashCode)))))))))));
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) =>
|
bool operator ==(Object other) =>
|
||||||
identical(this, other) ||
|
identical(this, other) ||
|
||||||
@@ -4405,7 +4309,7 @@ class $MembersTable extends Members
|
|||||||
Set<GeneratedColumn> get $primaryKey => {userId, channelCid};
|
Set<GeneratedColumn> get $primaryKey => {userId, channelCid};
|
||||||
@override
|
@override
|
||||||
MemberEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
MemberEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
||||||
return MemberEntity.fromData(data, _db,
|
return MemberEntity.fromData(data,
|
||||||
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -4432,8 +4336,7 @@ class ReadEntity extends DataClass implements Insertable<ReadEntity> {
|
|||||||
required this.userId,
|
required this.userId,
|
||||||
required this.channelCid,
|
required this.channelCid,
|
||||||
required this.unreadMessages});
|
required this.unreadMessages});
|
||||||
factory ReadEntity.fromData(Map<String, dynamic> data, GeneratedDatabase db,
|
factory ReadEntity.fromData(Map<String, dynamic> data, {String? prefix}) {
|
||||||
{String? prefix}) {
|
|
||||||
final effectivePrefix = prefix ?? '';
|
final effectivePrefix = prefix ?? '';
|
||||||
return ReadEntity(
|
return ReadEntity(
|
||||||
lastRead: const DateTimeType()
|
lastRead: const DateTimeType()
|
||||||
@@ -4458,7 +4361,7 @@ class ReadEntity extends DataClass implements Insertable<ReadEntity> {
|
|||||||
|
|
||||||
factory ReadEntity.fromJson(Map<String, dynamic> json,
|
factory ReadEntity.fromJson(Map<String, dynamic> json,
|
||||||
{ValueSerializer? serializer}) {
|
{ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return ReadEntity(
|
return ReadEntity(
|
||||||
lastRead: serializer.fromJson<DateTime>(json['lastRead']),
|
lastRead: serializer.fromJson<DateTime>(json['lastRead']),
|
||||||
userId: serializer.fromJson<String>(json['userId']),
|
userId: serializer.fromJson<String>(json['userId']),
|
||||||
@@ -4468,7 +4371,7 @@ class ReadEntity extends DataClass implements Insertable<ReadEntity> {
|
|||||||
}
|
}
|
||||||
@override
|
@override
|
||||||
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return <String, dynamic>{
|
return <String, dynamic>{
|
||||||
'lastRead': serializer.toJson<DateTime>(lastRead),
|
'lastRead': serializer.toJson<DateTime>(lastRead),
|
||||||
'userId': serializer.toJson<String>(userId),
|
'userId': serializer.toJson<String>(userId),
|
||||||
@@ -4500,10 +4403,7 @@ class ReadEntity extends DataClass implements Insertable<ReadEntity> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get hashCode => $mrjf($mrjc(
|
int get hashCode => Object.hash(lastRead, userId, channelCid, unreadMessages);
|
||||||
lastRead.hashCode,
|
|
||||||
$mrjc(userId.hashCode,
|
|
||||||
$mrjc(channelCid.hashCode, unreadMessages.hashCode))));
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) =>
|
bool operator ==(Object other) =>
|
||||||
identical(this, other) ||
|
identical(this, other) ||
|
||||||
@@ -4660,7 +4560,7 @@ class $ReadsTable extends Reads with TableInfo<$ReadsTable, ReadEntity> {
|
|||||||
Set<GeneratedColumn> get $primaryKey => {userId, channelCid};
|
Set<GeneratedColumn> get $primaryKey => {userId, channelCid};
|
||||||
@override
|
@override
|
||||||
ReadEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
ReadEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
||||||
return ReadEntity.fromData(data, _db,
|
return ReadEntity.fromData(data,
|
||||||
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -4678,8 +4578,7 @@ class ChannelQueryEntity extends DataClass
|
|||||||
/// The channel cid of this query
|
/// The channel cid of this query
|
||||||
final String channelCid;
|
final String channelCid;
|
||||||
ChannelQueryEntity({required this.queryHash, required this.channelCid});
|
ChannelQueryEntity({required this.queryHash, required this.channelCid});
|
||||||
factory ChannelQueryEntity.fromData(
|
factory ChannelQueryEntity.fromData(Map<String, dynamic> data,
|
||||||
Map<String, dynamic> data, GeneratedDatabase db,
|
|
||||||
{String? prefix}) {
|
{String? prefix}) {
|
||||||
final effectivePrefix = prefix ?? '';
|
final effectivePrefix = prefix ?? '';
|
||||||
return ChannelQueryEntity(
|
return ChannelQueryEntity(
|
||||||
@@ -4699,7 +4598,7 @@ class ChannelQueryEntity extends DataClass
|
|||||||
|
|
||||||
factory ChannelQueryEntity.fromJson(Map<String, dynamic> json,
|
factory ChannelQueryEntity.fromJson(Map<String, dynamic> json,
|
||||||
{ValueSerializer? serializer}) {
|
{ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return ChannelQueryEntity(
|
return ChannelQueryEntity(
|
||||||
queryHash: serializer.fromJson<String>(json['queryHash']),
|
queryHash: serializer.fromJson<String>(json['queryHash']),
|
||||||
channelCid: serializer.fromJson<String>(json['channelCid']),
|
channelCid: serializer.fromJson<String>(json['channelCid']),
|
||||||
@@ -4707,7 +4606,7 @@ class ChannelQueryEntity extends DataClass
|
|||||||
}
|
}
|
||||||
@override
|
@override
|
||||||
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return <String, dynamic>{
|
return <String, dynamic>{
|
||||||
'queryHash': serializer.toJson<String>(queryHash),
|
'queryHash': serializer.toJson<String>(queryHash),
|
||||||
'channelCid': serializer.toJson<String>(channelCid),
|
'channelCid': serializer.toJson<String>(channelCid),
|
||||||
@@ -4729,7 +4628,7 @@ class ChannelQueryEntity extends DataClass
|
|||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get hashCode => $mrjf($mrjc(queryHash.hashCode, channelCid.hashCode));
|
int get hashCode => Object.hash(queryHash, channelCid);
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) =>
|
bool operator ==(Object other) =>
|
||||||
identical(this, other) ||
|
identical(this, other) ||
|
||||||
@@ -4835,7 +4734,7 @@ class $ChannelQueriesTable extends ChannelQueries
|
|||||||
Set<GeneratedColumn> get $primaryKey => {queryHash, channelCid};
|
Set<GeneratedColumn> get $primaryKey => {queryHash, channelCid};
|
||||||
@override
|
@override
|
||||||
ChannelQueryEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
ChannelQueryEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
||||||
return ChannelQueryEntity.fromData(data, _db,
|
return ChannelQueryEntity.fromData(data,
|
||||||
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -4875,8 +4774,7 @@ class ConnectionEventEntity extends DataClass
|
|||||||
this.unreadChannels,
|
this.unreadChannels,
|
||||||
this.lastEventAt,
|
this.lastEventAt,
|
||||||
this.lastSyncAt});
|
this.lastSyncAt});
|
||||||
factory ConnectionEventEntity.fromData(
|
factory ConnectionEventEntity.fromData(Map<String, dynamic> data,
|
||||||
Map<String, dynamic> data, GeneratedDatabase db,
|
|
||||||
{String? prefix}) {
|
{String? prefix}) {
|
||||||
final effectivePrefix = prefix ?? '';
|
final effectivePrefix = prefix ?? '';
|
||||||
return ConnectionEventEntity(
|
return ConnectionEventEntity(
|
||||||
@@ -4922,7 +4820,7 @@ class ConnectionEventEntity extends DataClass
|
|||||||
|
|
||||||
factory ConnectionEventEntity.fromJson(Map<String, dynamic> json,
|
factory ConnectionEventEntity.fromJson(Map<String, dynamic> json,
|
||||||
{ValueSerializer? serializer}) {
|
{ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return ConnectionEventEntity(
|
return ConnectionEventEntity(
|
||||||
id: serializer.fromJson<int>(json['id']),
|
id: serializer.fromJson<int>(json['id']),
|
||||||
type: serializer.fromJson<String>(json['type']),
|
type: serializer.fromJson<String>(json['type']),
|
||||||
@@ -4935,7 +4833,7 @@ class ConnectionEventEntity extends DataClass
|
|||||||
}
|
}
|
||||||
@override
|
@override
|
||||||
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
|
||||||
serializer ??= moorRuntimeOptions.defaultSerializer;
|
serializer ??= driftRuntimeOptions.defaultSerializer;
|
||||||
return <String, dynamic>{
|
return <String, dynamic>{
|
||||||
'id': serializer.toJson<int>(id),
|
'id': serializer.toJson<int>(id),
|
||||||
'type': serializer.toJson<String>(type),
|
'type': serializer.toJson<String>(type),
|
||||||
@@ -4982,16 +4880,8 @@ class ConnectionEventEntity extends DataClass
|
|||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
int get hashCode => $mrjf($mrjc(
|
int get hashCode => Object.hash(id, type, ownUser, totalUnreadCount,
|
||||||
id.hashCode,
|
unreadChannels, lastEventAt, lastSyncAt);
|
||||||
$mrjc(
|
|
||||||
type.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
ownUser.hashCode,
|
|
||||||
$mrjc(
|
|
||||||
totalUnreadCount.hashCode,
|
|
||||||
$mrjc(unreadChannels.hashCode,
|
|
||||||
$mrjc(lastEventAt.hashCode, lastSyncAt.hashCode)))))));
|
|
||||||
@override
|
@override
|
||||||
bool operator ==(Object other) =>
|
bool operator ==(Object other) =>
|
||||||
identical(this, other) ||
|
identical(this, other) ||
|
||||||
@@ -5212,7 +5102,7 @@ class $ConnectionEventsTable extends ConnectionEvents
|
|||||||
Set<GeneratedColumn> get $primaryKey => {id};
|
Set<GeneratedColumn> get $primaryKey => {id};
|
||||||
@override
|
@override
|
||||||
ConnectionEventEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
ConnectionEventEntity map(Map<String, dynamic> data, {String? tablePrefix}) {
|
||||||
return ConnectionEventEntity.fromData(data, _db,
|
return ConnectionEventEntity.fromData(data,
|
||||||
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
prefix: tablePrefix != null ? '$tablePrefix.' : null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -5225,9 +5115,10 @@ class $ConnectionEventsTable extends ConnectionEvents
|
|||||||
MapConverter();
|
MapConverter();
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract class _$MoorChatDatabase extends GeneratedDatabase {
|
abstract class _$DriftChatDatabase extends GeneratedDatabase {
|
||||||
_$MoorChatDatabase(QueryExecutor e) : super(SqlTypeSystem.defaultInstance, e);
|
_$DriftChatDatabase(QueryExecutor e)
|
||||||
_$MoorChatDatabase.connect(DatabaseConnection c) : super.connect(c);
|
: super(SqlTypeSystem.defaultInstance, e);
|
||||||
|
_$DriftChatDatabase.connect(DatabaseConnection c) : super.connect(c);
|
||||||
late final $ChannelsTable channels = $ChannelsTable(this);
|
late final $ChannelsTable channels = $ChannelsTable(this);
|
||||||
late final $MessagesTable messages = $MessagesTable(this);
|
late final $MessagesTable messages = $MessagesTable(this);
|
||||||
late final $PinnedMessagesTable pinnedMessages = $PinnedMessagesTable(this);
|
late final $PinnedMessagesTable pinnedMessages = $PinnedMessagesTable(this);
|
||||||
@@ -5240,20 +5131,20 @@ abstract class _$MoorChatDatabase extends GeneratedDatabase {
|
|||||||
late final $ChannelQueriesTable channelQueries = $ChannelQueriesTable(this);
|
late final $ChannelQueriesTable channelQueries = $ChannelQueriesTable(this);
|
||||||
late final $ConnectionEventsTable connectionEvents =
|
late final $ConnectionEventsTable connectionEvents =
|
||||||
$ConnectionEventsTable(this);
|
$ConnectionEventsTable(this);
|
||||||
late final UserDao userDao = UserDao(this as MoorChatDatabase);
|
late final UserDao userDao = UserDao(this as DriftChatDatabase);
|
||||||
late final ChannelDao channelDao = ChannelDao(this as MoorChatDatabase);
|
late final ChannelDao channelDao = ChannelDao(this as DriftChatDatabase);
|
||||||
late final MessageDao messageDao = MessageDao(this as MoorChatDatabase);
|
late final MessageDao messageDao = MessageDao(this as DriftChatDatabase);
|
||||||
late final PinnedMessageDao pinnedMessageDao =
|
late final PinnedMessageDao pinnedMessageDao =
|
||||||
PinnedMessageDao(this as MoorChatDatabase);
|
PinnedMessageDao(this as DriftChatDatabase);
|
||||||
late final PinnedMessageReactionDao pinnedMessageReactionDao =
|
late final PinnedMessageReactionDao pinnedMessageReactionDao =
|
||||||
PinnedMessageReactionDao(this as MoorChatDatabase);
|
PinnedMessageReactionDao(this as DriftChatDatabase);
|
||||||
late final MemberDao memberDao = MemberDao(this as MoorChatDatabase);
|
late final MemberDao memberDao = MemberDao(this as DriftChatDatabase);
|
||||||
late final ReactionDao reactionDao = ReactionDao(this as MoorChatDatabase);
|
late final ReactionDao reactionDao = ReactionDao(this as DriftChatDatabase);
|
||||||
late final ReadDao readDao = ReadDao(this as MoorChatDatabase);
|
late final ReadDao readDao = ReadDao(this as DriftChatDatabase);
|
||||||
late final ChannelQueryDao channelQueryDao =
|
late final ChannelQueryDao channelQueryDao =
|
||||||
ChannelQueryDao(this as MoorChatDatabase);
|
ChannelQueryDao(this as DriftChatDatabase);
|
||||||
late final ConnectionEventDao connectionEventDao =
|
late final ConnectionEventDao connectionEventDao =
|
||||||
ConnectionEventDao(this as MoorChatDatabase);
|
ConnectionEventDao(this as DriftChatDatabase);
|
||||||
@override
|
@override
|
||||||
Iterable<TableInfo> get allTables => allSchemaEntities.whereType<TableInfo>();
|
Iterable<TableInfo> get allTables => allSchemaEntities.whereType<TableInfo>();
|
||||||
@override
|
@override
|
||||||
@@ -2,27 +2,27 @@
|
|||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
import 'dart:isolate';
|
import 'dart:isolate';
|
||||||
|
|
||||||
import 'package:moor/ffi.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:moor/isolate.dart';
|
import 'package:drift/isolate.dart';
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/native.dart';
|
||||||
import 'package:path/path.dart';
|
import 'package:path/path.dart';
|
||||||
import 'package:path_provider/path_provider.dart';
|
import 'package:path_provider/path_provider.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/stream_chat_persistence_client.dart';
|
import 'package:stream_chat_persistence/src/stream_chat_persistence_client.dart';
|
||||||
import 'package:stream_chat_persistence/stream_chat_persistence.dart';
|
import 'package:stream_chat_persistence/stream_chat_persistence.dart';
|
||||||
|
|
||||||
/// A Helper class to construct new instances of [MoorChatDatabase] specifically
|
/// A Helper class to construct new instances of [DriftChatDatabase]
|
||||||
/// for native platform applications
|
/// specifically for native platform applications.
|
||||||
class SharedDB {
|
class SharedDB {
|
||||||
/// Returns a new instance of [MoorChatDatabase].
|
/// Returns a new instance of [DriftChatDatabase].
|
||||||
static MoorChatDatabase constructDatabase(
|
static DriftChatDatabase constructDatabase(
|
||||||
String userId, {
|
String userId, {
|
||||||
bool logStatements = false,
|
bool logStatements = false,
|
||||||
ConnectionMode connectionMode = ConnectionMode.regular,
|
ConnectionMode connectionMode = ConnectionMode.regular,
|
||||||
}) {
|
}) {
|
||||||
final dbName = 'db_$userId';
|
final dbName = 'db_$userId';
|
||||||
if (connectionMode == ConnectionMode.background) {
|
if (connectionMode == ConnectionMode.background) {
|
||||||
return MoorChatDatabase.connect(
|
return DriftChatDatabase.connect(
|
||||||
userId,
|
userId,
|
||||||
DatabaseConnection.delayed(Future(() async {
|
DatabaseConnection.delayed(Future(() async {
|
||||||
final isolate = await _createMoorIsolate(
|
final isolate = await _createMoorIsolate(
|
||||||
@@ -33,7 +33,7 @@ class SharedDB {
|
|||||||
})),
|
})),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
return MoorChatDatabase(
|
return DriftChatDatabase(
|
||||||
userId,
|
userId,
|
||||||
LazyDatabase(
|
LazyDatabase(
|
||||||
() async => _constructDatabase(
|
() async => _constructDatabase(
|
||||||
@@ -44,7 +44,7 @@ class SharedDB {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
static Future<VmDatabase> _constructDatabase(
|
static Future<NativeDatabase> _constructDatabase(
|
||||||
String dbName, {
|
String dbName, {
|
||||||
bool logStatements = false,
|
bool logStatements = false,
|
||||||
}) async {
|
}) async {
|
||||||
@@ -52,27 +52,27 @@ class SharedDB {
|
|||||||
final dir = await getApplicationDocumentsDirectory();
|
final dir = await getApplicationDocumentsDirectory();
|
||||||
final path = join(dir.path, '$dbName.sqlite');
|
final path = join(dir.path, '$dbName.sqlite');
|
||||||
final file = File(path);
|
final file = File(path);
|
||||||
return VmDatabase(file, logStatements: logStatements);
|
return NativeDatabase(file, logStatements: logStatements);
|
||||||
}
|
}
|
||||||
if (Platform.isMacOS || Platform.isLinux) {
|
if (Platform.isMacOS || Platform.isLinux) {
|
||||||
final file = File('$dbName.sqlite');
|
final file = File('$dbName.sqlite');
|
||||||
return VmDatabase(file, logStatements: logStatements);
|
return NativeDatabase(file, logStatements: logStatements);
|
||||||
}
|
}
|
||||||
return VmDatabase.memory(logStatements: logStatements);
|
return NativeDatabase.memory(logStatements: logStatements);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void _startBackground(_IsolateStartRequest request) {
|
static void _startBackground(_IsolateStartRequest request) {
|
||||||
final executor = LazyDatabase(() async => VmDatabase(
|
final executor = LazyDatabase(() async => NativeDatabase(
|
||||||
File(request.targetPath),
|
File(request.targetPath),
|
||||||
logStatements: request.logStatements,
|
logStatements: request.logStatements,
|
||||||
));
|
));
|
||||||
final moorIsolate = MoorIsolate.inCurrent(
|
final moorIsolate = DriftIsolate.inCurrent(
|
||||||
() => DatabaseConnection.fromExecutor(executor),
|
() => DatabaseConnection.fromExecutor(executor),
|
||||||
);
|
);
|
||||||
request.sendMoorIsolate.send(moorIsolate);
|
request.sendMoorIsolate.send(moorIsolate);
|
||||||
}
|
}
|
||||||
|
|
||||||
static Future<MoorIsolate> _createMoorIsolate(
|
static Future<DriftIsolate> _createMoorIsolate(
|
||||||
String dbName, {
|
String dbName, {
|
||||||
bool logStatements = false,
|
bool logStatements = false,
|
||||||
}) async {
|
}) async {
|
||||||
@@ -89,7 +89,7 @@ class SharedDB {
|
|||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
return await receivePort.first as MoorIsolate;
|
return await receivePort.first as DriftIsolate;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
// coverage:ignore-file
|
// coverage:ignore-file
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/stream_chat_persistence.dart';
|
import 'package:stream_chat_persistence/stream_chat_persistence.dart';
|
||||||
|
|
||||||
/// A Helper class to construct new instances of [MoorChatDatabase]
|
/// A Helper class to construct new instances of [DriftChatDatabase]
|
||||||
class SharedDB {
|
class SharedDB {
|
||||||
/// Returns a new instance of [MoorChatDatabase].
|
/// Returns a new instance of [DriftChatDatabase].
|
||||||
static MoorChatDatabase constructDatabase(
|
static DriftChatDatabase constructDatabase(
|
||||||
String userId, {
|
String userId, {
|
||||||
bool logStatements = false,
|
bool logStatements = false,
|
||||||
ConnectionMode connectionMode = ConnectionMode.regular,
|
ConnectionMode connectionMode = ConnectionMode.regular,
|
||||||
|
|||||||
@@ -1,19 +1,19 @@
|
|||||||
// coverage:ignore-file
|
// coverage:ignore-file
|
||||||
import 'package:moor/moor_web.dart';
|
import 'package:drift/web.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/stream_chat_persistence_client.dart';
|
import 'package:stream_chat_persistence/src/stream_chat_persistence_client.dart';
|
||||||
|
|
||||||
/// A Helper class to construct new instances of [MoorChatDatabase] specifically
|
/// A Helper class to construct new instances of [DriftChatDatabase]
|
||||||
/// for Web applications
|
/// specifically for Web applications.
|
||||||
class SharedDB {
|
class SharedDB {
|
||||||
/// Returns a new instance of [MoorChatDatabase].
|
/// Returns a new instance of [DriftChatDatabase].
|
||||||
static MoorChatDatabase constructDatabase(
|
static DriftChatDatabase constructDatabase(
|
||||||
String userId, {
|
String userId, {
|
||||||
bool logStatements = false,
|
bool logStatements = false,
|
||||||
ConnectionMode connectionMode = ConnectionMode.regular, // Ignored on web
|
ConnectionMode connectionMode = ConnectionMode.regular, // Ignored on web
|
||||||
}) {
|
}) {
|
||||||
final dbName = 'db_$userId';
|
final dbName = 'db_$userId';
|
||||||
final queryExecutor = WebDatabase(dbName, logStatements: logStatements);
|
final queryExecutor = WebDatabase(dbName, logStatements: logStatements);
|
||||||
return MoorChatDatabase(userId, queryExecutor);
|
return DriftChatDatabase(userId, queryExecutor);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
// coverage:ignore-file
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
|
|
||||||
/// Represents a [ChannelQueries] table in [MoorChatDatabase].
|
/// Represents a [ChannelQueries] table in [MoorChatDatabase].
|
||||||
@DataClassName('ChannelQueryEntity')
|
@DataClassName('ChannelQueryEntity')
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
// coverage:ignore-file
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat_persistence/src/converter/map_converter.dart';
|
import 'package:stream_chat_persistence/src/converter/map_converter.dart';
|
||||||
|
|
||||||
/// Represents a [Channels] table in [MoorChatDatabase].
|
/// Represents a [Channels] table in [MoorChatDatabase].
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
// coverage:ignore-file
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat_persistence/src/converter/map_converter.dart';
|
import 'package:stream_chat_persistence/src/converter/map_converter.dart';
|
||||||
|
|
||||||
/// Represents a [ConnectionEvents] table in [MoorChatDatabase].
|
/// Represents a [ConnectionEvents] table in [MoorChatDatabase].
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
// coverage:ignore-file
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
|
|
||||||
/// Represents a [Members] table in [MoorChatDatabase].
|
/// Represents a [Members] table in [MoorChatDatabase].
|
||||||
@DataClassName('MemberEntity')
|
@DataClassName('MemberEntity')
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
// coverage:ignore-file
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat_persistence/src/converter/list_converter.dart';
|
import 'package:stream_chat_persistence/src/converter/list_converter.dart';
|
||||||
import 'package:stream_chat_persistence/src/converter/map_converter.dart';
|
import 'package:stream_chat_persistence/src/converter/map_converter.dart';
|
||||||
import 'package:stream_chat_persistence/src/converter/message_sending_status_converter.dart';
|
import 'package:stream_chat_persistence/src/converter/message_sending_status_converter.dart';
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
// coverage:ignore-file
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
|
|
||||||
import 'package:stream_chat_persistence/src/entity/reactions.dart';
|
import 'package:stream_chat_persistence/src/entity/reactions.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
// coverage:ignore-file
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
|
|
||||||
import 'package:stream_chat_persistence/src/entity/messages.dart';
|
import 'package:stream_chat_persistence/src/entity/messages.dart';
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
// coverage:ignore-file
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat_persistence/src/converter/map_converter.dart';
|
import 'package:stream_chat_persistence/src/converter/map_converter.dart';
|
||||||
|
|
||||||
/// Represents a [Reactions] table in [MoorChatDatabase].
|
/// Represents a [Reactions] table in [MoorChatDatabase].
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
// coverage:ignore-file
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
|
|
||||||
/// Represents a [Reads] table in [MoorChatDatabase].
|
/// Represents a [Reads] table in [MoorChatDatabase].
|
||||||
@DataClassName('ReadEntity')
|
@DataClassName('ReadEntity')
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
// coverage:ignore-file
|
// coverage:ignore-file
|
||||||
import 'package:moor/moor.dart';
|
import 'package:drift/drift.dart';
|
||||||
import 'package:stream_chat_persistence/src/converter/map_converter.dart';
|
import 'package:stream_chat_persistence/src/converter/map_converter.dart';
|
||||||
|
|
||||||
/// Represents a [Users] table in [MoorChatDatabase].
|
/// Represents a [Users] table in [MoorChatDatabase].
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
/// Useful mapping functions for [ChannelEntity]
|
/// Useful mapping functions for [ChannelEntity]
|
||||||
extension ChannelEntityX on ChannelEntity {
|
extension ChannelEntityX on ChannelEntity {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
/// Useful mapping functions for [ConnectionEventEntity]
|
/// Useful mapping functions for [ConnectionEventEntity]
|
||||||
extension ConnectionEventX on ConnectionEventEntity {
|
extension ConnectionEventX on ConnectionEventEntity {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
/// Useful mapping functions for [MemberEntity]
|
/// Useful mapping functions for [MemberEntity]
|
||||||
extension MemberEntityX on MemberEntity {
|
extension MemberEntityX on MemberEntity {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
/// Useful mapping functions for [MessageEntity]
|
/// Useful mapping functions for [MessageEntity]
|
||||||
extension MessageEntityX on MessageEntity {
|
extension MessageEntityX on MessageEntity {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
|
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
/// Useful mapping functions for [PinnedMessageEntity]
|
/// Useful mapping functions for [PinnedMessageEntity]
|
||||||
extension PinnedMessageEntityX on PinnedMessageEntity {
|
extension PinnedMessageEntityX on PinnedMessageEntity {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
/// Useful mapping functions for [PinnedMessageReactionEntity]
|
/// Useful mapping functions for [PinnedMessageReactionEntity]
|
||||||
extension PinnedMessageReactionEntityX on PinnedMessageReactionEntity {
|
extension PinnedMessageReactionEntityX on PinnedMessageReactionEntity {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
/// Useful mapping functions for [ReactionEntity]
|
/// Useful mapping functions for [ReactionEntity]
|
||||||
extension ReactionEntityX on ReactionEntity {
|
extension ReactionEntityX on ReactionEntity {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
/// Useful mapping functions for [ReadEntity]
|
/// Useful mapping functions for [ReadEntity]
|
||||||
extension ReadEntityX on ReadEntity {
|
extension ReadEntityX on ReadEntity {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
/// Useful mapping functions for [UserEntity]
|
/// Useful mapping functions for [UserEntity]
|
||||||
extension UserEntityX on UserEntity {
|
extension UserEntityX on UserEntity {
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import 'package:meta/meta.dart';
|
|||||||
import 'package:mutex/mutex.dart';
|
import 'package:mutex/mutex.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
|
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
/// Various connection modes on which [StreamChatPersistenceClient] can work
|
/// Various connection modes on which [StreamChatPersistenceClient] can work
|
||||||
enum ConnectionMode {
|
enum ConnectionMode {
|
||||||
@@ -15,8 +15,8 @@ enum ConnectionMode {
|
|||||||
background,
|
background,
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Signature for a function which provides instance of [MoorChatDatabase]
|
/// Signature for a function which provides instance of [DriftChatDatabase]
|
||||||
typedef DatabaseProvider = MoorChatDatabase Function(String, ConnectionMode);
|
typedef DatabaseProvider = DriftChatDatabase Function(String, ConnectionMode);
|
||||||
|
|
||||||
final _levelEmojiMapper = {
|
final _levelEmojiMapper = {
|
||||||
Level.INFO: 'ℹ️',
|
Level.INFO: 'ℹ️',
|
||||||
@@ -24,7 +24,7 @@ final _levelEmojiMapper = {
|
|||||||
Level.SEVERE: '🚨',
|
Level.SEVERE: '🚨',
|
||||||
};
|
};
|
||||||
|
|
||||||
/// A [MoorChatDatabase] based implementation of the [ChatPersistenceClient]
|
/// A [DriftChatDatabase] based implementation of the [ChatPersistenceClient]
|
||||||
class StreamChatPersistenceClient extends ChatPersistenceClient {
|
class StreamChatPersistenceClient extends ChatPersistenceClient {
|
||||||
/// Creates a new instance of the stream chat persistence client
|
/// Creates a new instance of the stream chat persistence client
|
||||||
StreamChatPersistenceClient({
|
StreamChatPersistenceClient({
|
||||||
@@ -37,9 +37,9 @@ class StreamChatPersistenceClient extends ChatPersistenceClient {
|
|||||||
_logger.onRecord.listen(logHandlerFunction ?? _defaultLogHandler);
|
_logger.onRecord.listen(logHandlerFunction ?? _defaultLogHandler);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// [MoorChatDatabase] instance used by this client.
|
/// [DriftChatDatabase] instance used by this client.
|
||||||
@visibleForTesting
|
@visibleForTesting
|
||||||
MoorChatDatabase? db;
|
DriftChatDatabase? db;
|
||||||
|
|
||||||
final Logger _logger;
|
final Logger _logger;
|
||||||
final ConnectionMode _connectionMode;
|
final ConnectionMode _connectionMode;
|
||||||
@@ -70,7 +70,7 @@ class StreamChatPersistenceClient extends ChatPersistenceClient {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
MoorChatDatabase _defaultDatabaseProvider(
|
DriftChatDatabase _defaultDatabaseProvider(
|
||||||
String userId,
|
String userId,
|
||||||
ConnectionMode mode,
|
ConnectionMode mode,
|
||||||
) =>
|
) =>
|
||||||
|
|||||||
@@ -10,11 +10,11 @@ environment:
|
|||||||
flutter: ">=1.17.0"
|
flutter: ">=1.17.0"
|
||||||
|
|
||||||
dependencies:
|
dependencies:
|
||||||
|
drift: ^1.0.0
|
||||||
flutter:
|
flutter:
|
||||||
sdk: flutter
|
sdk: flutter
|
||||||
logging: ^1.0.1
|
logging: ^1.0.1
|
||||||
meta: ^1.3.0
|
meta: ^1.3.0
|
||||||
moor: ^4.4.0
|
|
||||||
mutex: ^3.0.0
|
mutex: ^3.0.0
|
||||||
path: ^1.8.0
|
path: ^1.8.0
|
||||||
path_provider: ^2.0.1
|
path_provider: ^2.0.1
|
||||||
@@ -24,7 +24,7 @@ dependencies:
|
|||||||
dev_dependencies:
|
dev_dependencies:
|
||||||
build_runner: ^2.0.1
|
build_runner: ^2.0.1
|
||||||
dart_code_metrics: ^4.4.0
|
dart_code_metrics: ^4.4.0
|
||||||
|
drift_dev: ^1.0.0
|
||||||
flutter_test:
|
flutter_test:
|
||||||
sdk: flutter
|
sdk: flutter
|
||||||
mocktail: ^0.1.1
|
mocktail: ^0.1.1
|
||||||
moor_generator: ^4.2.1
|
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:mocktail/mocktail.dart';
|
import 'package:mocktail/mocktail.dart';
|
||||||
import 'package:stream_chat_persistence/src/dao/dao.dart';
|
import 'package:stream_chat_persistence/src/dao/dao.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
class MockChatDatabase extends Mock implements MoorChatDatabase {
|
class MockChatDatabase extends Mock implements DriftChatDatabase {
|
||||||
UserDao? _userDao;
|
UserDao? _userDao;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/dao/channel_dao.dart';
|
import 'package:stream_chat_persistence/src/dao/channel_dao.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
import '../../stream_chat_persistence_client_test.dart';
|
import '../../stream_chat_persistence_client_test.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
late ChannelDao channelDao;
|
late ChannelDao channelDao;
|
||||||
late MoorChatDatabase database;
|
late DriftChatDatabase database;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
database = testDatabaseProvider('testUserId');
|
database = testDatabaseProvider('testUserId');
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/dao/channel_query_dao.dart';
|
import 'package:stream_chat_persistence/src/dao/channel_query_dao.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
import '../../stream_chat_persistence_client_test.dart';
|
import '../../stream_chat_persistence_client_test.dart';
|
||||||
import '../utils/date_matcher.dart';
|
import '../utils/date_matcher.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
late MoorChatDatabase database;
|
late DriftChatDatabase database;
|
||||||
late ChannelQueryDao channelQueryDao;
|
late ChannelQueryDao channelQueryDao;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/dao/connection_event_dao.dart';
|
import 'package:stream_chat_persistence/src/dao/connection_event_dao.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
import '../../stream_chat_persistence_client_test.dart';
|
import '../../stream_chat_persistence_client_test.dart';
|
||||||
import '../utils/date_matcher.dart';
|
import '../utils/date_matcher.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
late ConnectionEventDao eventDao;
|
late ConnectionEventDao eventDao;
|
||||||
late MoorChatDatabase database;
|
late DriftChatDatabase database;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
database = testDatabaseProvider('testUserId');
|
database = testDatabaseProvider('testUserId');
|
||||||
|
|||||||
@@ -3,14 +3,14 @@ import 'dart:math' as math;
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/dao/dao.dart';
|
import 'package:stream_chat_persistence/src/dao/dao.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
import '../../stream_chat_persistence_client_test.dart';
|
import '../../stream_chat_persistence_client_test.dart';
|
||||||
import '../utils/date_matcher.dart';
|
import '../utils/date_matcher.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
late MemberDao memberDao;
|
late MemberDao memberDao;
|
||||||
late MoorChatDatabase database;
|
late DriftChatDatabase database;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
database = testDatabaseProvider('testUserId');
|
database = testDatabaseProvider('testUserId');
|
||||||
|
|||||||
@@ -3,13 +3,13 @@ import 'dart:math' as math;
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/dao/dao.dart';
|
import 'package:stream_chat_persistence/src/dao/dao.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
import '../../stream_chat_persistence_client_test.dart';
|
import '../../stream_chat_persistence_client_test.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
late MessageDao messageDao;
|
late MessageDao messageDao;
|
||||||
late MoorChatDatabase database;
|
late DriftChatDatabase database;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
database = testDatabaseProvider('testUserId');
|
database = testDatabaseProvider('testUserId');
|
||||||
|
|||||||
@@ -3,13 +3,13 @@ import 'dart:math' as math;
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/dao/dao.dart';
|
import 'package:stream_chat_persistence/src/dao/dao.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
import '../../stream_chat_persistence_client_test.dart';
|
import '../../stream_chat_persistence_client_test.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
late PinnedMessageDao pinnedMessageDao;
|
late PinnedMessageDao pinnedMessageDao;
|
||||||
late MoorChatDatabase database;
|
late DriftChatDatabase database;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
database = testDatabaseProvider('testUserId');
|
database = testDatabaseProvider('testUserId');
|
||||||
|
|||||||
@@ -3,13 +3,13 @@ import 'dart:math' as math;
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/dao/pinned_message_reaction_dao.dart';
|
import 'package:stream_chat_persistence/src/dao/pinned_message_reaction_dao.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
import '../../stream_chat_persistence_client_test.dart';
|
import '../../stream_chat_persistence_client_test.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
late PinnedMessageReactionDao pinnedMessageReactionDao;
|
late PinnedMessageReactionDao pinnedMessageReactionDao;
|
||||||
late MoorChatDatabase database;
|
late DriftChatDatabase database;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
database = testDatabaseProvider('testUserId');
|
database = testDatabaseProvider('testUserId');
|
||||||
|
|||||||
@@ -3,13 +3,13 @@ import 'dart:math' as math;
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/dao/reaction_dao.dart';
|
import 'package:stream_chat_persistence/src/dao/reaction_dao.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
import '../../stream_chat_persistence_client_test.dart';
|
import '../../stream_chat_persistence_client_test.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
late ReactionDao reactionDao;
|
late ReactionDao reactionDao;
|
||||||
late MoorChatDatabase database;
|
late DriftChatDatabase database;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
database = testDatabaseProvider('testUserId');
|
database = testDatabaseProvider('testUserId');
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/dao/dao.dart';
|
import 'package:stream_chat_persistence/src/dao/dao.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
import '../../stream_chat_persistence_client_test.dart';
|
import '../../stream_chat_persistence_client_test.dart';
|
||||||
import '../utils/date_matcher.dart';
|
import '../utils/date_matcher.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
late ReadDao readDao;
|
late ReadDao readDao;
|
||||||
late MoorChatDatabase database;
|
late DriftChatDatabase database;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
database = testDatabaseProvider('testUserId');
|
database = testDatabaseProvider('testUserId');
|
||||||
|
|||||||
@@ -3,13 +3,13 @@ import 'dart:math' as math;
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/dao/dao.dart';
|
import 'package:stream_chat_persistence/src/dao/dao.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
|
|
||||||
import '../../stream_chat_persistence_client_test.dart';
|
import '../../stream_chat_persistence_client_test.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
late UserDao userDao;
|
late UserDao userDao;
|
||||||
late MoorChatDatabase database;
|
late DriftChatDatabase database;
|
||||||
|
|
||||||
setUp(() {
|
setUp(() {
|
||||||
database = testDatabaseProvider('testUserId');
|
database = testDatabaseProvider('testUserId');
|
||||||
|
|||||||
+9
-9
@@ -1,19 +1,19 @@
|
|||||||
|
import 'package:drift/drift.dart' hide isNotNull;
|
||||||
|
import 'package:drift/isolate.dart';
|
||||||
|
import 'package:drift/native.dart';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:moor/ffi.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:moor/isolate.dart';
|
|
||||||
import 'package:moor/moor.dart' hide isNotNull;
|
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
|
||||||
|
|
||||||
DatabaseConnection _backgroundConnection() =>
|
DatabaseConnection _backgroundConnection() =>
|
||||||
DatabaseConnection.fromExecutor(VmDatabase.memory());
|
DatabaseConnection.fromExecutor(NativeDatabase.memory());
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
test(
|
test(
|
||||||
'default constructor should create a new instance of MoorChatDatabase',
|
'default constructor should create a new instance of MoorChatDatabase',
|
||||||
() async {
|
() async {
|
||||||
const userId = 'testUserId';
|
const userId = 'testUserId';
|
||||||
final executor = VmDatabase.memory();
|
final executor = NativeDatabase.memory();
|
||||||
final database = MoorChatDatabase(userId, executor);
|
final database = DriftChatDatabase(userId, executor);
|
||||||
expect(database, isNotNull);
|
expect(database, isNotNull);
|
||||||
expect(database.userId, userId);
|
expect(database.userId, userId);
|
||||||
|
|
||||||
@@ -27,10 +27,10 @@ void main() {
|
|||||||
'connect constructor should create a new instance of MoorChatDatabase',
|
'connect constructor should create a new instance of MoorChatDatabase',
|
||||||
() async {
|
() async {
|
||||||
const userId = 'testUserId';
|
const userId = 'testUserId';
|
||||||
final isolate = await MoorIsolate.spawn(_backgroundConnection);
|
final isolate = await DriftIsolate.spawn(_backgroundConnection);
|
||||||
final connection = DatabaseConnection.delayed(isolate.connect());
|
final connection = DatabaseConnection.delayed(isolate.connect());
|
||||||
|
|
||||||
final database = MoorChatDatabase.connect(userId, connection);
|
final database = DriftChatDatabase.connect(userId, connection);
|
||||||
expect(database, isNotNull);
|
expect(database, isNotNull);
|
||||||
expect(database.userId, userId);
|
expect(database.userId, userId);
|
||||||
|
|
||||||
@@ -2,7 +2,7 @@ import 'dart:math' as math;
|
|||||||
|
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/channel_mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/channel_mapper.dart';
|
||||||
|
|
||||||
import '../utils/date_matcher.dart';
|
import '../utils/date_matcher.dart';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/event_mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/event_mapper.dart';
|
||||||
|
|
||||||
import '../utils/date_matcher.dart';
|
import '../utils/date_matcher.dart';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'dart:math' as math;
|
|||||||
|
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/member_mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/member_mapper.dart';
|
||||||
|
|
||||||
import '../utils/date_matcher.dart';
|
import '../utils/date_matcher.dart';
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import 'dart:math' as math;
|
|||||||
|
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/message_mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/message_mapper.dart';
|
||||||
|
|
||||||
import '../utils/date_matcher.dart';
|
import '../utils/date_matcher.dart';
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import 'dart:math' as math;
|
|||||||
|
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/pinned_message_mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/pinned_message_mapper.dart';
|
||||||
|
|
||||||
import '../utils/date_matcher.dart';
|
import '../utils/date_matcher.dart';
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/pinned_message_reaction_mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/pinned_message_reaction_mapper.dart';
|
||||||
|
|
||||||
import '../utils/date_matcher.dart';
|
import '../utils/date_matcher.dart';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/reaction_mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/reaction_mapper.dart';
|
||||||
|
|
||||||
import '../utils/date_matcher.dart';
|
import '../utils/date_matcher.dart';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/read_mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/read_mapper.dart';
|
||||||
|
|
||||||
import '../utils/date_matcher.dart';
|
import '../utils/date_matcher.dart';
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'dart:math' as math;
|
|||||||
|
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/mapper/user_mapper.dart';
|
import 'package:stream_chat_persistence/src/mapper/user_mapper.dart';
|
||||||
|
|
||||||
import '../utils/date_matcher.dart';
|
import '../utils/date_matcher.dart';
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
|
import 'package:drift/native.dart';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:mocktail/mocktail.dart';
|
import 'package:mocktail/mocktail.dart';
|
||||||
import 'package:moor/ffi.dart';
|
|
||||||
import 'package:stream_chat/stream_chat.dart';
|
import 'package:stream_chat/stream_chat.dart';
|
||||||
import 'package:stream_chat_persistence/src/db/moor_chat_database.dart';
|
import 'package:stream_chat_persistence/src/db/drift_chat_database.dart';
|
||||||
import 'package:stream_chat_persistence/src/stream_chat_persistence_client.dart';
|
import 'package:stream_chat_persistence/src/stream_chat_persistence_client.dart';
|
||||||
|
|
||||||
import 'mock_chat_database.dart';
|
import 'mock_chat_database.dart';
|
||||||
import 'src/utils/date_matcher.dart';
|
import 'src/utils/date_matcher.dart';
|
||||||
|
|
||||||
MoorChatDatabase testDatabaseProvider(String userId, [ConnectionMode? mode]) =>
|
DriftChatDatabase testDatabaseProvider(String userId, [ConnectionMode? mode]) =>
|
||||||
MoorChatDatabase(userId, VmDatabase.memory());
|
DriftChatDatabase(userId, NativeDatabase.memory());
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
group('connect', () {
|
group('connect', () {
|
||||||
@@ -19,7 +19,7 @@ void main() {
|
|||||||
expect(client.db, isNull);
|
expect(client.db, isNull);
|
||||||
await client.connect(userId, databaseProvider: testDatabaseProvider);
|
await client.connect(userId, databaseProvider: testDatabaseProvider);
|
||||||
expect(client.db, isNotNull);
|
expect(client.db, isNotNull);
|
||||||
expect(client.db, isA<MoorChatDatabase>());
|
expect(client.db, isA<DriftChatDatabase>());
|
||||||
expect(client.db!.userId, userId);
|
expect(client.db!.userId, userId);
|
||||||
|
|
||||||
addTearDown(() async {
|
addTearDown(() async {
|
||||||
@@ -33,7 +33,7 @@ void main() {
|
|||||||
await client.connect(userId, databaseProvider: testDatabaseProvider);
|
await client.connect(userId, databaseProvider: testDatabaseProvider);
|
||||||
expect(client.db, isNotNull);
|
expect(client.db, isNotNull);
|
||||||
expect(client.db, isNotNull);
|
expect(client.db, isNotNull);
|
||||||
expect(client.db, isA<MoorChatDatabase>());
|
expect(client.db, isA<DriftChatDatabase>());
|
||||||
expect(client.db!.userId, userId);
|
expect(client.db!.userId, userId);
|
||||||
expect(
|
expect(
|
||||||
() => client.connect(userId, databaseProvider: testDatabaseProvider),
|
() => client.connect(userId, databaseProvider: testDatabaseProvider),
|
||||||
@@ -58,7 +58,7 @@ void main() {
|
|||||||
group('client functions', () {
|
group('client functions', () {
|
||||||
const userId = 'testUserId';
|
const userId = 'testUserId';
|
||||||
final mockDatabase = MockChatDatabase();
|
final mockDatabase = MockChatDatabase();
|
||||||
MoorChatDatabase _mockDatabaseProvider(_, __) => mockDatabase;
|
DriftChatDatabase _mockDatabaseProvider(_, __) => mockDatabase;
|
||||||
late StreamChatPersistenceClient client;
|
late StreamChatPersistenceClient client;
|
||||||
|
|
||||||
setUp(() async {
|
setUp(() async {
|
||||||
|
|||||||
Reference in New Issue
Block a user