This commit is contained in:
2026-03-23 01:18:08 +03:00
parent 2fe390b068
commit 4f87aa7598
9 changed files with 1128 additions and 5 deletions
+601
View File
@@ -1850,6 +1850,396 @@ class ExchangeRatesCompanion extends UpdateCompanion<ExchangeRate> {
}
}
class $AccountsTable extends Accounts with TableInfo<$AccountsTable, Account> {
@override
final GeneratedDatabase attachedDatabase;
final String? _alias;
$AccountsTable(this.attachedDatabase, [this._alias]);
static const VerificationMeta _idMeta = const VerificationMeta('id');
@override
late final GeneratedColumn<int> id = GeneratedColumn<int>(
'id',
aliasedName,
false,
hasAutoIncrement: true,
type: DriftSqlType.int,
requiredDuringInsert: false,
defaultConstraints: GeneratedColumn.constraintIsAlways(
'PRIMARY KEY AUTOINCREMENT',
),
);
static const VerificationMeta _nameMeta = const VerificationMeta('name');
@override
late final GeneratedColumn<String> name = GeneratedColumn<String>(
'name',
aliasedName,
false,
type: DriftSqlType.string,
requiredDuringInsert: true,
);
static const VerificationMeta _isMainMeta = const VerificationMeta('isMain');
@override
late final GeneratedColumn<bool> isMain = GeneratedColumn<bool>(
'is_main',
aliasedName,
false,
type: DriftSqlType.bool,
requiredDuringInsert: false,
defaultConstraints: GeneratedColumn.constraintIsAlways(
'CHECK ("is_main" IN (0, 1))',
),
defaultValue: const Constant(false),
);
static const VerificationMeta _sortOrderMeta = const VerificationMeta(
'sortOrder',
);
@override
late final GeneratedColumn<int> sortOrder = GeneratedColumn<int>(
'sort_order',
aliasedName,
false,
type: DriftSqlType.int,
requiredDuringInsert: false,
defaultValue: const Constant(0),
);
static const VerificationMeta _currencyMeta = const VerificationMeta(
'currency',
);
@override
late final GeneratedColumn<String> currency = GeneratedColumn<String>(
'currency',
aliasedName,
false,
type: DriftSqlType.string,
requiredDuringInsert: false,
defaultValue: const Constant('USD'),
);
static const VerificationMeta _createdAtMeta = const VerificationMeta(
'createdAt',
);
@override
late final GeneratedColumn<DateTime> createdAt = GeneratedColumn<DateTime>(
'created_at',
aliasedName,
false,
type: DriftSqlType.dateTime,
requiredDuringInsert: false,
defaultValue: currentDateAndTime,
);
@override
List<GeneratedColumn> get $columns => [
id,
name,
isMain,
sortOrder,
currency,
createdAt,
];
@override
String get aliasedName => _alias ?? actualTableName;
@override
String get actualTableName => $name;
static const String $name = 'accounts';
@override
VerificationContext validateIntegrity(
Insertable<Account> instance, {
bool isInserting = false,
}) {
final context = VerificationContext();
final data = instance.toColumns(true);
if (data.containsKey('id')) {
context.handle(_idMeta, id.isAcceptableOrUnknown(data['id']!, _idMeta));
}
if (data.containsKey('name')) {
context.handle(
_nameMeta,
name.isAcceptableOrUnknown(data['name']!, _nameMeta),
);
} else if (isInserting) {
context.missing(_nameMeta);
}
if (data.containsKey('is_main')) {
context.handle(
_isMainMeta,
isMain.isAcceptableOrUnknown(data['is_main']!, _isMainMeta),
);
}
if (data.containsKey('sort_order')) {
context.handle(
_sortOrderMeta,
sortOrder.isAcceptableOrUnknown(data['sort_order']!, _sortOrderMeta),
);
}
if (data.containsKey('currency')) {
context.handle(
_currencyMeta,
currency.isAcceptableOrUnknown(data['currency']!, _currencyMeta),
);
}
if (data.containsKey('created_at')) {
context.handle(
_createdAtMeta,
createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta),
);
}
return context;
}
@override
Set<GeneratedColumn> get $primaryKey => {id};
@override
Account map(Map<String, dynamic> data, {String? tablePrefix}) {
final effectivePrefix = tablePrefix != null ? '$tablePrefix.' : '';
return Account(
id: attachedDatabase.typeMapping.read(
DriftSqlType.int,
data['${effectivePrefix}id'],
)!,
name: attachedDatabase.typeMapping.read(
DriftSqlType.string,
data['${effectivePrefix}name'],
)!,
isMain: attachedDatabase.typeMapping.read(
DriftSqlType.bool,
data['${effectivePrefix}is_main'],
)!,
sortOrder: attachedDatabase.typeMapping.read(
DriftSqlType.int,
data['${effectivePrefix}sort_order'],
)!,
currency: attachedDatabase.typeMapping.read(
DriftSqlType.string,
data['${effectivePrefix}currency'],
)!,
createdAt: attachedDatabase.typeMapping.read(
DriftSqlType.dateTime,
data['${effectivePrefix}created_at'],
)!,
);
}
@override
$AccountsTable createAlias(String alias) {
return $AccountsTable(attachedDatabase, alias);
}
}
class Account extends DataClass implements Insertable<Account> {
final int id;
final String name;
final bool isMain;
final int sortOrder;
final String currency;
final DateTime createdAt;
const Account({
required this.id,
required this.name,
required this.isMain,
required this.sortOrder,
required this.currency,
required this.createdAt,
});
@override
Map<String, Expression> toColumns(bool nullToAbsent) {
final map = <String, Expression>{};
map['id'] = Variable<int>(id);
map['name'] = Variable<String>(name);
map['is_main'] = Variable<bool>(isMain);
map['sort_order'] = Variable<int>(sortOrder);
map['currency'] = Variable<String>(currency);
map['created_at'] = Variable<DateTime>(createdAt);
return map;
}
AccountsCompanion toCompanion(bool nullToAbsent) {
return AccountsCompanion(
id: Value(id),
name: Value(name),
isMain: Value(isMain),
sortOrder: Value(sortOrder),
currency: Value(currency),
createdAt: Value(createdAt),
);
}
factory Account.fromJson(
Map<String, dynamic> json, {
ValueSerializer? serializer,
}) {
serializer ??= driftRuntimeOptions.defaultSerializer;
return Account(
id: serializer.fromJson<int>(json['id']),
name: serializer.fromJson<String>(json['name']),
isMain: serializer.fromJson<bool>(json['isMain']),
sortOrder: serializer.fromJson<int>(json['sortOrder']),
currency: serializer.fromJson<String>(json['currency']),
createdAt: serializer.fromJson<DateTime>(json['createdAt']),
);
}
@override
Map<String, dynamic> toJson({ValueSerializer? serializer}) {
serializer ??= driftRuntimeOptions.defaultSerializer;
return <String, dynamic>{
'id': serializer.toJson<int>(id),
'name': serializer.toJson<String>(name),
'isMain': serializer.toJson<bool>(isMain),
'sortOrder': serializer.toJson<int>(sortOrder),
'currency': serializer.toJson<String>(currency),
'createdAt': serializer.toJson<DateTime>(createdAt),
};
}
Account copyWith({
int? id,
String? name,
bool? isMain,
int? sortOrder,
String? currency,
DateTime? createdAt,
}) => Account(
id: id ?? this.id,
name: name ?? this.name,
isMain: isMain ?? this.isMain,
sortOrder: sortOrder ?? this.sortOrder,
currency: currency ?? this.currency,
createdAt: createdAt ?? this.createdAt,
);
Account copyWithCompanion(AccountsCompanion data) {
return Account(
id: data.id.present ? data.id.value : this.id,
name: data.name.present ? data.name.value : this.name,
isMain: data.isMain.present ? data.isMain.value : this.isMain,
sortOrder: data.sortOrder.present ? data.sortOrder.value : this.sortOrder,
currency: data.currency.present ? data.currency.value : this.currency,
createdAt: data.createdAt.present ? data.createdAt.value : this.createdAt,
);
}
@override
String toString() {
return (StringBuffer('Account(')
..write('id: $id, ')
..write('name: $name, ')
..write('isMain: $isMain, ')
..write('sortOrder: $sortOrder, ')
..write('currency: $currency, ')
..write('createdAt: $createdAt')
..write(')'))
.toString();
}
@override
int get hashCode =>
Object.hash(id, name, isMain, sortOrder, currency, createdAt);
@override
bool operator ==(Object other) =>
identical(this, other) ||
(other is Account &&
other.id == this.id &&
other.name == this.name &&
other.isMain == this.isMain &&
other.sortOrder == this.sortOrder &&
other.currency == this.currency &&
other.createdAt == this.createdAt);
}
class AccountsCompanion extends UpdateCompanion<Account> {
final Value<int> id;
final Value<String> name;
final Value<bool> isMain;
final Value<int> sortOrder;
final Value<String> currency;
final Value<DateTime> createdAt;
const AccountsCompanion({
this.id = const Value.absent(),
this.name = const Value.absent(),
this.isMain = const Value.absent(),
this.sortOrder = const Value.absent(),
this.currency = const Value.absent(),
this.createdAt = const Value.absent(),
});
AccountsCompanion.insert({
this.id = const Value.absent(),
required String name,
this.isMain = const Value.absent(),
this.sortOrder = const Value.absent(),
this.currency = const Value.absent(),
this.createdAt = const Value.absent(),
}) : name = Value(name);
static Insertable<Account> custom({
Expression<int>? id,
Expression<String>? name,
Expression<bool>? isMain,
Expression<int>? sortOrder,
Expression<String>? currency,
Expression<DateTime>? createdAt,
}) {
return RawValuesInsertable({
if (id != null) 'id': id,
if (name != null) 'name': name,
if (isMain != null) 'is_main': isMain,
if (sortOrder != null) 'sort_order': sortOrder,
if (currency != null) 'currency': currency,
if (createdAt != null) 'created_at': createdAt,
});
}
AccountsCompanion copyWith({
Value<int>? id,
Value<String>? name,
Value<bool>? isMain,
Value<int>? sortOrder,
Value<String>? currency,
Value<DateTime>? createdAt,
}) {
return AccountsCompanion(
id: id ?? this.id,
name: name ?? this.name,
isMain: isMain ?? this.isMain,
sortOrder: sortOrder ?? this.sortOrder,
currency: currency ?? this.currency,
createdAt: createdAt ?? this.createdAt,
);
}
@override
Map<String, Expression> toColumns(bool nullToAbsent) {
final map = <String, Expression>{};
if (id.present) {
map['id'] = Variable<int>(id.value);
}
if (name.present) {
map['name'] = Variable<String>(name.value);
}
if (isMain.present) {
map['is_main'] = Variable<bool>(isMain.value);
}
if (sortOrder.present) {
map['sort_order'] = Variable<int>(sortOrder.value);
}
if (currency.present) {
map['currency'] = Variable<String>(currency.value);
}
if (createdAt.present) {
map['created_at'] = Variable<DateTime>(createdAt.value);
}
return map;
}
@override
String toString() {
return (StringBuffer('AccountsCompanion(')
..write('id: $id, ')
..write('name: $name, ')
..write('isMain: $isMain, ')
..write('sortOrder: $sortOrder, ')
..write('currency: $currency, ')
..write('createdAt: $createdAt')
..write(')'))
.toString();
}
}
abstract class _$AppDatabase extends GeneratedDatabase {
_$AppDatabase(QueryExecutor e) : super(e);
$AppDatabaseManager get managers => $AppDatabaseManager(this);
@@ -1857,6 +2247,7 @@ abstract class _$AppDatabase extends GeneratedDatabase {
late final $CategoriesTable categories = $CategoriesTable(this);
late final $BudgetsTable budgets = $BudgetsTable(this);
late final $ExchangeRatesTable exchangeRates = $ExchangeRatesTable(this);
late final $AccountsTable accounts = $AccountsTable(this);
@override
Iterable<TableInfo<Table, Object?>> get allTables =>
allSchemaEntities.whereType<TableInfo<Table, Object?>>();
@@ -1866,6 +2257,7 @@ abstract class _$AppDatabase extends GeneratedDatabase {
categories,
budgets,
exchangeRates,
accounts,
];
@override
DriftDatabaseOptions get options =>
@@ -2825,6 +3217,213 @@ typedef $$ExchangeRatesTableProcessedTableManager =
ExchangeRate,
PrefetchHooks Function()
>;
typedef $$AccountsTableCreateCompanionBuilder =
AccountsCompanion Function({
Value<int> id,
required String name,
Value<bool> isMain,
Value<int> sortOrder,
Value<String> currency,
Value<DateTime> createdAt,
});
typedef $$AccountsTableUpdateCompanionBuilder =
AccountsCompanion Function({
Value<int> id,
Value<String> name,
Value<bool> isMain,
Value<int> sortOrder,
Value<String> currency,
Value<DateTime> createdAt,
});
class $$AccountsTableFilterComposer
extends Composer<_$AppDatabase, $AccountsTable> {
$$AccountsTableFilterComposer({
required super.$db,
required super.$table,
super.joinBuilder,
super.$addJoinBuilderToRootComposer,
super.$removeJoinBuilderFromRootComposer,
});
ColumnFilters<int> get id => $composableBuilder(
column: $table.id,
builder: (column) => ColumnFilters(column),
);
ColumnFilters<String> get name => $composableBuilder(
column: $table.name,
builder: (column) => ColumnFilters(column),
);
ColumnFilters<bool> get isMain => $composableBuilder(
column: $table.isMain,
builder: (column) => ColumnFilters(column),
);
ColumnFilters<int> get sortOrder => $composableBuilder(
column: $table.sortOrder,
builder: (column) => ColumnFilters(column),
);
ColumnFilters<String> get currency => $composableBuilder(
column: $table.currency,
builder: (column) => ColumnFilters(column),
);
ColumnFilters<DateTime> get createdAt => $composableBuilder(
column: $table.createdAt,
builder: (column) => ColumnFilters(column),
);
}
class $$AccountsTableOrderingComposer
extends Composer<_$AppDatabase, $AccountsTable> {
$$AccountsTableOrderingComposer({
required super.$db,
required super.$table,
super.joinBuilder,
super.$addJoinBuilderToRootComposer,
super.$removeJoinBuilderFromRootComposer,
});
ColumnOrderings<int> get id => $composableBuilder(
column: $table.id,
builder: (column) => ColumnOrderings(column),
);
ColumnOrderings<String> get name => $composableBuilder(
column: $table.name,
builder: (column) => ColumnOrderings(column),
);
ColumnOrderings<bool> get isMain => $composableBuilder(
column: $table.isMain,
builder: (column) => ColumnOrderings(column),
);
ColumnOrderings<int> get sortOrder => $composableBuilder(
column: $table.sortOrder,
builder: (column) => ColumnOrderings(column),
);
ColumnOrderings<String> get currency => $composableBuilder(
column: $table.currency,
builder: (column) => ColumnOrderings(column),
);
ColumnOrderings<DateTime> get createdAt => $composableBuilder(
column: $table.createdAt,
builder: (column) => ColumnOrderings(column),
);
}
class $$AccountsTableAnnotationComposer
extends Composer<_$AppDatabase, $AccountsTable> {
$$AccountsTableAnnotationComposer({
required super.$db,
required super.$table,
super.joinBuilder,
super.$addJoinBuilderToRootComposer,
super.$removeJoinBuilderFromRootComposer,
});
GeneratedColumn<int> get id =>
$composableBuilder(column: $table.id, builder: (column) => column);
GeneratedColumn<String> get name =>
$composableBuilder(column: $table.name, builder: (column) => column);
GeneratedColumn<bool> get isMain =>
$composableBuilder(column: $table.isMain, builder: (column) => column);
GeneratedColumn<int> get sortOrder =>
$composableBuilder(column: $table.sortOrder, builder: (column) => column);
GeneratedColumn<String> get currency =>
$composableBuilder(column: $table.currency, builder: (column) => column);
GeneratedColumn<DateTime> get createdAt =>
$composableBuilder(column: $table.createdAt, builder: (column) => column);
}
class $$AccountsTableTableManager
extends
RootTableManager<
_$AppDatabase,
$AccountsTable,
Account,
$$AccountsTableFilterComposer,
$$AccountsTableOrderingComposer,
$$AccountsTableAnnotationComposer,
$$AccountsTableCreateCompanionBuilder,
$$AccountsTableUpdateCompanionBuilder,
(Account, BaseReferences<_$AppDatabase, $AccountsTable, Account>),
Account,
PrefetchHooks Function()
> {
$$AccountsTableTableManager(_$AppDatabase db, $AccountsTable table)
: super(
TableManagerState(
db: db,
table: table,
createFilteringComposer: () =>
$$AccountsTableFilterComposer($db: db, $table: table),
createOrderingComposer: () =>
$$AccountsTableOrderingComposer($db: db, $table: table),
createComputedFieldComposer: () =>
$$AccountsTableAnnotationComposer($db: db, $table: table),
updateCompanionCallback:
({
Value<int> id = const Value.absent(),
Value<String> name = const Value.absent(),
Value<bool> isMain = const Value.absent(),
Value<int> sortOrder = const Value.absent(),
Value<String> currency = const Value.absent(),
Value<DateTime> createdAt = const Value.absent(),
}) => AccountsCompanion(
id: id,
name: name,
isMain: isMain,
sortOrder: sortOrder,
currency: currency,
createdAt: createdAt,
),
createCompanionCallback:
({
Value<int> id = const Value.absent(),
required String name,
Value<bool> isMain = const Value.absent(),
Value<int> sortOrder = const Value.absent(),
Value<String> currency = const Value.absent(),
Value<DateTime> createdAt = const Value.absent(),
}) => AccountsCompanion.insert(
id: id,
name: name,
isMain: isMain,
sortOrder: sortOrder,
currency: currency,
createdAt: createdAt,
),
withReferenceMapper: (p0) => p0
.map((e) => (e.readTable(table), BaseReferences(db, table, e)))
.toList(),
prefetchHooksCallback: null,
),
);
}
typedef $$AccountsTableProcessedTableManager =
ProcessedTableManager<
_$AppDatabase,
$AccountsTable,
Account,
$$AccountsTableFilterComposer,
$$AccountsTableOrderingComposer,
$$AccountsTableAnnotationComposer,
$$AccountsTableCreateCompanionBuilder,
$$AccountsTableUpdateCompanionBuilder,
(Account, BaseReferences<_$AppDatabase, $AccountsTable, Account>),
Account,
PrefetchHooks Function()
>;
class $AppDatabaseManager {
final _$AppDatabase _db;
@@ -2837,4 +3436,6 @@ class $AppDatabaseManager {
$$BudgetsTableTableManager(_db, _db.budgets);
$$ExchangeRatesTableTableManager get exchangeRates =>
$$ExchangeRatesTableTableManager(_db, _db.exchangeRates);
$$AccountsTableTableManager get accounts =>
$$AccountsTableTableManager(_db, _db.accounts);
}