UNPKG

@tsed/common

Version:
47 lines 1.52 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createHandlerMetadata = void 0; const HandlerType_1 = require("../../mvc/interfaces/HandlerType"); const EndpointMetadata_1 = require("../../mvc/models/EndpointMetadata"); const HandlerMetadata_1 = require("../../mvc/models/HandlerMetadata"); function isMetadata(input) { return input instanceof HandlerMetadata_1.HandlerMetadata; } /** * @ignore */ function createHandlerMetadata(injector, obj, routeOptions = {}) { if (isMetadata(obj)) { return obj; } let options; if (obj instanceof EndpointMetadata_1.EndpointMetadata) { const provider = injector.getProvider(obj.token); options = { token: provider.token, target: provider.useClass, type: HandlerType_1.HandlerType.ENDPOINT, propertyKey: obj.propertyKey }; } else { const provider = injector.getProvider(obj); if (provider) { options = { token: provider.token, target: provider.useClass, type: HandlerType_1.HandlerType.MIDDLEWARE, propertyKey: "use" }; } else { options = { target: obj }; } } options.routeOptions = routeOptions; return new HandlerMetadata_1.HandlerMetadata(options); } exports.createHandlerMetadata = createHandlerMetadata; //# sourceMappingURL=createHandlerMetadata.js.map