@busy-hour/blaze
Version:
<h1 align='center'>🔥 Blaze</h1> <div align='center'> An event driven framework for 🔥 Hono.js </div>
55 lines (54 loc) • 1.95 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 action_exports = {};
__export(action_exports, {
BlazeServiceAction: () => BlazeServiceAction
});
module.exports = __toCommonJS(action_exports);
var import_handler = require("../handler/index");
var import_context = require("../internal/context/index");
var import_instance = require("../internal/event-emitter/instance");
class BlazeServiceAction {
serviceName;
actionName;
action;
constructor(options) {
this.serviceName = options.serviceName;
this.actionName = [this.serviceName, options.actionAlias].join(".");
this.action = options.action;
import_instance.BlazeEvent.on(this.actionName, this.actionHandler.bind(this));
}
async actionHandler(...values) {
const [body, params, headers, query] = values;
const ctx = await import_context.BlazeContext.create({
honoCtx: null,
body,
headers,
params,
query,
validator: this.action.validator ?? null,
meta: this.action.meta ?? null
});
return (0, import_handler.eventHandler)(this.action, ctx);
}
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
BlazeServiceAction
});