event-driven
Version:
makes building event-driven-architecture easy
28 lines (27 loc) • 1.02 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createTrigger = exports.Trigger = void 0;
const mongoose_1 = require("mongoose");
const TriggerError_1 = require("./TriggerError");
const TriggerSchema = new mongoose_1.Schema({}, { strict: false });
exports.Trigger = mongoose_1.model('Trigger', TriggerSchema);
const createTrigger = (data) => {
const trigger = new exports.Trigger(Object.assign(Object.assign({}, data), { createdAt: new Date() }));
// trigger.save().catch(console.log)
return {
trigger,
catchTriggerError: catchTriggerError(trigger._id),
};
};
exports.createTrigger = createTrigger;
const catchTriggerError = (triggerId) => (error) => {
new TriggerError_1.TriggerError({
triggerId,
message: error.message ? JSON.stringify(error.message) : undefined,
stack: error.stack ? JSON.stringify(error.stack) : undefined,
isConfirmed: false,
})
.save()
.catch(console.log);
return;
};