respond-framework
Version:
create as fast you think
40 lines (39 loc) • 1.02 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
exports.trigger = trigger;
var _trigger = require("../plugins/trigger.js");
var _dispatchPlugins = require("../helpers/dispatchPlugins.js");
var _loadPlugins = require("../helpers/loadPlugins.js");
var _constants = require("../../helpers/constants.js");
const dispatch = async function (e, meta) {
const state = e.event.module;
const prom = (0, _loadPlugins.default)(this);
if (prom instanceof Promise) await prom;
if (meta) e.meta = {
...e.meta,
...meta
};
try {
await (0, _dispatchPlugins.default)([_trigger.default, ...state.plugins], state, e);
} catch (error) {
await state?.respond.onError({
error,
kind: 'dispatch',
e
});
}
if (!e.meta.trigger) return;
await this.promisesCompleted(e);
};
var _default = exports.default = dispatch;
function trigger(e, meta) {
e.meta = {
...e.meta,
...meta,
trigger: true
};
return this.dispatch(e);
}