@busy-hour/blaze
Version:
<h1 align='center'>🔥 Blaze</h1> <div align='center'> An event driven framework for 🔥 Hono.js </div>
59 lines (58 loc) • 2.1 kB
JavaScript
;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var broker_exports = {};
__export(broker_exports, {
BlazeBroker: () => BlazeBroker
});
module.exports = __toCommonJS(broker_exports);
var import_constant = require("../../utils/constant/index");
var import_errors = require("../errors/index");
var import_instance = require("../event-emitter/instance");
class BlazeBroker {
hasListener(eventName) {
return import_instance.BlazeEvent.listenerCount(eventName) > 0;
}
validateEventName(eventName) {
if (this.hasListener(eventName))
return;
throw new import_errors.BlazeError({
status: 500,
errors: {
message: `No listener for event ${eventName}`
},
message: "No listener for event"
});
}
async call(actionName, ...values) {
this.validateEventName(actionName);
const results = await import_instance.BlazeEvent.emitAsync(actionName, ...values);
return results[0];
}
emit(actionName, ...values) {
return import_instance.BlazeEvent.emit(actionName, ...values);
}
event(eventName, ...values) {
const $eventName = [import_constant.RESERVED_KEYWORD.PREFIX.EVENT, eventName].join(".");
return import_instance.BlazeEvent.emit($eventName, ...values);
}
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
BlazeBroker
});