@kontur.candy/tools 2.133.0 → 2.135.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,14 @@
1
+ <a name="2.135.0"></a>
2
+ # [2.135.0](https://git.skbkontur.ru/ke/candy-utils/compare/release/tools/v2.134.0...release/tools/v2.135.0) (2022-10-31)
3
+
4
+ <a name="2.134.0"></a>
5
+ # [2.134.0](https://git.skbkontur.ru/ke/candy-utils/compare/release/tools/v2.133.0...release/tools/v2.134.0) (2022-10-26)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * **Tools:** исправлена ошибка с перезатираением параметра autoCalculationCalculatorImpl при обновлении ([baf113c](https://git.skbkontur.ru/ke/candy-utils/commit/baf113c)), see [#7184](https://yt.skbkontur.ru/issue/FS-7184)
11
+
1
12
  <a name="2.133.0"></a>
2
13
  # [2.133.0](https://git.skbkontur.ru/ke/candy-utils/compare/release/tools/v2.132.0...release/tools/v2.133.0) (2022-10-13)
3
14
 
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getOrAdd = getOrAdd;
7
+
8
+ function getOrAdd(map, key, factoryFunc) {
9
+ if (map.has(key)) {
10
+ return map.get(key);
11
+ }
12
+
13
+ const newValue = factoryFunc();
14
+ map.set(key, newValue);
15
+ return newValue;
16
+ }
17
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL0NvbW1vbi9Db2xsZWN0aW9uVXRpbHMudHMiXSwibmFtZXMiOlsiZ2V0T3JBZGQiLCJtYXAiLCJrZXkiLCJmYWN0b3J5RnVuYyIsImhhcyIsImdldCIsIm5ld1ZhbHVlIiwic2V0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQU8sU0FBU0EsUUFBVCxDQUFnQ0MsR0FBaEMsRUFBd0RDLEdBQXhELEVBQW1FQyxXQUFuRSxFQUE4RjtBQUNqRyxNQUFJRixHQUFHLENBQUNHLEdBQUosQ0FBUUYsR0FBUixDQUFKLEVBQWtCO0FBQ2QsV0FBT0QsR0FBRyxDQUFDSSxHQUFKLENBQVFILEdBQVIsQ0FBUDtBQUNIOztBQUNELFFBQU1JLFFBQVEsR0FBR0gsV0FBVyxFQUE1QjtBQUNBRixFQUFBQSxHQUFHLENBQUNNLEdBQUosQ0FBUUwsR0FBUixFQUFhSSxRQUFiO0FBQ0EsU0FBT0EsUUFBUDtBQUNIIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGdldE9yQWRkPFRLZXksIFRWYWx1ZT4obWFwOiBNYXA8VEtleSwgVFZhbHVlPiwga2V5OiBUS2V5LCBmYWN0b3J5RnVuYzogKCkgPT4gVFZhbHVlKSB7XG4gICAgaWYgKG1hcC5oYXMoa2V5KSkge1xuICAgICAgICByZXR1cm4gbWFwLmdldChrZXkpO1xuICAgIH1cbiAgICBjb25zdCBuZXdWYWx1ZSA9IGZhY3RvcnlGdW5jKCk7XG4gICAgbWFwLnNldChrZXksIG5ld1ZhbHVlKTtcbiAgICByZXR1cm4gbmV3VmFsdWU7XG59XG4iXX0=
@@ -9,5 +9,6 @@ exports.ButtonSettingsTypeEnum = ButtonSettingsTypeEnum;
9
9
 
10
10
  (function (ButtonSettingsTypeEnum) {
11
11
  ButtonSettingsTypeEnum["Revise"] = "revise";
12
+ ButtonSettingsTypeEnum["DigitalWarrant"] = "digitalWarrant";
12
13
  })(ButtonSettingsTypeEnum || (exports.ButtonSettingsTypeEnum = ButtonSettingsTypeEnum = {}));
13
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL0NvbW1vbi9FbnVtcy9CdXR0b25TZXR0aW5nc1R5cGVFbnVtLnRzIl0sIm5hbWVzIjpbIkJ1dHRvblNldHRpbmdzVHlwZUVudW0iXSwibWFwcGluZ3MiOiI7Ozs7OztJQUFZQSxzQjs7O1dBQUFBLHNCO0FBQUFBLEVBQUFBLHNCO0dBQUFBLHNCLHNDQUFBQSxzQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEJ1dHRvblNldHRpbmdzVHlwZUVudW0ge1xuICAgIFJldmlzZSA9IFwicmV2aXNlXCIsXG59XG4iXX0=
14
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL0NvbW1vbi9FbnVtcy9CdXR0b25TZXR0aW5nc1R5cGVFbnVtLnRzIl0sIm5hbWVzIjpbIkJ1dHRvblNldHRpbmdzVHlwZUVudW0iXSwibWFwcGluZ3MiOiI7Ozs7OztJQUFZQSxzQjs7O1dBQUFBLHNCO0FBQUFBLEVBQUFBLHNCO0FBQUFBLEVBQUFBLHNCO0dBQUFBLHNCLHNDQUFBQSxzQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEJ1dHRvblNldHRpbmdzVHlwZUVudW0ge1xuICAgIFJldmlzZSA9IFwicmV2aXNlXCIsXG4gICAgRGlnaXRhbFdhcnJhbnQgPSBcImRpZ2l0YWxXYXJyYW50XCIsXG59XG4iXX0=
@@ -27,6 +27,15 @@ class Set2 {
27
27
  return false;
28
28
  }
29
29
 
30
+ remove(path) {
31
+ const hash = this.getItemHash(path);
32
+ const list = this.hashMap.get(hash);
33
+
34
+ if (list != undefined) {
35
+ this.hashMap.set(hash, list.filter(x => !this.areItemsEqual(x, path)));
36
+ }
37
+ }
38
+
30
39
  has(path) {
31
40
  var _this$hashMap$get;
32
41
 
@@ -57,4 +66,4 @@ class Set2 {
57
66
  }
58
67
 
59
68
  exports.Set2 = Set2;
60
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL0NvbW1vbi9Nb2RlbFBhdGgvU2V0L1NldDIudHMiXSwibmFtZXMiOlsiU2V0MiIsImhhc2hNYXAiLCJNYXAiLCJhZGQiLCJwYXRoIiwiaGFzaCIsImdldEl0ZW1IYXNoIiwibGlzdCIsImdldCIsInVuZGVmaW5lZCIsInNldCIsImZpbmQiLCJ4IiwiYXJlSXRlbXNFcXVhbCIsInB1c2giLCJoYXMiLCJpc0VtcHR5Iiwic2l6ZSIsInZhbHVlcyIsIkl0ZXJhdG9yIiwiZnJvbSIsImZsYXRNYXAiLCJjbGVhciIsImtleSIsImdldEhhc2giLCJsZWZ0IiwicmlnaHQiLCJpc0VxdWFscyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUVPLE1BQU1BLElBQU4sQ0FBc0M7QUFBQTtBQUFBLFNBQ3hCQyxPQUR3QixHQUNkLElBQUlDLEdBQUosRUFEYztBQUFBOztBQUdsQ0MsRUFBQUEsR0FBRyxDQUFDQyxJQUFELEVBQW9CO0FBQzFCLFVBQU1DLElBQUksR0FBRyxLQUFLQyxXQUFMLENBQWlCRixJQUFqQixDQUFiO0FBQ0EsVUFBTUcsSUFBSSxHQUFHLEtBQUtOLE9BQUwsQ0FBYU8sR0FBYixDQUFpQkgsSUFBakIsQ0FBYjs7QUFDQSxRQUFJRSxJQUFJLElBQUlFLFNBQVosRUFBdUI7QUFDbkIsV0FBS1IsT0FBTCxDQUFhUyxHQUFiLENBQWlCTCxJQUFqQixFQUF1QixDQUFDRCxJQUFELENBQXZCO0FBQ0EsYUFBTyxJQUFQO0FBQ0gsS0FIRCxNQUdPO0FBQ0gsVUFBSUcsSUFBSSxDQUFDSSxJQUFMLENBQVVDLENBQUMsSUFBSSxLQUFLQyxhQUFMLENBQW1CRCxDQUFuQixFQUFzQlIsSUFBdEIsQ0FBZixLQUErQ0ssU0FBbkQsRUFBOEQ7QUFDMURGLFFBQUFBLElBQUksQ0FBQ08sSUFBTCxDQUFVVixJQUFWO0FBQ0EsZUFBTyxJQUFQO0FBQ0g7QUFDSjs7QUFDRCxXQUFPLEtBQVA7QUFDSDs7QUFFTVcsRUFBQUEsR0FBRyxDQUFDWCxJQUFELEVBQW9CO0FBQUE7O0FBQzFCLFVBQU1DLElBQUksR0FBRyxLQUFLQyxXQUFMLENBQWlCRixJQUFqQixDQUFiO0FBQ0EsV0FBTywyQkFBS0gsT0FBTCxDQUFhTyxHQUFiLENBQWlCSCxJQUFqQix5RUFBd0JNLElBQXhCLENBQTZCQyxDQUFDLElBQUksS0FBS0MsYUFBTCxDQUFtQkQsQ0FBbkIsRUFBc0JSLElBQXRCLENBQWxDLE1BQWtFSyxTQUF6RTtBQUNIOztBQUVNTyxFQUFBQSxPQUFPLEdBQVk7QUFDdEIsV0FBTyxLQUFLZixPQUFMLENBQWFnQixJQUFiLEtBQXNCLENBQTdCO0FBQ0g7O0FBRU1DLEVBQUFBLE1BQU0sR0FBaUI7QUFDMUIsV0FBT0MsUUFBUSxDQUFDQyxJQUFULENBQWMsS0FBS25CLE9BQUwsQ0FBYWlCLE1BQWIsRUFBZCxFQUFxQ0csT0FBckMsQ0FBNkNULENBQUMsSUFBSUEsQ0FBbEQsQ0FBUDtBQUNIOztBQUVNVSxFQUFBQSxLQUFLLEdBQVM7QUFDakIsU0FBS3JCLE9BQUwsQ0FBYXFCLEtBQWI7QUFDSDs7QUFFU2hCLEVBQUFBLFdBQVcsQ0FBQ2lCLEdBQUQsRUFBa0I7QUFDbkMsV0FBT0EsR0FBRyxDQUFDQyxPQUFKLEVBQVA7QUFDSDs7QUFFU1gsRUFBQUEsYUFBYSxDQUFDWSxJQUFELEVBQVdDLEtBQVgsRUFBK0I7QUFDbEQsV0FBT0QsSUFBSSxDQUFDRSxRQUFMLENBQWNELEtBQWQsQ0FBUDtBQUNIOztBQXpDd0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRXF1YXRhYmxlIH0gZnJvbSBcIi4uL0lFcXVhdGFibGVcIjtcblxuZXhwb3J0IGNsYXNzIFNldDI8VEkgZXh0ZW5kcyBJRXF1YXRhYmxlPFRJPj4ge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaGFzaE1hcCA9IG5ldyBNYXA8bnVtYmVyLCBUSVtdPigpO1xuXG4gICAgcHVibGljIGFkZChwYXRoOiBUSSk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBoYXNoID0gdGhpcy5nZXRJdGVtSGFzaChwYXRoKTtcbiAgICAgICAgY29uc3QgbGlzdCA9IHRoaXMuaGFzaE1hcC5nZXQoaGFzaCk7XG4gICAgICAgIGlmIChsaXN0ID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5oYXNoTWFwLnNldChoYXNoLCBbcGF0aF0pO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAobGlzdC5maW5kKHggPT4gdGhpcy5hcmVJdGVtc0VxdWFsKHgsIHBhdGgpKSA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICBsaXN0LnB1c2gocGF0aCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHB1YmxpYyBoYXMocGF0aDogVEkpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgaGFzaCA9IHRoaXMuZ2V0SXRlbUhhc2gocGF0aCk7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc2hNYXAuZ2V0KGhhc2gpPy5maW5kKHggPT4gdGhpcy5hcmVJdGVtc0VxdWFsKHgsIHBhdGgpKSAhPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGlzRW1wdHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc2hNYXAuc2l6ZSA9PT0gMDtcbiAgICB9XG5cbiAgICBwdWJsaWMgdmFsdWVzKCk6IEl0ZXJhYmxlPFRJPiB7XG4gICAgICAgIHJldHVybiBJdGVyYXRvci5mcm9tKHRoaXMuaGFzaE1hcC52YWx1ZXMoKSkuZmxhdE1hcCh4ID0+IHgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjbGVhcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5oYXNoTWFwLmNsZWFyKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEl0ZW1IYXNoKGtleTogVEkpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4ga2V5LmdldEhhc2goKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYXJlSXRlbXNFcXVhbChsZWZ0OiBUSSwgcmlnaHQ6IFRJKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBsZWZ0LmlzRXF1YWxzKHJpZ2h0KTtcbiAgICB9XG59XG4iXX0=
69
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL0NvbW1vbi9Nb2RlbFBhdGgvU2V0L1NldDIudHMiXSwibmFtZXMiOlsiU2V0MiIsImhhc2hNYXAiLCJNYXAiLCJhZGQiLCJwYXRoIiwiaGFzaCIsImdldEl0ZW1IYXNoIiwibGlzdCIsImdldCIsInVuZGVmaW5lZCIsInNldCIsImZpbmQiLCJ4IiwiYXJlSXRlbXNFcXVhbCIsInB1c2giLCJyZW1vdmUiLCJmaWx0ZXIiLCJoYXMiLCJpc0VtcHR5Iiwic2l6ZSIsInZhbHVlcyIsIkl0ZXJhdG9yIiwiZnJvbSIsImZsYXRNYXAiLCJjbGVhciIsImtleSIsImdldEhhc2giLCJsZWZ0IiwicmlnaHQiLCJpc0VxdWFscyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUVPLE1BQU1BLElBQU4sQ0FBc0M7QUFBQTtBQUFBLFNBQ3hCQyxPQUR3QixHQUNkLElBQUlDLEdBQUosRUFEYztBQUFBOztBQUdsQ0MsRUFBQUEsR0FBRyxDQUFDQyxJQUFELEVBQW9CO0FBQzFCLFVBQU1DLElBQUksR0FBRyxLQUFLQyxXQUFMLENBQWlCRixJQUFqQixDQUFiO0FBQ0EsVUFBTUcsSUFBSSxHQUFHLEtBQUtOLE9BQUwsQ0FBYU8sR0FBYixDQUFpQkgsSUFBakIsQ0FBYjs7QUFDQSxRQUFJRSxJQUFJLElBQUlFLFNBQVosRUFBdUI7QUFDbkIsV0FBS1IsT0FBTCxDQUFhUyxHQUFiLENBQWlCTCxJQUFqQixFQUF1QixDQUFDRCxJQUFELENBQXZCO0FBQ0EsYUFBTyxJQUFQO0FBQ0gsS0FIRCxNQUdPO0FBQ0gsVUFBSUcsSUFBSSxDQUFDSSxJQUFMLENBQVVDLENBQUMsSUFBSSxLQUFLQyxhQUFMLENBQW1CRCxDQUFuQixFQUFzQlIsSUFBdEIsQ0FBZixLQUErQ0ssU0FBbkQsRUFBOEQ7QUFDMURGLFFBQUFBLElBQUksQ0FBQ08sSUFBTCxDQUFVVixJQUFWO0FBQ0EsZUFBTyxJQUFQO0FBQ0g7QUFDSjs7QUFDRCxXQUFPLEtBQVA7QUFDSDs7QUFFTVcsRUFBQUEsTUFBTSxDQUFDWCxJQUFELEVBQWlCO0FBQzFCLFVBQU1DLElBQUksR0FBRyxLQUFLQyxXQUFMLENBQWlCRixJQUFqQixDQUFiO0FBQ0EsVUFBTUcsSUFBSSxHQUFHLEtBQUtOLE9BQUwsQ0FBYU8sR0FBYixDQUFpQkgsSUFBakIsQ0FBYjs7QUFDQSxRQUFJRSxJQUFJLElBQUlFLFNBQVosRUFBdUI7QUFDbkIsV0FBS1IsT0FBTCxDQUFhUyxHQUFiLENBQ0lMLElBREosRUFFSUUsSUFBSSxDQUFDUyxNQUFMLENBQVlKLENBQUMsSUFBSSxDQUFDLEtBQUtDLGFBQUwsQ0FBbUJELENBQW5CLEVBQXNCUixJQUF0QixDQUFsQixDQUZKO0FBSUg7QUFDSjs7QUFFTWEsRUFBQUEsR0FBRyxDQUFDYixJQUFELEVBQW9CO0FBQUE7O0FBQzFCLFVBQU1DLElBQUksR0FBRyxLQUFLQyxXQUFMLENBQWlCRixJQUFqQixDQUFiO0FBQ0EsV0FBTywyQkFBS0gsT0FBTCxDQUFhTyxHQUFiLENBQWlCSCxJQUFqQix5RUFBd0JNLElBQXhCLENBQTZCQyxDQUFDLElBQUksS0FBS0MsYUFBTCxDQUFtQkQsQ0FBbkIsRUFBc0JSLElBQXRCLENBQWxDLE1BQWtFSyxTQUF6RTtBQUNIOztBQUVNUyxFQUFBQSxPQUFPLEdBQVk7QUFDdEIsV0FBTyxLQUFLakIsT0FBTCxDQUFha0IsSUFBYixLQUFzQixDQUE3QjtBQUNIOztBQUVNQyxFQUFBQSxNQUFNLEdBQWlCO0FBQzFCLFdBQU9DLFFBQVEsQ0FBQ0MsSUFBVCxDQUFjLEtBQUtyQixPQUFMLENBQWFtQixNQUFiLEVBQWQsRUFBcUNHLE9BQXJDLENBQTZDWCxDQUFDLElBQUlBLENBQWxELENBQVA7QUFDSDs7QUFFTVksRUFBQUEsS0FBSyxHQUFTO0FBQ2pCLFNBQUt2QixPQUFMLENBQWF1QixLQUFiO0FBQ0g7O0FBRVNsQixFQUFBQSxXQUFXLENBQUNtQixHQUFELEVBQWtCO0FBQ25DLFdBQU9BLEdBQUcsQ0FBQ0MsT0FBSixFQUFQO0FBQ0g7O0FBRVNiLEVBQUFBLGFBQWEsQ0FBQ2MsSUFBRCxFQUFXQyxLQUFYLEVBQStCO0FBQ2xELFdBQU9ELElBQUksQ0FBQ0UsUUFBTCxDQUFjRCxLQUFkLENBQVA7QUFDSDs7QUFwRHdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUVxdWF0YWJsZSB9IGZyb20gXCIuLi9JRXF1YXRhYmxlXCI7XG5cbmV4cG9ydCBjbGFzcyBTZXQyPFRJIGV4dGVuZHMgSUVxdWF0YWJsZTxUST4+IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGhhc2hNYXAgPSBuZXcgTWFwPG51bWJlciwgVElbXT4oKTtcblxuICAgIHB1YmxpYyBhZGQocGF0aDogVEkpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgaGFzaCA9IHRoaXMuZ2V0SXRlbUhhc2gocGF0aCk7XG4gICAgICAgIGNvbnN0IGxpc3QgPSB0aGlzLmhhc2hNYXAuZ2V0KGhhc2gpO1xuICAgICAgICBpZiAobGlzdCA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMuaGFzaE1hcC5zZXQoaGFzaCwgW3BhdGhdKTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKGxpc3QuZmluZCh4ID0+IHRoaXMuYXJlSXRlbXNFcXVhbCh4LCBwYXRoKSkgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgbGlzdC5wdXNoKHBhdGgpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlKHBhdGg6IFRJKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGhhc2ggPSB0aGlzLmdldEl0ZW1IYXNoKHBhdGgpO1xuICAgICAgICBjb25zdCBsaXN0ID0gdGhpcy5oYXNoTWFwLmdldChoYXNoKTtcbiAgICAgICAgaWYgKGxpc3QgIT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLmhhc2hNYXAuc2V0KFxuICAgICAgICAgICAgICAgIGhhc2gsXG4gICAgICAgICAgICAgICAgbGlzdC5maWx0ZXIoeCA9PiAhdGhpcy5hcmVJdGVtc0VxdWFsKHgsIHBhdGgpKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBoYXMocGF0aDogVEkpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgaGFzaCA9IHRoaXMuZ2V0SXRlbUhhc2gocGF0aCk7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc2hNYXAuZ2V0KGhhc2gpPy5maW5kKHggPT4gdGhpcy5hcmVJdGVtc0VxdWFsKHgsIHBhdGgpKSAhPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGlzRW1wdHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc2hNYXAuc2l6ZSA9PT0gMDtcbiAgICB9XG5cbiAgICBwdWJsaWMgdmFsdWVzKCk6IEl0ZXJhYmxlPFRJPiB7XG4gICAgICAgIHJldHVybiBJdGVyYXRvci5mcm9tKHRoaXMuaGFzaE1hcC52YWx1ZXMoKSkuZmxhdE1hcCh4ID0+IHgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBjbGVhcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5oYXNoTWFwLmNsZWFyKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldEl0ZW1IYXNoKGtleTogVEkpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4ga2V5LmdldEhhc2goKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYXJlSXRlbXNFcXVhbChsZWZ0OiBUSSwgcmlnaHQ6IFRJKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBsZWZ0LmlzRXF1YWxzKHJpZ2h0KTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.StringArrayKey = void 0;
7
+
8
+ class StringArrayKey {
9
+ constructor(items) {
10
+ this.items = void 0;
11
+ this.items = items;
12
+ }
13
+
14
+ getSimpleHashByString(source) {
15
+ let result = 0;
16
+
17
+ for (let index = 0; index < source.length; index++) {
18
+ result = (result << 5) - result + source.charCodeAt(index) | 0;
19
+ }
20
+
21
+ return result;
22
+ }
23
+
24
+ getHash() {
25
+ return this.items.reduce((acc, current) => acc + this.getSimpleHashByString(current), 0);
26
+ }
27
+
28
+ isEquals(right) {
29
+ if (this.items.length != right.items.length) {
30
+ return false;
31
+ }
32
+
33
+ return this.items.every((item, index) => item === right.items[index]);
34
+ }
35
+
36
+ }
37
+
38
+ exports.StringArrayKey = StringArrayKey;
39
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL0NvbW1vbi9TdHJpbmdBcnJheUtleS50cyJdLCJuYW1lcyI6WyJTdHJpbmdBcnJheUtleSIsImNvbnN0cnVjdG9yIiwiaXRlbXMiLCJnZXRTaW1wbGVIYXNoQnlTdHJpbmciLCJzb3VyY2UiLCJyZXN1bHQiLCJpbmRleCIsImxlbmd0aCIsImNoYXJDb2RlQXQiLCJnZXRIYXNoIiwicmVkdWNlIiwiYWNjIiwiY3VycmVudCIsImlzRXF1YWxzIiwicmlnaHQiLCJldmVyeSIsIml0ZW0iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFFTyxNQUFNQSxjQUFOLENBQTJEO0FBR3ZEQyxFQUFBQSxXQUFXLENBQUNDLEtBQUQsRUFBa0I7QUFBQSxTQUZuQkEsS0FFbUI7QUFDaEMsU0FBS0EsS0FBTCxHQUFhQSxLQUFiO0FBQ0g7O0FBRU9DLEVBQUFBLHFCQUFxQixDQUFDQyxNQUFELEVBQXlCO0FBQ2xELFFBQUlDLE1BQU0sR0FBRyxDQUFiOztBQUNBLFNBQUssSUFBSUMsS0FBSyxHQUFHLENBQWpCLEVBQW9CQSxLQUFLLEdBQUdGLE1BQU0sQ0FBQ0csTUFBbkMsRUFBMkNELEtBQUssRUFBaEQsRUFBb0Q7QUFDaERELE1BQUFBLE1BQU0sR0FBSSxDQUFDQSxNQUFNLElBQUksQ0FBWCxJQUFnQkEsTUFBaEIsR0FBeUJELE1BQU0sQ0FBQ0ksVUFBUCxDQUFrQkYsS0FBbEIsQ0FBMUIsR0FBc0QsQ0FBL0Q7QUFDSDs7QUFDRCxXQUFPRCxNQUFQO0FBQ0g7O0FBRU1JLEVBQUFBLE9BQU8sR0FBVztBQUNyQixXQUFPLEtBQUtQLEtBQUwsQ0FBV1EsTUFBWCxDQUFrQixDQUFDQyxHQUFELEVBQU1DLE9BQU4sS0FBa0JELEdBQUcsR0FBRyxLQUFLUixxQkFBTCxDQUEyQlMsT0FBM0IsQ0FBMUMsRUFBK0UsQ0FBL0UsQ0FBUDtBQUNIOztBQUVNQyxFQUFBQSxRQUFRLENBQUNDLEtBQUQsRUFBaUM7QUFDNUMsUUFBSSxLQUFLWixLQUFMLENBQVdLLE1BQVgsSUFBcUJPLEtBQUssQ0FBQ1osS0FBTixDQUFZSyxNQUFyQyxFQUE2QztBQUN6QyxhQUFPLEtBQVA7QUFDSDs7QUFDRCxXQUFPLEtBQUtMLEtBQUwsQ0FBV2EsS0FBWCxDQUFpQixDQUFDQyxJQUFELEVBQU9WLEtBQVAsS0FBaUJVLElBQUksS0FBS0YsS0FBSyxDQUFDWixLQUFOLENBQVlJLEtBQVosQ0FBM0MsQ0FBUDtBQUNIOztBQXhCNkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRXF1YXRhYmxlIH0gZnJvbSBcIi4vTW9kZWxQYXRoL0lFcXVhdGFibGVcIjtcblxuZXhwb3J0IGNsYXNzIFN0cmluZ0FycmF5S2V5IGltcGxlbWVudHMgSUVxdWF0YWJsZTxTdHJpbmdBcnJheUtleT4ge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaXRlbXM6IHN0cmluZ1tdO1xuXG4gICAgcHVibGljIGNvbnN0cnVjdG9yKGl0ZW1zOiBzdHJpbmdbXSkge1xuICAgICAgICB0aGlzLml0ZW1zID0gaXRlbXM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRTaW1wbGVIYXNoQnlTdHJpbmcoc291cmNlOiBzdHJpbmcpOiBudW1iZXIge1xuICAgICAgICBsZXQgcmVzdWx0ID0gMDtcbiAgICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IHNvdXJjZS5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgICAgIHJlc3VsdCA9ICgocmVzdWx0IDw8IDUpIC0gcmVzdWx0ICsgc291cmNlLmNoYXJDb2RlQXQoaW5kZXgpKSB8IDA7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SGFzaCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5pdGVtcy5yZWR1Y2UoKGFjYywgY3VycmVudCkgPT4gYWNjICsgdGhpcy5nZXRTaW1wbGVIYXNoQnlTdHJpbmcoY3VycmVudCksIDApO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc0VxdWFscyhyaWdodDogU3RyaW5nQXJyYXlLZXkpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKHRoaXMuaXRlbXMubGVuZ3RoICE9IHJpZ2h0Lml0ZW1zLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLml0ZW1zLmV2ZXJ5KChpdGVtLCBpbmRleCkgPT4gaXRlbSA9PT0gcmlnaHQuaXRlbXNbaW5kZXhdKTtcbiAgICB9XG59XG4iXX0=
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.FormBuildMode = void 0;
9
+ exports.getFormConfigFromSource = getFormConfigFromSource;
9
10
  exports.isNewFormJsonFormat = isNewFormJsonFormat;
10
11
  exports.readFormConfig = readFormConfig;
11
12
  exports.resolveFormInfo = resolveFormInfo;
@@ -14,6 +15,8 @@ var _path = _interopRequireDefault(require("path"));
14
15
 
15
16
  var _fsExtra = require("fs-extra");
16
17
 
18
+ var _lodash = require("lodash");
19
+
17
20
  var _FsUtils = require("../Commons/FsUtils");
18
21
 
19
22
  var _StaticLogger = require("../Commons/Logging/StaticLogger");
@@ -98,11 +101,15 @@ async function isNewFormJsonFormat(formJsonFile) {
98
101
  }
99
102
 
100
103
  async function readFormConfig(formJsonFile, logger) {
101
- var _formConfig$dependenc3, _formConfig$dependenc4, _formConfig$mode, _formConfig$settings$, _formConfig$settings;
102
-
103
104
  // tslint:disable-next-line no-unsafe-any
104
105
  const formConfig = await (0, _fsExtra.readJson)(formJsonFile);
106
+ return getFormConfigFromSource(formConfig, logger);
107
+ }
105
108
 
109
+ function getFormConfigFromSource(formConfig, logger) {
110
+ var _formConfig$dependenc3, _formConfig$dependenc4, _formConfig$settings, _formConfig$mode;
111
+
112
+ // tslint:disable-next-line no-unsafe-any
106
113
  if (((_formConfig$dependenc3 = formConfig.dependencies) === null || _formConfig$dependenc3 === void 0 ? void 0 : _formConfig$dependenc3.generator) != undefined && !(0, _Version.isValidSemVerVersionRange)(formConfig.dependencies.generator)) {
107
114
  throw new Error(`${formConfig.dependencies.generator} is not valid version format`);
108
115
  }
@@ -111,17 +118,19 @@ async function readFormConfig(formJsonFile, logger) {
111
118
  throw new Error(`${formConfig.dependencies.engine} is not valid version format`);
112
119
  }
113
120
 
121
+ const settings = {
122
+ useServerSideFLangNormalization: false,
123
+ ...(0, _lodash.pickBy)((_formConfig$settings = formConfig.settings) !== null && _formConfig$settings !== void 0 ? _formConfig$settings : {}, x => x !== undefined)
124
+ };
114
125
  return {
115
126
  themes: formConfig.themes,
116
127
  build: formConfig.build || "manual",
117
128
  mode: (_formConfig$mode = formConfig.mode) !== null && _formConfig$mode !== void 0 ? _formConfig$mode : "normal-build",
118
- settings: {
119
- useServerSideFLangNormalization: (_formConfig$settings$ = (_formConfig$settings = formConfig.settings) === null || _formConfig$settings === void 0 ? void 0 : _formConfig$settings.useServerSideFLangNormalization) !== null && _formConfig$settings$ !== void 0 ? _formConfig$settings$ : false
120
- },
129
+ settings: settings,
121
130
  dependencies: formConfig.dependencies != undefined ? {
122
131
  generator: formConfig.dependencies.generator,
123
132
  engine: formConfig.dependencies.engine
124
133
  } : undefined
125
134
  };
126
135
  }
127
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9CdWlsZFRhc2tzL1Jlc29sdmVGb3JtSW5mby50cyJdLCJuYW1lcyI6WyJGb3JtQnVpbGRNb2RlIiwicmVzb2x2ZUZvcm1JbmZvIiwiZm9ybUpzb25GaWxlIiwicGF0aFRvRm9ybSIsIl9lbmdpbmVEaXJlY3RvcnkiLCJsb2dnZXIiLCJ1cGdyYWRlRm9ybUpzb24iLCJ1c2VMYXN0U3RhYmxlVmVyc2lvbiIsInVzZVByZXJlbGVhc2VWZXJzaW9uIiwibmlnaHRseSIsImZvcm1Db25maWciLCJyZWFkRm9ybUNvbmZpZyIsInVuZGVmaW5lZCIsIkVycm9yIiwiZGVwZW5kZW5jaWVzIiwiZW5naW5lIiwiZ2VuZXJhdG9yIiwibG9nIiwiSlNPTiIsInN0cmluZ2lmeSIsInByZXJlbGVhc2VWZXJzaW9uRm9ybUpzb24iLCJnZW5lcmF0b3JWZXJzaW9uIiwiZW5naW5lVmVyc2lvbiIsInR5cGUiLCJwcmVJZCIsInRoZW1lcyIsIm1vZGUiLCJOb0VkaXRvciIsIkNvcHlMZWdhY3lQcmVidWlsdFJlc291cmNlcyIsIk5vcm1hbEJ1aWxkIiwiZm9ybU5hbWUiLCJwYXRoIiwiYmFzZW5hbWUiLCJmb3JtU291cmNlc1BhdGgiLCJpc05ld0Zvcm1Kc29uRm9ybWF0IiwiYnVpbGQiLCJzZXR0aW5ncyIsInVzZVNlcnZlclNpZGVGTGFuZ05vcm1hbGl6YXRpb24iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBOztBQUVBOztBQUVBOztBQUVBOztBQUVBOztBQUtBOztJQUVZQSxhOzs7V0FBQUEsYTtBQUFBQSxFQUFBQSxhLENBQUFBLGE7QUFBQUEsRUFBQUEsYSxDQUFBQSxhO0FBQUFBLEVBQUFBLGEsQ0FBQUEsYTtHQUFBQSxhLDZCQUFBQSxhOztBQXlDTCxlQUFlQyxlQUFmLENBQ0hDLFlBREcsRUFFSEMsVUFGRyxFQUdIQyxnQkFIRyxFQUlIQyxNQUFlLEdBQUcsOEJBSmYsRUFLSEMsZUFBd0IsR0FBRyxLQUx4QixFQU1IQyxvQkFBNkIs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LElBQUFBLFFBQVEsRUFBRTtBQUNOQyxNQUFBQSwrQkFBK0IsbURBQUUzQixVQUFVLENBQUMwQixRQUFiLHlEQUFFLHFCQUFxQkMsK0JBQXZCLHlFQUEwRDtBQURuRixLQUpQO0FBT0h2QixJQUFBQSxZQUFZLEVBQ1JKLFVBQVUsQ0FBQ0ksWUFBWCxJQUEyQkYsU0FBM0IsR0FDTTtBQUNJSSxNQUFBQSxTQUFTLEVBQUVOLFVBQVUsQ0FBQ0ksWUFBWCxDQUF3QkUsU0FEdkM7QUFFSUQsTUFBQUEsTUFBTSxFQUFFTCxVQUFVLENBQUNJLFlBQVgsQ0FBd0JDO0FBRnBDLEtBRE4sR0FLTUg7QUFiUCxHQUFQO0FBZUgiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiO1xuXG5pbXBvcnQgeyByZWFkSnNvbiB9IGZyb20gXCJmcy1leHRyYVwiO1xuXG5pbXBvcnQgeyB3cml0ZUZpbGVBc3luYyB9IGZyb20gXCIuLi9Db21tb25zL0ZzVXRpbHNcIjtcbmltcG9ydCB7IElMb2dnZXIgfSBmcm9tIFwiLi4vQ29tbW9ucy9Mb2dnaW5nL0lMb2dnZXJcIjtcbmltcG9ydCB7IGdldExvZ2dlciB9IGZyb20gXCIuLi9Db21tb25zL0xvZ2dpbmcvU3RhdGljTG9nZ2VyXCI7XG5cbmltcG9ydCB7XG4gICAgZ2V0TGFzdFN0YWJsZUVuZ2luZVZlcnNpb24sXG4gICAgZ2V0TGFzdFN0YWJsZUdlbmVyYXRvclZlcnNpb24sXG4gICAgZ2V0UHJlcmVsZWFzZVZlcnNpb25Gb3JtSnNvbixcbn0gZnJvbSBcIi4vUHVibGlzaGVkVmVyc2lvblV0aWxzXCI7XG5pbXBvcnQgeyBDYW5keVZlcnNpb25TcGVjLCBpc1ZhbGlkU2VtVmVyVmVyc2lvblJhbmdlLCBwYXJzZUNhbmR5VmVyc2lvblNwZWMgfSBmcm9tIFwiLi9WZXJzaW9uXCI7XG5cbmV4cG9ydCBlbnVtIEZvcm1CdWlsZE1vZGUge1xuICAgIE5vcm1hbEJ1aWxkLFxuICAgIE5vRWRpdG9yLFxuICAgIENvcHlMZWdhY3lQcmVidWlsdFJlc291cmNlcyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGb3JtSW5mbyB7XG4gICAgdGhlbWVzPzogc3RyaW5nW107XG4gICAgbW9kZTogRm9ybUJ1aWxkTW9kZTtcbiAgICBmb3JtTmFtZTogc3RyaW5nO1xuICAgIGZvcm1Tb3VyY2VzUGF0aDogc3RyaW5nO1xuICAgIGdlbmVyYXRvclZlcnNpb246IHVuZGVmaW5lZCB8IENhbmR5VmVyc2lvblNwZWM7XG4gICAgZW5naW5lVmVyc2lvbjogdW5kZWZpbmVkIHwgQ2FuZHlWZXJzaW9uU3BlYztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGb3JtQ29uZmlnQ29udGVudCB7XG4gICAgdGhlbWVzPzogc3RyaW5nW107XG4gICAgYnVpbGQ/OiBcImNpXCIgfCBcIm1hbnVhbFwiO1xuICAgIG1vZGU/OiBcIm5vLWVkaXRvclwiIHwgXCJjb3B5LWxlZ2FjeS1wcmVidWlsdC1yZXNvdXJjZXNcIjtcbiAgICBkZXBlbmRlbmNpZXM/OiB7XG4gICAgICAgIGdlbmVyYXRvcj86IHN0cmluZztcbiAgICAgICAgZW5naW5lPzogc3RyaW5nO1xuICAgIH07XG4gICAgc2V0dGluZ3M/OiB7XG4gICAgICAgIHVzZVNlcnZlclNpZGVGTGFuZ05vcm1hbGl6YXRpb24/OiBib29sZWFuO1xuICAgIH07XG59XG5cbmludGVyZmFjZSBGb3JtQ29uZmlnIHtcbiAgICB0aGVtZXM/OiBzdHJpbmdbXTtcbiAgICBidWlsZD86IFwiY2lcIiB8IFwibWFudWFsXCI7XG4gICAgbW9kZT86IFwibm8tZWRpdG9yXCIgfCBcImNvcHktbGVnYWN5LXByZWJ1aWx0LXJlc291cmNlc1wiIHwgXCJub3JtYWwtYnVpbGRcIjtcbiAgICBkZXBlbmRlbmNpZXM/OiB7XG4gICAgICAgIGdlbmVyYXRvcjogdW5kZWZpbmVkIHwgc3RyaW5nO1xuICAgICAgICBlbmdpbmU6IHVuZGVmaW5lZCB8IHN0cmluZztcbiAgICB9O1xuICAgIHNldHRpbmdzOiB7XG4gICAgICAgIHVzZVNlcnZlclNpZGVGTGFuZ05vcm1hbGl6YXRpb246IGJvb2xlYW47XG4gICAgfTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlc29sdmVGb3JtSW5mbyhcbiAgICBmb3JtSnNvbkZpbGU6IHN0cmluZyxcbiAgICBwYXRoVG9Gb3JtOiBzdHJpbmcsXG4gICAgX2VuZ2luZURpcmVjdG9yeTogdW5kZWZpbmVkIHwgc3RyaW5nLFxuICAgIGxvZ2dlcjogSUxvZ2dlciA9IGdldExvZ2dlcigpLFxuICAgIHVwZ3JhZGVGb3JtSnNvbjogYm9vbGVhbiA9IGZhbHNlLFxuICAgIHVzZUxhc3RTdGFibGVWZXJzaW9uOiBib29sZWFuID0gZmFsc2UsXG4gICAgdXNlUHJlcmVsZWFzZVZlcnNpb24/OiBzdHJpbmcsXG4gICAgbmlnaHRseTogYm9vbGVhbiA9IGZhbHNlXG4pOiBQcm9taXNlPEZvcm1JbmZvPiB7XG4gICAgY29uc3QgZm9ybUNvbmZpZyA9IGF3YWl0IHJlYWRGb3JtQ29uZmlnKGZvcm1Kc29uRmlsZSwgbG9nZ2VyKTtcbiAgICBpZiAodXNlTGFzdFN0YWJsZVZlcnNpb24gJiYgdXNlUHJlcmVsZWFzZVZlcnNpb24gIT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcItCd0LXQvtCx0YXQvtC00LjQvNC+INC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQu9C40LHQviDRhNC70LDQsyB1c2VMYXN0U3RhYmxlVmVyc2lvbiDQu9C40LHQviB1c2VQcmVyZWxlYXNlVmVyc2lvblwiKTtcbiAgICB9XG4gICAgaWYgKHVzZUxhc3RTdGFibGVWZXJzaW9uKSB7XG4gICAgICAgIGZvcm1Db25maWcuZGVwZW5kZW5jaWVzID0ge1xuICAgICAgICAgICAgZW5naW5lOiBhd2FpdCBnZXRMYXN0U3RhYmxlRW5naW5lVmVyc2lvbigpLFxuICAgICAgICAgICAgZ2VuZXJhdG9yOiBhd2FpdCBnZXRMYXN0U3RhYmxlR2VuZXJhdG9yVmVyc2lvbigpLFxuICAgICAgICB9O1xuICAgICAgICBsb2dnZXIubG9nKGBVcGRhdGVkIHRvIGxhc3Qgc3RhYmxlIHZlcnNpb24gJHtmb3JtQ29uZmlnLmRlcGVuZGVuY2llcy5lbmdpbmV9YCk7XG4gICAgICAgIGF3YWl0IHdyaXRlRmlsZUFzeW5jKGZvcm1Kc29uRmlsZSwgSlNPTi5zdHJpbmdpZnkoZm9ybUNvbmZpZywgdW5kZWZpbmVkLCBcIiAgXCIpLCBcInV0ZjhcIik7XG4gICAgfVxuICAgIGlmICh1c2VQcmVyZWxlYXNlVmVyc2lvbiAhPSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc3QgcHJlcmVsZWFzZVZlcnNpb25Gb3JtSnNvbiA9IGF3YWl0IGdldFByZXJlbGVhc2VWZXJzaW9uRm9ybUpzb24odXNlUHJlcmVsZWFzZVZlcnNpb24pO1xuICAgICAgICBpZiAocHJlcmVsZWFzZVZlcnNpb25Gb3JtSnNvbiAhPSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGZvcm1Db25maWcuZGVwZW5kZW5jaWVzID0ge1xuICAgICAgICAgICAgICAgIGVuZ2luZTogcHJlcmVsZWFzZVZlcnNpb25Gb3JtSnNvbixcbiAgICAgICAgICAgICAgICBnZW5lcmF0b3I6IHByZXJlbGVhc2VWZXJzaW9uRm9ybUpzb24sXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgbG9nZ2VyLmxvZyhgVXBkYXRlZCB0byBsYXN0IHByZXJlbGVhc2UgdmVyc2lvbiAke2Zvcm1Db25maWcuZGVwZW5kZW5jaWVzLmVuZ2luZX1gKTtcbiAgICAgICAgfVxuICAgICAgICBhd2FpdCB3cml0ZUZpbGVBc3luYyhmb3JtSnNvbkZpbGUsIEpTT04uc3RyaW5naWZ5KGZvcm1Db25maWcsIHVuZGVmaW5lZCwgXCIgIFwiKSwgXCJ1dGY4XCIpO1xuICAgIH1cbiAgICBsZXQgZ2VuZXJhdG9yVmVyc2lvbiA9XG4gICAgICAgIGZvcm1Db25maWcuZGVwZW5kZW5jaWVzPy5nZW5lcmF0b3IgIT0gdW5kZWZpbmVkXG4gICAgICAgICAgICA/IHBhcnNlQ2FuZHlWZXJzaW9uU3BlYyhmb3JtQ29uZmlnLmRlcGVuZGVuY2llcy5nZW5lcmF0b3IpXG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICBsZXQgZW5naW5lVmVyc2lvbiA9XG4gICAgICAgIGZvcm1Db25maWcuZGVwZW5kZW5jaWVzPy5lbmdpbmUgIT0gdW5kZWZpbmVkXG4gICAgICAgICAgICA/IHBhcnNlQ2FuZHlWZXJzaW9uU3BlYyhmb3JtQ29uZmlnLmRlcGVuZGVuY2llcy5lbmdpbmUpXG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICBpZiAobmlnaHRseSkge1xuICAgICAgICBnZW5lcmF0b3JWZXJzaW9uID0geyB0eXBlOiBcInByZVwiLCBwcmVJZDogXCJuaWdodGx5XCIgfTtcbiAgICAgICAgZW5naW5lVmVyc2lvbiA9IHsgdHlwZTogXCJwcmVcIiwgcHJlSWQ6IFwibmlnaHRseVwiIH07XG4gICAgfVxuICAgIGlmICh1cGdyYWRlRm9ybUpzb24pIHtcbiAgICAgICAgYXdhaXQgd3JpdGVGaWxlQXN5bmMoZm9ybUpzb25GaWxlLCBKU09OLnN0cmluZ2lmeShmb3JtQ29uZmlnLCB1bmRlZmluZWQsIFwiICBcIiksIFwidXRmOFwiKTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgdGhlbWVzOiBmb3JtQ29uZmlnLnRoZW1lcyxcbiAgICAgICAgbW9kZTpcbiAgICAgICAgICAgIGZvcm1Db25maWcubW9kZSA9PT0gXCJuby1lZGl0b3JcIlxuICAgICAgICAgICAgICAgID8gRm9ybUJ1aWxkTW9kZS5Ob0VkaXRvclxuICAgICAgICAgICAgICAgIDogZm9ybUNvbmZpZy5tb2RlID09PSBcImNvcHktbGVnYWN5LXByZWJ1aWx0LXJlc291cmNlc1wiXG4gICAgICAgICAgICAgICAgPyBGb3JtQnVpbGRNb2RlLkNvcHlMZWdhY3lQcmVidWlsdFJlc291cmNlc1xuICAgICAgICAgICAgICAgIDogRm9ybUJ1aWxkTW9kZS5Ob3JtYWxCdWlsZCxcbiAgICAgICAgZm9ybU5hbWU6IHBhdGguYmFzZW5hbWUocGF0aFRvRm9ybSksXG4gICAgICAgIGZvcm1Tb3VyY2VzUGF0aDogcGF0aFRvRm9ybSxcbiAgICAgICAgZ2VuZXJhdG9yVmVyc2lvbjogZ2VuZXJhdG9yVmVyc2lvbixcbiAgICAgICAgZW5naW5lVmVyc2lvbjogZW5naW5lVmVyc2lvbixcbiAgICB9O1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaXNOZXdGb3JtSnNvbkZvcm1hdChmb3JtSnNvbkZpbGU6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZSBuby11bnNhZmUtYW55XG4gICAgY29uc3QgZm9ybUNvbmZpZzogRm9ybUNvbmZpZ0NvbnRlbnQgPSBhd2FpdCByZWFkSnNvbihmb3JtSnNvbkZpbGUpO1xuICAgIHJldHVybiBmb3JtQ29uZmlnLmRlcGVuZGVuY2llcyAhPSB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZWFkRm9ybUNvbmZpZyhmb3JtSnNvbkZpbGU6IHN0cmluZywgbG9nZ2VyOiBJTG9nZ2VyKTogUHJvbWlzZTxGb3JtQ29uZmlnPiB7XG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lIG5vLXVuc2FmZS1hbnlcbiAgICBjb25zdCBmb3JtQ29uZmlnOiBGb3JtQ29uZmlnQ29udGVudCA9IGF3YWl0IHJlYWRKc29uKGZvcm1Kc29uRmlsZSk7XG4gICAgaWYgKFxuICAgICAgICBmb3JtQ29uZmlnLmRlcGVuZGVuY2llcz8uZ2VuZXJhdG9yICE9IHVuZGVmaW5lZCAmJlxuICAgICAgICAhaXNWYWxpZFNlbVZlclZlcnNpb25SYW5nZShmb3JtQ29uZmlnLmRlcGVuZGVuY2llcy5nZW5lcmF0b3IpXG4gICAgKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgJHtmb3JtQ29uZmlnLmRlcGVuZGVuY2llcy5nZW5lcmF0b3J9IGlzIG5vdCB2YWxpZCB2ZXJzaW9uIGZvcm1hdGApO1xuICAgIH1cblxuICAgIGlmIChmb3JtQ29uZmlnLmRlcGVuZGVuY2llcz8uZW5naW5lICE9IHVuZGVmaW5lZCAmJiAhaXNWYWxpZFNlbVZlclZlcnNpb25SYW5nZShmb3JtQ29uZmlnLmRlcGVuZGVuY2llcy5lbmdpbmUpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgJHtmb3JtQ29uZmlnLmRlcGVuZGVuY2llcy5lbmdpbmV9IGlzIG5vdCB2YWxpZCB2ZXJzaW9uIGZvcm1hdGApO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgICB0aGVtZXM6IGZvcm1Db25maWcudGhlbWVzLFxuICAgICAgICBidWlsZDogZm9ybUNvbmZpZy5idWlsZCB8fCBcIm1hbnVhbFwiLFxuICAgICAgICBtb2RlOiBmb3JtQ29uZmlnLm1vZGUgPz8gXCJub3JtYWwtYnVpbGRcIixcbiAgICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgICAgIHVzZVNlcnZlclNpZGVGTGFuZ05vcm1hbGl6YXRpb246IGZvcm1Db25maWcuc2V0dGluZ3M/LnVzZVNlcnZlclNpZGVGTGFuZ05vcm1hbGl6YXRpb24gPz8gZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICAgIGRlcGVuZGVuY2llczpcbiAgICAgICAgICAgIGZvcm1Db25maWcuZGVwZW5kZW5jaWVzICE9IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRvcjogZm9ybUNvbmZpZy5kZXBlbmRlbmNpZXMuZ2VuZXJhdG9yLFxuICAgICAgICAgICAgICAgICAgICAgIGVuZ2luZTogZm9ybUNvbmZpZy5kZXBlbmRlbmNpZXMuZW5naW5lLFxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgIH07XG59XG4iXX0=
136
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9CdWlsZFRhc2tzL1Jlc29sdmVGb3JtSW5mby50cyJdLCJuYW1lcyI6WyJGb3JtQnVpbGRNb2RlIiwicmVzb2x2ZUZvcm1JbmZvIiwiZm9ybUpzb25GaWxlIiwicGF0aFRvRm9ybSIsIl9lbmdpbmVEaXJlY3RvcnkiLCJsb2dnZXIiLCJ1cGdyYWRlRm9ybUpzb24iLCJ1c2VMYXN0U3RhYmxlVmVyc2lvbiIsInVzZVByZXJlbGVhc2VWZXJzaW9uIiwibmlnaHRseSIsImZvcm1Db25maWciLCJyZWFkRm9ybUNvbmZpZyIsInVuZGVmaW5lZCIsIkVycm9yIiwiZGVwZW5kZW5jaWVzIiwiZW5naW5lIiwiZ2VuZXJhdG9yIiwibG9nIiwiSlNPTiIsInN0cmluZ2lmeSIsInByZXJlbGVhc2VWZXJzaW9uRm9ybUpzb24iLCJnZW5lcmF0b3JWZXJzaW9uIiwiZW5naW5lVmVyc2lvbiIsInR5cGUiLCJwcmVJZCIsInRoZW1lcyIsIm1vZGUiLCJOb0VkaXRvciIsIkNvcHlMZWdhY3lQcmVidWlsdFJlc291cmNlcyIsIk5vcm1hbEJ1aWxkIiwiZm9ybU5hbWUiLCJwYXRoIiwiYmFzZW5hbWUiLCJmb3JtU291cmNlc1BhdGgiLCJpc05ld0Zvcm1Kc29uRm9ybWF0IiwiZ2V0Rm9ybUNvbmZpZ0Zyb21Tb3VyY2UiLCJzZXR0aW5ncyIsInVzZVNlcnZlclNpZGVGTGFuZ05vcm1hbGl6YXRpb24iLCJ4IiwiYnVpbGQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFFQTs7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTs7QUFLQTs7SUFFWUEsYTs7O1dBQUFBLGE7QUFBQUEsRUFBQUEsYSxDQUFBQSxhO0FBQUFBLEVBQUFBLGEsQ0FBQUEsYTtBQUFBQSxFQUFBQSxhLENBQUFBLGE7R0FBQUEsYSw2QkFBQUEsYTs7QUE2Q0wsZUFBZUMsZUFBZixDQUNIQyxZQURHLEVBRUhDLFVBRkcsRUFHSEMsZ0JBSEcsRUFJSEMsTUFBZSxHQUFHLDhCQUpm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LEdBQUc7QUFDYkMsSUFBQUEsK0JBQStCLEVBQUUsS0FEcEI7QUFFYixPQUFHLDRDQUFPM0IsVUFBVSxDQUFDMEIsUUFBbEIsdUVBQThCLEVBQTlCLEVBQWtDRSxDQUFDLElBQUlBLENBQUMsS0FBSzFCLFNBQTdDO0FBRlUsR0FBakI7QUFLQSxTQUFPO0FBQ0hhLElBQUFBLE1BQU0sRUFBRWYsVUFBVSxDQUFDZSxNQURoQjtBQUVIYyxJQUFBQSxLQUFLLEVBQUU3QixVQUFVLENBQUM2QixLQUFYLElBQW9CLFFBRnhCO0FBR0hiLElBQUFBLElBQUksc0JBQUVoQixVQUFVLENBQUNnQixJQUFiLCtEQUFxQixjQUh0QjtBQUlIVSxJQUFBQSxRQUFRLEVBQUVBLFFBSlA7QUFLSHRCLElBQUFBLFlBQVksRUFDUkosVUFBVSxDQUFDSSxZQUFYLElBQTJCRixTQUEzQixHQUNNO0FBQ0lJLE1BQUFBLFNBQVMsRUFBRU4sVUFBVSxDQUFDSSxZQUFYLENBQXdCRSxTQUR2QztBQUVJRCxNQUFBQSxNQUFNLEVBQUVMLFVBQVUsQ0FBQ0ksWUFBWCxDQUF3QkM7QUFGcEMsS0FETixHQUtNSDtBQVhQLEdBQVA7QUFhSCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XG5cbmltcG9ydCB7IHJlYWRKc29uIH0gZnJvbSBcImZzLWV4dHJhXCI7XG5pbXBvcnQgeyBwaWNrQnkgfSBmcm9tIFwibG9kYXNoXCI7XG5cbmltcG9ydCB7IHdyaXRlRmlsZUFzeW5jIH0gZnJvbSBcIi4uL0NvbW1vbnMvRnNVdGlsc1wiO1xuaW1wb3J0IHsgSUxvZ2dlciB9IGZyb20gXCIuLi9Db21tb25zL0xvZ2dpbmcvSUxvZ2dlclwiO1xuaW1wb3J0IHsgZ2V0TG9nZ2VyIH0gZnJvbSBcIi4uL0NvbW1vbnMvTG9nZ2luZy9TdGF0aWNMb2dnZXJcIjtcblxuaW1wb3J0IHtcbiAgICBnZXRMYXN0U3RhYmxlRW5naW5lVmVyc2lvbixcbiAgICBnZXRMYXN0U3RhYmxlR2VuZXJhdG9yVmVyc2lvbixcbiAgICBnZXRQcmVyZWxlYXNlVmVyc2lvbkZvcm1Kc29uLFxufSBmcm9tIFwiLi9QdWJsaXNoZWRWZXJzaW9uVXRpbHNcIjtcbmltcG9ydCB7IENhbmR5VmVyc2lvblNwZWMsIGlzVmFsaWRTZW1WZXJWZXJzaW9uUmFuZ2UsIHBhcnNlQ2FuZHlWZXJzaW9uU3BlYyB9IGZyb20gXCIuL1ZlcnNpb25cIjtcblxuZXhwb3J0IGVudW0gRm9ybUJ1aWxkTW9kZSB7XG4gICAgTm9ybWFsQnVpbGQsXG4gICAgTm9FZGl0b3IsXG4gICAgQ29weUxlZ2FjeVByZWJ1aWx0UmVzb3VyY2VzLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1JbmZvIHtcbiAgICB0aGVtZXM/OiBzdHJpbmdbXTtcbiAgICBtb2RlOiBGb3JtQnVpbGRNb2RlO1xuICAgIGZvcm1OYW1lOiBzdHJpbmc7XG4gICAgZm9ybVNvdXJjZXNQYXRoOiBzdHJpbmc7XG4gICAgZ2VuZXJhdG9yVmVyc2lvbjogdW5kZWZpbmVkIHwgQ2FuZHlWZXJzaW9uU3BlYztcbiAgICBlbmdpbmVWZXJzaW9uOiB1bmRlZmluZWQgfCBDYW5keVZlcnNpb25TcGVjO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1Db25maWdDb250ZW50IHtcbiAgICB0aGVtZXM/OiBzdHJpbmdbXTtcbiAgICBidWlsZD86IFwiY2lcIiB8IFwibWFudWFsXCI7XG4gICAgbW9kZT86IFwibm8tZWRpdG9yXCIgfCBcImNvcHktbGVnYWN5LXByZWJ1aWx0LXJlc291cmNlc1wiO1xuICAgIGRlcGVuZGVuY2llcz86IHtcbiAgICAgICAgZ2VuZXJhdG9yPzogc3RyaW5nO1xuICAgICAgICBlbmdpbmU/OiBzdHJpbmc7XG4gICAgfTtcbiAgICBzZXR0aW5ncz86IHtcbiAgICAgICAgdXNlU2VydmVyU2lkZUZMYW5nTm9ybWFsaXphdGlvbj86IGJvb2xlYW47XG4gICAgICAgIGF1dG9DYWxjdWxhdGlvbkNhbGN1bGF0b3JJbXBsPzogXCJjYWxjdWxhdG9yMlwiO1xuICAgICAgICBkaXNhYmxlRmxhbmdSdWxlc0ZvckVuYWJsZUF1dG9GaWVsZEZlYXR1cmU/OiBib29sZWFuO1xuICAgIH07XG59XG5cbmludGVyZmFjZSBGb3JtQ29uZmlnIHtcbiAgICB0aGVtZXM/OiBzdHJpbmdbXTtcbiAgICBidWlsZD86IFwiY2lcIiB8IFwibWFudWFsXCI7XG4gICAgbW9kZT86IFwibm8tZWRpdG9yXCIgfCBcImNvcHktbGVnYWN5LXByZWJ1aWx0LXJlc291cmNlc1wiIHwgXCJub3JtYWwtYnVpbGRcIjtcbiAgICBkZXBlbmRlbmNpZXM/OiB7XG4gICAgICAgIGdlbmVyYXRvcjogdW5kZWZpbmVkIHwgc3RyaW5nO1xuICAgICAgICBlbmdpbmU6IHVuZGVmaW5lZCB8IHN0cmluZztcbiAgICB9O1xuICAgIHNldHRpbmdzOiB7XG4gICAgICAgIHVzZVNlcnZlclNpZGVGTGFuZ05vcm1hbGl6YXRpb246IGJvb2xlYW47XG4gICAgICAgIGF1dG9DYWxjdWxhdGlvbkNhbGN1bGF0b3JJbXBsPzogXCJjYWxjdWxhdG9yMlwiIHwgXCJkZWZhdWx0XCI7XG4gICAgICAgIGRpc2FibGVGbGFuZ1J1bGVzRm9yRW5hYmxlQXV0b0ZpZWxkRmVhdHVyZT86IGJvb2xlYW47XG4gICAgfTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlc29sdmVGb3JtSW5mbyhcbiAgICBmb3JtSnNvbkZpbGU6IHN0cmluZyxcbiAgICBwYXRoVG9Gb3JtOiBzdHJpbmcsXG4gICAgX2VuZ2luZURpcmVjdG9yeTogdW5kZWZpbmVkIHwgc3RyaW5nLFxuICAgIGxvZ2dlcjogSUxvZ2dlciA9IGdldExvZ2dlcigpLFxuICAgIHVwZ3JhZGVGb3JtSnNvbjogYm9vbGVhbiA9IGZhbHNlLFxuICAgIHVzZUxhc3RTdGFibGVWZXJzaW9uOiBib29sZWFuID0gZmFsc2UsXG4gICAgdXNlUHJlcmVsZWFzZVZlcnNpb24/OiBzdHJpbmcsXG4gICAgbmlnaHRseTogYm9vbGVhbiA9IGZhbHNlXG4pOiBQcm9taXNlPEZvcm1JbmZvPiB7XG4gICAgY29uc3QgZm9ybUNvbmZpZyA9IGF3YWl0IHJlYWRGb3JtQ29uZmlnKGZvcm1Kc29uRmlsZSwgbG9nZ2VyKTtcbiAgICBpZiAodXNlTGFzdFN0YWJsZVZlcnNpb24gJiYgdXNlUHJlcmVsZWFzZVZlcnNpb24gIT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcItCd0LXQvtCx0YXQvtC00LjQvNC+INC40YHQv9C+0LvRjNC30L7QstCw0YLRjCDQu9C40LHQviDRhNC70LDQsyB1c2VMYXN0U3RhYmxlVmVyc2lvbiDQu9C40LHQviB1c2VQcmVyZWxlYXNlVmVyc2lvblwiKTtcbiAgICB9XG4gICAgaWYgKHVzZUxhc3RTdGFibGVWZXJzaW9uKSB7XG4gICAgICAgIGZvcm1Db25maWcuZGVwZW5kZW5jaWVzID0ge1xuICAgICAgICAgICAgZW5naW5lOiBhd2FpdCBnZXRMYXN0U3RhYmxlRW5naW5lVmVyc2lvbigpLFxuICAgICAgICAgICAgZ2VuZXJhdG9yOiBhd2FpdCBnZXRMYXN0U3RhYmxlR2VuZXJhdG9yVmVyc2lvbigpLFxuICAgICAgICB9O1xuICAgICAgICBsb2dnZXIubG9nKGBVcGRhdGVkIHRvIGxhc3Qgc3RhYmxlIHZlcnNpb24gJHtmb3JtQ29uZmlnLmRlcGVuZGVuY2llcy5lbmdpbmV9YCk7XG4gICAgICAgIGF3YWl0IHdyaXRlRmlsZUFzeW5jKGZvcm1Kc29uRmlsZSwgSlNPTi5zdHJpbmdpZnkoZm9ybUNvbmZpZywgdW5kZWZpbmVkLCBcIiAgXCIpLCBcInV0ZjhcIik7XG4gICAgfVxuICAgIGlmICh1c2VQcmVyZWxlYXNlVmVyc2lvbiAhPSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc3QgcHJlcmVsZWFzZVZlcnNpb25Gb3JtSnNvbiA9IGF3YWl0IGdldFByZXJlbGVhc2VWZXJzaW9uRm9ybUpzb24odXNlUHJlcmVsZWFzZVZlcnNpb24pO1xuICAgICAgICBpZiAocHJlcmVsZWFzZVZlcnNpb25Gb3JtSnNvbiAhPSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGZvcm1Db25maWcuZGVwZW5kZW5jaWVzID0ge1xuICAgICAgICAgICAgICAgIGVuZ2luZTogcHJlcmVsZWFzZVZlcnNpb25Gb3JtSnNvbixcbiAgICAgICAgICAgICAgICBnZW5lcmF0b3I6IHByZXJlbGVhc2VWZXJzaW9uRm9ybUpzb24sXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgbG9nZ2VyLmxvZyhgVXBkYXRlZCB0byBsYXN0IHByZXJlbGVhc2UgdmVyc2lvbiAke2Zvcm1Db25maWcuZGVwZW5kZW5jaWVzLmVuZ2luZX1gKTtcbiAgICAgICAgfVxuICAgICAgICBhd2FpdCB3cml0ZUZpbGVBc3luYyhmb3JtSnNvbkZpbGUsIEpTT04uc3RyaW5naWZ5KGZvcm1Db25maWcsIHVuZGVmaW5lZCwgXCIgIFwiKSwgXCJ1dGY4XCIpO1xuICAgIH1cbiAgICBsZXQgZ2VuZXJhdG9yVmVyc2lvbiA9XG4gICAgICAgIGZvcm1Db25maWcuZGVwZW5kZW5jaWVzPy5nZW5lcmF0b3IgIT0gdW5kZWZpbmVkXG4gICAgICAgICAgICA/IHBhcnNlQ2FuZHlWZXJzaW9uU3BlYyhmb3JtQ29uZmlnLmRlcGVuZGVuY2llcy5nZW5lcmF0b3IpXG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICBsZXQgZW5naW5lVmVyc2lvbiA9XG4gICAgICAgIGZvcm1Db25maWcuZGVwZW5kZW5jaWVzPy5lbmdpbmUgIT0gdW5kZWZpbmVkXG4gICAgICAgICAgICA/IHBhcnNlQ2FuZHlWZXJzaW9uU3BlYyhmb3JtQ29uZmlnLmRlcGVuZGVuY2llcy5lbmdpbmUpXG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICBpZiAobmlnaHRseSkge1xuICAgICAgICBnZW5lcmF0b3JWZXJzaW9uID0geyB0eXBlOiBcInByZVwiLCBwcmVJZDogXCJuaWdodGx5XCIgfTtcbiAgICAgICAgZW5naW5lVmVyc2lvbiA9IHsgdHlwZTogXCJwcmVcIiwgcHJlSWQ6IFwibmlnaHRseVwiIH07XG4gICAgfVxuICAgIGlmICh1cGdyYWRlRm9ybUpzb24pIHtcbiAgICAgICAgYXdhaXQgd3JpdGVGaWxlQXN5bmMoZm9ybUpzb25GaWxlLCBKU09OLnN0cmluZ2lmeShmb3JtQ29uZmlnLCB1bmRlZmluZWQsIFwiICBcIiksIFwidXRmOFwiKTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgICAgdGhlbWVzOiBmb3JtQ29uZmlnLnRoZW1lcyxcbiAgICAgICAgbW9kZTpcbiAgICAgICAgICAgIGZvcm1Db25maWcubW9kZSA9PT0gXCJuby1lZGl0b3JcIlxuICAgICAgICAgICAgICAgID8gRm9ybUJ1aWxkTW9kZS5Ob0VkaXRvclxuICAgICAgICAgICAgICAgIDogZm9ybUNvbmZpZy5tb2RlID09PSBcImNvcHktbGVnYWN5LXByZWJ1aWx0LXJlc291cmNlc1wiXG4gICAgICAgICAgICAgICAgPyBGb3JtQnVpbGRNb2RlLkNvcHlMZWdhY3lQcmVidWlsdFJlc291cmNlc1xuICAgICAgICAgICAgICAgIDogRm9ybUJ1aWxkTW9kZS5Ob3JtYWxCdWlsZCxcbiAgICAgICAgZm9ybU5hbWU6IHBhdGguYmFzZW5hbWUocGF0aFRvRm9ybSksXG4gICAgICAgIGZvcm1Tb3VyY2VzUGF0aDogcGF0aFRvRm9ybSxcbiAgICAgICAgZ2VuZXJhdG9yVmVyc2lvbjogZ2VuZXJhdG9yVmVyc2lvbixcbiAgICAgICAgZW5naW5lVmVyc2lvbjogZW5naW5lVmVyc2lvbixcbiAgICB9O1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaXNOZXdGb3JtSnNvbkZvcm1hdChmb3JtSnNvbkZpbGU6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZSBuby11bnNhZmUtYW55XG4gICAgY29uc3QgZm9ybUNvbmZpZzogRm9ybUNvbmZpZ0NvbnRlbnQgPSBhd2FpdCByZWFkSnNvbihmb3JtSnNvbkZpbGUpO1xuICAgIHJldHVybiBmb3JtQ29uZmlnLmRlcGVuZGVuY2llcyAhPSB1bmRlZmluZWQ7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZWFkRm9ybUNvbmZpZyhmb3JtSnNvbkZpbGU6IHN0cmluZywgbG9nZ2VyOiBJTG9nZ2VyKTogUHJvbWlzZTxGb3JtQ29uZmlnPiB7XG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lIG5vLXVuc2FmZS1hbnlcbiAgICBjb25zdCBmb3JtQ29uZmlnOiBGb3JtQ29uZmlnQ29udGVudCA9IGF3YWl0IHJlYWRKc29uKGZvcm1Kc29uRmlsZSk7XG4gICAgcmV0dXJuIGdldEZvcm1Db25maWdGcm9tU291cmNlKGZvcm1Db25maWcsIGxvZ2dlcik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGb3JtQ29uZmlnRnJvbVNvdXJjZShmb3JtQ29uZmlnOiBGb3JtQ29uZmlnQ29udGVudCwgbG9nZ2VyOiBJTG9nZ2VyKTogRm9ybUNvbmZpZyB7XG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lIG5vLXVuc2FmZS1hbnlcbiAgICBpZiAoXG4gICAgICAgIGZvcm1Db25maWcuZGVwZW5kZW5jaWVzPy5nZW5lcmF0b3IgIT0gdW5kZWZpbmVkICYmXG4gICAgICAgICFpc1ZhbGlkU2VtVmVyVmVyc2lvblJhbmdlKGZvcm1Db25maWcuZGVwZW5kZW5jaWVzLmdlbmVyYXRvcilcbiAgICApIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2Zvcm1Db25maWcuZGVwZW5kZW5jaWVzLmdlbmVyYXRvcn0gaXMgbm90IHZhbGlkIHZlcnNpb24gZm9ybWF0YCk7XG4gICAgfVxuXG4gICAgaWYgKGZvcm1Db25maWcuZGVwZW5kZW5jaWVzPy5lbmdpbmUgIT0gdW5kZWZpbmVkICYmICFpc1ZhbGlkU2VtVmVyVmVyc2lvblJhbmdlKGZvcm1Db25maWcuZGVwZW5kZW5jaWVzLmVuZ2luZSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2Zvcm1Db25maWcuZGVwZW5kZW5jaWVzLmVuZ2luZX0gaXMgbm90IHZhbGlkIHZlcnNpb24gZm9ybWF0YCk7XG4gICAgfVxuXG4gICAgY29uc3Qgc2V0dGluZ3MgPSB7XG4gICAgICAgIHVzZVNlcnZlclNpZGVGTGFuZ05vcm1hbGl6YXRpb246IGZhbHNlLFxuICAgICAgICAuLi5waWNrQnkoZm9ybUNvbmZpZy5zZXR0aW5ncyA/PyB7fSwgeCA9PiB4ICE9PSB1bmRlZmluZWQpLFxuICAgIH07XG5cbiAgICByZXR1cm4ge1xuICAgICAgICB0aGVtZXM6IGZvcm1Db25maWcudGhlbWVzLFxuICAgICAgICBidWlsZDogZm9ybUNvbmZpZy5idWlsZCB8fCBcIm1hbnVhbFwiLFxuICAgICAgICBtb2RlOiBmb3JtQ29uZmlnLm1vZGUgPz8gXCJub3JtYWwtYnVpbGRcIixcbiAgICAgICAgc2V0dGluZ3M6IHNldHRpbmdzLFxuICAgICAgICBkZXBlbmRlbmNpZXM6XG4gICAgICAgICAgICBmb3JtQ29uZmlnLmRlcGVuZGVuY2llcyAhPSB1bmRlZmluZWRcbiAgICAgICAgICAgICAgICA/IHtcbiAgICAgICAgICAgICAgICAgICAgICBnZW5lcmF0b3I6IGZvcm1Db25maWcuZGVwZW5kZW5jaWVzLmdlbmVyYXRvcixcbiAgICAgICAgICAgICAgICAgICAgICBlbmdpbmU6IGZvcm1Db25maWcuZGVwZW5kZW5jaWVzLmVuZ2luZSxcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICB9O1xufVxuIl19