ravendb
Version:
RavenDB client for Node.js
36 lines • 1.11 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.JavaScriptMap = void 0;
const OsUtil_js_1 = require("../../Utility/OsUtil.js");
class JavaScriptMap {
_suffix;
_argCounter = 0;
_pathToMap;
_scriptLines = [];
_parameters = {};
constructor(suffix, pathToMap) {
this._suffix = suffix;
this._pathToMap = pathToMap;
}
set(key, value) {
const argumentName = this._getNextArgumentName();
this._scriptLines.push("this." + this._pathToMap + "." + key + " = args." + argumentName + ";");
this._parameters[argumentName] = value;
return this;
}
remove(key) {
this._scriptLines.push("delete this." + this._pathToMap + "." + key + ";");
return this;
}
_getNextArgumentName() {
return "val_" + this._argCounter++ + "_" + this._suffix;
}
getScript() {
return this._scriptLines.join(OsUtil_js_1.EOL);
}
get parameters() {
return this._parameters;
}
}
exports.JavaScriptMap = JavaScriptMap;
//# sourceMappingURL=JavaScriptMap.js.map