// ignore_for_file: type=lint import 'package:drift/drift.dart' as i0; import 'package:drift_docs/snippets/_shared/todo_tables.drift.dart' as i1; import 'package:drift_docs/snippets/_shared/todo_tables.dart' as i2; class $TodoItemsTable extends i2.TodoItems with i0.TableInfo<$TodoItemsTable, i1.TodoItem> { @override final i0.GeneratedDatabase attachedDatabase; final String? _alias; $TodoItemsTable(this.attachedDatabase, [this._alias]); static const i0.VerificationMeta _idMeta = const i0.VerificationMeta('id'); @override late final i0.GeneratedColumn id = i0.GeneratedColumn( 'id', aliasedName, false, hasAutoIncrement: true, type: i0.DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: i0.GeneratedColumn.constraintIsAlways('PRIMARY KEY AUTOINCREMENT')); static const i0.VerificationMeta _titleMeta = const i0.VerificationMeta('title'); @override late final i0.GeneratedColumn title = i0.GeneratedColumn( 'title', aliasedName, false, additionalChecks: i0.GeneratedColumn.checkTextLength( minTextLength: 6, maxTextLength: 32), type: i0.DriftSqlType.string, requiredDuringInsert: true); static const i0.VerificationMeta _contentMeta = const i0.VerificationMeta('content'); @override late final i0.GeneratedColumn content = i0.GeneratedColumn( 'body', aliasedName, false, type: i0.DriftSqlType.string, requiredDuringInsert: true); static const i0.VerificationMeta _categoryMeta = const i0.VerificationMeta('category'); @override late final i0.GeneratedColumn category = i0.GeneratedColumn( 'category', aliasedName, true, type: i0.DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: i0.GeneratedColumn.constraintIsAlways('REFERENCES categories (id)')); static const i0.VerificationMeta _dueDateMeta = const i0.VerificationMeta('dueDate'); @override late final i0.GeneratedColumn dueDate = i0.GeneratedColumn('due_date', aliasedName, true, type: i0.DriftSqlType.dateTime, requiredDuringInsert: false); @override List get $columns => [id, title, content, category, dueDate]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'todo_items'; @override i0.VerificationContext validateIntegrity(i0.Insertable instance, {bool isInserting = false}) { final context = i0.VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('id')) { context.handle(_idMeta, id.isAcceptableOrUnknown(data['id']!, _idMeta)); } if (data.containsKey('title')) { context.handle( _titleMeta, title.isAcceptableOrUnknown(data['title']!, _titleMeta)); } else if (isInserting) { context.missing(_titleMeta); } if (data.containsKey('body')) { context.handle(_contentMeta, content.isAcceptableOrUnknown(data['body']!, _contentMeta)); } else if (isInserting) { context.missing(_contentMeta); } if (data.containsKey('category')) { context.handle(_categoryMeta, category.isAcceptableOrUnknown(data['category']!, _categoryMeta)); } if (data.containsKey('due_date')) { context.handle(_dueDateMeta, dueDate.isAcceptableOrUnknown(data['due_date']!, _dueDateMeta)); } return context; } @override Set get $primaryKey => {id}; @override i1.TodoItem map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return i1.TodoItem( id: attachedDatabase.typeMapping .read(i0.DriftSqlType.int, data['${effectivePrefix}id'])!, title: attachedDatabase.typeMapping .read(i0.DriftSqlType.string, data['${effectivePrefix}title'])!, content: attachedDatabase.typeMapping .read(i0.DriftSqlType.string, data['${effectivePrefix}body'])!, category: attachedDatabase.typeMapping .read(i0.DriftSqlType.int, data['${effectivePrefix}category']), dueDate: attachedDatabase.typeMapping .read(i0.DriftSqlType.dateTime, data['${effectivePrefix}due_date']), ); } @override $TodoItemsTable createAlias(String alias) { return $TodoItemsTable(attachedDatabase, alias); } } class TodoItem extends i0.DataClass implements i0.Insertable { final int id; final String title; final String content; final int? category; final DateTime? dueDate; const TodoItem( {required this.id, required this.title, required this.content, this.category, this.dueDate}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['id'] = i0.Variable(id); map['title'] = i0.Variable(title); map['body'] = i0.Variable(content); if (!nullToAbsent || category != null) { map['category'] = i0.Variable(category); } if (!nullToAbsent || dueDate != null) { map['due_date'] = i0.Variable(dueDate); } return map; } i1.TodoItemsCompanion toCompanion(bool nullToAbsent) { return i1.TodoItemsCompanion( id: i0.Value(id), title: i0.Value(title), content: i0.Value(content), category: category == null && nullToAbsent ? const i0.Value.absent() : i0.Value(category), dueDate: dueDate == null && nullToAbsent ? const i0.Value.absent() : i0.Value(dueDate), ); } factory TodoItem.fromJson(Map json, {i0.ValueSerializer? serializer}) { serializer ??= i0.driftRuntimeOptions.defaultSerializer; return TodoItem( id: serializer.fromJson(json['id']), title: serializer.fromJson(json['title']), content: serializer.fromJson(json['content']), category: serializer.fromJson(json['category']), dueDate: serializer.fromJson(json['dueDate']), ); } @override Map toJson({i0.ValueSerializer? serializer}) { serializer ??= i0.driftRuntimeOptions.defaultSerializer; return { 'id': serializer.toJson(id), 'title': serializer.toJson(title), 'content': serializer.toJson(content), 'category': serializer.toJson(category), 'dueDate': serializer.toJson(dueDate), }; } i1.TodoItem copyWith( {int? id, String? title, String? content, i0.Value category = const i0.Value.absent(), i0.Value dueDate = const i0.Value.absent()}) => i1.TodoItem( id: id ?? this.id, title: title ?? this.title, content: content ?? this.content, category: category.present ? category.value : this.category, dueDate: dueDate.present ? dueDate.value : this.dueDate, ); @override String toString() { return (StringBuffer('TodoItem(') ..write('id: $id, ') ..write('title: $title, ') ..write('content: $content, ') ..write('category: $category, ') ..write('dueDate: $dueDate') ..write(')')) .toString(); } @override int get hashCode => Object.hash(id, title, content, category, dueDate); @override bool operator ==(Object other) => identical(this, other) || (other is i1.TodoItem && other.id == this.id && other.title == this.title && other.content == this.content && other.category == this.category && other.dueDate == this.dueDate); } class TodoItemsCompanion extends i0.UpdateCompanion { final i0.Value id; final i0.Value title; final i0.Value content; final i0.Value category; final i0.Value dueDate; const TodoItemsCompanion({ this.id = const i0.Value.absent(), this.title = const i0.Value.absent(), this.content = const i0.Value.absent(), this.category = const i0.Value.absent(), this.dueDate = const i0.Value.absent(), }); TodoItemsCompanion.insert({ this.id = const i0.Value.absent(), required String title, required String content, this.category = const i0.Value.absent(), this.dueDate = const i0.Value.absent(), }) : title = i0.Value(title), content = i0.Value(content); static i0.Insertable custom({ i0.Expression? id, i0.Expression? title, i0.Expression? content, i0.Expression? category, i0.Expression? dueDate, }) { return i0.RawValuesInsertable({ if (id != null) 'id': id, if (title != null) 'title': title, if (content != null) 'body': content, if (category != null) 'category': category, if (dueDate != null) 'due_date': dueDate, }); } i1.TodoItemsCompanion copyWith( {i0.Value? id, i0.Value? title, i0.Value? content, i0.Value? category, i0.Value? dueDate}) { return i1.TodoItemsCompanion( id: id ?? this.id, title: title ?? this.title, content: content ?? this.content, category: category ?? this.category, dueDate: dueDate ?? this.dueDate, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (id.present) { map['id'] = i0.Variable(id.value); } if (title.present) { map['title'] = i0.Variable(title.value); } if (content.present) { map['body'] = i0.Variable(content.value); } if (category.present) { map['category'] = i0.Variable(category.value); } if (dueDate.present) { map['due_date'] = i0.Variable(dueDate.value); } return map; } @override String toString() { return (StringBuffer('TodoItemsCompanion(') ..write('id: $id, ') ..write('title: $title, ') ..write('content: $content, ') ..write('category: $category, ') ..write('dueDate: $dueDate') ..write(')')) .toString(); } } class $CategoriesTable extends i2.Categories with i0.TableInfo<$CategoriesTable, i1.Category> { @override final i0.GeneratedDatabase attachedDatabase; final String? _alias; $CategoriesTable(this.attachedDatabase, [this._alias]); static const i0.VerificationMeta _idMeta = const i0.VerificationMeta('id'); @override late final i0.GeneratedColumn id = i0.GeneratedColumn( 'id', aliasedName, false, hasAutoIncrement: true, type: i0.DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: i0.GeneratedColumn.constraintIsAlways('PRIMARY KEY AUTOINCREMENT')); static const i0.VerificationMeta _nameMeta = const i0.VerificationMeta('name'); @override late final i0.GeneratedColumn name = i0.GeneratedColumn( 'name', aliasedName, false, type: i0.DriftSqlType.string, requiredDuringInsert: true); @override List get $columns => [id, name]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'categories'; @override i0.VerificationContext validateIntegrity(i0.Insertable instance, {bool isInserting = false}) { final context = i0.VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('id')) { context.handle(_idMeta, id.isAcceptableOrUnknown(data['id']!, _idMeta)); } if (data.containsKey('name')) { context.handle( _nameMeta, name.isAcceptableOrUnknown(data['name']!, _nameMeta)); } else if (isInserting) { context.missing(_nameMeta); } return context; } @override Set get $primaryKey => {id}; @override i1.Category map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return i1.Category( id: attachedDatabase.typeMapping .read(i0.DriftSqlType.int, data['${effectivePrefix}id'])!, name: attachedDatabase.typeMapping .read(i0.DriftSqlType.string, data['${effectivePrefix}name'])!, ); } @override $CategoriesTable createAlias(String alias) { return $CategoriesTable(attachedDatabase, alias); } } class Category extends i0.DataClass implements i0.Insertable { final int id; final String name; const Category({required this.id, required this.name}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['id'] = i0.Variable(id); map['name'] = i0.Variable(name); return map; } i1.CategoriesCompanion toCompanion(bool nullToAbsent) { return i1.CategoriesCompanion( id: i0.Value(id), name: i0.Value(name), ); } factory Category.fromJson(Map json, {i0.ValueSerializer? serializer}) { serializer ??= i0.driftRuntimeOptions.defaultSerializer; return Category( id: serializer.fromJson(json['id']), name: serializer.fromJson(json['name']), ); } @override Map toJson({i0.ValueSerializer? serializer}) { serializer ??= i0.driftRuntimeOptions.defaultSerializer; return { 'id': serializer.toJson(id), 'name': serializer.toJson(name), }; } i1.Category copyWith({int? id, String? name}) => i1.Category( id: id ?? this.id, name: name ?? this.name, ); @override String toString() { return (StringBuffer('Category(') ..write('id: $id, ') ..write('name: $name') ..write(')')) .toString(); } @override int get hashCode => Object.hash(id, name); @override bool operator ==(Object other) => identical(this, other) || (other is i1.Category && other.id == this.id && other.name == this.name); } class CategoriesCompanion extends i0.UpdateCompanion { final i0.Value id; final i0.Value name; const CategoriesCompanion({ this.id = const i0.Value.absent(), this.name = const i0.Value.absent(), }); CategoriesCompanion.insert({ this.id = const i0.Value.absent(), required String name, }) : name = i0.Value(name); static i0.Insertable custom({ i0.Expression? id, i0.Expression? name, }) { return i0.RawValuesInsertable({ if (id != null) 'id': id, if (name != null) 'name': name, }); } i1.CategoriesCompanion copyWith({i0.Value? id, i0.Value? name}) { return i1.CategoriesCompanion( id: id ?? this.id, name: name ?? this.name, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (id.present) { map['id'] = i0.Variable(id.value); } if (name.present) { map['name'] = i0.Variable(name.value); } return map; } @override String toString() { return (StringBuffer('CategoriesCompanion(') ..write('id: $id, ') ..write('name: $name') ..write(')')) .toString(); } } class $UsersTable extends i2.Users with i0.TableInfo<$UsersTable, i1.User> { @override final i0.GeneratedDatabase attachedDatabase; final String? _alias; $UsersTable(this.attachedDatabase, [this._alias]); static const i0.VerificationMeta _idMeta = const i0.VerificationMeta('id'); @override late final i0.GeneratedColumn id = i0.GeneratedColumn( 'id', aliasedName, false, hasAutoIncrement: true, type: i0.DriftSqlType.int, requiredDuringInsert: false, defaultConstraints: i0.GeneratedColumn.constraintIsAlways('PRIMARY KEY AUTOINCREMENT')); static const i0.VerificationMeta _birthDateMeta = const i0.VerificationMeta('birthDate'); @override late final i0.GeneratedColumn birthDate = i0.GeneratedColumn('birth_date', aliasedName, false, type: i0.DriftSqlType.dateTime, requiredDuringInsert: true); @override List get $columns => [id, birthDate]; @override String get aliasedName => _alias ?? actualTableName; @override String get actualTableName => $name; static const String $name = 'users'; @override i0.VerificationContext validateIntegrity(i0.Insertable instance, {bool isInserting = false}) { final context = i0.VerificationContext(); final data = instance.toColumns(true); if (data.containsKey('id')) { context.handle(_idMeta, id.isAcceptableOrUnknown(data['id']!, _idMeta)); } if (data.containsKey('birth_date')) { context.handle(_birthDateMeta, birthDate.isAcceptableOrUnknown(data['birth_date']!, _birthDateMeta)); } else if (isInserting) { context.missing(_birthDateMeta); } return context; } @override Set get $primaryKey => {id}; @override i1.User map(Map data, {String? tablePrefix}) { final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : ''; return i1.User( id: attachedDatabase.typeMapping .read(i0.DriftSqlType.int, data['${effectivePrefix}id'])!, birthDate: attachedDatabase.typeMapping.read( i0.DriftSqlType.dateTime, data['${effectivePrefix}birth_date'])!, ); } @override $UsersTable createAlias(String alias) { return $UsersTable(attachedDatabase, alias); } } class User extends i0.DataClass implements i0.Insertable { final int id; final DateTime birthDate; const User({required this.id, required this.birthDate}); @override Map toColumns(bool nullToAbsent) { final map = {}; map['id'] = i0.Variable(id); map['birth_date'] = i0.Variable(birthDate); return map; } i1.UsersCompanion toCompanion(bool nullToAbsent) { return i1.UsersCompanion( id: i0.Value(id), birthDate: i0.Value(birthDate), ); } factory User.fromJson(Map json, {i0.ValueSerializer? serializer}) { serializer ??= i0.driftRuntimeOptions.defaultSerializer; return User( id: serializer.fromJson(json['id']), birthDate: serializer.fromJson(json['birthDate']), ); } @override Map toJson({i0.ValueSerializer? serializer}) { serializer ??= i0.driftRuntimeOptions.defaultSerializer; return { 'id': serializer.toJson(id), 'birthDate': serializer.toJson(birthDate), }; } i1.User copyWith({int? id, DateTime? birthDate}) => i1.User( id: id ?? this.id, birthDate: birthDate ?? this.birthDate, ); @override String toString() { return (StringBuffer('User(') ..write('id: $id, ') ..write('birthDate: $birthDate') ..write(')')) .toString(); } @override int get hashCode => Object.hash(id, birthDate); @override bool operator ==(Object other) => identical(this, other) || (other is i1.User && other.id == this.id && other.birthDate == this.birthDate); } class UsersCompanion extends i0.UpdateCompanion { final i0.Value id; final i0.Value birthDate; const UsersCompanion({ this.id = const i0.Value.absent(), this.birthDate = const i0.Value.absent(), }); UsersCompanion.insert({ this.id = const i0.Value.absent(), required DateTime birthDate, }) : birthDate = i0.Value(birthDate); static i0.Insertable custom({ i0.Expression? id, i0.Expression? birthDate, }) { return i0.RawValuesInsertable({ if (id != null) 'id': id, if (birthDate != null) 'birth_date': birthDate, }); } i1.UsersCompanion copyWith( {i0.Value? id, i0.Value? birthDate}) { return i1.UsersCompanion( id: id ?? this.id, birthDate: birthDate ?? this.birthDate, ); } @override Map toColumns(bool nullToAbsent) { final map = {}; if (id.present) { map['id'] = i0.Variable(id.value); } if (birthDate.present) { map['birth_date'] = i0.Variable(birthDate.value); } return map; } @override String toString() { return (StringBuffer('UsersCompanion(') ..write('id: $id, ') ..write('birthDate: $birthDate') ..write(')')) .toString(); } }