flexiblepersistence
Version:
A CQRS and Event Sourcing platform
45 lines • 1.41 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Read = void 0;
const operation_1 = require("./../event/operation");
class Read {
constructor(readDB) {
this.readDB = readDB;
}
getPersistence() {
return this.readDB;
}
// deepcode ignore no-any: any needed
newEvent(event) {
//Operation.create.valueOf();
const selection = event?.getSelection?.();
const sId = selection?.id;
const isArray = Array.isArray(sId);
let id = selection && !isArray
? sId
: event.isSingle() && event.getOperation() == operation_1.Operation.create
? event.getId()
: undefined;
id = id ? id : sId;
id = Array.isArray(id) ? id.map((i) => String(i)) : id ? String(id) : id;
const input = {
single: event.isSingle(),
scheme: event.getName(),
id: id,
selectedItem: selection,
item: event.getContent(),
eventOptions: event.getOptions(),
correct: event.isCorrect(),
replace: event.isReplace(),
};
return this.readDB[operation_1.Operation[event.getOperation()]](input);
}
clear() {
return this.readDB.clear();
}
getReadDB() {
return this.readDB;
}
}
exports.Read = Read;
//# sourceMappingURL=read.js.map