app-decorators
Version:
Collection of useful ES7 Decorators, writtin in ES6, that can be used for building webapps
49 lines (38 loc) • 1.29 kB
JavaScript
System.register(['app-decorators/src/libs/element-to-function'], function (_export, _context) {
"use strict";
var _elementToFunc, namespace;
return {
setters: [function (_appDecoratorsSrcLibsElementToFunction) {
_elementToFunc = _appDecoratorsSrcLibsElementToFunction.default;
}],
execute: function () {
_export('namespace', namespace = {
/**
* create a namespace on passed target
* @param {object} target
* @param {string} namespace_string
* @return {target}
*/
create: function create() {
var target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
var namespace_string = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
var add = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
var parts = namespace_string.split('.');
var parent = target;
for (var i = 0, length = parts.length; i < length; i++) {
if (typeof parent[parts[i]] === 'undefined') {
parent[parts[i]] = {};
}
if (add && i + 1 === length) {
parent[parts[i]] = add;
}
parent = parent[parts[i]];
}
return target;
}
});
_export('namespace', namespace);
}
};
});
//# sourceMappingURL=namespace.js.map