@tricoteuses/assemblee 0.25.4 → 0.26.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/lib/bugs/acteur-00010.js +5 -5
- package/lib/bugs/agenda-00002.js +3 -3
- package/lib/bugs/agenda-00008.js +5 -5
- package/lib/bugs/agenda-00011.js +3 -3
- package/lib/bugs.js +2 -2
- package/lib/cleaners/acteurs.js +39 -2
- package/lib/cleaners/acteurs.mjs +25 -1
- package/lib/cleaners/organes.js +19 -2
- package/lib/cleaners/organes.mjs +18 -1
- package/lib/cleaners/reunions.js +1 -1
- package/lib/file_systems.js +7 -3
- package/lib/parsers/documents.js +2 -2
- package/lib/parsers/documents.mjs +2 -2
- package/lib/parsers/recherche_amendements.js +2 -2
- package/lib/raw_types/acteurs_et_organes.d.ts +181 -13
- package/lib/raw_types/acteurs_et_organes.js +327 -60
- package/lib/raw_types/acteurs_et_organes.mjs +318 -55
- package/lib/raw_types/agendas.d.ts +1 -1
- package/lib/raw_types/agendas.js +4 -4
- package/lib/raw_types/agendas.mjs +2 -2
- package/lib/raw_types/amendements.d.ts +2 -2
- package/lib/raw_types/amendements.js +5 -5
- package/lib/raw_types/amendements.mjs +3 -3
- package/lib/raw_types/dossiers_legislatifs.js +2 -2
- package/lib/raw_types/scrutins.js +2 -2
- package/lib/scripts/bugs_helper.js +2 -2
- package/lib/scripts/clean_data.js +2 -2
- package/lib/scripts/clean_data.mjs +2 -2
- package/lib/scripts/clean_reorganized_data.js +1 -1
- package/lib/scripts/document_dossiers_legislatifs.js +10 -10
- package/lib/scripts/reorganize_data.js +195 -136
- package/lib/scripts/reorganize_data.mjs +46 -2
- package/lib/scripts/retrieve_documents.js +2 -2
- package/lib/scripts/retrieve_open_data.js +2 -2
- package/lib/scripts/retrieve_open_data.mjs +2 -2
- package/lib/scripts/retrieve_pending_amendments.js +2 -2
- package/lib/scripts/retrieve_textes_lois.js +2 -2
- package/lib/scripts/test_load.js +2 -2
- package/lib/scripts/test_load.mjs +2 -2
- package/lib/scripts/test_load_big_files.js +2 -2
- package/lib/scripts/test_load_big_files.mjs +2 -2
- package/lib/scripts/validate_json.js +2 -2
- package/lib/shared_types/codes_actes.js +3 -3
- package/lib/shared_types/codes_actes.mjs +1 -1
- package/lib/types/acteurs_et_organes.d.ts +48 -27
- package/lib/types/acteurs_et_organes.js +132 -39
- package/lib/types/acteurs_et_organes.mjs +128 -35
- package/lib/types/agendas.js +2 -2
- package/lib/types/amendements.js +2 -2
- package/lib/types/dossiers_legislatifs.js +3 -3
- package/lib/types/dossiers_legislatifs.mjs +1 -1
- package/lib/types/scrutins.js +2 -2
- package/package.json +4 -4
package/lib/bugs/acteur-00010.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
require("core-js/modules/es.object.to-string.js");
|
|
6
6
|
|
|
7
7
|
require("core-js/modules/es.reflect.construct.js");
|
|
8
8
|
|
|
9
|
-
require("core-js/modules/es.object.create.js");
|
|
10
|
-
|
|
11
9
|
require("core-js/modules/es.object.define-property.js");
|
|
12
10
|
|
|
11
|
+
require("core-js/modules/es.object.create.js");
|
|
12
|
+
|
|
13
13
|
require("core-js/modules/es.promise.js");
|
|
14
14
|
|
|
15
15
|
require("core-js/modules/es.symbol.js");
|
|
@@ -47,9 +47,9 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
|
|
|
47
47
|
|
|
48
48
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
49
49
|
|
|
50
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
50
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
51
51
|
|
|
52
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass
|
|
52
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } Object.defineProperty(subClass, "prototype", { value: Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }), writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
53
53
|
|
|
54
54
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
55
55
|
|
package/lib/bugs/agenda-00002.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
require("core-js/modules/es.object.set-prototype-of.js");
|
|
6
6
|
|
|
@@ -95,9 +95,9 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
|
|
|
95
95
|
|
|
96
96
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
97
97
|
|
|
98
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
98
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
99
99
|
|
|
100
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass
|
|
100
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } Object.defineProperty(subClass, "prototype", { value: Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }), writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
101
101
|
|
|
102
102
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
103
103
|
|
package/lib/bugs/agenda-00008.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
require("core-js/modules/es.object.to-string.js");
|
|
6
6
|
|
|
7
7
|
require("core-js/modules/es.reflect.construct.js");
|
|
8
8
|
|
|
9
|
-
require("core-js/modules/es.object.create.js");
|
|
10
|
-
|
|
11
9
|
require("core-js/modules/es.object.define-property.js");
|
|
12
10
|
|
|
11
|
+
require("core-js/modules/es.object.create.js");
|
|
12
|
+
|
|
13
13
|
require("core-js/modules/es.promise.js");
|
|
14
14
|
|
|
15
15
|
require("core-js/modules/es.symbol.js");
|
|
@@ -47,9 +47,9 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
|
|
|
47
47
|
|
|
48
48
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
49
49
|
|
|
50
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
50
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
51
51
|
|
|
52
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass
|
|
52
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } Object.defineProperty(subClass, "prototype", { value: Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }), writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
53
53
|
|
|
54
54
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
55
55
|
|
package/lib/bugs/agenda-00011.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
require("core-js/modules/es.object.set-prototype-of.js");
|
|
6
6
|
|
|
@@ -61,9 +61,9 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
|
|
|
61
61
|
|
|
62
62
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
63
63
|
|
|
64
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
64
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
65
65
|
|
|
66
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass
|
|
66
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } Object.defineProperty(subClass, "prototype", { value: Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }), writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
67
67
|
|
|
68
68
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
69
69
|
|
package/lib/bugs.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
4
|
|
|
5
5
|
require("core-js/modules/es.promise.js");
|
|
6
6
|
|
|
@@ -71,7 +71,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
|
|
|
71
71
|
|
|
72
72
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
73
73
|
|
|
74
|
-
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
74
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
75
75
|
|
|
76
76
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
77
77
|
|
package/lib/cleaners/acteurs.js
CHANGED
|
@@ -54,7 +54,7 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
54
54
|
|
|
55
55
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
56
56
|
|
|
57
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
57
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
58
58
|
|
|
59
59
|
function cleanActeur(acteur) {
|
|
60
60
|
(0, _xml.cleanXmlArtefacts)(acteur);
|
|
@@ -293,6 +293,43 @@ function cleanActeur(acteur) {
|
|
|
293
293
|
return a.uid.length === b.uid.length ? a.uid.localeCompare(b.uid) : a.uid.length - b.uid.length;
|
|
294
294
|
});
|
|
295
295
|
}
|
|
296
|
+
|
|
297
|
+
var deports = acteur.deports;
|
|
298
|
+
|
|
299
|
+
if (deports !== undefined) {
|
|
300
|
+
var deport = deports.deport;
|
|
301
|
+
|
|
302
|
+
if (Array.isArray(deport)) {
|
|
303
|
+
deports = acteur.deports = deport;
|
|
304
|
+
} else if (_typeof(deport) === "object") {
|
|
305
|
+
deports = acteur.deports = [deport];
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
var _iterator5 = _createForOfIteratorHelper(deports),
|
|
309
|
+
_step5;
|
|
310
|
+
|
|
311
|
+
try {
|
|
312
|
+
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
313
|
+
var _deport = _step5.value;
|
|
314
|
+
(0, _xml.cleanXmlArtefacts)(_deport);
|
|
315
|
+
var cible = _deport.cible;
|
|
316
|
+
{
|
|
317
|
+
(0, _xml.cleanXmlArtefacts)(cible);
|
|
318
|
+
|
|
319
|
+
_assert["default"].strictEqual(cible.references, undefined);
|
|
320
|
+
}
|
|
321
|
+
} // Sort deports to ease comparison of different open data files.
|
|
322
|
+
|
|
323
|
+
} catch (err) {
|
|
324
|
+
_iterator5.e(err);
|
|
325
|
+
} finally {
|
|
326
|
+
_iterator5.f();
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
deports.sort(function (a, b) {
|
|
330
|
+
return a.uid.length === b.uid.length ? a.uid.localeCompare(b.uid) : a.uid.length - b.uid.length;
|
|
331
|
+
});
|
|
332
|
+
}
|
|
296
333
|
}
|
|
297
334
|
|
|
298
335
|
function cleanRapporteur(rapporteur) {
|
|
@@ -303,4 +340,4 @@ function cleanRapporteur(rapporteur) {
|
|
|
303
340
|
rapporteur.etudePlfRef = etudePlfRef;
|
|
304
341
|
}
|
|
305
342
|
}
|
|
306
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGVhbmVycy9hY3RldXJzLnRzIl0sIm5hbWVzIjpbImNsZWFuQWN0ZXVyIiwiYWN0ZXVyIiwiYXNzZXJ0Iiwic3RyaWN0RXF1YWwiLCJ1aWQiLCJldGF0Q2l2aWwiLCJpZGVudCIsImluZm9OYWlzc2FuY2UiLCJwcm9mZXNzaW9uIiwidW5kZWZpbmVkIiwic29jUHJvY0luc2VlIiwic29jUHJvY0lOU0VFIiwidXJpSGF0dnAiLCJ1cmlfaGF0dnAiLCJhZHJlc3NlcyIsImFkcmVzc2UiLCJBcnJheSIsImlzQXJyYXkiLCJub3RTdHJpY3RFcXVhbCIsInhzaVR5cGUiLCJpbmNsdWRlcyIsInR5cGUiLCJ0eXBlTGliZWxsZSIsImFkcmVzc2VEZVJhdHRhY2hlbWVudCIsIm1hbmRhdHMiLCJtYW5kYXQiLCJpbmZvc1F1YWxpdGUiLCJvcmdhbmVzIiwib3JnYW5lc1JlZnMiLCJvcmdhbmVSZWYiLCJzdXBwbGVhbnQiLCJzdXBwbGVhbnRzIiwiZWxlY3Rpb24iLCJsaWV1IiwibWFuZGF0dXJlIiwiY2hhbWJyZSIsImNvbGxhYm9yYXRldXJzIiwiY29sbGFib3JhdGV1cnNBcnJheSIsImZpbHRlciIsImNvbGxhYm9yYXRldXIiLCJtYXAiLCJjb2xsYWJvcmF0ZXVySXRlbSIsInB1c2giLCJsZW5ndGgiLCJkYXRlRGVidXQiLCJkYXRlRmluIiwiaW5mb3NIb3JzU2lhbiIsIkluZm9zSG9yc1NJQU4iLCJIQVRWUF9VUkkiLCJPYmplY3QiLCJrZXlzIiwic29ydCIsImEiLCJiIiwibG9jYWxlQ29tcGFyZSIsImNsZWFuUmFwcG9ydGV1ciIsInJhcHBvcnRldXIiLCJldHVkZVBsZlJlZiIsImV0dWRlUExGUmVmIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUVBOzs7Ozs7Ozs7Ozs7QUFFTyxTQUFTQSxXQUFULENBQXFCQyxNQUFyQixFQUF3QztBQUM3Qyw4QkFBa0JBLE1BQWxC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c0NBQWtCcUMsYUFBbEI7O0FBRUE1Qyw2QkFBT0MsV0FBUCxDQUFtQjJDLGFBQWEsQ0FBQ0UsU0FBakMsRUFBNEN2QyxTQUE1Qzs7QUFDQVAsNkJBQU9DLFdBQVAsQ0FBbUI4QyxNQUFNLENBQUNDLElBQVAsQ0FBWUosYUFBWixFQUEyQkgsTUFBOUMsRUFBc0QsQ0FBdEQ7O0FBQ0EsaUJBQU9sQixNQUFNLENBQUNzQixhQUFkO0FBQ0Q7QUFoR3NCOztBQVF6Qiw2REFBOEI7QUFBQTtBQXlGN0IsT0FqR3dCLENBbUd6Qjs7QUFuR3lCO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBb0d6QnZCLElBQUFBLE9BQU8sQ0FBQzJCLElBQVIsQ0FBYSxVQUFDQyxDQUFELEVBQXFCQyxDQUFyQjtBQUFBLGFBQ1hELENBQUMsQ0FBQ2hELEdBQUYsQ0FBTXVDLE1BQU4sS0FBaUJVLENBQUMsQ0FBQ2pELEdBQUYsQ0FBTXVDLE1BQXZCLEdBQ0lTLENBQUMsQ0FBQ2hELEdBQUYsQ0FBTWtELGFBQU4sQ0FBb0JELENBQUMsQ0FBQ2pELEdBQXRCLENBREosR0FFSWdELENBQUMsQ0FBQ2hELEdBQUYsQ0FBTXVDLE1BQU4sR0FBZVUsQ0FBQyxDQUFDakQsR0FBRixDQUFNdUMsTUFIZDtBQUFBLEtBQWI7QUFLRDtBQUNGOztBQUVNLFNBQVNZLGVBQVQsQ0FBeUJDLFVBQXpCLEVBQTBDO0FBQy9DLE1BQU1DLFdBQVcsR0FBR0QsVUFBVSxDQUFDRSxXQUEvQjs7QUFDQSxNQUFJRixVQUFVLENBQUNFLFdBQVgsS0FBMkJqRCxTQUEvQixFQUEwQztBQUN4QyxXQUFPK0MsVUFBVSxDQUFDRSxXQUFsQjtBQUNBRixJQUFBQSxVQUFVLENBQUNDLFdBQVgsR0FBeUJBLFdBQXpCO0FBQ0Q7QUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSBcImFzc2VydFwiXG5cbmltcG9ydCB7IGNsZWFuWG1sQXJ0ZWZhY3RzIH0gZnJvbSBcIi4veG1sXCJcblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFuQWN0ZXVyKGFjdGV1cjogYW55KTogdm9pZCB7XG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKGFjdGV1cilcblxuICBhc3NlcnQuc3RyaWN0RXF1YWwoYWN0ZXVyLnVpZFtcIkB4c2k6dHlwZVwiXSwgXCJJZEFjdGV1cl90eXBlXCIpXG4gIGFjdGV1ci51aWQgPSBhY3RldXIudWlkW1wiI3RleHRcIl1cbiAgYXNzZXJ0KGFjdGV1ci51aWQpXG5cbiAgY29uc3QgZXRhdENpdmlsID0gYWN0ZXVyLmV0YXRDaXZpbFxuICB7XG4gICAgY2xlYW5YbWxBcnRlZmFjdHMoZXRhdENpdmlsKVxuXG4gICAgY29uc3QgaWRlbnQgPSBldGF0Q2l2aWwuaWRlbnRcbiAgICB7XG4gICAgICBjbGVhblhtbEFydGVmYWN0cyhpZGVudClcblxuICAgICAgY29uc3QgaW5mb05haXNzYW5jZSA9IGV0YXRDaXZpbC5pbmZvTmFpc3NhbmNlXG4gICAgICB7XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGluZm9OYWlzc2FuY2UpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29uc3QgcHJvZmVzc2lvbiA9IGFjdGV1ci5wcm9mZXNzaW9uXG4gIGlmIChwcm9mZXNzaW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICBjbGVhblhtbEFydGVmYWN0cyhwcm9mZXNzaW9uKVxuXG4gICAgY29uc3Qgc29jUHJvY0luc2VlID0gcHJvZmVzc2lvbi5zb2NQcm9jSU5TRUVcbiAgICBhc3NlcnQoc29jUHJvY0luc2VlKVxuICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKHNvY1Byb2NJbnNlZSlcbiAgICBkZWxldGUgcHJvZmVzc2lvbi5zb2NQcm9jSU5TRUVcbiAgICBwcm9mZXNzaW9uLnNvY1Byb2NJbnNlZSA9IHNvY1Byb2NJbnNlZVxuICB9XG5cbiAgY29uc3QgdXJpSGF0dnAgPSBhY3RldXIudXJpX2hhdHZwXG4gIGlmICh1cmlIYXR2cCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgYWN0ZXVyLnVyaUhhdHZwID0gdXJpSGF0dnBcbiAgICBkZWxldGUgYWN0ZXVyLnVyaV9oYXR2cFxuICB9XG5cbiAgbGV0IGFkcmVzc2VzID0gYWN0ZXVyLmFkcmVzc2VzXG4gIGlmIChhZHJlc3NlcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgYWRyZXNzZXMgPSBhZHJlc3Nlcy5hZHJlc3NlXG4gICAgaWYgKGFkcmVzc2VzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGRlbGV0ZSBhY3RldXIuYWRyZXNzZXNcbiAgICAgIGFkcmVzc2VzID0gdW5kZWZpbmVkXG4gICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KGFkcmVzc2VzKSkge1xuICAgICAgYWN0ZXVyLmFkcmVzc2VzID0gYWRyZXNzZXNcbiAgICB9IGVsc2Uge1xuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFkcmVzc2VzLCBudWxsKVxuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKHR5cGVvZiBhZHJlc3NlcywgXCJvYmplY3RcIilcbiAgICAgIGFjdGV1ci5hZHJlc3NlcyA9IGFkcmVzc2VzID0gW2FkcmVzc2VzXVxuICAgIH1cbiAgICBpZiAoYWRyZXNzZXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgZm9yIChjb25zdCBhZHJlc3NlIG9mIGFkcmVzc2VzKSB7XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGFkcmVzc2UpXG5cbiAgICAgICAgY29uc3QgeHNpVHlwZSA9IGFkcmVzc2VbXCJAeHNpOnR5cGVcIl1cbiAgICAgICAgYXNzZXJ0KFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIFwiQWRyZXNzZU1haWxfVHlwZVwiLFxuICAgICAgICAgICAgXCJBZHJlc3NlUG9zdGFsZV9UeXBlXCIsXG4gICAgICAgICAgICBcIkFkcmVzc2VTaXRlV2ViX1R5cGVcIixcbiAgICAgICAgICAgIFwiQWRyZXNzZVRlbGVwaG9uaXF1ZV9UeXBlXCIsXG4gICAgICAgICAgXS5pbmNsdWRlcyh4c2lUeXBlKSxcbiAgICAgICAgICBgVW5leHBlY3RlZCBcIkB4c2k6dHlwZVwiOiAke3hzaVR5cGV9YCxcbiAgICAgICAgKVxuICAgICAgICBhZHJlc3NlLnhzaVR5cGUgPSB4c2lUeXBlXG4gICAgICAgIGRlbGV0ZSBhZHJlc3NlW1wiQHhzaTp0eXBlXCJdXG5cbiAgICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFkcmVzc2UudWlkLCB1bmRlZmluZWQpXG4gICAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhZHJlc3NlLnR5cGUsIHVuZGVmaW5lZClcbiAgICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFkcmVzc2UudHlwZUxpYmVsbGUsIHVuZGVmaW5lZClcblxuICAgICAgICBpZiAoeHNpVHlwZSA9PT0gXCJBZHJlc3NlUG9zdGFsZV9UeXBlXCIpIHtcbiAgICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoYWRyZXNzZS5hZHJlc3NlRGVSYXR0YWNoZW1lbnQsIHVuZGVmaW5lZClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGxldCBtYW5kYXRzID0gYWN0ZXVyLm1hbmRhdHNcbiAgaWYgKG1hbmRhdHMgIT09IHVuZGVmaW5lZCkge1xuICAgIGxldCBtYW5kYXQgPSBtYW5kYXRzLm1hbmRhdFxuICAgIGlmIChBcnJheS5pc0FycmF5KG1hbmRhdCkpIHtcbiAgICAgIG1hbmRhdHMgPSBhY3RldXIubWFuZGF0cyA9IG1hbmRhdFxuICAgIH0gZWxzZSBpZiAodHlwZW9mIG1hbmRhdCA9PT0gXCJvYmplY3RcIikge1xuICAgICAgbWFuZGF0cyA9IGFjdGV1ci5tYW5kYXRzID0gW21hbmRhdF1cbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IG1hbmRhdCBvZiBtYW5kYXRzKSB7XG4gICAgICBjbGVhblhtbEFydGVmYWN0cyhtYW5kYXQpXG5cbiAgICAgIGNvbnN0IHhzaVR5cGUgPSBtYW5kYXRbXCJAeHNpOnR5cGVcIl1cbiAgICAgIGlmICh4c2lUeXBlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgbWFuZGF0LnhzaVR5cGUgPSB4c2lUeXBlXG4gICAgICAgIGRlbGV0ZSBtYW5kYXRbXCJAeHNpOnR5cGVcIl1cbiAgICAgIH1cblxuICAgICAgY29uc3QgaW5mb3NRdWFsaXRlID0gbWFuZGF0LmluZm9zUXVhbGl0ZVxuICAgICAge1xuICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhpbmZvc1F1YWxpdGUpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG9yZ2FuZXMgPSBtYW5kYXQub3JnYW5lc1xuICAgICAgZGVsZXRlIG1hbmRhdC5vcmdhbmVzXG4gICAgICBsZXQgb3JnYW5lc1JlZnMgPSBvcmdhbmVzLm9yZ2FuZVJlZlxuICAgICAgYXNzZXJ0KG9yZ2FuZXNSZWZzKVxuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KG9yZ2FuZXNSZWZzKSkge1xuICAgICAgICBvcmdhbmVzUmVmcyA9IFtvcmdhbmVzUmVmc11cbiAgICAgIH1cbiAgICAgIG1hbmRhdC5vcmdhbmVzUmVmcyA9IG9yZ2FuZXNSZWZzXG5cbiAgICAgIGxldCBzdXBwbGVhbnQgPSBtYW5kYXQuc3VwcGxlYW50c1xuICAgICAgZGVsZXRlIG1hbmRhdC5zdXBwbGVhbnRzXG4gICAgICBpZiAoc3VwcGxlYW50KSB7XG4gICAgICAgIHN1cHBsZWFudCA9IHN1cHBsZWFudC5zdXBwbGVhbnRcbiAgICAgICAgYXNzZXJ0KHN1cHBsZWFudClcbiAgICAgICAgbWFuZGF0LnN1cHBsZWFudCA9IHN1cHBsZWFudFxuXG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKHN1cHBsZWFudClcbiAgICAgIH1cblxuICAgICAgY29uc3QgZWxlY3Rpb24gPSBtYW5kYXQuZWxlY3Rpb25cbiAgICAgIGlmIChlbGVjdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGVsZWN0aW9uKVxuXG4gICAgICAgIGNvbnN0IGxpZXUgPSBlbGVjdGlvbi5saWV1XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGxpZXUpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1hbmRhdHVyZSA9IG1hbmRhdC5tYW5kYXR1cmVcbiAgICAgIGlmIChtYW5kYXR1cmUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhtYW5kYXR1cmUpXG4gICAgICB9XG5cbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChtYW5kYXQuY2hhbWJyZSwgdW5kZWZpbmVkKVxuXG4gICAgICAvLyBSZXBsYWNlIGNvbGxhYm9yYXRldXJzIHdpdGggYW4gYXJyYXkgb2YgY29sbGFib3JhdGV1cnMuXG4gICAgICBsZXQgY29sbGFib3JhdGV1cnMgPSBtYW5kYXQuY29sbGFib3JhdGV1cnNcbiAgICAgIGlmIChjb2xsYWJvcmF0ZXVycyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnN0IGNvbGxhYm9yYXRldXJzQXJyYXkgPSBBcnJheS5pc0FycmF5KGNvbGxhYm9yYXRldXJzKVxuICAgICAgICAgID8gY29sbGFib3JhdGV1cnMuZmlsdGVyKChjb2xsYWJvcmF0ZXVyKSA9PiBjb2xsYWJvcmF0ZXVyICE9PSBudWxsKVxuICAgICAgICAgIDogW2NvbGxhYm9yYXRldXJzXVxuICAgICAgICBjb2xsYWJvcmF0ZXVycyA9IFtdXG4gICAgICAgIGNvbGxhYm9yYXRldXJzQXJyYXkubWFwKCh7IGNvbGxhYm9yYXRldXIgfSkgPT4ge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNvbGxhYm9yYXRldXIpKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGNvbGxhYm9yYXRldXJJdGVtIG9mIGNvbGxhYm9yYXRldXIpIHtcbiAgICAgICAgICAgICAgaWYgKGNvbGxhYm9yYXRldXJJdGVtICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgY29sbGFib3JhdGV1cnMucHVzaChjb2xsYWJvcmF0ZXVySXRlbSlcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSBpZiAoY29sbGFib3JhdGV1cikge1xuICAgICAgICAgICAgY29sbGFib3JhdGV1cnMucHVzaChjb2xsYWJvcmF0ZXVyKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgaWYgKGNvbGxhYm9yYXRldXJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgIGRlbGV0ZSBtYW5kYXQuY29sbGFib3JhdGV1cnNcbiAgICAgICAgICBjb2xsYWJvcmF0ZXVycyA9IHVuZGVmaW5lZFxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG1hbmRhdC5jb2xsYWJvcmF0ZXVycyA9IGNvbGxhYm9yYXRldXJzXG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGNvbnN0IGNvbGxhYm9yYXRldXIgb2YgY29sbGFib3JhdGV1cnMgfHwgW10pIHtcbiAgICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhjb2xsYWJvcmF0ZXVyKVxuXG4gICAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGNvbGxhYm9yYXRldXIuZGF0ZURlYnV0LCB1bmRlZmluZWQpXG4gICAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGNvbGxhYm9yYXRldXIuZGF0ZUZpbiwgdW5kZWZpbmVkKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGluZm9zSG9yc1NpYW4gPSBtYW5kYXQuSW5mb3NIb3JzU0lBTlxuICAgICAgaWYgKGluZm9zSG9yc1NpYW4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhpbmZvc0hvcnNTaWFuKVxuXG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChpbmZvc0hvcnNTaWFuLkhBVFZQX1VSSSwgdW5kZWZpbmVkKVxuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoT2JqZWN0LmtleXMoaW5mb3NIb3JzU2lhbikubGVuZ3RoLCAwKVxuICAgICAgICBkZWxldGUgbWFuZGF0LkluZm9zSG9yc1NJQU5cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb3J0IG1hbmRhdHMgdG8gZWFzZSBjb21wYXJpc29uIG9mIGRpZmZlcmVudCBvcGVuIGRhdGEgZmlsZXMuXG4gICAgbWFuZGF0cy5zb3J0KChhOiB7IHVpZDogc3RyaW5nIH0sIGI6IHsgdWlkOiBzdHJpbmcgfSkgPT5cbiAgICAgIGEudWlkLmxlbmd0aCA9PT0gYi51aWQubGVuZ3RoXG4gICAgICAgID8gYS51aWQubG9jYWxlQ29tcGFyZShiLnVpZClcbiAgICAgICAgOiBhLnVpZC5sZW5ndGggLSBiLnVpZC5sZW5ndGgsXG4gICAgKVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhblJhcHBvcnRldXIocmFwcG9ydGV1cjogYW55KSB7XG4gIGNvbnN0IGV0dWRlUGxmUmVmID0gcmFwcG9ydGV1ci5ldHVkZVBMRlJlZlxuICBpZiAocmFwcG9ydGV1ci5ldHVkZVBMRlJlZiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgZGVsZXRlIHJhcHBvcnRldXIuZXR1ZGVQTEZSZWZcbiAgICByYXBwb3J0ZXVyLmV0dWRlUGxmUmVmID0gZXR1ZGVQbGZSZWZcbiAgfVxufVxuIl19
|
|
343
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGVhbmVycy9hY3RldXJzLnRzIl0sIm5hbWVzIjpbImNsZWFuQWN0ZXVyIiwiYWN0ZXVyIiwiYXNzZXJ0Iiwic3RyaWN0RXF1YWwiLCJ1aWQiLCJldGF0Q2l2aWwiLCJpZGVudCIsImluZm9OYWlzc2FuY2UiLCJwcm9mZXNzaW9uIiwidW5kZWZpbmVkIiwic29jUHJvY0luc2VlIiwic29jUHJvY0lOU0VFIiwidXJpSGF0dnAiLCJ1cmlfaGF0dnAiLCJhZHJlc3NlcyIsImFkcmVzc2UiLCJBcnJheSIsImlzQXJyYXkiLCJub3RTdHJpY3RFcXVhbCIsInhzaVR5cGUiLCJpbmNsdWRlcyIsInR5cGUiLCJ0eXBlTGliZWxsZSIsImFkcmVzc2VEZVJhdHRhY2hlbWVudCIsIm1hbmRhdHMiLCJtYW5kYXQiLCJpbmZvc1F1YWxpdGUiLCJvcmdhbmVzIiwib3JnYW5lc1JlZnMiLCJvcmdhbmVSZWYiLCJzdXBwbGVhbnQiLCJzdXBwbGVhbnRzIiwiZWxlY3Rpb24iLCJsaWV1IiwibWFuZGF0dXJlIiwiY2hhbWJyZSIsImNvbGxhYm9yYXRldXJzIiwiY29sbGFib3JhdGV1cnNBcnJheSIsImZpbHRlciIsImNvbGxhYm9yYXRldXIiLCJtYXAiLCJjb2xsYWJvcmF0ZXVySXRlbSIsInB1c2giLCJsZW5ndGgiLCJkYXRlRGVidXQiLCJkYXRlRmluIiwiaW5mb3NIb3JzU2lhbiIsIkluZm9zSG9yc1NJQU4iLCJIQVRWUF9VUkkiLCJPYmplY3QiLCJrZXlzIiwic29ydCIsImEiLCJiIiwibG9jYWxlQ29tcGFyZSIsImRlcG9ydHMiLCJkZXBvcnQiLCJjaWJsZSIsInJlZmVyZW5jZXMiLCJjbGVhblJhcHBvcnRldXIiLCJyYXBwb3J0ZXVyIiwiZXR1ZGVQbGZSZWYiLCJldHVkZVBMRlJlZiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFFQTs7Ozs7Ozs7Ozs7O0FBRU8sU0FBU0EsV0FB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QUFDc0QsT0FBUCxHQUFpQixDQUFDQyxNQUFELENBQTNCO0FBQ0Q7O0FBTndCLGdEQVFKRCxPQVJJO0FBQUE7O0FBQUE7QUFRekIsNkRBQThCO0FBQUEsWUFBbkJDLE9BQW1CO0FBQzVCLG9DQUFrQkEsT0FBbEI7QUFFQSxZQUFNQyxLQUFLLEdBQUdELE9BQU0sQ0FBQ0MsS0FBckI7QUFDQTtBQUNFLHNDQUFrQkEsS0FBbEI7O0FBRUF2RCw2QkFBT0MsV0FBUCxDQUFtQnNELEtBQUssQ0FBQ0MsVUFBekIsRUFBcUNqRCxTQUFyQztBQUNEO0FBQ0YsT0FqQndCLENBbUJ6Qjs7QUFuQnlCO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBb0J6QjhDLElBQUFBLE9BQU8sQ0FBQ0osSUFBUixDQUFhLFVBQUNDLENBQUQsRUFBcUJDLENBQXJCO0FBQUEsYUFDWEQsQ0FBQyxDQUFDaEQsR0FBRixDQUFNdUMsTUFBTixLQUFpQlUsQ0FBQyxDQUFDakQsR0FBRixDQUFNdUMsTUFBdkIsR0FDSVMsQ0FBQyxDQUFDaEQsR0FBRixDQUFNa0QsYUFBTixDQUFvQkQsQ0FBQyxDQUFDakQsR0FBdEIsQ0FESixHQUVJZ0QsQ0FBQyxDQUFDaEQsR0FBRixDQUFNdUMsTUFBTixHQUFlVSxDQUFDLENBQUNqRCxHQUFGLENBQU11QyxNQUhkO0FBQUEsS0FBYjtBQUtEO0FBQ0Y7O0FBRU0sU0FBU2dCLGVBQVQsQ0FBeUJDLFVBQXpCLEVBQTBDO0FBQy9DLE1BQU1DLFdBQVcsR0FBR0QsVUFBVSxDQUFDRSxXQUEvQjs7QUFDQSxNQUFJRixVQUFVLENBQUNFLFdBQVgsS0FBMkJyRCxTQUEvQixFQUEwQztBQUN4QyxXQUFPbUQsVUFBVSxDQUFDRSxXQUFsQjtBQUNBRixJQUFBQSxVQUFVLENBQUNDLFdBQVgsR0FBeUJBLFdBQXpCO0FBQ0Q7QUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSBcImFzc2VydFwiXG5cbmltcG9ydCB7IGNsZWFuWG1sQXJ0ZWZhY3RzIH0gZnJvbSBcIi4veG1sXCJcblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFuQWN0ZXVyKGFjdGV1cjogYW55KTogdm9pZCB7XG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKGFjdGV1cilcblxuICBhc3NlcnQuc3RyaWN0RXF1YWwoYWN0ZXVyLnVpZFtcIkB4c2k6dHlwZVwiXSwgXCJJZEFjdGV1cl90eXBlXCIpXG4gIGFjdGV1ci51aWQgPSBhY3RldXIudWlkW1wiI3RleHRcIl1cbiAgYXNzZXJ0KGFjdGV1ci51aWQpXG5cbiAgY29uc3QgZXRhdENpdmlsID0gYWN0ZXVyLmV0YXRDaXZpbFxuICB7XG4gICAgY2xlYW5YbWxBcnRlZmFjdHMoZXRhdENpdmlsKVxuXG4gICAgY29uc3QgaWRlbnQgPSBldGF0Q2l2aWwuaWRlbnRcbiAgICB7XG4gICAgICBjbGVhblhtbEFydGVmYWN0cyhpZGVudClcblxuICAgICAgY29uc3QgaW5mb05haXNzYW5jZSA9IGV0YXRDaXZpbC5pbmZvTmFpc3NhbmNlXG4gICAgICB7XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGluZm9OYWlzc2FuY2UpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29uc3QgcHJvZmVzc2lvbiA9IGFjdGV1ci5wcm9mZXNzaW9uXG4gIGlmIChwcm9mZXNzaW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICBjbGVhblhtbEFydGVmYWN0cyhwcm9mZXNzaW9uKVxuXG4gICAgY29uc3Qgc29jUHJvY0luc2VlID0gcHJvZmVzc2lvbi5zb2NQcm9jSU5TRUVcbiAgICBhc3NlcnQoc29jUHJvY0luc2VlKVxuICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKHNvY1Byb2NJbnNlZSlcbiAgICBkZWxldGUgcHJvZmVzc2lvbi5zb2NQcm9jSU5TRUVcbiAgICBwcm9mZXNzaW9uLnNvY1Byb2NJbnNlZSA9IHNvY1Byb2NJbnNlZVxuICB9XG5cbiAgY29uc3QgdXJpSGF0dnAgPSBhY3RldXIudXJpX2hhdHZwXG4gIGlmICh1cmlIYXR2cCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgYWN0ZXVyLnVyaUhhdHZwID0gdXJpSGF0dnBcbiAgICBkZWxldGUgYWN0ZXVyLnVyaV9oYXR2cFxuICB9XG5cbiAgbGV0IGFkcmVzc2VzID0gYWN0ZXVyLmFkcmVzc2VzXG4gIGlmIChhZHJlc3NlcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgYWRyZXNzZXMgPSBhZHJlc3Nlcy5hZHJlc3NlXG4gICAgaWYgKGFkcmVzc2VzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGRlbGV0ZSBhY3RldXIuYWRyZXNzZXNcbiAgICAgIGFkcmVzc2VzID0gdW5kZWZpbmVkXG4gICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KGFkcmVzc2VzKSkge1xuICAgICAgYWN0ZXVyLmFkcmVzc2VzID0gYWRyZXNzZXNcbiAgICB9IGVsc2Uge1xuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFkcmVzc2VzLCBudWxsKVxuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKHR5cGVvZiBhZHJlc3NlcywgXCJvYmplY3RcIilcbiAgICAgIGFjdGV1ci5hZHJlc3NlcyA9IGFkcmVzc2VzID0gW2FkcmVzc2VzXVxuICAgIH1cbiAgICBpZiAoYWRyZXNzZXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgZm9yIChjb25zdCBhZHJlc3NlIG9mIGFkcmVzc2VzKSB7XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGFkcmVzc2UpXG5cbiAgICAgICAgY29uc3QgeHNpVHlwZSA9IGFkcmVzc2VbXCJAeHNpOnR5cGVcIl1cbiAgICAgICAgYXNzZXJ0KFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIFwiQWRyZXNzZU1haWxfVHlwZVwiLFxuICAgICAgICAgICAgXCJBZHJlc3NlUG9zdGFsZV9UeXBlXCIsXG4gICAgICAgICAgICBcIkFkcmVzc2VTaXRlV2ViX1R5cGVcIixcbiAgICAgICAgICAgIFwiQWRyZXNzZVRlbGVwaG9uaXF1ZV9UeXBlXCIsXG4gICAgICAgICAgXS5pbmNsdWRlcyh4c2lUeXBlKSxcbiAgICAgICAgICBgVW5leHBlY3RlZCBcIkB4c2k6dHlwZVwiOiAke3hzaVR5cGV9YCxcbiAgICAgICAgKVxuICAgICAgICBhZHJlc3NlLnhzaVR5cGUgPSB4c2lUeXBlXG4gICAgICAgIGRlbGV0ZSBhZHJlc3NlW1wiQHhzaTp0eXBlXCJdXG5cbiAgICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFkcmVzc2UudWlkLCB1bmRlZmluZWQpXG4gICAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhZHJlc3NlLnR5cGUsIHVuZGVmaW5lZClcbiAgICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFkcmVzc2UudHlwZUxpYmVsbGUsIHVuZGVmaW5lZClcblxuICAgICAgICBpZiAoeHNpVHlwZSA9PT0gXCJBZHJlc3NlUG9zdGFsZV9UeXBlXCIpIHtcbiAgICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoYWRyZXNzZS5hZHJlc3NlRGVSYXR0YWNoZW1lbnQsIHVuZGVmaW5lZClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGxldCBtYW5kYXRzID0gYWN0ZXVyLm1hbmRhdHNcbiAgaWYgKG1hbmRhdHMgIT09IHVuZGVmaW5lZCkge1xuICAgIGxldCBtYW5kYXQgPSBtYW5kYXRzLm1hbmRhdFxuICAgIGlmIChBcnJheS5pc0FycmF5KG1hbmRhdCkpIHtcbiAgICAgIG1hbmRhdHMgPSBhY3RldXIubWFuZGF0cyA9IG1hbmRhdFxuICAgIH0gZWxzZSBpZiAodHlwZW9mIG1hbmRhdCA9PT0gXCJvYmplY3RcIikge1xuICAgICAgbWFuZGF0cyA9IGFjdGV1ci5tYW5kYXRzID0gW21hbmRhdF1cbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IG1hbmRhdCBvZiBtYW5kYXRzKSB7XG4gICAgICBjbGVhblhtbEFydGVmYWN0cyhtYW5kYXQpXG5cbiAgICAgIGNvbnN0IHhzaVR5cGUgPSBtYW5kYXRbXCJAeHNpOnR5cGVcIl1cbiAgICAgIGlmICh4c2lUeXBlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgbWFuZGF0LnhzaVR5cGUgPSB4c2lUeXBlXG4gICAgICAgIGRlbGV0ZSBtYW5kYXRbXCJAeHNpOnR5cGVcIl1cbiAgICAgIH1cblxuICAgICAgY29uc3QgaW5mb3NRdWFsaXRlID0gbWFuZGF0LmluZm9zUXVhbGl0ZVxuICAgICAge1xuICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhpbmZvc1F1YWxpdGUpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG9yZ2FuZXMgPSBtYW5kYXQub3JnYW5lc1xuICAgICAgZGVsZXRlIG1hbmRhdC5vcmdhbmVzXG4gICAgICBsZXQgb3JnYW5lc1JlZnMgPSBvcmdhbmVzLm9yZ2FuZVJlZlxuICAgICAgYXNzZXJ0KG9yZ2FuZXNSZWZzKVxuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KG9yZ2FuZXNSZWZzKSkge1xuICAgICAgICBvcmdhbmVzUmVmcyA9IFtvcmdhbmVzUmVmc11cbiAgICAgIH1cbiAgICAgIG1hbmRhdC5vcmdhbmVzUmVmcyA9IG9yZ2FuZXNSZWZzXG5cbiAgICAgIGxldCBzdXBwbGVhbnQgPSBtYW5kYXQuc3VwcGxlYW50c1xuICAgICAgZGVsZXRlIG1hbmRhdC5zdXBwbGVhbnRzXG4gICAgICBpZiAoc3VwcGxlYW50KSB7XG4gICAgICAgIHN1cHBsZWFudCA9IHN1cHBsZWFudC5zdXBwbGVhbnRcbiAgICAgICAgYXNzZXJ0KHN1cHBsZWFudClcbiAgICAgICAgbWFuZGF0LnN1cHBsZWFudCA9IHN1cHBsZWFudFxuXG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKHN1cHBsZWFudClcbiAgICAgIH1cblxuICAgICAgY29uc3QgZWxlY3Rpb24gPSBtYW5kYXQuZWxlY3Rpb25cbiAgICAgIGlmIChlbGVjdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGVsZWN0aW9uKVxuXG4gICAgICAgIGNvbnN0IGxpZXUgPSBlbGVjdGlvbi5saWV1XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGxpZXUpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1hbmRhdHVyZSA9IG1hbmRhdC5tYW5kYXR1cmVcbiAgICAgIGlmIChtYW5kYXR1cmUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhtYW5kYXR1cmUpXG4gICAgICB9XG5cbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChtYW5kYXQuY2hhbWJyZSwgdW5kZWZpbmVkKVxuXG4gICAgICAvLyBSZXBsYWNlIGNvbGxhYm9yYXRldXJzIHdpdGggYW4gYXJyYXkgb2YgY29sbGFib3JhdGV1cnMuXG4gICAgICBsZXQgY29sbGFib3JhdGV1cnMgPSBtYW5kYXQuY29sbGFib3JhdGV1cnNcbiAgICAgIGlmIChjb2xsYWJvcmF0ZXVycyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnN0IGNvbGxhYm9yYXRldXJzQXJyYXkgPSBBcnJheS5pc0FycmF5KGNvbGxhYm9yYXRldXJzKVxuICAgICAgICAgID8gY29sbGFib3JhdGV1cnMuZmlsdGVyKChjb2xsYWJvcmF0ZXVyKSA9PiBjb2xsYWJvcmF0ZXVyICE9PSBudWxsKVxuICAgICAgICAgIDogW2NvbGxhYm9yYXRldXJzXVxuICAgICAgICBjb2xsYWJvcmF0ZXVycyA9IFtdXG4gICAgICAgIGNvbGxhYm9yYXRldXJzQXJyYXkubWFwKCh7IGNvbGxhYm9yYXRldXIgfSkgPT4ge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNvbGxhYm9yYXRldXIpKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGNvbGxhYm9yYXRldXJJdGVtIG9mIGNvbGxhYm9yYXRldXIpIHtcbiAgICAgICAgICAgICAgaWYgKGNvbGxhYm9yYXRldXJJdGVtICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgY29sbGFib3JhdGV1cnMucHVzaChjb2xsYWJvcmF0ZXVySXRlbSlcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSBpZiAoY29sbGFib3JhdGV1cikge1xuICAgICAgICAgICAgY29sbGFib3JhdGV1cnMucHVzaChjb2xsYWJvcmF0ZXVyKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgaWYgKGNvbGxhYm9yYXRldXJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgIGRlbGV0ZSBtYW5kYXQuY29sbGFib3JhdGV1cnNcbiAgICAgICAgICBjb2xsYWJvcmF0ZXVycyA9IHVuZGVmaW5lZFxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG1hbmRhdC5jb2xsYWJvcmF0ZXVycyA9IGNvbGxhYm9yYXRldXJzXG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGNvbnN0IGNvbGxhYm9yYXRldXIgb2YgY29sbGFib3JhdGV1cnMgfHwgW10pIHtcbiAgICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhjb2xsYWJvcmF0ZXVyKVxuXG4gICAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGNvbGxhYm9yYXRldXIuZGF0ZURlYnV0LCB1bmRlZmluZWQpXG4gICAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGNvbGxhYm9yYXRldXIuZGF0ZUZpbiwgdW5kZWZpbmVkKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGluZm9zSG9yc1NpYW4gPSBtYW5kYXQuSW5mb3NIb3JzU0lBTlxuICAgICAgaWYgKGluZm9zSG9yc1NpYW4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhpbmZvc0hvcnNTaWFuKVxuXG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChpbmZvc0hvcnNTaWFuLkhBVFZQX1VSSSwgdW5kZWZpbmVkKVxuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoT2JqZWN0LmtleXMoaW5mb3NIb3JzU2lhbikubGVuZ3RoLCAwKVxuICAgICAgICBkZWxldGUgbWFuZGF0LkluZm9zSG9yc1NJQU5cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb3J0IG1hbmRhdHMgdG8gZWFzZSBjb21wYXJpc29uIG9mIGRpZmZlcmVudCBvcGVuIGRhdGEgZmlsZXMuXG4gICAgbWFuZGF0cy5zb3J0KChhOiB7IHVpZDogc3RyaW5nIH0sIGI6IHsgdWlkOiBzdHJpbmcgfSkgPT5cbiAgICAgIGEudWlkLmxlbmd0aCA9PT0gYi51aWQubGVuZ3RoXG4gICAgICAgID8gYS51aWQubG9jYWxlQ29tcGFyZShiLnVpZClcbiAgICAgICAgOiBhLnVpZC5sZW5ndGggLSBiLnVpZC5sZW5ndGgsXG4gICAgKVxuICB9XG5cbiAgbGV0IGRlcG9ydHMgPSBhY3RldXIuZGVwb3J0c1xuICBpZiAoZGVwb3J0cyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgbGV0IGRlcG9ydCA9IGRlcG9ydHMuZGVwb3J0XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZGVwb3J0KSkge1xuICAgICAgZGVwb3J0cyA9IGFjdGV1ci5kZXBvcnRzID0gZGVwb3J0XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgZGVwb3J0ID09PSBcIm9iamVjdFwiKSB7XG4gICAgICBkZXBvcnRzID0gYWN0ZXVyLmRlcG9ydHMgPSBbZGVwb3J0XVxuICAgIH1cblxuICAgIGZvciAoY29uc3QgZGVwb3J0IG9mIGRlcG9ydHMpIHtcbiAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGRlcG9ydClcblxuICAgICAgY29uc3QgY2libGUgPSBkZXBvcnQuY2libGVcbiAgICAgIHtcbiAgICAgICAgY2xlYW5YbWxBcnRlZmFjdHMoY2libGUpXG5cbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGNpYmxlLnJlZmVyZW5jZXMsIHVuZGVmaW5lZClcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb3J0IGRlcG9ydHMgdG8gZWFzZSBjb21wYXJpc29uIG9mIGRpZmZlcmVudCBvcGVuIGRhdGEgZmlsZXMuXG4gICAgZGVwb3J0cy5zb3J0KChhOiB7IHVpZDogc3RyaW5nIH0sIGI6IHsgdWlkOiBzdHJpbmcgfSkgPT5cbiAgICAgIGEudWlkLmxlbmd0aCA9PT0gYi51aWQubGVuZ3RoXG4gICAgICAgID8gYS51aWQubG9jYWxlQ29tcGFyZShiLnVpZClcbiAgICAgICAgOiBhLnVpZC5sZW5ndGggLSBiLnVpZC5sZW5ndGgsXG4gICAgKVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhblJhcHBvcnRldXIocmFwcG9ydGV1cjogYW55KSB7XG4gIGNvbnN0IGV0dWRlUGxmUmVmID0gcmFwcG9ydGV1ci5ldHVkZVBMRlJlZlxuICBpZiAocmFwcG9ydGV1ci5ldHVkZVBMRlJlZiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgZGVsZXRlIHJhcHBvcnRldXIuZXR1ZGVQTEZSZWZcbiAgICByYXBwb3J0ZXVyLmV0dWRlUGxmUmVmID0gZXR1ZGVQbGZSZWZcbiAgfVxufVxuIl19
|
package/lib/cleaners/acteurs.mjs
CHANGED
|
@@ -175,6 +175,30 @@ export function cleanActeur(acteur) {
|
|
|
175
175
|
|
|
176
176
|
mandats.sort((a, b) => a.uid.length === b.uid.length ? a.uid.localeCompare(b.uid) : a.uid.length - b.uid.length);
|
|
177
177
|
}
|
|
178
|
+
|
|
179
|
+
let deports = acteur.deports;
|
|
180
|
+
|
|
181
|
+
if (deports !== undefined) {
|
|
182
|
+
let deport = deports.deport;
|
|
183
|
+
|
|
184
|
+
if (Array.isArray(deport)) {
|
|
185
|
+
deports = acteur.deports = deport;
|
|
186
|
+
} else if (typeof deport === "object") {
|
|
187
|
+
deports = acteur.deports = [deport];
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
for (const deport of deports) {
|
|
191
|
+
cleanXmlArtefacts(deport);
|
|
192
|
+
const cible = deport.cible;
|
|
193
|
+
{
|
|
194
|
+
cleanXmlArtefacts(cible);
|
|
195
|
+
assert.strictEqual(cible.references, undefined);
|
|
196
|
+
}
|
|
197
|
+
} // Sort deports to ease comparison of different open data files.
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
deports.sort((a, b) => a.uid.length === b.uid.length ? a.uid.localeCompare(b.uid) : a.uid.length - b.uid.length);
|
|
201
|
+
}
|
|
178
202
|
}
|
|
179
203
|
export function cleanRapporteur(rapporteur) {
|
|
180
204
|
const etudePlfRef = rapporteur.etudePLFRef;
|
|
@@ -184,4 +208,4 @@ export function cleanRapporteur(rapporteur) {
|
|
|
184
208
|
rapporteur.etudePlfRef = etudePlfRef;
|
|
185
209
|
}
|
|
186
210
|
}
|
|
187
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGVhbmVycy9hY3RldXJzLnRzIl0sIm5hbWVzIjpbImFzc2VydCIsImNsZWFuWG1sQXJ0ZWZhY3RzIiwiY2xlYW5BY3RldXIiLCJhY3RldXIiLCJzdHJpY3RFcXVhbCIsInVpZCIsImV0YXRDaXZpbCIsImlkZW50IiwiaW5mb05haXNzYW5jZSIsInByb2Zlc3Npb24iLCJ1bmRlZmluZWQiLCJzb2NQcm9jSW5zZWUiLCJzb2NQcm9jSU5TRUUiLCJ1cmlIYXR2cCIsInVyaV9oYXR2cCIsImFkcmVzc2VzIiwiYWRyZXNzZSIsIkFycmF5IiwiaXNBcnJheSIsIm5vdFN0cmljdEVxdWFsIiwieHNpVHlwZSIsImluY2x1ZGVzIiwidHlwZSIsInR5cGVMaWJlbGxlIiwiYWRyZXNzZURlUmF0dGFjaGVtZW50IiwibWFuZGF0cyIsIm1hbmRhdCIsImluZm9zUXVhbGl0ZSIsIm9yZ2FuZXMiLCJvcmdhbmVzUmVmcyIsIm9yZ2FuZVJlZiIsInN1cHBsZWFudCIsInN1cHBsZWFudHMiLCJlbGVjdGlvbiIsImxpZXUiLCJtYW5kYXR1cmUiLCJjaGFtYnJlIiwiY29sbGFib3JhdGV1cnMiLCJjb2xsYWJvcmF0ZXVyc0FycmF5IiwiZmlsdGVyIiwiY29sbGFib3JhdGV1ciIsIm1hcCIsImNvbGxhYm9yYXRldXJJdGVtIiwicHVzaCIsImxlbmd0aCIsImRhdGVEZWJ1dCIsImRhdGVGaW4iLCJpbmZvc0hvcnNTaWFuIiwiSW5mb3NIb3JzU0lBTiIsIkhBVFZQX1VSSSIsIk9iamVjdCIsImtleXMiLCJzb3J0IiwiYSIsImIiLCJsb2NhbGVDb21wYXJlIiwiY2xlYW5SYXBwb3J0ZXVyIiwicmFwcG9ydGV1ciIsImV0dWRlUGxmUmVmIiwiZXR1ZGVQTEZSZWYiXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLE1BQVAsTUFBbUIsUUFBbkI7U0FFU0MsaUI7QUFFVCxPQUFPLFNBQVNDLFdBQVQsQ0FBcUJDLE1BQXJCLEVBQXdDO0FBQzdDRixFQUFBQSxpQkFBaUIsQ0FB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QyxXQUFPK0MsVUFBVSxDQUFDRSxXQUFsQjtBQUNBRixJQUFBQSxVQUFVLENBQUNDLFdBQVgsR0FBeUJBLFdBQXpCO0FBQ0Q7QUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSBcImFzc2VydFwiXG5cbmltcG9ydCB7IGNsZWFuWG1sQXJ0ZWZhY3RzIH0gZnJvbSBcIi4veG1sXCJcblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFuQWN0ZXVyKGFjdGV1cjogYW55KTogdm9pZCB7XG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKGFjdGV1cilcblxuICBhc3NlcnQuc3RyaWN0RXF1YWwoYWN0ZXVyLnVpZFtcIkB4c2k6dHlwZVwiXSwgXCJJZEFjdGV1cl90eXBlXCIpXG4gIGFjdGV1ci51aWQgPSBhY3RldXIudWlkW1wiI3RleHRcIl1cbiAgYXNzZXJ0KGFjdGV1ci51aWQpXG5cbiAgY29uc3QgZXRhdENpdmlsID0gYWN0ZXVyLmV0YXRDaXZpbFxuICB7XG4gICAgY2xlYW5YbWxBcnRlZmFjdHMoZXRhdENpdmlsKVxuXG4gICAgY29uc3QgaWRlbnQgPSBldGF0Q2l2aWwuaWRlbnRcbiAgICB7XG4gICAgICBjbGVhblhtbEFydGVmYWN0cyhpZGVudClcblxuICAgICAgY29uc3QgaW5mb05haXNzYW5jZSA9IGV0YXRDaXZpbC5pbmZvTmFpc3NhbmNlXG4gICAgICB7XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGluZm9OYWlzc2FuY2UpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29uc3QgcHJvZmVzc2lvbiA9IGFjdGV1ci5wcm9mZXNzaW9uXG4gIGlmIChwcm9mZXNzaW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICBjbGVhblhtbEFydGVmYWN0cyhwcm9mZXNzaW9uKVxuXG4gICAgY29uc3Qgc29jUHJvY0luc2VlID0gcHJvZmVzc2lvbi5zb2NQcm9jSU5TRUVcbiAgICBhc3NlcnQoc29jUHJvY0luc2VlKVxuICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKHNvY1Byb2NJbnNlZSlcbiAgICBkZWxldGUgcHJvZmVzc2lvbi5zb2NQcm9jSU5TRUVcbiAgICBwcm9mZXNzaW9uLnNvY1Byb2NJbnNlZSA9IHNvY1Byb2NJbnNlZVxuICB9XG5cbiAgY29uc3QgdXJpSGF0dnAgPSBhY3RldXIudXJpX2hhdHZwXG4gIGlmICh1cmlIYXR2cCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgYWN0ZXVyLnVyaUhhdHZwID0gdXJpSGF0dnBcbiAgICBkZWxldGUgYWN0ZXVyLnVyaV9oYXR2cFxuICB9XG5cbiAgbGV0IGFkcmVzc2VzID0gYWN0ZXVyLmFkcmVzc2VzXG4gIGlmIChhZHJlc3NlcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgYWRyZXNzZXMgPSBhZHJlc3Nlcy5hZHJlc3NlXG4gICAgaWYgKGFkcmVzc2VzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGRlbGV0ZSBhY3RldXIuYWRyZXNzZXNcbiAgICAgIGFkcmVzc2VzID0gdW5kZWZpbmVkXG4gICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KGFkcmVzc2VzKSkge1xuICAgICAgYWN0ZXVyLmFkcmVzc2VzID0gYWRyZXNzZXNcbiAgICB9IGVsc2Uge1xuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFkcmVzc2VzLCBudWxsKVxuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKHR5cGVvZiBhZHJlc3NlcywgXCJvYmplY3RcIilcbiAgICAgIGFjdGV1ci5hZHJlc3NlcyA9IGFkcmVzc2VzID0gW2FkcmVzc2VzXVxuICAgIH1cbiAgICBpZiAoYWRyZXNzZXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgZm9yIChjb25zdCBhZHJlc3NlIG9mIGFkcmVzc2VzKSB7XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGFkcmVzc2UpXG5cbiAgICAgICAgY29uc3QgeHNpVHlwZSA9IGFkcmVzc2VbXCJAeHNpOnR5cGVcIl1cbiAgICAgICAgYXNzZXJ0KFxuICAgICAgICAgIFtcbiAgICAgICAgICAgIFwiQWRyZXNzZU1haWxfVHlwZVwiLFxuICAgICAgICAgICAgXCJBZHJlc3NlUG9zdGFsZV9UeXBlXCIsXG4gICAgICAgICAgICBcIkFkcmVzc2VTaXRlV2ViX1R5cGVcIixcbiAgICAgICAgICAgIFwiQWRyZXNzZVRlbGVwaG9uaXF1ZV9UeXBlXCIsXG4gICAgICAgICAgXS5pbmNsdWRlcyh4c2lUeXBlKSxcbiAgICAgICAgICBgVW5leHBlY3RlZCBcIkB4c2k6dHlwZVwiOiAke3hzaVR5cGV9YCxcbiAgICAgICAgKVxuICAgICAgICBhZHJlc3NlLnhzaVR5cGUgPSB4c2lUeXBlXG4gICAgICAgIGRlbGV0ZSBhZHJlc3NlW1wiQHhzaTp0eXBlXCJdXG5cbiAgICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFkcmVzc2UudWlkLCB1bmRlZmluZWQpXG4gICAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhZHJlc3NlLnR5cGUsIHVuZGVmaW5lZClcbiAgICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFkcmVzc2UudHlwZUxpYmVsbGUsIHVuZGVmaW5lZClcblxuICAgICAgICBpZiAoeHNpVHlwZSA9PT0gXCJBZHJlc3NlUG9zdGFsZV9UeXBlXCIpIHtcbiAgICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoYWRyZXNzZS5hZHJlc3NlRGVSYXR0YWNoZW1lbnQsIHVuZGVmaW5lZClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGxldCBtYW5kYXRzID0gYWN0ZXVyLm1hbmRhdHNcbiAgaWYgKG1hbmRhdHMgIT09IHVuZGVmaW5lZCkge1xuICAgIGxldCBtYW5kYXQgPSBtYW5kYXRzLm1hbmRhdFxuICAgIGlmIChBcnJheS5pc0FycmF5KG1hbmRhdCkpIHtcbiAgICAgIG1hbmRhdHMgPSBhY3RldXIubWFuZGF0cyA9IG1hbmRhdFxuICAgIH0gZWxzZSBpZiAodHlwZW9mIG1hbmRhdCA9PT0gXCJvYmplY3RcIikge1xuICAgICAgbWFuZGF0cyA9IGFjdGV1ci5tYW5kYXRzID0gW21hbmRhdF1cbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IG1hbmRhdCBvZiBtYW5kYXRzKSB7XG4gICAgICBjbGVhblhtbEFydGVmYWN0cyhtYW5kYXQpXG5cbiAgICAgIGNvbnN0IHhzaVR5cGUgPSBtYW5kYXRbXCJAeHNpOnR5cGVcIl1cbiAgICAgIGlmICh4c2lUeXBlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgbWFuZGF0LnhzaVR5cGUgPSB4c2lUeXBlXG4gICAgICAgIGRlbGV0ZSBtYW5kYXRbXCJAeHNpOnR5cGVcIl1cbiAgICAgIH1cblxuICAgICAgY29uc3QgaW5mb3NRdWFsaXRlID0gbWFuZGF0LmluZm9zUXVhbGl0ZVxuICAgICAge1xuICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhpbmZvc1F1YWxpdGUpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG9yZ2FuZXMgPSBtYW5kYXQub3JnYW5lc1xuICAgICAgZGVsZXRlIG1hbmRhdC5vcmdhbmVzXG4gICAgICBsZXQgb3JnYW5lc1JlZnMgPSBvcmdhbmVzLm9yZ2FuZVJlZlxuICAgICAgYXNzZXJ0KG9yZ2FuZXNSZWZzKVxuICAgICAgaWYgKCFBcnJheS5pc0FycmF5KG9yZ2FuZXNSZWZzKSkge1xuICAgICAgICBvcmdhbmVzUmVmcyA9IFtvcmdhbmVzUmVmc11cbiAgICAgIH1cbiAgICAgIG1hbmRhdC5vcmdhbmVzUmVmcyA9IG9yZ2FuZXNSZWZzXG5cbiAgICAgIGxldCBzdXBwbGVhbnQgPSBtYW5kYXQuc3VwcGxlYW50c1xuICAgICAgZGVsZXRlIG1hbmRhdC5zdXBwbGVhbnRzXG4gICAgICBpZiAoc3VwcGxlYW50KSB7XG4gICAgICAgIHN1cHBsZWFudCA9IHN1cHBsZWFudC5zdXBwbGVhbnRcbiAgICAgICAgYXNzZXJ0KHN1cHBsZWFudClcbiAgICAgICAgbWFuZGF0LnN1cHBsZWFudCA9IHN1cHBsZWFudFxuXG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKHN1cHBsZWFudClcbiAgICAgIH1cblxuICAgICAgY29uc3QgZWxlY3Rpb24gPSBtYW5kYXQuZWxlY3Rpb25cbiAgICAgIGlmIChlbGVjdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGVsZWN0aW9uKVxuXG4gICAgICAgIGNvbnN0IGxpZXUgPSBlbGVjdGlvbi5saWV1XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGxpZXUpXG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1hbmRhdHVyZSA9IG1hbmRhdC5tYW5kYXR1cmVcbiAgICAgIGlmIChtYW5kYXR1cmUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhtYW5kYXR1cmUpXG4gICAgICB9XG5cbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChtYW5kYXQuY2hhbWJyZSwgdW5kZWZpbmVkKVxuXG4gICAgICAvLyBSZXBsYWNlIGNvbGxhYm9yYXRldXJzIHdpdGggYW4gYXJyYXkgb2YgY29sbGFib3JhdGV1cnMuXG4gICAgICBsZXQgY29sbGFib3JhdGV1cnMgPSBtYW5kYXQuY29sbGFib3JhdGV1cnNcbiAgICAgIGlmIChjb2xsYWJvcmF0ZXVycyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnN0IGNvbGxhYm9yYXRldXJzQXJyYXkgPSBBcnJheS5pc0FycmF5KGNvbGxhYm9yYXRldXJzKVxuICAgICAgICAgID8gY29sbGFib3JhdGV1cnMuZmlsdGVyKChjb2xsYWJvcmF0ZXVyKSA9PiBjb2xsYWJvcmF0ZXVyICE9PSBudWxsKVxuICAgICAgICAgIDogW2NvbGxhYm9yYXRldXJzXVxuICAgICAgICBjb2xsYWJvcmF0ZXVycyA9IFtdXG4gICAgICAgIGNvbGxhYm9yYXRldXJzQXJyYXkubWFwKCh7IGNvbGxhYm9yYXRldXIgfSkgPT4ge1xuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGNvbGxhYm9yYXRldXIpKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGNvbGxhYm9yYXRldXJJdGVtIG9mIGNvbGxhYm9yYXRldXIpIHtcbiAgICAgICAgICAgICAgaWYgKGNvbGxhYm9yYXRldXJJdGVtICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgY29sbGFib3JhdGV1cnMucHVzaChjb2xsYWJvcmF0ZXVySXRlbSlcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gZWxzZSBpZiAoY29sbGFib3JhdGV1cikge1xuICAgICAgICAgICAgY29sbGFib3JhdGV1cnMucHVzaChjb2xsYWJvcmF0ZXVyKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgaWYgKGNvbGxhYm9yYXRldXJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgIGRlbGV0ZSBtYW5kYXQuY29sbGFib3JhdGV1cnNcbiAgICAgICAgICBjb2xsYWJvcmF0ZXVycyA9IHVuZGVmaW5lZFxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG1hbmRhdC5jb2xsYWJvcmF0ZXVycyA9IGNvbGxhYm9yYXRldXJzXG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGNvbnN0IGNvbGxhYm9yYXRldXIgb2YgY29sbGFib3JhdGV1cnMgfHwgW10pIHtcbiAgICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhjb2xsYWJvcmF0ZXVyKVxuXG4gICAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGNvbGxhYm9yYXRldXIuZGF0ZURlYnV0LCB1bmRlZmluZWQpXG4gICAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGNvbGxhYm9yYXRldXIuZGF0ZUZpbiwgdW5kZWZpbmVkKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGluZm9zSG9yc1NpYW4gPSBtYW5kYXQuSW5mb3NIb3JzU0lBTlxuICAgICAgaWYgKGluZm9zSG9yc1NpYW4gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhpbmZvc0hvcnNTaWFuKVxuXG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChpbmZvc0hvcnNTaWFuLkhBVFZQX1VSSSwgdW5kZWZpbmVkKVxuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoT2JqZWN0LmtleXMoaW5mb3NIb3JzU2lhbikubGVuZ3RoLCAwKVxuICAgICAgICBkZWxldGUgbWFuZGF0LkluZm9zSG9yc1NJQU5cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb3J0IG1hbmRhdHMgdG8gZWFzZSBjb21wYXJpc29uIG9mIGRpZmZlcmVudCBvcGVuIGRhdGEgZmlsZXMuXG4gICAgbWFuZGF0cy5zb3J0KChhOiB7IHVpZDogc3RyaW5nIH0sIGI6IHsgdWlkOiBzdHJpbmcgfSkgPT5cbiAgICAgIGEudWlkLmxlbmd0aCA9PT0gYi51aWQubGVuZ3RoXG4gICAgICAgID8gYS51aWQubG9jYWxlQ29tcGFyZShiLnVpZClcbiAgICAgICAgOiBhLnVpZC5sZW5ndGggLSBiLnVpZC5sZW5ndGgsXG4gICAgKVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjbGVhblJhcHBvcnRldXIocmFwcG9ydGV1cjogYW55KSB7XG4gIGNvbnN0IGV0dWRlUGxmUmVmID0gcmFwcG9ydGV1ci5ldHVkZVBMRlJlZlxuICBpZiAocmFwcG9ydGV1ci5ldHVkZVBMRlJlZiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgZGVsZXRlIHJhcHBvcnRldXIuZXR1ZGVQTEZSZWZcbiAgICByYXBwb3J0ZXVyLmV0dWRlUGxmUmVmID0gZXR1ZGVQbGZSZWZcbiAgfVxufVxuIl19
|
|
211
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGVhbmVycy9hY3RldXJzLnRzIl0sIm5hbWVzIjpbImFzc2VydCIsImNsZWFuWG1sQXJ0ZWZhY3RzIiwiY2xlYW5BY3RldXIiLCJhY3RldXIiLCJzdHJpY3RFcXVhbCIsInVpZCIsImV0YXRDaXZpbCIsImlkZW50IiwiaW5mb05haXNzYW5jZSIsInByb2Zlc3Npb24iLCJ1bmRlZmluZWQiLCJzb2NQcm9jSW5zZWUiLCJzb2NQcm9jSU5TRUUiLCJ1cmlIYXR2cCIsInVyaV9oYXR2cCIsImFkcmVzc2VzIiwiYWRyZXNzZSIsIkFycmF5IiwiaXNBcnJheSIsIm5vdFN0cmljdEVxdWFsIiwieHNpVHlwZSIsImluY2x1ZGVzIiwidHlwZSIsInR5cGVMaWJlbGxlIiwiYWRyZXNzZURlUmF0dGFjaGVtZW50IiwibWFuZGF0cyIsIm1hbmRhdCIsImluZm9zUXVhbGl0ZSIsIm9yZ2FuZXMiLCJvcmdhbmVzUmVmcyIsIm9yZ2FuZVJlZiIsInN1cHBsZWFudCIsInN1cHBsZWFudHMiLCJlbGVjdGlvbiIsImxpZXUiLCJtYW5kYXR1cmUiLCJjaGFtYnJlIiwiY29sbGFib3JhdGV1cnMiLCJjb2xsYWJvcmF0ZXVyc0FycmF5IiwiZmlsdGVyIiwiY29sbGFib3JhdGV1ciIsIm1hcCIsImNvbGxhYm9yYXRldXJJdGVtIiwicHVzaCIsImxlbmd0aCIsImRhdGVEZWJ1dCIsImRhdGVGaW4iLCJpbmZvc0hvcnNTaWFuIiwiSW5mb3NIb3JzU0lBTiIsIkhBVFZQX1VSSSIsIk9iamVjdCIsImtleXMiLCJzb3J0IiwiYSIsImIiLCJsb2NhbGVDb21wYXJlIiwiZGVwb3J0cyIsImRlcG9ydCIsImNpYmxlIiwicmVmZXJlbmNlcyIsImNsZWFuUmFwcG9ydGV1ciIsInJhcHBvcnRldXIiLCJldHVkZVBsZlJlZiIsImV0dWRlUExGUmVmIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxNQUFQLE1BQW1CLFFBQW5CO1NBRVNDLGlCO0FBRVQsT0FBTyxTQUFTQyxXQUFULENB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QS9CLEVBQTBDO0FBQ3hDLFdBQU9tRCxVQUFVLENBQUNFLFdBQWxCO0FBQ0FGLElBQUFBLFVBQVUsQ0FBQ0MsV0FBWCxHQUF5QkEsV0FBekI7QUFDRDtBQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tIFwiYXNzZXJ0XCJcblxuaW1wb3J0IHsgY2xlYW5YbWxBcnRlZmFjdHMgfSBmcm9tIFwiLi94bWxcIlxuXG5leHBvcnQgZnVuY3Rpb24gY2xlYW5BY3RldXIoYWN0ZXVyOiBhbnkpOiB2b2lkIHtcbiAgY2xlYW5YbWxBcnRlZmFjdHMoYWN0ZXVyKVxuXG4gIGFzc2VydC5zdHJpY3RFcXVhbChhY3RldXIudWlkW1wiQHhzaTp0eXBlXCJdLCBcIklkQWN0ZXVyX3R5cGVcIilcbiAgYWN0ZXVyLnVpZCA9IGFjdGV1ci51aWRbXCIjdGV4dFwiXVxuICBhc3NlcnQoYWN0ZXVyLnVpZClcblxuICBjb25zdCBldGF0Q2l2aWwgPSBhY3RldXIuZXRhdENpdmlsXG4gIHtcbiAgICBjbGVhblhtbEFydGVmYWN0cyhldGF0Q2l2aWwpXG5cbiAgICBjb25zdCBpZGVudCA9IGV0YXRDaXZpbC5pZGVudFxuICAgIHtcbiAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGlkZW50KVxuXG4gICAgICBjb25zdCBpbmZvTmFpc3NhbmNlID0gZXRhdENpdmlsLmluZm9OYWlzc2FuY2VcbiAgICAgIHtcbiAgICAgICAgY2xlYW5YbWxBcnRlZmFjdHMoaW5mb05haXNzYW5jZSlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjb25zdCBwcm9mZXNzaW9uID0gYWN0ZXVyLnByb2Zlc3Npb25cbiAgaWYgKHByb2Zlc3Npb24gIT09IHVuZGVmaW5lZCkge1xuICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKHByb2Zlc3Npb24pXG5cbiAgICBjb25zdCBzb2NQcm9jSW5zZWUgPSBwcm9mZXNzaW9uLnNvY1Byb2NJTlNFRVxuICAgIGFzc2VydChzb2NQcm9jSW5zZWUpXG4gICAgY2xlYW5YbWxBcnRlZmFjdHMoc29jUHJvY0luc2VlKVxuICAgIGRlbGV0ZSBwcm9mZXNzaW9uLnNvY1Byb2NJTlNFRVxuICAgIHByb2Zlc3Npb24uc29jUHJvY0luc2VlID0gc29jUHJvY0luc2VlXG4gIH1cblxuICBjb25zdCB1cmlIYXR2cCA9IGFjdGV1ci51cmlfaGF0dnBcbiAgaWYgKHVyaUhhdHZwICE9PSB1bmRlZmluZWQpIHtcbiAgICBhY3RldXIudXJpSGF0dnAgPSB1cmlIYXR2cFxuICAgIGRlbGV0ZSBhY3RldXIudXJpX2hhdHZwXG4gIH1cblxuICBsZXQgYWRyZXNzZXMgPSBhY3RldXIuYWRyZXNzZXNcbiAgaWYgKGFkcmVzc2VzICE9PSB1bmRlZmluZWQpIHtcbiAgICBhZHJlc3NlcyA9IGFkcmVzc2VzLmFkcmVzc2VcbiAgICBpZiAoYWRyZXNzZXMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgZGVsZXRlIGFjdGV1ci5hZHJlc3Nlc1xuICAgICAgYWRyZXNzZXMgPSB1bmRlZmluZWRcbiAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoYWRyZXNzZXMpKSB7XG4gICAgICBhY3RldXIuYWRyZXNzZXMgPSBhZHJlc3Nlc1xuICAgIH0gZWxzZSB7XG4gICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYWRyZXNzZXMsIG51bGwpXG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwodHlwZW9mIGFkcmVzc2VzLCBcIm9iamVjdFwiKVxuICAgICAgYWN0ZXVyLmFkcmVzc2VzID0gYWRyZXNzZXMgPSBbYWRyZXNzZXNdXG4gICAgfVxuICAgIGlmIChhZHJlc3NlcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBmb3IgKGNvbnN0IGFkcmVzc2Ugb2YgYWRyZXNzZXMpIHtcbiAgICAgICAgY2xlYW5YbWxBcnRlZmFjdHMoYWRyZXNzZSlcblxuICAgICAgICBjb25zdCB4c2lUeXBlID0gYWRyZXNzZVtcIkB4c2k6dHlwZVwiXVxuICAgICAgICBhc3NlcnQoXG4gICAgICAgICAgW1xuICAgICAgICAgICAgXCJBZHJlc3NlTWFpbF9UeXBlXCIsXG4gICAgICAgICAgICBcIkFkcmVzc2VQb3N0YWxlX1R5cGVcIixcbiAgICAgICAgICAgIFwiQWRyZXNzZVNpdGVXZWJfVHlwZVwiLFxuICAgICAgICAgICAgXCJBZHJlc3NlVGVsZXBob25pcXVlX1R5cGVcIixcbiAgICAgICAgICBdLmluY2x1ZGVzKHhzaVR5cGUpLFxuICAgICAgICAgIGBVbmV4cGVjdGVkIFwiQHhzaTp0eXBlXCI6ICR7eHNpVHlwZX1gLFxuICAgICAgICApXG4gICAgICAgIGFkcmVzc2UueHNpVHlwZSA9IHhzaVR5cGVcbiAgICAgICAgZGVsZXRlIGFkcmVzc2VbXCJAeHNpOnR5cGVcIl1cblxuICAgICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYWRyZXNzZS51aWQsIHVuZGVmaW5lZClcbiAgICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFkcmVzc2UudHlwZSwgdW5kZWZpbmVkKVxuICAgICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYWRyZXNzZS50eXBlTGliZWxsZSwgdW5kZWZpbmVkKVxuXG4gICAgICAgIGlmICh4c2lUeXBlID09PSBcIkFkcmVzc2VQb3N0YWxlX1R5cGVcIikge1xuICAgICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChhZHJlc3NlLmFkcmVzc2VEZVJhdHRhY2hlbWVudCwgdW5kZWZpbmVkKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbGV0IG1hbmRhdHMgPSBhY3RldXIubWFuZGF0c1xuICBpZiAobWFuZGF0cyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgbGV0IG1hbmRhdCA9IG1hbmRhdHMubWFuZGF0XG4gICAgaWYgKEFycmF5LmlzQXJyYXkobWFuZGF0KSkge1xuICAgICAgbWFuZGF0cyA9IGFjdGV1ci5tYW5kYXRzID0gbWFuZGF0XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgbWFuZGF0ID09PSBcIm9iamVjdFwiKSB7XG4gICAgICBtYW5kYXRzID0gYWN0ZXVyLm1hbmRhdHMgPSBbbWFuZGF0XVxuICAgIH1cblxuICAgIGZvciAoY29uc3QgbWFuZGF0IG9mIG1hbmRhdHMpIHtcbiAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKG1hbmRhdClcblxuICAgICAgY29uc3QgeHNpVHlwZSA9IG1hbmRhdFtcIkB4c2k6dHlwZVwiXVxuICAgICAgaWYgKHhzaVR5cGUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBtYW5kYXQueHNpVHlwZSA9IHhzaVR5cGVcbiAgICAgICAgZGVsZXRlIG1hbmRhdFtcIkB4c2k6dHlwZVwiXVxuICAgICAgfVxuXG4gICAgICBjb25zdCBpbmZvc1F1YWxpdGUgPSBtYW5kYXQuaW5mb3NRdWFsaXRlXG4gICAgICB7XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGluZm9zUXVhbGl0ZSlcbiAgICAgIH1cblxuICAgICAgY29uc3Qgb3JnYW5lcyA9IG1hbmRhdC5vcmdhbmVzXG4gICAgICBkZWxldGUgbWFuZGF0Lm9yZ2FuZXNcbiAgICAgIGxldCBvcmdhbmVzUmVmcyA9IG9yZ2FuZXMub3JnYW5lUmVmXG4gICAgICBhc3NlcnQob3JnYW5lc1JlZnMpXG4gICAgICBpZiAoIUFycmF5LmlzQXJyYXkob3JnYW5lc1JlZnMpKSB7XG4gICAgICAgIG9yZ2FuZXNSZWZzID0gW29yZ2FuZXNSZWZzXVxuICAgICAgfVxuICAgICAgbWFuZGF0Lm9yZ2FuZXNSZWZzID0gb3JnYW5lc1JlZnNcblxuICAgICAgbGV0IHN1cHBsZWFudCA9IG1hbmRhdC5zdXBwbGVhbnRzXG4gICAgICBkZWxldGUgbWFuZGF0LnN1cHBsZWFudHNcbiAgICAgIGlmIChzdXBwbGVhbnQpIHtcbiAgICAgICAgc3VwcGxlYW50ID0gc3VwcGxlYW50LnN1cHBsZWFudFxuICAgICAgICBhc3NlcnQoc3VwcGxlYW50KVxuICAgICAgICBtYW5kYXQuc3VwcGxlYW50ID0gc3VwcGxlYW50XG5cbiAgICAgICAgY2xlYW5YbWxBcnRlZmFjdHMoc3VwcGxlYW50KVxuICAgICAgfVxuXG4gICAgICBjb25zdCBlbGVjdGlvbiA9IG1hbmRhdC5lbGVjdGlvblxuICAgICAgaWYgKGVsZWN0aW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY2xlYW5YbWxBcnRlZmFjdHMoZWxlY3Rpb24pXG5cbiAgICAgICAgY29uc3QgbGlldSA9IGVsZWN0aW9uLmxpZXVcbiAgICAgICAgY2xlYW5YbWxBcnRlZmFjdHMobGlldSlcbiAgICAgIH1cblxuICAgICAgY29uc3QgbWFuZGF0dXJlID0gbWFuZGF0Lm1hbmRhdHVyZVxuICAgICAgaWYgKG1hbmRhdHVyZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKG1hbmRhdHVyZSlcbiAgICAgIH1cblxuICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKG1hbmRhdC5jaGFtYnJlLCB1bmRlZmluZWQpXG5cbiAgICAgIC8vIFJlcGxhY2UgY29sbGFib3JhdGV1cnMgd2l0aCBhbiBhcnJheSBvZiBjb2xsYWJvcmF0ZXVycy5cbiAgICAgIGxldCBjb2xsYWJvcmF0ZXVycyA9IG1hbmRhdC5jb2xsYWJvcmF0ZXVyc1xuICAgICAgaWYgKGNvbGxhYm9yYXRldXJzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc3QgY29sbGFib3JhdGV1cnNBcnJheSA9IEFycmF5LmlzQXJyYXkoY29sbGFib3JhdGV1cnMpXG4gICAgICAgICAgPyBjb2xsYWJvcmF0ZXVycy5maWx0ZXIoKGNvbGxhYm9yYXRldXIpID0+IGNvbGxhYm9yYXRldXIgIT09IG51bGwpXG4gICAgICAgICAgOiBbY29sbGFib3JhdGV1cnNdXG4gICAgICAgIGNvbGxhYm9yYXRldXJzID0gW11cbiAgICAgICAgY29sbGFib3JhdGV1cnNBcnJheS5tYXAoKHsgY29sbGFib3JhdGV1ciB9KSA9PiB7XG4gICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY29sbGFib3JhdGV1cikpIHtcbiAgICAgICAgICAgIGZvciAoY29uc3QgY29sbGFib3JhdGV1ckl0ZW0gb2YgY29sbGFib3JhdGV1cikge1xuICAgICAgICAgICAgICBpZiAoY29sbGFib3JhdGV1ckl0ZW0gIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICBjb2xsYWJvcmF0ZXVycy5wdXNoKGNvbGxhYm9yYXRldXJJdGVtKVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIGlmIChjb2xsYWJvcmF0ZXVyKSB7XG4gICAgICAgICAgICBjb2xsYWJvcmF0ZXVycy5wdXNoKGNvbGxhYm9yYXRldXIpXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICBpZiAoY29sbGFib3JhdGV1cnMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgZGVsZXRlIG1hbmRhdC5jb2xsYWJvcmF0ZXVyc1xuICAgICAgICAgIGNvbGxhYm9yYXRldXJzID0gdW5kZWZpbmVkXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbWFuZGF0LmNvbGxhYm9yYXRldXJzID0gY29sbGFib3JhdGV1cnNcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAoY29uc3QgY29sbGFib3JhdGV1ciBvZiBjb2xsYWJvcmF0ZXVycyB8fCBbXSkge1xuICAgICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGNvbGxhYm9yYXRldXIpXG5cbiAgICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoY29sbGFib3JhdGV1ci5kYXRlRGVidXQsIHVuZGVmaW5lZClcbiAgICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoY29sbGFib3JhdGV1ci5kYXRlRmluLCB1bmRlZmluZWQpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgY29uc3QgaW5mb3NIb3JzU2lhbiA9IG1hbmRhdC5JbmZvc0hvcnNTSUFOXG4gICAgICBpZiAoaW5mb3NIb3JzU2lhbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGluZm9zSG9yc1NpYW4pXG5cbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKGluZm9zSG9yc1NpYW4uSEFUVlBfVVJJLCB1bmRlZmluZWQpXG4gICAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChPYmplY3Qua2V5cyhpbmZvc0hvcnNTaWFuKS5sZW5ndGgsIDApXG4gICAgICAgIGRlbGV0ZSBtYW5kYXQuSW5mb3NIb3JzU0lBTlxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvcnQgbWFuZGF0cyB0byBlYXNlIGNvbXBhcmlzb24gb2YgZGlmZmVyZW50IG9wZW4gZGF0YSBmaWxlcy5cbiAgICBtYW5kYXRzLnNvcnQoKGE6IHsgdWlkOiBzdHJpbmcgfSwgYjogeyB1aWQ6IHN0cmluZyB9KSA9PlxuICAgICAgYS51aWQubGVuZ3RoID09PSBiLnVpZC5sZW5ndGhcbiAgICAgICAgPyBhLnVpZC5sb2NhbGVDb21wYXJlKGIudWlkKVxuICAgICAgICA6IGEudWlkLmxlbmd0aCAtIGIudWlkLmxlbmd0aCxcbiAgICApXG4gIH1cblxuICBsZXQgZGVwb3J0cyA9IGFjdGV1ci5kZXBvcnRzXG4gIGlmIChkZXBvcnRzICE9PSB1bmRlZmluZWQpIHtcbiAgICBsZXQgZGVwb3J0ID0gZGVwb3J0cy5kZXBvcnRcbiAgICBpZiAoQXJyYXkuaXNBcnJheShkZXBvcnQpKSB7XG4gICAgICBkZXBvcnRzID0gYWN0ZXVyLmRlcG9ydHMgPSBkZXBvcnRcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBkZXBvcnQgPT09IFwib2JqZWN0XCIpIHtcbiAgICAgIGRlcG9ydHMgPSBhY3RldXIuZGVwb3J0cyA9IFtkZXBvcnRdXG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBkZXBvcnQgb2YgZGVwb3J0cykge1xuICAgICAgY2xlYW5YbWxBcnRlZmFjdHMoZGVwb3J0KVxuXG4gICAgICBjb25zdCBjaWJsZSA9IGRlcG9ydC5jaWJsZVxuICAgICAge1xuICAgICAgICBjbGVhblhtbEFydGVmYWN0cyhjaWJsZSlcblxuICAgICAgICBhc3NlcnQuc3RyaWN0RXF1YWwoY2libGUucmVmZXJlbmNlcywgdW5kZWZpbmVkKVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvcnQgZGVwb3J0cyB0byBlYXNlIGNvbXBhcmlzb24gb2YgZGlmZmVyZW50IG9wZW4gZGF0YSBmaWxlcy5cbiAgICBkZXBvcnRzLnNvcnQoKGE6IHsgdWlkOiBzdHJpbmcgfSwgYjogeyB1aWQ6IHN0cmluZyB9KSA9PlxuICAgICAgYS51aWQubGVuZ3RoID09PSBiLnVpZC5sZW5ndGhcbiAgICAgICAgPyBhLnVpZC5sb2NhbGVDb21wYXJlKGIudWlkKVxuICAgICAgICA6IGEudWlkLmxlbmd0aCAtIGIudWlkLmxlbmd0aCxcbiAgICApXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFuUmFwcG9ydGV1cihyYXBwb3J0ZXVyOiBhbnkpIHtcbiAgY29uc3QgZXR1ZGVQbGZSZWYgPSByYXBwb3J0ZXVyLmV0dWRlUExGUmVmXG4gIGlmIChyYXBwb3J0ZXVyLmV0dWRlUExGUmVmICE9PSB1bmRlZmluZWQpIHtcbiAgICBkZWxldGUgcmFwcG9ydGV1ci5ldHVkZVBMRlJlZlxuICAgIHJhcHBvcnRldXIuZXR1ZGVQbGZSZWYgPSBldHVkZVBsZlJlZlxuICB9XG59XG4iXX0=
|
package/lib/cleaners/organes.js
CHANGED
|
@@ -29,7 +29,7 @@ var _xml = require("./xml");
|
|
|
29
29
|
|
|
30
30
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
31
31
|
|
|
32
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
32
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
33
33
|
|
|
34
34
|
function cleanOrgane(organe) {
|
|
35
35
|
(0, _xml.cleanXmlArtefacts)(organe);
|
|
@@ -57,6 +57,23 @@ function cleanOrgane(organe) {
|
|
|
57
57
|
(0, _xml.cleanXmlArtefacts)(secretariat);
|
|
58
58
|
}
|
|
59
59
|
|
|
60
|
+
var lieu = organe.lieu;
|
|
61
|
+
|
|
62
|
+
if (lieu !== undefined) {
|
|
63
|
+
(0, _xml.cleanXmlArtefacts)(lieu);
|
|
64
|
+
var region = lieu.region;
|
|
65
|
+
|
|
66
|
+
if (region !== undefined) {
|
|
67
|
+
(0, _xml.cleanXmlArtefacts)(region);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
var departement = lieu.departement;
|
|
71
|
+
|
|
72
|
+
if (departement !== undefined) {
|
|
73
|
+
(0, _xml.cleanXmlArtefacts)(departement);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
60
77
|
var couleurAssociee = organe.couleurAssociee;
|
|
61
78
|
|
|
62
79
|
if (couleurAssociee === null) {
|
|
@@ -77,4 +94,4 @@ function cleanOrgane(organe) {
|
|
|
77
94
|
organe.listePays = listePays;
|
|
78
95
|
}
|
|
79
96
|
}
|
|
80
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGVhbmVycy9vcmdhbmVzLnRzIl0sIm5hbWVzIjpbImNsZWFuT3JnYW5lIiwib3JnYW5lIiwieHNpVHlwZSIsInVuZGVmaW5lZCIsInZpTW9EZSIsIm9yZ2FuZVBhcmVudFJlZiIsIm9yZ2FuZVBhcmVudCIsImFzc2VydCIsInN0cmljdEVxdWFsIiwiY2hhbWJyZSIsInNlY3JldGFyaWF0IiwibGlldSIsInJlZ2lvbiIsImRlcGFydGVtZW50IiwiY291bGV1ckFzc29jaWVlIiwibGlzdGVQYXlzIiwicGF5c1JlZiIsIkFycmF5IiwiaXNBcnJheSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUVBOzs7Ozs7QUFFTyxTQUFTQSxXQUFULENBQXFCQyxNQUFyQixFQUF3QztBQUM3Qyw4QkFBa0JBLE1BQWxCO0FBRUEsTUFBTUMsT0FBTyxHQUFHRCxNQUFNLENBQUMsV0FBRCxDQUF0Qjs7QUFDQSxNQUFJQyxPQUFPLEtBQUtDLFNBQWhCLEVBQTJCO0FBQ3pCRixJQUFBQSxNQUFNLENBQUNDLE9BQVAsR0FBaUJBLE9BQWpCO0FBQ0EsV0FBT0QsTUFBTSxDQUFDLFdBQUQsQ0FBYjtBQUNEOztBQUVELE1BQU1HLE1BQU0sR0FBR0gsTUFBTSxDQUFDRyxNQUF0QjtBQUNBLDhCQUFrQkEsTUFBbEI7QUFFQSxNQUFNQyxlQUFlLEdBQUdKLE1BQU0sQ0FBQ0ssWUFBL0I7O0FBQ0EsTUFBSUQsZUFBZSxLQUFLRixTQUF4QixFQUFtQztBQUNqQyxXQUFPRixNQUFNLENBQUNLLFlBQWQ7QUFDQUwsSUFBQUEsTUFBTSxDQUFDSSxlQUFQLEdBQXlCQSxlQUF6QjtBQUNEOztBQUVERSxxQkFBT0MsV0FBUCxDQUFtQlAsTUFBTSxDQUFDUSxPQUExQixFQUFtQ04sU0FBbkM7O0FBRUEsTUFBTU8sV0FBVyxHQUFHVCxNQUFNLENBQUNTLFdBQTNCOztBQUNBLE1BQUlBLFdBQVcsS0FBS1AsU0FBcEIsRUFBK0I7QUFDN0IsZ0NBQWtCTyxXQUFsQjtBQUNEOztBQUVELE1BQU1DLElBQUksR0FBR1YsTUFBTSxDQUFDVSxJQUFwQjs7QUFDQSxNQUFJQSxJQUFJLEtBQUtSLFNBQWIsRUFBd0I7QUFDdEIsZ0NBQWtCUSxJQUFsQjtBQUVBLFFBQU1DLE1BQU0sR0FBR0QsSUFBSSxDQUFDQyxNQUFwQjs7QUFDQSxRQUFJQSxNQUFNLEtBQUtULFNBQWYsRUFBMEI7QUFDeEIsa0NBQWtCUyxNQUFsQjtBQUNEOztBQUVELFFBQU1DLFdBQVcsR0FBR0YsSUFBSSxDQUFDRSxXQUF6Qjs7QUFDQSxRQUFJQSxXQUFXLEtBQUtWLFNBQXBCLEVBQStCO0FBQzdCLGtDQUFrQlUsV0FBbEI7QUFDRDtBQUNGOztBQUVELE1BQU1DLGVBQWUsR0FBR2IsTUFBTSxDQUFDYSxlQUEvQjs7QUFDQSxNQUFJQSxlQUFlLEtBQUssSUFBeEIsRUFBOEI7QUFDNUIsV0FBT2IsTUFBTSxDQUFDYSxlQUFkO0FBQ0Q7O0FBRUQsTUFBSUMsU0FBUyxHQUFHZCxNQUFNLENBQUNjLFNBQXZCOztBQUNBLE1BQUlBLFNBQVMsS0FBS1osU0FBbEIsRUFBNkI7QUFDM0JZLElBQUFBLFNBQVMsR0FBR0EsU0FBUyxDQUFDQyxPQUF0Qjs7QUFDQSxRQUFJLENBQUNDLEtBQUssQ0FBQ0MsT0FBTixDQUFjSCxTQUFkLENBQUwsRUFBK0I7QUFDN0JSLHlCQUFPQyxXQUFQLFNBQTBCTyxTQUExQixHQUFxQyxRQUFyQzs7QUFDQUEsTUFBQUEsU0FBUyxHQUFHLENBQUNBLFNBQUQsQ0FBWjtBQUNEOztBQUNEZCxJQUFBQSxNQUFNLENBQUNjLFNBQVAsR0FBbUJBLFNBQW5CO0FBQ0Q7QUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSBcImFzc2VydFwiXG5cbmltcG9ydCB7IGNsZWFuWG1sQXJ0ZWZhY3RzIH0gZnJvbSBcIi4veG1sXCJcblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFuT3JnYW5lKG9yZ2FuZTogYW55KTogdm9pZCB7XG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKG9yZ2FuZSlcblxuICBjb25zdCB4c2lUeXBlID0gb3JnYW5lW1wiQHhzaTp0eXBlXCJdXG4gIGlmICh4c2lUeXBlICE9PSB1bmRlZmluZWQpIHtcbiAgICBvcmdhbmUueHNpVHlwZSA9IHhzaVR5cGVcbiAgICBkZWxldGUgb3JnYW5lW1wiQHhzaTp0eXBlXCJdXG4gIH1cblxuICBjb25zdCB2aU1vRGUgPSBvcmdhbmUudmlNb0RlXG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKHZpTW9EZSlcblxuICBjb25zdCBvcmdhbmVQYXJlbnRSZWYgPSBvcmdhbmUub3JnYW5lUGFyZW50XG4gIGlmIChvcmdhbmVQYXJlbnRSZWYgIT09IHVuZGVmaW5lZCkge1xuICAgIGRlbGV0ZSBvcmdhbmUub3JnYW5lUGFyZW50XG4gICAgb3JnYW5lLm9yZ2FuZVBhcmVudFJlZiA9IG9yZ2FuZVBhcmVudFJlZlxuICB9XG5cbiAgYXNzZXJ0LnN0cmljdEVxdWFsKG9yZ2FuZS5jaGFtYnJlLCB1bmRlZmluZWQpXG5cbiAgY29uc3Qgc2VjcmV0YXJpYXQgPSBvcmdhbmUuc2VjcmV0YXJpYXRcbiAgaWYgKHNlY3JldGFyaWF0ICE9PSB1bmRlZmluZWQpIHtcbiAgICBjbGVhblhtbEFydGVmYWN0cyhzZWNyZXRhcmlhdClcbiAgfVxuXG4gIGNvbnN0IGxpZXUgPSBvcmdhbmUubGlldVxuICBpZiAobGlldSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgY2xlYW5YbWxBcnRlZmFjdHMobGlldSlcblxuICAgIGNvbnN0IHJlZ2lvbiA9IGxpZXUucmVnaW9uXG4gICAgaWYgKHJlZ2lvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjbGVhblhtbEFydGVmYWN0cyhyZWdpb24pXG4gICAgfVxuXG4gICAgY29uc3QgZGVwYXJ0ZW1lbnQgPSBsaWV1LmRlcGFydGVtZW50XG4gICAgaWYgKGRlcGFydGVtZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGRlcGFydGVtZW50KVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGNvdWxldXJBc3NvY2llZSA9IG9yZ2FuZS5jb3VsZXVyQXNzb2NpZWVcbiAgaWYgKGNvdWxldXJBc3NvY2llZSA9PT0gbnVsbCkge1xuICAgIGRlbGV0ZSBvcmdhbmUuY291bGV1ckFzc29jaWVlXG4gIH1cblxuICBsZXQgbGlzdGVQYXlzID0gb3JnYW5lLmxpc3RlUGF5c1xuICBpZiAobGlzdGVQYXlzICE9PSB1bmRlZmluZWQpIHtcbiAgICBsaXN0ZVBheXMgPSBsaXN0ZVBheXMucGF5c1JlZlxuICAgIGlmICghQXJyYXkuaXNBcnJheShsaXN0ZVBheXMpKSB7XG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwodHlwZW9mIGxpc3RlUGF5cywgXCJzdHJpbmdcIilcbiAgICAgIGxpc3RlUGF5cyA9IFtsaXN0ZVBheXNdXG4gICAgfVxuICAgIG9yZ2FuZS5saXN0ZVBheXMgPSBsaXN0ZVBheXNcbiAgfVxufVxuIl19
|
package/lib/cleaners/organes.mjs
CHANGED
|
@@ -25,6 +25,23 @@ export function cleanOrgane(organe) {
|
|
|
25
25
|
cleanXmlArtefacts(secretariat);
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
+
const lieu = organe.lieu;
|
|
29
|
+
|
|
30
|
+
if (lieu !== undefined) {
|
|
31
|
+
cleanXmlArtefacts(lieu);
|
|
32
|
+
const region = lieu.region;
|
|
33
|
+
|
|
34
|
+
if (region !== undefined) {
|
|
35
|
+
cleanXmlArtefacts(region);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
const departement = lieu.departement;
|
|
39
|
+
|
|
40
|
+
if (departement !== undefined) {
|
|
41
|
+
cleanXmlArtefacts(departement);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
28
45
|
const couleurAssociee = organe.couleurAssociee;
|
|
29
46
|
|
|
30
47
|
if (couleurAssociee === null) {
|
|
@@ -44,4 +61,4 @@ export function cleanOrgane(organe) {
|
|
|
44
61
|
organe.listePays = listePays;
|
|
45
62
|
}
|
|
46
63
|
}
|
|
47
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGVhbmVycy9vcmdhbmVzLnRzIl0sIm5hbWVzIjpbImFzc2VydCIsImNsZWFuWG1sQXJ0ZWZhY3RzIiwiY2xlYW5PcmdhbmUiLCJvcmdhbmUiLCJ4c2lUeXBlIiwidW5kZWZpbmVkIiwidmlNb0RlIiwib3JnYW5lUGFyZW50UmVmIiwib3JnYW5lUGFyZW50Iiwic3RyaWN0RXF1YWwiLCJjaGFtYnJlIiwic2VjcmV0YXJpYXQiLCJsaWV1IiwicmVnaW9uIiwiZGVwYXJ0ZW1lbnQiLCJjb3VsZXVyQXNzb2NpZWUiLCJsaXN0ZVBheXMiLCJwYXlzUmVmIiwiQXJyYXkiLCJpc0FycmF5Il0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxNQUFQLE1BQW1CLFFBQW5CO1NBRVNDLGlCO0FBRVQsT0FBTyxTQUFTQyxXQUFULENBQXFCQyxNQUFyQixFQUF3QztBQUM3Q0YsRUFBQUEsaUJBQWlCLENBQUNFLE1BQUQsQ0FBakI7QUFFQSxRQUFNQyxPQUFPLEdBQUdELE1BQU0sQ0FBQyxXQUFELENBQXRCOztBQUNBLE1BQUlDLE9BQU8sS0FBS0MsU0FBaEIsRUFBMkI7QUFDekJGLElBQUFBLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQkEsT0FBakI7QUFDQSxXQUFPRCxNQUFNLENBQUMsV0FBRCxDQUFiO0FBQ0Q7O0FBRUQsUUFBTUcsTUFBTSxHQUFHSCxNQUFNLENBQUNHLE1BQXRCO0FBQ0FMLEVBQUFBLGlCQUFpQixDQUFDSyxNQUFELENBQWpCO0FBRUEsUUFBTUMsZUFBZSxHQUFHSixNQUFNLENBQUNLLFlBQS9COztBQUNBLE1BQUlELGVBQWUsS0FBS0YsU0FBeEIsRUFBbUM7QUFDakMsV0FBT0YsTUFBTSxDQUFDSyxZQUFkO0FBQ0FMLElBQUFBLE1BQU0sQ0FBQ0ksZUFBUCxHQUF5QkEsZUFBekI7QUFDRDs7QUFFRFAsRUFBQUEsTUFBTSxDQUFDUyxXQUFQLENBQW1CTixNQUFNLENBQUNPLE9BQTFCLEVBQW1DTCxTQUFuQztBQUVBLFFBQU1NLFdBQVcsR0FBR1IsTUFBTSxDQUFDUSxXQUEzQjs7QUFDQSxNQUFJQSxXQUFXLEtBQUtOLFNBQXBCLEVBQStCO0FBQzdCSixJQUFBQSxpQkFBaUIsQ0FBQ1UsV0FBRCxDQUFqQjtBQUNEOztBQUVELFFBQU1DLElBQUksR0FBR1QsTUFBTSxDQUFDUyxJQUFwQjs7QUFDQSxNQUFJQSxJQUFJLEtBQUtQLFNBQWIsRUFBd0I7QUFDdEJKLElBQUFBLGlCQUFpQixDQUFDVyxJQUFELENBQWpCO0FBRUEsVUFBTUMsTUFBTSxHQUFHRCxJQUFJLENBQUNDLE1BQXBCOztBQUNBLFFBQUlBLE1BQU0sS0FBS1IsU0FBZixFQUEwQjtBQUN4QkosTUFBQUEsaUJBQWlCLENBQUNZLE1BQUQsQ0FBakI7QUFDRDs7QUFFRCxVQUFNQyxXQUFXLEdBQUdGLElBQUksQ0FBQ0UsV0FBekI7O0FBQ0EsUUFBSUEsV0FBVyxLQUFLVCxTQUFwQixFQUErQjtBQUM3QkosTUFBQUEsaUJBQWlCLENBQUNhLFdBQUQsQ0FBakI7QUFDRDtBQUNGOztBQUVELFFBQU1DLGVBQWUsR0FBR1osTUFBTSxDQUFDWSxlQUEvQjs7QUFDQSxNQUFJQSxlQUFlLEtBQUssSUFBeEIsRUFBOEI7QUFDNUIsV0FBT1osTUFBTSxDQUFDWSxlQUFkO0FBQ0Q7O0FBRUQsTUFBSUMsU0FBUyxHQUFHYixNQUFNLENBQUNhLFNBQXZCOztBQUNBLE1BQUlBLFNBQVMsS0FBS1gsU0FBbEIsRUFBNkI7QUFDM0JXLElBQUFBLFNBQVMsR0FBR0EsU0FBUyxDQUFDQyxPQUF0Qjs7QUFDQSxRQUFJLENBQUNDLEtBQUssQ0FBQ0MsT0FBTixDQUFjSCxTQUFkLENBQUwsRUFBK0I7QUFDN0JoQixNQUFBQSxNQUFNLENBQUNTLFdBQVAsQ0FBbUIsT0FBT08sU0FBMUIsRUFBcUMsUUFBckM7QUFDQUEsTUFBQUEsU0FBUyxHQUFHLENBQUNBLFNBQUQsQ0FBWjtBQUNEOztBQUNEYixJQUFBQSxNQUFNLENBQUNhLFNBQVAsR0FBbUJBLFNBQW5CO0FBQ0Q7QUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSBcImFzc2VydFwiXG5cbmltcG9ydCB7IGNsZWFuWG1sQXJ0ZWZhY3RzIH0gZnJvbSBcIi4veG1sXCJcblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFuT3JnYW5lKG9yZ2FuZTogYW55KTogdm9pZCB7XG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKG9yZ2FuZSlcblxuICBjb25zdCB4c2lUeXBlID0gb3JnYW5lW1wiQHhzaTp0eXBlXCJdXG4gIGlmICh4c2lUeXBlICE9PSB1bmRlZmluZWQpIHtcbiAgICBvcmdhbmUueHNpVHlwZSA9IHhzaVR5cGVcbiAgICBkZWxldGUgb3JnYW5lW1wiQHhzaTp0eXBlXCJdXG4gIH1cblxuICBjb25zdCB2aU1vRGUgPSBvcmdhbmUudmlNb0RlXG4gIGNsZWFuWG1sQXJ0ZWZhY3RzKHZpTW9EZSlcblxuICBjb25zdCBvcmdhbmVQYXJlbnRSZWYgPSBvcmdhbmUub3JnYW5lUGFyZW50XG4gIGlmIChvcmdhbmVQYXJlbnRSZWYgIT09IHVuZGVmaW5lZCkge1xuICAgIGRlbGV0ZSBvcmdhbmUub3JnYW5lUGFyZW50XG4gICAgb3JnYW5lLm9yZ2FuZVBhcmVudFJlZiA9IG9yZ2FuZVBhcmVudFJlZlxuICB9XG5cbiAgYXNzZXJ0LnN0cmljdEVxdWFsKG9yZ2FuZS5jaGFtYnJlLCB1bmRlZmluZWQpXG5cbiAgY29uc3Qgc2VjcmV0YXJpYXQgPSBvcmdhbmUuc2VjcmV0YXJpYXRcbiAgaWYgKHNlY3JldGFyaWF0ICE9PSB1bmRlZmluZWQpIHtcbiAgICBjbGVhblhtbEFydGVmYWN0cyhzZWNyZXRhcmlhdClcbiAgfVxuXG4gIGNvbnN0IGxpZXUgPSBvcmdhbmUubGlldVxuICBpZiAobGlldSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgY2xlYW5YbWxBcnRlZmFjdHMobGlldSlcblxuICAgIGNvbnN0IHJlZ2lvbiA9IGxpZXUucmVnaW9uXG4gICAgaWYgKHJlZ2lvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBjbGVhblhtbEFydGVmYWN0cyhyZWdpb24pXG4gICAgfVxuXG4gICAgY29uc3QgZGVwYXJ0ZW1lbnQgPSBsaWV1LmRlcGFydGVtZW50XG4gICAgaWYgKGRlcGFydGVtZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGNsZWFuWG1sQXJ0ZWZhY3RzKGRlcGFydGVtZW50KVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGNvdWxldXJBc3NvY2llZSA9IG9yZ2FuZS5jb3VsZXVyQXNzb2NpZWVcbiAgaWYgKGNvdWxldXJBc3NvY2llZSA9PT0gbnVsbCkge1xuICAgIGRlbGV0ZSBvcmdhbmUuY291bGV1ckFzc29jaWVlXG4gIH1cblxuICBsZXQgbGlzdGVQYXlzID0gb3JnYW5lLmxpc3RlUGF5c1xuICBpZiAobGlzdGVQYXlzICE9PSB1bmRlZmluZWQpIHtcbiAgICBsaXN0ZVBheXMgPSBsaXN0ZVBheXMucGF5c1JlZlxuICAgIGlmICghQXJyYXkuaXNBcnJheShsaXN0ZVBheXMpKSB7XG4gICAgICBhc3NlcnQuc3RyaWN0RXF1YWwodHlwZW9mIGxpc3RlUGF5cywgXCJzdHJpbmdcIilcbiAgICAgIGxpc3RlUGF5cyA9IFtsaXN0ZVBheXNdXG4gICAgfVxuICAgIG9yZ2FuZS5saXN0ZVBheXMgPSBsaXN0ZVBheXNcbiAgfVxufVxuIl19
|
package/lib/cleaners/reunions.js
CHANGED
|
@@ -49,7 +49,7 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
49
49
|
|
|
50
50
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
51
51
|
|
|
52
|
-
function _typeof(obj) { "@babel/helpers - typeof";
|
|
52
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
53
53
|
|
|
54
54
|
function cleanCycleDeVie(cycleDeVie) {
|
|
55
55
|
(0, _xml.cleanXmlArtefacts)(cycleDeVie);
|
package/lib/file_systems.js
CHANGED
|
@@ -53,6 +53,10 @@ var _path = _interopRequireDefault(require("path"));
|
|
|
53
53
|
|
|
54
54
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
55
55
|
|
|
56
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
57
|
+
|
|
58
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
59
|
+
|
|
56
60
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
57
61
|
|
|
58
62
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
@@ -175,13 +179,13 @@ function write(something, filename) {
|
|
|
175
179
|
});
|
|
176
180
|
}
|
|
177
181
|
|
|
178
|
-
var GetFileNotFoundError = function GetFileNotFoundError(message) {
|
|
182
|
+
var GetFileNotFoundError = /*#__PURE__*/_createClass(function GetFileNotFoundError(message) {
|
|
179
183
|
_classCallCheck(this, GetFileNotFoundError);
|
|
180
184
|
|
|
181
185
|
_defineProperty(this, "message", void 0);
|
|
182
186
|
|
|
183
187
|
this.message = message;
|
|
184
|
-
};
|
|
188
|
+
});
|
|
185
189
|
|
|
186
190
|
exports.GetFileNotFoundError = GetFileNotFoundError;
|
|
187
191
|
|
|
@@ -205,4 +209,4 @@ function getFiles(args) {
|
|
|
205
209
|
args.forEach(_getFiles);
|
|
206
210
|
return files;
|
|
207
211
|
}
|
|
208
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
212
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9maWxlX3N5c3RlbXMudHMiXSwibmFtZXMiOlsid2Fsa0RpciIsInJvb3REaXIiLCJyZWxhdGl2ZVNwbGl0RGlyIiwiZGlyIiwicGF0aCIsImpvaW4iLCJmcyIsInJlYWRkaXJTeW5jIiwiZmlsZW5hbWUiLCJmaWxlUGF0aCIsInJlbGF0aXZlU3BsaXRQYXRoIiwic3RhdFN5bmMiLCJpc0RpcmVjdG9yeSIsImxvYWQiLCJyYXdqc29uIiwicmVhZEZpbGVTeW5jIiwiZW5jb2RpbmciLCJKU09OIiwicGFyc2UiLCJ3cml0ZSIsInNvbWV0aGluZyIsImNvbnRlbnQiLCJzdHJpbmdpZnkiLCJlbnN1cmVEaXJTeW5jIiwiZGlybmFtZSIsIndyaXRlRmlsZVN5bmMiLCJHZXRGaWxlTm90Rm91bmRFcnJvciIsIm1lc3NhZ2UiLCJnZXRGaWxlcyIsImFyZ3MiLCJmaWxlcyIsIl9nZXRGaWxlcyIsImZpbGVPclBhdHRlcm4iLCJnbG9iIiwiaGFzTWFnaWMiLCJkYXRhRmlsZXMiLCJzeW5jIiwiY3dkIiwicHJvY2VzcyIsImxlbmd0aCIsImNvbmNhdCIsInB1c2giLCJleGlzdHNTeW5jIiwiZm9yRWFjaCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7Ozs7O21EQUVpQkEsTzs7Ozs7Ozs7Ozs7Ozs7OztBQUFWLFNBQVVBLE9BQVYsQ0FDTEMsT0FESztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFFTEMsVUFBQUEsZ0JBRkssMkRBRXdCLEVBRnhCO0FBSUNDLFVBQUFBLEdBSkQsR0FJT0MsaUJBQUtDLElBQUwsMEJBQVVKLE9BQVYsNEJBQXNCQyxnQkFBdEIsR0FKUDtBQUFBLGlEQUtrQkksb0JBQUdDLFdBQUgsQ0FBZUosR0FBZixDQUxsQjtBQUFBOztBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBS01LLFVBQUFBLFFBTE47O0FBQUEsZ0JBTUNBLFFBQVEsQ0FBQyxDQUFELENBQVIsS0FBZ0IsR0FOakI7QUFBQTtBQUFBO0FBQUE7O0FBQUE7O0FBQUE7QUFTR0MsVUFBQUEsUUFUSCxHQVNjTCxpQkFBS0MsSUFBTCxDQUFVRixHQUFWLEVBQWVLLFFBQWYsQ0FUZDtBQVVHRSxVQUFBQSxpQkFWSCxnQ0FVMkJSLGdCQVYzQixJQVU2Q00sUUFWN0M7O0FBQUEsZUFXQ0Ysb0JBQUdLLFFBQUgsQ0FBWUYsUUFBWixFQUFzQkcsV0FBdEIsRUFYRDtBQUFBO0FBQUE7QUFBQTs7QUFZRCx3Q0FBT1osT0FBTyxDQUFDQyxPQUFELEVBQVVTLGlCQUFWLENBQWQ7O0FBWkM7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFjRCxpQkFBTUEsaUJBQU47O0FBZEM7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBO0FBQUE7O0FBQUE7O0FBQUE7QUFBQTs7QUFBQTs7QUFBQTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7QUFtQkEsU0FBU0csSUFBVCxDQUFjVCxJQUFkLEVBQWlDO0FBQ3RDLE1BQU1VLE9BQWUsR0FBR1Isb0JBQUdTLFlBQUgsQ0FBZ0JYLElBQWhCLEVBQXNCO0FBQzVDWSxJQUFBQSxRQUFRLEVBQUU7QUFEa0MsR0FBdEIsQ0FBeEI7O0FBR0EsU0FBT0MsSUFBSSxDQUFDQyxLQUFMLENBQVdKLE9BQVgsQ0FBUDtBQUNEOztBQUVNLFNBQVNLLEtBQVQsQ0FBZUMsU0FBZixFQUErQlosUUFBL0IsRUFBc0Q7QUFDM0QsTUFBTWEsT0FBTyxHQUFHSixJQUFJLENBQUNLLFNBQUwsQ0FBZUYsU0FBZixFQUEwQixJQUExQixFQUFnQyxDQUFoQyxDQUFoQjs7QUFDQWQsc0JBQUdpQixhQUFILENBQWlCbkIsaUJBQUtvQixPQUFMLENBQWFoQixRQUFiLENBQWpCOztBQUNBRixzQkFBR21CLGFBQUgsQ0FBaUJqQixRQUFqQixFQUEyQmEsT0FBM0IsRUFBb0M7QUFDbENMLElBQUFBLFFBQVEsRUFBRTtBQUR3QixHQUFwQztBQUdEOztJQUVZVSxvQiw2QkFHWCw4QkFBWUMsT0FBWixFQUE2QjtBQUFBOztBQUFBOztBQUMzQixPQUFLQSxPQUFMLEdBQWVBLE9BQWY7QUFDRCxDOzs7O0FBR0ksU0FBU0MsUUFBVCxDQUFrQkMsSUFBbEIsRUFBa0M7QUFDdkMsTUFBSUMsS0FBZSxHQUFHLEVBQXRCOztBQUNBLFdBQVNDLFNBQVQsQ0FBbUJDLGFBQW5CLEVBQXVDO0FBQ3JDLFFBQUlDLGlCQUFLQyxRQUFMLENBQWNGLGFBQWQsQ0FBSixFQUFrQztBQUNoQyxVQUFNRyxTQUFTLEdBQUdGLGlCQUFLRyxJQUFMLENBQVVKLGFBQVYsRUFBeUI7QUFBRUssUUFBQUEsR0FBRyxFQUFFQyxPQUFPLENBQUNELEdBQVI7QUFBUCxPQUF6QixDQUFsQjs7QUFDQSxVQUFJRixTQUFTLENBQUNJLE1BQVYsSUFBb0IsQ0FBeEIsRUFDRSxNQUFNLElBQUliLG9CQUFKLFdBQTRCTSxhQUE1QiwwQkFBTjtBQUNGRixNQUFBQSxLQUFLLEdBQUdBLEtBQUssQ0FBQ1UsTUFBTixDQUFhTCxTQUFiLENBQVI7QUFDRCxLQUxELE1BS087QUFDTEwsTUFBQUEsS0FBSyxDQUFDVyxJQUFOLENBQVdULGFBQVg7QUFDQSxVQUFJLENBQUMxQixvQkFBR29DLFVBQUgsQ0FBY1YsYUFBZCxDQUFMLEVBQ0UsTUFBTSxJQUFJTixvQkFBSixXQUE0Qk0sYUFBNUIsMEJBQU47QUFDSDtBQUNGOztBQUNESCxFQUFBQSxJQUFJLENBQUNjLE9BQUwsQ0FBYVosU0FBYjtBQUNBLFNBQU9ELEtBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBnbG9iIGZyb20gXCJnbG9iXCJcbmltcG9ydCBmcyBmcm9tIFwiZnMtZXh0cmFcIlxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIlxuXG5leHBvcnQgZnVuY3Rpb24qIHdhbGtEaXIoXG4gIHJvb3REaXI6IHN0cmluZyxcbiAgcmVsYXRpdmVTcGxpdERpcjogc3RyaW5nW10gPSBbXSxcbik6IEl0ZXJhYmxlPHN0cmluZ1tdPiB7XG4gIGNvbnN0IGRpciA9IHBhdGguam9pbihyb290RGlyLCAuLi5yZWxhdGl2ZVNwbGl0RGlyKVxuICBmb3IgKGNvbnN0IGZpbGVuYW1lIG9mIGZzLnJlYWRkaXJTeW5jKGRpcikpIHtcbiAgICBpZiAoZmlsZW5hbWVbMF0gPT09IFwiLlwiKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBjb25zdCBmaWxlUGF0aCA9IHBhdGguam9pbihkaXIsIGZpbGVuYW1lKVxuICAgIGNvbnN0IHJlbGF0aXZlU3BsaXRQYXRoID0gWy4uLnJlbGF0aXZlU3BsaXREaXIsIGZpbGVuYW1lXVxuICAgIGlmIChmcy5zdGF0U3luYyhmaWxlUGF0aCkuaXNEaXJlY3RvcnkoKSkge1xuICAgICAgeWllbGQqIHdhbGtEaXIocm9vdERpciwgcmVsYXRpdmVTcGxpdFBhdGgpXG4gICAgfSBlbHNlIHtcbiAgICAgIHlpZWxkIHJlbGF0aXZlU3BsaXRQYXRoXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsb2FkKHBhdGg6IHN0cmluZyk6IGFueSB7XG4gIGNvbnN0IHJhd2pzb246IHN0cmluZyA9IGZzLnJlYWRGaWxlU3luYyhwYXRoLCB7XG4gICAgZW5jb2Rpbmc6IFwidXRmOFwiLFxuICB9KVxuICByZXR1cm4gSlNPTi5wYXJzZShyYXdqc29uKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gd3JpdGUoc29tZXRoaW5nOiBhbnksIGZpbGVuYW1lOiBzdHJpbmcpOiBhbnkge1xuICBjb25zdCBjb250ZW50ID0gSlNPTi5zdHJpbmdpZnkoc29tZXRoaW5nLCBudWxsLCAyKVxuICBmcy5lbnN1cmVEaXJTeW5jKHBhdGguZGlybmFtZShmaWxlbmFtZSkpXG4gIGZzLndyaXRlRmlsZVN5bmMoZmlsZW5hbWUsIGNvbnRlbnQsIHtcbiAgICBlbmNvZGluZzogXCJ1dGY4XCIsXG4gIH0pXG59XG5cbmV4cG9ydCBjbGFzcyBHZXRGaWxlTm90Rm91bmRFcnJvciB7XG4gIG1lc3NhZ2U6IHN0cmluZ1xuXG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2VcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsZXMoYXJnczogYW55KTogYW55IHtcbiAgbGV0IGZpbGVzOiBzdHJpbmdbXSA9IFtdXG4gIGZ1bmN0aW9uIF9nZXRGaWxlcyhmaWxlT3JQYXR0ZXJuOiBhbnkpIHtcbiAgICBpZiAoZ2xvYi5oYXNNYWdpYyhmaWxlT3JQYXR0ZXJuKSkge1xuICAgICAgY29uc3QgZGF0YUZpbGVzID0gZ2xvYi5zeW5jKGZpbGVPclBhdHRlcm4sIHsgY3dkOiBwcm9jZXNzLmN3ZCgpIH0pXG4gICAgICBpZiAoZGF0YUZpbGVzLmxlbmd0aCA8PSAwKVxuICAgICAgICB0aHJvdyBuZXcgR2V0RmlsZU5vdEZvdW5kRXJyb3IoYCR7ZmlsZU9yUGF0dGVybn0gZ2xvYiBkb2VzIG5vdCBtYXRjaGApXG4gICAgICBmaWxlcyA9IGZpbGVzLmNvbmNhdChkYXRhRmlsZXMpXG4gICAgfSBlbHNlIHtcbiAgICAgIGZpbGVzLnB1c2goZmlsZU9yUGF0dGVybilcbiAgICAgIGlmICghZnMuZXhpc3RzU3luYyhmaWxlT3JQYXR0ZXJuKSlcbiAgICAgICAgdGhyb3cgbmV3IEdldEZpbGVOb3RGb3VuZEVycm9yKGAke2ZpbGVPclBhdHRlcm59IGZpbGUgZG9lcyBub3QgZXhpc3RgKVxuICAgIH1cbiAgfVxuICBhcmdzLmZvckVhY2goX2dldEZpbGVzKVxuICByZXR1cm4gZmlsZXNcbn1cbiJdfQ==
|