// GENERATED CODE - DO NOT MODIFY BY HAND part of 'twonly.db.dart'; // ignore_for_file: type=lint class $ContactsTable extends Contacts with TableInfo<$ContactsTable, Contact> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $ContactsTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _userIdMeta = const VerificationMeta('userId'); @override late final GeneratedColumn userId = GeneratedColumn( 'user_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, ); static const VerificationMeta _usernameMeta = const VerificationMeta( 'username', ); @override late final GeneratedColumn username = GeneratedColumn( 'username', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); static const VerificationMeta _displayNameMeta = const VerificationMeta( 'displayName', ); @override late final GeneratedColumn displayName = GeneratedColumn( 'display_name', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ); static const VerificationMeta _nickNameMeta = const VerificationMeta( 'nickName', ); @override late final GeneratedColumn nickName = GeneratedColumn( 'nick_name', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ); static const VerificationMeta _avatarSvgCompressedMeta = const VerificationMeta('avatarSvgCompressed'); @override late final GeneratedColumn avatarSvgCompressed = GeneratedColumn( 'avatar_svg_compressed', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _senderProfileCounterMeta = const VerificationMeta('senderProfileCounter'); @override late final GeneratedColumn senderProfileCounter = GeneratedColumn( 'sender_profile_counter', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const Constant(0), ); static const VerificationMeta _acceptedMeta = const VerificationMeta( 'accepted', ); @override late final GeneratedColumn accepted = GeneratedColumn( 'accepted', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("accepted" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _deletedByUserMeta = const VerificationMeta( 'deletedByUser', ); @override 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 Constant(false), ); static const VerificationMeta _requestedMeta = const VerificationMeta( 'requested', ); @override late final GeneratedColumn requested = GeneratedColumn( 'requested', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("requested" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _blockedMeta = const VerificationMeta( 'blocked', ); @override late final GeneratedColumn blocked = GeneratedColumn( 'blocked', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("blocked" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _verifiedMeta = const VerificationMeta( 'verified', ); @override late final GeneratedColumn verified = GeneratedColumn( 'verified', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("verified" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _accountDeletedMeta = const VerificationMeta( 'accountDeleted', ); @override 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 Constant(false), ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @override late final GeneratedColumnWithTypeConverter signalVersion = GeneratedColumn( 'signal_version', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: false, defaultValue: const Constant('v1'), ).withConverter($ContactsTable.$convertersignalVersion); static const VerificationMeta _userDiscoveryVersionMeta = const VerificationMeta('userDiscoveryVersion'); @override late final GeneratedColumn userDiscoveryVersion = GeneratedColumn( 'user_discovery_version', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _userDiscoveryExcludedMeta = const VerificationMeta('userDiscoveryExcluded'); @override late final GeneratedColumn userDiscoveryExcluded = GeneratedColumn( 'user_discovery_excluded', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("user_discovery_excluded" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _userDiscoveryManualApprovedMeta = const VerificationMeta('userDiscoveryManualApproved'); @override late final GeneratedColumn userDiscoveryManualApproved = GeneratedColumn( 'user_discovery_manual_approved', aliasedName, true, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("user_discovery_manual_approved" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _recoveryIsTrustedFriendMeta = const VerificationMeta('recoveryIsTrustedFriend'); @override late final GeneratedColumn recoveryIsTrustedFriend = GeneratedColumn( 'recovery_is_trusted_friend', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("recovery_is_trusted_friend" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _recoveryLastHeartbeatMeta = const VerificationMeta('recoveryLastHeartbeat'); @override late final GeneratedColumn recoveryLastHeartbeat = GeneratedColumn( 'recovery_last_heartbeat', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _recoverySecretShareMeta = const VerificationMeta('recoverySecretShare'); @override late final GeneratedColumn recoverySecretShare = GeneratedColumn( 'recovery_secret_share', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _recoveryContactsSecretShareMeta = const VerificationMeta('recoveryContactsSecretShare'); @override late final GeneratedColumn recoveryContactsSecretShare = GeneratedColumn( 'recovery_contacts_secret_share', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _recoveryContactsLastHeartbeatMeta = const VerificationMeta('recoveryContactsLastHeartbeat'); @override late final GeneratedColumn recoveryContactsLastHeartbeat = GeneratedColumn( 'recovery_contacts_last_heartbeat', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _recoveryContactsThresholdMeta = const VerificationMeta('recoveryContactsThreshold'); @override late final GeneratedColumn recoveryContactsThreshold = GeneratedColumn( 'recovery_contacts_threshold', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, ); static const VerificationMeta _askForFriendPromotionsMeta = const VerificationMeta('askForFriendPromotions'); @override late final GeneratedColumn askForFriendPromotions = GeneratedColumn( 'ask_for_friend_promotions', aliasedName, true, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("ask_for_friend_promotions" IN (0, 1))', ), ); static const VerificationMeta _mediaSendCounterMeta = const VerificationMeta( 'mediaSendCounter', ); @override late final GeneratedColumn mediaSendCounter = GeneratedColumn( 'media_send_counter', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const Constant(0), ); static const VerificationMeta _mediaReceivedCounterMeta = const VerificationMeta('mediaReceivedCounter'); @override late final GeneratedColumn mediaReceivedCounter = GeneratedColumn( 'media_received_counter', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const Constant(0), ); @override List get $columns => [ userId, username, displayName, nickName, avatarSvgCompressed, senderProfileCounter, accepted, deletedByUser, requested, blocked, verified, accountDeleted, createdAt, signalVersion, userDiscoveryVersion, userDiscoveryExcluded, userDiscoveryManualApproved, recoveryIsTrustedFriend, recoveryLastHeartbeat, recoverySecretShare, recoveryContactsSecretShare, recoveryContactsLastHeartbeat, recoveryContactsThreshold, askForFriendPromotions, mediaSendCounter, mediaReceivedCounter, ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'contacts'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('user_id')) { context.handle( _userIdMeta, userId.isAcceptableOrUnknown(data['user_id']!, _userIdMeta), ); } if (data.containsKey('username')) { context.handle( _usernameMeta, username.isAcceptableOrUnknown(data['username']!, _usernameMeta), ); } else if (isInserting) { context.missing(_usernameMeta); } if (data.containsKey('display_name')) { context.handle( _displayNameMeta, displayName.isAcceptableOrUnknown( data['display_name']!, _displayNameMeta, ), ); } if (data.containsKey('nick_name')) { context.handle( _nickNameMeta, nickName.isAcceptableOrUnknown(data['nick_name']!, _nickNameMeta), ); } if (data.containsKey('avatar_svg_compressed')) { context.handle( _avatarSvgCompressedMeta, avatarSvgCompressed.isAcceptableOrUnknown( data['avatar_svg_compressed']!, _avatarSvgCompressedMeta, ), ); } if (data.containsKey('sender_profile_counter')) { context.handle( _senderProfileCounterMeta, senderProfileCounter.isAcceptableOrUnknown( data['sender_profile_counter']!, _senderProfileCounterMeta, ), ); } if (data.containsKey('accepted')) { context.handle( _acceptedMeta, accepted.isAcceptableOrUnknown(data['accepted']!, _acceptedMeta), ); } if (data.containsKey('deleted_by_user')) { context.handle( _deletedByUserMeta, deletedByUser.isAcceptableOrUnknown( data['deleted_by_user']!, _deletedByUserMeta, ), ); } if (data.containsKey('requested')) { context.handle( _requestedMeta, requested.isAcceptableOrUnknown(data['requested']!, _requestedMeta), ); } if (data.containsKey('blocked')) { context.handle( _blockedMeta, blocked.isAcceptableOrUnknown(data['blocked']!, _blockedMeta), ); } if (data.containsKey('verified')) { context.handle( _verifiedMeta, verified.isAcceptableOrUnknown(data['verified']!, _verifiedMeta), ); } if (data.containsKey('account_deleted')) { context.handle( _accountDeletedMeta, accountDeleted.isAcceptableOrUnknown( data['account_deleted']!, _accountDeletedMeta, ), ); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } if (data.containsKey('user_discovery_version')) { context.handle( _userDiscoveryVersionMeta, userDiscoveryVersion.isAcceptableOrUnknown( data['user_discovery_version']!, _userDiscoveryVersionMeta, ), ); } if (data.containsKey('user_discovery_excluded')) { context.handle( _userDiscoveryExcludedMeta, userDiscoveryExcluded.isAcceptableOrUnknown( data['user_discovery_excluded']!, _userDiscoveryExcludedMeta, ), ); } if (data.containsKey('user_discovery_manual_approved')) { context.handle( _userDiscoveryManualApprovedMeta, userDiscoveryManualApproved.isAcceptableOrUnknown( data['user_discovery_manual_approved']!, _userDiscoveryManualApprovedMeta, ), ); } if (data.containsKey('recovery_is_trusted_friend')) { context.handle( _recoveryIsTrustedFriendMeta, recoveryIsTrustedFriend.isAcceptableOrUnknown( data['recovery_is_trusted_friend']!, _recoveryIsTrustedFriendMeta, ), ); } if (data.containsKey('recovery_last_heartbeat')) { context.handle( _recoveryLastHeartbeatMeta, recoveryLastHeartbeat.isAcceptableOrUnknown( data['recovery_last_heartbeat']!, _recoveryLastHeartbeatMeta, ), ); } if (data.containsKey('recovery_secret_share')) { context.handle( _recoverySecretShareMeta, recoverySecretShare.isAcceptableOrUnknown( data['recovery_secret_share']!, _recoverySecretShareMeta, ), ); } if (data.containsKey('recovery_contacts_secret_share')) { context.handle( _recoveryContactsSecretShareMeta, recoveryContactsSecretShare.isAcceptableOrUnknown( data['recovery_contacts_secret_share']!, _recoveryContactsSecretShareMeta, ), ); } if (data.containsKey('recovery_contacts_last_heartbeat')) { context.handle( _recoveryContactsLastHeartbeatMeta, recoveryContactsLastHeartbeat.isAcceptableOrUnknown( data['recovery_contacts_last_heartbeat']!, _recoveryContactsLastHeartbeatMeta, ), ); } if (data.containsKey('recovery_contacts_threshold')) { context.handle( _recoveryContactsThresholdMeta, recoveryContactsThreshold.isAcceptableOrUnknown( data['recovery_contacts_threshold']!, _recoveryContactsThresholdMeta, ), ); } if (data.containsKey('ask_for_friend_promotions')) { context.handle( _askForFriendPromotionsMeta, askForFriendPromotions.isAcceptableOrUnknown( data['ask_for_friend_promotions']!, _askForFriendPromotionsMeta, ), ); } if (data.containsKey('media_send_counter')) { context.handle( _mediaSendCounterMeta, mediaSendCounter.isAcceptableOrUnknown( data['media_send_counter']!, _mediaSendCounterMeta, ), ); } if (data.containsKey('media_received_counter')) { context.handle( _mediaReceivedCounterMeta, mediaReceivedCounter.isAcceptableOrUnknown( data['media_received_counter']!, _mediaReceivedCounterMeta, ), ); } return context; } @override Set get $primaryKey => {userId}; @override Contact map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return Contact( 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'], )!, signalVersion: $ContactsTable.$convertersignalVersion.fromSql( attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}signal_version'], )!, ), userDiscoveryVersion: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}user_discovery_version'], ), userDiscoveryExcluded: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}user_discovery_excluded'], )!, userDiscoveryManualApproved: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}user_discovery_manual_approved'], ), recoveryIsTrustedFriend: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}recovery_is_trusted_friend'], )!, recoveryLastHeartbeat: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}recovery_last_heartbeat'], ), recoverySecretShare: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}recovery_secret_share'], ), recoveryContactsSecretShare: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}recovery_contacts_secret_share'], ), recoveryContactsLastHeartbeat: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}recovery_contacts_last_heartbeat'], ), recoveryContactsThreshold: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}recovery_contacts_threshold'], ), askForFriendPromotions: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}ask_for_friend_promotions'], ), mediaSendCounter: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}media_send_counter'], )!, mediaReceivedCounter: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}media_received_counter'], )!, ); } @override $ContactsTable createAlias(String alias) { return $ContactsTable(attachedDatabase, alias); } static JsonTypeConverter2 $convertersignalVersion = const EnumNameConverter( SignalVersion.values, ); } class Contact extends DataClass implements Insertable { final int userId; final String username; final String? displayName; final String? nickName; final 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; final SignalVersion signalVersion; final Uint8List? userDiscoveryVersion; final bool userDiscoveryExcluded; final bool? userDiscoveryManualApproved; final bool recoveryIsTrustedFriend; final DateTime? recoveryLastHeartbeat; final Uint8List? recoverySecretShare; final Uint8List? recoveryContactsSecretShare; final DateTime? recoveryContactsLastHeartbeat; final int? recoveryContactsThreshold; final bool? askForFriendPromotions; final int mediaSendCounter; final int mediaReceivedCounter; const Contact({ 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, required this.signalVersion, this.userDiscoveryVersion, required this.userDiscoveryExcluded, this.userDiscoveryManualApproved, required this.recoveryIsTrustedFriend, this.recoveryLastHeartbeat, this.recoverySecretShare, this.recoveryContactsSecretShare, this.recoveryContactsLastHeartbeat, this.recoveryContactsThreshold, this.askForFriendPromotions, required this.mediaSendCounter, required this.mediaReceivedCounter, }); @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); { map['signal_version'] = Variable( $ContactsTable.$convertersignalVersion.toSql(signalVersion), ); } if (!nullToAbsent || userDiscoveryVersion != null) { map['user_discovery_version'] = Variable(userDiscoveryVersion); } map['user_discovery_excluded'] = Variable(userDiscoveryExcluded); if (!nullToAbsent || userDiscoveryManualApproved != null) { map['user_discovery_manual_approved'] = Variable( userDiscoveryManualApproved, ); } map['recovery_is_trusted_friend'] = Variable(recoveryIsTrustedFriend); if (!nullToAbsent || recoveryLastHeartbeat != null) { map['recovery_last_heartbeat'] = Variable( recoveryLastHeartbeat, ); } if (!nullToAbsent || recoverySecretShare != null) { map['recovery_secret_share'] = Variable(recoverySecretShare); } if (!nullToAbsent || recoveryContactsSecretShare != null) { map['recovery_contacts_secret_share'] = Variable( recoveryContactsSecretShare, ); } if (!nullToAbsent || recoveryContactsLastHeartbeat != null) { map['recovery_contacts_last_heartbeat'] = Variable( recoveryContactsLastHeartbeat, ); } if (!nullToAbsent || recoveryContactsThreshold != null) { map['recovery_contacts_threshold'] = Variable( recoveryContactsThreshold, ); } if (!nullToAbsent || askForFriendPromotions != null) { map['ask_for_friend_promotions'] = Variable(askForFriendPromotions); } map['media_send_counter'] = Variable(mediaSendCounter); map['media_received_counter'] = Variable(mediaReceivedCounter); 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), signalVersion: Value(signalVersion), userDiscoveryVersion: userDiscoveryVersion == null && nullToAbsent ? const Value.absent() : Value(userDiscoveryVersion), userDiscoveryExcluded: Value(userDiscoveryExcluded), userDiscoveryManualApproved: userDiscoveryManualApproved == null && nullToAbsent ? const Value.absent() : Value(userDiscoveryManualApproved), recoveryIsTrustedFriend: Value(recoveryIsTrustedFriend), recoveryLastHeartbeat: recoveryLastHeartbeat == null && nullToAbsent ? const Value.absent() : Value(recoveryLastHeartbeat), recoverySecretShare: recoverySecretShare == null && nullToAbsent ? const Value.absent() : Value(recoverySecretShare), recoveryContactsSecretShare: recoveryContactsSecretShare == null && nullToAbsent ? const Value.absent() : Value(recoveryContactsSecretShare), recoveryContactsLastHeartbeat: recoveryContactsLastHeartbeat == null && nullToAbsent ? const Value.absent() : Value(recoveryContactsLastHeartbeat), recoveryContactsThreshold: recoveryContactsThreshold == null && nullToAbsent ? const Value.absent() : Value(recoveryContactsThreshold), askForFriendPromotions: askForFriendPromotions == null && nullToAbsent ? const Value.absent() : Value(askForFriendPromotions), mediaSendCounter: Value(mediaSendCounter), mediaReceivedCounter: Value(mediaReceivedCounter), ); } factory Contact.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return Contact( 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']), signalVersion: $ContactsTable.$convertersignalVersion.fromJson( serializer.fromJson(json['signalVersion']), ), userDiscoveryVersion: serializer.fromJson( json['userDiscoveryVersion'], ), userDiscoveryExcluded: serializer.fromJson( json['userDiscoveryExcluded'], ), userDiscoveryManualApproved: serializer.fromJson( json['userDiscoveryManualApproved'], ), recoveryIsTrustedFriend: serializer.fromJson( json['recoveryIsTrustedFriend'], ), recoveryLastHeartbeat: serializer.fromJson( json['recoveryLastHeartbeat'], ), recoverySecretShare: serializer.fromJson( json['recoverySecretShare'], ), recoveryContactsSecretShare: serializer.fromJson( json['recoveryContactsSecretShare'], ), recoveryContactsLastHeartbeat: serializer.fromJson( json['recoveryContactsLastHeartbeat'], ), recoveryContactsThreshold: serializer.fromJson( json['recoveryContactsThreshold'], ), askForFriendPromotions: serializer.fromJson( json['askForFriendPromotions'], ), mediaSendCounter: serializer.fromJson(json['mediaSendCounter']), mediaReceivedCounter: serializer.fromJson( json['mediaReceivedCounter'], ), ); } @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), 'signalVersion': serializer.toJson( $ContactsTable.$convertersignalVersion.toJson(signalVersion), ), 'userDiscoveryVersion': serializer.toJson( userDiscoveryVersion, ), 'userDiscoveryExcluded': serializer.toJson(userDiscoveryExcluded), 'userDiscoveryManualApproved': serializer.toJson( userDiscoveryManualApproved, ), 'recoveryIsTrustedFriend': serializer.toJson( recoveryIsTrustedFriend, ), 'recoveryLastHeartbeat': serializer.toJson( recoveryLastHeartbeat, ), 'recoverySecretShare': serializer.toJson(recoverySecretShare), 'recoveryContactsSecretShare': serializer.toJson( recoveryContactsSecretShare, ), 'recoveryContactsLastHeartbeat': serializer.toJson( recoveryContactsLastHeartbeat, ), 'recoveryContactsThreshold': serializer.toJson( recoveryContactsThreshold, ), 'askForFriendPromotions': serializer.toJson( askForFriendPromotions, ), 'mediaSendCounter': serializer.toJson(mediaSendCounter), 'mediaReceivedCounter': serializer.toJson(mediaReceivedCounter), }; } Contact 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, SignalVersion? signalVersion, Value userDiscoveryVersion = const Value.absent(), bool? userDiscoveryExcluded, Value userDiscoveryManualApproved = const Value.absent(), bool? recoveryIsTrustedFriend, Value recoveryLastHeartbeat = const Value.absent(), Value recoverySecretShare = const Value.absent(), Value recoveryContactsSecretShare = const Value.absent(), Value recoveryContactsLastHeartbeat = const Value.absent(), Value recoveryContactsThreshold = const Value.absent(), Value askForFriendPromotions = const Value.absent(), int? mediaSendCounter, int? mediaReceivedCounter, }) => Contact( 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, signalVersion: signalVersion ?? this.signalVersion, userDiscoveryVersion: userDiscoveryVersion.present ? userDiscoveryVersion.value : this.userDiscoveryVersion, userDiscoveryExcluded: userDiscoveryExcluded ?? this.userDiscoveryExcluded, userDiscoveryManualApproved: userDiscoveryManualApproved.present ? userDiscoveryManualApproved.value : this.userDiscoveryManualApproved, recoveryIsTrustedFriend: recoveryIsTrustedFriend ?? this.recoveryIsTrustedFriend, recoveryLastHeartbeat: recoveryLastHeartbeat.present ? recoveryLastHeartbeat.value : this.recoveryLastHeartbeat, recoverySecretShare: recoverySecretShare.present ? recoverySecretShare.value : this.recoverySecretShare, recoveryContactsSecretShare: recoveryContactsSecretShare.present ? recoveryContactsSecretShare.value : this.recoveryContactsSecretShare, recoveryContactsLastHeartbeat: recoveryContactsLastHeartbeat.present ? recoveryContactsLastHeartbeat.value : this.recoveryContactsLastHeartbeat, recoveryContactsThreshold: recoveryContactsThreshold.present ? recoveryContactsThreshold.value : this.recoveryContactsThreshold, askForFriendPromotions: askForFriendPromotions.present ? askForFriendPromotions.value : this.askForFriendPromotions, mediaSendCounter: mediaSendCounter ?? this.mediaSendCounter, mediaReceivedCounter: mediaReceivedCounter ?? this.mediaReceivedCounter, ); Contact copyWithCompanion(ContactsCompanion data) { return Contact( 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, signalVersion: data.signalVersion.present ? data.signalVersion.value : this.signalVersion, userDiscoveryVersion: data.userDiscoveryVersion.present ? data.userDiscoveryVersion.value : this.userDiscoveryVersion, userDiscoveryExcluded: data.userDiscoveryExcluded.present ? data.userDiscoveryExcluded.value : this.userDiscoveryExcluded, userDiscoveryManualApproved: data.userDiscoveryManualApproved.present ? data.userDiscoveryManualApproved.value : this.userDiscoveryManualApproved, recoveryIsTrustedFriend: data.recoveryIsTrustedFriend.present ? data.recoveryIsTrustedFriend.value : this.recoveryIsTrustedFriend, recoveryLastHeartbeat: data.recoveryLastHeartbeat.present ? data.recoveryLastHeartbeat.value : this.recoveryLastHeartbeat, recoverySecretShare: data.recoverySecretShare.present ? data.recoverySecretShare.value : this.recoverySecretShare, recoveryContactsSecretShare: data.recoveryContactsSecretShare.present ? data.recoveryContactsSecretShare.value : this.recoveryContactsSecretShare, recoveryContactsLastHeartbeat: data.recoveryContactsLastHeartbeat.present ? data.recoveryContactsLastHeartbeat.value : this.recoveryContactsLastHeartbeat, recoveryContactsThreshold: data.recoveryContactsThreshold.present ? data.recoveryContactsThreshold.value : this.recoveryContactsThreshold, askForFriendPromotions: data.askForFriendPromotions.present ? data.askForFriendPromotions.value : this.askForFriendPromotions, mediaSendCounter: data.mediaSendCounter.present ? data.mediaSendCounter.value : this.mediaSendCounter, mediaReceivedCounter: data.mediaReceivedCounter.present ? data.mediaReceivedCounter.value : this.mediaReceivedCounter, ); } @override String toString() { return (StringBuffer('Contact(') ..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('signalVersion: $signalVersion, ') ..write('userDiscoveryVersion: $userDiscoveryVersion, ') ..write('userDiscoveryExcluded: $userDiscoveryExcluded, ') ..write('userDiscoveryManualApproved: $userDiscoveryManualApproved, ') ..write('recoveryIsTrustedFriend: $recoveryIsTrustedFriend, ') ..write('recoveryLastHeartbeat: $recoveryLastHeartbeat, ') ..write('recoverySecretShare: $recoverySecretShare, ') ..write('recoveryContactsSecretShare: $recoveryContactsSecretShare, ') ..write( 'recoveryContactsLastHeartbeat: $recoveryContactsLastHeartbeat, ', ) ..write('recoveryContactsThreshold: $recoveryContactsThreshold, ') ..write('askForFriendPromotions: $askForFriendPromotions, ') ..write('mediaSendCounter: $mediaSendCounter, ') ..write('mediaReceivedCounter: $mediaReceivedCounter') ..write(')')) .toString(); } @override int get hashCode => Object.hashAll([ userId, username, displayName, nickName, $driftBlobEquality.hash(avatarSvgCompressed), senderProfileCounter, accepted, deletedByUser, requested, blocked, verified, accountDeleted, createdAt, signalVersion, $driftBlobEquality.hash(userDiscoveryVersion), userDiscoveryExcluded, userDiscoveryManualApproved, recoveryIsTrustedFriend, recoveryLastHeartbeat, $driftBlobEquality.hash(recoverySecretShare), $driftBlobEquality.hash(recoveryContactsSecretShare), recoveryContactsLastHeartbeat, recoveryContactsThreshold, askForFriendPromotions, mediaSendCounter, mediaReceivedCounter, ]); @override bool operator ==(Object other) => identical(this, other) || (other is Contact && 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 && other.signalVersion == this.signalVersion && $driftBlobEquality.equals( other.userDiscoveryVersion, this.userDiscoveryVersion, ) && other.userDiscoveryExcluded == this.userDiscoveryExcluded && other.userDiscoveryManualApproved == this.userDiscoveryManualApproved && other.recoveryIsTrustedFriend == this.recoveryIsTrustedFriend && other.recoveryLastHeartbeat == this.recoveryLastHeartbeat && $driftBlobEquality.equals( other.recoverySecretShare, this.recoverySecretShare, ) && $driftBlobEquality.equals( other.recoveryContactsSecretShare, this.recoveryContactsSecretShare, ) && other.recoveryContactsLastHeartbeat == this.recoveryContactsLastHeartbeat && other.recoveryContactsThreshold == this.recoveryContactsThreshold && other.askForFriendPromotions == this.askForFriendPromotions && other.mediaSendCounter == this.mediaSendCounter && other.mediaReceivedCounter == this.mediaReceivedCounter); } 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; final Value signalVersion; final Value userDiscoveryVersion; final Value userDiscoveryExcluded; final Value userDiscoveryManualApproved; final Value recoveryIsTrustedFriend; final Value recoveryLastHeartbeat; final Value recoverySecretShare; final Value recoveryContactsSecretShare; final Value recoveryContactsLastHeartbeat; final Value recoveryContactsThreshold; final Value askForFriendPromotions; final Value mediaSendCounter; final Value mediaReceivedCounter; 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(), this.signalVersion = const Value.absent(), this.userDiscoveryVersion = const Value.absent(), this.userDiscoveryExcluded = const Value.absent(), this.userDiscoveryManualApproved = const Value.absent(), this.recoveryIsTrustedFriend = const Value.absent(), this.recoveryLastHeartbeat = const Value.absent(), this.recoverySecretShare = const Value.absent(), this.recoveryContactsSecretShare = const Value.absent(), this.recoveryContactsLastHeartbeat = const Value.absent(), this.recoveryContactsThreshold = const Value.absent(), this.askForFriendPromotions = const Value.absent(), this.mediaSendCounter = const Value.absent(), this.mediaReceivedCounter = 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(), this.signalVersion = const Value.absent(), this.userDiscoveryVersion = const Value.absent(), this.userDiscoveryExcluded = const Value.absent(), this.userDiscoveryManualApproved = const Value.absent(), this.recoveryIsTrustedFriend = const Value.absent(), this.recoveryLastHeartbeat = const Value.absent(), this.recoverySecretShare = const Value.absent(), this.recoveryContactsSecretShare = const Value.absent(), this.recoveryContactsLastHeartbeat = const Value.absent(), this.recoveryContactsThreshold = const Value.absent(), this.askForFriendPromotions = const Value.absent(), this.mediaSendCounter = const Value.absent(), this.mediaReceivedCounter = 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, Expression? signalVersion, Expression? userDiscoveryVersion, Expression? userDiscoveryExcluded, Expression? userDiscoveryManualApproved, Expression? recoveryIsTrustedFriend, Expression? recoveryLastHeartbeat, Expression? recoverySecretShare, Expression? recoveryContactsSecretShare, Expression? recoveryContactsLastHeartbeat, Expression? recoveryContactsThreshold, Expression? askForFriendPromotions, Expression? mediaSendCounter, Expression? mediaReceivedCounter, }) { 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, if (signalVersion != null) 'signal_version': signalVersion, if (userDiscoveryVersion != null) 'user_discovery_version': userDiscoveryVersion, if (userDiscoveryExcluded != null) 'user_discovery_excluded': userDiscoveryExcluded, if (userDiscoveryManualApproved != null) 'user_discovery_manual_approved': userDiscoveryManualApproved, if (recoveryIsTrustedFriend != null) 'recovery_is_trusted_friend': recoveryIsTrustedFriend, if (recoveryLastHeartbeat != null) 'recovery_last_heartbeat': recoveryLastHeartbeat, if (recoverySecretShare != null) 'recovery_secret_share': recoverySecretShare, if (recoveryContactsSecretShare != null) 'recovery_contacts_secret_share': recoveryContactsSecretShare, if (recoveryContactsLastHeartbeat != null) 'recovery_contacts_last_heartbeat': recoveryContactsLastHeartbeat, if (recoveryContactsThreshold != null) 'recovery_contacts_threshold': recoveryContactsThreshold, if (askForFriendPromotions != null) 'ask_for_friend_promotions': askForFriendPromotions, if (mediaSendCounter != null) 'media_send_counter': mediaSendCounter, if (mediaReceivedCounter != null) 'media_received_counter': mediaReceivedCounter, }); } 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, Value? signalVersion, Value? userDiscoveryVersion, Value? userDiscoveryExcluded, Value? userDiscoveryManualApproved, Value? recoveryIsTrustedFriend, Value? recoveryLastHeartbeat, Value? recoverySecretShare, Value? recoveryContactsSecretShare, Value? recoveryContactsLastHeartbeat, Value? recoveryContactsThreshold, Value? askForFriendPromotions, Value? mediaSendCounter, Value? mediaReceivedCounter, }) { 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, signalVersion: signalVersion ?? this.signalVersion, userDiscoveryVersion: userDiscoveryVersion ?? this.userDiscoveryVersion, userDiscoveryExcluded: userDiscoveryExcluded ?? this.userDiscoveryExcluded, userDiscoveryManualApproved: userDiscoveryManualApproved ?? this.userDiscoveryManualApproved, recoveryIsTrustedFriend: recoveryIsTrustedFriend ?? this.recoveryIsTrustedFriend, recoveryLastHeartbeat: recoveryLastHeartbeat ?? this.recoveryLastHeartbeat, recoverySecretShare: recoverySecretShare ?? this.recoverySecretShare, recoveryContactsSecretShare: recoveryContactsSecretShare ?? this.recoveryContactsSecretShare, recoveryContactsLastHeartbeat: recoveryContactsLastHeartbeat ?? this.recoveryContactsLastHeartbeat, recoveryContactsThreshold: recoveryContactsThreshold ?? this.recoveryContactsThreshold, askForFriendPromotions: askForFriendPromotions ?? this.askForFriendPromotions, mediaSendCounter: mediaSendCounter ?? this.mediaSendCounter, mediaReceivedCounter: mediaReceivedCounter ?? this.mediaReceivedCounter, ); } @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); } if (signalVersion.present) { map['signal_version'] = Variable( $ContactsTable.$convertersignalVersion.toSql(signalVersion.value), ); } if (userDiscoveryVersion.present) { map['user_discovery_version'] = Variable( userDiscoveryVersion.value, ); } if (userDiscoveryExcluded.present) { map['user_discovery_excluded'] = Variable( userDiscoveryExcluded.value, ); } if (userDiscoveryManualApproved.present) { map['user_discovery_manual_approved'] = Variable( userDiscoveryManualApproved.value, ); } if (recoveryIsTrustedFriend.present) { map['recovery_is_trusted_friend'] = Variable( recoveryIsTrustedFriend.value, ); } if (recoveryLastHeartbeat.present) { map['recovery_last_heartbeat'] = Variable( recoveryLastHeartbeat.value, ); } if (recoverySecretShare.present) { map['recovery_secret_share'] = Variable( recoverySecretShare.value, ); } if (recoveryContactsSecretShare.present) { map['recovery_contacts_secret_share'] = Variable( recoveryContactsSecretShare.value, ); } if (recoveryContactsLastHeartbeat.present) { map['recovery_contacts_last_heartbeat'] = Variable( recoveryContactsLastHeartbeat.value, ); } if (recoveryContactsThreshold.present) { map['recovery_contacts_threshold'] = Variable( recoveryContactsThreshold.value, ); } if (askForFriendPromotions.present) { map['ask_for_friend_promotions'] = Variable( askForFriendPromotions.value, ); } if (mediaSendCounter.present) { map['media_send_counter'] = Variable(mediaSendCounter.value); } if (mediaReceivedCounter.present) { map['media_received_counter'] = Variable(mediaReceivedCounter.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('signalVersion: $signalVersion, ') ..write('userDiscoveryVersion: $userDiscoveryVersion, ') ..write('userDiscoveryExcluded: $userDiscoveryExcluded, ') ..write('userDiscoveryManualApproved: $userDiscoveryManualApproved, ') ..write('recoveryIsTrustedFriend: $recoveryIsTrustedFriend, ') ..write('recoveryLastHeartbeat: $recoveryLastHeartbeat, ') ..write('recoverySecretShare: $recoverySecretShare, ') ..write('recoveryContactsSecretShare: $recoveryContactsSecretShare, ') ..write( 'recoveryContactsLastHeartbeat: $recoveryContactsLastHeartbeat, ', ) ..write('recoveryContactsThreshold: $recoveryContactsThreshold, ') ..write('askForFriendPromotions: $askForFriendPromotions, ') ..write('mediaSendCounter: $mediaSendCounter, ') ..write('mediaReceivedCounter: $mediaReceivedCounter') ..write(')')) .toString(); } } class $GroupsTable extends Groups with TableInfo<$GroupsTable, Group> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $GroupsTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _groupIdMeta = const VerificationMeta( 'groupId', ); @override late final GeneratedColumn groupId = GeneratedColumn( 'group_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); static const VerificationMeta _isGroupAdminMeta = const VerificationMeta( 'isGroupAdmin', ); @override 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 Constant(false), ); static const VerificationMeta _isDirectChatMeta = const VerificationMeta( 'isDirectChat', ); @override 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 Constant(false), ); static const VerificationMeta _pinnedMeta = const VerificationMeta('pinned'); @override late final GeneratedColumn pinned = GeneratedColumn( 'pinned', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("pinned" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _archivedMeta = const VerificationMeta( 'archived', ); @override late final GeneratedColumn archived = GeneratedColumn( 'archived', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("archived" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _joinedGroupMeta = const VerificationMeta( 'joinedGroup', ); @override 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 Constant(false), ); static const VerificationMeta _leftGroupMeta = const VerificationMeta( 'leftGroup', ); @override 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 Constant(false), ); static const VerificationMeta _deletedContentMeta = const VerificationMeta( 'deletedContent', ); @override 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 Constant(false), ); static const VerificationMeta _stateVersionIdMeta = const VerificationMeta( 'stateVersionId', ); @override late final GeneratedColumn stateVersionId = GeneratedColumn( 'state_version_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const Constant(0), ); static const VerificationMeta _stateEncryptionKeyMeta = const VerificationMeta('stateEncryptionKey'); @override late final GeneratedColumn stateEncryptionKey = GeneratedColumn( 'state_encryption_key', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _myGroupPrivateKeyMeta = const VerificationMeta( 'myGroupPrivateKey', ); @override late final GeneratedColumn myGroupPrivateKey = GeneratedColumn( 'my_group_private_key', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _groupNameMeta = const VerificationMeta( 'groupName', ); @override late final GeneratedColumn groupName = GeneratedColumn( 'group_name', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); static const VerificationMeta _draftMessageMeta = const VerificationMeta( 'draftMessage', ); @override late final GeneratedColumn draftMessage = GeneratedColumn( 'draft_message', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ); static const VerificationMeta _totalMediaCounterMeta = const VerificationMeta( 'totalMediaCounter', ); @override late final GeneratedColumn totalMediaCounter = GeneratedColumn( 'total_media_counter', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const Constant(0), ); static const VerificationMeta _alsoBestFriendMeta = const VerificationMeta( 'alsoBestFriend', ); @override 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 Constant(false), ); static const VerificationMeta _deleteMessagesAfterMillisecondsMeta = const VerificationMeta('deleteMessagesAfterMilliseconds'); @override late final GeneratedColumn deleteMessagesAfterMilliseconds = GeneratedColumn( 'delete_messages_after_milliseconds', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const Constant(1000 * 60 * 60 * 24), ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); static const VerificationMeta _lastMessageSendMeta = const VerificationMeta( 'lastMessageSend', ); @override late final GeneratedColumn lastMessageSend = GeneratedColumn( 'last_message_send', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _lastMessageReceivedMeta = const VerificationMeta('lastMessageReceived'); @override late final GeneratedColumn lastMessageReceived = GeneratedColumn( 'last_message_received', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _lastFlameCounterChangeMeta = const VerificationMeta('lastFlameCounterChange'); @override late final GeneratedColumn lastFlameCounterChange = GeneratedColumn( 'last_flame_counter_change', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _lastFlameSyncMeta = const VerificationMeta( 'lastFlameSync', ); @override late final GeneratedColumn lastFlameSync = GeneratedColumn( 'last_flame_sync', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _flameCounterMeta = const VerificationMeta( 'flameCounter', ); @override late final GeneratedColumn flameCounter = GeneratedColumn( 'flame_counter', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const Constant(0), ); static const VerificationMeta _maxFlameCounterMeta = const VerificationMeta( 'maxFlameCounter', ); @override late final GeneratedColumn maxFlameCounter = GeneratedColumn( 'max_flame_counter', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const Constant(0), ); static const VerificationMeta _maxFlameCounterFromMeta = const VerificationMeta('maxFlameCounterFrom'); @override late final GeneratedColumn maxFlameCounterFrom = GeneratedColumn( 'max_flame_counter_from', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _lastMessageExchangeMeta = const VerificationMeta('lastMessageExchange'); @override late final GeneratedColumn lastMessageExchange = GeneratedColumn( 'last_message_exchange', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @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 VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('group_id')) { context.handle( _groupIdMeta, groupId.isAcceptableOrUnknown(data['group_id']!, _groupIdMeta), ); } else if (isInserting) { context.missing(_groupIdMeta); } if (data.containsKey('is_group_admin')) { context.handle( _isGroupAdminMeta, isGroupAdmin.isAcceptableOrUnknown( data['is_group_admin']!, _isGroupAdminMeta, ), ); } if (data.containsKey('is_direct_chat')) { context.handle( _isDirectChatMeta, isDirectChat.isAcceptableOrUnknown( data['is_direct_chat']!, _isDirectChatMeta, ), ); } if (data.containsKey('pinned')) { context.handle( _pinnedMeta, pinned.isAcceptableOrUnknown(data['pinned']!, _pinnedMeta), ); } if (data.containsKey('archived')) { context.handle( _archivedMeta, archived.isAcceptableOrUnknown(data['archived']!, _archivedMeta), ); } if (data.containsKey('joined_group')) { context.handle( _joinedGroupMeta, joinedGroup.isAcceptableOrUnknown( data['joined_group']!, _joinedGroupMeta, ), ); } if (data.containsKey('left_group')) { context.handle( _leftGroupMeta, leftGroup.isAcceptableOrUnknown(data['left_group']!, _leftGroupMeta), ); } if (data.containsKey('deleted_content')) { context.handle( _deletedContentMeta, deletedContent.isAcceptableOrUnknown( data['deleted_content']!, _deletedContentMeta, ), ); } if (data.containsKey('state_version_id')) { context.handle( _stateVersionIdMeta, stateVersionId.isAcceptableOrUnknown( data['state_version_id']!, _stateVersionIdMeta, ), ); } if (data.containsKey('state_encryption_key')) { context.handle( _stateEncryptionKeyMeta, stateEncryptionKey.isAcceptableOrUnknown( data['state_encryption_key']!, _stateEncryptionKeyMeta, ), ); } if (data.containsKey('my_group_private_key')) { context.handle( _myGroupPrivateKeyMeta, myGroupPrivateKey.isAcceptableOrUnknown( data['my_group_private_key']!, _myGroupPrivateKeyMeta, ), ); } if (data.containsKey('group_name')) { context.handle( _groupNameMeta, groupName.isAcceptableOrUnknown(data['group_name']!, _groupNameMeta), ); } else if (isInserting) { context.missing(_groupNameMeta); } if (data.containsKey('draft_message')) { context.handle( _draftMessageMeta, draftMessage.isAcceptableOrUnknown( data['draft_message']!, _draftMessageMeta, ), ); } if (data.containsKey('total_media_counter')) { context.handle( _totalMediaCounterMeta, totalMediaCounter.isAcceptableOrUnknown( data['total_media_counter']!, _totalMediaCounterMeta, ), ); } if (data.containsKey('also_best_friend')) { context.handle( _alsoBestFriendMeta, alsoBestFriend.isAcceptableOrUnknown( data['also_best_friend']!, _alsoBestFriendMeta, ), ); } if (data.containsKey('delete_messages_after_milliseconds')) { context.handle( _deleteMessagesAfterMillisecondsMeta, deleteMessagesAfterMilliseconds.isAcceptableOrUnknown( data['delete_messages_after_milliseconds']!, _deleteMessagesAfterMillisecondsMeta, ), ); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } if (data.containsKey('last_message_send')) { context.handle( _lastMessageSendMeta, lastMessageSend.isAcceptableOrUnknown( data['last_message_send']!, _lastMessageSendMeta, ), ); } if (data.containsKey('last_message_received')) { context.handle( _lastMessageReceivedMeta, lastMessageReceived.isAcceptableOrUnknown( data['last_message_received']!, _lastMessageReceivedMeta, ), ); } if (data.containsKey('last_flame_counter_change')) { context.handle( _lastFlameCounterChangeMeta, lastFlameCounterChange.isAcceptableOrUnknown( data['last_flame_counter_change']!, _lastFlameCounterChangeMeta, ), ); } if (data.containsKey('last_flame_sync')) { context.handle( _lastFlameSyncMeta, lastFlameSync.isAcceptableOrUnknown( data['last_flame_sync']!, _lastFlameSyncMeta, ), ); } if (data.containsKey('flame_counter')) { context.handle( _flameCounterMeta, flameCounter.isAcceptableOrUnknown( data['flame_counter']!, _flameCounterMeta, ), ); } if (data.containsKey('max_flame_counter')) { context.handle( _maxFlameCounterMeta, maxFlameCounter.isAcceptableOrUnknown( data['max_flame_counter']!, _maxFlameCounterMeta, ), ); } if (data.containsKey('max_flame_counter_from')) { context.handle( _maxFlameCounterFromMeta, maxFlameCounterFrom.isAcceptableOrUnknown( data['max_flame_counter_from']!, _maxFlameCounterFromMeta, ), ); } if (data.containsKey('last_message_exchange')) { context.handle( _lastMessageExchangeMeta, lastMessageExchange.isAcceptableOrUnknown( data['last_message_exchange']!, _lastMessageExchangeMeta, ), ); } return context; } @override Set get $primaryKey => {groupId}; @override Group map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return Group( 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 $GroupsTable createAlias(String alias) { return $GroupsTable(attachedDatabase, alias); } } class Group 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 Uint8List? stateEncryptionKey; final 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 Group({ 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 Group.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return Group( 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), }; } Group 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, }) => Group( 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, ); Group copyWithCompanion(GroupsCompanion data) { return Group( 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('Group(') ..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 Group && 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 $MediaFilesTable extends MediaFiles with TableInfo<$MediaFilesTable, MediaFile> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $MediaFilesTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _mediaIdMeta = const VerificationMeta( 'mediaId', ); @override late final GeneratedColumn mediaId = GeneratedColumn( 'media_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); @override late final GeneratedColumnWithTypeConverter type = GeneratedColumn( 'type', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ).withConverter($MediaFilesTable.$convertertype); @override late final GeneratedColumnWithTypeConverter uploadState = GeneratedColumn( 'upload_state', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ).withConverter($MediaFilesTable.$converteruploadStaten); @override late final GeneratedColumnWithTypeConverter cloudState = GeneratedColumn( 'cloud_state', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: false, defaultValue: const Constant('none'), ).withConverter($MediaFilesTable.$convertercloudState); static const VerificationMeta _blurhashMeta = const VerificationMeta( 'blurhash', ); @override late final GeneratedColumn blurhash = GeneratedColumn( 'blurhash', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ); @override late final GeneratedColumnWithTypeConverter downloadState = GeneratedColumn( 'download_state', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ).withConverter($MediaFilesTable.$converterdownloadStaten); static const VerificationMeta _requiresAuthenticationMeta = const VerificationMeta('requiresAuthentication'); @override 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 Constant(false), ); static const VerificationMeta _storedMeta = const VerificationMeta('stored'); @override late final GeneratedColumn stored = GeneratedColumn( 'stored', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("stored" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _isDraftMediaMeta = const VerificationMeta( 'isDraftMedia', ); @override 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 Constant(false), ); static const VerificationMeta _isFavoriteMeta = const VerificationMeta( 'isFavorite', ); @override late final GeneratedColumn isFavorite = GeneratedColumn( 'is_favorite', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("is_favorite" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _hasCropAnalyzedMeta = const VerificationMeta( 'hasCropAnalyzed', ); @override late final GeneratedColumn hasCropAnalyzed = GeneratedColumn( 'has_crop_analyzed', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("has_crop_analyzed" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _preProgressingProcessMeta = const VerificationMeta('preProgressingProcess'); @override late final GeneratedColumn preProgressingProcess = GeneratedColumn( 'pre_progressing_process', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, ); @override late final GeneratedColumnWithTypeConverter?, String> reuploadRequestedBy = GeneratedColumn( 'reupload_requested_by', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ).withConverter?>($MediaFilesTable.$converterreuploadRequestedByn); static const VerificationMeta _displayLimitInMillisecondsMeta = const VerificationMeta('displayLimitInMilliseconds'); @override late final GeneratedColumn displayLimitInMilliseconds = GeneratedColumn( 'display_limit_in_milliseconds', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, ); static const VerificationMeta _removeAudioMeta = const VerificationMeta( 'removeAudio', ); @override late final GeneratedColumn removeAudio = GeneratedColumn( 'remove_audio', aliasedName, true, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("remove_audio" IN (0, 1))', ), ); static const VerificationMeta _downloadTokenMeta = const VerificationMeta( 'downloadToken', ); @override late final GeneratedColumn downloadToken = GeneratedColumn( 'download_token', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _encryptionKeyMeta = const VerificationMeta( 'encryptionKey', ); @override late final GeneratedColumn encryptionKey = GeneratedColumn( 'encryption_key', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _encryptionMacMeta = const VerificationMeta( 'encryptionMac', ); @override late final GeneratedColumn encryptionMac = GeneratedColumn( 'encryption_mac', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _encryptionNonceMeta = const VerificationMeta( 'encryptionNonce', ); @override late final GeneratedColumn encryptionNonce = GeneratedColumn( 'encryption_nonce', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _storedFileHashMeta = const VerificationMeta( 'storedFileHash', ); @override late final GeneratedColumn storedFileHash = GeneratedColumn( 'stored_file_hash', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _hasThumbnailMeta = const VerificationMeta( 'hasThumbnail', ); @override late final GeneratedColumn hasThumbnail = GeneratedColumn( 'has_thumbnail', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("has_thumbnail" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _sizeInBytesMeta = const VerificationMeta( 'sizeInBytes', ); @override late final GeneratedColumn sizeInBytes = GeneratedColumn( 'size_in_bytes', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); static const VerificationMeta _createdAtMonthMeta = const VerificationMeta( 'createdAtMonth', ); @override late final GeneratedColumn createdAtMonth = GeneratedColumn( 'created_at_month', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ); @override List get $columns => [ mediaId, type, uploadState, cloudState, blurhash, downloadState, requiresAuthentication, stored, isDraftMedia, isFavorite, hasCropAnalyzed, preProgressingProcess, reuploadRequestedBy, displayLimitInMilliseconds, removeAudio, downloadToken, encryptionKey, encryptionMac, encryptionNonce, storedFileHash, hasThumbnail, sizeInBytes, createdAt, createdAtMonth, ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'media_files'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('media_id')) { context.handle( _mediaIdMeta, mediaId.isAcceptableOrUnknown(data['media_id']!, _mediaIdMeta), ); } else if (isInserting) { context.missing(_mediaIdMeta); } if (data.containsKey('blurhash')) { context.handle( _blurhashMeta, blurhash.isAcceptableOrUnknown(data['blurhash']!, _blurhashMeta), ); } if (data.containsKey('requires_authentication')) { context.handle( _requiresAuthenticationMeta, requiresAuthentication.isAcceptableOrUnknown( data['requires_authentication']!, _requiresAuthenticationMeta, ), ); } if (data.containsKey('stored')) { context.handle( _storedMeta, stored.isAcceptableOrUnknown(data['stored']!, _storedMeta), ); } if (data.containsKey('is_draft_media')) { context.handle( _isDraftMediaMeta, isDraftMedia.isAcceptableOrUnknown( data['is_draft_media']!, _isDraftMediaMeta, ), ); } if (data.containsKey('is_favorite')) { context.handle( _isFavoriteMeta, isFavorite.isAcceptableOrUnknown(data['is_favorite']!, _isFavoriteMeta), ); } if (data.containsKey('has_crop_analyzed')) { context.handle( _hasCropAnalyzedMeta, hasCropAnalyzed.isAcceptableOrUnknown( data['has_crop_analyzed']!, _hasCropAnalyzedMeta, ), ); } if (data.containsKey('pre_progressing_process')) { context.handle( _preProgressingProcessMeta, preProgressingProcess.isAcceptableOrUnknown( data['pre_progressing_process']!, _preProgressingProcessMeta, ), ); } if (data.containsKey('display_limit_in_milliseconds')) { context.handle( _displayLimitInMillisecondsMeta, displayLimitInMilliseconds.isAcceptableOrUnknown( data['display_limit_in_milliseconds']!, _displayLimitInMillisecondsMeta, ), ); } if (data.containsKey('remove_audio')) { context.handle( _removeAudioMeta, removeAudio.isAcceptableOrUnknown( data['remove_audio']!, _removeAudioMeta, ), ); } if (data.containsKey('download_token')) { context.handle( _downloadTokenMeta, downloadToken.isAcceptableOrUnknown( data['download_token']!, _downloadTokenMeta, ), ); } if (data.containsKey('encryption_key')) { context.handle( _encryptionKeyMeta, encryptionKey.isAcceptableOrUnknown( data['encryption_key']!, _encryptionKeyMeta, ), ); } if (data.containsKey('encryption_mac')) { context.handle( _encryptionMacMeta, encryptionMac.isAcceptableOrUnknown( data['encryption_mac']!, _encryptionMacMeta, ), ); } if (data.containsKey('encryption_nonce')) { context.handle( _encryptionNonceMeta, encryptionNonce.isAcceptableOrUnknown( data['encryption_nonce']!, _encryptionNonceMeta, ), ); } if (data.containsKey('stored_file_hash')) { context.handle( _storedFileHashMeta, storedFileHash.isAcceptableOrUnknown( data['stored_file_hash']!, _storedFileHashMeta, ), ); } if (data.containsKey('has_thumbnail')) { context.handle( _hasThumbnailMeta, hasThumbnail.isAcceptableOrUnknown( data['has_thumbnail']!, _hasThumbnailMeta, ), ); } if (data.containsKey('size_in_bytes')) { context.handle( _sizeInBytesMeta, sizeInBytes.isAcceptableOrUnknown( data['size_in_bytes']!, _sizeInBytesMeta, ), ); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } if (data.containsKey('created_at_month')) { context.handle( _createdAtMonthMeta, createdAtMonth.isAcceptableOrUnknown( data['created_at_month']!, _createdAtMonthMeta, ), ); } return context; } @override Set get $primaryKey => {mediaId}; @override MediaFile map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return MediaFile( mediaId: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}media_id'], )!, type: $MediaFilesTable.$convertertype.fromSql( attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}type'], )!, ), uploadState: $MediaFilesTable.$converteruploadStaten.fromSql( attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}upload_state'], ), ), cloudState: $MediaFilesTable.$convertercloudState.fromSql( attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}cloud_state'], )!, ), blurhash: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}blurhash'], ), downloadState: $MediaFilesTable.$converterdownloadStaten.fromSql( 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'], )!, isFavorite: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}is_favorite'], )!, hasCropAnalyzed: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}has_crop_analyzed'], )!, preProgressingProcess: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}pre_progressing_process'], ), reuploadRequestedBy: $MediaFilesTable.$converterreuploadRequestedByn .fromSql( 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'], ), hasThumbnail: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}has_thumbnail'], )!, sizeInBytes: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}size_in_bytes'], ), createdAt: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}created_at'], )!, createdAtMonth: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}created_at_month'], ), ); } @override $MediaFilesTable createAlias(String alias) { return $MediaFilesTable(attachedDatabase, alias); } static JsonTypeConverter2 $convertertype = const EnumNameConverter(MediaType.values); static JsonTypeConverter2 $converteruploadState = const EnumNameConverter(UploadState.values); static JsonTypeConverter2 $converteruploadStaten = JsonTypeConverter2.asNullable($converteruploadState); static JsonTypeConverter2 $convertercloudState = const EnumNameConverter(CloudState.values); static JsonTypeConverter2 $converterdownloadState = const EnumNameConverter( DownloadState.values, ); static JsonTypeConverter2 $converterdownloadStaten = JsonTypeConverter2.asNullable( $converterdownloadState, ); static TypeConverter, String> $converterreuploadRequestedBy = IntListTypeConverter(); static TypeConverter?, String?> $converterreuploadRequestedByn = NullAwareTypeConverter.wrap($converterreuploadRequestedBy); } class MediaFile extends DataClass implements Insertable { final String mediaId; final MediaType type; final UploadState? uploadState; final CloudState cloudState; final String? blurhash; final DownloadState? downloadState; final bool requiresAuthentication; final bool stored; final bool isDraftMedia; final bool isFavorite; final bool hasCropAnalyzed; final int? preProgressingProcess; final List? reuploadRequestedBy; final int? displayLimitInMilliseconds; final bool? removeAudio; final Uint8List? downloadToken; final Uint8List? encryptionKey; final Uint8List? encryptionMac; final Uint8List? encryptionNonce; final Uint8List? storedFileHash; final bool hasThumbnail; final int? sizeInBytes; final DateTime createdAt; final String? createdAtMonth; const MediaFile({ required this.mediaId, required this.type, this.uploadState, required this.cloudState, this.blurhash, this.downloadState, required this.requiresAuthentication, required this.stored, required this.isDraftMedia, required this.isFavorite, required this.hasCropAnalyzed, this.preProgressingProcess, this.reuploadRequestedBy, this.displayLimitInMilliseconds, this.removeAudio, this.downloadToken, this.encryptionKey, this.encryptionMac, this.encryptionNonce, this.storedFileHash, required this.hasThumbnail, this.sizeInBytes, required this.createdAt, this.createdAtMonth, }); @override Map toColumns(bool nullToAbsent) { final map = {}; map['media_id'] = Variable(mediaId); { map['type'] = Variable( $MediaFilesTable.$convertertype.toSql(type), ); } if (!nullToAbsent || uploadState != null) { map['upload_state'] = Variable( $MediaFilesTable.$converteruploadStaten.toSql(uploadState), ); } { map['cloud_state'] = Variable( $MediaFilesTable.$convertercloudState.toSql(cloudState), ); } if (!nullToAbsent || blurhash != null) { map['blurhash'] = Variable(blurhash); } if (!nullToAbsent || downloadState != null) { map['download_state'] = Variable( $MediaFilesTable.$converterdownloadStaten.toSql(downloadState), ); } map['requires_authentication'] = Variable(requiresAuthentication); map['stored'] = Variable(stored); map['is_draft_media'] = Variable(isDraftMedia); map['is_favorite'] = Variable(isFavorite); map['has_crop_analyzed'] = Variable(hasCropAnalyzed); if (!nullToAbsent || preProgressingProcess != null) { map['pre_progressing_process'] = Variable(preProgressingProcess); } if (!nullToAbsent || reuploadRequestedBy != null) { map['reupload_requested_by'] = Variable( $MediaFilesTable.$converterreuploadRequestedByn.toSql( 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['has_thumbnail'] = Variable(hasThumbnail); if (!nullToAbsent || sizeInBytes != null) { map['size_in_bytes'] = Variable(sizeInBytes); } map['created_at'] = Variable(createdAt); if (!nullToAbsent || createdAtMonth != null) { map['created_at_month'] = Variable(createdAtMonth); } return map; } MediaFilesCompanion toCompanion(bool nullToAbsent) { return MediaFilesCompanion( mediaId: Value(mediaId), type: Value(type), uploadState: uploadState == null && nullToAbsent ? const Value.absent() : Value(uploadState), cloudState: Value(cloudState), blurhash: blurhash == null && nullToAbsent ? const Value.absent() : Value(blurhash), downloadState: downloadState == null && nullToAbsent ? const Value.absent() : Value(downloadState), requiresAuthentication: Value(requiresAuthentication), stored: Value(stored), isDraftMedia: Value(isDraftMedia), isFavorite: Value(isFavorite), hasCropAnalyzed: Value(hasCropAnalyzed), preProgressingProcess: preProgressingProcess == null && nullToAbsent ? const Value.absent() : Value(preProgressingProcess), 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), hasThumbnail: Value(hasThumbnail), sizeInBytes: sizeInBytes == null && nullToAbsent ? const Value.absent() : Value(sizeInBytes), createdAt: Value(createdAt), createdAtMonth: createdAtMonth == null && nullToAbsent ? const Value.absent() : Value(createdAtMonth), ); } factory MediaFile.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return MediaFile( mediaId: serializer.fromJson(json['mediaId']), type: $MediaFilesTable.$convertertype.fromJson( serializer.fromJson(json['type']), ), uploadState: $MediaFilesTable.$converteruploadStaten.fromJson( serializer.fromJson(json['uploadState']), ), cloudState: $MediaFilesTable.$convertercloudState.fromJson( serializer.fromJson(json['cloudState']), ), blurhash: serializer.fromJson(json['blurhash']), downloadState: $MediaFilesTable.$converterdownloadStaten.fromJson( serializer.fromJson(json['downloadState']), ), requiresAuthentication: serializer.fromJson( json['requiresAuthentication'], ), stored: serializer.fromJson(json['stored']), isDraftMedia: serializer.fromJson(json['isDraftMedia']), isFavorite: serializer.fromJson(json['isFavorite']), hasCropAnalyzed: serializer.fromJson(json['hasCropAnalyzed']), preProgressingProcess: serializer.fromJson( json['preProgressingProcess'], ), 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']), hasThumbnail: serializer.fromJson(json['hasThumbnail']), sizeInBytes: serializer.fromJson(json['sizeInBytes']), createdAt: serializer.fromJson(json['createdAt']), createdAtMonth: serializer.fromJson(json['createdAtMonth']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'mediaId': serializer.toJson(mediaId), 'type': serializer.toJson( $MediaFilesTable.$convertertype.toJson(type), ), 'uploadState': serializer.toJson( $MediaFilesTable.$converteruploadStaten.toJson(uploadState), ), 'cloudState': serializer.toJson( $MediaFilesTable.$convertercloudState.toJson(cloudState), ), 'blurhash': serializer.toJson(blurhash), 'downloadState': serializer.toJson( $MediaFilesTable.$converterdownloadStaten.toJson(downloadState), ), 'requiresAuthentication': serializer.toJson(requiresAuthentication), 'stored': serializer.toJson(stored), 'isDraftMedia': serializer.toJson(isDraftMedia), 'isFavorite': serializer.toJson(isFavorite), 'hasCropAnalyzed': serializer.toJson(hasCropAnalyzed), 'preProgressingProcess': serializer.toJson(preProgressingProcess), '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), 'hasThumbnail': serializer.toJson(hasThumbnail), 'sizeInBytes': serializer.toJson(sizeInBytes), 'createdAt': serializer.toJson(createdAt), 'createdAtMonth': serializer.toJson(createdAtMonth), }; } MediaFile copyWith({ String? mediaId, MediaType? type, Value uploadState = const Value.absent(), CloudState? cloudState, Value blurhash = const Value.absent(), Value downloadState = const Value.absent(), bool? requiresAuthentication, bool? stored, bool? isDraftMedia, bool? isFavorite, bool? hasCropAnalyzed, Value preProgressingProcess = const Value.absent(), 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(), bool? hasThumbnail, Value sizeInBytes = const Value.absent(), DateTime? createdAt, Value createdAtMonth = const Value.absent(), }) => MediaFile( mediaId: mediaId ?? this.mediaId, type: type ?? this.type, uploadState: uploadState.present ? uploadState.value : this.uploadState, cloudState: cloudState ?? this.cloudState, blurhash: blurhash.present ? blurhash.value : this.blurhash, downloadState: downloadState.present ? downloadState.value : this.downloadState, requiresAuthentication: requiresAuthentication ?? this.requiresAuthentication, stored: stored ?? this.stored, isDraftMedia: isDraftMedia ?? this.isDraftMedia, isFavorite: isFavorite ?? this.isFavorite, hasCropAnalyzed: hasCropAnalyzed ?? this.hasCropAnalyzed, preProgressingProcess: preProgressingProcess.present ? preProgressingProcess.value : this.preProgressingProcess, 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, hasThumbnail: hasThumbnail ?? this.hasThumbnail, sizeInBytes: sizeInBytes.present ? sizeInBytes.value : this.sizeInBytes, createdAt: createdAt ?? this.createdAt, createdAtMonth: createdAtMonth.present ? createdAtMonth.value : this.createdAtMonth, ); MediaFile copyWithCompanion(MediaFilesCompanion data) { return MediaFile( 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, cloudState: data.cloudState.present ? data.cloudState.value : this.cloudState, blurhash: data.blurhash.present ? data.blurhash.value : this.blurhash, 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, isFavorite: data.isFavorite.present ? data.isFavorite.value : this.isFavorite, hasCropAnalyzed: data.hasCropAnalyzed.present ? data.hasCropAnalyzed.value : this.hasCropAnalyzed, preProgressingProcess: data.preProgressingProcess.present ? data.preProgressingProcess.value : this.preProgressingProcess, 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, hasThumbnail: data.hasThumbnail.present ? data.hasThumbnail.value : this.hasThumbnail, sizeInBytes: data.sizeInBytes.present ? data.sizeInBytes.value : this.sizeInBytes, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, createdAtMonth: data.createdAtMonth.present ? data.createdAtMonth.value : this.createdAtMonth, ); } @override String toString() { return (StringBuffer('MediaFile(') ..write('mediaId: $mediaId, ') ..write('type: $type, ') ..write('uploadState: $uploadState, ') ..write('cloudState: $cloudState, ') ..write('blurhash: $blurhash, ') ..write('downloadState: $downloadState, ') ..write('requiresAuthentication: $requiresAuthentication, ') ..write('stored: $stored, ') ..write('isDraftMedia: $isDraftMedia, ') ..write('isFavorite: $isFavorite, ') ..write('hasCropAnalyzed: $hasCropAnalyzed, ') ..write('preProgressingProcess: $preProgressingProcess, ') ..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('hasThumbnail: $hasThumbnail, ') ..write('sizeInBytes: $sizeInBytes, ') ..write('createdAt: $createdAt, ') ..write('createdAtMonth: $createdAtMonth') ..write(')')) .toString(); } @override int get hashCode => Object.hashAll([ mediaId, type, uploadState, cloudState, blurhash, downloadState, requiresAuthentication, stored, isDraftMedia, isFavorite, hasCropAnalyzed, preProgressingProcess, reuploadRequestedBy, displayLimitInMilliseconds, removeAudio, $driftBlobEquality.hash(downloadToken), $driftBlobEquality.hash(encryptionKey), $driftBlobEquality.hash(encryptionMac), $driftBlobEquality.hash(encryptionNonce), $driftBlobEquality.hash(storedFileHash), hasThumbnail, sizeInBytes, createdAt, createdAtMonth, ]); @override bool operator ==(Object other) => identical(this, other) || (other is MediaFile && other.mediaId == this.mediaId && other.type == this.type && other.uploadState == this.uploadState && other.cloudState == this.cloudState && other.blurhash == this.blurhash && other.downloadState == this.downloadState && other.requiresAuthentication == this.requiresAuthentication && other.stored == this.stored && other.isDraftMedia == this.isDraftMedia && other.isFavorite == this.isFavorite && other.hasCropAnalyzed == this.hasCropAnalyzed && other.preProgressingProcess == this.preProgressingProcess && 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.hasThumbnail == this.hasThumbnail && other.sizeInBytes == this.sizeInBytes && other.createdAt == this.createdAt && other.createdAtMonth == this.createdAtMonth); } class MediaFilesCompanion extends UpdateCompanion { final Value mediaId; final Value type; final Value uploadState; final Value cloudState; final Value blurhash; final Value downloadState; final Value requiresAuthentication; final Value stored; final Value isDraftMedia; final Value isFavorite; final Value hasCropAnalyzed; final Value preProgressingProcess; 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 hasThumbnail; final Value sizeInBytes; final Value createdAt; final Value createdAtMonth; final Value rowid; const MediaFilesCompanion({ this.mediaId = const Value.absent(), this.type = const Value.absent(), this.uploadState = const Value.absent(), this.cloudState = const Value.absent(), this.blurhash = const Value.absent(), this.downloadState = const Value.absent(), this.requiresAuthentication = const Value.absent(), this.stored = const Value.absent(), this.isDraftMedia = const Value.absent(), this.isFavorite = const Value.absent(), this.hasCropAnalyzed = const Value.absent(), this.preProgressingProcess = 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.hasThumbnail = const Value.absent(), this.sizeInBytes = const Value.absent(), this.createdAt = const Value.absent(), this.createdAtMonth = const Value.absent(), this.rowid = const Value.absent(), }); MediaFilesCompanion.insert({ required String mediaId, required MediaType type, this.uploadState = const Value.absent(), this.cloudState = const Value.absent(), this.blurhash = const Value.absent(), this.downloadState = const Value.absent(), this.requiresAuthentication = const Value.absent(), this.stored = const Value.absent(), this.isDraftMedia = const Value.absent(), this.isFavorite = const Value.absent(), this.hasCropAnalyzed = const Value.absent(), this.preProgressingProcess = 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.hasThumbnail = const Value.absent(), this.sizeInBytes = const Value.absent(), this.createdAt = const Value.absent(), this.createdAtMonth = const Value.absent(), this.rowid = const Value.absent(), }) : mediaId = Value(mediaId), type = Value(type); static Insertable custom({ Expression? mediaId, Expression? type, Expression? uploadState, Expression? cloudState, Expression? blurhash, Expression? downloadState, Expression? requiresAuthentication, Expression? stored, Expression? isDraftMedia, Expression? isFavorite, Expression? hasCropAnalyzed, Expression? preProgressingProcess, Expression? reuploadRequestedBy, Expression? displayLimitInMilliseconds, Expression? removeAudio, Expression? downloadToken, Expression? encryptionKey, Expression? encryptionMac, Expression? encryptionNonce, Expression? storedFileHash, Expression? hasThumbnail, Expression? sizeInBytes, Expression? createdAt, Expression? createdAtMonth, Expression? rowid, }) { return RawValuesInsertable({ if (mediaId != null) 'media_id': mediaId, if (type != null) 'type': type, if (uploadState != null) 'upload_state': uploadState, if (cloudState != null) 'cloud_state': cloudState, if (blurhash != null) 'blurhash': blurhash, 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 (isFavorite != null) 'is_favorite': isFavorite, if (hasCropAnalyzed != null) 'has_crop_analyzed': hasCropAnalyzed, if (preProgressingProcess != null) 'pre_progressing_process': preProgressingProcess, 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 (hasThumbnail != null) 'has_thumbnail': hasThumbnail, if (sizeInBytes != null) 'size_in_bytes': sizeInBytes, if (createdAt != null) 'created_at': createdAt, if (createdAtMonth != null) 'created_at_month': createdAtMonth, if (rowid != null) 'rowid': rowid, }); } MediaFilesCompanion copyWith({ Value? mediaId, Value? type, Value? uploadState, Value? cloudState, Value? blurhash, Value? downloadState, Value? requiresAuthentication, Value? stored, Value? isDraftMedia, Value? isFavorite, Value? hasCropAnalyzed, Value? preProgressingProcess, Value?>? reuploadRequestedBy, Value? displayLimitInMilliseconds, Value? removeAudio, Value? downloadToken, Value? encryptionKey, Value? encryptionMac, Value? encryptionNonce, Value? storedFileHash, Value? hasThumbnail, Value? sizeInBytes, Value? createdAt, Value? createdAtMonth, Value? rowid, }) { return MediaFilesCompanion( mediaId: mediaId ?? this.mediaId, type: type ?? this.type, uploadState: uploadState ?? this.uploadState, cloudState: cloudState ?? this.cloudState, blurhash: blurhash ?? this.blurhash, downloadState: downloadState ?? this.downloadState, requiresAuthentication: requiresAuthentication ?? this.requiresAuthentication, stored: stored ?? this.stored, isDraftMedia: isDraftMedia ?? this.isDraftMedia, isFavorite: isFavorite ?? this.isFavorite, hasCropAnalyzed: hasCropAnalyzed ?? this.hasCropAnalyzed, preProgressingProcess: preProgressingProcess ?? this.preProgressingProcess, 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, hasThumbnail: hasThumbnail ?? this.hasThumbnail, sizeInBytes: sizeInBytes ?? this.sizeInBytes, createdAt: createdAt ?? this.createdAt, createdAtMonth: createdAtMonth ?? this.createdAtMonth, 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( $MediaFilesTable.$convertertype.toSql(type.value), ); } if (uploadState.present) { map['upload_state'] = Variable( $MediaFilesTable.$converteruploadStaten.toSql(uploadState.value), ); } if (cloudState.present) { map['cloud_state'] = Variable( $MediaFilesTable.$convertercloudState.toSql(cloudState.value), ); } if (blurhash.present) { map['blurhash'] = Variable(blurhash.value); } if (downloadState.present) { map['download_state'] = Variable( $MediaFilesTable.$converterdownloadStaten.toSql(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 (isFavorite.present) { map['is_favorite'] = Variable(isFavorite.value); } if (hasCropAnalyzed.present) { map['has_crop_analyzed'] = Variable(hasCropAnalyzed.value); } if (preProgressingProcess.present) { map['pre_progressing_process'] = Variable( preProgressingProcess.value, ); } if (reuploadRequestedBy.present) { map['reupload_requested_by'] = Variable( $MediaFilesTable.$converterreuploadRequestedByn.toSql( 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 (hasThumbnail.present) { map['has_thumbnail'] = Variable(hasThumbnail.value); } if (sizeInBytes.present) { map['size_in_bytes'] = Variable(sizeInBytes.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } if (createdAtMonth.present) { map['created_at_month'] = Variable(createdAtMonth.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('cloudState: $cloudState, ') ..write('blurhash: $blurhash, ') ..write('downloadState: $downloadState, ') ..write('requiresAuthentication: $requiresAuthentication, ') ..write('stored: $stored, ') ..write('isDraftMedia: $isDraftMedia, ') ..write('isFavorite: $isFavorite, ') ..write('hasCropAnalyzed: $hasCropAnalyzed, ') ..write('preProgressingProcess: $preProgressingProcess, ') ..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('hasThumbnail: $hasThumbnail, ') ..write('sizeInBytes: $sizeInBytes, ') ..write('createdAt: $createdAt, ') ..write('createdAtMonth: $createdAtMonth, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class $MessagesTable extends Messages with TableInfo<$MessagesTable, Message> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $MessagesTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _groupIdMeta = const VerificationMeta( 'groupId', ); @override late final GeneratedColumn groupId = GeneratedColumn( 'group_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES "groups" (group_id) ON DELETE CASCADE', ), ); static const VerificationMeta _messageIdMeta = const VerificationMeta( 'messageId', ); @override late final GeneratedColumn messageId = GeneratedColumn( 'message_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); static const VerificationMeta _senderIdMeta = const VerificationMeta( 'senderId', ); @override late final GeneratedColumn senderId = GeneratedColumn( 'sender_id', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id)', ), ); static const VerificationMeta _typeMeta = const VerificationMeta('type'); @override late final GeneratedColumn type = GeneratedColumn( 'type', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); static const VerificationMeta _contentMeta = const VerificationMeta( 'content', ); @override late final GeneratedColumn content = GeneratedColumn( 'content', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ); static const VerificationMeta _mediaIdMeta = const VerificationMeta( 'mediaId', ); @override 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', ), ); static const VerificationMeta _additionalMessageDataMeta = const VerificationMeta('additionalMessageData'); @override late final GeneratedColumn additionalMessageData = GeneratedColumn( 'additional_message_data', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _mediaStoredMeta = const VerificationMeta( 'mediaStored', ); @override 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 Constant(false), ); static const VerificationMeta _mediaReopenedMeta = const VerificationMeta( 'mediaReopened', ); @override 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 Constant(false), ); static const VerificationMeta _downloadTokenMeta = const VerificationMeta( 'downloadToken', ); @override late final GeneratedColumn downloadToken = GeneratedColumn( 'download_token', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _quotesMessageIdMeta = const VerificationMeta( 'quotesMessageId', ); @override late final GeneratedColumn quotesMessageId = GeneratedColumn( 'quotes_message_id', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ); static const VerificationMeta _isDeletedFromSenderMeta = const VerificationMeta('isDeletedFromSender'); @override 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 Constant(false), ); static const VerificationMeta _openedAtMeta = const VerificationMeta( 'openedAt', ); @override late final GeneratedColumn openedAt = GeneratedColumn( 'opened_at', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _openedByAllMeta = const VerificationMeta( 'openedByAll', ); @override late final GeneratedColumn openedByAll = GeneratedColumn( 'opened_by_all', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); static const VerificationMeta _modifiedAtMeta = const VerificationMeta( 'modifiedAt', ); @override late final GeneratedColumn modifiedAt = GeneratedColumn( 'modified_at', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _ackByUserMeta = const VerificationMeta( 'ackByUser', ); @override late final GeneratedColumn ackByUser = GeneratedColumn( 'ack_by_user', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _ackByServerMeta = const VerificationMeta( 'ackByServer', ); @override 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, additionalMessageData, 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 VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('group_id')) { context.handle( _groupIdMeta, groupId.isAcceptableOrUnknown(data['group_id']!, _groupIdMeta), ); } else if (isInserting) { context.missing(_groupIdMeta); } if (data.containsKey('message_id')) { context.handle( _messageIdMeta, messageId.isAcceptableOrUnknown(data['message_id']!, _messageIdMeta), ); } else if (isInserting) { context.missing(_messageIdMeta); } if (data.containsKey('sender_id')) { context.handle( _senderIdMeta, senderId.isAcceptableOrUnknown(data['sender_id']!, _senderIdMeta), ); } if (data.containsKey('type')) { context.handle( _typeMeta, type.isAcceptableOrUnknown(data['type']!, _typeMeta), ); } else if (isInserting) { context.missing(_typeMeta); } if (data.containsKey('content')) { context.handle( _contentMeta, content.isAcceptableOrUnknown(data['content']!, _contentMeta), ); } if (data.containsKey('media_id')) { context.handle( _mediaIdMeta, mediaId.isAcceptableOrUnknown(data['media_id']!, _mediaIdMeta), ); } if (data.containsKey('additional_message_data')) { context.handle( _additionalMessageDataMeta, additionalMessageData.isAcceptableOrUnknown( data['additional_message_data']!, _additionalMessageDataMeta, ), ); } if (data.containsKey('media_stored')) { context.handle( _mediaStoredMeta, mediaStored.isAcceptableOrUnknown( data['media_stored']!, _mediaStoredMeta, ), ); } if (data.containsKey('media_reopened')) { context.handle( _mediaReopenedMeta, mediaReopened.isAcceptableOrUnknown( data['media_reopened']!, _mediaReopenedMeta, ), ); } if (data.containsKey('download_token')) { context.handle( _downloadTokenMeta, downloadToken.isAcceptableOrUnknown( data['download_token']!, _downloadTokenMeta, ), ); } if (data.containsKey('quotes_message_id')) { context.handle( _quotesMessageIdMeta, quotesMessageId.isAcceptableOrUnknown( data['quotes_message_id']!, _quotesMessageIdMeta, ), ); } if (data.containsKey('is_deleted_from_sender')) { context.handle( _isDeletedFromSenderMeta, isDeletedFromSender.isAcceptableOrUnknown( data['is_deleted_from_sender']!, _isDeletedFromSenderMeta, ), ); } if (data.containsKey('opened_at')) { context.handle( _openedAtMeta, openedAt.isAcceptableOrUnknown(data['opened_at']!, _openedAtMeta), ); } if (data.containsKey('opened_by_all')) { context.handle( _openedByAllMeta, openedByAll.isAcceptableOrUnknown( data['opened_by_all']!, _openedByAllMeta, ), ); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } if (data.containsKey('modified_at')) { context.handle( _modifiedAtMeta, modifiedAt.isAcceptableOrUnknown(data['modified_at']!, _modifiedAtMeta), ); } if (data.containsKey('ack_by_user')) { context.handle( _ackByUserMeta, ackByUser.isAcceptableOrUnknown(data['ack_by_user']!, _ackByUserMeta), ); } if (data.containsKey('ack_by_server')) { context.handle( _ackByServerMeta, ackByServer.isAcceptableOrUnknown( data['ack_by_server']!, _ackByServerMeta, ), ); } return context; } @override Set get $primaryKey => {messageId}; @override Message map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return Message( 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'], ), additionalMessageData: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}additional_message_data'], ), 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 $MessagesTable createAlias(String alias) { return $MessagesTable(attachedDatabase, alias); } } class Message extends DataClass implements Insertable { final String groupId; final String messageId; final int? senderId; final String type; final String? content; final String? mediaId; final Uint8List? additionalMessageData; final bool mediaStored; final bool mediaReopened; final 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 Message({ required this.groupId, required this.messageId, this.senderId, required this.type, this.content, this.mediaId, this.additionalMessageData, 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); } if (!nullToAbsent || additionalMessageData != null) { map['additional_message_data'] = Variable( additionalMessageData, ); } 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), additionalMessageData: additionalMessageData == null && nullToAbsent ? const Value.absent() : Value(additionalMessageData), 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 Message.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return Message( 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']), additionalMessageData: serializer.fromJson( json['additionalMessageData'], ), 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), 'additionalMessageData': serializer.toJson( additionalMessageData, ), '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), }; } Message copyWith({ String? groupId, String? messageId, Value senderId = const Value.absent(), String? type, Value content = const Value.absent(), Value mediaId = const Value.absent(), Value additionalMessageData = 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(), }) => Message( 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, additionalMessageData: additionalMessageData.present ? additionalMessageData.value : this.additionalMessageData, 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, ); Message copyWithCompanion(MessagesCompanion data) { return Message( 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, additionalMessageData: data.additionalMessageData.present ? data.additionalMessageData.value : this.additionalMessageData, 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('Message(') ..write('groupId: $groupId, ') ..write('messageId: $messageId, ') ..write('senderId: $senderId, ') ..write('type: $type, ') ..write('content: $content, ') ..write('mediaId: $mediaId, ') ..write('additionalMessageData: $additionalMessageData, ') ..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, $driftBlobEquality.hash(additionalMessageData), mediaStored, mediaReopened, $driftBlobEquality.hash(downloadToken), quotesMessageId, isDeletedFromSender, openedAt, openedByAll, createdAt, modifiedAt, ackByUser, ackByServer, ); @override bool operator ==(Object other) => identical(this, other) || (other is Message && other.groupId == this.groupId && other.messageId == this.messageId && other.senderId == this.senderId && other.type == this.type && other.content == this.content && other.mediaId == this.mediaId && $driftBlobEquality.equals( other.additionalMessageData, this.additionalMessageData, ) && 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 additionalMessageData; 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.additionalMessageData = 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.additionalMessageData = 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? additionalMessageData, 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 (additionalMessageData != null) 'additional_message_data': additionalMessageData, 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? additionalMessageData, 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, additionalMessageData: additionalMessageData ?? this.additionalMessageData, 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 (additionalMessageData.present) { map['additional_message_data'] = Variable( additionalMessageData.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('additionalMessageData: $additionalMessageData, ') ..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 $MessageHistoriesTable extends MessageHistories with TableInfo<$MessageHistoriesTable, MessageHistory> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $MessageHistoriesTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _idMeta = const VerificationMeta('id'); @override late final GeneratedColumn id = GeneratedColumn( 'id', aliasedName, false, hasAutoIncrement: true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'PRIMARY KEY AUTOINCREMENT', ), ); static const VerificationMeta _messageIdMeta = const VerificationMeta( 'messageId', ); @override late final GeneratedColumn messageId = GeneratedColumn( 'message_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES messages (message_id) ON DELETE CASCADE', ), ); static const VerificationMeta _contactIdMeta = const VerificationMeta( 'contactId', ); @override late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE', ), ); static const VerificationMeta _contentMeta = const VerificationMeta( 'content', ); @override late final GeneratedColumn content = GeneratedColumn( 'content', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @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 VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('id')) { context.handle(_idMeta, id.isAcceptableOrUnknown(data['id']!, _idMeta)); } if (data.containsKey('message_id')) { context.handle( _messageIdMeta, messageId.isAcceptableOrUnknown(data['message_id']!, _messageIdMeta), ); } else if (isInserting) { context.missing(_messageIdMeta); } if (data.containsKey('contact_id')) { context.handle( _contactIdMeta, contactId.isAcceptableOrUnknown(data['contact_id']!, _contactIdMeta), ); } if (data.containsKey('content')) { context.handle( _contentMeta, content.isAcceptableOrUnknown(data['content']!, _contentMeta), ); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } return context; } @override Set get $primaryKey => {id}; @override MessageHistory map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return MessageHistory( 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 $MessageHistoriesTable createAlias(String alias) { return $MessageHistoriesTable(attachedDatabase, alias); } } class MessageHistory extends DataClass implements Insertable { final int id; final String messageId; final int? contactId; final String? content; final DateTime createdAt; const MessageHistory({ 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 MessageHistory.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return MessageHistory( 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), }; } MessageHistory copyWith({ int? id, String? messageId, Value contactId = const Value.absent(), Value content = const Value.absent(), DateTime? createdAt, }) => MessageHistory( 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, ); MessageHistory copyWithCompanion(MessageHistoriesCompanion data) { return MessageHistory( 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('MessageHistory(') ..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 MessageHistory && 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 $ReactionsTable extends Reactions with TableInfo<$ReactionsTable, Reaction> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $ReactionsTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _messageIdMeta = const VerificationMeta( 'messageId', ); @override late final GeneratedColumn messageId = GeneratedColumn( 'message_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES messages (message_id) ON DELETE CASCADE', ), ); static const VerificationMeta _emojiMeta = const VerificationMeta('emoji'); @override late final GeneratedColumn emoji = GeneratedColumn( 'emoji', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); static const VerificationMeta _senderIdMeta = const VerificationMeta( 'senderId', ); @override late final GeneratedColumn senderId = GeneratedColumn( 'sender_id', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE', ), ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @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 VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('message_id')) { context.handle( _messageIdMeta, messageId.isAcceptableOrUnknown(data['message_id']!, _messageIdMeta), ); } else if (isInserting) { context.missing(_messageIdMeta); } if (data.containsKey('emoji')) { context.handle( _emojiMeta, emoji.isAcceptableOrUnknown(data['emoji']!, _emojiMeta), ); } else if (isInserting) { context.missing(_emojiMeta); } if (data.containsKey('sender_id')) { context.handle( _senderIdMeta, senderId.isAcceptableOrUnknown(data['sender_id']!, _senderIdMeta), ); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } return context; } @override Set get $primaryKey => {messageId, senderId, emoji}; @override Reaction map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return Reaction( 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 $ReactionsTable createAlias(String alias) { return $ReactionsTable(attachedDatabase, alias); } } class Reaction extends DataClass implements Insertable { final String messageId; final String emoji; final int? senderId; final DateTime createdAt; const Reaction({ 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 Reaction.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return Reaction( 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), }; } Reaction copyWith({ String? messageId, String? emoji, Value senderId = const Value.absent(), DateTime? createdAt, }) => Reaction( messageId: messageId ?? this.messageId, emoji: emoji ?? this.emoji, senderId: senderId.present ? senderId.value : this.senderId, createdAt: createdAt ?? this.createdAt, ); Reaction copyWithCompanion(ReactionsCompanion data) { return Reaction( 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('Reaction(') ..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 Reaction && 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 $GroupMembersTable extends GroupMembers with TableInfo<$GroupMembersTable, GroupMember> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $GroupMembersTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _groupIdMeta = const VerificationMeta( 'groupId', ); @override late final GeneratedColumn groupId = GeneratedColumn( 'group_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES "groups" (group_id) ON DELETE CASCADE', ), ); static const VerificationMeta _contactIdMeta = const VerificationMeta( 'contactId', ); @override late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id)', ), ); @override late final GeneratedColumnWithTypeConverter memberState = GeneratedColumn( 'member_state', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ).withConverter($GroupMembersTable.$convertermemberStaten); static const VerificationMeta _groupPublicKeyMeta = const VerificationMeta( 'groupPublicKey', ); @override late final GeneratedColumn groupPublicKey = GeneratedColumn( 'group_public_key', aliasedName, true, type: DriftSqlType.blob, requiredDuringInsert: false, ); static const VerificationMeta _lastChatOpenedMeta = const VerificationMeta( 'lastChatOpened', ); @override late final GeneratedColumn lastChatOpened = GeneratedColumn( 'last_chat_opened', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _lastTypeIndicatorMeta = const VerificationMeta( 'lastTypeIndicator', ); @override late final GeneratedColumn lastTypeIndicator = GeneratedColumn( 'last_type_indicator', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _lastMessageMeta = const VerificationMeta( 'lastMessage', ); @override late final GeneratedColumn lastMessage = GeneratedColumn( 'last_message', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @override List get $columns => [ groupId, contactId, memberState, groupPublicKey, lastChatOpened, lastTypeIndicator, lastMessage, createdAt, ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'group_members'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('group_id')) { context.handle( _groupIdMeta, groupId.isAcceptableOrUnknown(data['group_id']!, _groupIdMeta), ); } else if (isInserting) { context.missing(_groupIdMeta); } if (data.containsKey('contact_id')) { context.handle( _contactIdMeta, contactId.isAcceptableOrUnknown(data['contact_id']!, _contactIdMeta), ); } else if (isInserting) { context.missing(_contactIdMeta); } if (data.containsKey('group_public_key')) { context.handle( _groupPublicKeyMeta, groupPublicKey.isAcceptableOrUnknown( data['group_public_key']!, _groupPublicKeyMeta, ), ); } if (data.containsKey('last_chat_opened')) { context.handle( _lastChatOpenedMeta, lastChatOpened.isAcceptableOrUnknown( data['last_chat_opened']!, _lastChatOpenedMeta, ), ); } if (data.containsKey('last_type_indicator')) { context.handle( _lastTypeIndicatorMeta, lastTypeIndicator.isAcceptableOrUnknown( data['last_type_indicator']!, _lastTypeIndicatorMeta, ), ); } if (data.containsKey('last_message')) { context.handle( _lastMessageMeta, lastMessage.isAcceptableOrUnknown( data['last_message']!, _lastMessageMeta, ), ); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } return context; } @override Set get $primaryKey => {groupId, contactId}; @override GroupMember map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return GroupMember( groupId: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}group_id'], )!, contactId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}contact_id'], )!, memberState: $GroupMembersTable.$convertermemberStaten.fromSql( attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}member_state'], ), ), groupPublicKey: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}group_public_key'], ), lastChatOpened: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}last_chat_opened'], ), lastTypeIndicator: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}last_type_indicator'], ), lastMessage: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}last_message'], ), createdAt: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}created_at'], )!, ); } @override $GroupMembersTable createAlias(String alias) { return $GroupMembersTable(attachedDatabase, alias); } static JsonTypeConverter2 $convertermemberState = const EnumNameConverter(MemberState.values); static JsonTypeConverter2 $convertermemberStaten = JsonTypeConverter2.asNullable($convertermemberState); } class GroupMember extends DataClass implements Insertable { final String groupId; final int contactId; final MemberState? memberState; final Uint8List? groupPublicKey; final DateTime? lastChatOpened; final DateTime? lastTypeIndicator; final DateTime? lastMessage; final DateTime createdAt; const GroupMember({ required this.groupId, required this.contactId, this.memberState, this.groupPublicKey, this.lastChatOpened, this.lastTypeIndicator, 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( $GroupMembersTable.$convertermemberStaten.toSql(memberState), ); } if (!nullToAbsent || groupPublicKey != null) { map['group_public_key'] = Variable(groupPublicKey); } if (!nullToAbsent || lastChatOpened != null) { map['last_chat_opened'] = Variable(lastChatOpened); } if (!nullToAbsent || lastTypeIndicator != null) { map['last_type_indicator'] = Variable(lastTypeIndicator); } 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), lastChatOpened: lastChatOpened == null && nullToAbsent ? const Value.absent() : Value(lastChatOpened), lastTypeIndicator: lastTypeIndicator == null && nullToAbsent ? const Value.absent() : Value(lastTypeIndicator), lastMessage: lastMessage == null && nullToAbsent ? const Value.absent() : Value(lastMessage), createdAt: Value(createdAt), ); } factory GroupMember.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return GroupMember( groupId: serializer.fromJson(json['groupId']), contactId: serializer.fromJson(json['contactId']), memberState: $GroupMembersTable.$convertermemberStaten.fromJson( serializer.fromJson(json['memberState']), ), groupPublicKey: serializer.fromJson(json['groupPublicKey']), lastChatOpened: serializer.fromJson(json['lastChatOpened']), lastTypeIndicator: serializer.fromJson( json['lastTypeIndicator'], ), 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( $GroupMembersTable.$convertermemberStaten.toJson(memberState), ), 'groupPublicKey': serializer.toJson(groupPublicKey), 'lastChatOpened': serializer.toJson(lastChatOpened), 'lastTypeIndicator': serializer.toJson(lastTypeIndicator), 'lastMessage': serializer.toJson(lastMessage), 'createdAt': serializer.toJson(createdAt), }; } GroupMember copyWith({ String? groupId, int? contactId, Value memberState = const Value.absent(), Value groupPublicKey = const Value.absent(), Value lastChatOpened = const Value.absent(), Value lastTypeIndicator = const Value.absent(), Value lastMessage = const Value.absent(), DateTime? createdAt, }) => GroupMember( groupId: groupId ?? this.groupId, contactId: contactId ?? this.contactId, memberState: memberState.present ? memberState.value : this.memberState, groupPublicKey: groupPublicKey.present ? groupPublicKey.value : this.groupPublicKey, lastChatOpened: lastChatOpened.present ? lastChatOpened.value : this.lastChatOpened, lastTypeIndicator: lastTypeIndicator.present ? lastTypeIndicator.value : this.lastTypeIndicator, lastMessage: lastMessage.present ? lastMessage.value : this.lastMessage, createdAt: createdAt ?? this.createdAt, ); GroupMember copyWithCompanion(GroupMembersCompanion data) { return GroupMember( 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, lastChatOpened: data.lastChatOpened.present ? data.lastChatOpened.value : this.lastChatOpened, lastTypeIndicator: data.lastTypeIndicator.present ? data.lastTypeIndicator.value : this.lastTypeIndicator, lastMessage: data.lastMessage.present ? data.lastMessage.value : this.lastMessage, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('GroupMember(') ..write('groupId: $groupId, ') ..write('contactId: $contactId, ') ..write('memberState: $memberState, ') ..write('groupPublicKey: $groupPublicKey, ') ..write('lastChatOpened: $lastChatOpened, ') ..write('lastTypeIndicator: $lastTypeIndicator, ') ..write('lastMessage: $lastMessage, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash( groupId, contactId, memberState, $driftBlobEquality.hash(groupPublicKey), lastChatOpened, lastTypeIndicator, lastMessage, createdAt, ); @override bool operator ==(Object other) => identical(this, other) || (other is GroupMember && other.groupId == this.groupId && other.contactId == this.contactId && other.memberState == this.memberState && $driftBlobEquality.equals( other.groupPublicKey, this.groupPublicKey, ) && other.lastChatOpened == this.lastChatOpened && other.lastTypeIndicator == this.lastTypeIndicator && 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 lastChatOpened; final Value lastTypeIndicator; 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.lastChatOpened = const Value.absent(), this.lastTypeIndicator = 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.lastChatOpened = const Value.absent(), this.lastTypeIndicator = 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? lastChatOpened, Expression? lastTypeIndicator, 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 (lastChatOpened != null) 'last_chat_opened': lastChatOpened, if (lastTypeIndicator != null) 'last_type_indicator': lastTypeIndicator, 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? lastChatOpened, Value? lastTypeIndicator, Value? lastMessage, Value? createdAt, Value? rowid, }) { return GroupMembersCompanion( groupId: groupId ?? this.groupId, contactId: contactId ?? this.contactId, memberState: memberState ?? this.memberState, groupPublicKey: groupPublicKey ?? this.groupPublicKey, lastChatOpened: lastChatOpened ?? this.lastChatOpened, lastTypeIndicator: lastTypeIndicator ?? this.lastTypeIndicator, 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( $GroupMembersTable.$convertermemberStaten.toSql(memberState.value), ); } if (groupPublicKey.present) { map['group_public_key'] = Variable(groupPublicKey.value); } if (lastChatOpened.present) { map['last_chat_opened'] = Variable(lastChatOpened.value); } if (lastTypeIndicator.present) { map['last_type_indicator'] = Variable(lastTypeIndicator.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('lastChatOpened: $lastChatOpened, ') ..write('lastTypeIndicator: $lastTypeIndicator, ') ..write('lastMessage: $lastMessage, ') ..write('createdAt: $createdAt, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class $ReceiptsTable extends Receipts with TableInfo<$ReceiptsTable, Receipt> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $ReceiptsTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _receiptIdMeta = const VerificationMeta( 'receiptId', ); @override late final GeneratedColumn receiptId = GeneratedColumn( 'receipt_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); static const VerificationMeta _contactIdMeta = const VerificationMeta( 'contactId', ); @override late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE', ), ); static const VerificationMeta _messageIdMeta = const VerificationMeta( 'messageId', ); @override late final GeneratedColumn messageId = GeneratedColumn( 'message_id', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES messages (message_id) ON DELETE CASCADE', ), ); static const VerificationMeta _messageMeta = const VerificationMeta( 'message', ); @override late final GeneratedColumn message = GeneratedColumn( 'message', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true, ); static const VerificationMeta _contactWillSendsReceiptMeta = const VerificationMeta('contactWillSendsReceipt'); @override 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 Constant(true), ); static const VerificationMeta _willBeRetriedByMediaUploadMeta = const VerificationMeta('willBeRetriedByMediaUpload'); @override late final GeneratedColumn willBeRetriedByMediaUpload = GeneratedColumn( 'will_be_retried_by_media_upload', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("will_be_retried_by_media_upload" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _markForRetryMeta = const VerificationMeta( 'markForRetry', ); @override late final GeneratedColumn markForRetry = GeneratedColumn( 'mark_for_retry', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _markForRetryAfterAcceptedMeta = const VerificationMeta('markForRetryAfterAccepted'); @override late final GeneratedColumn markForRetryAfterAccepted = GeneratedColumn( 'mark_for_retry_after_accepted', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _ackByServerAtMeta = const VerificationMeta( 'ackByServerAt', ); @override late final GeneratedColumn ackByServerAt = GeneratedColumn( 'ack_by_server_at', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _retryCountMeta = const VerificationMeta( 'retryCount', ); @override late final GeneratedColumn retryCount = GeneratedColumn( 'retry_count', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const Constant(0), ); static const VerificationMeta _lastRetryMeta = const VerificationMeta( 'lastRetry', ); @override late final GeneratedColumn lastRetry = GeneratedColumn( 'last_retry', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @override List get $columns => [ receiptId, contactId, messageId, message, contactWillSendsReceipt, willBeRetriedByMediaUpload, markForRetry, markForRetryAfterAccepted, ackByServerAt, retryCount, lastRetry, createdAt, ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'receipts'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('receipt_id')) { context.handle( _receiptIdMeta, receiptId.isAcceptableOrUnknown(data['receipt_id']!, _receiptIdMeta), ); } else if (isInserting) { context.missing(_receiptIdMeta); } if (data.containsKey('contact_id')) { context.handle( _contactIdMeta, contactId.isAcceptableOrUnknown(data['contact_id']!, _contactIdMeta), ); } else if (isInserting) { context.missing(_contactIdMeta); } if (data.containsKey('message_id')) { context.handle( _messageIdMeta, messageId.isAcceptableOrUnknown(data['message_id']!, _messageIdMeta), ); } if (data.containsKey('message')) { context.handle( _messageMeta, message.isAcceptableOrUnknown(data['message']!, _messageMeta), ); } else if (isInserting) { context.missing(_messageMeta); } if (data.containsKey('contact_will_sends_receipt')) { context.handle( _contactWillSendsReceiptMeta, contactWillSendsReceipt.isAcceptableOrUnknown( data['contact_will_sends_receipt']!, _contactWillSendsReceiptMeta, ), ); } if (data.containsKey('will_be_retried_by_media_upload')) { context.handle( _willBeRetriedByMediaUploadMeta, willBeRetriedByMediaUpload.isAcceptableOrUnknown( data['will_be_retried_by_media_upload']!, _willBeRetriedByMediaUploadMeta, ), ); } if (data.containsKey('mark_for_retry')) { context.handle( _markForRetryMeta, markForRetry.isAcceptableOrUnknown( data['mark_for_retry']!, _markForRetryMeta, ), ); } if (data.containsKey('mark_for_retry_after_accepted')) { context.handle( _markForRetryAfterAcceptedMeta, markForRetryAfterAccepted.isAcceptableOrUnknown( data['mark_for_retry_after_accepted']!, _markForRetryAfterAcceptedMeta, ), ); } if (data.containsKey('ack_by_server_at')) { context.handle( _ackByServerAtMeta, ackByServerAt.isAcceptableOrUnknown( data['ack_by_server_at']!, _ackByServerAtMeta, ), ); } if (data.containsKey('retry_count')) { context.handle( _retryCountMeta, retryCount.isAcceptableOrUnknown(data['retry_count']!, _retryCountMeta), ); } if (data.containsKey('last_retry')) { context.handle( _lastRetryMeta, lastRetry.isAcceptableOrUnknown(data['last_retry']!, _lastRetryMeta), ); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } return context; } @override Set get $primaryKey => {receiptId}; @override Receipt map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return Receipt( 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'], )!, willBeRetriedByMediaUpload: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}will_be_retried_by_media_upload'], )!, markForRetry: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}mark_for_retry'], ), markForRetryAfterAccepted: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}mark_for_retry_after_accepted'], ), 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 $ReceiptsTable createAlias(String alias) { return $ReceiptsTable(attachedDatabase, alias); } } class Receipt extends DataClass implements Insertable { final String receiptId; final int contactId; final String? messageId; /// This is the protobuf 'Message' final Uint8List message; final bool contactWillSendsReceipt; final bool willBeRetriedByMediaUpload; final DateTime? markForRetry; final DateTime? markForRetryAfterAccepted; final DateTime? ackByServerAt; final int retryCount; final DateTime? lastRetry; final DateTime createdAt; const Receipt({ required this.receiptId, required this.contactId, this.messageId, required this.message, required this.contactWillSendsReceipt, required this.willBeRetriedByMediaUpload, this.markForRetry, this.markForRetryAfterAccepted, 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); map['will_be_retried_by_media_upload'] = Variable( willBeRetriedByMediaUpload, ); if (!nullToAbsent || markForRetry != null) { map['mark_for_retry'] = Variable(markForRetry); } if (!nullToAbsent || markForRetryAfterAccepted != null) { map['mark_for_retry_after_accepted'] = Variable( markForRetryAfterAccepted, ); } 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), willBeRetriedByMediaUpload: Value(willBeRetriedByMediaUpload), markForRetry: markForRetry == null && nullToAbsent ? const Value.absent() : Value(markForRetry), markForRetryAfterAccepted: markForRetryAfterAccepted == null && nullToAbsent ? const Value.absent() : Value(markForRetryAfterAccepted), 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 Receipt.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return Receipt( 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'], ), willBeRetriedByMediaUpload: serializer.fromJson( json['willBeRetriedByMediaUpload'], ), markForRetry: serializer.fromJson(json['markForRetry']), markForRetryAfterAccepted: serializer.fromJson( json['markForRetryAfterAccepted'], ), 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, ), 'willBeRetriedByMediaUpload': serializer.toJson( willBeRetriedByMediaUpload, ), 'markForRetry': serializer.toJson(markForRetry), 'markForRetryAfterAccepted': serializer.toJson( markForRetryAfterAccepted, ), 'ackByServerAt': serializer.toJson(ackByServerAt), 'retryCount': serializer.toJson(retryCount), 'lastRetry': serializer.toJson(lastRetry), 'createdAt': serializer.toJson(createdAt), }; } Receipt copyWith({ String? receiptId, int? contactId, Value messageId = const Value.absent(), Uint8List? message, bool? contactWillSendsReceipt, bool? willBeRetriedByMediaUpload, Value markForRetry = const Value.absent(), Value markForRetryAfterAccepted = const Value.absent(), Value ackByServerAt = const Value.absent(), int? retryCount, Value lastRetry = const Value.absent(), DateTime? createdAt, }) => Receipt( receiptId: receiptId ?? this.receiptId, contactId: contactId ?? this.contactId, messageId: messageId.present ? messageId.value : this.messageId, message: message ?? this.message, contactWillSendsReceipt: contactWillSendsReceipt ?? this.contactWillSendsReceipt, willBeRetriedByMediaUpload: willBeRetriedByMediaUpload ?? this.willBeRetriedByMediaUpload, markForRetry: markForRetry.present ? markForRetry.value : this.markForRetry, markForRetryAfterAccepted: markForRetryAfterAccepted.present ? markForRetryAfterAccepted.value : this.markForRetryAfterAccepted, ackByServerAt: ackByServerAt.present ? ackByServerAt.value : this.ackByServerAt, retryCount: retryCount ?? this.retryCount, lastRetry: lastRetry.present ? lastRetry.value : this.lastRetry, createdAt: createdAt ?? this.createdAt, ); Receipt copyWithCompanion(ReceiptsCompanion data) { return Receipt( 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, willBeRetriedByMediaUpload: data.willBeRetriedByMediaUpload.present ? data.willBeRetriedByMediaUpload.value : this.willBeRetriedByMediaUpload, markForRetry: data.markForRetry.present ? data.markForRetry.value : this.markForRetry, markForRetryAfterAccepted: data.markForRetryAfterAccepted.present ? data.markForRetryAfterAccepted.value : this.markForRetryAfterAccepted, 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('Receipt(') ..write('receiptId: $receiptId, ') ..write('contactId: $contactId, ') ..write('messageId: $messageId, ') ..write('message: $message, ') ..write('contactWillSendsReceipt: $contactWillSendsReceipt, ') ..write('willBeRetriedByMediaUpload: $willBeRetriedByMediaUpload, ') ..write('markForRetry: $markForRetry, ') ..write('markForRetryAfterAccepted: $markForRetryAfterAccepted, ') ..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, willBeRetriedByMediaUpload, markForRetry, markForRetryAfterAccepted, ackByServerAt, retryCount, lastRetry, createdAt, ); @override bool operator ==(Object other) => identical(this, other) || (other is Receipt && other.receiptId == this.receiptId && other.contactId == this.contactId && other.messageId == this.messageId && $driftBlobEquality.equals(other.message, this.message) && other.contactWillSendsReceipt == this.contactWillSendsReceipt && other.willBeRetriedByMediaUpload == this.willBeRetriedByMediaUpload && other.markForRetry == this.markForRetry && other.markForRetryAfterAccepted == this.markForRetryAfterAccepted && 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 willBeRetriedByMediaUpload; final Value markForRetry; final Value markForRetryAfterAccepted; 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.willBeRetriedByMediaUpload = const Value.absent(), this.markForRetry = const Value.absent(), this.markForRetryAfterAccepted = 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 Uint8List message, this.contactWillSendsReceipt = const Value.absent(), this.willBeRetriedByMediaUpload = const Value.absent(), this.markForRetry = const Value.absent(), this.markForRetryAfterAccepted = 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? willBeRetriedByMediaUpload, Expression? markForRetry, Expression? markForRetryAfterAccepted, 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 (willBeRetriedByMediaUpload != null) 'will_be_retried_by_media_upload': willBeRetriedByMediaUpload, if (markForRetry != null) 'mark_for_retry': markForRetry, if (markForRetryAfterAccepted != null) 'mark_for_retry_after_accepted': markForRetryAfterAccepted, 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? willBeRetriedByMediaUpload, Value? markForRetry, Value? markForRetryAfterAccepted, 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, willBeRetriedByMediaUpload: willBeRetriedByMediaUpload ?? this.willBeRetriedByMediaUpload, markForRetry: markForRetry ?? this.markForRetry, markForRetryAfterAccepted: markForRetryAfterAccepted ?? this.markForRetryAfterAccepted, 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 (willBeRetriedByMediaUpload.present) { map['will_be_retried_by_media_upload'] = Variable( willBeRetriedByMediaUpload.value, ); } if (markForRetry.present) { map['mark_for_retry'] = Variable(markForRetry.value); } if (markForRetryAfterAccepted.present) { map['mark_for_retry_after_accepted'] = Variable( markForRetryAfterAccepted.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('willBeRetriedByMediaUpload: $willBeRetriedByMediaUpload, ') ..write('markForRetry: $markForRetry, ') ..write('markForRetryAfterAccepted: $markForRetryAfterAccepted, ') ..write('ackByServerAt: $ackByServerAt, ') ..write('retryCount: $retryCount, ') ..write('lastRetry: $lastRetry, ') ..write('createdAt: $createdAt, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class $ReceivedReceiptsTable extends ReceivedReceipts with TableInfo<$ReceivedReceiptsTable, ReceivedReceipt> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $ReceivedReceiptsTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _receiptIdMeta = const VerificationMeta( 'receiptId', ); @override late final GeneratedColumn receiptId = GeneratedColumn( 'receipt_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @override List get $columns => [receiptId, createdAt]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'received_receipts'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('receipt_id')) { context.handle( _receiptIdMeta, receiptId.isAcceptableOrUnknown(data['receipt_id']!, _receiptIdMeta), ); } else if (isInserting) { context.missing(_receiptIdMeta); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } return context; } @override Set get $primaryKey => {receiptId}; @override ReceivedReceipt map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return ReceivedReceipt( receiptId: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}receipt_id'], )!, createdAt: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}created_at'], )!, ); } @override $ReceivedReceiptsTable createAlias(String alias) { return $ReceivedReceiptsTable(attachedDatabase, alias); } } class ReceivedReceipt extends DataClass implements Insertable { final String receiptId; final DateTime createdAt; const ReceivedReceipt({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 ReceivedReceipt.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return ReceivedReceipt( 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), }; } ReceivedReceipt copyWith({String? receiptId, DateTime? createdAt}) => ReceivedReceipt( receiptId: receiptId ?? this.receiptId, createdAt: createdAt ?? this.createdAt, ); ReceivedReceipt copyWithCompanion(ReceivedReceiptsCompanion data) { return ReceivedReceipt( receiptId: data.receiptId.present ? data.receiptId.value : this.receiptId, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('ReceivedReceipt(') ..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 ReceivedReceipt && 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 $SignalIdentityKeyStoresTable extends SignalIdentityKeyStores with TableInfo<$SignalIdentityKeyStoresTable, SignalIdentityKeyStore> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $SignalIdentityKeyStoresTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _deviceIdMeta = const VerificationMeta( 'deviceId', ); @override late final GeneratedColumn deviceId = GeneratedColumn( 'device_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, ); static const VerificationMeta _nameMeta = const VerificationMeta('name'); @override late final GeneratedColumn name = GeneratedColumn( 'name', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); static const VerificationMeta _identityKeyMeta = const VerificationMeta( 'identityKey', ); @override late final GeneratedColumn identityKey = GeneratedColumn( 'identity_key', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true, ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @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 VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('device_id')) { context.handle( _deviceIdMeta, deviceId.isAcceptableOrUnknown(data['device_id']!, _deviceIdMeta), ); } else if (isInserting) { context.missing(_deviceIdMeta); } if (data.containsKey('name')) { context.handle( _nameMeta, name.isAcceptableOrUnknown(data['name']!, _nameMeta), ); } else if (isInserting) { context.missing(_nameMeta); } if (data.containsKey('identity_key')) { context.handle( _identityKeyMeta, identityKey.isAcceptableOrUnknown( data['identity_key']!, _identityKeyMeta, ), ); } else if (isInserting) { context.missing(_identityKeyMeta); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } return context; } @override Set get $primaryKey => {deviceId, name}; @override SignalIdentityKeyStore map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return SignalIdentityKeyStore( 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 $SignalIdentityKeyStoresTable createAlias(String alias) { return $SignalIdentityKeyStoresTable(attachedDatabase, alias); } } class SignalIdentityKeyStore extends DataClass implements Insertable { final int deviceId; final String name; final Uint8List identityKey; final DateTime createdAt; const SignalIdentityKeyStore({ 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 SignalIdentityKeyStore.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return SignalIdentityKeyStore( 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), }; } SignalIdentityKeyStore copyWith({ int? deviceId, String? name, Uint8List? identityKey, DateTime? createdAt, }) => SignalIdentityKeyStore( deviceId: deviceId ?? this.deviceId, name: name ?? this.name, identityKey: identityKey ?? this.identityKey, createdAt: createdAt ?? this.createdAt, ); SignalIdentityKeyStore copyWithCompanion( SignalIdentityKeyStoresCompanion data, ) { return SignalIdentityKeyStore( 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('SignalIdentityKeyStore(') ..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 SignalIdentityKeyStore && 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 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 $SignalPreKeyStoresTable extends SignalPreKeyStores with TableInfo<$SignalPreKeyStoresTable, SignalPreKeyStore> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $SignalPreKeyStoresTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _preKeyIdMeta = const VerificationMeta( 'preKeyId', ); @override late final GeneratedColumn preKeyId = GeneratedColumn( 'pre_key_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, ); static const VerificationMeta _preKeyMeta = const VerificationMeta('preKey'); @override late final GeneratedColumn preKey = GeneratedColumn( 'pre_key', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true, ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @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 VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('pre_key_id')) { context.handle( _preKeyIdMeta, preKeyId.isAcceptableOrUnknown(data['pre_key_id']!, _preKeyIdMeta), ); } if (data.containsKey('pre_key')) { context.handle( _preKeyMeta, preKey.isAcceptableOrUnknown(data['pre_key']!, _preKeyMeta), ); } else if (isInserting) { context.missing(_preKeyMeta); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } return context; } @override Set get $primaryKey => {preKeyId}; @override SignalPreKeyStore map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return SignalPreKeyStore( 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 $SignalPreKeyStoresTable createAlias(String alias) { return $SignalPreKeyStoresTable(attachedDatabase, alias); } } class SignalPreKeyStore extends DataClass implements Insertable { final int preKeyId; final Uint8List preKey; final DateTime createdAt; const SignalPreKeyStore({ 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 SignalPreKeyStore.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return SignalPreKeyStore( 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), }; } SignalPreKeyStore copyWith({ int? preKeyId, Uint8List? preKey, DateTime? createdAt, }) => SignalPreKeyStore( preKeyId: preKeyId ?? this.preKeyId, preKey: preKey ?? this.preKey, createdAt: createdAt ?? this.createdAt, ); SignalPreKeyStore copyWithCompanion(SignalPreKeyStoresCompanion data) { return SignalPreKeyStore( 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('SignalPreKeyStore(') ..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 SignalPreKeyStore && 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 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 $SignalSenderKeyStoresTable extends SignalSenderKeyStores with TableInfo<$SignalSenderKeyStoresTable, SignalSenderKeyStore> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $SignalSenderKeyStoresTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _senderKeyNameMeta = const VerificationMeta( 'senderKeyName', ); @override late final GeneratedColumn senderKeyName = GeneratedColumn( 'sender_key_name', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); static const VerificationMeta _senderKeyMeta = const VerificationMeta( 'senderKey', ); @override 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 VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('sender_key_name')) { context.handle( _senderKeyNameMeta, senderKeyName.isAcceptableOrUnknown( data['sender_key_name']!, _senderKeyNameMeta, ), ); } else if (isInserting) { context.missing(_senderKeyNameMeta); } if (data.containsKey('sender_key')) { context.handle( _senderKeyMeta, senderKey.isAcceptableOrUnknown(data['sender_key']!, _senderKeyMeta), ); } else if (isInserting) { context.missing(_senderKeyMeta); } return context; } @override Set get $primaryKey => {senderKeyName}; @override SignalSenderKeyStore map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return SignalSenderKeyStore( senderKeyName: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}sender_key_name'], )!, senderKey: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}sender_key'], )!, ); } @override $SignalSenderKeyStoresTable createAlias(String alias) { return $SignalSenderKeyStoresTable(attachedDatabase, alias); } } class SignalSenderKeyStore extends DataClass implements Insertable { final String senderKeyName; final Uint8List senderKey; const SignalSenderKeyStore({ 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 SignalSenderKeyStore.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return SignalSenderKeyStore( 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), }; } SignalSenderKeyStore copyWith({ String? senderKeyName, Uint8List? senderKey, }) => SignalSenderKeyStore( senderKeyName: senderKeyName ?? this.senderKeyName, senderKey: senderKey ?? this.senderKey, ); SignalSenderKeyStore copyWithCompanion(SignalSenderKeyStoresCompanion data) { return SignalSenderKeyStore( senderKeyName: data.senderKeyName.present ? data.senderKeyName.value : this.senderKeyName, senderKey: data.senderKey.present ? data.senderKey.value : this.senderKey, ); } @override String toString() { return (StringBuffer('SignalSenderKeyStore(') ..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 SignalSenderKeyStore && 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 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 $SignalSessionStoresTable extends SignalSessionStores with TableInfo<$SignalSessionStoresTable, SignalSessionStore> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $SignalSessionStoresTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _deviceIdMeta = const VerificationMeta( 'deviceId', ); @override late final GeneratedColumn deviceId = GeneratedColumn( 'device_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, ); static const VerificationMeta _nameMeta = const VerificationMeta('name'); @override late final GeneratedColumn name = GeneratedColumn( 'name', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); static const VerificationMeta _sessionRecordMeta = const VerificationMeta( 'sessionRecord', ); @override late final GeneratedColumn sessionRecord = GeneratedColumn( 'session_record', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true, ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @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 VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('device_id')) { context.handle( _deviceIdMeta, deviceId.isAcceptableOrUnknown(data['device_id']!, _deviceIdMeta), ); } else if (isInserting) { context.missing(_deviceIdMeta); } if (data.containsKey('name')) { context.handle( _nameMeta, name.isAcceptableOrUnknown(data['name']!, _nameMeta), ); } else if (isInserting) { context.missing(_nameMeta); } if (data.containsKey('session_record')) { context.handle( _sessionRecordMeta, sessionRecord.isAcceptableOrUnknown( data['session_record']!, _sessionRecordMeta, ), ); } else if (isInserting) { context.missing(_sessionRecordMeta); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } return context; } @override Set get $primaryKey => {deviceId, name}; @override SignalSessionStore map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return SignalSessionStore( 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 $SignalSessionStoresTable createAlias(String alias) { return $SignalSessionStoresTable(attachedDatabase, alias); } } class SignalSessionStore extends DataClass implements Insertable { final int deviceId; final String name; final Uint8List sessionRecord; final DateTime createdAt; const SignalSessionStore({ 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 SignalSessionStore.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return SignalSessionStore( 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), }; } SignalSessionStore copyWith({ int? deviceId, String? name, Uint8List? sessionRecord, DateTime? createdAt, }) => SignalSessionStore( deviceId: deviceId ?? this.deviceId, name: name ?? this.name, sessionRecord: sessionRecord ?? this.sessionRecord, createdAt: createdAt ?? this.createdAt, ); SignalSessionStore copyWithCompanion(SignalSessionStoresCompanion data) { return SignalSessionStore( 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('SignalSessionStore(') ..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 SignalSessionStore && 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 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 $SignalSignedPreKeyStoresTable extends SignalSignedPreKeyStores with TableInfo<$SignalSignedPreKeyStoresTable, SignalSignedPreKeyStore> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $SignalSignedPreKeyStoresTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _signedPreKeyIdMeta = const VerificationMeta( 'signedPreKeyId', ); @override late final GeneratedColumn signedPreKeyId = GeneratedColumn( 'signed_pre_key_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, ); static const VerificationMeta _signedPreKeyMeta = const VerificationMeta( 'signedPreKey', ); @override late final GeneratedColumn signedPreKey = GeneratedColumn( 'signed_pre_key', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true, ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @override List get $columns => [ signedPreKeyId, signedPreKey, createdAt, ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'signal_signed_pre_key_stores'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('signed_pre_key_id')) { context.handle( _signedPreKeyIdMeta, signedPreKeyId.isAcceptableOrUnknown( data['signed_pre_key_id']!, _signedPreKeyIdMeta, ), ); } if (data.containsKey('signed_pre_key')) { context.handle( _signedPreKeyMeta, signedPreKey.isAcceptableOrUnknown( data['signed_pre_key']!, _signedPreKeyMeta, ), ); } else if (isInserting) { context.missing(_signedPreKeyMeta); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } return context; } @override Set get $primaryKey => {signedPreKeyId}; @override SignalSignedPreKeyStore map( Map data, { String? tablePrefix, }) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return SignalSignedPreKeyStore( signedPreKeyId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}signed_pre_key_id'], )!, signedPreKey: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}signed_pre_key'], )!, createdAt: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}created_at'], )!, ); } @override $SignalSignedPreKeyStoresTable createAlias(String alias) { return $SignalSignedPreKeyStoresTable(attachedDatabase, alias); } } class SignalSignedPreKeyStore extends DataClass implements Insertable { final int signedPreKeyId; final Uint8List signedPreKey; final DateTime createdAt; const SignalSignedPreKeyStore({ required this.signedPreKeyId, required this.signedPreKey, required this.createdAt, }); @override Map toColumns(bool nullToAbsent) { final map = {}; map['signed_pre_key_id'] = Variable(signedPreKeyId); map['signed_pre_key'] = Variable(signedPreKey); map['created_at'] = Variable(createdAt); return map; } SignalSignedPreKeyStoresCompanion toCompanion(bool nullToAbsent) { return SignalSignedPreKeyStoresCompanion( signedPreKeyId: Value(signedPreKeyId), signedPreKey: Value(signedPreKey), createdAt: Value(createdAt), ); } factory SignalSignedPreKeyStore.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return SignalSignedPreKeyStore( signedPreKeyId: serializer.fromJson(json['signedPreKeyId']), signedPreKey: serializer.fromJson(json['signedPreKey']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'signedPreKeyId': serializer.toJson(signedPreKeyId), 'signedPreKey': serializer.toJson(signedPreKey), 'createdAt': serializer.toJson(createdAt), }; } SignalSignedPreKeyStore copyWith({ int? signedPreKeyId, Uint8List? signedPreKey, DateTime? createdAt, }) => SignalSignedPreKeyStore( signedPreKeyId: signedPreKeyId ?? this.signedPreKeyId, signedPreKey: signedPreKey ?? this.signedPreKey, createdAt: createdAt ?? this.createdAt, ); SignalSignedPreKeyStore copyWithCompanion( SignalSignedPreKeyStoresCompanion data, ) { return SignalSignedPreKeyStore( signedPreKeyId: data.signedPreKeyId.present ? data.signedPreKeyId.value : this.signedPreKeyId, signedPreKey: data.signedPreKey.present ? data.signedPreKey.value : this.signedPreKey, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('SignalSignedPreKeyStore(') ..write('signedPreKeyId: $signedPreKeyId, ') ..write('signedPreKey: $signedPreKey, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash( signedPreKeyId, $driftBlobEquality.hash(signedPreKey), createdAt, ); @override bool operator ==(Object other) => identical(this, other) || (other is SignalSignedPreKeyStore && other.signedPreKeyId == this.signedPreKeyId && $driftBlobEquality.equals(other.signedPreKey, this.signedPreKey) && other.createdAt == this.createdAt); } class SignalSignedPreKeyStoresCompanion extends UpdateCompanion { final Value signedPreKeyId; final Value signedPreKey; final Value createdAt; const SignalSignedPreKeyStoresCompanion({ this.signedPreKeyId = const Value.absent(), this.signedPreKey = const Value.absent(), this.createdAt = const Value.absent(), }); SignalSignedPreKeyStoresCompanion.insert({ this.signedPreKeyId = const Value.absent(), required Uint8List signedPreKey, this.createdAt = const Value.absent(), }) : signedPreKey = Value(signedPreKey); static Insertable custom({ Expression? signedPreKeyId, Expression? signedPreKey, Expression? createdAt, }) { return RawValuesInsertable({ if (signedPreKeyId != null) 'signed_pre_key_id': signedPreKeyId, if (signedPreKey != null) 'signed_pre_key': signedPreKey, if (createdAt != null) 'created_at': createdAt, }); } SignalSignedPreKeyStoresCompanion copyWith({ Value? signedPreKeyId, Value? signedPreKey, Value? createdAt, }) { return SignalSignedPreKeyStoresCompanion( signedPreKeyId: signedPreKeyId ?? this.signedPreKeyId, signedPreKey: signedPreKey ?? this.signedPreKey, createdAt: createdAt ?? this.createdAt, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (signedPreKeyId.present) { map['signed_pre_key_id'] = Variable(signedPreKeyId.value); } if (signedPreKey.present) { map['signed_pre_key'] = Variable(signedPreKey.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } return map; } @override String toString() { return (StringBuffer('SignalSignedPreKeyStoresCompanion(') ..write('signedPreKeyId: $signedPreKeyId, ') ..write('signedPreKey: $signedPreKey, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } } class $MessageActionsTable extends MessageActions with TableInfo<$MessageActionsTable, MessageAction> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $MessageActionsTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _messageIdMeta = const VerificationMeta( 'messageId', ); @override late final GeneratedColumn messageId = GeneratedColumn( 'message_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES messages (message_id) ON DELETE CASCADE', ), ); static const VerificationMeta _contactIdMeta = const VerificationMeta( 'contactId', ); @override late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE', ), ); @override late final GeneratedColumnWithTypeConverter type = GeneratedColumn( 'type', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ).withConverter($MessageActionsTable.$convertertype); static const VerificationMeta _actionAtMeta = const VerificationMeta( 'actionAt', ); @override late final GeneratedColumn actionAt = GeneratedColumn( 'action_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @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 VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('message_id')) { context.handle( _messageIdMeta, messageId.isAcceptableOrUnknown(data['message_id']!, _messageIdMeta), ); } else if (isInserting) { context.missing(_messageIdMeta); } if (data.containsKey('contact_id')) { context.handle( _contactIdMeta, contactId.isAcceptableOrUnknown(data['contact_id']!, _contactIdMeta), ); } else if (isInserting) { context.missing(_contactIdMeta); } if (data.containsKey('action_at')) { context.handle( _actionAtMeta, actionAt.isAcceptableOrUnknown(data['action_at']!, _actionAtMeta), ); } return context; } @override Set get $primaryKey => {messageId, contactId, type}; @override MessageAction map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return MessageAction( messageId: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}message_id'], )!, contactId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}contact_id'], )!, type: $MessageActionsTable.$convertertype.fromSql( attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}type'], )!, ), actionAt: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}action_at'], )!, ); } @override $MessageActionsTable createAlias(String alias) { return $MessageActionsTable(attachedDatabase, alias); } static JsonTypeConverter2 $convertertype = const EnumNameConverter(MessageActionType.values); } class MessageAction extends DataClass implements Insertable { final String messageId; final int contactId; final MessageActionType type; final DateTime actionAt; const MessageAction({ 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( $MessageActionsTable.$convertertype.toSql(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 MessageAction.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return MessageAction( messageId: serializer.fromJson(json['messageId']), contactId: serializer.fromJson(json['contactId']), type: $MessageActionsTable.$convertertype.fromJson( 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( $MessageActionsTable.$convertertype.toJson(type), ), 'actionAt': serializer.toJson(actionAt), }; } MessageAction copyWith({ String? messageId, int? contactId, MessageActionType? type, DateTime? actionAt, }) => MessageAction( messageId: messageId ?? this.messageId, contactId: contactId ?? this.contactId, type: type ?? this.type, actionAt: actionAt ?? this.actionAt, ); MessageAction copyWithCompanion(MessageActionsCompanion data) { return MessageAction( 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('MessageAction(') ..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 MessageAction && 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 MessageActionType 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( $MessageActionsTable.$convertertype.toSql(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 $GroupHistoriesTable extends GroupHistories with TableInfo<$GroupHistoriesTable, GroupHistory> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $GroupHistoriesTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _groupHistoryIdMeta = const VerificationMeta( 'groupHistoryId', ); @override late final GeneratedColumn groupHistoryId = GeneratedColumn( 'group_history_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); static const VerificationMeta _groupIdMeta = const VerificationMeta( 'groupId', ); @override late final GeneratedColumn groupId = GeneratedColumn( 'group_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES "groups" (group_id) ON DELETE CASCADE', ), ); static const VerificationMeta _contactIdMeta = const VerificationMeta( 'contactId', ); @override late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id)', ), ); static const VerificationMeta _affectedContactIdMeta = const VerificationMeta( 'affectedContactId', ); @override late final GeneratedColumn affectedContactId = GeneratedColumn( 'affected_contact_id', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, ); static const VerificationMeta _oldGroupNameMeta = const VerificationMeta( 'oldGroupName', ); @override late final GeneratedColumn oldGroupName = GeneratedColumn( 'old_group_name', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ); static const VerificationMeta _newGroupNameMeta = const VerificationMeta( 'newGroupName', ); @override late final GeneratedColumn newGroupName = GeneratedColumn( 'new_group_name', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ); static const VerificationMeta _newDeleteMessagesAfterMillisecondsMeta = const VerificationMeta('newDeleteMessagesAfterMilliseconds'); @override late final GeneratedColumn newDeleteMessagesAfterMilliseconds = GeneratedColumn( 'new_delete_messages_after_milliseconds', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, ); @override late final GeneratedColumnWithTypeConverter type = GeneratedColumn( 'type', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ).withConverter($GroupHistoriesTable.$convertertype); static const VerificationMeta _actionAtMeta = const VerificationMeta( 'actionAt', ); @override late final GeneratedColumn actionAt = GeneratedColumn( 'action_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @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 VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('group_history_id')) { context.handle( _groupHistoryIdMeta, groupHistoryId.isAcceptableOrUnknown( data['group_history_id']!, _groupHistoryIdMeta, ), ); } else if (isInserting) { context.missing(_groupHistoryIdMeta); } if (data.containsKey('group_id')) { context.handle( _groupIdMeta, groupId.isAcceptableOrUnknown(data['group_id']!, _groupIdMeta), ); } else if (isInserting) { context.missing(_groupIdMeta); } if (data.containsKey('contact_id')) { context.handle( _contactIdMeta, contactId.isAcceptableOrUnknown(data['contact_id']!, _contactIdMeta), ); } if (data.containsKey('affected_contact_id')) { context.handle( _affectedContactIdMeta, affectedContactId.isAcceptableOrUnknown( data['affected_contact_id']!, _affectedContactIdMeta, ), ); } if (data.containsKey('old_group_name')) { context.handle( _oldGroupNameMeta, oldGroupName.isAcceptableOrUnknown( data['old_group_name']!, _oldGroupNameMeta, ), ); } if (data.containsKey('new_group_name')) { context.handle( _newGroupNameMeta, newGroupName.isAcceptableOrUnknown( data['new_group_name']!, _newGroupNameMeta, ), ); } if (data.containsKey('new_delete_messages_after_milliseconds')) { context.handle( _newDeleteMessagesAfterMillisecondsMeta, newDeleteMessagesAfterMilliseconds.isAcceptableOrUnknown( data['new_delete_messages_after_milliseconds']!, _newDeleteMessagesAfterMillisecondsMeta, ), ); } if (data.containsKey('action_at')) { context.handle( _actionAtMeta, actionAt.isAcceptableOrUnknown(data['action_at']!, _actionAtMeta), ); } return context; } @override Set get $primaryKey => {groupHistoryId}; @override GroupHistory map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return GroupHistory( 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: $GroupHistoriesTable.$convertertype.fromSql( attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}type'], )!, ), actionAt: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}action_at'], )!, ); } @override $GroupHistoriesTable createAlias(String alias) { return $GroupHistoriesTable(attachedDatabase, alias); } static JsonTypeConverter2 $convertertype = const EnumNameConverter(GroupActionType.values); } class GroupHistory 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 GroupActionType type; final DateTime actionAt; const GroupHistory({ 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( $GroupHistoriesTable.$convertertype.toSql(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 GroupHistory.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return GroupHistory( 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: $GroupHistoriesTable.$convertertype.fromJson( 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( $GroupHistoriesTable.$convertertype.toJson(type), ), 'actionAt': serializer.toJson(actionAt), }; } GroupHistory 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(), GroupActionType? type, DateTime? actionAt, }) => GroupHistory( 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, ); GroupHistory copyWithCompanion(GroupHistoriesCompanion data) { return GroupHistory( 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('GroupHistory(') ..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 GroupHistory && 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 GroupActionType 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( $GroupHistoriesTable.$convertertype.toSql(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 $KeyVerificationsTable extends KeyVerifications with TableInfo<$KeyVerificationsTable, KeyVerification> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $KeyVerificationsTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _verificationIdMeta = const VerificationMeta( 'verificationId', ); @override late final GeneratedColumn verificationId = GeneratedColumn( 'verification_id', aliasedName, false, hasAutoIncrement: true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'PRIMARY KEY AUTOINCREMENT', ), ); static const VerificationMeta _contactIdMeta = const VerificationMeta( 'contactId', ); @override late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE', ), ); @override late final GeneratedColumnWithTypeConverter type = GeneratedColumn( 'type', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ).withConverter($KeyVerificationsTable.$convertertype); static const VerificationMeta _verifiedByMeta = const VerificationMeta( 'verifiedBy', ); @override late final GeneratedColumn verifiedBy = GeneratedColumn( 'verified_by', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE', ), ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @override List get $columns => [ verificationId, contactId, type, verifiedBy, createdAt, ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'key_verifications'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('verification_id')) { context.handle( _verificationIdMeta, verificationId.isAcceptableOrUnknown( data['verification_id']!, _verificationIdMeta, ), ); } if (data.containsKey('contact_id')) { context.handle( _contactIdMeta, contactId.isAcceptableOrUnknown(data['contact_id']!, _contactIdMeta), ); } else if (isInserting) { context.missing(_contactIdMeta); } if (data.containsKey('verified_by')) { context.handle( _verifiedByMeta, verifiedBy.isAcceptableOrUnknown(data['verified_by']!, _verifiedByMeta), ); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } return context; } @override Set get $primaryKey => {verificationId}; @override KeyVerification map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return KeyVerification( verificationId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}verification_id'], )!, contactId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}contact_id'], )!, type: $KeyVerificationsTable.$convertertype.fromSql( attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}type'], )!, ), verifiedBy: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}verified_by'], ), createdAt: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}created_at'], )!, ); } @override $KeyVerificationsTable createAlias(String alias) { return $KeyVerificationsTable(attachedDatabase, alias); } static JsonTypeConverter2 $convertertype = const EnumNameConverter(VerificationType.values); } class KeyVerification extends DataClass implements Insertable { final int verificationId; final int contactId; final VerificationType type; final int? verifiedBy; final DateTime createdAt; const KeyVerification({ required this.verificationId, required this.contactId, required this.type, this.verifiedBy, required this.createdAt, }); @override Map toColumns(bool nullToAbsent) { final map = {}; map['verification_id'] = Variable(verificationId); map['contact_id'] = Variable(contactId); { map['type'] = Variable( $KeyVerificationsTable.$convertertype.toSql(type), ); } if (!nullToAbsent || verifiedBy != null) { map['verified_by'] = Variable(verifiedBy); } map['created_at'] = Variable(createdAt); return map; } KeyVerificationsCompanion toCompanion(bool nullToAbsent) { return KeyVerificationsCompanion( verificationId: Value(verificationId), contactId: Value(contactId), type: Value(type), verifiedBy: verifiedBy == null && nullToAbsent ? const Value.absent() : Value(verifiedBy), createdAt: Value(createdAt), ); } factory KeyVerification.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return KeyVerification( verificationId: serializer.fromJson(json['verificationId']), contactId: serializer.fromJson(json['contactId']), type: $KeyVerificationsTable.$convertertype.fromJson( serializer.fromJson(json['type']), ), verifiedBy: serializer.fromJson(json['verifiedBy']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'verificationId': serializer.toJson(verificationId), 'contactId': serializer.toJson(contactId), 'type': serializer.toJson( $KeyVerificationsTable.$convertertype.toJson(type), ), 'verifiedBy': serializer.toJson(verifiedBy), 'createdAt': serializer.toJson(createdAt), }; } KeyVerification copyWith({ int? verificationId, int? contactId, VerificationType? type, Value verifiedBy = const Value.absent(), DateTime? createdAt, }) => KeyVerification( verificationId: verificationId ?? this.verificationId, contactId: contactId ?? this.contactId, type: type ?? this.type, verifiedBy: verifiedBy.present ? verifiedBy.value : this.verifiedBy, createdAt: createdAt ?? this.createdAt, ); KeyVerification copyWithCompanion(KeyVerificationsCompanion data) { return KeyVerification( verificationId: data.verificationId.present ? data.verificationId.value : this.verificationId, contactId: data.contactId.present ? data.contactId.value : this.contactId, type: data.type.present ? data.type.value : this.type, verifiedBy: data.verifiedBy.present ? data.verifiedBy.value : this.verifiedBy, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('KeyVerification(') ..write('verificationId: $verificationId, ') ..write('contactId: $contactId, ') ..write('type: $type, ') ..write('verifiedBy: $verifiedBy, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash(verificationId, contactId, type, verifiedBy, createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is KeyVerification && other.verificationId == this.verificationId && other.contactId == this.contactId && other.type == this.type && other.verifiedBy == this.verifiedBy && other.createdAt == this.createdAt); } class KeyVerificationsCompanion extends UpdateCompanion { final Value verificationId; final Value contactId; final Value type; final Value verifiedBy; final Value createdAt; const KeyVerificationsCompanion({ this.verificationId = const Value.absent(), this.contactId = const Value.absent(), this.type = const Value.absent(), this.verifiedBy = const Value.absent(), this.createdAt = const Value.absent(), }); KeyVerificationsCompanion.insert({ this.verificationId = const Value.absent(), required int contactId, required VerificationType type, this.verifiedBy = const Value.absent(), this.createdAt = const Value.absent(), }) : contactId = Value(contactId), type = Value(type); static Insertable custom({ Expression? verificationId, Expression? contactId, Expression? type, Expression? verifiedBy, Expression? createdAt, }) { return RawValuesInsertable({ if (verificationId != null) 'verification_id': verificationId, if (contactId != null) 'contact_id': contactId, if (type != null) 'type': type, if (verifiedBy != null) 'verified_by': verifiedBy, if (createdAt != null) 'created_at': createdAt, }); } KeyVerificationsCompanion copyWith({ Value? verificationId, Value? contactId, Value? type, Value? verifiedBy, Value? createdAt, }) { return KeyVerificationsCompanion( verificationId: verificationId ?? this.verificationId, contactId: contactId ?? this.contactId, type: type ?? this.type, verifiedBy: verifiedBy ?? this.verifiedBy, createdAt: createdAt ?? this.createdAt, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (verificationId.present) { map['verification_id'] = Variable(verificationId.value); } if (contactId.present) { map['contact_id'] = Variable(contactId.value); } if (type.present) { map['type'] = Variable( $KeyVerificationsTable.$convertertype.toSql(type.value), ); } if (verifiedBy.present) { map['verified_by'] = Variable(verifiedBy.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } return map; } @override String toString() { return (StringBuffer('KeyVerificationsCompanion(') ..write('verificationId: $verificationId, ') ..write('contactId: $contactId, ') ..write('type: $type, ') ..write('verifiedBy: $verifiedBy, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } } class $VerificationTokensTable extends VerificationTokens with TableInfo<$VerificationTokensTable, VerificationToken> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $VerificationTokensTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _tokenIdMeta = const VerificationMeta( 'tokenId', ); @override late final GeneratedColumn tokenId = GeneratedColumn( 'token_id', aliasedName, false, hasAutoIncrement: true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'PRIMARY KEY AUTOINCREMENT', ), ); static const VerificationMeta _tokenMeta = const VerificationMeta('token'); @override late final GeneratedColumn token = GeneratedColumn( 'token', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true, ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @override List get $columns => [tokenId, token, createdAt]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'verification_tokens'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('token_id')) { context.handle( _tokenIdMeta, tokenId.isAcceptableOrUnknown(data['token_id']!, _tokenIdMeta), ); } if (data.containsKey('token')) { context.handle( _tokenMeta, token.isAcceptableOrUnknown(data['token']!, _tokenMeta), ); } else if (isInserting) { context.missing(_tokenMeta); } if (data.containsKey('created_at')) { context.handle( _createdAtMeta, createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), ); } return context; } @override Set get $primaryKey => {tokenId}; @override VerificationToken map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return VerificationToken( tokenId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}token_id'], )!, token: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}token'], )!, createdAt: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}created_at'], )!, ); } @override $VerificationTokensTable createAlias(String alias) { return $VerificationTokensTable(attachedDatabase, alias); } } class VerificationToken extends DataClass implements Insertable { final int tokenId; final Uint8List token; final DateTime createdAt; const VerificationToken({ required this.tokenId, required this.token, required this.createdAt, }); @override Map toColumns(bool nullToAbsent) { final map = {}; map['token_id'] = Variable(tokenId); map['token'] = Variable(token); map['created_at'] = Variable(createdAt); return map; } VerificationTokensCompanion toCompanion(bool nullToAbsent) { return VerificationTokensCompanion( tokenId: Value(tokenId), token: Value(token), createdAt: Value(createdAt), ); } factory VerificationToken.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return VerificationToken( tokenId: serializer.fromJson(json['tokenId']), token: serializer.fromJson(json['token']), createdAt: serializer.fromJson(json['createdAt']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'tokenId': serializer.toJson(tokenId), 'token': serializer.toJson(token), 'createdAt': serializer.toJson(createdAt), }; } VerificationToken copyWith({ int? tokenId, Uint8List? token, DateTime? createdAt, }) => VerificationToken( tokenId: tokenId ?? this.tokenId, token: token ?? this.token, createdAt: createdAt ?? this.createdAt, ); VerificationToken copyWithCompanion(VerificationTokensCompanion data) { return VerificationToken( tokenId: data.tokenId.present ? data.tokenId.value : this.tokenId, token: data.token.present ? data.token.value : this.token, createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, ); } @override String toString() { return (StringBuffer('VerificationToken(') ..write('tokenId: $tokenId, ') ..write('token: $token, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } @override int get hashCode => Object.hash(tokenId, $driftBlobEquality.hash(token), createdAt); @override bool operator ==(Object other) => identical(this, other) || (other is VerificationToken && other.tokenId == this.tokenId && $driftBlobEquality.equals(other.token, this.token) && other.createdAt == this.createdAt); } class VerificationTokensCompanion extends UpdateCompanion { final Value tokenId; final Value token; final Value createdAt; const VerificationTokensCompanion({ this.tokenId = const Value.absent(), this.token = const Value.absent(), this.createdAt = const Value.absent(), }); VerificationTokensCompanion.insert({ this.tokenId = const Value.absent(), required Uint8List token, this.createdAt = const Value.absent(), }) : token = Value(token); static Insertable custom({ Expression? tokenId, Expression? token, Expression? createdAt, }) { return RawValuesInsertable({ if (tokenId != null) 'token_id': tokenId, if (token != null) 'token': token, if (createdAt != null) 'created_at': createdAt, }); } VerificationTokensCompanion copyWith({ Value? tokenId, Value? token, Value? createdAt, }) { return VerificationTokensCompanion( tokenId: tokenId ?? this.tokenId, token: token ?? this.token, createdAt: createdAt ?? this.createdAt, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (tokenId.present) { map['token_id'] = Variable(tokenId.value); } if (token.present) { map['token'] = Variable(token.value); } if (createdAt.present) { map['created_at'] = Variable(createdAt.value); } return map; } @override String toString() { return (StringBuffer('VerificationTokensCompanion(') ..write('tokenId: $tokenId, ') ..write('token: $token, ') ..write('createdAt: $createdAt') ..write(')')) .toString(); } } class $UserDiscoveryAnnouncedUsersTable extends UserDiscoveryAnnouncedUsers with TableInfo< $UserDiscoveryAnnouncedUsersTable, UserDiscoveryAnnouncedUser > { @override final GeneratedDatabase attachedDatabase; final String? _alias; $UserDiscoveryAnnouncedUsersTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _announcedUserIdMeta = const VerificationMeta( 'announcedUserId', ); @override late final GeneratedColumn announcedUserId = GeneratedColumn( 'announced_user_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, ); static const VerificationMeta _announcedPublicKeyMeta = const VerificationMeta('announcedPublicKey'); @override late final GeneratedColumn announcedPublicKey = GeneratedColumn( 'announced_public_key', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true, ); static const VerificationMeta _publicIdMeta = const VerificationMeta( 'publicId', ); @override late final GeneratedColumn publicId = GeneratedColumn( 'public_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways('UNIQUE'), ); static const VerificationMeta _usernameMeta = const VerificationMeta( 'username', ); @override late final GeneratedColumn username = GeneratedColumn( 'username', aliasedName, true, type: DriftSqlType.string, requiredDuringInsert: false, ); static const VerificationMeta _wasShownToTheUserMeta = const VerificationMeta( 'wasShownToTheUser', ); @override late final GeneratedColumn wasShownToTheUser = GeneratedColumn( 'was_shown_to_the_user', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("was_shown_to_the_user" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _isHiddenMeta = const VerificationMeta( 'isHidden', ); @override late final GeneratedColumn isHidden = GeneratedColumn( 'is_hidden', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("is_hidden" IN (0, 1))', ), defaultValue: const Constant(false), ); static const VerificationMeta _wasAskedFriendsMeta = const VerificationMeta( 'wasAskedFriends', ); @override late final GeneratedColumn wasAskedFriends = GeneratedColumn( 'was_asked_friends', aliasedName, false, type: DriftSqlType.bool, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'CHECK ("was_asked_friends" IN (0, 1))', ), defaultValue: const Constant(false), ); @override List get $columns => [ announcedUserId, announcedPublicKey, publicId, username, wasShownToTheUser, isHidden, wasAskedFriends, ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'user_discovery_announced_users'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('announced_user_id')) { context.handle( _announcedUserIdMeta, announcedUserId.isAcceptableOrUnknown( data['announced_user_id']!, _announcedUserIdMeta, ), ); } if (data.containsKey('announced_public_key')) { context.handle( _announcedPublicKeyMeta, announcedPublicKey.isAcceptableOrUnknown( data['announced_public_key']!, _announcedPublicKeyMeta, ), ); } else if (isInserting) { context.missing(_announcedPublicKeyMeta); } if (data.containsKey('public_id')) { context.handle( _publicIdMeta, publicId.isAcceptableOrUnknown(data['public_id']!, _publicIdMeta), ); } else if (isInserting) { context.missing(_publicIdMeta); } if (data.containsKey('username')) { context.handle( _usernameMeta, username.isAcceptableOrUnknown(data['username']!, _usernameMeta), ); } if (data.containsKey('was_shown_to_the_user')) { context.handle( _wasShownToTheUserMeta, wasShownToTheUser.isAcceptableOrUnknown( data['was_shown_to_the_user']!, _wasShownToTheUserMeta, ), ); } if (data.containsKey('is_hidden')) { context.handle( _isHiddenMeta, isHidden.isAcceptableOrUnknown(data['is_hidden']!, _isHiddenMeta), ); } if (data.containsKey('was_asked_friends')) { context.handle( _wasAskedFriendsMeta, wasAskedFriends.isAcceptableOrUnknown( data['was_asked_friends']!, _wasAskedFriendsMeta, ), ); } return context; } @override Set get $primaryKey => {announcedUserId}; @override UserDiscoveryAnnouncedUser map( Map data, { String? tablePrefix, }) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return UserDiscoveryAnnouncedUser( announcedUserId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}announced_user_id'], )!, announcedPublicKey: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}announced_public_key'], )!, publicId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}public_id'], )!, username: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}username'], ), wasShownToTheUser: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}was_shown_to_the_user'], )!, isHidden: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}is_hidden'], )!, wasAskedFriends: attachedDatabase.typeMapping.read( DriftSqlType.bool, data['${effectivePrefix}was_asked_friends'], )!, ); } @override $UserDiscoveryAnnouncedUsersTable createAlias(String alias) { return $UserDiscoveryAnnouncedUsersTable(attachedDatabase, alias); } } class UserDiscoveryAnnouncedUser extends DataClass implements Insertable { final int announcedUserId; final Uint8List announcedPublicKey; final int publicId; final String? username; final bool wasShownToTheUser; final bool isHidden; final bool wasAskedFriends; const UserDiscoveryAnnouncedUser({ required this.announcedUserId, required this.announcedPublicKey, required this.publicId, this.username, required this.wasShownToTheUser, required this.isHidden, required this.wasAskedFriends, }); @override Map toColumns(bool nullToAbsent) { final map = {}; map['announced_user_id'] = Variable(announcedUserId); map['announced_public_key'] = Variable(announcedPublicKey); map['public_id'] = Variable(publicId); if (!nullToAbsent || username != null) { map['username'] = Variable(username); } map['was_shown_to_the_user'] = Variable(wasShownToTheUser); map['is_hidden'] = Variable(isHidden); map['was_asked_friends'] = Variable(wasAskedFriends); return map; } UserDiscoveryAnnouncedUsersCompanion toCompanion(bool nullToAbsent) { return UserDiscoveryAnnouncedUsersCompanion( announcedUserId: Value(announcedUserId), announcedPublicKey: Value(announcedPublicKey), publicId: Value(publicId), username: username == null && nullToAbsent ? const Value.absent() : Value(username), wasShownToTheUser: Value(wasShownToTheUser), isHidden: Value(isHidden), wasAskedFriends: Value(wasAskedFriends), ); } factory UserDiscoveryAnnouncedUser.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return UserDiscoveryAnnouncedUser( announcedUserId: serializer.fromJson(json['announcedUserId']), announcedPublicKey: serializer.fromJson( json['announcedPublicKey'], ), publicId: serializer.fromJson(json['publicId']), username: serializer.fromJson(json['username']), wasShownToTheUser: serializer.fromJson(json['wasShownToTheUser']), isHidden: serializer.fromJson(json['isHidden']), wasAskedFriends: serializer.fromJson(json['wasAskedFriends']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'announcedUserId': serializer.toJson(announcedUserId), 'announcedPublicKey': serializer.toJson(announcedPublicKey), 'publicId': serializer.toJson(publicId), 'username': serializer.toJson(username), 'wasShownToTheUser': serializer.toJson(wasShownToTheUser), 'isHidden': serializer.toJson(isHidden), 'wasAskedFriends': serializer.toJson(wasAskedFriends), }; } UserDiscoveryAnnouncedUser copyWith({ int? announcedUserId, Uint8List? announcedPublicKey, int? publicId, Value username = const Value.absent(), bool? wasShownToTheUser, bool? isHidden, bool? wasAskedFriends, }) => UserDiscoveryAnnouncedUser( announcedUserId: announcedUserId ?? this.announcedUserId, announcedPublicKey: announcedPublicKey ?? this.announcedPublicKey, publicId: publicId ?? this.publicId, username: username.present ? username.value : this.username, wasShownToTheUser: wasShownToTheUser ?? this.wasShownToTheUser, isHidden: isHidden ?? this.isHidden, wasAskedFriends: wasAskedFriends ?? this.wasAskedFriends, ); UserDiscoveryAnnouncedUser copyWithCompanion( UserDiscoveryAnnouncedUsersCompanion data, ) { return UserDiscoveryAnnouncedUser( announcedUserId: data.announcedUserId.present ? data.announcedUserId.value : this.announcedUserId, announcedPublicKey: data.announcedPublicKey.present ? data.announcedPublicKey.value : this.announcedPublicKey, publicId: data.publicId.present ? data.publicId.value : this.publicId, username: data.username.present ? data.username.value : this.username, wasShownToTheUser: data.wasShownToTheUser.present ? data.wasShownToTheUser.value : this.wasShownToTheUser, isHidden: data.isHidden.present ? data.isHidden.value : this.isHidden, wasAskedFriends: data.wasAskedFriends.present ? data.wasAskedFriends.value : this.wasAskedFriends, ); } @override String toString() { return (StringBuffer('UserDiscoveryAnnouncedUser(') ..write('announcedUserId: $announcedUserId, ') ..write('announcedPublicKey: $announcedPublicKey, ') ..write('publicId: $publicId, ') ..write('username: $username, ') ..write('wasShownToTheUser: $wasShownToTheUser, ') ..write('isHidden: $isHidden, ') ..write('wasAskedFriends: $wasAskedFriends') ..write(')')) .toString(); } @override int get hashCode => Object.hash( announcedUserId, $driftBlobEquality.hash(announcedPublicKey), publicId, username, wasShownToTheUser, isHidden, wasAskedFriends, ); @override bool operator ==(Object other) => identical(this, other) || (other is UserDiscoveryAnnouncedUser && other.announcedUserId == this.announcedUserId && $driftBlobEquality.equals( other.announcedPublicKey, this.announcedPublicKey, ) && other.publicId == this.publicId && other.username == this.username && other.wasShownToTheUser == this.wasShownToTheUser && other.isHidden == this.isHidden && other.wasAskedFriends == this.wasAskedFriends); } class UserDiscoveryAnnouncedUsersCompanion extends UpdateCompanion { final Value announcedUserId; final Value announcedPublicKey; final Value publicId; final Value username; final Value wasShownToTheUser; final Value isHidden; final Value wasAskedFriends; const UserDiscoveryAnnouncedUsersCompanion({ this.announcedUserId = const Value.absent(), this.announcedPublicKey = const Value.absent(), this.publicId = const Value.absent(), this.username = const Value.absent(), this.wasShownToTheUser = const Value.absent(), this.isHidden = const Value.absent(), this.wasAskedFriends = const Value.absent(), }); UserDiscoveryAnnouncedUsersCompanion.insert({ this.announcedUserId = const Value.absent(), required Uint8List announcedPublicKey, required int publicId, this.username = const Value.absent(), this.wasShownToTheUser = const Value.absent(), this.isHidden = const Value.absent(), this.wasAskedFriends = const Value.absent(), }) : announcedPublicKey = Value(announcedPublicKey), publicId = Value(publicId); static Insertable custom({ Expression? announcedUserId, Expression? announcedPublicKey, Expression? publicId, Expression? username, Expression? wasShownToTheUser, Expression? isHidden, Expression? wasAskedFriends, }) { return RawValuesInsertable({ if (announcedUserId != null) 'announced_user_id': announcedUserId, if (announcedPublicKey != null) 'announced_public_key': announcedPublicKey, if (publicId != null) 'public_id': publicId, if (username != null) 'username': username, if (wasShownToTheUser != null) 'was_shown_to_the_user': wasShownToTheUser, if (isHidden != null) 'is_hidden': isHidden, if (wasAskedFriends != null) 'was_asked_friends': wasAskedFriends, }); } UserDiscoveryAnnouncedUsersCompanion copyWith({ Value? announcedUserId, Value? announcedPublicKey, Value? publicId, Value? username, Value? wasShownToTheUser, Value? isHidden, Value? wasAskedFriends, }) { return UserDiscoveryAnnouncedUsersCompanion( announcedUserId: announcedUserId ?? this.announcedUserId, announcedPublicKey: announcedPublicKey ?? this.announcedPublicKey, publicId: publicId ?? this.publicId, username: username ?? this.username, wasShownToTheUser: wasShownToTheUser ?? this.wasShownToTheUser, isHidden: isHidden ?? this.isHidden, wasAskedFriends: wasAskedFriends ?? this.wasAskedFriends, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (announcedUserId.present) { map['announced_user_id'] = Variable(announcedUserId.value); } if (announcedPublicKey.present) { map['announced_public_key'] = Variable( announcedPublicKey.value, ); } if (publicId.present) { map['public_id'] = Variable(publicId.value); } if (username.present) { map['username'] = Variable(username.value); } if (wasShownToTheUser.present) { map['was_shown_to_the_user'] = Variable(wasShownToTheUser.value); } if (isHidden.present) { map['is_hidden'] = Variable(isHidden.value); } if (wasAskedFriends.present) { map['was_asked_friends'] = Variable(wasAskedFriends.value); } return map; } @override String toString() { return (StringBuffer('UserDiscoveryAnnouncedUsersCompanion(') ..write('announcedUserId: $announcedUserId, ') ..write('announcedPublicKey: $announcedPublicKey, ') ..write('publicId: $publicId, ') ..write('username: $username, ') ..write('wasShownToTheUser: $wasShownToTheUser, ') ..write('isHidden: $isHidden, ') ..write('wasAskedFriends: $wasAskedFriends') ..write(')')) .toString(); } } class $UserDiscoveryUserRelationsTable extends UserDiscoveryUserRelations with TableInfo<$UserDiscoveryUserRelationsTable, UserDiscoveryUserRelation> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $UserDiscoveryUserRelationsTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _announcedUserIdMeta = const VerificationMeta( 'announcedUserId', ); @override late final GeneratedColumn announcedUserId = GeneratedColumn( 'announced_user_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES user_discovery_announced_users (announced_user_id) ON DELETE CASCADE', ), ); static const VerificationMeta _fromContactIdMeta = const VerificationMeta( 'fromContactId', ); @override late final GeneratedColumn fromContactId = GeneratedColumn( 'from_contact_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE', ), ); static const VerificationMeta _publicKeyVerifiedTimestampMeta = const VerificationMeta('publicKeyVerifiedTimestamp'); @override late final GeneratedColumn publicKeyVerifiedTimestamp = GeneratedColumn( 'public_key_verified_timestamp', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); @override List get $columns => [ announcedUserId, fromContactId, publicKeyVerifiedTimestamp, ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'user_discovery_user_relations'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('announced_user_id')) { context.handle( _announcedUserIdMeta, announcedUserId.isAcceptableOrUnknown( data['announced_user_id']!, _announcedUserIdMeta, ), ); } else if (isInserting) { context.missing(_announcedUserIdMeta); } if (data.containsKey('from_contact_id')) { context.handle( _fromContactIdMeta, fromContactId.isAcceptableOrUnknown( data['from_contact_id']!, _fromContactIdMeta, ), ); } else if (isInserting) { context.missing(_fromContactIdMeta); } if (data.containsKey('public_key_verified_timestamp')) { context.handle( _publicKeyVerifiedTimestampMeta, publicKeyVerifiedTimestamp.isAcceptableOrUnknown( data['public_key_verified_timestamp']!, _publicKeyVerifiedTimestampMeta, ), ); } return context; } @override Set get $primaryKey => {announcedUserId, fromContactId}; @override UserDiscoveryUserRelation map( Map data, { String? tablePrefix, }) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return UserDiscoveryUserRelation( announcedUserId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}announced_user_id'], )!, fromContactId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}from_contact_id'], )!, publicKeyVerifiedTimestamp: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}public_key_verified_timestamp'], ), ); } @override $UserDiscoveryUserRelationsTable createAlias(String alias) { return $UserDiscoveryUserRelationsTable(attachedDatabase, alias); } } class UserDiscoveryUserRelation extends DataClass implements Insertable { final int announcedUserId; final int fromContactId; final DateTime? publicKeyVerifiedTimestamp; const UserDiscoveryUserRelation({ required this.announcedUserId, required this.fromContactId, this.publicKeyVerifiedTimestamp, }); @override Map toColumns(bool nullToAbsent) { final map = {}; map['announced_user_id'] = Variable(announcedUserId); map['from_contact_id'] = Variable(fromContactId); if (!nullToAbsent || publicKeyVerifiedTimestamp != null) { map['public_key_verified_timestamp'] = Variable( publicKeyVerifiedTimestamp, ); } return map; } UserDiscoveryUserRelationsCompanion toCompanion(bool nullToAbsent) { return UserDiscoveryUserRelationsCompanion( announcedUserId: Value(announcedUserId), fromContactId: Value(fromContactId), publicKeyVerifiedTimestamp: publicKeyVerifiedTimestamp == null && nullToAbsent ? const Value.absent() : Value(publicKeyVerifiedTimestamp), ); } factory UserDiscoveryUserRelation.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return UserDiscoveryUserRelation( announcedUserId: serializer.fromJson(json['announcedUserId']), fromContactId: serializer.fromJson(json['fromContactId']), publicKeyVerifiedTimestamp: serializer.fromJson( json['publicKeyVerifiedTimestamp'], ), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'announcedUserId': serializer.toJson(announcedUserId), 'fromContactId': serializer.toJson(fromContactId), 'publicKeyVerifiedTimestamp': serializer.toJson( publicKeyVerifiedTimestamp, ), }; } UserDiscoveryUserRelation copyWith({ int? announcedUserId, int? fromContactId, Value publicKeyVerifiedTimestamp = const Value.absent(), }) => UserDiscoveryUserRelation( announcedUserId: announcedUserId ?? this.announcedUserId, fromContactId: fromContactId ?? this.fromContactId, publicKeyVerifiedTimestamp: publicKeyVerifiedTimestamp.present ? publicKeyVerifiedTimestamp.value : this.publicKeyVerifiedTimestamp, ); UserDiscoveryUserRelation copyWithCompanion( UserDiscoveryUserRelationsCompanion data, ) { return UserDiscoveryUserRelation( announcedUserId: data.announcedUserId.present ? data.announcedUserId.value : this.announcedUserId, fromContactId: data.fromContactId.present ? data.fromContactId.value : this.fromContactId, publicKeyVerifiedTimestamp: data.publicKeyVerifiedTimestamp.present ? data.publicKeyVerifiedTimestamp.value : this.publicKeyVerifiedTimestamp, ); } @override String toString() { return (StringBuffer('UserDiscoveryUserRelation(') ..write('announcedUserId: $announcedUserId, ') ..write('fromContactId: $fromContactId, ') ..write('publicKeyVerifiedTimestamp: $publicKeyVerifiedTimestamp') ..write(')')) .toString(); } @override int get hashCode => Object.hash(announcedUserId, fromContactId, publicKeyVerifiedTimestamp); @override bool operator ==(Object other) => identical(this, other) || (other is UserDiscoveryUserRelation && other.announcedUserId == this.announcedUserId && other.fromContactId == this.fromContactId && other.publicKeyVerifiedTimestamp == this.publicKeyVerifiedTimestamp); } class UserDiscoveryUserRelationsCompanion extends UpdateCompanion { final Value announcedUserId; final Value fromContactId; final Value publicKeyVerifiedTimestamp; final Value rowid; const UserDiscoveryUserRelationsCompanion({ this.announcedUserId = const Value.absent(), this.fromContactId = const Value.absent(), this.publicKeyVerifiedTimestamp = const Value.absent(), this.rowid = const Value.absent(), }); UserDiscoveryUserRelationsCompanion.insert({ required int announcedUserId, required int fromContactId, this.publicKeyVerifiedTimestamp = const Value.absent(), this.rowid = const Value.absent(), }) : announcedUserId = Value(announcedUserId), fromContactId = Value(fromContactId); static Insertable custom({ Expression? announcedUserId, Expression? fromContactId, Expression? publicKeyVerifiedTimestamp, Expression? rowid, }) { return RawValuesInsertable({ if (announcedUserId != null) 'announced_user_id': announcedUserId, if (fromContactId != null) 'from_contact_id': fromContactId, if (publicKeyVerifiedTimestamp != null) 'public_key_verified_timestamp': publicKeyVerifiedTimestamp, if (rowid != null) 'rowid': rowid, }); } UserDiscoveryUserRelationsCompanion copyWith({ Value? announcedUserId, Value? fromContactId, Value? publicKeyVerifiedTimestamp, Value? rowid, }) { return UserDiscoveryUserRelationsCompanion( announcedUserId: announcedUserId ?? this.announcedUserId, fromContactId: fromContactId ?? this.fromContactId, publicKeyVerifiedTimestamp: publicKeyVerifiedTimestamp ?? this.publicKeyVerifiedTimestamp, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (announcedUserId.present) { map['announced_user_id'] = Variable(announcedUserId.value); } if (fromContactId.present) { map['from_contact_id'] = Variable(fromContactId.value); } if (publicKeyVerifiedTimestamp.present) { map['public_key_verified_timestamp'] = Variable( publicKeyVerifiedTimestamp.value, ); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('UserDiscoveryUserRelationsCompanion(') ..write('announcedUserId: $announcedUserId, ') ..write('fromContactId: $fromContactId, ') ..write('publicKeyVerifiedTimestamp: $publicKeyVerifiedTimestamp, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class $UserDiscoveryOtherPromotionsTable extends UserDiscoveryOtherPromotions with TableInfo< $UserDiscoveryOtherPromotionsTable, UserDiscoveryOtherPromotion > { @override final GeneratedDatabase attachedDatabase; final String? _alias; $UserDiscoveryOtherPromotionsTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _fromContactIdMeta = const VerificationMeta( 'fromContactId', ); @override late final GeneratedColumn fromContactId = GeneratedColumn( 'from_contact_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE', ), ); static const VerificationMeta _promotionIdMeta = const VerificationMeta( 'promotionId', ); @override late final GeneratedColumn promotionId = GeneratedColumn( 'promotion_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, ); static const VerificationMeta _publicIdMeta = const VerificationMeta( 'publicId', ); @override late final GeneratedColumn publicId = GeneratedColumn( 'public_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, ); static const VerificationMeta _thresholdMeta = const VerificationMeta( 'threshold', ); @override late final GeneratedColumn threshold = GeneratedColumn( 'threshold', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, ); static const VerificationMeta _announcementShareMeta = const VerificationMeta( 'announcementShare', ); @override late final GeneratedColumn announcementShare = GeneratedColumn( 'announcement_share', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true, ); static const VerificationMeta _publicKeyVerifiedTimestampMeta = const VerificationMeta('publicKeyVerifiedTimestamp'); @override late final GeneratedColumn publicKeyVerifiedTimestamp = GeneratedColumn( 'public_key_verified_timestamp', aliasedName, true, type: DriftSqlType.dateTime, requiredDuringInsert: false, ); @override List get $columns => [ fromContactId, promotionId, publicId, threshold, announcementShare, publicKeyVerifiedTimestamp, ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'user_discovery_other_promotions'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('from_contact_id')) { context.handle( _fromContactIdMeta, fromContactId.isAcceptableOrUnknown( data['from_contact_id']!, _fromContactIdMeta, ), ); } else if (isInserting) { context.missing(_fromContactIdMeta); } if (data.containsKey('promotion_id')) { context.handle( _promotionIdMeta, promotionId.isAcceptableOrUnknown( data['promotion_id']!, _promotionIdMeta, ), ); } else if (isInserting) { context.missing(_promotionIdMeta); } if (data.containsKey('public_id')) { context.handle( _publicIdMeta, publicId.isAcceptableOrUnknown(data['public_id']!, _publicIdMeta), ); } else if (isInserting) { context.missing(_publicIdMeta); } if (data.containsKey('threshold')) { context.handle( _thresholdMeta, threshold.isAcceptableOrUnknown(data['threshold']!, _thresholdMeta), ); } else if (isInserting) { context.missing(_thresholdMeta); } if (data.containsKey('announcement_share')) { context.handle( _announcementShareMeta, announcementShare.isAcceptableOrUnknown( data['announcement_share']!, _announcementShareMeta, ), ); } else if (isInserting) { context.missing(_announcementShareMeta); } if (data.containsKey('public_key_verified_timestamp')) { context.handle( _publicKeyVerifiedTimestampMeta, publicKeyVerifiedTimestamp.isAcceptableOrUnknown( data['public_key_verified_timestamp']!, _publicKeyVerifiedTimestampMeta, ), ); } return context; } @override Set get $primaryKey => {fromContactId, publicId}; @override UserDiscoveryOtherPromotion map( Map data, { String? tablePrefix, }) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return UserDiscoveryOtherPromotion( fromContactId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}from_contact_id'], )!, promotionId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}promotion_id'], )!, publicId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}public_id'], )!, threshold: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}threshold'], )!, announcementShare: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}announcement_share'], )!, publicKeyVerifiedTimestamp: attachedDatabase.typeMapping.read( DriftSqlType.dateTime, data['${effectivePrefix}public_key_verified_timestamp'], ), ); } @override $UserDiscoveryOtherPromotionsTable createAlias(String alias) { return $UserDiscoveryOtherPromotionsTable(attachedDatabase, alias); } } class UserDiscoveryOtherPromotion extends DataClass implements Insertable { final int fromContactId; final int promotionId; final int publicId; final int threshold; final Uint8List announcementShare; final DateTime? publicKeyVerifiedTimestamp; const UserDiscoveryOtherPromotion({ required this.fromContactId, required this.promotionId, required this.publicId, required this.threshold, required this.announcementShare, this.publicKeyVerifiedTimestamp, }); @override Map toColumns(bool nullToAbsent) { final map = {}; map['from_contact_id'] = Variable(fromContactId); map['promotion_id'] = Variable(promotionId); map['public_id'] = Variable(publicId); map['threshold'] = Variable(threshold); map['announcement_share'] = Variable(announcementShare); if (!nullToAbsent || publicKeyVerifiedTimestamp != null) { map['public_key_verified_timestamp'] = Variable( publicKeyVerifiedTimestamp, ); } return map; } UserDiscoveryOtherPromotionsCompanion toCompanion(bool nullToAbsent) { return UserDiscoveryOtherPromotionsCompanion( fromContactId: Value(fromContactId), promotionId: Value(promotionId), publicId: Value(publicId), threshold: Value(threshold), announcementShare: Value(announcementShare), publicKeyVerifiedTimestamp: publicKeyVerifiedTimestamp == null && nullToAbsent ? const Value.absent() : Value(publicKeyVerifiedTimestamp), ); } factory UserDiscoveryOtherPromotion.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return UserDiscoveryOtherPromotion( fromContactId: serializer.fromJson(json['fromContactId']), promotionId: serializer.fromJson(json['promotionId']), publicId: serializer.fromJson(json['publicId']), threshold: serializer.fromJson(json['threshold']), announcementShare: serializer.fromJson( json['announcementShare'], ), publicKeyVerifiedTimestamp: serializer.fromJson( json['publicKeyVerifiedTimestamp'], ), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'fromContactId': serializer.toJson(fromContactId), 'promotionId': serializer.toJson(promotionId), 'publicId': serializer.toJson(publicId), 'threshold': serializer.toJson(threshold), 'announcementShare': serializer.toJson(announcementShare), 'publicKeyVerifiedTimestamp': serializer.toJson( publicKeyVerifiedTimestamp, ), }; } UserDiscoveryOtherPromotion copyWith({ int? fromContactId, int? promotionId, int? publicId, int? threshold, Uint8List? announcementShare, Value publicKeyVerifiedTimestamp = const Value.absent(), }) => UserDiscoveryOtherPromotion( fromContactId: fromContactId ?? this.fromContactId, promotionId: promotionId ?? this.promotionId, publicId: publicId ?? this.publicId, threshold: threshold ?? this.threshold, announcementShare: announcementShare ?? this.announcementShare, publicKeyVerifiedTimestamp: publicKeyVerifiedTimestamp.present ? publicKeyVerifiedTimestamp.value : this.publicKeyVerifiedTimestamp, ); UserDiscoveryOtherPromotion copyWithCompanion( UserDiscoveryOtherPromotionsCompanion data, ) { return UserDiscoveryOtherPromotion( fromContactId: data.fromContactId.present ? data.fromContactId.value : this.fromContactId, promotionId: data.promotionId.present ? data.promotionId.value : this.promotionId, publicId: data.publicId.present ? data.publicId.value : this.publicId, threshold: data.threshold.present ? data.threshold.value : this.threshold, announcementShare: data.announcementShare.present ? data.announcementShare.value : this.announcementShare, publicKeyVerifiedTimestamp: data.publicKeyVerifiedTimestamp.present ? data.publicKeyVerifiedTimestamp.value : this.publicKeyVerifiedTimestamp, ); } @override String toString() { return (StringBuffer('UserDiscoveryOtherPromotion(') ..write('fromContactId: $fromContactId, ') ..write('promotionId: $promotionId, ') ..write('publicId: $publicId, ') ..write('threshold: $threshold, ') ..write('announcementShare: $announcementShare, ') ..write('publicKeyVerifiedTimestamp: $publicKeyVerifiedTimestamp') ..write(')')) .toString(); } @override int get hashCode => Object.hash( fromContactId, promotionId, publicId, threshold, $driftBlobEquality.hash(announcementShare), publicKeyVerifiedTimestamp, ); @override bool operator ==(Object other) => identical(this, other) || (other is UserDiscoveryOtherPromotion && other.fromContactId == this.fromContactId && other.promotionId == this.promotionId && other.publicId == this.publicId && other.threshold == this.threshold && $driftBlobEquality.equals( other.announcementShare, this.announcementShare, ) && other.publicKeyVerifiedTimestamp == this.publicKeyVerifiedTimestamp); } class UserDiscoveryOtherPromotionsCompanion extends UpdateCompanion { final Value fromContactId; final Value promotionId; final Value publicId; final Value threshold; final Value announcementShare; final Value publicKeyVerifiedTimestamp; final Value rowid; const UserDiscoveryOtherPromotionsCompanion({ this.fromContactId = const Value.absent(), this.promotionId = const Value.absent(), this.publicId = const Value.absent(), this.threshold = const Value.absent(), this.announcementShare = const Value.absent(), this.publicKeyVerifiedTimestamp = const Value.absent(), this.rowid = const Value.absent(), }); UserDiscoveryOtherPromotionsCompanion.insert({ required int fromContactId, required int promotionId, required int publicId, required int threshold, required Uint8List announcementShare, this.publicKeyVerifiedTimestamp = const Value.absent(), this.rowid = const Value.absent(), }) : fromContactId = Value(fromContactId), promotionId = Value(promotionId), publicId = Value(publicId), threshold = Value(threshold), announcementShare = Value(announcementShare); static Insertable custom({ Expression? fromContactId, Expression? promotionId, Expression? publicId, Expression? threshold, Expression? announcementShare, Expression? publicKeyVerifiedTimestamp, Expression? rowid, }) { return RawValuesInsertable({ if (fromContactId != null) 'from_contact_id': fromContactId, if (promotionId != null) 'promotion_id': promotionId, if (publicId != null) 'public_id': publicId, if (threshold != null) 'threshold': threshold, if (announcementShare != null) 'announcement_share': announcementShare, if (publicKeyVerifiedTimestamp != null) 'public_key_verified_timestamp': publicKeyVerifiedTimestamp, if (rowid != null) 'rowid': rowid, }); } UserDiscoveryOtherPromotionsCompanion copyWith({ Value? fromContactId, Value? promotionId, Value? publicId, Value? threshold, Value? announcementShare, Value? publicKeyVerifiedTimestamp, Value? rowid, }) { return UserDiscoveryOtherPromotionsCompanion( fromContactId: fromContactId ?? this.fromContactId, promotionId: promotionId ?? this.promotionId, publicId: publicId ?? this.publicId, threshold: threshold ?? this.threshold, announcementShare: announcementShare ?? this.announcementShare, publicKeyVerifiedTimestamp: publicKeyVerifiedTimestamp ?? this.publicKeyVerifiedTimestamp, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (fromContactId.present) { map['from_contact_id'] = Variable(fromContactId.value); } if (promotionId.present) { map['promotion_id'] = Variable(promotionId.value); } if (publicId.present) { map['public_id'] = Variable(publicId.value); } if (threshold.present) { map['threshold'] = Variable(threshold.value); } if (announcementShare.present) { map['announcement_share'] = Variable(announcementShare.value); } if (publicKeyVerifiedTimestamp.present) { map['public_key_verified_timestamp'] = Variable( publicKeyVerifiedTimestamp.value, ); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('UserDiscoveryOtherPromotionsCompanion(') ..write('fromContactId: $fromContactId, ') ..write('promotionId: $promotionId, ') ..write('publicId: $publicId, ') ..write('threshold: $threshold, ') ..write('announcementShare: $announcementShare, ') ..write('publicKeyVerifiedTimestamp: $publicKeyVerifiedTimestamp, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class $UserDiscoveryOwnPromotionsTable extends UserDiscoveryOwnPromotions with TableInfo<$UserDiscoveryOwnPromotionsTable, UserDiscoveryOwnPromotion> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $UserDiscoveryOwnPromotionsTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _versionIdMeta = const VerificationMeta( 'versionId', ); @override late final GeneratedColumn versionId = GeneratedColumn( 'version_id', aliasedName, false, hasAutoIncrement: true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'PRIMARY KEY AUTOINCREMENT', ), ); static const VerificationMeta _contactIdMeta = const VerificationMeta( 'contactId', ); @override late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE', ), ); static const VerificationMeta _promotionMeta = const VerificationMeta( 'promotion', ); @override late final GeneratedColumn promotion = GeneratedColumn( 'promotion', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true, ); @override List get $columns => [versionId, contactId, promotion]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'user_discovery_own_promotions'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('version_id')) { context.handle( _versionIdMeta, versionId.isAcceptableOrUnknown(data['version_id']!, _versionIdMeta), ); } if (data.containsKey('contact_id')) { context.handle( _contactIdMeta, contactId.isAcceptableOrUnknown(data['contact_id']!, _contactIdMeta), ); } else if (isInserting) { context.missing(_contactIdMeta); } if (data.containsKey('promotion')) { context.handle( _promotionMeta, promotion.isAcceptableOrUnknown(data['promotion']!, _promotionMeta), ); } else if (isInserting) { context.missing(_promotionMeta); } return context; } @override Set get $primaryKey => {versionId}; @override UserDiscoveryOwnPromotion map( Map data, { String? tablePrefix, }) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return UserDiscoveryOwnPromotion( versionId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}version_id'], )!, contactId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}contact_id'], )!, promotion: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}promotion'], )!, ); } @override $UserDiscoveryOwnPromotionsTable createAlias(String alias) { return $UserDiscoveryOwnPromotionsTable(attachedDatabase, alias); } } class UserDiscoveryOwnPromotion extends DataClass implements Insertable { final int versionId; final int contactId; final Uint8List promotion; const UserDiscoveryOwnPromotion({ required this.versionId, required this.contactId, required this.promotion, }); @override Map toColumns(bool nullToAbsent) { final map = {}; map['version_id'] = Variable(versionId); map['contact_id'] = Variable(contactId); map['promotion'] = Variable(promotion); return map; } UserDiscoveryOwnPromotionsCompanion toCompanion(bool nullToAbsent) { return UserDiscoveryOwnPromotionsCompanion( versionId: Value(versionId), contactId: Value(contactId), promotion: Value(promotion), ); } factory UserDiscoveryOwnPromotion.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return UserDiscoveryOwnPromotion( versionId: serializer.fromJson(json['versionId']), contactId: serializer.fromJson(json['contactId']), promotion: serializer.fromJson(json['promotion']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'versionId': serializer.toJson(versionId), 'contactId': serializer.toJson(contactId), 'promotion': serializer.toJson(promotion), }; } UserDiscoveryOwnPromotion copyWith({ int? versionId, int? contactId, Uint8List? promotion, }) => UserDiscoveryOwnPromotion( versionId: versionId ?? this.versionId, contactId: contactId ?? this.contactId, promotion: promotion ?? this.promotion, ); UserDiscoveryOwnPromotion copyWithCompanion( UserDiscoveryOwnPromotionsCompanion data, ) { return UserDiscoveryOwnPromotion( versionId: data.versionId.present ? data.versionId.value : this.versionId, contactId: data.contactId.present ? data.contactId.value : this.contactId, promotion: data.promotion.present ? data.promotion.value : this.promotion, ); } @override String toString() { return (StringBuffer('UserDiscoveryOwnPromotion(') ..write('versionId: $versionId, ') ..write('contactId: $contactId, ') ..write('promotion: $promotion') ..write(')')) .toString(); } @override int get hashCode => Object.hash(versionId, contactId, $driftBlobEquality.hash(promotion)); @override bool operator ==(Object other) => identical(this, other) || (other is UserDiscoveryOwnPromotion && other.versionId == this.versionId && other.contactId == this.contactId && $driftBlobEquality.equals(other.promotion, this.promotion)); } class UserDiscoveryOwnPromotionsCompanion extends UpdateCompanion { final Value versionId; final Value contactId; final Value promotion; const UserDiscoveryOwnPromotionsCompanion({ this.versionId = const Value.absent(), this.contactId = const Value.absent(), this.promotion = const Value.absent(), }); UserDiscoveryOwnPromotionsCompanion.insert({ this.versionId = const Value.absent(), required int contactId, required Uint8List promotion, }) : contactId = Value(contactId), promotion = Value(promotion); static Insertable custom({ Expression? versionId, Expression? contactId, Expression? promotion, }) { return RawValuesInsertable({ if (versionId != null) 'version_id': versionId, if (contactId != null) 'contact_id': contactId, if (promotion != null) 'promotion': promotion, }); } UserDiscoveryOwnPromotionsCompanion copyWith({ Value? versionId, Value? contactId, Value? promotion, }) { return UserDiscoveryOwnPromotionsCompanion( versionId: versionId ?? this.versionId, contactId: contactId ?? this.contactId, promotion: promotion ?? this.promotion, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (versionId.present) { map['version_id'] = Variable(versionId.value); } if (contactId.present) { map['contact_id'] = Variable(contactId.value); } if (promotion.present) { map['promotion'] = Variable(promotion.value); } return map; } @override String toString() { return (StringBuffer('UserDiscoveryOwnPromotionsCompanion(') ..write('versionId: $versionId, ') ..write('contactId: $contactId, ') ..write('promotion: $promotion') ..write(')')) .toString(); } } class $UserDiscoverySharesTable extends UserDiscoveryShares with TableInfo<$UserDiscoverySharesTable, UserDiscoveryShare> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $UserDiscoverySharesTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _shareIdMeta = const VerificationMeta( 'shareId', ); @override late final GeneratedColumn shareId = GeneratedColumn( 'share_id', aliasedName, false, hasAutoIncrement: true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'PRIMARY KEY AUTOINCREMENT', ), ); static const VerificationMeta _shareMeta = const VerificationMeta('share'); @override late final GeneratedColumn share = GeneratedColumn( 'share', aliasedName, false, type: DriftSqlType.blob, requiredDuringInsert: true, ); static const VerificationMeta _contactIdMeta = const VerificationMeta( 'contactId', ); @override late final GeneratedColumn contactId = GeneratedColumn( 'contact_id', aliasedName, true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES contacts (user_id) ON DELETE CASCADE', ), ); @override List get $columns => [shareId, share, contactId]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'user_discovery_shares'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('share_id')) { context.handle( _shareIdMeta, shareId.isAcceptableOrUnknown(data['share_id']!, _shareIdMeta), ); } if (data.containsKey('share')) { context.handle( _shareMeta, share.isAcceptableOrUnknown(data['share']!, _shareMeta), ); } else if (isInserting) { context.missing(_shareMeta); } if (data.containsKey('contact_id')) { context.handle( _contactIdMeta, contactId.isAcceptableOrUnknown(data['contact_id']!, _contactIdMeta), ); } return context; } @override Set get $primaryKey => {shareId}; @override UserDiscoveryShare map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return UserDiscoveryShare( shareId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}share_id'], )!, share: attachedDatabase.typeMapping.read( DriftSqlType.blob, data['${effectivePrefix}share'], )!, contactId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}contact_id'], ), ); } @override $UserDiscoverySharesTable createAlias(String alias) { return $UserDiscoverySharesTable(attachedDatabase, alias); } } class UserDiscoveryShare extends DataClass implements Insertable { final int shareId; final Uint8List share; final int? contactId; const UserDiscoveryShare({ required this.shareId, required this.share, this.contactId, }); @override Map toColumns(bool nullToAbsent) { final map = {}; map['share_id'] = Variable(shareId); map['share'] = Variable(share); if (!nullToAbsent || contactId != null) { map['contact_id'] = Variable(contactId); } return map; } UserDiscoverySharesCompanion toCompanion(bool nullToAbsent) { return UserDiscoverySharesCompanion( shareId: Value(shareId), share: Value(share), contactId: contactId == null && nullToAbsent ? const Value.absent() : Value(contactId), ); } factory UserDiscoveryShare.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return UserDiscoveryShare( shareId: serializer.fromJson(json['shareId']), share: serializer.fromJson(json['share']), contactId: serializer.fromJson(json['contactId']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'shareId': serializer.toJson(shareId), 'share': serializer.toJson(share), 'contactId': serializer.toJson(contactId), }; } UserDiscoveryShare copyWith({ int? shareId, Uint8List? share, Value contactId = const Value.absent(), }) => UserDiscoveryShare( shareId: shareId ?? this.shareId, share: share ?? this.share, contactId: contactId.present ? contactId.value : this.contactId, ); UserDiscoveryShare copyWithCompanion(UserDiscoverySharesCompanion data) { return UserDiscoveryShare( shareId: data.shareId.present ? data.shareId.value : this.shareId, share: data.share.present ? data.share.value : this.share, contactId: data.contactId.present ? data.contactId.value : this.contactId, ); } @override String toString() { return (StringBuffer('UserDiscoveryShare(') ..write('shareId: $shareId, ') ..write('share: $share, ') ..write('contactId: $contactId') ..write(')')) .toString(); } @override int get hashCode => Object.hash(shareId, $driftBlobEquality.hash(share), contactId); @override bool operator ==(Object other) => identical(this, other) || (other is UserDiscoveryShare && other.shareId == this.shareId && $driftBlobEquality.equals(other.share, this.share) && other.contactId == this.contactId); } class UserDiscoverySharesCompanion extends UpdateCompanion { final Value shareId; final Value share; final Value contactId; const UserDiscoverySharesCompanion({ this.shareId = const Value.absent(), this.share = const Value.absent(), this.contactId = const Value.absent(), }); UserDiscoverySharesCompanion.insert({ this.shareId = const Value.absent(), required Uint8List share, this.contactId = const Value.absent(), }) : share = Value(share); static Insertable custom({ Expression? shareId, Expression? share, Expression? contactId, }) { return RawValuesInsertable({ if (shareId != null) 'share_id': shareId, if (share != null) 'share': share, if (contactId != null) 'contact_id': contactId, }); } UserDiscoverySharesCompanion copyWith({ Value? shareId, Value? share, Value? contactId, }) { return UserDiscoverySharesCompanion( shareId: shareId ?? this.shareId, share: share ?? this.share, contactId: contactId ?? this.contactId, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (shareId.present) { map['share_id'] = Variable(shareId.value); } if (share.present) { map['share'] = Variable(share.value); } if (contactId.present) { map['contact_id'] = Variable(contactId.value); } return map; } @override String toString() { return (StringBuffer('UserDiscoverySharesCompanion(') ..write('shareId: $shareId, ') ..write('share: $share, ') ..write('contactId: $contactId') ..write(')')) .toString(); } } class $ShortcutsTable extends Shortcuts with TableInfo<$ShortcutsTable, Shortcut> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $ShortcutsTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _idMeta = const VerificationMeta('id'); @override late final GeneratedColumn id = GeneratedColumn( 'id', aliasedName, false, hasAutoIncrement: true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'PRIMARY KEY AUTOINCREMENT', ), ); static const VerificationMeta _emojiMeta = const VerificationMeta('emoji'); @override late final GeneratedColumn emoji = GeneratedColumn( 'emoji', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways('UNIQUE'), ); static const VerificationMeta _usageCounterMeta = const VerificationMeta( 'usageCounter', ); @override late final GeneratedColumn usageCounter = GeneratedColumn( 'usage_counter', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: false, defaultValue: const Constant(0), ); @override List get $columns => [id, emoji, usageCounter]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'shortcuts'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('id')) { context.handle(_idMeta, id.isAcceptableOrUnknown(data['id']!, _idMeta)); } if (data.containsKey('emoji')) { context.handle( _emojiMeta, emoji.isAcceptableOrUnknown(data['emoji']!, _emojiMeta), ); } else if (isInserting) { context.missing(_emojiMeta); } if (data.containsKey('usage_counter')) { context.handle( _usageCounterMeta, usageCounter.isAcceptableOrUnknown( data['usage_counter']!, _usageCounterMeta, ), ); } return context; } @override Set get $primaryKey => {id}; @override Shortcut map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return Shortcut( id: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}id'], )!, emoji: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}emoji'], )!, usageCounter: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}usage_counter'], )!, ); } @override $ShortcutsTable createAlias(String alias) { return $ShortcutsTable(attachedDatabase, alias); } } class Shortcut extends DataClass implements Insertable { final int id; final String emoji; final int usageCounter; const Shortcut({ required this.id, required this.emoji, required this.usageCounter, }); @override Map toColumns(bool nullToAbsent) { final map = {}; map['id'] = Variable(id); map['emoji'] = Variable(emoji); map['usage_counter'] = Variable(usageCounter); return map; } ShortcutsCompanion toCompanion(bool nullToAbsent) { return ShortcutsCompanion( id: Value(id), emoji: Value(emoji), usageCounter: Value(usageCounter), ); } factory Shortcut.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return Shortcut( id: serializer.fromJson(json['id']), emoji: serializer.fromJson(json['emoji']), usageCounter: serializer.fromJson(json['usageCounter']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'id': serializer.toJson(id), 'emoji': serializer.toJson(emoji), 'usageCounter': serializer.toJson(usageCounter), }; } Shortcut copyWith({int? id, String? emoji, int? usageCounter}) => Shortcut( id: id ?? this.id, emoji: emoji ?? this.emoji, usageCounter: usageCounter ?? this.usageCounter, ); Shortcut copyWithCompanion(ShortcutsCompanion data) { return Shortcut( id: data.id.present ? data.id.value : this.id, emoji: data.emoji.present ? data.emoji.value : this.emoji, usageCounter: data.usageCounter.present ? data.usageCounter.value : this.usageCounter, ); } @override String toString() { return (StringBuffer('Shortcut(') ..write('id: $id, ') ..write('emoji: $emoji, ') ..write('usageCounter: $usageCounter') ..write(')')) .toString(); } @override int get hashCode => Object.hash(id, emoji, usageCounter); @override bool operator ==(Object other) => identical(this, other) || (other is Shortcut && other.id == this.id && other.emoji == this.emoji && other.usageCounter == this.usageCounter); } class ShortcutsCompanion extends UpdateCompanion { final Value id; final Value emoji; final Value usageCounter; const ShortcutsCompanion({ this.id = const Value.absent(), this.emoji = const Value.absent(), this.usageCounter = const Value.absent(), }); ShortcutsCompanion.insert({ this.id = const Value.absent(), required String emoji, this.usageCounter = const Value.absent(), }) : emoji = Value(emoji); static Insertable custom({ Expression? id, Expression? emoji, Expression? usageCounter, }) { return RawValuesInsertable({ if (id != null) 'id': id, if (emoji != null) 'emoji': emoji, if (usageCounter != null) 'usage_counter': usageCounter, }); } ShortcutsCompanion copyWith({ Value? id, Value? emoji, Value? usageCounter, }) { return ShortcutsCompanion( id: id ?? this.id, emoji: emoji ?? this.emoji, usageCounter: usageCounter ?? this.usageCounter, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (id.present) { map['id'] = Variable(id.value); } if (emoji.present) { map['emoji'] = Variable(emoji.value); } if (usageCounter.present) { map['usage_counter'] = Variable(usageCounter.value); } return map; } @override String toString() { return (StringBuffer('ShortcutsCompanion(') ..write('id: $id, ') ..write('emoji: $emoji, ') ..write('usageCounter: $usageCounter') ..write(')')) .toString(); } } class $ShortcutMembersTable extends ShortcutMembers with TableInfo<$ShortcutMembersTable, ShortcutMember> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $ShortcutMembersTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _shortcutIdMeta = const VerificationMeta( 'shortcutId', ); @override late final GeneratedColumn shortcutId = GeneratedColumn( 'shortcut_id', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES shortcuts (id) ON DELETE CASCADE', ), ); static const VerificationMeta _groupIdMeta = const VerificationMeta( 'groupId', ); @override late final GeneratedColumn groupId = GeneratedColumn( 'group_id', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, defaultConstraints: GeneratedColumn.constraintIsAlways( 'REFERENCES "groups" (group_id) ON DELETE CASCADE', ), ); @override List get $columns => [shortcutId, groupId]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'shortcut_members'; @override VerificationContext validateIntegrity( Insertable instance, { bool isInserting = false, }) { final context = VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('shortcut_id')) { context.handle( _shortcutIdMeta, shortcutId.isAcceptableOrUnknown(data['shortcut_id']!, _shortcutIdMeta), ); } else if (isInserting) { context.missing(_shortcutIdMeta); } if (data.containsKey('group_id')) { context.handle( _groupIdMeta, groupId.isAcceptableOrUnknown(data['group_id']!, _groupIdMeta), ); } else if (isInserting) { context.missing(_groupIdMeta); } return context; } @override Set get $primaryKey => {shortcutId, groupId}; @override ShortcutMember map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return ShortcutMember( shortcutId: attachedDatabase.typeMapping.read( DriftSqlType.int, data['${effectivePrefix}shortcut_id'], )!, groupId: attachedDatabase.typeMapping.read( DriftSqlType.string, data['${effectivePrefix}group_id'], )!, ); } @override $ShortcutMembersTable createAlias(String alias) { return $ShortcutMembersTable(attachedDatabase, alias); } } class ShortcutMember extends DataClass implements Insertable { final int shortcutId; final String groupId; const ShortcutMember({required this.shortcutId, required this.groupId}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['shortcut_id'] = Variable(shortcutId); map['group_id'] = Variable(groupId); return map; } ShortcutMembersCompanion toCompanion(bool nullToAbsent) { return ShortcutMembersCompanion( shortcutId: Value(shortcutId), groupId: Value(groupId), ); } factory ShortcutMember.fromJson( Map json, { ValueSerializer? serializer, }) { serializer ??= driftRuntimeOptions.defaultSerializer; return ShortcutMember( shortcutId: serializer.fromJson(json['shortcutId']), groupId: serializer.fromJson(json['groupId']), ); } @override Map toJson({ValueSerializer? serializer}) { serializer ??= driftRuntimeOptions.defaultSerializer; return { 'shortcutId': serializer.toJson(shortcutId), 'groupId': serializer.toJson(groupId), }; } ShortcutMember copyWith({int? shortcutId, String? groupId}) => ShortcutMember( shortcutId: shortcutId ?? this.shortcutId, groupId: groupId ?? this.groupId, ); ShortcutMember copyWithCompanion(ShortcutMembersCompanion data) { return ShortcutMember( shortcutId: data.shortcutId.present ? data.shortcutId.value : this.shortcutId, groupId: data.groupId.present ? data.groupId.value : this.groupId, ); } @override String toString() { return (StringBuffer('ShortcutMember(') ..write('shortcutId: $shortcutId, ') ..write('groupId: $groupId') ..write(')')) .toString(); } @override int get hashCode => Object.hash(shortcutId, groupId); @override bool operator ==(Object other) => identical(this, other) || (other is ShortcutMember && other.shortcutId == this.shortcutId && other.groupId == this.groupId); } class ShortcutMembersCompanion extends UpdateCompanion { final Value shortcutId; final Value groupId; final Value rowid; const ShortcutMembersCompanion({ this.shortcutId = const Value.absent(), this.groupId = const Value.absent(), this.rowid = const Value.absent(), }); ShortcutMembersCompanion.insert({ required int shortcutId, required String groupId, this.rowid = const Value.absent(), }) : shortcutId = Value(shortcutId), groupId = Value(groupId); static Insertable custom({ Expression? shortcutId, Expression? groupId, Expression? rowid, }) { return RawValuesInsertable({ if (shortcutId != null) 'shortcut_id': shortcutId, if (groupId != null) 'group_id': groupId, if (rowid != null) 'rowid': rowid, }); } ShortcutMembersCompanion copyWith({ Value? shortcutId, Value? groupId, Value? rowid, }) { return ShortcutMembersCompanion( shortcutId: shortcutId ?? this.shortcutId, groupId: groupId ?? this.groupId, rowid: rowid ?? this.rowid, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (shortcutId.present) { map['shortcut_id'] = Variable(shortcutId.value); } if (groupId.present) { map['group_id'] = Variable(groupId.value); } if (rowid.present) { map['rowid'] = Variable(rowid.value); } return map; } @override String toString() { return (StringBuffer('ShortcutMembersCompanion(') ..write('shortcutId: $shortcutId, ') ..write('groupId: $groupId, ') ..write('rowid: $rowid') ..write(')')) .toString(); } } class $LabelsTable extends Labels with TableInfo<$LabelsTable, Label> { @override final GeneratedDatabase attachedDatabase; final String? _alias; $LabelsTable(this.attachedDatabase, [this._alias]); static const VerificationMeta _idMeta = const VerificationMeta('id'); @override late final GeneratedColumn id = GeneratedColumn( 'id', aliasedName, false, hasAutoIncrement: true, type: DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: GeneratedColumn.constraintIsAlways( 'PRIMARY KEY AUTOINCREMENT', ), ); static const VerificationMeta _nameMeta = const VerificationMeta('name'); @override late final GeneratedColumn name = GeneratedColumn( 'name', aliasedName, false, type: DriftSqlType.string, requiredDuringInsert: true, ); static const VerificationMeta _textColorMeta = const VerificationMeta( 'textColor', ); @override late final GeneratedColumn textColor = GeneratedColumn( 'text_color', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, ); static const VerificationMeta _backgroundColorMeta = const VerificationMeta( 'backgroundColor', ); @override late final GeneratedColumn backgroundColor = GeneratedColumn( 'background_color', aliasedName, false, type: DriftSqlType.int, requiredDuringInsert: true, ); static const VerificationMeta _createdAtMeta = const VerificationMeta( 'createdAt', ); @override late final GeneratedColumn createdAt = GeneratedColumn( 'created_at', aliasedName, false, type: DriftSqlType.dateTime, requiredDuringInsert: false, defaultValue: currentDateAndTime, ); @override List get $columns => [ id, name, textColor, backgroundColor, createdAt, ]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'labels'; @override VerificationContext validateIntegrity( Insertable