From e7e671f4cd3179ba6266b559fe3d62ec40670c3d Mon Sep 17 00:00:00 2001 From: "Alexander \"PapaTutuWawa" Date: Sun, 11 May 2025 22:47:14 +0200 Subject: [PATCH] Implement deleting an account --- lib/database/collections/account.g.dart | 231 ++++---- lib/database/collections/beneficiary.g.dart | 471 ++++++++------- lib/database/collections/budget.g.dart | 537 ++++++++++-------- .../collections/expense_category.g.dart | 261 ++++----- lib/database/collections/recurrent.g.dart | 434 ++++++++------ lib/database/collections/template.g.dart | 430 +++++++------- lib/database/collections/transaction.g.dart | 521 +++++++++-------- lib/database/database.dart | 41 ++ lib/main.dart | 3 +- lib/ui/navigation.dart | 9 +- lib/ui/pages/account/account.dart | 123 +++- lib/ui/pages/account/delete_account.dart | 66 +++ lib/ui/pages/beneficiary_list.dart | 5 +- lib/ui/pages/settings.dart | 5 +- lib/ui/state/core.dart | 127 +++-- lib/ui/state/core.freezed.dart | 421 ++++++++------ lib/ui/state/settings.freezed.dart | 116 ++-- lib/ui/state/settings.g.dart | 7 +- pubspec.lock | 8 + pubspec.yaml | 1 + 20 files changed, 2180 insertions(+), 1637 deletions(-) create mode 100644 lib/ui/pages/account/delete_account.dart diff --git a/lib/database/collections/account.g.dart b/lib/database/collections/account.g.dart index ead950f..c7f17ee 100644 --- a/lib/database/collections/account.g.dart +++ b/lib/database/collections/account.g.dart @@ -17,11 +17,7 @@ const AccountSchema = CollectionSchema( name: r'Account', id: -6646797162501847804, properties: { - r'name': PropertySchema( - id: 0, - name: r'name', - type: IsarType.string, - ) + r'name': PropertySchema(id: 0, name: r'name', type: IsarType.string), }, estimateSize: _accountEstimateSize, serialize: _accountSerialize, @@ -110,10 +106,7 @@ extension AccountQueryWhereSort on QueryBuilder { extension AccountQueryWhere on QueryBuilder { QueryBuilder idEqualTo(Id id) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: id, - upper: id, - )); + return query.addWhereClause(IdWhereClause.between(lower: id, upper: id)); }); } @@ -139,8 +132,10 @@ extension AccountQueryWhere on QueryBuilder { }); } - QueryBuilder idGreaterThan(Id id, - {bool include = false}) { + QueryBuilder idGreaterThan( + Id id, { + bool include = false, + }) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.greaterThan(lower: id, includeLower: include), @@ -148,8 +143,10 @@ extension AccountQueryWhere on QueryBuilder { }); } - QueryBuilder idLessThan(Id id, - {bool include = false}) { + QueryBuilder idLessThan( + Id id, { + bool include = false, + }) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.lessThan(upper: id, includeUpper: include), @@ -164,12 +161,14 @@ extension AccountQueryWhere on QueryBuilder { bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: lowerId, - includeLower: includeLower, - upper: upperId, - includeUpper: includeUpper, - )); + return query.addWhereClause( + IdWhereClause.between( + lower: lowerId, + includeLower: includeLower, + upper: upperId, + includeUpper: includeUpper, + ), + ); }); } } @@ -178,10 +177,9 @@ extension AccountQueryFilter on QueryBuilder { QueryBuilder idEqualTo(Id value) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'id', value: value), + ); }); } @@ -190,11 +188,13 @@ extension AccountQueryFilter bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'id', + value: value, + ), + ); }); } @@ -203,11 +203,13 @@ extension AccountQueryFilter bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'id', + value: value, + ), + ); }); } @@ -218,29 +220,31 @@ extension AccountQueryFilter bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'id', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'id', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + ), + ); }); } QueryBuilder nameIsNull() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(const FilterCondition.isNull( - property: r'name', - )); + return query.addFilterCondition( + const FilterCondition.isNull(property: r'name'), + ); }); } QueryBuilder nameIsNotNull() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(const FilterCondition.isNotNull( - property: r'name', - )); + return query.addFilterCondition( + const FilterCondition.isNotNull(property: r'name'), + ); }); } @@ -249,11 +253,13 @@ extension AccountQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.equalTo( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } @@ -263,12 +269,14 @@ extension AccountQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } @@ -278,12 +286,14 @@ extension AccountQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } @@ -295,14 +305,16 @@ extension AccountQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'name', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'name', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + caseSensitive: caseSensitive, + ), + ); }); } @@ -311,11 +323,13 @@ extension AccountQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.startsWith( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.startsWith( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } @@ -324,53 +338,59 @@ extension AccountQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.endsWith( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.endsWith( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder nameContains( - String value, - {bool caseSensitive = true}) { + String value, { + bool caseSensitive = true, + }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.contains( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.contains( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder nameMatches( - String pattern, - {bool caseSensitive = true}) { + String pattern, { + bool caseSensitive = true, + }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.matches( - property: r'name', - wildcard: pattern, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.matches( + property: r'name', + wildcard: pattern, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder nameIsEmpty() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'name', - value: '', - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'name', value: ''), + ); }); } QueryBuilder nameIsNotEmpty() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - property: r'name', - value: '', - )); + return query.addFilterCondition( + FilterCondition.greaterThan(property: r'name', value: ''), + ); }); } } @@ -424,8 +444,9 @@ extension AccountQuerySortThenBy extension AccountQueryWhereDistinct on QueryBuilder { - QueryBuilder distinctByName( - {bool caseSensitive = true}) { + QueryBuilder distinctByName({ + bool caseSensitive = true, + }) { return QueryBuilder.apply(this, (query) { return query.addDistinctBy(r'name', caseSensitive: caseSensitive); }); diff --git a/lib/database/collections/beneficiary.g.dart b/lib/database/collections/beneficiary.g.dart index d1acf98..7943e15 100644 --- a/lib/database/collections/beneficiary.g.dart +++ b/lib/database/collections/beneficiary.g.dart @@ -22,17 +22,13 @@ const BeneficiarySchema = CollectionSchema( name: r'imagePath', type: IsarType.string, ), - r'name': PropertySchema( - id: 1, - name: r'name', - type: IsarType.string, - ), + r'name': PropertySchema(id: 1, name: r'name', type: IsarType.string), r'type': PropertySchema( id: 2, name: r'type', type: IsarType.byte, enumMap: _BeneficiarytypeEnumValueMap, - ) + ), }, estimateSize: _beneficiaryEstimateSize, serialize: _beneficiarySerialize, @@ -46,7 +42,7 @@ const BeneficiarySchema = CollectionSchema( name: r'account', target: r'Account', single: true, - ) + ), }, embeddedSchemas: {}, getId: _beneficiaryGetId, @@ -94,7 +90,7 @@ Beneficiary _beneficiaryDeserialize( object.name = reader.readString(offsets[1]); object.type = _BeneficiarytypeValueEnumMap[reader.readByteOrNull(offsets[2])] ?? - BeneficiaryType.account; + BeneficiaryType.account; return object; } @@ -111,16 +107,14 @@ P _beneficiaryDeserializeProp

( return (reader.readString(offset)) as P; case 2: return (_BeneficiarytypeValueEnumMap[reader.readByteOrNull(offset)] ?? - BeneficiaryType.account) as P; + BeneficiaryType.account) + as P; default: throw IsarError('Unknown property with id $propertyId'); } } -const _BeneficiarytypeEnumValueMap = { - 'account': 0, - 'other': 1, -}; +const _BeneficiarytypeEnumValueMap = {'account': 0, 'other': 1}; const _BeneficiarytypeValueEnumMap = { 0: BeneficiaryType.account, 1: BeneficiaryType.other, @@ -135,7 +129,10 @@ List> _beneficiaryGetLinks(Beneficiary object) { } void _beneficiaryAttach( - IsarCollection col, Id id, Beneficiary object) { + IsarCollection col, + Id id, + Beneficiary object, +) { object.id = id; object.account.attach(col, col.isar.collection(), r'account', id); } @@ -153,15 +150,13 @@ extension BeneficiaryQueryWhere on QueryBuilder { QueryBuilder idEqualTo(Id id) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: id, - upper: id, - )); + return query.addWhereClause(IdWhereClause.between(lower: id, upper: id)); }); } QueryBuilder idNotEqualTo( - Id id) { + Id id, + ) { return QueryBuilder.apply(this, (query) { if (query.whereSort == Sort.asc) { return query @@ -183,8 +178,10 @@ extension BeneficiaryQueryWhere }); } - QueryBuilder idGreaterThan(Id id, - {bool include = false}) { + QueryBuilder idGreaterThan( + Id id, { + bool include = false, + }) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.greaterThan(lower: id, includeLower: include), @@ -192,8 +189,10 @@ extension BeneficiaryQueryWhere }); } - QueryBuilder idLessThan(Id id, - {bool include = false}) { + QueryBuilder idLessThan( + Id id, { + bool include = false, + }) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.lessThan(upper: id, includeUpper: include), @@ -208,12 +207,14 @@ extension BeneficiaryQueryWhere bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: lowerId, - includeLower: includeLower, - upper: upperId, - includeUpper: includeUpper, - )); + return query.addWhereClause( + IdWhereClause.between( + lower: lowerId, + includeLower: includeLower, + upper: upperId, + includeUpper: includeUpper, + ), + ); }); } } @@ -221,12 +222,12 @@ extension BeneficiaryQueryWhere extension BeneficiaryQueryFilter on QueryBuilder { QueryBuilder idEqualTo( - Id value) { + Id value, + ) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'id', value: value), + ); }); } @@ -235,11 +236,13 @@ extension BeneficiaryQueryFilter bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'id', + value: value, + ), + ); }); } @@ -248,11 +251,13 @@ extension BeneficiaryQueryFilter bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'id', + value: value, + ), + ); }); } @@ -263,82 +268,87 @@ extension BeneficiaryQueryFilter bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'id', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'id', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + ), + ); }); } QueryBuilder - imagePathIsNull() { + imagePathIsNull() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(const FilterCondition.isNull( - property: r'imagePath', - )); + return query.addFilterCondition( + const FilterCondition.isNull(property: r'imagePath'), + ); }); } QueryBuilder - imagePathIsNotNull() { + imagePathIsNotNull() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(const FilterCondition.isNotNull( - property: r'imagePath', - )); + return query.addFilterCondition( + const FilterCondition.isNotNull(property: r'imagePath'), + ); }); } QueryBuilder - imagePathEqualTo( - String? value, { - bool caseSensitive = true, - }) { + imagePathEqualTo(String? value, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'imagePath', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.equalTo( + property: r'imagePath', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - imagePathGreaterThan( + imagePathGreaterThan( String? value, { bool include = false, bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'imagePath', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'imagePath', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - imagePathLessThan( + imagePathLessThan( String? value, { bool include = false, bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'imagePath', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'imagePath', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - imagePathBetween( + imagePathBetween( String? lower, String? upper, { bool includeLower = true, @@ -346,84 +356,86 @@ extension BeneficiaryQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'imagePath', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'imagePath', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - imagePathStartsWith( - String value, { - bool caseSensitive = true, - }) { + imagePathStartsWith(String value, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.startsWith( - property: r'imagePath', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.startsWith( + property: r'imagePath', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - imagePathEndsWith( - String value, { - bool caseSensitive = true, - }) { + imagePathEndsWith(String value, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.endsWith( - property: r'imagePath', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.endsWith( + property: r'imagePath', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - imagePathContains(String value, {bool caseSensitive = true}) { + imagePathContains(String value, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.contains( - property: r'imagePath', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.contains( + property: r'imagePath', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - imagePathMatches(String pattern, {bool caseSensitive = true}) { + imagePathMatches(String pattern, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.matches( - property: r'imagePath', - wildcard: pattern, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.matches( + property: r'imagePath', + wildcard: pattern, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - imagePathIsEmpty() { + imagePathIsEmpty() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'imagePath', - value: '', - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'imagePath', value: ''), + ); }); } QueryBuilder - imagePathIsNotEmpty() { + imagePathIsNotEmpty() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - property: r'imagePath', - value: '', - )); + return query.addFilterCondition( + FilterCondition.greaterThan(property: r'imagePath', value: ''), + ); }); } @@ -432,11 +444,13 @@ extension BeneficiaryQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.equalTo( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } @@ -446,12 +460,14 @@ extension BeneficiaryQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } @@ -461,12 +477,14 @@ extension BeneficiaryQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } @@ -478,14 +496,16 @@ extension BeneficiaryQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'name', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'name', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + caseSensitive: caseSensitive, + ), + ); }); } @@ -494,11 +514,13 @@ extension BeneficiaryQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.startsWith( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.startsWith( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } @@ -507,64 +529,70 @@ extension BeneficiaryQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.endsWith( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.endsWith( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder nameContains( - String value, - {bool caseSensitive = true}) { + String value, { + bool caseSensitive = true, + }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.contains( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.contains( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder nameMatches( - String pattern, - {bool caseSensitive = true}) { + String pattern, { + bool caseSensitive = true, + }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.matches( - property: r'name', - wildcard: pattern, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.matches( + property: r'name', + wildcard: pattern, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder nameIsEmpty() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'name', - value: '', - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'name', value: ''), + ); }); } QueryBuilder - nameIsNotEmpty() { + nameIsNotEmpty() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - property: r'name', - value: '', - )); + return query.addFilterCondition( + FilterCondition.greaterThan(property: r'name', value: ''), + ); }); } QueryBuilder typeEqualTo( - BeneficiaryType value) { + BeneficiaryType value, + ) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'type', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'type', value: value), + ); }); } @@ -573,11 +601,13 @@ extension BeneficiaryQueryFilter bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'type', - value: value, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'type', + value: value, + ), + ); }); } @@ -586,11 +616,13 @@ extension BeneficiaryQueryFilter bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'type', - value: value, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'type', + value: value, + ), + ); }); } @@ -601,13 +633,15 @@ extension BeneficiaryQueryFilter bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'type', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'type', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + ), + ); }); } } @@ -618,14 +652,15 @@ extension BeneficiaryQueryObject extension BeneficiaryQueryLinks on QueryBuilder { QueryBuilder account( - FilterQuery q) { + FilterQuery q, + ) { return QueryBuilder.apply(this, (query) { return query.link(q, r'account'); }); } QueryBuilder - accountIsNull() { + accountIsNull() { return QueryBuilder.apply(this, (query) { return query.linkLength(r'account', 0, true, 0, true); }); @@ -724,15 +759,17 @@ extension BeneficiaryQuerySortThenBy extension BeneficiaryQueryWhereDistinct on QueryBuilder { - QueryBuilder distinctByImagePath( - {bool caseSensitive = true}) { + QueryBuilder distinctByImagePath({ + bool caseSensitive = true, + }) { return QueryBuilder.apply(this, (query) { return query.addDistinctBy(r'imagePath', caseSensitive: caseSensitive); }); } - QueryBuilder distinctByName( - {bool caseSensitive = true}) { + QueryBuilder distinctByName({ + bool caseSensitive = true, + }) { return QueryBuilder.apply(this, (query) { return query.addDistinctBy(r'name', caseSensitive: caseSensitive); }); diff --git a/lib/database/collections/budget.g.dart b/lib/database/collections/budget.g.dart index d017b8e..2700779 100644 --- a/lib/database/collections/budget.g.dart +++ b/lib/database/collections/budget.g.dart @@ -17,11 +17,7 @@ const BudgetItemSchema = CollectionSchema( name: r'BudgetItem', id: 618999772191843499, properties: { - r'amount': PropertySchema( - id: 0, - name: r'amount', - type: IsarType.double, - ) + r'amount': PropertySchema(id: 0, name: r'amount', type: IsarType.double), }, estimateSize: _budgetItemEstimateSize, serialize: _budgetItemSerialize, @@ -35,7 +31,7 @@ const BudgetItemSchema = CollectionSchema( name: r'expenseCategory', target: r'ExpenseCategory', single: true, - ) + ), }, embeddedSchemas: {}, getId: _budgetItemGetId, @@ -99,7 +95,11 @@ List> _budgetItemGetLinks(BudgetItem object) { void _budgetItemAttach(IsarCollection col, Id id, BudgetItem object) { object.id = id; object.expenseCategory.attach( - col, col.isar.collection(), r'expenseCategory', id); + col, + col.isar.collection(), + r'expenseCategory', + id, + ); } extension BudgetItemQueryWhereSort @@ -115,10 +115,7 @@ extension BudgetItemQueryWhere on QueryBuilder { QueryBuilder idEqualTo(Id id) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: id, - upper: id, - )); + return query.addWhereClause(IdWhereClause.between(lower: id, upper: id)); }); } @@ -144,8 +141,10 @@ extension BudgetItemQueryWhere }); } - QueryBuilder idGreaterThan(Id id, - {bool include = false}) { + QueryBuilder idGreaterThan( + Id id, { + bool include = false, + }) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.greaterThan(lower: id, includeLower: include), @@ -153,8 +152,10 @@ extension BudgetItemQueryWhere }); } - QueryBuilder idLessThan(Id id, - {bool include = false}) { + QueryBuilder idLessThan( + Id id, { + bool include = false, + }) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.lessThan(upper: id, includeUpper: include), @@ -169,12 +170,14 @@ extension BudgetItemQueryWhere bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: lowerId, - includeLower: includeLower, - upper: upperId, - includeUpper: includeUpper, - )); + return query.addWhereClause( + IdWhereClause.between( + lower: lowerId, + includeLower: includeLower, + upper: upperId, + includeUpper: includeUpper, + ), + ); }); } } @@ -186,11 +189,13 @@ extension BudgetItemQueryFilter double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'amount', - value: value, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.equalTo( + property: r'amount', + value: value, + epsilon: epsilon, + ), + ); }); } @@ -200,12 +205,14 @@ extension BudgetItemQueryFilter double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'amount', - value: value, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'amount', + value: value, + epsilon: epsilon, + ), + ); }); } @@ -215,12 +222,14 @@ extension BudgetItemQueryFilter double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'amount', - value: value, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'amount', + value: value, + epsilon: epsilon, + ), + ); }); } @@ -232,24 +241,26 @@ extension BudgetItemQueryFilter double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'amount', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'amount', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + epsilon: epsilon, + ), + ); }); } QueryBuilder idEqualTo( - Id value) { + Id value, + ) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'id', value: value), + ); }); } @@ -258,11 +269,13 @@ extension BudgetItemQueryFilter bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'id', + value: value, + ), + ); }); } @@ -271,11 +284,13 @@ extension BudgetItemQueryFilter bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'id', + value: value, + ), + ); }); } @@ -286,13 +301,15 @@ extension BudgetItemQueryFilter bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'id', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'id', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + ), + ); }); } } @@ -303,14 +320,15 @@ extension BudgetItemQueryObject extension BudgetItemQueryLinks on QueryBuilder { QueryBuilder expenseCategory( - FilterQuery q) { + FilterQuery q, + ) { return QueryBuilder.apply(this, (query) { return query.link(q, r'expenseCategory'); }); } QueryBuilder - expenseCategoryIsNull() { + expenseCategoryIsNull() { return QueryBuilder.apply(this, (query) { return query.linkLength(r'expenseCategory', 0, true, 0, true); }); @@ -399,22 +417,14 @@ const BudgetSchema = CollectionSchema( name: r'includeOtherSpendings', type: IsarType.bool, ), - r'income': PropertySchema( - id: 1, - name: r'income', - type: IsarType.double, - ), - r'name': PropertySchema( - id: 2, - name: r'name', - type: IsarType.string, - ), + r'income': PropertySchema(id: 1, name: r'income', type: IsarType.double), + r'name': PropertySchema(id: 2, name: r'name', type: IsarType.string), r'period': PropertySchema( id: 3, name: r'period', type: IsarType.byte, enumMap: _BudgetperiodEnumValueMap, - ) + ), }, estimateSize: _budgetEstimateSize, serialize: _budgetSerialize, @@ -434,7 +444,7 @@ const BudgetSchema = CollectionSchema( name: r'items', target: r'BudgetItem', single: false, - ) + ), }, embeddedSchemas: {}, getId: _budgetGetId, @@ -478,7 +488,7 @@ Budget _budgetDeserialize( object.name = reader.readString(offsets[2]); object.period = _BudgetperiodValueEnumMap[reader.readByteOrNull(offsets[3])] ?? - BudgetPeriod.month; + BudgetPeriod.month; return object; } @@ -497,18 +507,15 @@ P _budgetDeserializeProp

( return (reader.readString(offset)) as P; case 3: return (_BudgetperiodValueEnumMap[reader.readByteOrNull(offset)] ?? - BudgetPeriod.month) as P; + BudgetPeriod.month) + as P; default: throw IsarError('Unknown property with id $propertyId'); } } -const _BudgetperiodEnumValueMap = { - 'month': 0, -}; -const _BudgetperiodValueEnumMap = { - 0: BudgetPeriod.month, -}; +const _BudgetperiodEnumValueMap = {'month': 0}; +const _BudgetperiodValueEnumMap = {0: BudgetPeriod.month}; Id _budgetGetId(Budget object) { return object.id; @@ -535,10 +542,7 @@ extension BudgetQueryWhereSort on QueryBuilder { extension BudgetQueryWhere on QueryBuilder { QueryBuilder idEqualTo(Id id) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: id, - upper: id, - )); + return query.addWhereClause(IdWhereClause.between(lower: id, upper: id)); }); } @@ -564,8 +568,10 @@ extension BudgetQueryWhere on QueryBuilder { }); } - QueryBuilder idGreaterThan(Id id, - {bool include = false}) { + QueryBuilder idGreaterThan( + Id id, { + bool include = false, + }) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.greaterThan(lower: id, includeLower: include), @@ -573,8 +579,10 @@ extension BudgetQueryWhere on QueryBuilder { }); } - QueryBuilder idLessThan(Id id, - {bool include = false}) { + QueryBuilder idLessThan( + Id id, { + bool include = false, + }) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.lessThan(upper: id, includeUpper: include), @@ -589,12 +597,14 @@ extension BudgetQueryWhere on QueryBuilder { bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: lowerId, - includeLower: includeLower, - upper: upperId, - includeUpper: includeUpper, - )); + return query.addWhereClause( + IdWhereClause.between( + lower: lowerId, + includeLower: includeLower, + upper: upperId, + includeUpper: includeUpper, + ), + ); }); } } @@ -602,10 +612,9 @@ extension BudgetQueryWhere on QueryBuilder { extension BudgetQueryFilter on QueryBuilder { QueryBuilder idEqualTo(Id value) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'id', value: value), + ); }); } @@ -614,11 +623,13 @@ extension BudgetQueryFilter on QueryBuilder { bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'id', + value: value, + ), + ); }); } @@ -627,11 +638,13 @@ extension BudgetQueryFilter on QueryBuilder { bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'id', + value: value, + ), + ); }); } @@ -642,23 +655,27 @@ extension BudgetQueryFilter on QueryBuilder { bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'id', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'id', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + ), + ); }); } QueryBuilder - includeOtherSpendingsEqualTo(bool value) { + includeOtherSpendingsEqualTo(bool value) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'includeOtherSpendings', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo( + property: r'includeOtherSpendings', + value: value, + ), + ); }); } @@ -667,11 +684,13 @@ extension BudgetQueryFilter on QueryBuilder { double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'income', - value: value, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.equalTo( + property: r'income', + value: value, + epsilon: epsilon, + ), + ); }); } @@ -681,12 +700,14 @@ extension BudgetQueryFilter on QueryBuilder { double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'income', - value: value, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'income', + value: value, + epsilon: epsilon, + ), + ); }); } @@ -696,12 +717,14 @@ extension BudgetQueryFilter on QueryBuilder { double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'income', - value: value, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'income', + value: value, + epsilon: epsilon, + ), + ); }); } @@ -713,14 +736,16 @@ extension BudgetQueryFilter on QueryBuilder { double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'income', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'income', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + epsilon: epsilon, + ), + ); }); } @@ -729,11 +754,13 @@ extension BudgetQueryFilter on QueryBuilder { bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.equalTo( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } @@ -743,12 +770,14 @@ extension BudgetQueryFilter on QueryBuilder { bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } @@ -758,12 +787,14 @@ extension BudgetQueryFilter on QueryBuilder { bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } @@ -775,14 +806,16 @@ extension BudgetQueryFilter on QueryBuilder { bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'name', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'name', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + caseSensitive: caseSensitive, + ), + ); }); } @@ -791,11 +824,13 @@ extension BudgetQueryFilter on QueryBuilder { bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.startsWith( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.startsWith( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } @@ -804,62 +839,69 @@ extension BudgetQueryFilter on QueryBuilder { bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.endsWith( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.endsWith( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } - QueryBuilder nameContains(String value, - {bool caseSensitive = true}) { + QueryBuilder nameContains( + String value, { + bool caseSensitive = true, + }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.contains( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.contains( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder nameMatches( - String pattern, - {bool caseSensitive = true}) { + String pattern, { + bool caseSensitive = true, + }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.matches( - property: r'name', - wildcard: pattern, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.matches( + property: r'name', + wildcard: pattern, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder nameIsEmpty() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'name', - value: '', - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'name', value: ''), + ); }); } QueryBuilder nameIsNotEmpty() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - property: r'name', - value: '', - )); + return query.addFilterCondition( + FilterCondition.greaterThan(property: r'name', value: ''), + ); }); } QueryBuilder periodEqualTo( - BudgetPeriod value) { + BudgetPeriod value, + ) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'period', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'period', value: value), + ); }); } @@ -868,11 +910,13 @@ extension BudgetQueryFilter on QueryBuilder { bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'period', - value: value, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'period', + value: value, + ), + ); }); } @@ -881,11 +925,13 @@ extension BudgetQueryFilter on QueryBuilder { bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'period', - value: value, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'period', + value: value, + ), + ); }); } @@ -896,13 +942,15 @@ extension BudgetQueryFilter on QueryBuilder { bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'period', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'period', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + ), + ); }); } } @@ -911,7 +959,8 @@ extension BudgetQueryObject on QueryBuilder {} extension BudgetQueryLinks on QueryBuilder { QueryBuilder account( - FilterQuery q) { + FilterQuery q, + ) { return QueryBuilder.apply(this, (query) { return query.link(q, r'account'); }); @@ -924,14 +973,16 @@ extension BudgetQueryLinks on QueryBuilder { } QueryBuilder items( - FilterQuery q) { + FilterQuery q, + ) { return QueryBuilder.apply(this, (query) { return query.link(q, r'items'); }); } QueryBuilder itemsLengthEqualTo( - int length) { + int length, + ) { return QueryBuilder.apply(this, (query) { return query.linkLength(r'items', length, true, length, true); }); @@ -975,7 +1026,12 @@ extension BudgetQueryLinks on QueryBuilder { }) { return QueryBuilder.apply(this, (query) { return query.linkLength( - r'items', lower, includeLower, upper, includeUpper); + r'items', + lower, + includeLower, + upper, + includeUpper, + ); }); } } @@ -1105,8 +1161,9 @@ extension BudgetQueryWhereDistinct on QueryBuilder { }); } - QueryBuilder distinctByName( - {bool caseSensitive = true}) { + QueryBuilder distinctByName({ + bool caseSensitive = true, + }) { return QueryBuilder.apply(this, (query) { return query.addDistinctBy(r'name', caseSensitive: caseSensitive); }); diff --git a/lib/database/collections/expense_category.g.dart b/lib/database/collections/expense_category.g.dart index b740c75..13012af 100644 --- a/lib/database/collections/expense_category.g.dart +++ b/lib/database/collections/expense_category.g.dart @@ -17,11 +17,7 @@ const ExpenseCategorySchema = CollectionSchema( name: r'ExpenseCategory', id: -6352499903118634, properties: { - r'name': PropertySchema( - id: 0, - name: r'name', - type: IsarType.string, - ) + r'name': PropertySchema(id: 0, name: r'name', type: IsarType.string), }, estimateSize: _expenseCategoryEstimateSize, serialize: _expenseCategorySerialize, @@ -91,7 +87,10 @@ List> _expenseCategoryGetLinks(ExpenseCategory object) { } void _expenseCategoryAttach( - IsarCollection col, Id id, ExpenseCategory object) { + IsarCollection col, + Id id, + ExpenseCategory object, +) { object.id = id; } @@ -107,17 +106,15 @@ extension ExpenseCategoryQueryWhereSort extension ExpenseCategoryQueryWhere on QueryBuilder { QueryBuilder idEqualTo( - Id id) { + Id id, + ) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: id, - upper: id, - )); + return query.addWhereClause(IdWhereClause.between(lower: id, upper: id)); }); } QueryBuilder - idNotEqualTo(Id id) { + idNotEqualTo(Id id) { return QueryBuilder.apply(this, (query) { if (query.whereSort == Sort.asc) { return query @@ -140,7 +137,7 @@ extension ExpenseCategoryQueryWhere } QueryBuilder - idGreaterThan(Id id, {bool include = false}) { + idGreaterThan(Id id, {bool include = false}) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.greaterThan(lower: id, includeLower: include), @@ -149,8 +146,9 @@ extension ExpenseCategoryQueryWhere } QueryBuilder idLessThan( - Id id, - {bool include = false}) { + Id id, { + bool include = false, + }) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.lessThan(upper: id, includeUpper: include), @@ -165,12 +163,14 @@ extension ExpenseCategoryQueryWhere bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: lowerId, - includeLower: includeLower, - upper: upperId, - includeUpper: includeUpper, - )); + return query.addWhereClause( + IdWhereClause.between( + lower: lowerId, + includeLower: includeLower, + upper: upperId, + includeUpper: includeUpper, + ), + ); }); } } @@ -178,109 +178,111 @@ extension ExpenseCategoryQueryWhere extension ExpenseCategoryQueryFilter on QueryBuilder { QueryBuilder - idEqualTo(Id value) { + idEqualTo(Id value) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'id', value: value), + ); }); } QueryBuilder - idGreaterThan( - Id value, { - bool include = false, - }) { + idGreaterThan(Id value, {bool include = false}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'id', + value: value, + ), + ); }); } QueryBuilder - idLessThan( - Id value, { - bool include = false, - }) { + idLessThan(Id value, {bool include = false}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'id', + value: value, + ), + ); }); } QueryBuilder - idBetween( + idBetween( Id lower, Id upper, { bool includeLower = true, bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'id', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'id', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + ), + ); }); } QueryBuilder - nameEqualTo( - String value, { - bool caseSensitive = true, - }) { + nameEqualTo(String value, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.equalTo( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameGreaterThan( + nameGreaterThan( String value, { bool include = false, bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameLessThan( + nameLessThan( String value, { bool include = false, bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameBetween( + nameBetween( String lower, String upper, { bool includeLower = true, @@ -288,84 +290,86 @@ extension ExpenseCategoryQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'name', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'name', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameStartsWith( - String value, { - bool caseSensitive = true, - }) { + nameStartsWith(String value, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.startsWith( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.startsWith( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameEndsWith( - String value, { - bool caseSensitive = true, - }) { + nameEndsWith(String value, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.endsWith( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.endsWith( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameContains(String value, {bool caseSensitive = true}) { + nameContains(String value, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.contains( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.contains( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameMatches(String pattern, {bool caseSensitive = true}) { + nameMatches(String pattern, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.matches( - property: r'name', - wildcard: pattern, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.matches( + property: r'name', + wildcard: pattern, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameIsEmpty() { + nameIsEmpty() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'name', - value: '', - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'name', value: ''), + ); }); } QueryBuilder - nameIsNotEmpty() { + nameIsNotEmpty() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - property: r'name', - value: '', - )); + return query.addFilterCondition( + FilterCondition.greaterThan(property: r'name', value: ''), + ); }); } } @@ -385,7 +389,7 @@ extension ExpenseCategoryQuerySortBy } QueryBuilder - sortByNameDesc() { + sortByNameDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'name', Sort.desc); }); @@ -413,7 +417,7 @@ extension ExpenseCategoryQuerySortThenBy } QueryBuilder - thenByNameDesc() { + thenByNameDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'name', Sort.desc); }); @@ -422,8 +426,9 @@ extension ExpenseCategoryQuerySortThenBy extension ExpenseCategoryQueryWhereDistinct on QueryBuilder { - QueryBuilder distinctByName( - {bool caseSensitive = true}) { + QueryBuilder distinctByName({ + bool caseSensitive = true, + }) { return QueryBuilder.apply(this, (query) { return query.addDistinctBy(r'name', caseSensitive: caseSensitive); }); diff --git a/lib/database/collections/recurrent.g.dart b/lib/database/collections/recurrent.g.dart index 77408c6..c587bc5 100644 --- a/lib/database/collections/recurrent.g.dart +++ b/lib/database/collections/recurrent.g.dart @@ -18,16 +18,12 @@ const RecurringTransactionSchema = CollectionSchema( name: r'RecurringTransaction', id: 969840479390105118, properties: { - r'days': PropertySchema( - id: 0, - name: r'days', - type: IsarType.long, - ), + r'days': PropertySchema(id: 0, name: r'days', type: IsarType.long), r'lastExecution': PropertySchema( id: 1, name: r'lastExecution', type: IsarType.dateTime, - ) + ), }, estimateSize: _recurringTransactionEstimateSize, serialize: _recurringTransactionSerialize, @@ -47,7 +43,7 @@ const RecurringTransactionSchema = CollectionSchema( name: r'account', target: r'Account', single: true, - ) + ), }, embeddedSchemas: {}, getId: _recurringTransactionGetId, @@ -109,22 +105,30 @@ Id _recurringTransactionGetId(RecurringTransaction object) { } List> _recurringTransactionGetLinks( - RecurringTransaction object) { + RecurringTransaction object, +) { return [object.template, object.account]; } void _recurringTransactionAttach( - IsarCollection col, Id id, RecurringTransaction object) { + IsarCollection col, + Id id, + RecurringTransaction object, +) { object.id = id; - object.template - .attach(col, col.isar.collection(), r'template', id); + object.template.attach( + col, + col.isar.collection(), + r'template', + id, + ); object.account.attach(col, col.isar.collection(), r'account', id); } extension RecurringTransactionQueryWhereSort on QueryBuilder { QueryBuilder - anyId() { + anyId() { return QueryBuilder.apply(this, (query) { return query.addWhereClause(const IdWhereClause.any()); }); @@ -134,17 +138,14 @@ extension RecurringTransactionQueryWhereSort extension RecurringTransactionQueryWhere on QueryBuilder { QueryBuilder - idEqualTo(Id id) { + idEqualTo(Id id) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: id, - upper: id, - )); + return query.addWhereClause(IdWhereClause.between(lower: id, upper: id)); }); } QueryBuilder - idNotEqualTo(Id id) { + idNotEqualTo(Id id) { return QueryBuilder.apply(this, (query) { if (query.whereSort == Sort.asc) { return query @@ -167,7 +168,7 @@ extension RecurringTransactionQueryWhere } QueryBuilder - idGreaterThan(Id id, {bool include = false}) { + idGreaterThan(Id id, {bool include = false}) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.greaterThan(lower: id, includeLower: include), @@ -176,7 +177,7 @@ extension RecurringTransactionQueryWhere } QueryBuilder - idLessThan(Id id, {bool include = false}) { + idLessThan(Id id, {bool include = false}) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.lessThan(upper: id, includeUpper: include), @@ -185,240 +186,326 @@ extension RecurringTransactionQueryWhere } QueryBuilder - idBetween( + idBetween( Id lowerId, Id upperId, { bool includeLower = true, bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: lowerId, - includeLower: includeLower, - upper: upperId, - includeUpper: includeUpper, - )); + return query.addWhereClause( + IdWhereClause.between( + lower: lowerId, + includeLower: includeLower, + upper: upperId, + includeUpper: includeUpper, + ), + ); }); } } -extension RecurringTransactionQueryFilter on QueryBuilder { - QueryBuilder daysEqualTo(int value) { +extension RecurringTransactionQueryFilter + on + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QFilterCondition + > { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + daysEqualTo(int value) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'days', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'days', value: value), + ); }); } - QueryBuilder daysGreaterThan( - int value, { - bool include = false, - }) { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + daysGreaterThan(int value, {bool include = false}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'days', - value: value, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'days', + value: value, + ), + ); }); } - QueryBuilder daysLessThan( - int value, { - bool include = false, - }) { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + daysLessThan(int value, {bool include = false}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'days', - value: value, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'days', + value: value, + ), + ); }); } - QueryBuilder daysBetween( + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + daysBetween( int lower, int upper, { bool includeLower = true, bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'days', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'days', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + ), + ); }); } - QueryBuilder idEqualTo(Id value) { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + idEqualTo(Id value) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'id', value: value), + ); }); } - QueryBuilder idGreaterThan( - Id value, { - bool include = false, - }) { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + idGreaterThan(Id value, {bool include = false}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'id', + value: value, + ), + ); }); } - QueryBuilder idLessThan( - Id value, { - bool include = false, - }) { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + idLessThan(Id value, {bool include = false}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'id', + value: value, + ), + ); }); } - QueryBuilder idBetween( + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + idBetween( Id lower, Id upper, { bool includeLower = true, bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'id', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'id', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + ), + ); }); } - QueryBuilder lastExecutionIsNull() { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + lastExecutionIsNull() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(const FilterCondition.isNull( - property: r'lastExecution', - )); + return query.addFilterCondition( + const FilterCondition.isNull(property: r'lastExecution'), + ); }); } - QueryBuilder lastExecutionIsNotNull() { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + lastExecutionIsNotNull() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(const FilterCondition.isNotNull( - property: r'lastExecution', - )); + return query.addFilterCondition( + const FilterCondition.isNotNull(property: r'lastExecution'), + ); }); } - QueryBuilder lastExecutionEqualTo(DateTime? value) { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + lastExecutionEqualTo(DateTime? value) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'lastExecution', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'lastExecution', value: value), + ); }); } - QueryBuilder lastExecutionGreaterThan( - DateTime? value, { - bool include = false, - }) { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + lastExecutionGreaterThan(DateTime? value, {bool include = false}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'lastExecution', - value: value, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'lastExecution', + value: value, + ), + ); }); } - QueryBuilder lastExecutionLessThan( - DateTime? value, { - bool include = false, - }) { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + lastExecutionLessThan(DateTime? value, {bool include = false}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'lastExecution', - value: value, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'lastExecution', + value: value, + ), + ); }); } - QueryBuilder lastExecutionBetween( + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + lastExecutionBetween( DateTime? lower, DateTime? upper, { bool includeLower = true, bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'lastExecution', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'lastExecution', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + ), + ); }); } } -extension RecurringTransactionQueryObject on QueryBuilder {} +extension RecurringTransactionQueryObject + on + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QFilterCondition + > {} -extension RecurringTransactionQueryLinks on QueryBuilder { - QueryBuilder template(FilterQuery q) { +extension RecurringTransactionQueryLinks + on + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QFilterCondition + > { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + template(FilterQuery q) { return QueryBuilder.apply(this, (query) { return query.link(q, r'template'); }); } - QueryBuilder templateIsNull() { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + templateIsNull() { return QueryBuilder.apply(this, (query) { return query.linkLength(r'template', 0, true, 0, true); }); } - QueryBuilder account(FilterQuery q) { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + account(FilterQuery q) { return QueryBuilder.apply(this, (query) { return query.link(q, r'account'); }); } - QueryBuilder accountIsNull() { + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QAfterFilterCondition + > + accountIsNull() { return QueryBuilder.apply(this, (query) { return query.linkLength(r'account', 0, true, 0, true); }); @@ -428,28 +515,28 @@ extension RecurringTransactionQueryLinks on QueryBuilder { QueryBuilder - sortByDays() { + sortByDays() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'days', Sort.asc); }); } QueryBuilder - sortByDaysDesc() { + sortByDaysDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'days', Sort.desc); }); } QueryBuilder - sortByLastExecution() { + sortByLastExecution() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'lastExecution', Sort.asc); }); } QueryBuilder - sortByLastExecutionDesc() { + sortByLastExecutionDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'lastExecution', Sort.desc); }); @@ -459,42 +546,42 @@ extension RecurringTransactionQuerySortBy extension RecurringTransactionQuerySortThenBy on QueryBuilder { QueryBuilder - thenByDays() { + thenByDays() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'days', Sort.asc); }); } QueryBuilder - thenByDaysDesc() { + thenByDaysDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'days', Sort.desc); }); } QueryBuilder - thenById() { + thenById() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'id', Sort.asc); }); } QueryBuilder - thenByIdDesc() { + thenByIdDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'id', Sort.desc); }); } QueryBuilder - thenByLastExecution() { + thenByLastExecution() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'lastExecution', Sort.asc); }); } QueryBuilder - thenByLastExecutionDesc() { + thenByLastExecutionDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'lastExecution', Sort.desc); }); @@ -504,22 +591,27 @@ extension RecurringTransactionQuerySortThenBy extension RecurringTransactionQueryWhereDistinct on QueryBuilder { QueryBuilder - distinctByDays() { + distinctByDays() { return QueryBuilder.apply(this, (query) { return query.addDistinctBy(r'days'); }); } QueryBuilder - distinctByLastExecution() { + distinctByLastExecution() { return QueryBuilder.apply(this, (query) { return query.addDistinctBy(r'lastExecution'); }); } } -extension RecurringTransactionQueryProperty on QueryBuilder< - RecurringTransaction, RecurringTransaction, QQueryProperty> { +extension RecurringTransactionQueryProperty + on + QueryBuilder< + RecurringTransaction, + RecurringTransaction, + QQueryProperty + > { QueryBuilder idProperty() { return QueryBuilder.apply(this, (query) { return query.addPropertyName(r'id'); @@ -533,7 +625,7 @@ extension RecurringTransactionQueryProperty on QueryBuilder< } QueryBuilder - lastExecutionProperty() { + lastExecutionProperty() { return QueryBuilder.apply(this, (query) { return query.addPropertyName(r'lastExecution'); }); diff --git a/lib/database/collections/template.g.dart b/lib/database/collections/template.g.dart index 96a643e..99b6524 100644 --- a/lib/database/collections/template.g.dart +++ b/lib/database/collections/template.g.dart @@ -18,21 +18,13 @@ const TransactionTemplateSchema = CollectionSchema( name: r'TransactionTemplate', id: -2324989530163310644, properties: { - r'amount': PropertySchema( - id: 0, - name: r'amount', - type: IsarType.double, - ), - r'name': PropertySchema( - id: 1, - name: r'name', - type: IsarType.string, - ), + r'amount': PropertySchema(id: 0, name: r'amount', type: IsarType.double), + r'name': PropertySchema(id: 1, name: r'name', type: IsarType.string), r'recurring': PropertySchema( id: 2, name: r'recurring', type: IsarType.bool, - ) + ), }, estimateSize: _transactionTemplateEstimateSize, serialize: _transactionTemplateSerialize, @@ -58,7 +50,7 @@ const TransactionTemplateSchema = CollectionSchema( name: r'account', target: r'Account', single: true, - ) + ), }, embeddedSchemas: {}, getId: _transactionTemplateGetId, @@ -125,17 +117,29 @@ Id _transactionTemplateGetId(TransactionTemplate object) { } List> _transactionTemplateGetLinks( - TransactionTemplate object) { + TransactionTemplate object, +) { return [object.expenseCategory, object.beneficiary, object.account]; } void _transactionTemplateAttach( - IsarCollection col, Id id, TransactionTemplate object) { + IsarCollection col, + Id id, + TransactionTemplate object, +) { object.id = id; object.expenseCategory.attach( - col, col.isar.collection(), r'expenseCategory', id); - object.beneficiary - .attach(col, col.isar.collection(), r'beneficiary', id); + col, + col.isar.collection(), + r'expenseCategory', + id, + ); + object.beneficiary.attach( + col, + col.isar.collection(), + r'beneficiary', + id, + ); object.account.attach(col, col.isar.collection(), r'account', id); } @@ -151,17 +155,14 @@ extension TransactionTemplateQueryWhereSort extension TransactionTemplateQueryWhere on QueryBuilder { QueryBuilder - idEqualTo(Id id) { + idEqualTo(Id id) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: id, - upper: id, - )); + return query.addWhereClause(IdWhereClause.between(lower: id, upper: id)); }); } QueryBuilder - idNotEqualTo(Id id) { + idNotEqualTo(Id id) { return QueryBuilder.apply(this, (query) { if (query.whereSort == Sort.asc) { return query @@ -184,7 +185,7 @@ extension TransactionTemplateQueryWhere } QueryBuilder - idGreaterThan(Id id, {bool include = false}) { + idGreaterThan(Id id, {bool include = false}) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.greaterThan(lower: id, includeLower: include), @@ -193,7 +194,7 @@ extension TransactionTemplateQueryWhere } QueryBuilder - idLessThan(Id id, {bool include = false}) { + idLessThan(Id id, {bool include = false}) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.lessThan(upper: id, includeUpper: include), @@ -202,73 +203,83 @@ extension TransactionTemplateQueryWhere } QueryBuilder - idBetween( + idBetween( Id lowerId, Id upperId, { bool includeLower = true, bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: lowerId, - includeLower: includeLower, - upper: upperId, - includeUpper: includeUpper, - )); + return query.addWhereClause( + IdWhereClause.between( + lower: lowerId, + includeLower: includeLower, + upper: upperId, + includeUpper: includeUpper, + ), + ); }); } } -extension TransactionTemplateQueryFilter on QueryBuilder { +extension TransactionTemplateQueryFilter + on + QueryBuilder< + TransactionTemplate, + TransactionTemplate, + QFilterCondition + > { QueryBuilder - amountEqualTo( - double value, { - double epsilon = Query.epsilon, - }) { + amountEqualTo(double value, {double epsilon = Query.epsilon}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'amount', - value: value, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.equalTo( + property: r'amount', + value: value, + epsilon: epsilon, + ), + ); }); } QueryBuilder - amountGreaterThan( + amountGreaterThan( double value, { bool include = false, double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'amount', - value: value, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'amount', + value: value, + epsilon: epsilon, + ), + ); }); } QueryBuilder - amountLessThan( + amountLessThan( double value, { bool include = false, double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'amount', - value: value, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'amount', + value: value, + epsilon: epsilon, + ), + ); }); } QueryBuilder - amountBetween( + amountBetween( double lower, double upper, { bool includeLower = true, @@ -276,121 +287,125 @@ extension TransactionTemplateQueryFilter on QueryBuilder - idEqualTo(Id value) { + idEqualTo(Id value) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'id', value: value), + ); }); } QueryBuilder - idGreaterThan( - Id value, { - bool include = false, - }) { + idGreaterThan(Id value, {bool include = false}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'id', + value: value, + ), + ); }); } QueryBuilder - idLessThan( - Id value, { - bool include = false, - }) { + idLessThan(Id value, {bool include = false}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'id', + value: value, + ), + ); }); } QueryBuilder - idBetween( + idBetween( Id lower, Id upper, { bool includeLower = true, bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'id', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'id', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + ), + ); }); } QueryBuilder - nameEqualTo( - String value, { - bool caseSensitive = true, - }) { + nameEqualTo(String value, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.equalTo( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameGreaterThan( + nameGreaterThan( String value, { bool include = false, bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameLessThan( + nameLessThan( String value, { bool include = false, bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameBetween( + nameBetween( String lower, String upper, { bool includeLower = true, @@ -398,140 +413,151 @@ extension TransactionTemplateQueryFilter on QueryBuilder - nameStartsWith( - String value, { - bool caseSensitive = true, - }) { + nameStartsWith(String value, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.startsWith( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.startsWith( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameEndsWith( - String value, { - bool caseSensitive = true, - }) { + nameEndsWith(String value, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.endsWith( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.endsWith( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameContains(String value, {bool caseSensitive = true}) { + nameContains(String value, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.contains( - property: r'name', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.contains( + property: r'name', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameMatches(String pattern, {bool caseSensitive = true}) { + nameMatches(String pattern, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.matches( - property: r'name', - wildcard: pattern, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.matches( + property: r'name', + wildcard: pattern, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - nameIsEmpty() { + nameIsEmpty() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'name', - value: '', - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'name', value: ''), + ); }); } QueryBuilder - nameIsNotEmpty() { + nameIsNotEmpty() { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - property: r'name', - value: '', - )); + return query.addFilterCondition( + FilterCondition.greaterThan(property: r'name', value: ''), + ); }); } QueryBuilder - recurringEqualTo(bool value) { + recurringEqualTo(bool value) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'recurring', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'recurring', value: value), + ); }); } } -extension TransactionTemplateQueryObject on QueryBuilder {} +extension TransactionTemplateQueryObject + on + QueryBuilder< + TransactionTemplate, + TransactionTemplate, + QFilterCondition + > {} -extension TransactionTemplateQueryLinks on QueryBuilder { +extension TransactionTemplateQueryLinks + on + QueryBuilder< + TransactionTemplate, + TransactionTemplate, + QFilterCondition + > { QueryBuilder - expenseCategory(FilterQuery q) { + expenseCategory(FilterQuery q) { return QueryBuilder.apply(this, (query) { return query.link(q, r'expenseCategory'); }); } QueryBuilder - expenseCategoryIsNull() { + expenseCategoryIsNull() { return QueryBuilder.apply(this, (query) { return query.linkLength(r'expenseCategory', 0, true, 0, true); }); } QueryBuilder - beneficiary(FilterQuery q) { + beneficiary(FilterQuery q) { return QueryBuilder.apply(this, (query) { return query.link(q, r'beneficiary'); }); } QueryBuilder - beneficiaryIsNull() { + beneficiaryIsNull() { return QueryBuilder.apply(this, (query) { return query.linkLength(r'beneficiary', 0, true, 0, true); }); } QueryBuilder - account(FilterQuery q) { + account(FilterQuery q) { return QueryBuilder.apply(this, (query) { return query.link(q, r'account'); }); } QueryBuilder - accountIsNull() { + accountIsNull() { return QueryBuilder.apply(this, (query) { return query.linkLength(r'account', 0, true, 0, true); }); @@ -541,42 +567,42 @@ extension TransactionTemplateQueryLinks on QueryBuilder { QueryBuilder - sortByAmount() { + sortByAmount() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'amount', Sort.asc); }); } QueryBuilder - sortByAmountDesc() { + sortByAmountDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'amount', Sort.desc); }); } QueryBuilder - sortByName() { + sortByName() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'name', Sort.asc); }); } QueryBuilder - sortByNameDesc() { + sortByNameDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'name', Sort.desc); }); } QueryBuilder - sortByRecurring() { + sortByRecurring() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'recurring', Sort.asc); }); } QueryBuilder - sortByRecurringDesc() { + sortByRecurringDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'recurring', Sort.desc); }); @@ -586,56 +612,56 @@ extension TransactionTemplateQuerySortBy extension TransactionTemplateQuerySortThenBy on QueryBuilder { QueryBuilder - thenByAmount() { + thenByAmount() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'amount', Sort.asc); }); } QueryBuilder - thenByAmountDesc() { + thenByAmountDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'amount', Sort.desc); }); } QueryBuilder - thenById() { + thenById() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'id', Sort.asc); }); } QueryBuilder - thenByIdDesc() { + thenByIdDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'id', Sort.desc); }); } QueryBuilder - thenByName() { + thenByName() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'name', Sort.asc); }); } QueryBuilder - thenByNameDesc() { + thenByNameDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'name', Sort.desc); }); } QueryBuilder - thenByRecurring() { + thenByRecurring() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'recurring', Sort.asc); }); } QueryBuilder - thenByRecurringDesc() { + thenByRecurringDesc() { return QueryBuilder.apply(this, (query) { return query.addSortBy(r'recurring', Sort.desc); }); @@ -645,21 +671,21 @@ extension TransactionTemplateQuerySortThenBy extension TransactionTemplateQueryWhereDistinct on QueryBuilder { QueryBuilder - distinctByAmount() { + distinctByAmount() { return QueryBuilder.apply(this, (query) { return query.addDistinctBy(r'amount'); }); } QueryBuilder - distinctByName({bool caseSensitive = true}) { + distinctByName({bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { return query.addDistinctBy(r'name', caseSensitive: caseSensitive); }); } QueryBuilder - distinctByRecurring() { + distinctByRecurring() { return QueryBuilder.apply(this, (query) { return query.addDistinctBy(r'recurring'); }); @@ -687,7 +713,7 @@ extension TransactionTemplateQueryProperty } QueryBuilder - recurringProperty() { + recurringProperty() { return QueryBuilder.apply(this, (query) { return query.addPropertyName(r'recurring'); }); diff --git a/lib/database/collections/transaction.g.dart b/lib/database/collections/transaction.g.dart index 38a53da..491ba9c 100644 --- a/lib/database/collections/transaction.g.dart +++ b/lib/database/collections/transaction.g.dart @@ -17,21 +17,9 @@ const TransactionSchema = CollectionSchema( name: r'Transaction', id: 5320225499417954855, properties: { - r'amount': PropertySchema( - id: 0, - name: r'amount', - type: IsarType.double, - ), - r'date': PropertySchema( - id: 1, - name: r'date', - type: IsarType.dateTime, - ), - r'tags': PropertySchema( - id: 2, - name: r'tags', - type: IsarType.stringList, - ) + r'amount': PropertySchema(id: 0, name: r'amount', type: IsarType.double), + r'date': PropertySchema(id: 1, name: r'date', type: IsarType.dateTime), + r'tags': PropertySchema(id: 2, name: r'tags', type: IsarType.stringList), }, estimateSize: _transactionEstimateSize, serialize: _transactionSerialize, @@ -57,7 +45,7 @@ const TransactionSchema = CollectionSchema( name: r'beneficiary', target: r'Beneficiary', single: true, - ) + ), }, embeddedSchemas: {}, getId: _transactionGetId, @@ -134,13 +122,24 @@ List> _transactionGetLinks(Transaction object) { } void _transactionAttach( - IsarCollection col, Id id, Transaction object) { + IsarCollection col, + Id id, + Transaction object, +) { object.id = id; object.expenseCategory.attach( - col, col.isar.collection(), r'expenseCategory', id); + col, + col.isar.collection(), + r'expenseCategory', + id, + ); object.account.attach(col, col.isar.collection(), r'account', id); - object.beneficiary - .attach(col, col.isar.collection(), r'beneficiary', id); + object.beneficiary.attach( + col, + col.isar.collection(), + r'beneficiary', + id, + ); } extension TransactionQueryWhereSort @@ -156,15 +155,13 @@ extension TransactionQueryWhere on QueryBuilder { QueryBuilder idEqualTo(Id id) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: id, - upper: id, - )); + return query.addWhereClause(IdWhereClause.between(lower: id, upper: id)); }); } QueryBuilder idNotEqualTo( - Id id) { + Id id, + ) { return QueryBuilder.apply(this, (query) { if (query.whereSort == Sort.asc) { return query @@ -186,8 +183,10 @@ extension TransactionQueryWhere }); } - QueryBuilder idGreaterThan(Id id, - {bool include = false}) { + QueryBuilder idGreaterThan( + Id id, { + bool include = false, + }) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.greaterThan(lower: id, includeLower: include), @@ -195,8 +194,10 @@ extension TransactionQueryWhere }); } - QueryBuilder idLessThan(Id id, - {bool include = false}) { + QueryBuilder idLessThan( + Id id, { + bool include = false, + }) { return QueryBuilder.apply(this, (query) { return query.addWhereClause( IdWhereClause.lessThan(upper: id, includeUpper: include), @@ -211,12 +212,14 @@ extension TransactionQueryWhere bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addWhereClause(IdWhereClause.between( - lower: lowerId, - includeLower: includeLower, - upper: upperId, - includeUpper: includeUpper, - )); + return query.addWhereClause( + IdWhereClause.between( + lower: lowerId, + includeLower: includeLower, + upper: upperId, + includeUpper: includeUpper, + ), + ); }); } } @@ -228,27 +231,31 @@ extension TransactionQueryFilter double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'amount', - value: value, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.equalTo( + property: r'amount', + value: value, + epsilon: epsilon, + ), + ); }); } QueryBuilder - amountGreaterThan( + amountGreaterThan( double value, { bool include = false, double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'amount', - value: value, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'amount', + value: value, + epsilon: epsilon, + ), + ); }); } @@ -258,12 +265,14 @@ extension TransactionQueryFilter double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'amount', - value: value, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'amount', + value: value, + epsilon: epsilon, + ), + ); }); } @@ -275,24 +284,26 @@ extension TransactionQueryFilter double epsilon = Query.epsilon, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'amount', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - epsilon: epsilon, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'amount', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + epsilon: epsilon, + ), + ); }); } QueryBuilder dateEqualTo( - DateTime value) { + DateTime value, + ) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'date', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'date', value: value), + ); }); } @@ -301,11 +312,13 @@ extension TransactionQueryFilter bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'date', - value: value, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'date', + value: value, + ), + ); }); } @@ -314,11 +327,13 @@ extension TransactionQueryFilter bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'date', - value: value, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'date', + value: value, + ), + ); }); } @@ -329,23 +344,25 @@ extension TransactionQueryFilter bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'date', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'date', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + ), + ); }); } QueryBuilder idEqualTo( - Id value) { + Id value, + ) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.equalTo(property: r'id', value: value), + ); }); } @@ -354,11 +371,13 @@ extension TransactionQueryFilter bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'id', + value: value, + ), + ); }); } @@ -367,11 +386,13 @@ extension TransactionQueryFilter bool include = false, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'id', - value: value, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'id', + value: value, + ), + ); }); } @@ -382,64 +403,69 @@ extension TransactionQueryFilter bool includeUpper = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'id', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - )); + return query.addFilterCondition( + FilterCondition.between( + property: r'id', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + ), + ); }); } QueryBuilder - tagsElementEqualTo( - String value, { - bool caseSensitive = true, - }) { + tagsElementEqualTo(String value, {bool caseSensitive = true}) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'tags', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.equalTo( + property: r'tags', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - tagsElementGreaterThan( + tagsElementGreaterThan( String value, { bool include = false, bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - include: include, - property: r'tags', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.greaterThan( + include: include, + property: r'tags', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - tagsElementLessThan( + tagsElementLessThan( String value, { bool include = false, bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.lessThan( - include: include, - property: r'tags', - value: value, - caseSensitive: caseSensitive, - )); + return query.addFilterCondition( + FilterCondition.lessThan( + include: include, + property: r'tags', + value: value, + caseSensitive: caseSensitive, + ), + ); }); } QueryBuilder - tagsElementBetween( + tagsElementBetween( String lower, String upper, { bool includeLower = true, @@ -447,159 +473,125 @@ extension TransactionQueryFilter bool caseSensitive = true, }) { return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.between( - property: r'tags', - lower: lower, - includeLower: includeLower, - upper: upper, - includeUpper: includeUpper, - caseSensitive: caseSensitive, - )); - }); - } - - QueryBuilder - tagsElementStartsWith( - String value, { - bool caseSensitive = true, - }) { - return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.startsWith( - property: r'tags', - value: value, - caseSensitive: caseSensitive, - )); - }); - } - - QueryBuilder - tagsElementEndsWith( - String value, { - bool caseSensitive = true, - }) { - return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.endsWith( - property: r'tags', - value: value, - caseSensitive: caseSensitive, - )); - }); - } - - QueryBuilder - tagsElementContains(String value, {bool caseSensitive = true}) { - return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.contains( - property: r'tags', - value: value, - caseSensitive: caseSensitive, - )); - }); - } - - QueryBuilder - tagsElementMatches(String pattern, {bool caseSensitive = true}) { - return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.matches( - property: r'tags', - wildcard: pattern, - caseSensitive: caseSensitive, - )); - }); - } - - QueryBuilder - tagsElementIsEmpty() { - return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.equalTo( - property: r'tags', - value: '', - )); - }); - } - - QueryBuilder - tagsElementIsNotEmpty() { - return QueryBuilder.apply(this, (query) { - return query.addFilterCondition(FilterCondition.greaterThan( - property: r'tags', - value: '', - )); - }); - } - - QueryBuilder - tagsLengthEqualTo(int length) { - return QueryBuilder.apply(this, (query) { - return query.listLength( - r'tags', - length, - true, - length, - true, + return query.addFilterCondition( + FilterCondition.between( + property: r'tags', + lower: lower, + includeLower: includeLower, + upper: upper, + includeUpper: includeUpper, + caseSensitive: caseSensitive, + ), ); }); } + QueryBuilder + tagsElementStartsWith(String value, {bool caseSensitive = true}) { + return QueryBuilder.apply(this, (query) { + return query.addFilterCondition( + FilterCondition.startsWith( + property: r'tags', + value: value, + caseSensitive: caseSensitive, + ), + ); + }); + } + + QueryBuilder + tagsElementEndsWith(String value, {bool caseSensitive = true}) { + return QueryBuilder.apply(this, (query) { + return query.addFilterCondition( + FilterCondition.endsWith( + property: r'tags', + value: value, + caseSensitive: caseSensitive, + ), + ); + }); + } + + QueryBuilder + tagsElementContains(String value, {bool caseSensitive = true}) { + return QueryBuilder.apply(this, (query) { + return query.addFilterCondition( + FilterCondition.contains( + property: r'tags', + value: value, + caseSensitive: caseSensitive, + ), + ); + }); + } + + QueryBuilder + tagsElementMatches(String pattern, {bool caseSensitive = true}) { + return QueryBuilder.apply(this, (query) { + return query.addFilterCondition( + FilterCondition.matches( + property: r'tags', + wildcard: pattern, + caseSensitive: caseSensitive, + ), + ); + }); + } + + QueryBuilder + tagsElementIsEmpty() { + return QueryBuilder.apply(this, (query) { + return query.addFilterCondition( + FilterCondition.equalTo(property: r'tags', value: ''), + ); + }); + } + + QueryBuilder + tagsElementIsNotEmpty() { + return QueryBuilder.apply(this, (query) { + return query.addFilterCondition( + FilterCondition.greaterThan(property: r'tags', value: ''), + ); + }); + } + + QueryBuilder + tagsLengthEqualTo(int length) { + return QueryBuilder.apply(this, (query) { + return query.listLength(r'tags', length, true, length, true); + }); + } + QueryBuilder tagsIsEmpty() { return QueryBuilder.apply(this, (query) { - return query.listLength( - r'tags', - 0, - true, - 0, - true, - ); + return query.listLength(r'tags', 0, true, 0, true); }); } QueryBuilder - tagsIsNotEmpty() { + tagsIsNotEmpty() { return QueryBuilder.apply(this, (query) { - return query.listLength( - r'tags', - 0, - false, - 999999, - true, - ); + return query.listLength(r'tags', 0, false, 999999, true); }); } QueryBuilder - tagsLengthLessThan( - int length, { - bool include = false, - }) { + tagsLengthLessThan(int length, {bool include = false}) { return QueryBuilder.apply(this, (query) { - return query.listLength( - r'tags', - 0, - true, - length, - include, - ); + return query.listLength(r'tags', 0, true, length, include); }); } QueryBuilder - tagsLengthGreaterThan( - int length, { - bool include = false, - }) { + tagsLengthGreaterThan(int length, {bool include = false}) { return QueryBuilder.apply(this, (query) { - return query.listLength( - r'tags', - length, - include, - 999999, - true, - ); + return query.listLength(r'tags', length, include, 999999, true); }); } QueryBuilder - tagsLengthBetween( + tagsLengthBetween( int lower, int upper, { bool includeLower = true, @@ -623,42 +615,45 @@ extension TransactionQueryObject extension TransactionQueryLinks on QueryBuilder { QueryBuilder expenseCategory( - FilterQuery q) { + FilterQuery q, + ) { return QueryBuilder.apply(this, (query) { return query.link(q, r'expenseCategory'); }); } QueryBuilder - expenseCategoryIsNull() { + expenseCategoryIsNull() { return QueryBuilder.apply(this, (query) { return query.linkLength(r'expenseCategory', 0, true, 0, true); }); } QueryBuilder account( - FilterQuery q) { + FilterQuery q, + ) { return QueryBuilder.apply(this, (query) { return query.link(q, r'account'); }); } QueryBuilder - accountIsNull() { + accountIsNull() { return QueryBuilder.apply(this, (query) { return query.linkLength(r'account', 0, true, 0, true); }); } QueryBuilder beneficiary( - FilterQuery q) { + FilterQuery q, + ) { return QueryBuilder.apply(this, (query) { return query.link(q, r'beneficiary'); }); } QueryBuilder - beneficiaryIsNull() { + beneficiaryIsNull() { return QueryBuilder.apply(this, (query) { return query.linkLength(r'beneficiary', 0, true, 0, true); }); diff --git a/lib/database/database.dart b/lib/database/database.dart index 8b56f19..b3d967c 100644 --- a/lib/database/database.dart +++ b/lib/database/database.dart @@ -2,6 +2,7 @@ import 'dart:async'; import 'package:isar/isar.dart'; import 'package:get_it/get_it.dart'; +import 'package:more/collection.dart'; import 'package:okane/database/collections/account.dart'; import 'package:okane/database/collections/beneficiary.dart'; import 'package:okane/database/collections/expense_category.dart'; @@ -286,3 +287,43 @@ Future> getTransactionsInTimeframe( .dateBetween(lower, upper) .findAll(); } + +Future deleteAccount(Account account) async { + final db = GetIt.I.get(); + final affectedBudgets = + await db.budgets + .filter() + .account((q) => q.idEqualTo(account.id)) + .findAll(); + final budgetIds = affectedBudgets.map((a) => a.id).toList(); + final budgetItemIds = + affectedBudgets.map((a) => a.items.map((i) => i.id)).flatten().toList(); + return db.writeTxn(() async { + // Remove transactions + await db.transactions + .filter() + .account((q) => q.idEqualTo(account.id)) + .deleteAll(); + await db.beneficiarys + .filter() + .account((q) => q.idEqualTo(account.id)) + .deleteAll(); + + // Remove templates + await db.recurringTransactions + .filter() + .account((q) => q.idEqualTo(account.id)) + .deleteAll(); + await db.transactionTemplates + .filter() + .account((q) => q.idEqualTo(account.id)) + .deleteAll(); + + // Remove all budgets + await db.budgetItems.deleteAll(budgetItemIds); + await db.budgets.deleteAll(budgetIds); + + // Remove account + await db.accounts.delete(account.id); + }); +} diff --git a/lib/main.dart b/lib/main.dart index ca3a557..1ee236a 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -48,7 +48,8 @@ class MyApp extends StatelessWidget { brightness: switch (state.settings.colorScheme) { ColorSchemeSettings.dark => Brightness.dark, ColorSchemeSettings.light => Brightness.light, - ColorSchemeSettings.system => View.of(context).platformDispatcher.platformBrightness, + ColorSchemeSettings.system => + View.of(context).platformDispatcher.platformBrightness, }, pageTransitionsTheme: PageTransitionsTheme( builders: Map.fromIterable( diff --git a/lib/ui/navigation.dart b/lib/ui/navigation.dart index f59a087..c667702 100644 --- a/lib/ui/navigation.dart +++ b/lib/ui/navigation.dart @@ -12,7 +12,14 @@ import 'package:okane/ui/pages/transaction_list.dart'; import 'package:okane/ui/state/core.dart'; import 'package:okane/ui/widgets/account_indicator.dart'; -enum OkanePage { accounts, transactions, beneficiaries, templates, budgets, settings } +enum OkanePage { + accounts, + transactions, + beneficiaries, + templates, + budgets, + settings, +} typedef OkanePageBuilder = Widget Function(bool); diff --git a/lib/ui/pages/account/account.dart b/lib/ui/pages/account/account.dart index 127da94..165d082 100644 --- a/lib/ui/pages/account/account.dart +++ b/lib/ui/pages/account/account.dart @@ -5,12 +5,11 @@ import 'package:okane/database/collections/account.dart'; import 'package:okane/database/collections/beneficiary.dart'; import 'package:okane/database/database.dart'; import 'package:okane/ui/pages/account/breakdown_card.dart'; +import 'package:okane/ui/pages/account/delete_account.dart'; import 'package:okane/ui/pages/account/total_balance_card.dart'; import 'package:okane/ui/pages/account/upcoming_transactions_card.dart'; import 'package:okane/ui/state/core.dart'; import 'package:okane/ui/utils.dart'; -import 'package:okane/ui/widgets/piechart.dart'; -import 'package:okane/ui/widgets/piechart_card.dart'; class AccountListPage extends StatefulWidget { final bool isPage; @@ -26,6 +25,7 @@ class AccountListPageState extends State { @override Widget build(BuildContext context) { + final bloc = GetIt.I.get(); return Stack( children: [ ListView( @@ -38,6 +38,79 @@ class AccountListPageState extends State { ), ), + Padding( + padding: EdgeInsets.symmetric(horizontal: 16, vertical: 8), + child: BlocBuilder( + builder: + (context, state) => Row( + children: [ + OutlinedButton( + onPressed: + state.accounts.isEmpty + ? null + : () { + showDialogOrModal( + context: context, + builder: + (context) => ListView.builder( + shrinkWrap: true, + itemCount: state.accounts.length, + itemBuilder: (context, index) { + final item = + state.accounts[index]; + return ListTile( + title: Text(item.name!), + trailing: IconButton( + icon: Icon(Icons.delete), + color: Colors.red, + onPressed: () async { + await showDialog( + context: context, + barrierDismissible: false, + builder: + (context) => + DeleteAccountPopup( + account: item, + onCancel: () { + Navigator.of( + context, + ).pop(); + Navigator.of( + context, + ).pop(); + }, + afterDelete: () { + Navigator.of( + context, + ).pop(); + Navigator.of( + context, + ).pop(); + }, + ), + ); + }, + ), + onTap: () { + GetIt.I + .get() + .setActiveAccountIndex( + index, + ); + Navigator.of(context).pop(); + }, + ); + }, + ), + ); + }, + child: Text(bloc.activeAccount?.name ?? "None"), + ), + ], + ), + ), + ), + Padding( padding: EdgeInsets.symmetric(horizontal: 16, vertical: 8), child: BlocBuilder( @@ -66,34 +139,26 @@ class AccountListPageState extends State { ), ) : null, - child: InkWell( - onTap: () { - GetIt.I - .get() - .setActiveAccountIndex(index); - }, - borderRadius: BorderRadius.circular(12), - child: Center( - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - Text(state.accounts[index].name!), - FutureBuilder( - future: getTotalBalance( - state.accounts[index], - ), - builder: (context, snapshot) { - if (!snapshot.hasData) { - return Container(); - } - - return Text( - formatCurrency(snapshot.data!), - ); - }, + child: Center( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Text(state.accounts[index].name!), + FutureBuilder( + future: getTotalBalance( + state.accounts[index], ), - ], - ), + builder: (context, snapshot) { + if (!snapshot.hasData) { + return Container(); + } + + return Text( + formatCurrency(snapshot.data!), + ); + }, + ), + ], ), ), ), diff --git a/lib/ui/pages/account/delete_account.dart b/lib/ui/pages/account/delete_account.dart new file mode 100644 index 0000000..cf2c7cd --- /dev/null +++ b/lib/ui/pages/account/delete_account.dart @@ -0,0 +1,66 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:get_it/get_it.dart'; +import 'package:okane/database/collections/account.dart'; +import 'package:okane/ui/state/core.dart'; + +class DeleteAccountPopup extends StatelessWidget { + final Account account; + + final VoidCallback onCancel; + final VoidCallback afterDelete; + + const DeleteAccountPopup({ + super.key, + required this.account, + required this.onCancel, + required this.afterDelete, + }); + + @override + Widget build(BuildContext context) { + return BlocBuilder( + builder: + (context, state) => AlertDialog( + title: Text("Delete Account"), + content: + state.isDeletingAccount + ? Row( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + width: 80, + height: 80, + child: CircularProgressIndicator(), + ), + ], + ) + : Text( + "Are you sure you want to delete the account '${account.name!}'? This will delete all transactions as well.", + ), + actions: [ + TextButton( + onPressed: + state.isDeletingAccount + ? null + : () async { + await GetIt.I.get().deleteAccount(account); + afterDelete(); + }, + child: Text("Delete", style: TextStyle(color: Colors.red)), + ), + TextButton( + onPressed: + state.isDeletingAccount + ? null + : () { + onCancel(); + }, + child: Text("Cancel"), + ), + ], + ), + ); + } +} diff --git a/lib/ui/pages/beneficiary_list.dart b/lib/ui/pages/beneficiary_list.dart index ad99c77..639412c 100644 --- a/lib/ui/pages/beneficiary_list.dart +++ b/lib/ui/pages/beneficiary_list.dart @@ -17,10 +17,7 @@ class BeneficiaryListPage extends StatelessWidget { itemBuilder: (context, index) { final item = state.beneficiaries[index]; return ListTile( - leading: ImageWrapper( - title: item.name, - path: item.imagePath, - ), + leading: ImageWrapper(title: item.name, path: item.imagePath), title: Text(item.name), ); }, diff --git a/lib/ui/pages/settings.dart b/lib/ui/pages/settings.dart index c9e1f55..2531ed4 100644 --- a/lib/ui/pages/settings.dart +++ b/lib/ui/pages/settings.dart @@ -30,7 +30,10 @@ class SettingsPage extends StatelessWidget { ColorSchemeSettings.values .map( (s) => ListTile( - leading: state.settings.colorScheme == s ? Icon(Icons.check) : null, + leading: + state.settings.colorScheme == s + ? Icon(Icons.check) + : null, title: Text(switch (s) { ColorSchemeSettings.dark => "Dark", ColorSchemeSettings.light => "Light", diff --git a/lib/ui/state/core.dart b/lib/ui/state/core.dart index 2ce84e8..1f777ee 100644 --- a/lib/ui/state/core.dart +++ b/lib/ui/state/core.dart @@ -1,5 +1,4 @@ import 'dart:async'; - import 'package:bloc/bloc.dart'; import 'package:freezed_annotation/freezed_annotation.dart'; import 'package:okane/database/collections/account.dart'; @@ -9,7 +8,7 @@ import 'package:okane/database/collections/expense_category.dart'; import 'package:okane/database/collections/recurrent.dart'; import 'package:okane/database/collections/template.dart'; import 'package:okane/database/collections/transaction.dart'; -import 'package:okane/database/database.dart'; +import 'package:okane/database/database.dart' as db; import 'package:okane/ui/navigation.dart'; part 'core.freezed.dart'; @@ -28,6 +27,7 @@ abstract class CoreState with _$CoreState { @Default([]) List expenseCategories, @Default([]) List budgets, @Default(null) Budget? activeBudget, + @Default(false) bool isDeletingAccount, }) = _CoreState; } @@ -44,9 +44,9 @@ class CoreCubit extends Cubit { void setupAccountStream() { _accountsStreamSubscription?.cancel(); - _accountsStreamSubscription = watchAccounts().listen((_) async { + _accountsStreamSubscription = db.watchAccounts().listen((_) async { final resetStreams = state.activeAccountIndex == null; - final accounts = await getAccounts(); + final accounts = await db.getAccounts(); emit( state.copyWith( accounts: accounts, @@ -63,61 +63,83 @@ class CoreCubit extends Cubit { void setupStreams(Account account) { setupAccountStream(); _recurringTransactionStreamSubscription?.cancel(); - _recurringTransactionStreamSubscription = watchRecurringTransactions( - activeAccount!, - ).listen((_) async { - print("RECURRING UPDATE"); - emit( - state.copyWith( - recurringTransactions: await getRecurringTransactions(activeAccount!), - ), - ); - }); + _recurringTransactionStreamSubscription = db + .watchRecurringTransactions(activeAccount!) + .listen((_) async { + print("RECURRING UPDATE"); + emit( + state.copyWith( + recurringTransactions: await db.getRecurringTransactions( + activeAccount!, + ), + ), + ); + }); _transactionTemplatesStreamSubcription?.cancel(); - _transactionTemplatesStreamSubcription = watchTransactionTemplates( - activeAccount!, - ).listen((_) async { - emit( - state.copyWith( - transactionTemplates: await getTransactionTemplates(activeAccount!), - ), - ); - }); + _transactionTemplatesStreamSubcription = db + .watchTransactionTemplates(activeAccount!) + .listen((_) async { + emit( + state.copyWith( + transactionTemplates: await db.getTransactionTemplates( + activeAccount!, + ), + ), + ); + }); _transactionsStreamSubscription?.cancel(); - _transactionsStreamSubscription = watchTransactions(activeAccount!).listen(( + _transactionsStreamSubscription = db + .watchTransactions(activeAccount!) + .listen((_) async { + emit( + state.copyWith( + transactions: await db.getTransactions(activeAccount!), + ), + ); + }); + _beneficiariesStreamSubscription?.cancel(); + _beneficiariesStreamSubscription = db.watchBeneficiaries().listen(( _, ) async { - emit(state.copyWith(transactions: await getTransactions(activeAccount!))); - }); - _beneficiariesStreamSubscription?.cancel(); - _beneficiariesStreamSubscription = watchBeneficiaries().listen((_) async { - emit(state.copyWith(beneficiaries: await getBeneficiaries())); + emit(state.copyWith(beneficiaries: await db.getBeneficiaries())); }); _expenseCategoryStreamSubscription?.cancel(); - _expenseCategoryStreamSubscription = watchExpenseCategory().listen(( + _expenseCategoryStreamSubscription = db.watchExpenseCategory().listen(( _, ) async { - emit(state.copyWith(expenseCategories: await getExpenseCategories())); + emit(state.copyWith(expenseCategories: await db.getExpenseCategories())); }); _budgetsStreamSubscription?.cancel(); - _budgetsStreamSubscription = watchBudgets(activeAccount!).listen((_) async { - emit(state.copyWith(budgets: await getBudgets(activeAccount!))); + _budgetsStreamSubscription = db.watchBudgets(activeAccount!).listen(( + _, + ) async { + emit(state.copyWith(budgets: await db.getBudgets(activeAccount!))); }); } + void cancelStreams() { + _recurringTransactionStreamSubscription?.cancel(); + _accountsStreamSubscription?.cancel(); + _beneficiariesStreamSubscription?.cancel(); + _budgetsStreamSubscription?.cancel(); + _expenseCategoryStreamSubscription?.cancel(); + _transactionsStreamSubscription?.cancel(); + _transactionTemplatesStreamSubcription?.cancel(); + } + Future init() async { - final accounts = await getAccounts(); + final accounts = await db.getAccounts(); final account = accounts.isEmpty ? null : accounts[0]; emit( state.copyWith( accounts: accounts, activeAccountIndex: accounts.isEmpty ? null : 0, - transactions: await getTransactions(account), - beneficiaries: await getBeneficiaries(), - transactionTemplates: await getTransactionTemplates(account), - recurringTransactions: await getRecurringTransactions(account), - expenseCategories: await getExpenseCategories(), - budgets: await getBudgets(account), + transactions: await db.getTransactions(account), + beneficiaries: await db.getBeneficiaries(), + transactionTemplates: await db.getTransactionTemplates(account), + recurringTransactions: await db.getRecurringTransactions(account), + expenseCategories: await db.getExpenseCategories(), + budgets: await db.getBudgets(account), ), ); @@ -138,11 +160,11 @@ class CoreCubit extends Cubit { emit( state.copyWith( activeAccountIndex: index, - transactions: await getTransactions(account), - beneficiaries: await getBeneficiaries(), - transactionTemplates: await getTransactionTemplates(account), - recurringTransactions: await getRecurringTransactions(account), - budgets: await getBudgets(account), + transactions: await db.getTransactions(account), + beneficiaries: await db.getBeneficiaries(), + transactionTemplates: await db.getTransactionTemplates(account), + recurringTransactions: await db.getRecurringTransactions(account), + budgets: await db.getBudgets(account), activeBudget: null, activeTransaction: null, ), @@ -162,6 +184,21 @@ class CoreCubit extends Cubit { emit(state.copyWith(activeBudget: budget)); } + Future deleteAccount(Account account) async { + final l = List.of(state.accounts); + l.removeWhere((a) => a.id == account.id); + final newIndex = l.isEmpty ? null : 0; + emit(state.copyWith(activeAccountIndex: newIndex, isDeletingAccount: true)); + + cancelStreams(); + try { + await db.deleteAccount(account); + } finally { + emit(state.copyWith(isDeletingAccount: false)); + } + await init(); + } + Account? get activeAccount => state.activeAccountIndex == null ? null diff --git a/lib/ui/state/core.freezed.dart b/lib/ui/state/core.freezed.dart index 02f41e5..765897a 100644 --- a/lib/ui/state/core.freezed.dart +++ b/lib/ui/state/core.freezed.dart @@ -12,7 +12,8 @@ part of 'core.dart'; T _$identity(T value) => value; final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models'); + 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models', +); /// @nodoc mixin _$CoreState { @@ -30,6 +31,7 @@ mixin _$CoreState { throw _privateConstructorUsedError; List get budgets => throw _privateConstructorUsedError; Budget? get activeBudget => throw _privateConstructorUsedError; + bool get isDeletingAccount => throw _privateConstructorUsedError; @JsonKey(ignore: true) $CoreStateCopyWith get copyWith => @@ -41,18 +43,20 @@ abstract class $CoreStateCopyWith<$Res> { factory $CoreStateCopyWith(CoreState value, $Res Function(CoreState) then) = _$CoreStateCopyWithImpl<$Res, CoreState>; @useResult - $Res call( - {OkanePage activePage, - int? activeAccountIndex, - Transaction? activeTransaction, - List accounts, - List recurringTransactions, - List transactions, - List transactionTemplates, - List beneficiaries, - List expenseCategories, - List budgets, - Budget? activeBudget}); + $Res call({ + OkanePage activePage, + int? activeAccountIndex, + Transaction? activeTransaction, + List accounts, + List recurringTransactions, + List transactions, + List transactionTemplates, + List beneficiaries, + List expenseCategories, + List budgets, + Budget? activeBudget, + bool isDeletingAccount, + }); } /// @nodoc @@ -79,53 +83,73 @@ class _$CoreStateCopyWithImpl<$Res, $Val extends CoreState> Object? expenseCategories = null, Object? budgets = null, Object? activeBudget = freezed, + Object? isDeletingAccount = null, }) { - return _then(_value.copyWith( - activePage: null == activePage - ? _value.activePage - : activePage // ignore: cast_nullable_to_non_nullable - as OkanePage, - activeAccountIndex: freezed == activeAccountIndex - ? _value.activeAccountIndex - : activeAccountIndex // ignore: cast_nullable_to_non_nullable - as int?, - activeTransaction: freezed == activeTransaction - ? _value.activeTransaction - : activeTransaction // ignore: cast_nullable_to_non_nullable - as Transaction?, - accounts: null == accounts - ? _value.accounts - : accounts // ignore: cast_nullable_to_non_nullable - as List, - recurringTransactions: null == recurringTransactions - ? _value.recurringTransactions - : recurringTransactions // ignore: cast_nullable_to_non_nullable - as List, - transactions: null == transactions - ? _value.transactions - : transactions // ignore: cast_nullable_to_non_nullable - as List, - transactionTemplates: null == transactionTemplates - ? _value.transactionTemplates - : transactionTemplates // ignore: cast_nullable_to_non_nullable - as List, - beneficiaries: null == beneficiaries - ? _value.beneficiaries - : beneficiaries // ignore: cast_nullable_to_non_nullable - as List, - expenseCategories: null == expenseCategories - ? _value.expenseCategories - : expenseCategories // ignore: cast_nullable_to_non_nullable - as List, - budgets: null == budgets - ? _value.budgets - : budgets // ignore: cast_nullable_to_non_nullable - as List, - activeBudget: freezed == activeBudget - ? _value.activeBudget - : activeBudget // ignore: cast_nullable_to_non_nullable - as Budget?, - ) as $Val); + return _then( + _value.copyWith( + activePage: + null == activePage + ? _value.activePage + : activePage // ignore: cast_nullable_to_non_nullable + as OkanePage, + activeAccountIndex: + freezed == activeAccountIndex + ? _value.activeAccountIndex + : activeAccountIndex // ignore: cast_nullable_to_non_nullable + as int?, + activeTransaction: + freezed == activeTransaction + ? _value.activeTransaction + : activeTransaction // ignore: cast_nullable_to_non_nullable + as Transaction?, + accounts: + null == accounts + ? _value.accounts + : accounts // ignore: cast_nullable_to_non_nullable + as List, + recurringTransactions: + null == recurringTransactions + ? _value.recurringTransactions + : recurringTransactions // ignore: cast_nullable_to_non_nullable + as List, + transactions: + null == transactions + ? _value.transactions + : transactions // ignore: cast_nullable_to_non_nullable + as List, + transactionTemplates: + null == transactionTemplates + ? _value.transactionTemplates + : transactionTemplates // ignore: cast_nullable_to_non_nullable + as List, + beneficiaries: + null == beneficiaries + ? _value.beneficiaries + : beneficiaries // ignore: cast_nullable_to_non_nullable + as List, + expenseCategories: + null == expenseCategories + ? _value.expenseCategories + : expenseCategories // ignore: cast_nullable_to_non_nullable + as List, + budgets: + null == budgets + ? _value.budgets + : budgets // ignore: cast_nullable_to_non_nullable + as List, + activeBudget: + freezed == activeBudget + ? _value.activeBudget + : activeBudget // ignore: cast_nullable_to_non_nullable + as Budget?, + isDeletingAccount: + null == isDeletingAccount + ? _value.isDeletingAccount + : isDeletingAccount // ignore: cast_nullable_to_non_nullable + as bool, + ) + as $Val, + ); } } @@ -133,22 +157,25 @@ class _$CoreStateCopyWithImpl<$Res, $Val extends CoreState> abstract class _$$CoreStateImplCopyWith<$Res> implements $CoreStateCopyWith<$Res> { factory _$$CoreStateImplCopyWith( - _$CoreStateImpl value, $Res Function(_$CoreStateImpl) then) = - __$$CoreStateImplCopyWithImpl<$Res>; + _$CoreStateImpl value, + $Res Function(_$CoreStateImpl) then, + ) = __$$CoreStateImplCopyWithImpl<$Res>; @override @useResult - $Res call( - {OkanePage activePage, - int? activeAccountIndex, - Transaction? activeTransaction, - List accounts, - List recurringTransactions, - List transactions, - List transactionTemplates, - List beneficiaries, - List expenseCategories, - List budgets, - Budget? activeBudget}); + $Res call({ + OkanePage activePage, + int? activeAccountIndex, + Transaction? activeTransaction, + List accounts, + List recurringTransactions, + List transactions, + List transactionTemplates, + List beneficiaries, + List expenseCategories, + List budgets, + Budget? activeBudget, + bool isDeletingAccount, + }); } /// @nodoc @@ -156,8 +183,9 @@ class __$$CoreStateImplCopyWithImpl<$Res> extends _$CoreStateCopyWithImpl<$Res, _$CoreStateImpl> implements _$$CoreStateImplCopyWith<$Res> { __$$CoreStateImplCopyWithImpl( - _$CoreStateImpl _value, $Res Function(_$CoreStateImpl) _then) - : super(_value, _then); + _$CoreStateImpl _value, + $Res Function(_$CoreStateImpl) _then, + ) : super(_value, _then); @pragma('vm:prefer-inline') @override @@ -173,78 +201,98 @@ class __$$CoreStateImplCopyWithImpl<$Res> Object? expenseCategories = null, Object? budgets = null, Object? activeBudget = freezed, + Object? isDeletingAccount = null, }) { - return _then(_$CoreStateImpl( - activePage: null == activePage - ? _value.activePage - : activePage // ignore: cast_nullable_to_non_nullable - as OkanePage, - activeAccountIndex: freezed == activeAccountIndex - ? _value.activeAccountIndex - : activeAccountIndex // ignore: cast_nullable_to_non_nullable - as int?, - activeTransaction: freezed == activeTransaction - ? _value.activeTransaction - : activeTransaction // ignore: cast_nullable_to_non_nullable - as Transaction?, - accounts: null == accounts - ? _value._accounts - : accounts // ignore: cast_nullable_to_non_nullable - as List, - recurringTransactions: null == recurringTransactions - ? _value._recurringTransactions - : recurringTransactions // ignore: cast_nullable_to_non_nullable - as List, - transactions: null == transactions - ? _value._transactions - : transactions // ignore: cast_nullable_to_non_nullable - as List, - transactionTemplates: null == transactionTemplates - ? _value._transactionTemplates - : transactionTemplates // ignore: cast_nullable_to_non_nullable - as List, - beneficiaries: null == beneficiaries - ? _value._beneficiaries - : beneficiaries // ignore: cast_nullable_to_non_nullable - as List, - expenseCategories: null == expenseCategories - ? _value._expenseCategories - : expenseCategories // ignore: cast_nullable_to_non_nullable - as List, - budgets: null == budgets - ? _value._budgets - : budgets // ignore: cast_nullable_to_non_nullable - as List, - activeBudget: freezed == activeBudget - ? _value.activeBudget - : activeBudget // ignore: cast_nullable_to_non_nullable - as Budget?, - )); + return _then( + _$CoreStateImpl( + activePage: + null == activePage + ? _value.activePage + : activePage // ignore: cast_nullable_to_non_nullable + as OkanePage, + activeAccountIndex: + freezed == activeAccountIndex + ? _value.activeAccountIndex + : activeAccountIndex // ignore: cast_nullable_to_non_nullable + as int?, + activeTransaction: + freezed == activeTransaction + ? _value.activeTransaction + : activeTransaction // ignore: cast_nullable_to_non_nullable + as Transaction?, + accounts: + null == accounts + ? _value._accounts + : accounts // ignore: cast_nullable_to_non_nullable + as List, + recurringTransactions: + null == recurringTransactions + ? _value._recurringTransactions + : recurringTransactions // ignore: cast_nullable_to_non_nullable + as List, + transactions: + null == transactions + ? _value._transactions + : transactions // ignore: cast_nullable_to_non_nullable + as List, + transactionTemplates: + null == transactionTemplates + ? _value._transactionTemplates + : transactionTemplates // ignore: cast_nullable_to_non_nullable + as List, + beneficiaries: + null == beneficiaries + ? _value._beneficiaries + : beneficiaries // ignore: cast_nullable_to_non_nullable + as List, + expenseCategories: + null == expenseCategories + ? _value._expenseCategories + : expenseCategories // ignore: cast_nullable_to_non_nullable + as List, + budgets: + null == budgets + ? _value._budgets + : budgets // ignore: cast_nullable_to_non_nullable + as List, + activeBudget: + freezed == activeBudget + ? _value.activeBudget + : activeBudget // ignore: cast_nullable_to_non_nullable + as Budget?, + isDeletingAccount: + null == isDeletingAccount + ? _value.isDeletingAccount + : isDeletingAccount // ignore: cast_nullable_to_non_nullable + as bool, + ), + ); } } /// @nodoc class _$CoreStateImpl implements _CoreState { - const _$CoreStateImpl( - {this.activePage = OkanePage.accounts, - this.activeAccountIndex, - this.activeTransaction = null, - final List accounts = const [], - final List recurringTransactions = const [], - final List transactions = const [], - final List transactionTemplates = const [], - final List beneficiaries = const [], - final List expenseCategories = const [], - final List budgets = const [], - this.activeBudget = null}) - : _accounts = accounts, - _recurringTransactions = recurringTransactions, - _transactions = transactions, - _transactionTemplates = transactionTemplates, - _beneficiaries = beneficiaries, - _expenseCategories = expenseCategories, - _budgets = budgets; + const _$CoreStateImpl({ + this.activePage = OkanePage.accounts, + this.activeAccountIndex, + this.activeTransaction = null, + final List accounts = const [], + final List recurringTransactions = const [], + final List transactions = const [], + final List transactionTemplates = const [], + final List beneficiaries = const [], + final List expenseCategories = const [], + final List budgets = const [], + this.activeBudget = null, + this.isDeletingAccount = false, + }) : _accounts = accounts, + _recurringTransactions = recurringTransactions, + _transactions = transactions, + _transactionTemplates = transactionTemplates, + _beneficiaries = beneficiaries, + _expenseCategories = expenseCategories, + _budgets = budgets; @override @JsonKey() @@ -323,10 +371,13 @@ class _$CoreStateImpl implements _CoreState { @override @JsonKey() final Budget? activeBudget; + @override + @JsonKey() + final bool isDeletingAccount; @override String toString() { - return 'CoreState(activePage: $activePage, activeAccountIndex: $activeAccountIndex, activeTransaction: $activeTransaction, accounts: $accounts, recurringTransactions: $recurringTransactions, transactions: $transactions, transactionTemplates: $transactionTemplates, beneficiaries: $beneficiaries, expenseCategories: $expenseCategories, budgets: $budgets, activeBudget: $activeBudget)'; + return 'CoreState(activePage: $activePage, activeAccountIndex: $activeAccountIndex, activeTransaction: $activeTransaction, accounts: $accounts, recurringTransactions: $recurringTransactions, transactions: $transactions, transactionTemplates: $transactionTemplates, beneficiaries: $beneficiaries, expenseCategories: $expenseCategories, budgets: $budgets, activeBudget: $activeBudget, isDeletingAccount: $isDeletingAccount)'; } @override @@ -341,35 +392,49 @@ class _$CoreStateImpl implements _CoreState { (identical(other.activeTransaction, activeTransaction) || other.activeTransaction == activeTransaction) && const DeepCollectionEquality().equals(other._accounts, _accounts) && - const DeepCollectionEquality() - .equals(other._recurringTransactions, _recurringTransactions) && - const DeepCollectionEquality() - .equals(other._transactions, _transactions) && - const DeepCollectionEquality() - .equals(other._transactionTemplates, _transactionTemplates) && - const DeepCollectionEquality() - .equals(other._beneficiaries, _beneficiaries) && - const DeepCollectionEquality() - .equals(other._expenseCategories, _expenseCategories) && + const DeepCollectionEquality().equals( + other._recurringTransactions, + _recurringTransactions, + ) && + const DeepCollectionEquality().equals( + other._transactions, + _transactions, + ) && + const DeepCollectionEquality().equals( + other._transactionTemplates, + _transactionTemplates, + ) && + const DeepCollectionEquality().equals( + other._beneficiaries, + _beneficiaries, + ) && + const DeepCollectionEquality().equals( + other._expenseCategories, + _expenseCategories, + ) && const DeepCollectionEquality().equals(other._budgets, _budgets) && (identical(other.activeBudget, activeBudget) || - other.activeBudget == activeBudget)); + other.activeBudget == activeBudget) && + (identical(other.isDeletingAccount, isDeletingAccount) || + other.isDeletingAccount == isDeletingAccount)); } @override int get hashCode => Object.hash( - runtimeType, - activePage, - activeAccountIndex, - activeTransaction, - const DeepCollectionEquality().hash(_accounts), - const DeepCollectionEquality().hash(_recurringTransactions), - const DeepCollectionEquality().hash(_transactions), - const DeepCollectionEquality().hash(_transactionTemplates), - const DeepCollectionEquality().hash(_beneficiaries), - const DeepCollectionEquality().hash(_expenseCategories), - const DeepCollectionEquality().hash(_budgets), - activeBudget); + runtimeType, + activePage, + activeAccountIndex, + activeTransaction, + const DeepCollectionEquality().hash(_accounts), + const DeepCollectionEquality().hash(_recurringTransactions), + const DeepCollectionEquality().hash(_transactions), + const DeepCollectionEquality().hash(_transactionTemplates), + const DeepCollectionEquality().hash(_beneficiaries), + const DeepCollectionEquality().hash(_expenseCategories), + const DeepCollectionEquality().hash(_budgets), + activeBudget, + isDeletingAccount, + ); @JsonKey(ignore: true) @override @@ -379,18 +444,20 @@ class _$CoreStateImpl implements _CoreState { } abstract class _CoreState implements CoreState { - const factory _CoreState( - {final OkanePage activePage, - final int? activeAccountIndex, - final Transaction? activeTransaction, - final List accounts, - final List recurringTransactions, - final List transactions, - final List transactionTemplates, - final List beneficiaries, - final List expenseCategories, - final List budgets, - final Budget? activeBudget}) = _$CoreStateImpl; + const factory _CoreState({ + final OkanePage activePage, + final int? activeAccountIndex, + final Transaction? activeTransaction, + final List accounts, + final List recurringTransactions, + final List transactions, + final List transactionTemplates, + final List beneficiaries, + final List expenseCategories, + final List budgets, + final Budget? activeBudget, + final bool isDeletingAccount, + }) = _$CoreStateImpl; @override OkanePage get activePage; @@ -415,6 +482,8 @@ abstract class _CoreState implements CoreState { @override Budget? get activeBudget; @override + bool get isDeletingAccount; + @override @JsonKey(ignore: true) _$$CoreStateImplCopyWith<_$CoreStateImpl> get copyWith => throw _privateConstructorUsedError; diff --git a/lib/ui/state/settings.freezed.dart b/lib/ui/state/settings.freezed.dart index 75d47eb..f5cf9a2 100644 --- a/lib/ui/state/settings.freezed.dart +++ b/lib/ui/state/settings.freezed.dart @@ -12,7 +12,8 @@ part of 'settings.dart'; T _$identity(T value) => value; final _privateConstructorUsedError = UnsupportedError( - 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models'); + 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models', +); Settings _$SettingsFromJson(Map json) { return _Settings.fromJson(json); @@ -48,15 +49,17 @@ class _$SettingsCopyWithImpl<$Res, $Val extends Settings> @pragma('vm:prefer-inline') @override - $Res call({ - Object? colorScheme = null, - }) { - return _then(_value.copyWith( - colorScheme: null == colorScheme - ? _value.colorScheme - : colorScheme // ignore: cast_nullable_to_non_nullable - as ColorSchemeSettings, - ) as $Val); + $Res call({Object? colorScheme = null}) { + return _then( + _value.copyWith( + colorScheme: + null == colorScheme + ? _value.colorScheme + : colorScheme // ignore: cast_nullable_to_non_nullable + as ColorSchemeSettings, + ) + as $Val, + ); } } @@ -64,8 +67,9 @@ class _$SettingsCopyWithImpl<$Res, $Val extends Settings> abstract class _$$SettingsImplCopyWith<$Res> implements $SettingsCopyWith<$Res> { factory _$$SettingsImplCopyWith( - _$SettingsImpl value, $Res Function(_$SettingsImpl) then) = - __$$SettingsImplCopyWithImpl<$Res>; + _$SettingsImpl value, + $Res Function(_$SettingsImpl) then, + ) = __$$SettingsImplCopyWithImpl<$Res>; @override @useResult $Res call({ColorSchemeSettings colorScheme}); @@ -76,20 +80,22 @@ class __$$SettingsImplCopyWithImpl<$Res> extends _$SettingsCopyWithImpl<$Res, _$SettingsImpl> implements _$$SettingsImplCopyWith<$Res> { __$$SettingsImplCopyWithImpl( - _$SettingsImpl _value, $Res Function(_$SettingsImpl) _then) - : super(_value, _then); + _$SettingsImpl _value, + $Res Function(_$SettingsImpl) _then, + ) : super(_value, _then); @pragma('vm:prefer-inline') @override - $Res call({ - Object? colorScheme = null, - }) { - return _then(_$SettingsImpl( - colorScheme: null == colorScheme - ? _value.colorScheme - : colorScheme // ignore: cast_nullable_to_non_nullable - as ColorSchemeSettings, - )); + $Res call({Object? colorScheme = null}) { + return _then( + _$SettingsImpl( + colorScheme: + null == colorScheme + ? _value.colorScheme + : colorScheme // ignore: cast_nullable_to_non_nullable + as ColorSchemeSettings, + ), + ); } } @@ -131,9 +137,7 @@ class _$SettingsImpl implements _Settings { @override Map toJson() { - return _$$SettingsImplToJson( - this, - ); + return _$$SettingsImplToJson(this); } } @@ -164,8 +168,9 @@ mixin _$SettingsWrapper { /// @nodoc abstract class $SettingsWrapperCopyWith<$Res> { factory $SettingsWrapperCopyWith( - SettingsWrapper value, $Res Function(SettingsWrapper) then) = - _$SettingsWrapperCopyWithImpl<$Res, SettingsWrapper>; + SettingsWrapper value, + $Res Function(SettingsWrapper) then, + ) = _$SettingsWrapperCopyWithImpl<$Res, SettingsWrapper>; @useResult $Res call({Settings settings}); @@ -184,15 +189,17 @@ class _$SettingsWrapperCopyWithImpl<$Res, $Val extends SettingsWrapper> @pragma('vm:prefer-inline') @override - $Res call({ - Object? settings = null, - }) { - return _then(_value.copyWith( - settings: null == settings - ? _value.settings - : settings // ignore: cast_nullable_to_non_nullable - as Settings, - ) as $Val); + $Res call({Object? settings = null}) { + return _then( + _value.copyWith( + settings: + null == settings + ? _value.settings + : settings // ignore: cast_nullable_to_non_nullable + as Settings, + ) + as $Val, + ); } @override @@ -207,9 +214,10 @@ class _$SettingsWrapperCopyWithImpl<$Res, $Val extends SettingsWrapper> /// @nodoc abstract class _$$SettingsWrapperImplCopyWith<$Res> implements $SettingsWrapperCopyWith<$Res> { - factory _$$SettingsWrapperImplCopyWith(_$SettingsWrapperImpl value, - $Res Function(_$SettingsWrapperImpl) then) = - __$$SettingsWrapperImplCopyWithImpl<$Res>; + factory _$$SettingsWrapperImplCopyWith( + _$SettingsWrapperImpl value, + $Res Function(_$SettingsWrapperImpl) then, + ) = __$$SettingsWrapperImplCopyWithImpl<$Res>; @override @useResult $Res call({Settings settings}); @@ -223,20 +231,22 @@ class __$$SettingsWrapperImplCopyWithImpl<$Res> extends _$SettingsWrapperCopyWithImpl<$Res, _$SettingsWrapperImpl> implements _$$SettingsWrapperImplCopyWith<$Res> { __$$SettingsWrapperImplCopyWithImpl( - _$SettingsWrapperImpl _value, $Res Function(_$SettingsWrapperImpl) _then) - : super(_value, _then); + _$SettingsWrapperImpl _value, + $Res Function(_$SettingsWrapperImpl) _then, + ) : super(_value, _then); @pragma('vm:prefer-inline') @override - $Res call({ - Object? settings = null, - }) { - return _then(_$SettingsWrapperImpl( - settings: null == settings - ? _value.settings - : settings // ignore: cast_nullable_to_non_nullable - as Settings, - )); + $Res call({Object? settings = null}) { + return _then( + _$SettingsWrapperImpl( + settings: + null == settings + ? _value.settings + : settings // ignore: cast_nullable_to_non_nullable + as Settings, + ), + ); } } @@ -271,7 +281,9 @@ class _$SettingsWrapperImpl implements _SettingsWrapper { @pragma('vm:prefer-inline') _$$SettingsWrapperImplCopyWith<_$SettingsWrapperImpl> get copyWith => __$$SettingsWrapperImplCopyWithImpl<_$SettingsWrapperImpl>( - this, _$identity); + this, + _$identity, + ); } abstract class _SettingsWrapper implements SettingsWrapper { diff --git a/lib/ui/state/settings.g.dart b/lib/ui/state/settings.g.dart index 8f960d9..4e07945 100644 --- a/lib/ui/state/settings.g.dart +++ b/lib/ui/state/settings.g.dart @@ -8,8 +8,11 @@ part of 'settings.dart'; _$SettingsImpl _$$SettingsImplFromJson(Map json) => _$SettingsImpl( - colorScheme: $enumDecodeNullable( - _$ColorSchemeSettingsEnumMap, json['colorScheme']) ?? + colorScheme: + $enumDecodeNullable( + _$ColorSchemeSettingsEnumMap, + json['colorScheme'], + ) ?? ColorSchemeSettings.system, ); diff --git a/pubspec.lock b/pubspec.lock index afe0085..9e138c8 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -504,6 +504,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.0.0" + more: + dependency: "direct main" + description: + name: more + sha256: d3908d710f78ee5470d2ae9d7599a11aeb00a17909cc36cbd0f23a0b659ca375 + url: "https://pub.dev" + source: hosted + version: "4.5.0" nested: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index de0da1d..c99da1e 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -25,6 +25,7 @@ dependencies: isar_flutter_libs: ^3.1.0+1 shared_preferences: ^2.5.3 json_annotation: ^4.9.0 + more: 4.5.0 dev_dependencies: flutter_test: