2016-02-17 20:44:40 +00:00
|
|
|
/// <reference path="typings/main.d.ts" />
|
|
|
|
var plugins = require("./smartenv.plugins");
|
|
|
|
exports.obs = {
|
|
|
|
add: function (paramNameArg, objectArg) {
|
|
|
|
if (paramNameArg === void 0) { paramNameArg = "undefined"; }
|
|
|
|
if (objectArg === void 0) { objectArg = "undefined"; }
|
|
|
|
if (paramNameArg == "undefined") {
|
2016-02-23 15:31:50 +00:00
|
|
|
console.log("paramName is undefined");
|
2016-02-17 20:44:40 +00:00
|
|
|
return;
|
|
|
|
}
|
|
|
|
if (objectArg == "undefined") {
|
2016-02-23 15:31:50 +00:00
|
|
|
console.log("objectArg is undefined");
|
2016-02-17 20:44:40 +00:00
|
|
|
}
|
|
|
|
if (typeof exports.obsItems[paramNameArg] === "undefined") {
|
|
|
|
exports.obsItems[paramNameArg] = objectArg;
|
|
|
|
}
|
|
|
|
else {
|
2016-02-23 15:31:50 +00:00
|
|
|
console.log("object is already present, so add operation has failed.");
|
2016-02-17 20:44:40 +00:00
|
|
|
}
|
|
|
|
return exports.obsItems[paramNameArg];
|
|
|
|
},
|
|
|
|
replace: function (paramNameArg, objectArg) {
|
|
|
|
exports.obsItems[paramNameArg] = objectArg;
|
|
|
|
},
|
|
|
|
merge: function (paramNameArg, objectArg) {
|
|
|
|
if (!(typeof exports.obsItems[paramNameArg] === "undefined")) {
|
|
|
|
exports.obsItems[paramNameArg] = plugins._.assign(exports.obsItems[paramNameArg], objectArg);
|
|
|
|
}
|
|
|
|
else {
|
2016-02-23 15:31:50 +00:00
|
|
|
console.log("object is not present, so there is nothing to merge");
|
2016-02-17 20:44:40 +00:00
|
|
|
}
|
|
|
|
},
|
|
|
|
get: function (keyName) {
|
|
|
|
return exports.obsItems[keyName];
|
|
|
|
},
|
|
|
|
getAll: function () {
|
|
|
|
return exports.obsItems;
|
|
|
|
},
|
|
|
|
addComplete: function (itemsArg) {
|
|
|
|
exports.obsItems = plugins._.assign(exports.obsItems, itemsArg);
|
|
|
|
return exports.obsItems;
|
|
|
|
}
|
|
|
|
};
|
|
|
|
exports.obsItems = {};
|
|
|
|
|
2016-02-23 15:31:50 +00:00
|
|
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNtYXJ0ZW52Lm9iamVjdHN0b3JhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMENBQTBDO0FBQzFDLElBQU8sT0FBTyxXQUFXLG9CQUFvQixDQUFDLENBQUM7QUFDcEMsV0FBRyxHQUFPO0lBQ2pCLEdBQUcsRUFBRSxVQUFTLFlBQTBCLEVBQUMsU0FBdUI7UUFBbEQsNEJBQTBCLEdBQTFCLDBCQUEwQjtRQUFDLHlCQUF1QixHQUF2Qix1QkFBdUI7UUFDNUQsRUFBRSxDQUFDLENBQUMsWUFBWSxJQUFJLFdBQVcsQ0FBQyxDQUFBLENBQUM7WUFDN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1lBQ3RDLE1BQU0sQ0FBQztRQUNYLENBQUM7UUFDRCxFQUFFLENBQUMsQ0FBQyxTQUFTLElBQUksV0FBVyxDQUFDLENBQUEsQ0FBQztZQUMxQixPQUFPLENBQUMsR0FBRyxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDMUMsQ0FBQztRQUNELEVBQUUsQ0FBQyxDQUFDLE9BQU8sZ0JBQVEsQ0FBQyxZQUFZLENBQUMsS0FBSyxXQUFXLENBQUMsQ0FBQSxDQUFDO1lBQy9DLGdCQUFRLENBQUMsWUFBWSxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQ3ZDLENBQUM7UUFBQyxJQUFJLENBQUMsQ0FBQztZQUNKLE9BQU8sQ0FBQyxHQUFHLENBQUMseURBQXlELENBQUMsQ0FBQztRQUMzRSxDQUFDO1FBQ0QsTUFBTSxDQUFDLGdCQUFRLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUNELE9BQU8sRUFBRSxVQUFTLFlBQVksRUFBQyxTQUFTO1FBQ3BDLGdCQUFRLENBQUMsWUFBWSxDQUFDLEdBQUcsU0FBUyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCxLQUFLLEVBQUUsVUFBUyxZQUFZLEVBQUMsU0FBUztRQUNsQyxFQUFFLENBQUEsQ0FBQyxDQUFDLENBQUMsT0FBTyxnQkFBUSxDQUFDLFlBQVksQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUEsQ0FBQztZQUNqRCxnQkFBUSxDQUFDLFlBQVksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGdCQUFRLENBQUMsWUFBWSxDQUFDLEVBQUMsU0FBUyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUFDLElBQUksQ0FBQyxDQUFDO1lBQ0osT0FBTyxDQUFDLEdBQUcsQ0FBQyxxREFBcUQsQ0FBQyxDQUFDO1FBQ3ZFLENBQUM7SUFDTCxDQUFDO0lBQ0QsR0FBRyxFQUFFLFVBQVMsT0FBTztRQUNqQixNQUFNLENBQUMsZ0JBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBQ0QsTUFBTSxFQUFFO1FBQ0osTUFBTSxDQUFDLGdCQUFRLENBQUM7SUFDcEIsQ0FBQztJQUNELFdBQVcsRUFBRSxVQUFTLFFBQVE7UUFDMUIsZ0JBQVEsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxnQkFBUSxFQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQy9DLE1BQU0sQ0FBQyxnQkFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSixDQUFDO0FBQ1MsZ0JBQVEsR0FBTyxFQUFFLENBQUMiLCJmaWxlIjoic21hcnRlbnYub2JqZWN0c3RvcmFnZS5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHBhdGg9XCJ0eXBpbmdzL21haW4uZC50c1wiIC8+XG5pbXBvcnQgcGx1Z2lucyA9IHJlcXVpcmUoXCIuL3NtYXJ0ZW52LnBsdWdpbnNcIik7XG5leHBvcnQgdmFyIG9iczphbnkgPSB7XG4gICAgYWRkOiBmdW5jdGlvbihwYXJhbU5hbWVBcmcgPSBcInVuZGVmaW5lZFwiLG9iamVjdEFyZyA9IFwidW5kZWZpbmVkXCIpIHtcbiAgICAgICAgaWYgKHBhcmFtTmFtZUFyZyA9PSBcInVuZGVmaW5lZFwiKXtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwicGFyYW1OYW1lIGlzIHVuZGVmaW5lZFwiKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAob2JqZWN0QXJnID09IFwidW5kZWZpbmVkXCIpe1xuICAgICAgICAgICAgY29uc29sZS5sb2coXCJvYmplY3RBcmcgaXMgdW5kZWZpbmVkXCIpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2Ygb2JzSXRlbXNbcGFyYW1OYW1lQXJnXSA9PT0gXCJ1bmRlZmluZWRcIil7XG4gICAgICAgICAgICBvYnNJdGVtc1twYXJhbU5hbWVBcmddID0gb2JqZWN0QXJnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc29sZS5sb2coXCJvYmplY3QgaXMgYWxyZWFkeSBwcmVzZW50LCBzbyBhZGQgb3BlcmF0aW9uIGhhcyBmYWlsZWQuXCIpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvYnNJdGVtc1twYXJhbU5hbWVBcmddO1xuICAgIH0sXG4gICAgcmVwbGFjZTogZnVuY3Rpb24ocGFyYW1OYW1lQXJnLG9iamVjdEFyZyl7XG4gICAgICAgIG9ic0l0ZW1zW3BhcmFtTmFtZUFyZ10gPSBvYmplY3RBcmc7XG4gICAgfSxcbiAgICBtZXJnZTogZnVuY3Rpb24ocGFyYW1OYW1lQXJnLG9iamVjdEFyZyl7XG4gICAgICAgIGlmKCEodHlwZW9mIG9ic0l0ZW1zW3BhcmFtTmFtZUFyZ10gPT09IFwidW5kZWZpbmVkXCIpKXtcbiAgICAgICAgICAgIG9ic0l0ZW1zW3BhcmFtTmFtZUFyZ10gPSBwbHVnaW5zLl8uYXNzaWduKG9ic0l0ZW1zW3BhcmFtTmFtZUFyZ10sb2JqZWN0QXJnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwib2JqZWN0IGlzIG5vdCBwcmVzZW50LCBzbyB0aGVyZSBpcyBub3RoaW5nIHRvIG1lcmdlXCIpO1xuICAgICAgICB9XG4gICAgfSxcbiAgICBnZXQ6IGZ1bmN0aW9uKGtleU5hbWUpIHtcbiAgICAgICAgcmV0dXJuIG9ic0l0ZW1zW2tleU5hbWVdO1xuICAgIH0sXG4gICAgZ2V0QWxsOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHJldHVybiBvYnNJdGVtcztcbiAgICB9LFxuICAgIGFkZENvbXBsZXRlOiBmdW5jdGlvbihpdGVtc0FyZykge1xuICAgICAgICBvYnNJdGVtcyA9IHBsdWdpbnMuXy5hc3NpZ24ob2JzSXRlbXMsaXRlbXNBcmcpO1xuICAgICAgICByZXR1cm4gb2JzSXRlbXM7XG4gICAgfVxufTtcbmV4cG9ydCB2YXIgb2JzSXRlbXM6YW55ID0ge307Il0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9
|