// dart format width=80 import 'dart:typed_data' as i2; // GENERATED CODE, DO NOT EDIT BY HAND. // ignore_for_file: type=lint import 'package:drift/drift.dart'; class Contacts extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; Contacts(this.attachedDatabase, [this._alias]); late final GeneratedColumn userId = GeneratedColumn( 'user_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false); late final GeneratedColumn username = GeneratedColumn( 'username', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn displayName = GeneratedColumn( 'display_name', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); late final GeneratedColumn nickName = GeneratedColumn( 'nick_name', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); late final GeneratedColumn avatarSvgCompressed = GeneratedColumn('avatar_svg_compressed', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false); late final GeneratedColumn senderProfileCounter = GeneratedColumn( 'sender_profile_counter', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const CustomExpression('0')); late final GeneratedColumn accepted = GeneratedColumn( 'accepted', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways('CHECK ("accepted" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn deletedByUser = GeneratedColumn( 'deleted_by_user', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("deleted_by_user" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn requested = GeneratedColumn( 'requested', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways('CHECK ("requested" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn blocked = GeneratedColumn( 'blocked', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways('CHECK ("blocked" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn verified = GeneratedColumn( 'verified', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways('CHECK ("verified" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn accountDeleted = GeneratedColumn( 'account_deleted', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("account_deleted" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [ userId, username, displayName, nickName, avatarSvgCompressed, senderProfileCounter, accepted, deletedByUser, requested, blocked, verified, accountDeleted, createdAt ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'contacts'; @override Set get $primaryKey => {userId}; @override ContactsData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return ContactsData( userId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}user_id'])!, username: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}username'])!, displayName: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}display_name']), nickName: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}nick_name']), avatarSvgCompressed: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}avatar_svg_compressed']), senderProfileCounter: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}sender_profile_counter'])!, accepted: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}accepted'])!, deletedByUser: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}deleted_by_user'])!, requested: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}requested'])!, blocked: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}blocked'])!, verified: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}verified'])!, accountDeleted: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}account_deleted'])!, createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, ); } @override Contacts createAlias(String alias) { return Contacts(attachedDatabase, alias); } } class ContactsData extends DataClass implements Insertable { final int userId; final String username; final String? displayName; final String? nickName; final i2.Uint8List? avatarSvgCompressed; final int senderProfileCounter; final bool accepted; final bool deletedByUser; final bool requested; final bool blocked; final bool verified; final bool accountDeleted; final DateTime createdAt; const ContactsData( {required this.userId, required this.username, this.displayName, this.nickName, this.avatarSvgCompressed, required this.senderProfileCounter, required this.accepted, required this.deletedByUser, required this.requested, required this.blocked, required this.verified, required this.accountDeleted, required this.createdAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['user_id'] = Variable(userId); map['username'] = Variable(username); if (!nullToAbsent || displayName != null) { map['display_name'] = Variable(displayName); } if (!nullToAbsent || nickName != null) { map['nick_name'] = Variable(nickName); } if (!nullToAbsent || avatarSvgCompressed != null) { map['avatar_svg_compressed'] = Variable(avatarSvgCompressed); } map['sender_profile_counter'] = Variable(senderProfileCounter); map['accepted'] = Variable(accepted); map['deleted_by_user'] = Variable(deletedByUser); map['requested'] = Variable(requested); map['blocked'] = Variable(blocked); map['verified'] = Variable(verified); map['account_deleted'] = Variable(accountDeleted); map['created_at'] = Variable(createdAt); return map; } ContactsCompanion toCompanion(bool nullToAbsent) { return ContactsCompanion( userId: Value(userId), username: Value(username), displayName: displayName == null && nullToAbsent ? const Value.absent() : Value(displayName), nickName: nickName == null && nullToAbsent ? const Value.absent() : Value(nickName), avatarSvgCompressed: avatarSvgCompressed == null && nullToAbsent ? const Value.absent() : Value(avatarSvgCompressed), senderProfileCounter: Value(senderProfileCounter), accepted: Value(accepted), deletedByUser: Value(deletedByUser), requested: Value(requested), blocked: Value(blocked), verified: Value(verified), accountDeleted: Value(accountDeleted), createdAt: Value(createdAt), ); } factory ContactsData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return ContactsData( userId: serializer.fromJson(json['userId']), username: serializer.fromJson(json['username']), displayName: serializer.fromJson(json['displayName']), nickName: serializer.fromJson(json['nickName']), avatarSvgCompressed: serializer.fromJson(json['avatarSvgCompressed']), senderProfileCounter: serializer.fromJson(json['senderProfileCounter']), accepted: serializer.fromJson(json['accepted']), deletedByUser: serializer.fromJson(json['deletedByUser']), requested: serializer.fromJson(json['requested']), blocked: serializer.fromJson(json['blocked']), verified: serializer.fromJson(json['verified']), accountDeleted: serializer.fromJson(json['accountDeleted']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'userId': serializer.toJson(userId), 'username': serializer.toJson(username), 'displayName': serializer.toJson(displayName), 'nickName': serializer.toJson(nickName), 'avatarSvgCompressed': serializer.toJson(avatarSvgCompressed), 'senderProfileCounter': serializer.toJson(senderProfileCounter), 'accepted': serializer.toJson(accepted), 'deletedByUser': serializer.toJson(deletedByUser), 'requested': serializer.toJson(requested), 'blocked': serializer.toJson(blocked), 'verified': serializer.toJson(verified), 'accountDeleted': serializer.toJson(accountDeleted), 'createdAt': serializer.toJson(createdAt), }; } ContactsData copyWith( {int? userId, String? username, Value displayName = const Value.absent(), Value nickName = const Value.absent(), Value avatarSvgCompressed = const Value.absent(), int? senderProfileCounter, bool? accepted, bool? deletedByUser, bool? requested, bool? blocked, bool? verified, bool? accountDeleted, DateTime? createdAt}) => ContactsData( userId: userId ?? this.userId, username: username ?? this.username, displayName: displayName.present ? displayName.value : this.displayName, nickName: nickName.present ? nickName.value : this.nickName, avatarSvgCompressed: avatarSvgCompressed.present ? avatarSvgCompressed.value : this.avatarSvgCompressed, senderProfileCounter: senderProfileCounter ?? this.senderProfileCounter, accepted: accepted ?? this.accepted, deletedByUser: deletedByUser ?? this.deletedByUser, requested: requested ?? this.requested, blocked: blocked ?? this.blocked, verified: verified ?? this.verified, accountDeleted: accountDeleted ?? this.accountDeleted, createdAt: createdAt ?? this.createdAt, ); ContactsData copyWithCompanion(ContactsCompanion data) { return ContactsData( userId: data.userId.present ? data.userId.value : this.userId, username: data.username.present ? data.username.value : this.username, displayName: data.displayName.present ? data.displayName.value : this.displayName, nickName: data.nickName.present ? data.nickName.value : this.nickName, avatarSvgCompressed: data.avatarSvgCompressed.present ? data.avatarSvgCompressed.value : this.avatarSvgCompressed, senderProfileCounter: data.senderProfileCounter.present ? data.senderProfileCounter.value : this.senderProfileCounter, accepted: data.accepted.present ? data.accepted.value : this.accepted, deletedByUser: data.deletedByUser.present ? data.deletedByUser.value : this.deletedByUser, requested: data.requested.present ? data.requested.value : this.requested, blocked: data.blocked.present ? data.blocked.value : this.blocked, verified: data.verified.present ? data.verified.value : this.verified, accountDeleted: data.accountDeleted.present ? data.accountDeleted.value : this.accountDeleted, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('ContactsData(') ..write('userId: $userId, ') ..write('username: $username, ') ..write('displayName: $displayName, ') ..write('nickName: $nickName, ') ..write('avatarSvgCompressed: $avatarSvgCompressed, ') ..write('senderProfileCounter: $senderProfileCounter, ') ..write('accepted: $accepted, ') ..write('deletedByUser: $deletedByUser, ') ..write('requested: $requested, ') ..write('blocked: $blocked, ') ..write('verified: $verified, ') ..write('accountDeleted: $accountDeleted, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash( userId, username, displayName, nickName, $driftBlobEquality.hash(avatarSvgCompressed), senderProfileCounter, accepted, deletedByUser, requested, blocked, verified, accountDeleted, createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is ContactsData && other.userId == this.userId && other.username == this.username && other.displayName == this.displayName && other.nickName == this.nickName && $driftBlobEquality.equals( other.avatarSvgCompressed, this.avatarSvgCompressed) && other.senderProfileCounter == this.senderProfileCounter && other.accepted == this.accepted && other.deletedByUser == this.deletedByUser && other.requested == this.requested && other.blocked == this.blocked && other.verified == this.verified && other.accountDeleted == this.accountDeleted && other.createdAt == this.createdAt); } class ContactsCompanion extends UpdateCompanion { final Value userId; final Value username; final Value displayName; final Value nickName; final Value avatarSvgCompressed; final Value senderProfileCounter; final Value accepted; final Value deletedByUser; final Value requested; final Value blocked; final Value verified; final Value accountDeleted; final Value createdAt; const ContactsCompanion({ this.userId = const Value.absent(), this.username = const Value.absent(), this.displayName = const Value.absent(), this.nickName = const Value.absent(), this.avatarSvgCompressed = const Value.absent(), this.senderProfileCounter = const Value.absent(), this.accepted = const Value.absent(), this.deletedByUser = const Value.absent(), this.requested = const Value.absent(), this.blocked = const Value.absent(), this.verified = const Value.absent(), this.accountDeleted = const Value.absent(), this.createdAt = const Value.absent(), }); ContactsCompanion.insert({ this.userId = const Value.absent(), required String username, this.displayName = const Value.absent(), this.nickName = const Value.absent(), this.avatarSvgCompressed = const Value.absent(), this.senderProfileCounter = const Value.absent(), this.accepted = const Value.absent(), this.deletedByUser = const Value.absent(), this.requested = const Value.absent(), this.blocked = const Value.absent(), this.verified = const Value.absent(), this.accountDeleted = const Value.absent(), this.createdAt = const Value.absent(), }) : username = Value(username); static Insertable custom({ Expression? userId, Expression? username, Expression? displayName, Expression? nickName, Expression? avatarSvgCompressed, Expression? senderProfileCounter, Expression? accepted, Expression? deletedByUser, Expression? requested, Expression? blocked, Expression? verified, Expression? accountDeleted, Expression? createdAt, }) { return RawValuesInsertable({ if (userId != null) 'user_id': userId, if (username != null) 'username': username, if (displayName != null) 'display_name': displayName, if (nickName != null) 'nick_name': nickName, if (avatarSvgCompressed != null) 'avatar_svg_compressed': avatarSvgCompressed, if (senderProfileCounter != null) 'sender_profile_counter': senderProfileCounter, if (accepted != null) 'accepted': accepted, if (deletedByUser != null) 'deleted_by_user': deletedByUser, if (requested != null) 'requested': requested, if (blocked != null) 'blocked': blocked, if (verified != null) 'verified': verified, if (accountDeleted != null) 'account_deleted': accountDeleted, if (createdAt != null) 'created_at': createdAt, }); } ContactsCompanion copyWith( {Value? userId, Value? username, Value? displayName, Value? nickName, Value? avatarSvgCompressed, Value? senderProfileCounter, Value? accepted, Value? deletedByUser, Value? requested, Value? blocked, Value? verified, Value? accountDeleted, Value? createdAt}) { return ContactsCompanion( userId: userId ?? this.userId, username: username ?? this.username, displayName: displayName ?? this.displayName, nickName: nickName ?? this.nickName, avatarSvgCompressed: avatarSvgCompressed ?? this.avatarSvgCompressed, senderProfileCounter: senderProfileCounter ?? this.senderProfileCounter, accepted: accepted ?? this.accepted, deletedByUser: deletedByUser ?? this.deletedByUser, requested: requested ?? this.requested, blocked: blocked ?? this.blocked, verified: verified ?? this.verified, accountDeleted: accountDeleted ?? this.accountDeleted, createdAt: createdAt ?? this.createdAt, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (userId.present) { map['user_id'] = Variable(userId.value); } if (username.present) { map['username'] = Variable(username.value); } if (displayName.present) { map['display_name'] = Variable(displayName.value); } if (nickName.present) { map['nick_name'] = Variable(nickName.value); } if (avatarSvgCompressed.present) { map['avatar_svg_compressed'] = Variable(avatarSvgCompressed.value); } if (senderProfileCounter.present) { map['sender_profile_counter'] = Variable(senderProfileCounter.value); } if (accepted.present) { map['accepted'] = Variable(accepted.value); } if (deletedByUser.present) { map['deleted_by_user'] = Variable(deletedByUser.value); } if (requested.present) { map['requested'] = Variable(requested.value); } if (blocked.present) { map['blocked'] = Variable(blocked.value); } if (verified.present) { map['verified'] = Variable(verified.value); } if (accountDeleted.present) { map['account_deleted'] = Variable(accountDeleted.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } return map; } @override String toString() { return (StringBuffer('ContactsCompanion(') ..write('userId: $userId, ') ..write('username: $username, ') ..write('displayName: $displayName, ') ..write('nickName: $nickName, ') ..write('avatarSvgCompressed: $avatarSvgCompressed, ') ..write('senderProfileCounter: $senderProfileCounter, ') ..write('accepted: $accepted, ') ..write('deletedByUser: $deletedByUser, ') ..write('requested: $requested, ') ..write('blocked: $blocked, ') ..write('verified: $verified, ') ..write('accountDeleted: $accountDeleted, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } } class Groups extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; Groups(this.attachedDatabase, [this._alias]); late final GeneratedColumn groupId = GeneratedColumn( 'group_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn isGroupAdmin = GeneratedColumn( 'is_group_admin', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("is_group_admin" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn isDirectChat = GeneratedColumn( 'is_direct_chat', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("is_direct_chat" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn pinned = GeneratedColumn( 'pinned', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways('CHECK ("pinned" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn archived = GeneratedColumn( 'archived', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways('CHECK ("archived" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn joinedGroup = GeneratedColumn( 'joined_group', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("joined_group" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn leftGroup = GeneratedColumn( 'left_group', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways('CHECK ("left_group" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn deletedContent = GeneratedColumn( 'deleted_content', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("deleted_content" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn stateVersionId = GeneratedColumn( 'state_version_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const CustomExpression('0')); late final GeneratedColumn stateEncryptionKey = GeneratedColumn('state_encryption_key', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false); late final GeneratedColumn myGroupPrivateKey = GeneratedColumn('my_group_private_key', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false); late final GeneratedColumn groupName = GeneratedColumn( 'group_name', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn draftMessage = GeneratedColumn( 'draft_message', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); late final GeneratedColumn totalMediaCounter = GeneratedColumn( 'total_media_counter', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const CustomExpression('0')); late final GeneratedColumn alsoBestFriend = GeneratedColumn( 'also_best_friend', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("also_best_friend" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn deleteMessagesAfterMilliseconds = GeneratedColumn( 'delete_messages_after_milliseconds', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const CustomExpression('86400000')); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); late final GeneratedColumn lastMessageSend = GeneratedColumn('last_message_send', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); late final GeneratedColumn lastMessageReceived = GeneratedColumn('last_message_received', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); late final GeneratedColumn lastFlameCounterChange = GeneratedColumn('last_flame_counter_change', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); late final GeneratedColumn lastFlameSync = GeneratedColumn('last_flame_sync', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); late final GeneratedColumn flameCounter = GeneratedColumn( 'flame_counter', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const CustomExpression('0')); late final GeneratedColumn maxFlameCounter = GeneratedColumn( 'max_flame_counter', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const CustomExpression('0')); late final GeneratedColumn maxFlameCounterFrom = GeneratedColumn('max_flame_counter_from', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); late final GeneratedColumn lastMessageExchange = GeneratedColumn('last_message_exchange', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [ groupId, isGroupAdmin, isDirectChat, pinned, archived, joinedGroup, leftGroup, deletedContent, stateVersionId, stateEncryptionKey, myGroupPrivateKey, groupName, draftMessage, totalMediaCounter, alsoBestFriend, deleteMessagesAfterMilliseconds, createdAt, lastMessageSend, lastMessageReceived, lastFlameCounterChange, lastFlameSync, flameCounter, maxFlameCounter, maxFlameCounterFrom, lastMessageExchange ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'groups'; @override Set get $primaryKey => {groupId}; @override GroupsData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return GroupsData( groupId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}group_id'])!, isGroupAdmin: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}is_group_admin'])!, isDirectChat: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}is_direct_chat'])!, pinned: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}pinned'])!, archived: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}archived'])!, joinedGroup: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}joined_group'])!, leftGroup: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}left_group'])!, deletedContent: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}deleted_content'])!, stateVersionId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}state_version_id'])!, stateEncryptionKey: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}state_encryption_key']), myGroupPrivateKey: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}my_group_private_key']), groupName: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}group_name'])!, draftMessage: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}draft_message']), totalMediaCounter: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}total_media_counter'])!, alsoBestFriend: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}also_best_friend'])!, deleteMessagesAfterMilliseconds: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}delete_messages_after_milliseconds'])!, createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, lastMessageSend: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}last_message_send']), lastMessageReceived: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}last_message_received']), lastFlameCounterChange: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}last_flame_counter_change']), lastFlameSync: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}last_flame_sync']), flameCounter: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}flame_counter'])!, maxFlameCounter: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}max_flame_counter'])!, maxFlameCounterFrom: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}max_flame_counter_from']), lastMessageExchange: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}last_message_exchange'])!, ); } @override Groups createAlias(String alias) { return Groups(attachedDatabase, alias); } } class GroupsData extends DataClass implements Insertable { final String groupId; final bool isGroupAdmin; final bool isDirectChat; final bool pinned; final bool archived; final bool joinedGroup; final bool leftGroup; final bool deletedContent; final int stateVersionId; final i2.Uint8List? stateEncryptionKey; final i2.Uint8List? myGroupPrivateKey; final String groupName; final String? draftMessage; final int totalMediaCounter; final bool alsoBestFriend; final int deleteMessagesAfterMilliseconds; final DateTime createdAt; final DateTime? lastMessageSend; final DateTime? lastMessageReceived; final DateTime? lastFlameCounterChange; final DateTime? lastFlameSync; final int flameCounter; final int maxFlameCounter; final DateTime? maxFlameCounterFrom; final DateTime lastMessageExchange; const GroupsData( {required this.groupId, required this.isGroupAdmin, required this.isDirectChat, required this.pinned, required this.archived, required this.joinedGroup, required this.leftGroup, required this.deletedContent, required this.stateVersionId, this.stateEncryptionKey, this.myGroupPrivateKey, required this.groupName, this.draftMessage, required this.totalMediaCounter, required this.alsoBestFriend, required this.deleteMessagesAfterMilliseconds, required this.createdAt, this.lastMessageSend, this.lastMessageReceived, this.lastFlameCounterChange, this.lastFlameSync, required this.flameCounter, required this.maxFlameCounter, this.maxFlameCounterFrom, required this.lastMessageExchange}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['group_id'] = Variable(groupId); map['is_group_admin'] = Variable(isGroupAdmin); map['is_direct_chat'] = Variable(isDirectChat); map['pinned'] = Variable(pinned); map['archived'] = Variable(archived); map['joined_group'] = Variable(joinedGroup); map['left_group'] = Variable(leftGroup); map['deleted_content'] = Variable(deletedContent); map['state_version_id'] = Variable(stateVersionId); if (!nullToAbsent || stateEncryptionKey != null) { map['state_encryption_key'] = Variable(stateEncryptionKey); } if (!nullToAbsent || myGroupPrivateKey != null) { map['my_group_private_key'] = Variable(myGroupPrivateKey); } map['group_name'] = Variable(groupName); if (!nullToAbsent || draftMessage != null) { map['draft_message'] = Variable(draftMessage); } map['total_media_counter'] = Variable(totalMediaCounter); map['also_best_friend'] = Variable(alsoBestFriend); map['delete_messages_after_milliseconds'] = Variable(deleteMessagesAfterMilliseconds); map['created_at'] = Variable(createdAt); if (!nullToAbsent || lastMessageSend != null) { map['last_message_send'] = Variable(lastMessageSend); } if (!nullToAbsent || lastMessageReceived != null) { map['last_message_received'] = Variable(lastMessageReceived); } if (!nullToAbsent || lastFlameCounterChange != null) { map['last_flame_counter_change'] = Variable(lastFlameCounterChange); } if (!nullToAbsent || lastFlameSync != null) { map['last_flame_sync'] = Variable(lastFlameSync); } map['flame_counter'] = Variable(flameCounter); map['max_flame_counter'] = Variable(maxFlameCounter); if (!nullToAbsent || maxFlameCounterFrom != null) { map['max_flame_counter_from'] = Variable(maxFlameCounterFrom); } map['last_message_exchange'] = Variable(lastMessageExchange); return map; } GroupsCompanion toCompanion(bool nullToAbsent) { return GroupsCompanion( groupId: Value(groupId), isGroupAdmin: Value(isGroupAdmin), isDirectChat: Value(isDirectChat), pinned: Value(pinned), archived: Value(archived), joinedGroup: Value(joinedGroup), leftGroup: Value(leftGroup), deletedContent: Value(deletedContent), stateVersionId: Value(stateVersionId), stateEncryptionKey: stateEncryptionKey == null && nullToAbsent ? const Value.absent() : Value(stateEncryptionKey), myGroupPrivateKey: myGroupPrivateKey == null && nullToAbsent ? const Value.absent() : Value(myGroupPrivateKey), groupName: Value(groupName), draftMessage: draftMessage == null && nullToAbsent ? const Value.absent() : Value(draftMessage), totalMediaCounter: Value(totalMediaCounter), alsoBestFriend: Value(alsoBestFriend), deleteMessagesAfterMilliseconds: Value(deleteMessagesAfterMilliseconds), createdAt: Value(createdAt), lastMessageSend: lastMessageSend == null && nullToAbsent ? const Value.absent() : Value(lastMessageSend), lastMessageReceived: lastMessageReceived == null && nullToAbsent ? const Value.absent() : Value(lastMessageReceived), lastFlameCounterChange: lastFlameCounterChange == null && nullToAbsent ? const Value.absent() : Value(lastFlameCounterChange), lastFlameSync: lastFlameSync == null && nullToAbsent ? const Value.absent() : Value(lastFlameSync), flameCounter: Value(flameCounter), maxFlameCounter: Value(maxFlameCounter), maxFlameCounterFrom: maxFlameCounterFrom == null && nullToAbsent ? const Value.absent() : Value(maxFlameCounterFrom), lastMessageExchange: Value(lastMessageExchange), ); } factory GroupsData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return GroupsData( groupId: serializer.fromJson(json['groupId']), isGroupAdmin: serializer.fromJson(json['isGroupAdmin']), isDirectChat: serializer.fromJson(json['isDirectChat']), pinned: serializer.fromJson(json['pinned']), archived: serializer.fromJson(json['archived']), joinedGroup: serializer.fromJson(json['joinedGroup']), leftGroup: serializer.fromJson(json['leftGroup']), deletedContent: serializer.fromJson(json['deletedContent']), stateVersionId: serializer.fromJson(json['stateVersionId']), stateEncryptionKey: serializer.fromJson(json['stateEncryptionKey']), myGroupPrivateKey: serializer.fromJson(json['myGroupPrivateKey']), groupName: serializer.fromJson(json['groupName']), draftMessage: serializer.fromJson(json['draftMessage']), totalMediaCounter: serializer.fromJson(json['totalMediaCounter']), alsoBestFriend: serializer.fromJson(json['alsoBestFriend']), deleteMessagesAfterMilliseconds: serializer.fromJson(json['deleteMessagesAfterMilliseconds']), createdAt: serializer.fromJson(json['createdAt']), lastMessageSend: serializer.fromJson(json['lastMessageSend']), lastMessageReceived: serializer.fromJson(json['lastMessageReceived']), lastFlameCounterChange: serializer.fromJson(json['lastFlameCounterChange']), lastFlameSync: serializer.fromJson(json['lastFlameSync']), flameCounter: serializer.fromJson(json['flameCounter']), maxFlameCounter: serializer.fromJson(json['maxFlameCounter']), maxFlameCounterFrom: serializer.fromJson(json['maxFlameCounterFrom']), lastMessageExchange: serializer.fromJson(json['lastMessageExchange']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'groupId': serializer.toJson(groupId), 'isGroupAdmin': serializer.toJson(isGroupAdmin), 'isDirectChat': serializer.toJson(isDirectChat), 'pinned': serializer.toJson(pinned), 'archived': serializer.toJson(archived), 'joinedGroup': serializer.toJson(joinedGroup), 'leftGroup': serializer.toJson(leftGroup), 'deletedContent': serializer.toJson(deletedContent), 'stateVersionId': serializer.toJson(stateVersionId), 'stateEncryptionKey': serializer.toJson(stateEncryptionKey), 'myGroupPrivateKey': serializer.toJson(myGroupPrivateKey), 'groupName': serializer.toJson(groupName), 'draftMessage': serializer.toJson(draftMessage), 'totalMediaCounter': serializer.toJson(totalMediaCounter), 'alsoBestFriend': serializer.toJson(alsoBestFriend), 'deleteMessagesAfterMilliseconds': serializer.toJson(deleteMessagesAfterMilliseconds), 'createdAt': serializer.toJson(createdAt), 'lastMessageSend': serializer.toJson(lastMessageSend), 'lastMessageReceived': serializer.toJson(lastMessageReceived), 'lastFlameCounterChange': serializer.toJson(lastFlameCounterChange), 'lastFlameSync': serializer.toJson(lastFlameSync), 'flameCounter': serializer.toJson(flameCounter), 'maxFlameCounter': serializer.toJson(maxFlameCounter), 'maxFlameCounterFrom': serializer.toJson(maxFlameCounterFrom), 'lastMessageExchange': serializer.toJson(lastMessageExchange), }; } GroupsData copyWith( {String? groupId, bool? isGroupAdmin, bool? isDirectChat, bool? pinned, bool? archived, bool? joinedGroup, bool? leftGroup, bool? deletedContent, int? stateVersionId, Value stateEncryptionKey = const Value.absent(), Value myGroupPrivateKey = const Value.absent(), String? groupName, Value draftMessage = const Value.absent(), int? totalMediaCounter, bool? alsoBestFriend, int? deleteMessagesAfterMilliseconds, DateTime? createdAt, Value lastMessageSend = const Value.absent(), Value lastMessageReceived = const Value.absent(), Value lastFlameCounterChange = const Value.absent(), Value lastFlameSync = const Value.absent(), int? flameCounter, int? maxFlameCounter, Value maxFlameCounterFrom = const Value.absent(), DateTime? lastMessageExchange}) => GroupsData( groupId: groupId ?? this.groupId, isGroupAdmin: isGroupAdmin ?? this.isGroupAdmin, isDirectChat: isDirectChat ?? this.isDirectChat, pinned: pinned ?? this.pinned, archived: archived ?? this.archived, joinedGroup: joinedGroup ?? this.joinedGroup, leftGroup: leftGroup ?? this.leftGroup, deletedContent: deletedContent ?? this.deletedContent, stateVersionId: stateVersionId ?? this.stateVersionId, stateEncryptionKey: stateEncryptionKey.present ? stateEncryptionKey.value : this.stateEncryptionKey, myGroupPrivateKey: myGroupPrivateKey.present ? myGroupPrivateKey.value : this.myGroupPrivateKey, groupName: groupName ?? this.groupName, draftMessage: draftMessage.present ? draftMessage.value : this.draftMessage, totalMediaCounter: totalMediaCounter ?? this.totalMediaCounter, alsoBestFriend: alsoBestFriend ?? this.alsoBestFriend, deleteMessagesAfterMilliseconds: deleteMessagesAfterMilliseconds ?? this.deleteMessagesAfterMilliseconds, createdAt: createdAt ?? this.createdAt, lastMessageSend: lastMessageSend.present ? lastMessageSend.value : this.lastMessageSend, lastMessageReceived: lastMessageReceived.present ? lastMessageReceived.value : this.lastMessageReceived, lastFlameCounterChange: lastFlameCounterChange.present ? lastFlameCounterChange.value : this.lastFlameCounterChange, lastFlameSync: lastFlameSync.present ? lastFlameSync.value : this.lastFlameSync, flameCounter: flameCounter ?? this.flameCounter, maxFlameCounter: maxFlameCounter ?? this.maxFlameCounter, maxFlameCounterFrom: maxFlameCounterFrom.present ? maxFlameCounterFrom.value : this.maxFlameCounterFrom, lastMessageExchange: lastMessageExchange ?? this.lastMessageExchange, ); GroupsData copyWithCompanion(GroupsCompanion data) { return GroupsData( groupId: data.groupId.present ? data.groupId.value : this.groupId, isGroupAdmin: data.isGroupAdmin.present ? data.isGroupAdmin.value : this.isGroupAdmin, isDirectChat: data.isDirectChat.present ? data.isDirectChat.value : this.isDirectChat, pinned: data.pinned.present ? data.pinned.value : this.pinned, archived: data.archived.present ? data.archived.value : this.archived, joinedGroup: data.joinedGroup.present ? data.joinedGroup.value : this.joinedGroup, leftGroup: data.leftGroup.present ? data.leftGroup.value : this.leftGroup, deletedContent: data.deletedContent.present ? data.deletedContent.value : this.deletedContent, stateVersionId: data.stateVersionId.present ? data.stateVersionId.value : this.stateVersionId, stateEncryptionKey: data.stateEncryptionKey.present ? data.stateEncryptionKey.value : this.stateEncryptionKey, myGroupPrivateKey: data.myGroupPrivateKey.present ? data.myGroupPrivateKey.value : this.myGroupPrivateKey, groupName: data.groupName.present ? data.groupName.value : this.groupName, draftMessage: data.draftMessage.present ? data.draftMessage.value : this.draftMessage, totalMediaCounter: data.totalMediaCounter.present ? data.totalMediaCounter.value : this.totalMediaCounter, alsoBestFriend: data.alsoBestFriend.present ? data.alsoBestFriend.value : this.alsoBestFriend, deleteMessagesAfterMilliseconds: data.deleteMessagesAfterMilliseconds.present ? data.deleteMessagesAfterMilliseconds.value : this.deleteMessagesAfterMilliseconds, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, lastMessageSend: data.lastMessageSend.present ? data.lastMessageSend.value : this.lastMessageSend, lastMessageReceived: data.lastMessageReceived.present ? data.lastMessageReceived.value : this.lastMessageReceived, lastFlameCounterChange: data.lastFlameCounterChange.present ? data.lastFlameCounterChange.value : this.lastFlameCounterChange, lastFlameSync: data.lastFlameSync.present ? data.lastFlameSync.value : this.lastFlameSync, flameCounter: data.flameCounter.present ? data.flameCounter.value : this.flameCounter, maxFlameCounter: data.maxFlameCounter.present ? data.maxFlameCounter.value : this.maxFlameCounter, maxFlameCounterFrom: data.maxFlameCounterFrom.present ? data.maxFlameCounterFrom.value : this.maxFlameCounterFrom, lastMessageExchange: data.lastMessageExchange.present ? data.lastMessageExchange.value : this.lastMessageExchange, ); } @override String toString() { return (StringBuffer('GroupsData(') ..write('groupId: $groupId, ') ..write('isGroupAdmin: $isGroupAdmin, ') ..write('isDirectChat: $isDirectChat, ') ..write('pinned: $pinned, ') ..write('archived: $archived, ') ..write('joinedGroup: $joinedGroup, ') ..write('leftGroup: $leftGroup, ') ..write('deletedContent: $deletedContent, ') ..write('stateVersionId: $stateVersionId, ') ..write('stateEncryptionKey: $stateEncryptionKey, ') ..write('myGroupPrivateKey: $myGroupPrivateKey, ') ..write('groupName: $groupName, ') ..write('draftMessage: $draftMessage, ') ..write('totalMediaCounter: $totalMediaCounter, ') ..write('alsoBestFriend: $alsoBestFriend, ') ..write( 'deleteMessagesAfterMilliseconds: $deleteMessagesAfterMilliseconds, ') ..write('createdAt: $createdAt, ') ..write('lastMessageSend: $lastMessageSend, ') ..write('lastMessageReceived: $lastMessageReceived, ') ..write('lastFlameCounterChange: $lastFlameCounterChange, ') ..write('lastFlameSync: $lastFlameSync, ') ..write('flameCounter: $flameCounter, ') ..write('maxFlameCounter: $maxFlameCounter, ') ..write('maxFlameCounterFrom: $maxFlameCounterFrom, ') ..write('lastMessageExchange: $lastMessageExchange') ..write(')')) .toString(); } @override int get hashCode => Object.hashAll([ groupId, isGroupAdmin, isDirectChat, pinned, archived, joinedGroup, leftGroup, deletedContent, stateVersionId, $driftBlobEquality.hash(stateEncryptionKey), $driftBlobEquality.hash(myGroupPrivateKey), groupName, draftMessage, totalMediaCounter, alsoBestFriend, deleteMessagesAfterMilliseconds, createdAt, lastMessageSend, lastMessageReceived, lastFlameCounterChange, lastFlameSync, flameCounter, maxFlameCounter, maxFlameCounterFrom, lastMessageExchange ]); @override bool operator ==(Object other) => identical(this, other) || (other is GroupsData && other.groupId == this.groupId && other.isGroupAdmin == this.isGroupAdmin && other.isDirectChat == this.isDirectChat && other.pinned == this.pinned && other.archived == this.archived && other.joinedGroup == this.joinedGroup && other.leftGroup == this.leftGroup && other.deletedContent == this.deletedContent && other.stateVersionId == this.stateVersionId && $driftBlobEquality.equals( other.stateEncryptionKey, this.stateEncryptionKey) && $driftBlobEquality.equals( other.myGroupPrivateKey, this.myGroupPrivateKey) && other.groupName == this.groupName && other.draftMessage == this.draftMessage && other.totalMediaCounter == this.totalMediaCounter && other.alsoBestFriend == this.alsoBestFriend && other.deleteMessagesAfterMilliseconds == this.deleteMessagesAfterMilliseconds && other.createdAt == this.createdAt && other.lastMessageSend == this.lastMessageSend && other.lastMessageReceived == this.lastMessageReceived && other.lastFlameCounterChange == this.lastFlameCounterChange && other.lastFlameSync == this.lastFlameSync && other.flameCounter == this.flameCounter && other.maxFlameCounter == this.maxFlameCounter && other.maxFlameCounterFrom == this.maxFlameCounterFrom && other.lastMessageExchange == this.lastMessageExchange); } class GroupsCompanion extends UpdateCompanion { final Value groupId; final Value isGroupAdmin; final Value isDirectChat; final Value pinned; final Value archived; final Value joinedGroup; final Value leftGroup; final Value deletedContent; final Value stateVersionId; final Value stateEncryptionKey; final Value myGroupPrivateKey; final Value groupName; final Value draftMessage; final Value totalMediaCounter; final Value alsoBestFriend; final Value deleteMessagesAfterMilliseconds; final Value createdAt; final Value lastMessageSend; final Value lastMessageReceived; final Value lastFlameCounterChange; final Value lastFlameSync; final Value flameCounter; final Value maxFlameCounter; final Value maxFlameCounterFrom; final Value lastMessageExchange; final Value rowid; const GroupsCompanion({ this.groupId = const Value.absent(), this.isGroupAdmin = const Value.absent(), this.isDirectChat = const Value.absent(), this.pinned = const Value.absent(), this.archived = const Value.absent(), this.joinedGroup = const Value.absent(), this.leftGroup = const Value.absent(), this.deletedContent = const Value.absent(), this.stateVersionId = const Value.absent(), this.stateEncryptionKey = const Value.absent(), this.myGroupPrivateKey = const Value.absent(), this.groupName = const Value.absent(), this.draftMessage = const Value.absent(), this.totalMediaCounter = const Value.absent(), this.alsoBestFriend = const Value.absent(), this.deleteMessagesAfterMilliseconds = const Value.absent(), this.createdAt = const Value.absent(), this.lastMessageSend = const Value.absent(), this.lastMessageReceived = const Value.absent(), this.lastFlameCounterChange = const Value.absent(), this.lastFlameSync = const Value.absent(), this.flameCounter = const Value.absent(), this.maxFlameCounter = const Value.absent(), this.maxFlameCounterFrom = const Value.absent(), this.lastMessageExchange = const Value.absent(), this.rowid = const Value.absent(), }); GroupsCompanion.insert({ required String groupId, this.isGroupAdmin = const Value.absent(), this.isDirectChat = const Value.absent(), this.pinned = const Value.absent(), this.archived = const Value.absent(), this.joinedGroup = const Value.absent(), this.leftGroup = const Value.absent(), this.deletedContent = const Value.absent(), this.stateVersionId = const Value.absent(), this.stateEncryptionKey = const Value.absent(), this.myGroupPrivateKey = const Value.absent(), required String groupName, this.draftMessage = const Value.absent(), this.totalMediaCounter = const Value.absent(), this.alsoBestFriend = const Value.absent(), this.deleteMessagesAfterMilliseconds = const Value.absent(), this.createdAt = const Value.absent(), this.lastMessageSend = const Value.absent(), this.lastMessageReceived = const Value.absent(), this.lastFlameCounterChange = const Value.absent(), this.lastFlameSync = const Value.absent(), this.flameCounter = const Value.absent(), this.maxFlameCounter = const Value.absent(), this.maxFlameCounterFrom = const Value.absent(), this.lastMessageExchange = const Value.absent(), this.rowid = const Value.absent(), }) : groupId = Value(groupId), groupName = Value(groupName); static Insertable custom({ Expression? groupId, Expression? isGroupAdmin, Expression? isDirectChat, Expression? pinned, Expression? archived, Expression? joinedGroup, Expression? leftGroup, Expression? deletedContent, Expression? stateVersionId, Expression? stateEncryptionKey, Expression? myGroupPrivateKey, Expression? groupName, Expression? draftMessage, Expression? totalMediaCounter, Expression? alsoBestFriend, Expression? deleteMessagesAfterMilliseconds, Expression? createdAt, Expression? lastMessageSend, Expression? lastMessageReceived, Expression? lastFlameCounterChange, Expression? lastFlameSync, Expression? flameCounter, Expression? maxFlameCounter, Expression? maxFlameCounterFrom, Expression? lastMessageExchange, Expression? rowid, }) { return RawValuesInsertable({ if (groupId != null) 'group_id': groupId, if (isGroupAdmin != null) 'is_group_admin': isGroupAdmin, if (isDirectChat != null) 'is_direct_chat': isDirectChat, if (pinned != null) 'pinned': pinned, if (archived != null) 'archived': archived, if (joinedGroup != null) 'joined_group': joinedGroup, if (leftGroup != null) 'left_group': leftGroup, if (deletedContent != null) 'deleted_content': deletedContent, if (stateVersionId != null) 'state_version_id': stateVersionId, if (stateEncryptionKey != null) 'state_encryption_key': stateEncryptionKey, if (myGroupPrivateKey != null) 'my_group_private_key': myGroupPrivateKey, if (groupName != null) 'group_name': groupName, if (draftMessage != null) 'draft_message': draftMessage, if (totalMediaCounter != null) 'total_media_counter': totalMediaCounter, if (alsoBestFriend != null) 'also_best_friend': alsoBestFriend, if (deleteMessagesAfterMilliseconds != null) 'delete_messages_after_milliseconds': deleteMessagesAfterMilliseconds, if (createdAt != null) 'created_at': createdAt, if (lastMessageSend != null) 'last_message_send': lastMessageSend, if (lastMessageReceived != null) 'last_message_received': lastMessageReceived, if (lastFlameCounterChange != null) 'last_flame_counter_change': lastFlameCounterChange, if (lastFlameSync != null) 'last_flame_sync': lastFlameSync, if (flameCounter != null) 'flame_counter': flameCounter, if (maxFlameCounter != null) 'max_flame_counter': maxFlameCounter, if (maxFlameCounterFrom != null) 'max_flame_counter_from': maxFlameCounterFrom, if (lastMessageExchange != null) 'last_message_exchange': lastMessageExchange, if (rowid != null) 'rowid': rowid, }); } GroupsCompanion copyWith( {Value? groupId, Value? isGroupAdmin, Value? isDirectChat, Value? pinned, Value? archived, Value? joinedGroup, Value? leftGroup, Value? deletedContent, Value? stateVersionId, Value? stateEncryptionKey, Value? myGroupPrivateKey, Value? groupName, Value? draftMessage, Value? totalMediaCounter, Value? alsoBestFriend, Value? deleteMessagesAfterMilliseconds, Value? createdAt, Value? lastMessageSend, Value? lastMessageReceived, Value? lastFlameCounterChange, Value? lastFlameSync, Value? flameCounter, Value? maxFlameCounter, Value? maxFlameCounterFrom, Value? lastMessageExchange, Value? rowid}) { return GroupsCompanion( groupId: groupId ?? this.groupId, isGroupAdmin: isGroupAdmin ?? this.isGroupAdmin, isDirectChat: isDirectChat ?? this.isDirectChat, pinned: pinned ?? this.pinned, archived: archived ?? this.archived, joinedGroup: joinedGroup ?? this.joinedGroup, leftGroup: leftGroup ?? this.leftGroup, deletedContent: deletedContent ?? this.deletedContent, stateVersionId: stateVersionId ?? this.stateVersionId, stateEncryptionKey: stateEncryptionKey ?? this.stateEncryptionKey, myGroupPrivateKey: myGroupPrivateKey ?? this.myGroupPrivateKey, groupName: groupName ?? this.groupName, draftMessage: draftMessage ?? this.draftMessage, totalMediaCounter: totalMediaCounter ?? this.totalMediaCounter, alsoBestFriend: alsoBestFriend ?? this.alsoBestFriend, deleteMessagesAfterMilliseconds: deleteMessagesAfterMilliseconds ?? this.deleteMessagesAfterMilliseconds, createdAt: createdAt ?? this.createdAt, lastMessageSend: lastMessageSend ?? this.lastMessageSend, lastMessageReceived: lastMessageReceived ?? this.lastMessageReceived, lastFlameCounterChange: lastFlameCounterChange ?? this.lastFlameCounterChange, lastFlameSync: lastFlameSync ?? this.lastFlameSync, flameCounter: flameCounter ?? this.flameCounter, maxFlameCounter: maxFlameCounter ?? this.maxFlameCounter, maxFlameCounterFrom: maxFlameCounterFrom ?? this.maxFlameCounterFrom, lastMessageExchange: lastMessageExchange ?? this.lastMessageExchange, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (groupId.present) { map['group_id'] = Variable(groupId.value); } if (isGroupAdmin.present) { map['is_group_admin'] = Variable(isGroupAdmin.value); } if (isDirectChat.present) { map['is_direct_chat'] = Variable(isDirectChat.value); } if (pinned.present) { map['pinned'] = Variable(pinned.value); } if (archived.present) { map['archived'] = Variable(archived.value); } if (joinedGroup.present) { map['joined_group'] = Variable(joinedGroup.value); } if (leftGroup.present) { map['left_group'] = Variable(leftGroup.value); } if (deletedContent.present) { map['deleted_content'] = Variable(deletedContent.value); } if (stateVersionId.present) { map['state_version_id'] = Variable(stateVersionId.value); } if (stateEncryptionKey.present) { map['state_encryption_key'] = Variable(stateEncryptionKey.value); } if (myGroupPrivateKey.present) { map['my_group_private_key'] = Variable(myGroupPrivateKey.value); } if (groupName.present) { map['group_name'] = Variable(groupName.value); } if (draftMessage.present) { map['draft_message'] = Variable(draftMessage.value); } if (totalMediaCounter.present) { map['total_media_counter'] = Variable(totalMediaCounter.value); } if (alsoBestFriend.present) { map['also_best_friend'] = Variable(alsoBestFriend.value); } if (deleteMessagesAfterMilliseconds.present) { map['delete_messages_after_milliseconds'] = Variable(deleteMessagesAfterMilliseconds.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } if (lastMessageSend.present) { map['last_message_send'] = Variable(lastMessageSend.value); } if (lastMessageReceived.present) { map['last_message_received'] = Variable(lastMessageReceived.value); } if (lastFlameCounterChange.present) { map['last_flame_counter_change'] = Variable(lastFlameCounterChange.value); } if (lastFlameSync.present) { map['last_flame_sync'] = Variable(lastFlameSync.value); } if (flameCounter.present) { map['flame_counter'] = Variable(flameCounter.value); } if (maxFlameCounter.present) { map['max_flame_counter'] = Variable(maxFlameCounter.value); } if (maxFlameCounterFrom.present) { map['max_flame_counter_from'] = Variable(maxFlameCounterFrom.value); } if (lastMessageExchange.present) { map['last_message_exchange'] = Variable(lastMessageExchange.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('GroupsCompanion(') ..write('groupId: $groupId, ') ..write('isGroupAdmin: $isGroupAdmin, ') ..write('isDirectChat: $isDirectChat, ') ..write('pinned: $pinned, ') ..write('archived: $archived, ') ..write('joinedGroup: $joinedGroup, ') ..write('leftGroup: $leftGroup, ') ..write('deletedContent: $deletedContent, ') ..write('stateVersionId: $stateVersionId, ') ..write('stateEncryptionKey: $stateEncryptionKey, ') ..write('myGroupPrivateKey: $myGroupPrivateKey, ') ..write('groupName: $groupName, ') ..write('draftMessage: $draftMessage, ') ..write('totalMediaCounter: $totalMediaCounter, ') ..write('alsoBestFriend: $alsoBestFriend, ') ..write( 'deleteMessagesAfterMilliseconds: $deleteMessagesAfterMilliseconds, ') ..write('createdAt: $createdAt, ') ..write('lastMessageSend: $lastMessageSend, ') ..write('lastMessageReceived: $lastMessageReceived, ') ..write('lastFlameCounterChange: $lastFlameCounterChange, ') ..write('lastFlameSync: $lastFlameSync, ') ..write('flameCounter: $flameCounter, ') ..write('maxFlameCounter: $maxFlameCounter, ') ..write('maxFlameCounterFrom: $maxFlameCounterFrom, ') ..write('lastMessageExchange: $lastMessageExchange, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class MediaFiles extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; MediaFiles(this.attachedDatabase, [this._alias]); late final GeneratedColumn mediaId = GeneratedColumn( 'media_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn type = GeneratedColumn( 'type', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn uploadState = GeneratedColumn( 'upload_state', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); late final GeneratedColumn downloadState = GeneratedColumn( 'download_state', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); late final GeneratedColumn requiresAuthentication = GeneratedColumn('requires_authentication', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("requires_authentication" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn stored = GeneratedColumn( 'stored', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways('CHECK ("stored" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn isDraftMedia = GeneratedColumn( 'is_draft_media', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("is_draft_media" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn reuploadRequestedBy = GeneratedColumn('reupload_requested_by', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); late final GeneratedColumn displayLimitInMilliseconds = GeneratedColumn('display_limit_in_milliseconds', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false); late final GeneratedColumn removeAudio = GeneratedColumn( 'remove_audio', aliasedName, true, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("remove_audio" IN (0, 1))')); late final GeneratedColumn downloadToken = GeneratedColumn('download_token', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false); late final GeneratedColumn encryptionKey = GeneratedColumn('encryption_key', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false); late final GeneratedColumn encryptionMac = GeneratedColumn('encryption_mac', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false); late final GeneratedColumn encryptionNonce = GeneratedColumn('encryption_nonce', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false); late final GeneratedColumn storedFileHash = GeneratedColumn('stored_file_hash', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [ mediaId, type, uploadState, downloadState, requiresAuthentication, stored, isDraftMedia, reuploadRequestedBy, displayLimitInMilliseconds, removeAudio, downloadToken, encryptionKey, encryptionMac, encryptionNonce, storedFileHash, createdAt ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'media_files'; @override Set get $primaryKey => {mediaId}; @override MediaFilesData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return MediaFilesData( mediaId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}media_id'])!, type: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}type'])!, uploadState: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}upload_state']), downloadState: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}download_state']), requiresAuthentication: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}requires_authentication'])!, stored: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}stored'])!, isDraftMedia: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}is_draft_media'])!, reuploadRequestedBy: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}reupload_requested_by']), displayLimitInMilliseconds: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}display_limit_in_milliseconds']), removeAudio: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}remove_audio']), downloadToken: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}download_token']), encryptionKey: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}encryption_key']), encryptionMac: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}encryption_mac']), encryptionNonce: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}encryption_nonce']), storedFileHash: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}stored_file_hash']), createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, ); } @override MediaFiles createAlias(String alias) { return MediaFiles(attachedDatabase, alias); } } class MediaFilesData extends DataClass implements Insertable { final String mediaId; final String type; final String? uploadState; final String? downloadState; final bool requiresAuthentication; final bool stored; final bool isDraftMedia; final String? reuploadRequestedBy; final int? displayLimitInMilliseconds; final bool? removeAudio; final i2.Uint8List? downloadToken; final i2.Uint8List? encryptionKey; final i2.Uint8List? encryptionMac; final i2.Uint8List? encryptionNonce; final i2.Uint8List? storedFileHash; final DateTime createdAt; const MediaFilesData( {required this.mediaId, required this.type, this.uploadState, this.downloadState, required this.requiresAuthentication, required this.stored, required this.isDraftMedia, this.reuploadRequestedBy, this.displayLimitInMilliseconds, this.removeAudio, this.downloadToken, this.encryptionKey, this.encryptionMac, this.encryptionNonce, this.storedFileHash, required this.createdAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['media_id'] = Variable(mediaId); map['type'] = Variable(type); if (!nullToAbsent || uploadState != null) { map['upload_state'] = Variable(uploadState); } if (!nullToAbsent || downloadState != null) { map['download_state'] = Variable(downloadState); } map['requires_authentication'] = Variable(requiresAuthentication); map['stored'] = Variable(stored); map['is_draft_media'] = Variable(isDraftMedia); if (!nullToAbsent || reuploadRequestedBy != null) { map['reupload_requested_by'] = Variable(reuploadRequestedBy); } if (!nullToAbsent || displayLimitInMilliseconds != null) { map['display_limit_in_milliseconds'] = Variable(displayLimitInMilliseconds); } if (!nullToAbsent || removeAudio != null) { map['remove_audio'] = Variable(removeAudio); } if (!nullToAbsent || downloadToken != null) { map['download_token'] = Variable(downloadToken); } if (!nullToAbsent || encryptionKey != null) { map['encryption_key'] = Variable(encryptionKey); } if (!nullToAbsent || encryptionMac != null) { map['encryption_mac'] = Variable(encryptionMac); } if (!nullToAbsent || encryptionNonce != null) { map['encryption_nonce'] = Variable(encryptionNonce); } if (!nullToAbsent || storedFileHash != null) { map['stored_file_hash'] = Variable(storedFileHash); } map['created_at'] = Variable(createdAt); return map; } MediaFilesCompanion toCompanion(bool nullToAbsent) { return MediaFilesCompanion( mediaId: Value(mediaId), type: Value(type), uploadState: uploadState == null && nullToAbsent ? const Value.absent() : Value(uploadState), downloadState: downloadState == null && nullToAbsent ? const Value.absent() : Value(downloadState), requiresAuthentication: Value(requiresAuthentication), stored: Value(stored), isDraftMedia: Value(isDraftMedia), reuploadRequestedBy: reuploadRequestedBy == null && nullToAbsent ? const Value.absent() : Value(reuploadRequestedBy), displayLimitInMilliseconds: displayLimitInMilliseconds == null && nullToAbsent ? const Value.absent() : Value(displayLimitInMilliseconds), removeAudio: removeAudio == null && nullToAbsent ? const Value.absent() : Value(removeAudio), downloadToken: downloadToken == null && nullToAbsent ? const Value.absent() : Value(downloadToken), encryptionKey: encryptionKey == null && nullToAbsent ? const Value.absent() : Value(encryptionKey), encryptionMac: encryptionMac == null && nullToAbsent ? const Value.absent() : Value(encryptionMac), encryptionNonce: encryptionNonce == null && nullToAbsent ? const Value.absent() : Value(encryptionNonce), storedFileHash: storedFileHash == null && nullToAbsent ? const Value.absent() : Value(storedFileHash), createdAt: Value(createdAt), ); } factory MediaFilesData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return MediaFilesData( mediaId: serializer.fromJson(json['mediaId']), type: serializer.fromJson(json['type']), uploadState: serializer.fromJson(json['uploadState']), downloadState: serializer.fromJson(json['downloadState']), requiresAuthentication: serializer.fromJson(json['requiresAuthentication']), stored: serializer.fromJson(json['stored']), isDraftMedia: serializer.fromJson(json['isDraftMedia']), reuploadRequestedBy: serializer.fromJson(json['reuploadRequestedBy']), displayLimitInMilliseconds: serializer.fromJson(json['displayLimitInMilliseconds']), removeAudio: serializer.fromJson(json['removeAudio']), downloadToken: serializer.fromJson(json['downloadToken']), encryptionKey: serializer.fromJson(json['encryptionKey']), encryptionMac: serializer.fromJson(json['encryptionMac']), encryptionNonce: serializer.fromJson(json['encryptionNonce']), storedFileHash: serializer.fromJson(json['storedFileHash']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'mediaId': serializer.toJson(mediaId), 'type': serializer.toJson(type), 'uploadState': serializer.toJson(uploadState), 'downloadState': serializer.toJson(downloadState), 'requiresAuthentication': serializer.toJson(requiresAuthentication), 'stored': serializer.toJson(stored), 'isDraftMedia': serializer.toJson(isDraftMedia), 'reuploadRequestedBy': serializer.toJson(reuploadRequestedBy), 'displayLimitInMilliseconds': serializer.toJson(displayLimitInMilliseconds), 'removeAudio': serializer.toJson(removeAudio), 'downloadToken': serializer.toJson(downloadToken), 'encryptionKey': serializer.toJson(encryptionKey), 'encryptionMac': serializer.toJson(encryptionMac), 'encryptionNonce': serializer.toJson(encryptionNonce), 'storedFileHash': serializer.toJson(storedFileHash), 'createdAt': serializer.toJson(createdAt), }; } MediaFilesData copyWith( {String? mediaId, String? type, Value uploadState = const Value.absent(), Value downloadState = const Value.absent(), bool? requiresAuthentication, bool? stored, bool? isDraftMedia, Value reuploadRequestedBy = const Value.absent(), Value displayLimitInMilliseconds = const Value.absent(), Value removeAudio = const Value.absent(), Value downloadToken = const Value.absent(), Value encryptionKey = const Value.absent(), Value encryptionMac = const Value.absent(), Value encryptionNonce = const Value.absent(), Value storedFileHash = const Value.absent(), DateTime? createdAt}) => MediaFilesData( mediaId: mediaId ?? this.mediaId, type: type ?? this.type, uploadState: uploadState.present ? uploadState.value : this.uploadState, downloadState: downloadState.present ? downloadState.value : this.downloadState, requiresAuthentication: requiresAuthentication ?? this.requiresAuthentication, stored: stored ?? this.stored, isDraftMedia: isDraftMedia ?? this.isDraftMedia, reuploadRequestedBy: reuploadRequestedBy.present ? reuploadRequestedBy.value : this.reuploadRequestedBy, displayLimitInMilliseconds: displayLimitInMilliseconds.present ? displayLimitInMilliseconds.value : this.displayLimitInMilliseconds, removeAudio: removeAudio.present ? removeAudio.value : this.removeAudio, downloadToken: downloadToken.present ? downloadToken.value : this.downloadToken, encryptionKey: encryptionKey.present ? encryptionKey.value : this.encryptionKey, encryptionMac: encryptionMac.present ? encryptionMac.value : this.encryptionMac, encryptionNonce: encryptionNonce.present ? encryptionNonce.value : this.encryptionNonce, storedFileHash: storedFileHash.present ? storedFileHash.value : this.storedFileHash, createdAt: createdAt ?? this.createdAt, ); MediaFilesData copyWithCompanion(MediaFilesCompanion data) { return MediaFilesData( mediaId: data.mediaId.present ? data.mediaId.value : this.mediaId, type: data.type.present ? data.type.value : this.type, uploadState: data.uploadState.present ? data.uploadState.value : this.uploadState, downloadState: data.downloadState.present ? data.downloadState.value : this.downloadState, requiresAuthentication: data.requiresAuthentication.present ? data.requiresAuthentication.value : this.requiresAuthentication, stored: data.stored.present ? data.stored.value : this.stored, isDraftMedia: data.isDraftMedia.present ? data.isDraftMedia.value : this.isDraftMedia, reuploadRequestedBy: data.reuploadRequestedBy.present ? data.reuploadRequestedBy.value : this.reuploadRequestedBy, displayLimitInMilliseconds: data.displayLimitInMilliseconds.present ? data.displayLimitInMilliseconds.value : this.displayLimitInMilliseconds, removeAudio: data.removeAudio.present ? data.removeAudio.value : this.removeAudio, downloadToken: data.downloadToken.present ? data.downloadToken.value : this.downloadToken, encryptionKey: data.encryptionKey.present ? data.encryptionKey.value : this.encryptionKey, encryptionMac: data.encryptionMac.present ? data.encryptionMac.value : this.encryptionMac, encryptionNonce: data.encryptionNonce.present ? data.encryptionNonce.value : this.encryptionNonce, storedFileHash: data.storedFileHash.present ? data.storedFileHash.value : this.storedFileHash, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('MediaFilesData(') ..write('mediaId: $mediaId, ') ..write('type: $type, ') ..write('uploadState: $uploadState, ') ..write('downloadState: $downloadState, ') ..write('requiresAuthentication: $requiresAuthentication, ') ..write('stored: $stored, ') ..write('isDraftMedia: $isDraftMedia, ') ..write('reuploadRequestedBy: $reuploadRequestedBy, ') ..write('displayLimitInMilliseconds: $displayLimitInMilliseconds, ') ..write('removeAudio: $removeAudio, ') ..write('downloadToken: $downloadToken, ') ..write('encryptionKey: $encryptionKey, ') ..write('encryptionMac: $encryptionMac, ') ..write('encryptionNonce: $encryptionNonce, ') ..write('storedFileHash: $storedFileHash, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash( mediaId, type, uploadState, downloadState, requiresAuthentication, stored, isDraftMedia, reuploadRequestedBy, displayLimitInMilliseconds, removeAudio, $driftBlobEquality.hash(downloadToken), $driftBlobEquality.hash(encryptionKey), $driftBlobEquality.hash(encryptionMac), $driftBlobEquality.hash(encryptionNonce), $driftBlobEquality.hash(storedFileHash), createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is MediaFilesData && other.mediaId == this.mediaId && other.type == this.type && other.uploadState == this.uploadState && other.downloadState == this.downloadState && other.requiresAuthentication == this.requiresAuthentication && other.stored == this.stored && other.isDraftMedia == this.isDraftMedia && other.reuploadRequestedBy == this.reuploadRequestedBy && other.displayLimitInMilliseconds == this.displayLimitInMilliseconds && other.removeAudio == this.removeAudio && $driftBlobEquality.equals(other.downloadToken, this.downloadToken) && $driftBlobEquality.equals(other.encryptionKey, this.encryptionKey) && $driftBlobEquality.equals(other.encryptionMac, this.encryptionMac) && $driftBlobEquality.equals( other.encryptionNonce, this.encryptionNonce) && $driftBlobEquality.equals( other.storedFileHash, this.storedFileHash) && other.createdAt == this.createdAt); } class MediaFilesCompanion extends UpdateCompanion { final Value mediaId; final Value type; final Value uploadState; final Value downloadState; final Value requiresAuthentication; final Value stored; final Value isDraftMedia; final Value reuploadRequestedBy; final Value displayLimitInMilliseconds; final Value removeAudio; final Value downloadToken; final Value encryptionKey; final Value encryptionMac; final Value encryptionNonce; final Value storedFileHash; final Value createdAt; final Value rowid; const MediaFilesCompanion({ this.mediaId = const Value.absent(), this.type = const Value.absent(), this.uploadState = const Value.absent(), this.downloadState = const Value.absent(), this.requiresAuthentication = const Value.absent(), this.stored = const Value.absent(), this.isDraftMedia = const Value.absent(), this.reuploadRequestedBy = const Value.absent(), this.displayLimitInMilliseconds = const Value.absent(), this.removeAudio = const Value.absent(), this.downloadToken = const Value.absent(), this.encryptionKey = const Value.absent(), this.encryptionMac = const Value.absent(), this.encryptionNonce = const Value.absent(), this.storedFileHash = const Value.absent(), this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }); MediaFilesCompanion.insert({ required String mediaId, required String type, this.uploadState = const Value.absent(), this.downloadState = const Value.absent(), this.requiresAuthentication = const Value.absent(), this.stored = const Value.absent(), this.isDraftMedia = const Value.absent(), this.reuploadRequestedBy = const Value.absent(), this.displayLimitInMilliseconds = const Value.absent(), this.removeAudio = const Value.absent(), this.downloadToken = const Value.absent(), this.encryptionKey = const Value.absent(), this.encryptionMac = const Value.absent(), this.encryptionNonce = const Value.absent(), this.storedFileHash = const Value.absent(), this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }) : mediaId = Value(mediaId), type = Value(type); static Insertable custom({ Expression? mediaId, Expression? type, Expression? uploadState, Expression? downloadState, Expression? requiresAuthentication, Expression? stored, Expression? isDraftMedia, Expression? reuploadRequestedBy, Expression? displayLimitInMilliseconds, Expression? removeAudio, Expression? downloadToken, Expression? encryptionKey, Expression? encryptionMac, Expression? encryptionNonce, Expression? storedFileHash, Expression? createdAt, Expression? rowid, }) { return RawValuesInsertable({ if (mediaId != null) 'media_id': mediaId, if (type != null) 'type': type, if (uploadState != null) 'upload_state': uploadState, if (downloadState != null) 'download_state': downloadState, if (requiresAuthentication != null) 'requires_authentication': requiresAuthentication, if (stored != null) 'stored': stored, if (isDraftMedia != null) 'is_draft_media': isDraftMedia, if (reuploadRequestedBy != null) 'reupload_requested_by': reuploadRequestedBy, if (displayLimitInMilliseconds != null) 'display_limit_in_milliseconds': displayLimitInMilliseconds, if (removeAudio != null) 'remove_audio': removeAudio, if (downloadToken != null) 'download_token': downloadToken, if (encryptionKey != null) 'encryption_key': encryptionKey, if (encryptionMac != null) 'encryption_mac': encryptionMac, if (encryptionNonce != null) 'encryption_nonce': encryptionNonce, if (storedFileHash != null) 'stored_file_hash': storedFileHash, if (createdAt != null) 'created_at': createdAt, if (rowid != null) 'rowid': rowid, }); } MediaFilesCompanion copyWith( {Value? mediaId, Value? type, Value? uploadState, Value? downloadState, Value? requiresAuthentication, Value? stored, Value? isDraftMedia, Value? reuploadRequestedBy, Value? displayLimitInMilliseconds, Value? removeAudio, Value? downloadToken, Value? encryptionKey, Value? encryptionMac, Value? encryptionNonce, Value? storedFileHash, Value? createdAt, Value? rowid}) { return MediaFilesCompanion( mediaId: mediaId ?? this.mediaId, type: type ?? this.type, uploadState: uploadState ?? this.uploadState, downloadState: downloadState ?? this.downloadState, requiresAuthentication: requiresAuthentication ?? this.requiresAuthentication, stored: stored ?? this.stored, isDraftMedia: isDraftMedia ?? this.isDraftMedia, reuploadRequestedBy: reuploadRequestedBy ?? this.reuploadRequestedBy, displayLimitInMilliseconds: displayLimitInMilliseconds ?? this.displayLimitInMilliseconds, removeAudio: removeAudio ?? this.removeAudio, downloadToken: downloadToken ?? this.downloadToken, encryptionKey: encryptionKey ?? this.encryptionKey, encryptionMac: encryptionMac ?? this.encryptionMac, encryptionNonce: encryptionNonce ?? this.encryptionNonce, storedFileHash: storedFileHash ?? this.storedFileHash, createdAt: createdAt ?? this.createdAt, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (mediaId.present) { map['media_id'] = Variable(mediaId.value); } if (type.present) { map['type'] = Variable(type.value); } if (uploadState.present) { map['upload_state'] = Variable(uploadState.value); } if (downloadState.present) { map['download_state'] = Variable(downloadState.value); } if (requiresAuthentication.present) { map['requires_authentication'] = Variable(requiresAuthentication.value); } if (stored.present) { map['stored'] = Variable(stored.value); } if (isDraftMedia.present) { map['is_draft_media'] = Variable(isDraftMedia.value); } if (reuploadRequestedBy.present) { map['reupload_requested_by'] = Variable(reuploadRequestedBy.value); } if (displayLimitInMilliseconds.present) { map['display_limit_in_milliseconds'] = Variable(displayLimitInMilliseconds.value); } if (removeAudio.present) { map['remove_audio'] = Variable(removeAudio.value); } if (downloadToken.present) { map['download_token'] = Variable(downloadToken.value); } if (encryptionKey.present) { map['encryption_key'] = Variable(encryptionKey.value); } if (encryptionMac.present) { map['encryption_mac'] = Variable(encryptionMac.value); } if (encryptionNonce.present) { map['encryption_nonce'] = Variable(encryptionNonce.value); } if (storedFileHash.present) { map['stored_file_hash'] = Variable(storedFileHash.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('MediaFilesCompanion(') ..write('mediaId: $mediaId, ') ..write('type: $type, ') ..write('uploadState: $uploadState, ') ..write('downloadState: $downloadState, ') ..write('requiresAuthentication: $requiresAuthentication, ') ..write('stored: $stored, ') ..write('isDraftMedia: $isDraftMedia, ') ..write('reuploadRequestedBy: $reuploadRequestedBy, ') ..write('displayLimitInMilliseconds: $displayLimitInMilliseconds, ') ..write('removeAudio: $removeAudio, ') ..write('downloadToken: $downloadToken, ') ..write('encryptionKey: $encryptionKey, ') ..write('encryptionMac: $encryptionMac, ') ..write('encryptionNonce: $encryptionNonce, ') ..write('storedFileHash: $storedFileHash, ') ..write('createdAt: $createdAt, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class Messages extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; Messages(this.attachedDatabase, [this._alias]); late final GeneratedColumn groupId = GeneratedColumn( 'group_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES "groups" (group_id) ON DELETE CASCADE')); late final GeneratedColumn messageId = GeneratedColumn( 'message_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn senderId = GeneratedColumn( 'sender_id', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways('REFERENCES contacts (user_id)')); late final GeneratedColumn type = GeneratedColumn( 'type', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn content = GeneratedColumn( 'content', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); late final GeneratedColumn mediaId = GeneratedColumn( 'media_id', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES media_files (media_id) ON DELETE SET NULL')); late final GeneratedColumn mediaStored = GeneratedColumn( 'media_stored', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("media_stored" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn mediaReopened = GeneratedColumn( 'media_reopened', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("media_reopened" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn downloadToken = GeneratedColumn('download_token', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false); late final GeneratedColumn quotesMessageId = GeneratedColumn( 'quotes_message_id', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); late final GeneratedColumn isDeletedFromSender = GeneratedColumn( 'is_deleted_from_sender', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("is_deleted_from_sender" IN (0, 1))'), defaultValue: const CustomExpression('0')); late final GeneratedColumn openedAt = GeneratedColumn( 'opened_at', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); late final GeneratedColumn openedByAll = GeneratedColumn( 'opened_by_all', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); late final GeneratedColumn modifiedAt = GeneratedColumn( 'modified_at', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); late final GeneratedColumn ackByUser = GeneratedColumn( 'ack_by_user', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); late final GeneratedColumn ackByServer = GeneratedColumn( 'ack_by_server', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); @override List get $columns => [ groupId, messageId, senderId, type, content, mediaId, mediaStored, mediaReopened, downloadToken, quotesMessageId, isDeletedFromSender, openedAt, openedByAll, createdAt, modifiedAt, ackByUser, ackByServer ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'messages'; @override Set get $primaryKey => {messageId}; @override MessagesData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return MessagesData( groupId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}group_id'])!, messageId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}message_id'])!, senderId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}sender_id']), type: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}type'])!, content: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}content']), mediaId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}media_id']), mediaStored: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}media_stored'])!, mediaReopened: attachedDatabase.typeMapping .read(DriftSqlType.bool, data['${effectivePrefix}media_reopened'])!, downloadToken: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}download_token']), quotesMessageId: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}quotes_message_id']), isDeletedFromSender: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}is_deleted_from_sender'])!, openedAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}opened_at']), openedByAll: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}opened_by_all']), createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, modifiedAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}modified_at']), ackByUser: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}ack_by_user']), ackByServer: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}ack_by_server']), ); } @override Messages createAlias(String alias) { return Messages(attachedDatabase, alias); } } class MessagesData extends DataClass implements Insertable { final String groupId; final String messageId; final int? senderId; final String type; final String? content; final String? mediaId; final bool mediaStored; final bool mediaReopened; final i2.Uint8List? downloadToken; final String? quotesMessageId; final bool isDeletedFromSender; final DateTime? openedAt; final DateTime? openedByAll; final DateTime createdAt; final DateTime? modifiedAt; final DateTime? ackByUser; final DateTime? ackByServer; const MessagesData( {required this.groupId, required this.messageId, this.senderId, required this.type, this.content, this.mediaId, required this.mediaStored, required this.mediaReopened, this.downloadToken, this.quotesMessageId, required this.isDeletedFromSender, this.openedAt, this.openedByAll, required this.createdAt, this.modifiedAt, this.ackByUser, this.ackByServer}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['group_id'] = Variable(groupId); map['message_id'] = Variable(messageId); if (!nullToAbsent || senderId != null) { map['sender_id'] = Variable(senderId); } map['type'] = Variable(type); if (!nullToAbsent || content != null) { map['content'] = Variable(content); } if (!nullToAbsent || mediaId != null) { map['media_id'] = Variable(mediaId); } map['media_stored'] = Variable(mediaStored); map['media_reopened'] = Variable(mediaReopened); if (!nullToAbsent || downloadToken != null) { map['download_token'] = Variable(downloadToken); } if (!nullToAbsent || quotesMessageId != null) { map['quotes_message_id'] = Variable(quotesMessageId); } map['is_deleted_from_sender'] = Variable(isDeletedFromSender); if (!nullToAbsent || openedAt != null) { map['opened_at'] = Variable(openedAt); } if (!nullToAbsent || openedByAll != null) { map['opened_by_all'] = Variable(openedByAll); } map['created_at'] = Variable(createdAt); if (!nullToAbsent || modifiedAt != null) { map['modified_at'] = Variable(modifiedAt); } if (!nullToAbsent || ackByUser != null) { map['ack_by_user'] = Variable(ackByUser); } if (!nullToAbsent || ackByServer != null) { map['ack_by_server'] = Variable(ackByServer); } return map; } MessagesCompanion toCompanion(bool nullToAbsent) { return MessagesCompanion( groupId: Value(groupId), messageId: Value(messageId), senderId: senderId == null && nullToAbsent ? const Value.absent() : Value(senderId), type: Value(type), content: content == null && nullToAbsent ? const Value.absent() : Value(content), mediaId: mediaId == null && nullToAbsent ? const Value.absent() : Value(mediaId), mediaStored: Value(mediaStored), mediaReopened: Value(mediaReopened), downloadToken: downloadToken == null && nullToAbsent ? const Value.absent() : Value(downloadToken), quotesMessageId: quotesMessageId == null && nullToAbsent ? const Value.absent() : Value(quotesMessageId), isDeletedFromSender: Value(isDeletedFromSender), openedAt: openedAt == null && nullToAbsent ? const Value.absent() : Value(openedAt), openedByAll: openedByAll == null && nullToAbsent ? const Value.absent() : Value(openedByAll), createdAt: Value(createdAt), modifiedAt: modifiedAt == null && nullToAbsent ? const Value.absent() : Value(modifiedAt), ackByUser: ackByUser == null && nullToAbsent ? const Value.absent() : Value(ackByUser), ackByServer: ackByServer == null && nullToAbsent ? const Value.absent() : Value(ackByServer), ); } factory MessagesData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return MessagesData( groupId: serializer.fromJson(json['groupId']), messageId: serializer.fromJson(json['messageId']), senderId: serializer.fromJson(json['senderId']), type: serializer.fromJson(json['type']), content: serializer.fromJson(json['content']), mediaId: serializer.fromJson(json['mediaId']), mediaStored: serializer.fromJson(json['mediaStored']), mediaReopened: serializer.fromJson(json['mediaReopened']), downloadToken: serializer.fromJson(json['downloadToken']), quotesMessageId: serializer.fromJson(json['quotesMessageId']), isDeletedFromSender: serializer.fromJson(json['isDeletedFromSender']), openedAt: serializer.fromJson(json['openedAt']), openedByAll: serializer.fromJson(json['openedByAll']), createdAt: serializer.fromJson(json['createdAt']), modifiedAt: serializer.fromJson(json['modifiedAt']), ackByUser: serializer.fromJson(json['ackByUser']), ackByServer: serializer.fromJson(json['ackByServer']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'groupId': serializer.toJson(groupId), 'messageId': serializer.toJson(messageId), 'senderId': serializer.toJson(senderId), 'type': serializer.toJson(type), 'content': serializer.toJson(content), 'mediaId': serializer.toJson(mediaId), 'mediaStored': serializer.toJson(mediaStored), 'mediaReopened': serializer.toJson(mediaReopened), 'downloadToken': serializer.toJson(downloadToken), 'quotesMessageId': serializer.toJson(quotesMessageId), 'isDeletedFromSender': serializer.toJson(isDeletedFromSender), 'openedAt': serializer.toJson(openedAt), 'openedByAll': serializer.toJson(openedByAll), 'createdAt': serializer.toJson(createdAt), 'modifiedAt': serializer.toJson(modifiedAt), 'ackByUser': serializer.toJson(ackByUser), 'ackByServer': serializer.toJson(ackByServer), }; } MessagesData copyWith( {String? groupId, String? messageId, Value senderId = const Value.absent(), String? type, Value content = const Value.absent(), Value mediaId = const Value.absent(), bool? mediaStored, bool? mediaReopened, Value downloadToken = const Value.absent(), Value quotesMessageId = const Value.absent(), bool? isDeletedFromSender, Value openedAt = const Value.absent(), Value openedByAll = const Value.absent(), DateTime? createdAt, Value modifiedAt = const Value.absent(), Value ackByUser = const Value.absent(), Value ackByServer = const Value.absent()}) => MessagesData( groupId: groupId ?? this.groupId, messageId: messageId ?? this.messageId, senderId: senderId.present ? senderId.value : this.senderId, type: type ?? this.type, content: content.present ? content.value : this.content, mediaId: mediaId.present ? mediaId.value : this.mediaId, mediaStored: mediaStored ?? this.mediaStored, mediaReopened: mediaReopened ?? this.mediaReopened, downloadToken: downloadToken.present ? downloadToken.value : this.downloadToken, quotesMessageId: quotesMessageId.present ? quotesMessageId.value : this.quotesMessageId, isDeletedFromSender: isDeletedFromSender ?? this.isDeletedFromSender, openedAt: openedAt.present ? openedAt.value : this.openedAt, openedByAll: openedByAll.present ? openedByAll.value : this.openedByAll, createdAt: createdAt ?? this.createdAt, modifiedAt: modifiedAt.present ? modifiedAt.value : this.modifiedAt, ackByUser: ackByUser.present ? ackByUser.value : this.ackByUser, ackByServer: ackByServer.present ? ackByServer.value : this.ackByServer, ); MessagesData copyWithCompanion(MessagesCompanion data) { return MessagesData( groupId: data.groupId.present ? data.groupId.value : this.groupId, messageId: data.messageId.present ? data.messageId.value : this.messageId, senderId: data.senderId.present ? data.senderId.value : this.senderId, type: data.type.present ? data.type.value : this.type, content: data.content.present ? data.content.value : this.content, mediaId: data.mediaId.present ? data.mediaId.value : this.mediaId, mediaStored: data.mediaStored.present ? data.mediaStored.value : this.mediaStored, mediaReopened: data.mediaReopened.present ? data.mediaReopened.value : this.mediaReopened, downloadToken: data.downloadToken.present ? data.downloadToken.value : this.downloadToken, quotesMessageId: data.quotesMessageId.present ? data.quotesMessageId.value : this.quotesMessageId, isDeletedFromSender: data.isDeletedFromSender.present ? data.isDeletedFromSender.value : this.isDeletedFromSender, openedAt: data.openedAt.present ? data.openedAt.value : this.openedAt, openedByAll: data.openedByAll.present ? data.openedByAll.value : this.openedByAll, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, modifiedAt: data.modifiedAt.present ? data.modifiedAt.value : this.modifiedAt, ackByUser: data.ackByUser.present ? data.ackByUser.value : this.ackByUser, ackByServer: data.ackByServer.present ? data.ackByServer.value : this.ackByServer, ); } @override String toString() { return (StringBuffer('MessagesData(') ..write('groupId: $groupId, ') ..write('messageId: $messageId, ') ..write('senderId: $senderId, ') ..write('type: $type, ') ..write('content: $content, ') ..write('mediaId: $mediaId, ') ..write('mediaStored: $mediaStored, ') ..write('mediaReopened: $mediaReopened, ') ..write('downloadToken: $downloadToken, ') ..write('quotesMessageId: $quotesMessageId, ') ..write('isDeletedFromSender: $isDeletedFromSender, ') ..write('openedAt: $openedAt, ') ..write('openedByAll: $openedByAll, ') ..write('createdAt: $createdAt, ') ..write('modifiedAt: $modifiedAt, ') ..write('ackByUser: $ackByUser, ') ..write('ackByServer: $ackByServer') ..write(')')) .toString(); } @override int get hashCode => Object.hash( groupId, messageId, senderId, type, content, mediaId, mediaStored, mediaReopened, $driftBlobEquality.hash(downloadToken), quotesMessageId, isDeletedFromSender, openedAt, openedByAll, createdAt, modifiedAt, ackByUser, ackByServer); @override bool operator ==(Object other) => identical(this, other) || (other is MessagesData && other.groupId == this.groupId && other.messageId == this.messageId && other.senderId == this.senderId && other.type == this.type && other.content == this.content && other.mediaId == this.mediaId && other.mediaStored == this.mediaStored && other.mediaReopened == this.mediaReopened && $driftBlobEquality.equals(other.downloadToken, this.downloadToken) && other.quotesMessageId == this.quotesMessageId && other.isDeletedFromSender == this.isDeletedFromSender && other.openedAt == this.openedAt && other.openedByAll == this.openedByAll && other.createdAt == this.createdAt && other.modifiedAt == this.modifiedAt && other.ackByUser == this.ackByUser && other.ackByServer == this.ackByServer); } class MessagesCompanion extends UpdateCompanion { final Value groupId; final Value messageId; final Value senderId; final Value type; final Value content; final Value mediaId; final Value mediaStored; final Value mediaReopened; final Value downloadToken; final Value quotesMessageId; final Value isDeletedFromSender; final Value openedAt; final Value openedByAll; final Value createdAt; final Value modifiedAt; final Value ackByUser; final Value ackByServer; final Value rowid; const MessagesCompanion({ this.groupId = const Value.absent(), this.messageId = const Value.absent(), this.senderId = const Value.absent(), this.type = const Value.absent(), this.content = const Value.absent(), this.mediaId = const Value.absent(), this.mediaStored = const Value.absent(), this.mediaReopened = const Value.absent(), this.downloadToken = const Value.absent(), this.quotesMessageId = const Value.absent(), this.isDeletedFromSender = const Value.absent(), this.openedAt = const Value.absent(), this.openedByAll = const Value.absent(), this.createdAt = const Value.absent(), this.modifiedAt = const Value.absent(), this.ackByUser = const Value.absent(), this.ackByServer = const Value.absent(), this.rowid = const Value.absent(), }); MessagesCompanion.insert({ required String groupId, required String messageId, this.senderId = const Value.absent(), required String type, this.content = const Value.absent(), this.mediaId = const Value.absent(), this.mediaStored = const Value.absent(), this.mediaReopened = const Value.absent(), this.downloadToken = const Value.absent(), this.quotesMessageId = const Value.absent(), this.isDeletedFromSender = const Value.absent(), this.openedAt = const Value.absent(), this.openedByAll = const Value.absent(), this.createdAt = const Value.absent(), this.modifiedAt = const Value.absent(), this.ackByUser = const Value.absent(), this.ackByServer = const Value.absent(), this.rowid = const Value.absent(), }) : groupId = Value(groupId), messageId = Value(messageId), type = Value(type); static Insertable custom({ Expression? groupId, Expression? messageId, Expression? senderId, Expression? type, Expression? content, Expression? mediaId, Expression? mediaStored, Expression? mediaReopened, Expression? downloadToken, Expression? quotesMessageId, Expression? isDeletedFromSender, Expression? openedAt, Expression? openedByAll, Expression? createdAt, Expression? modifiedAt, Expression? ackByUser, Expression? ackByServer, Expression? rowid, }) { return RawValuesInsertable({ if (groupId != null) 'group_id': groupId, if (messageId != null) 'message_id': messageId, if (senderId != null) 'sender_id': senderId, if (type != null) 'type': type, if (content != null) 'content': content, if (mediaId != null) 'media_id': mediaId, if (mediaStored != null) 'media_stored': mediaStored, if (mediaReopened != null) 'media_reopened': mediaReopened, if (downloadToken != null) 'download_token': downloadToken, if (quotesMessageId != null) 'quotes_message_id': quotesMessageId, if (isDeletedFromSender != null) 'is_deleted_from_sender': isDeletedFromSender, if (openedAt != null) 'opened_at': openedAt, if (openedByAll != null) 'opened_by_all': openedByAll, if (createdAt != null) 'created_at': createdAt, if (modifiedAt != null) 'modified_at': modifiedAt, if (ackByUser != null) 'ack_by_user': ackByUser, if (ackByServer != null) 'ack_by_server': ackByServer, if (rowid != null) 'rowid': rowid, }); } MessagesCompanion copyWith( {Value? groupId, Value? messageId, Value? senderId, Value? type, Value? content, Value? mediaId, Value? mediaStored, Value? mediaReopened, Value? downloadToken, Value? quotesMessageId, Value? isDeletedFromSender, Value? openedAt, Value? openedByAll, Value? createdAt, Value? modifiedAt, Value? ackByUser, Value? ackByServer, Value? rowid}) { return MessagesCompanion( groupId: groupId ?? this.groupId, messageId: messageId ?? this.messageId, senderId: senderId ?? this.senderId, type: type ?? this.type, content: content ?? this.content, mediaId: mediaId ?? this.mediaId, mediaStored: mediaStored ?? this.mediaStored, mediaReopened: mediaReopened ?? this.mediaReopened, downloadToken: downloadToken ?? this.downloadToken, quotesMessageId: quotesMessageId ?? this.quotesMessageId, isDeletedFromSender: isDeletedFromSender ?? this.isDeletedFromSender, openedAt: openedAt ?? this.openedAt, openedByAll: openedByAll ?? this.openedByAll, createdAt: createdAt ?? this.createdAt, modifiedAt: modifiedAt ?? this.modifiedAt, ackByUser: ackByUser ?? this.ackByUser, ackByServer: ackByServer ?? this.ackByServer, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (groupId.present) { map['group_id'] = Variable(groupId.value); } if (messageId.present) { map['message_id'] = Variable(messageId.value); } if (senderId.present) { map['sender_id'] = Variable(senderId.value); } if (type.present) { map['type'] = Variable(type.value); } if (content.present) { map['content'] = Variable(content.value); } if (mediaId.present) { map['media_id'] = Variable(mediaId.value); } if (mediaStored.present) { map['media_stored'] = Variable(mediaStored.value); } if (mediaReopened.present) { map['media_reopened'] = Variable(mediaReopened.value); } if (downloadToken.present) { map['download_token'] = Variable(downloadToken.value); } if (quotesMessageId.present) { map['quotes_message_id'] = Variable(quotesMessageId.value); } if (isDeletedFromSender.present) { map['is_deleted_from_sender'] = Variable(isDeletedFromSender.value); } if (openedAt.present) { map['opened_at'] = Variable(openedAt.value); } if (openedByAll.present) { map['opened_by_all'] = Variable(openedByAll.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } if (modifiedAt.present) { map['modified_at'] = Variable(modifiedAt.value); } if (ackByUser.present) { map['ack_by_user'] = Variable(ackByUser.value); } if (ackByServer.present) { map['ack_by_server'] = Variable(ackByServer.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('MessagesCompanion(') ..write('groupId: $groupId, ') ..write('messageId: $messageId, ') ..write('senderId: $senderId, ') ..write('type: $type, ') ..write('content: $content, ') ..write('mediaId: $mediaId, ') ..write('mediaStored: $mediaStored, ') ..write('mediaReopened: $mediaReopened, ') ..write('downloadToken: $downloadToken, ') ..write('quotesMessageId: $quotesMessageId, ') ..write('isDeletedFromSender: $isDeletedFromSender, ') ..write('openedAt: $openedAt, ') ..write('openedByAll: $openedByAll, ') ..write('createdAt: $createdAt, ') ..write('modifiedAt: $modifiedAt, ') ..write('ackByUser: $ackByUser, ') ..write('ackByServer: $ackByServer, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class MessageHistories extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; MessageHistories(this.attachedDatabase, [this._alias]); late final GeneratedColumn id = GeneratedColumn( 'id', aliasedName, false, hasAutoIncrement: true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways('PRIMARY KEY AUTOINCREMENT')); late final GeneratedColumn messageId = GeneratedColumn( 'message_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES messages (message_id) ON DELETE CASCADE')); late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false); late final GeneratedColumn content = GeneratedColumn( 'content', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [id, messageId, contactId, content, createdAt]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'message_histories'; @override Set get $primaryKey => {id}; @override MessageHistoriesData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return MessageHistoriesData( id: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}id'])!, messageId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}message_id'])!, contactId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}contact_id']), content: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}content']), createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, ); } @override MessageHistories createAlias(String alias) { return MessageHistories(attachedDatabase, alias); } } class MessageHistoriesData extends DataClass implements Insertable { final int id; final String messageId; final int? contactId; final String? content; final DateTime createdAt; const MessageHistoriesData( {required this.id, required this.messageId, this.contactId, this.content, required this.createdAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['id'] = Variable(id); map['message_id'] = Variable(messageId); if (!nullToAbsent || contactId != null) { map['contact_id'] = Variable(contactId); } if (!nullToAbsent || content != null) { map['content'] = Variable(content); } map['created_at'] = Variable(createdAt); return map; } MessageHistoriesCompanion toCompanion(bool nullToAbsent) { return MessageHistoriesCompanion( id: Value(id), messageId: Value(messageId), contactId: contactId == null && nullToAbsent ? const Value.absent() : Value(contactId), content: content == null && nullToAbsent ? const Value.absent() : Value(content), createdAt: Value(createdAt), ); } factory MessageHistoriesData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return MessageHistoriesData( id: serializer.fromJson(json['id']), messageId: serializer.fromJson(json['messageId']), contactId: serializer.fromJson(json['contactId']), content: serializer.fromJson(json['content']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'id': serializer.toJson(id), 'messageId': serializer.toJson(messageId), 'contactId': serializer.toJson(contactId), 'content': serializer.toJson(content), 'createdAt': serializer.toJson(createdAt), }; } MessageHistoriesData copyWith( {int? id, String? messageId, Value contactId = const Value.absent(), Value content = const Value.absent(), DateTime? createdAt}) => MessageHistoriesData( id: id ?? this.id, messageId: messageId ?? this.messageId, contactId: contactId.present ? contactId.value : this.contactId, content: content.present ? content.value : this.content, createdAt: createdAt ?? this.createdAt, ); MessageHistoriesData copyWithCompanion(MessageHistoriesCompanion data) { return MessageHistoriesData( id: data.id.present ? data.id.value : this.id, messageId: data.messageId.present ? data.messageId.value : this.messageId, contactId: data.contactId.present ? data.contactId.value : this.contactId, content: data.content.present ? data.content.value : this.content, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('MessageHistoriesData(') ..write('id: $id, ') ..write('messageId: $messageId, ') ..write('contactId: $contactId, ') ..write('content: $content, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash(id, messageId, contactId, content, createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is MessageHistoriesData && other.id == this.id && other.messageId == this.messageId && other.contactId == this.contactId && other.content == this.content && other.createdAt == this.createdAt); } class MessageHistoriesCompanion extends UpdateCompanion { final Value id; final Value messageId; final Value contactId; final Value content; final Value createdAt; const MessageHistoriesCompanion({ this.id = const Value.absent(), this.messageId = const Value.absent(), this.contactId = const Value.absent(), this.content = const Value.absent(), this.createdAt = const Value.absent(), }); MessageHistoriesCompanion.insert({ this.id = const Value.absent(), required String messageId, this.contactId = const Value.absent(), this.content = const Value.absent(), this.createdAt = const Value.absent(), }) : messageId = Value(messageId); static Insertable custom({ Expression? id, Expression? messageId, Expression? contactId, Expression? content, Expression? createdAt, }) { return RawValuesInsertable({ if (id != null) 'id': id, if (messageId != null) 'message_id': messageId, if (contactId != null) 'contact_id': contactId, if (content != null) 'content': content, if (createdAt != null) 'created_at': createdAt, }); } MessageHistoriesCompanion copyWith( {Value? id, Value? messageId, Value? contactId, Value? content, Value? createdAt}) { return MessageHistoriesCompanion( id: id ?? this.id, messageId: messageId ?? this.messageId, contactId: contactId ?? this.contactId, content: content ?? this.content, createdAt: createdAt ?? this.createdAt, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (id.present) { map['id'] = Variable(id.value); } if (messageId.present) { map['message_id'] = Variable(messageId.value); } if (contactId.present) { map['contact_id'] = Variable(contactId.value); } if (content.present) { map['content'] = Variable(content.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } return map; } @override String toString() { return (StringBuffer('MessageHistoriesCompanion(') ..write('id: $id, ') ..write('messageId: $messageId, ') ..write('contactId: $contactId, ') ..write('content: $content, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } } class Reactions extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; Reactions(this.attachedDatabase, [this._alias]); late final GeneratedColumn messageId = GeneratedColumn( 'message_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES messages (message_id) ON DELETE CASCADE')); late final GeneratedColumn emoji = GeneratedColumn( 'emoji', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn senderId = GeneratedColumn( 'sender_id', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE')); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [messageId, emoji, senderId, createdAt]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'reactions'; @override Set get $primaryKey => {messageId, senderId, emoji}; @override ReactionsData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return ReactionsData( messageId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}message_id'])!, emoji: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}emoji'])!, senderId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}sender_id']), createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, ); } @override Reactions createAlias(String alias) { return Reactions(attachedDatabase, alias); } } class ReactionsData extends DataClass implements Insertable { final String messageId; final String emoji; final int? senderId; final DateTime createdAt; const ReactionsData( {required this.messageId, required this.emoji, this.senderId, required this.createdAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['message_id'] = Variable(messageId); map['emoji'] = Variable(emoji); if (!nullToAbsent || senderId != null) { map['sender_id'] = Variable(senderId); } map['created_at'] = Variable(createdAt); return map; } ReactionsCompanion toCompanion(bool nullToAbsent) { return ReactionsCompanion( messageId: Value(messageId), emoji: Value(emoji), senderId: senderId == null && nullToAbsent ? const Value.absent() : Value(senderId), createdAt: Value(createdAt), ); } factory ReactionsData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return ReactionsData( messageId: serializer.fromJson(json['messageId']), emoji: serializer.fromJson(json['emoji']), senderId: serializer.fromJson(json['senderId']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'messageId': serializer.toJson(messageId), 'emoji': serializer.toJson(emoji), 'senderId': serializer.toJson(senderId), 'createdAt': serializer.toJson(createdAt), }; } ReactionsData copyWith( {String? messageId, String? emoji, Value senderId = const Value.absent(), DateTime? createdAt}) => ReactionsData( messageId: messageId ?? this.messageId, emoji: emoji ?? this.emoji, senderId: senderId.present ? senderId.value : this.senderId, createdAt: createdAt ?? this.createdAt, ); ReactionsData copyWithCompanion(ReactionsCompanion data) { return ReactionsData( messageId: data.messageId.present ? data.messageId.value : this.messageId, emoji: data.emoji.present ? data.emoji.value : this.emoji, senderId: data.senderId.present ? data.senderId.value : this.senderId, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('ReactionsData(') ..write('messageId: $messageId, ') ..write('emoji: $emoji, ') ..write('senderId: $senderId, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash(messageId, emoji, senderId, createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is ReactionsData && other.messageId == this.messageId && other.emoji == this.emoji && other.senderId == this.senderId && other.createdAt == this.createdAt); } class ReactionsCompanion extends UpdateCompanion { final Value messageId; final Value emoji; final Value senderId; final Value createdAt; final Value rowid; const ReactionsCompanion({ this.messageId = const Value.absent(), this.emoji = const Value.absent(), this.senderId = const Value.absent(), this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }); ReactionsCompanion.insert({ required String messageId, required String emoji, this.senderId = const Value.absent(), this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }) : messageId = Value(messageId), emoji = Value(emoji); static Insertable custom({ Expression? messageId, Expression? emoji, Expression? senderId, Expression? createdAt, Expression? rowid, }) { return RawValuesInsertable({ if (messageId != null) 'message_id': messageId, if (emoji != null) 'emoji': emoji, if (senderId != null) 'sender_id': senderId, if (createdAt != null) 'created_at': createdAt, if (rowid != null) 'rowid': rowid, }); } ReactionsCompanion copyWith( {Value? messageId, Value? emoji, Value? senderId, Value? createdAt, Value? rowid}) { return ReactionsCompanion( messageId: messageId ?? this.messageId, emoji: emoji ?? this.emoji, senderId: senderId ?? this.senderId, createdAt: createdAt ?? this.createdAt, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (messageId.present) { map['message_id'] = Variable(messageId.value); } if (emoji.present) { map['emoji'] = Variable(emoji.value); } if (senderId.present) { map['sender_id'] = Variable(senderId.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('ReactionsCompanion(') ..write('messageId: $messageId, ') ..write('emoji: $emoji, ') ..write('senderId: $senderId, ') ..write('createdAt: $createdAt, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class GroupMembers extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; GroupMembers(this.attachedDatabase, [this._alias]); late final GeneratedColumn groupId = GeneratedColumn( 'group_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES "groups" (group_id) ON DELETE CASCADE')); late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways('REFERENCES contacts (user_id)')); late final GeneratedColumn memberState = GeneratedColumn( 'member_state', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); late final GeneratedColumn groupPublicKey = GeneratedColumn('group_public_key', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false); late final GeneratedColumn lastMessage = GeneratedColumn( 'last_message', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [groupId, contactId, memberState, groupPublicKey, lastMessage, createdAt]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'group_members'; @override Set get $primaryKey => {groupId, contactId}; @override GroupMembersData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return GroupMembersData( groupId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}group_id'])!, contactId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}contact_id'])!, memberState: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}member_state']), groupPublicKey: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}group_public_key']), lastMessage: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}last_message']), createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, ); } @override GroupMembers createAlias(String alias) { return GroupMembers(attachedDatabase, alias); } } class GroupMembersData extends DataClass implements Insertable { final String groupId; final int contactId; final String? memberState; final i2.Uint8List? groupPublicKey; final DateTime? lastMessage; final DateTime createdAt; const GroupMembersData( {required this.groupId, required this.contactId, this.memberState, this.groupPublicKey, this.lastMessage, required this.createdAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['group_id'] = Variable(groupId); map['contact_id'] = Variable(contactId); if (!nullToAbsent || memberState != null) { map['member_state'] = Variable(memberState); } if (!nullToAbsent || groupPublicKey != null) { map['group_public_key'] = Variable(groupPublicKey); } if (!nullToAbsent || lastMessage != null) { map['last_message'] = Variable(lastMessage); } map['created_at'] = Variable(createdAt); return map; } GroupMembersCompanion toCompanion(bool nullToAbsent) { return GroupMembersCompanion( groupId: Value(groupId), contactId: Value(contactId), memberState: memberState == null && nullToAbsent ? const Value.absent() : Value(memberState), groupPublicKey: groupPublicKey == null && nullToAbsent ? const Value.absent() : Value(groupPublicKey), lastMessage: lastMessage == null && nullToAbsent ? const Value.absent() : Value(lastMessage), createdAt: Value(createdAt), ); } factory GroupMembersData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return GroupMembersData( groupId: serializer.fromJson(json['groupId']), contactId: serializer.fromJson(json['contactId']), memberState: serializer.fromJson(json['memberState']), groupPublicKey: serializer.fromJson(json['groupPublicKey']), lastMessage: serializer.fromJson(json['lastMessage']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'groupId': serializer.toJson(groupId), 'contactId': serializer.toJson(contactId), 'memberState': serializer.toJson(memberState), 'groupPublicKey': serializer.toJson(groupPublicKey), 'lastMessage': serializer.toJson(lastMessage), 'createdAt': serializer.toJson(createdAt), }; } GroupMembersData copyWith( {String? groupId, int? contactId, Value memberState = const Value.absent(), Value groupPublicKey = const Value.absent(), Value lastMessage = const Value.absent(), DateTime? createdAt}) => GroupMembersData( groupId: groupId ?? this.groupId, contactId: contactId ?? this.contactId, memberState: memberState.present ? memberState.value : this.memberState, groupPublicKey: groupPublicKey.present ? groupPublicKey.value : this.groupPublicKey, lastMessage: lastMessage.present ? lastMessage.value : this.lastMessage, createdAt: createdAt ?? this.createdAt, ); GroupMembersData copyWithCompanion(GroupMembersCompanion data) { return GroupMembersData( groupId: data.groupId.present ? data.groupId.value : this.groupId, contactId: data.contactId.present ? data.contactId.value : this.contactId, memberState: data.memberState.present ? data.memberState.value : this.memberState, groupPublicKey: data.groupPublicKey.present ? data.groupPublicKey.value : this.groupPublicKey, lastMessage: data.lastMessage.present ? data.lastMessage.value : this.lastMessage, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('GroupMembersData(') ..write('groupId: $groupId, ') ..write('contactId: $contactId, ') ..write('memberState: $memberState, ') ..write('groupPublicKey: $groupPublicKey, ') ..write('lastMessage: $lastMessage, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash(groupId, contactId, memberState, $driftBlobEquality.hash(groupPublicKey), lastMessage, createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is GroupMembersData && other.groupId == this.groupId && other.contactId == this.contactId && other.memberState == this.memberState && $driftBlobEquality.equals( other.groupPublicKey, this.groupPublicKey) && other.lastMessage == this.lastMessage && other.createdAt == this.createdAt); } class GroupMembersCompanion extends UpdateCompanion { final Value groupId; final Value contactId; final Value memberState; final Value groupPublicKey; final Value lastMessage; final Value createdAt; final Value rowid; const GroupMembersCompanion({ this.groupId = const Value.absent(), this.contactId = const Value.absent(), this.memberState = const Value.absent(), this.groupPublicKey = const Value.absent(), this.lastMessage = const Value.absent(), this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }); GroupMembersCompanion.insert({ required String groupId, required int contactId, this.memberState = const Value.absent(), this.groupPublicKey = const Value.absent(), this.lastMessage = const Value.absent(), this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }) : groupId = Value(groupId), contactId = Value(contactId); static Insertable custom({ Expression? groupId, Expression? contactId, Expression? memberState, Expression? groupPublicKey, Expression? lastMessage, Expression? createdAt, Expression? rowid, }) { return RawValuesInsertable({ if (groupId != null) 'group_id': groupId, if (contactId != null) 'contact_id': contactId, if (memberState != null) 'member_state': memberState, if (groupPublicKey != null) 'group_public_key': groupPublicKey, if (lastMessage != null) 'last_message': lastMessage, if (createdAt != null) 'created_at': createdAt, if (rowid != null) 'rowid': rowid, }); } GroupMembersCompanion copyWith( {Value? groupId, Value? contactId, Value? memberState, Value? groupPublicKey, Value? lastMessage, Value? createdAt, Value? rowid}) { return GroupMembersCompanion( groupId: groupId ?? this.groupId, contactId: contactId ?? this.contactId, memberState: memberState ?? this.memberState, groupPublicKey: groupPublicKey ?? this.groupPublicKey, lastMessage: lastMessage ?? this.lastMessage, createdAt: createdAt ?? this.createdAt, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (groupId.present) { map['group_id'] = Variable(groupId.value); } if (contactId.present) { map['contact_id'] = Variable(contactId.value); } if (memberState.present) { map['member_state'] = Variable(memberState.value); } if (groupPublicKey.present) { map['group_public_key'] = Variable(groupPublicKey.value); } if (lastMessage.present) { map['last_message'] = Variable(lastMessage.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('GroupMembersCompanion(') ..write('groupId: $groupId, ') ..write('contactId: $contactId, ') ..write('memberState: $memberState, ') ..write('groupPublicKey: $groupPublicKey, ') ..write('lastMessage: $lastMessage, ') ..write('createdAt: $createdAt, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class Receipts extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; Receipts(this.attachedDatabase, [this._alias]); late final GeneratedColumn receiptId = GeneratedColumn( 'receipt_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE')); late final GeneratedColumn messageId = GeneratedColumn( 'message_id', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES messages (message_id) ON DELETE CASCADE')); late final GeneratedColumn message = GeneratedColumn('message', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true); late final GeneratedColumn contactWillSendsReceipt = GeneratedColumn('contact_will_sends_receipt', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("contact_will_sends_receipt" IN (0, 1))'), defaultValue: const CustomExpression('1')); late final GeneratedColumn markForRetry = GeneratedColumn( 'mark_for_retry', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); late final GeneratedColumn ackByServerAt = GeneratedColumn('ack_by_server_at', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); late final GeneratedColumn retryCount = GeneratedColumn( 'retry_count', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const CustomExpression('0')); late final GeneratedColumn lastRetry = GeneratedColumn( 'last_retry', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [ receiptId, contactId, messageId, message, contactWillSendsReceipt, markForRetry, ackByServerAt, retryCount, lastRetry, createdAt ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'receipts'; @override Set get $primaryKey => {receiptId}; @override ReceiptsData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return ReceiptsData( receiptId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}receipt_id'])!, contactId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}contact_id'])!, messageId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}message_id']), message: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}message'])!, contactWillSendsReceipt: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}contact_will_sends_receipt'])!, markForRetry: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}mark_for_retry']), ackByServerAt: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}ack_by_server_at']), retryCount: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}retry_count'])!, lastRetry: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}last_retry']), createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, ); } @override Receipts createAlias(String alias) { return Receipts(attachedDatabase, alias); } } class ReceiptsData extends DataClass implements Insertable { final String receiptId; final int contactId; final String? messageId; final i2.Uint8List message; final bool contactWillSendsReceipt; final DateTime? markForRetry; final DateTime? ackByServerAt; final int retryCount; final DateTime? lastRetry; final DateTime createdAt; const ReceiptsData( {required this.receiptId, required this.contactId, this.messageId, required this.message, required this.contactWillSendsReceipt, this.markForRetry, this.ackByServerAt, required this.retryCount, this.lastRetry, required this.createdAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['receipt_id'] = Variable(receiptId); map['contact_id'] = Variable(contactId); if (!nullToAbsent || messageId != null) { map['message_id'] = Variable(messageId); } map['message'] = Variable(message); map['contact_will_sends_receipt'] = Variable(contactWillSendsReceipt); if (!nullToAbsent || markForRetry != null) { map['mark_for_retry'] = Variable(markForRetry); } if (!nullToAbsent || ackByServerAt != null) { map['ack_by_server_at'] = Variable(ackByServerAt); } map['retry_count'] = Variable(retryCount); if (!nullToAbsent || lastRetry != null) { map['last_retry'] = Variable(lastRetry); } map['created_at'] = Variable(createdAt); return map; } ReceiptsCompanion toCompanion(bool nullToAbsent) { return ReceiptsCompanion( receiptId: Value(receiptId), contactId: Value(contactId), messageId: messageId == null && nullToAbsent ? const Value.absent() : Value(messageId), message: Value(message), contactWillSendsReceipt: Value(contactWillSendsReceipt), markForRetry: markForRetry == null && nullToAbsent ? const Value.absent() : Value(markForRetry), ackByServerAt: ackByServerAt == null && nullToAbsent ? const Value.absent() : Value(ackByServerAt), retryCount: Value(retryCount), lastRetry: lastRetry == null && nullToAbsent ? const Value.absent() : Value(lastRetry), createdAt: Value(createdAt), ); } factory ReceiptsData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return ReceiptsData( receiptId: serializer.fromJson(json['receiptId']), contactId: serializer.fromJson(json['contactId']), messageId: serializer.fromJson(json['messageId']), message: serializer.fromJson(json['message']), contactWillSendsReceipt: serializer.fromJson(json['contactWillSendsReceipt']), markForRetry: serializer.fromJson(json['markForRetry']), ackByServerAt: serializer.fromJson(json['ackByServerAt']), retryCount: serializer.fromJson(json['retryCount']), lastRetry: serializer.fromJson(json['lastRetry']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'receiptId': serializer.toJson(receiptId), 'contactId': serializer.toJson(contactId), 'messageId': serializer.toJson(messageId), 'message': serializer.toJson(message), 'contactWillSendsReceipt': serializer.toJson(contactWillSendsReceipt), 'markForRetry': serializer.toJson(markForRetry), 'ackByServerAt': serializer.toJson(ackByServerAt), 'retryCount': serializer.toJson(retryCount), 'lastRetry': serializer.toJson(lastRetry), 'createdAt': serializer.toJson(createdAt), }; } ReceiptsData copyWith( {String? receiptId, int? contactId, Value messageId = const Value.absent(), i2.Uint8List? message, bool? contactWillSendsReceipt, Value markForRetry = const Value.absent(), Value ackByServerAt = const Value.absent(), int? retryCount, Value lastRetry = const Value.absent(), DateTime? createdAt}) => ReceiptsData( receiptId: receiptId ?? this.receiptId, contactId: contactId ?? this.contactId, messageId: messageId.present ? messageId.value : this.messageId, message: message ?? this.message, contactWillSendsReceipt: contactWillSendsReceipt ?? this.contactWillSendsReceipt, markForRetry: markForRetry.present ? markForRetry.value : this.markForRetry, ackByServerAt: ackByServerAt.present ? ackByServerAt.value : this.ackByServerAt, retryCount: retryCount ?? this.retryCount, lastRetry: lastRetry.present ? lastRetry.value : this.lastRetry, createdAt: createdAt ?? this.createdAt, ); ReceiptsData copyWithCompanion(ReceiptsCompanion data) { return ReceiptsData( receiptId: data.receiptId.present ? data.receiptId.value : this.receiptId, contactId: data.contactId.present ? data.contactId.value : this.contactId, messageId: data.messageId.present ? data.messageId.value : this.messageId, message: data.message.present ? data.message.value : this.message, contactWillSendsReceipt: data.contactWillSendsReceipt.present ? data.contactWillSendsReceipt.value : this.contactWillSendsReceipt, markForRetry: data.markForRetry.present ? data.markForRetry.value : this.markForRetry, ackByServerAt: data.ackByServerAt.present ? data.ackByServerAt.value : this.ackByServerAt, retryCount: data.retryCount.present ? data.retryCount.value : this.retryCount, lastRetry: data.lastRetry.present ? data.lastRetry.value : this.lastRetry, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('ReceiptsData(') ..write('receiptId: $receiptId, ') ..write('contactId: $contactId, ') ..write('messageId: $messageId, ') ..write('message: $message, ') ..write('contactWillSendsReceipt: $contactWillSendsReceipt, ') ..write('markForRetry: $markForRetry, ') ..write('ackByServerAt: $ackByServerAt, ') ..write('retryCount: $retryCount, ') ..write('lastRetry: $lastRetry, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash( receiptId, contactId, messageId, $driftBlobEquality.hash(message), contactWillSendsReceipt, markForRetry, ackByServerAt, retryCount, lastRetry, createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is ReceiptsData && other.receiptId == this.receiptId && other.contactId == this.contactId && other.messageId == this.messageId && $driftBlobEquality.equals(other.message, this.message) && other.contactWillSendsReceipt == this.contactWillSendsReceipt && other.markForRetry == this.markForRetry && other.ackByServerAt == this.ackByServerAt && other.retryCount == this.retryCount && other.lastRetry == this.lastRetry && other.createdAt == this.createdAt); } class ReceiptsCompanion extends UpdateCompanion { final Value receiptId; final Value contactId; final Value messageId; final Value message; final Value contactWillSendsReceipt; final Value markForRetry; final Value ackByServerAt; final Value retryCount; final Value lastRetry; final Value createdAt; final Value rowid; const ReceiptsCompanion({ this.receiptId = const Value.absent(), this.contactId = const Value.absent(), this.messageId = const Value.absent(), this.message = const Value.absent(), this.contactWillSendsReceipt = const Value.absent(), this.markForRetry = const Value.absent(), this.ackByServerAt = const Value.absent(), this.retryCount = const Value.absent(), this.lastRetry = const Value.absent(), this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }); ReceiptsCompanion.insert({ required String receiptId, required int contactId, this.messageId = const Value.absent(), required i2.Uint8List message, this.contactWillSendsReceipt = const Value.absent(), this.markForRetry = const Value.absent(), this.ackByServerAt = const Value.absent(), this.retryCount = const Value.absent(), this.lastRetry = const Value.absent(), this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }) : receiptId = Value(receiptId), contactId = Value(contactId), message = Value(message); static Insertable custom({ Expression? receiptId, Expression? contactId, Expression? messageId, Expression? message, Expression? contactWillSendsReceipt, Expression? markForRetry, Expression? ackByServerAt, Expression? retryCount, Expression? lastRetry, Expression? createdAt, Expression? rowid, }) { return RawValuesInsertable({ if (receiptId != null) 'receipt_id': receiptId, if (contactId != null) 'contact_id': contactId, if (messageId != null) 'message_id': messageId, if (message != null) 'message': message, if (contactWillSendsReceipt != null) 'contact_will_sends_receipt': contactWillSendsReceipt, if (markForRetry != null) 'mark_for_retry': markForRetry, if (ackByServerAt != null) 'ack_by_server_at': ackByServerAt, if (retryCount != null) 'retry_count': retryCount, if (lastRetry != null) 'last_retry': lastRetry, if (createdAt != null) 'created_at': createdAt, if (rowid != null) 'rowid': rowid, }); } ReceiptsCompanion copyWith( {Value? receiptId, Value? contactId, Value? messageId, Value? message, Value? contactWillSendsReceipt, Value? markForRetry, Value? ackByServerAt, Value? retryCount, Value? lastRetry, Value? createdAt, Value? rowid}) { return ReceiptsCompanion( receiptId: receiptId ?? this.receiptId, contactId: contactId ?? this.contactId, messageId: messageId ?? this.messageId, message: message ?? this.message, contactWillSendsReceipt: contactWillSendsReceipt ?? this.contactWillSendsReceipt, markForRetry: markForRetry ?? this.markForRetry, ackByServerAt: ackByServerAt ?? this.ackByServerAt, retryCount: retryCount ?? this.retryCount, lastRetry: lastRetry ?? this.lastRetry, createdAt: createdAt ?? this.createdAt, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (receiptId.present) { map['receipt_id'] = Variable(receiptId.value); } if (contactId.present) { map['contact_id'] = Variable(contactId.value); } if (messageId.present) { map['message_id'] = Variable(messageId.value); } if (message.present) { map['message'] = Variable(message.value); } if (contactWillSendsReceipt.present) { map['contact_will_sends_receipt'] = Variable(contactWillSendsReceipt.value); } if (markForRetry.present) { map['mark_for_retry'] = Variable(markForRetry.value); } if (ackByServerAt.present) { map['ack_by_server_at'] = Variable(ackByServerAt.value); } if (retryCount.present) { map['retry_count'] = Variable(retryCount.value); } if (lastRetry.present) { map['last_retry'] = Variable(lastRetry.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('ReceiptsCompanion(') ..write('receiptId: $receiptId, ') ..write('contactId: $contactId, ') ..write('messageId: $messageId, ') ..write('message: $message, ') ..write('contactWillSendsReceipt: $contactWillSendsReceipt, ') ..write('markForRetry: $markForRetry, ') ..write('ackByServerAt: $ackByServerAt, ') ..write('retryCount: $retryCount, ') ..write('lastRetry: $lastRetry, ') ..write('createdAt: $createdAt, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class ReceivedReceipts extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; ReceivedReceipts(this.attachedDatabase, [this._alias]); late final GeneratedColumn receiptId = GeneratedColumn( 'receipt_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [receiptId, createdAt]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'received_receipts'; @override Set get $primaryKey => {receiptId}; @override ReceivedReceiptsData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return ReceivedReceiptsData( receiptId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}receipt_id'])!, createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, ); } @override ReceivedReceipts createAlias(String alias) { return ReceivedReceipts(attachedDatabase, alias); } } class ReceivedReceiptsData extends DataClass implements Insertable { final String receiptId; final DateTime createdAt; const ReceivedReceiptsData( {required this.receiptId, required this.createdAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['receipt_id'] = Variable(receiptId); map['created_at'] = Variable(createdAt); return map; } ReceivedReceiptsCompanion toCompanion(bool nullToAbsent) { return ReceivedReceiptsCompanion( receiptId: Value(receiptId), createdAt: Value(createdAt), ); } factory ReceivedReceiptsData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return ReceivedReceiptsData( receiptId: serializer.fromJson(json['receiptId']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'receiptId': serializer.toJson(receiptId), 'createdAt': serializer.toJson(createdAt), }; } ReceivedReceiptsData copyWith({String? receiptId, DateTime? createdAt}) => ReceivedReceiptsData( receiptId: receiptId ?? this.receiptId, createdAt: createdAt ?? this.createdAt, ); ReceivedReceiptsData copyWithCompanion(ReceivedReceiptsCompanion data) { return ReceivedReceiptsData( receiptId: data.receiptId.present ? data.receiptId.value : this.receiptId, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('ReceivedReceiptsData(') ..write('receiptId: $receiptId, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash(receiptId, createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is ReceivedReceiptsData && other.receiptId == this.receiptId && other.createdAt == this.createdAt); } class ReceivedReceiptsCompanion extends UpdateCompanion { final Value receiptId; final Value createdAt; final Value rowid; const ReceivedReceiptsCompanion({ this.receiptId = const Value.absent(), this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }); ReceivedReceiptsCompanion.insert({ required String receiptId, this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }) : receiptId = Value(receiptId); static Insertable custom({ Expression? receiptId, Expression? createdAt, Expression? rowid, }) { return RawValuesInsertable({ if (receiptId != null) 'receipt_id': receiptId, if (createdAt != null) 'created_at': createdAt, if (rowid != null) 'rowid': rowid, }); } ReceivedReceiptsCompanion copyWith( {Value? receiptId, Value? createdAt, Value? rowid}) { return ReceivedReceiptsCompanion( receiptId: receiptId ?? this.receiptId, createdAt: createdAt ?? this.createdAt, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (receiptId.present) { map['receipt_id'] = Variable(receiptId.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('ReceivedReceiptsCompanion(') ..write('receiptId: $receiptId, ') ..write('createdAt: $createdAt, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class SignalIdentityKeyStores extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; SignalIdentityKeyStores(this.attachedDatabase, [this._alias]); late final GeneratedColumn deviceId = GeneratedColumn( 'device_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true); late final GeneratedColumn name = GeneratedColumn( 'name', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn identityKey = GeneratedColumn('identity_key', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [deviceId, name, identityKey, createdAt]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'signal_identity_key_stores'; @override Set get $primaryKey => {deviceId, name}; @override SignalIdentityKeyStoresData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return SignalIdentityKeyStoresData( deviceId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}device_id'])!, name: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}name'])!, identityKey: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}identity_key'])!, createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, ); } @override SignalIdentityKeyStores createAlias(String alias) { return SignalIdentityKeyStores(attachedDatabase, alias); } } class SignalIdentityKeyStoresData extends DataClass implements Insertable { final int deviceId; final String name; final i2.Uint8List identityKey; final DateTime createdAt; const SignalIdentityKeyStoresData( {required this.deviceId, required this.name, required this.identityKey, required this.createdAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['device_id'] = Variable(deviceId); map['name'] = Variable(name); map['identity_key'] = Variable(identityKey); map['created_at'] = Variable(createdAt); return map; } SignalIdentityKeyStoresCompanion toCompanion(bool nullToAbsent) { return SignalIdentityKeyStoresCompanion( deviceId: Value(deviceId), name: Value(name), identityKey: Value(identityKey), createdAt: Value(createdAt), ); } factory SignalIdentityKeyStoresData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return SignalIdentityKeyStoresData( deviceId: serializer.fromJson(json['deviceId']), name: serializer.fromJson(json['name']), identityKey: serializer.fromJson(json['identityKey']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'deviceId': serializer.toJson(deviceId), 'name': serializer.toJson(name), 'identityKey': serializer.toJson(identityKey), 'createdAt': serializer.toJson(createdAt), }; } SignalIdentityKeyStoresData copyWith( {int? deviceId, String? name, i2.Uint8List? identityKey, DateTime? createdAt}) => SignalIdentityKeyStoresData( deviceId: deviceId ?? this.deviceId, name: name ?? this.name, identityKey: identityKey ?? this.identityKey, createdAt: createdAt ?? this.createdAt, ); SignalIdentityKeyStoresData copyWithCompanion( SignalIdentityKeyStoresCompanion data) { return SignalIdentityKeyStoresData( deviceId: data.deviceId.present ? data.deviceId.value : this.deviceId, name: data.name.present ? data.name.value : this.name, identityKey: data.identityKey.present ? data.identityKey.value : this.identityKey, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('SignalIdentityKeyStoresData(') ..write('deviceId: $deviceId, ') ..write('name: $name, ') ..write('identityKey: $identityKey, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash( deviceId, name, $driftBlobEquality.hash(identityKey), createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is SignalIdentityKeyStoresData && other.deviceId == this.deviceId && other.name == this.name && $driftBlobEquality.equals(other.identityKey, this.identityKey) && other.createdAt == this.createdAt); } class SignalIdentityKeyStoresCompanion extends UpdateCompanion { final Value deviceId; final Value name; final Value identityKey; final Value createdAt; final Value rowid; const SignalIdentityKeyStoresCompanion({ this.deviceId = const Value.absent(), this.name = const Value.absent(), this.identityKey = const Value.absent(), this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }); SignalIdentityKeyStoresCompanion.insert({ required int deviceId, required String name, required i2.Uint8List identityKey, this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }) : deviceId = Value(deviceId), name = Value(name), identityKey = Value(identityKey); static Insertable custom({ Expression? deviceId, Expression? name, Expression? identityKey, Expression? createdAt, Expression? rowid, }) { return RawValuesInsertable({ if (deviceId != null) 'device_id': deviceId, if (name != null) 'name': name, if (identityKey != null) 'identity_key': identityKey, if (createdAt != null) 'created_at': createdAt, if (rowid != null) 'rowid': rowid, }); } SignalIdentityKeyStoresCompanion copyWith( {Value? deviceId, Value? name, Value? identityKey, Value? createdAt, Value? rowid}) { return SignalIdentityKeyStoresCompanion( deviceId: deviceId ?? this.deviceId, name: name ?? this.name, identityKey: identityKey ?? this.identityKey, createdAt: createdAt ?? this.createdAt, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (deviceId.present) { map['device_id'] = Variable(deviceId.value); } if (name.present) { map['name'] = Variable(name.value); } if (identityKey.present) { map['identity_key'] = Variable(identityKey.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('SignalIdentityKeyStoresCompanion(') ..write('deviceId: $deviceId, ') ..write('name: $name, ') ..write('identityKey: $identityKey, ') ..write('createdAt: $createdAt, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class SignalPreKeyStores extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; SignalPreKeyStores(this.attachedDatabase, [this._alias]); late final GeneratedColumn preKeyId = GeneratedColumn( 'pre_key_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false); late final GeneratedColumn preKey = GeneratedColumn('pre_key', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [preKeyId, preKey, createdAt]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'signal_pre_key_stores'; @override Set get $primaryKey => {preKeyId}; @override SignalPreKeyStoresData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return SignalPreKeyStoresData( preKeyId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}pre_key_id'])!, preKey: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}pre_key'])!, createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, ); } @override SignalPreKeyStores createAlias(String alias) { return SignalPreKeyStores(attachedDatabase, alias); } } class SignalPreKeyStoresData extends DataClass implements Insertable { final int preKeyId; final i2.Uint8List preKey; final DateTime createdAt; const SignalPreKeyStoresData( {required this.preKeyId, required this.preKey, required this.createdAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['pre_key_id'] = Variable(preKeyId); map['pre_key'] = Variable(preKey); map['created_at'] = Variable(createdAt); return map; } SignalPreKeyStoresCompanion toCompanion(bool nullToAbsent) { return SignalPreKeyStoresCompanion( preKeyId: Value(preKeyId), preKey: Value(preKey), createdAt: Value(createdAt), ); } factory SignalPreKeyStoresData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return SignalPreKeyStoresData( preKeyId: serializer.fromJson(json['preKeyId']), preKey: serializer.fromJson(json['preKey']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'preKeyId': serializer.toJson(preKeyId), 'preKey': serializer.toJson(preKey), 'createdAt': serializer.toJson(createdAt), }; } SignalPreKeyStoresData copyWith( {int? preKeyId, i2.Uint8List? preKey, DateTime? createdAt}) => SignalPreKeyStoresData( preKeyId: preKeyId ?? this.preKeyId, preKey: preKey ?? this.preKey, createdAt: createdAt ?? this.createdAt, ); SignalPreKeyStoresData copyWithCompanion(SignalPreKeyStoresCompanion data) { return SignalPreKeyStoresData( preKeyId: data.preKeyId.present ? data.preKeyId.value : this.preKeyId, preKey: data.preKey.present ? data.preKey.value : this.preKey, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('SignalPreKeyStoresData(') ..write('preKeyId: $preKeyId, ') ..write('preKey: $preKey, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash(preKeyId, $driftBlobEquality.hash(preKey), createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is SignalPreKeyStoresData && other.preKeyId == this.preKeyId && $driftBlobEquality.equals(other.preKey, this.preKey) && other.createdAt == this.createdAt); } class SignalPreKeyStoresCompanion extends UpdateCompanion { final Value preKeyId; final Value preKey; final Value createdAt; const SignalPreKeyStoresCompanion({ this.preKeyId = const Value.absent(), this.preKey = const Value.absent(), this.createdAt = const Value.absent(), }); SignalPreKeyStoresCompanion.insert({ this.preKeyId = const Value.absent(), required i2.Uint8List preKey, this.createdAt = const Value.absent(), }) : preKey = Value(preKey); static Insertable custom({ Expression? preKeyId, Expression? preKey, Expression? createdAt, }) { return RawValuesInsertable({ if (preKeyId != null) 'pre_key_id': preKeyId, if (preKey != null) 'pre_key': preKey, if (createdAt != null) 'created_at': createdAt, }); } SignalPreKeyStoresCompanion copyWith( {Value? preKeyId, Value? preKey, Value? createdAt}) { return SignalPreKeyStoresCompanion( preKeyId: preKeyId ?? this.preKeyId, preKey: preKey ?? this.preKey, createdAt: createdAt ?? this.createdAt, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (preKeyId.present) { map['pre_key_id'] = Variable(preKeyId.value); } if (preKey.present) { map['pre_key'] = Variable(preKey.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } return map; } @override String toString() { return (StringBuffer('SignalPreKeyStoresCompanion(') ..write('preKeyId: $preKeyId, ') ..write('preKey: $preKey, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } } class SignalSenderKeyStores extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; SignalSenderKeyStores(this.attachedDatabase, [this._alias]); late final GeneratedColumn senderKeyName = GeneratedColumn( 'sender_key_name', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn senderKey = GeneratedColumn('sender_key', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true); @override List get $columns => [senderKeyName, senderKey]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'signal_sender_key_stores'; @override Set get $primaryKey => {senderKeyName}; @override SignalSenderKeyStoresData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return SignalSenderKeyStoresData( senderKeyName: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}sender_key_name'])!, senderKey: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}sender_key'])!, ); } @override SignalSenderKeyStores createAlias(String alias) { return SignalSenderKeyStores(attachedDatabase, alias); } } class SignalSenderKeyStoresData extends DataClass implements Insertable { final String senderKeyName; final i2.Uint8List senderKey; const SignalSenderKeyStoresData( {required this.senderKeyName, required this.senderKey}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['sender_key_name'] = Variable(senderKeyName); map['sender_key'] = Variable(senderKey); return map; } SignalSenderKeyStoresCompanion toCompanion(bool nullToAbsent) { return SignalSenderKeyStoresCompanion( senderKeyName: Value(senderKeyName), senderKey: Value(senderKey), ); } factory SignalSenderKeyStoresData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return SignalSenderKeyStoresData( senderKeyName: serializer.fromJson(json['senderKeyName']), senderKey: serializer.fromJson(json['senderKey']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'senderKeyName': serializer.toJson(senderKeyName), 'senderKey': serializer.toJson(senderKey), }; } SignalSenderKeyStoresData copyWith( {String? senderKeyName, i2.Uint8List? senderKey}) => SignalSenderKeyStoresData( senderKeyName: senderKeyName ?? this.senderKeyName, senderKey: senderKey ?? this.senderKey, ); SignalSenderKeyStoresData copyWithCompanion( SignalSenderKeyStoresCompanion data) { return SignalSenderKeyStoresData( senderKeyName: data.senderKeyName.present ? data.senderKeyName.value : this.senderKeyName, senderKey: data.senderKey.present ? data.senderKey.value : this.senderKey, ); } @override String toString() { return (StringBuffer('SignalSenderKeyStoresData(') ..write('senderKeyName: $senderKeyName, ') ..write('senderKey: $senderKey') ..write(')')) .toString(); } @override int get hashCode => Object.hash(senderKeyName, $driftBlobEquality.hash(senderKey)); @override bool operator ==(Object other) => identical(this, other) || (other is SignalSenderKeyStoresData && other.senderKeyName == this.senderKeyName && $driftBlobEquality.equals(other.senderKey, this.senderKey)); } class SignalSenderKeyStoresCompanion extends UpdateCompanion { final Value senderKeyName; final Value senderKey; final Value rowid; const SignalSenderKeyStoresCompanion({ this.senderKeyName = const Value.absent(), this.senderKey = const Value.absent(), this.rowid = const Value.absent(), }); SignalSenderKeyStoresCompanion.insert({ required String senderKeyName, required i2.Uint8List senderKey, this.rowid = const Value.absent(), }) : senderKeyName = Value(senderKeyName), senderKey = Value(senderKey); static Insertable custom({ Expression? senderKeyName, Expression? senderKey, Expression? rowid, }) { return RawValuesInsertable({ if (senderKeyName != null) 'sender_key_name': senderKeyName, if (senderKey != null) 'sender_key': senderKey, if (rowid != null) 'rowid': rowid, }); } SignalSenderKeyStoresCompanion copyWith( {Value? senderKeyName, Value? senderKey, Value? rowid}) { return SignalSenderKeyStoresCompanion( senderKeyName: senderKeyName ?? this.senderKeyName, senderKey: senderKey ?? this.senderKey, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (senderKeyName.present) { map['sender_key_name'] = Variable(senderKeyName.value); } if (senderKey.present) { map['sender_key'] = Variable(senderKey.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('SignalSenderKeyStoresCompanion(') ..write('senderKeyName: $senderKeyName, ') ..write('senderKey: $senderKey, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class SignalSessionStores extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; SignalSessionStores(this.attachedDatabase, [this._alias]); late final GeneratedColumn deviceId = GeneratedColumn( 'device_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true); late final GeneratedColumn name = GeneratedColumn( 'name', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn sessionRecord = GeneratedColumn('session_record', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [deviceId, name, sessionRecord, createdAt]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'signal_session_stores'; @override Set get $primaryKey => {deviceId, name}; @override SignalSessionStoresData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return SignalSessionStoresData( deviceId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}device_id'])!, name: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}name'])!, sessionRecord: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}session_record'])!, createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, ); } @override SignalSessionStores createAlias(String alias) { return SignalSessionStores(attachedDatabase, alias); } } class SignalSessionStoresData extends DataClass implements Insertable { final int deviceId; final String name; final i2.Uint8List sessionRecord; final DateTime createdAt; const SignalSessionStoresData( {required this.deviceId, required this.name, required this.sessionRecord, required this.createdAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['device_id'] = Variable(deviceId); map['name'] = Variable(name); map['session_record'] = Variable(sessionRecord); map['created_at'] = Variable(createdAt); return map; } SignalSessionStoresCompanion toCompanion(bool nullToAbsent) { return SignalSessionStoresCompanion( deviceId: Value(deviceId), name: Value(name), sessionRecord: Value(sessionRecord), createdAt: Value(createdAt), ); } factory SignalSessionStoresData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return SignalSessionStoresData( deviceId: serializer.fromJson(json['deviceId']), name: serializer.fromJson(json['name']), sessionRecord: serializer.fromJson(json['sessionRecord']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'deviceId': serializer.toJson(deviceId), 'name': serializer.toJson(name), 'sessionRecord': serializer.toJson(sessionRecord), 'createdAt': serializer.toJson(createdAt), }; } SignalSessionStoresData copyWith( {int? deviceId, String? name, i2.Uint8List? sessionRecord, DateTime? createdAt}) => SignalSessionStoresData( deviceId: deviceId ?? this.deviceId, name: name ?? this.name, sessionRecord: sessionRecord ?? this.sessionRecord, createdAt: createdAt ?? this.createdAt, ); SignalSessionStoresData copyWithCompanion(SignalSessionStoresCompanion data) { return SignalSessionStoresData( deviceId: data.deviceId.present ? data.deviceId.value : this.deviceId, name: data.name.present ? data.name.value : this.name, sessionRecord: data.sessionRecord.present ? data.sessionRecord.value : this.sessionRecord, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('SignalSessionStoresData(') ..write('deviceId: $deviceId, ') ..write('name: $name, ') ..write('sessionRecord: $sessionRecord, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash( deviceId, name, $driftBlobEquality.hash(sessionRecord), createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is SignalSessionStoresData && other.deviceId == this.deviceId && other.name == this.name && $driftBlobEquality.equals(other.sessionRecord, this.sessionRecord) && other.createdAt == this.createdAt); } class SignalSessionStoresCompanion extends UpdateCompanion { final Value deviceId; final Value name; final Value sessionRecord; final Value createdAt; final Value rowid; const SignalSessionStoresCompanion({ this.deviceId = const Value.absent(), this.name = const Value.absent(), this.sessionRecord = const Value.absent(), this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }); SignalSessionStoresCompanion.insert({ required int deviceId, required String name, required i2.Uint8List sessionRecord, this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }) : deviceId = Value(deviceId), name = Value(name), sessionRecord = Value(sessionRecord); static Insertable custom({ Expression? deviceId, Expression? name, Expression? sessionRecord, Expression? createdAt, Expression? rowid, }) { return RawValuesInsertable({ if (deviceId != null) 'device_id': deviceId, if (name != null) 'name': name, if (sessionRecord != null) 'session_record': sessionRecord, if (createdAt != null) 'created_at': createdAt, if (rowid != null) 'rowid': rowid, }); } SignalSessionStoresCompanion copyWith( {Value? deviceId, Value? name, Value? sessionRecord, Value? createdAt, Value? rowid}) { return SignalSessionStoresCompanion( deviceId: deviceId ?? this.deviceId, name: name ?? this.name, sessionRecord: sessionRecord ?? this.sessionRecord, createdAt: createdAt ?? this.createdAt, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (deviceId.present) { map['device_id'] = Variable(deviceId.value); } if (name.present) { map['name'] = Variable(name.value); } if (sessionRecord.present) { map['session_record'] = Variable(sessionRecord.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('SignalSessionStoresCompanion(') ..write('deviceId: $deviceId, ') ..write('name: $name, ') ..write('sessionRecord: $sessionRecord, ') ..write('createdAt: $createdAt, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class SignalContactPreKeys extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; SignalContactPreKeys(this.attachedDatabase, [this._alias]); late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE')); late final GeneratedColumn preKeyId = GeneratedColumn( 'pre_key_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true); late final GeneratedColumn preKey = GeneratedColumn('pre_key', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [contactId, preKeyId, preKey, createdAt]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'signal_contact_pre_keys'; @override Set get $primaryKey => {contactId, preKeyId}; @override SignalContactPreKeysData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return SignalContactPreKeysData( contactId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}contact_id'])!, preKeyId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}pre_key_id'])!, preKey: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}pre_key'])!, createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, ); } @override SignalContactPreKeys createAlias(String alias) { return SignalContactPreKeys(attachedDatabase, alias); } } class SignalContactPreKeysData extends DataClass implements Insertable { final int contactId; final int preKeyId; final i2.Uint8List preKey; final DateTime createdAt; const SignalContactPreKeysData( {required this.contactId, required this.preKeyId, required this.preKey, required this.createdAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['contact_id'] = Variable(contactId); map['pre_key_id'] = Variable(preKeyId); map['pre_key'] = Variable(preKey); map['created_at'] = Variable(createdAt); return map; } SignalContactPreKeysCompanion toCompanion(bool nullToAbsent) { return SignalContactPreKeysCompanion( contactId: Value(contactId), preKeyId: Value(preKeyId), preKey: Value(preKey), createdAt: Value(createdAt), ); } factory SignalContactPreKeysData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return SignalContactPreKeysData( contactId: serializer.fromJson(json['contactId']), preKeyId: serializer.fromJson(json['preKeyId']), preKey: serializer.fromJson(json['preKey']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'contactId': serializer.toJson(contactId), 'preKeyId': serializer.toJson(preKeyId), 'preKey': serializer.toJson(preKey), 'createdAt': serializer.toJson(createdAt), }; } SignalContactPreKeysData copyWith( {int? contactId, int? preKeyId, i2.Uint8List? preKey, DateTime? createdAt}) => SignalContactPreKeysData( contactId: contactId ?? this.contactId, preKeyId: preKeyId ?? this.preKeyId, preKey: preKey ?? this.preKey, createdAt: createdAt ?? this.createdAt, ); SignalContactPreKeysData copyWithCompanion( SignalContactPreKeysCompanion data) { return SignalContactPreKeysData( contactId: data.contactId.present ? data.contactId.value : this.contactId, preKeyId: data.preKeyId.present ? data.preKeyId.value : this.preKeyId, preKey: data.preKey.present ? data.preKey.value : this.preKey, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('SignalContactPreKeysData(') ..write('contactId: $contactId, ') ..write('preKeyId: $preKeyId, ') ..write('preKey: $preKey, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash( contactId, preKeyId, $driftBlobEquality.hash(preKey), createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is SignalContactPreKeysData && other.contactId == this.contactId && other.preKeyId == this.preKeyId && $driftBlobEquality.equals(other.preKey, this.preKey) && other.createdAt == this.createdAt); } class SignalContactPreKeysCompanion extends UpdateCompanion { final Value contactId; final Value preKeyId; final Value preKey; final Value createdAt; final Value rowid; const SignalContactPreKeysCompanion({ this.contactId = const Value.absent(), this.preKeyId = const Value.absent(), this.preKey = const Value.absent(), this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }); SignalContactPreKeysCompanion.insert({ required int contactId, required int preKeyId, required i2.Uint8List preKey, this.createdAt = const Value.absent(), this.rowid = const Value.absent(), }) : contactId = Value(contactId), preKeyId = Value(preKeyId), preKey = Value(preKey); static Insertable custom({ Expression? contactId, Expression? preKeyId, Expression? preKey, Expression? createdAt, Expression? rowid, }) { return RawValuesInsertable({ if (contactId != null) 'contact_id': contactId, if (preKeyId != null) 'pre_key_id': preKeyId, if (preKey != null) 'pre_key': preKey, if (createdAt != null) 'created_at': createdAt, if (rowid != null) 'rowid': rowid, }); } SignalContactPreKeysCompanion copyWith( {Value? contactId, Value? preKeyId, Value? preKey, Value? createdAt, Value? rowid}) { return SignalContactPreKeysCompanion( contactId: contactId ?? this.contactId, preKeyId: preKeyId ?? this.preKeyId, preKey: preKey ?? this.preKey, createdAt: createdAt ?? this.createdAt, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (contactId.present) { map['contact_id'] = Variable(contactId.value); } if (preKeyId.present) { map['pre_key_id'] = Variable(preKeyId.value); } if (preKey.present) { map['pre_key'] = Variable(preKey.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('SignalContactPreKeysCompanion(') ..write('contactId: $contactId, ') ..write('preKeyId: $preKeyId, ') ..write('preKey: $preKey, ') ..write('createdAt: $createdAt, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class SignalContactSignedPreKeys extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; SignalContactSignedPreKeys(this.attachedDatabase, [this._alias]); late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE')); late final GeneratedColumn signedPreKeyId = GeneratedColumn( 'signed_pre_key_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true); late final GeneratedColumn signedPreKey = GeneratedColumn('signed_pre_key', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true); late final GeneratedColumn signedPreKeySignature = GeneratedColumn( 'signed_pre_key_signature', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true); late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [ contactId, signedPreKeyId, signedPreKey, signedPreKeySignature, createdAt ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'signal_contact_signed_pre_keys'; @override Set get $primaryKey => {contactId}; @override SignalContactSignedPreKeysData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return SignalContactSignedPreKeysData( contactId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}contact_id'])!, signedPreKeyId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}signed_pre_key_id'])!, signedPreKey: attachedDatabase.typeMapping .read(DriftSqlType.blob, data['${effectivePrefix}signed_pre_key'])!, signedPreKeySignature: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}signed_pre_key_signature'])!, createdAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, ); } @override SignalContactSignedPreKeys createAlias(String alias) { return SignalContactSignedPreKeys(attachedDatabase, alias); } } class SignalContactSignedPreKeysData extends DataClass implements Insertable { final int contactId; final int signedPreKeyId; final i2.Uint8List signedPreKey; final i2.Uint8List signedPreKeySignature; final DateTime createdAt; const SignalContactSignedPreKeysData( {required this.contactId, required this.signedPreKeyId, required this.signedPreKey, required this.signedPreKeySignature, required this.createdAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['contact_id'] = Variable(contactId); map['signed_pre_key_id'] = Variable(signedPreKeyId); map['signed_pre_key'] = Variable(signedPreKey); map['signed_pre_key_signature'] = Variable(signedPreKeySignature); map['created_at'] = Variable(createdAt); return map; } SignalContactSignedPreKeysCompanion toCompanion(bool nullToAbsent) { return SignalContactSignedPreKeysCompanion( contactId: Value(contactId), signedPreKeyId: Value(signedPreKeyId), signedPreKey: Value(signedPreKey), signedPreKeySignature: Value(signedPreKeySignature), createdAt: Value(createdAt), ); } factory SignalContactSignedPreKeysData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return SignalContactSignedPreKeysData( contactId: serializer.fromJson(json['contactId']), signedPreKeyId: serializer.fromJson(json['signedPreKeyId']), signedPreKey: serializer.fromJson(json['signedPreKey']), signedPreKeySignature: serializer.fromJson(json['signedPreKeySignature']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'contactId': serializer.toJson(contactId), 'signedPreKeyId': serializer.toJson(signedPreKeyId), 'signedPreKey': serializer.toJson(signedPreKey), 'signedPreKeySignature': serializer.toJson(signedPreKeySignature), 'createdAt': serializer.toJson(createdAt), }; } SignalContactSignedPreKeysData copyWith( {int? contactId, int? signedPreKeyId, i2.Uint8List? signedPreKey, i2.Uint8List? signedPreKeySignature, DateTime? createdAt}) => SignalContactSignedPreKeysData( contactId: contactId ?? this.contactId, signedPreKeyId: signedPreKeyId ?? this.signedPreKeyId, signedPreKey: signedPreKey ?? this.signedPreKey, signedPreKeySignature: signedPreKeySignature ?? this.signedPreKeySignature, createdAt: createdAt ?? this.createdAt, ); SignalContactSignedPreKeysData copyWithCompanion( SignalContactSignedPreKeysCompanion data) { return SignalContactSignedPreKeysData( contactId: data.contactId.present ? data.contactId.value : this.contactId, signedPreKeyId: data.signedPreKeyId.present ? data.signedPreKeyId.value : this.signedPreKeyId, signedPreKey: data.signedPreKey.present ? data.signedPreKey.value : this.signedPreKey, signedPreKeySignature: data.signedPreKeySignature.present ? data.signedPreKeySignature.value : this.signedPreKeySignature, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('SignalContactSignedPreKeysData(') ..write('contactId: $contactId, ') ..write('signedPreKeyId: $signedPreKeyId, ') ..write('signedPreKey: $signedPreKey, ') ..write('signedPreKeySignature: $signedPreKeySignature, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash( contactId, signedPreKeyId, $driftBlobEquality.hash(signedPreKey), $driftBlobEquality.hash(signedPreKeySignature), createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is SignalContactSignedPreKeysData && other.contactId == this.contactId && other.signedPreKeyId == this.signedPreKeyId && $driftBlobEquality.equals(other.signedPreKey, this.signedPreKey) && $driftBlobEquality.equals( other.signedPreKeySignature, this.signedPreKeySignature) && other.createdAt == this.createdAt); } class SignalContactSignedPreKeysCompanion extends UpdateCompanion { final Value contactId; final Value signedPreKeyId; final Value signedPreKey; final Value signedPreKeySignature; final Value createdAt; const SignalContactSignedPreKeysCompanion({ this.contactId = const Value.absent(), this.signedPreKeyId = const Value.absent(), this.signedPreKey = const Value.absent(), this.signedPreKeySignature = const Value.absent(), this.createdAt = const Value.absent(), }); SignalContactSignedPreKeysCompanion.insert({ this.contactId = const Value.absent(), required int signedPreKeyId, required i2.Uint8List signedPreKey, required i2.Uint8List signedPreKeySignature, this.createdAt = const Value.absent(), }) : signedPreKeyId = Value(signedPreKeyId), signedPreKey = Value(signedPreKey), signedPreKeySignature = Value(signedPreKeySignature); static Insertable custom({ Expression? contactId, Expression? signedPreKeyId, Expression? signedPreKey, Expression? signedPreKeySignature, Expression? createdAt, }) { return RawValuesInsertable({ if (contactId != null) 'contact_id': contactId, if (signedPreKeyId != null) 'signed_pre_key_id': signedPreKeyId, if (signedPreKey != null) 'signed_pre_key': signedPreKey, if (signedPreKeySignature != null) 'signed_pre_key_signature': signedPreKeySignature, if (createdAt != null) 'created_at': createdAt, }); } SignalContactSignedPreKeysCompanion copyWith( {Value? contactId, Value? signedPreKeyId, Value? signedPreKey, Value? signedPreKeySignature, Value? createdAt}) { return SignalContactSignedPreKeysCompanion( contactId: contactId ?? this.contactId, signedPreKeyId: signedPreKeyId ?? this.signedPreKeyId, signedPreKey: signedPreKey ?? this.signedPreKey, signedPreKeySignature: signedPreKeySignature ?? this.signedPreKeySignature, createdAt: createdAt ?? this.createdAt, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (contactId.present) { map['contact_id'] = Variable(contactId.value); } if (signedPreKeyId.present) { map['signed_pre_key_id'] = Variable(signedPreKeyId.value); } if (signedPreKey.present) { map['signed_pre_key'] = Variable(signedPreKey.value); } if (signedPreKeySignature.present) { map['signed_pre_key_signature'] = Variable(signedPreKeySignature.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } return map; } @override String toString() { return (StringBuffer('SignalContactSignedPreKeysCompanion(') ..write('contactId: $contactId, ') ..write('signedPreKeyId: $signedPreKeyId, ') ..write('signedPreKey: $signedPreKey, ') ..write('signedPreKeySignature: $signedPreKeySignature, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } } class MessageActions extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; MessageActions(this.attachedDatabase, [this._alias]); late final GeneratedColumn messageId = GeneratedColumn( 'message_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES messages (message_id) ON DELETE CASCADE')); late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true); late final GeneratedColumn type = GeneratedColumn( 'type', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn actionAt = GeneratedColumn( 'action_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [messageId, contactId, type, actionAt]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'message_actions'; @override Set get $primaryKey => {messageId, contactId, type}; @override MessageActionsData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return MessageActionsData( messageId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}message_id'])!, contactId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}contact_id'])!, type: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}type'])!, actionAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}action_at'])!, ); } @override MessageActions createAlias(String alias) { return MessageActions(attachedDatabase, alias); } } class MessageActionsData extends DataClass implements Insertable { final String messageId; final int contactId; final String type; final DateTime actionAt; const MessageActionsData( {required this.messageId, required this.contactId, required this.type, required this.actionAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['message_id'] = Variable(messageId); map['contact_id'] = Variable(contactId); map['type'] = Variable(type); map['action_at'] = Variable(actionAt); return map; } MessageActionsCompanion toCompanion(bool nullToAbsent) { return MessageActionsCompanion( messageId: Value(messageId), contactId: Value(contactId), type: Value(type), actionAt: Value(actionAt), ); } factory MessageActionsData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return MessageActionsData( messageId: serializer.fromJson(json['messageId']), contactId: serializer.fromJson(json['contactId']), type: serializer.fromJson(json['type']), actionAt: serializer.fromJson(json['actionAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'messageId': serializer.toJson(messageId), 'contactId': serializer.toJson(contactId), 'type': serializer.toJson(type), 'actionAt': serializer.toJson(actionAt), }; } MessageActionsData copyWith( {String? messageId, int? contactId, String? type, DateTime? actionAt}) => MessageActionsData( messageId: messageId ?? this.messageId, contactId: contactId ?? this.contactId, type: type ?? this.type, actionAt: actionAt ?? this.actionAt, ); MessageActionsData copyWithCompanion(MessageActionsCompanion data) { return MessageActionsData( messageId: data.messageId.present ? data.messageId.value : this.messageId, contactId: data.contactId.present ? data.contactId.value : this.contactId, type: data.type.present ? data.type.value : this.type, actionAt: data.actionAt.present ? data.actionAt.value : this.actionAt, ); } @override String toString() { return (StringBuffer('MessageActionsData(') ..write('messageId: $messageId, ') ..write('contactId: $contactId, ') ..write('type: $type, ') ..write('actionAt: $actionAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash(messageId, contactId, type, actionAt); @override bool operator ==(Object other) => identical(this, other) || (other is MessageActionsData && other.messageId == this.messageId && other.contactId == this.contactId && other.type == this.type && other.actionAt == this.actionAt); } class MessageActionsCompanion extends UpdateCompanion { final Value messageId; final Value contactId; final Value type; final Value actionAt; final Value rowid; const MessageActionsCompanion({ this.messageId = const Value.absent(), this.contactId = const Value.absent(), this.type = const Value.absent(), this.actionAt = const Value.absent(), this.rowid = const Value.absent(), }); MessageActionsCompanion.insert({ required String messageId, required int contactId, required String type, this.actionAt = const Value.absent(), this.rowid = const Value.absent(), }) : messageId = Value(messageId), contactId = Value(contactId), type = Value(type); static Insertable custom({ Expression? messageId, Expression? contactId, Expression? type, Expression? actionAt, Expression? rowid, }) { return RawValuesInsertable({ if (messageId != null) 'message_id': messageId, if (contactId != null) 'contact_id': contactId, if (type != null) 'type': type, if (actionAt != null) 'action_at': actionAt, if (rowid != null) 'rowid': rowid, }); } MessageActionsCompanion copyWith( {Value? messageId, Value? contactId, Value? type, Value? actionAt, Value? rowid}) { return MessageActionsCompanion( messageId: messageId ?? this.messageId, contactId: contactId ?? this.contactId, type: type ?? this.type, actionAt: actionAt ?? this.actionAt, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (messageId.present) { map['message_id'] = Variable(messageId.value); } if (contactId.present) { map['contact_id'] = Variable(contactId.value); } if (type.present) { map['type'] = Variable(type.value); } if (actionAt.present) { map['action_at'] = Variable(actionAt.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('MessageActionsCompanion(') ..write('messageId: $messageId, ') ..write('contactId: $contactId, ') ..write('type: $type, ') ..write('actionAt: $actionAt, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class GroupHistories extends Table with TableInfo { @override final GeneratedDatabase attachedDatabase; final String? _alias; GroupHistories(this.attachedDatabase, [this._alias]); late final GeneratedColumn groupHistoryId = GeneratedColumn( 'group_history_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn groupId = GeneratedColumn( 'group_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES "groups" (group_id) ON DELETE CASCADE')); late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways('REFERENCES contacts (user_id)')); late final GeneratedColumn affectedContactId = GeneratedColumn( 'affected_contact_id', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false); late final GeneratedColumn oldGroupName = GeneratedColumn( 'old_group_name', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); late final GeneratedColumn newGroupName = GeneratedColumn( 'new_group_name', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false); late final GeneratedColumn newDeleteMessagesAfterMilliseconds = GeneratedColumn( 'new_delete_messages_after_milliseconds', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false); late final GeneratedColumn type = GeneratedColumn( 'type', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true); late final GeneratedColumn actionAt = GeneratedColumn( 'action_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: const CustomExpression( 'CAST(strftime(\'%s\', CURRENT_TIMESTAMP) AS INTEGER)')); @override List get $columns => [ groupHistoryId, groupId, contactId, affectedContactId, oldGroupName, newGroupName, newDeleteMessagesAfterMilliseconds, type, actionAt ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'group_histories'; @override Set get $primaryKey => {groupHistoryId}; @override GroupHistoriesData map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return GroupHistoriesData( groupHistoryId: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}group_history_id'])!, groupId: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}group_id'])!, contactId: attachedDatabase.typeMapping .read(DriftSqlType.int, data['${effectivePrefix}contact_id']), affectedContactId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}affected_contact_id']), oldGroupName: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}old_group_name']), newGroupName: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}new_group_name']), newDeleteMessagesAfterMilliseconds: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}new_delete_messages_after_milliseconds']), type: attachedDatabase.typeMapping .read(DriftSqlType.string, data['${effectivePrefix}type'])!, actionAt: attachedDatabase.typeMapping .read(DriftSqlType.dateTime, data['${effectivePrefix}action_at'])!, ); } @override GroupHistories createAlias(String alias) { return GroupHistories(attachedDatabase, alias); } } class GroupHistoriesData extends DataClass implements Insertable { final String groupHistoryId; final String groupId; final int? contactId; final int? affectedContactId; final String? oldGroupName; final String? newGroupName; final int? newDeleteMessagesAfterMilliseconds; final String type; final DateTime actionAt; const GroupHistoriesData( {required this.groupHistoryId, required this.groupId, this.contactId, this.affectedContactId, this.oldGroupName, this.newGroupName, this.newDeleteMessagesAfterMilliseconds, required this.type, required this.actionAt}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['group_history_id'] = Variable(groupHistoryId); map['group_id'] = Variable(groupId); if (!nullToAbsent || contactId != null) { map['contact_id'] = Variable(contactId); } if (!nullToAbsent || affectedContactId != null) { map['affected_contact_id'] = Variable(affectedContactId); } if (!nullToAbsent || oldGroupName != null) { map['old_group_name'] = Variable(oldGroupName); } if (!nullToAbsent || newGroupName != null) { map['new_group_name'] = Variable(newGroupName); } if (!nullToAbsent || newDeleteMessagesAfterMilliseconds != null) { map['new_delete_messages_after_milliseconds'] = Variable(newDeleteMessagesAfterMilliseconds); } map['type'] = Variable(type); map['action_at'] = Variable(actionAt); return map; } GroupHistoriesCompanion toCompanion(bool nullToAbsent) { return GroupHistoriesCompanion( groupHistoryId: Value(groupHistoryId), groupId: Value(groupId), contactId: contactId == null && nullToAbsent ? const Value.absent() : Value(contactId), affectedContactId: affectedContactId == null && nullToAbsent ? const Value.absent() : Value(affectedContactId), oldGroupName: oldGroupName == null && nullToAbsent ? const Value.absent() : Value(oldGroupName), newGroupName: newGroupName == null && nullToAbsent ? const Value.absent() : Value(newGroupName), newDeleteMessagesAfterMilliseconds: newDeleteMessagesAfterMilliseconds == null && nullToAbsent ? const Value.absent() : Value(newDeleteMessagesAfterMilliseconds), type: Value(type), actionAt: Value(actionAt), ); } factory GroupHistoriesData.fromJson(Map json, {ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return GroupHistoriesData( groupHistoryId: serializer.fromJson(json['groupHistoryId']), groupId: serializer.fromJson(json['groupId']), contactId: serializer.fromJson(json['contactId']), affectedContactId: serializer.fromJson(json['affectedContactId']), oldGroupName: serializer.fromJson(json['oldGroupName']), newGroupName: serializer.fromJson(json['newGroupName']), newDeleteMessagesAfterMilliseconds: serializer.fromJson(json['newDeleteMessagesAfterMilliseconds']), type: serializer.fromJson(json['type']), actionAt: serializer.fromJson(json['actionAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'groupHistoryId': serializer.toJson(groupHistoryId), 'groupId': serializer.toJson(groupId), 'contactId': serializer.toJson(contactId), 'affectedContactId': serializer.toJson(affectedContactId), 'oldGroupName': serializer.toJson(oldGroupName), 'newGroupName': serializer.toJson(newGroupName), 'newDeleteMessagesAfterMilliseconds': serializer.toJson(newDeleteMessagesAfterMilliseconds), 'type': serializer.toJson(type), 'actionAt': serializer.toJson(actionAt), }; } GroupHistoriesData copyWith( {String? groupHistoryId, String? groupId, Value contactId = const Value.absent(), Value affectedContactId = const Value.absent(), Value oldGroupName = const Value.absent(), Value newGroupName = const Value.absent(), Value newDeleteMessagesAfterMilliseconds = const Value.absent(), String? type, DateTime? actionAt}) => GroupHistoriesData( groupHistoryId: groupHistoryId ?? this.groupHistoryId, groupId: groupId ?? this.groupId, contactId: contactId.present ? contactId.value : this.contactId, affectedContactId: affectedContactId.present ? affectedContactId.value : this.affectedContactId, oldGroupName: oldGroupName.present ? oldGroupName.value : this.oldGroupName, newGroupName: newGroupName.present ? newGroupName.value : this.newGroupName, newDeleteMessagesAfterMilliseconds: newDeleteMessagesAfterMilliseconds.present ? newDeleteMessagesAfterMilliseconds.value : this.newDeleteMessagesAfterMilliseconds, type: type ?? this.type, actionAt: actionAt ?? this.actionAt, ); GroupHistoriesData copyWithCompanion(GroupHistoriesCompanion data) { return GroupHistoriesData( groupHistoryId: data.groupHistoryId.present ? data.groupHistoryId.value : this.groupHistoryId, groupId: data.groupId.present ? data.groupId.value : this.groupId, contactId: data.contactId.present ? data.contactId.value : this.contactId, affectedContactId: data.affectedContactId.present ? data.affectedContactId.value : this.affectedContactId, oldGroupName: data.oldGroupName.present ? data.oldGroupName.value : this.oldGroupName, newGroupName: data.newGroupName.present ? data.newGroupName.value : this.newGroupName, newDeleteMessagesAfterMilliseconds: data.newDeleteMessagesAfterMilliseconds.present ? data.newDeleteMessagesAfterMilliseconds.value : this.newDeleteMessagesAfterMilliseconds, type: data.type.present ? data.type.value : this.type, actionAt: data.actionAt.present ? data.actionAt.value : this.actionAt, ); } @override String toString() { return (StringBuffer('GroupHistoriesData(') ..write('groupHistoryId: $groupHistoryId, ') ..write('groupId: $groupId, ') ..write('contactId: $contactId, ') ..write('affectedContactId: $affectedContactId, ') ..write('oldGroupName: $oldGroupName, ') ..write('newGroupName: $newGroupName, ') ..write( 'newDeleteMessagesAfterMilliseconds: $newDeleteMessagesAfterMilliseconds, ') ..write('type: $type, ') ..write('actionAt: $actionAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash( groupHistoryId, groupId, contactId, affectedContactId, oldGroupName, newGroupName, newDeleteMessagesAfterMilliseconds, type, actionAt); @override bool operator ==(Object other) => identical(this, other) || (other is GroupHistoriesData && other.groupHistoryId == this.groupHistoryId && other.groupId == this.groupId && other.contactId == this.contactId && other.affectedContactId == this.affectedContactId && other.oldGroupName == this.oldGroupName && other.newGroupName == this.newGroupName && other.newDeleteMessagesAfterMilliseconds == this.newDeleteMessagesAfterMilliseconds && other.type == this.type && other.actionAt == this.actionAt); } class GroupHistoriesCompanion extends UpdateCompanion { final Value groupHistoryId; final Value groupId; final Value contactId; final Value affectedContactId; final Value oldGroupName; final Value newGroupName; final Value newDeleteMessagesAfterMilliseconds; final Value type; final Value actionAt; final Value rowid; const GroupHistoriesCompanion({ this.groupHistoryId = const Value.absent(), this.groupId = const Value.absent(), this.contactId = const Value.absent(), this.affectedContactId = const Value.absent(), this.oldGroupName = const Value.absent(), this.newGroupName = const Value.absent(), this.newDeleteMessagesAfterMilliseconds = const Value.absent(), this.type = const Value.absent(), this.actionAt = const Value.absent(), this.rowid = const Value.absent(), }); GroupHistoriesCompanion.insert({ required String groupHistoryId, required String groupId, this.contactId = const Value.absent(), this.affectedContactId = const Value.absent(), this.oldGroupName = const Value.absent(), this.newGroupName = const Value.absent(), this.newDeleteMessagesAfterMilliseconds = const Value.absent(), required String type, this.actionAt = const Value.absent(), this.rowid = const Value.absent(), }) : groupHistoryId = Value(groupHistoryId), groupId = Value(groupId), type = Value(type); static Insertable custom({ Expression? groupHistoryId, Expression? groupId, Expression? contactId, Expression? affectedContactId, Expression? oldGroupName, Expression? newGroupName, Expression? newDeleteMessagesAfterMilliseconds, Expression? type, Expression? actionAt, Expression? rowid, }) { return RawValuesInsertable({ if (groupHistoryId != null) 'group_history_id': groupHistoryId, if (groupId != null) 'group_id': groupId, if (contactId != null) 'contact_id': contactId, if (affectedContactId != null) 'affected_contact_id': affectedContactId, if (oldGroupName != null) 'old_group_name': oldGroupName, if (newGroupName != null) 'new_group_name': newGroupName, if (newDeleteMessagesAfterMilliseconds != null) 'new_delete_messages_after_milliseconds': newDeleteMessagesAfterMilliseconds, if (type != null) 'type': type, if (actionAt != null) 'action_at': actionAt, if (rowid != null) 'rowid': rowid, }); } GroupHistoriesCompanion copyWith( {Value? groupHistoryId, Value? groupId, Value? contactId, Value? affectedContactId, Value? oldGroupName, Value? newGroupName, Value? newDeleteMessagesAfterMilliseconds, Value? type, Value? actionAt, Value? rowid}) { return GroupHistoriesCompanion( groupHistoryId: groupHistoryId ?? this.groupHistoryId, groupId: groupId ?? this.groupId, contactId: contactId ?? this.contactId, affectedContactId: affectedContactId ?? this.affectedContactId, oldGroupName: oldGroupName ?? this.oldGroupName, newGroupName: newGroupName ?? this.newGroupName, newDeleteMessagesAfterMilliseconds: newDeleteMessagesAfterMilliseconds ?? this.newDeleteMessagesAfterMilliseconds, type: type ?? this.type, actionAt: actionAt ?? this.actionAt, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (groupHistoryId.present) { map['group_history_id'] = Variable(groupHistoryId.value); } if (groupId.present) { map['group_id'] = Variable(groupId.value); } if (contactId.present) { map['contact_id'] = Variable(contactId.value); } if (affectedContactId.present) { map['affected_contact_id'] = Variable(affectedContactId.value); } if (oldGroupName.present) { map['old_group_name'] = Variable(oldGroupName.value); } if (newGroupName.present) { map['new_group_name'] = Variable(newGroupName.value); } if (newDeleteMessagesAfterMilliseconds.present) { map['new_delete_messages_after_milliseconds'] = Variable(newDeleteMessagesAfterMilliseconds.value); } if (type.present) { map['type'] = Variable(type.value); } if (actionAt.present) { map['action_at'] = Variable(actionAt.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('GroupHistoriesCompanion(') ..write('groupHistoryId: $groupHistoryId, ') ..write('groupId: $groupId, ') ..write('contactId: $contactId, ') ..write('affectedContactId: $affectedContactId, ') ..write('oldGroupName: $oldGroupName, ') ..write('newGroupName: $newGroupName, ') ..write( 'newDeleteMessagesAfterMilliseconds: $newDeleteMessagesAfterMilliseconds, ') ..write('type: $type, ') ..write('actionAt: $actionAt, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class DatabaseAtV5 extends GeneratedDatabase { DatabaseAtV5(QueryExecutor e) : super(e); late final Contacts contacts = Contacts(this); late final Groups groups = Groups(this); late final MediaFiles mediaFiles = MediaFiles(this); late final Messages messages = Messages(this); late final MessageHistories messageHistories = MessageHistories(this); late final Reactions reactions = Reactions(this); late final GroupMembers groupMembers = GroupMembers(this); late final Receipts receipts = Receipts(this); late final ReceivedReceipts receivedReceipts = ReceivedReceipts(this); late final SignalIdentityKeyStores signalIdentityKeyStores = SignalIdentityKeyStores(this); late final SignalPreKeyStores signalPreKeyStores = SignalPreKeyStores(this); late final SignalSenderKeyStores signalSenderKeyStores = SignalSenderKeyStores(this); late final SignalSessionStores signalSessionStores = SignalSessionStores(this); late final SignalContactPreKeys signalContactPreKeys = SignalContactPreKeys(this); late final SignalContactSignedPreKeys signalContactSignedPreKeys = SignalContactSignedPreKeys(this); late final MessageActions messageActions = MessageActions(this); late final GroupHistories groupHistories = GroupHistories(this); @override Iterable> get allTables => allSchemaEntities.whereType>(); @override List get allSchemaEntities => [ contacts, groups, mediaFiles, messages, messageHistories, reactions, groupMembers, receipts, receivedReceipts, signalIdentityKeyStores, signalPreKeyStores, signalSenderKeyStores, signalSessionStores, signalContactPreKeys, signalContactSignedPreKeys, messageActions, groupHistories ]; @override int get schemaVersion => 5; }