|
@@ -80,7 +80,7 @@ const AssetSchema = CollectionSchema(
|
|
|
r'thumbhash': PropertySchema(
|
|
|
id: 12,
|
|
|
name: r'thumbhash',
|
|
|
- type: IsarType.string,
|
|
|
+ type: IsarType.byteList,
|
|
|
),
|
|
|
r'type': PropertySchema(
|
|
|
id: 13,
|
|
@@ -187,7 +187,7 @@ int _assetEstimateSize(
|
|
|
{
|
|
|
final value = object.thumbhash;
|
|
|
if (value != null) {
|
|
|
- bytesCount += 3 + value.length * 3;
|
|
|
+ bytesCount += 3 + value.length;
|
|
|
}
|
|
|
}
|
|
|
return bytesCount;
|
|
@@ -211,7 +211,7 @@ void _assetSerialize(
|
|
|
writer.writeString(offsets[9], object.localId);
|
|
|
writer.writeLong(offsets[10], object.ownerId);
|
|
|
writer.writeString(offsets[11], object.remoteId);
|
|
|
- writer.writeString(offsets[12], object.thumbhash);
|
|
|
+ writer.writeByteList(offsets[12], object.thumbhash);
|
|
|
writer.writeByte(offsets[13], object.type.index);
|
|
|
writer.writeDateTime(offsets[14], object.updatedAt);
|
|
|
writer.writeInt(offsets[15], object.width);
|
|
@@ -237,7 +237,7 @@ Asset _assetDeserialize(
|
|
|
localId: reader.readStringOrNull(offsets[9]),
|
|
|
ownerId: reader.readLong(offsets[10]),
|
|
|
remoteId: reader.readStringOrNull(offsets[11]),
|
|
|
- thumbhash: reader.readStringOrNull(offsets[12]),
|
|
|
+ thumbhash: reader.readByteList(offsets[12]),
|
|
|
type: _AssettypeValueEnumMap[reader.readByteOrNull(offsets[13])] ??
|
|
|
AssetType.other,
|
|
|
updatedAt: reader.readDateTime(offsets[14]),
|
|
@@ -278,7 +278,7 @@ P _assetDeserializeProp<P>(
|
|
|
case 11:
|
|
|
return (reader.readStringOrNull(offset)) as P;
|
|
|
case 12:
|
|
|
- return (reader.readStringOrNull(offset)) as P;
|
|
|
+ return (reader.readByteList(offset)) as P;
|
|
|
case 13:
|
|
|
return (_AssettypeValueEnumMap[reader.readByteOrNull(offset)] ??
|
|
|
AssetType.other) as P;
|
|
@@ -1817,55 +1817,47 @@ extension AssetQueryFilter on QueryBuilder<Asset, Asset, QFilterCondition> {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashEqualTo(
|
|
|
- String? value, {
|
|
|
- bool caseSensitive = true,
|
|
|
- }) {
|
|
|
+ QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashElementEqualTo(
|
|
|
+ int value) {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
return query.addFilterCondition(FilterCondition.equalTo(
|
|
|
property: r'thumbhash',
|
|
|
value: value,
|
|
|
- caseSensitive: caseSensitive,
|
|
|
));
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashGreaterThan(
|
|
|
- String? value, {
|
|
|
+ QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashElementGreaterThan(
|
|
|
+ int value, {
|
|
|
bool include = false,
|
|
|
- bool caseSensitive = true,
|
|
|
}) {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
return query.addFilterCondition(FilterCondition.greaterThan(
|
|
|
include: include,
|
|
|
property: r'thumbhash',
|
|
|
value: value,
|
|
|
- caseSensitive: caseSensitive,
|
|
|
));
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashLessThan(
|
|
|
- String? value, {
|
|
|
+ QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashElementLessThan(
|
|
|
+ int value, {
|
|
|
bool include = false,
|
|
|
- bool caseSensitive = true,
|
|
|
}) {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
return query.addFilterCondition(FilterCondition.lessThan(
|
|
|
include: include,
|
|
|
property: r'thumbhash',
|
|
|
value: value,
|
|
|
- caseSensitive: caseSensitive,
|
|
|
));
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashBetween(
|
|
|
- String? lower,
|
|
|
- String? upper, {
|
|
|
+ QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashElementBetween(
|
|
|
+ int lower,
|
|
|
+ int upper, {
|
|
|
bool includeLower = true,
|
|
|
bool includeUpper = true,
|
|
|
- bool caseSensitive = true,
|
|
|
}) {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
return query.addFilterCondition(FilterCondition.between(
|
|
@@ -1874,76 +1866,91 @@ extension AssetQueryFilter on QueryBuilder<Asset, Asset, QFilterCondition> {
|
|
|
includeLower: includeLower,
|
|
|
upper: upper,
|
|
|
includeUpper: includeUpper,
|
|
|
- caseSensitive: caseSensitive,
|
|
|
));
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashStartsWith(
|
|
|
- String value, {
|
|
|
- bool caseSensitive = true,
|
|
|
- }) {
|
|
|
+ QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashLengthEqualTo(
|
|
|
+ int length) {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
- return query.addFilterCondition(FilterCondition.startsWith(
|
|
|
- property: r'thumbhash',
|
|
|
- value: value,
|
|
|
- caseSensitive: caseSensitive,
|
|
|
- ));
|
|
|
+ return query.listLength(
|
|
|
+ r'thumbhash',
|
|
|
+ length,
|
|
|
+ true,
|
|
|
+ length,
|
|
|
+ true,
|
|
|
+ );
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashEndsWith(
|
|
|
- String value, {
|
|
|
- bool caseSensitive = true,
|
|
|
- }) {
|
|
|
+ QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashIsEmpty() {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
- return query.addFilterCondition(FilterCondition.endsWith(
|
|
|
- property: r'thumbhash',
|
|
|
- value: value,
|
|
|
- caseSensitive: caseSensitive,
|
|
|
- ));
|
|
|
+ return query.listLength(
|
|
|
+ r'thumbhash',
|
|
|
+ 0,
|
|
|
+ true,
|
|
|
+ 0,
|
|
|
+ true,
|
|
|
+ );
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashContains(
|
|
|
- String value,
|
|
|
- {bool caseSensitive = true}) {
|
|
|
+ QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashIsNotEmpty() {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
- return query.addFilterCondition(FilterCondition.contains(
|
|
|
- property: r'thumbhash',
|
|
|
- value: value,
|
|
|
- caseSensitive: caseSensitive,
|
|
|
- ));
|
|
|
+ return query.listLength(
|
|
|
+ r'thumbhash',
|
|
|
+ 0,
|
|
|
+ false,
|
|
|
+ 999999,
|
|
|
+ true,
|
|
|
+ );
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashMatches(
|
|
|
- String pattern,
|
|
|
- {bool caseSensitive = true}) {
|
|
|
+ QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashLengthLessThan(
|
|
|
+ int length, {
|
|
|
+ bool include = false,
|
|
|
+ }) {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
- return query.addFilterCondition(FilterCondition.matches(
|
|
|
- property: r'thumbhash',
|
|
|
- wildcard: pattern,
|
|
|
- caseSensitive: caseSensitive,
|
|
|
- ));
|
|
|
+ return query.listLength(
|
|
|
+ r'thumbhash',
|
|
|
+ 0,
|
|
|
+ true,
|
|
|
+ length,
|
|
|
+ include,
|
|
|
+ );
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashIsEmpty() {
|
|
|
+ QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashLengthGreaterThan(
|
|
|
+ int length, {
|
|
|
+ bool include = false,
|
|
|
+ }) {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
- return query.addFilterCondition(FilterCondition.equalTo(
|
|
|
- property: r'thumbhash',
|
|
|
- value: '',
|
|
|
- ));
|
|
|
+ return query.listLength(
|
|
|
+ r'thumbhash',
|
|
|
+ length,
|
|
|
+ include,
|
|
|
+ 999999,
|
|
|
+ true,
|
|
|
+ );
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashIsNotEmpty() {
|
|
|
+ QueryBuilder<Asset, Asset, QAfterFilterCondition> thumbhashLengthBetween(
|
|
|
+ int lower,
|
|
|
+ int upper, {
|
|
|
+ bool includeLower = true,
|
|
|
+ bool includeUpper = true,
|
|
|
+ }) {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
- return query.addFilterCondition(FilterCondition.greaterThan(
|
|
|
- property: r'thumbhash',
|
|
|
- value: '',
|
|
|
- ));
|
|
|
+ return query.listLength(
|
|
|
+ r'thumbhash',
|
|
|
+ lower,
|
|
|
+ includeLower,
|
|
|
+ upper,
|
|
|
+ includeUpper,
|
|
|
+ );
|
|
|
});
|
|
|
}
|
|
|
|
|
@@ -2271,18 +2278,6 @@ extension AssetQuerySortBy on QueryBuilder<Asset, Asset, QSortBy> {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, Asset, QAfterSortBy> sortByThumbhash() {
|
|
|
- return QueryBuilder.apply(this, (query) {
|
|
|
- return query.addSortBy(r'thumbhash', Sort.asc);
|
|
|
- });
|
|
|
- }
|
|
|
-
|
|
|
- QueryBuilder<Asset, Asset, QAfterSortBy> sortByThumbhashDesc() {
|
|
|
- return QueryBuilder.apply(this, (query) {
|
|
|
- return query.addSortBy(r'thumbhash', Sort.desc);
|
|
|
- });
|
|
|
- }
|
|
|
-
|
|
|
QueryBuilder<Asset, Asset, QAfterSortBy> sortByType() {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
return query.addSortBy(r'type', Sort.asc);
|
|
@@ -2477,18 +2472,6 @@ extension AssetQuerySortThenBy on QueryBuilder<Asset, Asset, QSortThenBy> {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, Asset, QAfterSortBy> thenByThumbhash() {
|
|
|
- return QueryBuilder.apply(this, (query) {
|
|
|
- return query.addSortBy(r'thumbhash', Sort.asc);
|
|
|
- });
|
|
|
- }
|
|
|
-
|
|
|
- QueryBuilder<Asset, Asset, QAfterSortBy> thenByThumbhashDesc() {
|
|
|
- return QueryBuilder.apply(this, (query) {
|
|
|
- return query.addSortBy(r'thumbhash', Sort.desc);
|
|
|
- });
|
|
|
- }
|
|
|
-
|
|
|
QueryBuilder<Asset, Asset, QAfterSortBy> thenByType() {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
return query.addSortBy(r'type', Sort.asc);
|
|
@@ -2605,10 +2588,9 @@ extension AssetQueryWhereDistinct on QueryBuilder<Asset, Asset, QDistinct> {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, Asset, QDistinct> distinctByThumbhash(
|
|
|
- {bool caseSensitive = true}) {
|
|
|
+ QueryBuilder<Asset, Asset, QDistinct> distinctByThumbhash() {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
- return query.addDistinctBy(r'thumbhash', caseSensitive: caseSensitive);
|
|
|
+ return query.addDistinctBy(r'thumbhash');
|
|
|
});
|
|
|
}
|
|
|
|
|
@@ -2710,7 +2692,7 @@ extension AssetQueryProperty on QueryBuilder<Asset, Asset, QQueryProperty> {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- QueryBuilder<Asset, String?, QQueryOperations> thumbhashProperty() {
|
|
|
+ QueryBuilder<Asset, List<int>?, QQueryOperations> thumbhashProperty() {
|
|
|
return QueryBuilder.apply(this, (query) {
|
|
|
return query.addPropertyName(r'thumbhash');
|
|
|
});
|