@lattice/core
Version:
19 lines (18 loc) • 811 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var inversify_1 = require("inversify");
var _1 = require(".");
var inject_1 = require("../../inject");
var utils_1 = require("../../utils");
exports.CONTROLLER_TOKEN = '__controller__';
function Controller(uri) {
if (uri === void 0) { uri = ''; }
return function (target) {
var metaList = Reflect.getMetadata(_1.METHOD_META_LIST, target) || [];
metaList.forEach(function (matcher) { return matcher.uri = utils_1.UriUtils.join(uri, matcher.uri); });
Reflect.defineMetadata(_1.METHOD_META_LIST, metaList, target);
inject_1.controllerContainer.bind(exports.CONTROLLER_TOKEN).to(target).inSingletonScope();
return inversify_1.injectable()(target);
};
}
exports.Controller = Controller;