drift(mobile): drift auth user sync
This commit is contained in:
@@ -45,9 +45,9 @@ class Album {
|
||||
bool activityEnabled;
|
||||
@enumerated
|
||||
SortOrder sortOrder;
|
||||
final IsarLink<User> owner = IsarLink<User>();
|
||||
final IsarLink<IsarUser> owner = IsarLink<IsarUser>();
|
||||
final IsarLink<Asset> thumbnail = IsarLink<Asset>();
|
||||
final IsarLinks<User> sharedUsers = IsarLinks<User>();
|
||||
final IsarLinks<IsarUser> sharedUsers = IsarLinks<IsarUser>();
|
||||
final IsarLinks<Asset> assets = IsarLinks<Asset>();
|
||||
|
||||
// transient fields
|
||||
@@ -95,8 +95,8 @@ class Album {
|
||||
// accessible in an object freshly created (not loaded from DB)
|
||||
|
||||
@ignore
|
||||
Iterable<User> get remoteUsers =>
|
||||
sharedUsers.isEmpty ? (sharedUsers as IsarLinksCommon<User>).addedObjects : sharedUsers;
|
||||
Iterable<IsarUser> get remoteUsers =>
|
||||
sharedUsers.isEmpty ? (sharedUsers as IsarLinksCommon<IsarUser>).addedObjects : sharedUsers;
|
||||
|
||||
@ignore
|
||||
Iterable<Asset> get remoteAssets => assets.isEmpty ? (assets as IsarLinksCommon<Asset>).addedObjects : assets;
|
||||
@@ -160,7 +160,7 @@ class Album {
|
||||
activityEnabled: dto.isActivityEnabled,
|
||||
);
|
||||
a.remoteAssetCount = dto.assetCount;
|
||||
a.owner.value = await db.users.getById(dto.ownerId);
|
||||
a.owner.value = await db.isarUsers.getById(dto.ownerId);
|
||||
if (dto.order != null) {
|
||||
a.sortOrder = dto.order == AssetOrder.asc ? SortOrder.asc : SortOrder.desc;
|
||||
}
|
||||
@@ -169,7 +169,7 @@ class Album {
|
||||
a.thumbnail.value = await db.assets.where().remoteIdEqualTo(dto.albumThumbnailAssetId).findFirst();
|
||||
}
|
||||
if (dto.albumUsers.isNotEmpty) {
|
||||
final users = await db.users.getAllById(
|
||||
final users = await db.isarUsers.getAllById(
|
||||
dto.albumUsers.map((e) => e.user.id).toList(growable: false),
|
||||
);
|
||||
a.sharedUsers.addAll(users.cast());
|
||||
|
||||
Generated
+7
-6
@@ -116,7 +116,7 @@ const AlbumSchema = CollectionSchema(
|
||||
r'owner': LinkSchema(
|
||||
id: 8272576585804958029,
|
||||
name: r'owner',
|
||||
target: r'User',
|
||||
target: r'IsarUser',
|
||||
single: true,
|
||||
),
|
||||
r'thumbnail': LinkSchema(
|
||||
@@ -128,7 +128,7 @@ const AlbumSchema = CollectionSchema(
|
||||
r'sharedUsers': LinkSchema(
|
||||
id: 8972835302564625434,
|
||||
name: r'sharedUsers',
|
||||
target: r'User',
|
||||
target: r'IsarUser',
|
||||
single: false,
|
||||
),
|
||||
r'assets': LinkSchema(
|
||||
@@ -275,10 +275,10 @@ List<IsarLinkBase<dynamic>> _albumGetLinks(Album object) {
|
||||
|
||||
void _albumAttach(IsarCollection<dynamic> col, Id id, Album object) {
|
||||
object.id = id;
|
||||
object.owner.attach(col, col.isar.collection<User>(), r'owner', id);
|
||||
object.owner.attach(col, col.isar.collection<IsarUser>(), r'owner', id);
|
||||
object.thumbnail.attach(col, col.isar.collection<Asset>(), r'thumbnail', id);
|
||||
object.sharedUsers
|
||||
.attach(col, col.isar.collection<User>(), r'sharedUsers', id);
|
||||
.attach(col, col.isar.collection<IsarUser>(), r'sharedUsers', id);
|
||||
object.assets.attach(col, col.isar.collection<Asset>(), r'assets', id);
|
||||
}
|
||||
|
||||
@@ -1500,7 +1500,8 @@ extension AlbumQueryFilter on QueryBuilder<Album, Album, QFilterCondition> {
|
||||
extension AlbumQueryObject on QueryBuilder<Album, Album, QFilterCondition> {}
|
||||
|
||||
extension AlbumQueryLinks on QueryBuilder<Album, Album, QFilterCondition> {
|
||||
QueryBuilder<Album, Album, QAfterFilterCondition> owner(FilterQuery<User> q) {
|
||||
QueryBuilder<Album, Album, QAfterFilterCondition> owner(
|
||||
FilterQuery<IsarUser> q) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.link(q, r'owner');
|
||||
});
|
||||
@@ -1526,7 +1527,7 @@ extension AlbumQueryLinks on QueryBuilder<Album, Album, QFilterCondition> {
|
||||
}
|
||||
|
||||
QueryBuilder<Album, Album, QAfterFilterCondition> sharedUsers(
|
||||
FilterQuery<User> q) {
|
||||
FilterQuery<IsarUser> q) {
|
||||
return QueryBuilder.apply(this, (query) {
|
||||
return query.link(q, r'sharedUsers');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user