Add settings page

This commit is contained in:
PapaTutuWawa 2025-05-11 20:32:34 +02:00
parent c38e76490a
commit f4a232883f
16 changed files with 2007 additions and 1763 deletions

View File

@ -17,7 +17,11 @@ 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,
@ -106,7 +110,10 @@ extension AccountQueryWhereSort on QueryBuilder<Account, Account, QWhere> {
extension AccountQueryWhere on QueryBuilder<Account, Account, QWhereClause> {
QueryBuilder<Account, Account, QAfterWhereClause> 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,
));
});
}
@ -132,10 +139,8 @@ extension AccountQueryWhere on QueryBuilder<Account, Account, QWhereClause> {
});
}
QueryBuilder<Account, Account, QAfterWhereClause> idGreaterThan(
Id id, {
bool include = false,
}) {
QueryBuilder<Account, Account, QAfterWhereClause> idGreaterThan(Id id,
{bool include = false}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.greaterThan(lower: id, includeLower: include),
@ -143,10 +148,8 @@ extension AccountQueryWhere on QueryBuilder<Account, Account, QWhereClause> {
});
}
QueryBuilder<Account, Account, QAfterWhereClause> idLessThan(
Id id, {
bool include = false,
}) {
QueryBuilder<Account, Account, QAfterWhereClause> idLessThan(Id id,
{bool include = false}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.lessThan(upper: id, includeUpper: include),
@ -161,14 +164,12 @@ extension AccountQueryWhere on QueryBuilder<Account, Account, QWhereClause> {
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.between(
return query.addWhereClause(IdWhereClause.between(
lower: lowerId,
includeLower: includeLower,
upper: upperId,
includeUpper: includeUpper,
),
);
));
});
}
}
@ -177,9 +178,10 @@ extension AccountQueryFilter
on QueryBuilder<Account, Account, QFilterCondition> {
QueryBuilder<Account, Account, 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,
));
});
}
@ -188,13 +190,11 @@ extension AccountQueryFilter
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
@ -203,13 +203,11 @@ extension AccountQueryFilter
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
@ -220,31 +218,29 @@ extension AccountQueryFilter
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'id',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
),
);
));
});
}
QueryBuilder<Account, Account, QAfterFilterCondition> 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<Account, Account, QAfterFilterCondition> nameIsNotNull() {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
const FilterCondition.isNotNull(property: r'name'),
);
return query.addFilterCondition(const FilterCondition.isNotNull(
property: r'name',
));
});
}
@ -253,13 +249,11 @@ extension AccountQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.equalTo(
return query.addFilterCondition(FilterCondition.equalTo(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -269,14 +263,12 @@ extension AccountQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -286,14 +278,12 @@ extension AccountQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -305,16 +295,14 @@ extension AccountQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'name',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -323,13 +311,11 @@ extension AccountQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.startsWith(
return query.addFilterCondition(FilterCondition.startsWith(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -338,59 +324,53 @@ extension AccountQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.endsWith(
return query.addFilterCondition(FilterCondition.endsWith(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Account, Account, QAfterFilterCondition> nameContains(
String value, {
bool caseSensitive = true,
}) {
String value,
{bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.contains(
return query.addFilterCondition(FilterCondition.contains(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Account, Account, QAfterFilterCondition> nameMatches(
String pattern, {
bool caseSensitive = true,
}) {
String pattern,
{bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.matches(
return query.addFilterCondition(FilterCondition.matches(
property: r'name',
wildcard: pattern,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Account, Account, QAfterFilterCondition> 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<Account, Account, QAfterFilterCondition> nameIsNotEmpty() {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(property: r'name', value: ''),
);
return query.addFilterCondition(FilterCondition.greaterThan(
property: r'name',
value: '',
));
});
}
}
@ -444,9 +424,8 @@ extension AccountQuerySortThenBy
extension AccountQueryWhereDistinct
on QueryBuilder<Account, Account, QDistinct> {
QueryBuilder<Account, Account, QDistinct> distinctByName({
bool caseSensitive = true,
}) {
QueryBuilder<Account, Account, QDistinct> distinctByName(
{bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addDistinctBy(r'name', caseSensitive: caseSensitive);
});

View File

@ -22,13 +22,17 @@ 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,
@ -42,7 +46,7 @@ const BeneficiarySchema = CollectionSchema(
name: r'account',
target: r'Account',
single: true,
),
)
},
embeddedSchemas: {},
getId: _beneficiaryGetId,
@ -107,14 +111,16 @@ P _beneficiaryDeserializeProp<P>(
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,
@ -129,10 +135,7 @@ List<IsarLinkBase<dynamic>> _beneficiaryGetLinks(Beneficiary object) {
}
void _beneficiaryAttach(
IsarCollection<dynamic> col,
Id id,
Beneficiary object,
) {
IsarCollection<dynamic> col, Id id, Beneficiary object) {
object.id = id;
object.account.attach(col, col.isar.collection<Account>(), r'account', id);
}
@ -150,13 +153,15 @@ extension BeneficiaryQueryWhere
on QueryBuilder<Beneficiary, Beneficiary, QWhereClause> {
QueryBuilder<Beneficiary, Beneficiary, QAfterWhereClause> 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<Beneficiary, Beneficiary, QAfterWhereClause> idNotEqualTo(
Id id,
) {
Id id) {
return QueryBuilder.apply(this, (query) {
if (query.whereSort == Sort.asc) {
return query
@ -178,10 +183,8 @@ extension BeneficiaryQueryWhere
});
}
QueryBuilder<Beneficiary, Beneficiary, QAfterWhereClause> idGreaterThan(
Id id, {
bool include = false,
}) {
QueryBuilder<Beneficiary, Beneficiary, QAfterWhereClause> idGreaterThan(Id id,
{bool include = false}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.greaterThan(lower: id, includeLower: include),
@ -189,10 +192,8 @@ extension BeneficiaryQueryWhere
});
}
QueryBuilder<Beneficiary, Beneficiary, QAfterWhereClause> idLessThan(
Id id, {
bool include = false,
}) {
QueryBuilder<Beneficiary, Beneficiary, QAfterWhereClause> idLessThan(Id id,
{bool include = false}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.lessThan(upper: id, includeUpper: include),
@ -207,14 +208,12 @@ extension BeneficiaryQueryWhere
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.between(
return query.addWhereClause(IdWhereClause.between(
lower: lowerId,
includeLower: includeLower,
upper: upperId,
includeUpper: includeUpper,
),
);
));
});
}
}
@ -222,12 +221,12 @@ extension BeneficiaryQueryWhere
extension BeneficiaryQueryFilter
on QueryBuilder<Beneficiary, Beneficiary, QFilterCondition> {
QueryBuilder<Beneficiary, Beneficiary, QAfterFilterCondition> 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,
));
});
}
@ -236,13 +235,11 @@ extension BeneficiaryQueryFilter
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
@ -251,13 +248,11 @@ extension BeneficiaryQueryFilter
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
@ -268,46 +263,45 @@ extension BeneficiaryQueryFilter
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'id',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
),
);
));
});
}
QueryBuilder<Beneficiary, Beneficiary, QAfterFilterCondition>
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<Beneficiary, Beneficiary, QAfterFilterCondition>
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<Beneficiary, Beneficiary, QAfterFilterCondition>
imagePathEqualTo(String? value, {bool caseSensitive = true}) {
imagePathEqualTo(
String? value, {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.equalTo(
return query.addFilterCondition(FilterCondition.equalTo(
property: r'imagePath',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -318,14 +312,12 @@ extension BeneficiaryQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'imagePath',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -336,14 +328,12 @@ extension BeneficiaryQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'imagePath',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -356,86 +346,84 @@ extension BeneficiaryQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'imagePath',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Beneficiary, Beneficiary, QAfterFilterCondition>
imagePathStartsWith(String value, {bool caseSensitive = true}) {
imagePathStartsWith(
String value, {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.startsWith(
return query.addFilterCondition(FilterCondition.startsWith(
property: r'imagePath',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Beneficiary, Beneficiary, QAfterFilterCondition>
imagePathEndsWith(String value, {bool caseSensitive = true}) {
imagePathEndsWith(
String value, {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.endsWith(
return query.addFilterCondition(FilterCondition.endsWith(
property: r'imagePath',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Beneficiary, Beneficiary, QAfterFilterCondition>
imagePathContains(String value, {bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.contains(
return query.addFilterCondition(FilterCondition.contains(
property: r'imagePath',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Beneficiary, Beneficiary, QAfterFilterCondition>
imagePathMatches(String pattern, {bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.matches(
return query.addFilterCondition(FilterCondition.matches(
property: r'imagePath',
wildcard: pattern,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Beneficiary, Beneficiary, QAfterFilterCondition>
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<Beneficiary, Beneficiary, QAfterFilterCondition>
imagePathIsNotEmpty() {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(property: r'imagePath', value: ''),
);
return query.addFilterCondition(FilterCondition.greaterThan(
property: r'imagePath',
value: '',
));
});
}
@ -444,13 +432,11 @@ extension BeneficiaryQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.equalTo(
return query.addFilterCondition(FilterCondition.equalTo(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -460,14 +446,12 @@ extension BeneficiaryQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -477,14 +461,12 @@ extension BeneficiaryQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -496,16 +478,14 @@ extension BeneficiaryQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'name',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -514,13 +494,11 @@ extension BeneficiaryQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.startsWith(
return query.addFilterCondition(FilterCondition.startsWith(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -529,70 +507,64 @@ extension BeneficiaryQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.endsWith(
return query.addFilterCondition(FilterCondition.endsWith(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Beneficiary, Beneficiary, QAfterFilterCondition> nameContains(
String value, {
bool caseSensitive = true,
}) {
String value,
{bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.contains(
return query.addFilterCondition(FilterCondition.contains(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Beneficiary, Beneficiary, QAfterFilterCondition> nameMatches(
String pattern, {
bool caseSensitive = true,
}) {
String pattern,
{bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.matches(
return query.addFilterCondition(FilterCondition.matches(
property: r'name',
wildcard: pattern,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Beneficiary, Beneficiary, QAfterFilterCondition> 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<Beneficiary, Beneficiary, QAfterFilterCondition>
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<Beneficiary, Beneficiary, QAfterFilterCondition> 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,
));
});
}
@ -601,13 +573,11 @@ extension BeneficiaryQueryFilter
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'type',
value: value,
),
);
));
});
}
@ -616,13 +586,11 @@ extension BeneficiaryQueryFilter
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'type',
value: value,
),
);
));
});
}
@ -633,15 +601,13 @@ extension BeneficiaryQueryFilter
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'type',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
),
);
));
});
}
}
@ -652,8 +618,7 @@ extension BeneficiaryQueryObject
extension BeneficiaryQueryLinks
on QueryBuilder<Beneficiary, Beneficiary, QFilterCondition> {
QueryBuilder<Beneficiary, Beneficiary, QAfterFilterCondition> account(
FilterQuery<Account> q,
) {
FilterQuery<Account> q) {
return QueryBuilder.apply(this, (query) {
return query.link(q, r'account');
});
@ -759,17 +724,15 @@ extension BeneficiaryQuerySortThenBy
extension BeneficiaryQueryWhereDistinct
on QueryBuilder<Beneficiary, Beneficiary, QDistinct> {
QueryBuilder<Beneficiary, Beneficiary, QDistinct> distinctByImagePath({
bool caseSensitive = true,
}) {
QueryBuilder<Beneficiary, Beneficiary, QDistinct> distinctByImagePath(
{bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addDistinctBy(r'imagePath', caseSensitive: caseSensitive);
});
}
QueryBuilder<Beneficiary, Beneficiary, QDistinct> distinctByName({
bool caseSensitive = true,
}) {
QueryBuilder<Beneficiary, Beneficiary, QDistinct> distinctByName(
{bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addDistinctBy(r'name', caseSensitive: caseSensitive);
});

View File

@ -17,7 +17,11 @@ 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,
@ -31,7 +35,7 @@ const BudgetItemSchema = CollectionSchema(
name: r'expenseCategory',
target: r'ExpenseCategory',
single: true,
),
)
},
embeddedSchemas: {},
getId: _budgetItemGetId,
@ -95,11 +99,7 @@ List<IsarLinkBase<dynamic>> _budgetItemGetLinks(BudgetItem object) {
void _budgetItemAttach(IsarCollection<dynamic> col, Id id, BudgetItem object) {
object.id = id;
object.expenseCategory.attach(
col,
col.isar.collection<ExpenseCategory>(),
r'expenseCategory',
id,
);
col, col.isar.collection<ExpenseCategory>(), r'expenseCategory', id);
}
extension BudgetItemQueryWhereSort
@ -115,7 +115,10 @@ extension BudgetItemQueryWhere
on QueryBuilder<BudgetItem, BudgetItem, QWhereClause> {
QueryBuilder<BudgetItem, BudgetItem, QAfterWhereClause> 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,
));
});
}
@ -141,10 +144,8 @@ extension BudgetItemQueryWhere
});
}
QueryBuilder<BudgetItem, BudgetItem, QAfterWhereClause> idGreaterThan(
Id id, {
bool include = false,
}) {
QueryBuilder<BudgetItem, BudgetItem, QAfterWhereClause> idGreaterThan(Id id,
{bool include = false}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.greaterThan(lower: id, includeLower: include),
@ -152,10 +153,8 @@ extension BudgetItemQueryWhere
});
}
QueryBuilder<BudgetItem, BudgetItem, QAfterWhereClause> idLessThan(
Id id, {
bool include = false,
}) {
QueryBuilder<BudgetItem, BudgetItem, QAfterWhereClause> idLessThan(Id id,
{bool include = false}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.lessThan(upper: id, includeUpper: include),
@ -170,14 +169,12 @@ extension BudgetItemQueryWhere
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.between(
return query.addWhereClause(IdWhereClause.between(
lower: lowerId,
includeLower: includeLower,
upper: upperId,
includeUpper: includeUpper,
),
);
));
});
}
}
@ -189,13 +186,11 @@ extension BudgetItemQueryFilter
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.equalTo(
return query.addFilterCondition(FilterCondition.equalTo(
property: r'amount',
value: value,
epsilon: epsilon,
),
);
));
});
}
@ -205,14 +200,12 @@ extension BudgetItemQueryFilter
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'amount',
value: value,
epsilon: epsilon,
),
);
));
});
}
@ -222,14 +215,12 @@ extension BudgetItemQueryFilter
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'amount',
value: value,
epsilon: epsilon,
),
);
));
});
}
@ -241,26 +232,24 @@ extension BudgetItemQueryFilter
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'amount',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
epsilon: epsilon,
),
);
));
});
}
QueryBuilder<BudgetItem, BudgetItem, QAfterFilterCondition> 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,
));
});
}
@ -269,13 +258,11 @@ extension BudgetItemQueryFilter
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
@ -284,13 +271,11 @@ extension BudgetItemQueryFilter
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
@ -301,15 +286,13 @@ extension BudgetItemQueryFilter
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'id',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
),
);
));
});
}
}
@ -320,8 +303,7 @@ extension BudgetItemQueryObject
extension BudgetItemQueryLinks
on QueryBuilder<BudgetItem, BudgetItem, QFilterCondition> {
QueryBuilder<BudgetItem, BudgetItem, QAfterFilterCondition> expenseCategory(
FilterQuery<ExpenseCategory> q,
) {
FilterQuery<ExpenseCategory> q) {
return QueryBuilder.apply(this, (query) {
return query.link(q, r'expenseCategory');
});
@ -417,14 +399,22 @@ 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,
@ -444,7 +434,7 @@ const BudgetSchema = CollectionSchema(
name: r'items',
target: r'BudgetItem',
single: false,
),
)
},
embeddedSchemas: {},
getId: _budgetGetId,
@ -507,15 +497,18 @@ P _budgetDeserializeProp<P>(
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;
@ -542,7 +535,10 @@ extension BudgetQueryWhereSort on QueryBuilder<Budget, Budget, QWhere> {
extension BudgetQueryWhere on QueryBuilder<Budget, Budget, QWhereClause> {
QueryBuilder<Budget, Budget, QAfterWhereClause> 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,
));
});
}
@ -568,10 +564,8 @@ extension BudgetQueryWhere on QueryBuilder<Budget, Budget, QWhereClause> {
});
}
QueryBuilder<Budget, Budget, QAfterWhereClause> idGreaterThan(
Id id, {
bool include = false,
}) {
QueryBuilder<Budget, Budget, QAfterWhereClause> idGreaterThan(Id id,
{bool include = false}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.greaterThan(lower: id, includeLower: include),
@ -579,10 +573,8 @@ extension BudgetQueryWhere on QueryBuilder<Budget, Budget, QWhereClause> {
});
}
QueryBuilder<Budget, Budget, QAfterWhereClause> idLessThan(
Id id, {
bool include = false,
}) {
QueryBuilder<Budget, Budget, QAfterWhereClause> idLessThan(Id id,
{bool include = false}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.lessThan(upper: id, includeUpper: include),
@ -597,14 +589,12 @@ extension BudgetQueryWhere on QueryBuilder<Budget, Budget, QWhereClause> {
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.between(
return query.addWhereClause(IdWhereClause.between(
lower: lowerId,
includeLower: includeLower,
upper: upperId,
includeUpper: includeUpper,
),
);
));
});
}
}
@ -612,9 +602,10 @@ extension BudgetQueryWhere on QueryBuilder<Budget, Budget, QWhereClause> {
extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
QueryBuilder<Budget, Budget, 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,
));
});
}
@ -623,13 +614,11 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
@ -638,13 +627,11 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
@ -655,27 +642,23 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'id',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
),
);
));
});
}
QueryBuilder<Budget, Budget, QAfterFilterCondition>
includeOtherSpendingsEqualTo(bool value) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.equalTo(
return query.addFilterCondition(FilterCondition.equalTo(
property: r'includeOtherSpendings',
value: value,
),
);
));
});
}
@ -684,13 +667,11 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.equalTo(
return query.addFilterCondition(FilterCondition.equalTo(
property: r'income',
value: value,
epsilon: epsilon,
),
);
));
});
}
@ -700,14 +681,12 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'income',
value: value,
epsilon: epsilon,
),
);
));
});
}
@ -717,14 +696,12 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'income',
value: value,
epsilon: epsilon,
),
);
));
});
}
@ -736,16 +713,14 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'income',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
epsilon: epsilon,
),
);
));
});
}
@ -754,13 +729,11 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.equalTo(
return query.addFilterCondition(FilterCondition.equalTo(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -770,14 +743,12 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -787,14 +758,12 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -806,16 +775,14 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'name',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -824,13 +791,11 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.startsWith(
return query.addFilterCondition(FilterCondition.startsWith(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -839,69 +804,62 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.endsWith(
return query.addFilterCondition(FilterCondition.endsWith(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Budget, Budget, QAfterFilterCondition> nameContains(
String value, {
bool caseSensitive = true,
}) {
QueryBuilder<Budget, Budget, QAfterFilterCondition> nameContains(String value,
{bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.contains(
return query.addFilterCondition(FilterCondition.contains(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Budget, Budget, QAfterFilterCondition> nameMatches(
String pattern, {
bool caseSensitive = true,
}) {
String pattern,
{bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.matches(
return query.addFilterCondition(FilterCondition.matches(
property: r'name',
wildcard: pattern,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Budget, Budget, QAfterFilterCondition> 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<Budget, Budget, QAfterFilterCondition> 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<Budget, Budget, QAfterFilterCondition> 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,
));
});
}
@ -910,13 +868,11 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'period',
value: value,
),
);
));
});
}
@ -925,13 +881,11 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'period',
value: value,
),
);
));
});
}
@ -942,15 +896,13 @@ extension BudgetQueryFilter on QueryBuilder<Budget, Budget, QFilterCondition> {
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'period',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
),
);
));
});
}
}
@ -959,8 +911,7 @@ extension BudgetQueryObject on QueryBuilder<Budget, Budget, QFilterCondition> {}
extension BudgetQueryLinks on QueryBuilder<Budget, Budget, QFilterCondition> {
QueryBuilder<Budget, Budget, QAfterFilterCondition> account(
FilterQuery<Account> q,
) {
FilterQuery<Account> q) {
return QueryBuilder.apply(this, (query) {
return query.link(q, r'account');
});
@ -973,16 +924,14 @@ extension BudgetQueryLinks on QueryBuilder<Budget, Budget, QFilterCondition> {
}
QueryBuilder<Budget, Budget, QAfterFilterCondition> items(
FilterQuery<BudgetItem> q,
) {
FilterQuery<BudgetItem> q) {
return QueryBuilder.apply(this, (query) {
return query.link(q, r'items');
});
}
QueryBuilder<Budget, Budget, QAfterFilterCondition> itemsLengthEqualTo(
int length,
) {
int length) {
return QueryBuilder.apply(this, (query) {
return query.linkLength(r'items', length, true, length, true);
});
@ -1026,12 +975,7 @@ extension BudgetQueryLinks on QueryBuilder<Budget, Budget, QFilterCondition> {
}) {
return QueryBuilder.apply(this, (query) {
return query.linkLength(
r'items',
lower,
includeLower,
upper,
includeUpper,
);
r'items', lower, includeLower, upper, includeUpper);
});
}
}
@ -1161,9 +1105,8 @@ extension BudgetQueryWhereDistinct on QueryBuilder<Budget, Budget, QDistinct> {
});
}
QueryBuilder<Budget, Budget, QDistinct> distinctByName({
bool caseSensitive = true,
}) {
QueryBuilder<Budget, Budget, QDistinct> distinctByName(
{bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addDistinctBy(r'name', caseSensitive: caseSensitive);
});

View File

@ -17,7 +17,11 @@ 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,
@ -87,10 +91,7 @@ List<IsarLinkBase<dynamic>> _expenseCategoryGetLinks(ExpenseCategory object) {
}
void _expenseCategoryAttach(
IsarCollection<dynamic> col,
Id id,
ExpenseCategory object,
) {
IsarCollection<dynamic> col, Id id, ExpenseCategory object) {
object.id = id;
}
@ -106,10 +107,12 @@ extension ExpenseCategoryQueryWhereSort
extension ExpenseCategoryQueryWhere
on QueryBuilder<ExpenseCategory, ExpenseCategory, QWhereClause> {
QueryBuilder<ExpenseCategory, ExpenseCategory, QAfterWhereClause> 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,
));
});
}
@ -146,9 +149,8 @@ extension ExpenseCategoryQueryWhere
}
QueryBuilder<ExpenseCategory, ExpenseCategory, QAfterWhereClause> 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),
@ -163,14 +165,12 @@ extension ExpenseCategoryQueryWhere
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.between(
return query.addWhereClause(IdWhereClause.between(
lower: lowerId,
includeLower: includeLower,
upper: upperId,
includeUpper: includeUpper,
),
);
));
});
}
}
@ -180,35 +180,38 @@ extension ExpenseCategoryQueryFilter
QueryBuilder<ExpenseCategory, ExpenseCategory, 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<ExpenseCategory, ExpenseCategory, QAfterFilterCondition>
idGreaterThan(Id value, {bool include = false}) {
idGreaterThan(
Id value, {
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
QueryBuilder<ExpenseCategory, ExpenseCategory, QAfterFilterCondition>
idLessThan(Id value, {bool include = false}) {
idLessThan(
Id value, {
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
@ -220,28 +223,27 @@ extension ExpenseCategoryQueryFilter
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'id',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
),
);
));
});
}
QueryBuilder<ExpenseCategory, ExpenseCategory, QAfterFilterCondition>
nameEqualTo(String value, {bool caseSensitive = true}) {
nameEqualTo(
String value, {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.equalTo(
return query.addFilterCondition(FilterCondition.equalTo(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -252,14 +254,12 @@ extension ExpenseCategoryQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -270,14 +270,12 @@ extension ExpenseCategoryQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -290,86 +288,84 @@ extension ExpenseCategoryQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'name',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<ExpenseCategory, ExpenseCategory, QAfterFilterCondition>
nameStartsWith(String value, {bool caseSensitive = true}) {
nameStartsWith(
String value, {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.startsWith(
return query.addFilterCondition(FilterCondition.startsWith(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<ExpenseCategory, ExpenseCategory, QAfterFilterCondition>
nameEndsWith(String value, {bool caseSensitive = true}) {
nameEndsWith(
String value, {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.endsWith(
return query.addFilterCondition(FilterCondition.endsWith(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<ExpenseCategory, ExpenseCategory, QAfterFilterCondition>
nameContains(String value, {bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.contains(
return query.addFilterCondition(FilterCondition.contains(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<ExpenseCategory, ExpenseCategory, QAfterFilterCondition>
nameMatches(String pattern, {bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.matches(
return query.addFilterCondition(FilterCondition.matches(
property: r'name',
wildcard: pattern,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<ExpenseCategory, ExpenseCategory, QAfterFilterCondition>
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<ExpenseCategory, ExpenseCategory, QAfterFilterCondition>
nameIsNotEmpty() {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(property: r'name', value: ''),
);
return query.addFilterCondition(FilterCondition.greaterThan(
property: r'name',
value: '',
));
});
}
}
@ -426,9 +422,8 @@ extension ExpenseCategoryQuerySortThenBy
extension ExpenseCategoryQueryWhereDistinct
on QueryBuilder<ExpenseCategory, ExpenseCategory, QDistinct> {
QueryBuilder<ExpenseCategory, ExpenseCategory, QDistinct> distinctByName({
bool caseSensitive = true,
}) {
QueryBuilder<ExpenseCategory, ExpenseCategory, QDistinct> distinctByName(
{bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addDistinctBy(r'name', caseSensitive: caseSensitive);
});

View File

@ -18,12 +18,16 @@ 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,
@ -43,7 +47,7 @@ const RecurringTransactionSchema = CollectionSchema(
name: r'account',
target: r'Account',
single: true,
),
)
},
embeddedSchemas: {},
getId: _recurringTransactionGetId,
@ -105,23 +109,15 @@ Id _recurringTransactionGetId(RecurringTransaction object) {
}
List<IsarLinkBase<dynamic>> _recurringTransactionGetLinks(
RecurringTransaction object,
) {
RecurringTransaction object) {
return [object.template, object.account];
}
void _recurringTransactionAttach(
IsarCollection<dynamic> col,
Id id,
RecurringTransaction object,
) {
IsarCollection<dynamic> col, Id id, RecurringTransaction object) {
object.id = id;
object.template.attach(
col,
col.isar.collection<TransactionTemplate>(),
r'template',
id,
);
object.template
.attach(col, col.isar.collection<TransactionTemplate>(), r'template', id);
object.account.attach(col, col.isar.collection<Account>(), r'account', id);
}
@ -140,7 +136,10 @@ extension RecurringTransactionQueryWhere
QueryBuilder<RecurringTransaction, RecurringTransaction, QAfterWhereClause>
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,
));
});
}
@ -193,319 +192,233 @@ extension RecurringTransactionQueryWhere
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.between(
return query.addWhereClause(IdWhereClause.between(
lower: lowerId,
includeLower: includeLower,
upper: upperId,
includeUpper: includeUpper,
),
);
));
});
}
}
extension RecurringTransactionQueryFilter
on
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QFilterCondition
> {
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'days',
value: value,
),
);
));
});
}
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'days',
value: value,
),
);
));
});
}
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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(
return query.addFilterCondition(FilterCondition.between(
property: r'days',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
),
);
));
});
}
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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(
return query.addFilterCondition(FilterCondition.between(
property: r'id',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
),
);
));
});
}
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'lastExecution',
value: value,
),
);
));
});
}
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'lastExecution',
value: value,
),
);
));
});
}
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
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(
return query.addFilterCondition(FilterCondition.between(
property: r'lastExecution',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
),
);
));
});
}
}
extension RecurringTransactionQueryObject
on
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QFilterCondition
> {}
extension RecurringTransactionQueryObject on QueryBuilder<RecurringTransaction,
RecurringTransaction, QFilterCondition> {}
extension RecurringTransactionQueryLinks
on
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QFilterCondition
> {
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
template(FilterQuery<TransactionTemplate> q) {
extension RecurringTransactionQueryLinks on QueryBuilder<RecurringTransaction,
RecurringTransaction, QFilterCondition> {
QueryBuilder<RecurringTransaction, RecurringTransaction,
QAfterFilterCondition> template(FilterQuery<TransactionTemplate> q) {
return QueryBuilder.apply(this, (query) {
return query.link(q, r'template');
});
}
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
templateIsNull() {
QueryBuilder<RecurringTransaction, RecurringTransaction,
QAfterFilterCondition> templateIsNull() {
return QueryBuilder.apply(this, (query) {
return query.linkLength(r'template', 0, true, 0, true);
});
}
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
account(FilterQuery<Account> q) {
QueryBuilder<RecurringTransaction, RecurringTransaction,
QAfterFilterCondition> account(FilterQuery<Account> q) {
return QueryBuilder.apply(this, (query) {
return query.link(q, r'account');
});
}
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QAfterFilterCondition
>
accountIsNull() {
QueryBuilder<RecurringTransaction, RecurringTransaction,
QAfterFilterCondition> accountIsNull() {
return QueryBuilder.apply(this, (query) {
return query.linkLength(r'account', 0, true, 0, true);
});
@ -605,13 +518,8 @@ extension RecurringTransactionQueryWhereDistinct
}
}
extension RecurringTransactionQueryProperty
on
QueryBuilder<
RecurringTransaction,
RecurringTransaction,
QQueryProperty
> {
extension RecurringTransactionQueryProperty on QueryBuilder<
RecurringTransaction, RecurringTransaction, QQueryProperty> {
QueryBuilder<RecurringTransaction, int, QQueryOperations> idProperty() {
return QueryBuilder.apply(this, (query) {
return query.addPropertyName(r'id');

View File

@ -18,13 +18,21 @@ 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,
@ -50,7 +58,7 @@ const TransactionTemplateSchema = CollectionSchema(
name: r'account',
target: r'Account',
single: true,
),
)
},
embeddedSchemas: {},
getId: _transactionTemplateGetId,
@ -117,29 +125,17 @@ Id _transactionTemplateGetId(TransactionTemplate object) {
}
List<IsarLinkBase<dynamic>> _transactionTemplateGetLinks(
TransactionTemplate object,
) {
TransactionTemplate object) {
return [object.expenseCategory, object.beneficiary, object.account];
}
void _transactionTemplateAttach(
IsarCollection<dynamic> col,
Id id,
TransactionTemplate object,
) {
IsarCollection<dynamic> col, Id id, TransactionTemplate object) {
object.id = id;
object.expenseCategory.attach(
col,
col.isar.collection<ExpenseCategory>(),
r'expenseCategory',
id,
);
object.beneficiary.attach(
col,
col.isar.collection<Beneficiary>(),
r'beneficiary',
id,
);
col, col.isar.collection<ExpenseCategory>(), r'expenseCategory', id);
object.beneficiary
.attach(col, col.isar.collection<Beneficiary>(), r'beneficiary', id);
object.account.attach(col, col.isar.collection<Account>(), r'account', id);
}
@ -157,7 +153,10 @@ extension TransactionTemplateQueryWhere
QueryBuilder<TransactionTemplate, TransactionTemplate, QAfterWhereClause>
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,
));
});
}
@ -210,35 +209,29 @@ extension TransactionTemplateQueryWhere
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.between(
return query.addWhereClause(IdWhereClause.between(
lower: lowerId,
includeLower: includeLower,
upper: upperId,
includeUpper: includeUpper,
),
);
));
});
}
}
extension TransactionTemplateQueryFilter
on
QueryBuilder<
TransactionTemplate,
TransactionTemplate,
QFilterCondition
> {
extension TransactionTemplateQueryFilter on QueryBuilder<TransactionTemplate,
TransactionTemplate, QFilterCondition> {
QueryBuilder<TransactionTemplate, TransactionTemplate, QAfterFilterCondition>
amountEqualTo(double value, {double epsilon = Query.epsilon}) {
amountEqualTo(
double value, {
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.equalTo(
return query.addFilterCondition(FilterCondition.equalTo(
property: r'amount',
value: value,
epsilon: epsilon,
),
);
));
});
}
@ -249,14 +242,12 @@ extension TransactionTemplateQueryFilter
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'amount',
value: value,
epsilon: epsilon,
),
);
));
});
}
@ -267,14 +258,12 @@ extension TransactionTemplateQueryFilter
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'amount',
value: value,
epsilon: epsilon,
),
);
));
});
}
@ -287,51 +276,52 @@ extension TransactionTemplateQueryFilter
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'amount',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
epsilon: epsilon,
),
);
));
});
}
QueryBuilder<TransactionTemplate, TransactionTemplate, 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<TransactionTemplate, TransactionTemplate, QAfterFilterCondition>
idGreaterThan(Id value, {bool include = false}) {
idGreaterThan(
Id value, {
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
QueryBuilder<TransactionTemplate, TransactionTemplate, QAfterFilterCondition>
idLessThan(Id value, {bool include = false}) {
idLessThan(
Id value, {
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
@ -343,28 +333,27 @@ extension TransactionTemplateQueryFilter
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'id',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
),
);
));
});
}
QueryBuilder<TransactionTemplate, TransactionTemplate, QAfterFilterCondition>
nameEqualTo(String value, {bool caseSensitive = true}) {
nameEqualTo(
String value, {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.equalTo(
return query.addFilterCondition(FilterCondition.equalTo(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -375,14 +364,12 @@ extension TransactionTemplateQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -393,14 +380,12 @@ extension TransactionTemplateQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -413,114 +398,103 @@ extension TransactionTemplateQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'name',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<TransactionTemplate, TransactionTemplate, QAfterFilterCondition>
nameStartsWith(String value, {bool caseSensitive = true}) {
nameStartsWith(
String value, {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.startsWith(
return query.addFilterCondition(FilterCondition.startsWith(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<TransactionTemplate, TransactionTemplate, QAfterFilterCondition>
nameEndsWith(String value, {bool caseSensitive = true}) {
nameEndsWith(
String value, {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.endsWith(
return query.addFilterCondition(FilterCondition.endsWith(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<TransactionTemplate, TransactionTemplate, QAfterFilterCondition>
nameContains(String value, {bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.contains(
return query.addFilterCondition(FilterCondition.contains(
property: r'name',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<TransactionTemplate, TransactionTemplate, QAfterFilterCondition>
nameMatches(String pattern, {bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.matches(
return query.addFilterCondition(FilterCondition.matches(
property: r'name',
wildcard: pattern,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<TransactionTemplate, TransactionTemplate, QAfterFilterCondition>
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<TransactionTemplate, TransactionTemplate, QAfterFilterCondition>
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<TransactionTemplate, TransactionTemplate, QAfterFilterCondition>
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<
TransactionTemplate,
TransactionTemplate,
QFilterCondition
> {}
extension TransactionTemplateQueryObject on QueryBuilder<TransactionTemplate,
TransactionTemplate, QFilterCondition> {}
extension TransactionTemplateQueryLinks
on
QueryBuilder<
TransactionTemplate,
TransactionTemplate,
QFilterCondition
> {
extension TransactionTemplateQueryLinks on QueryBuilder<TransactionTemplate,
TransactionTemplate, QFilterCondition> {
QueryBuilder<TransactionTemplate, TransactionTemplate, QAfterFilterCondition>
expenseCategory(FilterQuery<ExpenseCategory> q) {
return QueryBuilder.apply(this, (query) {

View File

@ -17,9 +17,21 @@ 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,
@ -45,7 +57,7 @@ const TransactionSchema = CollectionSchema(
name: r'beneficiary',
target: r'Beneficiary',
single: true,
),
)
},
embeddedSchemas: {},
getId: _transactionGetId,
@ -122,24 +134,13 @@ List<IsarLinkBase<dynamic>> _transactionGetLinks(Transaction object) {
}
void _transactionAttach(
IsarCollection<dynamic> col,
Id id,
Transaction object,
) {
IsarCollection<dynamic> col, Id id, Transaction object) {
object.id = id;
object.expenseCategory.attach(
col,
col.isar.collection<ExpenseCategory>(),
r'expenseCategory',
id,
);
col, col.isar.collection<ExpenseCategory>(), r'expenseCategory', id);
object.account.attach(col, col.isar.collection<Account>(), r'account', id);
object.beneficiary.attach(
col,
col.isar.collection<Beneficiary>(),
r'beneficiary',
id,
);
object.beneficiary
.attach(col, col.isar.collection<Beneficiary>(), r'beneficiary', id);
}
extension TransactionQueryWhereSort
@ -155,13 +156,15 @@ extension TransactionQueryWhere
on QueryBuilder<Transaction, Transaction, QWhereClause> {
QueryBuilder<Transaction, Transaction, QAfterWhereClause> 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<Transaction, Transaction, QAfterWhereClause> idNotEqualTo(
Id id,
) {
Id id) {
return QueryBuilder.apply(this, (query) {
if (query.whereSort == Sort.asc) {
return query
@ -183,10 +186,8 @@ extension TransactionQueryWhere
});
}
QueryBuilder<Transaction, Transaction, QAfterWhereClause> idGreaterThan(
Id id, {
bool include = false,
}) {
QueryBuilder<Transaction, Transaction, QAfterWhereClause> idGreaterThan(Id id,
{bool include = false}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.greaterThan(lower: id, includeLower: include),
@ -194,10 +195,8 @@ extension TransactionQueryWhere
});
}
QueryBuilder<Transaction, Transaction, QAfterWhereClause> idLessThan(
Id id, {
bool include = false,
}) {
QueryBuilder<Transaction, Transaction, QAfterWhereClause> idLessThan(Id id,
{bool include = false}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.lessThan(upper: id, includeUpper: include),
@ -212,14 +211,12 @@ extension TransactionQueryWhere
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addWhereClause(
IdWhereClause.between(
return query.addWhereClause(IdWhereClause.between(
lower: lowerId,
includeLower: includeLower,
upper: upperId,
includeUpper: includeUpper,
),
);
));
});
}
}
@ -231,13 +228,11 @@ extension TransactionQueryFilter
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.equalTo(
return query.addFilterCondition(FilterCondition.equalTo(
property: r'amount',
value: value,
epsilon: epsilon,
),
);
));
});
}
@ -248,14 +243,12 @@ extension TransactionQueryFilter
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'amount',
value: value,
epsilon: epsilon,
),
);
));
});
}
@ -265,14 +258,12 @@ extension TransactionQueryFilter
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'amount',
value: value,
epsilon: epsilon,
),
);
));
});
}
@ -284,26 +275,24 @@ extension TransactionQueryFilter
double epsilon = Query.epsilon,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'amount',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
epsilon: epsilon,
),
);
));
});
}
QueryBuilder<Transaction, Transaction, QAfterFilterCondition> 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,
));
});
}
@ -312,13 +301,11 @@ extension TransactionQueryFilter
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'date',
value: value,
),
);
));
});
}
@ -327,13 +314,11 @@ extension TransactionQueryFilter
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'date',
value: value,
),
);
));
});
}
@ -344,25 +329,23 @@ extension TransactionQueryFilter
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'date',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
),
);
));
});
}
QueryBuilder<Transaction, Transaction, QAfterFilterCondition> 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,
));
});
}
@ -371,13 +354,11 @@ extension TransactionQueryFilter
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
@ -386,13 +367,11 @@ extension TransactionQueryFilter
bool include = false,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'id',
value: value,
),
);
));
});
}
@ -403,28 +382,27 @@ extension TransactionQueryFilter
bool includeUpper = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'id',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
),
);
));
});
}
QueryBuilder<Transaction, Transaction, QAfterFilterCondition>
tagsElementEqualTo(String value, {bool caseSensitive = true}) {
tagsElementEqualTo(
String value, {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.equalTo(
return query.addFilterCondition(FilterCondition.equalTo(
property: r'tags',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -435,14 +413,12 @@ extension TransactionQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(
return query.addFilterCondition(FilterCondition.greaterThan(
include: include,
property: r'tags',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -453,14 +429,12 @@ extension TransactionQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.lessThan(
return query.addFilterCondition(FilterCondition.lessThan(
include: include,
property: r'tags',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
@ -473,120 +447,154 @@ extension TransactionQueryFilter
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.between(
return query.addFilterCondition(FilterCondition.between(
property: r'tags',
lower: lower,
includeLower: includeLower,
upper: upper,
includeUpper: includeUpper,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Transaction, Transaction, QAfterFilterCondition>
tagsElementStartsWith(String value, {bool caseSensitive = true}) {
tagsElementStartsWith(
String value, {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.startsWith(
return query.addFilterCondition(FilterCondition.startsWith(
property: r'tags',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Transaction, Transaction, QAfterFilterCondition>
tagsElementEndsWith(String value, {bool caseSensitive = true}) {
tagsElementEndsWith(
String value, {
bool caseSensitive = true,
}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.endsWith(
return query.addFilterCondition(FilterCondition.endsWith(
property: r'tags',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Transaction, Transaction, QAfterFilterCondition>
tagsElementContains(String value, {bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.contains(
return query.addFilterCondition(FilterCondition.contains(
property: r'tags',
value: value,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Transaction, Transaction, QAfterFilterCondition>
tagsElementMatches(String pattern, {bool caseSensitive = true}) {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.matches(
return query.addFilterCondition(FilterCondition.matches(
property: r'tags',
wildcard: pattern,
caseSensitive: caseSensitive,
),
);
));
});
}
QueryBuilder<Transaction, Transaction, QAfterFilterCondition>
tagsElementIsEmpty() {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.equalTo(property: r'tags', value: ''),
);
return query.addFilterCondition(FilterCondition.equalTo(
property: r'tags',
value: '',
));
});
}
QueryBuilder<Transaction, Transaction, QAfterFilterCondition>
tagsElementIsNotEmpty() {
return QueryBuilder.apply(this, (query) {
return query.addFilterCondition(
FilterCondition.greaterThan(property: r'tags', value: ''),
);
return query.addFilterCondition(FilterCondition.greaterThan(
property: r'tags',
value: '',
));
});
}
QueryBuilder<Transaction, Transaction, QAfterFilterCondition>
tagsLengthEqualTo(int length) {
return QueryBuilder.apply(this, (query) {
return query.listLength(r'tags', length, true, length, true);
return query.listLength(
r'tags',
length,
true,
length,
true,
);
});
}
QueryBuilder<Transaction, Transaction, QAfterFilterCondition> 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<Transaction, Transaction, QAfterFilterCondition>
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<Transaction, Transaction, QAfterFilterCondition>
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<Transaction, Transaction, QAfterFilterCondition>
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,
);
});
}
@ -615,8 +623,7 @@ extension TransactionQueryObject
extension TransactionQueryLinks
on QueryBuilder<Transaction, Transaction, QFilterCondition> {
QueryBuilder<Transaction, Transaction, QAfterFilterCondition> expenseCategory(
FilterQuery<ExpenseCategory> q,
) {
FilterQuery<ExpenseCategory> q) {
return QueryBuilder.apply(this, (query) {
return query.link(q, r'expenseCategory');
});
@ -630,8 +637,7 @@ extension TransactionQueryLinks
}
QueryBuilder<Transaction, Transaction, QAfterFilterCondition> account(
FilterQuery<Account> q,
) {
FilterQuery<Account> q) {
return QueryBuilder.apply(this, (query) {
return query.link(q, r'account');
});
@ -645,8 +651,7 @@ extension TransactionQueryLinks
}
QueryBuilder<Transaction, Transaction, QAfterFilterCondition> beneficiary(
FilterQuery<Beneficiary> q,
) {
FilterQuery<Beneficiary> q) {
return QueryBuilder.apply(this, (query) {
return query.link(q, r'beneficiary');
});

View File

@ -11,10 +11,14 @@ import 'package:okane/ui/navigation.dart';
import 'package:okane/ui/pages/budgets/budget_details.dart';
import 'package:okane/ui/pages/transaction_details.dart';
import 'package:okane/ui/state/core.dart';
import 'package:okane/ui/state/settings.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
final settings = SettingsCubit();
await settings.loadSettings();
GetIt.I.registerSingleton<SettingsCubit>(settings);
GetIt.I.registerSingleton<CoreCubit>(CoreCubit());
GetIt.I.registerSingleton<Isar>(await openDatabase());
@ -31,11 +35,21 @@ class MyApp extends StatelessWidget {
child: MultiBlocProvider(
providers: [
BlocProvider<CoreCubit>(create: (_) => GetIt.I.get<CoreCubit>()),
BlocProvider<SettingsCubit>(
create: (_) => GetIt.I.get<SettingsCubit>(),
),
],
child: MaterialApp(
child: BlocBuilder<SettingsCubit, SettingsWrapper>(
builder:
(context, state) => MaterialApp(
title: 'Okane',
theme: ThemeData(
colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
colorSchemeSeed: Colors.deepPurple,
brightness: switch (state.settings.colorScheme) {
ColorSchemeSettings.dark => Brightness.dark,
ColorSchemeSettings.light => Brightness.light,
ColorSchemeSettings.system => View.of(context).platformDispatcher.platformBrightness,
},
pageTransitionsTheme: PageTransitionsTheme(
builders: Map.fromIterable(
TargetPlatform.values,
@ -46,12 +60,16 @@ class MyApp extends StatelessWidget {
home: const MyHomePage(),
onGenerateRoute:
(settings) => switch (settings.name) {
"/transactions/details" => TransactionDetailsPage.mobileRoute,
"/transactions/details" =>
TransactionDetailsPage.mobileRoute,
"/budgets/details" => BudgetDetailsPage.mobileRoute,
_ => MaterialPageRoute<void>(builder: (_) => Text("Unknown!!")),
_ => MaterialPageRoute<void>(
builder: (_) => Text("Unknown!!"),
),
},
),
),
),
);
}
}

View File

@ -5,13 +5,14 @@ import 'package:okane/ui/pages/account/account.dart';
import 'package:okane/ui/pages/beneficiary_list.dart';
import 'package:okane/ui/pages/budgets/budget_details.dart';
import 'package:okane/ui/pages/budgets/budgets.dart';
import 'package:okane/ui/pages/settings.dart';
import 'package:okane/ui/pages/template_list.dart';
import 'package:okane/ui/pages/transaction_details.dart';
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 }
enum OkanePage { accounts, transactions, beneficiaries, templates, budgets, settings }
typedef OkanePageBuilder = Widget Function(bool);
@ -96,6 +97,14 @@ final _pages = <OkanePageItem>[
(_) => BudgetDetailsPage(),
true,
),
OkanePageItem(
OkanePage.settings,
Icons.settings,
"Settings",
SettingsPage(),
null,
false,
),
];
class OkaneNavigationRail extends StatelessWidget {

View File

@ -0,0 +1,59 @@
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:get_it/get_it.dart';
import 'package:okane/ui/state/settings.dart';
import 'package:okane/ui/utils.dart';
class SettingsPage extends StatelessWidget {
const SettingsPage({super.key});
@override
Widget build(BuildContext context) {
return ListView(
children: [
BlocBuilder<SettingsCubit, SettingsWrapper>(
builder:
(context, state) => ListTile(
title: Text("Color Scheme"),
subtitle: switch (state.settings.colorScheme) {
ColorSchemeSettings.dark => Text("Dark"),
ColorSchemeSettings.light => Text("Light"),
ColorSchemeSettings.system => Text("System"),
},
onTap: () async {
final colorScheme = await showDialogOrModal(
context: context,
builder:
(context) => ListView(
shrinkWrap: true,
children:
ColorSchemeSettings.values
.map(
(s) => ListTile(
title: Text(switch (s) {
ColorSchemeSettings.dark => "Dark",
ColorSchemeSettings.light => "Light",
ColorSchemeSettings.system => "System",
}),
onTap: () {
Navigator.of(context).pop(s);
},
),
)
.toList(),
),
);
if (colorScheme == null) {
return;
}
await GetIt.I.get<SettingsCubit>().setSettings(
state.settings.copyWith(colorScheme: colorScheme),
);
},
),
),
],
);
}
}

View File

@ -12,8 +12,7 @@ part of 'core.dart';
T _$identity<T>(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 {
@ -42,8 +41,8 @@ abstract class $CoreStateCopyWith<$Res> {
factory $CoreStateCopyWith(CoreState value, $Res Function(CoreState) then) =
_$CoreStateCopyWithImpl<$Res, CoreState>;
@useResult
$Res call({
OkanePage activePage,
$Res call(
{OkanePage activePage,
int? activeAccountIndex,
Transaction? activeTransaction,
List<Account> accounts,
@ -53,8 +52,7 @@ abstract class $CoreStateCopyWith<$Res> {
List<Beneficiary> beneficiaries,
List<ExpenseCategory> expenseCategories,
List<Budget> budgets,
Budget? activeBudget,
});
Budget? activeBudget});
}
/// @nodoc
@ -82,66 +80,52 @@ class _$CoreStateCopyWithImpl<$Res, $Val extends CoreState>
Object? budgets = null,
Object? activeBudget = freezed,
}) {
return _then(
_value.copyWith(
activePage:
null == activePage
return _then(_value.copyWith(
activePage: null == activePage
? _value.activePage
: activePage // ignore: cast_nullable_to_non_nullable
as OkanePage,
activeAccountIndex:
freezed == activeAccountIndex
activeAccountIndex: freezed == activeAccountIndex
? _value.activeAccountIndex
: activeAccountIndex // ignore: cast_nullable_to_non_nullable
as int?,
activeTransaction:
freezed == activeTransaction
activeTransaction: freezed == activeTransaction
? _value.activeTransaction
: activeTransaction // ignore: cast_nullable_to_non_nullable
as Transaction?,
accounts:
null == accounts
accounts: null == accounts
? _value.accounts
: accounts // ignore: cast_nullable_to_non_nullable
as List<Account>,
recurringTransactions:
null == recurringTransactions
recurringTransactions: null == recurringTransactions
? _value.recurringTransactions
: recurringTransactions // ignore: cast_nullable_to_non_nullable
as List<RecurringTransaction>,
transactions:
null == transactions
transactions: null == transactions
? _value.transactions
: transactions // ignore: cast_nullable_to_non_nullable
as List<Transaction>,
transactionTemplates:
null == transactionTemplates
transactionTemplates: null == transactionTemplates
? _value.transactionTemplates
: transactionTemplates // ignore: cast_nullable_to_non_nullable
as List<TransactionTemplate>,
beneficiaries:
null == beneficiaries
beneficiaries: null == beneficiaries
? _value.beneficiaries
: beneficiaries // ignore: cast_nullable_to_non_nullable
as List<Beneficiary>,
expenseCategories:
null == expenseCategories
expenseCategories: null == expenseCategories
? _value.expenseCategories
: expenseCategories // ignore: cast_nullable_to_non_nullable
as List<ExpenseCategory>,
budgets:
null == budgets
budgets: null == budgets
? _value.budgets
: budgets // ignore: cast_nullable_to_non_nullable
as List<Budget>,
activeBudget:
freezed == activeBudget
activeBudget: freezed == activeBudget
? _value.activeBudget
: activeBudget // ignore: cast_nullable_to_non_nullable
as Budget?,
)
as $Val,
);
) as $Val);
}
}
@ -149,13 +133,12 @@ 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,
$Res call(
{OkanePage activePage,
int? activeAccountIndex,
Transaction? activeTransaction,
List<Account> accounts,
@ -165,8 +148,7 @@ abstract class _$$CoreStateImplCopyWith<$Res>
List<Beneficiary> beneficiaries,
List<ExpenseCategory> expenseCategories,
List<Budget> budgets,
Budget? activeBudget,
});
Budget? activeBudget});
}
/// @nodoc
@ -174,9 +156,8 @@ 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
@ -193,73 +174,60 @@ class __$$CoreStateImplCopyWithImpl<$Res>
Object? budgets = null,
Object? activeBudget = freezed,
}) {
return _then(
_$CoreStateImpl(
activePage:
null == activePage
return _then(_$CoreStateImpl(
activePage: null == activePage
? _value.activePage
: activePage // ignore: cast_nullable_to_non_nullable
as OkanePage,
activeAccountIndex:
freezed == activeAccountIndex
activeAccountIndex: freezed == activeAccountIndex
? _value.activeAccountIndex
: activeAccountIndex // ignore: cast_nullable_to_non_nullable
as int?,
activeTransaction:
freezed == activeTransaction
activeTransaction: freezed == activeTransaction
? _value.activeTransaction
: activeTransaction // ignore: cast_nullable_to_non_nullable
as Transaction?,
accounts:
null == accounts
accounts: null == accounts
? _value._accounts
: accounts // ignore: cast_nullable_to_non_nullable
as List<Account>,
recurringTransactions:
null == recurringTransactions
recurringTransactions: null == recurringTransactions
? _value._recurringTransactions
: recurringTransactions // ignore: cast_nullable_to_non_nullable
as List<RecurringTransaction>,
transactions:
null == transactions
transactions: null == transactions
? _value._transactions
: transactions // ignore: cast_nullable_to_non_nullable
as List<Transaction>,
transactionTemplates:
null == transactionTemplates
transactionTemplates: null == transactionTemplates
? _value._transactionTemplates
: transactionTemplates // ignore: cast_nullable_to_non_nullable
as List<TransactionTemplate>,
beneficiaries:
null == beneficiaries
beneficiaries: null == beneficiaries
? _value._beneficiaries
: beneficiaries // ignore: cast_nullable_to_non_nullable
as List<Beneficiary>,
expenseCategories:
null == expenseCategories
expenseCategories: null == expenseCategories
? _value._expenseCategories
: expenseCategories // ignore: cast_nullable_to_non_nullable
as List<ExpenseCategory>,
budgets:
null == budgets
budgets: null == budgets
? _value._budgets
: budgets // ignore: cast_nullable_to_non_nullable
as List<Budget>,
activeBudget:
freezed == activeBudget
activeBudget: freezed == activeBudget
? _value.activeBudget
: activeBudget // ignore: cast_nullable_to_non_nullable
as Budget?,
),
);
));
}
}
/// @nodoc
class _$CoreStateImpl implements _CoreState {
const _$CoreStateImpl({
this.activePage = OkanePage.accounts,
const _$CoreStateImpl(
{this.activePage = OkanePage.accounts,
this.activeAccountIndex,
this.activeTransaction = null,
final List<Account> accounts = const [],
@ -269,8 +237,8 @@ class _$CoreStateImpl implements _CoreState {
final List<Beneficiary> beneficiaries = const [],
final List<ExpenseCategory> expenseCategories = const [],
final List<Budget> budgets = const [],
this.activeBudget = null,
}) : _accounts = accounts,
this.activeBudget = null})
: _accounts = accounts,
_recurringTransactions = recurringTransactions,
_transactions = transactions,
_transactionTemplates = transactionTemplates,
@ -373,26 +341,16 @@ 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));
@ -411,8 +369,7 @@ class _$CoreStateImpl implements _CoreState {
const DeepCollectionEquality().hash(_beneficiaries),
const DeepCollectionEquality().hash(_expenseCategories),
const DeepCollectionEquality().hash(_budgets),
activeBudget,
);
activeBudget);
@JsonKey(ignore: true)
@override
@ -422,8 +379,8 @@ class _$CoreStateImpl implements _CoreState {
}
abstract class _CoreState implements CoreState {
const factory _CoreState({
final OkanePage activePage,
const factory _CoreState(
{final OkanePage activePage,
final int? activeAccountIndex,
final Transaction? activeTransaction,
final List<Account> accounts,
@ -433,8 +390,7 @@ abstract class _CoreState implements CoreState {
final List<Beneficiary> beneficiaries,
final List<ExpenseCategory> expenseCategories,
final List<Budget> budgets,
final Budget? activeBudget,
}) = _$CoreStateImpl;
final Budget? activeBudget}) = _$CoreStateImpl;
@override
OkanePage get activePage;

View File

@ -0,0 +1,48 @@
import 'dart:convert';
import 'package:bloc/bloc.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
import 'package:shared_preferences/shared_preferences.dart';
part 'settings.freezed.dart';
part 'settings.g.dart';
enum ColorSchemeSettings { light, dark, system }
@freezed
abstract class Settings with _$Settings {
const factory Settings({
@Default(ColorSchemeSettings.system) ColorSchemeSettings colorScheme,
}) = _Settings;
factory Settings.fromJson(Map<String, Object?> json) =>
_$SettingsFromJson(json);
}
@freezed
abstract class SettingsWrapper with _$SettingsWrapper {
const factory SettingsWrapper({@Default(Settings()) Settings settings}) =
_SettingsWrapper;
}
class SettingsCubit extends Cubit<SettingsWrapper> {
final SharedPreferencesAsync _prefs = SharedPreferencesAsync();
SettingsCubit() : super(SettingsWrapper());
Future<void> loadSettings() async {
final value = await _prefs.getString("settings");
if (value == null) {
await _prefs.setString("settings", jsonEncode(Settings().toJson()));
return;
}
emit(state.copyWith(settings: Settings.fromJson(jsonDecode(value))));
}
Future<void> setSettings(Settings settings) async {
emit(state.copyWith(settings: settings));
await _prefs.setString("settings", jsonEncode(settings.toJson()));
}
}

View File

@ -0,0 +1,287 @@
// coverage:ignore-file
// GENERATED CODE - DO NOT MODIFY BY HAND
// ignore_for_file: type=lint
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
part of 'settings.dart';
// **************************************************************************
// FreezedGenerator
// **************************************************************************
T _$identity<T>(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');
Settings _$SettingsFromJson(Map<String, dynamic> json) {
return _Settings.fromJson(json);
}
/// @nodoc
mixin _$Settings {
ColorSchemeSettings get colorScheme => throw _privateConstructorUsedError;
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
@JsonKey(ignore: true)
$SettingsCopyWith<Settings> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $SettingsCopyWith<$Res> {
factory $SettingsCopyWith(Settings value, $Res Function(Settings) then) =
_$SettingsCopyWithImpl<$Res, Settings>;
@useResult
$Res call({ColorSchemeSettings colorScheme});
}
/// @nodoc
class _$SettingsCopyWithImpl<$Res, $Val extends Settings>
implements $SettingsCopyWith<$Res> {
_$SettingsCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
@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);
}
}
/// @nodoc
abstract class _$$SettingsImplCopyWith<$Res>
implements $SettingsCopyWith<$Res> {
factory _$$SettingsImplCopyWith(
_$SettingsImpl value, $Res Function(_$SettingsImpl) then) =
__$$SettingsImplCopyWithImpl<$Res>;
@override
@useResult
$Res call({ColorSchemeSettings colorScheme});
}
/// @nodoc
class __$$SettingsImplCopyWithImpl<$Res>
extends _$SettingsCopyWithImpl<$Res, _$SettingsImpl>
implements _$$SettingsImplCopyWith<$Res> {
__$$SettingsImplCopyWithImpl(
_$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,
));
}
}
/// @nodoc
@JsonSerializable()
class _$SettingsImpl implements _Settings {
const _$SettingsImpl({this.colorScheme = ColorSchemeSettings.system});
factory _$SettingsImpl.fromJson(Map<String, dynamic> json) =>
_$$SettingsImplFromJson(json);
@override
@JsonKey()
final ColorSchemeSettings colorScheme;
@override
String toString() {
return 'Settings(colorScheme: $colorScheme)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$SettingsImpl &&
(identical(other.colorScheme, colorScheme) ||
other.colorScheme == colorScheme));
}
@JsonKey(ignore: true)
@override
int get hashCode => Object.hash(runtimeType, colorScheme);
@JsonKey(ignore: true)
@override
@pragma('vm:prefer-inline')
_$$SettingsImplCopyWith<_$SettingsImpl> get copyWith =>
__$$SettingsImplCopyWithImpl<_$SettingsImpl>(this, _$identity);
@override
Map<String, dynamic> toJson() {
return _$$SettingsImplToJson(
this,
);
}
}
abstract class _Settings implements Settings {
const factory _Settings({final ColorSchemeSettings colorScheme}) =
_$SettingsImpl;
factory _Settings.fromJson(Map<String, dynamic> json) =
_$SettingsImpl.fromJson;
@override
ColorSchemeSettings get colorScheme;
@override
@JsonKey(ignore: true)
_$$SettingsImplCopyWith<_$SettingsImpl> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc
mixin _$SettingsWrapper {
Settings get settings => throw _privateConstructorUsedError;
@JsonKey(ignore: true)
$SettingsWrapperCopyWith<SettingsWrapper> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $SettingsWrapperCopyWith<$Res> {
factory $SettingsWrapperCopyWith(
SettingsWrapper value, $Res Function(SettingsWrapper) then) =
_$SettingsWrapperCopyWithImpl<$Res, SettingsWrapper>;
@useResult
$Res call({Settings settings});
$SettingsCopyWith<$Res> get settings;
}
/// @nodoc
class _$SettingsWrapperCopyWithImpl<$Res, $Val extends SettingsWrapper>
implements $SettingsWrapperCopyWith<$Res> {
_$SettingsWrapperCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
@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);
}
@override
@pragma('vm:prefer-inline')
$SettingsCopyWith<$Res> get settings {
return $SettingsCopyWith<$Res>(_value.settings, (value) {
return _then(_value.copyWith(settings: value) as $Val);
});
}
}
/// @nodoc
abstract class _$$SettingsWrapperImplCopyWith<$Res>
implements $SettingsWrapperCopyWith<$Res> {
factory _$$SettingsWrapperImplCopyWith(_$SettingsWrapperImpl value,
$Res Function(_$SettingsWrapperImpl) then) =
__$$SettingsWrapperImplCopyWithImpl<$Res>;
@override
@useResult
$Res call({Settings settings});
@override
$SettingsCopyWith<$Res> get settings;
}
/// @nodoc
class __$$SettingsWrapperImplCopyWithImpl<$Res>
extends _$SettingsWrapperCopyWithImpl<$Res, _$SettingsWrapperImpl>
implements _$$SettingsWrapperImplCopyWith<$Res> {
__$$SettingsWrapperImplCopyWithImpl(
_$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,
));
}
}
/// @nodoc
class _$SettingsWrapperImpl implements _SettingsWrapper {
const _$SettingsWrapperImpl({this.settings = const Settings()});
@override
@JsonKey()
final Settings settings;
@override
String toString() {
return 'SettingsWrapper(settings: $settings)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$SettingsWrapperImpl &&
(identical(other.settings, settings) ||
other.settings == settings));
}
@override
int get hashCode => Object.hash(runtimeType, settings);
@JsonKey(ignore: true)
@override
@pragma('vm:prefer-inline')
_$$SettingsWrapperImplCopyWith<_$SettingsWrapperImpl> get copyWith =>
__$$SettingsWrapperImplCopyWithImpl<_$SettingsWrapperImpl>(
this, _$identity);
}
abstract class _SettingsWrapper implements SettingsWrapper {
const factory _SettingsWrapper({final Settings settings}) =
_$SettingsWrapperImpl;
@override
Settings get settings;
@override
@JsonKey(ignore: true)
_$$SettingsWrapperImplCopyWith<_$SettingsWrapperImpl> get copyWith =>
throw _privateConstructorUsedError;
}

View File

@ -0,0 +1,25 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'settings.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
_$SettingsImpl _$$SettingsImplFromJson(Map<String, dynamic> json) =>
_$SettingsImpl(
colorScheme: $enumDecodeNullable(
_$ColorSchemeSettingsEnumMap, json['colorScheme']) ??
ColorSchemeSettings.system,
);
Map<String, dynamic> _$$SettingsImplToJson(_$SettingsImpl instance) =>
<String, dynamic>{
'colorScheme': _$ColorSchemeSettingsEnumMap[instance.colorScheme]!,
};
const _$ColorSchemeSettingsEnumMap = {
ColorSchemeSettings.light: 'light',
ColorSchemeSettings.dark: 'dark',
ColorSchemeSettings.system: 'system',
};

View File

@ -417,13 +417,21 @@ packages:
source: hosted
version: "0.6.7"
json_annotation:
dependency: transitive
dependency: "direct main"
description:
name: json_annotation
sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1"
url: "https://pub.dev"
source: hosted
version: "4.9.0"
json_serializable:
dependency: "direct dev"
description:
name: json_serializable
sha256: ea1432d167339ea9b5bb153f0571d0039607a873d6e04e0117af043f14a1fd4b
url: "https://pub.dev"
source: hosted
version: "6.8.0"
leak_tracker:
dependency: transitive
description:
@ -624,6 +632,62 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.2.7"
shared_preferences:
dependency: "direct main"
description:
name: shared_preferences
sha256: "6e8bf70b7fef813df4e9a36f658ac46d107db4b4cfe1048b477d4e453a8159f5"
url: "https://pub.dev"
source: hosted
version: "2.5.3"
shared_preferences_android:
dependency: transitive
description:
name: shared_preferences_android
sha256: "20cbd561f743a342c76c151d6ddb93a9ce6005751e7aa458baad3858bfbfb6ac"
url: "https://pub.dev"
source: hosted
version: "2.4.10"
shared_preferences_foundation:
dependency: transitive
description:
name: shared_preferences_foundation
sha256: "6a52cfcdaeac77cad8c97b539ff688ccfc458c007b4db12be584fbe5c0e49e03"
url: "https://pub.dev"
source: hosted
version: "2.5.4"
shared_preferences_linux:
dependency: transitive
description:
name: shared_preferences_linux
sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f"
url: "https://pub.dev"
source: hosted
version: "2.4.1"
shared_preferences_platform_interface:
dependency: transitive
description:
name: shared_preferences_platform_interface
sha256: "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80"
url: "https://pub.dev"
source: hosted
version: "2.4.1"
shared_preferences_web:
dependency: transitive
description:
name: shared_preferences_web
sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019
url: "https://pub.dev"
source: hosted
version: "2.4.3"
shared_preferences_windows:
dependency: transitive
description:
name: shared_preferences_windows
sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1"
url: "https://pub.dev"
source: hosted
version: "2.4.1"
shelf:
dependency: transitive
description:
@ -653,6 +717,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.5.0"
source_helper:
dependency: transitive
description:
name: source_helper
sha256: "86d247119aedce8e63f4751bd9626fc9613255935558447569ad42f9f5b48b3c"
url: "https://pub.dev"
source: hosted
version: "1.3.5"
source_span:
dependency: transitive
description:

View File

@ -23,6 +23,8 @@ dependencies:
flutter_picker_plus: ^1.5.1
isar: ^3.1.0+1
isar_flutter_libs: ^3.1.0+1
shared_preferences: ^2.5.3
json_annotation: ^4.9.0
dev_dependencies:
flutter_test:
@ -31,6 +33,7 @@ dev_dependencies:
build_runner: ^2.4.13
freezed: 2.5.0
isar_generator: ^3.1.0+1
json_serializable: ^6.4.0
flutter:
uses-material-design: true