nats-micro
Version:
NATS micro compatible extra-lightweight microservice library
18 lines • 1.25 kB
JavaScript
;
/* eslint-disable @typescript-eslint/no-explicit-any */
Object.defineProperty(exports, "__esModule", { value: true });
exports.microservice = void 0;
const storage_js_1 = require("./storage.js");
const index_js_1 = require("../utils/index.js");
function microservice(options) {
return (target,
// eslint-disable-next-line @typescript-eslint/no-unused-vars
context) => {
var _a, _b, _c, _d;
const name = (_a = options === null || options === void 0 ? void 0 : options.name) !== null && _a !== void 0 ? _a : (0, index_js_1.kebabCase)(target.name.replace(/microservice/i, ''));
const ms = storage_js_1.storage.ensureClassAdded(target.prototype);
ms.config = Object.assign(Object.assign(Object.assign({}, ms.config), options), { name, description: (_b = options === null || options === void 0 ? void 0 : options.description) !== null && _b !== void 0 ? _b : '', version: (_c = options === null || options === void 0 ? void 0 : options.version) !== null && _c !== void 0 ? _c : '0.0.0', metadata: (_d = options === null || options === void 0 ? void 0 : options.metadata) !== null && _d !== void 0 ? _d : {} });
};
}
exports.microservice = microservice;
//# sourceMappingURL=microservice.js.map