redux-providers
Version:
Minimalist dependency injection system for redux. Create providers to be injected and used in redux reducers.
19 lines • 801 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const metadata_keys_1 = require("../../constants/metadata.keys");
const error_msgs_1 = require("../../constants/error-msgs");
class BaseProvider {
}
exports.BaseProvider = BaseProvider;
function Provider() {
return (target) => {
if (Reflect.hasOwnMetadata(metadata_keys_1.METADATA_KEY.PROVIDER_PARAM_TYPES, target)) {
throw new Error(error_msgs_1.ERRORS_MSGS.DUPLICATED_PROVIDER_DECORATOR);
}
var types = Reflect.getMetadata(metadata_keys_1.METADATA_KEY.DESIGN_PARAM_TYPES, target) || [];
Reflect.defineMetadata(metadata_keys_1.METADATA_KEY.PROVIDER_PARAM_TYPES, types, target);
return target;
};
}
exports.Provider = Provider;
//# sourceMappingURL=provider.js.map