1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.injectBase = void 0;
|
4 | var error_msgs_1 = require("../constants/error_msgs");
|
5 | var metadata_1 = require("../planning/metadata");
|
6 | var decorator_utils_1 = require("./decorator_utils");
|
7 | function injectBase(metadataKey) {
|
8 | return function (serviceIdentifier) {
|
9 | return function (target, targetKey, indexOrPropertyDescriptor) {
|
10 | if (serviceIdentifier === undefined) {
|
11 | var className = typeof target === "function" ? target.name : target.constructor.name;
|
12 | throw new Error((0, error_msgs_1.UNDEFINED_INJECT_ANNOTATION)(className));
|
13 | }
|
14 | return (0, decorator_utils_1.createTaggedDecorator)(new metadata_1.Metadata(metadataKey, serviceIdentifier))(target, targetKey, indexOrPropertyDescriptor);
|
15 | };
|
16 | };
|
17 | }
|
18 | exports.injectBase = injectBase;
|
19 |
|
\ | No newline at end of file |