diff --git a/.gitignore b/.gitignore index 5dae1f1..f8a3f24 100644 --- a/.gitignore +++ b/.gitignore @@ -73,11 +73,6 @@ DerivedData/ *.dSYM.zip *.dSYM -# Generated files -**/*.g.dart -**/*.freezed.dart -**/*.gr.dart - # Coverage coverage/ diff --git a/.ideai/tickets/3/carnet.md b/.ideai/tickets/3/carnet.md index 68cd02e..1f396ad 100644 --- a/.ideai/tickets/3/carnet.md +++ b/.ideai/tickets/3/carnet.md @@ -1,8 +1,8 @@ --- issueRef: "#3" -version: 4 +version: 5 updatedBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"} -updatedAt: 1784304100173 +updatedAt: 1784305026425 --- Référence : mémoire "gametime-architecture-initial-stack-data-model" pour le détail des entités (Exercise, MediaAsset, Program, ProgramExercise, WorkoutTemplate, WorkoutTemplateProgram, WorkoutTemplateExerciseOverride, ActiveWorkoutSession, ActiveSetResult, ActiveRestState, WorkoutHistory, WorkoutHistorySetResult, change_log). Points de friction actés par Architect à respecter dans le schéma : diff --git a/.ideai/tickets/3/issue.md b/.ideai/tickets/3/issue.md index 5df45c3..e0e7d46 100644 --- a/.ideai/tickets/3/issue.md +++ b/.ideai/tickets/3/issue.md @@ -2,7 +2,7 @@ id: "ea99a2e0-3c07-404c-95db-13818be0ee20" number: 3 title: "[DevBackend] Modèle de données Drift complet (entités + migrations)" -status: "inProgress" +status: "closed" priority: "critical" sprint: null links: [{"target":"#2","kind":"dependsOn"}] @@ -10,7 +10,7 @@ agentRefs: [{"agentId":"10ee045b-1c41-479e-ba03-dceed9edd495","role":"assigned"} createdBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"} updatedBy: {"kind":"agent","agent_id":"57695b92-24d0-4876-837c-76116e70a6ae"} createdAt: 1784301289668 -updatedAt: 1784304100173 -version: 4 +updatedAt: 1784305026425 +version: 5 --- Implémenter les tables Drift : Exercise, MediaAsset, Program, ProgramExercise, WorkoutTemplate, WorkoutTemplateProgram, WorkoutTemplateExerciseOverride, ActiveWorkoutSession, ActiveSetResult, ActiveRestState, WorkoutHistory, WorkoutHistorySetResult, change_log. Champs sync-ready sur chaque agrégat : id stable (UUIDv7/ULID), createdAt/updatedAt/deletedAt, schemaVersion, syncState, localRevision, originDeviceId. Voir mémoire projet "gametime-architecture-initial-stack-data-model" pour le détail des champs par entité et les invariants (score = valeur numérique + label/unité snapshotés, exercice jamais supprimé en dur, etc.). \ No newline at end of file diff --git a/.ideai/tickets/index.json b/.ideai/tickets/index.json index 0829b14..b66794c 100644 --- a/.ideai/tickets/index.json +++ b/.ideai/tickets/index.json @@ -29,13 +29,13 @@ "issueRef": "#3", "path": "3", "title": "[DevBackend] Modèle de données Drift complet (entités + migrations)", - "status": "inProgress", + "status": "closed", "priority": "critical", "sprint": null, "assignedAgentIds": [ "10ee045b-1c41-479e-ba03-dceed9edd495" ], - "updatedAt": 1784304100173 + "updatedAt": 1784305026425 }, { "issueRef": "#4", diff --git a/lib/infrastructure/local/app_database.dart b/lib/infrastructure/local/app_database.dart index 5f6afbe..2750930 100644 --- a/lib/infrastructure/local/app_database.dart +++ b/lib/infrastructure/local/app_database.dart @@ -1,16 +1,35 @@ import 'package:drift/drift.dart'; import 'package:drift_flutter/drift_flutter.dart'; -final class AppDatabase extends GeneratedDatabase { - AppDatabase(DatabaseConnection connection) : super.connect(connection); +import 'tables.dart'; + +part 'app_database.g.dart'; + +@DriftDatabase( + tables: [ + ActiveRestStates, + ActiveSetResults, + ActiveWorkoutSessions, + ChangeLogEntries, + Exercises, + MediaAssets, + ProgramExercises, + Programs, + WorkoutHistories, + WorkoutHistorySetResults, + WorkoutTemplateExerciseOverrides, + WorkoutTemplatePrograms, + WorkoutTemplates, + ], +) +final class AppDatabase extends _$AppDatabase { + AppDatabase(super.executor); factory AppDatabase.open() { return AppDatabase( driftDatabase( name: 'gametime', - native: const DriftNativeOptions( - shareAcrossIsolates: true, - ), + native: const DriftNativeOptions(shareAcrossIsolates: true), ), ); } @@ -19,5 +38,95 @@ final class AppDatabase extends GeneratedDatabase { int get schemaVersion => 1; @override - Iterable> get allTables => const []; + MigrationStrategy get migration { + return MigrationStrategy( + onCreate: (migrator) async { + await migrator.createAll(); + await _createIndexes(); + }, + beforeOpen: (details) async { + await customStatement('PRAGMA foreign_keys = ON'); + }, + ); + } + + Future _createIndexes() async { + for (final tableName in _syncableTableNames) { + await customStatement( + 'CREATE INDEX IF NOT EXISTS idx_${tableName}_deleted_at ' + 'ON $tableName (deleted_at)', + ); + await customStatement( + 'CREATE INDEX IF NOT EXISTS idx_${tableName}_updated_at ' + 'ON $tableName (updated_at)', + ); + await customStatement( + 'CREATE INDEX IF NOT EXISTS idx_${tableName}_sync_state ' + 'ON $tableName (sync_state)', + ); + await customStatement( + 'CREATE INDEX IF NOT EXISTS idx_${tableName}_local_revision ' + 'ON $tableName (local_revision)', + ); + } + + await customStatement( + 'CREATE INDEX IF NOT EXISTS idx_program_exercises_program_id ' + 'ON program_exercises (program_id)', + ); + await customStatement( + 'CREATE INDEX IF NOT EXISTS idx_workout_template_programs_template_id ' + 'ON workout_template_programs (workout_template_id)', + ); + await customStatement( + 'CREATE INDEX IF NOT EXISTS idx_active_set_results_session_id ' + 'ON active_set_results (active_workout_session_id)', + ); + await customStatement( + 'CREATE INDEX IF NOT EXISTS idx_active_rest_states_session_id ' + 'ON active_rest_states (active_workout_session_id)', + ); + await customStatement( + 'CREATE UNIQUE INDEX IF NOT EXISTS ' + 'idx_active_workout_sessions_single_open ' + 'ON active_workout_sessions ((1)) ' + 'WHERE deleted_at IS NULL ' + "AND status IN ('running', 'paused', 'savedExit')", + ); + await customStatement( + 'CREATE INDEX IF NOT EXISTS idx_workout_history_started_at ' + 'ON workout_history (started_at)', + ); + await customStatement( + 'CREATE INDEX IF NOT EXISTS idx_workout_history_set_results_history_id ' + 'ON workout_history_set_results (workout_history_id)', + ); + await customStatement( + 'CREATE INDEX IF NOT EXISTS idx_change_log_entity ' + 'ON change_log (entity_type, entity_id)', + ); + await customStatement( + 'CREATE INDEX IF NOT EXISTS idx_change_log_local_revision ' + 'ON change_log (local_revision)', + ); + await customStatement( + 'CREATE INDEX IF NOT EXISTS idx_change_log_synced_at ' + 'ON change_log (synced_at)', + ); + } } + +const _syncableTableNames = [ + 'active_rest_states', + 'active_set_results', + 'active_workout_sessions', + 'exercises', + 'media_assets', + 'program_exercises', + 'programs', + 'workout_history', + 'workout_history_set_results', + 'workout_template_exercise_overrides', + 'workout_template_programs', + 'workout_templates', +]; diff --git a/lib/infrastructure/local/app_database.g.dart b/lib/infrastructure/local/app_database.g.dart new file mode 100644 index 0000000..21d43f7 --- /dev/null +++ b/lib/infrastructure/local/app_database.g.dart @@ -0,0 +1,25878 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND + +part of 'app_database.dart'; + +// ignore_for_file: type=lint +class $WorkoutTemplatesTable extends WorkoutTemplates + with TableInfo<$WorkoutTemplatesTable, WorkoutTemplate> { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + $WorkoutTemplatesTable(this.attachedDatabase, [this._alias]); + static const VerificationMeta _idMeta = const VerificationMeta('id'); + @override + late final GeneratedColumn id = GeneratedColumn( + '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: true, + ); + static const VerificationMeta _updatedAtMeta = const VerificationMeta( + 'updatedAt', + ); + @override + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _deletedAtMeta = const VerificationMeta( + 'deletedAt', + ); + @override + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _schemaVersionMeta = const VerificationMeta( + 'schemaVersion', + ); + @override + late final GeneratedColumn schemaVersion = GeneratedColumn( + 'schema_version', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const Constant(1), + ); + static const VerificationMeta _syncStateMeta = const VerificationMeta( + 'syncState', + ); + @override + late final GeneratedColumn syncState = GeneratedColumn( + 'sync_state', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + $customConstraints: + 'NOT NULL CHECK (sync_state IN (\'localOnly\', \'dirty\', \'synced\', \'deleted\'))', + ); + static const VerificationMeta _localRevisionMeta = const VerificationMeta( + 'localRevision', + ); + @override + late final GeneratedColumn localRevision = GeneratedColumn( + 'local_revision', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + $customConstraints: 'NOT NULL CHECK (local_revision >= 0)', + ); + static const VerificationMeta _originDeviceIdMeta = const VerificationMeta( + 'originDeviceId', + ); + @override + late final GeneratedColumn originDeviceId = GeneratedColumn( + 'origin_device_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _futureOwnerProfileIdMeta = + const VerificationMeta('futureOwnerProfileId'); + @override + late final GeneratedColumn futureOwnerProfileId = + GeneratedColumn( + 'future_owner_profile_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _lastSyncedAtMeta = const VerificationMeta( + 'lastSyncedAt', + ); + @override + late final GeneratedColumn lastSyncedAt = GeneratedColumn( + 'last_synced_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _remoteRevisionMeta = const VerificationMeta( + 'remoteRevision', + ); + @override + late final GeneratedColumn remoteRevision = GeneratedColumn( + 'remote_revision', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _nameMeta = const VerificationMeta('name'); + @override + late final GeneratedColumn name = GeneratedColumn( + 'name', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _lastStartedAtMeta = const VerificationMeta( + 'lastStartedAt', + ); + @override + late final GeneratedColumn lastStartedAt = + GeneratedColumn( + 'last_started_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + name, + lastStartedAt, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'workout_templates'; + @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)); + } else if (isInserting) { + context.missing(_idMeta); + } + if (data.containsKey('created_at')) { + context.handle( + _createdAtMeta, + createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), + ); + } else if (isInserting) { + context.missing(_createdAtMeta); + } + if (data.containsKey('updated_at')) { + context.handle( + _updatedAtMeta, + updatedAt.isAcceptableOrUnknown(data['updated_at']!, _updatedAtMeta), + ); + } else if (isInserting) { + context.missing(_updatedAtMeta); + } + if (data.containsKey('deleted_at')) { + context.handle( + _deletedAtMeta, + deletedAt.isAcceptableOrUnknown(data['deleted_at']!, _deletedAtMeta), + ); + } + if (data.containsKey('schema_version')) { + context.handle( + _schemaVersionMeta, + schemaVersion.isAcceptableOrUnknown( + data['schema_version']!, + _schemaVersionMeta, + ), + ); + } + if (data.containsKey('sync_state')) { + context.handle( + _syncStateMeta, + syncState.isAcceptableOrUnknown(data['sync_state']!, _syncStateMeta), + ); + } else if (isInserting) { + context.missing(_syncStateMeta); + } + if (data.containsKey('local_revision')) { + context.handle( + _localRevisionMeta, + localRevision.isAcceptableOrUnknown( + data['local_revision']!, + _localRevisionMeta, + ), + ); + } else if (isInserting) { + context.missing(_localRevisionMeta); + } + if (data.containsKey('origin_device_id')) { + context.handle( + _originDeviceIdMeta, + originDeviceId.isAcceptableOrUnknown( + data['origin_device_id']!, + _originDeviceIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_originDeviceIdMeta); + } + if (data.containsKey('future_owner_profile_id')) { + context.handle( + _futureOwnerProfileIdMeta, + futureOwnerProfileId.isAcceptableOrUnknown( + data['future_owner_profile_id']!, + _futureOwnerProfileIdMeta, + ), + ); + } + if (data.containsKey('last_synced_at')) { + context.handle( + _lastSyncedAtMeta, + lastSyncedAt.isAcceptableOrUnknown( + data['last_synced_at']!, + _lastSyncedAtMeta, + ), + ); + } + if (data.containsKey('remote_revision')) { + context.handle( + _remoteRevisionMeta, + remoteRevision.isAcceptableOrUnknown( + data['remote_revision']!, + _remoteRevisionMeta, + ), + ); + } + if (data.containsKey('name')) { + context.handle( + _nameMeta, + name.isAcceptableOrUnknown(data['name']!, _nameMeta), + ); + } else if (isInserting) { + context.missing(_nameMeta); + } + if (data.containsKey('last_started_at')) { + context.handle( + _lastStartedAtMeta, + lastStartedAt.isAcceptableOrUnknown( + data['last_started_at']!, + _lastStartedAtMeta, + ), + ); + } + return context; + } + + @override + Set get $primaryKey => {id}; + @override + WorkoutTemplate map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return WorkoutTemplate( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + schemaVersion: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}schema_version'], + )!, + syncState: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}sync_state'], + )!, + localRevision: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}local_revision'], + )!, + originDeviceId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}origin_device_id'], + )!, + futureOwnerProfileId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}future_owner_profile_id'], + ), + lastSyncedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_synced_at'], + ), + remoteRevision: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}remote_revision'], + ), + name: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}name'], + )!, + lastStartedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_started_at'], + ), + ); + } + + @override + $WorkoutTemplatesTable createAlias(String alias) { + return $WorkoutTemplatesTable(attachedDatabase, alias); + } +} + +class WorkoutTemplate extends DataClass implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final DateTime? deletedAt; + final int schemaVersion; + final String syncState; + final int localRevision; + final String originDeviceId; + final String? futureOwnerProfileId; + final DateTime? lastSyncedAt; + final String? remoteRevision; + final String name; + final DateTime? lastStartedAt; + const WorkoutTemplate({ + required this.id, + required this.createdAt, + required this.updatedAt, + this.deletedAt, + required this.schemaVersion, + required this.syncState, + required this.localRevision, + required this.originDeviceId, + this.futureOwnerProfileId, + this.lastSyncedAt, + this.remoteRevision, + required this.name, + this.lastStartedAt, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + map['schema_version'] = Variable(schemaVersion); + map['sync_state'] = Variable(syncState); + map['local_revision'] = Variable(localRevision); + map['origin_device_id'] = Variable(originDeviceId); + if (!nullToAbsent || futureOwnerProfileId != null) { + map['future_owner_profile_id'] = Variable(futureOwnerProfileId); + } + if (!nullToAbsent || lastSyncedAt != null) { + map['last_synced_at'] = Variable(lastSyncedAt); + } + if (!nullToAbsent || remoteRevision != null) { + map['remote_revision'] = Variable(remoteRevision); + } + map['name'] = Variable(name); + if (!nullToAbsent || lastStartedAt != null) { + map['last_started_at'] = Variable(lastStartedAt); + } + return map; + } + + WorkoutTemplatesCompanion toCompanion(bool nullToAbsent) { + return WorkoutTemplatesCompanion( + id: Value(id), + createdAt: Value(createdAt), + updatedAt: Value(updatedAt), + deletedAt: deletedAt == null && nullToAbsent + ? const Value.absent() + : Value(deletedAt), + schemaVersion: Value(schemaVersion), + syncState: Value(syncState), + localRevision: Value(localRevision), + originDeviceId: Value(originDeviceId), + futureOwnerProfileId: futureOwnerProfileId == null && nullToAbsent + ? const Value.absent() + : Value(futureOwnerProfileId), + lastSyncedAt: lastSyncedAt == null && nullToAbsent + ? const Value.absent() + : Value(lastSyncedAt), + remoteRevision: remoteRevision == null && nullToAbsent + ? const Value.absent() + : Value(remoteRevision), + name: Value(name), + lastStartedAt: lastStartedAt == null && nullToAbsent + ? const Value.absent() + : Value(lastStartedAt), + ); + } + + factory WorkoutTemplate.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return WorkoutTemplate( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + deletedAt: serializer.fromJson(json['deletedAt']), + schemaVersion: serializer.fromJson(json['schemaVersion']), + syncState: serializer.fromJson(json['syncState']), + localRevision: serializer.fromJson(json['localRevision']), + originDeviceId: serializer.fromJson(json['originDeviceId']), + futureOwnerProfileId: serializer.fromJson( + json['futureOwnerProfileId'], + ), + lastSyncedAt: serializer.fromJson(json['lastSyncedAt']), + remoteRevision: serializer.fromJson(json['remoteRevision']), + name: serializer.fromJson(json['name']), + lastStartedAt: serializer.fromJson(json['lastStartedAt']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'deletedAt': serializer.toJson(deletedAt), + 'schemaVersion': serializer.toJson(schemaVersion), + 'syncState': serializer.toJson(syncState), + 'localRevision': serializer.toJson(localRevision), + 'originDeviceId': serializer.toJson(originDeviceId), + 'futureOwnerProfileId': serializer.toJson(futureOwnerProfileId), + 'lastSyncedAt': serializer.toJson(lastSyncedAt), + 'remoteRevision': serializer.toJson(remoteRevision), + 'name': serializer.toJson(name), + 'lastStartedAt': serializer.toJson(lastStartedAt), + }; + } + + WorkoutTemplate copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + Value deletedAt = const Value.absent(), + int? schemaVersion, + String? syncState, + int? localRevision, + String? originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + String? name, + Value lastStartedAt = const Value.absent(), + }) => WorkoutTemplate( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId.present + ? futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt.present ? lastSyncedAt.value : this.lastSyncedAt, + remoteRevision: remoteRevision.present + ? remoteRevision.value + : this.remoteRevision, + name: name ?? this.name, + lastStartedAt: lastStartedAt.present + ? lastStartedAt.value + : this.lastStartedAt, + ); + WorkoutTemplate copyWithCompanion(WorkoutTemplatesCompanion data) { + return WorkoutTemplate( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + schemaVersion: data.schemaVersion.present + ? data.schemaVersion.value + : this.schemaVersion, + syncState: data.syncState.present ? data.syncState.value : this.syncState, + localRevision: data.localRevision.present + ? data.localRevision.value + : this.localRevision, + originDeviceId: data.originDeviceId.present + ? data.originDeviceId.value + : this.originDeviceId, + futureOwnerProfileId: data.futureOwnerProfileId.present + ? data.futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: data.lastSyncedAt.present + ? data.lastSyncedAt.value + : this.lastSyncedAt, + remoteRevision: data.remoteRevision.present + ? data.remoteRevision.value + : this.remoteRevision, + name: data.name.present ? data.name.value : this.name, + lastStartedAt: data.lastStartedAt.present + ? data.lastStartedAt.value + : this.lastStartedAt, + ); + } + + @override + String toString() { + return (StringBuffer('WorkoutTemplate(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('name: $name, ') + ..write('lastStartedAt: $lastStartedAt') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + name, + lastStartedAt, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is WorkoutTemplate && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.deletedAt == this.deletedAt && + other.schemaVersion == this.schemaVersion && + other.syncState == this.syncState && + other.localRevision == this.localRevision && + other.originDeviceId == this.originDeviceId && + other.futureOwnerProfileId == this.futureOwnerProfileId && + other.lastSyncedAt == this.lastSyncedAt && + other.remoteRevision == this.remoteRevision && + other.name == this.name && + other.lastStartedAt == this.lastStartedAt); +} + +class WorkoutTemplatesCompanion extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value deletedAt; + final Value schemaVersion; + final Value syncState; + final Value localRevision; + final Value originDeviceId; + final Value futureOwnerProfileId; + final Value lastSyncedAt; + final Value remoteRevision; + final Value name; + final Value lastStartedAt; + final Value rowid; + const WorkoutTemplatesCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + this.syncState = const Value.absent(), + this.localRevision = const Value.absent(), + this.originDeviceId = const Value.absent(), + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.name = const Value.absent(), + this.lastStartedAt = const Value.absent(), + this.rowid = const Value.absent(), + }); + WorkoutTemplatesCompanion.insert({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + required String name, + this.lastStartedAt = const Value.absent(), + this.rowid = const Value.absent(), + }) : id = Value(id), + createdAt = Value(createdAt), + updatedAt = Value(updatedAt), + syncState = Value(syncState), + localRevision = Value(localRevision), + originDeviceId = Value(originDeviceId), + name = Value(name); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? deletedAt, + Expression? schemaVersion, + Expression? syncState, + Expression? localRevision, + Expression? originDeviceId, + Expression? futureOwnerProfileId, + Expression? lastSyncedAt, + Expression? remoteRevision, + Expression? name, + Expression? lastStartedAt, + Expression? rowid, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (deletedAt != null) 'deleted_at': deletedAt, + if (schemaVersion != null) 'schema_version': schemaVersion, + if (syncState != null) 'sync_state': syncState, + if (localRevision != null) 'local_revision': localRevision, + if (originDeviceId != null) 'origin_device_id': originDeviceId, + if (futureOwnerProfileId != null) + 'future_owner_profile_id': futureOwnerProfileId, + if (lastSyncedAt != null) 'last_synced_at': lastSyncedAt, + if (remoteRevision != null) 'remote_revision': remoteRevision, + if (name != null) 'name': name, + if (lastStartedAt != null) 'last_started_at': lastStartedAt, + if (rowid != null) 'rowid': rowid, + }); + } + + WorkoutTemplatesCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? deletedAt, + Value? schemaVersion, + Value? syncState, + Value? localRevision, + Value? originDeviceId, + Value? futureOwnerProfileId, + Value? lastSyncedAt, + Value? remoteRevision, + Value? name, + Value? lastStartedAt, + Value? rowid, + }) { + return WorkoutTemplatesCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt ?? this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId ?? this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt ?? this.lastSyncedAt, + remoteRevision: remoteRevision ?? this.remoteRevision, + name: name ?? this.name, + lastStartedAt: lastStartedAt ?? this.lastStartedAt, + rowid: rowid ?? this.rowid, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (schemaVersion.present) { + map['schema_version'] = Variable(schemaVersion.value); + } + if (syncState.present) { + map['sync_state'] = Variable(syncState.value); + } + if (localRevision.present) { + map['local_revision'] = Variable(localRevision.value); + } + if (originDeviceId.present) { + map['origin_device_id'] = Variable(originDeviceId.value); + } + if (futureOwnerProfileId.present) { + map['future_owner_profile_id'] = Variable( + futureOwnerProfileId.value, + ); + } + if (lastSyncedAt.present) { + map['last_synced_at'] = Variable(lastSyncedAt.value); + } + if (remoteRevision.present) { + map['remote_revision'] = Variable(remoteRevision.value); + } + if (name.present) { + map['name'] = Variable(name.value); + } + if (lastStartedAt.present) { + map['last_started_at'] = Variable(lastStartedAt.value); + } + if (rowid.present) { + map['rowid'] = Variable(rowid.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('WorkoutTemplatesCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('name: $name, ') + ..write('lastStartedAt: $lastStartedAt, ') + ..write('rowid: $rowid') + ..write(')')) + .toString(); + } +} + +class $ActiveWorkoutSessionsTable extends ActiveWorkoutSessions + with TableInfo<$ActiveWorkoutSessionsTable, ActiveWorkoutSession> { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + $ActiveWorkoutSessionsTable(this.attachedDatabase, [this._alias]); + static const VerificationMeta _idMeta = const VerificationMeta('id'); + @override + late final GeneratedColumn id = GeneratedColumn( + '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: true, + ); + static const VerificationMeta _updatedAtMeta = const VerificationMeta( + 'updatedAt', + ); + @override + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _deletedAtMeta = const VerificationMeta( + 'deletedAt', + ); + @override + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _schemaVersionMeta = const VerificationMeta( + 'schemaVersion', + ); + @override + late final GeneratedColumn schemaVersion = GeneratedColumn( + 'schema_version', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const Constant(1), + ); + static const VerificationMeta _syncStateMeta = const VerificationMeta( + 'syncState', + ); + @override + late final GeneratedColumn syncState = GeneratedColumn( + 'sync_state', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + $customConstraints: + 'NOT NULL CHECK (sync_state IN (\'localOnly\', \'dirty\', \'synced\', \'deleted\'))', + ); + static const VerificationMeta _localRevisionMeta = const VerificationMeta( + 'localRevision', + ); + @override + late final GeneratedColumn localRevision = GeneratedColumn( + 'local_revision', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + $customConstraints: 'NOT NULL CHECK (local_revision >= 0)', + ); + static const VerificationMeta _originDeviceIdMeta = const VerificationMeta( + 'originDeviceId', + ); + @override + late final GeneratedColumn originDeviceId = GeneratedColumn( + 'origin_device_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _futureOwnerProfileIdMeta = + const VerificationMeta('futureOwnerProfileId'); + @override + late final GeneratedColumn futureOwnerProfileId = + GeneratedColumn( + 'future_owner_profile_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _lastSyncedAtMeta = const VerificationMeta( + 'lastSyncedAt', + ); + @override + late final GeneratedColumn lastSyncedAt = GeneratedColumn( + 'last_synced_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _remoteRevisionMeta = const VerificationMeta( + 'remoteRevision', + ); + @override + late final GeneratedColumn remoteRevision = GeneratedColumn( + 'remote_revision', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _sourceWorkoutTemplateIdMeta = + const VerificationMeta('sourceWorkoutTemplateId'); + @override + late final GeneratedColumn sourceWorkoutTemplateId = + GeneratedColumn( + 'source_workout_template_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES workout_templates (id)', + ), + ); + static const VerificationMeta _statusMeta = const VerificationMeta('status'); + @override + late final GeneratedColumn status = GeneratedColumn( + 'status', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _startedAtMeta = const VerificationMeta( + 'startedAt', + ); + @override + late final GeneratedColumn startedAt = GeneratedColumn( + 'started_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _pausedAtMeta = const VerificationMeta( + 'pausedAt', + ); + @override + late final GeneratedColumn pausedAt = GeneratedColumn( + 'paused_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _endedAtMeta = const VerificationMeta( + 'endedAt', + ); + @override + late final GeneratedColumn endedAt = GeneratedColumn( + 'ended_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _lastPersistedAtMeta = const VerificationMeta( + 'lastPersistedAt', + ); + @override + late final GeneratedColumn lastPersistedAt = + GeneratedColumn( + 'last_persisted_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _elapsedActiveMsMeta = const VerificationMeta( + 'elapsedActiveMs', + ); + @override + late final GeneratedColumn elapsedActiveMs = GeneratedColumn( + 'elapsed_active_ms', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _currentProgramIndexMeta = + const VerificationMeta('currentProgramIndex'); + @override + late final GeneratedColumn currentProgramIndex = GeneratedColumn( + 'current_program_index', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _currentExerciseIndexMeta = + const VerificationMeta('currentExerciseIndex'); + @override + late final GeneratedColumn currentExerciseIndex = GeneratedColumn( + 'current_exercise_index', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _currentSetIndexMeta = const VerificationMeta( + 'currentSetIndex', + ); + @override + late final GeneratedColumn currentSetIndex = GeneratedColumn( + 'current_set_index', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _resolvedTemplateSnapshotJsonMeta = + const VerificationMeta('resolvedTemplateSnapshotJson'); + @override + late final GeneratedColumn resolvedTemplateSnapshotJson = + GeneratedColumn( + 'resolved_template_snapshot_json', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + sourceWorkoutTemplateId, + status, + startedAt, + pausedAt, + endedAt, + lastPersistedAt, + elapsedActiveMs, + currentProgramIndex, + currentExerciseIndex, + currentSetIndex, + resolvedTemplateSnapshotJson, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'active_workout_sessions'; + @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)); + } else if (isInserting) { + context.missing(_idMeta); + } + if (data.containsKey('created_at')) { + context.handle( + _createdAtMeta, + createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), + ); + } else if (isInserting) { + context.missing(_createdAtMeta); + } + if (data.containsKey('updated_at')) { + context.handle( + _updatedAtMeta, + updatedAt.isAcceptableOrUnknown(data['updated_at']!, _updatedAtMeta), + ); + } else if (isInserting) { + context.missing(_updatedAtMeta); + } + if (data.containsKey('deleted_at')) { + context.handle( + _deletedAtMeta, + deletedAt.isAcceptableOrUnknown(data['deleted_at']!, _deletedAtMeta), + ); + } + if (data.containsKey('schema_version')) { + context.handle( + _schemaVersionMeta, + schemaVersion.isAcceptableOrUnknown( + data['schema_version']!, + _schemaVersionMeta, + ), + ); + } + if (data.containsKey('sync_state')) { + context.handle( + _syncStateMeta, + syncState.isAcceptableOrUnknown(data['sync_state']!, _syncStateMeta), + ); + } else if (isInserting) { + context.missing(_syncStateMeta); + } + if (data.containsKey('local_revision')) { + context.handle( + _localRevisionMeta, + localRevision.isAcceptableOrUnknown( + data['local_revision']!, + _localRevisionMeta, + ), + ); + } else if (isInserting) { + context.missing(_localRevisionMeta); + } + if (data.containsKey('origin_device_id')) { + context.handle( + _originDeviceIdMeta, + originDeviceId.isAcceptableOrUnknown( + data['origin_device_id']!, + _originDeviceIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_originDeviceIdMeta); + } + if (data.containsKey('future_owner_profile_id')) { + context.handle( + _futureOwnerProfileIdMeta, + futureOwnerProfileId.isAcceptableOrUnknown( + data['future_owner_profile_id']!, + _futureOwnerProfileIdMeta, + ), + ); + } + if (data.containsKey('last_synced_at')) { + context.handle( + _lastSyncedAtMeta, + lastSyncedAt.isAcceptableOrUnknown( + data['last_synced_at']!, + _lastSyncedAtMeta, + ), + ); + } + if (data.containsKey('remote_revision')) { + context.handle( + _remoteRevisionMeta, + remoteRevision.isAcceptableOrUnknown( + data['remote_revision']!, + _remoteRevisionMeta, + ), + ); + } + if (data.containsKey('source_workout_template_id')) { + context.handle( + _sourceWorkoutTemplateIdMeta, + sourceWorkoutTemplateId.isAcceptableOrUnknown( + data['source_workout_template_id']!, + _sourceWorkoutTemplateIdMeta, + ), + ); + } + if (data.containsKey('status')) { + context.handle( + _statusMeta, + status.isAcceptableOrUnknown(data['status']!, _statusMeta), + ); + } else if (isInserting) { + context.missing(_statusMeta); + } + if (data.containsKey('started_at')) { + context.handle( + _startedAtMeta, + startedAt.isAcceptableOrUnknown(data['started_at']!, _startedAtMeta), + ); + } else if (isInserting) { + context.missing(_startedAtMeta); + } + if (data.containsKey('paused_at')) { + context.handle( + _pausedAtMeta, + pausedAt.isAcceptableOrUnknown(data['paused_at']!, _pausedAtMeta), + ); + } + if (data.containsKey('ended_at')) { + context.handle( + _endedAtMeta, + endedAt.isAcceptableOrUnknown(data['ended_at']!, _endedAtMeta), + ); + } + if (data.containsKey('last_persisted_at')) { + context.handle( + _lastPersistedAtMeta, + lastPersistedAt.isAcceptableOrUnknown( + data['last_persisted_at']!, + _lastPersistedAtMeta, + ), + ); + } else if (isInserting) { + context.missing(_lastPersistedAtMeta); + } + if (data.containsKey('elapsed_active_ms')) { + context.handle( + _elapsedActiveMsMeta, + elapsedActiveMs.isAcceptableOrUnknown( + data['elapsed_active_ms']!, + _elapsedActiveMsMeta, + ), + ); + } else if (isInserting) { + context.missing(_elapsedActiveMsMeta); + } + if (data.containsKey('current_program_index')) { + context.handle( + _currentProgramIndexMeta, + currentProgramIndex.isAcceptableOrUnknown( + data['current_program_index']!, + _currentProgramIndexMeta, + ), + ); + } else if (isInserting) { + context.missing(_currentProgramIndexMeta); + } + if (data.containsKey('current_exercise_index')) { + context.handle( + _currentExerciseIndexMeta, + currentExerciseIndex.isAcceptableOrUnknown( + data['current_exercise_index']!, + _currentExerciseIndexMeta, + ), + ); + } else if (isInserting) { + context.missing(_currentExerciseIndexMeta); + } + if (data.containsKey('current_set_index')) { + context.handle( + _currentSetIndexMeta, + currentSetIndex.isAcceptableOrUnknown( + data['current_set_index']!, + _currentSetIndexMeta, + ), + ); + } else if (isInserting) { + context.missing(_currentSetIndexMeta); + } + if (data.containsKey('resolved_template_snapshot_json')) { + context.handle( + _resolvedTemplateSnapshotJsonMeta, + resolvedTemplateSnapshotJson.isAcceptableOrUnknown( + data['resolved_template_snapshot_json']!, + _resolvedTemplateSnapshotJsonMeta, + ), + ); + } else if (isInserting) { + context.missing(_resolvedTemplateSnapshotJsonMeta); + } + return context; + } + + @override + Set get $primaryKey => {id}; + @override + ActiveWorkoutSession map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return ActiveWorkoutSession( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + schemaVersion: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}schema_version'], + )!, + syncState: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}sync_state'], + )!, + localRevision: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}local_revision'], + )!, + originDeviceId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}origin_device_id'], + )!, + futureOwnerProfileId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}future_owner_profile_id'], + ), + lastSyncedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_synced_at'], + ), + remoteRevision: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}remote_revision'], + ), + sourceWorkoutTemplateId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}source_workout_template_id'], + ), + status: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}status'], + )!, + startedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}started_at'], + )!, + pausedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}paused_at'], + ), + endedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}ended_at'], + ), + lastPersistedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_persisted_at'], + )!, + elapsedActiveMs: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}elapsed_active_ms'], + )!, + currentProgramIndex: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}current_program_index'], + )!, + currentExerciseIndex: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}current_exercise_index'], + )!, + currentSetIndex: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}current_set_index'], + )!, + resolvedTemplateSnapshotJson: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}resolved_template_snapshot_json'], + )!, + ); + } + + @override + $ActiveWorkoutSessionsTable createAlias(String alias) { + return $ActiveWorkoutSessionsTable(attachedDatabase, alias); + } +} + +class ActiveWorkoutSession extends DataClass + implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final DateTime? deletedAt; + final int schemaVersion; + final String syncState; + final int localRevision; + final String originDeviceId; + final String? futureOwnerProfileId; + final DateTime? lastSyncedAt; + final String? remoteRevision; + final String? sourceWorkoutTemplateId; + final String status; + final DateTime startedAt; + final DateTime? pausedAt; + final DateTime? endedAt; + final DateTime lastPersistedAt; + final int elapsedActiveMs; + final int currentProgramIndex; + final int currentExerciseIndex; + final int currentSetIndex; + final String resolvedTemplateSnapshotJson; + const ActiveWorkoutSession({ + required this.id, + required this.createdAt, + required this.updatedAt, + this.deletedAt, + required this.schemaVersion, + required this.syncState, + required this.localRevision, + required this.originDeviceId, + this.futureOwnerProfileId, + this.lastSyncedAt, + this.remoteRevision, + this.sourceWorkoutTemplateId, + required this.status, + required this.startedAt, + this.pausedAt, + this.endedAt, + required this.lastPersistedAt, + required this.elapsedActiveMs, + required this.currentProgramIndex, + required this.currentExerciseIndex, + required this.currentSetIndex, + required this.resolvedTemplateSnapshotJson, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + map['schema_version'] = Variable(schemaVersion); + map['sync_state'] = Variable(syncState); + map['local_revision'] = Variable(localRevision); + map['origin_device_id'] = Variable(originDeviceId); + if (!nullToAbsent || futureOwnerProfileId != null) { + map['future_owner_profile_id'] = Variable(futureOwnerProfileId); + } + if (!nullToAbsent || lastSyncedAt != null) { + map['last_synced_at'] = Variable(lastSyncedAt); + } + if (!nullToAbsent || remoteRevision != null) { + map['remote_revision'] = Variable(remoteRevision); + } + if (!nullToAbsent || sourceWorkoutTemplateId != null) { + map['source_workout_template_id'] = Variable( + sourceWorkoutTemplateId, + ); + } + map['status'] = Variable(status); + map['started_at'] = Variable(startedAt); + if (!nullToAbsent || pausedAt != null) { + map['paused_at'] = Variable(pausedAt); + } + if (!nullToAbsent || endedAt != null) { + map['ended_at'] = Variable(endedAt); + } + map['last_persisted_at'] = Variable(lastPersistedAt); + map['elapsed_active_ms'] = Variable(elapsedActiveMs); + map['current_program_index'] = Variable(currentProgramIndex); + map['current_exercise_index'] = Variable(currentExerciseIndex); + map['current_set_index'] = Variable(currentSetIndex); + map['resolved_template_snapshot_json'] = Variable( + resolvedTemplateSnapshotJson, + ); + return map; + } + + ActiveWorkoutSessionsCompanion toCompanion(bool nullToAbsent) { + return ActiveWorkoutSessionsCompanion( + id: Value(id), + createdAt: Value(createdAt), + updatedAt: Value(updatedAt), + deletedAt: deletedAt == null && nullToAbsent + ? const Value.absent() + : Value(deletedAt), + schemaVersion: Value(schemaVersion), + syncState: Value(syncState), + localRevision: Value(localRevision), + originDeviceId: Value(originDeviceId), + futureOwnerProfileId: futureOwnerProfileId == null && nullToAbsent + ? const Value.absent() + : Value(futureOwnerProfileId), + lastSyncedAt: lastSyncedAt == null && nullToAbsent + ? const Value.absent() + : Value(lastSyncedAt), + remoteRevision: remoteRevision == null && nullToAbsent + ? const Value.absent() + : Value(remoteRevision), + sourceWorkoutTemplateId: sourceWorkoutTemplateId == null && nullToAbsent + ? const Value.absent() + : Value(sourceWorkoutTemplateId), + status: Value(status), + startedAt: Value(startedAt), + pausedAt: pausedAt == null && nullToAbsent + ? const Value.absent() + : Value(pausedAt), + endedAt: endedAt == null && nullToAbsent + ? const Value.absent() + : Value(endedAt), + lastPersistedAt: Value(lastPersistedAt), + elapsedActiveMs: Value(elapsedActiveMs), + currentProgramIndex: Value(currentProgramIndex), + currentExerciseIndex: Value(currentExerciseIndex), + currentSetIndex: Value(currentSetIndex), + resolvedTemplateSnapshotJson: Value(resolvedTemplateSnapshotJson), + ); + } + + factory ActiveWorkoutSession.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return ActiveWorkoutSession( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + deletedAt: serializer.fromJson(json['deletedAt']), + schemaVersion: serializer.fromJson(json['schemaVersion']), + syncState: serializer.fromJson(json['syncState']), + localRevision: serializer.fromJson(json['localRevision']), + originDeviceId: serializer.fromJson(json['originDeviceId']), + futureOwnerProfileId: serializer.fromJson( + json['futureOwnerProfileId'], + ), + lastSyncedAt: serializer.fromJson(json['lastSyncedAt']), + remoteRevision: serializer.fromJson(json['remoteRevision']), + sourceWorkoutTemplateId: serializer.fromJson( + json['sourceWorkoutTemplateId'], + ), + status: serializer.fromJson(json['status']), + startedAt: serializer.fromJson(json['startedAt']), + pausedAt: serializer.fromJson(json['pausedAt']), + endedAt: serializer.fromJson(json['endedAt']), + lastPersistedAt: serializer.fromJson(json['lastPersistedAt']), + elapsedActiveMs: serializer.fromJson(json['elapsedActiveMs']), + currentProgramIndex: serializer.fromJson( + json['currentProgramIndex'], + ), + currentExerciseIndex: serializer.fromJson( + json['currentExerciseIndex'], + ), + currentSetIndex: serializer.fromJson(json['currentSetIndex']), + resolvedTemplateSnapshotJson: serializer.fromJson( + json['resolvedTemplateSnapshotJson'], + ), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'deletedAt': serializer.toJson(deletedAt), + 'schemaVersion': serializer.toJson(schemaVersion), + 'syncState': serializer.toJson(syncState), + 'localRevision': serializer.toJson(localRevision), + 'originDeviceId': serializer.toJson(originDeviceId), + 'futureOwnerProfileId': serializer.toJson(futureOwnerProfileId), + 'lastSyncedAt': serializer.toJson(lastSyncedAt), + 'remoteRevision': serializer.toJson(remoteRevision), + 'sourceWorkoutTemplateId': serializer.toJson( + sourceWorkoutTemplateId, + ), + 'status': serializer.toJson(status), + 'startedAt': serializer.toJson(startedAt), + 'pausedAt': serializer.toJson(pausedAt), + 'endedAt': serializer.toJson(endedAt), + 'lastPersistedAt': serializer.toJson(lastPersistedAt), + 'elapsedActiveMs': serializer.toJson(elapsedActiveMs), + 'currentProgramIndex': serializer.toJson(currentProgramIndex), + 'currentExerciseIndex': serializer.toJson(currentExerciseIndex), + 'currentSetIndex': serializer.toJson(currentSetIndex), + 'resolvedTemplateSnapshotJson': serializer.toJson( + resolvedTemplateSnapshotJson, + ), + }; + } + + ActiveWorkoutSession copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + Value deletedAt = const Value.absent(), + int? schemaVersion, + String? syncState, + int? localRevision, + String? originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value sourceWorkoutTemplateId = const Value.absent(), + String? status, + DateTime? startedAt, + Value pausedAt = const Value.absent(), + Value endedAt = const Value.absent(), + DateTime? lastPersistedAt, + int? elapsedActiveMs, + int? currentProgramIndex, + int? currentExerciseIndex, + int? currentSetIndex, + String? resolvedTemplateSnapshotJson, + }) => ActiveWorkoutSession( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId.present + ? futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt.present ? lastSyncedAt.value : this.lastSyncedAt, + remoteRevision: remoteRevision.present + ? remoteRevision.value + : this.remoteRevision, + sourceWorkoutTemplateId: sourceWorkoutTemplateId.present + ? sourceWorkoutTemplateId.value + : this.sourceWorkoutTemplateId, + status: status ?? this.status, + startedAt: startedAt ?? this.startedAt, + pausedAt: pausedAt.present ? pausedAt.value : this.pausedAt, + endedAt: endedAt.present ? endedAt.value : this.endedAt, + lastPersistedAt: lastPersistedAt ?? this.lastPersistedAt, + elapsedActiveMs: elapsedActiveMs ?? this.elapsedActiveMs, + currentProgramIndex: currentProgramIndex ?? this.currentProgramIndex, + currentExerciseIndex: currentExerciseIndex ?? this.currentExerciseIndex, + currentSetIndex: currentSetIndex ?? this.currentSetIndex, + resolvedTemplateSnapshotJson: + resolvedTemplateSnapshotJson ?? this.resolvedTemplateSnapshotJson, + ); + ActiveWorkoutSession copyWithCompanion(ActiveWorkoutSessionsCompanion data) { + return ActiveWorkoutSession( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + schemaVersion: data.schemaVersion.present + ? data.schemaVersion.value + : this.schemaVersion, + syncState: data.syncState.present ? data.syncState.value : this.syncState, + localRevision: data.localRevision.present + ? data.localRevision.value + : this.localRevision, + originDeviceId: data.originDeviceId.present + ? data.originDeviceId.value + : this.originDeviceId, + futureOwnerProfileId: data.futureOwnerProfileId.present + ? data.futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: data.lastSyncedAt.present + ? data.lastSyncedAt.value + : this.lastSyncedAt, + remoteRevision: data.remoteRevision.present + ? data.remoteRevision.value + : this.remoteRevision, + sourceWorkoutTemplateId: data.sourceWorkoutTemplateId.present + ? data.sourceWorkoutTemplateId.value + : this.sourceWorkoutTemplateId, + status: data.status.present ? data.status.value : this.status, + startedAt: data.startedAt.present ? data.startedAt.value : this.startedAt, + pausedAt: data.pausedAt.present ? data.pausedAt.value : this.pausedAt, + endedAt: data.endedAt.present ? data.endedAt.value : this.endedAt, + lastPersistedAt: data.lastPersistedAt.present + ? data.lastPersistedAt.value + : this.lastPersistedAt, + elapsedActiveMs: data.elapsedActiveMs.present + ? data.elapsedActiveMs.value + : this.elapsedActiveMs, + currentProgramIndex: data.currentProgramIndex.present + ? data.currentProgramIndex.value + : this.currentProgramIndex, + currentExerciseIndex: data.currentExerciseIndex.present + ? data.currentExerciseIndex.value + : this.currentExerciseIndex, + currentSetIndex: data.currentSetIndex.present + ? data.currentSetIndex.value + : this.currentSetIndex, + resolvedTemplateSnapshotJson: data.resolvedTemplateSnapshotJson.present + ? data.resolvedTemplateSnapshotJson.value + : this.resolvedTemplateSnapshotJson, + ); + } + + @override + String toString() { + return (StringBuffer('ActiveWorkoutSession(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('sourceWorkoutTemplateId: $sourceWorkoutTemplateId, ') + ..write('status: $status, ') + ..write('startedAt: $startedAt, ') + ..write('pausedAt: $pausedAt, ') + ..write('endedAt: $endedAt, ') + ..write('lastPersistedAt: $lastPersistedAt, ') + ..write('elapsedActiveMs: $elapsedActiveMs, ') + ..write('currentProgramIndex: $currentProgramIndex, ') + ..write('currentExerciseIndex: $currentExerciseIndex, ') + ..write('currentSetIndex: $currentSetIndex, ') + ..write('resolvedTemplateSnapshotJson: $resolvedTemplateSnapshotJson') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hashAll([ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + sourceWorkoutTemplateId, + status, + startedAt, + pausedAt, + endedAt, + lastPersistedAt, + elapsedActiveMs, + currentProgramIndex, + currentExerciseIndex, + currentSetIndex, + resolvedTemplateSnapshotJson, + ]); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is ActiveWorkoutSession && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.deletedAt == this.deletedAt && + other.schemaVersion == this.schemaVersion && + other.syncState == this.syncState && + other.localRevision == this.localRevision && + other.originDeviceId == this.originDeviceId && + other.futureOwnerProfileId == this.futureOwnerProfileId && + other.lastSyncedAt == this.lastSyncedAt && + other.remoteRevision == this.remoteRevision && + other.sourceWorkoutTemplateId == this.sourceWorkoutTemplateId && + other.status == this.status && + other.startedAt == this.startedAt && + other.pausedAt == this.pausedAt && + other.endedAt == this.endedAt && + other.lastPersistedAt == this.lastPersistedAt && + other.elapsedActiveMs == this.elapsedActiveMs && + other.currentProgramIndex == this.currentProgramIndex && + other.currentExerciseIndex == this.currentExerciseIndex && + other.currentSetIndex == this.currentSetIndex && + other.resolvedTemplateSnapshotJson == + this.resolvedTemplateSnapshotJson); +} + +class ActiveWorkoutSessionsCompanion + extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value deletedAt; + final Value schemaVersion; + final Value syncState; + final Value localRevision; + final Value originDeviceId; + final Value futureOwnerProfileId; + final Value lastSyncedAt; + final Value remoteRevision; + final Value sourceWorkoutTemplateId; + final Value status; + final Value startedAt; + final Value pausedAt; + final Value endedAt; + final Value lastPersistedAt; + final Value elapsedActiveMs; + final Value currentProgramIndex; + final Value currentExerciseIndex; + final Value currentSetIndex; + final Value resolvedTemplateSnapshotJson; + final Value rowid; + const ActiveWorkoutSessionsCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + this.syncState = const Value.absent(), + this.localRevision = const Value.absent(), + this.originDeviceId = const Value.absent(), + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.sourceWorkoutTemplateId = const Value.absent(), + this.status = const Value.absent(), + this.startedAt = const Value.absent(), + this.pausedAt = const Value.absent(), + this.endedAt = const Value.absent(), + this.lastPersistedAt = const Value.absent(), + this.elapsedActiveMs = const Value.absent(), + this.currentProgramIndex = const Value.absent(), + this.currentExerciseIndex = const Value.absent(), + this.currentSetIndex = const Value.absent(), + this.resolvedTemplateSnapshotJson = const Value.absent(), + this.rowid = const Value.absent(), + }); + ActiveWorkoutSessionsCompanion.insert({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.sourceWorkoutTemplateId = const Value.absent(), + required String status, + required DateTime startedAt, + this.pausedAt = const Value.absent(), + this.endedAt = const Value.absent(), + required DateTime lastPersistedAt, + required int elapsedActiveMs, + required int currentProgramIndex, + required int currentExerciseIndex, + required int currentSetIndex, + required String resolvedTemplateSnapshotJson, + this.rowid = const Value.absent(), + }) : id = Value(id), + createdAt = Value(createdAt), + updatedAt = Value(updatedAt), + syncState = Value(syncState), + localRevision = Value(localRevision), + originDeviceId = Value(originDeviceId), + status = Value(status), + startedAt = Value(startedAt), + lastPersistedAt = Value(lastPersistedAt), + elapsedActiveMs = Value(elapsedActiveMs), + currentProgramIndex = Value(currentProgramIndex), + currentExerciseIndex = Value(currentExerciseIndex), + currentSetIndex = Value(currentSetIndex), + resolvedTemplateSnapshotJson = Value(resolvedTemplateSnapshotJson); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? deletedAt, + Expression? schemaVersion, + Expression? syncState, + Expression? localRevision, + Expression? originDeviceId, + Expression? futureOwnerProfileId, + Expression? lastSyncedAt, + Expression? remoteRevision, + Expression? sourceWorkoutTemplateId, + Expression? status, + Expression? startedAt, + Expression? pausedAt, + Expression? endedAt, + Expression? lastPersistedAt, + Expression? elapsedActiveMs, + Expression? currentProgramIndex, + Expression? currentExerciseIndex, + Expression? currentSetIndex, + Expression? resolvedTemplateSnapshotJson, + Expression? rowid, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (deletedAt != null) 'deleted_at': deletedAt, + if (schemaVersion != null) 'schema_version': schemaVersion, + if (syncState != null) 'sync_state': syncState, + if (localRevision != null) 'local_revision': localRevision, + if (originDeviceId != null) 'origin_device_id': originDeviceId, + if (futureOwnerProfileId != null) + 'future_owner_profile_id': futureOwnerProfileId, + if (lastSyncedAt != null) 'last_synced_at': lastSyncedAt, + if (remoteRevision != null) 'remote_revision': remoteRevision, + if (sourceWorkoutTemplateId != null) + 'source_workout_template_id': sourceWorkoutTemplateId, + if (status != null) 'status': status, + if (startedAt != null) 'started_at': startedAt, + if (pausedAt != null) 'paused_at': pausedAt, + if (endedAt != null) 'ended_at': endedAt, + if (lastPersistedAt != null) 'last_persisted_at': lastPersistedAt, + if (elapsedActiveMs != null) 'elapsed_active_ms': elapsedActiveMs, + if (currentProgramIndex != null) + 'current_program_index': currentProgramIndex, + if (currentExerciseIndex != null) + 'current_exercise_index': currentExerciseIndex, + if (currentSetIndex != null) 'current_set_index': currentSetIndex, + if (resolvedTemplateSnapshotJson != null) + 'resolved_template_snapshot_json': resolvedTemplateSnapshotJson, + if (rowid != null) 'rowid': rowid, + }); + } + + ActiveWorkoutSessionsCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? deletedAt, + Value? schemaVersion, + Value? syncState, + Value? localRevision, + Value? originDeviceId, + Value? futureOwnerProfileId, + Value? lastSyncedAt, + Value? remoteRevision, + Value? sourceWorkoutTemplateId, + Value? status, + Value? startedAt, + Value? pausedAt, + Value? endedAt, + Value? lastPersistedAt, + Value? elapsedActiveMs, + Value? currentProgramIndex, + Value? currentExerciseIndex, + Value? currentSetIndex, + Value? resolvedTemplateSnapshotJson, + Value? rowid, + }) { + return ActiveWorkoutSessionsCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt ?? this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId ?? this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt ?? this.lastSyncedAt, + remoteRevision: remoteRevision ?? this.remoteRevision, + sourceWorkoutTemplateId: + sourceWorkoutTemplateId ?? this.sourceWorkoutTemplateId, + status: status ?? this.status, + startedAt: startedAt ?? this.startedAt, + pausedAt: pausedAt ?? this.pausedAt, + endedAt: endedAt ?? this.endedAt, + lastPersistedAt: lastPersistedAt ?? this.lastPersistedAt, + elapsedActiveMs: elapsedActiveMs ?? this.elapsedActiveMs, + currentProgramIndex: currentProgramIndex ?? this.currentProgramIndex, + currentExerciseIndex: currentExerciseIndex ?? this.currentExerciseIndex, + currentSetIndex: currentSetIndex ?? this.currentSetIndex, + resolvedTemplateSnapshotJson: + resolvedTemplateSnapshotJson ?? this.resolvedTemplateSnapshotJson, + rowid: rowid ?? this.rowid, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (schemaVersion.present) { + map['schema_version'] = Variable(schemaVersion.value); + } + if (syncState.present) { + map['sync_state'] = Variable(syncState.value); + } + if (localRevision.present) { + map['local_revision'] = Variable(localRevision.value); + } + if (originDeviceId.present) { + map['origin_device_id'] = Variable(originDeviceId.value); + } + if (futureOwnerProfileId.present) { + map['future_owner_profile_id'] = Variable( + futureOwnerProfileId.value, + ); + } + if (lastSyncedAt.present) { + map['last_synced_at'] = Variable(lastSyncedAt.value); + } + if (remoteRevision.present) { + map['remote_revision'] = Variable(remoteRevision.value); + } + if (sourceWorkoutTemplateId.present) { + map['source_workout_template_id'] = Variable( + sourceWorkoutTemplateId.value, + ); + } + if (status.present) { + map['status'] = Variable(status.value); + } + if (startedAt.present) { + map['started_at'] = Variable(startedAt.value); + } + if (pausedAt.present) { + map['paused_at'] = Variable(pausedAt.value); + } + if (endedAt.present) { + map['ended_at'] = Variable(endedAt.value); + } + if (lastPersistedAt.present) { + map['last_persisted_at'] = Variable(lastPersistedAt.value); + } + if (elapsedActiveMs.present) { + map['elapsed_active_ms'] = Variable(elapsedActiveMs.value); + } + if (currentProgramIndex.present) { + map['current_program_index'] = Variable(currentProgramIndex.value); + } + if (currentExerciseIndex.present) { + map['current_exercise_index'] = Variable(currentExerciseIndex.value); + } + if (currentSetIndex.present) { + map['current_set_index'] = Variable(currentSetIndex.value); + } + if (resolvedTemplateSnapshotJson.present) { + map['resolved_template_snapshot_json'] = Variable( + resolvedTemplateSnapshotJson.value, + ); + } + if (rowid.present) { + map['rowid'] = Variable(rowid.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('ActiveWorkoutSessionsCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('sourceWorkoutTemplateId: $sourceWorkoutTemplateId, ') + ..write('status: $status, ') + ..write('startedAt: $startedAt, ') + ..write('pausedAt: $pausedAt, ') + ..write('endedAt: $endedAt, ') + ..write('lastPersistedAt: $lastPersistedAt, ') + ..write('elapsedActiveMs: $elapsedActiveMs, ') + ..write('currentProgramIndex: $currentProgramIndex, ') + ..write('currentExerciseIndex: $currentExerciseIndex, ') + ..write('currentSetIndex: $currentSetIndex, ') + ..write( + 'resolvedTemplateSnapshotJson: $resolvedTemplateSnapshotJson, ', + ) + ..write('rowid: $rowid') + ..write(')')) + .toString(); + } +} + +class $ActiveRestStatesTable extends ActiveRestStates + with TableInfo<$ActiveRestStatesTable, ActiveRestState> { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + $ActiveRestStatesTable(this.attachedDatabase, [this._alias]); + static const VerificationMeta _idMeta = const VerificationMeta('id'); + @override + late final GeneratedColumn id = GeneratedColumn( + '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: true, + ); + static const VerificationMeta _updatedAtMeta = const VerificationMeta( + 'updatedAt', + ); + @override + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _deletedAtMeta = const VerificationMeta( + 'deletedAt', + ); + @override + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _schemaVersionMeta = const VerificationMeta( + 'schemaVersion', + ); + @override + late final GeneratedColumn schemaVersion = GeneratedColumn( + 'schema_version', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const Constant(1), + ); + static const VerificationMeta _syncStateMeta = const VerificationMeta( + 'syncState', + ); + @override + late final GeneratedColumn syncState = GeneratedColumn( + 'sync_state', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + $customConstraints: + 'NOT NULL CHECK (sync_state IN (\'localOnly\', \'dirty\', \'synced\', \'deleted\'))', + ); + static const VerificationMeta _localRevisionMeta = const VerificationMeta( + 'localRevision', + ); + @override + late final GeneratedColumn localRevision = GeneratedColumn( + 'local_revision', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + $customConstraints: 'NOT NULL CHECK (local_revision >= 0)', + ); + static const VerificationMeta _originDeviceIdMeta = const VerificationMeta( + 'originDeviceId', + ); + @override + late final GeneratedColumn originDeviceId = GeneratedColumn( + 'origin_device_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _futureOwnerProfileIdMeta = + const VerificationMeta('futureOwnerProfileId'); + @override + late final GeneratedColumn futureOwnerProfileId = + GeneratedColumn( + 'future_owner_profile_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _lastSyncedAtMeta = const VerificationMeta( + 'lastSyncedAt', + ); + @override + late final GeneratedColumn lastSyncedAt = GeneratedColumn( + 'last_synced_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _remoteRevisionMeta = const VerificationMeta( + 'remoteRevision', + ); + @override + late final GeneratedColumn remoteRevision = GeneratedColumn( + 'remote_revision', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _activeWorkoutSessionIdMeta = + const VerificationMeta('activeWorkoutSessionId'); + @override + late final GeneratedColumn activeWorkoutSessionId = + GeneratedColumn( + 'active_workout_session_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES active_workout_sessions (id)', + ), + ); + static const VerificationMeta _afterProgramIndexMeta = const VerificationMeta( + 'afterProgramIndex', + ); + @override + late final GeneratedColumn afterProgramIndex = GeneratedColumn( + 'after_program_index', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _afterExerciseIndexMeta = + const VerificationMeta('afterExerciseIndex'); + @override + late final GeneratedColumn afterExerciseIndex = GeneratedColumn( + 'after_exercise_index', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _afterSetIndexMeta = const VerificationMeta( + 'afterSetIndex', + ); + @override + late final GeneratedColumn afterSetIndex = GeneratedColumn( + 'after_set_index', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _plannedRestSecondsMeta = + const VerificationMeta('plannedRestSeconds'); + @override + late final GeneratedColumn plannedRestSeconds = GeneratedColumn( + 'planned_rest_seconds', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _adjustedRestSecondsMeta = + const VerificationMeta('adjustedRestSeconds'); + @override + late final GeneratedColumn adjustedRestSeconds = GeneratedColumn( + 'adjusted_rest_seconds', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _startedAtMeta = const VerificationMeta( + 'startedAt', + ); + @override + late final GeneratedColumn startedAt = GeneratedColumn( + 'started_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _endedAtMeta = const VerificationMeta( + 'endedAt', + ); + @override + late final GeneratedColumn endedAt = GeneratedColumn( + 'ended_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _skippedAtMeta = const VerificationMeta( + 'skippedAt', + ); + @override + late final GeneratedColumn skippedAt = GeneratedColumn( + 'skipped_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + activeWorkoutSessionId, + afterProgramIndex, + afterExerciseIndex, + afterSetIndex, + plannedRestSeconds, + adjustedRestSeconds, + startedAt, + endedAt, + skippedAt, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'active_rest_states'; + @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)); + } else if (isInserting) { + context.missing(_idMeta); + } + if (data.containsKey('created_at')) { + context.handle( + _createdAtMeta, + createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), + ); + } else if (isInserting) { + context.missing(_createdAtMeta); + } + if (data.containsKey('updated_at')) { + context.handle( + _updatedAtMeta, + updatedAt.isAcceptableOrUnknown(data['updated_at']!, _updatedAtMeta), + ); + } else if (isInserting) { + context.missing(_updatedAtMeta); + } + if (data.containsKey('deleted_at')) { + context.handle( + _deletedAtMeta, + deletedAt.isAcceptableOrUnknown(data['deleted_at']!, _deletedAtMeta), + ); + } + if (data.containsKey('schema_version')) { + context.handle( + _schemaVersionMeta, + schemaVersion.isAcceptableOrUnknown( + data['schema_version']!, + _schemaVersionMeta, + ), + ); + } + if (data.containsKey('sync_state')) { + context.handle( + _syncStateMeta, + syncState.isAcceptableOrUnknown(data['sync_state']!, _syncStateMeta), + ); + } else if (isInserting) { + context.missing(_syncStateMeta); + } + if (data.containsKey('local_revision')) { + context.handle( + _localRevisionMeta, + localRevision.isAcceptableOrUnknown( + data['local_revision']!, + _localRevisionMeta, + ), + ); + } else if (isInserting) { + context.missing(_localRevisionMeta); + } + if (data.containsKey('origin_device_id')) { + context.handle( + _originDeviceIdMeta, + originDeviceId.isAcceptableOrUnknown( + data['origin_device_id']!, + _originDeviceIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_originDeviceIdMeta); + } + if (data.containsKey('future_owner_profile_id')) { + context.handle( + _futureOwnerProfileIdMeta, + futureOwnerProfileId.isAcceptableOrUnknown( + data['future_owner_profile_id']!, + _futureOwnerProfileIdMeta, + ), + ); + } + if (data.containsKey('last_synced_at')) { + context.handle( + _lastSyncedAtMeta, + lastSyncedAt.isAcceptableOrUnknown( + data['last_synced_at']!, + _lastSyncedAtMeta, + ), + ); + } + if (data.containsKey('remote_revision')) { + context.handle( + _remoteRevisionMeta, + remoteRevision.isAcceptableOrUnknown( + data['remote_revision']!, + _remoteRevisionMeta, + ), + ); + } + if (data.containsKey('active_workout_session_id')) { + context.handle( + _activeWorkoutSessionIdMeta, + activeWorkoutSessionId.isAcceptableOrUnknown( + data['active_workout_session_id']!, + _activeWorkoutSessionIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_activeWorkoutSessionIdMeta); + } + if (data.containsKey('after_program_index')) { + context.handle( + _afterProgramIndexMeta, + afterProgramIndex.isAcceptableOrUnknown( + data['after_program_index']!, + _afterProgramIndexMeta, + ), + ); + } else if (isInserting) { + context.missing(_afterProgramIndexMeta); + } + if (data.containsKey('after_exercise_index')) { + context.handle( + _afterExerciseIndexMeta, + afterExerciseIndex.isAcceptableOrUnknown( + data['after_exercise_index']!, + _afterExerciseIndexMeta, + ), + ); + } else if (isInserting) { + context.missing(_afterExerciseIndexMeta); + } + if (data.containsKey('after_set_index')) { + context.handle( + _afterSetIndexMeta, + afterSetIndex.isAcceptableOrUnknown( + data['after_set_index']!, + _afterSetIndexMeta, + ), + ); + } else if (isInserting) { + context.missing(_afterSetIndexMeta); + } + if (data.containsKey('planned_rest_seconds')) { + context.handle( + _plannedRestSecondsMeta, + plannedRestSeconds.isAcceptableOrUnknown( + data['planned_rest_seconds']!, + _plannedRestSecondsMeta, + ), + ); + } else if (isInserting) { + context.missing(_plannedRestSecondsMeta); + } + if (data.containsKey('adjusted_rest_seconds')) { + context.handle( + _adjustedRestSecondsMeta, + adjustedRestSeconds.isAcceptableOrUnknown( + data['adjusted_rest_seconds']!, + _adjustedRestSecondsMeta, + ), + ); + } else if (isInserting) { + context.missing(_adjustedRestSecondsMeta); + } + if (data.containsKey('started_at')) { + context.handle( + _startedAtMeta, + startedAt.isAcceptableOrUnknown(data['started_at']!, _startedAtMeta), + ); + } else if (isInserting) { + context.missing(_startedAtMeta); + } + if (data.containsKey('ended_at')) { + context.handle( + _endedAtMeta, + endedAt.isAcceptableOrUnknown(data['ended_at']!, _endedAtMeta), + ); + } + if (data.containsKey('skipped_at')) { + context.handle( + _skippedAtMeta, + skippedAt.isAcceptableOrUnknown(data['skipped_at']!, _skippedAtMeta), + ); + } + return context; + } + + @override + Set get $primaryKey => {id}; + @override + ActiveRestState map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return ActiveRestState( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + schemaVersion: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}schema_version'], + )!, + syncState: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}sync_state'], + )!, + localRevision: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}local_revision'], + )!, + originDeviceId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}origin_device_id'], + )!, + futureOwnerProfileId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}future_owner_profile_id'], + ), + lastSyncedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_synced_at'], + ), + remoteRevision: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}remote_revision'], + ), + activeWorkoutSessionId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}active_workout_session_id'], + )!, + afterProgramIndex: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}after_program_index'], + )!, + afterExerciseIndex: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}after_exercise_index'], + )!, + afterSetIndex: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}after_set_index'], + )!, + plannedRestSeconds: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}planned_rest_seconds'], + )!, + adjustedRestSeconds: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}adjusted_rest_seconds'], + )!, + startedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}started_at'], + )!, + endedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}ended_at'], + ), + skippedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}skipped_at'], + ), + ); + } + + @override + $ActiveRestStatesTable createAlias(String alias) { + return $ActiveRestStatesTable(attachedDatabase, alias); + } +} + +class ActiveRestState extends DataClass implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final DateTime? deletedAt; + final int schemaVersion; + final String syncState; + final int localRevision; + final String originDeviceId; + final String? futureOwnerProfileId; + final DateTime? lastSyncedAt; + final String? remoteRevision; + final String activeWorkoutSessionId; + final int afterProgramIndex; + final int afterExerciseIndex; + final int afterSetIndex; + final int plannedRestSeconds; + final int adjustedRestSeconds; + final DateTime startedAt; + final DateTime? endedAt; + final DateTime? skippedAt; + const ActiveRestState({ + required this.id, + required this.createdAt, + required this.updatedAt, + this.deletedAt, + required this.schemaVersion, + required this.syncState, + required this.localRevision, + required this.originDeviceId, + this.futureOwnerProfileId, + this.lastSyncedAt, + this.remoteRevision, + required this.activeWorkoutSessionId, + required this.afterProgramIndex, + required this.afterExerciseIndex, + required this.afterSetIndex, + required this.plannedRestSeconds, + required this.adjustedRestSeconds, + required this.startedAt, + this.endedAt, + this.skippedAt, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + map['schema_version'] = Variable(schemaVersion); + map['sync_state'] = Variable(syncState); + map['local_revision'] = Variable(localRevision); + map['origin_device_id'] = Variable(originDeviceId); + if (!nullToAbsent || futureOwnerProfileId != null) { + map['future_owner_profile_id'] = Variable(futureOwnerProfileId); + } + if (!nullToAbsent || lastSyncedAt != null) { + map['last_synced_at'] = Variable(lastSyncedAt); + } + if (!nullToAbsent || remoteRevision != null) { + map['remote_revision'] = Variable(remoteRevision); + } + map['active_workout_session_id'] = Variable(activeWorkoutSessionId); + map['after_program_index'] = Variable(afterProgramIndex); + map['after_exercise_index'] = Variable(afterExerciseIndex); + map['after_set_index'] = Variable(afterSetIndex); + map['planned_rest_seconds'] = Variable(plannedRestSeconds); + map['adjusted_rest_seconds'] = Variable(adjustedRestSeconds); + map['started_at'] = Variable(startedAt); + if (!nullToAbsent || endedAt != null) { + map['ended_at'] = Variable(endedAt); + } + if (!nullToAbsent || skippedAt != null) { + map['skipped_at'] = Variable(skippedAt); + } + return map; + } + + ActiveRestStatesCompanion toCompanion(bool nullToAbsent) { + return ActiveRestStatesCompanion( + id: Value(id), + createdAt: Value(createdAt), + updatedAt: Value(updatedAt), + deletedAt: deletedAt == null && nullToAbsent + ? const Value.absent() + : Value(deletedAt), + schemaVersion: Value(schemaVersion), + syncState: Value(syncState), + localRevision: Value(localRevision), + originDeviceId: Value(originDeviceId), + futureOwnerProfileId: futureOwnerProfileId == null && nullToAbsent + ? const Value.absent() + : Value(futureOwnerProfileId), + lastSyncedAt: lastSyncedAt == null && nullToAbsent + ? const Value.absent() + : Value(lastSyncedAt), + remoteRevision: remoteRevision == null && nullToAbsent + ? const Value.absent() + : Value(remoteRevision), + activeWorkoutSessionId: Value(activeWorkoutSessionId), + afterProgramIndex: Value(afterProgramIndex), + afterExerciseIndex: Value(afterExerciseIndex), + afterSetIndex: Value(afterSetIndex), + plannedRestSeconds: Value(plannedRestSeconds), + adjustedRestSeconds: Value(adjustedRestSeconds), + startedAt: Value(startedAt), + endedAt: endedAt == null && nullToAbsent + ? const Value.absent() + : Value(endedAt), + skippedAt: skippedAt == null && nullToAbsent + ? const Value.absent() + : Value(skippedAt), + ); + } + + factory ActiveRestState.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return ActiveRestState( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + deletedAt: serializer.fromJson(json['deletedAt']), + schemaVersion: serializer.fromJson(json['schemaVersion']), + syncState: serializer.fromJson(json['syncState']), + localRevision: serializer.fromJson(json['localRevision']), + originDeviceId: serializer.fromJson(json['originDeviceId']), + futureOwnerProfileId: serializer.fromJson( + json['futureOwnerProfileId'], + ), + lastSyncedAt: serializer.fromJson(json['lastSyncedAt']), + remoteRevision: serializer.fromJson(json['remoteRevision']), + activeWorkoutSessionId: serializer.fromJson( + json['activeWorkoutSessionId'], + ), + afterProgramIndex: serializer.fromJson(json['afterProgramIndex']), + afterExerciseIndex: serializer.fromJson(json['afterExerciseIndex']), + afterSetIndex: serializer.fromJson(json['afterSetIndex']), + plannedRestSeconds: serializer.fromJson(json['plannedRestSeconds']), + adjustedRestSeconds: serializer.fromJson( + json['adjustedRestSeconds'], + ), + startedAt: serializer.fromJson(json['startedAt']), + endedAt: serializer.fromJson(json['endedAt']), + skippedAt: serializer.fromJson(json['skippedAt']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'deletedAt': serializer.toJson(deletedAt), + 'schemaVersion': serializer.toJson(schemaVersion), + 'syncState': serializer.toJson(syncState), + 'localRevision': serializer.toJson(localRevision), + 'originDeviceId': serializer.toJson(originDeviceId), + 'futureOwnerProfileId': serializer.toJson(futureOwnerProfileId), + 'lastSyncedAt': serializer.toJson(lastSyncedAt), + 'remoteRevision': serializer.toJson(remoteRevision), + 'activeWorkoutSessionId': serializer.toJson( + activeWorkoutSessionId, + ), + 'afterProgramIndex': serializer.toJson(afterProgramIndex), + 'afterExerciseIndex': serializer.toJson(afterExerciseIndex), + 'afterSetIndex': serializer.toJson(afterSetIndex), + 'plannedRestSeconds': serializer.toJson(plannedRestSeconds), + 'adjustedRestSeconds': serializer.toJson(adjustedRestSeconds), + 'startedAt': serializer.toJson(startedAt), + 'endedAt': serializer.toJson(endedAt), + 'skippedAt': serializer.toJson(skippedAt), + }; + } + + ActiveRestState copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + Value deletedAt = const Value.absent(), + int? schemaVersion, + String? syncState, + int? localRevision, + String? originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + String? activeWorkoutSessionId, + int? afterProgramIndex, + int? afterExerciseIndex, + int? afterSetIndex, + int? plannedRestSeconds, + int? adjustedRestSeconds, + DateTime? startedAt, + Value endedAt = const Value.absent(), + Value skippedAt = const Value.absent(), + }) => ActiveRestState( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId.present + ? futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt.present ? lastSyncedAt.value : this.lastSyncedAt, + remoteRevision: remoteRevision.present + ? remoteRevision.value + : this.remoteRevision, + activeWorkoutSessionId: + activeWorkoutSessionId ?? this.activeWorkoutSessionId, + afterProgramIndex: afterProgramIndex ?? this.afterProgramIndex, + afterExerciseIndex: afterExerciseIndex ?? this.afterExerciseIndex, + afterSetIndex: afterSetIndex ?? this.afterSetIndex, + plannedRestSeconds: plannedRestSeconds ?? this.plannedRestSeconds, + adjustedRestSeconds: adjustedRestSeconds ?? this.adjustedRestSeconds, + startedAt: startedAt ?? this.startedAt, + endedAt: endedAt.present ? endedAt.value : this.endedAt, + skippedAt: skippedAt.present ? skippedAt.value : this.skippedAt, + ); + ActiveRestState copyWithCompanion(ActiveRestStatesCompanion data) { + return ActiveRestState( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + schemaVersion: data.schemaVersion.present + ? data.schemaVersion.value + : this.schemaVersion, + syncState: data.syncState.present ? data.syncState.value : this.syncState, + localRevision: data.localRevision.present + ? data.localRevision.value + : this.localRevision, + originDeviceId: data.originDeviceId.present + ? data.originDeviceId.value + : this.originDeviceId, + futureOwnerProfileId: data.futureOwnerProfileId.present + ? data.futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: data.lastSyncedAt.present + ? data.lastSyncedAt.value + : this.lastSyncedAt, + remoteRevision: data.remoteRevision.present + ? data.remoteRevision.value + : this.remoteRevision, + activeWorkoutSessionId: data.activeWorkoutSessionId.present + ? data.activeWorkoutSessionId.value + : this.activeWorkoutSessionId, + afterProgramIndex: data.afterProgramIndex.present + ? data.afterProgramIndex.value + : this.afterProgramIndex, + afterExerciseIndex: data.afterExerciseIndex.present + ? data.afterExerciseIndex.value + : this.afterExerciseIndex, + afterSetIndex: data.afterSetIndex.present + ? data.afterSetIndex.value + : this.afterSetIndex, + plannedRestSeconds: data.plannedRestSeconds.present + ? data.plannedRestSeconds.value + : this.plannedRestSeconds, + adjustedRestSeconds: data.adjustedRestSeconds.present + ? data.adjustedRestSeconds.value + : this.adjustedRestSeconds, + startedAt: data.startedAt.present ? data.startedAt.value : this.startedAt, + endedAt: data.endedAt.present ? data.endedAt.value : this.endedAt, + skippedAt: data.skippedAt.present ? data.skippedAt.value : this.skippedAt, + ); + } + + @override + String toString() { + return (StringBuffer('ActiveRestState(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('activeWorkoutSessionId: $activeWorkoutSessionId, ') + ..write('afterProgramIndex: $afterProgramIndex, ') + ..write('afterExerciseIndex: $afterExerciseIndex, ') + ..write('afterSetIndex: $afterSetIndex, ') + ..write('plannedRestSeconds: $plannedRestSeconds, ') + ..write('adjustedRestSeconds: $adjustedRestSeconds, ') + ..write('startedAt: $startedAt, ') + ..write('endedAt: $endedAt, ') + ..write('skippedAt: $skippedAt') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + activeWorkoutSessionId, + afterProgramIndex, + afterExerciseIndex, + afterSetIndex, + plannedRestSeconds, + adjustedRestSeconds, + startedAt, + endedAt, + skippedAt, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is ActiveRestState && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.deletedAt == this.deletedAt && + other.schemaVersion == this.schemaVersion && + other.syncState == this.syncState && + other.localRevision == this.localRevision && + other.originDeviceId == this.originDeviceId && + other.futureOwnerProfileId == this.futureOwnerProfileId && + other.lastSyncedAt == this.lastSyncedAt && + other.remoteRevision == this.remoteRevision && + other.activeWorkoutSessionId == this.activeWorkoutSessionId && + other.afterProgramIndex == this.afterProgramIndex && + other.afterExerciseIndex == this.afterExerciseIndex && + other.afterSetIndex == this.afterSetIndex && + other.plannedRestSeconds == this.plannedRestSeconds && + other.adjustedRestSeconds == this.adjustedRestSeconds && + other.startedAt == this.startedAt && + other.endedAt == this.endedAt && + other.skippedAt == this.skippedAt); +} + +class ActiveRestStatesCompanion extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value deletedAt; + final Value schemaVersion; + final Value syncState; + final Value localRevision; + final Value originDeviceId; + final Value futureOwnerProfileId; + final Value lastSyncedAt; + final Value remoteRevision; + final Value activeWorkoutSessionId; + final Value afterProgramIndex; + final Value afterExerciseIndex; + final Value afterSetIndex; + final Value plannedRestSeconds; + final Value adjustedRestSeconds; + final Value startedAt; + final Value endedAt; + final Value skippedAt; + final Value rowid; + const ActiveRestStatesCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + this.syncState = const Value.absent(), + this.localRevision = const Value.absent(), + this.originDeviceId = const Value.absent(), + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.activeWorkoutSessionId = const Value.absent(), + this.afterProgramIndex = const Value.absent(), + this.afterExerciseIndex = const Value.absent(), + this.afterSetIndex = const Value.absent(), + this.plannedRestSeconds = const Value.absent(), + this.adjustedRestSeconds = const Value.absent(), + this.startedAt = const Value.absent(), + this.endedAt = const Value.absent(), + this.skippedAt = const Value.absent(), + this.rowid = const Value.absent(), + }); + ActiveRestStatesCompanion.insert({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + required String activeWorkoutSessionId, + required int afterProgramIndex, + required int afterExerciseIndex, + required int afterSetIndex, + required int plannedRestSeconds, + required int adjustedRestSeconds, + required DateTime startedAt, + this.endedAt = const Value.absent(), + this.skippedAt = const Value.absent(), + this.rowid = const Value.absent(), + }) : id = Value(id), + createdAt = Value(createdAt), + updatedAt = Value(updatedAt), + syncState = Value(syncState), + localRevision = Value(localRevision), + originDeviceId = Value(originDeviceId), + activeWorkoutSessionId = Value(activeWorkoutSessionId), + afterProgramIndex = Value(afterProgramIndex), + afterExerciseIndex = Value(afterExerciseIndex), + afterSetIndex = Value(afterSetIndex), + plannedRestSeconds = Value(plannedRestSeconds), + adjustedRestSeconds = Value(adjustedRestSeconds), + startedAt = Value(startedAt); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? deletedAt, + Expression? schemaVersion, + Expression? syncState, + Expression? localRevision, + Expression? originDeviceId, + Expression? futureOwnerProfileId, + Expression? lastSyncedAt, + Expression? remoteRevision, + Expression? activeWorkoutSessionId, + Expression? afterProgramIndex, + Expression? afterExerciseIndex, + Expression? afterSetIndex, + Expression? plannedRestSeconds, + Expression? adjustedRestSeconds, + Expression? startedAt, + Expression? endedAt, + Expression? skippedAt, + Expression? rowid, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (deletedAt != null) 'deleted_at': deletedAt, + if (schemaVersion != null) 'schema_version': schemaVersion, + if (syncState != null) 'sync_state': syncState, + if (localRevision != null) 'local_revision': localRevision, + if (originDeviceId != null) 'origin_device_id': originDeviceId, + if (futureOwnerProfileId != null) + 'future_owner_profile_id': futureOwnerProfileId, + if (lastSyncedAt != null) 'last_synced_at': lastSyncedAt, + if (remoteRevision != null) 'remote_revision': remoteRevision, + if (activeWorkoutSessionId != null) + 'active_workout_session_id': activeWorkoutSessionId, + if (afterProgramIndex != null) 'after_program_index': afterProgramIndex, + if (afterExerciseIndex != null) + 'after_exercise_index': afterExerciseIndex, + if (afterSetIndex != null) 'after_set_index': afterSetIndex, + if (plannedRestSeconds != null) + 'planned_rest_seconds': plannedRestSeconds, + if (adjustedRestSeconds != null) + 'adjusted_rest_seconds': adjustedRestSeconds, + if (startedAt != null) 'started_at': startedAt, + if (endedAt != null) 'ended_at': endedAt, + if (skippedAt != null) 'skipped_at': skippedAt, + if (rowid != null) 'rowid': rowid, + }); + } + + ActiveRestStatesCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? deletedAt, + Value? schemaVersion, + Value? syncState, + Value? localRevision, + Value? originDeviceId, + Value? futureOwnerProfileId, + Value? lastSyncedAt, + Value? remoteRevision, + Value? activeWorkoutSessionId, + Value? afterProgramIndex, + Value? afterExerciseIndex, + Value? afterSetIndex, + Value? plannedRestSeconds, + Value? adjustedRestSeconds, + Value? startedAt, + Value? endedAt, + Value? skippedAt, + Value? rowid, + }) { + return ActiveRestStatesCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt ?? this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId ?? this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt ?? this.lastSyncedAt, + remoteRevision: remoteRevision ?? this.remoteRevision, + activeWorkoutSessionId: + activeWorkoutSessionId ?? this.activeWorkoutSessionId, + afterProgramIndex: afterProgramIndex ?? this.afterProgramIndex, + afterExerciseIndex: afterExerciseIndex ?? this.afterExerciseIndex, + afterSetIndex: afterSetIndex ?? this.afterSetIndex, + plannedRestSeconds: plannedRestSeconds ?? this.plannedRestSeconds, + adjustedRestSeconds: adjustedRestSeconds ?? this.adjustedRestSeconds, + startedAt: startedAt ?? this.startedAt, + endedAt: endedAt ?? this.endedAt, + skippedAt: skippedAt ?? this.skippedAt, + rowid: rowid ?? this.rowid, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (schemaVersion.present) { + map['schema_version'] = Variable(schemaVersion.value); + } + if (syncState.present) { + map['sync_state'] = Variable(syncState.value); + } + if (localRevision.present) { + map['local_revision'] = Variable(localRevision.value); + } + if (originDeviceId.present) { + map['origin_device_id'] = Variable(originDeviceId.value); + } + if (futureOwnerProfileId.present) { + map['future_owner_profile_id'] = Variable( + futureOwnerProfileId.value, + ); + } + if (lastSyncedAt.present) { + map['last_synced_at'] = Variable(lastSyncedAt.value); + } + if (remoteRevision.present) { + map['remote_revision'] = Variable(remoteRevision.value); + } + if (activeWorkoutSessionId.present) { + map['active_workout_session_id'] = Variable( + activeWorkoutSessionId.value, + ); + } + if (afterProgramIndex.present) { + map['after_program_index'] = Variable(afterProgramIndex.value); + } + if (afterExerciseIndex.present) { + map['after_exercise_index'] = Variable(afterExerciseIndex.value); + } + if (afterSetIndex.present) { + map['after_set_index'] = Variable(afterSetIndex.value); + } + if (plannedRestSeconds.present) { + map['planned_rest_seconds'] = Variable(plannedRestSeconds.value); + } + if (adjustedRestSeconds.present) { + map['adjusted_rest_seconds'] = Variable(adjustedRestSeconds.value); + } + if (startedAt.present) { + map['started_at'] = Variable(startedAt.value); + } + if (endedAt.present) { + map['ended_at'] = Variable(endedAt.value); + } + if (skippedAt.present) { + map['skipped_at'] = Variable(skippedAt.value); + } + if (rowid.present) { + map['rowid'] = Variable(rowid.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('ActiveRestStatesCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('activeWorkoutSessionId: $activeWorkoutSessionId, ') + ..write('afterProgramIndex: $afterProgramIndex, ') + ..write('afterExerciseIndex: $afterExerciseIndex, ') + ..write('afterSetIndex: $afterSetIndex, ') + ..write('plannedRestSeconds: $plannedRestSeconds, ') + ..write('adjustedRestSeconds: $adjustedRestSeconds, ') + ..write('startedAt: $startedAt, ') + ..write('endedAt: $endedAt, ') + ..write('skippedAt: $skippedAt, ') + ..write('rowid: $rowid') + ..write(')')) + .toString(); + } +} + +class $ActiveSetResultsTable extends ActiveSetResults + with TableInfo<$ActiveSetResultsTable, ActiveSetResult> { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + $ActiveSetResultsTable(this.attachedDatabase, [this._alias]); + static const VerificationMeta _idMeta = const VerificationMeta('id'); + @override + late final GeneratedColumn id = GeneratedColumn( + '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: true, + ); + static const VerificationMeta _updatedAtMeta = const VerificationMeta( + 'updatedAt', + ); + @override + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _deletedAtMeta = const VerificationMeta( + 'deletedAt', + ); + @override + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _schemaVersionMeta = const VerificationMeta( + 'schemaVersion', + ); + @override + late final GeneratedColumn schemaVersion = GeneratedColumn( + 'schema_version', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const Constant(1), + ); + static const VerificationMeta _syncStateMeta = const VerificationMeta( + 'syncState', + ); + @override + late final GeneratedColumn syncState = GeneratedColumn( + 'sync_state', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + $customConstraints: + 'NOT NULL CHECK (sync_state IN (\'localOnly\', \'dirty\', \'synced\', \'deleted\'))', + ); + static const VerificationMeta _localRevisionMeta = const VerificationMeta( + 'localRevision', + ); + @override + late final GeneratedColumn localRevision = GeneratedColumn( + 'local_revision', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + $customConstraints: 'NOT NULL CHECK (local_revision >= 0)', + ); + static const VerificationMeta _originDeviceIdMeta = const VerificationMeta( + 'originDeviceId', + ); + @override + late final GeneratedColumn originDeviceId = GeneratedColumn( + 'origin_device_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _futureOwnerProfileIdMeta = + const VerificationMeta('futureOwnerProfileId'); + @override + late final GeneratedColumn futureOwnerProfileId = + GeneratedColumn( + 'future_owner_profile_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _lastSyncedAtMeta = const VerificationMeta( + 'lastSyncedAt', + ); + @override + late final GeneratedColumn lastSyncedAt = GeneratedColumn( + 'last_synced_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _remoteRevisionMeta = const VerificationMeta( + 'remoteRevision', + ); + @override + late final GeneratedColumn remoteRevision = GeneratedColumn( + 'remote_revision', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _activeWorkoutSessionIdMeta = + const VerificationMeta('activeWorkoutSessionId'); + @override + late final GeneratedColumn activeWorkoutSessionId = + GeneratedColumn( + 'active_workout_session_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES active_workout_sessions (id)', + ), + ); + static const VerificationMeta _programSnapshotIdMeta = const VerificationMeta( + 'programSnapshotId', + ); + @override + late final GeneratedColumn programSnapshotId = + GeneratedColumn( + 'program_snapshot_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _exerciseSnapshotIdMeta = + const VerificationMeta('exerciseSnapshotId'); + @override + late final GeneratedColumn exerciseSnapshotId = + GeneratedColumn( + 'exercise_snapshot_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _programIndexMeta = const VerificationMeta( + 'programIndex', + ); + @override + late final GeneratedColumn programIndex = GeneratedColumn( + 'program_index', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _exerciseIndexMeta = const VerificationMeta( + 'exerciseIndex', + ); + @override + late final GeneratedColumn exerciseIndex = GeneratedColumn( + 'exercise_index', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _setIndexMeta = const VerificationMeta( + 'setIndex', + ); + @override + late final GeneratedColumn setIndex = GeneratedColumn( + 'set_index', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _startedAtMeta = const VerificationMeta( + 'startedAt', + ); + @override + late final GeneratedColumn startedAt = GeneratedColumn( + 'started_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _completedAtMeta = const VerificationMeta( + 'completedAt', + ); + @override + late final GeneratedColumn completedAt = GeneratedColumn( + 'completed_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _actualTimeMsMeta = const VerificationMeta( + 'actualTimeMs', + ); + @override + late final GeneratedColumn actualTimeMs = GeneratedColumn( + 'actual_time_ms', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _actualRepsMeta = const VerificationMeta( + 'actualReps', + ); + @override + late final GeneratedColumn actualReps = GeneratedColumn( + 'actual_reps', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _actualScoreMeta = const VerificationMeta( + 'actualScore', + ); + @override + late final GeneratedColumn actualScore = GeneratedColumn( + 'actual_score', + aliasedName, + true, + type: DriftSqlType.double, + requiredDuringInsert: false, + ); + static const VerificationMeta _scoreLabelSnapshotMeta = + const VerificationMeta('scoreLabelSnapshot'); + @override + late final GeneratedColumn scoreLabelSnapshot = + GeneratedColumn( + 'score_label_snapshot', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _scoreUnitSnapshotMeta = const VerificationMeta( + 'scoreUnitSnapshot', + ); + @override + late final GeneratedColumn scoreUnitSnapshot = + GeneratedColumn( + 'score_unit_snapshot', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _noteMeta = const VerificationMeta('note'); + @override + late final GeneratedColumn note = GeneratedColumn( + 'note', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + activeWorkoutSessionId, + programSnapshotId, + exerciseSnapshotId, + programIndex, + exerciseIndex, + setIndex, + startedAt, + completedAt, + actualTimeMs, + actualReps, + actualScore, + scoreLabelSnapshot, + scoreUnitSnapshot, + note, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'active_set_results'; + @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)); + } else if (isInserting) { + context.missing(_idMeta); + } + if (data.containsKey('created_at')) { + context.handle( + _createdAtMeta, + createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), + ); + } else if (isInserting) { + context.missing(_createdAtMeta); + } + if (data.containsKey('updated_at')) { + context.handle( + _updatedAtMeta, + updatedAt.isAcceptableOrUnknown(data['updated_at']!, _updatedAtMeta), + ); + } else if (isInserting) { + context.missing(_updatedAtMeta); + } + if (data.containsKey('deleted_at')) { + context.handle( + _deletedAtMeta, + deletedAt.isAcceptableOrUnknown(data['deleted_at']!, _deletedAtMeta), + ); + } + if (data.containsKey('schema_version')) { + context.handle( + _schemaVersionMeta, + schemaVersion.isAcceptableOrUnknown( + data['schema_version']!, + _schemaVersionMeta, + ), + ); + } + if (data.containsKey('sync_state')) { + context.handle( + _syncStateMeta, + syncState.isAcceptableOrUnknown(data['sync_state']!, _syncStateMeta), + ); + } else if (isInserting) { + context.missing(_syncStateMeta); + } + if (data.containsKey('local_revision')) { + context.handle( + _localRevisionMeta, + localRevision.isAcceptableOrUnknown( + data['local_revision']!, + _localRevisionMeta, + ), + ); + } else if (isInserting) { + context.missing(_localRevisionMeta); + } + if (data.containsKey('origin_device_id')) { + context.handle( + _originDeviceIdMeta, + originDeviceId.isAcceptableOrUnknown( + data['origin_device_id']!, + _originDeviceIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_originDeviceIdMeta); + } + if (data.containsKey('future_owner_profile_id')) { + context.handle( + _futureOwnerProfileIdMeta, + futureOwnerProfileId.isAcceptableOrUnknown( + data['future_owner_profile_id']!, + _futureOwnerProfileIdMeta, + ), + ); + } + if (data.containsKey('last_synced_at')) { + context.handle( + _lastSyncedAtMeta, + lastSyncedAt.isAcceptableOrUnknown( + data['last_synced_at']!, + _lastSyncedAtMeta, + ), + ); + } + if (data.containsKey('remote_revision')) { + context.handle( + _remoteRevisionMeta, + remoteRevision.isAcceptableOrUnknown( + data['remote_revision']!, + _remoteRevisionMeta, + ), + ); + } + if (data.containsKey('active_workout_session_id')) { + context.handle( + _activeWorkoutSessionIdMeta, + activeWorkoutSessionId.isAcceptableOrUnknown( + data['active_workout_session_id']!, + _activeWorkoutSessionIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_activeWorkoutSessionIdMeta); + } + if (data.containsKey('program_snapshot_id')) { + context.handle( + _programSnapshotIdMeta, + programSnapshotId.isAcceptableOrUnknown( + data['program_snapshot_id']!, + _programSnapshotIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_programSnapshotIdMeta); + } + if (data.containsKey('exercise_snapshot_id')) { + context.handle( + _exerciseSnapshotIdMeta, + exerciseSnapshotId.isAcceptableOrUnknown( + data['exercise_snapshot_id']!, + _exerciseSnapshotIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_exerciseSnapshotIdMeta); + } + if (data.containsKey('program_index')) { + context.handle( + _programIndexMeta, + programIndex.isAcceptableOrUnknown( + data['program_index']!, + _programIndexMeta, + ), + ); + } else if (isInserting) { + context.missing(_programIndexMeta); + } + if (data.containsKey('exercise_index')) { + context.handle( + _exerciseIndexMeta, + exerciseIndex.isAcceptableOrUnknown( + data['exercise_index']!, + _exerciseIndexMeta, + ), + ); + } else if (isInserting) { + context.missing(_exerciseIndexMeta); + } + if (data.containsKey('set_index')) { + context.handle( + _setIndexMeta, + setIndex.isAcceptableOrUnknown(data['set_index']!, _setIndexMeta), + ); + } else if (isInserting) { + context.missing(_setIndexMeta); + } + if (data.containsKey('started_at')) { + context.handle( + _startedAtMeta, + startedAt.isAcceptableOrUnknown(data['started_at']!, _startedAtMeta), + ); + } + if (data.containsKey('completed_at')) { + context.handle( + _completedAtMeta, + completedAt.isAcceptableOrUnknown( + data['completed_at']!, + _completedAtMeta, + ), + ); + } + if (data.containsKey('actual_time_ms')) { + context.handle( + _actualTimeMsMeta, + actualTimeMs.isAcceptableOrUnknown( + data['actual_time_ms']!, + _actualTimeMsMeta, + ), + ); + } + if (data.containsKey('actual_reps')) { + context.handle( + _actualRepsMeta, + actualReps.isAcceptableOrUnknown(data['actual_reps']!, _actualRepsMeta), + ); + } + if (data.containsKey('actual_score')) { + context.handle( + _actualScoreMeta, + actualScore.isAcceptableOrUnknown( + data['actual_score']!, + _actualScoreMeta, + ), + ); + } + if (data.containsKey('score_label_snapshot')) { + context.handle( + _scoreLabelSnapshotMeta, + scoreLabelSnapshot.isAcceptableOrUnknown( + data['score_label_snapshot']!, + _scoreLabelSnapshotMeta, + ), + ); + } + if (data.containsKey('score_unit_snapshot')) { + context.handle( + _scoreUnitSnapshotMeta, + scoreUnitSnapshot.isAcceptableOrUnknown( + data['score_unit_snapshot']!, + _scoreUnitSnapshotMeta, + ), + ); + } + if (data.containsKey('note')) { + context.handle( + _noteMeta, + note.isAcceptableOrUnknown(data['note']!, _noteMeta), + ); + } + return context; + } + + @override + Set get $primaryKey => {id}; + @override + ActiveSetResult map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return ActiveSetResult( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + schemaVersion: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}schema_version'], + )!, + syncState: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}sync_state'], + )!, + localRevision: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}local_revision'], + )!, + originDeviceId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}origin_device_id'], + )!, + futureOwnerProfileId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}future_owner_profile_id'], + ), + lastSyncedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_synced_at'], + ), + remoteRevision: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}remote_revision'], + ), + activeWorkoutSessionId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}active_workout_session_id'], + )!, + programSnapshotId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}program_snapshot_id'], + )!, + exerciseSnapshotId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}exercise_snapshot_id'], + )!, + programIndex: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}program_index'], + )!, + exerciseIndex: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}exercise_index'], + )!, + setIndex: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}set_index'], + )!, + startedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}started_at'], + ), + completedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}completed_at'], + ), + actualTimeMs: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}actual_time_ms'], + ), + actualReps: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}actual_reps'], + ), + actualScore: attachedDatabase.typeMapping.read( + DriftSqlType.double, + data['${effectivePrefix}actual_score'], + ), + scoreLabelSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}score_label_snapshot'], + ), + scoreUnitSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}score_unit_snapshot'], + ), + note: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}note'], + ), + ); + } + + @override + $ActiveSetResultsTable createAlias(String alias) { + return $ActiveSetResultsTable(attachedDatabase, alias); + } +} + +class ActiveSetResult extends DataClass implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final DateTime? deletedAt; + final int schemaVersion; + final String syncState; + final int localRevision; + final String originDeviceId; + final String? futureOwnerProfileId; + final DateTime? lastSyncedAt; + final String? remoteRevision; + final String activeWorkoutSessionId; + final String programSnapshotId; + final String exerciseSnapshotId; + final int programIndex; + final int exerciseIndex; + final int setIndex; + final DateTime? startedAt; + final DateTime? completedAt; + final int? actualTimeMs; + final int? actualReps; + final double? actualScore; + final String? scoreLabelSnapshot; + final String? scoreUnitSnapshot; + final String? note; + const ActiveSetResult({ + required this.id, + required this.createdAt, + required this.updatedAt, + this.deletedAt, + required this.schemaVersion, + required this.syncState, + required this.localRevision, + required this.originDeviceId, + this.futureOwnerProfileId, + this.lastSyncedAt, + this.remoteRevision, + required this.activeWorkoutSessionId, + required this.programSnapshotId, + required this.exerciseSnapshotId, + required this.programIndex, + required this.exerciseIndex, + required this.setIndex, + this.startedAt, + this.completedAt, + this.actualTimeMs, + this.actualReps, + this.actualScore, + this.scoreLabelSnapshot, + this.scoreUnitSnapshot, + this.note, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + map['schema_version'] = Variable(schemaVersion); + map['sync_state'] = Variable(syncState); + map['local_revision'] = Variable(localRevision); + map['origin_device_id'] = Variable(originDeviceId); + if (!nullToAbsent || futureOwnerProfileId != null) { + map['future_owner_profile_id'] = Variable(futureOwnerProfileId); + } + if (!nullToAbsent || lastSyncedAt != null) { + map['last_synced_at'] = Variable(lastSyncedAt); + } + if (!nullToAbsent || remoteRevision != null) { + map['remote_revision'] = Variable(remoteRevision); + } + map['active_workout_session_id'] = Variable(activeWorkoutSessionId); + map['program_snapshot_id'] = Variable(programSnapshotId); + map['exercise_snapshot_id'] = Variable(exerciseSnapshotId); + map['program_index'] = Variable(programIndex); + map['exercise_index'] = Variable(exerciseIndex); + map['set_index'] = Variable(setIndex); + if (!nullToAbsent || startedAt != null) { + map['started_at'] = Variable(startedAt); + } + if (!nullToAbsent || completedAt != null) { + map['completed_at'] = Variable(completedAt); + } + if (!nullToAbsent || actualTimeMs != null) { + map['actual_time_ms'] = Variable(actualTimeMs); + } + if (!nullToAbsent || actualReps != null) { + map['actual_reps'] = Variable(actualReps); + } + if (!nullToAbsent || actualScore != null) { + map['actual_score'] = Variable(actualScore); + } + if (!nullToAbsent || scoreLabelSnapshot != null) { + map['score_label_snapshot'] = Variable(scoreLabelSnapshot); + } + if (!nullToAbsent || scoreUnitSnapshot != null) { + map['score_unit_snapshot'] = Variable(scoreUnitSnapshot); + } + if (!nullToAbsent || note != null) { + map['note'] = Variable(note); + } + return map; + } + + ActiveSetResultsCompanion toCompanion(bool nullToAbsent) { + return ActiveSetResultsCompanion( + id: Value(id), + createdAt: Value(createdAt), + updatedAt: Value(updatedAt), + deletedAt: deletedAt == null && nullToAbsent + ? const Value.absent() + : Value(deletedAt), + schemaVersion: Value(schemaVersion), + syncState: Value(syncState), + localRevision: Value(localRevision), + originDeviceId: Value(originDeviceId), + futureOwnerProfileId: futureOwnerProfileId == null && nullToAbsent + ? const Value.absent() + : Value(futureOwnerProfileId), + lastSyncedAt: lastSyncedAt == null && nullToAbsent + ? const Value.absent() + : Value(lastSyncedAt), + remoteRevision: remoteRevision == null && nullToAbsent + ? const Value.absent() + : Value(remoteRevision), + activeWorkoutSessionId: Value(activeWorkoutSessionId), + programSnapshotId: Value(programSnapshotId), + exerciseSnapshotId: Value(exerciseSnapshotId), + programIndex: Value(programIndex), + exerciseIndex: Value(exerciseIndex), + setIndex: Value(setIndex), + startedAt: startedAt == null && nullToAbsent + ? const Value.absent() + : Value(startedAt), + completedAt: completedAt == null && nullToAbsent + ? const Value.absent() + : Value(completedAt), + actualTimeMs: actualTimeMs == null && nullToAbsent + ? const Value.absent() + : Value(actualTimeMs), + actualReps: actualReps == null && nullToAbsent + ? const Value.absent() + : Value(actualReps), + actualScore: actualScore == null && nullToAbsent + ? const Value.absent() + : Value(actualScore), + scoreLabelSnapshot: scoreLabelSnapshot == null && nullToAbsent + ? const Value.absent() + : Value(scoreLabelSnapshot), + scoreUnitSnapshot: scoreUnitSnapshot == null && nullToAbsent + ? const Value.absent() + : Value(scoreUnitSnapshot), + note: note == null && nullToAbsent ? const Value.absent() : Value(note), + ); + } + + factory ActiveSetResult.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return ActiveSetResult( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + deletedAt: serializer.fromJson(json['deletedAt']), + schemaVersion: serializer.fromJson(json['schemaVersion']), + syncState: serializer.fromJson(json['syncState']), + localRevision: serializer.fromJson(json['localRevision']), + originDeviceId: serializer.fromJson(json['originDeviceId']), + futureOwnerProfileId: serializer.fromJson( + json['futureOwnerProfileId'], + ), + lastSyncedAt: serializer.fromJson(json['lastSyncedAt']), + remoteRevision: serializer.fromJson(json['remoteRevision']), + activeWorkoutSessionId: serializer.fromJson( + json['activeWorkoutSessionId'], + ), + programSnapshotId: serializer.fromJson(json['programSnapshotId']), + exerciseSnapshotId: serializer.fromJson( + json['exerciseSnapshotId'], + ), + programIndex: serializer.fromJson(json['programIndex']), + exerciseIndex: serializer.fromJson(json['exerciseIndex']), + setIndex: serializer.fromJson(json['setIndex']), + startedAt: serializer.fromJson(json['startedAt']), + completedAt: serializer.fromJson(json['completedAt']), + actualTimeMs: serializer.fromJson(json['actualTimeMs']), + actualReps: serializer.fromJson(json['actualReps']), + actualScore: serializer.fromJson(json['actualScore']), + scoreLabelSnapshot: serializer.fromJson( + json['scoreLabelSnapshot'], + ), + scoreUnitSnapshot: serializer.fromJson( + json['scoreUnitSnapshot'], + ), + note: serializer.fromJson(json['note']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'deletedAt': serializer.toJson(deletedAt), + 'schemaVersion': serializer.toJson(schemaVersion), + 'syncState': serializer.toJson(syncState), + 'localRevision': serializer.toJson(localRevision), + 'originDeviceId': serializer.toJson(originDeviceId), + 'futureOwnerProfileId': serializer.toJson(futureOwnerProfileId), + 'lastSyncedAt': serializer.toJson(lastSyncedAt), + 'remoteRevision': serializer.toJson(remoteRevision), + 'activeWorkoutSessionId': serializer.toJson( + activeWorkoutSessionId, + ), + 'programSnapshotId': serializer.toJson(programSnapshotId), + 'exerciseSnapshotId': serializer.toJson(exerciseSnapshotId), + 'programIndex': serializer.toJson(programIndex), + 'exerciseIndex': serializer.toJson(exerciseIndex), + 'setIndex': serializer.toJson(setIndex), + 'startedAt': serializer.toJson(startedAt), + 'completedAt': serializer.toJson(completedAt), + 'actualTimeMs': serializer.toJson(actualTimeMs), + 'actualReps': serializer.toJson(actualReps), + 'actualScore': serializer.toJson(actualScore), + 'scoreLabelSnapshot': serializer.toJson(scoreLabelSnapshot), + 'scoreUnitSnapshot': serializer.toJson(scoreUnitSnapshot), + 'note': serializer.toJson(note), + }; + } + + ActiveSetResult copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + Value deletedAt = const Value.absent(), + int? schemaVersion, + String? syncState, + int? localRevision, + String? originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + String? activeWorkoutSessionId, + String? programSnapshotId, + String? exerciseSnapshotId, + int? programIndex, + int? exerciseIndex, + int? setIndex, + Value startedAt = const Value.absent(), + Value completedAt = const Value.absent(), + Value actualTimeMs = const Value.absent(), + Value actualReps = const Value.absent(), + Value actualScore = const Value.absent(), + Value scoreLabelSnapshot = const Value.absent(), + Value scoreUnitSnapshot = const Value.absent(), + Value note = const Value.absent(), + }) => ActiveSetResult( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId.present + ? futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt.present ? lastSyncedAt.value : this.lastSyncedAt, + remoteRevision: remoteRevision.present + ? remoteRevision.value + : this.remoteRevision, + activeWorkoutSessionId: + activeWorkoutSessionId ?? this.activeWorkoutSessionId, + programSnapshotId: programSnapshotId ?? this.programSnapshotId, + exerciseSnapshotId: exerciseSnapshotId ?? this.exerciseSnapshotId, + programIndex: programIndex ?? this.programIndex, + exerciseIndex: exerciseIndex ?? this.exerciseIndex, + setIndex: setIndex ?? this.setIndex, + startedAt: startedAt.present ? startedAt.value : this.startedAt, + completedAt: completedAt.present ? completedAt.value : this.completedAt, + actualTimeMs: actualTimeMs.present ? actualTimeMs.value : this.actualTimeMs, + actualReps: actualReps.present ? actualReps.value : this.actualReps, + actualScore: actualScore.present ? actualScore.value : this.actualScore, + scoreLabelSnapshot: scoreLabelSnapshot.present + ? scoreLabelSnapshot.value + : this.scoreLabelSnapshot, + scoreUnitSnapshot: scoreUnitSnapshot.present + ? scoreUnitSnapshot.value + : this.scoreUnitSnapshot, + note: note.present ? note.value : this.note, + ); + ActiveSetResult copyWithCompanion(ActiveSetResultsCompanion data) { + return ActiveSetResult( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + schemaVersion: data.schemaVersion.present + ? data.schemaVersion.value + : this.schemaVersion, + syncState: data.syncState.present ? data.syncState.value : this.syncState, + localRevision: data.localRevision.present + ? data.localRevision.value + : this.localRevision, + originDeviceId: data.originDeviceId.present + ? data.originDeviceId.value + : this.originDeviceId, + futureOwnerProfileId: data.futureOwnerProfileId.present + ? data.futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: data.lastSyncedAt.present + ? data.lastSyncedAt.value + : this.lastSyncedAt, + remoteRevision: data.remoteRevision.present + ? data.remoteRevision.value + : this.remoteRevision, + activeWorkoutSessionId: data.activeWorkoutSessionId.present + ? data.activeWorkoutSessionId.value + : this.activeWorkoutSessionId, + programSnapshotId: data.programSnapshotId.present + ? data.programSnapshotId.value + : this.programSnapshotId, + exerciseSnapshotId: data.exerciseSnapshotId.present + ? data.exerciseSnapshotId.value + : this.exerciseSnapshotId, + programIndex: data.programIndex.present + ? data.programIndex.value + : this.programIndex, + exerciseIndex: data.exerciseIndex.present + ? data.exerciseIndex.value + : this.exerciseIndex, + setIndex: data.setIndex.present ? data.setIndex.value : this.setIndex, + startedAt: data.startedAt.present ? data.startedAt.value : this.startedAt, + completedAt: data.completedAt.present + ? data.completedAt.value + : this.completedAt, + actualTimeMs: data.actualTimeMs.present + ? data.actualTimeMs.value + : this.actualTimeMs, + actualReps: data.actualReps.present + ? data.actualReps.value + : this.actualReps, + actualScore: data.actualScore.present + ? data.actualScore.value + : this.actualScore, + scoreLabelSnapshot: data.scoreLabelSnapshot.present + ? data.scoreLabelSnapshot.value + : this.scoreLabelSnapshot, + scoreUnitSnapshot: data.scoreUnitSnapshot.present + ? data.scoreUnitSnapshot.value + : this.scoreUnitSnapshot, + note: data.note.present ? data.note.value : this.note, + ); + } + + @override + String toString() { + return (StringBuffer('ActiveSetResult(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('activeWorkoutSessionId: $activeWorkoutSessionId, ') + ..write('programSnapshotId: $programSnapshotId, ') + ..write('exerciseSnapshotId: $exerciseSnapshotId, ') + ..write('programIndex: $programIndex, ') + ..write('exerciseIndex: $exerciseIndex, ') + ..write('setIndex: $setIndex, ') + ..write('startedAt: $startedAt, ') + ..write('completedAt: $completedAt, ') + ..write('actualTimeMs: $actualTimeMs, ') + ..write('actualReps: $actualReps, ') + ..write('actualScore: $actualScore, ') + ..write('scoreLabelSnapshot: $scoreLabelSnapshot, ') + ..write('scoreUnitSnapshot: $scoreUnitSnapshot, ') + ..write('note: $note') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hashAll([ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + activeWorkoutSessionId, + programSnapshotId, + exerciseSnapshotId, + programIndex, + exerciseIndex, + setIndex, + startedAt, + completedAt, + actualTimeMs, + actualReps, + actualScore, + scoreLabelSnapshot, + scoreUnitSnapshot, + note, + ]); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is ActiveSetResult && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.deletedAt == this.deletedAt && + other.schemaVersion == this.schemaVersion && + other.syncState == this.syncState && + other.localRevision == this.localRevision && + other.originDeviceId == this.originDeviceId && + other.futureOwnerProfileId == this.futureOwnerProfileId && + other.lastSyncedAt == this.lastSyncedAt && + other.remoteRevision == this.remoteRevision && + other.activeWorkoutSessionId == this.activeWorkoutSessionId && + other.programSnapshotId == this.programSnapshotId && + other.exerciseSnapshotId == this.exerciseSnapshotId && + other.programIndex == this.programIndex && + other.exerciseIndex == this.exerciseIndex && + other.setIndex == this.setIndex && + other.startedAt == this.startedAt && + other.completedAt == this.completedAt && + other.actualTimeMs == this.actualTimeMs && + other.actualReps == this.actualReps && + other.actualScore == this.actualScore && + other.scoreLabelSnapshot == this.scoreLabelSnapshot && + other.scoreUnitSnapshot == this.scoreUnitSnapshot && + other.note == this.note); +} + +class ActiveSetResultsCompanion extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value deletedAt; + final Value schemaVersion; + final Value syncState; + final Value localRevision; + final Value originDeviceId; + final Value futureOwnerProfileId; + final Value lastSyncedAt; + final Value remoteRevision; + final Value activeWorkoutSessionId; + final Value programSnapshotId; + final Value exerciseSnapshotId; + final Value programIndex; + final Value exerciseIndex; + final Value setIndex; + final Value startedAt; + final Value completedAt; + final Value actualTimeMs; + final Value actualReps; + final Value actualScore; + final Value scoreLabelSnapshot; + final Value scoreUnitSnapshot; + final Value note; + final Value rowid; + const ActiveSetResultsCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + this.syncState = const Value.absent(), + this.localRevision = const Value.absent(), + this.originDeviceId = const Value.absent(), + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.activeWorkoutSessionId = const Value.absent(), + this.programSnapshotId = const Value.absent(), + this.exerciseSnapshotId = const Value.absent(), + this.programIndex = const Value.absent(), + this.exerciseIndex = const Value.absent(), + this.setIndex = const Value.absent(), + this.startedAt = const Value.absent(), + this.completedAt = const Value.absent(), + this.actualTimeMs = const Value.absent(), + this.actualReps = const Value.absent(), + this.actualScore = const Value.absent(), + this.scoreLabelSnapshot = const Value.absent(), + this.scoreUnitSnapshot = const Value.absent(), + this.note = const Value.absent(), + this.rowid = const Value.absent(), + }); + ActiveSetResultsCompanion.insert({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + required String activeWorkoutSessionId, + required String programSnapshotId, + required String exerciseSnapshotId, + required int programIndex, + required int exerciseIndex, + required int setIndex, + this.startedAt = const Value.absent(), + this.completedAt = const Value.absent(), + this.actualTimeMs = const Value.absent(), + this.actualReps = const Value.absent(), + this.actualScore = const Value.absent(), + this.scoreLabelSnapshot = const Value.absent(), + this.scoreUnitSnapshot = const Value.absent(), + this.note = const Value.absent(), + this.rowid = const Value.absent(), + }) : id = Value(id), + createdAt = Value(createdAt), + updatedAt = Value(updatedAt), + syncState = Value(syncState), + localRevision = Value(localRevision), + originDeviceId = Value(originDeviceId), + activeWorkoutSessionId = Value(activeWorkoutSessionId), + programSnapshotId = Value(programSnapshotId), + exerciseSnapshotId = Value(exerciseSnapshotId), + programIndex = Value(programIndex), + exerciseIndex = Value(exerciseIndex), + setIndex = Value(setIndex); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? deletedAt, + Expression? schemaVersion, + Expression? syncState, + Expression? localRevision, + Expression? originDeviceId, + Expression? futureOwnerProfileId, + Expression? lastSyncedAt, + Expression? remoteRevision, + Expression? activeWorkoutSessionId, + Expression? programSnapshotId, + Expression? exerciseSnapshotId, + Expression? programIndex, + Expression? exerciseIndex, + Expression? setIndex, + Expression? startedAt, + Expression? completedAt, + Expression? actualTimeMs, + Expression? actualReps, + Expression? actualScore, + Expression? scoreLabelSnapshot, + Expression? scoreUnitSnapshot, + Expression? note, + Expression? rowid, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (deletedAt != null) 'deleted_at': deletedAt, + if (schemaVersion != null) 'schema_version': schemaVersion, + if (syncState != null) 'sync_state': syncState, + if (localRevision != null) 'local_revision': localRevision, + if (originDeviceId != null) 'origin_device_id': originDeviceId, + if (futureOwnerProfileId != null) + 'future_owner_profile_id': futureOwnerProfileId, + if (lastSyncedAt != null) 'last_synced_at': lastSyncedAt, + if (remoteRevision != null) 'remote_revision': remoteRevision, + if (activeWorkoutSessionId != null) + 'active_workout_session_id': activeWorkoutSessionId, + if (programSnapshotId != null) 'program_snapshot_id': programSnapshotId, + if (exerciseSnapshotId != null) + 'exercise_snapshot_id': exerciseSnapshotId, + if (programIndex != null) 'program_index': programIndex, + if (exerciseIndex != null) 'exercise_index': exerciseIndex, + if (setIndex != null) 'set_index': setIndex, + if (startedAt != null) 'started_at': startedAt, + if (completedAt != null) 'completed_at': completedAt, + if (actualTimeMs != null) 'actual_time_ms': actualTimeMs, + if (actualReps != null) 'actual_reps': actualReps, + if (actualScore != null) 'actual_score': actualScore, + if (scoreLabelSnapshot != null) + 'score_label_snapshot': scoreLabelSnapshot, + if (scoreUnitSnapshot != null) 'score_unit_snapshot': scoreUnitSnapshot, + if (note != null) 'note': note, + if (rowid != null) 'rowid': rowid, + }); + } + + ActiveSetResultsCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? deletedAt, + Value? schemaVersion, + Value? syncState, + Value? localRevision, + Value? originDeviceId, + Value? futureOwnerProfileId, + Value? lastSyncedAt, + Value? remoteRevision, + Value? activeWorkoutSessionId, + Value? programSnapshotId, + Value? exerciseSnapshotId, + Value? programIndex, + Value? exerciseIndex, + Value? setIndex, + Value? startedAt, + Value? completedAt, + Value? actualTimeMs, + Value? actualReps, + Value? actualScore, + Value? scoreLabelSnapshot, + Value? scoreUnitSnapshot, + Value? note, + Value? rowid, + }) { + return ActiveSetResultsCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt ?? this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId ?? this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt ?? this.lastSyncedAt, + remoteRevision: remoteRevision ?? this.remoteRevision, + activeWorkoutSessionId: + activeWorkoutSessionId ?? this.activeWorkoutSessionId, + programSnapshotId: programSnapshotId ?? this.programSnapshotId, + exerciseSnapshotId: exerciseSnapshotId ?? this.exerciseSnapshotId, + programIndex: programIndex ?? this.programIndex, + exerciseIndex: exerciseIndex ?? this.exerciseIndex, + setIndex: setIndex ?? this.setIndex, + startedAt: startedAt ?? this.startedAt, + completedAt: completedAt ?? this.completedAt, + actualTimeMs: actualTimeMs ?? this.actualTimeMs, + actualReps: actualReps ?? this.actualReps, + actualScore: actualScore ?? this.actualScore, + scoreLabelSnapshot: scoreLabelSnapshot ?? this.scoreLabelSnapshot, + scoreUnitSnapshot: scoreUnitSnapshot ?? this.scoreUnitSnapshot, + note: note ?? this.note, + rowid: rowid ?? this.rowid, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (schemaVersion.present) { + map['schema_version'] = Variable(schemaVersion.value); + } + if (syncState.present) { + map['sync_state'] = Variable(syncState.value); + } + if (localRevision.present) { + map['local_revision'] = Variable(localRevision.value); + } + if (originDeviceId.present) { + map['origin_device_id'] = Variable(originDeviceId.value); + } + if (futureOwnerProfileId.present) { + map['future_owner_profile_id'] = Variable( + futureOwnerProfileId.value, + ); + } + if (lastSyncedAt.present) { + map['last_synced_at'] = Variable(lastSyncedAt.value); + } + if (remoteRevision.present) { + map['remote_revision'] = Variable(remoteRevision.value); + } + if (activeWorkoutSessionId.present) { + map['active_workout_session_id'] = Variable( + activeWorkoutSessionId.value, + ); + } + if (programSnapshotId.present) { + map['program_snapshot_id'] = Variable(programSnapshotId.value); + } + if (exerciseSnapshotId.present) { + map['exercise_snapshot_id'] = Variable(exerciseSnapshotId.value); + } + if (programIndex.present) { + map['program_index'] = Variable(programIndex.value); + } + if (exerciseIndex.present) { + map['exercise_index'] = Variable(exerciseIndex.value); + } + if (setIndex.present) { + map['set_index'] = Variable(setIndex.value); + } + if (startedAt.present) { + map['started_at'] = Variable(startedAt.value); + } + if (completedAt.present) { + map['completed_at'] = Variable(completedAt.value); + } + if (actualTimeMs.present) { + map['actual_time_ms'] = Variable(actualTimeMs.value); + } + if (actualReps.present) { + map['actual_reps'] = Variable(actualReps.value); + } + if (actualScore.present) { + map['actual_score'] = Variable(actualScore.value); + } + if (scoreLabelSnapshot.present) { + map['score_label_snapshot'] = Variable(scoreLabelSnapshot.value); + } + if (scoreUnitSnapshot.present) { + map['score_unit_snapshot'] = Variable(scoreUnitSnapshot.value); + } + if (note.present) { + map['note'] = Variable(note.value); + } + if (rowid.present) { + map['rowid'] = Variable(rowid.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('ActiveSetResultsCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('activeWorkoutSessionId: $activeWorkoutSessionId, ') + ..write('programSnapshotId: $programSnapshotId, ') + ..write('exerciseSnapshotId: $exerciseSnapshotId, ') + ..write('programIndex: $programIndex, ') + ..write('exerciseIndex: $exerciseIndex, ') + ..write('setIndex: $setIndex, ') + ..write('startedAt: $startedAt, ') + ..write('completedAt: $completedAt, ') + ..write('actualTimeMs: $actualTimeMs, ') + ..write('actualReps: $actualReps, ') + ..write('actualScore: $actualScore, ') + ..write('scoreLabelSnapshot: $scoreLabelSnapshot, ') + ..write('scoreUnitSnapshot: $scoreUnitSnapshot, ') + ..write('note: $note, ') + ..write('rowid: $rowid') + ..write(')')) + .toString(); + } +} + +class $ChangeLogEntriesTable extends ChangeLogEntries + with TableInfo<$ChangeLogEntriesTable, ChangeLogEntry> { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + $ChangeLogEntriesTable(this.attachedDatabase, [this._alias]); + static const VerificationMeta _idMeta = const VerificationMeta('id'); + @override + late final GeneratedColumn id = GeneratedColumn( + 'id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _entityTypeMeta = const VerificationMeta( + 'entityType', + ); + @override + late final GeneratedColumn entityType = GeneratedColumn( + 'entity_type', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _entityIdMeta = const VerificationMeta( + 'entityId', + ); + @override + late final GeneratedColumn entityId = GeneratedColumn( + 'entity_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _operationMeta = const VerificationMeta( + 'operation', + ); + @override + late final GeneratedColumn operation = GeneratedColumn( + 'operation', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _payloadHashMeta = const VerificationMeta( + 'payloadHash', + ); + @override + late final GeneratedColumn payloadHash = GeneratedColumn( + 'payload_hash', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _localRevisionMeta = const VerificationMeta( + 'localRevision', + ); + @override + late final GeneratedColumn localRevision = GeneratedColumn( + 'local_revision', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _originDeviceIdMeta = const VerificationMeta( + 'originDeviceId', + ); + @override + late final GeneratedColumn originDeviceId = GeneratedColumn( + 'origin_device_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + 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: true, + ); + static const VerificationMeta _syncedAtMeta = const VerificationMeta( + 'syncedAt', + ); + @override + late final GeneratedColumn syncedAt = GeneratedColumn( + 'synced_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + id, + entityType, + entityId, + operation, + payloadHash, + localRevision, + originDeviceId, + createdAt, + syncedAt, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'change_log'; + @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)); + } else if (isInserting) { + context.missing(_idMeta); + } + if (data.containsKey('entity_type')) { + context.handle( + _entityTypeMeta, + entityType.isAcceptableOrUnknown(data['entity_type']!, _entityTypeMeta), + ); + } else if (isInserting) { + context.missing(_entityTypeMeta); + } + if (data.containsKey('entity_id')) { + context.handle( + _entityIdMeta, + entityId.isAcceptableOrUnknown(data['entity_id']!, _entityIdMeta), + ); + } else if (isInserting) { + context.missing(_entityIdMeta); + } + if (data.containsKey('operation')) { + context.handle( + _operationMeta, + operation.isAcceptableOrUnknown(data['operation']!, _operationMeta), + ); + } else if (isInserting) { + context.missing(_operationMeta); + } + if (data.containsKey('payload_hash')) { + context.handle( + _payloadHashMeta, + payloadHash.isAcceptableOrUnknown( + data['payload_hash']!, + _payloadHashMeta, + ), + ); + } + if (data.containsKey('local_revision')) { + context.handle( + _localRevisionMeta, + localRevision.isAcceptableOrUnknown( + data['local_revision']!, + _localRevisionMeta, + ), + ); + } else if (isInserting) { + context.missing(_localRevisionMeta); + } + if (data.containsKey('origin_device_id')) { + context.handle( + _originDeviceIdMeta, + originDeviceId.isAcceptableOrUnknown( + data['origin_device_id']!, + _originDeviceIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_originDeviceIdMeta); + } + if (data.containsKey('created_at')) { + context.handle( + _createdAtMeta, + createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), + ); + } else if (isInserting) { + context.missing(_createdAtMeta); + } + if (data.containsKey('synced_at')) { + context.handle( + _syncedAtMeta, + syncedAt.isAcceptableOrUnknown(data['synced_at']!, _syncedAtMeta), + ); + } + return context; + } + + @override + Set get $primaryKey => {id}; + @override + ChangeLogEntry map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return ChangeLogEntry( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + entityType: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}entity_type'], + )!, + entityId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}entity_id'], + )!, + operation: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}operation'], + )!, + payloadHash: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}payload_hash'], + ), + localRevision: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}local_revision'], + )!, + originDeviceId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}origin_device_id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + syncedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}synced_at'], + ), + ); + } + + @override + $ChangeLogEntriesTable createAlias(String alias) { + return $ChangeLogEntriesTable(attachedDatabase, alias); + } +} + +class ChangeLogEntry extends DataClass implements Insertable { + final String id; + final String entityType; + final String entityId; + final String operation; + final String? payloadHash; + final int localRevision; + final String originDeviceId; + final DateTime createdAt; + final DateTime? syncedAt; + const ChangeLogEntry({ + required this.id, + required this.entityType, + required this.entityId, + required this.operation, + this.payloadHash, + required this.localRevision, + required this.originDeviceId, + required this.createdAt, + this.syncedAt, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['entity_type'] = Variable(entityType); + map['entity_id'] = Variable(entityId); + map['operation'] = Variable(operation); + if (!nullToAbsent || payloadHash != null) { + map['payload_hash'] = Variable(payloadHash); + } + map['local_revision'] = Variable(localRevision); + map['origin_device_id'] = Variable(originDeviceId); + map['created_at'] = Variable(createdAt); + if (!nullToAbsent || syncedAt != null) { + map['synced_at'] = Variable(syncedAt); + } + return map; + } + + ChangeLogEntriesCompanion toCompanion(bool nullToAbsent) { + return ChangeLogEntriesCompanion( + id: Value(id), + entityType: Value(entityType), + entityId: Value(entityId), + operation: Value(operation), + payloadHash: payloadHash == null && nullToAbsent + ? const Value.absent() + : Value(payloadHash), + localRevision: Value(localRevision), + originDeviceId: Value(originDeviceId), + createdAt: Value(createdAt), + syncedAt: syncedAt == null && nullToAbsent + ? const Value.absent() + : Value(syncedAt), + ); + } + + factory ChangeLogEntry.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return ChangeLogEntry( + id: serializer.fromJson(json['id']), + entityType: serializer.fromJson(json['entityType']), + entityId: serializer.fromJson(json['entityId']), + operation: serializer.fromJson(json['operation']), + payloadHash: serializer.fromJson(json['payloadHash']), + localRevision: serializer.fromJson(json['localRevision']), + originDeviceId: serializer.fromJson(json['originDeviceId']), + createdAt: serializer.fromJson(json['createdAt']), + syncedAt: serializer.fromJson(json['syncedAt']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'entityType': serializer.toJson(entityType), + 'entityId': serializer.toJson(entityId), + 'operation': serializer.toJson(operation), + 'payloadHash': serializer.toJson(payloadHash), + 'localRevision': serializer.toJson(localRevision), + 'originDeviceId': serializer.toJson(originDeviceId), + 'createdAt': serializer.toJson(createdAt), + 'syncedAt': serializer.toJson(syncedAt), + }; + } + + ChangeLogEntry copyWith({ + String? id, + String? entityType, + String? entityId, + String? operation, + Value payloadHash = const Value.absent(), + int? localRevision, + String? originDeviceId, + DateTime? createdAt, + Value syncedAt = const Value.absent(), + }) => ChangeLogEntry( + id: id ?? this.id, + entityType: entityType ?? this.entityType, + entityId: entityId ?? this.entityId, + operation: operation ?? this.operation, + payloadHash: payloadHash.present ? payloadHash.value : this.payloadHash, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + createdAt: createdAt ?? this.createdAt, + syncedAt: syncedAt.present ? syncedAt.value : this.syncedAt, + ); + ChangeLogEntry copyWithCompanion(ChangeLogEntriesCompanion data) { + return ChangeLogEntry( + id: data.id.present ? data.id.value : this.id, + entityType: data.entityType.present + ? data.entityType.value + : this.entityType, + entityId: data.entityId.present ? data.entityId.value : this.entityId, + operation: data.operation.present ? data.operation.value : this.operation, + payloadHash: data.payloadHash.present + ? data.payloadHash.value + : this.payloadHash, + localRevision: data.localRevision.present + ? data.localRevision.value + : this.localRevision, + originDeviceId: data.originDeviceId.present + ? data.originDeviceId.value + : this.originDeviceId, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + syncedAt: data.syncedAt.present ? data.syncedAt.value : this.syncedAt, + ); + } + + @override + String toString() { + return (StringBuffer('ChangeLogEntry(') + ..write('id: $id, ') + ..write('entityType: $entityType, ') + ..write('entityId: $entityId, ') + ..write('operation: $operation, ') + ..write('payloadHash: $payloadHash, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('createdAt: $createdAt, ') + ..write('syncedAt: $syncedAt') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + entityType, + entityId, + operation, + payloadHash, + localRevision, + originDeviceId, + createdAt, + syncedAt, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is ChangeLogEntry && + other.id == this.id && + other.entityType == this.entityType && + other.entityId == this.entityId && + other.operation == this.operation && + other.payloadHash == this.payloadHash && + other.localRevision == this.localRevision && + other.originDeviceId == this.originDeviceId && + other.createdAt == this.createdAt && + other.syncedAt == this.syncedAt); +} + +class ChangeLogEntriesCompanion extends UpdateCompanion { + final Value id; + final Value entityType; + final Value entityId; + final Value operation; + final Value payloadHash; + final Value localRevision; + final Value originDeviceId; + final Value createdAt; + final Value syncedAt; + final Value rowid; + const ChangeLogEntriesCompanion({ + this.id = const Value.absent(), + this.entityType = const Value.absent(), + this.entityId = const Value.absent(), + this.operation = const Value.absent(), + this.payloadHash = const Value.absent(), + this.localRevision = const Value.absent(), + this.originDeviceId = const Value.absent(), + this.createdAt = const Value.absent(), + this.syncedAt = const Value.absent(), + this.rowid = const Value.absent(), + }); + ChangeLogEntriesCompanion.insert({ + required String id, + required String entityType, + required String entityId, + required String operation, + this.payloadHash = const Value.absent(), + required int localRevision, + required String originDeviceId, + required DateTime createdAt, + this.syncedAt = const Value.absent(), + this.rowid = const Value.absent(), + }) : id = Value(id), + entityType = Value(entityType), + entityId = Value(entityId), + operation = Value(operation), + localRevision = Value(localRevision), + originDeviceId = Value(originDeviceId), + createdAt = Value(createdAt); + static Insertable custom({ + Expression? id, + Expression? entityType, + Expression? entityId, + Expression? operation, + Expression? payloadHash, + Expression? localRevision, + Expression? originDeviceId, + Expression? createdAt, + Expression? syncedAt, + Expression? rowid, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (entityType != null) 'entity_type': entityType, + if (entityId != null) 'entity_id': entityId, + if (operation != null) 'operation': operation, + if (payloadHash != null) 'payload_hash': payloadHash, + if (localRevision != null) 'local_revision': localRevision, + if (originDeviceId != null) 'origin_device_id': originDeviceId, + if (createdAt != null) 'created_at': createdAt, + if (syncedAt != null) 'synced_at': syncedAt, + if (rowid != null) 'rowid': rowid, + }); + } + + ChangeLogEntriesCompanion copyWith({ + Value? id, + Value? entityType, + Value? entityId, + Value? operation, + Value? payloadHash, + Value? localRevision, + Value? originDeviceId, + Value? createdAt, + Value? syncedAt, + Value? rowid, + }) { + return ChangeLogEntriesCompanion( + id: id ?? this.id, + entityType: entityType ?? this.entityType, + entityId: entityId ?? this.entityId, + operation: operation ?? this.operation, + payloadHash: payloadHash ?? this.payloadHash, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + createdAt: createdAt ?? this.createdAt, + syncedAt: syncedAt ?? this.syncedAt, + rowid: rowid ?? this.rowid, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (entityType.present) { + map['entity_type'] = Variable(entityType.value); + } + if (entityId.present) { + map['entity_id'] = Variable(entityId.value); + } + if (operation.present) { + map['operation'] = Variable(operation.value); + } + if (payloadHash.present) { + map['payload_hash'] = Variable(payloadHash.value); + } + if (localRevision.present) { + map['local_revision'] = Variable(localRevision.value); + } + if (originDeviceId.present) { + map['origin_device_id'] = Variable(originDeviceId.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (syncedAt.present) { + map['synced_at'] = Variable(syncedAt.value); + } + if (rowid.present) { + map['rowid'] = Variable(rowid.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('ChangeLogEntriesCompanion(') + ..write('id: $id, ') + ..write('entityType: $entityType, ') + ..write('entityId: $entityId, ') + ..write('operation: $operation, ') + ..write('payloadHash: $payloadHash, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('createdAt: $createdAt, ') + ..write('syncedAt: $syncedAt, ') + ..write('rowid: $rowid') + ..write(')')) + .toString(); + } +} + +class $MediaAssetsTable extends MediaAssets + with TableInfo<$MediaAssetsTable, MediaAsset> { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + $MediaAssetsTable(this.attachedDatabase, [this._alias]); + static const VerificationMeta _idMeta = const VerificationMeta('id'); + @override + late final GeneratedColumn id = GeneratedColumn( + '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: true, + ); + static const VerificationMeta _updatedAtMeta = const VerificationMeta( + 'updatedAt', + ); + @override + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _deletedAtMeta = const VerificationMeta( + 'deletedAt', + ); + @override + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _schemaVersionMeta = const VerificationMeta( + 'schemaVersion', + ); + @override + late final GeneratedColumn schemaVersion = GeneratedColumn( + 'schema_version', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const Constant(1), + ); + static const VerificationMeta _syncStateMeta = const VerificationMeta( + 'syncState', + ); + @override + late final GeneratedColumn syncState = GeneratedColumn( + 'sync_state', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + $customConstraints: + 'NOT NULL CHECK (sync_state IN (\'localOnly\', \'dirty\', \'synced\', \'deleted\'))', + ); + static const VerificationMeta _localRevisionMeta = const VerificationMeta( + 'localRevision', + ); + @override + late final GeneratedColumn localRevision = GeneratedColumn( + 'local_revision', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + $customConstraints: 'NOT NULL CHECK (local_revision >= 0)', + ); + static const VerificationMeta _originDeviceIdMeta = const VerificationMeta( + 'originDeviceId', + ); + @override + late final GeneratedColumn originDeviceId = GeneratedColumn( + 'origin_device_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _futureOwnerProfileIdMeta = + const VerificationMeta('futureOwnerProfileId'); + @override + late final GeneratedColumn futureOwnerProfileId = + GeneratedColumn( + 'future_owner_profile_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _lastSyncedAtMeta = const VerificationMeta( + 'lastSyncedAt', + ); + @override + late final GeneratedColumn lastSyncedAt = GeneratedColumn( + 'last_synced_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _remoteRevisionMeta = const VerificationMeta( + 'remoteRevision', + ); + @override + late final GeneratedColumn remoteRevision = GeneratedColumn( + 'remote_revision', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _kindMeta = const VerificationMeta('kind'); + @override + late final GeneratedColumn kind = GeneratedColumn( + 'kind', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _localUriMeta = const VerificationMeta( + 'localUri', + ); + @override + late final GeneratedColumn localUri = GeneratedColumn( + 'local_uri', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _mimeTypeMeta = const VerificationMeta( + 'mimeType', + ); + @override + late final GeneratedColumn mimeType = GeneratedColumn( + 'mime_type', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _sizeBytesMeta = const VerificationMeta( + 'sizeBytes', + ); + @override + late final GeneratedColumn sizeBytes = GeneratedColumn( + 'size_bytes', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _widthMeta = const VerificationMeta('width'); + @override + late final GeneratedColumn width = GeneratedColumn( + 'width', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _heightMeta = const VerificationMeta('height'); + @override + late final GeneratedColumn height = GeneratedColumn( + 'height', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _durationMsMeta = const VerificationMeta( + 'durationMs', + ); + @override + late final GeneratedColumn durationMs = GeneratedColumn( + 'duration_ms', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _checksumMeta = const VerificationMeta( + 'checksum', + ); + @override + late final GeneratedColumn checksum = GeneratedColumn( + 'checksum', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _remoteUriMeta = const VerificationMeta( + 'remoteUri', + ); + @override + late final GeneratedColumn remoteUri = GeneratedColumn( + 'remote_uri', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _thumbnailLocalUriMeta = const VerificationMeta( + 'thumbnailLocalUri', + ); + @override + late final GeneratedColumn thumbnailLocalUri = + GeneratedColumn( + 'thumbnail_local_uri', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + kind, + localUri, + mimeType, + sizeBytes, + width, + height, + durationMs, + checksum, + remoteUri, + thumbnailLocalUri, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'media_assets'; + @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)); + } else if (isInserting) { + context.missing(_idMeta); + } + if (data.containsKey('created_at')) { + context.handle( + _createdAtMeta, + createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), + ); + } else if (isInserting) { + context.missing(_createdAtMeta); + } + if (data.containsKey('updated_at')) { + context.handle( + _updatedAtMeta, + updatedAt.isAcceptableOrUnknown(data['updated_at']!, _updatedAtMeta), + ); + } else if (isInserting) { + context.missing(_updatedAtMeta); + } + if (data.containsKey('deleted_at')) { + context.handle( + _deletedAtMeta, + deletedAt.isAcceptableOrUnknown(data['deleted_at']!, _deletedAtMeta), + ); + } + if (data.containsKey('schema_version')) { + context.handle( + _schemaVersionMeta, + schemaVersion.isAcceptableOrUnknown( + data['schema_version']!, + _schemaVersionMeta, + ), + ); + } + if (data.containsKey('sync_state')) { + context.handle( + _syncStateMeta, + syncState.isAcceptableOrUnknown(data['sync_state']!, _syncStateMeta), + ); + } else if (isInserting) { + context.missing(_syncStateMeta); + } + if (data.containsKey('local_revision')) { + context.handle( + _localRevisionMeta, + localRevision.isAcceptableOrUnknown( + data['local_revision']!, + _localRevisionMeta, + ), + ); + } else if (isInserting) { + context.missing(_localRevisionMeta); + } + if (data.containsKey('origin_device_id')) { + context.handle( + _originDeviceIdMeta, + originDeviceId.isAcceptableOrUnknown( + data['origin_device_id']!, + _originDeviceIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_originDeviceIdMeta); + } + if (data.containsKey('future_owner_profile_id')) { + context.handle( + _futureOwnerProfileIdMeta, + futureOwnerProfileId.isAcceptableOrUnknown( + data['future_owner_profile_id']!, + _futureOwnerProfileIdMeta, + ), + ); + } + if (data.containsKey('last_synced_at')) { + context.handle( + _lastSyncedAtMeta, + lastSyncedAt.isAcceptableOrUnknown( + data['last_synced_at']!, + _lastSyncedAtMeta, + ), + ); + } + if (data.containsKey('remote_revision')) { + context.handle( + _remoteRevisionMeta, + remoteRevision.isAcceptableOrUnknown( + data['remote_revision']!, + _remoteRevisionMeta, + ), + ); + } + if (data.containsKey('kind')) { + context.handle( + _kindMeta, + kind.isAcceptableOrUnknown(data['kind']!, _kindMeta), + ); + } else if (isInserting) { + context.missing(_kindMeta); + } + if (data.containsKey('local_uri')) { + context.handle( + _localUriMeta, + localUri.isAcceptableOrUnknown(data['local_uri']!, _localUriMeta), + ); + } else if (isInserting) { + context.missing(_localUriMeta); + } + if (data.containsKey('mime_type')) { + context.handle( + _mimeTypeMeta, + mimeType.isAcceptableOrUnknown(data['mime_type']!, _mimeTypeMeta), + ); + } + if (data.containsKey('size_bytes')) { + context.handle( + _sizeBytesMeta, + sizeBytes.isAcceptableOrUnknown(data['size_bytes']!, _sizeBytesMeta), + ); + } + if (data.containsKey('width')) { + context.handle( + _widthMeta, + width.isAcceptableOrUnknown(data['width']!, _widthMeta), + ); + } + if (data.containsKey('height')) { + context.handle( + _heightMeta, + height.isAcceptableOrUnknown(data['height']!, _heightMeta), + ); + } + if (data.containsKey('duration_ms')) { + context.handle( + _durationMsMeta, + durationMs.isAcceptableOrUnknown(data['duration_ms']!, _durationMsMeta), + ); + } + if (data.containsKey('checksum')) { + context.handle( + _checksumMeta, + checksum.isAcceptableOrUnknown(data['checksum']!, _checksumMeta), + ); + } + if (data.containsKey('remote_uri')) { + context.handle( + _remoteUriMeta, + remoteUri.isAcceptableOrUnknown(data['remote_uri']!, _remoteUriMeta), + ); + } + if (data.containsKey('thumbnail_local_uri')) { + context.handle( + _thumbnailLocalUriMeta, + thumbnailLocalUri.isAcceptableOrUnknown( + data['thumbnail_local_uri']!, + _thumbnailLocalUriMeta, + ), + ); + } + return context; + } + + @override + Set get $primaryKey => {id}; + @override + MediaAsset map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return MediaAsset( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + schemaVersion: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}schema_version'], + )!, + syncState: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}sync_state'], + )!, + localRevision: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}local_revision'], + )!, + originDeviceId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}origin_device_id'], + )!, + futureOwnerProfileId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}future_owner_profile_id'], + ), + lastSyncedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_synced_at'], + ), + remoteRevision: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}remote_revision'], + ), + kind: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}kind'], + )!, + localUri: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}local_uri'], + )!, + mimeType: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}mime_type'], + ), + sizeBytes: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}size_bytes'], + ), + width: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}width'], + ), + height: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}height'], + ), + durationMs: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}duration_ms'], + ), + checksum: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}checksum'], + ), + remoteUri: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}remote_uri'], + ), + thumbnailLocalUri: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}thumbnail_local_uri'], + ), + ); + } + + @override + $MediaAssetsTable createAlias(String alias) { + return $MediaAssetsTable(attachedDatabase, alias); + } +} + +class MediaAsset extends DataClass implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final DateTime? deletedAt; + final int schemaVersion; + final String syncState; + final int localRevision; + final String originDeviceId; + final String? futureOwnerProfileId; + final DateTime? lastSyncedAt; + final String? remoteRevision; + final String kind; + final String localUri; + final String? mimeType; + final int? sizeBytes; + final int? width; + final int? height; + final int? durationMs; + final String? checksum; + final String? remoteUri; + final String? thumbnailLocalUri; + const MediaAsset({ + required this.id, + required this.createdAt, + required this.updatedAt, + this.deletedAt, + required this.schemaVersion, + required this.syncState, + required this.localRevision, + required this.originDeviceId, + this.futureOwnerProfileId, + this.lastSyncedAt, + this.remoteRevision, + required this.kind, + required this.localUri, + this.mimeType, + this.sizeBytes, + this.width, + this.height, + this.durationMs, + this.checksum, + this.remoteUri, + this.thumbnailLocalUri, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + map['schema_version'] = Variable(schemaVersion); + map['sync_state'] = Variable(syncState); + map['local_revision'] = Variable(localRevision); + map['origin_device_id'] = Variable(originDeviceId); + if (!nullToAbsent || futureOwnerProfileId != null) { + map['future_owner_profile_id'] = Variable(futureOwnerProfileId); + } + if (!nullToAbsent || lastSyncedAt != null) { + map['last_synced_at'] = Variable(lastSyncedAt); + } + if (!nullToAbsent || remoteRevision != null) { + map['remote_revision'] = Variable(remoteRevision); + } + map['kind'] = Variable(kind); + map['local_uri'] = Variable(localUri); + if (!nullToAbsent || mimeType != null) { + map['mime_type'] = Variable(mimeType); + } + if (!nullToAbsent || sizeBytes != null) { + map['size_bytes'] = Variable(sizeBytes); + } + if (!nullToAbsent || width != null) { + map['width'] = Variable(width); + } + if (!nullToAbsent || height != null) { + map['height'] = Variable(height); + } + if (!nullToAbsent || durationMs != null) { + map['duration_ms'] = Variable(durationMs); + } + if (!nullToAbsent || checksum != null) { + map['checksum'] = Variable(checksum); + } + if (!nullToAbsent || remoteUri != null) { + map['remote_uri'] = Variable(remoteUri); + } + if (!nullToAbsent || thumbnailLocalUri != null) { + map['thumbnail_local_uri'] = Variable(thumbnailLocalUri); + } + return map; + } + + MediaAssetsCompanion toCompanion(bool nullToAbsent) { + return MediaAssetsCompanion( + id: Value(id), + createdAt: Value(createdAt), + updatedAt: Value(updatedAt), + deletedAt: deletedAt == null && nullToAbsent + ? const Value.absent() + : Value(deletedAt), + schemaVersion: Value(schemaVersion), + syncState: Value(syncState), + localRevision: Value(localRevision), + originDeviceId: Value(originDeviceId), + futureOwnerProfileId: futureOwnerProfileId == null && nullToAbsent + ? const Value.absent() + : Value(futureOwnerProfileId), + lastSyncedAt: lastSyncedAt == null && nullToAbsent + ? const Value.absent() + : Value(lastSyncedAt), + remoteRevision: remoteRevision == null && nullToAbsent + ? const Value.absent() + : Value(remoteRevision), + kind: Value(kind), + localUri: Value(localUri), + mimeType: mimeType == null && nullToAbsent + ? const Value.absent() + : Value(mimeType), + sizeBytes: sizeBytes == null && nullToAbsent + ? const Value.absent() + : Value(sizeBytes), + width: width == null && nullToAbsent + ? const Value.absent() + : Value(width), + height: height == null && nullToAbsent + ? const Value.absent() + : Value(height), + durationMs: durationMs == null && nullToAbsent + ? const Value.absent() + : Value(durationMs), + checksum: checksum == null && nullToAbsent + ? const Value.absent() + : Value(checksum), + remoteUri: remoteUri == null && nullToAbsent + ? const Value.absent() + : Value(remoteUri), + thumbnailLocalUri: thumbnailLocalUri == null && nullToAbsent + ? const Value.absent() + : Value(thumbnailLocalUri), + ); + } + + factory MediaAsset.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return MediaAsset( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + deletedAt: serializer.fromJson(json['deletedAt']), + schemaVersion: serializer.fromJson(json['schemaVersion']), + syncState: serializer.fromJson(json['syncState']), + localRevision: serializer.fromJson(json['localRevision']), + originDeviceId: serializer.fromJson(json['originDeviceId']), + futureOwnerProfileId: serializer.fromJson( + json['futureOwnerProfileId'], + ), + lastSyncedAt: serializer.fromJson(json['lastSyncedAt']), + remoteRevision: serializer.fromJson(json['remoteRevision']), + kind: serializer.fromJson(json['kind']), + localUri: serializer.fromJson(json['localUri']), + mimeType: serializer.fromJson(json['mimeType']), + sizeBytes: serializer.fromJson(json['sizeBytes']), + width: serializer.fromJson(json['width']), + height: serializer.fromJson(json['height']), + durationMs: serializer.fromJson(json['durationMs']), + checksum: serializer.fromJson(json['checksum']), + remoteUri: serializer.fromJson(json['remoteUri']), + thumbnailLocalUri: serializer.fromJson( + json['thumbnailLocalUri'], + ), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'deletedAt': serializer.toJson(deletedAt), + 'schemaVersion': serializer.toJson(schemaVersion), + 'syncState': serializer.toJson(syncState), + 'localRevision': serializer.toJson(localRevision), + 'originDeviceId': serializer.toJson(originDeviceId), + 'futureOwnerProfileId': serializer.toJson(futureOwnerProfileId), + 'lastSyncedAt': serializer.toJson(lastSyncedAt), + 'remoteRevision': serializer.toJson(remoteRevision), + 'kind': serializer.toJson(kind), + 'localUri': serializer.toJson(localUri), + 'mimeType': serializer.toJson(mimeType), + 'sizeBytes': serializer.toJson(sizeBytes), + 'width': serializer.toJson(width), + 'height': serializer.toJson(height), + 'durationMs': serializer.toJson(durationMs), + 'checksum': serializer.toJson(checksum), + 'remoteUri': serializer.toJson(remoteUri), + 'thumbnailLocalUri': serializer.toJson(thumbnailLocalUri), + }; + } + + MediaAsset copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + Value deletedAt = const Value.absent(), + int? schemaVersion, + String? syncState, + int? localRevision, + String? originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + String? kind, + String? localUri, + Value mimeType = const Value.absent(), + Value sizeBytes = const Value.absent(), + Value width = const Value.absent(), + Value height = const Value.absent(), + Value durationMs = const Value.absent(), + Value checksum = const Value.absent(), + Value remoteUri = const Value.absent(), + Value thumbnailLocalUri = const Value.absent(), + }) => MediaAsset( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId.present + ? futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt.present ? lastSyncedAt.value : this.lastSyncedAt, + remoteRevision: remoteRevision.present + ? remoteRevision.value + : this.remoteRevision, + kind: kind ?? this.kind, + localUri: localUri ?? this.localUri, + mimeType: mimeType.present ? mimeType.value : this.mimeType, + sizeBytes: sizeBytes.present ? sizeBytes.value : this.sizeBytes, + width: width.present ? width.value : this.width, + height: height.present ? height.value : this.height, + durationMs: durationMs.present ? durationMs.value : this.durationMs, + checksum: checksum.present ? checksum.value : this.checksum, + remoteUri: remoteUri.present ? remoteUri.value : this.remoteUri, + thumbnailLocalUri: thumbnailLocalUri.present + ? thumbnailLocalUri.value + : this.thumbnailLocalUri, + ); + MediaAsset copyWithCompanion(MediaAssetsCompanion data) { + return MediaAsset( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + schemaVersion: data.schemaVersion.present + ? data.schemaVersion.value + : this.schemaVersion, + syncState: data.syncState.present ? data.syncState.value : this.syncState, + localRevision: data.localRevision.present + ? data.localRevision.value + : this.localRevision, + originDeviceId: data.originDeviceId.present + ? data.originDeviceId.value + : this.originDeviceId, + futureOwnerProfileId: data.futureOwnerProfileId.present + ? data.futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: data.lastSyncedAt.present + ? data.lastSyncedAt.value + : this.lastSyncedAt, + remoteRevision: data.remoteRevision.present + ? data.remoteRevision.value + : this.remoteRevision, + kind: data.kind.present ? data.kind.value : this.kind, + localUri: data.localUri.present ? data.localUri.value : this.localUri, + mimeType: data.mimeType.present ? data.mimeType.value : this.mimeType, + sizeBytes: data.sizeBytes.present ? data.sizeBytes.value : this.sizeBytes, + width: data.width.present ? data.width.value : this.width, + height: data.height.present ? data.height.value : this.height, + durationMs: data.durationMs.present + ? data.durationMs.value + : this.durationMs, + checksum: data.checksum.present ? data.checksum.value : this.checksum, + remoteUri: data.remoteUri.present ? data.remoteUri.value : this.remoteUri, + thumbnailLocalUri: data.thumbnailLocalUri.present + ? data.thumbnailLocalUri.value + : this.thumbnailLocalUri, + ); + } + + @override + String toString() { + return (StringBuffer('MediaAsset(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('kind: $kind, ') + ..write('localUri: $localUri, ') + ..write('mimeType: $mimeType, ') + ..write('sizeBytes: $sizeBytes, ') + ..write('width: $width, ') + ..write('height: $height, ') + ..write('durationMs: $durationMs, ') + ..write('checksum: $checksum, ') + ..write('remoteUri: $remoteUri, ') + ..write('thumbnailLocalUri: $thumbnailLocalUri') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hashAll([ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + kind, + localUri, + mimeType, + sizeBytes, + width, + height, + durationMs, + checksum, + remoteUri, + thumbnailLocalUri, + ]); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is MediaAsset && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.deletedAt == this.deletedAt && + other.schemaVersion == this.schemaVersion && + other.syncState == this.syncState && + other.localRevision == this.localRevision && + other.originDeviceId == this.originDeviceId && + other.futureOwnerProfileId == this.futureOwnerProfileId && + other.lastSyncedAt == this.lastSyncedAt && + other.remoteRevision == this.remoteRevision && + other.kind == this.kind && + other.localUri == this.localUri && + other.mimeType == this.mimeType && + other.sizeBytes == this.sizeBytes && + other.width == this.width && + other.height == this.height && + other.durationMs == this.durationMs && + other.checksum == this.checksum && + other.remoteUri == this.remoteUri && + other.thumbnailLocalUri == this.thumbnailLocalUri); +} + +class MediaAssetsCompanion extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value deletedAt; + final Value schemaVersion; + final Value syncState; + final Value localRevision; + final Value originDeviceId; + final Value futureOwnerProfileId; + final Value lastSyncedAt; + final Value remoteRevision; + final Value kind; + final Value localUri; + final Value mimeType; + final Value sizeBytes; + final Value width; + final Value height; + final Value durationMs; + final Value checksum; + final Value remoteUri; + final Value thumbnailLocalUri; + final Value rowid; + const MediaAssetsCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + this.syncState = const Value.absent(), + this.localRevision = const Value.absent(), + this.originDeviceId = const Value.absent(), + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.kind = const Value.absent(), + this.localUri = const Value.absent(), + this.mimeType = const Value.absent(), + this.sizeBytes = const Value.absent(), + this.width = const Value.absent(), + this.height = const Value.absent(), + this.durationMs = const Value.absent(), + this.checksum = const Value.absent(), + this.remoteUri = const Value.absent(), + this.thumbnailLocalUri = const Value.absent(), + this.rowid = const Value.absent(), + }); + MediaAssetsCompanion.insert({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + required String kind, + required String localUri, + this.mimeType = const Value.absent(), + this.sizeBytes = const Value.absent(), + this.width = const Value.absent(), + this.height = const Value.absent(), + this.durationMs = const Value.absent(), + this.checksum = const Value.absent(), + this.remoteUri = const Value.absent(), + this.thumbnailLocalUri = const Value.absent(), + this.rowid = const Value.absent(), + }) : id = Value(id), + createdAt = Value(createdAt), + updatedAt = Value(updatedAt), + syncState = Value(syncState), + localRevision = Value(localRevision), + originDeviceId = Value(originDeviceId), + kind = Value(kind), + localUri = Value(localUri); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? deletedAt, + Expression? schemaVersion, + Expression? syncState, + Expression? localRevision, + Expression? originDeviceId, + Expression? futureOwnerProfileId, + Expression? lastSyncedAt, + Expression? remoteRevision, + Expression? kind, + Expression? localUri, + Expression? mimeType, + Expression? sizeBytes, + Expression? width, + Expression? height, + Expression? durationMs, + Expression? checksum, + Expression? remoteUri, + Expression? thumbnailLocalUri, + Expression? rowid, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (deletedAt != null) 'deleted_at': deletedAt, + if (schemaVersion != null) 'schema_version': schemaVersion, + if (syncState != null) 'sync_state': syncState, + if (localRevision != null) 'local_revision': localRevision, + if (originDeviceId != null) 'origin_device_id': originDeviceId, + if (futureOwnerProfileId != null) + 'future_owner_profile_id': futureOwnerProfileId, + if (lastSyncedAt != null) 'last_synced_at': lastSyncedAt, + if (remoteRevision != null) 'remote_revision': remoteRevision, + if (kind != null) 'kind': kind, + if (localUri != null) 'local_uri': localUri, + if (mimeType != null) 'mime_type': mimeType, + if (sizeBytes != null) 'size_bytes': sizeBytes, + if (width != null) 'width': width, + if (height != null) 'height': height, + if (durationMs != null) 'duration_ms': durationMs, + if (checksum != null) 'checksum': checksum, + if (remoteUri != null) 'remote_uri': remoteUri, + if (thumbnailLocalUri != null) 'thumbnail_local_uri': thumbnailLocalUri, + if (rowid != null) 'rowid': rowid, + }); + } + + MediaAssetsCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? deletedAt, + Value? schemaVersion, + Value? syncState, + Value? localRevision, + Value? originDeviceId, + Value? futureOwnerProfileId, + Value? lastSyncedAt, + Value? remoteRevision, + Value? kind, + Value? localUri, + Value? mimeType, + Value? sizeBytes, + Value? width, + Value? height, + Value? durationMs, + Value? checksum, + Value? remoteUri, + Value? thumbnailLocalUri, + Value? rowid, + }) { + return MediaAssetsCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt ?? this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId ?? this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt ?? this.lastSyncedAt, + remoteRevision: remoteRevision ?? this.remoteRevision, + kind: kind ?? this.kind, + localUri: localUri ?? this.localUri, + mimeType: mimeType ?? this.mimeType, + sizeBytes: sizeBytes ?? this.sizeBytes, + width: width ?? this.width, + height: height ?? this.height, + durationMs: durationMs ?? this.durationMs, + checksum: checksum ?? this.checksum, + remoteUri: remoteUri ?? this.remoteUri, + thumbnailLocalUri: thumbnailLocalUri ?? this.thumbnailLocalUri, + rowid: rowid ?? this.rowid, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (schemaVersion.present) { + map['schema_version'] = Variable(schemaVersion.value); + } + if (syncState.present) { + map['sync_state'] = Variable(syncState.value); + } + if (localRevision.present) { + map['local_revision'] = Variable(localRevision.value); + } + if (originDeviceId.present) { + map['origin_device_id'] = Variable(originDeviceId.value); + } + if (futureOwnerProfileId.present) { + map['future_owner_profile_id'] = Variable( + futureOwnerProfileId.value, + ); + } + if (lastSyncedAt.present) { + map['last_synced_at'] = Variable(lastSyncedAt.value); + } + if (remoteRevision.present) { + map['remote_revision'] = Variable(remoteRevision.value); + } + if (kind.present) { + map['kind'] = Variable(kind.value); + } + if (localUri.present) { + map['local_uri'] = Variable(localUri.value); + } + if (mimeType.present) { + map['mime_type'] = Variable(mimeType.value); + } + if (sizeBytes.present) { + map['size_bytes'] = Variable(sizeBytes.value); + } + if (width.present) { + map['width'] = Variable(width.value); + } + if (height.present) { + map['height'] = Variable(height.value); + } + if (durationMs.present) { + map['duration_ms'] = Variable(durationMs.value); + } + if (checksum.present) { + map['checksum'] = Variable(checksum.value); + } + if (remoteUri.present) { + map['remote_uri'] = Variable(remoteUri.value); + } + if (thumbnailLocalUri.present) { + map['thumbnail_local_uri'] = Variable(thumbnailLocalUri.value); + } + if (rowid.present) { + map['rowid'] = Variable(rowid.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('MediaAssetsCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('kind: $kind, ') + ..write('localUri: $localUri, ') + ..write('mimeType: $mimeType, ') + ..write('sizeBytes: $sizeBytes, ') + ..write('width: $width, ') + ..write('height: $height, ') + ..write('durationMs: $durationMs, ') + ..write('checksum: $checksum, ') + ..write('remoteUri: $remoteUri, ') + ..write('thumbnailLocalUri: $thumbnailLocalUri, ') + ..write('rowid: $rowid') + ..write(')')) + .toString(); + } +} + +class $ExercisesTable extends Exercises + with TableInfo<$ExercisesTable, Exercise> { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + $ExercisesTable(this.attachedDatabase, [this._alias]); + static const VerificationMeta _idMeta = const VerificationMeta('id'); + @override + late final GeneratedColumn id = GeneratedColumn( + '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: true, + ); + static const VerificationMeta _updatedAtMeta = const VerificationMeta( + 'updatedAt', + ); + @override + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _deletedAtMeta = const VerificationMeta( + 'deletedAt', + ); + @override + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _schemaVersionMeta = const VerificationMeta( + 'schemaVersion', + ); + @override + late final GeneratedColumn schemaVersion = GeneratedColumn( + 'schema_version', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const Constant(1), + ); + static const VerificationMeta _syncStateMeta = const VerificationMeta( + 'syncState', + ); + @override + late final GeneratedColumn syncState = GeneratedColumn( + 'sync_state', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + $customConstraints: + 'NOT NULL CHECK (sync_state IN (\'localOnly\', \'dirty\', \'synced\', \'deleted\'))', + ); + static const VerificationMeta _localRevisionMeta = const VerificationMeta( + 'localRevision', + ); + @override + late final GeneratedColumn localRevision = GeneratedColumn( + 'local_revision', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + $customConstraints: 'NOT NULL CHECK (local_revision >= 0)', + ); + static const VerificationMeta _originDeviceIdMeta = const VerificationMeta( + 'originDeviceId', + ); + @override + late final GeneratedColumn originDeviceId = GeneratedColumn( + 'origin_device_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _futureOwnerProfileIdMeta = + const VerificationMeta('futureOwnerProfileId'); + @override + late final GeneratedColumn futureOwnerProfileId = + GeneratedColumn( + 'future_owner_profile_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _lastSyncedAtMeta = const VerificationMeta( + 'lastSyncedAt', + ); + @override + late final GeneratedColumn lastSyncedAt = GeneratedColumn( + 'last_synced_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _remoteRevisionMeta = const VerificationMeta( + 'remoteRevision', + ); + @override + late final GeneratedColumn remoteRevision = GeneratedColumn( + 'remote_revision', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _nameMeta = const VerificationMeta('name'); + @override + late final GeneratedColumn name = GeneratedColumn( + 'name', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _descriptionMeta = const VerificationMeta( + 'description', + ); + @override + late final GeneratedColumn description = GeneratedColumn( + 'description', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _imageMediaIdMeta = const VerificationMeta( + 'imageMediaId', + ); + @override + late final GeneratedColumn imageMediaId = GeneratedColumn( + 'image_media_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES media_assets (id)', + ), + ); + static const VerificationMeta _videoMediaIdMeta = const VerificationMeta( + 'videoMediaId', + ); + @override + late final GeneratedColumn videoMediaId = GeneratedColumn( + 'video_media_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES media_assets (id)', + ), + ); + static const VerificationMeta _hasTimeMeasureMeta = const VerificationMeta( + 'hasTimeMeasure', + ); + @override + late final GeneratedColumn hasTimeMeasure = GeneratedColumn( + 'has_time_measure', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("has_time_measure" IN (0, 1))', + ), + ); + static const VerificationMeta _hasRepsMeasureMeta = const VerificationMeta( + 'hasRepsMeasure', + ); + @override + late final GeneratedColumn hasRepsMeasure = GeneratedColumn( + 'has_reps_measure', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("has_reps_measure" IN (0, 1))', + ), + ); + static const VerificationMeta _hasScoreMeasureMeta = const VerificationMeta( + 'hasScoreMeasure', + ); + @override + late final GeneratedColumn hasScoreMeasure = GeneratedColumn( + 'has_score_measure', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("has_score_measure" IN (0, 1))', + ), + ); + static const VerificationMeta _scoreLabelMeta = const VerificationMeta( + 'scoreLabel', + ); + @override + late final GeneratedColumn scoreLabel = GeneratedColumn( + 'score_label', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _scoreUnitMeta = const VerificationMeta( + 'scoreUnit', + ); + @override + late final GeneratedColumn scoreUnit = GeneratedColumn( + 'score_unit', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _archivedAtMeta = const VerificationMeta( + 'archivedAt', + ); + @override + late final GeneratedColumn archivedAt = GeneratedColumn( + 'archived_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + name, + description, + imageMediaId, + videoMediaId, + hasTimeMeasure, + hasRepsMeasure, + hasScoreMeasure, + scoreLabel, + scoreUnit, + archivedAt, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'exercises'; + @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)); + } else if (isInserting) { + context.missing(_idMeta); + } + if (data.containsKey('created_at')) { + context.handle( + _createdAtMeta, + createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), + ); + } else if (isInserting) { + context.missing(_createdAtMeta); + } + if (data.containsKey('updated_at')) { + context.handle( + _updatedAtMeta, + updatedAt.isAcceptableOrUnknown(data['updated_at']!, _updatedAtMeta), + ); + } else if (isInserting) { + context.missing(_updatedAtMeta); + } + if (data.containsKey('deleted_at')) { + context.handle( + _deletedAtMeta, + deletedAt.isAcceptableOrUnknown(data['deleted_at']!, _deletedAtMeta), + ); + } + if (data.containsKey('schema_version')) { + context.handle( + _schemaVersionMeta, + schemaVersion.isAcceptableOrUnknown( + data['schema_version']!, + _schemaVersionMeta, + ), + ); + } + if (data.containsKey('sync_state')) { + context.handle( + _syncStateMeta, + syncState.isAcceptableOrUnknown(data['sync_state']!, _syncStateMeta), + ); + } else if (isInserting) { + context.missing(_syncStateMeta); + } + if (data.containsKey('local_revision')) { + context.handle( + _localRevisionMeta, + localRevision.isAcceptableOrUnknown( + data['local_revision']!, + _localRevisionMeta, + ), + ); + } else if (isInserting) { + context.missing(_localRevisionMeta); + } + if (data.containsKey('origin_device_id')) { + context.handle( + _originDeviceIdMeta, + originDeviceId.isAcceptableOrUnknown( + data['origin_device_id']!, + _originDeviceIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_originDeviceIdMeta); + } + if (data.containsKey('future_owner_profile_id')) { + context.handle( + _futureOwnerProfileIdMeta, + futureOwnerProfileId.isAcceptableOrUnknown( + data['future_owner_profile_id']!, + _futureOwnerProfileIdMeta, + ), + ); + } + if (data.containsKey('last_synced_at')) { + context.handle( + _lastSyncedAtMeta, + lastSyncedAt.isAcceptableOrUnknown( + data['last_synced_at']!, + _lastSyncedAtMeta, + ), + ); + } + if (data.containsKey('remote_revision')) { + context.handle( + _remoteRevisionMeta, + remoteRevision.isAcceptableOrUnknown( + data['remote_revision']!, + _remoteRevisionMeta, + ), + ); + } + if (data.containsKey('name')) { + context.handle( + _nameMeta, + name.isAcceptableOrUnknown(data['name']!, _nameMeta), + ); + } else if (isInserting) { + context.missing(_nameMeta); + } + if (data.containsKey('description')) { + context.handle( + _descriptionMeta, + description.isAcceptableOrUnknown( + data['description']!, + _descriptionMeta, + ), + ); + } + if (data.containsKey('image_media_id')) { + context.handle( + _imageMediaIdMeta, + imageMediaId.isAcceptableOrUnknown( + data['image_media_id']!, + _imageMediaIdMeta, + ), + ); + } + if (data.containsKey('video_media_id')) { + context.handle( + _videoMediaIdMeta, + videoMediaId.isAcceptableOrUnknown( + data['video_media_id']!, + _videoMediaIdMeta, + ), + ); + } + if (data.containsKey('has_time_measure')) { + context.handle( + _hasTimeMeasureMeta, + hasTimeMeasure.isAcceptableOrUnknown( + data['has_time_measure']!, + _hasTimeMeasureMeta, + ), + ); + } else if (isInserting) { + context.missing(_hasTimeMeasureMeta); + } + if (data.containsKey('has_reps_measure')) { + context.handle( + _hasRepsMeasureMeta, + hasRepsMeasure.isAcceptableOrUnknown( + data['has_reps_measure']!, + _hasRepsMeasureMeta, + ), + ); + } else if (isInserting) { + context.missing(_hasRepsMeasureMeta); + } + if (data.containsKey('has_score_measure')) { + context.handle( + _hasScoreMeasureMeta, + hasScoreMeasure.isAcceptableOrUnknown( + data['has_score_measure']!, + _hasScoreMeasureMeta, + ), + ); + } else if (isInserting) { + context.missing(_hasScoreMeasureMeta); + } + if (data.containsKey('score_label')) { + context.handle( + _scoreLabelMeta, + scoreLabel.isAcceptableOrUnknown(data['score_label']!, _scoreLabelMeta), + ); + } + if (data.containsKey('score_unit')) { + context.handle( + _scoreUnitMeta, + scoreUnit.isAcceptableOrUnknown(data['score_unit']!, _scoreUnitMeta), + ); + } + if (data.containsKey('archived_at')) { + context.handle( + _archivedAtMeta, + archivedAt.isAcceptableOrUnknown(data['archived_at']!, _archivedAtMeta), + ); + } + return context; + } + + @override + Set get $primaryKey => {id}; + @override + Exercise map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return Exercise( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + schemaVersion: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}schema_version'], + )!, + syncState: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}sync_state'], + )!, + localRevision: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}local_revision'], + )!, + originDeviceId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}origin_device_id'], + )!, + futureOwnerProfileId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}future_owner_profile_id'], + ), + lastSyncedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_synced_at'], + ), + remoteRevision: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}remote_revision'], + ), + name: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}name'], + )!, + description: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}description'], + ), + imageMediaId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}image_media_id'], + ), + videoMediaId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}video_media_id'], + ), + hasTimeMeasure: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}has_time_measure'], + )!, + hasRepsMeasure: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}has_reps_measure'], + )!, + hasScoreMeasure: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}has_score_measure'], + )!, + scoreLabel: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}score_label'], + ), + scoreUnit: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}score_unit'], + ), + archivedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}archived_at'], + ), + ); + } + + @override + $ExercisesTable createAlias(String alias) { + return $ExercisesTable(attachedDatabase, alias); + } +} + +class Exercise extends DataClass implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final DateTime? deletedAt; + final int schemaVersion; + final String syncState; + final int localRevision; + final String originDeviceId; + final String? futureOwnerProfileId; + final DateTime? lastSyncedAt; + final String? remoteRevision; + final String name; + final String? description; + final String? imageMediaId; + final String? videoMediaId; + final bool hasTimeMeasure; + final bool hasRepsMeasure; + final bool hasScoreMeasure; + final String? scoreLabel; + final String? scoreUnit; + final DateTime? archivedAt; + const Exercise({ + required this.id, + required this.createdAt, + required this.updatedAt, + this.deletedAt, + required this.schemaVersion, + required this.syncState, + required this.localRevision, + required this.originDeviceId, + this.futureOwnerProfileId, + this.lastSyncedAt, + this.remoteRevision, + required this.name, + this.description, + this.imageMediaId, + this.videoMediaId, + required this.hasTimeMeasure, + required this.hasRepsMeasure, + required this.hasScoreMeasure, + this.scoreLabel, + this.scoreUnit, + this.archivedAt, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + map['schema_version'] = Variable(schemaVersion); + map['sync_state'] = Variable(syncState); + map['local_revision'] = Variable(localRevision); + map['origin_device_id'] = Variable(originDeviceId); + if (!nullToAbsent || futureOwnerProfileId != null) { + map['future_owner_profile_id'] = Variable(futureOwnerProfileId); + } + if (!nullToAbsent || lastSyncedAt != null) { + map['last_synced_at'] = Variable(lastSyncedAt); + } + if (!nullToAbsent || remoteRevision != null) { + map['remote_revision'] = Variable(remoteRevision); + } + map['name'] = Variable(name); + if (!nullToAbsent || description != null) { + map['description'] = Variable(description); + } + if (!nullToAbsent || imageMediaId != null) { + map['image_media_id'] = Variable(imageMediaId); + } + if (!nullToAbsent || videoMediaId != null) { + map['video_media_id'] = Variable(videoMediaId); + } + map['has_time_measure'] = Variable(hasTimeMeasure); + map['has_reps_measure'] = Variable(hasRepsMeasure); + map['has_score_measure'] = Variable(hasScoreMeasure); + if (!nullToAbsent || scoreLabel != null) { + map['score_label'] = Variable(scoreLabel); + } + if (!nullToAbsent || scoreUnit != null) { + map['score_unit'] = Variable(scoreUnit); + } + if (!nullToAbsent || archivedAt != null) { + map['archived_at'] = Variable(archivedAt); + } + return map; + } + + ExercisesCompanion toCompanion(bool nullToAbsent) { + return ExercisesCompanion( + id: Value(id), + createdAt: Value(createdAt), + updatedAt: Value(updatedAt), + deletedAt: deletedAt == null && nullToAbsent + ? const Value.absent() + : Value(deletedAt), + schemaVersion: Value(schemaVersion), + syncState: Value(syncState), + localRevision: Value(localRevision), + originDeviceId: Value(originDeviceId), + futureOwnerProfileId: futureOwnerProfileId == null && nullToAbsent + ? const Value.absent() + : Value(futureOwnerProfileId), + lastSyncedAt: lastSyncedAt == null && nullToAbsent + ? const Value.absent() + : Value(lastSyncedAt), + remoteRevision: remoteRevision == null && nullToAbsent + ? const Value.absent() + : Value(remoteRevision), + name: Value(name), + description: description == null && nullToAbsent + ? const Value.absent() + : Value(description), + imageMediaId: imageMediaId == null && nullToAbsent + ? const Value.absent() + : Value(imageMediaId), + videoMediaId: videoMediaId == null && nullToAbsent + ? const Value.absent() + : Value(videoMediaId), + hasTimeMeasure: Value(hasTimeMeasure), + hasRepsMeasure: Value(hasRepsMeasure), + hasScoreMeasure: Value(hasScoreMeasure), + scoreLabel: scoreLabel == null && nullToAbsent + ? const Value.absent() + : Value(scoreLabel), + scoreUnit: scoreUnit == null && nullToAbsent + ? const Value.absent() + : Value(scoreUnit), + archivedAt: archivedAt == null && nullToAbsent + ? const Value.absent() + : Value(archivedAt), + ); + } + + factory Exercise.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return Exercise( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + deletedAt: serializer.fromJson(json['deletedAt']), + schemaVersion: serializer.fromJson(json['schemaVersion']), + syncState: serializer.fromJson(json['syncState']), + localRevision: serializer.fromJson(json['localRevision']), + originDeviceId: serializer.fromJson(json['originDeviceId']), + futureOwnerProfileId: serializer.fromJson( + json['futureOwnerProfileId'], + ), + lastSyncedAt: serializer.fromJson(json['lastSyncedAt']), + remoteRevision: serializer.fromJson(json['remoteRevision']), + name: serializer.fromJson(json['name']), + description: serializer.fromJson(json['description']), + imageMediaId: serializer.fromJson(json['imageMediaId']), + videoMediaId: serializer.fromJson(json['videoMediaId']), + hasTimeMeasure: serializer.fromJson(json['hasTimeMeasure']), + hasRepsMeasure: serializer.fromJson(json['hasRepsMeasure']), + hasScoreMeasure: serializer.fromJson(json['hasScoreMeasure']), + scoreLabel: serializer.fromJson(json['scoreLabel']), + scoreUnit: serializer.fromJson(json['scoreUnit']), + archivedAt: serializer.fromJson(json['archivedAt']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'deletedAt': serializer.toJson(deletedAt), + 'schemaVersion': serializer.toJson(schemaVersion), + 'syncState': serializer.toJson(syncState), + 'localRevision': serializer.toJson(localRevision), + 'originDeviceId': serializer.toJson(originDeviceId), + 'futureOwnerProfileId': serializer.toJson(futureOwnerProfileId), + 'lastSyncedAt': serializer.toJson(lastSyncedAt), + 'remoteRevision': serializer.toJson(remoteRevision), + 'name': serializer.toJson(name), + 'description': serializer.toJson(description), + 'imageMediaId': serializer.toJson(imageMediaId), + 'videoMediaId': serializer.toJson(videoMediaId), + 'hasTimeMeasure': serializer.toJson(hasTimeMeasure), + 'hasRepsMeasure': serializer.toJson(hasRepsMeasure), + 'hasScoreMeasure': serializer.toJson(hasScoreMeasure), + 'scoreLabel': serializer.toJson(scoreLabel), + 'scoreUnit': serializer.toJson(scoreUnit), + 'archivedAt': serializer.toJson(archivedAt), + }; + } + + Exercise copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + Value deletedAt = const Value.absent(), + int? schemaVersion, + String? syncState, + int? localRevision, + String? originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + String? name, + Value description = const Value.absent(), + Value imageMediaId = const Value.absent(), + Value videoMediaId = const Value.absent(), + bool? hasTimeMeasure, + bool? hasRepsMeasure, + bool? hasScoreMeasure, + Value scoreLabel = const Value.absent(), + Value scoreUnit = const Value.absent(), + Value archivedAt = const Value.absent(), + }) => Exercise( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId.present + ? futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt.present ? lastSyncedAt.value : this.lastSyncedAt, + remoteRevision: remoteRevision.present + ? remoteRevision.value + : this.remoteRevision, + name: name ?? this.name, + description: description.present ? description.value : this.description, + imageMediaId: imageMediaId.present ? imageMediaId.value : this.imageMediaId, + videoMediaId: videoMediaId.present ? videoMediaId.value : this.videoMediaId, + hasTimeMeasure: hasTimeMeasure ?? this.hasTimeMeasure, + hasRepsMeasure: hasRepsMeasure ?? this.hasRepsMeasure, + hasScoreMeasure: hasScoreMeasure ?? this.hasScoreMeasure, + scoreLabel: scoreLabel.present ? scoreLabel.value : this.scoreLabel, + scoreUnit: scoreUnit.present ? scoreUnit.value : this.scoreUnit, + archivedAt: archivedAt.present ? archivedAt.value : this.archivedAt, + ); + Exercise copyWithCompanion(ExercisesCompanion data) { + return Exercise( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + schemaVersion: data.schemaVersion.present + ? data.schemaVersion.value + : this.schemaVersion, + syncState: data.syncState.present ? data.syncState.value : this.syncState, + localRevision: data.localRevision.present + ? data.localRevision.value + : this.localRevision, + originDeviceId: data.originDeviceId.present + ? data.originDeviceId.value + : this.originDeviceId, + futureOwnerProfileId: data.futureOwnerProfileId.present + ? data.futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: data.lastSyncedAt.present + ? data.lastSyncedAt.value + : this.lastSyncedAt, + remoteRevision: data.remoteRevision.present + ? data.remoteRevision.value + : this.remoteRevision, + name: data.name.present ? data.name.value : this.name, + description: data.description.present + ? data.description.value + : this.description, + imageMediaId: data.imageMediaId.present + ? data.imageMediaId.value + : this.imageMediaId, + videoMediaId: data.videoMediaId.present + ? data.videoMediaId.value + : this.videoMediaId, + hasTimeMeasure: data.hasTimeMeasure.present + ? data.hasTimeMeasure.value + : this.hasTimeMeasure, + hasRepsMeasure: data.hasRepsMeasure.present + ? data.hasRepsMeasure.value + : this.hasRepsMeasure, + hasScoreMeasure: data.hasScoreMeasure.present + ? data.hasScoreMeasure.value + : this.hasScoreMeasure, + scoreLabel: data.scoreLabel.present + ? data.scoreLabel.value + : this.scoreLabel, + scoreUnit: data.scoreUnit.present ? data.scoreUnit.value : this.scoreUnit, + archivedAt: data.archivedAt.present + ? data.archivedAt.value + : this.archivedAt, + ); + } + + @override + String toString() { + return (StringBuffer('Exercise(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('name: $name, ') + ..write('description: $description, ') + ..write('imageMediaId: $imageMediaId, ') + ..write('videoMediaId: $videoMediaId, ') + ..write('hasTimeMeasure: $hasTimeMeasure, ') + ..write('hasRepsMeasure: $hasRepsMeasure, ') + ..write('hasScoreMeasure: $hasScoreMeasure, ') + ..write('scoreLabel: $scoreLabel, ') + ..write('scoreUnit: $scoreUnit, ') + ..write('archivedAt: $archivedAt') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hashAll([ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + name, + description, + imageMediaId, + videoMediaId, + hasTimeMeasure, + hasRepsMeasure, + hasScoreMeasure, + scoreLabel, + scoreUnit, + archivedAt, + ]); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is Exercise && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.deletedAt == this.deletedAt && + other.schemaVersion == this.schemaVersion && + other.syncState == this.syncState && + other.localRevision == this.localRevision && + other.originDeviceId == this.originDeviceId && + other.futureOwnerProfileId == this.futureOwnerProfileId && + other.lastSyncedAt == this.lastSyncedAt && + other.remoteRevision == this.remoteRevision && + other.name == this.name && + other.description == this.description && + other.imageMediaId == this.imageMediaId && + other.videoMediaId == this.videoMediaId && + other.hasTimeMeasure == this.hasTimeMeasure && + other.hasRepsMeasure == this.hasRepsMeasure && + other.hasScoreMeasure == this.hasScoreMeasure && + other.scoreLabel == this.scoreLabel && + other.scoreUnit == this.scoreUnit && + other.archivedAt == this.archivedAt); +} + +class ExercisesCompanion extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value deletedAt; + final Value schemaVersion; + final Value syncState; + final Value localRevision; + final Value originDeviceId; + final Value futureOwnerProfileId; + final Value lastSyncedAt; + final Value remoteRevision; + final Value name; + final Value description; + final Value imageMediaId; + final Value videoMediaId; + final Value hasTimeMeasure; + final Value hasRepsMeasure; + final Value hasScoreMeasure; + final Value scoreLabel; + final Value scoreUnit; + final Value archivedAt; + final Value rowid; + const ExercisesCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + this.syncState = const Value.absent(), + this.localRevision = const Value.absent(), + this.originDeviceId = const Value.absent(), + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.name = const Value.absent(), + this.description = const Value.absent(), + this.imageMediaId = const Value.absent(), + this.videoMediaId = const Value.absent(), + this.hasTimeMeasure = const Value.absent(), + this.hasRepsMeasure = const Value.absent(), + this.hasScoreMeasure = const Value.absent(), + this.scoreLabel = const Value.absent(), + this.scoreUnit = const Value.absent(), + this.archivedAt = const Value.absent(), + this.rowid = const Value.absent(), + }); + ExercisesCompanion.insert({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + required String name, + this.description = const Value.absent(), + this.imageMediaId = const Value.absent(), + this.videoMediaId = const Value.absent(), + required bool hasTimeMeasure, + required bool hasRepsMeasure, + required bool hasScoreMeasure, + this.scoreLabel = const Value.absent(), + this.scoreUnit = const Value.absent(), + this.archivedAt = const Value.absent(), + this.rowid = const Value.absent(), + }) : id = Value(id), + createdAt = Value(createdAt), + updatedAt = Value(updatedAt), + syncState = Value(syncState), + localRevision = Value(localRevision), + originDeviceId = Value(originDeviceId), + name = Value(name), + hasTimeMeasure = Value(hasTimeMeasure), + hasRepsMeasure = Value(hasRepsMeasure), + hasScoreMeasure = Value(hasScoreMeasure); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? deletedAt, + Expression? schemaVersion, + Expression? syncState, + Expression? localRevision, + Expression? originDeviceId, + Expression? futureOwnerProfileId, + Expression? lastSyncedAt, + Expression? remoteRevision, + Expression? name, + Expression? description, + Expression? imageMediaId, + Expression? videoMediaId, + Expression? hasTimeMeasure, + Expression? hasRepsMeasure, + Expression? hasScoreMeasure, + Expression? scoreLabel, + Expression? scoreUnit, + Expression? archivedAt, + Expression? rowid, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (deletedAt != null) 'deleted_at': deletedAt, + if (schemaVersion != null) 'schema_version': schemaVersion, + if (syncState != null) 'sync_state': syncState, + if (localRevision != null) 'local_revision': localRevision, + if (originDeviceId != null) 'origin_device_id': originDeviceId, + if (futureOwnerProfileId != null) + 'future_owner_profile_id': futureOwnerProfileId, + if (lastSyncedAt != null) 'last_synced_at': lastSyncedAt, + if (remoteRevision != null) 'remote_revision': remoteRevision, + if (name != null) 'name': name, + if (description != null) 'description': description, + if (imageMediaId != null) 'image_media_id': imageMediaId, + if (videoMediaId != null) 'video_media_id': videoMediaId, + if (hasTimeMeasure != null) 'has_time_measure': hasTimeMeasure, + if (hasRepsMeasure != null) 'has_reps_measure': hasRepsMeasure, + if (hasScoreMeasure != null) 'has_score_measure': hasScoreMeasure, + if (scoreLabel != null) 'score_label': scoreLabel, + if (scoreUnit != null) 'score_unit': scoreUnit, + if (archivedAt != null) 'archived_at': archivedAt, + if (rowid != null) 'rowid': rowid, + }); + } + + ExercisesCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? deletedAt, + Value? schemaVersion, + Value? syncState, + Value? localRevision, + Value? originDeviceId, + Value? futureOwnerProfileId, + Value? lastSyncedAt, + Value? remoteRevision, + Value? name, + Value? description, + Value? imageMediaId, + Value? videoMediaId, + Value? hasTimeMeasure, + Value? hasRepsMeasure, + Value? hasScoreMeasure, + Value? scoreLabel, + Value? scoreUnit, + Value? archivedAt, + Value? rowid, + }) { + return ExercisesCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt ?? this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId ?? this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt ?? this.lastSyncedAt, + remoteRevision: remoteRevision ?? this.remoteRevision, + name: name ?? this.name, + description: description ?? this.description, + imageMediaId: imageMediaId ?? this.imageMediaId, + videoMediaId: videoMediaId ?? this.videoMediaId, + hasTimeMeasure: hasTimeMeasure ?? this.hasTimeMeasure, + hasRepsMeasure: hasRepsMeasure ?? this.hasRepsMeasure, + hasScoreMeasure: hasScoreMeasure ?? this.hasScoreMeasure, + scoreLabel: scoreLabel ?? this.scoreLabel, + scoreUnit: scoreUnit ?? this.scoreUnit, + archivedAt: archivedAt ?? this.archivedAt, + rowid: rowid ?? this.rowid, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (schemaVersion.present) { + map['schema_version'] = Variable(schemaVersion.value); + } + if (syncState.present) { + map['sync_state'] = Variable(syncState.value); + } + if (localRevision.present) { + map['local_revision'] = Variable(localRevision.value); + } + if (originDeviceId.present) { + map['origin_device_id'] = Variable(originDeviceId.value); + } + if (futureOwnerProfileId.present) { + map['future_owner_profile_id'] = Variable( + futureOwnerProfileId.value, + ); + } + if (lastSyncedAt.present) { + map['last_synced_at'] = Variable(lastSyncedAt.value); + } + if (remoteRevision.present) { + map['remote_revision'] = Variable(remoteRevision.value); + } + if (name.present) { + map['name'] = Variable(name.value); + } + if (description.present) { + map['description'] = Variable(description.value); + } + if (imageMediaId.present) { + map['image_media_id'] = Variable(imageMediaId.value); + } + if (videoMediaId.present) { + map['video_media_id'] = Variable(videoMediaId.value); + } + if (hasTimeMeasure.present) { + map['has_time_measure'] = Variable(hasTimeMeasure.value); + } + if (hasRepsMeasure.present) { + map['has_reps_measure'] = Variable(hasRepsMeasure.value); + } + if (hasScoreMeasure.present) { + map['has_score_measure'] = Variable(hasScoreMeasure.value); + } + if (scoreLabel.present) { + map['score_label'] = Variable(scoreLabel.value); + } + if (scoreUnit.present) { + map['score_unit'] = Variable(scoreUnit.value); + } + if (archivedAt.present) { + map['archived_at'] = Variable(archivedAt.value); + } + if (rowid.present) { + map['rowid'] = Variable(rowid.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('ExercisesCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('name: $name, ') + ..write('description: $description, ') + ..write('imageMediaId: $imageMediaId, ') + ..write('videoMediaId: $videoMediaId, ') + ..write('hasTimeMeasure: $hasTimeMeasure, ') + ..write('hasRepsMeasure: $hasRepsMeasure, ') + ..write('hasScoreMeasure: $hasScoreMeasure, ') + ..write('scoreLabel: $scoreLabel, ') + ..write('scoreUnit: $scoreUnit, ') + ..write('archivedAt: $archivedAt, ') + ..write('rowid: $rowid') + ..write(')')) + .toString(); + } +} + +class $ProgramsTable extends Programs with TableInfo<$ProgramsTable, Program> { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + $ProgramsTable(this.attachedDatabase, [this._alias]); + static const VerificationMeta _idMeta = const VerificationMeta('id'); + @override + late final GeneratedColumn id = GeneratedColumn( + '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: true, + ); + static const VerificationMeta _updatedAtMeta = const VerificationMeta( + 'updatedAt', + ); + @override + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _deletedAtMeta = const VerificationMeta( + 'deletedAt', + ); + @override + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _schemaVersionMeta = const VerificationMeta( + 'schemaVersion', + ); + @override + late final GeneratedColumn schemaVersion = GeneratedColumn( + 'schema_version', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const Constant(1), + ); + static const VerificationMeta _syncStateMeta = const VerificationMeta( + 'syncState', + ); + @override + late final GeneratedColumn syncState = GeneratedColumn( + 'sync_state', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + $customConstraints: + 'NOT NULL CHECK (sync_state IN (\'localOnly\', \'dirty\', \'synced\', \'deleted\'))', + ); + static const VerificationMeta _localRevisionMeta = const VerificationMeta( + 'localRevision', + ); + @override + late final GeneratedColumn localRevision = GeneratedColumn( + 'local_revision', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + $customConstraints: 'NOT NULL CHECK (local_revision >= 0)', + ); + static const VerificationMeta _originDeviceIdMeta = const VerificationMeta( + 'originDeviceId', + ); + @override + late final GeneratedColumn originDeviceId = GeneratedColumn( + 'origin_device_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _futureOwnerProfileIdMeta = + const VerificationMeta('futureOwnerProfileId'); + @override + late final GeneratedColumn futureOwnerProfileId = + GeneratedColumn( + 'future_owner_profile_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _lastSyncedAtMeta = const VerificationMeta( + 'lastSyncedAt', + ); + @override + late final GeneratedColumn lastSyncedAt = GeneratedColumn( + 'last_synced_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _remoteRevisionMeta = const VerificationMeta( + 'remoteRevision', + ); + @override + late final GeneratedColumn remoteRevision = GeneratedColumn( + 'remote_revision', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _nameMeta = const VerificationMeta('name'); + @override + late final GeneratedColumn name = GeneratedColumn( + 'name', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _defaultRestSecondsMeta = + const VerificationMeta('defaultRestSeconds'); + @override + late final GeneratedColumn defaultRestSeconds = GeneratedColumn( + 'default_rest_seconds', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + name, + defaultRestSeconds, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'programs'; + @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)); + } else if (isInserting) { + context.missing(_idMeta); + } + if (data.containsKey('created_at')) { + context.handle( + _createdAtMeta, + createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), + ); + } else if (isInserting) { + context.missing(_createdAtMeta); + } + if (data.containsKey('updated_at')) { + context.handle( + _updatedAtMeta, + updatedAt.isAcceptableOrUnknown(data['updated_at']!, _updatedAtMeta), + ); + } else if (isInserting) { + context.missing(_updatedAtMeta); + } + if (data.containsKey('deleted_at')) { + context.handle( + _deletedAtMeta, + deletedAt.isAcceptableOrUnknown(data['deleted_at']!, _deletedAtMeta), + ); + } + if (data.containsKey('schema_version')) { + context.handle( + _schemaVersionMeta, + schemaVersion.isAcceptableOrUnknown( + data['schema_version']!, + _schemaVersionMeta, + ), + ); + } + if (data.containsKey('sync_state')) { + context.handle( + _syncStateMeta, + syncState.isAcceptableOrUnknown(data['sync_state']!, _syncStateMeta), + ); + } else if (isInserting) { + context.missing(_syncStateMeta); + } + if (data.containsKey('local_revision')) { + context.handle( + _localRevisionMeta, + localRevision.isAcceptableOrUnknown( + data['local_revision']!, + _localRevisionMeta, + ), + ); + } else if (isInserting) { + context.missing(_localRevisionMeta); + } + if (data.containsKey('origin_device_id')) { + context.handle( + _originDeviceIdMeta, + originDeviceId.isAcceptableOrUnknown( + data['origin_device_id']!, + _originDeviceIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_originDeviceIdMeta); + } + if (data.containsKey('future_owner_profile_id')) { + context.handle( + _futureOwnerProfileIdMeta, + futureOwnerProfileId.isAcceptableOrUnknown( + data['future_owner_profile_id']!, + _futureOwnerProfileIdMeta, + ), + ); + } + if (data.containsKey('last_synced_at')) { + context.handle( + _lastSyncedAtMeta, + lastSyncedAt.isAcceptableOrUnknown( + data['last_synced_at']!, + _lastSyncedAtMeta, + ), + ); + } + if (data.containsKey('remote_revision')) { + context.handle( + _remoteRevisionMeta, + remoteRevision.isAcceptableOrUnknown( + data['remote_revision']!, + _remoteRevisionMeta, + ), + ); + } + if (data.containsKey('name')) { + context.handle( + _nameMeta, + name.isAcceptableOrUnknown(data['name']!, _nameMeta), + ); + } else if (isInserting) { + context.missing(_nameMeta); + } + if (data.containsKey('default_rest_seconds')) { + context.handle( + _defaultRestSecondsMeta, + defaultRestSeconds.isAcceptableOrUnknown( + data['default_rest_seconds']!, + _defaultRestSecondsMeta, + ), + ); + } else if (isInserting) { + context.missing(_defaultRestSecondsMeta); + } + return context; + } + + @override + Set get $primaryKey => {id}; + @override + Program map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return Program( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + schemaVersion: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}schema_version'], + )!, + syncState: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}sync_state'], + )!, + localRevision: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}local_revision'], + )!, + originDeviceId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}origin_device_id'], + )!, + futureOwnerProfileId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}future_owner_profile_id'], + ), + lastSyncedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_synced_at'], + ), + remoteRevision: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}remote_revision'], + ), + name: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}name'], + )!, + defaultRestSeconds: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}default_rest_seconds'], + )!, + ); + } + + @override + $ProgramsTable createAlias(String alias) { + return $ProgramsTable(attachedDatabase, alias); + } +} + +class Program extends DataClass implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final DateTime? deletedAt; + final int schemaVersion; + final String syncState; + final int localRevision; + final String originDeviceId; + final String? futureOwnerProfileId; + final DateTime? lastSyncedAt; + final String? remoteRevision; + final String name; + final int defaultRestSeconds; + const Program({ + required this.id, + required this.createdAt, + required this.updatedAt, + this.deletedAt, + required this.schemaVersion, + required this.syncState, + required this.localRevision, + required this.originDeviceId, + this.futureOwnerProfileId, + this.lastSyncedAt, + this.remoteRevision, + required this.name, + required this.defaultRestSeconds, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + map['schema_version'] = Variable(schemaVersion); + map['sync_state'] = Variable(syncState); + map['local_revision'] = Variable(localRevision); + map['origin_device_id'] = Variable(originDeviceId); + if (!nullToAbsent || futureOwnerProfileId != null) { + map['future_owner_profile_id'] = Variable(futureOwnerProfileId); + } + if (!nullToAbsent || lastSyncedAt != null) { + map['last_synced_at'] = Variable(lastSyncedAt); + } + if (!nullToAbsent || remoteRevision != null) { + map['remote_revision'] = Variable(remoteRevision); + } + map['name'] = Variable(name); + map['default_rest_seconds'] = Variable(defaultRestSeconds); + return map; + } + + ProgramsCompanion toCompanion(bool nullToAbsent) { + return ProgramsCompanion( + id: Value(id), + createdAt: Value(createdAt), + updatedAt: Value(updatedAt), + deletedAt: deletedAt == null && nullToAbsent + ? const Value.absent() + : Value(deletedAt), + schemaVersion: Value(schemaVersion), + syncState: Value(syncState), + localRevision: Value(localRevision), + originDeviceId: Value(originDeviceId), + futureOwnerProfileId: futureOwnerProfileId == null && nullToAbsent + ? const Value.absent() + : Value(futureOwnerProfileId), + lastSyncedAt: lastSyncedAt == null && nullToAbsent + ? const Value.absent() + : Value(lastSyncedAt), + remoteRevision: remoteRevision == null && nullToAbsent + ? const Value.absent() + : Value(remoteRevision), + name: Value(name), + defaultRestSeconds: Value(defaultRestSeconds), + ); + } + + factory Program.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return Program( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + deletedAt: serializer.fromJson(json['deletedAt']), + schemaVersion: serializer.fromJson(json['schemaVersion']), + syncState: serializer.fromJson(json['syncState']), + localRevision: serializer.fromJson(json['localRevision']), + originDeviceId: serializer.fromJson(json['originDeviceId']), + futureOwnerProfileId: serializer.fromJson( + json['futureOwnerProfileId'], + ), + lastSyncedAt: serializer.fromJson(json['lastSyncedAt']), + remoteRevision: serializer.fromJson(json['remoteRevision']), + name: serializer.fromJson(json['name']), + defaultRestSeconds: serializer.fromJson(json['defaultRestSeconds']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'deletedAt': serializer.toJson(deletedAt), + 'schemaVersion': serializer.toJson(schemaVersion), + 'syncState': serializer.toJson(syncState), + 'localRevision': serializer.toJson(localRevision), + 'originDeviceId': serializer.toJson(originDeviceId), + 'futureOwnerProfileId': serializer.toJson(futureOwnerProfileId), + 'lastSyncedAt': serializer.toJson(lastSyncedAt), + 'remoteRevision': serializer.toJson(remoteRevision), + 'name': serializer.toJson(name), + 'defaultRestSeconds': serializer.toJson(defaultRestSeconds), + }; + } + + Program copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + Value deletedAt = const Value.absent(), + int? schemaVersion, + String? syncState, + int? localRevision, + String? originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + String? name, + int? defaultRestSeconds, + }) => Program( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId.present + ? futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt.present ? lastSyncedAt.value : this.lastSyncedAt, + remoteRevision: remoteRevision.present + ? remoteRevision.value + : this.remoteRevision, + name: name ?? this.name, + defaultRestSeconds: defaultRestSeconds ?? this.defaultRestSeconds, + ); + Program copyWithCompanion(ProgramsCompanion data) { + return Program( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + schemaVersion: data.schemaVersion.present + ? data.schemaVersion.value + : this.schemaVersion, + syncState: data.syncState.present ? data.syncState.value : this.syncState, + localRevision: data.localRevision.present + ? data.localRevision.value + : this.localRevision, + originDeviceId: data.originDeviceId.present + ? data.originDeviceId.value + : this.originDeviceId, + futureOwnerProfileId: data.futureOwnerProfileId.present + ? data.futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: data.lastSyncedAt.present + ? data.lastSyncedAt.value + : this.lastSyncedAt, + remoteRevision: data.remoteRevision.present + ? data.remoteRevision.value + : this.remoteRevision, + name: data.name.present ? data.name.value : this.name, + defaultRestSeconds: data.defaultRestSeconds.present + ? data.defaultRestSeconds.value + : this.defaultRestSeconds, + ); + } + + @override + String toString() { + return (StringBuffer('Program(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('name: $name, ') + ..write('defaultRestSeconds: $defaultRestSeconds') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + name, + defaultRestSeconds, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is Program && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.deletedAt == this.deletedAt && + other.schemaVersion == this.schemaVersion && + other.syncState == this.syncState && + other.localRevision == this.localRevision && + other.originDeviceId == this.originDeviceId && + other.futureOwnerProfileId == this.futureOwnerProfileId && + other.lastSyncedAt == this.lastSyncedAt && + other.remoteRevision == this.remoteRevision && + other.name == this.name && + other.defaultRestSeconds == this.defaultRestSeconds); +} + +class ProgramsCompanion extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value deletedAt; + final Value schemaVersion; + final Value syncState; + final Value localRevision; + final Value originDeviceId; + final Value futureOwnerProfileId; + final Value lastSyncedAt; + final Value remoteRevision; + final Value name; + final Value defaultRestSeconds; + final Value rowid; + const ProgramsCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + this.syncState = const Value.absent(), + this.localRevision = const Value.absent(), + this.originDeviceId = const Value.absent(), + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.name = const Value.absent(), + this.defaultRestSeconds = const Value.absent(), + this.rowid = const Value.absent(), + }); + ProgramsCompanion.insert({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + required String name, + required int defaultRestSeconds, + this.rowid = const Value.absent(), + }) : id = Value(id), + createdAt = Value(createdAt), + updatedAt = Value(updatedAt), + syncState = Value(syncState), + localRevision = Value(localRevision), + originDeviceId = Value(originDeviceId), + name = Value(name), + defaultRestSeconds = Value(defaultRestSeconds); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? deletedAt, + Expression? schemaVersion, + Expression? syncState, + Expression? localRevision, + Expression? originDeviceId, + Expression? futureOwnerProfileId, + Expression? lastSyncedAt, + Expression? remoteRevision, + Expression? name, + Expression? defaultRestSeconds, + Expression? rowid, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (deletedAt != null) 'deleted_at': deletedAt, + if (schemaVersion != null) 'schema_version': schemaVersion, + if (syncState != null) 'sync_state': syncState, + if (localRevision != null) 'local_revision': localRevision, + if (originDeviceId != null) 'origin_device_id': originDeviceId, + if (futureOwnerProfileId != null) + 'future_owner_profile_id': futureOwnerProfileId, + if (lastSyncedAt != null) 'last_synced_at': lastSyncedAt, + if (remoteRevision != null) 'remote_revision': remoteRevision, + if (name != null) 'name': name, + if (defaultRestSeconds != null) + 'default_rest_seconds': defaultRestSeconds, + if (rowid != null) 'rowid': rowid, + }); + } + + ProgramsCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? deletedAt, + Value? schemaVersion, + Value? syncState, + Value? localRevision, + Value? originDeviceId, + Value? futureOwnerProfileId, + Value? lastSyncedAt, + Value? remoteRevision, + Value? name, + Value? defaultRestSeconds, + Value? rowid, + }) { + return ProgramsCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt ?? this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId ?? this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt ?? this.lastSyncedAt, + remoteRevision: remoteRevision ?? this.remoteRevision, + name: name ?? this.name, + defaultRestSeconds: defaultRestSeconds ?? this.defaultRestSeconds, + rowid: rowid ?? this.rowid, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (schemaVersion.present) { + map['schema_version'] = Variable(schemaVersion.value); + } + if (syncState.present) { + map['sync_state'] = Variable(syncState.value); + } + if (localRevision.present) { + map['local_revision'] = Variable(localRevision.value); + } + if (originDeviceId.present) { + map['origin_device_id'] = Variable(originDeviceId.value); + } + if (futureOwnerProfileId.present) { + map['future_owner_profile_id'] = Variable( + futureOwnerProfileId.value, + ); + } + if (lastSyncedAt.present) { + map['last_synced_at'] = Variable(lastSyncedAt.value); + } + if (remoteRevision.present) { + map['remote_revision'] = Variable(remoteRevision.value); + } + if (name.present) { + map['name'] = Variable(name.value); + } + if (defaultRestSeconds.present) { + map['default_rest_seconds'] = Variable(defaultRestSeconds.value); + } + if (rowid.present) { + map['rowid'] = Variable(rowid.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('ProgramsCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('name: $name, ') + ..write('defaultRestSeconds: $defaultRestSeconds, ') + ..write('rowid: $rowid') + ..write(')')) + .toString(); + } +} + +class $ProgramExercisesTable extends ProgramExercises + with TableInfo<$ProgramExercisesTable, ProgramExercise> { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + $ProgramExercisesTable(this.attachedDatabase, [this._alias]); + static const VerificationMeta _idMeta = const VerificationMeta('id'); + @override + late final GeneratedColumn id = GeneratedColumn( + '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: true, + ); + static const VerificationMeta _updatedAtMeta = const VerificationMeta( + 'updatedAt', + ); + @override + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _deletedAtMeta = const VerificationMeta( + 'deletedAt', + ); + @override + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _schemaVersionMeta = const VerificationMeta( + 'schemaVersion', + ); + @override + late final GeneratedColumn schemaVersion = GeneratedColumn( + 'schema_version', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const Constant(1), + ); + static const VerificationMeta _syncStateMeta = const VerificationMeta( + 'syncState', + ); + @override + late final GeneratedColumn syncState = GeneratedColumn( + 'sync_state', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + $customConstraints: + 'NOT NULL CHECK (sync_state IN (\'localOnly\', \'dirty\', \'synced\', \'deleted\'))', + ); + static const VerificationMeta _localRevisionMeta = const VerificationMeta( + 'localRevision', + ); + @override + late final GeneratedColumn localRevision = GeneratedColumn( + 'local_revision', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + $customConstraints: 'NOT NULL CHECK (local_revision >= 0)', + ); + static const VerificationMeta _originDeviceIdMeta = const VerificationMeta( + 'originDeviceId', + ); + @override + late final GeneratedColumn originDeviceId = GeneratedColumn( + 'origin_device_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _futureOwnerProfileIdMeta = + const VerificationMeta('futureOwnerProfileId'); + @override + late final GeneratedColumn futureOwnerProfileId = + GeneratedColumn( + 'future_owner_profile_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _lastSyncedAtMeta = const VerificationMeta( + 'lastSyncedAt', + ); + @override + late final GeneratedColumn lastSyncedAt = GeneratedColumn( + 'last_synced_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _remoteRevisionMeta = const VerificationMeta( + 'remoteRevision', + ); + @override + late final GeneratedColumn remoteRevision = GeneratedColumn( + 'remote_revision', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _programIdMeta = const VerificationMeta( + 'programId', + ); + @override + late final GeneratedColumn programId = GeneratedColumn( + 'program_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES programs (id)', + ), + ); + static const VerificationMeta _sourceExerciseIdMeta = const VerificationMeta( + 'sourceExerciseId', + ); + @override + late final GeneratedColumn sourceExerciseId = GeneratedColumn( + 'source_exercise_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES exercises (id)', + ), + ); + static const VerificationMeta _positionMeta = const VerificationMeta( + 'position', + ); + @override + late final GeneratedColumn position = GeneratedColumn( + 'position', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _exerciseNameSnapshotMeta = + const VerificationMeta('exerciseNameSnapshot'); + @override + late final GeneratedColumn exerciseNameSnapshot = + GeneratedColumn( + 'exercise_name_snapshot', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _exerciseDescriptionSnapshotMeta = + const VerificationMeta('exerciseDescriptionSnapshot'); + @override + late final GeneratedColumn exerciseDescriptionSnapshot = + GeneratedColumn( + 'exercise_description_snapshot', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _exerciseImageMediaIdSnapshotMeta = + const VerificationMeta('exerciseImageMediaIdSnapshot'); + @override + late final GeneratedColumn exerciseImageMediaIdSnapshot = + GeneratedColumn( + 'exercise_image_media_id_snapshot', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES media_assets (id)', + ), + ); + static const VerificationMeta _exerciseVideoMediaIdSnapshotMeta = + const VerificationMeta('exerciseVideoMediaIdSnapshot'); + @override + late final GeneratedColumn exerciseVideoMediaIdSnapshot = + GeneratedColumn( + 'exercise_video_media_id_snapshot', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES media_assets (id)', + ), + ); + static const VerificationMeta _exerciseArchivedSnapshotMeta = + const VerificationMeta('exerciseArchivedSnapshot'); + @override + late final GeneratedColumn exerciseArchivedSnapshot = + GeneratedColumn( + 'exercise_archived_snapshot', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("exercise_archived_snapshot" IN (0, 1))', + ), + defaultValue: const Constant(false), + ); + static const VerificationMeta _availableTimeSnapshotMeta = + const VerificationMeta('availableTimeSnapshot'); + @override + late final GeneratedColumn availableTimeSnapshot = + GeneratedColumn( + 'available_time_snapshot', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("available_time_snapshot" IN (0, 1))', + ), + ); + static const VerificationMeta _availableRepsSnapshotMeta = + const VerificationMeta('availableRepsSnapshot'); + @override + late final GeneratedColumn availableRepsSnapshot = + GeneratedColumn( + 'available_reps_snapshot', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("available_reps_snapshot" IN (0, 1))', + ), + ); + static const VerificationMeta _availableScoreSnapshotMeta = + const VerificationMeta('availableScoreSnapshot'); + @override + late final GeneratedColumn availableScoreSnapshot = + GeneratedColumn( + 'available_score_snapshot', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("available_score_snapshot" IN (0, 1))', + ), + ); + static const VerificationMeta _scoreLabelSnapshotMeta = + const VerificationMeta('scoreLabelSnapshot'); + @override + late final GeneratedColumn scoreLabelSnapshot = + GeneratedColumn( + 'score_label_snapshot', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _scoreUnitSnapshotMeta = const VerificationMeta( + 'scoreUnitSnapshot', + ); + @override + late final GeneratedColumn scoreUnitSnapshot = + GeneratedColumn( + 'score_unit_snapshot', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _setsCountMeta = const VerificationMeta( + 'setsCount', + ); + @override + late final GeneratedColumn setsCount = GeneratedColumn( + 'sets_count', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _timeEnabledMeta = const VerificationMeta( + 'timeEnabled', + ); + @override + late final GeneratedColumn timeEnabled = GeneratedColumn( + 'time_enabled', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("time_enabled" IN (0, 1))', + ), + ); + static const VerificationMeta _repsEnabledMeta = const VerificationMeta( + 'repsEnabled', + ); + @override + late final GeneratedColumn repsEnabled = GeneratedColumn( + 'reps_enabled', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("reps_enabled" IN (0, 1))', + ), + ); + static const VerificationMeta _scoreEnabledMeta = const VerificationMeta( + 'scoreEnabled', + ); + @override + late final GeneratedColumn scoreEnabled = GeneratedColumn( + 'score_enabled', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("score_enabled" IN (0, 1))', + ), + ); + static const VerificationMeta _targetTimeSecondsMeta = const VerificationMeta( + 'targetTimeSeconds', + ); + @override + late final GeneratedColumn targetTimeSeconds = GeneratedColumn( + 'target_time_seconds', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _targetRepsMeta = const VerificationMeta( + 'targetReps', + ); + @override + late final GeneratedColumn targetReps = GeneratedColumn( + 'target_reps', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _targetScoreMeta = const VerificationMeta( + 'targetScore', + ); + @override + late final GeneratedColumn targetScore = GeneratedColumn( + 'target_score', + aliasedName, + true, + type: DriftSqlType.double, + requiredDuringInsert: false, + ); + static const VerificationMeta _restSecondsOverrideMeta = + const VerificationMeta('restSecondsOverride'); + @override + late final GeneratedColumn restSecondsOverride = GeneratedColumn( + 'rest_seconds_override', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + programId, + sourceExerciseId, + position, + exerciseNameSnapshot, + exerciseDescriptionSnapshot, + exerciseImageMediaIdSnapshot, + exerciseVideoMediaIdSnapshot, + exerciseArchivedSnapshot, + availableTimeSnapshot, + availableRepsSnapshot, + availableScoreSnapshot, + scoreLabelSnapshot, + scoreUnitSnapshot, + setsCount, + timeEnabled, + repsEnabled, + scoreEnabled, + targetTimeSeconds, + targetReps, + targetScore, + restSecondsOverride, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'program_exercises'; + @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)); + } else if (isInserting) { + context.missing(_idMeta); + } + if (data.containsKey('created_at')) { + context.handle( + _createdAtMeta, + createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), + ); + } else if (isInserting) { + context.missing(_createdAtMeta); + } + if (data.containsKey('updated_at')) { + context.handle( + _updatedAtMeta, + updatedAt.isAcceptableOrUnknown(data['updated_at']!, _updatedAtMeta), + ); + } else if (isInserting) { + context.missing(_updatedAtMeta); + } + if (data.containsKey('deleted_at')) { + context.handle( + _deletedAtMeta, + deletedAt.isAcceptableOrUnknown(data['deleted_at']!, _deletedAtMeta), + ); + } + if (data.containsKey('schema_version')) { + context.handle( + _schemaVersionMeta, + schemaVersion.isAcceptableOrUnknown( + data['schema_version']!, + _schemaVersionMeta, + ), + ); + } + if (data.containsKey('sync_state')) { + context.handle( + _syncStateMeta, + syncState.isAcceptableOrUnknown(data['sync_state']!, _syncStateMeta), + ); + } else if (isInserting) { + context.missing(_syncStateMeta); + } + if (data.containsKey('local_revision')) { + context.handle( + _localRevisionMeta, + localRevision.isAcceptableOrUnknown( + data['local_revision']!, + _localRevisionMeta, + ), + ); + } else if (isInserting) { + context.missing(_localRevisionMeta); + } + if (data.containsKey('origin_device_id')) { + context.handle( + _originDeviceIdMeta, + originDeviceId.isAcceptableOrUnknown( + data['origin_device_id']!, + _originDeviceIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_originDeviceIdMeta); + } + if (data.containsKey('future_owner_profile_id')) { + context.handle( + _futureOwnerProfileIdMeta, + futureOwnerProfileId.isAcceptableOrUnknown( + data['future_owner_profile_id']!, + _futureOwnerProfileIdMeta, + ), + ); + } + if (data.containsKey('last_synced_at')) { + context.handle( + _lastSyncedAtMeta, + lastSyncedAt.isAcceptableOrUnknown( + data['last_synced_at']!, + _lastSyncedAtMeta, + ), + ); + } + if (data.containsKey('remote_revision')) { + context.handle( + _remoteRevisionMeta, + remoteRevision.isAcceptableOrUnknown( + data['remote_revision']!, + _remoteRevisionMeta, + ), + ); + } + if (data.containsKey('program_id')) { + context.handle( + _programIdMeta, + programId.isAcceptableOrUnknown(data['program_id']!, _programIdMeta), + ); + } else if (isInserting) { + context.missing(_programIdMeta); + } + if (data.containsKey('source_exercise_id')) { + context.handle( + _sourceExerciseIdMeta, + sourceExerciseId.isAcceptableOrUnknown( + data['source_exercise_id']!, + _sourceExerciseIdMeta, + ), + ); + } + if (data.containsKey('position')) { + context.handle( + _positionMeta, + position.isAcceptableOrUnknown(data['position']!, _positionMeta), + ); + } else if (isInserting) { + context.missing(_positionMeta); + } + if (data.containsKey('exercise_name_snapshot')) { + context.handle( + _exerciseNameSnapshotMeta, + exerciseNameSnapshot.isAcceptableOrUnknown( + data['exercise_name_snapshot']!, + _exerciseNameSnapshotMeta, + ), + ); + } else if (isInserting) { + context.missing(_exerciseNameSnapshotMeta); + } + if (data.containsKey('exercise_description_snapshot')) { + context.handle( + _exerciseDescriptionSnapshotMeta, + exerciseDescriptionSnapshot.isAcceptableOrUnknown( + data['exercise_description_snapshot']!, + _exerciseDescriptionSnapshotMeta, + ), + ); + } + if (data.containsKey('exercise_image_media_id_snapshot')) { + context.handle( + _exerciseImageMediaIdSnapshotMeta, + exerciseImageMediaIdSnapshot.isAcceptableOrUnknown( + data['exercise_image_media_id_snapshot']!, + _exerciseImageMediaIdSnapshotMeta, + ), + ); + } + if (data.containsKey('exercise_video_media_id_snapshot')) { + context.handle( + _exerciseVideoMediaIdSnapshotMeta, + exerciseVideoMediaIdSnapshot.isAcceptableOrUnknown( + data['exercise_video_media_id_snapshot']!, + _exerciseVideoMediaIdSnapshotMeta, + ), + ); + } + if (data.containsKey('exercise_archived_snapshot')) { + context.handle( + _exerciseArchivedSnapshotMeta, + exerciseArchivedSnapshot.isAcceptableOrUnknown( + data['exercise_archived_snapshot']!, + _exerciseArchivedSnapshotMeta, + ), + ); + } + if (data.containsKey('available_time_snapshot')) { + context.handle( + _availableTimeSnapshotMeta, + availableTimeSnapshot.isAcceptableOrUnknown( + data['available_time_snapshot']!, + _availableTimeSnapshotMeta, + ), + ); + } else if (isInserting) { + context.missing(_availableTimeSnapshotMeta); + } + if (data.containsKey('available_reps_snapshot')) { + context.handle( + _availableRepsSnapshotMeta, + availableRepsSnapshot.isAcceptableOrUnknown( + data['available_reps_snapshot']!, + _availableRepsSnapshotMeta, + ), + ); + } else if (isInserting) { + context.missing(_availableRepsSnapshotMeta); + } + if (data.containsKey('available_score_snapshot')) { + context.handle( + _availableScoreSnapshotMeta, + availableScoreSnapshot.isAcceptableOrUnknown( + data['available_score_snapshot']!, + _availableScoreSnapshotMeta, + ), + ); + } else if (isInserting) { + context.missing(_availableScoreSnapshotMeta); + } + if (data.containsKey('score_label_snapshot')) { + context.handle( + _scoreLabelSnapshotMeta, + scoreLabelSnapshot.isAcceptableOrUnknown( + data['score_label_snapshot']!, + _scoreLabelSnapshotMeta, + ), + ); + } + if (data.containsKey('score_unit_snapshot')) { + context.handle( + _scoreUnitSnapshotMeta, + scoreUnitSnapshot.isAcceptableOrUnknown( + data['score_unit_snapshot']!, + _scoreUnitSnapshotMeta, + ), + ); + } + if (data.containsKey('sets_count')) { + context.handle( + _setsCountMeta, + setsCount.isAcceptableOrUnknown(data['sets_count']!, _setsCountMeta), + ); + } else if (isInserting) { + context.missing(_setsCountMeta); + } + if (data.containsKey('time_enabled')) { + context.handle( + _timeEnabledMeta, + timeEnabled.isAcceptableOrUnknown( + data['time_enabled']!, + _timeEnabledMeta, + ), + ); + } else if (isInserting) { + context.missing(_timeEnabledMeta); + } + if (data.containsKey('reps_enabled')) { + context.handle( + _repsEnabledMeta, + repsEnabled.isAcceptableOrUnknown( + data['reps_enabled']!, + _repsEnabledMeta, + ), + ); + } else if (isInserting) { + context.missing(_repsEnabledMeta); + } + if (data.containsKey('score_enabled')) { + context.handle( + _scoreEnabledMeta, + scoreEnabled.isAcceptableOrUnknown( + data['score_enabled']!, + _scoreEnabledMeta, + ), + ); + } else if (isInserting) { + context.missing(_scoreEnabledMeta); + } + if (data.containsKey('target_time_seconds')) { + context.handle( + _targetTimeSecondsMeta, + targetTimeSeconds.isAcceptableOrUnknown( + data['target_time_seconds']!, + _targetTimeSecondsMeta, + ), + ); + } + if (data.containsKey('target_reps')) { + context.handle( + _targetRepsMeta, + targetReps.isAcceptableOrUnknown(data['target_reps']!, _targetRepsMeta), + ); + } + if (data.containsKey('target_score')) { + context.handle( + _targetScoreMeta, + targetScore.isAcceptableOrUnknown( + data['target_score']!, + _targetScoreMeta, + ), + ); + } + if (data.containsKey('rest_seconds_override')) { + context.handle( + _restSecondsOverrideMeta, + restSecondsOverride.isAcceptableOrUnknown( + data['rest_seconds_override']!, + _restSecondsOverrideMeta, + ), + ); + } + return context; + } + + @override + Set get $primaryKey => {id}; + @override + ProgramExercise map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return ProgramExercise( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + schemaVersion: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}schema_version'], + )!, + syncState: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}sync_state'], + )!, + localRevision: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}local_revision'], + )!, + originDeviceId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}origin_device_id'], + )!, + futureOwnerProfileId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}future_owner_profile_id'], + ), + lastSyncedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_synced_at'], + ), + remoteRevision: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}remote_revision'], + ), + programId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}program_id'], + )!, + sourceExerciseId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}source_exercise_id'], + ), + position: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}position'], + )!, + exerciseNameSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}exercise_name_snapshot'], + )!, + exerciseDescriptionSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}exercise_description_snapshot'], + ), + exerciseImageMediaIdSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}exercise_image_media_id_snapshot'], + ), + exerciseVideoMediaIdSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}exercise_video_media_id_snapshot'], + ), + exerciseArchivedSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}exercise_archived_snapshot'], + )!, + availableTimeSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}available_time_snapshot'], + )!, + availableRepsSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}available_reps_snapshot'], + )!, + availableScoreSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}available_score_snapshot'], + )!, + scoreLabelSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}score_label_snapshot'], + ), + scoreUnitSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}score_unit_snapshot'], + ), + setsCount: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}sets_count'], + )!, + timeEnabled: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}time_enabled'], + )!, + repsEnabled: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}reps_enabled'], + )!, + scoreEnabled: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}score_enabled'], + )!, + targetTimeSeconds: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}target_time_seconds'], + ), + targetReps: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}target_reps'], + ), + targetScore: attachedDatabase.typeMapping.read( + DriftSqlType.double, + data['${effectivePrefix}target_score'], + ), + restSecondsOverride: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}rest_seconds_override'], + ), + ); + } + + @override + $ProgramExercisesTable createAlias(String alias) { + return $ProgramExercisesTable(attachedDatabase, alias); + } +} + +class ProgramExercise extends DataClass implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final DateTime? deletedAt; + final int schemaVersion; + final String syncState; + final int localRevision; + final String originDeviceId; + final String? futureOwnerProfileId; + final DateTime? lastSyncedAt; + final String? remoteRevision; + final String programId; + final String? sourceExerciseId; + final int position; + final String exerciseNameSnapshot; + final String? exerciseDescriptionSnapshot; + final String? exerciseImageMediaIdSnapshot; + final String? exerciseVideoMediaIdSnapshot; + final bool exerciseArchivedSnapshot; + final bool availableTimeSnapshot; + final bool availableRepsSnapshot; + final bool availableScoreSnapshot; + final String? scoreLabelSnapshot; + final String? scoreUnitSnapshot; + final int setsCount; + final bool timeEnabled; + final bool repsEnabled; + final bool scoreEnabled; + final int? targetTimeSeconds; + final int? targetReps; + final double? targetScore; + final int? restSecondsOverride; + const ProgramExercise({ + required this.id, + required this.createdAt, + required this.updatedAt, + this.deletedAt, + required this.schemaVersion, + required this.syncState, + required this.localRevision, + required this.originDeviceId, + this.futureOwnerProfileId, + this.lastSyncedAt, + this.remoteRevision, + required this.programId, + this.sourceExerciseId, + required this.position, + required this.exerciseNameSnapshot, + this.exerciseDescriptionSnapshot, + this.exerciseImageMediaIdSnapshot, + this.exerciseVideoMediaIdSnapshot, + required this.exerciseArchivedSnapshot, + required this.availableTimeSnapshot, + required this.availableRepsSnapshot, + required this.availableScoreSnapshot, + this.scoreLabelSnapshot, + this.scoreUnitSnapshot, + required this.setsCount, + required this.timeEnabled, + required this.repsEnabled, + required this.scoreEnabled, + this.targetTimeSeconds, + this.targetReps, + this.targetScore, + this.restSecondsOverride, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + map['schema_version'] = Variable(schemaVersion); + map['sync_state'] = Variable(syncState); + map['local_revision'] = Variable(localRevision); + map['origin_device_id'] = Variable(originDeviceId); + if (!nullToAbsent || futureOwnerProfileId != null) { + map['future_owner_profile_id'] = Variable(futureOwnerProfileId); + } + if (!nullToAbsent || lastSyncedAt != null) { + map['last_synced_at'] = Variable(lastSyncedAt); + } + if (!nullToAbsent || remoteRevision != null) { + map['remote_revision'] = Variable(remoteRevision); + } + map['program_id'] = Variable(programId); + if (!nullToAbsent || sourceExerciseId != null) { + map['source_exercise_id'] = Variable(sourceExerciseId); + } + map['position'] = Variable(position); + map['exercise_name_snapshot'] = Variable(exerciseNameSnapshot); + if (!nullToAbsent || exerciseDescriptionSnapshot != null) { + map['exercise_description_snapshot'] = Variable( + exerciseDescriptionSnapshot, + ); + } + if (!nullToAbsent || exerciseImageMediaIdSnapshot != null) { + map['exercise_image_media_id_snapshot'] = Variable( + exerciseImageMediaIdSnapshot, + ); + } + if (!nullToAbsent || exerciseVideoMediaIdSnapshot != null) { + map['exercise_video_media_id_snapshot'] = Variable( + exerciseVideoMediaIdSnapshot, + ); + } + map['exercise_archived_snapshot'] = Variable( + exerciseArchivedSnapshot, + ); + map['available_time_snapshot'] = Variable(availableTimeSnapshot); + map['available_reps_snapshot'] = Variable(availableRepsSnapshot); + map['available_score_snapshot'] = Variable(availableScoreSnapshot); + if (!nullToAbsent || scoreLabelSnapshot != null) { + map['score_label_snapshot'] = Variable(scoreLabelSnapshot); + } + if (!nullToAbsent || scoreUnitSnapshot != null) { + map['score_unit_snapshot'] = Variable(scoreUnitSnapshot); + } + map['sets_count'] = Variable(setsCount); + map['time_enabled'] = Variable(timeEnabled); + map['reps_enabled'] = Variable(repsEnabled); + map['score_enabled'] = Variable(scoreEnabled); + if (!nullToAbsent || targetTimeSeconds != null) { + map['target_time_seconds'] = Variable(targetTimeSeconds); + } + if (!nullToAbsent || targetReps != null) { + map['target_reps'] = Variable(targetReps); + } + if (!nullToAbsent || targetScore != null) { + map['target_score'] = Variable(targetScore); + } + if (!nullToAbsent || restSecondsOverride != null) { + map['rest_seconds_override'] = Variable(restSecondsOverride); + } + return map; + } + + ProgramExercisesCompanion toCompanion(bool nullToAbsent) { + return ProgramExercisesCompanion( + id: Value(id), + createdAt: Value(createdAt), + updatedAt: Value(updatedAt), + deletedAt: deletedAt == null && nullToAbsent + ? const Value.absent() + : Value(deletedAt), + schemaVersion: Value(schemaVersion), + syncState: Value(syncState), + localRevision: Value(localRevision), + originDeviceId: Value(originDeviceId), + futureOwnerProfileId: futureOwnerProfileId == null && nullToAbsent + ? const Value.absent() + : Value(futureOwnerProfileId), + lastSyncedAt: lastSyncedAt == null && nullToAbsent + ? const Value.absent() + : Value(lastSyncedAt), + remoteRevision: remoteRevision == null && nullToAbsent + ? const Value.absent() + : Value(remoteRevision), + programId: Value(programId), + sourceExerciseId: sourceExerciseId == null && nullToAbsent + ? const Value.absent() + : Value(sourceExerciseId), + position: Value(position), + exerciseNameSnapshot: Value(exerciseNameSnapshot), + exerciseDescriptionSnapshot: + exerciseDescriptionSnapshot == null && nullToAbsent + ? const Value.absent() + : Value(exerciseDescriptionSnapshot), + exerciseImageMediaIdSnapshot: + exerciseImageMediaIdSnapshot == null && nullToAbsent + ? const Value.absent() + : Value(exerciseImageMediaIdSnapshot), + exerciseVideoMediaIdSnapshot: + exerciseVideoMediaIdSnapshot == null && nullToAbsent + ? const Value.absent() + : Value(exerciseVideoMediaIdSnapshot), + exerciseArchivedSnapshot: Value(exerciseArchivedSnapshot), + availableTimeSnapshot: Value(availableTimeSnapshot), + availableRepsSnapshot: Value(availableRepsSnapshot), + availableScoreSnapshot: Value(availableScoreSnapshot), + scoreLabelSnapshot: scoreLabelSnapshot == null && nullToAbsent + ? const Value.absent() + : Value(scoreLabelSnapshot), + scoreUnitSnapshot: scoreUnitSnapshot == null && nullToAbsent + ? const Value.absent() + : Value(scoreUnitSnapshot), + setsCount: Value(setsCount), + timeEnabled: Value(timeEnabled), + repsEnabled: Value(repsEnabled), + scoreEnabled: Value(scoreEnabled), + targetTimeSeconds: targetTimeSeconds == null && nullToAbsent + ? const Value.absent() + : Value(targetTimeSeconds), + targetReps: targetReps == null && nullToAbsent + ? const Value.absent() + : Value(targetReps), + targetScore: targetScore == null && nullToAbsent + ? const Value.absent() + : Value(targetScore), + restSecondsOverride: restSecondsOverride == null && nullToAbsent + ? const Value.absent() + : Value(restSecondsOverride), + ); + } + + factory ProgramExercise.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return ProgramExercise( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + deletedAt: serializer.fromJson(json['deletedAt']), + schemaVersion: serializer.fromJson(json['schemaVersion']), + syncState: serializer.fromJson(json['syncState']), + localRevision: serializer.fromJson(json['localRevision']), + originDeviceId: serializer.fromJson(json['originDeviceId']), + futureOwnerProfileId: serializer.fromJson( + json['futureOwnerProfileId'], + ), + lastSyncedAt: serializer.fromJson(json['lastSyncedAt']), + remoteRevision: serializer.fromJson(json['remoteRevision']), + programId: serializer.fromJson(json['programId']), + sourceExerciseId: serializer.fromJson(json['sourceExerciseId']), + position: serializer.fromJson(json['position']), + exerciseNameSnapshot: serializer.fromJson( + json['exerciseNameSnapshot'], + ), + exerciseDescriptionSnapshot: serializer.fromJson( + json['exerciseDescriptionSnapshot'], + ), + exerciseImageMediaIdSnapshot: serializer.fromJson( + json['exerciseImageMediaIdSnapshot'], + ), + exerciseVideoMediaIdSnapshot: serializer.fromJson( + json['exerciseVideoMediaIdSnapshot'], + ), + exerciseArchivedSnapshot: serializer.fromJson( + json['exerciseArchivedSnapshot'], + ), + availableTimeSnapshot: serializer.fromJson( + json['availableTimeSnapshot'], + ), + availableRepsSnapshot: serializer.fromJson( + json['availableRepsSnapshot'], + ), + availableScoreSnapshot: serializer.fromJson( + json['availableScoreSnapshot'], + ), + scoreLabelSnapshot: serializer.fromJson( + json['scoreLabelSnapshot'], + ), + scoreUnitSnapshot: serializer.fromJson( + json['scoreUnitSnapshot'], + ), + setsCount: serializer.fromJson(json['setsCount']), + timeEnabled: serializer.fromJson(json['timeEnabled']), + repsEnabled: serializer.fromJson(json['repsEnabled']), + scoreEnabled: serializer.fromJson(json['scoreEnabled']), + targetTimeSeconds: serializer.fromJson(json['targetTimeSeconds']), + targetReps: serializer.fromJson(json['targetReps']), + targetScore: serializer.fromJson(json['targetScore']), + restSecondsOverride: serializer.fromJson( + json['restSecondsOverride'], + ), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'deletedAt': serializer.toJson(deletedAt), + 'schemaVersion': serializer.toJson(schemaVersion), + 'syncState': serializer.toJson(syncState), + 'localRevision': serializer.toJson(localRevision), + 'originDeviceId': serializer.toJson(originDeviceId), + 'futureOwnerProfileId': serializer.toJson(futureOwnerProfileId), + 'lastSyncedAt': serializer.toJson(lastSyncedAt), + 'remoteRevision': serializer.toJson(remoteRevision), + 'programId': serializer.toJson(programId), + 'sourceExerciseId': serializer.toJson(sourceExerciseId), + 'position': serializer.toJson(position), + 'exerciseNameSnapshot': serializer.toJson(exerciseNameSnapshot), + 'exerciseDescriptionSnapshot': serializer.toJson( + exerciseDescriptionSnapshot, + ), + 'exerciseImageMediaIdSnapshot': serializer.toJson( + exerciseImageMediaIdSnapshot, + ), + 'exerciseVideoMediaIdSnapshot': serializer.toJson( + exerciseVideoMediaIdSnapshot, + ), + 'exerciseArchivedSnapshot': serializer.toJson( + exerciseArchivedSnapshot, + ), + 'availableTimeSnapshot': serializer.toJson(availableTimeSnapshot), + 'availableRepsSnapshot': serializer.toJson(availableRepsSnapshot), + 'availableScoreSnapshot': serializer.toJson(availableScoreSnapshot), + 'scoreLabelSnapshot': serializer.toJson(scoreLabelSnapshot), + 'scoreUnitSnapshot': serializer.toJson(scoreUnitSnapshot), + 'setsCount': serializer.toJson(setsCount), + 'timeEnabled': serializer.toJson(timeEnabled), + 'repsEnabled': serializer.toJson(repsEnabled), + 'scoreEnabled': serializer.toJson(scoreEnabled), + 'targetTimeSeconds': serializer.toJson(targetTimeSeconds), + 'targetReps': serializer.toJson(targetReps), + 'targetScore': serializer.toJson(targetScore), + 'restSecondsOverride': serializer.toJson(restSecondsOverride), + }; + } + + ProgramExercise copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + Value deletedAt = const Value.absent(), + int? schemaVersion, + String? syncState, + int? localRevision, + String? originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + String? programId, + Value sourceExerciseId = const Value.absent(), + int? position, + String? exerciseNameSnapshot, + Value exerciseDescriptionSnapshot = const Value.absent(), + Value exerciseImageMediaIdSnapshot = const Value.absent(), + Value exerciseVideoMediaIdSnapshot = const Value.absent(), + bool? exerciseArchivedSnapshot, + bool? availableTimeSnapshot, + bool? availableRepsSnapshot, + bool? availableScoreSnapshot, + Value scoreLabelSnapshot = const Value.absent(), + Value scoreUnitSnapshot = const Value.absent(), + int? setsCount, + bool? timeEnabled, + bool? repsEnabled, + bool? scoreEnabled, + Value targetTimeSeconds = const Value.absent(), + Value targetReps = const Value.absent(), + Value targetScore = const Value.absent(), + Value restSecondsOverride = const Value.absent(), + }) => ProgramExercise( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId.present + ? futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt.present ? lastSyncedAt.value : this.lastSyncedAt, + remoteRevision: remoteRevision.present + ? remoteRevision.value + : this.remoteRevision, + programId: programId ?? this.programId, + sourceExerciseId: sourceExerciseId.present + ? sourceExerciseId.value + : this.sourceExerciseId, + position: position ?? this.position, + exerciseNameSnapshot: exerciseNameSnapshot ?? this.exerciseNameSnapshot, + exerciseDescriptionSnapshot: exerciseDescriptionSnapshot.present + ? exerciseDescriptionSnapshot.value + : this.exerciseDescriptionSnapshot, + exerciseImageMediaIdSnapshot: exerciseImageMediaIdSnapshot.present + ? exerciseImageMediaIdSnapshot.value + : this.exerciseImageMediaIdSnapshot, + exerciseVideoMediaIdSnapshot: exerciseVideoMediaIdSnapshot.present + ? exerciseVideoMediaIdSnapshot.value + : this.exerciseVideoMediaIdSnapshot, + exerciseArchivedSnapshot: + exerciseArchivedSnapshot ?? this.exerciseArchivedSnapshot, + availableTimeSnapshot: availableTimeSnapshot ?? this.availableTimeSnapshot, + availableRepsSnapshot: availableRepsSnapshot ?? this.availableRepsSnapshot, + availableScoreSnapshot: + availableScoreSnapshot ?? this.availableScoreSnapshot, + scoreLabelSnapshot: scoreLabelSnapshot.present + ? scoreLabelSnapshot.value + : this.scoreLabelSnapshot, + scoreUnitSnapshot: scoreUnitSnapshot.present + ? scoreUnitSnapshot.value + : this.scoreUnitSnapshot, + setsCount: setsCount ?? this.setsCount, + timeEnabled: timeEnabled ?? this.timeEnabled, + repsEnabled: repsEnabled ?? this.repsEnabled, + scoreEnabled: scoreEnabled ?? this.scoreEnabled, + targetTimeSeconds: targetTimeSeconds.present + ? targetTimeSeconds.value + : this.targetTimeSeconds, + targetReps: targetReps.present ? targetReps.value : this.targetReps, + targetScore: targetScore.present ? targetScore.value : this.targetScore, + restSecondsOverride: restSecondsOverride.present + ? restSecondsOverride.value + : this.restSecondsOverride, + ); + ProgramExercise copyWithCompanion(ProgramExercisesCompanion data) { + return ProgramExercise( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + schemaVersion: data.schemaVersion.present + ? data.schemaVersion.value + : this.schemaVersion, + syncState: data.syncState.present ? data.syncState.value : this.syncState, + localRevision: data.localRevision.present + ? data.localRevision.value + : this.localRevision, + originDeviceId: data.originDeviceId.present + ? data.originDeviceId.value + : this.originDeviceId, + futureOwnerProfileId: data.futureOwnerProfileId.present + ? data.futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: data.lastSyncedAt.present + ? data.lastSyncedAt.value + : this.lastSyncedAt, + remoteRevision: data.remoteRevision.present + ? data.remoteRevision.value + : this.remoteRevision, + programId: data.programId.present ? data.programId.value : this.programId, + sourceExerciseId: data.sourceExerciseId.present + ? data.sourceExerciseId.value + : this.sourceExerciseId, + position: data.position.present ? data.position.value : this.position, + exerciseNameSnapshot: data.exerciseNameSnapshot.present + ? data.exerciseNameSnapshot.value + : this.exerciseNameSnapshot, + exerciseDescriptionSnapshot: data.exerciseDescriptionSnapshot.present + ? data.exerciseDescriptionSnapshot.value + : this.exerciseDescriptionSnapshot, + exerciseImageMediaIdSnapshot: data.exerciseImageMediaIdSnapshot.present + ? data.exerciseImageMediaIdSnapshot.value + : this.exerciseImageMediaIdSnapshot, + exerciseVideoMediaIdSnapshot: data.exerciseVideoMediaIdSnapshot.present + ? data.exerciseVideoMediaIdSnapshot.value + : this.exerciseVideoMediaIdSnapshot, + exerciseArchivedSnapshot: data.exerciseArchivedSnapshot.present + ? data.exerciseArchivedSnapshot.value + : this.exerciseArchivedSnapshot, + availableTimeSnapshot: data.availableTimeSnapshot.present + ? data.availableTimeSnapshot.value + : this.availableTimeSnapshot, + availableRepsSnapshot: data.availableRepsSnapshot.present + ? data.availableRepsSnapshot.value + : this.availableRepsSnapshot, + availableScoreSnapshot: data.availableScoreSnapshot.present + ? data.availableScoreSnapshot.value + : this.availableScoreSnapshot, + scoreLabelSnapshot: data.scoreLabelSnapshot.present + ? data.scoreLabelSnapshot.value + : this.scoreLabelSnapshot, + scoreUnitSnapshot: data.scoreUnitSnapshot.present + ? data.scoreUnitSnapshot.value + : this.scoreUnitSnapshot, + setsCount: data.setsCount.present ? data.setsCount.value : this.setsCount, + timeEnabled: data.timeEnabled.present + ? data.timeEnabled.value + : this.timeEnabled, + repsEnabled: data.repsEnabled.present + ? data.repsEnabled.value + : this.repsEnabled, + scoreEnabled: data.scoreEnabled.present + ? data.scoreEnabled.value + : this.scoreEnabled, + targetTimeSeconds: data.targetTimeSeconds.present + ? data.targetTimeSeconds.value + : this.targetTimeSeconds, + targetReps: data.targetReps.present + ? data.targetReps.value + : this.targetReps, + targetScore: data.targetScore.present + ? data.targetScore.value + : this.targetScore, + restSecondsOverride: data.restSecondsOverride.present + ? data.restSecondsOverride.value + : this.restSecondsOverride, + ); + } + + @override + String toString() { + return (StringBuffer('ProgramExercise(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('programId: $programId, ') + ..write('sourceExerciseId: $sourceExerciseId, ') + ..write('position: $position, ') + ..write('exerciseNameSnapshot: $exerciseNameSnapshot, ') + ..write('exerciseDescriptionSnapshot: $exerciseDescriptionSnapshot, ') + ..write( + 'exerciseImageMediaIdSnapshot: $exerciseImageMediaIdSnapshot, ', + ) + ..write( + 'exerciseVideoMediaIdSnapshot: $exerciseVideoMediaIdSnapshot, ', + ) + ..write('exerciseArchivedSnapshot: $exerciseArchivedSnapshot, ') + ..write('availableTimeSnapshot: $availableTimeSnapshot, ') + ..write('availableRepsSnapshot: $availableRepsSnapshot, ') + ..write('availableScoreSnapshot: $availableScoreSnapshot, ') + ..write('scoreLabelSnapshot: $scoreLabelSnapshot, ') + ..write('scoreUnitSnapshot: $scoreUnitSnapshot, ') + ..write('setsCount: $setsCount, ') + ..write('timeEnabled: $timeEnabled, ') + ..write('repsEnabled: $repsEnabled, ') + ..write('scoreEnabled: $scoreEnabled, ') + ..write('targetTimeSeconds: $targetTimeSeconds, ') + ..write('targetReps: $targetReps, ') + ..write('targetScore: $targetScore, ') + ..write('restSecondsOverride: $restSecondsOverride') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hashAll([ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + programId, + sourceExerciseId, + position, + exerciseNameSnapshot, + exerciseDescriptionSnapshot, + exerciseImageMediaIdSnapshot, + exerciseVideoMediaIdSnapshot, + exerciseArchivedSnapshot, + availableTimeSnapshot, + availableRepsSnapshot, + availableScoreSnapshot, + scoreLabelSnapshot, + scoreUnitSnapshot, + setsCount, + timeEnabled, + repsEnabled, + scoreEnabled, + targetTimeSeconds, + targetReps, + targetScore, + restSecondsOverride, + ]); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is ProgramExercise && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.deletedAt == this.deletedAt && + other.schemaVersion == this.schemaVersion && + other.syncState == this.syncState && + other.localRevision == this.localRevision && + other.originDeviceId == this.originDeviceId && + other.futureOwnerProfileId == this.futureOwnerProfileId && + other.lastSyncedAt == this.lastSyncedAt && + other.remoteRevision == this.remoteRevision && + other.programId == this.programId && + other.sourceExerciseId == this.sourceExerciseId && + other.position == this.position && + other.exerciseNameSnapshot == this.exerciseNameSnapshot && + other.exerciseDescriptionSnapshot == + this.exerciseDescriptionSnapshot && + other.exerciseImageMediaIdSnapshot == + this.exerciseImageMediaIdSnapshot && + other.exerciseVideoMediaIdSnapshot == + this.exerciseVideoMediaIdSnapshot && + other.exerciseArchivedSnapshot == this.exerciseArchivedSnapshot && + other.availableTimeSnapshot == this.availableTimeSnapshot && + other.availableRepsSnapshot == this.availableRepsSnapshot && + other.availableScoreSnapshot == this.availableScoreSnapshot && + other.scoreLabelSnapshot == this.scoreLabelSnapshot && + other.scoreUnitSnapshot == this.scoreUnitSnapshot && + other.setsCount == this.setsCount && + other.timeEnabled == this.timeEnabled && + other.repsEnabled == this.repsEnabled && + other.scoreEnabled == this.scoreEnabled && + other.targetTimeSeconds == this.targetTimeSeconds && + other.targetReps == this.targetReps && + other.targetScore == this.targetScore && + other.restSecondsOverride == this.restSecondsOverride); +} + +class ProgramExercisesCompanion extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value deletedAt; + final Value schemaVersion; + final Value syncState; + final Value localRevision; + final Value originDeviceId; + final Value futureOwnerProfileId; + final Value lastSyncedAt; + final Value remoteRevision; + final Value programId; + final Value sourceExerciseId; + final Value position; + final Value exerciseNameSnapshot; + final Value exerciseDescriptionSnapshot; + final Value exerciseImageMediaIdSnapshot; + final Value exerciseVideoMediaIdSnapshot; + final Value exerciseArchivedSnapshot; + final Value availableTimeSnapshot; + final Value availableRepsSnapshot; + final Value availableScoreSnapshot; + final Value scoreLabelSnapshot; + final Value scoreUnitSnapshot; + final Value setsCount; + final Value timeEnabled; + final Value repsEnabled; + final Value scoreEnabled; + final Value targetTimeSeconds; + final Value targetReps; + final Value targetScore; + final Value restSecondsOverride; + final Value rowid; + const ProgramExercisesCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + this.syncState = const Value.absent(), + this.localRevision = const Value.absent(), + this.originDeviceId = const Value.absent(), + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.programId = const Value.absent(), + this.sourceExerciseId = const Value.absent(), + this.position = const Value.absent(), + this.exerciseNameSnapshot = const Value.absent(), + this.exerciseDescriptionSnapshot = const Value.absent(), + this.exerciseImageMediaIdSnapshot = const Value.absent(), + this.exerciseVideoMediaIdSnapshot = const Value.absent(), + this.exerciseArchivedSnapshot = const Value.absent(), + this.availableTimeSnapshot = const Value.absent(), + this.availableRepsSnapshot = const Value.absent(), + this.availableScoreSnapshot = const Value.absent(), + this.scoreLabelSnapshot = const Value.absent(), + this.scoreUnitSnapshot = const Value.absent(), + this.setsCount = const Value.absent(), + this.timeEnabled = const Value.absent(), + this.repsEnabled = const Value.absent(), + this.scoreEnabled = const Value.absent(), + this.targetTimeSeconds = const Value.absent(), + this.targetReps = const Value.absent(), + this.targetScore = const Value.absent(), + this.restSecondsOverride = const Value.absent(), + this.rowid = const Value.absent(), + }); + ProgramExercisesCompanion.insert({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + required String programId, + this.sourceExerciseId = const Value.absent(), + required int position, + required String exerciseNameSnapshot, + this.exerciseDescriptionSnapshot = const Value.absent(), + this.exerciseImageMediaIdSnapshot = const Value.absent(), + this.exerciseVideoMediaIdSnapshot = const Value.absent(), + this.exerciseArchivedSnapshot = const Value.absent(), + required bool availableTimeSnapshot, + required bool availableRepsSnapshot, + required bool availableScoreSnapshot, + this.scoreLabelSnapshot = const Value.absent(), + this.scoreUnitSnapshot = const Value.absent(), + required int setsCount, + required bool timeEnabled, + required bool repsEnabled, + required bool scoreEnabled, + this.targetTimeSeconds = const Value.absent(), + this.targetReps = const Value.absent(), + this.targetScore = const Value.absent(), + this.restSecondsOverride = const Value.absent(), + this.rowid = const Value.absent(), + }) : id = Value(id), + createdAt = Value(createdAt), + updatedAt = Value(updatedAt), + syncState = Value(syncState), + localRevision = Value(localRevision), + originDeviceId = Value(originDeviceId), + programId = Value(programId), + position = Value(position), + exerciseNameSnapshot = Value(exerciseNameSnapshot), + availableTimeSnapshot = Value(availableTimeSnapshot), + availableRepsSnapshot = Value(availableRepsSnapshot), + availableScoreSnapshot = Value(availableScoreSnapshot), + setsCount = Value(setsCount), + timeEnabled = Value(timeEnabled), + repsEnabled = Value(repsEnabled), + scoreEnabled = Value(scoreEnabled); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? deletedAt, + Expression? schemaVersion, + Expression? syncState, + Expression? localRevision, + Expression? originDeviceId, + Expression? futureOwnerProfileId, + Expression? lastSyncedAt, + Expression? remoteRevision, + Expression? programId, + Expression? sourceExerciseId, + Expression? position, + Expression? exerciseNameSnapshot, + Expression? exerciseDescriptionSnapshot, + Expression? exerciseImageMediaIdSnapshot, + Expression? exerciseVideoMediaIdSnapshot, + Expression? exerciseArchivedSnapshot, + Expression? availableTimeSnapshot, + Expression? availableRepsSnapshot, + Expression? availableScoreSnapshot, + Expression? scoreLabelSnapshot, + Expression? scoreUnitSnapshot, + Expression? setsCount, + Expression? timeEnabled, + Expression? repsEnabled, + Expression? scoreEnabled, + Expression? targetTimeSeconds, + Expression? targetReps, + Expression? targetScore, + Expression? restSecondsOverride, + Expression? rowid, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (deletedAt != null) 'deleted_at': deletedAt, + if (schemaVersion != null) 'schema_version': schemaVersion, + if (syncState != null) 'sync_state': syncState, + if (localRevision != null) 'local_revision': localRevision, + if (originDeviceId != null) 'origin_device_id': originDeviceId, + if (futureOwnerProfileId != null) + 'future_owner_profile_id': futureOwnerProfileId, + if (lastSyncedAt != null) 'last_synced_at': lastSyncedAt, + if (remoteRevision != null) 'remote_revision': remoteRevision, + if (programId != null) 'program_id': programId, + if (sourceExerciseId != null) 'source_exercise_id': sourceExerciseId, + if (position != null) 'position': position, + if (exerciseNameSnapshot != null) + 'exercise_name_snapshot': exerciseNameSnapshot, + if (exerciseDescriptionSnapshot != null) + 'exercise_description_snapshot': exerciseDescriptionSnapshot, + if (exerciseImageMediaIdSnapshot != null) + 'exercise_image_media_id_snapshot': exerciseImageMediaIdSnapshot, + if (exerciseVideoMediaIdSnapshot != null) + 'exercise_video_media_id_snapshot': exerciseVideoMediaIdSnapshot, + if (exerciseArchivedSnapshot != null) + 'exercise_archived_snapshot': exerciseArchivedSnapshot, + if (availableTimeSnapshot != null) + 'available_time_snapshot': availableTimeSnapshot, + if (availableRepsSnapshot != null) + 'available_reps_snapshot': availableRepsSnapshot, + if (availableScoreSnapshot != null) + 'available_score_snapshot': availableScoreSnapshot, + if (scoreLabelSnapshot != null) + 'score_label_snapshot': scoreLabelSnapshot, + if (scoreUnitSnapshot != null) 'score_unit_snapshot': scoreUnitSnapshot, + if (setsCount != null) 'sets_count': setsCount, + if (timeEnabled != null) 'time_enabled': timeEnabled, + if (repsEnabled != null) 'reps_enabled': repsEnabled, + if (scoreEnabled != null) 'score_enabled': scoreEnabled, + if (targetTimeSeconds != null) 'target_time_seconds': targetTimeSeconds, + if (targetReps != null) 'target_reps': targetReps, + if (targetScore != null) 'target_score': targetScore, + if (restSecondsOverride != null) + 'rest_seconds_override': restSecondsOverride, + if (rowid != null) 'rowid': rowid, + }); + } + + ProgramExercisesCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? deletedAt, + Value? schemaVersion, + Value? syncState, + Value? localRevision, + Value? originDeviceId, + Value? futureOwnerProfileId, + Value? lastSyncedAt, + Value? remoteRevision, + Value? programId, + Value? sourceExerciseId, + Value? position, + Value? exerciseNameSnapshot, + Value? exerciseDescriptionSnapshot, + Value? exerciseImageMediaIdSnapshot, + Value? exerciseVideoMediaIdSnapshot, + Value? exerciseArchivedSnapshot, + Value? availableTimeSnapshot, + Value? availableRepsSnapshot, + Value? availableScoreSnapshot, + Value? scoreLabelSnapshot, + Value? scoreUnitSnapshot, + Value? setsCount, + Value? timeEnabled, + Value? repsEnabled, + Value? scoreEnabled, + Value? targetTimeSeconds, + Value? targetReps, + Value? targetScore, + Value? restSecondsOverride, + Value? rowid, + }) { + return ProgramExercisesCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt ?? this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId ?? this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt ?? this.lastSyncedAt, + remoteRevision: remoteRevision ?? this.remoteRevision, + programId: programId ?? this.programId, + sourceExerciseId: sourceExerciseId ?? this.sourceExerciseId, + position: position ?? this.position, + exerciseNameSnapshot: exerciseNameSnapshot ?? this.exerciseNameSnapshot, + exerciseDescriptionSnapshot: + exerciseDescriptionSnapshot ?? this.exerciseDescriptionSnapshot, + exerciseImageMediaIdSnapshot: + exerciseImageMediaIdSnapshot ?? this.exerciseImageMediaIdSnapshot, + exerciseVideoMediaIdSnapshot: + exerciseVideoMediaIdSnapshot ?? this.exerciseVideoMediaIdSnapshot, + exerciseArchivedSnapshot: + exerciseArchivedSnapshot ?? this.exerciseArchivedSnapshot, + availableTimeSnapshot: + availableTimeSnapshot ?? this.availableTimeSnapshot, + availableRepsSnapshot: + availableRepsSnapshot ?? this.availableRepsSnapshot, + availableScoreSnapshot: + availableScoreSnapshot ?? this.availableScoreSnapshot, + scoreLabelSnapshot: scoreLabelSnapshot ?? this.scoreLabelSnapshot, + scoreUnitSnapshot: scoreUnitSnapshot ?? this.scoreUnitSnapshot, + setsCount: setsCount ?? this.setsCount, + timeEnabled: timeEnabled ?? this.timeEnabled, + repsEnabled: repsEnabled ?? this.repsEnabled, + scoreEnabled: scoreEnabled ?? this.scoreEnabled, + targetTimeSeconds: targetTimeSeconds ?? this.targetTimeSeconds, + targetReps: targetReps ?? this.targetReps, + targetScore: targetScore ?? this.targetScore, + restSecondsOverride: restSecondsOverride ?? this.restSecondsOverride, + rowid: rowid ?? this.rowid, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (schemaVersion.present) { + map['schema_version'] = Variable(schemaVersion.value); + } + if (syncState.present) { + map['sync_state'] = Variable(syncState.value); + } + if (localRevision.present) { + map['local_revision'] = Variable(localRevision.value); + } + if (originDeviceId.present) { + map['origin_device_id'] = Variable(originDeviceId.value); + } + if (futureOwnerProfileId.present) { + map['future_owner_profile_id'] = Variable( + futureOwnerProfileId.value, + ); + } + if (lastSyncedAt.present) { + map['last_synced_at'] = Variable(lastSyncedAt.value); + } + if (remoteRevision.present) { + map['remote_revision'] = Variable(remoteRevision.value); + } + if (programId.present) { + map['program_id'] = Variable(programId.value); + } + if (sourceExerciseId.present) { + map['source_exercise_id'] = Variable(sourceExerciseId.value); + } + if (position.present) { + map['position'] = Variable(position.value); + } + if (exerciseNameSnapshot.present) { + map['exercise_name_snapshot'] = Variable( + exerciseNameSnapshot.value, + ); + } + if (exerciseDescriptionSnapshot.present) { + map['exercise_description_snapshot'] = Variable( + exerciseDescriptionSnapshot.value, + ); + } + if (exerciseImageMediaIdSnapshot.present) { + map['exercise_image_media_id_snapshot'] = Variable( + exerciseImageMediaIdSnapshot.value, + ); + } + if (exerciseVideoMediaIdSnapshot.present) { + map['exercise_video_media_id_snapshot'] = Variable( + exerciseVideoMediaIdSnapshot.value, + ); + } + if (exerciseArchivedSnapshot.present) { + map['exercise_archived_snapshot'] = Variable( + exerciseArchivedSnapshot.value, + ); + } + if (availableTimeSnapshot.present) { + map['available_time_snapshot'] = Variable( + availableTimeSnapshot.value, + ); + } + if (availableRepsSnapshot.present) { + map['available_reps_snapshot'] = Variable( + availableRepsSnapshot.value, + ); + } + if (availableScoreSnapshot.present) { + map['available_score_snapshot'] = Variable( + availableScoreSnapshot.value, + ); + } + if (scoreLabelSnapshot.present) { + map['score_label_snapshot'] = Variable(scoreLabelSnapshot.value); + } + if (scoreUnitSnapshot.present) { + map['score_unit_snapshot'] = Variable(scoreUnitSnapshot.value); + } + if (setsCount.present) { + map['sets_count'] = Variable(setsCount.value); + } + if (timeEnabled.present) { + map['time_enabled'] = Variable(timeEnabled.value); + } + if (repsEnabled.present) { + map['reps_enabled'] = Variable(repsEnabled.value); + } + if (scoreEnabled.present) { + map['score_enabled'] = Variable(scoreEnabled.value); + } + if (targetTimeSeconds.present) { + map['target_time_seconds'] = Variable(targetTimeSeconds.value); + } + if (targetReps.present) { + map['target_reps'] = Variable(targetReps.value); + } + if (targetScore.present) { + map['target_score'] = Variable(targetScore.value); + } + if (restSecondsOverride.present) { + map['rest_seconds_override'] = Variable(restSecondsOverride.value); + } + if (rowid.present) { + map['rowid'] = Variable(rowid.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('ProgramExercisesCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('programId: $programId, ') + ..write('sourceExerciseId: $sourceExerciseId, ') + ..write('position: $position, ') + ..write('exerciseNameSnapshot: $exerciseNameSnapshot, ') + ..write('exerciseDescriptionSnapshot: $exerciseDescriptionSnapshot, ') + ..write( + 'exerciseImageMediaIdSnapshot: $exerciseImageMediaIdSnapshot, ', + ) + ..write( + 'exerciseVideoMediaIdSnapshot: $exerciseVideoMediaIdSnapshot, ', + ) + ..write('exerciseArchivedSnapshot: $exerciseArchivedSnapshot, ') + ..write('availableTimeSnapshot: $availableTimeSnapshot, ') + ..write('availableRepsSnapshot: $availableRepsSnapshot, ') + ..write('availableScoreSnapshot: $availableScoreSnapshot, ') + ..write('scoreLabelSnapshot: $scoreLabelSnapshot, ') + ..write('scoreUnitSnapshot: $scoreUnitSnapshot, ') + ..write('setsCount: $setsCount, ') + ..write('timeEnabled: $timeEnabled, ') + ..write('repsEnabled: $repsEnabled, ') + ..write('scoreEnabled: $scoreEnabled, ') + ..write('targetTimeSeconds: $targetTimeSeconds, ') + ..write('targetReps: $targetReps, ') + ..write('targetScore: $targetScore, ') + ..write('restSecondsOverride: $restSecondsOverride, ') + ..write('rowid: $rowid') + ..write(')')) + .toString(); + } +} + +class $WorkoutHistoriesTable extends WorkoutHistories + with TableInfo<$WorkoutHistoriesTable, WorkoutHistory> { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + $WorkoutHistoriesTable(this.attachedDatabase, [this._alias]); + static const VerificationMeta _idMeta = const VerificationMeta('id'); + @override + late final GeneratedColumn id = GeneratedColumn( + '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: true, + ); + static const VerificationMeta _updatedAtMeta = const VerificationMeta( + 'updatedAt', + ); + @override + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _deletedAtMeta = const VerificationMeta( + 'deletedAt', + ); + @override + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _schemaVersionMeta = const VerificationMeta( + 'schemaVersion', + ); + @override + late final GeneratedColumn schemaVersion = GeneratedColumn( + 'schema_version', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const Constant(1), + ); + static const VerificationMeta _syncStateMeta = const VerificationMeta( + 'syncState', + ); + @override + late final GeneratedColumn syncState = GeneratedColumn( + 'sync_state', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + $customConstraints: + 'NOT NULL CHECK (sync_state IN (\'localOnly\', \'dirty\', \'synced\', \'deleted\'))', + ); + static const VerificationMeta _localRevisionMeta = const VerificationMeta( + 'localRevision', + ); + @override + late final GeneratedColumn localRevision = GeneratedColumn( + 'local_revision', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + $customConstraints: 'NOT NULL CHECK (local_revision >= 0)', + ); + static const VerificationMeta _originDeviceIdMeta = const VerificationMeta( + 'originDeviceId', + ); + @override + late final GeneratedColumn originDeviceId = GeneratedColumn( + 'origin_device_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _futureOwnerProfileIdMeta = + const VerificationMeta('futureOwnerProfileId'); + @override + late final GeneratedColumn futureOwnerProfileId = + GeneratedColumn( + 'future_owner_profile_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _lastSyncedAtMeta = const VerificationMeta( + 'lastSyncedAt', + ); + @override + late final GeneratedColumn lastSyncedAt = GeneratedColumn( + 'last_synced_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _remoteRevisionMeta = const VerificationMeta( + 'remoteRevision', + ); + @override + late final GeneratedColumn remoteRevision = GeneratedColumn( + 'remote_revision', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _sourceWorkoutTemplateIdMeta = + const VerificationMeta('sourceWorkoutTemplateId'); + @override + late final GeneratedColumn sourceWorkoutTemplateId = + GeneratedColumn( + 'source_workout_template_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES workout_templates (id)', + ), + ); + static const VerificationMeta _sourceActiveWorkoutSessionIdMeta = + const VerificationMeta('sourceActiveWorkoutSessionId'); + @override + late final GeneratedColumn sourceActiveWorkoutSessionId = + GeneratedColumn( + 'source_active_workout_session_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES active_workout_sessions (id)', + ), + ); + static const VerificationMeta _nameSnapshotMeta = const VerificationMeta( + 'nameSnapshot', + ); + @override + late final GeneratedColumn nameSnapshot = GeneratedColumn( + 'name_snapshot', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _startedAtMeta = const VerificationMeta( + 'startedAt', + ); + @override + late final GeneratedColumn startedAt = GeneratedColumn( + 'started_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _endedAtMeta = const VerificationMeta( + 'endedAt', + ); + @override + late final GeneratedColumn endedAt = GeneratedColumn( + 'ended_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _totalActiveMsMeta = const VerificationMeta( + 'totalActiveMs', + ); + @override + late final GeneratedColumn totalActiveMs = GeneratedColumn( + 'total_active_ms', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _completedMeta = const VerificationMeta( + 'completed', + ); + @override + late final GeneratedColumn completed = GeneratedColumn( + 'completed', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("completed" IN (0, 1))', + ), + ); + static const VerificationMeta _historySnapshotJsonMeta = + const VerificationMeta('historySnapshotJson'); + @override + late final GeneratedColumn historySnapshotJson = + GeneratedColumn( + 'history_snapshot_json', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + sourceWorkoutTemplateId, + sourceActiveWorkoutSessionId, + nameSnapshot, + startedAt, + endedAt, + totalActiveMs, + completed, + historySnapshotJson, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'workout_history'; + @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)); + } else if (isInserting) { + context.missing(_idMeta); + } + if (data.containsKey('created_at')) { + context.handle( + _createdAtMeta, + createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), + ); + } else if (isInserting) { + context.missing(_createdAtMeta); + } + if (data.containsKey('updated_at')) { + context.handle( + _updatedAtMeta, + updatedAt.isAcceptableOrUnknown(data['updated_at']!, _updatedAtMeta), + ); + } else if (isInserting) { + context.missing(_updatedAtMeta); + } + if (data.containsKey('deleted_at')) { + context.handle( + _deletedAtMeta, + deletedAt.isAcceptableOrUnknown(data['deleted_at']!, _deletedAtMeta), + ); + } + if (data.containsKey('schema_version')) { + context.handle( + _schemaVersionMeta, + schemaVersion.isAcceptableOrUnknown( + data['schema_version']!, + _schemaVersionMeta, + ), + ); + } + if (data.containsKey('sync_state')) { + context.handle( + _syncStateMeta, + syncState.isAcceptableOrUnknown(data['sync_state']!, _syncStateMeta), + ); + } else if (isInserting) { + context.missing(_syncStateMeta); + } + if (data.containsKey('local_revision')) { + context.handle( + _localRevisionMeta, + localRevision.isAcceptableOrUnknown( + data['local_revision']!, + _localRevisionMeta, + ), + ); + } else if (isInserting) { + context.missing(_localRevisionMeta); + } + if (data.containsKey('origin_device_id')) { + context.handle( + _originDeviceIdMeta, + originDeviceId.isAcceptableOrUnknown( + data['origin_device_id']!, + _originDeviceIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_originDeviceIdMeta); + } + if (data.containsKey('future_owner_profile_id')) { + context.handle( + _futureOwnerProfileIdMeta, + futureOwnerProfileId.isAcceptableOrUnknown( + data['future_owner_profile_id']!, + _futureOwnerProfileIdMeta, + ), + ); + } + if (data.containsKey('last_synced_at')) { + context.handle( + _lastSyncedAtMeta, + lastSyncedAt.isAcceptableOrUnknown( + data['last_synced_at']!, + _lastSyncedAtMeta, + ), + ); + } + if (data.containsKey('remote_revision')) { + context.handle( + _remoteRevisionMeta, + remoteRevision.isAcceptableOrUnknown( + data['remote_revision']!, + _remoteRevisionMeta, + ), + ); + } + if (data.containsKey('source_workout_template_id')) { + context.handle( + _sourceWorkoutTemplateIdMeta, + sourceWorkoutTemplateId.isAcceptableOrUnknown( + data['source_workout_template_id']!, + _sourceWorkoutTemplateIdMeta, + ), + ); + } + if (data.containsKey('source_active_workout_session_id')) { + context.handle( + _sourceActiveWorkoutSessionIdMeta, + sourceActiveWorkoutSessionId.isAcceptableOrUnknown( + data['source_active_workout_session_id']!, + _sourceActiveWorkoutSessionIdMeta, + ), + ); + } + if (data.containsKey('name_snapshot')) { + context.handle( + _nameSnapshotMeta, + nameSnapshot.isAcceptableOrUnknown( + data['name_snapshot']!, + _nameSnapshotMeta, + ), + ); + } else if (isInserting) { + context.missing(_nameSnapshotMeta); + } + if (data.containsKey('started_at')) { + context.handle( + _startedAtMeta, + startedAt.isAcceptableOrUnknown(data['started_at']!, _startedAtMeta), + ); + } else if (isInserting) { + context.missing(_startedAtMeta); + } + if (data.containsKey('ended_at')) { + context.handle( + _endedAtMeta, + endedAt.isAcceptableOrUnknown(data['ended_at']!, _endedAtMeta), + ); + } else if (isInserting) { + context.missing(_endedAtMeta); + } + if (data.containsKey('total_active_ms')) { + context.handle( + _totalActiveMsMeta, + totalActiveMs.isAcceptableOrUnknown( + data['total_active_ms']!, + _totalActiveMsMeta, + ), + ); + } else if (isInserting) { + context.missing(_totalActiveMsMeta); + } + if (data.containsKey('completed')) { + context.handle( + _completedMeta, + completed.isAcceptableOrUnknown(data['completed']!, _completedMeta), + ); + } else if (isInserting) { + context.missing(_completedMeta); + } + if (data.containsKey('history_snapshot_json')) { + context.handle( + _historySnapshotJsonMeta, + historySnapshotJson.isAcceptableOrUnknown( + data['history_snapshot_json']!, + _historySnapshotJsonMeta, + ), + ); + } else if (isInserting) { + context.missing(_historySnapshotJsonMeta); + } + return context; + } + + @override + Set get $primaryKey => {id}; + @override + WorkoutHistory map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return WorkoutHistory( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + schemaVersion: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}schema_version'], + )!, + syncState: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}sync_state'], + )!, + localRevision: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}local_revision'], + )!, + originDeviceId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}origin_device_id'], + )!, + futureOwnerProfileId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}future_owner_profile_id'], + ), + lastSyncedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_synced_at'], + ), + remoteRevision: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}remote_revision'], + ), + sourceWorkoutTemplateId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}source_workout_template_id'], + ), + sourceActiveWorkoutSessionId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}source_active_workout_session_id'], + ), + nameSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}name_snapshot'], + )!, + startedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}started_at'], + )!, + endedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}ended_at'], + )!, + totalActiveMs: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}total_active_ms'], + )!, + completed: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}completed'], + )!, + historySnapshotJson: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}history_snapshot_json'], + )!, + ); + } + + @override + $WorkoutHistoriesTable createAlias(String alias) { + return $WorkoutHistoriesTable(attachedDatabase, alias); + } +} + +class WorkoutHistory extends DataClass implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final DateTime? deletedAt; + final int schemaVersion; + final String syncState; + final int localRevision; + final String originDeviceId; + final String? futureOwnerProfileId; + final DateTime? lastSyncedAt; + final String? remoteRevision; + final String? sourceWorkoutTemplateId; + final String? sourceActiveWorkoutSessionId; + final String nameSnapshot; + final DateTime startedAt; + final DateTime endedAt; + final int totalActiveMs; + final bool completed; + final String historySnapshotJson; + const WorkoutHistory({ + required this.id, + required this.createdAt, + required this.updatedAt, + this.deletedAt, + required this.schemaVersion, + required this.syncState, + required this.localRevision, + required this.originDeviceId, + this.futureOwnerProfileId, + this.lastSyncedAt, + this.remoteRevision, + this.sourceWorkoutTemplateId, + this.sourceActiveWorkoutSessionId, + required this.nameSnapshot, + required this.startedAt, + required this.endedAt, + required this.totalActiveMs, + required this.completed, + required this.historySnapshotJson, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + map['schema_version'] = Variable(schemaVersion); + map['sync_state'] = Variable(syncState); + map['local_revision'] = Variable(localRevision); + map['origin_device_id'] = Variable(originDeviceId); + if (!nullToAbsent || futureOwnerProfileId != null) { + map['future_owner_profile_id'] = Variable(futureOwnerProfileId); + } + if (!nullToAbsent || lastSyncedAt != null) { + map['last_synced_at'] = Variable(lastSyncedAt); + } + if (!nullToAbsent || remoteRevision != null) { + map['remote_revision'] = Variable(remoteRevision); + } + if (!nullToAbsent || sourceWorkoutTemplateId != null) { + map['source_workout_template_id'] = Variable( + sourceWorkoutTemplateId, + ); + } + if (!nullToAbsent || sourceActiveWorkoutSessionId != null) { + map['source_active_workout_session_id'] = Variable( + sourceActiveWorkoutSessionId, + ); + } + map['name_snapshot'] = Variable(nameSnapshot); + map['started_at'] = Variable(startedAt); + map['ended_at'] = Variable(endedAt); + map['total_active_ms'] = Variable(totalActiveMs); + map['completed'] = Variable(completed); + map['history_snapshot_json'] = Variable(historySnapshotJson); + return map; + } + + WorkoutHistoriesCompanion toCompanion(bool nullToAbsent) { + return WorkoutHistoriesCompanion( + id: Value(id), + createdAt: Value(createdAt), + updatedAt: Value(updatedAt), + deletedAt: deletedAt == null && nullToAbsent + ? const Value.absent() + : Value(deletedAt), + schemaVersion: Value(schemaVersion), + syncState: Value(syncState), + localRevision: Value(localRevision), + originDeviceId: Value(originDeviceId), + futureOwnerProfileId: futureOwnerProfileId == null && nullToAbsent + ? const Value.absent() + : Value(futureOwnerProfileId), + lastSyncedAt: lastSyncedAt == null && nullToAbsent + ? const Value.absent() + : Value(lastSyncedAt), + remoteRevision: remoteRevision == null && nullToAbsent + ? const Value.absent() + : Value(remoteRevision), + sourceWorkoutTemplateId: sourceWorkoutTemplateId == null && nullToAbsent + ? const Value.absent() + : Value(sourceWorkoutTemplateId), + sourceActiveWorkoutSessionId: + sourceActiveWorkoutSessionId == null && nullToAbsent + ? const Value.absent() + : Value(sourceActiveWorkoutSessionId), + nameSnapshot: Value(nameSnapshot), + startedAt: Value(startedAt), + endedAt: Value(endedAt), + totalActiveMs: Value(totalActiveMs), + completed: Value(completed), + historySnapshotJson: Value(historySnapshotJson), + ); + } + + factory WorkoutHistory.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return WorkoutHistory( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + deletedAt: serializer.fromJson(json['deletedAt']), + schemaVersion: serializer.fromJson(json['schemaVersion']), + syncState: serializer.fromJson(json['syncState']), + localRevision: serializer.fromJson(json['localRevision']), + originDeviceId: serializer.fromJson(json['originDeviceId']), + futureOwnerProfileId: serializer.fromJson( + json['futureOwnerProfileId'], + ), + lastSyncedAt: serializer.fromJson(json['lastSyncedAt']), + remoteRevision: serializer.fromJson(json['remoteRevision']), + sourceWorkoutTemplateId: serializer.fromJson( + json['sourceWorkoutTemplateId'], + ), + sourceActiveWorkoutSessionId: serializer.fromJson( + json['sourceActiveWorkoutSessionId'], + ), + nameSnapshot: serializer.fromJson(json['nameSnapshot']), + startedAt: serializer.fromJson(json['startedAt']), + endedAt: serializer.fromJson(json['endedAt']), + totalActiveMs: serializer.fromJson(json['totalActiveMs']), + completed: serializer.fromJson(json['completed']), + historySnapshotJson: serializer.fromJson( + json['historySnapshotJson'], + ), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'deletedAt': serializer.toJson(deletedAt), + 'schemaVersion': serializer.toJson(schemaVersion), + 'syncState': serializer.toJson(syncState), + 'localRevision': serializer.toJson(localRevision), + 'originDeviceId': serializer.toJson(originDeviceId), + 'futureOwnerProfileId': serializer.toJson(futureOwnerProfileId), + 'lastSyncedAt': serializer.toJson(lastSyncedAt), + 'remoteRevision': serializer.toJson(remoteRevision), + 'sourceWorkoutTemplateId': serializer.toJson( + sourceWorkoutTemplateId, + ), + 'sourceActiveWorkoutSessionId': serializer.toJson( + sourceActiveWorkoutSessionId, + ), + 'nameSnapshot': serializer.toJson(nameSnapshot), + 'startedAt': serializer.toJson(startedAt), + 'endedAt': serializer.toJson(endedAt), + 'totalActiveMs': serializer.toJson(totalActiveMs), + 'completed': serializer.toJson(completed), + 'historySnapshotJson': serializer.toJson(historySnapshotJson), + }; + } + + WorkoutHistory copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + Value deletedAt = const Value.absent(), + int? schemaVersion, + String? syncState, + int? localRevision, + String? originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value sourceWorkoutTemplateId = const Value.absent(), + Value sourceActiveWorkoutSessionId = const Value.absent(), + String? nameSnapshot, + DateTime? startedAt, + DateTime? endedAt, + int? totalActiveMs, + bool? completed, + String? historySnapshotJson, + }) => WorkoutHistory( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId.present + ? futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt.present ? lastSyncedAt.value : this.lastSyncedAt, + remoteRevision: remoteRevision.present + ? remoteRevision.value + : this.remoteRevision, + sourceWorkoutTemplateId: sourceWorkoutTemplateId.present + ? sourceWorkoutTemplateId.value + : this.sourceWorkoutTemplateId, + sourceActiveWorkoutSessionId: sourceActiveWorkoutSessionId.present + ? sourceActiveWorkoutSessionId.value + : this.sourceActiveWorkoutSessionId, + nameSnapshot: nameSnapshot ?? this.nameSnapshot, + startedAt: startedAt ?? this.startedAt, + endedAt: endedAt ?? this.endedAt, + totalActiveMs: totalActiveMs ?? this.totalActiveMs, + completed: completed ?? this.completed, + historySnapshotJson: historySnapshotJson ?? this.historySnapshotJson, + ); + WorkoutHistory copyWithCompanion(WorkoutHistoriesCompanion data) { + return WorkoutHistory( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + schemaVersion: data.schemaVersion.present + ? data.schemaVersion.value + : this.schemaVersion, + syncState: data.syncState.present ? data.syncState.value : this.syncState, + localRevision: data.localRevision.present + ? data.localRevision.value + : this.localRevision, + originDeviceId: data.originDeviceId.present + ? data.originDeviceId.value + : this.originDeviceId, + futureOwnerProfileId: data.futureOwnerProfileId.present + ? data.futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: data.lastSyncedAt.present + ? data.lastSyncedAt.value + : this.lastSyncedAt, + remoteRevision: data.remoteRevision.present + ? data.remoteRevision.value + : this.remoteRevision, + sourceWorkoutTemplateId: data.sourceWorkoutTemplateId.present + ? data.sourceWorkoutTemplateId.value + : this.sourceWorkoutTemplateId, + sourceActiveWorkoutSessionId: data.sourceActiveWorkoutSessionId.present + ? data.sourceActiveWorkoutSessionId.value + : this.sourceActiveWorkoutSessionId, + nameSnapshot: data.nameSnapshot.present + ? data.nameSnapshot.value + : this.nameSnapshot, + startedAt: data.startedAt.present ? data.startedAt.value : this.startedAt, + endedAt: data.endedAt.present ? data.endedAt.value : this.endedAt, + totalActiveMs: data.totalActiveMs.present + ? data.totalActiveMs.value + : this.totalActiveMs, + completed: data.completed.present ? data.completed.value : this.completed, + historySnapshotJson: data.historySnapshotJson.present + ? data.historySnapshotJson.value + : this.historySnapshotJson, + ); + } + + @override + String toString() { + return (StringBuffer('WorkoutHistory(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('sourceWorkoutTemplateId: $sourceWorkoutTemplateId, ') + ..write( + 'sourceActiveWorkoutSessionId: $sourceActiveWorkoutSessionId, ', + ) + ..write('nameSnapshot: $nameSnapshot, ') + ..write('startedAt: $startedAt, ') + ..write('endedAt: $endedAt, ') + ..write('totalActiveMs: $totalActiveMs, ') + ..write('completed: $completed, ') + ..write('historySnapshotJson: $historySnapshotJson') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + sourceWorkoutTemplateId, + sourceActiveWorkoutSessionId, + nameSnapshot, + startedAt, + endedAt, + totalActiveMs, + completed, + historySnapshotJson, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is WorkoutHistory && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.deletedAt == this.deletedAt && + other.schemaVersion == this.schemaVersion && + other.syncState == this.syncState && + other.localRevision == this.localRevision && + other.originDeviceId == this.originDeviceId && + other.futureOwnerProfileId == this.futureOwnerProfileId && + other.lastSyncedAt == this.lastSyncedAt && + other.remoteRevision == this.remoteRevision && + other.sourceWorkoutTemplateId == this.sourceWorkoutTemplateId && + other.sourceActiveWorkoutSessionId == + this.sourceActiveWorkoutSessionId && + other.nameSnapshot == this.nameSnapshot && + other.startedAt == this.startedAt && + other.endedAt == this.endedAt && + other.totalActiveMs == this.totalActiveMs && + other.completed == this.completed && + other.historySnapshotJson == this.historySnapshotJson); +} + +class WorkoutHistoriesCompanion extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value deletedAt; + final Value schemaVersion; + final Value syncState; + final Value localRevision; + final Value originDeviceId; + final Value futureOwnerProfileId; + final Value lastSyncedAt; + final Value remoteRevision; + final Value sourceWorkoutTemplateId; + final Value sourceActiveWorkoutSessionId; + final Value nameSnapshot; + final Value startedAt; + final Value endedAt; + final Value totalActiveMs; + final Value completed; + final Value historySnapshotJson; + final Value rowid; + const WorkoutHistoriesCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + this.syncState = const Value.absent(), + this.localRevision = const Value.absent(), + this.originDeviceId = const Value.absent(), + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.sourceWorkoutTemplateId = const Value.absent(), + this.sourceActiveWorkoutSessionId = const Value.absent(), + this.nameSnapshot = const Value.absent(), + this.startedAt = const Value.absent(), + this.endedAt = const Value.absent(), + this.totalActiveMs = const Value.absent(), + this.completed = const Value.absent(), + this.historySnapshotJson = const Value.absent(), + this.rowid = const Value.absent(), + }); + WorkoutHistoriesCompanion.insert({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.sourceWorkoutTemplateId = const Value.absent(), + this.sourceActiveWorkoutSessionId = const Value.absent(), + required String nameSnapshot, + required DateTime startedAt, + required DateTime endedAt, + required int totalActiveMs, + required bool completed, + required String historySnapshotJson, + this.rowid = const Value.absent(), + }) : id = Value(id), + createdAt = Value(createdAt), + updatedAt = Value(updatedAt), + syncState = Value(syncState), + localRevision = Value(localRevision), + originDeviceId = Value(originDeviceId), + nameSnapshot = Value(nameSnapshot), + startedAt = Value(startedAt), + endedAt = Value(endedAt), + totalActiveMs = Value(totalActiveMs), + completed = Value(completed), + historySnapshotJson = Value(historySnapshotJson); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? deletedAt, + Expression? schemaVersion, + Expression? syncState, + Expression? localRevision, + Expression? originDeviceId, + Expression? futureOwnerProfileId, + Expression? lastSyncedAt, + Expression? remoteRevision, + Expression? sourceWorkoutTemplateId, + Expression? sourceActiveWorkoutSessionId, + Expression? nameSnapshot, + Expression? startedAt, + Expression? endedAt, + Expression? totalActiveMs, + Expression? completed, + Expression? historySnapshotJson, + Expression? rowid, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (deletedAt != null) 'deleted_at': deletedAt, + if (schemaVersion != null) 'schema_version': schemaVersion, + if (syncState != null) 'sync_state': syncState, + if (localRevision != null) 'local_revision': localRevision, + if (originDeviceId != null) 'origin_device_id': originDeviceId, + if (futureOwnerProfileId != null) + 'future_owner_profile_id': futureOwnerProfileId, + if (lastSyncedAt != null) 'last_synced_at': lastSyncedAt, + if (remoteRevision != null) 'remote_revision': remoteRevision, + if (sourceWorkoutTemplateId != null) + 'source_workout_template_id': sourceWorkoutTemplateId, + if (sourceActiveWorkoutSessionId != null) + 'source_active_workout_session_id': sourceActiveWorkoutSessionId, + if (nameSnapshot != null) 'name_snapshot': nameSnapshot, + if (startedAt != null) 'started_at': startedAt, + if (endedAt != null) 'ended_at': endedAt, + if (totalActiveMs != null) 'total_active_ms': totalActiveMs, + if (completed != null) 'completed': completed, + if (historySnapshotJson != null) + 'history_snapshot_json': historySnapshotJson, + if (rowid != null) 'rowid': rowid, + }); + } + + WorkoutHistoriesCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? deletedAt, + Value? schemaVersion, + Value? syncState, + Value? localRevision, + Value? originDeviceId, + Value? futureOwnerProfileId, + Value? lastSyncedAt, + Value? remoteRevision, + Value? sourceWorkoutTemplateId, + Value? sourceActiveWorkoutSessionId, + Value? nameSnapshot, + Value? startedAt, + Value? endedAt, + Value? totalActiveMs, + Value? completed, + Value? historySnapshotJson, + Value? rowid, + }) { + return WorkoutHistoriesCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt ?? this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId ?? this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt ?? this.lastSyncedAt, + remoteRevision: remoteRevision ?? this.remoteRevision, + sourceWorkoutTemplateId: + sourceWorkoutTemplateId ?? this.sourceWorkoutTemplateId, + sourceActiveWorkoutSessionId: + sourceActiveWorkoutSessionId ?? this.sourceActiveWorkoutSessionId, + nameSnapshot: nameSnapshot ?? this.nameSnapshot, + startedAt: startedAt ?? this.startedAt, + endedAt: endedAt ?? this.endedAt, + totalActiveMs: totalActiveMs ?? this.totalActiveMs, + completed: completed ?? this.completed, + historySnapshotJson: historySnapshotJson ?? this.historySnapshotJson, + rowid: rowid ?? this.rowid, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (schemaVersion.present) { + map['schema_version'] = Variable(schemaVersion.value); + } + if (syncState.present) { + map['sync_state'] = Variable(syncState.value); + } + if (localRevision.present) { + map['local_revision'] = Variable(localRevision.value); + } + if (originDeviceId.present) { + map['origin_device_id'] = Variable(originDeviceId.value); + } + if (futureOwnerProfileId.present) { + map['future_owner_profile_id'] = Variable( + futureOwnerProfileId.value, + ); + } + if (lastSyncedAt.present) { + map['last_synced_at'] = Variable(lastSyncedAt.value); + } + if (remoteRevision.present) { + map['remote_revision'] = Variable(remoteRevision.value); + } + if (sourceWorkoutTemplateId.present) { + map['source_workout_template_id'] = Variable( + sourceWorkoutTemplateId.value, + ); + } + if (sourceActiveWorkoutSessionId.present) { + map['source_active_workout_session_id'] = Variable( + sourceActiveWorkoutSessionId.value, + ); + } + if (nameSnapshot.present) { + map['name_snapshot'] = Variable(nameSnapshot.value); + } + if (startedAt.present) { + map['started_at'] = Variable(startedAt.value); + } + if (endedAt.present) { + map['ended_at'] = Variable(endedAt.value); + } + if (totalActiveMs.present) { + map['total_active_ms'] = Variable(totalActiveMs.value); + } + if (completed.present) { + map['completed'] = Variable(completed.value); + } + if (historySnapshotJson.present) { + map['history_snapshot_json'] = Variable( + historySnapshotJson.value, + ); + } + if (rowid.present) { + map['rowid'] = Variable(rowid.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('WorkoutHistoriesCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('sourceWorkoutTemplateId: $sourceWorkoutTemplateId, ') + ..write( + 'sourceActiveWorkoutSessionId: $sourceActiveWorkoutSessionId, ', + ) + ..write('nameSnapshot: $nameSnapshot, ') + ..write('startedAt: $startedAt, ') + ..write('endedAt: $endedAt, ') + ..write('totalActiveMs: $totalActiveMs, ') + ..write('completed: $completed, ') + ..write('historySnapshotJson: $historySnapshotJson, ') + ..write('rowid: $rowid') + ..write(')')) + .toString(); + } +} + +class $WorkoutHistorySetResultsTable extends WorkoutHistorySetResults + with TableInfo<$WorkoutHistorySetResultsTable, WorkoutHistorySetResult> { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + $WorkoutHistorySetResultsTable(this.attachedDatabase, [this._alias]); + static const VerificationMeta _idMeta = const VerificationMeta('id'); + @override + late final GeneratedColumn id = GeneratedColumn( + '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: true, + ); + static const VerificationMeta _updatedAtMeta = const VerificationMeta( + 'updatedAt', + ); + @override + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _deletedAtMeta = const VerificationMeta( + 'deletedAt', + ); + @override + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _schemaVersionMeta = const VerificationMeta( + 'schemaVersion', + ); + @override + late final GeneratedColumn schemaVersion = GeneratedColumn( + 'schema_version', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const Constant(1), + ); + static const VerificationMeta _syncStateMeta = const VerificationMeta( + 'syncState', + ); + @override + late final GeneratedColumn syncState = GeneratedColumn( + 'sync_state', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + $customConstraints: + 'NOT NULL CHECK (sync_state IN (\'localOnly\', \'dirty\', \'synced\', \'deleted\'))', + ); + static const VerificationMeta _localRevisionMeta = const VerificationMeta( + 'localRevision', + ); + @override + late final GeneratedColumn localRevision = GeneratedColumn( + 'local_revision', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + $customConstraints: 'NOT NULL CHECK (local_revision >= 0)', + ); + static const VerificationMeta _originDeviceIdMeta = const VerificationMeta( + 'originDeviceId', + ); + @override + late final GeneratedColumn originDeviceId = GeneratedColumn( + 'origin_device_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _futureOwnerProfileIdMeta = + const VerificationMeta('futureOwnerProfileId'); + @override + late final GeneratedColumn futureOwnerProfileId = + GeneratedColumn( + 'future_owner_profile_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _lastSyncedAtMeta = const VerificationMeta( + 'lastSyncedAt', + ); + @override + late final GeneratedColumn lastSyncedAt = GeneratedColumn( + 'last_synced_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _remoteRevisionMeta = const VerificationMeta( + 'remoteRevision', + ); + @override + late final GeneratedColumn remoteRevision = GeneratedColumn( + 'remote_revision', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _workoutHistoryIdMeta = const VerificationMeta( + 'workoutHistoryId', + ); + @override + late final GeneratedColumn workoutHistoryId = GeneratedColumn( + 'workout_history_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES workout_history (id)', + ), + ); + static const VerificationMeta _programSnapshotIdMeta = const VerificationMeta( + 'programSnapshotId', + ); + @override + late final GeneratedColumn programSnapshotId = + GeneratedColumn( + 'program_snapshot_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _exerciseSnapshotIdMeta = + const VerificationMeta('exerciseSnapshotId'); + @override + late final GeneratedColumn exerciseSnapshotId = + GeneratedColumn( + 'exercise_snapshot_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _programIndexMeta = const VerificationMeta( + 'programIndex', + ); + @override + late final GeneratedColumn programIndex = GeneratedColumn( + 'program_index', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _exerciseIndexMeta = const VerificationMeta( + 'exerciseIndex', + ); + @override + late final GeneratedColumn exerciseIndex = GeneratedColumn( + 'exercise_index', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _setIndexMeta = const VerificationMeta( + 'setIndex', + ); + @override + late final GeneratedColumn setIndex = GeneratedColumn( + 'set_index', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _programNameSnapshotMeta = + const VerificationMeta('programNameSnapshot'); + @override + late final GeneratedColumn programNameSnapshot = + GeneratedColumn( + 'program_name_snapshot', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _exerciseNameSnapshotMeta = + const VerificationMeta('exerciseNameSnapshot'); + @override + late final GeneratedColumn exerciseNameSnapshot = + GeneratedColumn( + 'exercise_name_snapshot', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _timeEnabledSnapshotMeta = + const VerificationMeta('timeEnabledSnapshot'); + @override + late final GeneratedColumn timeEnabledSnapshot = GeneratedColumn( + 'time_enabled_snapshot', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("time_enabled_snapshot" IN (0, 1))', + ), + ); + static const VerificationMeta _repsEnabledSnapshotMeta = + const VerificationMeta('repsEnabledSnapshot'); + @override + late final GeneratedColumn repsEnabledSnapshot = GeneratedColumn( + 'reps_enabled_snapshot', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("reps_enabled_snapshot" IN (0, 1))', + ), + ); + static const VerificationMeta _scoreEnabledSnapshotMeta = + const VerificationMeta('scoreEnabledSnapshot'); + @override + late final GeneratedColumn scoreEnabledSnapshot = GeneratedColumn( + 'score_enabled_snapshot', + aliasedName, + false, + type: DriftSqlType.bool, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'CHECK ("score_enabled_snapshot" IN (0, 1))', + ), + ); + static const VerificationMeta _targetTimeSecondsSnapshotMeta = + const VerificationMeta('targetTimeSecondsSnapshot'); + @override + late final GeneratedColumn targetTimeSecondsSnapshot = + GeneratedColumn( + 'target_time_seconds_snapshot', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _targetRepsSnapshotMeta = + const VerificationMeta('targetRepsSnapshot'); + @override + late final GeneratedColumn targetRepsSnapshot = GeneratedColumn( + 'target_reps_snapshot', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _targetScoreSnapshotMeta = + const VerificationMeta('targetScoreSnapshot'); + @override + late final GeneratedColumn targetScoreSnapshot = + GeneratedColumn( + 'target_score_snapshot', + aliasedName, + true, + type: DriftSqlType.double, + requiredDuringInsert: false, + ); + static const VerificationMeta _actualTimeMsMeta = const VerificationMeta( + 'actualTimeMs', + ); + @override + late final GeneratedColumn actualTimeMs = GeneratedColumn( + 'actual_time_ms', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _actualRepsMeta = const VerificationMeta( + 'actualReps', + ); + @override + late final GeneratedColumn actualReps = GeneratedColumn( + 'actual_reps', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _actualScoreMeta = const VerificationMeta( + 'actualScore', + ); + @override + late final GeneratedColumn actualScore = GeneratedColumn( + 'actual_score', + aliasedName, + true, + type: DriftSqlType.double, + requiredDuringInsert: false, + ); + static const VerificationMeta _scoreLabelSnapshotMeta = + const VerificationMeta('scoreLabelSnapshot'); + @override + late final GeneratedColumn scoreLabelSnapshot = + GeneratedColumn( + 'score_label_snapshot', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _scoreUnitSnapshotMeta = const VerificationMeta( + 'scoreUnitSnapshot', + ); + @override + late final GeneratedColumn scoreUnitSnapshot = + GeneratedColumn( + 'score_unit_snapshot', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _startedAtMeta = const VerificationMeta( + 'startedAt', + ); + @override + late final GeneratedColumn startedAt = GeneratedColumn( + 'started_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _completedAtMeta = const VerificationMeta( + 'completedAt', + ); + @override + late final GeneratedColumn completedAt = GeneratedColumn( + 'completed_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + workoutHistoryId, + programSnapshotId, + exerciseSnapshotId, + programIndex, + exerciseIndex, + setIndex, + programNameSnapshot, + exerciseNameSnapshot, + timeEnabledSnapshot, + repsEnabledSnapshot, + scoreEnabledSnapshot, + targetTimeSecondsSnapshot, + targetRepsSnapshot, + targetScoreSnapshot, + actualTimeMs, + actualReps, + actualScore, + scoreLabelSnapshot, + scoreUnitSnapshot, + startedAt, + completedAt, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'workout_history_set_results'; + @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)); + } else if (isInserting) { + context.missing(_idMeta); + } + if (data.containsKey('created_at')) { + context.handle( + _createdAtMeta, + createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), + ); + } else if (isInserting) { + context.missing(_createdAtMeta); + } + if (data.containsKey('updated_at')) { + context.handle( + _updatedAtMeta, + updatedAt.isAcceptableOrUnknown(data['updated_at']!, _updatedAtMeta), + ); + } else if (isInserting) { + context.missing(_updatedAtMeta); + } + if (data.containsKey('deleted_at')) { + context.handle( + _deletedAtMeta, + deletedAt.isAcceptableOrUnknown(data['deleted_at']!, _deletedAtMeta), + ); + } + if (data.containsKey('schema_version')) { + context.handle( + _schemaVersionMeta, + schemaVersion.isAcceptableOrUnknown( + data['schema_version']!, + _schemaVersionMeta, + ), + ); + } + if (data.containsKey('sync_state')) { + context.handle( + _syncStateMeta, + syncState.isAcceptableOrUnknown(data['sync_state']!, _syncStateMeta), + ); + } else if (isInserting) { + context.missing(_syncStateMeta); + } + if (data.containsKey('local_revision')) { + context.handle( + _localRevisionMeta, + localRevision.isAcceptableOrUnknown( + data['local_revision']!, + _localRevisionMeta, + ), + ); + } else if (isInserting) { + context.missing(_localRevisionMeta); + } + if (data.containsKey('origin_device_id')) { + context.handle( + _originDeviceIdMeta, + originDeviceId.isAcceptableOrUnknown( + data['origin_device_id']!, + _originDeviceIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_originDeviceIdMeta); + } + if (data.containsKey('future_owner_profile_id')) { + context.handle( + _futureOwnerProfileIdMeta, + futureOwnerProfileId.isAcceptableOrUnknown( + data['future_owner_profile_id']!, + _futureOwnerProfileIdMeta, + ), + ); + } + if (data.containsKey('last_synced_at')) { + context.handle( + _lastSyncedAtMeta, + lastSyncedAt.isAcceptableOrUnknown( + data['last_synced_at']!, + _lastSyncedAtMeta, + ), + ); + } + if (data.containsKey('remote_revision')) { + context.handle( + _remoteRevisionMeta, + remoteRevision.isAcceptableOrUnknown( + data['remote_revision']!, + _remoteRevisionMeta, + ), + ); + } + if (data.containsKey('workout_history_id')) { + context.handle( + _workoutHistoryIdMeta, + workoutHistoryId.isAcceptableOrUnknown( + data['workout_history_id']!, + _workoutHistoryIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_workoutHistoryIdMeta); + } + if (data.containsKey('program_snapshot_id')) { + context.handle( + _programSnapshotIdMeta, + programSnapshotId.isAcceptableOrUnknown( + data['program_snapshot_id']!, + _programSnapshotIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_programSnapshotIdMeta); + } + if (data.containsKey('exercise_snapshot_id')) { + context.handle( + _exerciseSnapshotIdMeta, + exerciseSnapshotId.isAcceptableOrUnknown( + data['exercise_snapshot_id']!, + _exerciseSnapshotIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_exerciseSnapshotIdMeta); + } + if (data.containsKey('program_index')) { + context.handle( + _programIndexMeta, + programIndex.isAcceptableOrUnknown( + data['program_index']!, + _programIndexMeta, + ), + ); + } else if (isInserting) { + context.missing(_programIndexMeta); + } + if (data.containsKey('exercise_index')) { + context.handle( + _exerciseIndexMeta, + exerciseIndex.isAcceptableOrUnknown( + data['exercise_index']!, + _exerciseIndexMeta, + ), + ); + } else if (isInserting) { + context.missing(_exerciseIndexMeta); + } + if (data.containsKey('set_index')) { + context.handle( + _setIndexMeta, + setIndex.isAcceptableOrUnknown(data['set_index']!, _setIndexMeta), + ); + } else if (isInserting) { + context.missing(_setIndexMeta); + } + if (data.containsKey('program_name_snapshot')) { + context.handle( + _programNameSnapshotMeta, + programNameSnapshot.isAcceptableOrUnknown( + data['program_name_snapshot']!, + _programNameSnapshotMeta, + ), + ); + } else if (isInserting) { + context.missing(_programNameSnapshotMeta); + } + if (data.containsKey('exercise_name_snapshot')) { + context.handle( + _exerciseNameSnapshotMeta, + exerciseNameSnapshot.isAcceptableOrUnknown( + data['exercise_name_snapshot']!, + _exerciseNameSnapshotMeta, + ), + ); + } else if (isInserting) { + context.missing(_exerciseNameSnapshotMeta); + } + if (data.containsKey('time_enabled_snapshot')) { + context.handle( + _timeEnabledSnapshotMeta, + timeEnabledSnapshot.isAcceptableOrUnknown( + data['time_enabled_snapshot']!, + _timeEnabledSnapshotMeta, + ), + ); + } else if (isInserting) { + context.missing(_timeEnabledSnapshotMeta); + } + if (data.containsKey('reps_enabled_snapshot')) { + context.handle( + _repsEnabledSnapshotMeta, + repsEnabledSnapshot.isAcceptableOrUnknown( + data['reps_enabled_snapshot']!, + _repsEnabledSnapshotMeta, + ), + ); + } else if (isInserting) { + context.missing(_repsEnabledSnapshotMeta); + } + if (data.containsKey('score_enabled_snapshot')) { + context.handle( + _scoreEnabledSnapshotMeta, + scoreEnabledSnapshot.isAcceptableOrUnknown( + data['score_enabled_snapshot']!, + _scoreEnabledSnapshotMeta, + ), + ); + } else if (isInserting) { + context.missing(_scoreEnabledSnapshotMeta); + } + if (data.containsKey('target_time_seconds_snapshot')) { + context.handle( + _targetTimeSecondsSnapshotMeta, + targetTimeSecondsSnapshot.isAcceptableOrUnknown( + data['target_time_seconds_snapshot']!, + _targetTimeSecondsSnapshotMeta, + ), + ); + } + if (data.containsKey('target_reps_snapshot')) { + context.handle( + _targetRepsSnapshotMeta, + targetRepsSnapshot.isAcceptableOrUnknown( + data['target_reps_snapshot']!, + _targetRepsSnapshotMeta, + ), + ); + } + if (data.containsKey('target_score_snapshot')) { + context.handle( + _targetScoreSnapshotMeta, + targetScoreSnapshot.isAcceptableOrUnknown( + data['target_score_snapshot']!, + _targetScoreSnapshotMeta, + ), + ); + } + if (data.containsKey('actual_time_ms')) { + context.handle( + _actualTimeMsMeta, + actualTimeMs.isAcceptableOrUnknown( + data['actual_time_ms']!, + _actualTimeMsMeta, + ), + ); + } + if (data.containsKey('actual_reps')) { + context.handle( + _actualRepsMeta, + actualReps.isAcceptableOrUnknown(data['actual_reps']!, _actualRepsMeta), + ); + } + if (data.containsKey('actual_score')) { + context.handle( + _actualScoreMeta, + actualScore.isAcceptableOrUnknown( + data['actual_score']!, + _actualScoreMeta, + ), + ); + } + if (data.containsKey('score_label_snapshot')) { + context.handle( + _scoreLabelSnapshotMeta, + scoreLabelSnapshot.isAcceptableOrUnknown( + data['score_label_snapshot']!, + _scoreLabelSnapshotMeta, + ), + ); + } + if (data.containsKey('score_unit_snapshot')) { + context.handle( + _scoreUnitSnapshotMeta, + scoreUnitSnapshot.isAcceptableOrUnknown( + data['score_unit_snapshot']!, + _scoreUnitSnapshotMeta, + ), + ); + } + if (data.containsKey('started_at')) { + context.handle( + _startedAtMeta, + startedAt.isAcceptableOrUnknown(data['started_at']!, _startedAtMeta), + ); + } + if (data.containsKey('completed_at')) { + context.handle( + _completedAtMeta, + completedAt.isAcceptableOrUnknown( + data['completed_at']!, + _completedAtMeta, + ), + ); + } + return context; + } + + @override + Set get $primaryKey => {id}; + @override + WorkoutHistorySetResult map( + Map data, { + String? tablePrefix, + }) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return WorkoutHistorySetResult( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + schemaVersion: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}schema_version'], + )!, + syncState: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}sync_state'], + )!, + localRevision: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}local_revision'], + )!, + originDeviceId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}origin_device_id'], + )!, + futureOwnerProfileId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}future_owner_profile_id'], + ), + lastSyncedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_synced_at'], + ), + remoteRevision: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}remote_revision'], + ), + workoutHistoryId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}workout_history_id'], + )!, + programSnapshotId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}program_snapshot_id'], + )!, + exerciseSnapshotId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}exercise_snapshot_id'], + )!, + programIndex: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}program_index'], + )!, + exerciseIndex: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}exercise_index'], + )!, + setIndex: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}set_index'], + )!, + programNameSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}program_name_snapshot'], + )!, + exerciseNameSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}exercise_name_snapshot'], + )!, + timeEnabledSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}time_enabled_snapshot'], + )!, + repsEnabledSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}reps_enabled_snapshot'], + )!, + scoreEnabledSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.bool, + data['${effectivePrefix}score_enabled_snapshot'], + )!, + targetTimeSecondsSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}target_time_seconds_snapshot'], + ), + targetRepsSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}target_reps_snapshot'], + ), + targetScoreSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.double, + data['${effectivePrefix}target_score_snapshot'], + ), + actualTimeMs: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}actual_time_ms'], + ), + actualReps: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}actual_reps'], + ), + actualScore: attachedDatabase.typeMapping.read( + DriftSqlType.double, + data['${effectivePrefix}actual_score'], + ), + scoreLabelSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}score_label_snapshot'], + ), + scoreUnitSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}score_unit_snapshot'], + ), + startedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}started_at'], + ), + completedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}completed_at'], + ), + ); + } + + @override + $WorkoutHistorySetResultsTable createAlias(String alias) { + return $WorkoutHistorySetResultsTable(attachedDatabase, alias); + } +} + +class WorkoutHistorySetResult extends DataClass + implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final DateTime? deletedAt; + final int schemaVersion; + final String syncState; + final int localRevision; + final String originDeviceId; + final String? futureOwnerProfileId; + final DateTime? lastSyncedAt; + final String? remoteRevision; + final String workoutHistoryId; + final String programSnapshotId; + final String exerciseSnapshotId; + final int programIndex; + final int exerciseIndex; + final int setIndex; + final String programNameSnapshot; + final String exerciseNameSnapshot; + final bool timeEnabledSnapshot; + final bool repsEnabledSnapshot; + final bool scoreEnabledSnapshot; + final int? targetTimeSecondsSnapshot; + final int? targetRepsSnapshot; + final double? targetScoreSnapshot; + final int? actualTimeMs; + final int? actualReps; + final double? actualScore; + final String? scoreLabelSnapshot; + final String? scoreUnitSnapshot; + final DateTime? startedAt; + final DateTime? completedAt; + const WorkoutHistorySetResult({ + required this.id, + required this.createdAt, + required this.updatedAt, + this.deletedAt, + required this.schemaVersion, + required this.syncState, + required this.localRevision, + required this.originDeviceId, + this.futureOwnerProfileId, + this.lastSyncedAt, + this.remoteRevision, + required this.workoutHistoryId, + required this.programSnapshotId, + required this.exerciseSnapshotId, + required this.programIndex, + required this.exerciseIndex, + required this.setIndex, + required this.programNameSnapshot, + required this.exerciseNameSnapshot, + required this.timeEnabledSnapshot, + required this.repsEnabledSnapshot, + required this.scoreEnabledSnapshot, + this.targetTimeSecondsSnapshot, + this.targetRepsSnapshot, + this.targetScoreSnapshot, + this.actualTimeMs, + this.actualReps, + this.actualScore, + this.scoreLabelSnapshot, + this.scoreUnitSnapshot, + this.startedAt, + this.completedAt, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + map['schema_version'] = Variable(schemaVersion); + map['sync_state'] = Variable(syncState); + map['local_revision'] = Variable(localRevision); + map['origin_device_id'] = Variable(originDeviceId); + if (!nullToAbsent || futureOwnerProfileId != null) { + map['future_owner_profile_id'] = Variable(futureOwnerProfileId); + } + if (!nullToAbsent || lastSyncedAt != null) { + map['last_synced_at'] = Variable(lastSyncedAt); + } + if (!nullToAbsent || remoteRevision != null) { + map['remote_revision'] = Variable(remoteRevision); + } + map['workout_history_id'] = Variable(workoutHistoryId); + map['program_snapshot_id'] = Variable(programSnapshotId); + map['exercise_snapshot_id'] = Variable(exerciseSnapshotId); + map['program_index'] = Variable(programIndex); + map['exercise_index'] = Variable(exerciseIndex); + map['set_index'] = Variable(setIndex); + map['program_name_snapshot'] = Variable(programNameSnapshot); + map['exercise_name_snapshot'] = Variable(exerciseNameSnapshot); + map['time_enabled_snapshot'] = Variable(timeEnabledSnapshot); + map['reps_enabled_snapshot'] = Variable(repsEnabledSnapshot); + map['score_enabled_snapshot'] = Variable(scoreEnabledSnapshot); + if (!nullToAbsent || targetTimeSecondsSnapshot != null) { + map['target_time_seconds_snapshot'] = Variable( + targetTimeSecondsSnapshot, + ); + } + if (!nullToAbsent || targetRepsSnapshot != null) { + map['target_reps_snapshot'] = Variable(targetRepsSnapshot); + } + if (!nullToAbsent || targetScoreSnapshot != null) { + map['target_score_snapshot'] = Variable(targetScoreSnapshot); + } + if (!nullToAbsent || actualTimeMs != null) { + map['actual_time_ms'] = Variable(actualTimeMs); + } + if (!nullToAbsent || actualReps != null) { + map['actual_reps'] = Variable(actualReps); + } + if (!nullToAbsent || actualScore != null) { + map['actual_score'] = Variable(actualScore); + } + if (!nullToAbsent || scoreLabelSnapshot != null) { + map['score_label_snapshot'] = Variable(scoreLabelSnapshot); + } + if (!nullToAbsent || scoreUnitSnapshot != null) { + map['score_unit_snapshot'] = Variable(scoreUnitSnapshot); + } + if (!nullToAbsent || startedAt != null) { + map['started_at'] = Variable(startedAt); + } + if (!nullToAbsent || completedAt != null) { + map['completed_at'] = Variable(completedAt); + } + return map; + } + + WorkoutHistorySetResultsCompanion toCompanion(bool nullToAbsent) { + return WorkoutHistorySetResultsCompanion( + id: Value(id), + createdAt: Value(createdAt), + updatedAt: Value(updatedAt), + deletedAt: deletedAt == null && nullToAbsent + ? const Value.absent() + : Value(deletedAt), + schemaVersion: Value(schemaVersion), + syncState: Value(syncState), + localRevision: Value(localRevision), + originDeviceId: Value(originDeviceId), + futureOwnerProfileId: futureOwnerProfileId == null && nullToAbsent + ? const Value.absent() + : Value(futureOwnerProfileId), + lastSyncedAt: lastSyncedAt == null && nullToAbsent + ? const Value.absent() + : Value(lastSyncedAt), + remoteRevision: remoteRevision == null && nullToAbsent + ? const Value.absent() + : Value(remoteRevision), + workoutHistoryId: Value(workoutHistoryId), + programSnapshotId: Value(programSnapshotId), + exerciseSnapshotId: Value(exerciseSnapshotId), + programIndex: Value(programIndex), + exerciseIndex: Value(exerciseIndex), + setIndex: Value(setIndex), + programNameSnapshot: Value(programNameSnapshot), + exerciseNameSnapshot: Value(exerciseNameSnapshot), + timeEnabledSnapshot: Value(timeEnabledSnapshot), + repsEnabledSnapshot: Value(repsEnabledSnapshot), + scoreEnabledSnapshot: Value(scoreEnabledSnapshot), + targetTimeSecondsSnapshot: + targetTimeSecondsSnapshot == null && nullToAbsent + ? const Value.absent() + : Value(targetTimeSecondsSnapshot), + targetRepsSnapshot: targetRepsSnapshot == null && nullToAbsent + ? const Value.absent() + : Value(targetRepsSnapshot), + targetScoreSnapshot: targetScoreSnapshot == null && nullToAbsent + ? const Value.absent() + : Value(targetScoreSnapshot), + actualTimeMs: actualTimeMs == null && nullToAbsent + ? const Value.absent() + : Value(actualTimeMs), + actualReps: actualReps == null && nullToAbsent + ? const Value.absent() + : Value(actualReps), + actualScore: actualScore == null && nullToAbsent + ? const Value.absent() + : Value(actualScore), + scoreLabelSnapshot: scoreLabelSnapshot == null && nullToAbsent + ? const Value.absent() + : Value(scoreLabelSnapshot), + scoreUnitSnapshot: scoreUnitSnapshot == null && nullToAbsent + ? const Value.absent() + : Value(scoreUnitSnapshot), + startedAt: startedAt == null && nullToAbsent + ? const Value.absent() + : Value(startedAt), + completedAt: completedAt == null && nullToAbsent + ? const Value.absent() + : Value(completedAt), + ); + } + + factory WorkoutHistorySetResult.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return WorkoutHistorySetResult( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + deletedAt: serializer.fromJson(json['deletedAt']), + schemaVersion: serializer.fromJson(json['schemaVersion']), + syncState: serializer.fromJson(json['syncState']), + localRevision: serializer.fromJson(json['localRevision']), + originDeviceId: serializer.fromJson(json['originDeviceId']), + futureOwnerProfileId: serializer.fromJson( + json['futureOwnerProfileId'], + ), + lastSyncedAt: serializer.fromJson(json['lastSyncedAt']), + remoteRevision: serializer.fromJson(json['remoteRevision']), + workoutHistoryId: serializer.fromJson(json['workoutHistoryId']), + programSnapshotId: serializer.fromJson(json['programSnapshotId']), + exerciseSnapshotId: serializer.fromJson( + json['exerciseSnapshotId'], + ), + programIndex: serializer.fromJson(json['programIndex']), + exerciseIndex: serializer.fromJson(json['exerciseIndex']), + setIndex: serializer.fromJson(json['setIndex']), + programNameSnapshot: serializer.fromJson( + json['programNameSnapshot'], + ), + exerciseNameSnapshot: serializer.fromJson( + json['exerciseNameSnapshot'], + ), + timeEnabledSnapshot: serializer.fromJson( + json['timeEnabledSnapshot'], + ), + repsEnabledSnapshot: serializer.fromJson( + json['repsEnabledSnapshot'], + ), + scoreEnabledSnapshot: serializer.fromJson( + json['scoreEnabledSnapshot'], + ), + targetTimeSecondsSnapshot: serializer.fromJson( + json['targetTimeSecondsSnapshot'], + ), + targetRepsSnapshot: serializer.fromJson(json['targetRepsSnapshot']), + targetScoreSnapshot: serializer.fromJson( + json['targetScoreSnapshot'], + ), + actualTimeMs: serializer.fromJson(json['actualTimeMs']), + actualReps: serializer.fromJson(json['actualReps']), + actualScore: serializer.fromJson(json['actualScore']), + scoreLabelSnapshot: serializer.fromJson( + json['scoreLabelSnapshot'], + ), + scoreUnitSnapshot: serializer.fromJson( + json['scoreUnitSnapshot'], + ), + startedAt: serializer.fromJson(json['startedAt']), + completedAt: serializer.fromJson(json['completedAt']), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'deletedAt': serializer.toJson(deletedAt), + 'schemaVersion': serializer.toJson(schemaVersion), + 'syncState': serializer.toJson(syncState), + 'localRevision': serializer.toJson(localRevision), + 'originDeviceId': serializer.toJson(originDeviceId), + 'futureOwnerProfileId': serializer.toJson(futureOwnerProfileId), + 'lastSyncedAt': serializer.toJson(lastSyncedAt), + 'remoteRevision': serializer.toJson(remoteRevision), + 'workoutHistoryId': serializer.toJson(workoutHistoryId), + 'programSnapshotId': serializer.toJson(programSnapshotId), + 'exerciseSnapshotId': serializer.toJson(exerciseSnapshotId), + 'programIndex': serializer.toJson(programIndex), + 'exerciseIndex': serializer.toJson(exerciseIndex), + 'setIndex': serializer.toJson(setIndex), + 'programNameSnapshot': serializer.toJson(programNameSnapshot), + 'exerciseNameSnapshot': serializer.toJson(exerciseNameSnapshot), + 'timeEnabledSnapshot': serializer.toJson(timeEnabledSnapshot), + 'repsEnabledSnapshot': serializer.toJson(repsEnabledSnapshot), + 'scoreEnabledSnapshot': serializer.toJson(scoreEnabledSnapshot), + 'targetTimeSecondsSnapshot': serializer.toJson( + targetTimeSecondsSnapshot, + ), + 'targetRepsSnapshot': serializer.toJson(targetRepsSnapshot), + 'targetScoreSnapshot': serializer.toJson(targetScoreSnapshot), + 'actualTimeMs': serializer.toJson(actualTimeMs), + 'actualReps': serializer.toJson(actualReps), + 'actualScore': serializer.toJson(actualScore), + 'scoreLabelSnapshot': serializer.toJson(scoreLabelSnapshot), + 'scoreUnitSnapshot': serializer.toJson(scoreUnitSnapshot), + 'startedAt': serializer.toJson(startedAt), + 'completedAt': serializer.toJson(completedAt), + }; + } + + WorkoutHistorySetResult copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + Value deletedAt = const Value.absent(), + int? schemaVersion, + String? syncState, + int? localRevision, + String? originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + String? workoutHistoryId, + String? programSnapshotId, + String? exerciseSnapshotId, + int? programIndex, + int? exerciseIndex, + int? setIndex, + String? programNameSnapshot, + String? exerciseNameSnapshot, + bool? timeEnabledSnapshot, + bool? repsEnabledSnapshot, + bool? scoreEnabledSnapshot, + Value targetTimeSecondsSnapshot = const Value.absent(), + Value targetRepsSnapshot = const Value.absent(), + Value targetScoreSnapshot = const Value.absent(), + Value actualTimeMs = const Value.absent(), + Value actualReps = const Value.absent(), + Value actualScore = const Value.absent(), + Value scoreLabelSnapshot = const Value.absent(), + Value scoreUnitSnapshot = const Value.absent(), + Value startedAt = const Value.absent(), + Value completedAt = const Value.absent(), + }) => WorkoutHistorySetResult( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId.present + ? futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt.present ? lastSyncedAt.value : this.lastSyncedAt, + remoteRevision: remoteRevision.present + ? remoteRevision.value + : this.remoteRevision, + workoutHistoryId: workoutHistoryId ?? this.workoutHistoryId, + programSnapshotId: programSnapshotId ?? this.programSnapshotId, + exerciseSnapshotId: exerciseSnapshotId ?? this.exerciseSnapshotId, + programIndex: programIndex ?? this.programIndex, + exerciseIndex: exerciseIndex ?? this.exerciseIndex, + setIndex: setIndex ?? this.setIndex, + programNameSnapshot: programNameSnapshot ?? this.programNameSnapshot, + exerciseNameSnapshot: exerciseNameSnapshot ?? this.exerciseNameSnapshot, + timeEnabledSnapshot: timeEnabledSnapshot ?? this.timeEnabledSnapshot, + repsEnabledSnapshot: repsEnabledSnapshot ?? this.repsEnabledSnapshot, + scoreEnabledSnapshot: scoreEnabledSnapshot ?? this.scoreEnabledSnapshot, + targetTimeSecondsSnapshot: targetTimeSecondsSnapshot.present + ? targetTimeSecondsSnapshot.value + : this.targetTimeSecondsSnapshot, + targetRepsSnapshot: targetRepsSnapshot.present + ? targetRepsSnapshot.value + : this.targetRepsSnapshot, + targetScoreSnapshot: targetScoreSnapshot.present + ? targetScoreSnapshot.value + : this.targetScoreSnapshot, + actualTimeMs: actualTimeMs.present ? actualTimeMs.value : this.actualTimeMs, + actualReps: actualReps.present ? actualReps.value : this.actualReps, + actualScore: actualScore.present ? actualScore.value : this.actualScore, + scoreLabelSnapshot: scoreLabelSnapshot.present + ? scoreLabelSnapshot.value + : this.scoreLabelSnapshot, + scoreUnitSnapshot: scoreUnitSnapshot.present + ? scoreUnitSnapshot.value + : this.scoreUnitSnapshot, + startedAt: startedAt.present ? startedAt.value : this.startedAt, + completedAt: completedAt.present ? completedAt.value : this.completedAt, + ); + WorkoutHistorySetResult copyWithCompanion( + WorkoutHistorySetResultsCompanion data, + ) { + return WorkoutHistorySetResult( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + schemaVersion: data.schemaVersion.present + ? data.schemaVersion.value + : this.schemaVersion, + syncState: data.syncState.present ? data.syncState.value : this.syncState, + localRevision: data.localRevision.present + ? data.localRevision.value + : this.localRevision, + originDeviceId: data.originDeviceId.present + ? data.originDeviceId.value + : this.originDeviceId, + futureOwnerProfileId: data.futureOwnerProfileId.present + ? data.futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: data.lastSyncedAt.present + ? data.lastSyncedAt.value + : this.lastSyncedAt, + remoteRevision: data.remoteRevision.present + ? data.remoteRevision.value + : this.remoteRevision, + workoutHistoryId: data.workoutHistoryId.present + ? data.workoutHistoryId.value + : this.workoutHistoryId, + programSnapshotId: data.programSnapshotId.present + ? data.programSnapshotId.value + : this.programSnapshotId, + exerciseSnapshotId: data.exerciseSnapshotId.present + ? data.exerciseSnapshotId.value + : this.exerciseSnapshotId, + programIndex: data.programIndex.present + ? data.programIndex.value + : this.programIndex, + exerciseIndex: data.exerciseIndex.present + ? data.exerciseIndex.value + : this.exerciseIndex, + setIndex: data.setIndex.present ? data.setIndex.value : this.setIndex, + programNameSnapshot: data.programNameSnapshot.present + ? data.programNameSnapshot.value + : this.programNameSnapshot, + exerciseNameSnapshot: data.exerciseNameSnapshot.present + ? data.exerciseNameSnapshot.value + : this.exerciseNameSnapshot, + timeEnabledSnapshot: data.timeEnabledSnapshot.present + ? data.timeEnabledSnapshot.value + : this.timeEnabledSnapshot, + repsEnabledSnapshot: data.repsEnabledSnapshot.present + ? data.repsEnabledSnapshot.value + : this.repsEnabledSnapshot, + scoreEnabledSnapshot: data.scoreEnabledSnapshot.present + ? data.scoreEnabledSnapshot.value + : this.scoreEnabledSnapshot, + targetTimeSecondsSnapshot: data.targetTimeSecondsSnapshot.present + ? data.targetTimeSecondsSnapshot.value + : this.targetTimeSecondsSnapshot, + targetRepsSnapshot: data.targetRepsSnapshot.present + ? data.targetRepsSnapshot.value + : this.targetRepsSnapshot, + targetScoreSnapshot: data.targetScoreSnapshot.present + ? data.targetScoreSnapshot.value + : this.targetScoreSnapshot, + actualTimeMs: data.actualTimeMs.present + ? data.actualTimeMs.value + : this.actualTimeMs, + actualReps: data.actualReps.present + ? data.actualReps.value + : this.actualReps, + actualScore: data.actualScore.present + ? data.actualScore.value + : this.actualScore, + scoreLabelSnapshot: data.scoreLabelSnapshot.present + ? data.scoreLabelSnapshot.value + : this.scoreLabelSnapshot, + scoreUnitSnapshot: data.scoreUnitSnapshot.present + ? data.scoreUnitSnapshot.value + : this.scoreUnitSnapshot, + startedAt: data.startedAt.present ? data.startedAt.value : this.startedAt, + completedAt: data.completedAt.present + ? data.completedAt.value + : this.completedAt, + ); + } + + @override + String toString() { + return (StringBuffer('WorkoutHistorySetResult(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('workoutHistoryId: $workoutHistoryId, ') + ..write('programSnapshotId: $programSnapshotId, ') + ..write('exerciseSnapshotId: $exerciseSnapshotId, ') + ..write('programIndex: $programIndex, ') + ..write('exerciseIndex: $exerciseIndex, ') + ..write('setIndex: $setIndex, ') + ..write('programNameSnapshot: $programNameSnapshot, ') + ..write('exerciseNameSnapshot: $exerciseNameSnapshot, ') + ..write('timeEnabledSnapshot: $timeEnabledSnapshot, ') + ..write('repsEnabledSnapshot: $repsEnabledSnapshot, ') + ..write('scoreEnabledSnapshot: $scoreEnabledSnapshot, ') + ..write('targetTimeSecondsSnapshot: $targetTimeSecondsSnapshot, ') + ..write('targetRepsSnapshot: $targetRepsSnapshot, ') + ..write('targetScoreSnapshot: $targetScoreSnapshot, ') + ..write('actualTimeMs: $actualTimeMs, ') + ..write('actualReps: $actualReps, ') + ..write('actualScore: $actualScore, ') + ..write('scoreLabelSnapshot: $scoreLabelSnapshot, ') + ..write('scoreUnitSnapshot: $scoreUnitSnapshot, ') + ..write('startedAt: $startedAt, ') + ..write('completedAt: $completedAt') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hashAll([ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + workoutHistoryId, + programSnapshotId, + exerciseSnapshotId, + programIndex, + exerciseIndex, + setIndex, + programNameSnapshot, + exerciseNameSnapshot, + timeEnabledSnapshot, + repsEnabledSnapshot, + scoreEnabledSnapshot, + targetTimeSecondsSnapshot, + targetRepsSnapshot, + targetScoreSnapshot, + actualTimeMs, + actualReps, + actualScore, + scoreLabelSnapshot, + scoreUnitSnapshot, + startedAt, + completedAt, + ]); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is WorkoutHistorySetResult && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.deletedAt == this.deletedAt && + other.schemaVersion == this.schemaVersion && + other.syncState == this.syncState && + other.localRevision == this.localRevision && + other.originDeviceId == this.originDeviceId && + other.futureOwnerProfileId == this.futureOwnerProfileId && + other.lastSyncedAt == this.lastSyncedAt && + other.remoteRevision == this.remoteRevision && + other.workoutHistoryId == this.workoutHistoryId && + other.programSnapshotId == this.programSnapshotId && + other.exerciseSnapshotId == this.exerciseSnapshotId && + other.programIndex == this.programIndex && + other.exerciseIndex == this.exerciseIndex && + other.setIndex == this.setIndex && + other.programNameSnapshot == this.programNameSnapshot && + other.exerciseNameSnapshot == this.exerciseNameSnapshot && + other.timeEnabledSnapshot == this.timeEnabledSnapshot && + other.repsEnabledSnapshot == this.repsEnabledSnapshot && + other.scoreEnabledSnapshot == this.scoreEnabledSnapshot && + other.targetTimeSecondsSnapshot == this.targetTimeSecondsSnapshot && + other.targetRepsSnapshot == this.targetRepsSnapshot && + other.targetScoreSnapshot == this.targetScoreSnapshot && + other.actualTimeMs == this.actualTimeMs && + other.actualReps == this.actualReps && + other.actualScore == this.actualScore && + other.scoreLabelSnapshot == this.scoreLabelSnapshot && + other.scoreUnitSnapshot == this.scoreUnitSnapshot && + other.startedAt == this.startedAt && + other.completedAt == this.completedAt); +} + +class WorkoutHistorySetResultsCompanion + extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value deletedAt; + final Value schemaVersion; + final Value syncState; + final Value localRevision; + final Value originDeviceId; + final Value futureOwnerProfileId; + final Value lastSyncedAt; + final Value remoteRevision; + final Value workoutHistoryId; + final Value programSnapshotId; + final Value exerciseSnapshotId; + final Value programIndex; + final Value exerciseIndex; + final Value setIndex; + final Value programNameSnapshot; + final Value exerciseNameSnapshot; + final Value timeEnabledSnapshot; + final Value repsEnabledSnapshot; + final Value scoreEnabledSnapshot; + final Value targetTimeSecondsSnapshot; + final Value targetRepsSnapshot; + final Value targetScoreSnapshot; + final Value actualTimeMs; + final Value actualReps; + final Value actualScore; + final Value scoreLabelSnapshot; + final Value scoreUnitSnapshot; + final Value startedAt; + final Value completedAt; + final Value rowid; + const WorkoutHistorySetResultsCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + this.syncState = const Value.absent(), + this.localRevision = const Value.absent(), + this.originDeviceId = const Value.absent(), + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.workoutHistoryId = const Value.absent(), + this.programSnapshotId = const Value.absent(), + this.exerciseSnapshotId = const Value.absent(), + this.programIndex = const Value.absent(), + this.exerciseIndex = const Value.absent(), + this.setIndex = const Value.absent(), + this.programNameSnapshot = const Value.absent(), + this.exerciseNameSnapshot = const Value.absent(), + this.timeEnabledSnapshot = const Value.absent(), + this.repsEnabledSnapshot = const Value.absent(), + this.scoreEnabledSnapshot = const Value.absent(), + this.targetTimeSecondsSnapshot = const Value.absent(), + this.targetRepsSnapshot = const Value.absent(), + this.targetScoreSnapshot = const Value.absent(), + this.actualTimeMs = const Value.absent(), + this.actualReps = const Value.absent(), + this.actualScore = const Value.absent(), + this.scoreLabelSnapshot = const Value.absent(), + this.scoreUnitSnapshot = const Value.absent(), + this.startedAt = const Value.absent(), + this.completedAt = const Value.absent(), + this.rowid = const Value.absent(), + }); + WorkoutHistorySetResultsCompanion.insert({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + required String workoutHistoryId, + required String programSnapshotId, + required String exerciseSnapshotId, + required int programIndex, + required int exerciseIndex, + required int setIndex, + required String programNameSnapshot, + required String exerciseNameSnapshot, + required bool timeEnabledSnapshot, + required bool repsEnabledSnapshot, + required bool scoreEnabledSnapshot, + this.targetTimeSecondsSnapshot = const Value.absent(), + this.targetRepsSnapshot = const Value.absent(), + this.targetScoreSnapshot = const Value.absent(), + this.actualTimeMs = const Value.absent(), + this.actualReps = const Value.absent(), + this.actualScore = const Value.absent(), + this.scoreLabelSnapshot = const Value.absent(), + this.scoreUnitSnapshot = const Value.absent(), + this.startedAt = const Value.absent(), + this.completedAt = const Value.absent(), + this.rowid = const Value.absent(), + }) : id = Value(id), + createdAt = Value(createdAt), + updatedAt = Value(updatedAt), + syncState = Value(syncState), + localRevision = Value(localRevision), + originDeviceId = Value(originDeviceId), + workoutHistoryId = Value(workoutHistoryId), + programSnapshotId = Value(programSnapshotId), + exerciseSnapshotId = Value(exerciseSnapshotId), + programIndex = Value(programIndex), + exerciseIndex = Value(exerciseIndex), + setIndex = Value(setIndex), + programNameSnapshot = Value(programNameSnapshot), + exerciseNameSnapshot = Value(exerciseNameSnapshot), + timeEnabledSnapshot = Value(timeEnabledSnapshot), + repsEnabledSnapshot = Value(repsEnabledSnapshot), + scoreEnabledSnapshot = Value(scoreEnabledSnapshot); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? deletedAt, + Expression? schemaVersion, + Expression? syncState, + Expression? localRevision, + Expression? originDeviceId, + Expression? futureOwnerProfileId, + Expression? lastSyncedAt, + Expression? remoteRevision, + Expression? workoutHistoryId, + Expression? programSnapshotId, + Expression? exerciseSnapshotId, + Expression? programIndex, + Expression? exerciseIndex, + Expression? setIndex, + Expression? programNameSnapshot, + Expression? exerciseNameSnapshot, + Expression? timeEnabledSnapshot, + Expression? repsEnabledSnapshot, + Expression? scoreEnabledSnapshot, + Expression? targetTimeSecondsSnapshot, + Expression? targetRepsSnapshot, + Expression? targetScoreSnapshot, + Expression? actualTimeMs, + Expression? actualReps, + Expression? actualScore, + Expression? scoreLabelSnapshot, + Expression? scoreUnitSnapshot, + Expression? startedAt, + Expression? completedAt, + Expression? rowid, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (deletedAt != null) 'deleted_at': deletedAt, + if (schemaVersion != null) 'schema_version': schemaVersion, + if (syncState != null) 'sync_state': syncState, + if (localRevision != null) 'local_revision': localRevision, + if (originDeviceId != null) 'origin_device_id': originDeviceId, + if (futureOwnerProfileId != null) + 'future_owner_profile_id': futureOwnerProfileId, + if (lastSyncedAt != null) 'last_synced_at': lastSyncedAt, + if (remoteRevision != null) 'remote_revision': remoteRevision, + if (workoutHistoryId != null) 'workout_history_id': workoutHistoryId, + if (programSnapshotId != null) 'program_snapshot_id': programSnapshotId, + if (exerciseSnapshotId != null) + 'exercise_snapshot_id': exerciseSnapshotId, + if (programIndex != null) 'program_index': programIndex, + if (exerciseIndex != null) 'exercise_index': exerciseIndex, + if (setIndex != null) 'set_index': setIndex, + if (programNameSnapshot != null) + 'program_name_snapshot': programNameSnapshot, + if (exerciseNameSnapshot != null) + 'exercise_name_snapshot': exerciseNameSnapshot, + if (timeEnabledSnapshot != null) + 'time_enabled_snapshot': timeEnabledSnapshot, + if (repsEnabledSnapshot != null) + 'reps_enabled_snapshot': repsEnabledSnapshot, + if (scoreEnabledSnapshot != null) + 'score_enabled_snapshot': scoreEnabledSnapshot, + if (targetTimeSecondsSnapshot != null) + 'target_time_seconds_snapshot': targetTimeSecondsSnapshot, + if (targetRepsSnapshot != null) + 'target_reps_snapshot': targetRepsSnapshot, + if (targetScoreSnapshot != null) + 'target_score_snapshot': targetScoreSnapshot, + if (actualTimeMs != null) 'actual_time_ms': actualTimeMs, + if (actualReps != null) 'actual_reps': actualReps, + if (actualScore != null) 'actual_score': actualScore, + if (scoreLabelSnapshot != null) + 'score_label_snapshot': scoreLabelSnapshot, + if (scoreUnitSnapshot != null) 'score_unit_snapshot': scoreUnitSnapshot, + if (startedAt != null) 'started_at': startedAt, + if (completedAt != null) 'completed_at': completedAt, + if (rowid != null) 'rowid': rowid, + }); + } + + WorkoutHistorySetResultsCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? deletedAt, + Value? schemaVersion, + Value? syncState, + Value? localRevision, + Value? originDeviceId, + Value? futureOwnerProfileId, + Value? lastSyncedAt, + Value? remoteRevision, + Value? workoutHistoryId, + Value? programSnapshotId, + Value? exerciseSnapshotId, + Value? programIndex, + Value? exerciseIndex, + Value? setIndex, + Value? programNameSnapshot, + Value? exerciseNameSnapshot, + Value? timeEnabledSnapshot, + Value? repsEnabledSnapshot, + Value? scoreEnabledSnapshot, + Value? targetTimeSecondsSnapshot, + Value? targetRepsSnapshot, + Value? targetScoreSnapshot, + Value? actualTimeMs, + Value? actualReps, + Value? actualScore, + Value? scoreLabelSnapshot, + Value? scoreUnitSnapshot, + Value? startedAt, + Value? completedAt, + Value? rowid, + }) { + return WorkoutHistorySetResultsCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt ?? this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId ?? this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt ?? this.lastSyncedAt, + remoteRevision: remoteRevision ?? this.remoteRevision, + workoutHistoryId: workoutHistoryId ?? this.workoutHistoryId, + programSnapshotId: programSnapshotId ?? this.programSnapshotId, + exerciseSnapshotId: exerciseSnapshotId ?? this.exerciseSnapshotId, + programIndex: programIndex ?? this.programIndex, + exerciseIndex: exerciseIndex ?? this.exerciseIndex, + setIndex: setIndex ?? this.setIndex, + programNameSnapshot: programNameSnapshot ?? this.programNameSnapshot, + exerciseNameSnapshot: exerciseNameSnapshot ?? this.exerciseNameSnapshot, + timeEnabledSnapshot: timeEnabledSnapshot ?? this.timeEnabledSnapshot, + repsEnabledSnapshot: repsEnabledSnapshot ?? this.repsEnabledSnapshot, + scoreEnabledSnapshot: scoreEnabledSnapshot ?? this.scoreEnabledSnapshot, + targetTimeSecondsSnapshot: + targetTimeSecondsSnapshot ?? this.targetTimeSecondsSnapshot, + targetRepsSnapshot: targetRepsSnapshot ?? this.targetRepsSnapshot, + targetScoreSnapshot: targetScoreSnapshot ?? this.targetScoreSnapshot, + actualTimeMs: actualTimeMs ?? this.actualTimeMs, + actualReps: actualReps ?? this.actualReps, + actualScore: actualScore ?? this.actualScore, + scoreLabelSnapshot: scoreLabelSnapshot ?? this.scoreLabelSnapshot, + scoreUnitSnapshot: scoreUnitSnapshot ?? this.scoreUnitSnapshot, + startedAt: startedAt ?? this.startedAt, + completedAt: completedAt ?? this.completedAt, + rowid: rowid ?? this.rowid, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (schemaVersion.present) { + map['schema_version'] = Variable(schemaVersion.value); + } + if (syncState.present) { + map['sync_state'] = Variable(syncState.value); + } + if (localRevision.present) { + map['local_revision'] = Variable(localRevision.value); + } + if (originDeviceId.present) { + map['origin_device_id'] = Variable(originDeviceId.value); + } + if (futureOwnerProfileId.present) { + map['future_owner_profile_id'] = Variable( + futureOwnerProfileId.value, + ); + } + if (lastSyncedAt.present) { + map['last_synced_at'] = Variable(lastSyncedAt.value); + } + if (remoteRevision.present) { + map['remote_revision'] = Variable(remoteRevision.value); + } + if (workoutHistoryId.present) { + map['workout_history_id'] = Variable(workoutHistoryId.value); + } + if (programSnapshotId.present) { + map['program_snapshot_id'] = Variable(programSnapshotId.value); + } + if (exerciseSnapshotId.present) { + map['exercise_snapshot_id'] = Variable(exerciseSnapshotId.value); + } + if (programIndex.present) { + map['program_index'] = Variable(programIndex.value); + } + if (exerciseIndex.present) { + map['exercise_index'] = Variable(exerciseIndex.value); + } + if (setIndex.present) { + map['set_index'] = Variable(setIndex.value); + } + if (programNameSnapshot.present) { + map['program_name_snapshot'] = Variable( + programNameSnapshot.value, + ); + } + if (exerciseNameSnapshot.present) { + map['exercise_name_snapshot'] = Variable( + exerciseNameSnapshot.value, + ); + } + if (timeEnabledSnapshot.present) { + map['time_enabled_snapshot'] = Variable(timeEnabledSnapshot.value); + } + if (repsEnabledSnapshot.present) { + map['reps_enabled_snapshot'] = Variable(repsEnabledSnapshot.value); + } + if (scoreEnabledSnapshot.present) { + map['score_enabled_snapshot'] = Variable( + scoreEnabledSnapshot.value, + ); + } + if (targetTimeSecondsSnapshot.present) { + map['target_time_seconds_snapshot'] = Variable( + targetTimeSecondsSnapshot.value, + ); + } + if (targetRepsSnapshot.present) { + map['target_reps_snapshot'] = Variable(targetRepsSnapshot.value); + } + if (targetScoreSnapshot.present) { + map['target_score_snapshot'] = Variable( + targetScoreSnapshot.value, + ); + } + if (actualTimeMs.present) { + map['actual_time_ms'] = Variable(actualTimeMs.value); + } + if (actualReps.present) { + map['actual_reps'] = Variable(actualReps.value); + } + if (actualScore.present) { + map['actual_score'] = Variable(actualScore.value); + } + if (scoreLabelSnapshot.present) { + map['score_label_snapshot'] = Variable(scoreLabelSnapshot.value); + } + if (scoreUnitSnapshot.present) { + map['score_unit_snapshot'] = Variable(scoreUnitSnapshot.value); + } + if (startedAt.present) { + map['started_at'] = Variable(startedAt.value); + } + if (completedAt.present) { + map['completed_at'] = Variable(completedAt.value); + } + if (rowid.present) { + map['rowid'] = Variable(rowid.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('WorkoutHistorySetResultsCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('workoutHistoryId: $workoutHistoryId, ') + ..write('programSnapshotId: $programSnapshotId, ') + ..write('exerciseSnapshotId: $exerciseSnapshotId, ') + ..write('programIndex: $programIndex, ') + ..write('exerciseIndex: $exerciseIndex, ') + ..write('setIndex: $setIndex, ') + ..write('programNameSnapshot: $programNameSnapshot, ') + ..write('exerciseNameSnapshot: $exerciseNameSnapshot, ') + ..write('timeEnabledSnapshot: $timeEnabledSnapshot, ') + ..write('repsEnabledSnapshot: $repsEnabledSnapshot, ') + ..write('scoreEnabledSnapshot: $scoreEnabledSnapshot, ') + ..write('targetTimeSecondsSnapshot: $targetTimeSecondsSnapshot, ') + ..write('targetRepsSnapshot: $targetRepsSnapshot, ') + ..write('targetScoreSnapshot: $targetScoreSnapshot, ') + ..write('actualTimeMs: $actualTimeMs, ') + ..write('actualReps: $actualReps, ') + ..write('actualScore: $actualScore, ') + ..write('scoreLabelSnapshot: $scoreLabelSnapshot, ') + ..write('scoreUnitSnapshot: $scoreUnitSnapshot, ') + ..write('startedAt: $startedAt, ') + ..write('completedAt: $completedAt, ') + ..write('rowid: $rowid') + ..write(')')) + .toString(); + } +} + +class $WorkoutTemplateProgramsTable extends WorkoutTemplatePrograms + with TableInfo<$WorkoutTemplateProgramsTable, WorkoutTemplateProgram> { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + $WorkoutTemplateProgramsTable(this.attachedDatabase, [this._alias]); + static const VerificationMeta _idMeta = const VerificationMeta('id'); + @override + late final GeneratedColumn id = GeneratedColumn( + '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: true, + ); + static const VerificationMeta _updatedAtMeta = const VerificationMeta( + 'updatedAt', + ); + @override + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _deletedAtMeta = const VerificationMeta( + 'deletedAt', + ); + @override + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _schemaVersionMeta = const VerificationMeta( + 'schemaVersion', + ); + @override + late final GeneratedColumn schemaVersion = GeneratedColumn( + 'schema_version', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const Constant(1), + ); + static const VerificationMeta _syncStateMeta = const VerificationMeta( + 'syncState', + ); + @override + late final GeneratedColumn syncState = GeneratedColumn( + 'sync_state', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + $customConstraints: + 'NOT NULL CHECK (sync_state IN (\'localOnly\', \'dirty\', \'synced\', \'deleted\'))', + ); + static const VerificationMeta _localRevisionMeta = const VerificationMeta( + 'localRevision', + ); + @override + late final GeneratedColumn localRevision = GeneratedColumn( + 'local_revision', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + $customConstraints: 'NOT NULL CHECK (local_revision >= 0)', + ); + static const VerificationMeta _originDeviceIdMeta = const VerificationMeta( + 'originDeviceId', + ); + @override + late final GeneratedColumn originDeviceId = GeneratedColumn( + 'origin_device_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _futureOwnerProfileIdMeta = + const VerificationMeta('futureOwnerProfileId'); + @override + late final GeneratedColumn futureOwnerProfileId = + GeneratedColumn( + 'future_owner_profile_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _lastSyncedAtMeta = const VerificationMeta( + 'lastSyncedAt', + ); + @override + late final GeneratedColumn lastSyncedAt = GeneratedColumn( + 'last_synced_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _remoteRevisionMeta = const VerificationMeta( + 'remoteRevision', + ); + @override + late final GeneratedColumn remoteRevision = GeneratedColumn( + 'remote_revision', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _workoutTemplateIdMeta = const VerificationMeta( + 'workoutTemplateId', + ); + @override + late final GeneratedColumn workoutTemplateId = + GeneratedColumn( + 'workout_template_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES workout_templates (id)', + ), + ); + static const VerificationMeta _sourceProgramIdMeta = const VerificationMeta( + 'sourceProgramId', + ); + @override + late final GeneratedColumn sourceProgramId = GeneratedColumn( + 'source_program_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES programs (id)', + ), + ); + static const VerificationMeta _positionMeta = const VerificationMeta( + 'position', + ); + @override + late final GeneratedColumn position = GeneratedColumn( + 'position', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _programNameSnapshotMeta = + const VerificationMeta('programNameSnapshot'); + @override + late final GeneratedColumn programNameSnapshot = + GeneratedColumn( + 'program_name_snapshot', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _defaultRestSecondsSnapshotMeta = + const VerificationMeta('defaultRestSecondsSnapshot'); + @override + late final GeneratedColumn defaultRestSecondsSnapshot = + GeneratedColumn( + 'default_rest_seconds_snapshot', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + ); + static const VerificationMeta _programSnapshotJsonMeta = + const VerificationMeta('programSnapshotJson'); + @override + late final GeneratedColumn programSnapshotJson = + GeneratedColumn( + 'program_snapshot_json', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + workoutTemplateId, + sourceProgramId, + position, + programNameSnapshot, + defaultRestSecondsSnapshot, + programSnapshotJson, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'workout_template_programs'; + @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)); + } else if (isInserting) { + context.missing(_idMeta); + } + if (data.containsKey('created_at')) { + context.handle( + _createdAtMeta, + createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), + ); + } else if (isInserting) { + context.missing(_createdAtMeta); + } + if (data.containsKey('updated_at')) { + context.handle( + _updatedAtMeta, + updatedAt.isAcceptableOrUnknown(data['updated_at']!, _updatedAtMeta), + ); + } else if (isInserting) { + context.missing(_updatedAtMeta); + } + if (data.containsKey('deleted_at')) { + context.handle( + _deletedAtMeta, + deletedAt.isAcceptableOrUnknown(data['deleted_at']!, _deletedAtMeta), + ); + } + if (data.containsKey('schema_version')) { + context.handle( + _schemaVersionMeta, + schemaVersion.isAcceptableOrUnknown( + data['schema_version']!, + _schemaVersionMeta, + ), + ); + } + if (data.containsKey('sync_state')) { + context.handle( + _syncStateMeta, + syncState.isAcceptableOrUnknown(data['sync_state']!, _syncStateMeta), + ); + } else if (isInserting) { + context.missing(_syncStateMeta); + } + if (data.containsKey('local_revision')) { + context.handle( + _localRevisionMeta, + localRevision.isAcceptableOrUnknown( + data['local_revision']!, + _localRevisionMeta, + ), + ); + } else if (isInserting) { + context.missing(_localRevisionMeta); + } + if (data.containsKey('origin_device_id')) { + context.handle( + _originDeviceIdMeta, + originDeviceId.isAcceptableOrUnknown( + data['origin_device_id']!, + _originDeviceIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_originDeviceIdMeta); + } + if (data.containsKey('future_owner_profile_id')) { + context.handle( + _futureOwnerProfileIdMeta, + futureOwnerProfileId.isAcceptableOrUnknown( + data['future_owner_profile_id']!, + _futureOwnerProfileIdMeta, + ), + ); + } + if (data.containsKey('last_synced_at')) { + context.handle( + _lastSyncedAtMeta, + lastSyncedAt.isAcceptableOrUnknown( + data['last_synced_at']!, + _lastSyncedAtMeta, + ), + ); + } + if (data.containsKey('remote_revision')) { + context.handle( + _remoteRevisionMeta, + remoteRevision.isAcceptableOrUnknown( + data['remote_revision']!, + _remoteRevisionMeta, + ), + ); + } + if (data.containsKey('workout_template_id')) { + context.handle( + _workoutTemplateIdMeta, + workoutTemplateId.isAcceptableOrUnknown( + data['workout_template_id']!, + _workoutTemplateIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_workoutTemplateIdMeta); + } + if (data.containsKey('source_program_id')) { + context.handle( + _sourceProgramIdMeta, + sourceProgramId.isAcceptableOrUnknown( + data['source_program_id']!, + _sourceProgramIdMeta, + ), + ); + } + if (data.containsKey('position')) { + context.handle( + _positionMeta, + position.isAcceptableOrUnknown(data['position']!, _positionMeta), + ); + } else if (isInserting) { + context.missing(_positionMeta); + } + if (data.containsKey('program_name_snapshot')) { + context.handle( + _programNameSnapshotMeta, + programNameSnapshot.isAcceptableOrUnknown( + data['program_name_snapshot']!, + _programNameSnapshotMeta, + ), + ); + } else if (isInserting) { + context.missing(_programNameSnapshotMeta); + } + if (data.containsKey('default_rest_seconds_snapshot')) { + context.handle( + _defaultRestSecondsSnapshotMeta, + defaultRestSecondsSnapshot.isAcceptableOrUnknown( + data['default_rest_seconds_snapshot']!, + _defaultRestSecondsSnapshotMeta, + ), + ); + } else if (isInserting) { + context.missing(_defaultRestSecondsSnapshotMeta); + } + if (data.containsKey('program_snapshot_json')) { + context.handle( + _programSnapshotJsonMeta, + programSnapshotJson.isAcceptableOrUnknown( + data['program_snapshot_json']!, + _programSnapshotJsonMeta, + ), + ); + } else if (isInserting) { + context.missing(_programSnapshotJsonMeta); + } + return context; + } + + @override + Set get $primaryKey => {id}; + @override + WorkoutTemplateProgram map(Map data, {String? tablePrefix}) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return WorkoutTemplateProgram( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + schemaVersion: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}schema_version'], + )!, + syncState: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}sync_state'], + )!, + localRevision: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}local_revision'], + )!, + originDeviceId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}origin_device_id'], + )!, + futureOwnerProfileId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}future_owner_profile_id'], + ), + lastSyncedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_synced_at'], + ), + remoteRevision: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}remote_revision'], + ), + workoutTemplateId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}workout_template_id'], + )!, + sourceProgramId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}source_program_id'], + ), + position: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}position'], + )!, + programNameSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}program_name_snapshot'], + )!, + defaultRestSecondsSnapshot: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}default_rest_seconds_snapshot'], + )!, + programSnapshotJson: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}program_snapshot_json'], + )!, + ); + } + + @override + $WorkoutTemplateProgramsTable createAlias(String alias) { + return $WorkoutTemplateProgramsTable(attachedDatabase, alias); + } +} + +class WorkoutTemplateProgram extends DataClass + implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final DateTime? deletedAt; + final int schemaVersion; + final String syncState; + final int localRevision; + final String originDeviceId; + final String? futureOwnerProfileId; + final DateTime? lastSyncedAt; + final String? remoteRevision; + final String workoutTemplateId; + final String? sourceProgramId; + final int position; + final String programNameSnapshot; + final int defaultRestSecondsSnapshot; + final String programSnapshotJson; + const WorkoutTemplateProgram({ + required this.id, + required this.createdAt, + required this.updatedAt, + this.deletedAt, + required this.schemaVersion, + required this.syncState, + required this.localRevision, + required this.originDeviceId, + this.futureOwnerProfileId, + this.lastSyncedAt, + this.remoteRevision, + required this.workoutTemplateId, + this.sourceProgramId, + required this.position, + required this.programNameSnapshot, + required this.defaultRestSecondsSnapshot, + required this.programSnapshotJson, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + map['schema_version'] = Variable(schemaVersion); + map['sync_state'] = Variable(syncState); + map['local_revision'] = Variable(localRevision); + map['origin_device_id'] = Variable(originDeviceId); + if (!nullToAbsent || futureOwnerProfileId != null) { + map['future_owner_profile_id'] = Variable(futureOwnerProfileId); + } + if (!nullToAbsent || lastSyncedAt != null) { + map['last_synced_at'] = Variable(lastSyncedAt); + } + if (!nullToAbsent || remoteRevision != null) { + map['remote_revision'] = Variable(remoteRevision); + } + map['workout_template_id'] = Variable(workoutTemplateId); + if (!nullToAbsent || sourceProgramId != null) { + map['source_program_id'] = Variable(sourceProgramId); + } + map['position'] = Variable(position); + map['program_name_snapshot'] = Variable(programNameSnapshot); + map['default_rest_seconds_snapshot'] = Variable( + defaultRestSecondsSnapshot, + ); + map['program_snapshot_json'] = Variable(programSnapshotJson); + return map; + } + + WorkoutTemplateProgramsCompanion toCompanion(bool nullToAbsent) { + return WorkoutTemplateProgramsCompanion( + id: Value(id), + createdAt: Value(createdAt), + updatedAt: Value(updatedAt), + deletedAt: deletedAt == null && nullToAbsent + ? const Value.absent() + : Value(deletedAt), + schemaVersion: Value(schemaVersion), + syncState: Value(syncState), + localRevision: Value(localRevision), + originDeviceId: Value(originDeviceId), + futureOwnerProfileId: futureOwnerProfileId == null && nullToAbsent + ? const Value.absent() + : Value(futureOwnerProfileId), + lastSyncedAt: lastSyncedAt == null && nullToAbsent + ? const Value.absent() + : Value(lastSyncedAt), + remoteRevision: remoteRevision == null && nullToAbsent + ? const Value.absent() + : Value(remoteRevision), + workoutTemplateId: Value(workoutTemplateId), + sourceProgramId: sourceProgramId == null && nullToAbsent + ? const Value.absent() + : Value(sourceProgramId), + position: Value(position), + programNameSnapshot: Value(programNameSnapshot), + defaultRestSecondsSnapshot: Value(defaultRestSecondsSnapshot), + programSnapshotJson: Value(programSnapshotJson), + ); + } + + factory WorkoutTemplateProgram.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return WorkoutTemplateProgram( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + deletedAt: serializer.fromJson(json['deletedAt']), + schemaVersion: serializer.fromJson(json['schemaVersion']), + syncState: serializer.fromJson(json['syncState']), + localRevision: serializer.fromJson(json['localRevision']), + originDeviceId: serializer.fromJson(json['originDeviceId']), + futureOwnerProfileId: serializer.fromJson( + json['futureOwnerProfileId'], + ), + lastSyncedAt: serializer.fromJson(json['lastSyncedAt']), + remoteRevision: serializer.fromJson(json['remoteRevision']), + workoutTemplateId: serializer.fromJson(json['workoutTemplateId']), + sourceProgramId: serializer.fromJson(json['sourceProgramId']), + position: serializer.fromJson(json['position']), + programNameSnapshot: serializer.fromJson( + json['programNameSnapshot'], + ), + defaultRestSecondsSnapshot: serializer.fromJson( + json['defaultRestSecondsSnapshot'], + ), + programSnapshotJson: serializer.fromJson( + json['programSnapshotJson'], + ), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'deletedAt': serializer.toJson(deletedAt), + 'schemaVersion': serializer.toJson(schemaVersion), + 'syncState': serializer.toJson(syncState), + 'localRevision': serializer.toJson(localRevision), + 'originDeviceId': serializer.toJson(originDeviceId), + 'futureOwnerProfileId': serializer.toJson(futureOwnerProfileId), + 'lastSyncedAt': serializer.toJson(lastSyncedAt), + 'remoteRevision': serializer.toJson(remoteRevision), + 'workoutTemplateId': serializer.toJson(workoutTemplateId), + 'sourceProgramId': serializer.toJson(sourceProgramId), + 'position': serializer.toJson(position), + 'programNameSnapshot': serializer.toJson(programNameSnapshot), + 'defaultRestSecondsSnapshot': serializer.toJson( + defaultRestSecondsSnapshot, + ), + 'programSnapshotJson': serializer.toJson(programSnapshotJson), + }; + } + + WorkoutTemplateProgram copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + Value deletedAt = const Value.absent(), + int? schemaVersion, + String? syncState, + int? localRevision, + String? originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + String? workoutTemplateId, + Value sourceProgramId = const Value.absent(), + int? position, + String? programNameSnapshot, + int? defaultRestSecondsSnapshot, + String? programSnapshotJson, + }) => WorkoutTemplateProgram( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId.present + ? futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt.present ? lastSyncedAt.value : this.lastSyncedAt, + remoteRevision: remoteRevision.present + ? remoteRevision.value + : this.remoteRevision, + workoutTemplateId: workoutTemplateId ?? this.workoutTemplateId, + sourceProgramId: sourceProgramId.present + ? sourceProgramId.value + : this.sourceProgramId, + position: position ?? this.position, + programNameSnapshot: programNameSnapshot ?? this.programNameSnapshot, + defaultRestSecondsSnapshot: + defaultRestSecondsSnapshot ?? this.defaultRestSecondsSnapshot, + programSnapshotJson: programSnapshotJson ?? this.programSnapshotJson, + ); + WorkoutTemplateProgram copyWithCompanion( + WorkoutTemplateProgramsCompanion data, + ) { + return WorkoutTemplateProgram( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + schemaVersion: data.schemaVersion.present + ? data.schemaVersion.value + : this.schemaVersion, + syncState: data.syncState.present ? data.syncState.value : this.syncState, + localRevision: data.localRevision.present + ? data.localRevision.value + : this.localRevision, + originDeviceId: data.originDeviceId.present + ? data.originDeviceId.value + : this.originDeviceId, + futureOwnerProfileId: data.futureOwnerProfileId.present + ? data.futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: data.lastSyncedAt.present + ? data.lastSyncedAt.value + : this.lastSyncedAt, + remoteRevision: data.remoteRevision.present + ? data.remoteRevision.value + : this.remoteRevision, + workoutTemplateId: data.workoutTemplateId.present + ? data.workoutTemplateId.value + : this.workoutTemplateId, + sourceProgramId: data.sourceProgramId.present + ? data.sourceProgramId.value + : this.sourceProgramId, + position: data.position.present ? data.position.value : this.position, + programNameSnapshot: data.programNameSnapshot.present + ? data.programNameSnapshot.value + : this.programNameSnapshot, + defaultRestSecondsSnapshot: data.defaultRestSecondsSnapshot.present + ? data.defaultRestSecondsSnapshot.value + : this.defaultRestSecondsSnapshot, + programSnapshotJson: data.programSnapshotJson.present + ? data.programSnapshotJson.value + : this.programSnapshotJson, + ); + } + + @override + String toString() { + return (StringBuffer('WorkoutTemplateProgram(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('workoutTemplateId: $workoutTemplateId, ') + ..write('sourceProgramId: $sourceProgramId, ') + ..write('position: $position, ') + ..write('programNameSnapshot: $programNameSnapshot, ') + ..write('defaultRestSecondsSnapshot: $defaultRestSecondsSnapshot, ') + ..write('programSnapshotJson: $programSnapshotJson') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + workoutTemplateId, + sourceProgramId, + position, + programNameSnapshot, + defaultRestSecondsSnapshot, + programSnapshotJson, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is WorkoutTemplateProgram && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.deletedAt == this.deletedAt && + other.schemaVersion == this.schemaVersion && + other.syncState == this.syncState && + other.localRevision == this.localRevision && + other.originDeviceId == this.originDeviceId && + other.futureOwnerProfileId == this.futureOwnerProfileId && + other.lastSyncedAt == this.lastSyncedAt && + other.remoteRevision == this.remoteRevision && + other.workoutTemplateId == this.workoutTemplateId && + other.sourceProgramId == this.sourceProgramId && + other.position == this.position && + other.programNameSnapshot == this.programNameSnapshot && + other.defaultRestSecondsSnapshot == this.defaultRestSecondsSnapshot && + other.programSnapshotJson == this.programSnapshotJson); +} + +class WorkoutTemplateProgramsCompanion + extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value deletedAt; + final Value schemaVersion; + final Value syncState; + final Value localRevision; + final Value originDeviceId; + final Value futureOwnerProfileId; + final Value lastSyncedAt; + final Value remoteRevision; + final Value workoutTemplateId; + final Value sourceProgramId; + final Value position; + final Value programNameSnapshot; + final Value defaultRestSecondsSnapshot; + final Value programSnapshotJson; + final Value rowid; + const WorkoutTemplateProgramsCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + this.syncState = const Value.absent(), + this.localRevision = const Value.absent(), + this.originDeviceId = const Value.absent(), + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.workoutTemplateId = const Value.absent(), + this.sourceProgramId = const Value.absent(), + this.position = const Value.absent(), + this.programNameSnapshot = const Value.absent(), + this.defaultRestSecondsSnapshot = const Value.absent(), + this.programSnapshotJson = const Value.absent(), + this.rowid = const Value.absent(), + }); + WorkoutTemplateProgramsCompanion.insert({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + required String workoutTemplateId, + this.sourceProgramId = const Value.absent(), + required int position, + required String programNameSnapshot, + required int defaultRestSecondsSnapshot, + required String programSnapshotJson, + this.rowid = const Value.absent(), + }) : id = Value(id), + createdAt = Value(createdAt), + updatedAt = Value(updatedAt), + syncState = Value(syncState), + localRevision = Value(localRevision), + originDeviceId = Value(originDeviceId), + workoutTemplateId = Value(workoutTemplateId), + position = Value(position), + programNameSnapshot = Value(programNameSnapshot), + defaultRestSecondsSnapshot = Value(defaultRestSecondsSnapshot), + programSnapshotJson = Value(programSnapshotJson); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? deletedAt, + Expression? schemaVersion, + Expression? syncState, + Expression? localRevision, + Expression? originDeviceId, + Expression? futureOwnerProfileId, + Expression? lastSyncedAt, + Expression? remoteRevision, + Expression? workoutTemplateId, + Expression? sourceProgramId, + Expression? position, + Expression? programNameSnapshot, + Expression? defaultRestSecondsSnapshot, + Expression? programSnapshotJson, + Expression? rowid, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (deletedAt != null) 'deleted_at': deletedAt, + if (schemaVersion != null) 'schema_version': schemaVersion, + if (syncState != null) 'sync_state': syncState, + if (localRevision != null) 'local_revision': localRevision, + if (originDeviceId != null) 'origin_device_id': originDeviceId, + if (futureOwnerProfileId != null) + 'future_owner_profile_id': futureOwnerProfileId, + if (lastSyncedAt != null) 'last_synced_at': lastSyncedAt, + if (remoteRevision != null) 'remote_revision': remoteRevision, + if (workoutTemplateId != null) 'workout_template_id': workoutTemplateId, + if (sourceProgramId != null) 'source_program_id': sourceProgramId, + if (position != null) 'position': position, + if (programNameSnapshot != null) + 'program_name_snapshot': programNameSnapshot, + if (defaultRestSecondsSnapshot != null) + 'default_rest_seconds_snapshot': defaultRestSecondsSnapshot, + if (programSnapshotJson != null) + 'program_snapshot_json': programSnapshotJson, + if (rowid != null) 'rowid': rowid, + }); + } + + WorkoutTemplateProgramsCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? deletedAt, + Value? schemaVersion, + Value? syncState, + Value? localRevision, + Value? originDeviceId, + Value? futureOwnerProfileId, + Value? lastSyncedAt, + Value? remoteRevision, + Value? workoutTemplateId, + Value? sourceProgramId, + Value? position, + Value? programNameSnapshot, + Value? defaultRestSecondsSnapshot, + Value? programSnapshotJson, + Value? rowid, + }) { + return WorkoutTemplateProgramsCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt ?? this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId ?? this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt ?? this.lastSyncedAt, + remoteRevision: remoteRevision ?? this.remoteRevision, + workoutTemplateId: workoutTemplateId ?? this.workoutTemplateId, + sourceProgramId: sourceProgramId ?? this.sourceProgramId, + position: position ?? this.position, + programNameSnapshot: programNameSnapshot ?? this.programNameSnapshot, + defaultRestSecondsSnapshot: + defaultRestSecondsSnapshot ?? this.defaultRestSecondsSnapshot, + programSnapshotJson: programSnapshotJson ?? this.programSnapshotJson, + rowid: rowid ?? this.rowid, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (schemaVersion.present) { + map['schema_version'] = Variable(schemaVersion.value); + } + if (syncState.present) { + map['sync_state'] = Variable(syncState.value); + } + if (localRevision.present) { + map['local_revision'] = Variable(localRevision.value); + } + if (originDeviceId.present) { + map['origin_device_id'] = Variable(originDeviceId.value); + } + if (futureOwnerProfileId.present) { + map['future_owner_profile_id'] = Variable( + futureOwnerProfileId.value, + ); + } + if (lastSyncedAt.present) { + map['last_synced_at'] = Variable(lastSyncedAt.value); + } + if (remoteRevision.present) { + map['remote_revision'] = Variable(remoteRevision.value); + } + if (workoutTemplateId.present) { + map['workout_template_id'] = Variable(workoutTemplateId.value); + } + if (sourceProgramId.present) { + map['source_program_id'] = Variable(sourceProgramId.value); + } + if (position.present) { + map['position'] = Variable(position.value); + } + if (programNameSnapshot.present) { + map['program_name_snapshot'] = Variable( + programNameSnapshot.value, + ); + } + if (defaultRestSecondsSnapshot.present) { + map['default_rest_seconds_snapshot'] = Variable( + defaultRestSecondsSnapshot.value, + ); + } + if (programSnapshotJson.present) { + map['program_snapshot_json'] = Variable( + programSnapshotJson.value, + ); + } + if (rowid.present) { + map['rowid'] = Variable(rowid.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('WorkoutTemplateProgramsCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('workoutTemplateId: $workoutTemplateId, ') + ..write('sourceProgramId: $sourceProgramId, ') + ..write('position: $position, ') + ..write('programNameSnapshot: $programNameSnapshot, ') + ..write('defaultRestSecondsSnapshot: $defaultRestSecondsSnapshot, ') + ..write('programSnapshotJson: $programSnapshotJson, ') + ..write('rowid: $rowid') + ..write(')')) + .toString(); + } +} + +class $WorkoutTemplateExerciseOverridesTable + extends WorkoutTemplateExerciseOverrides + with + TableInfo< + $WorkoutTemplateExerciseOverridesTable, + WorkoutTemplateExerciseOverride + > { + @override + final GeneratedDatabase attachedDatabase; + final String? _alias; + $WorkoutTemplateExerciseOverridesTable(this.attachedDatabase, [this._alias]); + static const VerificationMeta _idMeta = const VerificationMeta('id'); + @override + late final GeneratedColumn id = GeneratedColumn( + '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: true, + ); + static const VerificationMeta _updatedAtMeta = const VerificationMeta( + 'updatedAt', + ); + @override + late final GeneratedColumn updatedAt = GeneratedColumn( + 'updated_at', + aliasedName, + false, + type: DriftSqlType.dateTime, + requiredDuringInsert: true, + ); + static const VerificationMeta _deletedAtMeta = const VerificationMeta( + 'deletedAt', + ); + @override + late final GeneratedColumn deletedAt = GeneratedColumn( + 'deleted_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _schemaVersionMeta = const VerificationMeta( + 'schemaVersion', + ); + @override + late final GeneratedColumn schemaVersion = GeneratedColumn( + 'schema_version', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: false, + defaultValue: const Constant(1), + ); + static const VerificationMeta _syncStateMeta = const VerificationMeta( + 'syncState', + ); + @override + late final GeneratedColumn syncState = GeneratedColumn( + 'sync_state', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + $customConstraints: + 'NOT NULL CHECK (sync_state IN (\'localOnly\', \'dirty\', \'synced\', \'deleted\'))', + ); + static const VerificationMeta _localRevisionMeta = const VerificationMeta( + 'localRevision', + ); + @override + late final GeneratedColumn localRevision = GeneratedColumn( + 'local_revision', + aliasedName, + false, + type: DriftSqlType.int, + requiredDuringInsert: true, + $customConstraints: 'NOT NULL CHECK (local_revision >= 0)', + ); + static const VerificationMeta _originDeviceIdMeta = const VerificationMeta( + 'originDeviceId', + ); + @override + late final GeneratedColumn originDeviceId = GeneratedColumn( + 'origin_device_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _futureOwnerProfileIdMeta = + const VerificationMeta('futureOwnerProfileId'); + @override + late final GeneratedColumn futureOwnerProfileId = + GeneratedColumn( + 'future_owner_profile_id', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _lastSyncedAtMeta = const VerificationMeta( + 'lastSyncedAt', + ); + @override + late final GeneratedColumn lastSyncedAt = GeneratedColumn( + 'last_synced_at', + aliasedName, + true, + type: DriftSqlType.dateTime, + requiredDuringInsert: false, + ); + static const VerificationMeta _remoteRevisionMeta = const VerificationMeta( + 'remoteRevision', + ); + @override + late final GeneratedColumn remoteRevision = GeneratedColumn( + 'remote_revision', + aliasedName, + true, + type: DriftSqlType.string, + requiredDuringInsert: false, + ); + static const VerificationMeta _workoutTemplateProgramIdMeta = + const VerificationMeta('workoutTemplateProgramId'); + @override + late final GeneratedColumn workoutTemplateProgramId = + GeneratedColumn( + 'workout_template_program_id', + aliasedName, + false, + type: DriftSqlType.string, + requiredDuringInsert: true, + defaultConstraints: GeneratedColumn.constraintIsAlways( + 'REFERENCES workout_template_programs (id)', + ), + ); + static const VerificationMeta _snapshotProgramExerciseIdMeta = + const VerificationMeta('snapshotProgramExerciseId'); + @override + late final GeneratedColumn snapshotProgramExerciseId = + GeneratedColumn( + 'snapshot_program_exercise_id', + aliasedName, + false, + additionalChecks: GeneratedColumn.checkTextLength(minTextLength: 1), + type: DriftSqlType.string, + requiredDuringInsert: true, + ); + static const VerificationMeta _setsCountOverrideMeta = const VerificationMeta( + 'setsCountOverride', + ); + @override + late final GeneratedColumn setsCountOverride = GeneratedColumn( + 'sets_count_override', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _targetTimeSecondsOverrideMeta = + const VerificationMeta('targetTimeSecondsOverride'); + @override + late final GeneratedColumn targetTimeSecondsOverride = + GeneratedColumn( + 'target_time_seconds_override', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _targetRepsOverrideMeta = + const VerificationMeta('targetRepsOverride'); + @override + late final GeneratedColumn targetRepsOverride = GeneratedColumn( + 'target_reps_override', + aliasedName, + true, + type: DriftSqlType.int, + requiredDuringInsert: false, + ); + static const VerificationMeta _targetScoreOverrideMeta = + const VerificationMeta('targetScoreOverride'); + @override + late final GeneratedColumn targetScoreOverride = + GeneratedColumn( + 'target_score_override', + aliasedName, + true, + type: DriftSqlType.double, + requiredDuringInsert: false, + ); + @override + List get $columns => [ + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + workoutTemplateProgramId, + snapshotProgramExerciseId, + setsCountOverride, + targetTimeSecondsOverride, + targetRepsOverride, + targetScoreOverride, + ]; + @override + String get aliasedName => _alias ?? actualTableName; + @override + String get actualTableName => $name; + static const String $name = 'workout_template_exercise_overrides'; + @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)); + } else if (isInserting) { + context.missing(_idMeta); + } + if (data.containsKey('created_at')) { + context.handle( + _createdAtMeta, + createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta), + ); + } else if (isInserting) { + context.missing(_createdAtMeta); + } + if (data.containsKey('updated_at')) { + context.handle( + _updatedAtMeta, + updatedAt.isAcceptableOrUnknown(data['updated_at']!, _updatedAtMeta), + ); + } else if (isInserting) { + context.missing(_updatedAtMeta); + } + if (data.containsKey('deleted_at')) { + context.handle( + _deletedAtMeta, + deletedAt.isAcceptableOrUnknown(data['deleted_at']!, _deletedAtMeta), + ); + } + if (data.containsKey('schema_version')) { + context.handle( + _schemaVersionMeta, + schemaVersion.isAcceptableOrUnknown( + data['schema_version']!, + _schemaVersionMeta, + ), + ); + } + if (data.containsKey('sync_state')) { + context.handle( + _syncStateMeta, + syncState.isAcceptableOrUnknown(data['sync_state']!, _syncStateMeta), + ); + } else if (isInserting) { + context.missing(_syncStateMeta); + } + if (data.containsKey('local_revision')) { + context.handle( + _localRevisionMeta, + localRevision.isAcceptableOrUnknown( + data['local_revision']!, + _localRevisionMeta, + ), + ); + } else if (isInserting) { + context.missing(_localRevisionMeta); + } + if (data.containsKey('origin_device_id')) { + context.handle( + _originDeviceIdMeta, + originDeviceId.isAcceptableOrUnknown( + data['origin_device_id']!, + _originDeviceIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_originDeviceIdMeta); + } + if (data.containsKey('future_owner_profile_id')) { + context.handle( + _futureOwnerProfileIdMeta, + futureOwnerProfileId.isAcceptableOrUnknown( + data['future_owner_profile_id']!, + _futureOwnerProfileIdMeta, + ), + ); + } + if (data.containsKey('last_synced_at')) { + context.handle( + _lastSyncedAtMeta, + lastSyncedAt.isAcceptableOrUnknown( + data['last_synced_at']!, + _lastSyncedAtMeta, + ), + ); + } + if (data.containsKey('remote_revision')) { + context.handle( + _remoteRevisionMeta, + remoteRevision.isAcceptableOrUnknown( + data['remote_revision']!, + _remoteRevisionMeta, + ), + ); + } + if (data.containsKey('workout_template_program_id')) { + context.handle( + _workoutTemplateProgramIdMeta, + workoutTemplateProgramId.isAcceptableOrUnknown( + data['workout_template_program_id']!, + _workoutTemplateProgramIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_workoutTemplateProgramIdMeta); + } + if (data.containsKey('snapshot_program_exercise_id')) { + context.handle( + _snapshotProgramExerciseIdMeta, + snapshotProgramExerciseId.isAcceptableOrUnknown( + data['snapshot_program_exercise_id']!, + _snapshotProgramExerciseIdMeta, + ), + ); + } else if (isInserting) { + context.missing(_snapshotProgramExerciseIdMeta); + } + if (data.containsKey('sets_count_override')) { + context.handle( + _setsCountOverrideMeta, + setsCountOverride.isAcceptableOrUnknown( + data['sets_count_override']!, + _setsCountOverrideMeta, + ), + ); + } + if (data.containsKey('target_time_seconds_override')) { + context.handle( + _targetTimeSecondsOverrideMeta, + targetTimeSecondsOverride.isAcceptableOrUnknown( + data['target_time_seconds_override']!, + _targetTimeSecondsOverrideMeta, + ), + ); + } + if (data.containsKey('target_reps_override')) { + context.handle( + _targetRepsOverrideMeta, + targetRepsOverride.isAcceptableOrUnknown( + data['target_reps_override']!, + _targetRepsOverrideMeta, + ), + ); + } + if (data.containsKey('target_score_override')) { + context.handle( + _targetScoreOverrideMeta, + targetScoreOverride.isAcceptableOrUnknown( + data['target_score_override']!, + _targetScoreOverrideMeta, + ), + ); + } + return context; + } + + @override + Set get $primaryKey => {id}; + @override + WorkoutTemplateExerciseOverride map( + Map data, { + String? tablePrefix, + }) { + final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; + return WorkoutTemplateExerciseOverride( + id: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}id'], + )!, + createdAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}created_at'], + )!, + updatedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}updated_at'], + )!, + deletedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}deleted_at'], + ), + schemaVersion: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}schema_version'], + )!, + syncState: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}sync_state'], + )!, + localRevision: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}local_revision'], + )!, + originDeviceId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}origin_device_id'], + )!, + futureOwnerProfileId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}future_owner_profile_id'], + ), + lastSyncedAt: attachedDatabase.typeMapping.read( + DriftSqlType.dateTime, + data['${effectivePrefix}last_synced_at'], + ), + remoteRevision: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}remote_revision'], + ), + workoutTemplateProgramId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}workout_template_program_id'], + )!, + snapshotProgramExerciseId: attachedDatabase.typeMapping.read( + DriftSqlType.string, + data['${effectivePrefix}snapshot_program_exercise_id'], + )!, + setsCountOverride: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}sets_count_override'], + ), + targetTimeSecondsOverride: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}target_time_seconds_override'], + ), + targetRepsOverride: attachedDatabase.typeMapping.read( + DriftSqlType.int, + data['${effectivePrefix}target_reps_override'], + ), + targetScoreOverride: attachedDatabase.typeMapping.read( + DriftSqlType.double, + data['${effectivePrefix}target_score_override'], + ), + ); + } + + @override + $WorkoutTemplateExerciseOverridesTable createAlias(String alias) { + return $WorkoutTemplateExerciseOverridesTable(attachedDatabase, alias); + } +} + +class WorkoutTemplateExerciseOverride extends DataClass + implements Insertable { + final String id; + final DateTime createdAt; + final DateTime updatedAt; + final DateTime? deletedAt; + final int schemaVersion; + final String syncState; + final int localRevision; + final String originDeviceId; + final String? futureOwnerProfileId; + final DateTime? lastSyncedAt; + final String? remoteRevision; + final String workoutTemplateProgramId; + final String snapshotProgramExerciseId; + final int? setsCountOverride; + final int? targetTimeSecondsOverride; + final int? targetRepsOverride; + final double? targetScoreOverride; + const WorkoutTemplateExerciseOverride({ + required this.id, + required this.createdAt, + required this.updatedAt, + this.deletedAt, + required this.schemaVersion, + required this.syncState, + required this.localRevision, + required this.originDeviceId, + this.futureOwnerProfileId, + this.lastSyncedAt, + this.remoteRevision, + required this.workoutTemplateProgramId, + required this.snapshotProgramExerciseId, + this.setsCountOverride, + this.targetTimeSecondsOverride, + this.targetRepsOverride, + this.targetScoreOverride, + }); + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + map['id'] = Variable(id); + map['created_at'] = Variable(createdAt); + map['updated_at'] = Variable(updatedAt); + if (!nullToAbsent || deletedAt != null) { + map['deleted_at'] = Variable(deletedAt); + } + map['schema_version'] = Variable(schemaVersion); + map['sync_state'] = Variable(syncState); + map['local_revision'] = Variable(localRevision); + map['origin_device_id'] = Variable(originDeviceId); + if (!nullToAbsent || futureOwnerProfileId != null) { + map['future_owner_profile_id'] = Variable(futureOwnerProfileId); + } + if (!nullToAbsent || lastSyncedAt != null) { + map['last_synced_at'] = Variable(lastSyncedAt); + } + if (!nullToAbsent || remoteRevision != null) { + map['remote_revision'] = Variable(remoteRevision); + } + map['workout_template_program_id'] = Variable( + workoutTemplateProgramId, + ); + map['snapshot_program_exercise_id'] = Variable( + snapshotProgramExerciseId, + ); + if (!nullToAbsent || setsCountOverride != null) { + map['sets_count_override'] = Variable(setsCountOverride); + } + if (!nullToAbsent || targetTimeSecondsOverride != null) { + map['target_time_seconds_override'] = Variable( + targetTimeSecondsOverride, + ); + } + if (!nullToAbsent || targetRepsOverride != null) { + map['target_reps_override'] = Variable(targetRepsOverride); + } + if (!nullToAbsent || targetScoreOverride != null) { + map['target_score_override'] = Variable(targetScoreOverride); + } + return map; + } + + WorkoutTemplateExerciseOverridesCompanion toCompanion(bool nullToAbsent) { + return WorkoutTemplateExerciseOverridesCompanion( + id: Value(id), + createdAt: Value(createdAt), + updatedAt: Value(updatedAt), + deletedAt: deletedAt == null && nullToAbsent + ? const Value.absent() + : Value(deletedAt), + schemaVersion: Value(schemaVersion), + syncState: Value(syncState), + localRevision: Value(localRevision), + originDeviceId: Value(originDeviceId), + futureOwnerProfileId: futureOwnerProfileId == null && nullToAbsent + ? const Value.absent() + : Value(futureOwnerProfileId), + lastSyncedAt: lastSyncedAt == null && nullToAbsent + ? const Value.absent() + : Value(lastSyncedAt), + remoteRevision: remoteRevision == null && nullToAbsent + ? const Value.absent() + : Value(remoteRevision), + workoutTemplateProgramId: Value(workoutTemplateProgramId), + snapshotProgramExerciseId: Value(snapshotProgramExerciseId), + setsCountOverride: setsCountOverride == null && nullToAbsent + ? const Value.absent() + : Value(setsCountOverride), + targetTimeSecondsOverride: + targetTimeSecondsOverride == null && nullToAbsent + ? const Value.absent() + : Value(targetTimeSecondsOverride), + targetRepsOverride: targetRepsOverride == null && nullToAbsent + ? const Value.absent() + : Value(targetRepsOverride), + targetScoreOverride: targetScoreOverride == null && nullToAbsent + ? const Value.absent() + : Value(targetScoreOverride), + ); + } + + factory WorkoutTemplateExerciseOverride.fromJson( + Map json, { + ValueSerializer? serializer, + }) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return WorkoutTemplateExerciseOverride( + id: serializer.fromJson(json['id']), + createdAt: serializer.fromJson(json['createdAt']), + updatedAt: serializer.fromJson(json['updatedAt']), + deletedAt: serializer.fromJson(json['deletedAt']), + schemaVersion: serializer.fromJson(json['schemaVersion']), + syncState: serializer.fromJson(json['syncState']), + localRevision: serializer.fromJson(json['localRevision']), + originDeviceId: serializer.fromJson(json['originDeviceId']), + futureOwnerProfileId: serializer.fromJson( + json['futureOwnerProfileId'], + ), + lastSyncedAt: serializer.fromJson(json['lastSyncedAt']), + remoteRevision: serializer.fromJson(json['remoteRevision']), + workoutTemplateProgramId: serializer.fromJson( + json['workoutTemplateProgramId'], + ), + snapshotProgramExerciseId: serializer.fromJson( + json['snapshotProgramExerciseId'], + ), + setsCountOverride: serializer.fromJson(json['setsCountOverride']), + targetTimeSecondsOverride: serializer.fromJson( + json['targetTimeSecondsOverride'], + ), + targetRepsOverride: serializer.fromJson(json['targetRepsOverride']), + targetScoreOverride: serializer.fromJson( + json['targetScoreOverride'], + ), + ); + } + @override + Map toJson({ValueSerializer? serializer}) { + serializer ??= driftRuntimeOptions.defaultSerializer; + return { + 'id': serializer.toJson(id), + 'createdAt': serializer.toJson(createdAt), + 'updatedAt': serializer.toJson(updatedAt), + 'deletedAt': serializer.toJson(deletedAt), + 'schemaVersion': serializer.toJson(schemaVersion), + 'syncState': serializer.toJson(syncState), + 'localRevision': serializer.toJson(localRevision), + 'originDeviceId': serializer.toJson(originDeviceId), + 'futureOwnerProfileId': serializer.toJson(futureOwnerProfileId), + 'lastSyncedAt': serializer.toJson(lastSyncedAt), + 'remoteRevision': serializer.toJson(remoteRevision), + 'workoutTemplateProgramId': serializer.toJson( + workoutTemplateProgramId, + ), + 'snapshotProgramExerciseId': serializer.toJson( + snapshotProgramExerciseId, + ), + 'setsCountOverride': serializer.toJson(setsCountOverride), + 'targetTimeSecondsOverride': serializer.toJson( + targetTimeSecondsOverride, + ), + 'targetRepsOverride': serializer.toJson(targetRepsOverride), + 'targetScoreOverride': serializer.toJson(targetScoreOverride), + }; + } + + WorkoutTemplateExerciseOverride copyWith({ + String? id, + DateTime? createdAt, + DateTime? updatedAt, + Value deletedAt = const Value.absent(), + int? schemaVersion, + String? syncState, + int? localRevision, + String? originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + String? workoutTemplateProgramId, + String? snapshotProgramExerciseId, + Value setsCountOverride = const Value.absent(), + Value targetTimeSecondsOverride = const Value.absent(), + Value targetRepsOverride = const Value.absent(), + Value targetScoreOverride = const Value.absent(), + }) => WorkoutTemplateExerciseOverride( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt.present ? deletedAt.value : this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId.present + ? futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt.present ? lastSyncedAt.value : this.lastSyncedAt, + remoteRevision: remoteRevision.present + ? remoteRevision.value + : this.remoteRevision, + workoutTemplateProgramId: + workoutTemplateProgramId ?? this.workoutTemplateProgramId, + snapshotProgramExerciseId: + snapshotProgramExerciseId ?? this.snapshotProgramExerciseId, + setsCountOverride: setsCountOverride.present + ? setsCountOverride.value + : this.setsCountOverride, + targetTimeSecondsOverride: targetTimeSecondsOverride.present + ? targetTimeSecondsOverride.value + : this.targetTimeSecondsOverride, + targetRepsOverride: targetRepsOverride.present + ? targetRepsOverride.value + : this.targetRepsOverride, + targetScoreOverride: targetScoreOverride.present + ? targetScoreOverride.value + : this.targetScoreOverride, + ); + WorkoutTemplateExerciseOverride copyWithCompanion( + WorkoutTemplateExerciseOverridesCompanion data, + ) { + return WorkoutTemplateExerciseOverride( + id: data.id.present ? data.id.value : this.id, + createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt, + updatedAt: data.updatedAt.present ? data.updatedAt.value : this.updatedAt, + deletedAt: data.deletedAt.present ? data.deletedAt.value : this.deletedAt, + schemaVersion: data.schemaVersion.present + ? data.schemaVersion.value + : this.schemaVersion, + syncState: data.syncState.present ? data.syncState.value : this.syncState, + localRevision: data.localRevision.present + ? data.localRevision.value + : this.localRevision, + originDeviceId: data.originDeviceId.present + ? data.originDeviceId.value + : this.originDeviceId, + futureOwnerProfileId: data.futureOwnerProfileId.present + ? data.futureOwnerProfileId.value + : this.futureOwnerProfileId, + lastSyncedAt: data.lastSyncedAt.present + ? data.lastSyncedAt.value + : this.lastSyncedAt, + remoteRevision: data.remoteRevision.present + ? data.remoteRevision.value + : this.remoteRevision, + workoutTemplateProgramId: data.workoutTemplateProgramId.present + ? data.workoutTemplateProgramId.value + : this.workoutTemplateProgramId, + snapshotProgramExerciseId: data.snapshotProgramExerciseId.present + ? data.snapshotProgramExerciseId.value + : this.snapshotProgramExerciseId, + setsCountOverride: data.setsCountOverride.present + ? data.setsCountOverride.value + : this.setsCountOverride, + targetTimeSecondsOverride: data.targetTimeSecondsOverride.present + ? data.targetTimeSecondsOverride.value + : this.targetTimeSecondsOverride, + targetRepsOverride: data.targetRepsOverride.present + ? data.targetRepsOverride.value + : this.targetRepsOverride, + targetScoreOverride: data.targetScoreOverride.present + ? data.targetScoreOverride.value + : this.targetScoreOverride, + ); + } + + @override + String toString() { + return (StringBuffer('WorkoutTemplateExerciseOverride(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('workoutTemplateProgramId: $workoutTemplateProgramId, ') + ..write('snapshotProgramExerciseId: $snapshotProgramExerciseId, ') + ..write('setsCountOverride: $setsCountOverride, ') + ..write('targetTimeSecondsOverride: $targetTimeSecondsOverride, ') + ..write('targetRepsOverride: $targetRepsOverride, ') + ..write('targetScoreOverride: $targetScoreOverride') + ..write(')')) + .toString(); + } + + @override + int get hashCode => Object.hash( + id, + createdAt, + updatedAt, + deletedAt, + schemaVersion, + syncState, + localRevision, + originDeviceId, + futureOwnerProfileId, + lastSyncedAt, + remoteRevision, + workoutTemplateProgramId, + snapshotProgramExerciseId, + setsCountOverride, + targetTimeSecondsOverride, + targetRepsOverride, + targetScoreOverride, + ); + @override + bool operator ==(Object other) => + identical(this, other) || + (other is WorkoutTemplateExerciseOverride && + other.id == this.id && + other.createdAt == this.createdAt && + other.updatedAt == this.updatedAt && + other.deletedAt == this.deletedAt && + other.schemaVersion == this.schemaVersion && + other.syncState == this.syncState && + other.localRevision == this.localRevision && + other.originDeviceId == this.originDeviceId && + other.futureOwnerProfileId == this.futureOwnerProfileId && + other.lastSyncedAt == this.lastSyncedAt && + other.remoteRevision == this.remoteRevision && + other.workoutTemplateProgramId == this.workoutTemplateProgramId && + other.snapshotProgramExerciseId == this.snapshotProgramExerciseId && + other.setsCountOverride == this.setsCountOverride && + other.targetTimeSecondsOverride == this.targetTimeSecondsOverride && + other.targetRepsOverride == this.targetRepsOverride && + other.targetScoreOverride == this.targetScoreOverride); +} + +class WorkoutTemplateExerciseOverridesCompanion + extends UpdateCompanion { + final Value id; + final Value createdAt; + final Value updatedAt; + final Value deletedAt; + final Value schemaVersion; + final Value syncState; + final Value localRevision; + final Value originDeviceId; + final Value futureOwnerProfileId; + final Value lastSyncedAt; + final Value remoteRevision; + final Value workoutTemplateProgramId; + final Value snapshotProgramExerciseId; + final Value setsCountOverride; + final Value targetTimeSecondsOverride; + final Value targetRepsOverride; + final Value targetScoreOverride; + final Value rowid; + const WorkoutTemplateExerciseOverridesCompanion({ + this.id = const Value.absent(), + this.createdAt = const Value.absent(), + this.updatedAt = const Value.absent(), + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + this.syncState = const Value.absent(), + this.localRevision = const Value.absent(), + this.originDeviceId = const Value.absent(), + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + this.workoutTemplateProgramId = const Value.absent(), + this.snapshotProgramExerciseId = const Value.absent(), + this.setsCountOverride = const Value.absent(), + this.targetTimeSecondsOverride = const Value.absent(), + this.targetRepsOverride = const Value.absent(), + this.targetScoreOverride = const Value.absent(), + this.rowid = const Value.absent(), + }); + WorkoutTemplateExerciseOverridesCompanion.insert({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + this.deletedAt = const Value.absent(), + this.schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + this.futureOwnerProfileId = const Value.absent(), + this.lastSyncedAt = const Value.absent(), + this.remoteRevision = const Value.absent(), + required String workoutTemplateProgramId, + required String snapshotProgramExerciseId, + this.setsCountOverride = const Value.absent(), + this.targetTimeSecondsOverride = const Value.absent(), + this.targetRepsOverride = const Value.absent(), + this.targetScoreOverride = const Value.absent(), + this.rowid = const Value.absent(), + }) : id = Value(id), + createdAt = Value(createdAt), + updatedAt = Value(updatedAt), + syncState = Value(syncState), + localRevision = Value(localRevision), + originDeviceId = Value(originDeviceId), + workoutTemplateProgramId = Value(workoutTemplateProgramId), + snapshotProgramExerciseId = Value(snapshotProgramExerciseId); + static Insertable custom({ + Expression? id, + Expression? createdAt, + Expression? updatedAt, + Expression? deletedAt, + Expression? schemaVersion, + Expression? syncState, + Expression? localRevision, + Expression? originDeviceId, + Expression? futureOwnerProfileId, + Expression? lastSyncedAt, + Expression? remoteRevision, + Expression? workoutTemplateProgramId, + Expression? snapshotProgramExerciseId, + Expression? setsCountOverride, + Expression? targetTimeSecondsOverride, + Expression? targetRepsOverride, + Expression? targetScoreOverride, + Expression? rowid, + }) { + return RawValuesInsertable({ + if (id != null) 'id': id, + if (createdAt != null) 'created_at': createdAt, + if (updatedAt != null) 'updated_at': updatedAt, + if (deletedAt != null) 'deleted_at': deletedAt, + if (schemaVersion != null) 'schema_version': schemaVersion, + if (syncState != null) 'sync_state': syncState, + if (localRevision != null) 'local_revision': localRevision, + if (originDeviceId != null) 'origin_device_id': originDeviceId, + if (futureOwnerProfileId != null) + 'future_owner_profile_id': futureOwnerProfileId, + if (lastSyncedAt != null) 'last_synced_at': lastSyncedAt, + if (remoteRevision != null) 'remote_revision': remoteRevision, + if (workoutTemplateProgramId != null) + 'workout_template_program_id': workoutTemplateProgramId, + if (snapshotProgramExerciseId != null) + 'snapshot_program_exercise_id': snapshotProgramExerciseId, + if (setsCountOverride != null) 'sets_count_override': setsCountOverride, + if (targetTimeSecondsOverride != null) + 'target_time_seconds_override': targetTimeSecondsOverride, + if (targetRepsOverride != null) + 'target_reps_override': targetRepsOverride, + if (targetScoreOverride != null) + 'target_score_override': targetScoreOverride, + if (rowid != null) 'rowid': rowid, + }); + } + + WorkoutTemplateExerciseOverridesCompanion copyWith({ + Value? id, + Value? createdAt, + Value? updatedAt, + Value? deletedAt, + Value? schemaVersion, + Value? syncState, + Value? localRevision, + Value? originDeviceId, + Value? futureOwnerProfileId, + Value? lastSyncedAt, + Value? remoteRevision, + Value? workoutTemplateProgramId, + Value? snapshotProgramExerciseId, + Value? setsCountOverride, + Value? targetTimeSecondsOverride, + Value? targetRepsOverride, + Value? targetScoreOverride, + Value? rowid, + }) { + return WorkoutTemplateExerciseOverridesCompanion( + id: id ?? this.id, + createdAt: createdAt ?? this.createdAt, + updatedAt: updatedAt ?? this.updatedAt, + deletedAt: deletedAt ?? this.deletedAt, + schemaVersion: schemaVersion ?? this.schemaVersion, + syncState: syncState ?? this.syncState, + localRevision: localRevision ?? this.localRevision, + originDeviceId: originDeviceId ?? this.originDeviceId, + futureOwnerProfileId: futureOwnerProfileId ?? this.futureOwnerProfileId, + lastSyncedAt: lastSyncedAt ?? this.lastSyncedAt, + remoteRevision: remoteRevision ?? this.remoteRevision, + workoutTemplateProgramId: + workoutTemplateProgramId ?? this.workoutTemplateProgramId, + snapshotProgramExerciseId: + snapshotProgramExerciseId ?? this.snapshotProgramExerciseId, + setsCountOverride: setsCountOverride ?? this.setsCountOverride, + targetTimeSecondsOverride: + targetTimeSecondsOverride ?? this.targetTimeSecondsOverride, + targetRepsOverride: targetRepsOverride ?? this.targetRepsOverride, + targetScoreOverride: targetScoreOverride ?? this.targetScoreOverride, + rowid: rowid ?? this.rowid, + ); + } + + @override + Map toColumns(bool nullToAbsent) { + final map = {}; + if (id.present) { + map['id'] = Variable(id.value); + } + if (createdAt.present) { + map['created_at'] = Variable(createdAt.value); + } + if (updatedAt.present) { + map['updated_at'] = Variable(updatedAt.value); + } + if (deletedAt.present) { + map['deleted_at'] = Variable(deletedAt.value); + } + if (schemaVersion.present) { + map['schema_version'] = Variable(schemaVersion.value); + } + if (syncState.present) { + map['sync_state'] = Variable(syncState.value); + } + if (localRevision.present) { + map['local_revision'] = Variable(localRevision.value); + } + if (originDeviceId.present) { + map['origin_device_id'] = Variable(originDeviceId.value); + } + if (futureOwnerProfileId.present) { + map['future_owner_profile_id'] = Variable( + futureOwnerProfileId.value, + ); + } + if (lastSyncedAt.present) { + map['last_synced_at'] = Variable(lastSyncedAt.value); + } + if (remoteRevision.present) { + map['remote_revision'] = Variable(remoteRevision.value); + } + if (workoutTemplateProgramId.present) { + map['workout_template_program_id'] = Variable( + workoutTemplateProgramId.value, + ); + } + if (snapshotProgramExerciseId.present) { + map['snapshot_program_exercise_id'] = Variable( + snapshotProgramExerciseId.value, + ); + } + if (setsCountOverride.present) { + map['sets_count_override'] = Variable(setsCountOverride.value); + } + if (targetTimeSecondsOverride.present) { + map['target_time_seconds_override'] = Variable( + targetTimeSecondsOverride.value, + ); + } + if (targetRepsOverride.present) { + map['target_reps_override'] = Variable(targetRepsOverride.value); + } + if (targetScoreOverride.present) { + map['target_score_override'] = Variable( + targetScoreOverride.value, + ); + } + if (rowid.present) { + map['rowid'] = Variable(rowid.value); + } + return map; + } + + @override + String toString() { + return (StringBuffer('WorkoutTemplateExerciseOverridesCompanion(') + ..write('id: $id, ') + ..write('createdAt: $createdAt, ') + ..write('updatedAt: $updatedAt, ') + ..write('deletedAt: $deletedAt, ') + ..write('schemaVersion: $schemaVersion, ') + ..write('syncState: $syncState, ') + ..write('localRevision: $localRevision, ') + ..write('originDeviceId: $originDeviceId, ') + ..write('futureOwnerProfileId: $futureOwnerProfileId, ') + ..write('lastSyncedAt: $lastSyncedAt, ') + ..write('remoteRevision: $remoteRevision, ') + ..write('workoutTemplateProgramId: $workoutTemplateProgramId, ') + ..write('snapshotProgramExerciseId: $snapshotProgramExerciseId, ') + ..write('setsCountOverride: $setsCountOverride, ') + ..write('targetTimeSecondsOverride: $targetTimeSecondsOverride, ') + ..write('targetRepsOverride: $targetRepsOverride, ') + ..write('targetScoreOverride: $targetScoreOverride, ') + ..write('rowid: $rowid') + ..write(')')) + .toString(); + } +} + +abstract class _$AppDatabase extends GeneratedDatabase { + _$AppDatabase(QueryExecutor e) : super(e); + $AppDatabaseManager get managers => $AppDatabaseManager(this); + late final $WorkoutTemplatesTable workoutTemplates = $WorkoutTemplatesTable( + this, + ); + late final $ActiveWorkoutSessionsTable activeWorkoutSessions = + $ActiveWorkoutSessionsTable(this); + late final $ActiveRestStatesTable activeRestStates = $ActiveRestStatesTable( + this, + ); + late final $ActiveSetResultsTable activeSetResults = $ActiveSetResultsTable( + this, + ); + late final $ChangeLogEntriesTable changeLogEntries = $ChangeLogEntriesTable( + this, + ); + late final $MediaAssetsTable mediaAssets = $MediaAssetsTable(this); + late final $ExercisesTable exercises = $ExercisesTable(this); + late final $ProgramsTable programs = $ProgramsTable(this); + late final $ProgramExercisesTable programExercises = $ProgramExercisesTable( + this, + ); + late final $WorkoutHistoriesTable workoutHistories = $WorkoutHistoriesTable( + this, + ); + late final $WorkoutHistorySetResultsTable workoutHistorySetResults = + $WorkoutHistorySetResultsTable(this); + late final $WorkoutTemplateProgramsTable workoutTemplatePrograms = + $WorkoutTemplateProgramsTable(this); + late final $WorkoutTemplateExerciseOverridesTable + workoutTemplateExerciseOverrides = $WorkoutTemplateExerciseOverridesTable( + this, + ); + @override + Iterable> get allTables => + allSchemaEntities.whereType>(); + @override + List get allSchemaEntities => [ + workoutTemplates, + activeWorkoutSessions, + activeRestStates, + activeSetResults, + changeLogEntries, + mediaAssets, + exercises, + programs, + programExercises, + workoutHistories, + workoutHistorySetResults, + workoutTemplatePrograms, + workoutTemplateExerciseOverrides, + ]; +} + +typedef $$WorkoutTemplatesTableCreateCompanionBuilder = + WorkoutTemplatesCompanion Function({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt, + Value schemaVersion, + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + required String name, + Value lastStartedAt, + Value rowid, + }); +typedef $$WorkoutTemplatesTableUpdateCompanionBuilder = + WorkoutTemplatesCompanion Function({ + Value id, + Value createdAt, + Value updatedAt, + Value deletedAt, + Value schemaVersion, + Value syncState, + Value localRevision, + Value originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value name, + Value lastStartedAt, + Value rowid, + }); + +final class $$WorkoutTemplatesTableReferences + extends + BaseReferences<_$AppDatabase, $WorkoutTemplatesTable, WorkoutTemplate> { + $$WorkoutTemplatesTableReferences( + super.$_db, + super.$_table, + super.$_typedResult, + ); + + static MultiTypedResultKey< + $ActiveWorkoutSessionsTable, + List + > + _activeWorkoutSessionsRefsTable( + _$AppDatabase db, + ) => MultiTypedResultKey.fromTable( + db.activeWorkoutSessions, + aliasName: + 'workout_templates__id__active_workout_sessions__source_workout_template_id', + ); + + $$ActiveWorkoutSessionsTableProcessedTableManager + get activeWorkoutSessionsRefs { + final manager = + $$ActiveWorkoutSessionsTableTableManager( + $_db, + $_db.activeWorkoutSessions, + ).filter( + (f) => f.sourceWorkoutTemplateId.id.sqlEquals( + $_itemColumn('id')!, + ), + ); + + final cache = $_typedResult.readTableOrNull( + _activeWorkoutSessionsRefsTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } + + static MultiTypedResultKey<$WorkoutHistoriesTable, List> + _workoutHistoriesRefsTable(_$AppDatabase db) => MultiTypedResultKey.fromTable( + db.workoutHistories, + aliasName: + 'workout_templates__id__workout_history__source_workout_template_id', + ); + + $$WorkoutHistoriesTableProcessedTableManager get workoutHistoriesRefs { + final manager = + $$WorkoutHistoriesTableTableManager($_db, $_db.workoutHistories).filter( + (f) => f.sourceWorkoutTemplateId.id.sqlEquals( + $_itemColumn('id')!, + ), + ); + + final cache = $_typedResult.readTableOrNull( + _workoutHistoriesRefsTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } + + static MultiTypedResultKey< + $WorkoutTemplateProgramsTable, + List + > + _workoutTemplateProgramsRefsTable( + _$AppDatabase db, + ) => MultiTypedResultKey.fromTable( + db.workoutTemplatePrograms, + aliasName: + 'workout_templates__id__workout_template_programs__workout_template_id', + ); + + $$WorkoutTemplateProgramsTableProcessedTableManager + get workoutTemplateProgramsRefs { + final manager = + $$WorkoutTemplateProgramsTableTableManager( + $_db, + $_db.workoutTemplatePrograms, + ).filter( + (f) => f.workoutTemplateId.id.sqlEquals($_itemColumn('id')!), + ); + + final cache = $_typedResult.readTableOrNull( + _workoutTemplateProgramsRefsTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } +} + +class $$WorkoutTemplatesTableFilterComposer + extends Composer<_$AppDatabase, $WorkoutTemplatesTable> { + $$WorkoutTemplatesTableFilterComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnFilters get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get name => $composableBuilder( + column: $table.name, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastStartedAt => $composableBuilder( + column: $table.lastStartedAt, + builder: (column) => ColumnFilters(column), + ); + + Expression activeWorkoutSessionsRefs( + Expression Function($$ActiveWorkoutSessionsTableFilterComposer f) f, + ) { + final $$ActiveWorkoutSessionsTableFilterComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.activeWorkoutSessions, + getReferencedColumn: (t) => t.sourceWorkoutTemplateId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveWorkoutSessionsTableFilterComposer( + $db: $db, + $table: $db.activeWorkoutSessions, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression workoutHistoriesRefs( + Expression Function($$WorkoutHistoriesTableFilterComposer f) f, + ) { + final $$WorkoutHistoriesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.workoutHistories, + getReferencedColumn: (t) => t.sourceWorkoutTemplateId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutHistoriesTableFilterComposer( + $db: $db, + $table: $db.workoutHistories, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression workoutTemplateProgramsRefs( + Expression Function($$WorkoutTemplateProgramsTableFilterComposer f) f, + ) { + final $$WorkoutTemplateProgramsTableFilterComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.workoutTemplatePrograms, + getReferencedColumn: (t) => t.workoutTemplateId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplateProgramsTableFilterComposer( + $db: $db, + $table: $db.workoutTemplatePrograms, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$WorkoutTemplatesTableOrderingComposer + extends Composer<_$AppDatabase, $WorkoutTemplatesTable> { + $$WorkoutTemplatesTableOrderingComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnOrderings get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get name => $composableBuilder( + column: $table.name, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastStartedAt => $composableBuilder( + column: $table.lastStartedAt, + builder: (column) => ColumnOrderings(column), + ); +} + +class $$WorkoutTemplatesTableAnnotationComposer + extends Composer<_$AppDatabase, $WorkoutTemplatesTable> { + $$WorkoutTemplatesTableAnnotationComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + GeneratedColumn get id => + $composableBuilder(column: $table.id, builder: (column) => column); + + GeneratedColumn get createdAt => + $composableBuilder(column: $table.createdAt, builder: (column) => column); + + GeneratedColumn get updatedAt => + $composableBuilder(column: $table.updatedAt, builder: (column) => column); + + GeneratedColumn get deletedAt => + $composableBuilder(column: $table.deletedAt, builder: (column) => column); + + GeneratedColumn get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => column, + ); + + GeneratedColumn get syncState => + $composableBuilder(column: $table.syncState, builder: (column) => column); + + GeneratedColumn get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => column, + ); + + GeneratedColumn get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => column, + ); + + GeneratedColumn get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => column, + ); + + GeneratedColumn get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => column, + ); + + GeneratedColumn get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => column, + ); + + GeneratedColumn get name => + $composableBuilder(column: $table.name, builder: (column) => column); + + GeneratedColumn get lastStartedAt => $composableBuilder( + column: $table.lastStartedAt, + builder: (column) => column, + ); + + Expression activeWorkoutSessionsRefs( + Expression Function($$ActiveWorkoutSessionsTableAnnotationComposer a) f, + ) { + final $$ActiveWorkoutSessionsTableAnnotationComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.activeWorkoutSessions, + getReferencedColumn: (t) => t.sourceWorkoutTemplateId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveWorkoutSessionsTableAnnotationComposer( + $db: $db, + $table: $db.activeWorkoutSessions, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression workoutHistoriesRefs( + Expression Function($$WorkoutHistoriesTableAnnotationComposer a) f, + ) { + final $$WorkoutHistoriesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.workoutHistories, + getReferencedColumn: (t) => t.sourceWorkoutTemplateId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutHistoriesTableAnnotationComposer( + $db: $db, + $table: $db.workoutHistories, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression workoutTemplateProgramsRefs( + Expression Function($$WorkoutTemplateProgramsTableAnnotationComposer a) + f, + ) { + final $$WorkoutTemplateProgramsTableAnnotationComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.workoutTemplatePrograms, + getReferencedColumn: (t) => t.workoutTemplateId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplateProgramsTableAnnotationComposer( + $db: $db, + $table: $db.workoutTemplatePrograms, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$WorkoutTemplatesTableTableManager + extends + RootTableManager< + _$AppDatabase, + $WorkoutTemplatesTable, + WorkoutTemplate, + $$WorkoutTemplatesTableFilterComposer, + $$WorkoutTemplatesTableOrderingComposer, + $$WorkoutTemplatesTableAnnotationComposer, + $$WorkoutTemplatesTableCreateCompanionBuilder, + $$WorkoutTemplatesTableUpdateCompanionBuilder, + (WorkoutTemplate, $$WorkoutTemplatesTableReferences), + WorkoutTemplate, + PrefetchHooks Function({ + bool activeWorkoutSessionsRefs, + bool workoutHistoriesRefs, + bool workoutTemplateProgramsRefs, + }) + > { + $$WorkoutTemplatesTableTableManager( + _$AppDatabase db, + $WorkoutTemplatesTable table, + ) : super( + TableManagerState( + db: db, + table: table, + createFilteringComposer: () => + $$WorkoutTemplatesTableFilterComposer($db: db, $table: table), + createOrderingComposer: () => + $$WorkoutTemplatesTableOrderingComposer($db: db, $table: table), + createComputedFieldComposer: () => + $$WorkoutTemplatesTableAnnotationComposer($db: db, $table: table), + updateCompanionCallback: + ({ + Value id = const Value.absent(), + Value createdAt = const Value.absent(), + Value updatedAt = const Value.absent(), + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + Value syncState = const Value.absent(), + Value localRevision = const Value.absent(), + Value originDeviceId = const Value.absent(), + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value name = const Value.absent(), + Value lastStartedAt = const Value.absent(), + Value rowid = const Value.absent(), + }) => WorkoutTemplatesCompanion( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + name: name, + lastStartedAt: lastStartedAt, + rowid: rowid, + ), + createCompanionCallback: + ({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + required String name, + Value lastStartedAt = const Value.absent(), + Value rowid = const Value.absent(), + }) => WorkoutTemplatesCompanion.insert( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + name: name, + lastStartedAt: lastStartedAt, + rowid: rowid, + ), + withReferenceMapper: (p0) => p0 + .map( + (e) => ( + e.readTable(table), + $$WorkoutTemplatesTableReferences(db, table, e), + ), + ) + .toList(), + prefetchHooksCallback: + ({ + activeWorkoutSessionsRefs = false, + workoutHistoriesRefs = false, + workoutTemplateProgramsRefs = false, + }) { + return PrefetchHooks( + db: db, + explicitlyWatchedTables: [ + if (activeWorkoutSessionsRefs) db.activeWorkoutSessions, + if (workoutHistoriesRefs) db.workoutHistories, + if (workoutTemplateProgramsRefs) db.workoutTemplatePrograms, + ], + addJoins: null, + getPrefetchedDataCallback: (items) async { + return [ + if (activeWorkoutSessionsRefs) + await $_getPrefetchedData< + WorkoutTemplate, + $WorkoutTemplatesTable, + ActiveWorkoutSession + >( + currentTable: table, + referencedTable: $$WorkoutTemplatesTableReferences + ._activeWorkoutSessionsRefsTable(db), + managerFromTypedResult: (p0) => + $$WorkoutTemplatesTableReferences( + db, + table, + p0, + ).activeWorkoutSessionsRefs, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => e.sourceWorkoutTemplateId == item.id, + ), + typedResults: items, + ), + if (workoutHistoriesRefs) + await $_getPrefetchedData< + WorkoutTemplate, + $WorkoutTemplatesTable, + WorkoutHistory + >( + currentTable: table, + referencedTable: $$WorkoutTemplatesTableReferences + ._workoutHistoriesRefsTable(db), + managerFromTypedResult: (p0) => + $$WorkoutTemplatesTableReferences( + db, + table, + p0, + ).workoutHistoriesRefs, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => e.sourceWorkoutTemplateId == item.id, + ), + typedResults: items, + ), + if (workoutTemplateProgramsRefs) + await $_getPrefetchedData< + WorkoutTemplate, + $WorkoutTemplatesTable, + WorkoutTemplateProgram + >( + currentTable: table, + referencedTable: $$WorkoutTemplatesTableReferences + ._workoutTemplateProgramsRefsTable(db), + managerFromTypedResult: (p0) => + $$WorkoutTemplatesTableReferences( + db, + table, + p0, + ).workoutTemplateProgramsRefs, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => e.workoutTemplateId == item.id, + ), + typedResults: items, + ), + ]; + }, + ); + }, + ), + ); +} + +typedef $$WorkoutTemplatesTableProcessedTableManager = + ProcessedTableManager< + _$AppDatabase, + $WorkoutTemplatesTable, + WorkoutTemplate, + $$WorkoutTemplatesTableFilterComposer, + $$WorkoutTemplatesTableOrderingComposer, + $$WorkoutTemplatesTableAnnotationComposer, + $$WorkoutTemplatesTableCreateCompanionBuilder, + $$WorkoutTemplatesTableUpdateCompanionBuilder, + (WorkoutTemplate, $$WorkoutTemplatesTableReferences), + WorkoutTemplate, + PrefetchHooks Function({ + bool activeWorkoutSessionsRefs, + bool workoutHistoriesRefs, + bool workoutTemplateProgramsRefs, + }) + >; +typedef $$ActiveWorkoutSessionsTableCreateCompanionBuilder = + ActiveWorkoutSessionsCompanion Function({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt, + Value schemaVersion, + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value sourceWorkoutTemplateId, + required String status, + required DateTime startedAt, + Value pausedAt, + Value endedAt, + required DateTime lastPersistedAt, + required int elapsedActiveMs, + required int currentProgramIndex, + required int currentExerciseIndex, + required int currentSetIndex, + required String resolvedTemplateSnapshotJson, + Value rowid, + }); +typedef $$ActiveWorkoutSessionsTableUpdateCompanionBuilder = + ActiveWorkoutSessionsCompanion Function({ + Value id, + Value createdAt, + Value updatedAt, + Value deletedAt, + Value schemaVersion, + Value syncState, + Value localRevision, + Value originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value sourceWorkoutTemplateId, + Value status, + Value startedAt, + Value pausedAt, + Value endedAt, + Value lastPersistedAt, + Value elapsedActiveMs, + Value currentProgramIndex, + Value currentExerciseIndex, + Value currentSetIndex, + Value resolvedTemplateSnapshotJson, + Value rowid, + }); + +final class $$ActiveWorkoutSessionsTableReferences + extends + BaseReferences< + _$AppDatabase, + $ActiveWorkoutSessionsTable, + ActiveWorkoutSession + > { + $$ActiveWorkoutSessionsTableReferences( + super.$_db, + super.$_table, + super.$_typedResult, + ); + + static $WorkoutTemplatesTable _sourceWorkoutTemplateIdTable( + _$AppDatabase db, + ) => db.workoutTemplates.createAlias( + 'active_workout_sessions__source_workout_template_id__workout_templates__id', + ); + + $$WorkoutTemplatesTableProcessedTableManager? get sourceWorkoutTemplateId { + final $_column = $_itemColumn('source_workout_template_id'); + if ($_column == null) return null; + final manager = $$WorkoutTemplatesTableTableManager( + $_db, + $_db.workoutTemplates, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull( + _sourceWorkoutTemplateIdTable($_db), + ); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } + + static MultiTypedResultKey<$ActiveRestStatesTable, List> + _activeRestStatesRefsTable(_$AppDatabase db) => MultiTypedResultKey.fromTable( + db.activeRestStates, + aliasName: + 'active_workout_sessions__id__active_rest_states__active_workout_session_id', + ); + + $$ActiveRestStatesTableProcessedTableManager get activeRestStatesRefs { + final manager = + $$ActiveRestStatesTableTableManager($_db, $_db.activeRestStates).filter( + (f) => f.activeWorkoutSessionId.id.sqlEquals( + $_itemColumn('id')!, + ), + ); + + final cache = $_typedResult.readTableOrNull( + _activeRestStatesRefsTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } + + static MultiTypedResultKey<$ActiveSetResultsTable, List> + _activeSetResultsRefsTable(_$AppDatabase db) => MultiTypedResultKey.fromTable( + db.activeSetResults, + aliasName: + 'active_workout_sessions__id__active_set_results__active_workout_session_id', + ); + + $$ActiveSetResultsTableProcessedTableManager get activeSetResultsRefs { + final manager = + $$ActiveSetResultsTableTableManager($_db, $_db.activeSetResults).filter( + (f) => f.activeWorkoutSessionId.id.sqlEquals( + $_itemColumn('id')!, + ), + ); + + final cache = $_typedResult.readTableOrNull( + _activeSetResultsRefsTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } + + static MultiTypedResultKey<$WorkoutHistoriesTable, List> + _workoutHistoriesRefsTable(_$AppDatabase db) => MultiTypedResultKey.fromTable( + db.workoutHistories, + aliasName: + 'active_workout_sessions__id__workout_history__source_active_workout_session_id', + ); + + $$WorkoutHistoriesTableProcessedTableManager get workoutHistoriesRefs { + final manager = + $$WorkoutHistoriesTableTableManager($_db, $_db.workoutHistories).filter( + (f) => f.sourceActiveWorkoutSessionId.id.sqlEquals( + $_itemColumn('id')!, + ), + ); + + final cache = $_typedResult.readTableOrNull( + _workoutHistoriesRefsTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } +} + +class $$ActiveWorkoutSessionsTableFilterComposer + extends Composer<_$AppDatabase, $ActiveWorkoutSessionsTable> { + $$ActiveWorkoutSessionsTableFilterComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnFilters get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get status => $composableBuilder( + column: $table.status, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get startedAt => $composableBuilder( + column: $table.startedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get pausedAt => $composableBuilder( + column: $table.pausedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get endedAt => $composableBuilder( + column: $table.endedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastPersistedAt => $composableBuilder( + column: $table.lastPersistedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get elapsedActiveMs => $composableBuilder( + column: $table.elapsedActiveMs, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get currentProgramIndex => $composableBuilder( + column: $table.currentProgramIndex, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get currentExerciseIndex => $composableBuilder( + column: $table.currentExerciseIndex, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get currentSetIndex => $composableBuilder( + column: $table.currentSetIndex, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get resolvedTemplateSnapshotJson => $composableBuilder( + column: $table.resolvedTemplateSnapshotJson, + builder: (column) => ColumnFilters(column), + ); + + $$WorkoutTemplatesTableFilterComposer get sourceWorkoutTemplateId { + final $$WorkoutTemplatesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceWorkoutTemplateId, + referencedTable: $db.workoutTemplates, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplatesTableFilterComposer( + $db: $db, + $table: $db.workoutTemplates, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + Expression activeRestStatesRefs( + Expression Function($$ActiveRestStatesTableFilterComposer f) f, + ) { + final $$ActiveRestStatesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.activeRestStates, + getReferencedColumn: (t) => t.activeWorkoutSessionId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveRestStatesTableFilterComposer( + $db: $db, + $table: $db.activeRestStates, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression activeSetResultsRefs( + Expression Function($$ActiveSetResultsTableFilterComposer f) f, + ) { + final $$ActiveSetResultsTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.activeSetResults, + getReferencedColumn: (t) => t.activeWorkoutSessionId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveSetResultsTableFilterComposer( + $db: $db, + $table: $db.activeSetResults, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression workoutHistoriesRefs( + Expression Function($$WorkoutHistoriesTableFilterComposer f) f, + ) { + final $$WorkoutHistoriesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.workoutHistories, + getReferencedColumn: (t) => t.sourceActiveWorkoutSessionId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutHistoriesTableFilterComposer( + $db: $db, + $table: $db.workoutHistories, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$ActiveWorkoutSessionsTableOrderingComposer + extends Composer<_$AppDatabase, $ActiveWorkoutSessionsTable> { + $$ActiveWorkoutSessionsTableOrderingComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnOrderings get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get status => $composableBuilder( + column: $table.status, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get startedAt => $composableBuilder( + column: $table.startedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get pausedAt => $composableBuilder( + column: $table.pausedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get endedAt => $composableBuilder( + column: $table.endedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastPersistedAt => $composableBuilder( + column: $table.lastPersistedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get elapsedActiveMs => $composableBuilder( + column: $table.elapsedActiveMs, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get currentProgramIndex => $composableBuilder( + column: $table.currentProgramIndex, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get currentExerciseIndex => $composableBuilder( + column: $table.currentExerciseIndex, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get currentSetIndex => $composableBuilder( + column: $table.currentSetIndex, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get resolvedTemplateSnapshotJson => + $composableBuilder( + column: $table.resolvedTemplateSnapshotJson, + builder: (column) => ColumnOrderings(column), + ); + + $$WorkoutTemplatesTableOrderingComposer get sourceWorkoutTemplateId { + final $$WorkoutTemplatesTableOrderingComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceWorkoutTemplateId, + referencedTable: $db.workoutTemplates, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplatesTableOrderingComposer( + $db: $db, + $table: $db.workoutTemplates, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$ActiveWorkoutSessionsTableAnnotationComposer + extends Composer<_$AppDatabase, $ActiveWorkoutSessionsTable> { + $$ActiveWorkoutSessionsTableAnnotationComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + GeneratedColumn get id => + $composableBuilder(column: $table.id, builder: (column) => column); + + GeneratedColumn get createdAt => + $composableBuilder(column: $table.createdAt, builder: (column) => column); + + GeneratedColumn get updatedAt => + $composableBuilder(column: $table.updatedAt, builder: (column) => column); + + GeneratedColumn get deletedAt => + $composableBuilder(column: $table.deletedAt, builder: (column) => column); + + GeneratedColumn get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => column, + ); + + GeneratedColumn get syncState => + $composableBuilder(column: $table.syncState, builder: (column) => column); + + GeneratedColumn get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => column, + ); + + GeneratedColumn get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => column, + ); + + GeneratedColumn get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => column, + ); + + GeneratedColumn get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => column, + ); + + GeneratedColumn get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => column, + ); + + GeneratedColumn get status => + $composableBuilder(column: $table.status, builder: (column) => column); + + GeneratedColumn get startedAt => + $composableBuilder(column: $table.startedAt, builder: (column) => column); + + GeneratedColumn get pausedAt => + $composableBuilder(column: $table.pausedAt, builder: (column) => column); + + GeneratedColumn get endedAt => + $composableBuilder(column: $table.endedAt, builder: (column) => column); + + GeneratedColumn get lastPersistedAt => $composableBuilder( + column: $table.lastPersistedAt, + builder: (column) => column, + ); + + GeneratedColumn get elapsedActiveMs => $composableBuilder( + column: $table.elapsedActiveMs, + builder: (column) => column, + ); + + GeneratedColumn get currentProgramIndex => $composableBuilder( + column: $table.currentProgramIndex, + builder: (column) => column, + ); + + GeneratedColumn get currentExerciseIndex => $composableBuilder( + column: $table.currentExerciseIndex, + builder: (column) => column, + ); + + GeneratedColumn get currentSetIndex => $composableBuilder( + column: $table.currentSetIndex, + builder: (column) => column, + ); + + GeneratedColumn get resolvedTemplateSnapshotJson => + $composableBuilder( + column: $table.resolvedTemplateSnapshotJson, + builder: (column) => column, + ); + + $$WorkoutTemplatesTableAnnotationComposer get sourceWorkoutTemplateId { + final $$WorkoutTemplatesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceWorkoutTemplateId, + referencedTable: $db.workoutTemplates, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplatesTableAnnotationComposer( + $db: $db, + $table: $db.workoutTemplates, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + Expression activeRestStatesRefs( + Expression Function($$ActiveRestStatesTableAnnotationComposer a) f, + ) { + final $$ActiveRestStatesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.activeRestStates, + getReferencedColumn: (t) => t.activeWorkoutSessionId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveRestStatesTableAnnotationComposer( + $db: $db, + $table: $db.activeRestStates, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression activeSetResultsRefs( + Expression Function($$ActiveSetResultsTableAnnotationComposer a) f, + ) { + final $$ActiveSetResultsTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.activeSetResults, + getReferencedColumn: (t) => t.activeWorkoutSessionId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveSetResultsTableAnnotationComposer( + $db: $db, + $table: $db.activeSetResults, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression workoutHistoriesRefs( + Expression Function($$WorkoutHistoriesTableAnnotationComposer a) f, + ) { + final $$WorkoutHistoriesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.workoutHistories, + getReferencedColumn: (t) => t.sourceActiveWorkoutSessionId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutHistoriesTableAnnotationComposer( + $db: $db, + $table: $db.workoutHistories, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$ActiveWorkoutSessionsTableTableManager + extends + RootTableManager< + _$AppDatabase, + $ActiveWorkoutSessionsTable, + ActiveWorkoutSession, + $$ActiveWorkoutSessionsTableFilterComposer, + $$ActiveWorkoutSessionsTableOrderingComposer, + $$ActiveWorkoutSessionsTableAnnotationComposer, + $$ActiveWorkoutSessionsTableCreateCompanionBuilder, + $$ActiveWorkoutSessionsTableUpdateCompanionBuilder, + (ActiveWorkoutSession, $$ActiveWorkoutSessionsTableReferences), + ActiveWorkoutSession, + PrefetchHooks Function({ + bool sourceWorkoutTemplateId, + bool activeRestStatesRefs, + bool activeSetResultsRefs, + bool workoutHistoriesRefs, + }) + > { + $$ActiveWorkoutSessionsTableTableManager( + _$AppDatabase db, + $ActiveWorkoutSessionsTable table, + ) : super( + TableManagerState( + db: db, + table: table, + createFilteringComposer: () => + $$ActiveWorkoutSessionsTableFilterComposer( + $db: db, + $table: table, + ), + createOrderingComposer: () => + $$ActiveWorkoutSessionsTableOrderingComposer( + $db: db, + $table: table, + ), + createComputedFieldComposer: () => + $$ActiveWorkoutSessionsTableAnnotationComposer( + $db: db, + $table: table, + ), + updateCompanionCallback: + ({ + Value id = const Value.absent(), + Value createdAt = const Value.absent(), + Value updatedAt = const Value.absent(), + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + Value syncState = const Value.absent(), + Value localRevision = const Value.absent(), + Value originDeviceId = const Value.absent(), + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value sourceWorkoutTemplateId = const Value.absent(), + Value status = const Value.absent(), + Value startedAt = const Value.absent(), + Value pausedAt = const Value.absent(), + Value endedAt = const Value.absent(), + Value lastPersistedAt = const Value.absent(), + Value elapsedActiveMs = const Value.absent(), + Value currentProgramIndex = const Value.absent(), + Value currentExerciseIndex = const Value.absent(), + Value currentSetIndex = const Value.absent(), + Value resolvedTemplateSnapshotJson = + const Value.absent(), + Value rowid = const Value.absent(), + }) => ActiveWorkoutSessionsCompanion( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + sourceWorkoutTemplateId: sourceWorkoutTemplateId, + status: status, + startedAt: startedAt, + pausedAt: pausedAt, + endedAt: endedAt, + lastPersistedAt: lastPersistedAt, + elapsedActiveMs: elapsedActiveMs, + currentProgramIndex: currentProgramIndex, + currentExerciseIndex: currentExerciseIndex, + currentSetIndex: currentSetIndex, + resolvedTemplateSnapshotJson: resolvedTemplateSnapshotJson, + rowid: rowid, + ), + createCompanionCallback: + ({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value sourceWorkoutTemplateId = const Value.absent(), + required String status, + required DateTime startedAt, + Value pausedAt = const Value.absent(), + Value endedAt = const Value.absent(), + required DateTime lastPersistedAt, + required int elapsedActiveMs, + required int currentProgramIndex, + required int currentExerciseIndex, + required int currentSetIndex, + required String resolvedTemplateSnapshotJson, + Value rowid = const Value.absent(), + }) => ActiveWorkoutSessionsCompanion.insert( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + sourceWorkoutTemplateId: sourceWorkoutTemplateId, + status: status, + startedAt: startedAt, + pausedAt: pausedAt, + endedAt: endedAt, + lastPersistedAt: lastPersistedAt, + elapsedActiveMs: elapsedActiveMs, + currentProgramIndex: currentProgramIndex, + currentExerciseIndex: currentExerciseIndex, + currentSetIndex: currentSetIndex, + resolvedTemplateSnapshotJson: resolvedTemplateSnapshotJson, + rowid: rowid, + ), + withReferenceMapper: (p0) => p0 + .map( + (e) => ( + e.readTable(table), + $$ActiveWorkoutSessionsTableReferences(db, table, e), + ), + ) + .toList(), + prefetchHooksCallback: + ({ + sourceWorkoutTemplateId = false, + activeRestStatesRefs = false, + activeSetResultsRefs = false, + workoutHistoriesRefs = false, + }) { + return PrefetchHooks( + db: db, + explicitlyWatchedTables: [ + if (activeRestStatesRefs) db.activeRestStates, + if (activeSetResultsRefs) db.activeSetResults, + if (workoutHistoriesRefs) db.workoutHistories, + ], + addJoins: + < + T extends TableManagerState< + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic + > + >(state) { + if (sourceWorkoutTemplateId) { + state = + state.withJoin( + currentTable: table, + currentColumn: + table.sourceWorkoutTemplateId, + referencedTable: + $$ActiveWorkoutSessionsTableReferences + ._sourceWorkoutTemplateIdTable(db), + referencedColumn: + $$ActiveWorkoutSessionsTableReferences + ._sourceWorkoutTemplateIdTable(db) + .id, + ) + as T; + } + + return state; + }, + getPrefetchedDataCallback: (items) async { + return [ + if (activeRestStatesRefs) + await $_getPrefetchedData< + ActiveWorkoutSession, + $ActiveWorkoutSessionsTable, + ActiveRestState + >( + currentTable: table, + referencedTable: + $$ActiveWorkoutSessionsTableReferences + ._activeRestStatesRefsTable(db), + managerFromTypedResult: (p0) => + $$ActiveWorkoutSessionsTableReferences( + db, + table, + p0, + ).activeRestStatesRefs, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => e.activeWorkoutSessionId == item.id, + ), + typedResults: items, + ), + if (activeSetResultsRefs) + await $_getPrefetchedData< + ActiveWorkoutSession, + $ActiveWorkoutSessionsTable, + ActiveSetResult + >( + currentTable: table, + referencedTable: + $$ActiveWorkoutSessionsTableReferences + ._activeSetResultsRefsTable(db), + managerFromTypedResult: (p0) => + $$ActiveWorkoutSessionsTableReferences( + db, + table, + p0, + ).activeSetResultsRefs, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => e.activeWorkoutSessionId == item.id, + ), + typedResults: items, + ), + if (workoutHistoriesRefs) + await $_getPrefetchedData< + ActiveWorkoutSession, + $ActiveWorkoutSessionsTable, + WorkoutHistory + >( + currentTable: table, + referencedTable: + $$ActiveWorkoutSessionsTableReferences + ._workoutHistoriesRefsTable(db), + managerFromTypedResult: (p0) => + $$ActiveWorkoutSessionsTableReferences( + db, + table, + p0, + ).workoutHistoriesRefs, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => + e.sourceActiveWorkoutSessionId == item.id, + ), + typedResults: items, + ), + ]; + }, + ); + }, + ), + ); +} + +typedef $$ActiveWorkoutSessionsTableProcessedTableManager = + ProcessedTableManager< + _$AppDatabase, + $ActiveWorkoutSessionsTable, + ActiveWorkoutSession, + $$ActiveWorkoutSessionsTableFilterComposer, + $$ActiveWorkoutSessionsTableOrderingComposer, + $$ActiveWorkoutSessionsTableAnnotationComposer, + $$ActiveWorkoutSessionsTableCreateCompanionBuilder, + $$ActiveWorkoutSessionsTableUpdateCompanionBuilder, + (ActiveWorkoutSession, $$ActiveWorkoutSessionsTableReferences), + ActiveWorkoutSession, + PrefetchHooks Function({ + bool sourceWorkoutTemplateId, + bool activeRestStatesRefs, + bool activeSetResultsRefs, + bool workoutHistoriesRefs, + }) + >; +typedef $$ActiveRestStatesTableCreateCompanionBuilder = + ActiveRestStatesCompanion Function({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt, + Value schemaVersion, + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + required String activeWorkoutSessionId, + required int afterProgramIndex, + required int afterExerciseIndex, + required int afterSetIndex, + required int plannedRestSeconds, + required int adjustedRestSeconds, + required DateTime startedAt, + Value endedAt, + Value skippedAt, + Value rowid, + }); +typedef $$ActiveRestStatesTableUpdateCompanionBuilder = + ActiveRestStatesCompanion Function({ + Value id, + Value createdAt, + Value updatedAt, + Value deletedAt, + Value schemaVersion, + Value syncState, + Value localRevision, + Value originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value activeWorkoutSessionId, + Value afterProgramIndex, + Value afterExerciseIndex, + Value afterSetIndex, + Value plannedRestSeconds, + Value adjustedRestSeconds, + Value startedAt, + Value endedAt, + Value skippedAt, + Value rowid, + }); + +final class $$ActiveRestStatesTableReferences + extends + BaseReferences<_$AppDatabase, $ActiveRestStatesTable, ActiveRestState> { + $$ActiveRestStatesTableReferences( + super.$_db, + super.$_table, + super.$_typedResult, + ); + + static $ActiveWorkoutSessionsTable _activeWorkoutSessionIdTable( + _$AppDatabase db, + ) => db.activeWorkoutSessions.createAlias( + 'active_rest_states__active_workout_session_id__active_workout_sessions__id', + ); + + $$ActiveWorkoutSessionsTableProcessedTableManager get activeWorkoutSessionId { + final $_column = $_itemColumn('active_workout_session_id')!; + + final manager = $$ActiveWorkoutSessionsTableTableManager( + $_db, + $_db.activeWorkoutSessions, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull( + _activeWorkoutSessionIdTable($_db), + ); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } +} + +class $$ActiveRestStatesTableFilterComposer + extends Composer<_$AppDatabase, $ActiveRestStatesTable> { + $$ActiveRestStatesTableFilterComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnFilters get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get afterProgramIndex => $composableBuilder( + column: $table.afterProgramIndex, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get afterExerciseIndex => $composableBuilder( + column: $table.afterExerciseIndex, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get afterSetIndex => $composableBuilder( + column: $table.afterSetIndex, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get plannedRestSeconds => $composableBuilder( + column: $table.plannedRestSeconds, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get adjustedRestSeconds => $composableBuilder( + column: $table.adjustedRestSeconds, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get startedAt => $composableBuilder( + column: $table.startedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get endedAt => $composableBuilder( + column: $table.endedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get skippedAt => $composableBuilder( + column: $table.skippedAt, + builder: (column) => ColumnFilters(column), + ); + + $$ActiveWorkoutSessionsTableFilterComposer get activeWorkoutSessionId { + final $$ActiveWorkoutSessionsTableFilterComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.activeWorkoutSessionId, + referencedTable: $db.activeWorkoutSessions, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveWorkoutSessionsTableFilterComposer( + $db: $db, + $table: $db.activeWorkoutSessions, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$ActiveRestStatesTableOrderingComposer + extends Composer<_$AppDatabase, $ActiveRestStatesTable> { + $$ActiveRestStatesTableOrderingComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnOrderings get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get afterProgramIndex => $composableBuilder( + column: $table.afterProgramIndex, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get afterExerciseIndex => $composableBuilder( + column: $table.afterExerciseIndex, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get afterSetIndex => $composableBuilder( + column: $table.afterSetIndex, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get plannedRestSeconds => $composableBuilder( + column: $table.plannedRestSeconds, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get adjustedRestSeconds => $composableBuilder( + column: $table.adjustedRestSeconds, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get startedAt => $composableBuilder( + column: $table.startedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get endedAt => $composableBuilder( + column: $table.endedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get skippedAt => $composableBuilder( + column: $table.skippedAt, + builder: (column) => ColumnOrderings(column), + ); + + $$ActiveWorkoutSessionsTableOrderingComposer get activeWorkoutSessionId { + final $$ActiveWorkoutSessionsTableOrderingComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.activeWorkoutSessionId, + referencedTable: $db.activeWorkoutSessions, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveWorkoutSessionsTableOrderingComposer( + $db: $db, + $table: $db.activeWorkoutSessions, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$ActiveRestStatesTableAnnotationComposer + extends Composer<_$AppDatabase, $ActiveRestStatesTable> { + $$ActiveRestStatesTableAnnotationComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + GeneratedColumn get id => + $composableBuilder(column: $table.id, builder: (column) => column); + + GeneratedColumn get createdAt => + $composableBuilder(column: $table.createdAt, builder: (column) => column); + + GeneratedColumn get updatedAt => + $composableBuilder(column: $table.updatedAt, builder: (column) => column); + + GeneratedColumn get deletedAt => + $composableBuilder(column: $table.deletedAt, builder: (column) => column); + + GeneratedColumn get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => column, + ); + + GeneratedColumn get syncState => + $composableBuilder(column: $table.syncState, builder: (column) => column); + + GeneratedColumn get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => column, + ); + + GeneratedColumn get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => column, + ); + + GeneratedColumn get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => column, + ); + + GeneratedColumn get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => column, + ); + + GeneratedColumn get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => column, + ); + + GeneratedColumn get afterProgramIndex => $composableBuilder( + column: $table.afterProgramIndex, + builder: (column) => column, + ); + + GeneratedColumn get afterExerciseIndex => $composableBuilder( + column: $table.afterExerciseIndex, + builder: (column) => column, + ); + + GeneratedColumn get afterSetIndex => $composableBuilder( + column: $table.afterSetIndex, + builder: (column) => column, + ); + + GeneratedColumn get plannedRestSeconds => $composableBuilder( + column: $table.plannedRestSeconds, + builder: (column) => column, + ); + + GeneratedColumn get adjustedRestSeconds => $composableBuilder( + column: $table.adjustedRestSeconds, + builder: (column) => column, + ); + + GeneratedColumn get startedAt => + $composableBuilder(column: $table.startedAt, builder: (column) => column); + + GeneratedColumn get endedAt => + $composableBuilder(column: $table.endedAt, builder: (column) => column); + + GeneratedColumn get skippedAt => + $composableBuilder(column: $table.skippedAt, builder: (column) => column); + + $$ActiveWorkoutSessionsTableAnnotationComposer get activeWorkoutSessionId { + final $$ActiveWorkoutSessionsTableAnnotationComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.activeWorkoutSessionId, + referencedTable: $db.activeWorkoutSessions, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveWorkoutSessionsTableAnnotationComposer( + $db: $db, + $table: $db.activeWorkoutSessions, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$ActiveRestStatesTableTableManager + extends + RootTableManager< + _$AppDatabase, + $ActiveRestStatesTable, + ActiveRestState, + $$ActiveRestStatesTableFilterComposer, + $$ActiveRestStatesTableOrderingComposer, + $$ActiveRestStatesTableAnnotationComposer, + $$ActiveRestStatesTableCreateCompanionBuilder, + $$ActiveRestStatesTableUpdateCompanionBuilder, + (ActiveRestState, $$ActiveRestStatesTableReferences), + ActiveRestState, + PrefetchHooks Function({bool activeWorkoutSessionId}) + > { + $$ActiveRestStatesTableTableManager( + _$AppDatabase db, + $ActiveRestStatesTable table, + ) : super( + TableManagerState( + db: db, + table: table, + createFilteringComposer: () => + $$ActiveRestStatesTableFilterComposer($db: db, $table: table), + createOrderingComposer: () => + $$ActiveRestStatesTableOrderingComposer($db: db, $table: table), + createComputedFieldComposer: () => + $$ActiveRestStatesTableAnnotationComposer($db: db, $table: table), + updateCompanionCallback: + ({ + Value id = const Value.absent(), + Value createdAt = const Value.absent(), + Value updatedAt = const Value.absent(), + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + Value syncState = const Value.absent(), + Value localRevision = const Value.absent(), + Value originDeviceId = const Value.absent(), + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value activeWorkoutSessionId = const Value.absent(), + Value afterProgramIndex = const Value.absent(), + Value afterExerciseIndex = const Value.absent(), + Value afterSetIndex = const Value.absent(), + Value plannedRestSeconds = const Value.absent(), + Value adjustedRestSeconds = const Value.absent(), + Value startedAt = const Value.absent(), + Value endedAt = const Value.absent(), + Value skippedAt = const Value.absent(), + Value rowid = const Value.absent(), + }) => ActiveRestStatesCompanion( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + activeWorkoutSessionId: activeWorkoutSessionId, + afterProgramIndex: afterProgramIndex, + afterExerciseIndex: afterExerciseIndex, + afterSetIndex: afterSetIndex, + plannedRestSeconds: plannedRestSeconds, + adjustedRestSeconds: adjustedRestSeconds, + startedAt: startedAt, + endedAt: endedAt, + skippedAt: skippedAt, + rowid: rowid, + ), + createCompanionCallback: + ({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + required String activeWorkoutSessionId, + required int afterProgramIndex, + required int afterExerciseIndex, + required int afterSetIndex, + required int plannedRestSeconds, + required int adjustedRestSeconds, + required DateTime startedAt, + Value endedAt = const Value.absent(), + Value skippedAt = const Value.absent(), + Value rowid = const Value.absent(), + }) => ActiveRestStatesCompanion.insert( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + activeWorkoutSessionId: activeWorkoutSessionId, + afterProgramIndex: afterProgramIndex, + afterExerciseIndex: afterExerciseIndex, + afterSetIndex: afterSetIndex, + plannedRestSeconds: plannedRestSeconds, + adjustedRestSeconds: adjustedRestSeconds, + startedAt: startedAt, + endedAt: endedAt, + skippedAt: skippedAt, + rowid: rowid, + ), + withReferenceMapper: (p0) => p0 + .map( + (e) => ( + e.readTable(table), + $$ActiveRestStatesTableReferences(db, table, e), + ), + ) + .toList(), + prefetchHooksCallback: ({activeWorkoutSessionId = false}) { + return PrefetchHooks( + db: db, + explicitlyWatchedTables: [], + addJoins: + < + T extends TableManagerState< + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic + > + >(state) { + if (activeWorkoutSessionId) { + state = + state.withJoin( + currentTable: table, + currentColumn: table.activeWorkoutSessionId, + referencedTable: + $$ActiveRestStatesTableReferences + ._activeWorkoutSessionIdTable(db), + referencedColumn: + $$ActiveRestStatesTableReferences + ._activeWorkoutSessionIdTable(db) + .id, + ) + as T; + } + + return state; + }, + getPrefetchedDataCallback: (items) async { + return []; + }, + ); + }, + ), + ); +} + +typedef $$ActiveRestStatesTableProcessedTableManager = + ProcessedTableManager< + _$AppDatabase, + $ActiveRestStatesTable, + ActiveRestState, + $$ActiveRestStatesTableFilterComposer, + $$ActiveRestStatesTableOrderingComposer, + $$ActiveRestStatesTableAnnotationComposer, + $$ActiveRestStatesTableCreateCompanionBuilder, + $$ActiveRestStatesTableUpdateCompanionBuilder, + (ActiveRestState, $$ActiveRestStatesTableReferences), + ActiveRestState, + PrefetchHooks Function({bool activeWorkoutSessionId}) + >; +typedef $$ActiveSetResultsTableCreateCompanionBuilder = + ActiveSetResultsCompanion Function({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt, + Value schemaVersion, + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + required String activeWorkoutSessionId, + required String programSnapshotId, + required String exerciseSnapshotId, + required int programIndex, + required int exerciseIndex, + required int setIndex, + Value startedAt, + Value completedAt, + Value actualTimeMs, + Value actualReps, + Value actualScore, + Value scoreLabelSnapshot, + Value scoreUnitSnapshot, + Value note, + Value rowid, + }); +typedef $$ActiveSetResultsTableUpdateCompanionBuilder = + ActiveSetResultsCompanion Function({ + Value id, + Value createdAt, + Value updatedAt, + Value deletedAt, + Value schemaVersion, + Value syncState, + Value localRevision, + Value originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value activeWorkoutSessionId, + Value programSnapshotId, + Value exerciseSnapshotId, + Value programIndex, + Value exerciseIndex, + Value setIndex, + Value startedAt, + Value completedAt, + Value actualTimeMs, + Value actualReps, + Value actualScore, + Value scoreLabelSnapshot, + Value scoreUnitSnapshot, + Value note, + Value rowid, + }); + +final class $$ActiveSetResultsTableReferences + extends + BaseReferences<_$AppDatabase, $ActiveSetResultsTable, ActiveSetResult> { + $$ActiveSetResultsTableReferences( + super.$_db, + super.$_table, + super.$_typedResult, + ); + + static $ActiveWorkoutSessionsTable _activeWorkoutSessionIdTable( + _$AppDatabase db, + ) => db.activeWorkoutSessions.createAlias( + 'active_set_results__active_workout_session_id__active_workout_sessions__id', + ); + + $$ActiveWorkoutSessionsTableProcessedTableManager get activeWorkoutSessionId { + final $_column = $_itemColumn('active_workout_session_id')!; + + final manager = $$ActiveWorkoutSessionsTableTableManager( + $_db, + $_db.activeWorkoutSessions, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull( + _activeWorkoutSessionIdTable($_db), + ); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } +} + +class $$ActiveSetResultsTableFilterComposer + extends Composer<_$AppDatabase, $ActiveSetResultsTable> { + $$ActiveSetResultsTableFilterComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnFilters get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get programSnapshotId => $composableBuilder( + column: $table.programSnapshotId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get exerciseSnapshotId => $composableBuilder( + column: $table.exerciseSnapshotId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get programIndex => $composableBuilder( + column: $table.programIndex, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get exerciseIndex => $composableBuilder( + column: $table.exerciseIndex, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get setIndex => $composableBuilder( + column: $table.setIndex, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get startedAt => $composableBuilder( + column: $table.startedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get completedAt => $composableBuilder( + column: $table.completedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get actualTimeMs => $composableBuilder( + column: $table.actualTimeMs, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get actualReps => $composableBuilder( + column: $table.actualReps, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get actualScore => $composableBuilder( + column: $table.actualScore, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get scoreLabelSnapshot => $composableBuilder( + column: $table.scoreLabelSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get scoreUnitSnapshot => $composableBuilder( + column: $table.scoreUnitSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get note => $composableBuilder( + column: $table.note, + builder: (column) => ColumnFilters(column), + ); + + $$ActiveWorkoutSessionsTableFilterComposer get activeWorkoutSessionId { + final $$ActiveWorkoutSessionsTableFilterComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.activeWorkoutSessionId, + referencedTable: $db.activeWorkoutSessions, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveWorkoutSessionsTableFilterComposer( + $db: $db, + $table: $db.activeWorkoutSessions, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$ActiveSetResultsTableOrderingComposer + extends Composer<_$AppDatabase, $ActiveSetResultsTable> { + $$ActiveSetResultsTableOrderingComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnOrderings get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get programSnapshotId => $composableBuilder( + column: $table.programSnapshotId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get exerciseSnapshotId => $composableBuilder( + column: $table.exerciseSnapshotId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get programIndex => $composableBuilder( + column: $table.programIndex, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get exerciseIndex => $composableBuilder( + column: $table.exerciseIndex, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get setIndex => $composableBuilder( + column: $table.setIndex, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get startedAt => $composableBuilder( + column: $table.startedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get completedAt => $composableBuilder( + column: $table.completedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get actualTimeMs => $composableBuilder( + column: $table.actualTimeMs, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get actualReps => $composableBuilder( + column: $table.actualReps, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get actualScore => $composableBuilder( + column: $table.actualScore, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get scoreLabelSnapshot => $composableBuilder( + column: $table.scoreLabelSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get scoreUnitSnapshot => $composableBuilder( + column: $table.scoreUnitSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get note => $composableBuilder( + column: $table.note, + builder: (column) => ColumnOrderings(column), + ); + + $$ActiveWorkoutSessionsTableOrderingComposer get activeWorkoutSessionId { + final $$ActiveWorkoutSessionsTableOrderingComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.activeWorkoutSessionId, + referencedTable: $db.activeWorkoutSessions, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveWorkoutSessionsTableOrderingComposer( + $db: $db, + $table: $db.activeWorkoutSessions, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$ActiveSetResultsTableAnnotationComposer + extends Composer<_$AppDatabase, $ActiveSetResultsTable> { + $$ActiveSetResultsTableAnnotationComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + GeneratedColumn get id => + $composableBuilder(column: $table.id, builder: (column) => column); + + GeneratedColumn get createdAt => + $composableBuilder(column: $table.createdAt, builder: (column) => column); + + GeneratedColumn get updatedAt => + $composableBuilder(column: $table.updatedAt, builder: (column) => column); + + GeneratedColumn get deletedAt => + $composableBuilder(column: $table.deletedAt, builder: (column) => column); + + GeneratedColumn get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => column, + ); + + GeneratedColumn get syncState => + $composableBuilder(column: $table.syncState, builder: (column) => column); + + GeneratedColumn get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => column, + ); + + GeneratedColumn get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => column, + ); + + GeneratedColumn get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => column, + ); + + GeneratedColumn get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => column, + ); + + GeneratedColumn get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => column, + ); + + GeneratedColumn get programSnapshotId => $composableBuilder( + column: $table.programSnapshotId, + builder: (column) => column, + ); + + GeneratedColumn get exerciseSnapshotId => $composableBuilder( + column: $table.exerciseSnapshotId, + builder: (column) => column, + ); + + GeneratedColumn get programIndex => $composableBuilder( + column: $table.programIndex, + builder: (column) => column, + ); + + GeneratedColumn get exerciseIndex => $composableBuilder( + column: $table.exerciseIndex, + builder: (column) => column, + ); + + GeneratedColumn get setIndex => + $composableBuilder(column: $table.setIndex, builder: (column) => column); + + GeneratedColumn get startedAt => + $composableBuilder(column: $table.startedAt, builder: (column) => column); + + GeneratedColumn get completedAt => $composableBuilder( + column: $table.completedAt, + builder: (column) => column, + ); + + GeneratedColumn get actualTimeMs => $composableBuilder( + column: $table.actualTimeMs, + builder: (column) => column, + ); + + GeneratedColumn get actualReps => $composableBuilder( + column: $table.actualReps, + builder: (column) => column, + ); + + GeneratedColumn get actualScore => $composableBuilder( + column: $table.actualScore, + builder: (column) => column, + ); + + GeneratedColumn get scoreLabelSnapshot => $composableBuilder( + column: $table.scoreLabelSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get scoreUnitSnapshot => $composableBuilder( + column: $table.scoreUnitSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get note => + $composableBuilder(column: $table.note, builder: (column) => column); + + $$ActiveWorkoutSessionsTableAnnotationComposer get activeWorkoutSessionId { + final $$ActiveWorkoutSessionsTableAnnotationComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.activeWorkoutSessionId, + referencedTable: $db.activeWorkoutSessions, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveWorkoutSessionsTableAnnotationComposer( + $db: $db, + $table: $db.activeWorkoutSessions, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$ActiveSetResultsTableTableManager + extends + RootTableManager< + _$AppDatabase, + $ActiveSetResultsTable, + ActiveSetResult, + $$ActiveSetResultsTableFilterComposer, + $$ActiveSetResultsTableOrderingComposer, + $$ActiveSetResultsTableAnnotationComposer, + $$ActiveSetResultsTableCreateCompanionBuilder, + $$ActiveSetResultsTableUpdateCompanionBuilder, + (ActiveSetResult, $$ActiveSetResultsTableReferences), + ActiveSetResult, + PrefetchHooks Function({bool activeWorkoutSessionId}) + > { + $$ActiveSetResultsTableTableManager( + _$AppDatabase db, + $ActiveSetResultsTable table, + ) : super( + TableManagerState( + db: db, + table: table, + createFilteringComposer: () => + $$ActiveSetResultsTableFilterComposer($db: db, $table: table), + createOrderingComposer: () => + $$ActiveSetResultsTableOrderingComposer($db: db, $table: table), + createComputedFieldComposer: () => + $$ActiveSetResultsTableAnnotationComposer($db: db, $table: table), + updateCompanionCallback: + ({ + Value id = const Value.absent(), + Value createdAt = const Value.absent(), + Value updatedAt = const Value.absent(), + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + Value syncState = const Value.absent(), + Value localRevision = const Value.absent(), + Value originDeviceId = const Value.absent(), + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value activeWorkoutSessionId = const Value.absent(), + Value programSnapshotId = const Value.absent(), + Value exerciseSnapshotId = const Value.absent(), + Value programIndex = const Value.absent(), + Value exerciseIndex = const Value.absent(), + Value setIndex = const Value.absent(), + Value startedAt = const Value.absent(), + Value completedAt = const Value.absent(), + Value actualTimeMs = const Value.absent(), + Value actualReps = const Value.absent(), + Value actualScore = const Value.absent(), + Value scoreLabelSnapshot = const Value.absent(), + Value scoreUnitSnapshot = const Value.absent(), + Value note = const Value.absent(), + Value rowid = const Value.absent(), + }) => ActiveSetResultsCompanion( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + activeWorkoutSessionId: activeWorkoutSessionId, + programSnapshotId: programSnapshotId, + exerciseSnapshotId: exerciseSnapshotId, + programIndex: programIndex, + exerciseIndex: exerciseIndex, + setIndex: setIndex, + startedAt: startedAt, + completedAt: completedAt, + actualTimeMs: actualTimeMs, + actualReps: actualReps, + actualScore: actualScore, + scoreLabelSnapshot: scoreLabelSnapshot, + scoreUnitSnapshot: scoreUnitSnapshot, + note: note, + rowid: rowid, + ), + createCompanionCallback: + ({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + required String activeWorkoutSessionId, + required String programSnapshotId, + required String exerciseSnapshotId, + required int programIndex, + required int exerciseIndex, + required int setIndex, + Value startedAt = const Value.absent(), + Value completedAt = const Value.absent(), + Value actualTimeMs = const Value.absent(), + Value actualReps = const Value.absent(), + Value actualScore = const Value.absent(), + Value scoreLabelSnapshot = const Value.absent(), + Value scoreUnitSnapshot = const Value.absent(), + Value note = const Value.absent(), + Value rowid = const Value.absent(), + }) => ActiveSetResultsCompanion.insert( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + activeWorkoutSessionId: activeWorkoutSessionId, + programSnapshotId: programSnapshotId, + exerciseSnapshotId: exerciseSnapshotId, + programIndex: programIndex, + exerciseIndex: exerciseIndex, + setIndex: setIndex, + startedAt: startedAt, + completedAt: completedAt, + actualTimeMs: actualTimeMs, + actualReps: actualReps, + actualScore: actualScore, + scoreLabelSnapshot: scoreLabelSnapshot, + scoreUnitSnapshot: scoreUnitSnapshot, + note: note, + rowid: rowid, + ), + withReferenceMapper: (p0) => p0 + .map( + (e) => ( + e.readTable(table), + $$ActiveSetResultsTableReferences(db, table, e), + ), + ) + .toList(), + prefetchHooksCallback: ({activeWorkoutSessionId = false}) { + return PrefetchHooks( + db: db, + explicitlyWatchedTables: [], + addJoins: + < + T extends TableManagerState< + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic + > + >(state) { + if (activeWorkoutSessionId) { + state = + state.withJoin( + currentTable: table, + currentColumn: table.activeWorkoutSessionId, + referencedTable: + $$ActiveSetResultsTableReferences + ._activeWorkoutSessionIdTable(db), + referencedColumn: + $$ActiveSetResultsTableReferences + ._activeWorkoutSessionIdTable(db) + .id, + ) + as T; + } + + return state; + }, + getPrefetchedDataCallback: (items) async { + return []; + }, + ); + }, + ), + ); +} + +typedef $$ActiveSetResultsTableProcessedTableManager = + ProcessedTableManager< + _$AppDatabase, + $ActiveSetResultsTable, + ActiveSetResult, + $$ActiveSetResultsTableFilterComposer, + $$ActiveSetResultsTableOrderingComposer, + $$ActiveSetResultsTableAnnotationComposer, + $$ActiveSetResultsTableCreateCompanionBuilder, + $$ActiveSetResultsTableUpdateCompanionBuilder, + (ActiveSetResult, $$ActiveSetResultsTableReferences), + ActiveSetResult, + PrefetchHooks Function({bool activeWorkoutSessionId}) + >; +typedef $$ChangeLogEntriesTableCreateCompanionBuilder = + ChangeLogEntriesCompanion Function({ + required String id, + required String entityType, + required String entityId, + required String operation, + Value payloadHash, + required int localRevision, + required String originDeviceId, + required DateTime createdAt, + Value syncedAt, + Value rowid, + }); +typedef $$ChangeLogEntriesTableUpdateCompanionBuilder = + ChangeLogEntriesCompanion Function({ + Value id, + Value entityType, + Value entityId, + Value operation, + Value payloadHash, + Value localRevision, + Value originDeviceId, + Value createdAt, + Value syncedAt, + Value rowid, + }); + +class $$ChangeLogEntriesTableFilterComposer + extends Composer<_$AppDatabase, $ChangeLogEntriesTable> { + $$ChangeLogEntriesTableFilterComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnFilters get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get entityType => $composableBuilder( + column: $table.entityType, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get entityId => $composableBuilder( + column: $table.entityId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get operation => $composableBuilder( + column: $table.operation, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get payloadHash => $composableBuilder( + column: $table.payloadHash, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get syncedAt => $composableBuilder( + column: $table.syncedAt, + builder: (column) => ColumnFilters(column), + ); +} + +class $$ChangeLogEntriesTableOrderingComposer + extends Composer<_$AppDatabase, $ChangeLogEntriesTable> { + $$ChangeLogEntriesTableOrderingComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnOrderings get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get entityType => $composableBuilder( + column: $table.entityType, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get entityId => $composableBuilder( + column: $table.entityId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get operation => $composableBuilder( + column: $table.operation, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get payloadHash => $composableBuilder( + column: $table.payloadHash, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get syncedAt => $composableBuilder( + column: $table.syncedAt, + builder: (column) => ColumnOrderings(column), + ); +} + +class $$ChangeLogEntriesTableAnnotationComposer + extends Composer<_$AppDatabase, $ChangeLogEntriesTable> { + $$ChangeLogEntriesTableAnnotationComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + GeneratedColumn get id => + $composableBuilder(column: $table.id, builder: (column) => column); + + GeneratedColumn get entityType => $composableBuilder( + column: $table.entityType, + builder: (column) => column, + ); + + GeneratedColumn get entityId => + $composableBuilder(column: $table.entityId, builder: (column) => column); + + GeneratedColumn get operation => + $composableBuilder(column: $table.operation, builder: (column) => column); + + GeneratedColumn get payloadHash => $composableBuilder( + column: $table.payloadHash, + builder: (column) => column, + ); + + GeneratedColumn get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => column, + ); + + GeneratedColumn get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => column, + ); + + GeneratedColumn get createdAt => + $composableBuilder(column: $table.createdAt, builder: (column) => column); + + GeneratedColumn get syncedAt => + $composableBuilder(column: $table.syncedAt, builder: (column) => column); +} + +class $$ChangeLogEntriesTableTableManager + extends + RootTableManager< + _$AppDatabase, + $ChangeLogEntriesTable, + ChangeLogEntry, + $$ChangeLogEntriesTableFilterComposer, + $$ChangeLogEntriesTableOrderingComposer, + $$ChangeLogEntriesTableAnnotationComposer, + $$ChangeLogEntriesTableCreateCompanionBuilder, + $$ChangeLogEntriesTableUpdateCompanionBuilder, + ( + ChangeLogEntry, + BaseReferences< + _$AppDatabase, + $ChangeLogEntriesTable, + ChangeLogEntry + >, + ), + ChangeLogEntry, + PrefetchHooks Function() + > { + $$ChangeLogEntriesTableTableManager( + _$AppDatabase db, + $ChangeLogEntriesTable table, + ) : super( + TableManagerState( + db: db, + table: table, + createFilteringComposer: () => + $$ChangeLogEntriesTableFilterComposer($db: db, $table: table), + createOrderingComposer: () => + $$ChangeLogEntriesTableOrderingComposer($db: db, $table: table), + createComputedFieldComposer: () => + $$ChangeLogEntriesTableAnnotationComposer($db: db, $table: table), + updateCompanionCallback: + ({ + Value id = const Value.absent(), + Value entityType = const Value.absent(), + Value entityId = const Value.absent(), + Value operation = const Value.absent(), + Value payloadHash = const Value.absent(), + Value localRevision = const Value.absent(), + Value originDeviceId = const Value.absent(), + Value createdAt = const Value.absent(), + Value syncedAt = const Value.absent(), + Value rowid = const Value.absent(), + }) => ChangeLogEntriesCompanion( + id: id, + entityType: entityType, + entityId: entityId, + operation: operation, + payloadHash: payloadHash, + localRevision: localRevision, + originDeviceId: originDeviceId, + createdAt: createdAt, + syncedAt: syncedAt, + rowid: rowid, + ), + createCompanionCallback: + ({ + required String id, + required String entityType, + required String entityId, + required String operation, + Value payloadHash = const Value.absent(), + required int localRevision, + required String originDeviceId, + required DateTime createdAt, + Value syncedAt = const Value.absent(), + Value rowid = const Value.absent(), + }) => ChangeLogEntriesCompanion.insert( + id: id, + entityType: entityType, + entityId: entityId, + operation: operation, + payloadHash: payloadHash, + localRevision: localRevision, + originDeviceId: originDeviceId, + createdAt: createdAt, + syncedAt: syncedAt, + rowid: rowid, + ), + withReferenceMapper: (p0) => p0 + .map((e) => (e.readTable(table), BaseReferences(db, table, e))) + .toList(), + prefetchHooksCallback: null, + ), + ); +} + +typedef $$ChangeLogEntriesTableProcessedTableManager = + ProcessedTableManager< + _$AppDatabase, + $ChangeLogEntriesTable, + ChangeLogEntry, + $$ChangeLogEntriesTableFilterComposer, + $$ChangeLogEntriesTableOrderingComposer, + $$ChangeLogEntriesTableAnnotationComposer, + $$ChangeLogEntriesTableCreateCompanionBuilder, + $$ChangeLogEntriesTableUpdateCompanionBuilder, + ( + ChangeLogEntry, + BaseReferences<_$AppDatabase, $ChangeLogEntriesTable, ChangeLogEntry>, + ), + ChangeLogEntry, + PrefetchHooks Function() + >; +typedef $$MediaAssetsTableCreateCompanionBuilder = + MediaAssetsCompanion Function({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt, + Value schemaVersion, + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + required String kind, + required String localUri, + Value mimeType, + Value sizeBytes, + Value width, + Value height, + Value durationMs, + Value checksum, + Value remoteUri, + Value thumbnailLocalUri, + Value rowid, + }); +typedef $$MediaAssetsTableUpdateCompanionBuilder = + MediaAssetsCompanion Function({ + Value id, + Value createdAt, + Value updatedAt, + Value deletedAt, + Value schemaVersion, + Value syncState, + Value localRevision, + Value originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value kind, + Value localUri, + Value mimeType, + Value sizeBytes, + Value width, + Value height, + Value durationMs, + Value checksum, + Value remoteUri, + Value thumbnailLocalUri, + Value rowid, + }); + +final class $$MediaAssetsTableReferences + extends BaseReferences<_$AppDatabase, $MediaAssetsTable, MediaAsset> { + $$MediaAssetsTableReferences(super.$_db, super.$_table, super.$_typedResult); + + static MultiTypedResultKey<$ExercisesTable, List> + _exerciseImageReferencesTable(_$AppDatabase db) => + MultiTypedResultKey.fromTable( + db.exercises, + aliasName: 'media_assets__id__exercises__image_media_id', + ); + + $$ExercisesTableProcessedTableManager get exerciseImageReferences { + final manager = $$ExercisesTableTableManager( + $_db, + $_db.exercises, + ).filter((f) => f.imageMediaId.id.sqlEquals($_itemColumn('id')!)); + + final cache = $_typedResult.readTableOrNull( + _exerciseImageReferencesTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } + + static MultiTypedResultKey<$ExercisesTable, List> + _exerciseVideoReferencesTable(_$AppDatabase db) => + MultiTypedResultKey.fromTable( + db.exercises, + aliasName: 'media_assets__id__exercises__video_media_id', + ); + + $$ExercisesTableProcessedTableManager get exerciseVideoReferences { + final manager = $$ExercisesTableTableManager( + $_db, + $_db.exercises, + ).filter((f) => f.videoMediaId.id.sqlEquals($_itemColumn('id')!)); + + final cache = $_typedResult.readTableOrNull( + _exerciseVideoReferencesTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } + + static MultiTypedResultKey<$ProgramExercisesTable, List> + _programExerciseImageSnapshotReferencesTable( + _$AppDatabase db, + ) => MultiTypedResultKey.fromTable( + db.programExercises, + aliasName: + 'media_assets__id__program_exercises__exercise_image_media_id_snapshot', + ); + + $$ProgramExercisesTableProcessedTableManager + get programExerciseImageSnapshotReferences { + final manager = + $$ProgramExercisesTableTableManager($_db, $_db.programExercises).filter( + (f) => f.exerciseImageMediaIdSnapshot.id.sqlEquals( + $_itemColumn('id')!, + ), + ); + + final cache = $_typedResult.readTableOrNull( + _programExerciseImageSnapshotReferencesTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } + + static MultiTypedResultKey<$ProgramExercisesTable, List> + _programExerciseVideoSnapshotReferencesTable( + _$AppDatabase db, + ) => MultiTypedResultKey.fromTable( + db.programExercises, + aliasName: + 'media_assets__id__program_exercises__exercise_video_media_id_snapshot', + ); + + $$ProgramExercisesTableProcessedTableManager + get programExerciseVideoSnapshotReferences { + final manager = + $$ProgramExercisesTableTableManager($_db, $_db.programExercises).filter( + (f) => f.exerciseVideoMediaIdSnapshot.id.sqlEquals( + $_itemColumn('id')!, + ), + ); + + final cache = $_typedResult.readTableOrNull( + _programExerciseVideoSnapshotReferencesTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } +} + +class $$MediaAssetsTableFilterComposer + extends Composer<_$AppDatabase, $MediaAssetsTable> { + $$MediaAssetsTableFilterComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnFilters get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get kind => $composableBuilder( + column: $table.kind, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localUri => $composableBuilder( + column: $table.localUri, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get mimeType => $composableBuilder( + column: $table.mimeType, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get sizeBytes => $composableBuilder( + column: $table.sizeBytes, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get width => $composableBuilder( + column: $table.width, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get height => $composableBuilder( + column: $table.height, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get durationMs => $composableBuilder( + column: $table.durationMs, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get checksum => $composableBuilder( + column: $table.checksum, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get remoteUri => $composableBuilder( + column: $table.remoteUri, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get thumbnailLocalUri => $composableBuilder( + column: $table.thumbnailLocalUri, + builder: (column) => ColumnFilters(column), + ); + + Expression exerciseImageReferences( + Expression Function($$ExercisesTableFilterComposer f) f, + ) { + final $$ExercisesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.exercises, + getReferencedColumn: (t) => t.imageMediaId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ExercisesTableFilterComposer( + $db: $db, + $table: $db.exercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression exerciseVideoReferences( + Expression Function($$ExercisesTableFilterComposer f) f, + ) { + final $$ExercisesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.exercises, + getReferencedColumn: (t) => t.videoMediaId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ExercisesTableFilterComposer( + $db: $db, + $table: $db.exercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression programExerciseImageSnapshotReferences( + Expression Function($$ProgramExercisesTableFilterComposer f) f, + ) { + final $$ProgramExercisesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.programExercises, + getReferencedColumn: (t) => t.exerciseImageMediaIdSnapshot, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramExercisesTableFilterComposer( + $db: $db, + $table: $db.programExercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression programExerciseVideoSnapshotReferences( + Expression Function($$ProgramExercisesTableFilterComposer f) f, + ) { + final $$ProgramExercisesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.programExercises, + getReferencedColumn: (t) => t.exerciseVideoMediaIdSnapshot, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramExercisesTableFilterComposer( + $db: $db, + $table: $db.programExercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$MediaAssetsTableOrderingComposer + extends Composer<_$AppDatabase, $MediaAssetsTable> { + $$MediaAssetsTableOrderingComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnOrderings get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get kind => $composableBuilder( + column: $table.kind, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localUri => $composableBuilder( + column: $table.localUri, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get mimeType => $composableBuilder( + column: $table.mimeType, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get sizeBytes => $composableBuilder( + column: $table.sizeBytes, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get width => $composableBuilder( + column: $table.width, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get height => $composableBuilder( + column: $table.height, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get durationMs => $composableBuilder( + column: $table.durationMs, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get checksum => $composableBuilder( + column: $table.checksum, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get remoteUri => $composableBuilder( + column: $table.remoteUri, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get thumbnailLocalUri => $composableBuilder( + column: $table.thumbnailLocalUri, + builder: (column) => ColumnOrderings(column), + ); +} + +class $$MediaAssetsTableAnnotationComposer + extends Composer<_$AppDatabase, $MediaAssetsTable> { + $$MediaAssetsTableAnnotationComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + GeneratedColumn get id => + $composableBuilder(column: $table.id, builder: (column) => column); + + GeneratedColumn get createdAt => + $composableBuilder(column: $table.createdAt, builder: (column) => column); + + GeneratedColumn get updatedAt => + $composableBuilder(column: $table.updatedAt, builder: (column) => column); + + GeneratedColumn get deletedAt => + $composableBuilder(column: $table.deletedAt, builder: (column) => column); + + GeneratedColumn get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => column, + ); + + GeneratedColumn get syncState => + $composableBuilder(column: $table.syncState, builder: (column) => column); + + GeneratedColumn get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => column, + ); + + GeneratedColumn get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => column, + ); + + GeneratedColumn get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => column, + ); + + GeneratedColumn get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => column, + ); + + GeneratedColumn get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => column, + ); + + GeneratedColumn get kind => + $composableBuilder(column: $table.kind, builder: (column) => column); + + GeneratedColumn get localUri => + $composableBuilder(column: $table.localUri, builder: (column) => column); + + GeneratedColumn get mimeType => + $composableBuilder(column: $table.mimeType, builder: (column) => column); + + GeneratedColumn get sizeBytes => + $composableBuilder(column: $table.sizeBytes, builder: (column) => column); + + GeneratedColumn get width => + $composableBuilder(column: $table.width, builder: (column) => column); + + GeneratedColumn get height => + $composableBuilder(column: $table.height, builder: (column) => column); + + GeneratedColumn get durationMs => $composableBuilder( + column: $table.durationMs, + builder: (column) => column, + ); + + GeneratedColumn get checksum => + $composableBuilder(column: $table.checksum, builder: (column) => column); + + GeneratedColumn get remoteUri => + $composableBuilder(column: $table.remoteUri, builder: (column) => column); + + GeneratedColumn get thumbnailLocalUri => $composableBuilder( + column: $table.thumbnailLocalUri, + builder: (column) => column, + ); + + Expression exerciseImageReferences( + Expression Function($$ExercisesTableAnnotationComposer a) f, + ) { + final $$ExercisesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.exercises, + getReferencedColumn: (t) => t.imageMediaId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ExercisesTableAnnotationComposer( + $db: $db, + $table: $db.exercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression exerciseVideoReferences( + Expression Function($$ExercisesTableAnnotationComposer a) f, + ) { + final $$ExercisesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.exercises, + getReferencedColumn: (t) => t.videoMediaId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ExercisesTableAnnotationComposer( + $db: $db, + $table: $db.exercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression programExerciseImageSnapshotReferences( + Expression Function($$ProgramExercisesTableAnnotationComposer a) f, + ) { + final $$ProgramExercisesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.programExercises, + getReferencedColumn: (t) => t.exerciseImageMediaIdSnapshot, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramExercisesTableAnnotationComposer( + $db: $db, + $table: $db.programExercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression programExerciseVideoSnapshotReferences( + Expression Function($$ProgramExercisesTableAnnotationComposer a) f, + ) { + final $$ProgramExercisesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.programExercises, + getReferencedColumn: (t) => t.exerciseVideoMediaIdSnapshot, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramExercisesTableAnnotationComposer( + $db: $db, + $table: $db.programExercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$MediaAssetsTableTableManager + extends + RootTableManager< + _$AppDatabase, + $MediaAssetsTable, + MediaAsset, + $$MediaAssetsTableFilterComposer, + $$MediaAssetsTableOrderingComposer, + $$MediaAssetsTableAnnotationComposer, + $$MediaAssetsTableCreateCompanionBuilder, + $$MediaAssetsTableUpdateCompanionBuilder, + (MediaAsset, $$MediaAssetsTableReferences), + MediaAsset, + PrefetchHooks Function({ + bool exerciseImageReferences, + bool exerciseVideoReferences, + bool programExerciseImageSnapshotReferences, + bool programExerciseVideoSnapshotReferences, + }) + > { + $$MediaAssetsTableTableManager(_$AppDatabase db, $MediaAssetsTable table) + : super( + TableManagerState( + db: db, + table: table, + createFilteringComposer: () => + $$MediaAssetsTableFilterComposer($db: db, $table: table), + createOrderingComposer: () => + $$MediaAssetsTableOrderingComposer($db: db, $table: table), + createComputedFieldComposer: () => + $$MediaAssetsTableAnnotationComposer($db: db, $table: table), + updateCompanionCallback: + ({ + Value id = const Value.absent(), + Value createdAt = const Value.absent(), + Value updatedAt = const Value.absent(), + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + Value syncState = const Value.absent(), + Value localRevision = const Value.absent(), + Value originDeviceId = const Value.absent(), + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value kind = const Value.absent(), + Value localUri = const Value.absent(), + Value mimeType = const Value.absent(), + Value sizeBytes = const Value.absent(), + Value width = const Value.absent(), + Value height = const Value.absent(), + Value durationMs = const Value.absent(), + Value checksum = const Value.absent(), + Value remoteUri = const Value.absent(), + Value thumbnailLocalUri = const Value.absent(), + Value rowid = const Value.absent(), + }) => MediaAssetsCompanion( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + kind: kind, + localUri: localUri, + mimeType: mimeType, + sizeBytes: sizeBytes, + width: width, + height: height, + durationMs: durationMs, + checksum: checksum, + remoteUri: remoteUri, + thumbnailLocalUri: thumbnailLocalUri, + rowid: rowid, + ), + createCompanionCallback: + ({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + required String kind, + required String localUri, + Value mimeType = const Value.absent(), + Value sizeBytes = const Value.absent(), + Value width = const Value.absent(), + Value height = const Value.absent(), + Value durationMs = const Value.absent(), + Value checksum = const Value.absent(), + Value remoteUri = const Value.absent(), + Value thumbnailLocalUri = const Value.absent(), + Value rowid = const Value.absent(), + }) => MediaAssetsCompanion.insert( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + kind: kind, + localUri: localUri, + mimeType: mimeType, + sizeBytes: sizeBytes, + width: width, + height: height, + durationMs: durationMs, + checksum: checksum, + remoteUri: remoteUri, + thumbnailLocalUri: thumbnailLocalUri, + rowid: rowid, + ), + withReferenceMapper: (p0) => p0 + .map( + (e) => ( + e.readTable(table), + $$MediaAssetsTableReferences(db, table, e), + ), + ) + .toList(), + prefetchHooksCallback: + ({ + exerciseImageReferences = false, + exerciseVideoReferences = false, + programExerciseImageSnapshotReferences = false, + programExerciseVideoSnapshotReferences = false, + }) { + return PrefetchHooks( + db: db, + explicitlyWatchedTables: [ + if (exerciseImageReferences) db.exercises, + if (exerciseVideoReferences) db.exercises, + if (programExerciseImageSnapshotReferences) + db.programExercises, + if (programExerciseVideoSnapshotReferences) + db.programExercises, + ], + addJoins: null, + getPrefetchedDataCallback: (items) async { + return [ + if (exerciseImageReferences) + await $_getPrefetchedData< + MediaAsset, + $MediaAssetsTable, + Exercise + >( + currentTable: table, + referencedTable: $$MediaAssetsTableReferences + ._exerciseImageReferencesTable(db), + managerFromTypedResult: (p0) => + $$MediaAssetsTableReferences( + db, + table, + p0, + ).exerciseImageReferences, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => e.imageMediaId == item.id, + ), + typedResults: items, + ), + if (exerciseVideoReferences) + await $_getPrefetchedData< + MediaAsset, + $MediaAssetsTable, + Exercise + >( + currentTable: table, + referencedTable: $$MediaAssetsTableReferences + ._exerciseVideoReferencesTable(db), + managerFromTypedResult: (p0) => + $$MediaAssetsTableReferences( + db, + table, + p0, + ).exerciseVideoReferences, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => e.videoMediaId == item.id, + ), + typedResults: items, + ), + if (programExerciseImageSnapshotReferences) + await $_getPrefetchedData< + MediaAsset, + $MediaAssetsTable, + ProgramExercise + >( + currentTable: table, + referencedTable: $$MediaAssetsTableReferences + ._programExerciseImageSnapshotReferencesTable(db), + managerFromTypedResult: (p0) => + $$MediaAssetsTableReferences( + db, + table, + p0, + ).programExerciseImageSnapshotReferences, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => + e.exerciseImageMediaIdSnapshot == item.id, + ), + typedResults: items, + ), + if (programExerciseVideoSnapshotReferences) + await $_getPrefetchedData< + MediaAsset, + $MediaAssetsTable, + ProgramExercise + >( + currentTable: table, + referencedTable: $$MediaAssetsTableReferences + ._programExerciseVideoSnapshotReferencesTable(db), + managerFromTypedResult: (p0) => + $$MediaAssetsTableReferences( + db, + table, + p0, + ).programExerciseVideoSnapshotReferences, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => + e.exerciseVideoMediaIdSnapshot == item.id, + ), + typedResults: items, + ), + ]; + }, + ); + }, + ), + ); +} + +typedef $$MediaAssetsTableProcessedTableManager = + ProcessedTableManager< + _$AppDatabase, + $MediaAssetsTable, + MediaAsset, + $$MediaAssetsTableFilterComposer, + $$MediaAssetsTableOrderingComposer, + $$MediaAssetsTableAnnotationComposer, + $$MediaAssetsTableCreateCompanionBuilder, + $$MediaAssetsTableUpdateCompanionBuilder, + (MediaAsset, $$MediaAssetsTableReferences), + MediaAsset, + PrefetchHooks Function({ + bool exerciseImageReferences, + bool exerciseVideoReferences, + bool programExerciseImageSnapshotReferences, + bool programExerciseVideoSnapshotReferences, + }) + >; +typedef $$ExercisesTableCreateCompanionBuilder = + ExercisesCompanion Function({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt, + Value schemaVersion, + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + required String name, + Value description, + Value imageMediaId, + Value videoMediaId, + required bool hasTimeMeasure, + required bool hasRepsMeasure, + required bool hasScoreMeasure, + Value scoreLabel, + Value scoreUnit, + Value archivedAt, + Value rowid, + }); +typedef $$ExercisesTableUpdateCompanionBuilder = + ExercisesCompanion Function({ + Value id, + Value createdAt, + Value updatedAt, + Value deletedAt, + Value schemaVersion, + Value syncState, + Value localRevision, + Value originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value name, + Value description, + Value imageMediaId, + Value videoMediaId, + Value hasTimeMeasure, + Value hasRepsMeasure, + Value hasScoreMeasure, + Value scoreLabel, + Value scoreUnit, + Value archivedAt, + Value rowid, + }); + +final class $$ExercisesTableReferences + extends BaseReferences<_$AppDatabase, $ExercisesTable, Exercise> { + $$ExercisesTableReferences(super.$_db, super.$_table, super.$_typedResult); + + static $MediaAssetsTable _imageMediaIdTable(_$AppDatabase db) => + db.mediaAssets.createAlias('exercises__image_media_id__media_assets__id'); + + $$MediaAssetsTableProcessedTableManager? get imageMediaId { + final $_column = $_itemColumn('image_media_id'); + if ($_column == null) return null; + final manager = $$MediaAssetsTableTableManager( + $_db, + $_db.mediaAssets, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull(_imageMediaIdTable($_db)); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } + + static $MediaAssetsTable _videoMediaIdTable(_$AppDatabase db) => + db.mediaAssets.createAlias('exercises__video_media_id__media_assets__id'); + + $$MediaAssetsTableProcessedTableManager? get videoMediaId { + final $_column = $_itemColumn('video_media_id'); + if ($_column == null) return null; + final manager = $$MediaAssetsTableTableManager( + $_db, + $_db.mediaAssets, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull(_videoMediaIdTable($_db)); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } + + static MultiTypedResultKey<$ProgramExercisesTable, List> + _programExercisesRefsTable(_$AppDatabase db) => MultiTypedResultKey.fromTable( + db.programExercises, + aliasName: 'exercises__id__program_exercises__source_exercise_id', + ); + + $$ProgramExercisesTableProcessedTableManager get programExercisesRefs { + final manager = + $$ProgramExercisesTableTableManager($_db, $_db.programExercises).filter( + (f) => f.sourceExerciseId.id.sqlEquals($_itemColumn('id')!), + ); + + final cache = $_typedResult.readTableOrNull( + _programExercisesRefsTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } +} + +class $$ExercisesTableFilterComposer + extends Composer<_$AppDatabase, $ExercisesTable> { + $$ExercisesTableFilterComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnFilters get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get name => $composableBuilder( + column: $table.name, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get description => $composableBuilder( + column: $table.description, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get hasTimeMeasure => $composableBuilder( + column: $table.hasTimeMeasure, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get hasRepsMeasure => $composableBuilder( + column: $table.hasRepsMeasure, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get hasScoreMeasure => $composableBuilder( + column: $table.hasScoreMeasure, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get scoreLabel => $composableBuilder( + column: $table.scoreLabel, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get scoreUnit => $composableBuilder( + column: $table.scoreUnit, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get archivedAt => $composableBuilder( + column: $table.archivedAt, + builder: (column) => ColumnFilters(column), + ); + + $$MediaAssetsTableFilterComposer get imageMediaId { + final $$MediaAssetsTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.imageMediaId, + referencedTable: $db.mediaAssets, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$MediaAssetsTableFilterComposer( + $db: $db, + $table: $db.mediaAssets, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$MediaAssetsTableFilterComposer get videoMediaId { + final $$MediaAssetsTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.videoMediaId, + referencedTable: $db.mediaAssets, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$MediaAssetsTableFilterComposer( + $db: $db, + $table: $db.mediaAssets, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + Expression programExercisesRefs( + Expression Function($$ProgramExercisesTableFilterComposer f) f, + ) { + final $$ProgramExercisesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.programExercises, + getReferencedColumn: (t) => t.sourceExerciseId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramExercisesTableFilterComposer( + $db: $db, + $table: $db.programExercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$ExercisesTableOrderingComposer + extends Composer<_$AppDatabase, $ExercisesTable> { + $$ExercisesTableOrderingComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnOrderings get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get name => $composableBuilder( + column: $table.name, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get description => $composableBuilder( + column: $table.description, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get hasTimeMeasure => $composableBuilder( + column: $table.hasTimeMeasure, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get hasRepsMeasure => $composableBuilder( + column: $table.hasRepsMeasure, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get hasScoreMeasure => $composableBuilder( + column: $table.hasScoreMeasure, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get scoreLabel => $composableBuilder( + column: $table.scoreLabel, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get scoreUnit => $composableBuilder( + column: $table.scoreUnit, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get archivedAt => $composableBuilder( + column: $table.archivedAt, + builder: (column) => ColumnOrderings(column), + ); + + $$MediaAssetsTableOrderingComposer get imageMediaId { + final $$MediaAssetsTableOrderingComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.imageMediaId, + referencedTable: $db.mediaAssets, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$MediaAssetsTableOrderingComposer( + $db: $db, + $table: $db.mediaAssets, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$MediaAssetsTableOrderingComposer get videoMediaId { + final $$MediaAssetsTableOrderingComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.videoMediaId, + referencedTable: $db.mediaAssets, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$MediaAssetsTableOrderingComposer( + $db: $db, + $table: $db.mediaAssets, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$ExercisesTableAnnotationComposer + extends Composer<_$AppDatabase, $ExercisesTable> { + $$ExercisesTableAnnotationComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + GeneratedColumn get id => + $composableBuilder(column: $table.id, builder: (column) => column); + + GeneratedColumn get createdAt => + $composableBuilder(column: $table.createdAt, builder: (column) => column); + + GeneratedColumn get updatedAt => + $composableBuilder(column: $table.updatedAt, builder: (column) => column); + + GeneratedColumn get deletedAt => + $composableBuilder(column: $table.deletedAt, builder: (column) => column); + + GeneratedColumn get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => column, + ); + + GeneratedColumn get syncState => + $composableBuilder(column: $table.syncState, builder: (column) => column); + + GeneratedColumn get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => column, + ); + + GeneratedColumn get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => column, + ); + + GeneratedColumn get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => column, + ); + + GeneratedColumn get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => column, + ); + + GeneratedColumn get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => column, + ); + + GeneratedColumn get name => + $composableBuilder(column: $table.name, builder: (column) => column); + + GeneratedColumn get description => $composableBuilder( + column: $table.description, + builder: (column) => column, + ); + + GeneratedColumn get hasTimeMeasure => $composableBuilder( + column: $table.hasTimeMeasure, + builder: (column) => column, + ); + + GeneratedColumn get hasRepsMeasure => $composableBuilder( + column: $table.hasRepsMeasure, + builder: (column) => column, + ); + + GeneratedColumn get hasScoreMeasure => $composableBuilder( + column: $table.hasScoreMeasure, + builder: (column) => column, + ); + + GeneratedColumn get scoreLabel => $composableBuilder( + column: $table.scoreLabel, + builder: (column) => column, + ); + + GeneratedColumn get scoreUnit => + $composableBuilder(column: $table.scoreUnit, builder: (column) => column); + + GeneratedColumn get archivedAt => $composableBuilder( + column: $table.archivedAt, + builder: (column) => column, + ); + + $$MediaAssetsTableAnnotationComposer get imageMediaId { + final $$MediaAssetsTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.imageMediaId, + referencedTable: $db.mediaAssets, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$MediaAssetsTableAnnotationComposer( + $db: $db, + $table: $db.mediaAssets, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$MediaAssetsTableAnnotationComposer get videoMediaId { + final $$MediaAssetsTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.videoMediaId, + referencedTable: $db.mediaAssets, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$MediaAssetsTableAnnotationComposer( + $db: $db, + $table: $db.mediaAssets, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + Expression programExercisesRefs( + Expression Function($$ProgramExercisesTableAnnotationComposer a) f, + ) { + final $$ProgramExercisesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.programExercises, + getReferencedColumn: (t) => t.sourceExerciseId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramExercisesTableAnnotationComposer( + $db: $db, + $table: $db.programExercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$ExercisesTableTableManager + extends + RootTableManager< + _$AppDatabase, + $ExercisesTable, + Exercise, + $$ExercisesTableFilterComposer, + $$ExercisesTableOrderingComposer, + $$ExercisesTableAnnotationComposer, + $$ExercisesTableCreateCompanionBuilder, + $$ExercisesTableUpdateCompanionBuilder, + (Exercise, $$ExercisesTableReferences), + Exercise, + PrefetchHooks Function({ + bool imageMediaId, + bool videoMediaId, + bool programExercisesRefs, + }) + > { + $$ExercisesTableTableManager(_$AppDatabase db, $ExercisesTable table) + : super( + TableManagerState( + db: db, + table: table, + createFilteringComposer: () => + $$ExercisesTableFilterComposer($db: db, $table: table), + createOrderingComposer: () => + $$ExercisesTableOrderingComposer($db: db, $table: table), + createComputedFieldComposer: () => + $$ExercisesTableAnnotationComposer($db: db, $table: table), + updateCompanionCallback: + ({ + Value id = const Value.absent(), + Value createdAt = const Value.absent(), + Value updatedAt = const Value.absent(), + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + Value syncState = const Value.absent(), + Value localRevision = const Value.absent(), + Value originDeviceId = const Value.absent(), + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value name = const Value.absent(), + Value description = const Value.absent(), + Value imageMediaId = const Value.absent(), + Value videoMediaId = const Value.absent(), + Value hasTimeMeasure = const Value.absent(), + Value hasRepsMeasure = const Value.absent(), + Value hasScoreMeasure = const Value.absent(), + Value scoreLabel = const Value.absent(), + Value scoreUnit = const Value.absent(), + Value archivedAt = const Value.absent(), + Value rowid = const Value.absent(), + }) => ExercisesCompanion( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + name: name, + description: description, + imageMediaId: imageMediaId, + videoMediaId: videoMediaId, + hasTimeMeasure: hasTimeMeasure, + hasRepsMeasure: hasRepsMeasure, + hasScoreMeasure: hasScoreMeasure, + scoreLabel: scoreLabel, + scoreUnit: scoreUnit, + archivedAt: archivedAt, + rowid: rowid, + ), + createCompanionCallback: + ({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + required String name, + Value description = const Value.absent(), + Value imageMediaId = const Value.absent(), + Value videoMediaId = const Value.absent(), + required bool hasTimeMeasure, + required bool hasRepsMeasure, + required bool hasScoreMeasure, + Value scoreLabel = const Value.absent(), + Value scoreUnit = const Value.absent(), + Value archivedAt = const Value.absent(), + Value rowid = const Value.absent(), + }) => ExercisesCompanion.insert( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + name: name, + description: description, + imageMediaId: imageMediaId, + videoMediaId: videoMediaId, + hasTimeMeasure: hasTimeMeasure, + hasRepsMeasure: hasRepsMeasure, + hasScoreMeasure: hasScoreMeasure, + scoreLabel: scoreLabel, + scoreUnit: scoreUnit, + archivedAt: archivedAt, + rowid: rowid, + ), + withReferenceMapper: (p0) => p0 + .map( + (e) => ( + e.readTable(table), + $$ExercisesTableReferences(db, table, e), + ), + ) + .toList(), + prefetchHooksCallback: + ({ + imageMediaId = false, + videoMediaId = false, + programExercisesRefs = false, + }) { + return PrefetchHooks( + db: db, + explicitlyWatchedTables: [ + if (programExercisesRefs) db.programExercises, + ], + addJoins: + < + T extends TableManagerState< + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic + > + >(state) { + if (imageMediaId) { + state = + state.withJoin( + currentTable: table, + currentColumn: table.imageMediaId, + referencedTable: $$ExercisesTableReferences + ._imageMediaIdTable(db), + referencedColumn: $$ExercisesTableReferences + ._imageMediaIdTable(db) + .id, + ) + as T; + } + if (videoMediaId) { + state = + state.withJoin( + currentTable: table, + currentColumn: table.videoMediaId, + referencedTable: $$ExercisesTableReferences + ._videoMediaIdTable(db), + referencedColumn: $$ExercisesTableReferences + ._videoMediaIdTable(db) + .id, + ) + as T; + } + + return state; + }, + getPrefetchedDataCallback: (items) async { + return [ + if (programExercisesRefs) + await $_getPrefetchedData< + Exercise, + $ExercisesTable, + ProgramExercise + >( + currentTable: table, + referencedTable: $$ExercisesTableReferences + ._programExercisesRefsTable(db), + managerFromTypedResult: (p0) => + $$ExercisesTableReferences( + db, + table, + p0, + ).programExercisesRefs, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => e.sourceExerciseId == item.id, + ), + typedResults: items, + ), + ]; + }, + ); + }, + ), + ); +} + +typedef $$ExercisesTableProcessedTableManager = + ProcessedTableManager< + _$AppDatabase, + $ExercisesTable, + Exercise, + $$ExercisesTableFilterComposer, + $$ExercisesTableOrderingComposer, + $$ExercisesTableAnnotationComposer, + $$ExercisesTableCreateCompanionBuilder, + $$ExercisesTableUpdateCompanionBuilder, + (Exercise, $$ExercisesTableReferences), + Exercise, + PrefetchHooks Function({ + bool imageMediaId, + bool videoMediaId, + bool programExercisesRefs, + }) + >; +typedef $$ProgramsTableCreateCompanionBuilder = + ProgramsCompanion Function({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt, + Value schemaVersion, + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + required String name, + required int defaultRestSeconds, + Value rowid, + }); +typedef $$ProgramsTableUpdateCompanionBuilder = + ProgramsCompanion Function({ + Value id, + Value createdAt, + Value updatedAt, + Value deletedAt, + Value schemaVersion, + Value syncState, + Value localRevision, + Value originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value name, + Value defaultRestSeconds, + Value rowid, + }); + +final class $$ProgramsTableReferences + extends BaseReferences<_$AppDatabase, $ProgramsTable, Program> { + $$ProgramsTableReferences(super.$_db, super.$_table, super.$_typedResult); + + static MultiTypedResultKey<$ProgramExercisesTable, List> + _programExercisesRefsTable(_$AppDatabase db) => MultiTypedResultKey.fromTable( + db.programExercises, + aliasName: 'programs__id__program_exercises__program_id', + ); + + $$ProgramExercisesTableProcessedTableManager get programExercisesRefs { + final manager = $$ProgramExercisesTableTableManager( + $_db, + $_db.programExercises, + ).filter((f) => f.programId.id.sqlEquals($_itemColumn('id')!)); + + final cache = $_typedResult.readTableOrNull( + _programExercisesRefsTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } + + static MultiTypedResultKey< + $WorkoutTemplateProgramsTable, + List + > + _workoutTemplateProgramsRefsTable(_$AppDatabase db) => + MultiTypedResultKey.fromTable( + db.workoutTemplatePrograms, + aliasName: 'programs__id__workout_template_programs__source_program_id', + ); + + $$WorkoutTemplateProgramsTableProcessedTableManager + get workoutTemplateProgramsRefs { + final manager = + $$WorkoutTemplateProgramsTableTableManager( + $_db, + $_db.workoutTemplatePrograms, + ).filter( + (f) => f.sourceProgramId.id.sqlEquals($_itemColumn('id')!), + ); + + final cache = $_typedResult.readTableOrNull( + _workoutTemplateProgramsRefsTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } +} + +class $$ProgramsTableFilterComposer + extends Composer<_$AppDatabase, $ProgramsTable> { + $$ProgramsTableFilterComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnFilters get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get name => $composableBuilder( + column: $table.name, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get defaultRestSeconds => $composableBuilder( + column: $table.defaultRestSeconds, + builder: (column) => ColumnFilters(column), + ); + + Expression programExercisesRefs( + Expression Function($$ProgramExercisesTableFilterComposer f) f, + ) { + final $$ProgramExercisesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.programExercises, + getReferencedColumn: (t) => t.programId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramExercisesTableFilterComposer( + $db: $db, + $table: $db.programExercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression workoutTemplateProgramsRefs( + Expression Function($$WorkoutTemplateProgramsTableFilterComposer f) f, + ) { + final $$WorkoutTemplateProgramsTableFilterComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.workoutTemplatePrograms, + getReferencedColumn: (t) => t.sourceProgramId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplateProgramsTableFilterComposer( + $db: $db, + $table: $db.workoutTemplatePrograms, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$ProgramsTableOrderingComposer + extends Composer<_$AppDatabase, $ProgramsTable> { + $$ProgramsTableOrderingComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnOrderings get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get name => $composableBuilder( + column: $table.name, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get defaultRestSeconds => $composableBuilder( + column: $table.defaultRestSeconds, + builder: (column) => ColumnOrderings(column), + ); +} + +class $$ProgramsTableAnnotationComposer + extends Composer<_$AppDatabase, $ProgramsTable> { + $$ProgramsTableAnnotationComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + GeneratedColumn get id => + $composableBuilder(column: $table.id, builder: (column) => column); + + GeneratedColumn get createdAt => + $composableBuilder(column: $table.createdAt, builder: (column) => column); + + GeneratedColumn get updatedAt => + $composableBuilder(column: $table.updatedAt, builder: (column) => column); + + GeneratedColumn get deletedAt => + $composableBuilder(column: $table.deletedAt, builder: (column) => column); + + GeneratedColumn get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => column, + ); + + GeneratedColumn get syncState => + $composableBuilder(column: $table.syncState, builder: (column) => column); + + GeneratedColumn get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => column, + ); + + GeneratedColumn get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => column, + ); + + GeneratedColumn get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => column, + ); + + GeneratedColumn get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => column, + ); + + GeneratedColumn get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => column, + ); + + GeneratedColumn get name => + $composableBuilder(column: $table.name, builder: (column) => column); + + GeneratedColumn get defaultRestSeconds => $composableBuilder( + column: $table.defaultRestSeconds, + builder: (column) => column, + ); + + Expression programExercisesRefs( + Expression Function($$ProgramExercisesTableAnnotationComposer a) f, + ) { + final $$ProgramExercisesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.programExercises, + getReferencedColumn: (t) => t.programId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramExercisesTableAnnotationComposer( + $db: $db, + $table: $db.programExercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } + + Expression workoutTemplateProgramsRefs( + Expression Function($$WorkoutTemplateProgramsTableAnnotationComposer a) + f, + ) { + final $$WorkoutTemplateProgramsTableAnnotationComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.workoutTemplatePrograms, + getReferencedColumn: (t) => t.sourceProgramId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplateProgramsTableAnnotationComposer( + $db: $db, + $table: $db.workoutTemplatePrograms, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$ProgramsTableTableManager + extends + RootTableManager< + _$AppDatabase, + $ProgramsTable, + Program, + $$ProgramsTableFilterComposer, + $$ProgramsTableOrderingComposer, + $$ProgramsTableAnnotationComposer, + $$ProgramsTableCreateCompanionBuilder, + $$ProgramsTableUpdateCompanionBuilder, + (Program, $$ProgramsTableReferences), + Program, + PrefetchHooks Function({ + bool programExercisesRefs, + bool workoutTemplateProgramsRefs, + }) + > { + $$ProgramsTableTableManager(_$AppDatabase db, $ProgramsTable table) + : super( + TableManagerState( + db: db, + table: table, + createFilteringComposer: () => + $$ProgramsTableFilterComposer($db: db, $table: table), + createOrderingComposer: () => + $$ProgramsTableOrderingComposer($db: db, $table: table), + createComputedFieldComposer: () => + $$ProgramsTableAnnotationComposer($db: db, $table: table), + updateCompanionCallback: + ({ + Value id = const Value.absent(), + Value createdAt = const Value.absent(), + Value updatedAt = const Value.absent(), + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + Value syncState = const Value.absent(), + Value localRevision = const Value.absent(), + Value originDeviceId = const Value.absent(), + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value name = const Value.absent(), + Value defaultRestSeconds = const Value.absent(), + Value rowid = const Value.absent(), + }) => ProgramsCompanion( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + name: name, + defaultRestSeconds: defaultRestSeconds, + rowid: rowid, + ), + createCompanionCallback: + ({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + required String name, + required int defaultRestSeconds, + Value rowid = const Value.absent(), + }) => ProgramsCompanion.insert( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + name: name, + defaultRestSeconds: defaultRestSeconds, + rowid: rowid, + ), + withReferenceMapper: (p0) => p0 + .map( + (e) => ( + e.readTable(table), + $$ProgramsTableReferences(db, table, e), + ), + ) + .toList(), + prefetchHooksCallback: + ({ + programExercisesRefs = false, + workoutTemplateProgramsRefs = false, + }) { + return PrefetchHooks( + db: db, + explicitlyWatchedTables: [ + if (programExercisesRefs) db.programExercises, + if (workoutTemplateProgramsRefs) db.workoutTemplatePrograms, + ], + addJoins: null, + getPrefetchedDataCallback: (items) async { + return [ + if (programExercisesRefs) + await $_getPrefetchedData< + Program, + $ProgramsTable, + ProgramExercise + >( + currentTable: table, + referencedTable: $$ProgramsTableReferences + ._programExercisesRefsTable(db), + managerFromTypedResult: (p0) => + $$ProgramsTableReferences( + db, + table, + p0, + ).programExercisesRefs, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => e.programId == item.id, + ), + typedResults: items, + ), + if (workoutTemplateProgramsRefs) + await $_getPrefetchedData< + Program, + $ProgramsTable, + WorkoutTemplateProgram + >( + currentTable: table, + referencedTable: $$ProgramsTableReferences + ._workoutTemplateProgramsRefsTable(db), + managerFromTypedResult: (p0) => + $$ProgramsTableReferences( + db, + table, + p0, + ).workoutTemplateProgramsRefs, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => e.sourceProgramId == item.id, + ), + typedResults: items, + ), + ]; + }, + ); + }, + ), + ); +} + +typedef $$ProgramsTableProcessedTableManager = + ProcessedTableManager< + _$AppDatabase, + $ProgramsTable, + Program, + $$ProgramsTableFilterComposer, + $$ProgramsTableOrderingComposer, + $$ProgramsTableAnnotationComposer, + $$ProgramsTableCreateCompanionBuilder, + $$ProgramsTableUpdateCompanionBuilder, + (Program, $$ProgramsTableReferences), + Program, + PrefetchHooks Function({ + bool programExercisesRefs, + bool workoutTemplateProgramsRefs, + }) + >; +typedef $$ProgramExercisesTableCreateCompanionBuilder = + ProgramExercisesCompanion Function({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt, + Value schemaVersion, + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + required String programId, + Value sourceExerciseId, + required int position, + required String exerciseNameSnapshot, + Value exerciseDescriptionSnapshot, + Value exerciseImageMediaIdSnapshot, + Value exerciseVideoMediaIdSnapshot, + Value exerciseArchivedSnapshot, + required bool availableTimeSnapshot, + required bool availableRepsSnapshot, + required bool availableScoreSnapshot, + Value scoreLabelSnapshot, + Value scoreUnitSnapshot, + required int setsCount, + required bool timeEnabled, + required bool repsEnabled, + required bool scoreEnabled, + Value targetTimeSeconds, + Value targetReps, + Value targetScore, + Value restSecondsOverride, + Value rowid, + }); +typedef $$ProgramExercisesTableUpdateCompanionBuilder = + ProgramExercisesCompanion Function({ + Value id, + Value createdAt, + Value updatedAt, + Value deletedAt, + Value schemaVersion, + Value syncState, + Value localRevision, + Value originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value programId, + Value sourceExerciseId, + Value position, + Value exerciseNameSnapshot, + Value exerciseDescriptionSnapshot, + Value exerciseImageMediaIdSnapshot, + Value exerciseVideoMediaIdSnapshot, + Value exerciseArchivedSnapshot, + Value availableTimeSnapshot, + Value availableRepsSnapshot, + Value availableScoreSnapshot, + Value scoreLabelSnapshot, + Value scoreUnitSnapshot, + Value setsCount, + Value timeEnabled, + Value repsEnabled, + Value scoreEnabled, + Value targetTimeSeconds, + Value targetReps, + Value targetScore, + Value restSecondsOverride, + Value rowid, + }); + +final class $$ProgramExercisesTableReferences + extends + BaseReferences<_$AppDatabase, $ProgramExercisesTable, ProgramExercise> { + $$ProgramExercisesTableReferences( + super.$_db, + super.$_table, + super.$_typedResult, + ); + + static $ProgramsTable _programIdTable(_$AppDatabase db) => + db.programs.createAlias('program_exercises__program_id__programs__id'); + + $$ProgramsTableProcessedTableManager get programId { + final $_column = $_itemColumn('program_id')!; + + final manager = $$ProgramsTableTableManager( + $_db, + $_db.programs, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull(_programIdTable($_db)); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } + + static $ExercisesTable _sourceExerciseIdTable(_$AppDatabase db) => db + .exercises + .createAlias('program_exercises__source_exercise_id__exercises__id'); + + $$ExercisesTableProcessedTableManager? get sourceExerciseId { + final $_column = $_itemColumn('source_exercise_id'); + if ($_column == null) return null; + final manager = $$ExercisesTableTableManager( + $_db, + $_db.exercises, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull(_sourceExerciseIdTable($_db)); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } + + static $MediaAssetsTable _exerciseImageMediaIdSnapshotTable( + _$AppDatabase db, + ) => db.mediaAssets.createAlias( + 'program_exercises__exercise_image_media_id_snapshot__media_assets__id', + ); + + $$MediaAssetsTableProcessedTableManager? get exerciseImageMediaIdSnapshot { + final $_column = $_itemColumn('exercise_image_media_id_snapshot'); + if ($_column == null) return null; + final manager = $$MediaAssetsTableTableManager( + $_db, + $_db.mediaAssets, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull( + _exerciseImageMediaIdSnapshotTable($_db), + ); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } + + static $MediaAssetsTable _exerciseVideoMediaIdSnapshotTable( + _$AppDatabase db, + ) => db.mediaAssets.createAlias( + 'program_exercises__exercise_video_media_id_snapshot__media_assets__id', + ); + + $$MediaAssetsTableProcessedTableManager? get exerciseVideoMediaIdSnapshot { + final $_column = $_itemColumn('exercise_video_media_id_snapshot'); + if ($_column == null) return null; + final manager = $$MediaAssetsTableTableManager( + $_db, + $_db.mediaAssets, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull( + _exerciseVideoMediaIdSnapshotTable($_db), + ); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } +} + +class $$ProgramExercisesTableFilterComposer + extends Composer<_$AppDatabase, $ProgramExercisesTable> { + $$ProgramExercisesTableFilterComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnFilters get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get position => $composableBuilder( + column: $table.position, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get exerciseNameSnapshot => $composableBuilder( + column: $table.exerciseNameSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get exerciseDescriptionSnapshot => $composableBuilder( + column: $table.exerciseDescriptionSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get exerciseArchivedSnapshot => $composableBuilder( + column: $table.exerciseArchivedSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get availableTimeSnapshot => $composableBuilder( + column: $table.availableTimeSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get availableRepsSnapshot => $composableBuilder( + column: $table.availableRepsSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get availableScoreSnapshot => $composableBuilder( + column: $table.availableScoreSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get scoreLabelSnapshot => $composableBuilder( + column: $table.scoreLabelSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get scoreUnitSnapshot => $composableBuilder( + column: $table.scoreUnitSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get setsCount => $composableBuilder( + column: $table.setsCount, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get timeEnabled => $composableBuilder( + column: $table.timeEnabled, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get repsEnabled => $composableBuilder( + column: $table.repsEnabled, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get scoreEnabled => $composableBuilder( + column: $table.scoreEnabled, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get targetTimeSeconds => $composableBuilder( + column: $table.targetTimeSeconds, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get targetReps => $composableBuilder( + column: $table.targetReps, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get targetScore => $composableBuilder( + column: $table.targetScore, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get restSecondsOverride => $composableBuilder( + column: $table.restSecondsOverride, + builder: (column) => ColumnFilters(column), + ); + + $$ProgramsTableFilterComposer get programId { + final $$ProgramsTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.programId, + referencedTable: $db.programs, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramsTableFilterComposer( + $db: $db, + $table: $db.programs, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$ExercisesTableFilterComposer get sourceExerciseId { + final $$ExercisesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceExerciseId, + referencedTable: $db.exercises, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ExercisesTableFilterComposer( + $db: $db, + $table: $db.exercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$MediaAssetsTableFilterComposer get exerciseImageMediaIdSnapshot { + final $$MediaAssetsTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.exerciseImageMediaIdSnapshot, + referencedTable: $db.mediaAssets, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$MediaAssetsTableFilterComposer( + $db: $db, + $table: $db.mediaAssets, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$MediaAssetsTableFilterComposer get exerciseVideoMediaIdSnapshot { + final $$MediaAssetsTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.exerciseVideoMediaIdSnapshot, + referencedTable: $db.mediaAssets, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$MediaAssetsTableFilterComposer( + $db: $db, + $table: $db.mediaAssets, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$ProgramExercisesTableOrderingComposer + extends Composer<_$AppDatabase, $ProgramExercisesTable> { + $$ProgramExercisesTableOrderingComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnOrderings get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get position => $composableBuilder( + column: $table.position, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get exerciseNameSnapshot => $composableBuilder( + column: $table.exerciseNameSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get exerciseDescriptionSnapshot => $composableBuilder( + column: $table.exerciseDescriptionSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get exerciseArchivedSnapshot => $composableBuilder( + column: $table.exerciseArchivedSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get availableTimeSnapshot => $composableBuilder( + column: $table.availableTimeSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get availableRepsSnapshot => $composableBuilder( + column: $table.availableRepsSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get availableScoreSnapshot => $composableBuilder( + column: $table.availableScoreSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get scoreLabelSnapshot => $composableBuilder( + column: $table.scoreLabelSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get scoreUnitSnapshot => $composableBuilder( + column: $table.scoreUnitSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get setsCount => $composableBuilder( + column: $table.setsCount, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get timeEnabled => $composableBuilder( + column: $table.timeEnabled, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get repsEnabled => $composableBuilder( + column: $table.repsEnabled, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get scoreEnabled => $composableBuilder( + column: $table.scoreEnabled, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get targetTimeSeconds => $composableBuilder( + column: $table.targetTimeSeconds, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get targetReps => $composableBuilder( + column: $table.targetReps, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get targetScore => $composableBuilder( + column: $table.targetScore, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get restSecondsOverride => $composableBuilder( + column: $table.restSecondsOverride, + builder: (column) => ColumnOrderings(column), + ); + + $$ProgramsTableOrderingComposer get programId { + final $$ProgramsTableOrderingComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.programId, + referencedTable: $db.programs, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramsTableOrderingComposer( + $db: $db, + $table: $db.programs, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$ExercisesTableOrderingComposer get sourceExerciseId { + final $$ExercisesTableOrderingComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceExerciseId, + referencedTable: $db.exercises, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ExercisesTableOrderingComposer( + $db: $db, + $table: $db.exercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$MediaAssetsTableOrderingComposer get exerciseImageMediaIdSnapshot { + final $$MediaAssetsTableOrderingComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.exerciseImageMediaIdSnapshot, + referencedTable: $db.mediaAssets, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$MediaAssetsTableOrderingComposer( + $db: $db, + $table: $db.mediaAssets, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$MediaAssetsTableOrderingComposer get exerciseVideoMediaIdSnapshot { + final $$MediaAssetsTableOrderingComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.exerciseVideoMediaIdSnapshot, + referencedTable: $db.mediaAssets, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$MediaAssetsTableOrderingComposer( + $db: $db, + $table: $db.mediaAssets, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$ProgramExercisesTableAnnotationComposer + extends Composer<_$AppDatabase, $ProgramExercisesTable> { + $$ProgramExercisesTableAnnotationComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + GeneratedColumn get id => + $composableBuilder(column: $table.id, builder: (column) => column); + + GeneratedColumn get createdAt => + $composableBuilder(column: $table.createdAt, builder: (column) => column); + + GeneratedColumn get updatedAt => + $composableBuilder(column: $table.updatedAt, builder: (column) => column); + + GeneratedColumn get deletedAt => + $composableBuilder(column: $table.deletedAt, builder: (column) => column); + + GeneratedColumn get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => column, + ); + + GeneratedColumn get syncState => + $composableBuilder(column: $table.syncState, builder: (column) => column); + + GeneratedColumn get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => column, + ); + + GeneratedColumn get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => column, + ); + + GeneratedColumn get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => column, + ); + + GeneratedColumn get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => column, + ); + + GeneratedColumn get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => column, + ); + + GeneratedColumn get position => + $composableBuilder(column: $table.position, builder: (column) => column); + + GeneratedColumn get exerciseNameSnapshot => $composableBuilder( + column: $table.exerciseNameSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get exerciseDescriptionSnapshot => $composableBuilder( + column: $table.exerciseDescriptionSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get exerciseArchivedSnapshot => $composableBuilder( + column: $table.exerciseArchivedSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get availableTimeSnapshot => $composableBuilder( + column: $table.availableTimeSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get availableRepsSnapshot => $composableBuilder( + column: $table.availableRepsSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get availableScoreSnapshot => $composableBuilder( + column: $table.availableScoreSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get scoreLabelSnapshot => $composableBuilder( + column: $table.scoreLabelSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get scoreUnitSnapshot => $composableBuilder( + column: $table.scoreUnitSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get setsCount => + $composableBuilder(column: $table.setsCount, builder: (column) => column); + + GeneratedColumn get timeEnabled => $composableBuilder( + column: $table.timeEnabled, + builder: (column) => column, + ); + + GeneratedColumn get repsEnabled => $composableBuilder( + column: $table.repsEnabled, + builder: (column) => column, + ); + + GeneratedColumn get scoreEnabled => $composableBuilder( + column: $table.scoreEnabled, + builder: (column) => column, + ); + + GeneratedColumn get targetTimeSeconds => $composableBuilder( + column: $table.targetTimeSeconds, + builder: (column) => column, + ); + + GeneratedColumn get targetReps => $composableBuilder( + column: $table.targetReps, + builder: (column) => column, + ); + + GeneratedColumn get targetScore => $composableBuilder( + column: $table.targetScore, + builder: (column) => column, + ); + + GeneratedColumn get restSecondsOverride => $composableBuilder( + column: $table.restSecondsOverride, + builder: (column) => column, + ); + + $$ProgramsTableAnnotationComposer get programId { + final $$ProgramsTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.programId, + referencedTable: $db.programs, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramsTableAnnotationComposer( + $db: $db, + $table: $db.programs, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$ExercisesTableAnnotationComposer get sourceExerciseId { + final $$ExercisesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceExerciseId, + referencedTable: $db.exercises, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ExercisesTableAnnotationComposer( + $db: $db, + $table: $db.exercises, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$MediaAssetsTableAnnotationComposer get exerciseImageMediaIdSnapshot { + final $$MediaAssetsTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.exerciseImageMediaIdSnapshot, + referencedTable: $db.mediaAssets, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$MediaAssetsTableAnnotationComposer( + $db: $db, + $table: $db.mediaAssets, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$MediaAssetsTableAnnotationComposer get exerciseVideoMediaIdSnapshot { + final $$MediaAssetsTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.exerciseVideoMediaIdSnapshot, + referencedTable: $db.mediaAssets, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$MediaAssetsTableAnnotationComposer( + $db: $db, + $table: $db.mediaAssets, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$ProgramExercisesTableTableManager + extends + RootTableManager< + _$AppDatabase, + $ProgramExercisesTable, + ProgramExercise, + $$ProgramExercisesTableFilterComposer, + $$ProgramExercisesTableOrderingComposer, + $$ProgramExercisesTableAnnotationComposer, + $$ProgramExercisesTableCreateCompanionBuilder, + $$ProgramExercisesTableUpdateCompanionBuilder, + (ProgramExercise, $$ProgramExercisesTableReferences), + ProgramExercise, + PrefetchHooks Function({ + bool programId, + bool sourceExerciseId, + bool exerciseImageMediaIdSnapshot, + bool exerciseVideoMediaIdSnapshot, + }) + > { + $$ProgramExercisesTableTableManager( + _$AppDatabase db, + $ProgramExercisesTable table, + ) : super( + TableManagerState( + db: db, + table: table, + createFilteringComposer: () => + $$ProgramExercisesTableFilterComposer($db: db, $table: table), + createOrderingComposer: () => + $$ProgramExercisesTableOrderingComposer($db: db, $table: table), + createComputedFieldComposer: () => + $$ProgramExercisesTableAnnotationComposer($db: db, $table: table), + updateCompanionCallback: + ({ + Value id = const Value.absent(), + Value createdAt = const Value.absent(), + Value updatedAt = const Value.absent(), + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + Value syncState = const Value.absent(), + Value localRevision = const Value.absent(), + Value originDeviceId = const Value.absent(), + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value programId = const Value.absent(), + Value sourceExerciseId = const Value.absent(), + Value position = const Value.absent(), + Value exerciseNameSnapshot = const Value.absent(), + Value exerciseDescriptionSnapshot = + const Value.absent(), + Value exerciseImageMediaIdSnapshot = + const Value.absent(), + Value exerciseVideoMediaIdSnapshot = + const Value.absent(), + Value exerciseArchivedSnapshot = const Value.absent(), + Value availableTimeSnapshot = const Value.absent(), + Value availableRepsSnapshot = const Value.absent(), + Value availableScoreSnapshot = const Value.absent(), + Value scoreLabelSnapshot = const Value.absent(), + Value scoreUnitSnapshot = const Value.absent(), + Value setsCount = const Value.absent(), + Value timeEnabled = const Value.absent(), + Value repsEnabled = const Value.absent(), + Value scoreEnabled = const Value.absent(), + Value targetTimeSeconds = const Value.absent(), + Value targetReps = const Value.absent(), + Value targetScore = const Value.absent(), + Value restSecondsOverride = const Value.absent(), + Value rowid = const Value.absent(), + }) => ProgramExercisesCompanion( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + programId: programId, + sourceExerciseId: sourceExerciseId, + position: position, + exerciseNameSnapshot: exerciseNameSnapshot, + exerciseDescriptionSnapshot: exerciseDescriptionSnapshot, + exerciseImageMediaIdSnapshot: exerciseImageMediaIdSnapshot, + exerciseVideoMediaIdSnapshot: exerciseVideoMediaIdSnapshot, + exerciseArchivedSnapshot: exerciseArchivedSnapshot, + availableTimeSnapshot: availableTimeSnapshot, + availableRepsSnapshot: availableRepsSnapshot, + availableScoreSnapshot: availableScoreSnapshot, + scoreLabelSnapshot: scoreLabelSnapshot, + scoreUnitSnapshot: scoreUnitSnapshot, + setsCount: setsCount, + timeEnabled: timeEnabled, + repsEnabled: repsEnabled, + scoreEnabled: scoreEnabled, + targetTimeSeconds: targetTimeSeconds, + targetReps: targetReps, + targetScore: targetScore, + restSecondsOverride: restSecondsOverride, + rowid: rowid, + ), + createCompanionCallback: + ({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + required String programId, + Value sourceExerciseId = const Value.absent(), + required int position, + required String exerciseNameSnapshot, + Value exerciseDescriptionSnapshot = + const Value.absent(), + Value exerciseImageMediaIdSnapshot = + const Value.absent(), + Value exerciseVideoMediaIdSnapshot = + const Value.absent(), + Value exerciseArchivedSnapshot = const Value.absent(), + required bool availableTimeSnapshot, + required bool availableRepsSnapshot, + required bool availableScoreSnapshot, + Value scoreLabelSnapshot = const Value.absent(), + Value scoreUnitSnapshot = const Value.absent(), + required int setsCount, + required bool timeEnabled, + required bool repsEnabled, + required bool scoreEnabled, + Value targetTimeSeconds = const Value.absent(), + Value targetReps = const Value.absent(), + Value targetScore = const Value.absent(), + Value restSecondsOverride = const Value.absent(), + Value rowid = const Value.absent(), + }) => ProgramExercisesCompanion.insert( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + programId: programId, + sourceExerciseId: sourceExerciseId, + position: position, + exerciseNameSnapshot: exerciseNameSnapshot, + exerciseDescriptionSnapshot: exerciseDescriptionSnapshot, + exerciseImageMediaIdSnapshot: exerciseImageMediaIdSnapshot, + exerciseVideoMediaIdSnapshot: exerciseVideoMediaIdSnapshot, + exerciseArchivedSnapshot: exerciseArchivedSnapshot, + availableTimeSnapshot: availableTimeSnapshot, + availableRepsSnapshot: availableRepsSnapshot, + availableScoreSnapshot: availableScoreSnapshot, + scoreLabelSnapshot: scoreLabelSnapshot, + scoreUnitSnapshot: scoreUnitSnapshot, + setsCount: setsCount, + timeEnabled: timeEnabled, + repsEnabled: repsEnabled, + scoreEnabled: scoreEnabled, + targetTimeSeconds: targetTimeSeconds, + targetReps: targetReps, + targetScore: targetScore, + restSecondsOverride: restSecondsOverride, + rowid: rowid, + ), + withReferenceMapper: (p0) => p0 + .map( + (e) => ( + e.readTable(table), + $$ProgramExercisesTableReferences(db, table, e), + ), + ) + .toList(), + prefetchHooksCallback: + ({ + programId = false, + sourceExerciseId = false, + exerciseImageMediaIdSnapshot = false, + exerciseVideoMediaIdSnapshot = false, + }) { + return PrefetchHooks( + db: db, + explicitlyWatchedTables: [], + addJoins: + < + T extends TableManagerState< + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic + > + >(state) { + if (programId) { + state = + state.withJoin( + currentTable: table, + currentColumn: table.programId, + referencedTable: + $$ProgramExercisesTableReferences + ._programIdTable(db), + referencedColumn: + $$ProgramExercisesTableReferences + ._programIdTable(db) + .id, + ) + as T; + } + if (sourceExerciseId) { + state = + state.withJoin( + currentTable: table, + currentColumn: table.sourceExerciseId, + referencedTable: + $$ProgramExercisesTableReferences + ._sourceExerciseIdTable(db), + referencedColumn: + $$ProgramExercisesTableReferences + ._sourceExerciseIdTable(db) + .id, + ) + as T; + } + if (exerciseImageMediaIdSnapshot) { + state = + state.withJoin( + currentTable: table, + currentColumn: + table.exerciseImageMediaIdSnapshot, + referencedTable: + $$ProgramExercisesTableReferences + ._exerciseImageMediaIdSnapshotTable( + db, + ), + referencedColumn: + $$ProgramExercisesTableReferences + ._exerciseImageMediaIdSnapshotTable( + db, + ) + .id, + ) + as T; + } + if (exerciseVideoMediaIdSnapshot) { + state = + state.withJoin( + currentTable: table, + currentColumn: + table.exerciseVideoMediaIdSnapshot, + referencedTable: + $$ProgramExercisesTableReferences + ._exerciseVideoMediaIdSnapshotTable( + db, + ), + referencedColumn: + $$ProgramExercisesTableReferences + ._exerciseVideoMediaIdSnapshotTable( + db, + ) + .id, + ) + as T; + } + + return state; + }, + getPrefetchedDataCallback: (items) async { + return []; + }, + ); + }, + ), + ); +} + +typedef $$ProgramExercisesTableProcessedTableManager = + ProcessedTableManager< + _$AppDatabase, + $ProgramExercisesTable, + ProgramExercise, + $$ProgramExercisesTableFilterComposer, + $$ProgramExercisesTableOrderingComposer, + $$ProgramExercisesTableAnnotationComposer, + $$ProgramExercisesTableCreateCompanionBuilder, + $$ProgramExercisesTableUpdateCompanionBuilder, + (ProgramExercise, $$ProgramExercisesTableReferences), + ProgramExercise, + PrefetchHooks Function({ + bool programId, + bool sourceExerciseId, + bool exerciseImageMediaIdSnapshot, + bool exerciseVideoMediaIdSnapshot, + }) + >; +typedef $$WorkoutHistoriesTableCreateCompanionBuilder = + WorkoutHistoriesCompanion Function({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt, + Value schemaVersion, + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value sourceWorkoutTemplateId, + Value sourceActiveWorkoutSessionId, + required String nameSnapshot, + required DateTime startedAt, + required DateTime endedAt, + required int totalActiveMs, + required bool completed, + required String historySnapshotJson, + Value rowid, + }); +typedef $$WorkoutHistoriesTableUpdateCompanionBuilder = + WorkoutHistoriesCompanion Function({ + Value id, + Value createdAt, + Value updatedAt, + Value deletedAt, + Value schemaVersion, + Value syncState, + Value localRevision, + Value originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value sourceWorkoutTemplateId, + Value sourceActiveWorkoutSessionId, + Value nameSnapshot, + Value startedAt, + Value endedAt, + Value totalActiveMs, + Value completed, + Value historySnapshotJson, + Value rowid, + }); + +final class $$WorkoutHistoriesTableReferences + extends + BaseReferences<_$AppDatabase, $WorkoutHistoriesTable, WorkoutHistory> { + $$WorkoutHistoriesTableReferences( + super.$_db, + super.$_table, + super.$_typedResult, + ); + + static $WorkoutTemplatesTable _sourceWorkoutTemplateIdTable( + _$AppDatabase db, + ) => db.workoutTemplates.createAlias( + 'workout_history__source_workout_template_id__workout_templates__id', + ); + + $$WorkoutTemplatesTableProcessedTableManager? get sourceWorkoutTemplateId { + final $_column = $_itemColumn('source_workout_template_id'); + if ($_column == null) return null; + final manager = $$WorkoutTemplatesTableTableManager( + $_db, + $_db.workoutTemplates, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull( + _sourceWorkoutTemplateIdTable($_db), + ); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } + + static $ActiveWorkoutSessionsTable _sourceActiveWorkoutSessionIdTable( + _$AppDatabase db, + ) => db.activeWorkoutSessions.createAlias( + 'workout_history__source_active_workout_session_id__active_workout_sessions__id', + ); + + $$ActiveWorkoutSessionsTableProcessedTableManager? + get sourceActiveWorkoutSessionId { + final $_column = $_itemColumn('source_active_workout_session_id'); + if ($_column == null) return null; + final manager = $$ActiveWorkoutSessionsTableTableManager( + $_db, + $_db.activeWorkoutSessions, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull( + _sourceActiveWorkoutSessionIdTable($_db), + ); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } + + static MultiTypedResultKey< + $WorkoutHistorySetResultsTable, + List + > + _workoutHistorySetResultsRefsTable( + _$AppDatabase db, + ) => MultiTypedResultKey.fromTable( + db.workoutHistorySetResults, + aliasName: + 'workout_history__id__workout_history_set_results__workout_history_id', + ); + + $$WorkoutHistorySetResultsTableProcessedTableManager + get workoutHistorySetResultsRefs { + final manager = + $$WorkoutHistorySetResultsTableTableManager( + $_db, + $_db.workoutHistorySetResults, + ).filter( + (f) => f.workoutHistoryId.id.sqlEquals($_itemColumn('id')!), + ); + + final cache = $_typedResult.readTableOrNull( + _workoutHistorySetResultsRefsTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } +} + +class $$WorkoutHistoriesTableFilterComposer + extends Composer<_$AppDatabase, $WorkoutHistoriesTable> { + $$WorkoutHistoriesTableFilterComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnFilters get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get nameSnapshot => $composableBuilder( + column: $table.nameSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get startedAt => $composableBuilder( + column: $table.startedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get endedAt => $composableBuilder( + column: $table.endedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get totalActiveMs => $composableBuilder( + column: $table.totalActiveMs, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get completed => $composableBuilder( + column: $table.completed, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get historySnapshotJson => $composableBuilder( + column: $table.historySnapshotJson, + builder: (column) => ColumnFilters(column), + ); + + $$WorkoutTemplatesTableFilterComposer get sourceWorkoutTemplateId { + final $$WorkoutTemplatesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceWorkoutTemplateId, + referencedTable: $db.workoutTemplates, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplatesTableFilterComposer( + $db: $db, + $table: $db.workoutTemplates, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$ActiveWorkoutSessionsTableFilterComposer get sourceActiveWorkoutSessionId { + final $$ActiveWorkoutSessionsTableFilterComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceActiveWorkoutSessionId, + referencedTable: $db.activeWorkoutSessions, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveWorkoutSessionsTableFilterComposer( + $db: $db, + $table: $db.activeWorkoutSessions, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + Expression workoutHistorySetResultsRefs( + Expression Function($$WorkoutHistorySetResultsTableFilterComposer f) + f, + ) { + final $$WorkoutHistorySetResultsTableFilterComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.workoutHistorySetResults, + getReferencedColumn: (t) => t.workoutHistoryId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutHistorySetResultsTableFilterComposer( + $db: $db, + $table: $db.workoutHistorySetResults, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$WorkoutHistoriesTableOrderingComposer + extends Composer<_$AppDatabase, $WorkoutHistoriesTable> { + $$WorkoutHistoriesTableOrderingComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnOrderings get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get nameSnapshot => $composableBuilder( + column: $table.nameSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get startedAt => $composableBuilder( + column: $table.startedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get endedAt => $composableBuilder( + column: $table.endedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get totalActiveMs => $composableBuilder( + column: $table.totalActiveMs, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get completed => $composableBuilder( + column: $table.completed, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get historySnapshotJson => $composableBuilder( + column: $table.historySnapshotJson, + builder: (column) => ColumnOrderings(column), + ); + + $$WorkoutTemplatesTableOrderingComposer get sourceWorkoutTemplateId { + final $$WorkoutTemplatesTableOrderingComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceWorkoutTemplateId, + referencedTable: $db.workoutTemplates, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplatesTableOrderingComposer( + $db: $db, + $table: $db.workoutTemplates, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$ActiveWorkoutSessionsTableOrderingComposer + get sourceActiveWorkoutSessionId { + final $$ActiveWorkoutSessionsTableOrderingComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceActiveWorkoutSessionId, + referencedTable: $db.activeWorkoutSessions, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveWorkoutSessionsTableOrderingComposer( + $db: $db, + $table: $db.activeWorkoutSessions, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$WorkoutHistoriesTableAnnotationComposer + extends Composer<_$AppDatabase, $WorkoutHistoriesTable> { + $$WorkoutHistoriesTableAnnotationComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + GeneratedColumn get id => + $composableBuilder(column: $table.id, builder: (column) => column); + + GeneratedColumn get createdAt => + $composableBuilder(column: $table.createdAt, builder: (column) => column); + + GeneratedColumn get updatedAt => + $composableBuilder(column: $table.updatedAt, builder: (column) => column); + + GeneratedColumn get deletedAt => + $composableBuilder(column: $table.deletedAt, builder: (column) => column); + + GeneratedColumn get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => column, + ); + + GeneratedColumn get syncState => + $composableBuilder(column: $table.syncState, builder: (column) => column); + + GeneratedColumn get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => column, + ); + + GeneratedColumn get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => column, + ); + + GeneratedColumn get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => column, + ); + + GeneratedColumn get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => column, + ); + + GeneratedColumn get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => column, + ); + + GeneratedColumn get nameSnapshot => $composableBuilder( + column: $table.nameSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get startedAt => + $composableBuilder(column: $table.startedAt, builder: (column) => column); + + GeneratedColumn get endedAt => + $composableBuilder(column: $table.endedAt, builder: (column) => column); + + GeneratedColumn get totalActiveMs => $composableBuilder( + column: $table.totalActiveMs, + builder: (column) => column, + ); + + GeneratedColumn get completed => + $composableBuilder(column: $table.completed, builder: (column) => column); + + GeneratedColumn get historySnapshotJson => $composableBuilder( + column: $table.historySnapshotJson, + builder: (column) => column, + ); + + $$WorkoutTemplatesTableAnnotationComposer get sourceWorkoutTemplateId { + final $$WorkoutTemplatesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceWorkoutTemplateId, + referencedTable: $db.workoutTemplates, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplatesTableAnnotationComposer( + $db: $db, + $table: $db.workoutTemplates, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$ActiveWorkoutSessionsTableAnnotationComposer + get sourceActiveWorkoutSessionId { + final $$ActiveWorkoutSessionsTableAnnotationComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceActiveWorkoutSessionId, + referencedTable: $db.activeWorkoutSessions, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ActiveWorkoutSessionsTableAnnotationComposer( + $db: $db, + $table: $db.activeWorkoutSessions, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + Expression workoutHistorySetResultsRefs( + Expression Function($$WorkoutHistorySetResultsTableAnnotationComposer a) + f, + ) { + final $$WorkoutHistorySetResultsTableAnnotationComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.workoutHistorySetResults, + getReferencedColumn: (t) => t.workoutHistoryId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutHistorySetResultsTableAnnotationComposer( + $db: $db, + $table: $db.workoutHistorySetResults, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$WorkoutHistoriesTableTableManager + extends + RootTableManager< + _$AppDatabase, + $WorkoutHistoriesTable, + WorkoutHistory, + $$WorkoutHistoriesTableFilterComposer, + $$WorkoutHistoriesTableOrderingComposer, + $$WorkoutHistoriesTableAnnotationComposer, + $$WorkoutHistoriesTableCreateCompanionBuilder, + $$WorkoutHistoriesTableUpdateCompanionBuilder, + (WorkoutHistory, $$WorkoutHistoriesTableReferences), + WorkoutHistory, + PrefetchHooks Function({ + bool sourceWorkoutTemplateId, + bool sourceActiveWorkoutSessionId, + bool workoutHistorySetResultsRefs, + }) + > { + $$WorkoutHistoriesTableTableManager( + _$AppDatabase db, + $WorkoutHistoriesTable table, + ) : super( + TableManagerState( + db: db, + table: table, + createFilteringComposer: () => + $$WorkoutHistoriesTableFilterComposer($db: db, $table: table), + createOrderingComposer: () => + $$WorkoutHistoriesTableOrderingComposer($db: db, $table: table), + createComputedFieldComposer: () => + $$WorkoutHistoriesTableAnnotationComposer($db: db, $table: table), + updateCompanionCallback: + ({ + Value id = const Value.absent(), + Value createdAt = const Value.absent(), + Value updatedAt = const Value.absent(), + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + Value syncState = const Value.absent(), + Value localRevision = const Value.absent(), + Value originDeviceId = const Value.absent(), + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value sourceWorkoutTemplateId = const Value.absent(), + Value sourceActiveWorkoutSessionId = + const Value.absent(), + Value nameSnapshot = const Value.absent(), + Value startedAt = const Value.absent(), + Value endedAt = const Value.absent(), + Value totalActiveMs = const Value.absent(), + Value completed = const Value.absent(), + Value historySnapshotJson = const Value.absent(), + Value rowid = const Value.absent(), + }) => WorkoutHistoriesCompanion( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + sourceWorkoutTemplateId: sourceWorkoutTemplateId, + sourceActiveWorkoutSessionId: sourceActiveWorkoutSessionId, + nameSnapshot: nameSnapshot, + startedAt: startedAt, + endedAt: endedAt, + totalActiveMs: totalActiveMs, + completed: completed, + historySnapshotJson: historySnapshotJson, + rowid: rowid, + ), + createCompanionCallback: + ({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value sourceWorkoutTemplateId = const Value.absent(), + Value sourceActiveWorkoutSessionId = + const Value.absent(), + required String nameSnapshot, + required DateTime startedAt, + required DateTime endedAt, + required int totalActiveMs, + required bool completed, + required String historySnapshotJson, + Value rowid = const Value.absent(), + }) => WorkoutHistoriesCompanion.insert( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + sourceWorkoutTemplateId: sourceWorkoutTemplateId, + sourceActiveWorkoutSessionId: sourceActiveWorkoutSessionId, + nameSnapshot: nameSnapshot, + startedAt: startedAt, + endedAt: endedAt, + totalActiveMs: totalActiveMs, + completed: completed, + historySnapshotJson: historySnapshotJson, + rowid: rowid, + ), + withReferenceMapper: (p0) => p0 + .map( + (e) => ( + e.readTable(table), + $$WorkoutHistoriesTableReferences(db, table, e), + ), + ) + .toList(), + prefetchHooksCallback: + ({ + sourceWorkoutTemplateId = false, + sourceActiveWorkoutSessionId = false, + workoutHistorySetResultsRefs = false, + }) { + return PrefetchHooks( + db: db, + explicitlyWatchedTables: [ + if (workoutHistorySetResultsRefs) + db.workoutHistorySetResults, + ], + addJoins: + < + T extends TableManagerState< + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic + > + >(state) { + if (sourceWorkoutTemplateId) { + state = + state.withJoin( + currentTable: table, + currentColumn: + table.sourceWorkoutTemplateId, + referencedTable: + $$WorkoutHistoriesTableReferences + ._sourceWorkoutTemplateIdTable(db), + referencedColumn: + $$WorkoutHistoriesTableReferences + ._sourceWorkoutTemplateIdTable(db) + .id, + ) + as T; + } + if (sourceActiveWorkoutSessionId) { + state = + state.withJoin( + currentTable: table, + currentColumn: + table.sourceActiveWorkoutSessionId, + referencedTable: + $$WorkoutHistoriesTableReferences + ._sourceActiveWorkoutSessionIdTable( + db, + ), + referencedColumn: + $$WorkoutHistoriesTableReferences + ._sourceActiveWorkoutSessionIdTable( + db, + ) + .id, + ) + as T; + } + + return state; + }, + getPrefetchedDataCallback: (items) async { + return [ + if (workoutHistorySetResultsRefs) + await $_getPrefetchedData< + WorkoutHistory, + $WorkoutHistoriesTable, + WorkoutHistorySetResult + >( + currentTable: table, + referencedTable: $$WorkoutHistoriesTableReferences + ._workoutHistorySetResultsRefsTable(db), + managerFromTypedResult: (p0) => + $$WorkoutHistoriesTableReferences( + db, + table, + p0, + ).workoutHistorySetResultsRefs, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => e.workoutHistoryId == item.id, + ), + typedResults: items, + ), + ]; + }, + ); + }, + ), + ); +} + +typedef $$WorkoutHistoriesTableProcessedTableManager = + ProcessedTableManager< + _$AppDatabase, + $WorkoutHistoriesTable, + WorkoutHistory, + $$WorkoutHistoriesTableFilterComposer, + $$WorkoutHistoriesTableOrderingComposer, + $$WorkoutHistoriesTableAnnotationComposer, + $$WorkoutHistoriesTableCreateCompanionBuilder, + $$WorkoutHistoriesTableUpdateCompanionBuilder, + (WorkoutHistory, $$WorkoutHistoriesTableReferences), + WorkoutHistory, + PrefetchHooks Function({ + bool sourceWorkoutTemplateId, + bool sourceActiveWorkoutSessionId, + bool workoutHistorySetResultsRefs, + }) + >; +typedef $$WorkoutHistorySetResultsTableCreateCompanionBuilder = + WorkoutHistorySetResultsCompanion Function({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt, + Value schemaVersion, + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + required String workoutHistoryId, + required String programSnapshotId, + required String exerciseSnapshotId, + required int programIndex, + required int exerciseIndex, + required int setIndex, + required String programNameSnapshot, + required String exerciseNameSnapshot, + required bool timeEnabledSnapshot, + required bool repsEnabledSnapshot, + required bool scoreEnabledSnapshot, + Value targetTimeSecondsSnapshot, + Value targetRepsSnapshot, + Value targetScoreSnapshot, + Value actualTimeMs, + Value actualReps, + Value actualScore, + Value scoreLabelSnapshot, + Value scoreUnitSnapshot, + Value startedAt, + Value completedAt, + Value rowid, + }); +typedef $$WorkoutHistorySetResultsTableUpdateCompanionBuilder = + WorkoutHistorySetResultsCompanion Function({ + Value id, + Value createdAt, + Value updatedAt, + Value deletedAt, + Value schemaVersion, + Value syncState, + Value localRevision, + Value originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value workoutHistoryId, + Value programSnapshotId, + Value exerciseSnapshotId, + Value programIndex, + Value exerciseIndex, + Value setIndex, + Value programNameSnapshot, + Value exerciseNameSnapshot, + Value timeEnabledSnapshot, + Value repsEnabledSnapshot, + Value scoreEnabledSnapshot, + Value targetTimeSecondsSnapshot, + Value targetRepsSnapshot, + Value targetScoreSnapshot, + Value actualTimeMs, + Value actualReps, + Value actualScore, + Value scoreLabelSnapshot, + Value scoreUnitSnapshot, + Value startedAt, + Value completedAt, + Value rowid, + }); + +final class $$WorkoutHistorySetResultsTableReferences + extends + BaseReferences< + _$AppDatabase, + $WorkoutHistorySetResultsTable, + WorkoutHistorySetResult + > { + $$WorkoutHistorySetResultsTableReferences( + super.$_db, + super.$_table, + super.$_typedResult, + ); + + static $WorkoutHistoriesTable _workoutHistoryIdTable(_$AppDatabase db) => + db.workoutHistories.createAlias( + 'workout_history_set_results__workout_history_id__workout_history__id', + ); + + $$WorkoutHistoriesTableProcessedTableManager get workoutHistoryId { + final $_column = $_itemColumn('workout_history_id')!; + + final manager = $$WorkoutHistoriesTableTableManager( + $_db, + $_db.workoutHistories, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull(_workoutHistoryIdTable($_db)); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } +} + +class $$WorkoutHistorySetResultsTableFilterComposer + extends Composer<_$AppDatabase, $WorkoutHistorySetResultsTable> { + $$WorkoutHistorySetResultsTableFilterComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnFilters get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get programSnapshotId => $composableBuilder( + column: $table.programSnapshotId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get exerciseSnapshotId => $composableBuilder( + column: $table.exerciseSnapshotId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get programIndex => $composableBuilder( + column: $table.programIndex, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get exerciseIndex => $composableBuilder( + column: $table.exerciseIndex, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get setIndex => $composableBuilder( + column: $table.setIndex, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get programNameSnapshot => $composableBuilder( + column: $table.programNameSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get exerciseNameSnapshot => $composableBuilder( + column: $table.exerciseNameSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get timeEnabledSnapshot => $composableBuilder( + column: $table.timeEnabledSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get repsEnabledSnapshot => $composableBuilder( + column: $table.repsEnabledSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get scoreEnabledSnapshot => $composableBuilder( + column: $table.scoreEnabledSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get targetTimeSecondsSnapshot => $composableBuilder( + column: $table.targetTimeSecondsSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get targetRepsSnapshot => $composableBuilder( + column: $table.targetRepsSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get targetScoreSnapshot => $composableBuilder( + column: $table.targetScoreSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get actualTimeMs => $composableBuilder( + column: $table.actualTimeMs, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get actualReps => $composableBuilder( + column: $table.actualReps, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get actualScore => $composableBuilder( + column: $table.actualScore, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get scoreLabelSnapshot => $composableBuilder( + column: $table.scoreLabelSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get scoreUnitSnapshot => $composableBuilder( + column: $table.scoreUnitSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get startedAt => $composableBuilder( + column: $table.startedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get completedAt => $composableBuilder( + column: $table.completedAt, + builder: (column) => ColumnFilters(column), + ); + + $$WorkoutHistoriesTableFilterComposer get workoutHistoryId { + final $$WorkoutHistoriesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.workoutHistoryId, + referencedTable: $db.workoutHistories, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutHistoriesTableFilterComposer( + $db: $db, + $table: $db.workoutHistories, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$WorkoutHistorySetResultsTableOrderingComposer + extends Composer<_$AppDatabase, $WorkoutHistorySetResultsTable> { + $$WorkoutHistorySetResultsTableOrderingComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnOrderings get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get programSnapshotId => $composableBuilder( + column: $table.programSnapshotId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get exerciseSnapshotId => $composableBuilder( + column: $table.exerciseSnapshotId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get programIndex => $composableBuilder( + column: $table.programIndex, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get exerciseIndex => $composableBuilder( + column: $table.exerciseIndex, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get setIndex => $composableBuilder( + column: $table.setIndex, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get programNameSnapshot => $composableBuilder( + column: $table.programNameSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get exerciseNameSnapshot => $composableBuilder( + column: $table.exerciseNameSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get timeEnabledSnapshot => $composableBuilder( + column: $table.timeEnabledSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get repsEnabledSnapshot => $composableBuilder( + column: $table.repsEnabledSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get scoreEnabledSnapshot => $composableBuilder( + column: $table.scoreEnabledSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get targetTimeSecondsSnapshot => $composableBuilder( + column: $table.targetTimeSecondsSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get targetRepsSnapshot => $composableBuilder( + column: $table.targetRepsSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get targetScoreSnapshot => $composableBuilder( + column: $table.targetScoreSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get actualTimeMs => $composableBuilder( + column: $table.actualTimeMs, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get actualReps => $composableBuilder( + column: $table.actualReps, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get actualScore => $composableBuilder( + column: $table.actualScore, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get scoreLabelSnapshot => $composableBuilder( + column: $table.scoreLabelSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get scoreUnitSnapshot => $composableBuilder( + column: $table.scoreUnitSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get startedAt => $composableBuilder( + column: $table.startedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get completedAt => $composableBuilder( + column: $table.completedAt, + builder: (column) => ColumnOrderings(column), + ); + + $$WorkoutHistoriesTableOrderingComposer get workoutHistoryId { + final $$WorkoutHistoriesTableOrderingComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.workoutHistoryId, + referencedTable: $db.workoutHistories, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutHistoriesTableOrderingComposer( + $db: $db, + $table: $db.workoutHistories, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$WorkoutHistorySetResultsTableAnnotationComposer + extends Composer<_$AppDatabase, $WorkoutHistorySetResultsTable> { + $$WorkoutHistorySetResultsTableAnnotationComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + GeneratedColumn get id => + $composableBuilder(column: $table.id, builder: (column) => column); + + GeneratedColumn get createdAt => + $composableBuilder(column: $table.createdAt, builder: (column) => column); + + GeneratedColumn get updatedAt => + $composableBuilder(column: $table.updatedAt, builder: (column) => column); + + GeneratedColumn get deletedAt => + $composableBuilder(column: $table.deletedAt, builder: (column) => column); + + GeneratedColumn get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => column, + ); + + GeneratedColumn get syncState => + $composableBuilder(column: $table.syncState, builder: (column) => column); + + GeneratedColumn get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => column, + ); + + GeneratedColumn get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => column, + ); + + GeneratedColumn get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => column, + ); + + GeneratedColumn get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => column, + ); + + GeneratedColumn get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => column, + ); + + GeneratedColumn get programSnapshotId => $composableBuilder( + column: $table.programSnapshotId, + builder: (column) => column, + ); + + GeneratedColumn get exerciseSnapshotId => $composableBuilder( + column: $table.exerciseSnapshotId, + builder: (column) => column, + ); + + GeneratedColumn get programIndex => $composableBuilder( + column: $table.programIndex, + builder: (column) => column, + ); + + GeneratedColumn get exerciseIndex => $composableBuilder( + column: $table.exerciseIndex, + builder: (column) => column, + ); + + GeneratedColumn get setIndex => + $composableBuilder(column: $table.setIndex, builder: (column) => column); + + GeneratedColumn get programNameSnapshot => $composableBuilder( + column: $table.programNameSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get exerciseNameSnapshot => $composableBuilder( + column: $table.exerciseNameSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get timeEnabledSnapshot => $composableBuilder( + column: $table.timeEnabledSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get repsEnabledSnapshot => $composableBuilder( + column: $table.repsEnabledSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get scoreEnabledSnapshot => $composableBuilder( + column: $table.scoreEnabledSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get targetTimeSecondsSnapshot => $composableBuilder( + column: $table.targetTimeSecondsSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get targetRepsSnapshot => $composableBuilder( + column: $table.targetRepsSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get targetScoreSnapshot => $composableBuilder( + column: $table.targetScoreSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get actualTimeMs => $composableBuilder( + column: $table.actualTimeMs, + builder: (column) => column, + ); + + GeneratedColumn get actualReps => $composableBuilder( + column: $table.actualReps, + builder: (column) => column, + ); + + GeneratedColumn get actualScore => $composableBuilder( + column: $table.actualScore, + builder: (column) => column, + ); + + GeneratedColumn get scoreLabelSnapshot => $composableBuilder( + column: $table.scoreLabelSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get scoreUnitSnapshot => $composableBuilder( + column: $table.scoreUnitSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get startedAt => + $composableBuilder(column: $table.startedAt, builder: (column) => column); + + GeneratedColumn get completedAt => $composableBuilder( + column: $table.completedAt, + builder: (column) => column, + ); + + $$WorkoutHistoriesTableAnnotationComposer get workoutHistoryId { + final $$WorkoutHistoriesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.workoutHistoryId, + referencedTable: $db.workoutHistories, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutHistoriesTableAnnotationComposer( + $db: $db, + $table: $db.workoutHistories, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$WorkoutHistorySetResultsTableTableManager + extends + RootTableManager< + _$AppDatabase, + $WorkoutHistorySetResultsTable, + WorkoutHistorySetResult, + $$WorkoutHistorySetResultsTableFilterComposer, + $$WorkoutHistorySetResultsTableOrderingComposer, + $$WorkoutHistorySetResultsTableAnnotationComposer, + $$WorkoutHistorySetResultsTableCreateCompanionBuilder, + $$WorkoutHistorySetResultsTableUpdateCompanionBuilder, + (WorkoutHistorySetResult, $$WorkoutHistorySetResultsTableReferences), + WorkoutHistorySetResult, + PrefetchHooks Function({bool workoutHistoryId}) + > { + $$WorkoutHistorySetResultsTableTableManager( + _$AppDatabase db, + $WorkoutHistorySetResultsTable table, + ) : super( + TableManagerState( + db: db, + table: table, + createFilteringComposer: () => + $$WorkoutHistorySetResultsTableFilterComposer( + $db: db, + $table: table, + ), + createOrderingComposer: () => + $$WorkoutHistorySetResultsTableOrderingComposer( + $db: db, + $table: table, + ), + createComputedFieldComposer: () => + $$WorkoutHistorySetResultsTableAnnotationComposer( + $db: db, + $table: table, + ), + updateCompanionCallback: + ({ + Value id = const Value.absent(), + Value createdAt = const Value.absent(), + Value updatedAt = const Value.absent(), + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + Value syncState = const Value.absent(), + Value localRevision = const Value.absent(), + Value originDeviceId = const Value.absent(), + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value workoutHistoryId = const Value.absent(), + Value programSnapshotId = const Value.absent(), + Value exerciseSnapshotId = const Value.absent(), + Value programIndex = const Value.absent(), + Value exerciseIndex = const Value.absent(), + Value setIndex = const Value.absent(), + Value programNameSnapshot = const Value.absent(), + Value exerciseNameSnapshot = const Value.absent(), + Value timeEnabledSnapshot = const Value.absent(), + Value repsEnabledSnapshot = const Value.absent(), + Value scoreEnabledSnapshot = const Value.absent(), + Value targetTimeSecondsSnapshot = const Value.absent(), + Value targetRepsSnapshot = const Value.absent(), + Value targetScoreSnapshot = const Value.absent(), + Value actualTimeMs = const Value.absent(), + Value actualReps = const Value.absent(), + Value actualScore = const Value.absent(), + Value scoreLabelSnapshot = const Value.absent(), + Value scoreUnitSnapshot = const Value.absent(), + Value startedAt = const Value.absent(), + Value completedAt = const Value.absent(), + Value rowid = const Value.absent(), + }) => WorkoutHistorySetResultsCompanion( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + workoutHistoryId: workoutHistoryId, + programSnapshotId: programSnapshotId, + exerciseSnapshotId: exerciseSnapshotId, + programIndex: programIndex, + exerciseIndex: exerciseIndex, + setIndex: setIndex, + programNameSnapshot: programNameSnapshot, + exerciseNameSnapshot: exerciseNameSnapshot, + timeEnabledSnapshot: timeEnabledSnapshot, + repsEnabledSnapshot: repsEnabledSnapshot, + scoreEnabledSnapshot: scoreEnabledSnapshot, + targetTimeSecondsSnapshot: targetTimeSecondsSnapshot, + targetRepsSnapshot: targetRepsSnapshot, + targetScoreSnapshot: targetScoreSnapshot, + actualTimeMs: actualTimeMs, + actualReps: actualReps, + actualScore: actualScore, + scoreLabelSnapshot: scoreLabelSnapshot, + scoreUnitSnapshot: scoreUnitSnapshot, + startedAt: startedAt, + completedAt: completedAt, + rowid: rowid, + ), + createCompanionCallback: + ({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + required String workoutHistoryId, + required String programSnapshotId, + required String exerciseSnapshotId, + required int programIndex, + required int exerciseIndex, + required int setIndex, + required String programNameSnapshot, + required String exerciseNameSnapshot, + required bool timeEnabledSnapshot, + required bool repsEnabledSnapshot, + required bool scoreEnabledSnapshot, + Value targetTimeSecondsSnapshot = const Value.absent(), + Value targetRepsSnapshot = const Value.absent(), + Value targetScoreSnapshot = const Value.absent(), + Value actualTimeMs = const Value.absent(), + Value actualReps = const Value.absent(), + Value actualScore = const Value.absent(), + Value scoreLabelSnapshot = const Value.absent(), + Value scoreUnitSnapshot = const Value.absent(), + Value startedAt = const Value.absent(), + Value completedAt = const Value.absent(), + Value rowid = const Value.absent(), + }) => WorkoutHistorySetResultsCompanion.insert( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + workoutHistoryId: workoutHistoryId, + programSnapshotId: programSnapshotId, + exerciseSnapshotId: exerciseSnapshotId, + programIndex: programIndex, + exerciseIndex: exerciseIndex, + setIndex: setIndex, + programNameSnapshot: programNameSnapshot, + exerciseNameSnapshot: exerciseNameSnapshot, + timeEnabledSnapshot: timeEnabledSnapshot, + repsEnabledSnapshot: repsEnabledSnapshot, + scoreEnabledSnapshot: scoreEnabledSnapshot, + targetTimeSecondsSnapshot: targetTimeSecondsSnapshot, + targetRepsSnapshot: targetRepsSnapshot, + targetScoreSnapshot: targetScoreSnapshot, + actualTimeMs: actualTimeMs, + actualReps: actualReps, + actualScore: actualScore, + scoreLabelSnapshot: scoreLabelSnapshot, + scoreUnitSnapshot: scoreUnitSnapshot, + startedAt: startedAt, + completedAt: completedAt, + rowid: rowid, + ), + withReferenceMapper: (p0) => p0 + .map( + (e) => ( + e.readTable(table), + $$WorkoutHistorySetResultsTableReferences(db, table, e), + ), + ) + .toList(), + prefetchHooksCallback: ({workoutHistoryId = false}) { + return PrefetchHooks( + db: db, + explicitlyWatchedTables: [], + addJoins: + < + T extends TableManagerState< + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic + > + >(state) { + if (workoutHistoryId) { + state = + state.withJoin( + currentTable: table, + currentColumn: table.workoutHistoryId, + referencedTable: + $$WorkoutHistorySetResultsTableReferences + ._workoutHistoryIdTable(db), + referencedColumn: + $$WorkoutHistorySetResultsTableReferences + ._workoutHistoryIdTable(db) + .id, + ) + as T; + } + + return state; + }, + getPrefetchedDataCallback: (items) async { + return []; + }, + ); + }, + ), + ); +} + +typedef $$WorkoutHistorySetResultsTableProcessedTableManager = + ProcessedTableManager< + _$AppDatabase, + $WorkoutHistorySetResultsTable, + WorkoutHistorySetResult, + $$WorkoutHistorySetResultsTableFilterComposer, + $$WorkoutHistorySetResultsTableOrderingComposer, + $$WorkoutHistorySetResultsTableAnnotationComposer, + $$WorkoutHistorySetResultsTableCreateCompanionBuilder, + $$WorkoutHistorySetResultsTableUpdateCompanionBuilder, + (WorkoutHistorySetResult, $$WorkoutHistorySetResultsTableReferences), + WorkoutHistorySetResult, + PrefetchHooks Function({bool workoutHistoryId}) + >; +typedef $$WorkoutTemplateProgramsTableCreateCompanionBuilder = + WorkoutTemplateProgramsCompanion Function({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt, + Value schemaVersion, + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + required String workoutTemplateId, + Value sourceProgramId, + required int position, + required String programNameSnapshot, + required int defaultRestSecondsSnapshot, + required String programSnapshotJson, + Value rowid, + }); +typedef $$WorkoutTemplateProgramsTableUpdateCompanionBuilder = + WorkoutTemplateProgramsCompanion Function({ + Value id, + Value createdAt, + Value updatedAt, + Value deletedAt, + Value schemaVersion, + Value syncState, + Value localRevision, + Value originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value workoutTemplateId, + Value sourceProgramId, + Value position, + Value programNameSnapshot, + Value defaultRestSecondsSnapshot, + Value programSnapshotJson, + Value rowid, + }); + +final class $$WorkoutTemplateProgramsTableReferences + extends + BaseReferences< + _$AppDatabase, + $WorkoutTemplateProgramsTable, + WorkoutTemplateProgram + > { + $$WorkoutTemplateProgramsTableReferences( + super.$_db, + super.$_table, + super.$_typedResult, + ); + + static $WorkoutTemplatesTable _workoutTemplateIdTable(_$AppDatabase db) => + db.workoutTemplates.createAlias( + 'workout_template_programs__workout_template_id__workout_templates__id', + ); + + $$WorkoutTemplatesTableProcessedTableManager get workoutTemplateId { + final $_column = $_itemColumn('workout_template_id')!; + + final manager = $$WorkoutTemplatesTableTableManager( + $_db, + $_db.workoutTemplates, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull(_workoutTemplateIdTable($_db)); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } + + static $ProgramsTable _sourceProgramIdTable(_$AppDatabase db) => + db.programs.createAlias( + 'workout_template_programs__source_program_id__programs__id', + ); + + $$ProgramsTableProcessedTableManager? get sourceProgramId { + final $_column = $_itemColumn('source_program_id'); + if ($_column == null) return null; + final manager = $$ProgramsTableTableManager( + $_db, + $_db.programs, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull(_sourceProgramIdTable($_db)); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } + + static MultiTypedResultKey< + $WorkoutTemplateExerciseOverridesTable, + List + > + _workoutTemplateExerciseOverridesRefsTable( + _$AppDatabase db, + ) => MultiTypedResultKey.fromTable( + db.workoutTemplateExerciseOverrides, + aliasName: + 'workout_template_programs__id__workout_template_exercise_overrides__workout_template_program_id', + ); + + $$WorkoutTemplateExerciseOverridesTableProcessedTableManager + get workoutTemplateExerciseOverridesRefs { + final manager = + $$WorkoutTemplateExerciseOverridesTableTableManager( + $_db, + $_db.workoutTemplateExerciseOverrides, + ).filter( + (f) => f.workoutTemplateProgramId.id.sqlEquals( + $_itemColumn('id')!, + ), + ); + + final cache = $_typedResult.readTableOrNull( + _workoutTemplateExerciseOverridesRefsTable($_db), + ); + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: cache), + ); + } +} + +class $$WorkoutTemplateProgramsTableFilterComposer + extends Composer<_$AppDatabase, $WorkoutTemplateProgramsTable> { + $$WorkoutTemplateProgramsTableFilterComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnFilters get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get position => $composableBuilder( + column: $table.position, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get programNameSnapshot => $composableBuilder( + column: $table.programNameSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get defaultRestSecondsSnapshot => $composableBuilder( + column: $table.defaultRestSecondsSnapshot, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get programSnapshotJson => $composableBuilder( + column: $table.programSnapshotJson, + builder: (column) => ColumnFilters(column), + ); + + $$WorkoutTemplatesTableFilterComposer get workoutTemplateId { + final $$WorkoutTemplatesTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.workoutTemplateId, + referencedTable: $db.workoutTemplates, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplatesTableFilterComposer( + $db: $db, + $table: $db.workoutTemplates, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$ProgramsTableFilterComposer get sourceProgramId { + final $$ProgramsTableFilterComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceProgramId, + referencedTable: $db.programs, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramsTableFilterComposer( + $db: $db, + $table: $db.programs, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + Expression workoutTemplateExerciseOverridesRefs( + Expression Function( + $$WorkoutTemplateExerciseOverridesTableFilterComposer f, + ) + f, + ) { + final $$WorkoutTemplateExerciseOverridesTableFilterComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.workoutTemplateExerciseOverrides, + getReferencedColumn: (t) => t.workoutTemplateProgramId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplateExerciseOverridesTableFilterComposer( + $db: $db, + $table: $db.workoutTemplateExerciseOverrides, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$WorkoutTemplateProgramsTableOrderingComposer + extends Composer<_$AppDatabase, $WorkoutTemplateProgramsTable> { + $$WorkoutTemplateProgramsTableOrderingComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnOrderings get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get position => $composableBuilder( + column: $table.position, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get programNameSnapshot => $composableBuilder( + column: $table.programNameSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get defaultRestSecondsSnapshot => $composableBuilder( + column: $table.defaultRestSecondsSnapshot, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get programSnapshotJson => $composableBuilder( + column: $table.programSnapshotJson, + builder: (column) => ColumnOrderings(column), + ); + + $$WorkoutTemplatesTableOrderingComposer get workoutTemplateId { + final $$WorkoutTemplatesTableOrderingComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.workoutTemplateId, + referencedTable: $db.workoutTemplates, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplatesTableOrderingComposer( + $db: $db, + $table: $db.workoutTemplates, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$ProgramsTableOrderingComposer get sourceProgramId { + final $$ProgramsTableOrderingComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceProgramId, + referencedTable: $db.programs, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramsTableOrderingComposer( + $db: $db, + $table: $db.programs, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$WorkoutTemplateProgramsTableAnnotationComposer + extends Composer<_$AppDatabase, $WorkoutTemplateProgramsTable> { + $$WorkoutTemplateProgramsTableAnnotationComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + GeneratedColumn get id => + $composableBuilder(column: $table.id, builder: (column) => column); + + GeneratedColumn get createdAt => + $composableBuilder(column: $table.createdAt, builder: (column) => column); + + GeneratedColumn get updatedAt => + $composableBuilder(column: $table.updatedAt, builder: (column) => column); + + GeneratedColumn get deletedAt => + $composableBuilder(column: $table.deletedAt, builder: (column) => column); + + GeneratedColumn get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => column, + ); + + GeneratedColumn get syncState => + $composableBuilder(column: $table.syncState, builder: (column) => column); + + GeneratedColumn get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => column, + ); + + GeneratedColumn get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => column, + ); + + GeneratedColumn get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => column, + ); + + GeneratedColumn get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => column, + ); + + GeneratedColumn get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => column, + ); + + GeneratedColumn get position => + $composableBuilder(column: $table.position, builder: (column) => column); + + GeneratedColumn get programNameSnapshot => $composableBuilder( + column: $table.programNameSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get defaultRestSecondsSnapshot => $composableBuilder( + column: $table.defaultRestSecondsSnapshot, + builder: (column) => column, + ); + + GeneratedColumn get programSnapshotJson => $composableBuilder( + column: $table.programSnapshotJson, + builder: (column) => column, + ); + + $$WorkoutTemplatesTableAnnotationComposer get workoutTemplateId { + final $$WorkoutTemplatesTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.workoutTemplateId, + referencedTable: $db.workoutTemplates, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplatesTableAnnotationComposer( + $db: $db, + $table: $db.workoutTemplates, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + $$ProgramsTableAnnotationComposer get sourceProgramId { + final $$ProgramsTableAnnotationComposer composer = $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.sourceProgramId, + referencedTable: $db.programs, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$ProgramsTableAnnotationComposer( + $db: $db, + $table: $db.programs, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } + + Expression workoutTemplateExerciseOverridesRefs( + Expression Function( + $$WorkoutTemplateExerciseOverridesTableAnnotationComposer a, + ) + f, + ) { + final $$WorkoutTemplateExerciseOverridesTableAnnotationComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.id, + referencedTable: $db.workoutTemplateExerciseOverrides, + getReferencedColumn: (t) => t.workoutTemplateProgramId, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplateExerciseOverridesTableAnnotationComposer( + $db: $db, + $table: $db.workoutTemplateExerciseOverrides, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return f(composer); + } +} + +class $$WorkoutTemplateProgramsTableTableManager + extends + RootTableManager< + _$AppDatabase, + $WorkoutTemplateProgramsTable, + WorkoutTemplateProgram, + $$WorkoutTemplateProgramsTableFilterComposer, + $$WorkoutTemplateProgramsTableOrderingComposer, + $$WorkoutTemplateProgramsTableAnnotationComposer, + $$WorkoutTemplateProgramsTableCreateCompanionBuilder, + $$WorkoutTemplateProgramsTableUpdateCompanionBuilder, + (WorkoutTemplateProgram, $$WorkoutTemplateProgramsTableReferences), + WorkoutTemplateProgram, + PrefetchHooks Function({ + bool workoutTemplateId, + bool sourceProgramId, + bool workoutTemplateExerciseOverridesRefs, + }) + > { + $$WorkoutTemplateProgramsTableTableManager( + _$AppDatabase db, + $WorkoutTemplateProgramsTable table, + ) : super( + TableManagerState( + db: db, + table: table, + createFilteringComposer: () => + $$WorkoutTemplateProgramsTableFilterComposer( + $db: db, + $table: table, + ), + createOrderingComposer: () => + $$WorkoutTemplateProgramsTableOrderingComposer( + $db: db, + $table: table, + ), + createComputedFieldComposer: () => + $$WorkoutTemplateProgramsTableAnnotationComposer( + $db: db, + $table: table, + ), + updateCompanionCallback: + ({ + Value id = const Value.absent(), + Value createdAt = const Value.absent(), + Value updatedAt = const Value.absent(), + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + Value syncState = const Value.absent(), + Value localRevision = const Value.absent(), + Value originDeviceId = const Value.absent(), + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value workoutTemplateId = const Value.absent(), + Value sourceProgramId = const Value.absent(), + Value position = const Value.absent(), + Value programNameSnapshot = const Value.absent(), + Value defaultRestSecondsSnapshot = const Value.absent(), + Value programSnapshotJson = const Value.absent(), + Value rowid = const Value.absent(), + }) => WorkoutTemplateProgramsCompanion( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + workoutTemplateId: workoutTemplateId, + sourceProgramId: sourceProgramId, + position: position, + programNameSnapshot: programNameSnapshot, + defaultRestSecondsSnapshot: defaultRestSecondsSnapshot, + programSnapshotJson: programSnapshotJson, + rowid: rowid, + ), + createCompanionCallback: + ({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + required String workoutTemplateId, + Value sourceProgramId = const Value.absent(), + required int position, + required String programNameSnapshot, + required int defaultRestSecondsSnapshot, + required String programSnapshotJson, + Value rowid = const Value.absent(), + }) => WorkoutTemplateProgramsCompanion.insert( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + workoutTemplateId: workoutTemplateId, + sourceProgramId: sourceProgramId, + position: position, + programNameSnapshot: programNameSnapshot, + defaultRestSecondsSnapshot: defaultRestSecondsSnapshot, + programSnapshotJson: programSnapshotJson, + rowid: rowid, + ), + withReferenceMapper: (p0) => p0 + .map( + (e) => ( + e.readTable(table), + $$WorkoutTemplateProgramsTableReferences(db, table, e), + ), + ) + .toList(), + prefetchHooksCallback: + ({ + workoutTemplateId = false, + sourceProgramId = false, + workoutTemplateExerciseOverridesRefs = false, + }) { + return PrefetchHooks( + db: db, + explicitlyWatchedTables: [ + if (workoutTemplateExerciseOverridesRefs) + db.workoutTemplateExerciseOverrides, + ], + addJoins: + < + T extends TableManagerState< + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic + > + >(state) { + if (workoutTemplateId) { + state = + state.withJoin( + currentTable: table, + currentColumn: table.workoutTemplateId, + referencedTable: + $$WorkoutTemplateProgramsTableReferences + ._workoutTemplateIdTable(db), + referencedColumn: + $$WorkoutTemplateProgramsTableReferences + ._workoutTemplateIdTable(db) + .id, + ) + as T; + } + if (sourceProgramId) { + state = + state.withJoin( + currentTable: table, + currentColumn: table.sourceProgramId, + referencedTable: + $$WorkoutTemplateProgramsTableReferences + ._sourceProgramIdTable(db), + referencedColumn: + $$WorkoutTemplateProgramsTableReferences + ._sourceProgramIdTable(db) + .id, + ) + as T; + } + + return state; + }, + getPrefetchedDataCallback: (items) async { + return [ + if (workoutTemplateExerciseOverridesRefs) + await $_getPrefetchedData< + WorkoutTemplateProgram, + $WorkoutTemplateProgramsTable, + WorkoutTemplateExerciseOverride + >( + currentTable: table, + referencedTable: + $$WorkoutTemplateProgramsTableReferences + ._workoutTemplateExerciseOverridesRefsTable( + db, + ), + managerFromTypedResult: (p0) => + $$WorkoutTemplateProgramsTableReferences( + db, + table, + p0, + ).workoutTemplateExerciseOverridesRefs, + referencedItemsForCurrentItem: + (item, referencedItems) => referencedItems.where( + (e) => e.workoutTemplateProgramId == item.id, + ), + typedResults: items, + ), + ]; + }, + ); + }, + ), + ); +} + +typedef $$WorkoutTemplateProgramsTableProcessedTableManager = + ProcessedTableManager< + _$AppDatabase, + $WorkoutTemplateProgramsTable, + WorkoutTemplateProgram, + $$WorkoutTemplateProgramsTableFilterComposer, + $$WorkoutTemplateProgramsTableOrderingComposer, + $$WorkoutTemplateProgramsTableAnnotationComposer, + $$WorkoutTemplateProgramsTableCreateCompanionBuilder, + $$WorkoutTemplateProgramsTableUpdateCompanionBuilder, + (WorkoutTemplateProgram, $$WorkoutTemplateProgramsTableReferences), + WorkoutTemplateProgram, + PrefetchHooks Function({ + bool workoutTemplateId, + bool sourceProgramId, + bool workoutTemplateExerciseOverridesRefs, + }) + >; +typedef $$WorkoutTemplateExerciseOverridesTableCreateCompanionBuilder = + WorkoutTemplateExerciseOverridesCompanion Function({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt, + Value schemaVersion, + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + required String workoutTemplateProgramId, + required String snapshotProgramExerciseId, + Value setsCountOverride, + Value targetTimeSecondsOverride, + Value targetRepsOverride, + Value targetScoreOverride, + Value rowid, + }); +typedef $$WorkoutTemplateExerciseOverridesTableUpdateCompanionBuilder = + WorkoutTemplateExerciseOverridesCompanion Function({ + Value id, + Value createdAt, + Value updatedAt, + Value deletedAt, + Value schemaVersion, + Value syncState, + Value localRevision, + Value originDeviceId, + Value futureOwnerProfileId, + Value lastSyncedAt, + Value remoteRevision, + Value workoutTemplateProgramId, + Value snapshotProgramExerciseId, + Value setsCountOverride, + Value targetTimeSecondsOverride, + Value targetRepsOverride, + Value targetScoreOverride, + Value rowid, + }); + +final class $$WorkoutTemplateExerciseOverridesTableReferences + extends + BaseReferences< + _$AppDatabase, + $WorkoutTemplateExerciseOverridesTable, + WorkoutTemplateExerciseOverride + > { + $$WorkoutTemplateExerciseOverridesTableReferences( + super.$_db, + super.$_table, + super.$_typedResult, + ); + + static $WorkoutTemplateProgramsTable _workoutTemplateProgramIdTable( + _$AppDatabase db, + ) => db.workoutTemplatePrograms.createAlias( + 'workout_template_exercise_overrides__workout_template_program_id__workout_template_programs__id', + ); + + $$WorkoutTemplateProgramsTableProcessedTableManager + get workoutTemplateProgramId { + final $_column = $_itemColumn('workout_template_program_id')!; + + final manager = $$WorkoutTemplateProgramsTableTableManager( + $_db, + $_db.workoutTemplatePrograms, + ).filter((f) => f.id.sqlEquals($_column)); + final item = $_typedResult.readTableOrNull( + _workoutTemplateProgramIdTable($_db), + ); + if (item == null) return manager; + return ProcessedTableManager( + manager.$state.copyWith(prefetchedData: [item]), + ); + } +} + +class $$WorkoutTemplateExerciseOverridesTableFilterComposer + extends Composer<_$AppDatabase, $WorkoutTemplateExerciseOverridesTable> { + $$WorkoutTemplateExerciseOverridesTableFilterComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnFilters get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get snapshotProgramExerciseId => $composableBuilder( + column: $table.snapshotProgramExerciseId, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get setsCountOverride => $composableBuilder( + column: $table.setsCountOverride, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get targetTimeSecondsOverride => $composableBuilder( + column: $table.targetTimeSecondsOverride, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get targetRepsOverride => $composableBuilder( + column: $table.targetRepsOverride, + builder: (column) => ColumnFilters(column), + ); + + ColumnFilters get targetScoreOverride => $composableBuilder( + column: $table.targetScoreOverride, + builder: (column) => ColumnFilters(column), + ); + + $$WorkoutTemplateProgramsTableFilterComposer get workoutTemplateProgramId { + final $$WorkoutTemplateProgramsTableFilterComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.workoutTemplateProgramId, + referencedTable: $db.workoutTemplatePrograms, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplateProgramsTableFilterComposer( + $db: $db, + $table: $db.workoutTemplatePrograms, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$WorkoutTemplateExerciseOverridesTableOrderingComposer + extends Composer<_$AppDatabase, $WorkoutTemplateExerciseOverridesTable> { + $$WorkoutTemplateExerciseOverridesTableOrderingComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + ColumnOrderings get id => $composableBuilder( + column: $table.id, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get createdAt => $composableBuilder( + column: $table.createdAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get updatedAt => $composableBuilder( + column: $table.updatedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get deletedAt => $composableBuilder( + column: $table.deletedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get syncState => $composableBuilder( + column: $table.syncState, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get snapshotProgramExerciseId => $composableBuilder( + column: $table.snapshotProgramExerciseId, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get setsCountOverride => $composableBuilder( + column: $table.setsCountOverride, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get targetTimeSecondsOverride => $composableBuilder( + column: $table.targetTimeSecondsOverride, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get targetRepsOverride => $composableBuilder( + column: $table.targetRepsOverride, + builder: (column) => ColumnOrderings(column), + ); + + ColumnOrderings get targetScoreOverride => $composableBuilder( + column: $table.targetScoreOverride, + builder: (column) => ColumnOrderings(column), + ); + + $$WorkoutTemplateProgramsTableOrderingComposer get workoutTemplateProgramId { + final $$WorkoutTemplateProgramsTableOrderingComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.workoutTemplateProgramId, + referencedTable: $db.workoutTemplatePrograms, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplateProgramsTableOrderingComposer( + $db: $db, + $table: $db.workoutTemplatePrograms, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$WorkoutTemplateExerciseOverridesTableAnnotationComposer + extends Composer<_$AppDatabase, $WorkoutTemplateExerciseOverridesTable> { + $$WorkoutTemplateExerciseOverridesTableAnnotationComposer({ + required super.$db, + required super.$table, + super.joinBuilder, + super.$addJoinBuilderToRootComposer, + super.$removeJoinBuilderFromRootComposer, + }); + GeneratedColumn get id => + $composableBuilder(column: $table.id, builder: (column) => column); + + GeneratedColumn get createdAt => + $composableBuilder(column: $table.createdAt, builder: (column) => column); + + GeneratedColumn get updatedAt => + $composableBuilder(column: $table.updatedAt, builder: (column) => column); + + GeneratedColumn get deletedAt => + $composableBuilder(column: $table.deletedAt, builder: (column) => column); + + GeneratedColumn get schemaVersion => $composableBuilder( + column: $table.schemaVersion, + builder: (column) => column, + ); + + GeneratedColumn get syncState => + $composableBuilder(column: $table.syncState, builder: (column) => column); + + GeneratedColumn get localRevision => $composableBuilder( + column: $table.localRevision, + builder: (column) => column, + ); + + GeneratedColumn get originDeviceId => $composableBuilder( + column: $table.originDeviceId, + builder: (column) => column, + ); + + GeneratedColumn get futureOwnerProfileId => $composableBuilder( + column: $table.futureOwnerProfileId, + builder: (column) => column, + ); + + GeneratedColumn get lastSyncedAt => $composableBuilder( + column: $table.lastSyncedAt, + builder: (column) => column, + ); + + GeneratedColumn get remoteRevision => $composableBuilder( + column: $table.remoteRevision, + builder: (column) => column, + ); + + GeneratedColumn get snapshotProgramExerciseId => $composableBuilder( + column: $table.snapshotProgramExerciseId, + builder: (column) => column, + ); + + GeneratedColumn get setsCountOverride => $composableBuilder( + column: $table.setsCountOverride, + builder: (column) => column, + ); + + GeneratedColumn get targetTimeSecondsOverride => $composableBuilder( + column: $table.targetTimeSecondsOverride, + builder: (column) => column, + ); + + GeneratedColumn get targetRepsOverride => $composableBuilder( + column: $table.targetRepsOverride, + builder: (column) => column, + ); + + GeneratedColumn get targetScoreOverride => $composableBuilder( + column: $table.targetScoreOverride, + builder: (column) => column, + ); + + $$WorkoutTemplateProgramsTableAnnotationComposer + get workoutTemplateProgramId { + final $$WorkoutTemplateProgramsTableAnnotationComposer composer = + $composerBuilder( + composer: this, + getCurrentColumn: (t) => t.workoutTemplateProgramId, + referencedTable: $db.workoutTemplatePrograms, + getReferencedColumn: (t) => t.id, + builder: + ( + joinBuilder, { + $addJoinBuilderToRootComposer, + $removeJoinBuilderFromRootComposer, + }) => $$WorkoutTemplateProgramsTableAnnotationComposer( + $db: $db, + $table: $db.workoutTemplatePrograms, + $addJoinBuilderToRootComposer: $addJoinBuilderToRootComposer, + joinBuilder: joinBuilder, + $removeJoinBuilderFromRootComposer: + $removeJoinBuilderFromRootComposer, + ), + ); + return composer; + } +} + +class $$WorkoutTemplateExerciseOverridesTableTableManager + extends + RootTableManager< + _$AppDatabase, + $WorkoutTemplateExerciseOverridesTable, + WorkoutTemplateExerciseOverride, + $$WorkoutTemplateExerciseOverridesTableFilterComposer, + $$WorkoutTemplateExerciseOverridesTableOrderingComposer, + $$WorkoutTemplateExerciseOverridesTableAnnotationComposer, + $$WorkoutTemplateExerciseOverridesTableCreateCompanionBuilder, + $$WorkoutTemplateExerciseOverridesTableUpdateCompanionBuilder, + ( + WorkoutTemplateExerciseOverride, + $$WorkoutTemplateExerciseOverridesTableReferences, + ), + WorkoutTemplateExerciseOverride, + PrefetchHooks Function({bool workoutTemplateProgramId}) + > { + $$WorkoutTemplateExerciseOverridesTableTableManager( + _$AppDatabase db, + $WorkoutTemplateExerciseOverridesTable table, + ) : super( + TableManagerState( + db: db, + table: table, + createFilteringComposer: () => + $$WorkoutTemplateExerciseOverridesTableFilterComposer( + $db: db, + $table: table, + ), + createOrderingComposer: () => + $$WorkoutTemplateExerciseOverridesTableOrderingComposer( + $db: db, + $table: table, + ), + createComputedFieldComposer: () => + $$WorkoutTemplateExerciseOverridesTableAnnotationComposer( + $db: db, + $table: table, + ), + updateCompanionCallback: + ({ + Value id = const Value.absent(), + Value createdAt = const Value.absent(), + Value updatedAt = const Value.absent(), + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + Value syncState = const Value.absent(), + Value localRevision = const Value.absent(), + Value originDeviceId = const Value.absent(), + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + Value workoutTemplateProgramId = const Value.absent(), + Value snapshotProgramExerciseId = const Value.absent(), + Value setsCountOverride = const Value.absent(), + Value targetTimeSecondsOverride = const Value.absent(), + Value targetRepsOverride = const Value.absent(), + Value targetScoreOverride = const Value.absent(), + Value rowid = const Value.absent(), + }) => WorkoutTemplateExerciseOverridesCompanion( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + workoutTemplateProgramId: workoutTemplateProgramId, + snapshotProgramExerciseId: snapshotProgramExerciseId, + setsCountOverride: setsCountOverride, + targetTimeSecondsOverride: targetTimeSecondsOverride, + targetRepsOverride: targetRepsOverride, + targetScoreOverride: targetScoreOverride, + rowid: rowid, + ), + createCompanionCallback: + ({ + required String id, + required DateTime createdAt, + required DateTime updatedAt, + Value deletedAt = const Value.absent(), + Value schemaVersion = const Value.absent(), + required String syncState, + required int localRevision, + required String originDeviceId, + Value futureOwnerProfileId = const Value.absent(), + Value lastSyncedAt = const Value.absent(), + Value remoteRevision = const Value.absent(), + required String workoutTemplateProgramId, + required String snapshotProgramExerciseId, + Value setsCountOverride = const Value.absent(), + Value targetTimeSecondsOverride = const Value.absent(), + Value targetRepsOverride = const Value.absent(), + Value targetScoreOverride = const Value.absent(), + Value rowid = const Value.absent(), + }) => WorkoutTemplateExerciseOverridesCompanion.insert( + id: id, + createdAt: createdAt, + updatedAt: updatedAt, + deletedAt: deletedAt, + schemaVersion: schemaVersion, + syncState: syncState, + localRevision: localRevision, + originDeviceId: originDeviceId, + futureOwnerProfileId: futureOwnerProfileId, + lastSyncedAt: lastSyncedAt, + remoteRevision: remoteRevision, + workoutTemplateProgramId: workoutTemplateProgramId, + snapshotProgramExerciseId: snapshotProgramExerciseId, + setsCountOverride: setsCountOverride, + targetTimeSecondsOverride: targetTimeSecondsOverride, + targetRepsOverride: targetRepsOverride, + targetScoreOverride: targetScoreOverride, + rowid: rowid, + ), + withReferenceMapper: (p0) => p0 + .map( + (e) => ( + e.readTable(table), + $$WorkoutTemplateExerciseOverridesTableReferences( + db, + table, + e, + ), + ), + ) + .toList(), + prefetchHooksCallback: ({workoutTemplateProgramId = false}) { + return PrefetchHooks( + db: db, + explicitlyWatchedTables: [], + addJoins: + < + T extends TableManagerState< + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic, + dynamic + > + >(state) { + if (workoutTemplateProgramId) { + state = + state.withJoin( + currentTable: table, + currentColumn: table.workoutTemplateProgramId, + referencedTable: + $$WorkoutTemplateExerciseOverridesTableReferences + ._workoutTemplateProgramIdTable(db), + referencedColumn: + $$WorkoutTemplateExerciseOverridesTableReferences + ._workoutTemplateProgramIdTable(db) + .id, + ) + as T; + } + + return state; + }, + getPrefetchedDataCallback: (items) async { + return []; + }, + ); + }, + ), + ); +} + +typedef $$WorkoutTemplateExerciseOverridesTableProcessedTableManager = + ProcessedTableManager< + _$AppDatabase, + $WorkoutTemplateExerciseOverridesTable, + WorkoutTemplateExerciseOverride, + $$WorkoutTemplateExerciseOverridesTableFilterComposer, + $$WorkoutTemplateExerciseOverridesTableOrderingComposer, + $$WorkoutTemplateExerciseOverridesTableAnnotationComposer, + $$WorkoutTemplateExerciseOverridesTableCreateCompanionBuilder, + $$WorkoutTemplateExerciseOverridesTableUpdateCompanionBuilder, + ( + WorkoutTemplateExerciseOverride, + $$WorkoutTemplateExerciseOverridesTableReferences, + ), + WorkoutTemplateExerciseOverride, + PrefetchHooks Function({bool workoutTemplateProgramId}) + >; + +class $AppDatabaseManager { + final _$AppDatabase _db; + $AppDatabaseManager(this._db); + $$WorkoutTemplatesTableTableManager get workoutTemplates => + $$WorkoutTemplatesTableTableManager(_db, _db.workoutTemplates); + $$ActiveWorkoutSessionsTableTableManager get activeWorkoutSessions => + $$ActiveWorkoutSessionsTableTableManager(_db, _db.activeWorkoutSessions); + $$ActiveRestStatesTableTableManager get activeRestStates => + $$ActiveRestStatesTableTableManager(_db, _db.activeRestStates); + $$ActiveSetResultsTableTableManager get activeSetResults => + $$ActiveSetResultsTableTableManager(_db, _db.activeSetResults); + $$ChangeLogEntriesTableTableManager get changeLogEntries => + $$ChangeLogEntriesTableTableManager(_db, _db.changeLogEntries); + $$MediaAssetsTableTableManager get mediaAssets => + $$MediaAssetsTableTableManager(_db, _db.mediaAssets); + $$ExercisesTableTableManager get exercises => + $$ExercisesTableTableManager(_db, _db.exercises); + $$ProgramsTableTableManager get programs => + $$ProgramsTableTableManager(_db, _db.programs); + $$ProgramExercisesTableTableManager get programExercises => + $$ProgramExercisesTableTableManager(_db, _db.programExercises); + $$WorkoutHistoriesTableTableManager get workoutHistories => + $$WorkoutHistoriesTableTableManager(_db, _db.workoutHistories); + $$WorkoutHistorySetResultsTableTableManager get workoutHistorySetResults => + $$WorkoutHistorySetResultsTableTableManager( + _db, + _db.workoutHistorySetResults, + ); + $$WorkoutTemplateProgramsTableTableManager get workoutTemplatePrograms => + $$WorkoutTemplateProgramsTableTableManager( + _db, + _db.workoutTemplatePrograms, + ); + $$WorkoutTemplateExerciseOverridesTableTableManager + get workoutTemplateExerciseOverrides => + $$WorkoutTemplateExerciseOverridesTableTableManager( + _db, + _db.workoutTemplateExerciseOverrides, + ); +} diff --git a/lib/infrastructure/local/local.dart b/lib/infrastructure/local/local.dart index 4d80a4c..c44744f 100644 --- a/lib/infrastructure/local/local.dart +++ b/lib/infrastructure/local/local.dart @@ -1 +1,2 @@ export 'app_database.dart'; +export 'local_id.dart'; diff --git a/lib/infrastructure/local/local_id.dart b/lib/infrastructure/local/local_id.dart new file mode 100644 index 0000000..3d5702b --- /dev/null +++ b/lib/infrastructure/local/local_id.dart @@ -0,0 +1,28 @@ +import 'dart:math'; + +const _crockfordBase32 = '0123456789ABCDEFGHJKMNPQRSTVWXYZ'; + +final class LocalIdGenerator { + LocalIdGenerator({Random? random}) : _random = random ?? Random.secure(); + + final Random _random; + + String newUlid({DateTime? now}) { + final timestamp = (now ?? DateTime.now().toUtc()).millisecondsSinceEpoch; + final buffer = StringBuffer(); + + var remainingTimestamp = timestamp; + final timestampChars = List.filled(10, '0'); + for (var index = 9; index >= 0; index--) { + timestampChars[index] = _crockfordBase32[remainingTimestamp & 0x1F]; + remainingTimestamp >>= 5; + } + buffer.writeAll(timestampChars); + + for (var index = 0; index < 16; index++) { + buffer.write(_crockfordBase32[_random.nextInt(32)]); + } + + return buffer.toString(); + } +} diff --git a/lib/infrastructure/local/tables.dart b/lib/infrastructure/local/tables.dart new file mode 100644 index 0000000..7c8b78e --- /dev/null +++ b/lib/infrastructure/local/tables.dart @@ -0,0 +1,381 @@ +import 'package:drift/drift.dart'; + +abstract class SyncableTable extends Table { + TextColumn get id => text()(); + DateTimeColumn get createdAt => dateTime()(); + DateTimeColumn get updatedAt => dateTime()(); + DateTimeColumn get deletedAt => dateTime().nullable()(); + IntColumn get schemaVersion => integer().withDefault(const Constant(1))(); + TextColumn get syncState => text().customConstraint( + "NOT NULL CHECK (sync_state IN ('localOnly', 'dirty', 'synced', " + "'deleted'))", + )(); + IntColumn get localRevision => + integer().customConstraint('NOT NULL CHECK (local_revision >= 0)')(); + TextColumn get originDeviceId => text().withLength(min: 1)(); + TextColumn get futureOwnerProfileId => text().nullable()(); + DateTimeColumn get lastSyncedAt => dateTime().nullable()(); + TextColumn get remoteRevision => text().nullable()(); + + @override + Set get primaryKey => {id}; + + @override + List get customConstraints => const []; +} + +class MediaAssets extends SyncableTable { + @override + String get tableName => 'media_assets'; + + TextColumn get kind => text()(); + TextColumn get localUri => text().withLength(min: 1)(); + TextColumn get mimeType => text().nullable()(); + IntColumn get sizeBytes => integer().nullable()(); + IntColumn get width => integer().nullable()(); + IntColumn get height => integer().nullable()(); + IntColumn get durationMs => integer().nullable()(); + TextColumn get checksum => text().nullable()(); + TextColumn get remoteUri => text().nullable()(); + TextColumn get thumbnailLocalUri => text().nullable()(); + + @override + List get customConstraints => [ + "CHECK (kind IN ('image', 'video'))", + 'CHECK (size_bytes IS NULL OR size_bytes >= 0)', + 'CHECK (width IS NULL OR width > 0)', + 'CHECK (height IS NULL OR height > 0)', + 'CHECK (duration_ms IS NULL OR duration_ms >= 0)', + ]; +} + +class Exercises extends SyncableTable { + @override + String get tableName => 'exercises'; + + TextColumn get name => text().withLength(min: 1)(); + TextColumn get description => text().nullable()(); + @ReferenceName('exerciseImageReferences') + TextColumn get imageMediaId => + text().nullable().references(MediaAssets, #id)(); + + @ReferenceName('exerciseVideoReferences') + TextColumn get videoMediaId => + text().nullable().references(MediaAssets, #id)(); + BoolColumn get hasTimeMeasure => boolean()(); + BoolColumn get hasRepsMeasure => boolean()(); + BoolColumn get hasScoreMeasure => boolean()(); + TextColumn get scoreLabel => text().nullable()(); + TextColumn get scoreUnit => text().nullable()(); + DateTimeColumn get archivedAt => dateTime().nullable()(); + + @override + List get customConstraints => [ + 'CHECK (has_time_measure OR has_reps_measure OR has_score_measure)', + 'CHECK (NOT has_score_measure OR (score_label IS NOT NULL ' + 'AND length(trim(score_label)) > 0 AND score_unit IS NOT NULL ' + 'AND length(trim(score_unit)) > 0))', + ]; +} + +class Programs extends SyncableTable { + @override + String get tableName => 'programs'; + + TextColumn get name => text().withLength(min: 1)(); + IntColumn get defaultRestSeconds => integer()(); + + @override + List get customConstraints => ['CHECK (default_rest_seconds >= 0)']; +} + +class ProgramExercises extends SyncableTable { + @override + String get tableName => 'program_exercises'; + + TextColumn get programId => text().references(Programs, #id)(); + TextColumn get sourceExerciseId => + text().nullable().references(Exercises, #id)(); + IntColumn get position => integer()(); + TextColumn get exerciseNameSnapshot => text().withLength(min: 1)(); + TextColumn get exerciseDescriptionSnapshot => text().nullable()(); + @ReferenceName('programExerciseImageSnapshotReferences') + TextColumn get exerciseImageMediaIdSnapshot => + text().nullable().references(MediaAssets, #id)(); + + @ReferenceName('programExerciseVideoSnapshotReferences') + TextColumn get exerciseVideoMediaIdSnapshot => + text().nullable().references(MediaAssets, #id)(); + BoolColumn get exerciseArchivedSnapshot => + boolean().withDefault(const Constant(false))(); + BoolColumn get availableTimeSnapshot => boolean()(); + BoolColumn get availableRepsSnapshot => boolean()(); + BoolColumn get availableScoreSnapshot => boolean()(); + TextColumn get scoreLabelSnapshot => text().nullable()(); + TextColumn get scoreUnitSnapshot => text().nullable()(); + IntColumn get setsCount => integer()(); + BoolColumn get timeEnabled => boolean()(); + BoolColumn get repsEnabled => boolean()(); + BoolColumn get scoreEnabled => boolean()(); + IntColumn get targetTimeSeconds => integer().nullable()(); + IntColumn get targetReps => integer().nullable()(); + RealColumn get targetScore => real().nullable()(); + IntColumn get restSecondsOverride => integer().nullable()(); + + @override + List get customConstraints => [ + 'UNIQUE (program_id, position)', + 'CHECK (position >= 0)', + 'CHECK (sets_count > 0)', + 'CHECK (time_enabled OR reps_enabled OR score_enabled)', + 'CHECK (NOT time_enabled OR available_time_snapshot)', + 'CHECK (NOT reps_enabled OR available_reps_snapshot)', + 'CHECK (NOT score_enabled OR available_score_snapshot)', + 'CHECK (target_time_seconds IS NULL OR target_time_seconds > 0)', + 'CHECK (target_reps IS NULL OR target_reps > 0)', + 'CHECK (target_score IS NULL OR target_score >= 0)', + 'CHECK (rest_seconds_override IS NULL OR rest_seconds_override >= 0)', + 'CHECK (target_time_seconds IS NULL OR time_enabled)', + 'CHECK (target_reps IS NULL OR reps_enabled)', + 'CHECK (target_score IS NULL OR score_enabled)', + 'CHECK (NOT available_score_snapshot OR (score_label_snapshot ' + 'IS NOT NULL AND length(trim(score_label_snapshot)) > 0 ' + 'AND score_unit_snapshot IS NOT NULL ' + 'AND length(trim(score_unit_snapshot)) > 0))', + ]; +} + +class WorkoutTemplates extends SyncableTable { + @override + String get tableName => 'workout_templates'; + + TextColumn get name => text().withLength(min: 1)(); + DateTimeColumn get lastStartedAt => dateTime().nullable()(); +} + +class WorkoutTemplatePrograms extends SyncableTable { + @override + String get tableName => 'workout_template_programs'; + + TextColumn get workoutTemplateId => + text().references(WorkoutTemplates, #id)(); + TextColumn get sourceProgramId => + text().nullable().references(Programs, #id)(); + IntColumn get position => integer()(); + TextColumn get programNameSnapshot => text().withLength(min: 1)(); + IntColumn get defaultRestSecondsSnapshot => integer()(); + TextColumn get programSnapshotJson => text().withLength(min: 1)(); + + @override + List get customConstraints => [ + 'UNIQUE (workout_template_id, position)', + 'CHECK (position >= 0)', + 'CHECK (default_rest_seconds_snapshot >= 0)', + ]; +} + +class WorkoutTemplateExerciseOverrides extends SyncableTable { + @override + String get tableName => 'workout_template_exercise_overrides'; + + TextColumn get workoutTemplateProgramId => + text().references(WorkoutTemplatePrograms, #id)(); + TextColumn get snapshotProgramExerciseId => text().withLength(min: 1)(); + IntColumn get setsCountOverride => integer().nullable()(); + IntColumn get targetTimeSecondsOverride => integer().nullable()(); + IntColumn get targetRepsOverride => integer().nullable()(); + RealColumn get targetScoreOverride => real().nullable()(); + + @override + List get customConstraints => [ + 'UNIQUE (workout_template_program_id, snapshot_program_exercise_id)', + 'CHECK (sets_count_override IS NULL OR sets_count_override > 0)', + 'CHECK (target_time_seconds_override IS NULL OR ' + 'target_time_seconds_override > 0)', + 'CHECK (target_reps_override IS NULL OR target_reps_override > 0)', + 'CHECK (target_score_override IS NULL OR target_score_override >= 0)', + ]; +} + +class ActiveWorkoutSessions extends SyncableTable { + @override + String get tableName => 'active_workout_sessions'; + + TextColumn get sourceWorkoutTemplateId => + text().nullable().references(WorkoutTemplates, #id)(); + TextColumn get status => text()(); + DateTimeColumn get startedAt => dateTime()(); + DateTimeColumn get pausedAt => dateTime().nullable()(); + DateTimeColumn get endedAt => dateTime().nullable()(); + DateTimeColumn get lastPersistedAt => dateTime()(); + IntColumn get elapsedActiveMs => integer()(); + IntColumn get currentProgramIndex => integer()(); + IntColumn get currentExerciseIndex => integer()(); + IntColumn get currentSetIndex => integer()(); + TextColumn get resolvedTemplateSnapshotJson => text().withLength(min: 1)(); + + @override + List get customConstraints => [ + "CHECK (status IN ('running', 'paused', 'savedExit', 'completed', " + "'abandoned'))", + 'CHECK (elapsed_active_ms >= 0)', + 'CHECK (current_program_index >= 0)', + 'CHECK (current_exercise_index >= 0)', + 'CHECK (current_set_index >= 0)', + ]; +} + +class ActiveSetResults extends SyncableTable { + @override + String get tableName => 'active_set_results'; + + TextColumn get activeWorkoutSessionId => + text().references(ActiveWorkoutSessions, #id)(); + TextColumn get programSnapshotId => text().withLength(min: 1)(); + TextColumn get exerciseSnapshotId => text().withLength(min: 1)(); + IntColumn get programIndex => integer()(); + IntColumn get exerciseIndex => integer()(); + IntColumn get setIndex => integer()(); + DateTimeColumn get startedAt => dateTime().nullable()(); + DateTimeColumn get completedAt => dateTime().nullable()(); + IntColumn get actualTimeMs => integer().nullable()(); + IntColumn get actualReps => integer().nullable()(); + RealColumn get actualScore => real().nullable()(); + TextColumn get scoreLabelSnapshot => text().nullable()(); + TextColumn get scoreUnitSnapshot => text().nullable()(); + TextColumn get note => text().nullable()(); + + @override + List get customConstraints => [ + 'UNIQUE (active_workout_session_id, program_index, exercise_index, ' + 'set_index)', + 'CHECK (program_index >= 0)', + 'CHECK (exercise_index >= 0)', + 'CHECK (set_index >= 0)', + 'CHECK (actual_time_ms IS NULL OR actual_time_ms >= 0)', + 'CHECK (actual_reps IS NULL OR actual_reps >= 0)', + 'CHECK (actual_score IS NULL OR actual_score >= 0)', + 'CHECK (actual_score IS NULL OR (score_label_snapshot IS NOT NULL ' + 'AND length(trim(score_label_snapshot)) > 0 ' + 'AND score_unit_snapshot IS NOT NULL ' + 'AND length(trim(score_unit_snapshot)) > 0))', + ]; +} + +class ActiveRestStates extends SyncableTable { + @override + String get tableName => 'active_rest_states'; + + TextColumn get activeWorkoutSessionId => + text().references(ActiveWorkoutSessions, #id)(); + IntColumn get afterProgramIndex => integer()(); + IntColumn get afterExerciseIndex => integer()(); + IntColumn get afterSetIndex => integer()(); + IntColumn get plannedRestSeconds => integer()(); + IntColumn get adjustedRestSeconds => integer()(); + DateTimeColumn get startedAt => dateTime()(); + DateTimeColumn get endedAt => dateTime().nullable()(); + DateTimeColumn get skippedAt => dateTime().nullable()(); + + @override + List get customConstraints => [ + 'CHECK (after_program_index >= 0)', + 'CHECK (after_exercise_index >= 0)', + 'CHECK (after_set_index >= 0)', + 'CHECK (planned_rest_seconds >= 0)', + 'CHECK (adjusted_rest_seconds >= 0)', + 'CHECK (ended_at IS NULL OR skipped_at IS NULL)', + ]; +} + +class WorkoutHistories extends SyncableTable { + @override + String get tableName => 'workout_history'; + + TextColumn get sourceWorkoutTemplateId => + text().nullable().references(WorkoutTemplates, #id)(); + TextColumn get sourceActiveWorkoutSessionId => + text().nullable().references(ActiveWorkoutSessions, #id)(); + TextColumn get nameSnapshot => text().withLength(min: 1)(); + DateTimeColumn get startedAt => dateTime()(); + DateTimeColumn get endedAt => dateTime()(); + IntColumn get totalActiveMs => integer()(); + BoolColumn get completed => boolean()(); + TextColumn get historySnapshotJson => text().withLength(min: 1)(); + + @override + List get customConstraints => ['CHECK (total_active_ms >= 0)']; +} + +class WorkoutHistorySetResults extends SyncableTable { + @override + String get tableName => 'workout_history_set_results'; + + TextColumn get workoutHistoryId => text().references(WorkoutHistories, #id)(); + TextColumn get programSnapshotId => text().withLength(min: 1)(); + TextColumn get exerciseSnapshotId => text().withLength(min: 1)(); + IntColumn get programIndex => integer()(); + IntColumn get exerciseIndex => integer()(); + IntColumn get setIndex => integer()(); + TextColumn get programNameSnapshot => text().withLength(min: 1)(); + TextColumn get exerciseNameSnapshot => text().withLength(min: 1)(); + BoolColumn get timeEnabledSnapshot => boolean()(); + BoolColumn get repsEnabledSnapshot => boolean()(); + BoolColumn get scoreEnabledSnapshot => boolean()(); + IntColumn get targetTimeSecondsSnapshot => integer().nullable()(); + IntColumn get targetRepsSnapshot => integer().nullable()(); + RealColumn get targetScoreSnapshot => real().nullable()(); + IntColumn get actualTimeMs => integer().nullable()(); + IntColumn get actualReps => integer().nullable()(); + RealColumn get actualScore => real().nullable()(); + TextColumn get scoreLabelSnapshot => text().nullable()(); + TextColumn get scoreUnitSnapshot => text().nullable()(); + DateTimeColumn get startedAt => dateTime().nullable()(); + DateTimeColumn get completedAt => dateTime().nullable()(); + + @override + List get customConstraints => [ + 'UNIQUE (workout_history_id, program_index, exercise_index, ' + 'set_index)', + 'CHECK (program_index >= 0)', + 'CHECK (exercise_index >= 0)', + 'CHECK (set_index >= 0)', + 'CHECK (time_enabled_snapshot OR reps_enabled_snapshot OR ' + 'score_enabled_snapshot)', + 'CHECK (target_time_seconds_snapshot IS NULL OR ' + 'target_time_seconds_snapshot > 0)', + 'CHECK (target_reps_snapshot IS NULL OR target_reps_snapshot > 0)', + 'CHECK (target_score_snapshot IS NULL OR target_score_snapshot >= 0)', + 'CHECK (actual_time_ms IS NULL OR actual_time_ms >= 0)', + 'CHECK (actual_reps IS NULL OR actual_reps >= 0)', + 'CHECK (actual_score IS NULL OR actual_score >= 0)', + 'CHECK (actual_score IS NULL OR (score_label_snapshot IS NOT NULL ' + 'AND length(trim(score_label_snapshot)) > 0 ' + 'AND score_unit_snapshot IS NOT NULL ' + 'AND length(trim(score_unit_snapshot)) > 0))', + ]; +} + +class ChangeLogEntries extends Table { + @override + String get tableName => 'change_log'; + + TextColumn get id => text()(); + TextColumn get entityType => text().withLength(min: 1)(); + TextColumn get entityId => text().withLength(min: 1)(); + TextColumn get operation => text()(); + TextColumn get payloadHash => text().nullable()(); + IntColumn get localRevision => integer()(); + TextColumn get originDeviceId => text().withLength(min: 1)(); + DateTimeColumn get createdAt => dateTime()(); + DateTimeColumn get syncedAt => dateTime().nullable()(); + + @override + Set get primaryKey => {id}; + + @override + List get customConstraints => const [ + "CHECK (operation IN ('insert', 'update', 'softDelete', 'restore'))", + 'CHECK (local_revision >= 0)', + ]; +} diff --git a/pubspec.lock b/pubspec.lock index bd1d521..2b6f5c2 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1,6 +1,22 @@ # Generated by pub # See https://dart.dev/tools/pub/glossary#lockfile packages: + _fe_analyzer_shared: + dependency: transitive + description: + name: _fe_analyzer_shared + sha256: cd6add6f846f35fb79f3c315296703c1a24f3cfd7f4739d91a74961c1c7e9f1b + url: "https://pub.dev" + source: hosted + version: "100.0.0" + analyzer: + dependency: transitive + description: + name: analyzer + sha256: "6ba98576948803398b69e3a444df24eacdbe12ed699c7014e120ea38552debbf" + url: "https://pub.dev" + source: hosted + version: "13.0.0" args: dependency: transitive description: @@ -25,6 +41,54 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.2" + build: + dependency: transitive + description: + name: build + sha256: "45d14a0fb23e018d8287c32fc98d726ce466b231928ed9b9200f29bd3ccd39ae" + url: "https://pub.dev" + source: hosted + version: "4.0.7" + build_config: + dependency: transitive + description: + name: build_config + sha256: f2c223156a26eea323e6244b85141d76413a80aeee9fe0b380773789fabaf8ae + url: "https://pub.dev" + source: hosted + version: "1.3.1" + build_daemon: + dependency: transitive + description: + name: build_daemon + sha256: fd754058c342243718d5171a95f352cfc9fcf0cba8cfa26df67cb13a5836db78 + url: "https://pub.dev" + source: hosted + version: "4.1.2" + build_runner: + dependency: "direct dev" + description: + name: build_runner + sha256: "5367e521935b102bdf1e735d2aab461e36b2edca6517662d088dd04cc39f8d16" + url: "https://pub.dev" + source: hosted + version: "2.15.1" + built_collection: + dependency: transitive + description: + name: built_collection + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" + url: "https://pub.dev" + source: hosted + version: "5.1.1" + built_value: + dependency: transitive + description: + name: built_value + sha256: "34e4067d30ce212937df995f03b69992eea683539ceeac7f679a1f1eba055b56" + url: "https://pub.dev" + source: hosted + version: "8.12.6" characters: dependency: transitive description: @@ -33,6 +97,30 @@ packages: url: "https://pub.dev" source: hosted version: "1.4.1" + charcode: + dependency: transitive + description: + name: charcode + sha256: fb0f1107cac15a5ea6ef0a6ef71a807b9e4267c713bb93e00e92d737cc8dbd8a + url: "https://pub.dev" + source: hosted + version: "1.4.0" + checked_yaml: + dependency: transitive + description: + name: checked_yaml + sha256: "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f" + url: "https://pub.dev" + source: hosted + version: "2.0.4" + cli_util: + dependency: transitive + description: + name: cli_util + sha256: "5909d2c6b66817222779e1eedc19e0e28b76d1df7bd9856a4792ccb9881df358" + url: "https://pub.dev" + source: hosted + version: "0.5.1" clock: dependency: transitive description: @@ -81,6 +169,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.9" + dart_style: + dependency: transitive + description: + name: dart_style + sha256: "59d53ef8eaed9d288ed9767618e2b31c4fa0383a127db59d5eb2e737a7638a60" + url: "https://pub.dev" + source: hosted + version: "3.1.9" drift: dependency: "direct main" description: @@ -89,6 +185,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.34.2" + drift_dev: + dependency: "direct dev" + description: + name: drift_dev + sha256: "5c0e6ae3c2afcfc2e3f66ea51e7268622906a1e29fd0ee82e6a9b17bfd73a9b0" + url: "https://pub.dev" + source: hosted + version: "2.34.4" drift_flutter: dependency: "direct main" description: @@ -121,6 +225,14 @@ packages: url: "https://pub.dev" source: hosted version: "7.0.1" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be + url: "https://pub.dev" + source: hosted + version: "1.1.1" flutter: dependency: "direct main" description: flutter @@ -147,6 +259,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.3" + graphs: + dependency: transitive + description: + name: graphs + sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" + url: "https://pub.dev" + source: hosted + version: "2.3.2" hooks: dependency: transitive description: @@ -155,6 +275,30 @@ packages: url: "https://pub.dev" source: hosted version: "2.0.2" + http_multi_server: + dependency: transitive + description: + name: http_multi_server + sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 + url: "https://pub.dev" + source: hosted + version: "3.2.2" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" + url: "https://pub.dev" + source: hosted + version: "4.1.2" + io: + dependency: transitive + description: + name: io + sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b + url: "https://pub.dev" + source: hosted + version: "1.0.5" jni: dependency: transitive description: @@ -171,6 +315,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.1" + json_annotation: + dependency: transitive + description: + name: json_annotation + sha256: "2a743920d81b7910627f68ee2c9ac1fc0bfee32b9fc3403587d7c6791ca12f80" + url: "https://pub.dev" + source: hosted + version: "4.12.0" leak_tracker: dependency: transitive description: @@ -235,6 +387,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.18.0" + mime: + dependency: transitive + description: + name: mime + sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" + url: "https://pub.dev" + source: hosted + version: "2.0.0" native_toolchain_c: dependency: transitive description: @@ -331,6 +491,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.8" + pool: + dependency: transitive + description: + name: pool + sha256: "978783255c543aa3586a1b3c21f6e9d720eb315376a915872c61ef8b5c20177d" + url: "https://pub.dev" + source: hosted + version: "1.5.2" pub_semver: dependency: transitive description: @@ -339,6 +507,22 @@ packages: url: "https://pub.dev" source: hosted version: "2.2.0" + pubspec_parse: + dependency: transitive + description: + name: pubspec_parse + sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082" + url: "https://pub.dev" + source: hosted + version: "1.5.0" + recase: + dependency: transitive + description: + name: recase + sha256: e4eb4ec2dcdee52dcf99cb4ceabaffc631d7424ee55e56f280bc039737f89213 + url: "https://pub.dev" + source: hosted + version: "4.1.0" record_use: dependency: transitive description: @@ -347,11 +531,35 @@ packages: url: "https://pub.dev" source: hosted version: "0.6.0" + shelf: + dependency: transitive + description: + name: shelf + sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12 + url: "https://pub.dev" + source: hosted + version: "1.4.2" + shelf_web_socket: + dependency: transitive + description: + name: shelf_web_socket + sha256: "3632775c8e90d6c9712f883e633716432a27758216dfb61bd86a8321c0580925" + url: "https://pub.dev" + source: hosted + version: "3.0.0" sky_engine: dependency: transitive description: flutter source: sdk version: "0.0.0" + source_gen: + dependency: transitive + description: + name: source_gen + sha256: ec37cc0e6694374cbef59ed79685572c870a54ede6fa30a3e420feb3adffea02 + url: "https://pub.dev" + source: hosted + version: "4.2.3" source_span: dependency: transitive description: @@ -384,6 +592,14 @@ packages: url: "https://pub.dev" source: hosted version: "0.6.0+eol" + sqlparser: + dependency: transitive + description: + name: sqlparser + sha256: "772bb2f6f5bce0631a60f26b57d6e8882e1105c22345b05c163ee6ee5d7ba32d" + url: "https://pub.dev" + source: hosted + version: "0.45.0" stack_trace: dependency: transitive description: @@ -400,6 +616,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.1.4" + stream_transform: + dependency: transitive + description: + name: stream_transform + sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871 + url: "https://pub.dev" + source: hosted + version: "2.1.1" string_scanner: dependency: transitive description: @@ -448,6 +672,14 @@ packages: url: "https://pub.dev" source: hosted version: "15.2.0" + watcher: + dependency: transitive + description: + name: watcher + sha256: "1398c9f081a753f9226febe8900fce8f7d0a67163334e1c94a2438339d79d635" + url: "https://pub.dev" + source: hosted + version: "1.2.1" web: dependency: transitive description: @@ -456,6 +688,22 @@ packages: url: "https://pub.dev" source: hosted version: "1.1.1" + web_socket: + dependency: transitive + description: + name: web_socket + sha256: "34d64019aa8e36bf9842ac014bb5d2f5586ca73df5e4d9bf5c936975cae6982c" + url: "https://pub.dev" + source: hosted + version: "1.0.1" + web_socket_channel: + dependency: transitive + description: + name: web_socket_channel + sha256: d645757fb0f4773d602444000a8131ff5d48c9e47adfe9772652dd1a4f2d45c8 + url: "https://pub.dev" + source: hosted + version: "3.0.3" xdg_directories: dependency: transitive description: @@ -473,5 +721,5 @@ packages: source: hosted version: "3.1.3" sdks: - dart: ">=3.10.3 <4.0.0" + dart: ">=3.11.0 <4.0.0" flutter: ">=3.38.4" diff --git a/pubspec.yaml b/pubspec.yaml index fc22dcc..e3eb54b 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -21,6 +21,8 @@ dev_dependencies: flutter_test: sdk: flutter flutter_lints: ^6.0.0 + build_runner: ^2.7.0 + drift_dev: ^2.34.2 flutter: uses-material-design: true