This commit is contained in:
Peter Maquiran
2024-08-30 12:41:50 +01:00
parent ac7e5ccf5b
commit d6a08c6264
33 changed files with 558 additions and 87 deletions
@@ -0,0 +1,20 @@
import { Injectable } from '@angular/core';
import { from } from "rxjs";
import { DexieRepository } from "src/app/infra/repository/dexie/dexie-repository.service";
import { Dexie, EntityTable, liveQuery, Observable } from 'Dexie';
import { BoldTable, BoldTableSchema } from "src/app/infra/database/dexie/instance/chat/schema/bold";
import { chatDatabase } from "src/app/infra/database/dexie/service";
import { IBoldLocalRepository } from "src/app/core/chat/repository/bold/bold-local-repository";
@Injectable({
providedIn: 'root'
})
export class BoldLocalRepository extends DexieRepository<BoldTable, BoldTable> implements IBoldLocalRepository {
constructor() {
super(chatDatabase.bold, BoldTableSchema)
}
listen() {
return from(liveQuery(() => chatDatabase.bold.toArray()))
}
}
@@ -0,0 +1,14 @@
import { DistributionTable, DistributionTableSchema } from "src/app/infra/database/dexie/instance/chat/schema/destribution";
import { chatDatabase } from "src/app/infra/database/dexie/service";
import { DexieRepository } from "src/app/infra/repository/dexie/dexie-repository.service";
export class DistributionLocalRepository extends DexieRepository<DistributionTable, DistributionTable> {
constructor() {
super(chatDatabase.distribution, DistributionTableSchema)
chatDatabase.distribution.hook("creating", function (primKey, obj, transaction) {
obj.$messageIdMemberId = `${obj.messageId}${obj.memberId}`
});
}
}