groceries_manager/lib/db/database.steps.dart
2025-01-05 16:01:21 +07:00

273 lines
10 KiB
Dart

// dart format width=80
import 'package:drift/internal/versioned_schema.dart' as i0;
import 'package:drift/drift.dart' as i1;
import 'package:drift/drift.dart'; // ignore_for_file: type=lint,unused_import
// GENERATED BY drift_dev, DO NOT MODIFY.
final class Schema2 extends i0.VersionedSchema {
Schema2({required super.database}) : super(version: 2);
@override
late final List<i1.DatabaseSchemaEntity> entities = [
productCategory,
storageLocation,
product,
shoppingListItem,
user,
];
late final Shape0 productCategory = Shape0(
source: i0.VersionedTable(
entityName: 'product_category',
withoutRowId: false,
isStrict: false,
tableConstraints: [],
columns: [
_column_0,
_column_1,
_column_2,
],
attachedDatabase: database,
),
alias: null);
late final Shape1 storageLocation = Shape1(
source: i0.VersionedTable(
entityName: 'storage_location',
withoutRowId: false,
isStrict: false,
tableConstraints: [],
columns: [
_column_0,
_column_1,
_column_3,
_column_4,
_column_2,
_column_5,
],
attachedDatabase: database,
),
alias: null);
late final Shape2 product = Shape2(
source: i0.VersionedTable(
entityName: 'product',
withoutRowId: false,
isStrict: false,
tableConstraints: [],
columns: [
_column_0,
_column_1,
_column_6,
_column_7,
_column_8,
_column_9,
_column_10,
_column_11,
_column_12,
],
attachedDatabase: database,
),
alias: null);
late final Shape3 shoppingListItem = Shape3(
source: i0.VersionedTable(
entityName: 'shopping_list_item',
withoutRowId: false,
isStrict: false,
tableConstraints: [],
columns: [
_column_0,
_column_1,
_column_6,
_column_7,
_column_8,
_column_9,
_column_13,
_column_14,
],
attachedDatabase: database,
),
alias: null);
late final Shape4 user = Shape4(
source: i0.VersionedTable(
entityName: 'user',
withoutRowId: false,
isStrict: false,
tableConstraints: [],
columns: [
_column_0,
_column_15,
_column_16,
],
attachedDatabase: database,
),
alias: null);
}
class Shape0 extends i0.VersionedTable {
Shape0({required super.source, required super.alias}) : super.aliased();
i1.GeneratedColumn<int> get id =>
columnsByName['id']! as i1.GeneratedColumn<int>;
i1.GeneratedColumn<String> get name =>
columnsByName['name']! as i1.GeneratedColumn<String>;
i1.GeneratedColumn<String> get icon =>
columnsByName['icon']! as i1.GeneratedColumn<String>;
}
i1.GeneratedColumn<int> _column_0(String aliasedName) =>
i1.GeneratedColumn<int>('id', aliasedName, false,
hasAutoIncrement: true,
type: i1.DriftSqlType.int,
defaultConstraints:
i1.GeneratedColumn.constraintIsAlways('PRIMARY KEY AUTOINCREMENT'));
i1.GeneratedColumn<String> _column_1(String aliasedName) =>
i1.GeneratedColumn<String>('name', aliasedName, false,
type: i1.DriftSqlType.string);
i1.GeneratedColumn<String> _column_2(String aliasedName) =>
i1.GeneratedColumn<String>('icon', aliasedName, false,
type: i1.DriftSqlType.string);
class Shape1 extends i0.VersionedTable {
Shape1({required super.source, required super.alias}) : super.aliased();
i1.GeneratedColumn<int> get id =>
columnsByName['id']! as i1.GeneratedColumn<int>;
i1.GeneratedColumn<String> get name =>
columnsByName['name']! as i1.GeneratedColumn<String>;
i1.GeneratedColumn<String> get description =>
columnsByName['description']! as i1.GeneratedColumn<String>;
i1.GeneratedColumn<String> get temperatureMode =>
columnsByName['temperature_mode']! as i1.GeneratedColumn<String>;
i1.GeneratedColumn<String> get icon =>
columnsByName['icon']! as i1.GeneratedColumn<String>;
i1.GeneratedColumn<bool> get isDefault =>
columnsByName['is_default']! as i1.GeneratedColumn<bool>;
}
i1.GeneratedColumn<String> _column_3(String aliasedName) =>
i1.GeneratedColumn<String>('description', aliasedName, false,
type: i1.DriftSqlType.string);
i1.GeneratedColumn<String> _column_4(String aliasedName) =>
i1.GeneratedColumn<String>('temperature_mode', aliasedName, false,
type: i1.DriftSqlType.string);
i1.GeneratedColumn<bool> _column_5(String aliasedName) =>
i1.GeneratedColumn<bool>('is_default', aliasedName, false,
type: i1.DriftSqlType.bool,
defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
'CHECK ("is_default" IN (0, 1))'),
defaultValue: const Constant(false));
class Shape2 extends i0.VersionedTable {
Shape2({required super.source, required super.alias}) : super.aliased();
i1.GeneratedColumn<int> get id =>
columnsByName['id']! as i1.GeneratedColumn<int>;
i1.GeneratedColumn<String> get name =>
columnsByName['name']! as i1.GeneratedColumn<String>;
i1.GeneratedColumn<int> get category =>
columnsByName['category']! as i1.GeneratedColumn<int>;
i1.GeneratedColumn<int> get storage =>
columnsByName['storage']! as i1.GeneratedColumn<int>;
i1.GeneratedColumn<double> get quantity =>
columnsByName['quantity']! as i1.GeneratedColumn<double>;
i1.GeneratedColumn<String> get unit =>
columnsByName['unit']! as i1.GeneratedColumn<String>;
i1.GeneratedColumn<DateTime> get purchaseDate =>
columnsByName['purchase_date']! as i1.GeneratedColumn<DateTime>;
i1.GeneratedColumn<DateTime> get expiryDate =>
columnsByName['expiry_date']! as i1.GeneratedColumn<DateTime>;
i1.GeneratedColumn<String> get barcode =>
columnsByName['barcode']! as i1.GeneratedColumn<String>;
}
i1.GeneratedColumn<int> _column_6(String aliasedName) =>
i1.GeneratedColumn<int>('category', aliasedName, false,
type: i1.DriftSqlType.int,
defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
'REFERENCES product_category (id)'));
i1.GeneratedColumn<int> _column_7(String aliasedName) =>
i1.GeneratedColumn<int>('storage', aliasedName, false,
type: i1.DriftSqlType.int,
defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
'REFERENCES storage_location (id)'));
i1.GeneratedColumn<double> _column_8(String aliasedName) =>
i1.GeneratedColumn<double>('quantity', aliasedName, false,
type: i1.DriftSqlType.double);
i1.GeneratedColumn<String> _column_9(String aliasedName) =>
i1.GeneratedColumn<String>('unit', aliasedName, false,
type: i1.DriftSqlType.string);
i1.GeneratedColumn<DateTime> _column_10(String aliasedName) =>
i1.GeneratedColumn<DateTime>('purchase_date', aliasedName, true,
type: i1.DriftSqlType.dateTime);
i1.GeneratedColumn<DateTime> _column_11(String aliasedName) =>
i1.GeneratedColumn<DateTime>('expiry_date', aliasedName, true,
type: i1.DriftSqlType.dateTime);
i1.GeneratedColumn<String> _column_12(String aliasedName) =>
i1.GeneratedColumn<String>('barcode', aliasedName, false,
additionalChecks: i1.GeneratedColumn.checkTextLength(maxTextLength: 20),
type: i1.DriftSqlType.string);
class Shape3 extends i0.VersionedTable {
Shape3({required super.source, required super.alias}) : super.aliased();
i1.GeneratedColumn<int> get id =>
columnsByName['id']! as i1.GeneratedColumn<int>;
i1.GeneratedColumn<String> get name =>
columnsByName['name']! as i1.GeneratedColumn<String>;
i1.GeneratedColumn<int> get category =>
columnsByName['category']! as i1.GeneratedColumn<int>;
i1.GeneratedColumn<int> get storage =>
columnsByName['storage']! as i1.GeneratedColumn<int>;
i1.GeneratedColumn<double> get quantity =>
columnsByName['quantity']! as i1.GeneratedColumn<double>;
i1.GeneratedColumn<String> get unit =>
columnsByName['unit']! as i1.GeneratedColumn<String>;
i1.GeneratedColumn<bool> get isPurchased =>
columnsByName['is_purchased']! as i1.GeneratedColumn<bool>;
i1.GeneratedColumn<DateTime> get dateAdded =>
columnsByName['date_added']! as i1.GeneratedColumn<DateTime>;
}
i1.GeneratedColumn<bool> _column_13(String aliasedName) =>
i1.GeneratedColumn<bool>('is_purchased', aliasedName, false,
type: i1.DriftSqlType.bool,
defaultConstraints: i1.GeneratedColumn.constraintIsAlways(
'CHECK ("is_purchased" IN (0, 1))'),
defaultValue: const Constant(false));
i1.GeneratedColumn<DateTime> _column_14(String aliasedName) =>
i1.GeneratedColumn<DateTime>('date_added', aliasedName, true,
type: i1.DriftSqlType.dateTime, defaultValue: currentDateAndTime);
class Shape4 extends i0.VersionedTable {
Shape4({required super.source, required super.alias}) : super.aliased();
i1.GeneratedColumn<int> get id =>
columnsByName['id']! as i1.GeneratedColumn<int>;
i1.GeneratedColumn<String> get login =>
columnsByName['login']! as i1.GeneratedColumn<String>;
i1.GeneratedColumn<String> get password =>
columnsByName['password']! as i1.GeneratedColumn<String>;
}
i1.GeneratedColumn<String> _column_15(String aliasedName) =>
i1.GeneratedColumn<String>('login', aliasedName, false,
type: i1.DriftSqlType.string,
defaultConstraints: i1.GeneratedColumn.constraintIsAlways('UNIQUE'));
i1.GeneratedColumn<String> _column_16(String aliasedName) =>
i1.GeneratedColumn<String>('password', aliasedName, false,
type: i1.DriftSqlType.string);
i0.MigrationStepWithVersion migrationSteps({
required Future<void> Function(i1.Migrator m, Schema2 schema) from1To2,
}) {
return (currentVersion, database) async {
switch (currentVersion) {
case 1:
final schema = Schema2(database: database);
final migrator = i1.Migrator(database, schema);
await from1To2(migrator, schema);
return 2;
default:
throw ArgumentError.value('Unknown migration from $currentVersion');
}
};
}
i1.OnUpgrade stepByStep({
required Future<void> Function(i1.Migrator m, Schema2 schema) from1To2,
}) =>
i0.VersionedSchema.stepByStepHelper(
step: migrationSteps(
from1To2: from1To2,
));