New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

peppermint-di

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

peppermint-di - npm Package Compare versions

Comparing version 1.0.4 to 1.0.5

7

CHANGELOG.md
# Change Log
## [1.0.5 - 2018-05-19](https://github.com/alonrbar/peppermint-di/tree/v1.0.5)
### Fixed
- Change webpack configuration for UMD bundling to workaround a bug in Webpack 4 (see: https://stackoverflow.com/questions/49111086/webpack-4-universal-library-target).
- Fix ModuleConcatenation bailout.
## [1.0.4 - 2018-05-19](https://github.com/alonrbar/peppermint-di/tree/v1.0.4)

@@ -4,0 +11,0 @@

363

dist/peppermint-di.js

@@ -10,3 +10,3 @@ (function webpackUniversalModuleDefinition(root, factory) {

root["peppermint-di"] = factory();
})(window, function() {
})(this, function() {
return /******/ (function(modules) { // webpackBootstrap

@@ -85,20 +85,119 @@ /******/ // The module cache

/***/ "./src/container.ts":
/*!**************************!*\
!*** ./src/container.ts ***!
\**************************/
/*! no static exports found */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
/***/ "./src/index.ts":
/*!**********************************!*\
!*** ./src/index.ts + 8 modules ***!
\**********************************/
/*! exports provided: Container, i, injectable, ResolveOptions, NestedError, ResolveError, TypeInferenceError */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
__webpack_require__(/*! reflect-metadata */ "reflect-metadata");
var errors_1 = __webpack_require__(/*! ./errors */ "./src/errors/index.ts");
var resolveOptions_1 = __webpack_require__(/*! ./resolveOptions */ "./src/resolveOptions.ts");
// CONCATENATED MODULE: ./src/errors/nestedError.ts
var __extends = (undefined && undefined.__extends) || (function () {
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var NestedError = (function (_super) {
__extends(NestedError, _super);
function NestedError(message, innerError) {
var _this = _super.call(this, message) || this;
_this.stack = NestedError.createStack(_this.stack, innerError);
Object.setPrototypeOf(_this, NestedError.prototype);
return _this;
}
NestedError.createStack = function (myStack, innerError) {
if (!innerError)
return myStack;
myStack += '\n------------------------------------------------\n';
myStack += 'Inner Error: ';
if (innerError instanceof Error) {
myStack += innerError.stack;
}
else {
myStack += innerError.toString();
}
return myStack;
};
return NestedError;
}(Error));
// CONCATENATED MODULE: ./src/errors/resolveError.ts
var resolveError_extends = (undefined && undefined.__extends) || (function () {
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var ResolveError = (function (_super) {
resolveError_extends(ResolveError, _super);
function ResolveError(key, innerErr) {
var _this = _super.call(this, "Failed to resolve '" + key + "'.", innerErr) || this;
Object.setPrototypeOf(_this, ResolveError.prototype);
return _this;
}
return ResolveError;
}(NestedError));
// CONCATENATED MODULE: ./src/errors/typeInferenceError.ts
var typeInferenceError_extends = (undefined && undefined.__extends) || (function () {
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var TypeInferenceError = (function (_super) {
typeInferenceError_extends(TypeInferenceError, _super);
function TypeInferenceError(message) {
var _this = _super.call(this, message) || this;
Object.setPrototypeOf(_this, TypeInferenceError.prototype);
return _this;
}
return TypeInferenceError;
}(Error));
// CONCATENATED MODULE: ./src/errors/index.ts
// EXTERNAL MODULE: external "reflect-metadata"
var external_reflect_metadata_ = __webpack_require__("reflect-metadata");
// CONCATENATED MODULE: ./src/resolveOptions.ts
var ResolveOptions = (function () {
function ResolveOptions() {
this.optionalParameters = false;
this.constructUnregistered = true;
this.params = {};
}
return ResolveOptions;
}());
// CONCATENATED MODULE: ./src/container.ts
var defaultsDeep = __webpack_require__(/*! lodash.defaultsdeep */ "lodash.defaultsdeep");
function emptyLogger(msg) {
}
var Container = (function () {
var container_Container = (function () {
function Container(logger) {

@@ -208,3 +307,3 @@ this.factories = new Map();

var keyStr = this.getKeyString(key);
options = defaultsDeep(options, new resolveOptions_1.ResolveOptions());
options = defaultsDeep(options, new ResolveOptions());
var fromParams = options.params[keyStr];

@@ -238,3 +337,3 @@ if (fromParams !== undefined) {

}
throw new errors_1.ResolveError(keyStr, new Error('Dependency is not registered.'));
throw new ResolveError(keyStr, new Error('Dependency is not registered.'));
};

@@ -247,3 +346,3 @@ Container.prototype.resolveFactory = function (key, factory) {

var keyStr = this.getKeyString(key);
throw new errors_1.ResolveError(keyStr, e);
throw new ResolveError(keyStr, e);
}

@@ -258,3 +357,3 @@ };

catch (e) {
throw new errors_1.ResolveError(keyStr, e);
throw new ResolveError(keyStr, e);
}

@@ -265,3 +364,3 @@ try {

catch (e) {
throw new errors_1.ResolveError(keyStr, e);
throw new ResolveError(keyStr, e);
}

@@ -296,3 +395,3 @@ this.potentialSingletons.delete(key);

catch (e) {
throw new errors_1.ResolveError(func.name || '<anonymous>', e);
throw new ResolveError(func.name || '<anonymous>', e);
}

@@ -312,3 +411,3 @@ dependencies.push(dependency);

if (!type)
throw new errors_1.TypeInferenceError("Can not infer type of argument in index " + index + " of the function '" + func.name + "'.");
throw new TypeInferenceError("Can not infer type of argument in index " + index + " of the function '" + func.name + "'.");
if (type.name !== 'Object' && type.name !== 'String')

@@ -357,160 +456,6 @@ return type;

}());
exports.Container = Container;
/***/ }),
// CONCATENATED MODULE: ./src/i.ts
/***/ "./src/errors/index.ts":
/*!*****************************!*\
!*** ./src/errors/index.ts ***!
\*****************************/
/*! no static exports found */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
function __export(m) {
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
}
Object.defineProperty(exports, "__esModule", { value: true });
__export(__webpack_require__(/*! ./nestedError */ "./src/errors/nestedError.ts"));
__export(__webpack_require__(/*! ./resolveError */ "./src/errors/resolveError.ts"));
__export(__webpack_require__(/*! ./typeInferenceError */ "./src/errors/typeInferenceError.ts"));
/***/ }),
/***/ "./src/errors/nestedError.ts":
/*!***********************************!*\
!*** ./src/errors/nestedError.ts ***!
\***********************************/
/*! no static exports found */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
var NestedError = (function (_super) {
__extends(NestedError, _super);
function NestedError(message, innerError) {
var _this = _super.call(this, message) || this;
_this.stack = NestedError.createStack(_this.stack, innerError);
Object.setPrototypeOf(_this, NestedError.prototype);
return _this;
}
NestedError.createStack = function (myStack, innerError) {
if (!innerError)
return myStack;
myStack += '\n------------------------------------------------\n';
myStack += 'Inner Error: ';
if (innerError instanceof Error) {
myStack += innerError.stack;
}
else {
myStack += innerError.toString();
}
return myStack;
};
return NestedError;
}(Error));
exports.NestedError = NestedError;
/***/ }),
/***/ "./src/errors/resolveError.ts":
/*!************************************!*\
!*** ./src/errors/resolveError.ts ***!
\************************************/
/*! no static exports found */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
var nestedError_1 = __webpack_require__(/*! ./nestedError */ "./src/errors/nestedError.ts");
var ResolveError = (function (_super) {
__extends(ResolveError, _super);
function ResolveError(key, innerErr) {
var _this = _super.call(this, "Failed to resolve '" + key + "'.", innerErr) || this;
Object.setPrototypeOf(_this, ResolveError.prototype);
return _this;
}
return ResolveError;
}(nestedError_1.NestedError));
exports.ResolveError = ResolveError;
/***/ }),
/***/ "./src/errors/typeInferenceError.ts":
/*!******************************************!*\
!*** ./src/errors/typeInferenceError.ts ***!
\******************************************/
/*! no static exports found */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
var TypeInferenceError = (function (_super) {
__extends(TypeInferenceError, _super);
function TypeInferenceError(message) {
var _this = _super.call(this, message) || this;
Object.setPrototypeOf(_this, TypeInferenceError.prototype);
return _this;
}
return TypeInferenceError;
}(Error));
exports.TypeInferenceError = TypeInferenceError;
/***/ }),
/***/ "./src/i.ts":
/*!******************!*\
!*** ./src/i.ts ***!
\******************/
/*! no static exports found */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
__webpack_require__(/*! reflect-metadata */ "reflect-metadata");
function i(interfaceSymbol) {

@@ -523,70 +468,22 @@ return function (target, parameterName, parameterIndex) {

}
exports.i = i;
/***/ }),
/***/ "./src/index.ts":
/*!**********************!*\
!*** ./src/index.ts ***!
\**********************/
/*! no static exports found */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
function __export(m) {
for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
// CONCATENATED MODULE: ./src/injectable.ts
function injectable(constructor) {
}
Object.defineProperty(exports, "__esModule", { value: true });
__export(__webpack_require__(/*! ./errors */ "./src/errors/index.ts"));
__export(__webpack_require__(/*! ./container */ "./src/container.ts"));
__export(__webpack_require__(/*! ./i */ "./src/i.ts"));
__export(__webpack_require__(/*! ./injectable */ "./src/injectable.ts"));
__export(__webpack_require__(/*! ./resolveOptions */ "./src/resolveOptions.ts"));
// CONCATENATED MODULE: ./src/index.ts
/* concated harmony reexport */__webpack_require__.d(__webpack_exports__, "NestedError", function() { return NestedError; });
/* concated harmony reexport */__webpack_require__.d(__webpack_exports__, "ResolveError", function() { return ResolveError; });
/* concated harmony reexport */__webpack_require__.d(__webpack_exports__, "TypeInferenceError", function() { return TypeInferenceError; });
/* concated harmony reexport */__webpack_require__.d(__webpack_exports__, "Container", function() { return container_Container; });
/* concated harmony reexport */__webpack_require__.d(__webpack_exports__, "i", function() { return i; });
/* concated harmony reexport */__webpack_require__.d(__webpack_exports__, "injectable", function() { return injectable; });
/* concated harmony reexport */__webpack_require__.d(__webpack_exports__, "ResolveOptions", function() { return ResolveOptions; });
/***/ }),
/***/ "./src/injectable.ts":
/*!***************************!*\
!*** ./src/injectable.ts ***!
\***************************/
/*! no static exports found */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
function injectable(constructor) {
}
exports.injectable = injectable;
/***/ }),
/***/ "./src/resolveOptions.ts":
/*!*******************************!*\
!*** ./src/resolveOptions.ts ***!
\*******************************/
/*! no static exports found */
/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var ResolveOptions = (function () {
function ResolveOptions() {
this.optionalParameters = false;
this.constructUnregistered = true;
this.params = {};
}
return ResolveOptions;
}());
exports.ResolveOptions = ResolveOptions;
/***/ }),

@@ -593,0 +490,0 @@

@@ -1,1 +0,1 @@

!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define("peppermint-di",[],e):"object"==typeof exports?exports["peppermint-di"]=e():t["peppermint-di"]=e()}(window,function(){return function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:r})},n.r=function(t){Object.defineProperty(t,"__esModule",{value:!0})},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=11)}([function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){return function(){this.optionalParameters=!1,this.constructUnregistered=!0,this.params={}}}();e.ResolveOptions=r},function(t,e){t.exports=require("reflect-metadata")},function(t,e,n){"use strict";var r,o=this&&this.__extends||(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var i=function(t){function e(n,r){var o=t.call(this,n)||this;return o.stack=e.createStack(o.stack,r),Object.setPrototypeOf(o,e.prototype),o}return o(e,t),e.createStack=function(t,e){return e?(t+="\n------------------------------------------------\n",t+="Inner Error: ",e instanceof Error?t+=e.stack:t+=e.toString(),t):t},e}(Error);e.NestedError=i},function(t,e,n){"use strict";function r(t){for(var n in t)e.hasOwnProperty(n)||(e[n]=t[n])}Object.defineProperty(e,"__esModule",{value:!0}),r(n(2)),r(n(9)),r(n(8))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.injectable=function(t){}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(1),e.i=function(t){return function(e,n,r){var o=Reflect.getMetadata("design:paramtypes",e);o[r]=t,Reflect.defineMetadata("design:paramtypes",o,e)}}},function(t,e){t.exports=require("lodash.defaultsdeep")},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(1);var r=n(3),o=n(0),i=n(6);function s(t){}var c=function(){function t(t){this.factories=new Map,this.potentialSingletons=new Map,this.singletons=new Map,this.logger=t||s}return Object.defineProperty(t,"canReflect",{get:function(){if(void 0===t._canReflect)try{t._canReflect=!(!Reflect||!Reflect.construct)}catch(e){t._canReflect=!1}return t._canReflect},enumerable:!0,configurable:!0}),t.prototype.register=function(t,e){var n=this;this.validateKey(t);var r=this.getKeyString(t);if(null!==e&&void 0!==e||"function"!=typeof t){if(!e)throw new Error("Missing argument 'type'.");if("function"!=typeof e)throw new Error("Invalid argument 'type'. Constructor function expected.");this.logger("Registering '"+r+"' (type as constructor)"),this.factories.set(t,function(){return n.resolveCTor(e,null)})}else this.logger("Registering '"+r+"' (key as constructor)"),this.factories.set(t,function(){return n.resolveCTor(t,null)})},t.prototype.registerFactory=function(t,e){if(this.validateKey(t),"function"!=typeof e)throw new Error("Invalid argument '"+e+"'. Factory function expected.");var n=this.getKeyString(t);this.logger("Registering '"+n+"' (factory callback)"),this.factories.set(t,e)},t.prototype.registerSingle=function(t,e){var n=this;this.validateKey(t);var r=this.getKeyString(t);if(null!==e&&void 0!==e||"function"!=typeof t)if("object"==typeof e)this.logger("Registering '"+r+"' as singleton (value as instance)"),this.singletons.set(t,e);else{if("function"!=typeof e)throw new Error("Invalid argument 'value'. Expected object or function.");this.logger("Registering '"+r+"' as singleton (value as constructor)"),this.potentialSingletons.set(t,function(){return n.resolveCTor(e,null)})}else this.logger("Registering '"+r+"' as singleton (key as constructor)"),this.potentialSingletons.set(t,function(){return n.resolveCTor(t,null)})},t.prototype.registerSingleFactory=function(t,e){if(this.validateKey(t),"function"!=typeof e)throw new Error("Invalid argument '"+e+"'. Factory function expected.");var n=this.getKeyString(t);this.logger("Registering '"+n+"' as singleton (factory callback)"),this.potentialSingletons.set(t,e)},t.prototype.get=function(t,e){return this.validateKey(t),this.resolveSingleDependency(t,e)},t.prototype.call=function(t,e,n){var r=this.resolveDependencies(t,n);return t.apply(e,r)},t.prototype.validateKey=function(t){if("string"!=typeof t&&"function"!=typeof t&&"symbol"!=typeof t)throw new Error("Invalid argument 'key'. Expected string, symbol or function. Received: "+JSON.stringify(t)+".")},t.prototype.getKeyString=function(t){return"string"==typeof t?t:"function"==typeof t?t.name:t.toString()},t.prototype.resolveSingleDependency=function(t,e){var n=this.getKeyString(t),s=(e=i(e,new o.ResolveOptions)).params[n];if(void 0!==s)return this.logger("Resolving '"+n+"' from params"),s;var c=this.factories.get(t);if(void 0!==c)return this.logger("Resolving '"+n+"' from internal registry"),this.resolveFactory(t,c);var a=this.singletons.get(t);if(void 0!==a)return this.logger("Resolving '"+n+"' from internal registry (singleton)"),a;var u=this.potentialSingletons.get(t);if(void 0!==u)return this.logger("Resolving '"+n+"' from internal registry (singleton factory)"),this.resolveSingletonFactory(t,u);if(e.constructUnregistered&&"function"==typeof t)return this.logger("Resolving '"+n+"' by invoking as constructor"),this.resolveCTor(t,e);if(!e.optionalParameters)throw new r.ResolveError(n,new Error("Dependency is not registered."));this.logger("Resolving '"+n+"' as optional parameter (undefined)")},t.prototype.resolveFactory=function(t,e){try{return e()}catch(e){var n=this.getKeyString(t);throw new r.ResolveError(n,e)}},t.prototype.resolveSingletonFactory=function(t,e){var n,o=this.getKeyString(t);try{n=e()}catch(t){throw new r.ResolveError(o,t)}try{this.singletons.set(t,n)}catch(t){throw new r.ResolveError(o,t)}return this.potentialSingletons.delete(t),n},t.prototype.resolveCTor=function(e,n){var r=this.resolveDependencies(e,n);if(t.canReflect)return Reflect.construct(e,r);var o=function(){e.apply(this,r)};return o.prototype=e.prototype,new o},t.prototype.resolveDependencies=function(t,e){if("function"!=typeof t)throw new Error("Invalid argument 'func'. Expected function.");for(var n=[],o=0,i=this.getArgumentKeys(t);o<i.length;o++){var s=i[o],c=void 0;try{c=this.resolveSingleDependency(s,e)}catch(e){throw new r.ResolveError(t.name||"<anonymous>",e)}n.push(c)}return n},t.prototype.getArgumentKeys=function(t){var e=this.getArgumentNames(t),n=this.getArgumentTypes(t);if(!n||!n.length)return e;if(e.length!==n.length)throw new Error("Failed reflecting function arguments.");var o=n.map(function(n,o){if(!n)throw new r.TypeInferenceError("Can not infer type of argument in index "+o+" of the function '"+t.name+"'.");return"Object"!==n.name&&"String"!==n.name?n:e[o]}),i=o.map(function(t){return"function"==typeof t?t.name:t});return this.logger("Arguments of '"+t.name+"': "+JSON.stringify(i)),o},t.prototype.getArgumentNames=function(t){var e,n=t.toString().match(/^function\s*?[^\(]*?\(\s*?([^\)]*?)\)/m),r=t.toString().match(/^class[\s\S]*?constructor\s*?[^\(]*?\(\s*?([^\)]*?)\)/m);if(r&&r.length)this.logger("Function '"+t.name+"' declared as es5 class"),e=r[1];else{if(!n||!n.length)return this.logger("Could not detect arguments of '"+t.name+"'"),[];this.logger("Function '"+t.name+"' declared as standard function"),e=n[1]}return e=e.split(",").map(function(t){return t.trim()}).filter(function(t){return""!==t})},t.prototype.getArgumentTypes=function(e){return t.canReflect?Reflect.getMetadata("design:paramtypes",e):[]},t}();e.Container=c},function(t,e,n){"use strict";var r,o=this&&this.__extends||(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var i=function(t){function e(n){var r=t.call(this,n)||this;return Object.setPrototypeOf(r,e.prototype),r}return o(e,t),e}(Error);e.TypeInferenceError=i},function(t,e,n){"use strict";var r,o=this&&this.__extends||(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var i=function(t){function e(n,r){var o=t.call(this,"Failed to resolve '"+n+"'.",r)||this;return Object.setPrototypeOf(o,e.prototype),o}return o(e,t),e}(n(2).NestedError);e.ResolveError=i},function(t,e,n){"use strict";function r(t){for(var n in t)e.hasOwnProperty(n)||(e[n]=t[n])}Object.defineProperty(e,"__esModule",{value:!0}),r(n(3)),r(n(7)),r(n(5)),r(n(4)),r(n(0))},function(t,e,n){t.exports=n(10)}])});
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define("peppermint-di",[],e):"object"==typeof exports?exports["peppermint-di"]=e():t["peppermint-di"]=e()}(this,function(){return function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:r})},n.r=function(t){Object.defineProperty(t,"__esModule",{value:!0})},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=3)}([function(t,e){t.exports=require("reflect-metadata")},function(t,e,n){"use strict";n.r(e);var r,o=(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),i=function(t){function e(n,r){var o=t.call(this,n)||this;return o.stack=e.createStack(o.stack,r),Object.setPrototypeOf(o,e.prototype),o}return o(e,t),e.createStack=function(t,e){return e?(t+="\n------------------------------------------------\n",t+="Inner Error: ",e instanceof Error?t+=e.stack:t+=e.toString(),t):t},e}(Error),s=function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),c=function(t){function e(n,r){var o=t.call(this,"Failed to resolve '"+n+"'.",r)||this;return Object.setPrototypeOf(o,e.prototype),o}return s(e,t),e}(i),a=function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),u=function(t){function e(n){var r=t.call(this,n)||this;return Object.setPrototypeOf(r,e.prototype),r}return a(e,t),e}(Error),f=(n(0),function(){return function(){this.optionalParameters=!1,this.constructUnregistered=!0,this.params={}}}()),l=n(2);function p(t){}var g=function(){function t(t){this.factories=new Map,this.potentialSingletons=new Map,this.singletons=new Map,this.logger=t||p}return Object.defineProperty(t,"canReflect",{get:function(){if(void 0===t._canReflect)try{t._canReflect=!(!Reflect||!Reflect.construct)}catch(e){t._canReflect=!1}return t._canReflect},enumerable:!0,configurable:!0}),t.prototype.register=function(t,e){var n=this;this.validateKey(t);var r=this.getKeyString(t);if(null!==e&&void 0!==e||"function"!=typeof t){if(!e)throw new Error("Missing argument 'type'.");if("function"!=typeof e)throw new Error("Invalid argument 'type'. Constructor function expected.");this.logger("Registering '"+r+"' (type as constructor)"),this.factories.set(t,function(){return n.resolveCTor(e,null)})}else this.logger("Registering '"+r+"' (key as constructor)"),this.factories.set(t,function(){return n.resolveCTor(t,null)})},t.prototype.registerFactory=function(t,e){if(this.validateKey(t),"function"!=typeof e)throw new Error("Invalid argument '"+e+"'. Factory function expected.");var n=this.getKeyString(t);this.logger("Registering '"+n+"' (factory callback)"),this.factories.set(t,e)},t.prototype.registerSingle=function(t,e){var n=this;this.validateKey(t);var r=this.getKeyString(t);if(null!==e&&void 0!==e||"function"!=typeof t)if("object"==typeof e)this.logger("Registering '"+r+"' as singleton (value as instance)"),this.singletons.set(t,e);else{if("function"!=typeof e)throw new Error("Invalid argument 'value'. Expected object or function.");this.logger("Registering '"+r+"' as singleton (value as constructor)"),this.potentialSingletons.set(t,function(){return n.resolveCTor(e,null)})}else this.logger("Registering '"+r+"' as singleton (key as constructor)"),this.potentialSingletons.set(t,function(){return n.resolveCTor(t,null)})},t.prototype.registerSingleFactory=function(t,e){if(this.validateKey(t),"function"!=typeof e)throw new Error("Invalid argument '"+e+"'. Factory function expected.");var n=this.getKeyString(t);this.logger("Registering '"+n+"' as singleton (factory callback)"),this.potentialSingletons.set(t,e)},t.prototype.get=function(t,e){return this.validateKey(t),this.resolveSingleDependency(t,e)},t.prototype.call=function(t,e,n){var r=this.resolveDependencies(t,n);return t.apply(e,r)},t.prototype.validateKey=function(t){if("string"!=typeof t&&"function"!=typeof t&&"symbol"!=typeof t)throw new Error("Invalid argument 'key'. Expected string, symbol or function. Received: "+JSON.stringify(t)+".")},t.prototype.getKeyString=function(t){return"string"==typeof t?t:"function"==typeof t?t.name:t.toString()},t.prototype.resolveSingleDependency=function(t,e){var n=this.getKeyString(t),r=(e=l(e,new f)).params[n];if(void 0!==r)return this.logger("Resolving '"+n+"' from params"),r;var o=this.factories.get(t);if(void 0!==o)return this.logger("Resolving '"+n+"' from internal registry"),this.resolveFactory(t,o);var i=this.singletons.get(t);if(void 0!==i)return this.logger("Resolving '"+n+"' from internal registry (singleton)"),i;var s=this.potentialSingletons.get(t);if(void 0!==s)return this.logger("Resolving '"+n+"' from internal registry (singleton factory)"),this.resolveSingletonFactory(t,s);if(e.constructUnregistered&&"function"==typeof t)return this.logger("Resolving '"+n+"' by invoking as constructor"),this.resolveCTor(t,e);if(!e.optionalParameters)throw new c(n,new Error("Dependency is not registered."));this.logger("Resolving '"+n+"' as optional parameter (undefined)")},t.prototype.resolveFactory=function(t,e){try{return e()}catch(e){var n=this.getKeyString(t);throw new c(n,e)}},t.prototype.resolveSingletonFactory=function(t,e){var n,r=this.getKeyString(t);try{n=e()}catch(t){throw new c(r,t)}try{this.singletons.set(t,n)}catch(t){throw new c(r,t)}return this.potentialSingletons.delete(t),n},t.prototype.resolveCTor=function(e,n){var r=this.resolveDependencies(e,n);if(t.canReflect)return Reflect.construct(e,r);var o=function(){e.apply(this,r)};return o.prototype=e.prototype,new o},t.prototype.resolveDependencies=function(t,e){if("function"!=typeof t)throw new Error("Invalid argument 'func'. Expected function.");for(var n=[],r=0,o=this.getArgumentKeys(t);r<o.length;r++){var i=o[r],s=void 0;try{s=this.resolveSingleDependency(i,e)}catch(e){throw new c(t.name||"<anonymous>",e)}n.push(s)}return n},t.prototype.getArgumentKeys=function(t){var e=this.getArgumentNames(t),n=this.getArgumentTypes(t);if(!n||!n.length)return e;if(e.length!==n.length)throw new Error("Failed reflecting function arguments.");var r=n.map(function(n,r){if(!n)throw new u("Can not infer type of argument in index "+r+" of the function '"+t.name+"'.");return"Object"!==n.name&&"String"!==n.name?n:e[r]}),o=r.map(function(t){return"function"==typeof t?t.name:t});return this.logger("Arguments of '"+t.name+"': "+JSON.stringify(o)),r},t.prototype.getArgumentNames=function(t){var e,n=t.toString().match(/^function\s*?[^\(]*?\(\s*?([^\)]*?)\)/m),r=t.toString().match(/^class[\s\S]*?constructor\s*?[^\(]*?\(\s*?([^\)]*?)\)/m);if(r&&r.length)this.logger("Function '"+t.name+"' declared as es5 class"),e=r[1];else{if(!n||!n.length)return this.logger("Could not detect arguments of '"+t.name+"'"),[];this.logger("Function '"+t.name+"' declared as standard function"),e=n[1]}return e=e.split(",").map(function(t){return t.trim()}).filter(function(t){return""!==t})},t.prototype.getArgumentTypes=function(e){return t.canReflect?Reflect.getMetadata("design:paramtypes",e):[]},t}();function y(t){return function(e,n,r){var o=Reflect.getMetadata("design:paramtypes",e);o[r]=t,Reflect.defineMetadata("design:paramtypes",o,e)}}function h(t){}n.d(e,"NestedError",function(){return i}),n.d(e,"ResolveError",function(){return c}),n.d(e,"TypeInferenceError",function(){return u}),n.d(e,"Container",function(){return g}),n.d(e,"i",function(){return y}),n.d(e,"injectable",function(){return h}),n.d(e,"ResolveOptions",function(){return f})},function(t,e){t.exports=require("lodash.defaultsdeep")},function(t,e,n){t.exports=n(1)}])});
{
"name": "peppermint-di",
"version": "1.0.4",
"version": "1.0.5",
"description": "Dependency injection container for TypeScript and JavaScript",

@@ -5,0 +5,0 @@ "keywords": [

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc