@tricoteuses/assemblee 0.29.13 → 1.0.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/dates.js CHANGED
@@ -37,16 +37,18 @@ require("core-js/modules/web.url.to-json.js");
37
37
 
38
38
  require("core-js/modules/es.string.ends-with.js");
39
39
 
40
- var _format = _interopRequireDefault(require("date-fns/format"));
40
+ var _index = _interopRequireDefault(require("date-fns/format/index.js"));
41
41
 
42
- var _fr = _interopRequireDefault(require("date-fns/locale/fr"));
42
+ var _index2 = _interopRequireDefault(require("date-fns/locale/fr/index.js"));
43
43
 
44
- var _parse = _interopRequireDefault(require("date-fns/parse"));
44
+ var _index3 = _interopRequireDefault(require("date-fns/parse/index.js"));
45
45
 
46
- var _parseISO = _interopRequireDefault(require("date-fns/parseISO"));
46
+ var _index4 = _interopRequireDefault(require("date-fns/parseISO/index.js"));
47
47
 
48
48
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
49
49
 
50
+ // Note: "/index.js" added to imports, because of issue
51
+ // https://github.com/date-fns/date-fns/issues/2964
50
52
  // Patch Date.prototype.toJSON to ensure that dates keep their timezone when converted to strings.
51
53
  // https://stackoverflow.com/questions/31096130/how-to-json-stringify-a-javascript-date-and-preserve-timezone
52
54
  var existingDateToJson = Date.prototype.toJSON;
@@ -97,7 +99,7 @@ function dateFromNullableDateOrIsoString(date, defaultValue) {
97
99
  }
98
100
 
99
101
  if (typeof date === "string") {
100
- return (0, _parseISO["default"])(date);
102
+ return (0, _index4["default"])(date);
101
103
  }
102
104
 
103
105
  return defaultValue;
@@ -105,13 +107,13 @@ function dateFromNullableDateOrIsoString(date, defaultValue) {
105
107
 
106
108
 
107
109
  function dateFromYearMonthDayTimezoneString(dateString) {
108
- return (0, _parse["default"])(dateString, "yyyy-MM-ddXXX", new Date());
110
+ return (0, _index3["default"])(dateString, "yyyy-MM-ddXXX", new Date());
109
111
  }
110
112
 
111
113
  function displayDateFromLocalIsoString(dateString) {
112
- var date = (0, _parseISO["default"])(dateString);
113
- dateString = (0, _format["default"])(date, "EEEE d LLLL yyyy H'h'mm", {
114
- locale: _fr["default"]
114
+ var date = (0, _index4["default"])(dateString);
115
+ dateString = (0, _index["default"])(date, "EEEE d LLLL yyyy H'h'mm", {
116
+ locale: _index2["default"]
115
117
  });
116
118
 
117
119
  if (dateString.endsWith(" 0h00")) {
@@ -130,9 +132,9 @@ function formatRelativeFrenchTime(date, now) {
130
132
  }
131
133
 
132
134
  function frenchDateWithoutDayOfWeekFromDateOrString(dateOrString) {
133
- var date = dateOrString instanceof Date ? dateOrString : (0, _parseISO["default"])(dateOrString);
134
- var dateString = (0, _format["default"])(date, "d LLLL yyyy H'h'mm", {
135
- locale: _fr["default"]
135
+ var date = dateOrString instanceof Date ? dateOrString : (0, _index4["default"])(dateOrString);
136
+ var dateString = (0, _index["default"])(date, "d LLLL yyyy H'h'mm", {
137
+ locale: _index2["default"]
136
138
  });
137
139
 
138
140
  if (dateString.endsWith(" 0h00")) {
@@ -143,13 +145,13 @@ function frenchDateWithoutDayOfWeekFromDateOrString(dateOrString) {
143
145
  }
144
146
 
145
147
  function frenchTimeFromDateOrString(dateOrString) {
146
- var date = dateOrString instanceof Date ? dateOrString : (0, _parseISO["default"])(dateOrString);
147
- return (0, _format["default"])(date, "H'h'mm", {
148
- locale: _fr["default"]
148
+ var date = dateOrString instanceof Date ? dateOrString : (0, _index4["default"])(dateOrString);
149
+ return (0, _index["default"])(date, "H'h'mm", {
150
+ locale: _index2["default"]
149
151
  });
150
152
  }
151
153
 
152
154
  function localIso8601StringFromDate(date) {
153
155
  return new Date(date.getTime() - date.getTimezoneOffset() * 60000).toISOString().split("T")[0];
154
156
  }
155
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJleGlzdGluZ0RhdGVUb0pzb24iLCJEYXRlIiwicHJvdG90eXBlIiwidG9KU09OIiwicGF0Y2hlZERhdGVUb0pzb24iLCJ0aW1lem9uZU9mZnNldEluSG91cnMiLCJnZXRUaW1lem9uZU9mZnNldCIsInNpZ24iLCJsZWFkaW5nWmVybyIsIk1hdGgiLCJhYnMiLCJjb3JyZWN0ZWREYXRlIiwiZ2V0RnVsbFllYXIiLCJnZXRNb250aCIsImdldERhdGUiLCJnZXRIb3VycyIsImdldE1pbnV0ZXMiLCJnZXRTZWNvbmRzIiwiZ2V0TWlsbGlzZWNvbmRzIiwic2V0SG91cnMiLCJpc28iLCJ0b0lTT1N0cmluZyIsInJlcGxhY2UiLCJ0b1N0cmluZyIsInNwbGl0IiwiZSIsImpzb25EYXRlIiwiZnJlbmNoRGF0ZUZvcm1hdCIsIkludGwiLCJEYXRlVGltZUZvcm1hdCIsImRheSIsIm1vbnRoIiwid2Vla2RheSIsInllYXIiLCJmcmVuY2hEYXRlU2FtZVllYXJTaG9ydEZvcm1hdCIsImZyZW5jaFRpbWVGb3JtYXQiLCJob3VyIiwibWludXRlIiwiZGF0ZUZyb21OdWxsYWJsZURhdGVPcklzb1N0cmluZyIsImRhdGUiLCJkZWZhdWx0VmFsdWUiLCJwYXJzZUlTTyIsImRhdGVGcm9tWWVhck1vbnRoRGF5VGltZXpvbmVTdHJpbmciLCJkYXRlU3RyaW5nIiwicGFyc2UiLCJkaXNwbGF5RGF0ZUZyb21Mb2NhbElzb1N0cmluZyIsImZvcm1hdCIsImxvY2FsZSIsImZyTG9jYWxlIiwiZW5kc1dpdGgiLCJzdWJzdHJpbmciLCJsZW5ndGgiLCJmb3JtYXRSZWxhdGl2ZUZyZW5jaFRpbWUiLCJub3ciLCJmcmVuY2hEYXRlV2l0aG91dERheU9mV2Vla0Zyb21EYXRlT3JTdHJpbmciLCJkYXRlT3JTdHJpbmciLCJmcmVuY2hUaW1lRnJvbURhdGVPclN0cmluZyIsImxvY2FsSXNvODYwMVN0cmluZ0Zyb21EYXRlIiwiZ2V0VGltZSJdLCJzb3VyY2VzIjpbIi4uL3NyYy9kYXRlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZm9ybWF0IGZyb20gXCJkYXRlLWZucy9mb3JtYXRcIlxuaW1wb3J0IGZyTG9jYWxlIGZyb20gXCJkYXRlLWZucy9sb2NhbGUvZnJcIlxuaW1wb3J0IHBhcnNlIGZyb20gXCJkYXRlLWZucy9wYXJzZVwiXG5pbXBvcnQgcGFyc2VJU08gZnJvbSBcImRhdGUtZm5zL3BhcnNlSVNPXCJcblxuLy8gUGF0Y2ggRGF0ZS5wcm90b3R5cGUudG9KU09OIHRvIGVuc3VyZSB0aGF0IGRhdGVzIGtlZXAgdGhlaXIgdGltZXpvbmUgd2hlbiBjb252ZXJ0ZWQgdG8gc3RyaW5ncy5cbi8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzMxMDk2MTMwL2hvdy10by1qc29uLXN0cmluZ2lmeS1hLWphdmFzY3JpcHQtZGF0ZS1hbmQtcHJlc2VydmUtdGltZXpvbmVcbmV4cG9ydCBjb25zdCBleGlzdGluZ0RhdGVUb0pzb24gPSBEYXRlLnByb3RvdHlwZS50b0pTT05cbmV4cG9ydCBjb25zdCBwYXRjaGVkRGF0ZVRvSnNvbiA9IGZ1bmN0aW9uICh0aGlzOiBEYXRlKTogc3RyaW5nIHtcbiAgdHJ5IHtcbiAgICBjb25zdCB0aW1lem9uZU9mZnNldEluSG91cnMgPSAtKHRoaXMuZ2V0VGltZXpvbmVPZmZzZXQoKSAvIDYwKSAvL1VUQyBtaW51cyBsb2NhbCB0aW1lXG4gICAgY29uc3Qgc2lnbiA9IHRpbWV6b25lT2Zmc2V0SW5Ib3VycyA+PSAwID8gXCIrXCIgOiBcIi1cIlxuICAgIGNvbnN0IGxlYWRpbmdaZXJvID0gTWF0aC5hYnModGltZXpvbmVPZmZzZXRJbkhvdXJzKSA8IDEwID8gXCIwXCIgOiBcIlwiXG5cbiAgICAvLyBJdCdzIGEgYml0IHVuZm9ydHVuYXRlIHRoYXQgd2UgbmVlZCB0byBjb25zdHJ1Y3QgYSBuZXcgRGF0ZSBpbnN0YW5jZVxuICAgIC8vICh3ZSBkb24ndCB3YW50IF90aGlzXyBEYXRlIGluc3RhbmNlIHRvIGJlIG1vZGlmaWVkKS5cbiAgICBjb25zdCBjb3JyZWN0ZWREYXRlID0gbmV3IERhdGUoXG4gICAgICB0aGlzLmdldEZ1bGxZZWFyKCksXG4gICAgICB0aGlzLmdldE1vbnRoKCksXG4gICAgICB0aGlzLmdldERhdGUoKSxcbiAgICAgIHRoaXMuZ2V0SG91cnMoKSxcbiAgICAgIHRoaXMuZ2V0TWludXRlcygpLFxuICAgICAgdGhpcy5nZXRTZWNvbmRzKCksXG4gICAgICB0aGlzLmdldE1pbGxpc2Vjb25kcygpLFxuICAgIClcbiAgICBjb3JyZWN0ZWREYXRlLnNldEhvdXJzKHRoaXMuZ2V0SG91cnMoKSArIHRpbWV6b25lT2Zmc2V0SW5Ib3VycylcbiAgICBjb25zdCBpc28gPSBjb3JyZWN0ZWREYXRlLnRvSVNPU3RyaW5nKCkucmVwbGFjZShcIlpcIiwgXCJcIilcbiAgICByZXR1cm4gKFxuICAgICAgaXNvICtcbiAgICAgIHNpZ24gK1xuICAgICAgbGVhZGluZ1plcm8gK1xuICAgICAgTWF0aC5hYnModGltZXpvbmVPZmZzZXRJbkhvdXJzKS50b1N0cmluZygpLnNwbGl0KFwiLlwiKVswXSArXG4gICAgICBcIjowMFwiXG4gICAgKVxuICB9IGNhdGNoIChlKSB7XG4gICAgRGF0ZS5wcm90b3R5cGUudG9KU09OID0gZXhpc3RpbmdEYXRlVG9Kc29uXG4gICAgY29uc3QganNvbkRhdGUgPSB0aGlzLnRvSlNPTigpXG4gICAgRGF0ZS5wcm90b3R5cGUudG9KU09OID0gcGF0Y2hlZERhdGVUb0pzb25cbiAgICByZXR1cm4ganNvbkRhdGVcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgZnJlbmNoRGF0ZUZvcm1hdCA9IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KFwiZnItRlJcIiwge1xuICBkYXk6IFwibnVtZXJpY1wiLFxuICBtb250aDogXCJsb25nXCIsXG4gIHdlZWtkYXk6IFwibG9uZ1wiLFxuICB5ZWFyOiBcIm51bWVyaWNcIixcbn0pXG5leHBvcnQgY29uc3QgZnJlbmNoRGF0ZVNhbWVZZWFyU2hvcnRGb3JtYXQgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChcImZyLUZSXCIsIHtcbiAgZGF5OiBcIm51bWVyaWNcIixcbiAgbW9udGg6IFwic2hvcnRcIixcbn0pXG5leHBvcnQgY29uc3QgZnJlbmNoVGltZUZvcm1hdCA9IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KFwiZnItRlJcIiwge1xuICBob3VyOiBcIm51bWVyaWNcIixcbiAgbWludXRlOiBcIjItZGlnaXRcIixcbn0pXG5cbmV4cG9ydCBmdW5jdGlvbiBkYXRlRnJvbU51bGxhYmxlRGF0ZU9ySXNvU3RyaW5nKFxuICBkYXRlOiBEYXRlIHwgc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCxcbiAgZGVmYXVsdFZhbHVlOiBEYXRlIHwgdW5kZWZpbmVkIHwgbnVsbCxcbik6IERhdGUgfCB1bmRlZmluZWQgfCBudWxsIHtcbiAgaWYgKGRhdGUgaW5zdGFuY2VvZiBEYXRlKSB7XG4gICAgcmV0dXJuIGRhdGVcbiAgfVxuICBpZiAodHlwZW9mIGRhdGUgPT09IFwic3RyaW5nXCIpIHtcbiAgICByZXR1cm4gcGFyc2VJU08oZGF0ZSlcbiAgfVxuICByZXR1cm4gZGVmYXVsdFZhbHVlXG59XG5cbi8vLyBDb252ZXJ0IHN0cmluZ3MgbGlrZSBcIjIwMTctMTEtMjQrMDE6MDBcIiB0byBkYXRlcy5cbmV4cG9ydCBmdW5jdGlvbiBkYXRlRnJvbVllYXJNb250aERheVRpbWV6b25lU3RyaW5nKGRhdGVTdHJpbmc6IHN0cmluZyk6IERhdGUge1xuICByZXR1cm4gcGFyc2UoZGF0ZVN0cmluZywgXCJ5eXl5LU1NLWRkWFhYXCIsIG5ldyBEYXRlKCkpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkaXNwbGF5RGF0ZUZyb21Mb2NhbElzb1N0cmluZyhkYXRlU3RyaW5nOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBkYXRlID0gcGFyc2VJU08oZGF0ZVN0cmluZylcbiAgZGF0ZVN0cmluZyA9IGZvcm1hdChkYXRlLCBcIkVFRUUgZCBMTExMIHl5eXkgSCdoJ21tXCIsIHsgbG9jYWxlOiBmckxvY2FsZSB9KVxuICBpZiAoZGF0ZVN0cmluZy5lbmRzV2l0aChcIiAwaDAwXCIpKSB7XG4gICAgZGF0ZVN0cmluZyA9IGRhdGVTdHJpbmcuc3Vic3RyaW5nKDAsIGRhdGVTdHJpbmcubGVuZ3RoIC0gNSlcbiAgfVxuICByZXR1cm4gZGF0ZVN0cmluZ1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0UmVsYXRpdmVGcmVuY2hUaW1lKGRhdGU6IERhdGUsIG5vdzogRGF0ZSkge1xuICBpZiAoXG4gICAgZGF0ZS5nZXRGdWxsWWVhcigpID09PSBub3cuZ2V0RnVsbFllYXIoKSAmJlxuICAgIGRhdGUuZ2V0TW9udGgoKSA9PT0gbm93LmdldE1vbnRoKCkgJiZcbiAgICBkYXRlLmdldERhdGUoKSA9PT0gbm93LmdldERhdGUoKVxuICApIHtcbiAgICByZXR1cm4gZnJlbmNoVGltZUZvcm1hdC5mb3JtYXQoZGF0ZSlcbiAgfVxuICByZXR1cm4gZnJlbmNoRGF0ZVNhbWVZZWFyU2hvcnRGb3JtYXQuZm9ybWF0KGRhdGUpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmcmVuY2hEYXRlV2l0aG91dERheU9mV2Vla0Zyb21EYXRlT3JTdHJpbmcoXG4gIGRhdGVPclN0cmluZzogRGF0ZSB8IHN0cmluZyxcbik6IHN0cmluZyB7XG4gIGNvbnN0IGRhdGU6IERhdGUgPVxuICAgIGRhdGVPclN0cmluZyBpbnN0YW5jZW9mIERhdGUgPyBkYXRlT3JTdHJpbmcgOiBwYXJzZUlTTyhkYXRlT3JTdHJpbmcpXG4gIGxldCBkYXRlU3RyaW5nID0gZm9ybWF0KGRhdGUsIFwiZCBMTExMIHl5eXkgSCdoJ21tXCIsIHsgbG9jYWxlOiBmckxvY2FsZSB9KVxuICBpZiAoZGF0ZVN0cmluZy5lbmRzV2l0aChcIiAwaDAwXCIpKSB7XG4gICAgZGF0ZVN0cmluZyA9IGRhdGVTdHJpbmcuc3Vic3RyaW5nKDAsIGRhdGVTdHJpbmcubGVuZ3RoIC0gNSlcbiAgfVxuICByZXR1cm4gZGF0ZVN0cmluZ1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZnJlbmNoVGltZUZyb21EYXRlT3JTdHJpbmcoXG4gIGRhdGVPclN0cmluZzogRGF0ZSB8IHN0cmluZyxcbik6IHN0cmluZyB7XG4gIGNvbnN0IGRhdGU6IERhdGUgPVxuICAgIGRhdGVPclN0cmluZyBpbnN0YW5jZW9mIERhdGUgPyBkYXRlT3JTdHJpbmcgOiBwYXJzZUlTTyhkYXRlT3JTdHJpbmcpXG4gIHJldHVybiBmb3JtYXQoZGF0ZSwgXCJIJ2gnbW1cIiwgeyBsb2NhbGU6IGZyTG9jYWxlIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsb2NhbElzbzg2MDFTdHJpbmdGcm9tRGF0ZShkYXRlOiBEYXRlKSB7XG4gIHJldHVybiBuZXcgRGF0ZShkYXRlLmdldFRpbWUoKSAtIGRhdGUuZ2V0VGltZXpvbmVPZmZzZXQoKSAqIDYwMDAwKVxuICAgIC50b0lTT1N0cmluZygpXG4gICAgLnNwbGl0KFwiVFwiKVswXVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7OztBQUVBO0FBQ0E7QUFDTyxJQUFNQSxrQkFBa0IsR0FBR0MsSUFBSSxDQUFDQyxTQUFMLENBQWVDLE1BQTFDOzs7QUFDQSxJQUFNQyxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQW9CLEdBQThCO0VBQzdELElBQUk7SUFDRixJQUFNQyxxQkFBcUIsR0FBRyxFQUFFLEtBQUtDLGlCQUFMLEtBQTJCLEVBQTdCLENBQTlCLENBREUsQ0FDNkQ7O0lBQy9ELElBQU1DLElBQUksR0FBR0YscUJBQXFCLElBQUksQ0FBekIsR0FBNkIsR0FBN0IsR0FBbUMsR0FBaEQ7SUFDQSxJQUFNRyxXQUFXLEdBQUdDLElBQUksQ0FBQ0MsR0FBTCxDQUFTTCxxQkFBVCxJQUFrQyxFQUFsQyxHQUF1QyxHQUF2QyxHQUE2QyxFQUFqRSxDQUhFLENBS0Y7SUFDQTs7SUFDQSxJQUFNTSxhQUFhLEdBQUcsSUFBSVYsSUFBSixDQUNwQixLQUFLVyxXQUFMLEVBRG9CLEVBRXBC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
157
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJleGlzdGluZ0RhdGVUb0pzb24iLCJEYXRlIiwicHJvdG90eXBlIiwidG9KU09OIiwicGF0Y2hlZERhdGVUb0pzb24iLCJ0aW1lem9uZU9mZnNldEluSG91cnMiLCJnZXRUaW1lem9uZU9mZnNldCIsInNpZ24iLCJsZWFkaW5nWmVybyIsIk1hdGgiLCJhYnMiLCJjb3JyZWN0ZWREYXRlIiwiZ2V0RnVsbFllYXIiLCJnZXRNb250aCIsImdldERhdGUiLCJnZXRIb3VycyIsImdldE1pbnV0ZXMiLCJnZXRTZWNvbmRzIiwiZ2V0TWlsbGlzZWNvbmRzIiwic2V0SG91cnMiLCJpc28iLCJ0b0lTT1N0cmluZyIsInJlcGxhY2UiLCJ0b1N0cmluZyIsInNwbGl0IiwiZSIsImpzb25EYXRlIiwiZnJlbmNoRGF0ZUZvcm1hdCIsIkludGwiLCJEYXRlVGltZUZvcm1hdCIsImRheSIsIm1vbnRoIiwid2Vla2RheSIsInllYXIiLCJmcmVuY2hEYXRlU2FtZVllYXJTaG9ydEZvcm1hdCIsImZyZW5jaFRpbWVGb3JtYXQiLCJob3VyIiwibWludXRlIiwiZGF0ZUZyb21OdWxsYWJsZURhdGVPcklzb1N0cmluZyIsImRhdGUiLCJkZWZhdWx0VmFsdWUiLCJwYXJzZUlTTyIsImRhdGVGcm9tWWVhck1vbnRoRGF5VGltZXpvbmVTdHJpbmciLCJkYXRlU3RyaW5nIiwicGFyc2UiLCJkaXNwbGF5RGF0ZUZyb21Mb2NhbElzb1N0cmluZyIsImZvcm1hdCIsImxvY2FsZSIsImZyTG9jYWxlIiwiZW5kc1dpdGgiLCJzdWJzdHJpbmciLCJsZW5ndGgiLCJmb3JtYXRSZWxhdGl2ZUZyZW5jaFRpbWUiLCJub3ciLCJmcmVuY2hEYXRlV2l0aG91dERheU9mV2Vla0Zyb21EYXRlT3JTdHJpbmciLCJkYXRlT3JTdHJpbmciLCJmcmVuY2hUaW1lRnJvbURhdGVPclN0cmluZyIsImxvY2FsSXNvODYwMVN0cmluZ0Zyb21EYXRlIiwiZ2V0VGltZSJdLCJzb3VyY2VzIjpbIi4uL3NyYy9kYXRlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBOb3RlOiBcIi9pbmRleC5qc1wiIGFkZGVkIHRvIGltcG9ydHMsIGJlY2F1c2Ugb2YgaXNzdWVcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9kYXRlLWZucy9kYXRlLWZucy9pc3N1ZXMvMjk2NFxuaW1wb3J0IGZvcm1hdCBmcm9tIFwiZGF0ZS1mbnMvZm9ybWF0L2luZGV4LmpzXCJcbmltcG9ydCBmckxvY2FsZSBmcm9tIFwiZGF0ZS1mbnMvbG9jYWxlL2ZyL2luZGV4LmpzXCJcbmltcG9ydCBwYXJzZSBmcm9tIFwiZGF0ZS1mbnMvcGFyc2UvaW5kZXguanNcIlxuaW1wb3J0IHBhcnNlSVNPIGZyb20gXCJkYXRlLWZucy9wYXJzZUlTTy9pbmRleC5qc1wiXG5cbi8vIFBhdGNoIERhdGUucHJvdG90eXBlLnRvSlNPTiB0byBlbnN1cmUgdGhhdCBkYXRlcyBrZWVwIHRoZWlyIHRpbWV6b25lIHdoZW4gY29udmVydGVkIHRvIHN0cmluZ3MuXG4vLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zMTA5NjEzMC9ob3ctdG8tanNvbi1zdHJpbmdpZnktYS1qYXZhc2NyaXB0LWRhdGUtYW5kLXByZXNlcnZlLXRpbWV6b25lXG5leHBvcnQgY29uc3QgZXhpc3RpbmdEYXRlVG9Kc29uID0gRGF0ZS5wcm90b3R5cGUudG9KU09OXG5leHBvcnQgY29uc3QgcGF0Y2hlZERhdGVUb0pzb24gPSBmdW5jdGlvbiAodGhpczogRGF0ZSk6IHN0cmluZyB7XG4gIHRyeSB7XG4gICAgY29uc3QgdGltZXpvbmVPZmZzZXRJbkhvdXJzID0gLSh0aGlzLmdldFRpbWV6b25lT2Zmc2V0KCkgLyA2MCkgLy9VVEMgbWludXMgbG9jYWwgdGltZVxuICAgIGNvbnN0IHNpZ24gPSB0aW1lem9uZU9mZnNldEluSG91cnMgPj0gMCA/IFwiK1wiIDogXCItXCJcbiAgICBjb25zdCBsZWFkaW5nWmVybyA9IE1hdGguYWJzKHRpbWV6b25lT2Zmc2V0SW5Ib3VycykgPCAxMCA/IFwiMFwiIDogXCJcIlxuXG4gICAgLy8gSXQncyBhIGJpdCB1bmZvcnR1bmF0ZSB0aGF0IHdlIG5lZWQgdG8gY29uc3RydWN0IGEgbmV3IERhdGUgaW5zdGFuY2VcbiAgICAvLyAod2UgZG9uJ3Qgd2FudCBfdGhpc18gRGF0ZSBpbnN0YW5jZSB0byBiZSBtb2RpZmllZCkuXG4gICAgY29uc3QgY29ycmVjdGVkRGF0ZSA9IG5ldyBEYXRlKFxuICAgICAgdGhpcy5nZXRGdWxsWWVhcigpLFxuICAgICAgdGhpcy5nZXRNb250aCgpLFxuICAgICAgdGhpcy5nZXREYXRlKCksXG4gICAgICB0aGlzLmdldEhvdXJzKCksXG4gICAgICB0aGlzLmdldE1pbnV0ZXMoKSxcbiAgICAgIHRoaXMuZ2V0U2Vjb25kcygpLFxuICAgICAgdGhpcy5nZXRNaWxsaXNlY29uZHMoKSxcbiAgICApXG4gICAgY29ycmVjdGVkRGF0ZS5zZXRIb3Vycyh0aGlzLmdldEhvdXJzKCkgKyB0aW1lem9uZU9mZnNldEluSG91cnMpXG4gICAgY29uc3QgaXNvID0gY29ycmVjdGVkRGF0ZS50b0lTT1N0cmluZygpLnJlcGxhY2UoXCJaXCIsIFwiXCIpXG4gICAgcmV0dXJuIChcbiAgICAgIGlzbyArXG4gICAgICBzaWduICtcbiAgICAgIGxlYWRpbmdaZXJvICtcbiAgICAgIE1hdGguYWJzKHRpbWV6b25lT2Zmc2V0SW5Ib3VycykudG9TdHJpbmcoKS5zcGxpdChcIi5cIilbMF0gK1xuICAgICAgXCI6MDBcIlxuICAgIClcbiAgfSBjYXRjaCAoZSkge1xuICAgIERhdGUucHJvdG90eXBlLnRvSlNPTiA9IGV4aXN0aW5nRGF0ZVRvSnNvblxuICAgIGNvbnN0IGpzb25EYXRlID0gdGhpcy50b0pTT04oKVxuICAgIERhdGUucHJvdG90eXBlLnRvSlNPTiA9IHBhdGNoZWREYXRlVG9Kc29uXG4gICAgcmV0dXJuIGpzb25EYXRlXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGZyZW5jaERhdGVGb3JtYXQgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChcImZyLUZSXCIsIHtcbiAgZGF5OiBcIm51bWVyaWNcIixcbiAgbW9udGg6IFwibG9uZ1wiLFxuICB3ZWVrZGF5OiBcImxvbmdcIixcbiAgeWVhcjogXCJudW1lcmljXCIsXG59KVxuZXhwb3J0IGNvbnN0IGZyZW5jaERhdGVTYW1lWWVhclNob3J0Rm9ybWF0ID0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoXCJmci1GUlwiLCB7XG4gIGRheTogXCJudW1lcmljXCIsXG4gIG1vbnRoOiBcInNob3J0XCIsXG59KVxuZXhwb3J0IGNvbnN0IGZyZW5jaFRpbWVGb3JtYXQgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChcImZyLUZSXCIsIHtcbiAgaG91cjogXCJudW1lcmljXCIsXG4gIG1pbnV0ZTogXCIyLWRpZ2l0XCIsXG59KVxuXG5leHBvcnQgZnVuY3Rpb24gZGF0ZUZyb21OdWxsYWJsZURhdGVPcklzb1N0cmluZyhcbiAgZGF0ZTogRGF0ZSB8IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwsXG4gIGRlZmF1bHRWYWx1ZTogRGF0ZSB8IHVuZGVmaW5lZCB8IG51bGwsXG4pOiBEYXRlIHwgdW5kZWZpbmVkIHwgbnVsbCB7XG4gIGlmIChkYXRlIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgIHJldHVybiBkYXRlXG4gIH1cbiAgaWYgKHR5cGVvZiBkYXRlID09PSBcInN0cmluZ1wiKSB7XG4gICAgcmV0dXJuIHBhcnNlSVNPKGRhdGUpXG4gIH1cbiAgcmV0dXJuIGRlZmF1bHRWYWx1ZVxufVxuXG4vLy8gQ29udmVydCBzdHJpbmdzIGxpa2UgXCIyMDE3LTExLTI0KzAxOjAwXCIgdG8gZGF0ZXMuXG5leHBvcnQgZnVuY3Rpb24gZGF0ZUZyb21ZZWFyTW9udGhEYXlUaW1lem9uZVN0cmluZyhkYXRlU3RyaW5nOiBzdHJpbmcpOiBEYXRlIHtcbiAgcmV0dXJuIHBhcnNlKGRhdGVTdHJpbmcsIFwieXl5eS1NTS1kZFhYWFwiLCBuZXcgRGF0ZSgpKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZGlzcGxheURhdGVGcm9tTG9jYWxJc29TdHJpbmcoZGF0ZVN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgZGF0ZSA9IHBhcnNlSVNPKGRhdGVTdHJpbmcpXG4gIGRhdGVTdHJpbmcgPSBmb3JtYXQoZGF0ZSwgXCJFRUVFIGQgTExMTCB5eXl5IEgnaCdtbVwiLCB7IGxvY2FsZTogZnJMb2NhbGUgfSlcbiAgaWYgKGRhdGVTdHJpbmcuZW5kc1dpdGgoXCIgMGgwMFwiKSkge1xuICAgIGRhdGVTdHJpbmcgPSBkYXRlU3RyaW5nLnN1YnN0cmluZygwLCBkYXRlU3RyaW5nLmxlbmd0aCAtIDUpXG4gIH1cbiAgcmV0dXJuIGRhdGVTdHJpbmdcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdFJlbGF0aXZlRnJlbmNoVGltZShkYXRlOiBEYXRlLCBub3c6IERhdGUpIHtcbiAgaWYgKFxuICAgIGRhdGUuZ2V0RnVsbFllYXIoKSA9PT0gbm93LmdldEZ1bGxZZWFyKCkgJiZcbiAgICBkYXRlLmdldE1vbnRoKCkgPT09IG5vdy5nZXRNb250aCgpICYmXG4gICAgZGF0ZS5nZXREYXRlKCkgPT09IG5vdy5nZXREYXRlKClcbiAgKSB7XG4gICAgcmV0dXJuIGZyZW5jaFRpbWVGb3JtYXQuZm9ybWF0KGRhdGUpXG4gIH1cbiAgcmV0dXJuIGZyZW5jaERhdGVTYW1lWWVhclNob3J0Rm9ybWF0LmZvcm1hdChkYXRlKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZnJlbmNoRGF0ZVdpdGhvdXREYXlPZldlZWtGcm9tRGF0ZU9yU3RyaW5nKFxuICBkYXRlT3JTdHJpbmc6IERhdGUgfCBzdHJpbmcsXG4pOiBzdHJpbmcge1xuICBjb25zdCBkYXRlOiBEYXRlID1cbiAgICBkYXRlT3JTdHJpbmcgaW5zdGFuY2VvZiBEYXRlID8gZGF0ZU9yU3RyaW5nIDogcGFyc2VJU08oZGF0ZU9yU3RyaW5nKVxuICBsZXQgZGF0ZVN0cmluZyA9IGZvcm1hdChkYXRlLCBcImQgTExMTCB5eXl5IEgnaCdtbVwiLCB7IGxvY2FsZTogZnJMb2NhbGUgfSlcbiAgaWYgKGRhdGVTdHJpbmcuZW5kc1dpdGgoXCIgMGgwMFwiKSkge1xuICAgIGRhdGVTdHJpbmcgPSBkYXRlU3RyaW5nLnN1YnN0cmluZygwLCBkYXRlU3RyaW5nLmxlbmd0aCAtIDUpXG4gIH1cbiAgcmV0dXJuIGRhdGVTdHJpbmdcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZyZW5jaFRpbWVGcm9tRGF0ZU9yU3RyaW5nKFxuICBkYXRlT3JTdHJpbmc6IERhdGUgfCBzdHJpbmcsXG4pOiBzdHJpbmcge1xuICBjb25zdCBkYXRlOiBEYXRlID1cbiAgICBkYXRlT3JTdHJpbmcgaW5zdGFuY2VvZiBEYXRlID8gZGF0ZU9yU3RyaW5nIDogcGFyc2VJU08oZGF0ZU9yU3RyaW5nKVxuICByZXR1cm4gZm9ybWF0KGRhdGUsIFwiSCdoJ21tXCIsIHsgbG9jYWxlOiBmckxvY2FsZSB9KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9jYWxJc284NjAxU3RyaW5nRnJvbURhdGUoZGF0ZTogRGF0ZSkge1xuICByZXR1cm4gbmV3IERhdGUoZGF0ZS5nZXRUaW1lKCkgLSBkYXRlLmdldFRpbWV6b25lT2Zmc2V0KCkgKiA2MDAwMClcbiAgICAudG9JU09TdHJpbmcoKVxuICAgIC5zcGxpdChcIlRcIilbMF1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7QUFMQTtBQUNBO0FBTUE7QUFDQTtBQUNPLElBQU1BLGtCQUFrQixHQUFHQyxJQUFJLENBQUNDLFNBQUwsQ0FBZUMsTUFBMUM7OztBQUNBLElBQU1DLGlCQUFpQixHQUFHLFNBQXBCQSxpQkFBb0IsR0FBOEI7RUFDN0QsSUFBSTtJQUNGLElBQU1DLHFCQUFxQixHQUFHLEVBQUUsS0FBS0MsaUJBQUwsS0FBMkIsRUFBN0IsQ0FBOUIsQ0FERSxDQUM2RDs7SUFDL0QsSUFBTUMsSUFBSSxHQUFHRixxQkFBcUIsSUFBSSxDQUF6QixHQUE2QixHQUE3QixHQUFtQyxHQUFoRDtJQUNB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
package/lib/dates.mjs CHANGED
@@ -1,7 +1,9 @@
1
- import format from "date-fns/format";
2
- import frLocale from "date-fns/locale/fr";
3
- import parse from "date-fns/parse";
4
- import parseISO from "date-fns/parseISO"; // Patch Date.prototype.toJSON to ensure that dates keep their timezone when converted to strings.
1
+ // Note: "/index.js" added to imports, because of issue
2
+ // https://github.com/date-fns/date-fns/issues/2964
3
+ import format from "date-fns/format/index.js";
4
+ import frLocale from "date-fns/locale/fr/index.js";
5
+ import parse from "date-fns/parse/index.js";
6
+ import parseISO from "date-fns/parseISO/index.js"; // Patch Date.prototype.toJSON to ensure that dates keep their timezone when converted to strings.
5
7
  // https://stackoverflow.com/questions/31096130/how-to-json-stringify-a-javascript-date-and-preserve-timezone
6
8
 
7
9
  export const existingDateToJson = Date.prototype.toJSON;
@@ -93,4 +95,4 @@ export function frenchTimeFromDateOrString(dateOrString) {
93
95
  export function localIso8601StringFromDate(date) {
94
96
  return new Date(date.getTime() - date.getTimezoneOffset() * 60000).toISOString().split("T")[0];
95
97
  }
96
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmb3JtYXQiLCJmckxvY2FsZSIsInBhcnNlIiwicGFyc2VJU08iLCJleGlzdGluZ0RhdGVUb0pzb24iLCJEYXRlIiwicHJvdG90eXBlIiwidG9KU09OIiwicGF0Y2hlZERhdGVUb0pzb24iLCJ0aW1lem9uZU9mZnNldEluSG91cnMiLCJnZXRUaW1lem9uZU9mZnNldCIsInNpZ24iLCJsZWFkaW5nWmVybyIsIk1hdGgiLCJhYnMiLCJjb3JyZWN0ZWREYXRlIiwiZ2V0RnVsbFllYXIiLCJnZXRNb250aCIsImdldERhdGUiLCJnZXRIb3VycyIsImdldE1pbnV0ZXMiLCJnZXRTZWNvbmRzIiwiZ2V0TWlsbGlzZWNvbmRzIiwic2V0SG91cnMiLCJpc28iLCJ0b0lTT1N0cmluZyIsInJlcGxhY2UiLCJ0b1N0cmluZyIsInNwbGl0IiwiZSIsImpzb25EYXRlIiwiZnJlbmNoRGF0ZUZvcm1hdCIsIkludGwiLCJEYXRlVGltZUZvcm1hdCIsImRheSIsIm1vbnRoIiwid2Vla2RheSIsInllYXIiLCJmcmVuY2hEYXRlU2FtZVllYXJTaG9ydEZvcm1hdCIsImZyZW5jaFRpbWVGb3JtYXQiLCJob3VyIiwibWludXRlIiwiZGF0ZUZyb21OdWxsYWJsZURhdGVPcklzb1N0cmluZyIsImRhdGUiLCJkZWZhdWx0VmFsdWUiLCJkYXRlRnJvbVllYXJNb250aERheVRpbWV6b25lU3RyaW5nIiwiZGF0ZVN0cmluZyIsImRpc3BsYXlEYXRlRnJvbUxvY2FsSXNvU3RyaW5nIiwibG9jYWxlIiwiZW5kc1dpdGgiLCJzdWJzdHJpbmciLCJsZW5ndGgiLCJmb3JtYXRSZWxhdGl2ZUZyZW5jaFRpbWUiLCJub3ciLCJmcmVuY2hEYXRlV2l0aG91dERheU9mV2Vla0Zyb21EYXRlT3JTdHJpbmciLCJkYXRlT3JTdHJpbmciLCJmcmVuY2hUaW1lRnJvbURhdGVPclN0cmluZyIsImxvY2FsSXNvODYwMVN0cmluZ0Zyb21EYXRlIiwiZ2V0VGltZSJdLCJzb3VyY2VzIjpbIi4uL3NyYy9kYXRlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZm9ybWF0IGZyb20gXCJkYXRlLWZucy9mb3JtYXRcIlxuaW1wb3J0IGZyTG9jYWxlIGZyb20gXCJkYXRlLWZucy9sb2NhbGUvZnJcIlxuaW1wb3J0IHBhcnNlIGZyb20gXCJkYXRlLWZucy9wYXJzZVwiXG5pbXBvcnQgcGFyc2VJU08gZnJvbSBcImRhdGUtZm5zL3BhcnNlSVNPXCJcblxuLy8gUGF0Y2ggRGF0ZS5wcm90b3R5cGUudG9KU09OIHRvIGVuc3VyZSB0aGF0IGRhdGVzIGtlZXAgdGhlaXIgdGltZXpvbmUgd2hlbiBjb252ZXJ0ZWQgdG8gc3RyaW5ncy5cbi8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzMxMDk2MTMwL2hvdy10by1qc29uLXN0cmluZ2lmeS1hLWphdmFzY3JpcHQtZGF0ZS1hbmQtcHJlc2VydmUtdGltZXpvbmVcbmV4cG9ydCBjb25zdCBleGlzdGluZ0RhdGVUb0pzb24gPSBEYXRlLnByb3RvdHlwZS50b0pTT05cbmV4cG9ydCBjb25zdCBwYXRjaGVkRGF0ZVRvSnNvbiA9IGZ1bmN0aW9uICh0aGlzOiBEYXRlKTogc3RyaW5nIHtcbiAgdHJ5IHtcbiAgICBjb25zdCB0aW1lem9uZU9mZnNldEluSG91cnMgPSAtKHRoaXMuZ2V0VGltZXpvbmVPZmZzZXQoKSAvIDYwKSAvL1VUQyBtaW51cyBsb2NhbCB0aW1lXG4gICAgY29uc3Qgc2lnbiA9IHRpbWV6b25lT2Zmc2V0SW5Ib3VycyA+PSAwID8gXCIrXCIgOiBcIi1cIlxuICAgIGNvbnN0IGxlYWRpbmdaZXJvID0gTWF0aC5hYnModGltZXpvbmVPZmZzZXRJbkhvdXJzKSA8IDEwID8gXCIwXCIgOiBcIlwiXG5cbiAgICAvLyBJdCdzIGEgYml0IHVuZm9ydHVuYXRlIHRoYXQgd2UgbmVlZCB0byBjb25zdHJ1Y3QgYSBuZXcgRGF0ZSBpbnN0YW5jZVxuICAgIC8vICh3ZSBkb24ndCB3YW50IF90aGlzXyBEYXRlIGluc3RhbmNlIHRvIGJlIG1vZGlmaWVkKS5cbiAgICBjb25zdCBjb3JyZWN0ZWREYXRlID0gbmV3IERhdGUoXG4gICAgICB0aGlzLmdldEZ1bGxZZWFyKCksXG4gICAgICB0aGlzLmdldE1vbnRoKCksXG4gICAgICB0aGlzLmdldERhdGUoKSxcbiAgICAgIHRoaXMuZ2V0SG91cnMoKSxcbiAgICAgIHRoaXMuZ2V0TWludXRlcygpLFxuICAgICAgdGhpcy5nZXRTZWNvbmRzKCksXG4gICAgICB0aGlzLmdldE1pbGxpc2Vjb25kcygpLFxuICAgIClcbiAgICBjb3JyZWN0ZWREYXRlLnNldEhvdXJzKHRoaXMuZ2V0SG91cnMoKSArIHRpbWV6b25lT2Zmc2V0SW5Ib3VycylcbiAgICBjb25zdCBpc28gPSBjb3JyZWN0ZWREYXRlLnRvSVNPU3RyaW5nKCkucmVwbGFjZShcIlpcIiwgXCJcIilcbiAgICByZXR1cm4gKFxuICAgICAgaXNvICtcbiAgICAgIHNpZ24gK1xuICAgICAgbGVhZGluZ1plcm8gK1xuICAgICAgTWF0aC5hYnModGltZXpvbmVPZmZzZXRJbkhvdXJzKS50b1N0cmluZygpLnNwbGl0KFwiLlwiKVswXSArXG4gICAgICBcIjowMFwiXG4gICAgKVxuICB9IGNhdGNoIChlKSB7XG4gICAgRGF0ZS5wcm90b3R5cGUudG9KU09OID0gZXhpc3RpbmdEYXRlVG9Kc29uXG4gICAgY29uc3QganNvbkRhdGUgPSB0aGlzLnRvSlNPTigpXG4gICAgRGF0ZS5wcm90b3R5cGUudG9KU09OID0gcGF0Y2hlZERhdGVUb0pzb25cbiAgICByZXR1cm4ganNvbkRhdGVcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgZnJlbmNoRGF0ZUZvcm1hdCA9IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KFwiZnItRlJcIiwge1xuICBkYXk6IFwibnVtZXJpY1wiLFxuICBtb250aDogXCJsb25nXCIsXG4gIHdlZWtkYXk6IFwibG9uZ1wiLFxuICB5ZWFyOiBcIm51bWVyaWNcIixcbn0pXG5leHBvcnQgY29uc3QgZnJlbmNoRGF0ZVNhbWVZZWFyU2hvcnRGb3JtYXQgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChcImZyLUZSXCIsIHtcbiAgZGF5OiBcIm51bWVyaWNcIixcbiAgbW9udGg6IFwic2hvcnRcIixcbn0pXG5leHBvcnQgY29uc3QgZnJlbmNoVGltZUZvcm1hdCA9IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KFwiZnItRlJcIiwge1xuICBob3VyOiBcIm51bWVyaWNcIixcbiAgbWludXRlOiBcIjItZGlnaXRcIixcbn0pXG5cbmV4cG9ydCBmdW5jdGlvbiBkYXRlRnJvbU51bGxhYmxlRGF0ZU9ySXNvU3RyaW5nKFxuICBkYXRlOiBEYXRlIHwgc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCxcbiAgZGVmYXVsdFZhbHVlOiBEYXRlIHwgdW5kZWZpbmVkIHwgbnVsbCxcbik6IERhdGUgfCB1bmRlZmluZWQgfCBudWxsIHtcbiAgaWYgKGRhdGUgaW5zdGFuY2VvZiBEYXRlKSB7XG4gICAgcmV0dXJuIGRhdGVcbiAgfVxuICBpZiAodHlwZW9mIGRhdGUgPT09IFwic3RyaW5nXCIpIHtcbiAgICByZXR1cm4gcGFyc2VJU08oZGF0ZSlcbiAgfVxuICByZXR1cm4gZGVmYXVsdFZhbHVlXG59XG5cbi8vLyBDb252ZXJ0IHN0cmluZ3MgbGlrZSBcIjIwMTctMTEtMjQrMDE6MDBcIiB0byBkYXRlcy5cbmV4cG9ydCBmdW5jdGlvbiBkYXRlRnJvbVllYXJNb250aERheVRpbWV6b25lU3RyaW5nKGRhdGVTdHJpbmc6IHN0cmluZyk6IERhdGUge1xuICByZXR1cm4gcGFyc2UoZGF0ZVN0cmluZywgXCJ5eXl5LU1NLWRkWFhYXCIsIG5ldyBEYXRlKCkpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkaXNwbGF5RGF0ZUZyb21Mb2NhbElzb1N0cmluZyhkYXRlU3RyaW5nOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBkYXRlID0gcGFyc2VJU08oZGF0ZVN0cmluZylcbiAgZGF0ZVN0cmluZyA9IGZvcm1hdChkYXRlLCBcIkVFRUUgZCBMTExMIHl5eXkgSCdoJ21tXCIsIHsgbG9jYWxlOiBmckxvY2FsZSB9KVxuICBpZiAoZGF0ZVN0cmluZy5lbmRzV2l0aChcIiAwaDAwXCIpKSB7XG4gICAgZGF0ZVN0cmluZyA9IGRhdGVTdHJpbmcuc3Vic3RyaW5nKDAsIGRhdGVTdHJpbmcubGVuZ3RoIC0gNSlcbiAgfVxuICByZXR1cm4gZGF0ZVN0cmluZ1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0UmVsYXRpdmVGcmVuY2hUaW1lKGRhdGU6IERhdGUsIG5vdzogRGF0ZSkge1xuICBpZiAoXG4gICAgZGF0ZS5nZXRGdWxsWWVhcigpID09PSBub3cuZ2V0RnVsbFllYXIoKSAmJlxuICAgIGRhdGUuZ2V0TW9udGgoKSA9PT0gbm93LmdldE1vbnRoKCkgJiZcbiAgICBkYXRlLmdldERhdGUoKSA9PT0gbm93LmdldERhdGUoKVxuICApIHtcbiAgICByZXR1cm4gZnJlbmNoVGltZUZvcm1hdC5mb3JtYXQoZGF0ZSlcbiAgfVxuICByZXR1cm4gZnJlbmNoRGF0ZVNhbWVZZWFyU2hvcnRGb3JtYXQuZm9ybWF0KGRhdGUpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmcmVuY2hEYXRlV2l0aG91dERheU9mV2Vla0Zyb21EYXRlT3JTdHJpbmcoXG4gIGRhdGVPclN0cmluZzogRGF0ZSB8IHN0cmluZyxcbik6IHN0cmluZyB7XG4gIGNvbnN0IGRhdGU6IERhdGUgPVxuICAgIGRhdGVPclN0cmluZyBpbnN0YW5jZW9mIERhdGUgPyBkYXRlT3JTdHJpbmcgOiBwYXJzZUlTTyhkYXRlT3JTdHJpbmcpXG4gIGxldCBkYXRlU3RyaW5nID0gZm9ybWF0KGRhdGUsIFwiZCBMTExMIHl5eXkgSCdoJ21tXCIsIHsgbG9jYWxlOiBmckxvY2FsZSB9KVxuICBpZiAoZGF0ZVN0cmluZy5lbmRzV2l0aChcIiAwaDAwXCIpKSB7XG4gICAgZGF0ZVN0cmluZyA9IGRhdGVTdHJpbmcuc3Vic3RyaW5nKDAsIGRhdGVTdHJpbmcubGVuZ3RoIC0gNSlcbiAgfVxuICByZXR1cm4gZGF0ZVN0cmluZ1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZnJlbmNoVGltZUZyb21EYXRlT3JTdHJpbmcoXG4gIGRhdGVPclN0cmluZzogRGF0ZSB8IHN0cmluZyxcbik6IHN0cmluZyB7XG4gIGNvbnN0IGRhdGU6IERhdGUgPVxuICAgIGRhdGVPclN0cmluZyBpbnN0YW5jZW9mIERhdGUgPyBkYXRlT3JTdHJpbmcgOiBwYXJzZUlTTyhkYXRlT3JTdHJpbmcpXG4gIHJldHVybiBmb3JtYXQoZGF0ZSwgXCJIJ2gnbW1cIiwgeyBsb2NhbGU6IGZyTG9jYWxlIH0pXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsb2NhbElzbzg2MDFTdHJpbmdGcm9tRGF0ZShkYXRlOiBEYXRlKSB7XG4gIHJldHVybiBuZXcgRGF0ZShkYXRlLmdldFRpbWUoKSAtIGRhdGUuZ2V0VGltZXpvbmVPZmZzZXQoKSAqIDYwMDAwKVxuICAgIC50b0lTT1N0cmluZygpXG4gICAgLnNwbGl0KFwiVFwiKVswXVxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxNQUFQLE1BQW1CLGlCQUFuQjtBQUNBLE9BQU9DLFFBQVAsTUFBcUIsb0JBQXJCO0FBQ0EsT0FBT0MsS0FBUCxNQUFrQixnQkFBbEI7QUFDQSxPQUFPQyxRQUFQLE1BQXFCLG1CQUFyQixDLENBRUE7QUFDQTs7QUFDQSxPQUFPLE1BQU1DLGtCQUFrQixHQUFHQyxJQUFJLENBQUNDLFNBQUwsQ0FBZUMsTUFBMUM7QUFDUCxPQUFPLE1BQU1DLGlCQUFpQixHQUFHLFlBQThCO0VBQzdELElBQUk7SUFDRixNQUFNQyxxQkFBcUIsR0FBRyxFQUFFLEtBQUtDLGlCQUFMLEtBQTJCLEVBQTdCLENBQTlCLENBREUsQ0FDNkQ7O0lBQy9ELE1BQU1DLElBQUksR0FBR0YscUJBQXFCLElBQUksQ0FBekIsR0FBNkIsR0FBN0IsR0FBbUMsR0FBaEQ7SUFDQSxNQUFNRyxXQUFXLEdBQUdDLElBQUksQ0FBQ0MsR0FBTCxDQUFTTCxxQkFBVCxJQUFrQyxFQUFsQyxHQUF1QyxHQUF2QyxHQUE2QyxFQUFqRSxDQUhFLENBS0Y7SUFDQTs7SUFDQSxNQUFNTSxh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
98
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmb3JtYXQiLCJmckxvY2FsZSIsInBhcnNlIiwicGFyc2VJU08iLCJleGlzdGluZ0RhdGVUb0pzb24iLCJEYXRlIiwicHJvdG90eXBlIiwidG9KU09OIiwicGF0Y2hlZERhdGVUb0pzb24iLCJ0aW1lem9uZU9mZnNldEluSG91cnMiLCJnZXRUaW1lem9uZU9mZnNldCIsInNpZ24iLCJsZWFkaW5nWmVybyIsIk1hdGgiLCJhYnMiLCJjb3JyZWN0ZWREYXRlIiwiZ2V0RnVsbFllYXIiLCJnZXRNb250aCIsImdldERhdGUiLCJnZXRIb3VycyIsImdldE1pbnV0ZXMiLCJnZXRTZWNvbmRzIiwiZ2V0TWlsbGlzZWNvbmRzIiwic2V0SG91cnMiLCJpc28iLCJ0b0lTT1N0cmluZyIsInJlcGxhY2UiLCJ0b1N0cmluZyIsInNwbGl0IiwiZSIsImpzb25EYXRlIiwiZnJlbmNoRGF0ZUZvcm1hdCIsIkludGwiLCJEYXRlVGltZUZvcm1hdCIsImRheSIsIm1vbnRoIiwid2Vla2RheSIsInllYXIiLCJmcmVuY2hEYXRlU2FtZVllYXJTaG9ydEZvcm1hdCIsImZyZW5jaFRpbWVGb3JtYXQiLCJob3VyIiwibWludXRlIiwiZGF0ZUZyb21OdWxsYWJsZURhdGVPcklzb1N0cmluZyIsImRhdGUiLCJkZWZhdWx0VmFsdWUiLCJkYXRlRnJvbVllYXJNb250aERheVRpbWV6b25lU3RyaW5nIiwiZGF0ZVN0cmluZyIsImRpc3BsYXlEYXRlRnJvbUxvY2FsSXNvU3RyaW5nIiwibG9jYWxlIiwiZW5kc1dpdGgiLCJzdWJzdHJpbmciLCJsZW5ndGgiLCJmb3JtYXRSZWxhdGl2ZUZyZW5jaFRpbWUiLCJub3ciLCJmcmVuY2hEYXRlV2l0aG91dERheU9mV2Vla0Zyb21EYXRlT3JTdHJpbmciLCJkYXRlT3JTdHJpbmciLCJmcmVuY2hUaW1lRnJvbURhdGVPclN0cmluZyIsImxvY2FsSXNvODYwMVN0cmluZ0Zyb21EYXRlIiwiZ2V0VGltZSJdLCJzb3VyY2VzIjpbIi4uL3NyYy9kYXRlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBOb3RlOiBcIi9pbmRleC5qc1wiIGFkZGVkIHRvIGltcG9ydHMsIGJlY2F1c2Ugb2YgaXNzdWVcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9kYXRlLWZucy9kYXRlLWZucy9pc3N1ZXMvMjk2NFxuaW1wb3J0IGZvcm1hdCBmcm9tIFwiZGF0ZS1mbnMvZm9ybWF0L2luZGV4LmpzXCJcbmltcG9ydCBmckxvY2FsZSBmcm9tIFwiZGF0ZS1mbnMvbG9jYWxlL2ZyL2luZGV4LmpzXCJcbmltcG9ydCBwYXJzZSBmcm9tIFwiZGF0ZS1mbnMvcGFyc2UvaW5kZXguanNcIlxuaW1wb3J0IHBhcnNlSVNPIGZyb20gXCJkYXRlLWZucy9wYXJzZUlTTy9pbmRleC5qc1wiXG5cbi8vIFBhdGNoIERhdGUucHJvdG90eXBlLnRvSlNPTiB0byBlbnN1cmUgdGhhdCBkYXRlcyBrZWVwIHRoZWlyIHRpbWV6b25lIHdoZW4gY29udmVydGVkIHRvIHN0cmluZ3MuXG4vLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zMTA5NjEzMC9ob3ctdG8tanNvbi1zdHJpbmdpZnktYS1qYXZhc2NyaXB0LWRhdGUtYW5kLXByZXNlcnZlLXRpbWV6b25lXG5leHBvcnQgY29uc3QgZXhpc3RpbmdEYXRlVG9Kc29uID0gRGF0ZS5wcm90b3R5cGUudG9KU09OXG5leHBvcnQgY29uc3QgcGF0Y2hlZERhdGVUb0pzb24gPSBmdW5jdGlvbiAodGhpczogRGF0ZSk6IHN0cmluZyB7XG4gIHRyeSB7XG4gICAgY29uc3QgdGltZXpvbmVPZmZzZXRJbkhvdXJzID0gLSh0aGlzLmdldFRpbWV6b25lT2Zmc2V0KCkgLyA2MCkgLy9VVEMgbWludXMgbG9jYWwgdGltZVxuICAgIGNvbnN0IHNpZ24gPSB0aW1lem9uZU9mZnNldEluSG91cnMgPj0gMCA/IFwiK1wiIDogXCItXCJcbiAgICBjb25zdCBsZWFkaW5nWmVybyA9IE1hdGguYWJzKHRpbWV6b25lT2Zmc2V0SW5Ib3VycykgPCAxMCA/IFwiMFwiIDogXCJcIlxuXG4gICAgLy8gSXQncyBhIGJpdCB1bmZvcnR1bmF0ZSB0aGF0IHdlIG5lZWQgdG8gY29uc3RydWN0IGEgbmV3IERhdGUgaW5zdGFuY2VcbiAgICAvLyAod2UgZG9uJ3Qgd2FudCBfdGhpc18gRGF0ZSBpbnN0YW5jZSB0byBiZSBtb2RpZmllZCkuXG4gICAgY29uc3QgY29ycmVjdGVkRGF0ZSA9IG5ldyBEYXRlKFxuICAgICAgdGhpcy5nZXRGdWxsWWVhcigpLFxuICAgICAgdGhpcy5nZXRNb250aCgpLFxuICAgICAgdGhpcy5nZXREYXRlKCksXG4gICAgICB0aGlzLmdldEhvdXJzKCksXG4gICAgICB0aGlzLmdldE1pbnV0ZXMoKSxcbiAgICAgIHRoaXMuZ2V0U2Vjb25kcygpLFxuICAgICAgdGhpcy5nZXRNaWxsaXNlY29uZHMoKSxcbiAgICApXG4gICAgY29ycmVjdGVkRGF0ZS5zZXRIb3Vycyh0aGlzLmdldEhvdXJzKCkgKyB0aW1lem9uZU9mZnNldEluSG91cnMpXG4gICAgY29uc3QgaXNvID0gY29ycmVjdGVkRGF0ZS50b0lTT1N0cmluZygpLnJlcGxhY2UoXCJaXCIsIFwiXCIpXG4gICAgcmV0dXJuIChcbiAgICAgIGlzbyArXG4gICAgICBzaWduICtcbiAgICAgIGxlYWRpbmdaZXJvICtcbiAgICAgIE1hdGguYWJzKHRpbWV6b25lT2Zmc2V0SW5Ib3VycykudG9TdHJpbmcoKS5zcGxpdChcIi5cIilbMF0gK1xuICAgICAgXCI6MDBcIlxuICAgIClcbiAgfSBjYXRjaCAoZSkge1xuICAgIERhdGUucHJvdG90eXBlLnRvSlNPTiA9IGV4aXN0aW5nRGF0ZVRvSnNvblxuICAgIGNvbnN0IGpzb25EYXRlID0gdGhpcy50b0pTT04oKVxuICAgIERhdGUucHJvdG90eXBlLnRvSlNPTiA9IHBhdGNoZWREYXRlVG9Kc29uXG4gICAgcmV0dXJuIGpzb25EYXRlXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGZyZW5jaERhdGVGb3JtYXQgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChcImZyLUZSXCIsIHtcbiAgZGF5OiBcIm51bWVyaWNcIixcbiAgbW9udGg6IFwibG9uZ1wiLFxuICB3ZWVrZGF5OiBcImxvbmdcIixcbiAgeWVhcjogXCJudW1lcmljXCIsXG59KVxuZXhwb3J0IGNvbnN0IGZyZW5jaERhdGVTYW1lWWVhclNob3J0Rm9ybWF0ID0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoXCJmci1GUlwiLCB7XG4gIGRheTogXCJudW1lcmljXCIsXG4gIG1vbnRoOiBcInNob3J0XCIsXG59KVxuZXhwb3J0IGNvbnN0IGZyZW5jaFRpbWVGb3JtYXQgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChcImZyLUZSXCIsIHtcbiAgaG91cjogXCJudW1lcmljXCIsXG4gIG1pbnV0ZTogXCIyLWRpZ2l0XCIsXG59KVxuXG5leHBvcnQgZnVuY3Rpb24gZGF0ZUZyb21OdWxsYWJsZURhdGVPcklzb1N0cmluZyhcbiAgZGF0ZTogRGF0ZSB8IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwsXG4gIGRlZmF1bHRWYWx1ZTogRGF0ZSB8IHVuZGVmaW5lZCB8IG51bGwsXG4pOiBEYXRlIHwgdW5kZWZpbmVkIHwgbnVsbCB7XG4gIGlmIChkYXRlIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgIHJldHVybiBkYXRlXG4gIH1cbiAgaWYgKHR5cGVvZiBkYXRlID09PSBcInN0cmluZ1wiKSB7XG4gICAgcmV0dXJuIHBhcnNlSVNPKGRhdGUpXG4gIH1cbiAgcmV0dXJuIGRlZmF1bHRWYWx1ZVxufVxuXG4vLy8gQ29udmVydCBzdHJpbmdzIGxpa2UgXCIyMDE3LTExLTI0KzAxOjAwXCIgdG8gZGF0ZXMuXG5leHBvcnQgZnVuY3Rpb24gZGF0ZUZyb21ZZWFyTW9udGhEYXlUaW1lem9uZVN0cmluZyhkYXRlU3RyaW5nOiBzdHJpbmcpOiBEYXRlIHtcbiAgcmV0dXJuIHBhcnNlKGRhdGVTdHJpbmcsIFwieXl5eS1NTS1kZFhYWFwiLCBuZXcgRGF0ZSgpKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZGlzcGxheURhdGVGcm9tTG9jYWxJc29TdHJpbmcoZGF0ZVN0cmluZzogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgZGF0ZSA9IHBhcnNlSVNPKGRhdGVTdHJpbmcpXG4gIGRhdGVTdHJpbmcgPSBmb3JtYXQoZGF0ZSwgXCJFRUVFIGQgTExMTCB5eXl5IEgnaCdtbVwiLCB7IGxvY2FsZTogZnJMb2NhbGUgfSlcbiAgaWYgKGRhdGVTdHJpbmcuZW5kc1dpdGgoXCIgMGgwMFwiKSkge1xuICAgIGRhdGVTdHJpbmcgPSBkYXRlU3RyaW5nLnN1YnN0cmluZygwLCBkYXRlU3RyaW5nLmxlbmd0aCAtIDUpXG4gIH1cbiAgcmV0dXJuIGRhdGVTdHJpbmdcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdFJlbGF0aXZlRnJlbmNoVGltZShkYXRlOiBEYXRlLCBub3c6IERhdGUpIHtcbiAgaWYgKFxuICAgIGRhdGUuZ2V0RnVsbFllYXIoKSA9PT0gbm93LmdldEZ1bGxZZWFyKCkgJiZcbiAgICBkYXRlLmdldE1vbnRoKCkgPT09IG5vdy5nZXRNb250aCgpICYmXG4gICAgZGF0ZS5nZXREYXRlKCkgPT09IG5vdy5nZXREYXRlKClcbiAgKSB7XG4gICAgcmV0dXJuIGZyZW5jaFRpbWVGb3JtYXQuZm9ybWF0KGRhdGUpXG4gIH1cbiAgcmV0dXJuIGZyZW5jaERhdGVTYW1lWWVhclNob3J0Rm9ybWF0LmZvcm1hdChkYXRlKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZnJlbmNoRGF0ZVdpdGhvdXREYXlPZldlZWtGcm9tRGF0ZU9yU3RyaW5nKFxuICBkYXRlT3JTdHJpbmc6IERhdGUgfCBzdHJpbmcsXG4pOiBzdHJpbmcge1xuICBjb25zdCBkYXRlOiBEYXRlID1cbiAgICBkYXRlT3JTdHJpbmcgaW5zdGFuY2VvZiBEYXRlID8gZGF0ZU9yU3RyaW5nIDogcGFyc2VJU08oZGF0ZU9yU3RyaW5nKVxuICBsZXQgZGF0ZVN0cmluZyA9IGZvcm1hdChkYXRlLCBcImQgTExMTCB5eXl5IEgnaCdtbVwiLCB7IGxvY2FsZTogZnJMb2NhbGUgfSlcbiAgaWYgKGRhdGVTdHJpbmcuZW5kc1dpdGgoXCIgMGgwMFwiKSkge1xuICAgIGRhdGVTdHJpbmcgPSBkYXRlU3RyaW5nLnN1YnN0cmluZygwLCBkYXRlU3RyaW5nLmxlbmd0aCAtIDUpXG4gIH1cbiAgcmV0dXJuIGRhdGVTdHJpbmdcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZyZW5jaFRpbWVGcm9tRGF0ZU9yU3RyaW5nKFxuICBkYXRlT3JTdHJpbmc6IERhdGUgfCBzdHJpbmcsXG4pOiBzdHJpbmcge1xuICBjb25zdCBkYXRlOiBEYXRlID1cbiAgICBkYXRlT3JTdHJpbmcgaW5zdGFuY2VvZiBEYXRlID8gZGF0ZU9yU3RyaW5nIDogcGFyc2VJU08oZGF0ZU9yU3RyaW5nKVxuICByZXR1cm4gZm9ybWF0KGRhdGUsIFwiSCdoJ21tXCIsIHsgbG9jYWxlOiBmckxvY2FsZSB9KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9jYWxJc284NjAxU3RyaW5nRnJvbURhdGUoZGF0ZTogRGF0ZSkge1xuICByZXR1cm4gbmV3IERhdGUoZGF0ZS5nZXRUaW1lKCkgLSBkYXRlLmdldFRpbWV6b25lT2Zmc2V0KCkgKiA2MDAwMClcbiAgICAudG9JU09TdHJpbmcoKVxuICAgIC5zcGxpdChcIlRcIilbMF1cbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQTtBQUNBLE9BQU9BLE1BQVAsTUFBbUIsMEJBQW5CO0FBQ0EsT0FBT0MsUUFBUCxNQUFxQiw2QkFBckI7QUFDQSxPQUFPQyxLQUFQLE1BQWtCLHlCQUFsQjtBQUNBLE9BQU9DLFFBQVAsTUFBcUIsNEJBQXJCLEMsQ0FFQTtBQUNBOztBQUNBLE9BQU8sTUFBTUMsa0JBQWtCLEdBQUdDLElBQUksQ0FBQ0MsU0FBTCxDQUFlQyxNQUExQztBQUNQLE9BQU8sTUFBTUMsaUJBQWlCLEdBQUcsWUFBOEI7RUFDN0QsSUFBSTtJQUNGLE1BQU1DLHFCQUFxQixHQUFHLEVBQUUsS0FBS0MsaUJBQUwsS0FBMkIsRUFBN0IsQ0FBOUIsQ0FERSxDQUM2RDs7SUFDL0QsTUFBTUMsSUFBSSxHQUFH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
@@ -84,11 +84,11 @@ require("core-js/modules/es.array.find.js");
84
84
 
85
85
  var _assert = _interopRequireDefault(require("assert"));
86
86
 
87
- var _formatISO = _interopRequireDefault(require("date-fns/formatISO"));
87
+ var _index = _interopRequireDefault(require("date-fns/formatISO/index.js"));
88
88
 
89
- var _locale = require("date-fns/locale");
89
+ var _index2 = _interopRequireDefault(require("date-fns/locale/fr/index.js"));
90
90
 
91
- var _parse = _interopRequireDefault(require("date-fns/parse"));
91
+ var _index3 = _interopRequireDefault(require("date-fns/parse/index.js"));
92
92
 
93
93
  var _deepEqual = _interopRequireDefault(require("deep-equal"));
94
94
 
@@ -409,8 +409,8 @@ function _iterRechercheRawAmendements() {
409
409
  }
410
410
 
411
411
  dateDepotTd = amendementTdList[10];
412
- dateDepot = (0, _formatISO["default"])((0, _parse["default"])(dateDepotTd.text, "d MMMM y", new Date(), {
413
- locale: _locale.fr
412
+ dateDepot = (0, _index["default"])((0, _index3["default"])(dateDepotTd.text, "d MMMM y", new Date(), {
413
+ locale: _index2["default"]
414
414
  }), {
415
415
  representation: "date"
416
416
  });
@@ -435,8 +435,8 @@ function _iterRechercheRawAmendements() {
435
435
  break;
436
436
  }
437
437
 
438
- dateExamen = (0, _formatISO["default"])((0, _parse["default"])(dateExamenTd.text, "d MMMM y", new Date(), {
439
- locale: _locale.fr
438
+ dateExamen = (0, _index["default"])((0, _index3["default"])(dateExamenTd.text, "d MMMM y", new Date(), {
439
+ locale: _index2["default"]
440
440
  }), {
441
441
  representation: "date"
442
442
  });
@@ -629,4 +629,4 @@ function _iterRechercheRawAmendements() {
629
629
  }));
630
630
  return _iterRechercheRawAmendements.apply(this, arguments);
631
631
  }
632
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpdGVyUmVjaGVyY2hlQW1lbmRlbWVudHMiLCJhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyIiwidXJsIiwiaW5jcmVtZW50YWwiLCJtaW5EYXRlRGVwb3QiLCJtaW5EYXRlRXhhbWVuIiwib3B0aW9ucyIsIml0ZXJSZWNoZXJjaGVSYXdBbWVuZGVtZW50cyIsImFtZW5kZW1lbnRVcmxQYXRoIiwiYW1lbmRlbWVudCIsImNsZWFuQW1lbmRlbWVudCIsIkFtZW5kZW1lbnRzQ29udmVydCIsInRvQW1lbmRlbWVudCIsIkpTT04iLCJzdHJpbmdpZnkiLCJmcyIsImVuc3VyZURpciIsImFzc2VydCIsInN0cmljdEVxdWFsIiwiZXhlYyIsIm5vdFN0cmljdEVxdWFsIiwiaW5jbHVkZXMiLCJhbWVuZGVtZW50TnVtYmVyIiwidmVyYm9zZSIsImNvbnNvbGUiLCJsb2ciLCJmZXRjaCIsInJlc3BvbnNlIiwib2siLCJzdGF0dXMiLCJzdGF0dXNUZXh0IiwidGV4dCIsInBhZ2UiLCJodG1sIiwicGFyc2VIdG1sIiwicXVlcnlTZWxlY3RvciIsImFtZW5kZW1lbnRzQ291bnREaXYiLCJhbWVuZGVtZW50c0NvdW50IiwicGFyc2VJbnQiLCJhbWVuZGVtZW50c0RpdiIsImFtZW5kZW1lbnRzVGFibGUiLCJ0Zm9vdFRyIiwidGZvb3RUckNlbGxzIiwicXVlcnlTZWxlY3RvckFsbCIsIm1hcCIsImNlbGwiLCJkZWVwRXF1YWwiLCJhbWVuZGVtZW50c1RyIiwibGVuZ3RoIiwiYW1lbmRlbWVudFRyIiwiYW1lbmRlbWVudFRkTGlzdCIsIm91dGVySFRNTCIsImRhdGVEZXBvdFRkIiwiZGF0ZURlcG90IiwiZm9ybWF0SVNPIiwicGFyc2VEYXRlIiwiRGF0ZSIsImxvY2FsZSIsImZyIiwicmVwcmVzZW50YXRpb24iLCJkYXRlRXhhbWVuVGQiLCJkYXRlRXhhbWVuIiwiZ2V0QXR0cmlidXRlIiwidW5kZWZpbmVkIiwiYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZCIsInNwbGl0IiwiYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGgiLCJwYXRoIiwiam9pbiIsInNsaWNlIiwiZGlybmFtZSIsInBhdGhFeGlzdHMiLCJyZWFkRmlsZSIsImV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlIiwiYW1lbmRlbWVudFRyT3V0ZXJIdG1sIiwiYW1lbmRlbWVudFNlYXJjaENhY2hlIiwianNZYW1sIiwiZHVtcCIsInBvc2l0aW9uIiwic2VhcmNoIiwicmVwbGFjZSIsInNvcnRLZXlzIiwiZnJvbnRNYXR0ZXIiLCJib2R5IiwiYW1lbmRlbWVudEh0bWxVcmwiLCJVUkwiLCJ0b1N0cmluZyIsImFtZW5kZW1lbnRIdG1sUmVzcG9uc2UiLCJhbWVuZGVtZW50SHRtbFBhZ2UiLCJhbWVuZGVtZW50SHRtbCIsImZvcm1hdHNMaSIsImpzb25MaSIsImZpbmQiLCJmb3JtYXRMaSIsImZvcm1hdFNwYW4iLCJqc29uQSIsImFtZW5kZW1lbnRKc29uVXJsUGF0aCIsImFtZW5kZW1lbnRKc29uVXJsIiwiYW1lbmRlbWVudEpzb25SZXNwb25zZSIsImpzb24iLCJ3cml0ZUZpbGUiLCJwYWdpbmF0aW9uQSIsInVybFBhdGgiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFyc2Vycy9yZWNoZXJjaGVfYW1lbmRlbWVudHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tIFwiYXNzZXJ0XCJcbmltcG9ydCBmb3JtYXRJU08gZnJvbSBcImRhdGUtZm5zL2Zvcm1hdElTT1wiXG5pbXBvcnQgeyBmciB9IGZyb20gXCJkYXRlLWZucy9sb2NhbGVcIlxuaW1wb3J0IHBhcnNlRGF0ZSBmcm9tIFwiZGF0ZS1mbnMvcGFyc2VcIlxuaW1wb3J0IGRlZXBFcXVhbCBmcm9tIFwiZGVlcC1lcXVhbFwiXG5pbXBvcnQgZnMgZnJvbSBcImZzLWV4dHJhXCJcbmltcG9ydCBmcm9udE1hdHRlciBmcm9tIFwiZnJvbnQtbWF0dGVyXCJcbmltcG9ydCBqc1lhbWwgZnJvbSBcImpzLXlhbWxcIlxuaW1wb3J0IGZldGNoIGZyb20gXCJub2RlLWZldGNoXCJcbmltcG9ydCB7IHBhcnNlIGFzIHBhcnNlSHRtbCB9IGZyb20gXCJub2RlLWh0bWwtcGFyc2VyXCJcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCJcblxuaW1wb3J0IHsgY2xlYW5BbWVuZGVtZW50IH0gZnJvbSBcIi4uL2NsZWFuZXJzXCJcbmltcG9ydCB7IEFtZW5kZW1lbnQgYXMgUmF3QW1lbmRlbWVudCB9IGZyb20gXCIuLi9yYXdfdHlwZXMvYW1lbmRlbWVudHNcIlxuaW1wb3J0IHsgQW1lbmRlbWVudCwgQ29udmVydCBhcyBBbWVuZGVtZW50c0NvbnZlcnQgfSBmcm9tIFwiLi4vdHlwZXMvYW1lbmRlbWVudHNcIlxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24qIGl0ZXJSZWNoZXJjaGVBbWVuZGVtZW50cyhcbiAgYW1lbmRlbWVudHNTZWFyY2hDYWNoZURpcjogc3RyaW5nLFxuICB1cmw6IHN0cmluZyxcbiAgaW5jcmVtZW50YWw6IGJvb2xlYW4sXG4gIG1pbkRhdGVEZXBvdD86IHN0cmluZyB8IG51bGwsXG4gIG1pbkRhdGVFeGFtZW4/OiBzdHJpbmcgfCBudWxsLFxuICBvcHRpb25zOiB7IHNpbGVudD86IGJvb2xlYW47IHZlcmJvc2U/OiBib29sZWFuIH0gPSB7fSxcbik6IEFzeW5jR2VuZXJhdG9yPFtzdHJpbmcsIEFtZW5kZW1lbnRdLCB2b2lkLCB1bmtub3duPiB7XG4gIGZvciBhd2FpdCAoY29uc3QgW1xuICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgIGFtZW5kZW1lbnQsXG4gIF0gb2YgaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICAgIGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIsXG4gICAgdXJsLFxuICAgIGluY3JlbWVudGFsLFxuICAgIG1pbkRhdGVEZXBvdCxcbiAgICBtaW5EYXRlRXhhbWVuLFxuICAgIG9wdGlvbnMsXG4gICkpIHtcbiAgICBjbGVhbkFtZW5kZW1lbnQoYW1lbmRlbWVudClcbiAgICAvLyBEb3VibGUgY29udmVyc2lvbiwgdG8gY29udmVydCBzdHJpbmdzIHRvIGRhdGVzLlxuICAgIHlpZWxkIFtcbiAgICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgICAgQW1lbmRlbWVudHNDb252ZXJ0LnRvQW1lbmRlbWVudChKU09OLnN0cmluZ2lmeShhbWVuZGVtZW50KSksXG4gICAgXVxuICB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiogaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICBhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyOiBzdHJpbmcsXG4gIHVybDogc3RyaW5nLFxuICBpbmNyZW1lbnRhbDogYm9vbGVhbixcbiAgbWluRGF0ZURlcG90Pzogc3RyaW5nIHwgbnVsbCxcbiAgbWluRGF0ZUV4YW1lbj86IHN0cmluZyB8IG51bGwsXG4gIG9wdGlvbnM6IHsgc2lsZW50PzogYm9vbGVhbjsgdmVyYm9zZT86IGJvb2xlYW4gfSA9IHt9LFxuKTogQXN5bmNHZW5lcmF0b3I8W3N0cmluZywgUmF3QW1lbmRlbWVudF0sIHZvaWQsIHVua25vd24+IHtcbiAgYXdhaXQgZnMuZW5zdXJlRGlyKGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIpXG5cbiAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgIC9bPyZdZGF0ZV9kZXBvdD0vLmV4ZWModXJsKSxcbiAgICBudWxsLFxuICAgIGBVUkwgJHt1cmx9IGFscmVhZHkgY29udGFpbnMgYSBkZXBvc2l0IGRhdGVgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXW9yZGVyPS8uZXhlYyh1cmwpLFxuICAgIG51bGwsXG4gICAgYFVSTCAke3VybH0gYWxyZWFkeSBjb250YWlucyBhIHNvcnQgb3JkZXJgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXXBhZ2U9Ly5leGVjKHVybCksXG4gICAgbnVsbCxcbiAgICBgVVJMICR7dXJsfSBhbHJlYWR5IGNvbnRhaW5zIGEgcGFnZSBudW1iZXJgLFxuICApXG4gIGlmIChpbmNyZW1lbnRhbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9bPyZdZXRhdD0vLmV4ZWModXJsKSxcbiAgICAgIG51bGwsXG4gICAgICBgSW4gaW5jcmVtZW50YWwgbW9kZSwgVVJMICR7dXJsfSBtdXN0IGNvbnRhaW4gYW4gXCJldGF0XCIgcXVlcnkgcGFyYW1ldGVyYCxcbiAgICApXG4gIH1cbiAgdXJsICs9ICh1cmwuaW5jbHVkZXMoXCI/XCIpID8gXCImXCIgOiBcIj9cIikgKyBcIm9yZGVyPWRhdGVfZGVwb3QsZGVzYyZwYWdlPTFcIlxuXG4gIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9cXGR7NH0tXFxkezJ9LVxcZHsyfS8uZXhlYyhtaW5EYXRlRGVwb3QpLFxuICAgICAgbnVsbCxcbiAgICAgIGBJbnZhbGlkIGZvcm1hdCBmb3IgbWluaW11bSBkYXRlOiAke21pbkRhdGVEZXBvdH1gLFxuICAgIClcbiAgfVxuXG4gIGxldCBhbWVuZGVtZW50TnVtYmVyID0gMFxuICBpdGVyU2VhcmNoUGFnZXM6IHdoaWxlICh0cnVlKSB7XG4gICAgaWYgKG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgY29uc29sZS5sb2coYEZldGNoaW5nIGFtZW5kZW1lbnRzIHNlYXJjaCBwYWdlIGF0ICR7dXJsfeKApmApXG4gICAgfVxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsKVxuICAgIGFzc2VydChcbiAgICAgIHJlc3BvbnNlLm9rLFxuICAgICAgYFJldHJpZXZhbCBvZiBzZWFyY2ggcGFnZSBhdCAke3VybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7cmVzcG9uc2Uuc3RhdHVzfSAke3Jlc3BvbnNlLnN0YXR1c1RleHR9YCxcbiAgICApXG4gICAgY29uc3QgcGFnZSA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKVxuICAgIGNvbnN0IGh0bWwgPSBwYXJzZUh0bWwocGFnZSlcbiAgICBpZiAoaHRtbC5xdWVyeVNlbGVjdG9yKFwiZGl2Lm5vLXJlc3VsdFwiKSAhPT0gbnVsbCkge1xuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY29uc3QgYW1lbmRlbWVudHNDb3VudERpdiA9IGh0bWwucXVlcnlTZWxlY3RvcihcImRpdi5taXJyb3ItY2FyZC1zdWJ0aXRsZVwiKVxuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhbWVuZGVtZW50c0NvdW50RGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzQ291bnQgPSBwYXJzZUludCgvXFxkKy8uZXhlYyhhbWVuZGVtZW50c0NvdW50RGl2IS50ZXh0KSFbMF0pXG4gICAgY29uc3QgYW1lbmRlbWVudHNEaXYgPSBodG1sLnF1ZXJ5U2VsZWN0b3IoXG4gICAgICBcImRpdi5hbWVuZGVtZW50LWxpc3QtLXJlc3VsdHMtdGFibGVcIixcbiAgICApXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzRGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzVGFibGUgPSBhbWVuZGVtZW50c0RpdiEucXVlcnlTZWxlY3RvcihcInRhYmxlXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzVGFibGUsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUciA9IGFtZW5kZW1lbnRzVGFibGUhLnF1ZXJ5U2VsZWN0b3IoXCJ0Zm9vdCA+IHRyXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKHRmb290VHIsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUckNlbGxzID0gdGZvb3RUciFcbiAgICAgIC5xdWVyeVNlbGVjdG9yQWxsKFwidGQsIHRoXCIpXG4gICAgICAubWFwKChjZWxsKSA9PiBjZWxsLnRleHQpXG4gICAgYXNzZXJ0KFxuICAgICAgZGVlcEVxdWFsKHRmb290VHJDZWxscywgW1xuICAgICAgICBcIlwiLFxuICAgICAgICBcIm7CsFwiLFxuICAgICAgICBcIkRvc3NpZXIgbMOpZ2lzbGF0aWZcIixcbiAgICAgICAgXCJFbXBsYWNlbWVudFwiLFxuICAgICAgICBcIkF1dGV1clwiLFxuICAgICAgICBcIsOJdGF0XCIsXG4gICAgICAgIFwiU29ydFwiLFxuICAgICAgICBcIkRhdGUgZCdleGFtZW5cIixcbiAgICAgICAgXCJFeGFtaW7DqSBwYXJcIixcbiAgICAgICAgXCJUZXh0ZSB2aXPDqVwiLFxuICAgICAgICBcIkRhdGUgZGUgZMOpcMO0dFwiLFxuICAgICAgXSksXG4gICAgICBgVW5leHBlY3RlZCBjb2x1bW5zIGluICR7SlNPTi5zdHJpbmdpZnkodGZvb3RUckNlbGxzLCBudWxsLCAyKX1gLFxuICAgIClcbiAgICBjb25zdCBhbWVuZGVtZW50c1RyID0gYW1lbmRlbWVudHNUYWJsZSEucXVlcnlTZWxlY3RvckFsbChcInRib2R5ID4gdHJcIilcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYW1lbmRlbWVudHNUci5sZW5ndGgsIDApXG4gICAgZm9yIChjb25zdCBhbWVuZGVtZW50VHIgb2YgYW1lbmRlbWVudHNUcikge1xuICAgICAgYW1lbmRlbWVudE51bWJlcisrXG5cbiAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCB8fCBtaW5EYXRlRXhhbWVuICE9IG51bGwpIHtcbiAgICAgICAgY29uc3QgYW1lbmRlbWVudFRkTGlzdCA9IGFtZW5kZW1lbnRUci5xdWVyeVNlbGVjdG9yQWxsKFwidGRcIilcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICAgIGFtZW5kZW1lbnRUZExpc3QubGVuZ3RoLFxuICAgICAgICAgIDExLFxuICAgICAgICAgIGBVbmV4cGVjdGVkIG51bWJlciBvZiBjb2x1bW5zIGluIGFtZW5kbWVudCByb3c6ICR7YW1lbmRlbWVudFRyLm91dGVySFRNTH1gLFxuICAgICAgICApXG4gICAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IGRhdGVEZXBvdFRkID0gYW1lbmRlbWVudFRkTGlzdFsxMF1cbiAgICAgICAgICBjb25zdCBkYXRlRGVwb3QgPSBmb3JtYXRJU08oXG4gICAgICAgICAgICBwYXJzZURhdGUoZGF0ZURlcG90VGQudGV4dCwgXCJkIE1NTU0geVwiLCBuZXcgRGF0ZSgpLCB7IGxvY2FsZTogZnIgfSksXG4gICAgICAgICAgICB7IHJlcHJlc2VudGF0aW9uOiBcImRhdGVcIiB9LFxuICAgICAgICAgIClcbiAgICAgICAgICBpZiAoZGF0ZURlcG90IDwgbWluRGF0ZURlcG90KSB7XG4gICAgICAgICAgICAvLyBTaW5jZSB0aGUgYW1lbmRtZW50cyBhcmUgc29ydGVkIGJ5IGRlcG9zaXQgZGF0ZSwgb25jZSBhbiBhbWVuZG1lbnRcbiAgICAgICAgICAgIC8vIHdpdGggYW4gb2xkIGRlcG9zaXQgZGF0ZSBpcyBlbmNvdW50ZXJlZCwgdGhlIGZ1bGwgc2VhcmNoIGNhbiBiZSBzdG9wcGVkLlxuICAgICAgICAgICAgYnJlYWsgaXRlclNlYXJjaFBhZ2VzXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChtaW5EYXRlRXhhbWVuICE9IG51bGwpIHtcbiAgICAgICAgICBjb25zdCBkYXRlRXhhbWVuVGQgPSBhbWVuZGVtZW50VGRMaXN0WzddXG4gICAgICAgICAgaWYgKGRhdGVFeGFtZW5UZC50ZXh0KSB7XG4gICAgICAgICAgICBjb25zdCBkYXRlRXhhbWVuID0gZm9ybWF0SVNPKFxuICAgICAgICAgICAgICBwYXJzZURhdGUoZGF0ZUV4YW1lblRkLnRleHQsIFwiZCBNTU1NIHlcIiwgbmV3IERhdGUoKSwge1xuICAgICAgICAgICAgICAgIGxvY2FsZTogZnIsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICB7IHJlcHJlc2VudGF0aW9uOiBcImRhdGVcIiB9LFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgaWYgKGRhdGVFeGFtZW4gPCBtaW5EYXRlRXhhbWVuKSB7XG4gICAgICAgICAgICAgIC8vIFRoaXMgYW1lbmRtZW50IGhhcyBiZWVuIGRpc2N1c3NlZCBzaW5jZSBhIGZldyBkYXlzLlxuICAgICAgICAgICAgICAvLyA9PiBJZ25vcmUgaXQsIGJlY2F1c2UgaXQgc2hvdWxkIGJlIGluIEFzc2VtYmzDqWUgb3BlbiBkYXRhLlxuICAgICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBhbWVuZGVtZW50VXJsUGF0aCA9IGFtZW5kZW1lbnRUci5nZXRBdHRyaWJ1dGUoXCJkYXRhLWhyZWZcIilcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhbWVuZGVtZW50VXJsUGF0aCwgdW5kZWZpbmVkKVxuICAgICAgY29uc3QgYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZCA9IGFtZW5kZW1lbnRVcmxQYXRoIS5zcGxpdChcIi9cIilcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgICAgYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZFswXSxcbiAgICAgICAgXCJcIixcbiAgICAgICAgYFVuZXhwZWN0ZWQgVVJMIHBhdGggZm9yIGFtZW5kZW1lbnQ6ICR7YW1lbmRlbWVudFVybFBhdGh9YCxcbiAgICAgIClcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgICAgYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZFsxXSxcbiAgICAgICAgXCJkeW5cIixcbiAgICAgICAgYFVuZXhwZWN0ZWQgVVJMIHBhdGggZm9yIGFtZW5kZW1lbnQ6ICR7YW1lbmRlbWVudFVybFBhdGh9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoID1cbiAgICAgICAgcGF0aC5qb2luKFxuICAgICAgICAgIGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIsXG4gICAgICAgICAgLi4uYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZC5zbGljZSgyKSxcbiAgICAgICAgKSArIFwiLmh0bWxcIlxuICAgICAgYXdhaXQgZnMuZW5zdXJlRGlyKHBhdGguZGlybmFtZShhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCkpXG4gICAgICBjb25zdCBleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSA9IChhd2FpdCBmcy5wYXRoRXhpc3RzKFxuICAgICAgICBhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCxcbiAgICAgICkpXG4gICAgICAgID8gYXdhaXQgZnMucmVhZEZpbGUoYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGgsIFwidXRmOFwiKVxuICAgICAgICA6IG51bGxcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRUck91dGVySHRtbCA9IGFtZW5kZW1lbnRUci5vdXRlckhUTUxcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRTZWFyY2hDYWNoZSA9IGAtLS1cXG4ke2pzWWFtbC5kdW1wKFxuICAgICAgICB7XG4gICAgICAgICAgcG9zaXRpb246IGFtZW5kZW1lbnRzQ291bnQgLSBhbWVuZGVtZW50TnVtYmVyLFxuICAgICAgICAgIHNlYXJjaDogdXJsLnJlcGxhY2UoLyZwYWdlPVtcXGRdKy8sIFwiXCIpLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgc29ydEtleXM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICApfS0tLVxcblxcbiR7YW1lbmRlbWVudFRyT3V0ZXJIdG1sfWBcbiAgICAgIGlmIChhbWVuZGVtZW50U2VhcmNoQ2FjaGUgPT09IGV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlKSB7XG4gICAgICAgIGlmIChpbmNyZW1lbnRhbCkge1xuICAgICAgICAgIC8vIFRoZSBzYW1lIDx0cj4gaXMgYWxyZWFkeSBpbiBjYWNoZSBhbmQgaW4gdGhlIHNhbWUgcG9zaXRpb24uXG4gICAgICAgICAgLy8gQXNzdW1lIHRoYXQgZm9sbG93aW5nIGFtZW5kbWVudHMgYXJlIG5vdCBjaGFuZ2VkIGFuZCBzdG9wIGxvb2tpbmdcbiAgICAgICAgICAvLyBmb3IgYW1lbmRtZW50cyB0byB1cHNlcnQuXG4gICAgICAgICAgYnJlYWsgaXRlclNlYXJjaFBhZ2VzXG4gICAgICAgIH1cbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUgIT09IG51bGwgJiZcbiAgICAgICAgZnJvbnRNYXR0ZXIoZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUpLmJvZHkgPT09XG4gICAgICAgICAgYW1lbmRlbWVudFRyT3V0ZXJIdG1sXG4gICAgICApIHtcbiAgICAgICAgLy8gVGhlIHNhbWUgPHRyPiBpcyBhbHJlYWR5IGluIGNhY2hlLCBidXQgaW4gYSBkaWZmZXJlbnQgcG9zaXRpb24uXG4gICAgICAgIC8vIEFzc3VtZSB0aGUgYW1lbmRtZW50IGlzIHVuY2hhbmdlZC5cbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGlmIChvcHRpb25zLnZlcmJvc2UpIHtcbiAgICAgICAgaWYgKGV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlID09PSBudWxsKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgICBgQWRkaW5nIGFtZW5kZW1lbnQgc2VhcmNoIGNhY2hlOiAke2FtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRofeKApmAsXG4gICAgICAgICAgKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgICAgYFVwZGF0aW5nIGFtZW5kZW1lbnQgc2VhcmNoIGNhY2hlOiAke2FtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRofeKApmAsXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbFVybCA9IG5ldyBVUkwoXG4gICAgICAgIGFtZW5kZW1lbnRVcmxQYXRoISxcbiAgICAgICAgXCJodHRwczovL3d3dy5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL1wiLFxuICAgICAgKS50b1N0cmluZygpXG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbFJlc3BvbnNlID0gYXdhaXQgZmV0Y2goYW1lbmRlbWVudEh0bWxVcmwpXG4gICAgICBhc3NlcnQoXG4gICAgICAgIGFtZW5kZW1lbnRIdG1sUmVzcG9uc2Uub2ssXG4gICAgICAgIGBSZXRyaWV2YWwgb2YgYW1lbmRlbWVudCBIVE1MIHBhZ2UgYXQgJHthbWVuZGVtZW50SHRtbFVybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7YW1lbmRlbWVudEh0bWxSZXNwb25zZS5zdGF0dXN9ICR7YW1lbmRlbWVudEh0bWxSZXNwb25zZS5zdGF0dXNUZXh0fWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbFBhZ2UgPSBhd2FpdCBhbWVuZGVtZW50SHRtbFJlc3BvbnNlLnRleHQoKVxuICAgICAgY29uc3QgYW1lbmRlbWVudEh0bWwgPSBwYXJzZUh0bWwoYW1lbmRlbWVudEh0bWxQYWdlKVxuICAgICAgY29uc3QgZm9ybWF0c0xpID0gYW1lbmRlbWVudEh0bWwucXVlcnlTZWxlY3RvckFsbChcbiAgICAgICAgXCJsaS5taXJyb3ItY2FyZC1oZWFkZXItLW9wdGlvbnMtLWNvbnRlbnQtLWl0ZW1cIixcbiAgICAgIClcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChmb3JtYXRzTGkubGVuZ3RoLCAwKVxuICAgICAgY29uc3QganNvbkxpID0gZm9ybWF0c0xpLmZpbmQoKGZvcm1hdExpKSA9PiB7XG4gICAgICAgIGNvbnN0IGZvcm1hdFNwYW4gPSBmb3JtYXRMaS5xdWVyeVNlbGVjdG9yKFwiYSA+IHNwYW5cIilcbiAgICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgICAgIGZvcm1hdFNwYW4sXG4gICAgICAgICAgbnVsbCxcbiAgICAgICAgICBgTm8gPHNwYW4+IGluIDxhPiBmb3VuZCBpbiAke2Zvcm1hdExpLnRvU3RyaW5nKCl9YCxcbiAgICAgICAgKVxuICAgICAgICByZXR1cm4gZm9ybWF0U3BhbiEudGV4dCA9PT0gXCJWZXJzaW9uIEpTT05cIlxuICAgICAgfSlcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgICAganNvbkxpLFxuICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgIGBObyBKU09OIHZlcnNpb24gZm91bmQgZm9yIGFtZW5kZW1lbnQgYXQgJHthbWVuZGVtZW50SHRtbFVybH1gLFxuICAgICAgKVxuICAgICAgY29uc3QganNvbkEgPSBqc29uTGkhLnF1ZXJ5U2VsZWN0b3IoXCJhXCIpXG4gICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoXG4gICAgICAgIGpzb25BLFxuICAgICAgICBudWxsLFxuICAgICAgICBgTm8gPGE+IGZvdW5kIGluICR7anNvbkxpIS50b1N0cmluZygpfWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50SnNvblVybFBhdGggPSBqc29uQSEuZ2V0QXR0cmlidXRlKFwiaHJlZlwiKVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgICBhbWVuZGVtZW50SnNvblVybFBhdGgsXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgYE5vIFVSTCBmb3VuZCBmb3IgSlNPTiB2ZXJzaW9uIG9mIGFtZW5kZW1lbnQ6ICR7anNvbkxpIS50b1N0cmluZygpfWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50SnNvblVybCA9IG5ldyBVUkwoXG4gICAgICAgIGFtZW5kZW1lbnRKc29uVXJsUGF0aCEsXG4gICAgICAgIFwiaHR0cHM6Ly93d3cuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9cIixcbiAgICAgICkudG9TdHJpbmcoKVxuICAgICAgY29uc3QgYW1lbmRlbWVudEpzb25SZXNwb25zZSA9IGF3YWl0IGZldGNoKGFtZW5kZW1lbnRKc29uVXJsKVxuICAgICAgYXNzZXJ0KFxuICAgICAgICBhbWVuZGVtZW50SnNvblJlc3BvbnNlLm9rLFxuICAgICAgICBgUmV0cmlldmFsIG9mIGFtZW5kZW1lbnQgSlNPTiBwYWdlIGF0ICR7YW1lbmRlbWVudEpzb25Vcmx9IGZhaWxlZCB3aXRoIGVycm9yOiAke2FtZW5kZW1lbnRKc29uUmVzcG9uc2Uuc3RhdHVzfSAke2FtZW5kZW1lbnRKc29uUmVzcG9uc2Uuc3RhdHVzVGV4dH1gLFxuICAgICAgKVxuICAgICAgY29uc3QgYW1lbmRlbWVudCA9IGF3YWl0IGFtZW5kZW1lbnRKc29uUmVzcG9uc2UuanNvbigpXG4gICAgICB5aWVsZCBbYW1lbmRlbWVudFVybFBhdGghLCBhbWVuZGVtZW50XVxuXG4gICAgICAvLyBTZWFyY2hDYWNoZSBtdXN0IGJlIHdyaXR0ZW4gYXQgdGhlIGVuZCB0byBlbnN1cmUgdGhhdCBldmVyeXRoaW5nIGlzIGluIGEgY29uc2lzdGVudCBzdGF0ZSxcbiAgICAgIC8vIGV2ZW4gaWYgc2NyaXB0IGZhaWxzIGFicnVwdGx5LlxuICAgICAgYXdhaXQgZnMud3JpdGVGaWxlKFxuICAgICAgICBhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCxcbiAgICAgICAgYW1lbmRlbWVudFNlYXJjaENhY2hlLFxuICAgICAgICBcInV0ZjhcIixcbiAgICAgIClcbiAgICB9XG5cbiAgICBjb25zdCBwYWdpbmF0aW9uQSA9IGh0bWwucXVlcnlTZWxlY3RvcihcbiAgICAgIFwiZGl2LmFuLXBhZ2luYXRpb24tLWl0ZW0gPiBpLmFuLWljb25zLWNoZXZyb24tcmlnaHQgfiBhXCIsXG4gICAgKVxuICAgIGlmIChwYWdpbmF0aW9uQSA9PT0gbnVsbCkge1xuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY29uc3QgdXJsUGF0aCA9IHBhZ2luYXRpb25BLmdldEF0dHJpYnV0ZShcImhyZWZcIilcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwodXJsUGF0aCwgdW5kZWZpbmVkKVxuICAgIHVybCA9IG5ldyBVUkwodXJsUGF0aCEsIFwiaHR0cHM6Ly93d3cuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9cIikudG9TdHJpbmcoKVxuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
632
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpdGVyUmVjaGVyY2hlQW1lbmRlbWVudHMiLCJhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyIiwidXJsIiwiaW5jcmVtZW50YWwiLCJtaW5EYXRlRGVwb3QiLCJtaW5EYXRlRXhhbWVuIiwib3B0aW9ucyIsIml0ZXJSZWNoZXJjaGVSYXdBbWVuZGVtZW50cyIsImFtZW5kZW1lbnRVcmxQYXRoIiwiYW1lbmRlbWVudCIsImNsZWFuQW1lbmRlbWVudCIsIkFtZW5kZW1lbnRzQ29udmVydCIsInRvQW1lbmRlbWVudCIsIkpTT04iLCJzdHJpbmdpZnkiLCJmcyIsImVuc3VyZURpciIsImFzc2VydCIsInN0cmljdEVxdWFsIiwiZXhlYyIsIm5vdFN0cmljdEVxdWFsIiwiaW5jbHVkZXMiLCJhbWVuZGVtZW50TnVtYmVyIiwidmVyYm9zZSIsImNvbnNvbGUiLCJsb2ciLCJmZXRjaCIsInJlc3BvbnNlIiwib2siLCJzdGF0dXMiLCJzdGF0dXNUZXh0IiwidGV4dCIsInBhZ2UiLCJodG1sIiwicGFyc2VIdG1sIiwicXVlcnlTZWxlY3RvciIsImFtZW5kZW1lbnRzQ291bnREaXYiLCJhbWVuZGVtZW50c0NvdW50IiwicGFyc2VJbnQiLCJhbWVuZGVtZW50c0RpdiIsImFtZW5kZW1lbnRzVGFibGUiLCJ0Zm9vdFRyIiwidGZvb3RUckNlbGxzIiwicXVlcnlTZWxlY3RvckFsbCIsIm1hcCIsImNlbGwiLCJkZWVwRXF1YWwiLCJhbWVuZGVtZW50c1RyIiwibGVuZ3RoIiwiYW1lbmRlbWVudFRyIiwiYW1lbmRlbWVudFRkTGlzdCIsIm91dGVySFRNTCIsImRhdGVEZXBvdFRkIiwiZGF0ZURlcG90IiwiZm9ybWF0SVNPIiwicGFyc2VEYXRlIiwiRGF0ZSIsImxvY2FsZSIsImZyTG9jYWxlIiwicmVwcmVzZW50YXRpb24iLCJkYXRlRXhhbWVuVGQiLCJkYXRlRXhhbWVuIiwiZ2V0QXR0cmlidXRlIiwidW5kZWZpbmVkIiwiYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZCIsInNwbGl0IiwiYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGgiLCJwYXRoIiwiam9pbiIsInNsaWNlIiwiZGlybmFtZSIsInBhdGhFeGlzdHMiLCJyZWFkRmlsZSIsImV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlIiwiYW1lbmRlbWVudFRyT3V0ZXJIdG1sIiwiYW1lbmRlbWVudFNlYXJjaENhY2hlIiwianNZYW1sIiwiZHVtcCIsInBvc2l0aW9uIiwic2VhcmNoIiwicmVwbGFjZSIsInNvcnRLZXlzIiwiZnJvbnRNYXR0ZXIiLCJib2R5IiwiYW1lbmRlbWVudEh0bWxVcmwiLCJVUkwiLCJ0b1N0cmluZyIsImFtZW5kZW1lbnRIdG1sUmVzcG9uc2UiLCJhbWVuZGVtZW50SHRtbFBhZ2UiLCJhbWVuZGVtZW50SHRtbCIsImZvcm1hdHNMaSIsImpzb25MaSIsImZpbmQiLCJmb3JtYXRMaSIsImZvcm1hdFNwYW4iLCJqc29uQSIsImFtZW5kZW1lbnRKc29uVXJsUGF0aCIsImFtZW5kZW1lbnRKc29uVXJsIiwiYW1lbmRlbWVudEpzb25SZXNwb25zZSIsImpzb24iLCJ3cml0ZUZpbGUiLCJwYWdpbmF0aW9uQSIsInVybFBhdGgiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFyc2Vycy9yZWNoZXJjaGVfYW1lbmRlbWVudHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tIFwiYXNzZXJ0XCJcbi8vIE5vdGU6IFwiL2luZGV4LmpzXCIgYWRkZWQgdG8gaW1wb3J0cywgYmVjYXVzZSBvZiBpc3N1ZVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2RhdGUtZm5zL2RhdGUtZm5zL2lzc3Vlcy8yOTY0XG5pbXBvcnQgZm9ybWF0SVNPIGZyb20gXCJkYXRlLWZucy9mb3JtYXRJU08vaW5kZXguanNcIlxuaW1wb3J0IGZyTG9jYWxlIGZyb20gXCJkYXRlLWZucy9sb2NhbGUvZnIvaW5kZXguanNcIlxuaW1wb3J0IHBhcnNlRGF0ZSBmcm9tIFwiZGF0ZS1mbnMvcGFyc2UvaW5kZXguanNcIlxuaW1wb3J0IGRlZXBFcXVhbCBmcm9tIFwiZGVlcC1lcXVhbFwiXG5pbXBvcnQgZnMgZnJvbSBcImZzLWV4dHJhXCJcbmltcG9ydCBmcm9udE1hdHRlciBmcm9tIFwiZnJvbnQtbWF0dGVyXCJcbmltcG9ydCBqc1lhbWwgZnJvbSBcImpzLXlhbWxcIlxuaW1wb3J0IGZldGNoIGZyb20gXCJub2RlLWZldGNoXCJcbmltcG9ydCB7IHBhcnNlIGFzIHBhcnNlSHRtbCB9IGZyb20gXCJub2RlLWh0bWwtcGFyc2VyXCJcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCJcblxuaW1wb3J0IHsgY2xlYW5BbWVuZGVtZW50IH0gZnJvbSBcIi4uL2NsZWFuZXJzXCJcbmltcG9ydCB7IEFtZW5kZW1lbnQgYXMgUmF3QW1lbmRlbWVudCB9IGZyb20gXCIuLi9yYXdfdHlwZXMvYW1lbmRlbWVudHNcIlxuaW1wb3J0IHsgQW1lbmRlbWVudCwgQ29udmVydCBhcyBBbWVuZGVtZW50c0NvbnZlcnQgfSBmcm9tIFwiLi4vdHlwZXMvYW1lbmRlbWVudHNcIlxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24qIGl0ZXJSZWNoZXJjaGVBbWVuZGVtZW50cyhcbiAgYW1lbmRlbWVudHNTZWFyY2hDYWNoZURpcjogc3RyaW5nLFxuICB1cmw6IHN0cmluZyxcbiAgaW5jcmVtZW50YWw6IGJvb2xlYW4sXG4gIG1pbkRhdGVEZXBvdD86IHN0cmluZyB8IG51bGwsXG4gIG1pbkRhdGVFeGFtZW4/OiBzdHJpbmcgfCBudWxsLFxuICBvcHRpb25zOiB7IHNpbGVudD86IGJvb2xlYW47IHZlcmJvc2U/OiBib29sZWFuIH0gPSB7fSxcbik6IEFzeW5jR2VuZXJhdG9yPFtzdHJpbmcsIEFtZW5kZW1lbnRdLCB2b2lkLCB1bmtub3duPiB7XG4gIGZvciBhd2FpdCAoY29uc3QgW1xuICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgIGFtZW5kZW1lbnQsXG4gIF0gb2YgaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICAgIGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIsXG4gICAgdXJsLFxuICAgIGluY3JlbWVudGFsLFxuICAgIG1pbkRhdGVEZXBvdCxcbiAgICBtaW5EYXRlRXhhbWVuLFxuICAgIG9wdGlvbnMsXG4gICkpIHtcbiAgICBjbGVhbkFtZW5kZW1lbnQoYW1lbmRlbWVudClcbiAgICAvLyBEb3VibGUgY29udmVyc2lvbiwgdG8gY29udmVydCBzdHJpbmdzIHRvIGRhdGVzLlxuICAgIHlpZWxkIFtcbiAgICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgICAgQW1lbmRlbWVudHNDb252ZXJ0LnRvQW1lbmRlbWVudChKU09OLnN0cmluZ2lmeShhbWVuZGVtZW50KSksXG4gICAgXVxuICB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiogaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICBhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyOiBzdHJpbmcsXG4gIHVybDogc3RyaW5nLFxuICBpbmNyZW1lbnRhbDogYm9vbGVhbixcbiAgbWluRGF0ZURlcG90Pzogc3RyaW5nIHwgbnVsbCxcbiAgbWluRGF0ZUV4YW1lbj86IHN0cmluZyB8IG51bGwsXG4gIG9wdGlvbnM6IHsgc2lsZW50PzogYm9vbGVhbjsgdmVyYm9zZT86IGJvb2xlYW4gfSA9IHt9LFxuKTogQXN5bmNHZW5lcmF0b3I8W3N0cmluZywgUmF3QW1lbmRlbWVudF0sIHZvaWQsIHVua25vd24+IHtcbiAgYXdhaXQgZnMuZW5zdXJlRGlyKGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIpXG5cbiAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgIC9bPyZdZGF0ZV9kZXBvdD0vLmV4ZWModXJsKSxcbiAgICBudWxsLFxuICAgIGBVUkwgJHt1cmx9IGFscmVhZHkgY29udGFpbnMgYSBkZXBvc2l0IGRhdGVgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXW9yZGVyPS8uZXhlYyh1cmwpLFxuICAgIG51bGwsXG4gICAgYFVSTCAke3VybH0gYWxyZWFkeSBjb250YWlucyBhIHNvcnQgb3JkZXJgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXXBhZ2U9Ly5leGVjKHVybCksXG4gICAgbnVsbCxcbiAgICBgVVJMICR7dXJsfSBhbHJlYWR5IGNvbnRhaW5zIGEgcGFnZSBudW1iZXJgLFxuICApXG4gIGlmIChpbmNyZW1lbnRhbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9bPyZdZXRhdD0vLmV4ZWModXJsKSxcbiAgICAgIG51bGwsXG4gICAgICBgSW4gaW5jcmVtZW50YWwgbW9kZSwgVVJMICR7dXJsfSBtdXN0IGNvbnRhaW4gYW4gXCJldGF0XCIgcXVlcnkgcGFyYW1ldGVyYCxcbiAgICApXG4gIH1cbiAgdXJsICs9ICh1cmwuaW5jbHVkZXMoXCI/XCIpID8gXCImXCIgOiBcIj9cIikgKyBcIm9yZGVyPWRhdGVfZGVwb3QsZGVzYyZwYWdlPTFcIlxuXG4gIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9cXGR7NH0tXFxkezJ9LVxcZHsyfS8uZXhlYyhtaW5EYXRlRGVwb3QpLFxuICAgICAgbnVsbCxcbiAgICAgIGBJbnZhbGlkIGZvcm1hdCBmb3IgbWluaW11bSBkYXRlOiAke21pbkRhdGVEZXBvdH1gLFxuICAgIClcbiAgfVxuXG4gIGxldCBhbWVuZGVtZW50TnVtYmVyID0gMFxuICBpdGVyU2VhcmNoUGFnZXM6IHdoaWxlICh0cnVlKSB7XG4gICAgaWYgKG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgY29uc29sZS5sb2coYEZldGNoaW5nIGFtZW5kZW1lbnRzIHNlYXJjaCBwYWdlIGF0ICR7dXJsfeKApmApXG4gICAgfVxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsKVxuICAgIGFzc2VydChcbiAgICAgIHJlc3BvbnNlLm9rLFxuICAgICAgYFJldHJpZXZhbCBvZiBzZWFyY2ggcGFnZSBhdCAke3VybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7cmVzcG9uc2Uuc3RhdHVzfSAke3Jlc3BvbnNlLnN0YXR1c1RleHR9YCxcbiAgICApXG4gICAgY29uc3QgcGFnZSA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKVxuICAgIGNvbnN0IGh0bWwgPSBwYXJzZUh0bWwocGFnZSlcbiAgICBpZiAoaHRtbC5xdWVyeVNlbGVjdG9yKFwiZGl2Lm5vLXJlc3VsdFwiKSAhPT0gbnVsbCkge1xuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY29uc3QgYW1lbmRlbWVudHNDb3VudERpdiA9IGh0bWwucXVlcnlTZWxlY3RvcihcImRpdi5taXJyb3ItY2FyZC1zdWJ0aXRsZVwiKVxuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhbWVuZGVtZW50c0NvdW50RGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzQ291bnQgPSBwYXJzZUludCgvXFxkKy8uZXhlYyhhbWVuZGVtZW50c0NvdW50RGl2IS50ZXh0KSFbMF0pXG4gICAgY29uc3QgYW1lbmRlbWVudHNEaXYgPSBodG1sLnF1ZXJ5U2VsZWN0b3IoXG4gICAgICBcImRpdi5hbWVuZGVtZW50LWxpc3QtLXJlc3VsdHMtdGFibGVcIixcbiAgICApXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzRGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzVGFibGUgPSBhbWVuZGVtZW50c0RpdiEucXVlcnlTZWxlY3RvcihcInRhYmxlXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzVGFibGUsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUciA9IGFtZW5kZW1lbnRzVGFibGUhLnF1ZXJ5U2VsZWN0b3IoXCJ0Zm9vdCA+IHRyXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKHRmb290VHIsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUckNlbGxzID0gdGZvb3RUciFcbiAgICAgIC5xdWVyeVNlbGVjdG9yQWxsKFwidGQsIHRoXCIpXG4gICAgICAubWFwKChjZWxsKSA9PiBjZWxsLnRleHQpXG4gICAgYXNzZXJ0KFxuICAgICAgZGVlcEVxdWFsKHRmb290VHJDZWxscywgW1xuICAgICAgICBcIlwiLFxuICAgICAgICBcIm7CsFwiLFxuICAgICAgICBcIkRvc3NpZXIgbMOpZ2lzbGF0aWZcIixcbiAgICAgICAgXCJFbXBsYWNlbWVudFwiLFxuICAgICAgICBcIkF1dGV1clwiLFxuICAgICAgICBcIsOJdGF0XCIsXG4gICAgICAgIFwiU29ydFwiLFxuICAgICAgICBcIkRhdGUgZCdleGFtZW5cIixcbiAgICAgICAgXCJFeGFtaW7DqSBwYXJcIixcbiAgICAgICAgXCJUZXh0ZSB2aXPDqVwiLFxuICAgICAgICBcIkRhdGUgZGUgZMOpcMO0dFwiLFxuICAgICAgXSksXG4gICAgICBgVW5leHBlY3RlZCBjb2x1bW5zIGluICR7SlNPTi5zdHJpbmdpZnkodGZvb3RUckNlbGxzLCBudWxsLCAyKX1gLFxuICAgIClcbiAgICBjb25zdCBhbWVuZGVtZW50c1RyID0gYW1lbmRlbWVudHNUYWJsZSEucXVlcnlTZWxlY3RvckFsbChcInRib2R5ID4gdHJcIilcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYW1lbmRlbWVudHNUci5sZW5ndGgsIDApXG4gICAgZm9yIChjb25zdCBhbWVuZGVtZW50VHIgb2YgYW1lbmRlbWVudHNUcikge1xuICAgICAgYW1lbmRlbWVudE51bWJlcisrXG5cbiAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCB8fCBtaW5EYXRlRXhhbWVuICE9IG51bGwpIHtcbiAgICAgICAgY29uc3QgYW1lbmRlbWVudFRkTGlzdCA9IGFtZW5kZW1lbnRUci5xdWVyeVNlbGVjdG9yQWxsKFwidGRcIilcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICAgIGFtZW5kZW1lbnRUZExpc3QubGVuZ3RoLFxuICAgICAgICAgIDExLFxuICAgICAgICAgIGBVbmV4cGVjdGVkIG51bWJlciBvZiBjb2x1bW5zIGluIGFtZW5kbWVudCByb3c6ICR7YW1lbmRlbWVudFRyLm91dGVySFRNTH1gLFxuICAgICAgICApXG4gICAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IGRhdGVEZXBvdFRkID0gYW1lbmRlbWVudFRkTGlzdFsxMF1cbiAgICAgICAgICBjb25zdCBkYXRlRGVwb3QgPSBmb3JtYXRJU08oXG4gICAgICAgICAgICBwYXJzZURhdGUoZGF0ZURlcG90VGQudGV4dCwgXCJkIE1NTU0geVwiLCBuZXcgRGF0ZSgpLCB7IGxvY2FsZTogZnJMb2NhbGUgfSksXG4gICAgICAgICAgICB7IHJlcHJlc2VudGF0aW9uOiBcImRhdGVcIiB9LFxuICAgICAgICAgIClcbiAgICAgICAgICBpZiAoZGF0ZURlcG90IDwgbWluRGF0ZURlcG90KSB7XG4gICAgICAgICAgICAvLyBTaW5jZSB0aGUgYW1lbmRtZW50cyBhcmUgc29ydGVkIGJ5IGRlcG9zaXQgZGF0ZSwgb25jZSBhbiBhbWVuZG1lbnRcbiAgICAgICAgICAgIC8vIHdpdGggYW4gb2xkIGRlcG9zaXQgZGF0ZSBpcyBlbmNvdW50ZXJlZCwgdGhlIGZ1bGwgc2VhcmNoIGNhbiBiZSBzdG9wcGVkLlxuICAgICAgICAgICAgYnJlYWsgaXRlclNlYXJjaFBhZ2VzXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChtaW5EYXRlRXhhbWVuICE9IG51bGwpIHtcbiAgICAgICAgICBjb25zdCBkYXRlRXhhbWVuVGQgPSBhbWVuZGVtZW50VGRMaXN0WzddXG4gICAgICAgICAgaWYgKGRhdGVFeGFtZW5UZC50ZXh0KSB7XG4gICAgICAgICAgICBjb25zdCBkYXRlRXhhbWVuID0gZm9ybWF0SVNPKFxuICAgICAgICAgICAgICBwYXJzZURhdGUoZGF0ZUV4YW1lblRkLnRleHQsIFwiZCBNTU1NIHlcIiwgbmV3IERhdGUoKSwge1xuICAgICAgICAgICAgICAgIGxvY2FsZTogZnJMb2NhbGUsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICB7IHJlcHJlc2VudGF0aW9uOiBcImRhdGVcIiB9LFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgaWYgKGRhdGVFeGFtZW4gPCBtaW5EYXRlRXhhbWVuKSB7XG4gICAgICAgICAgICAgIC8vIFRoaXMgYW1lbmRtZW50IGhhcyBiZWVuIGRpc2N1c3NlZCBzaW5jZSBhIGZldyBkYXlzLlxuICAgICAgICAgICAgICAvLyA9PiBJZ25vcmUgaXQsIGJlY2F1c2UgaXQgc2hvdWxkIGJlIGluIEFzc2VtYmzDqWUgb3BlbiBkYXRhLlxuICAgICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBhbWVuZGVtZW50VXJsUGF0aCA9IGFtZW5kZW1lbnRUci5nZXRBdHRyaWJ1dGUoXCJkYXRhLWhyZWZcIilcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhbWVuZGVtZW50VXJsUGF0aCwgdW5kZWZpbmVkKVxuICAgICAgY29uc3QgYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZCA9IGFtZW5kZW1lbnRVcmxQYXRoIS5zcGxpdChcIi9cIilcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgICAgYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZFswXSxcbiAgICAgICAgXCJcIixcbiAgICAgICAgYFVuZXhwZWN0ZWQgVVJMIHBhdGggZm9yIGFtZW5kZW1lbnQ6ICR7YW1lbmRlbWVudFVybFBhdGh9YCxcbiAgICAgIClcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgICAgYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZFsxXSxcbiAgICAgICAgXCJkeW5cIixcbiAgICAgICAgYFVuZXhwZWN0ZWQgVVJMIHBhdGggZm9yIGFtZW5kZW1lbnQ6ICR7YW1lbmRlbWVudFVybFBhdGh9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoID1cbiAgICAgICAgcGF0aC5qb2luKFxuICAgICAgICAgIGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIsXG4gICAgICAgICAgLi4uYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZC5zbGljZSgyKSxcbiAgICAgICAgKSArIFwiLmh0bWxcIlxuICAgICAgYXdhaXQgZnMuZW5zdXJlRGlyKHBhdGguZGlybmFtZShhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCkpXG4gICAgICBjb25zdCBleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSA9IChhd2FpdCBmcy5wYXRoRXhpc3RzKFxuICAgICAgICBhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCxcbiAgICAgICkpXG4gICAgICAgID8gYXdhaXQgZnMucmVhZEZpbGUoYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGgsIFwidXRmOFwiKVxuICAgICAgICA6IG51bGxcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRUck91dGVySHRtbCA9IGFtZW5kZW1lbnRUci5vdXRlckhUTUxcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRTZWFyY2hDYWNoZSA9IGAtLS1cXG4ke2pzWWFtbC5kdW1wKFxuICAgICAgICB7XG4gICAgICAgICAgcG9zaXRpb246IGFtZW5kZW1lbnRzQ291bnQgLSBhbWVuZGVtZW50TnVtYmVyLFxuICAgICAgICAgIHNlYXJjaDogdXJsLnJlcGxhY2UoLyZwYWdlPVtcXGRdKy8sIFwiXCIpLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgc29ydEtleXM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICApfS0tLVxcblxcbiR7YW1lbmRlbWVudFRyT3V0ZXJIdG1sfWBcbiAgICAgIGlmIChhbWVuZGVtZW50U2VhcmNoQ2FjaGUgPT09IGV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlKSB7XG4gICAgICAgIGlmIChpbmNyZW1lbnRhbCkge1xuICAgICAgICAgIC8vIFRoZSBzYW1lIDx0cj4gaXMgYWxyZWFkeSBpbiBjYWNoZSBhbmQgaW4gdGhlIHNhbWUgcG9zaXRpb24uXG4gICAgICAgICAgLy8gQXNzdW1lIHRoYXQgZm9sbG93aW5nIGFtZW5kbWVudHMgYXJlIG5vdCBjaGFuZ2VkIGFuZCBzdG9wIGxvb2tpbmdcbiAgICAgICAgICAvLyBmb3IgYW1lbmRtZW50cyB0byB1cHNlcnQuXG4gICAgICAgICAgYnJlYWsgaXRlclNlYXJjaFBhZ2VzXG4gICAgICAgIH1cbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUgIT09IG51bGwgJiZcbiAgICAgICAgZnJvbnRNYXR0ZXIoZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUpLmJvZHkgPT09XG4gICAgICAgICAgYW1lbmRlbWVudFRyT3V0ZXJIdG1sXG4gICAgICApIHtcbiAgICAgICAgLy8gVGhlIHNhbWUgPHRyPiBpcyBhbHJlYWR5IGluIGNhY2hlLCBidXQgaW4gYSBkaWZmZXJlbnQgcG9zaXRpb24uXG4gICAgICAgIC8vIEFzc3VtZSB0aGUgYW1lbmRtZW50IGlzIHVuY2hhbmdlZC5cbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGlmIChvcHRpb25zLnZlcmJvc2UpIHtcbiAgICAgICAgaWYgKGV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlID09PSBudWxsKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgICBgQWRkaW5nIGFtZW5kZW1lbnQgc2VhcmNoIGNhY2hlOiAke2FtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRofeKApmAsXG4gICAgICAgICAgKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgICAgYFVwZGF0aW5nIGFtZW5kZW1lbnQgc2VhcmNoIGNhY2hlOiAke2FtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRofeKApmAsXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbFVybCA9IG5ldyBVUkwoXG4gICAgICAgIGFtZW5kZW1lbnRVcmxQYXRoISxcbiAgICAgICAgXCJodHRwczovL3d3dy5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL1wiLFxuICAgICAgKS50b1N0cmluZygpXG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbFJlc3BvbnNlID0gYXdhaXQgZmV0Y2goYW1lbmRlbWVudEh0bWxVcmwpXG4gICAgICBhc3NlcnQoXG4gICAgICAgIGFtZW5kZW1lbnRIdG1sUmVzcG9uc2Uub2ssXG4gICAgICAgIGBSZXRyaWV2YWwgb2YgYW1lbmRlbWVudCBIVE1MIHBhZ2UgYXQgJHthbWVuZGVtZW50SHRtbFVybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7YW1lbmRlbWVudEh0bWxSZXNwb25zZS5zdGF0dXN9ICR7YW1lbmRlbWVudEh0bWxSZXNwb25zZS5zdGF0dXNUZXh0fWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbFBhZ2UgPSBhd2FpdCBhbWVuZGVtZW50SHRtbFJlc3BvbnNlLnRleHQoKVxuICAgICAgY29uc3QgYW1lbmRlbWVudEh0bWwgPSBwYXJzZUh0bWwoYW1lbmRlbWVudEh0bWxQYWdlKVxuICAgICAgY29uc3QgZm9ybWF0c0xpID0gYW1lbmRlbWVudEh0bWwucXVlcnlTZWxlY3RvckFsbChcbiAgICAgICAgXCJsaS5taXJyb3ItY2FyZC1oZWFkZXItLW9wdGlvbnMtLWNvbnRlbnQtLWl0ZW1cIixcbiAgICAgIClcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChmb3JtYXRzTGkubGVuZ3RoLCAwKVxuICAgICAgY29uc3QganNvbkxpID0gZm9ybWF0c0xpLmZpbmQoKGZvcm1hdExpKSA9PiB7XG4gICAgICAgIGNvbnN0IGZvcm1hdFNwYW4gPSBmb3JtYXRMaS5xdWVyeVNlbGVjdG9yKFwiYSA+IHNwYW5cIilcbiAgICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgICAgIGZvcm1hdFNwYW4sXG4gICAgICAgICAgbnVsbCxcbiAgICAgICAgICBgTm8gPHNwYW4+IGluIDxhPiBmb3VuZCBpbiAke2Zvcm1hdExpLnRvU3RyaW5nKCl9YCxcbiAgICAgICAgKVxuICAgICAgICByZXR1cm4gZm9ybWF0U3BhbiEudGV4dCA9PT0gXCJWZXJzaW9uIEpTT05cIlxuICAgICAgfSlcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgICAganNvbkxpLFxuICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgIGBObyBKU09OIHZlcnNpb24gZm91bmQgZm9yIGFtZW5kZW1lbnQgYXQgJHthbWVuZGVtZW50SHRtbFVybH1gLFxuICAgICAgKVxuICAgICAgY29uc3QganNvbkEgPSBqc29uTGkhLnF1ZXJ5U2VsZWN0b3IoXCJhXCIpXG4gICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoXG4gICAgICAgIGpzb25BLFxuICAgICAgICBudWxsLFxuICAgICAgICBgTm8gPGE+IGZvdW5kIGluICR7anNvbkxpIS50b1N0cmluZygpfWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50SnNvblVybFBhdGggPSBqc29uQSEuZ2V0QXR0cmlidXRlKFwiaHJlZlwiKVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgICBhbWVuZGVtZW50SnNvblVybFBhdGgsXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgYE5vIFVSTCBmb3VuZCBmb3IgSlNPTiB2ZXJzaW9uIG9mIGFtZW5kZW1lbnQ6ICR7anNvbkxpIS50b1N0cmluZygpfWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50SnNvblVybCA9IG5ldyBVUkwoXG4gICAgICAgIGFtZW5kZW1lbnRKc29uVXJsUGF0aCEsXG4gICAgICAgIFwiaHR0cHM6Ly93d3cuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9cIixcbiAgICAgICkudG9TdHJpbmcoKVxuICAgICAgY29uc3QgYW1lbmRlbWVudEpzb25SZXNwb25zZSA9IGF3YWl0IGZldGNoKGFtZW5kZW1lbnRKc29uVXJsKVxuICAgICAgYXNzZXJ0KFxuICAgICAgICBhbWVuZGVtZW50SnNvblJlc3BvbnNlLm9rLFxuICAgICAgICBgUmV0cmlldmFsIG9mIGFtZW5kZW1lbnQgSlNPTiBwYWdlIGF0ICR7YW1lbmRlbWVudEpzb25Vcmx9IGZhaWxlZCB3aXRoIGVycm9yOiAke2FtZW5kZW1lbnRKc29uUmVzcG9uc2Uuc3RhdHVzfSAke2FtZW5kZW1lbnRKc29uUmVzcG9uc2Uuc3RhdHVzVGV4dH1gLFxuICAgICAgKVxuICAgICAgY29uc3QgYW1lbmRlbWVudCA9IGF3YWl0IGFtZW5kZW1lbnRKc29uUmVzcG9uc2UuanNvbigpXG4gICAgICB5aWVsZCBbYW1lbmRlbWVudFVybFBhdGghLCBhbWVuZGVtZW50XVxuXG4gICAgICAvLyBTZWFyY2hDYWNoZSBtdXN0IGJlIHdyaXR0ZW4gYXQgdGhlIGVuZCB0byBlbnN1cmUgdGhhdCBldmVyeXRoaW5nIGlzIGluIGEgY29uc2lzdGVudCBzdGF0ZSxcbiAgICAgIC8vIGV2ZW4gaWYgc2NyaXB0IGZhaWxzIGFicnVwdGx5LlxuICAgICAgYXdhaXQgZnMud3JpdGVGaWxlKFxuICAgICAgICBhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCxcbiAgICAgICAgYW1lbmRlbWVudFNlYXJjaENhY2hlLFxuICAgICAgICBcInV0ZjhcIixcbiAgICAgIClcbiAgICB9XG5cbiAgICBjb25zdCBwYWdpbmF0aW9uQSA9IGh0bWwucXVlcnlTZWxlY3RvcihcbiAgICAgIFwiZGl2LmFuLXBhZ2luYXRpb24tLWl0ZW0gPiBpLmFuLWljb25zLWNoZXZyb24tcmlnaHQgfiBhXCIsXG4gICAgKVxuICAgIGlmIChwYWdpbmF0aW9uQSA9PT0gbnVsbCkge1xuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY29uc3QgdXJsUGF0aCA9IHBhZ2luYXRpb25BLmdldEF0dHJpYnV0ZShcImhyZWZcIilcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwodXJsUGF0aCwgdW5kZWZpbmVkKVxuICAgIHVybCA9IG5ldyBVUkwodXJsUGF0aCEsIFwiaHR0cHM6Ly93d3cuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9cIikudG9TdHJpbmcoKVxuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUdBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUVBOzs7Ozs7Ozs7Ozs7OzsrQ0FmQSxvSjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztTQWlCdUJBLHdCOzs7OzsyRkFBaEIsaUJBQ0xDLHlCQURLLEVBRUxDLEdBRkssRUFHTEMsV0FISyxFQUlMQyxZQUpLLEVBS0xDLGFBTEs7SUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO0lBQUE7SUFBQTtJQUFBO0lBQUE7SUFBQTs7SUFBQTtNQUFBO1FBQUE7VUFBQTtZQU1MQyxPQU5LLDJEQU04QyxFQU45QztZQUFBO1lBQUE7WUFBQTtZQUFBLDJCQVdBQywyQkFBMkIsQ0FDOUJOLHlCQUQ4QixFQUU5QkMsR0FGOEIsRUFHOUJDLFdBSDhCLEVBSTlCQyxZQUo4QixFQUs5QkMsYUFMOEIsRUFNOUJDLE9BTjhCLENBWDNCOztVQUFBO1lBQUE7WUFBQTs7VUFBQTtZQUFBO2NBQUE7Y0FBQTtZQUFBOztZQUFBLDhDQVNIRSxpQkFURyxtQkFVSEMsVUFWRztZQW1CSCxJQUFBQyx5QkFBQSxFQUFnQkQsVUFBaEIsRUFuQkcsQ0FvQkg7O1lBcEJHO1lBcUJILE9BQU0sQ0FDSkQsaUJBREksRUFFSkcsb0JBQUEsQ0FBbUJDLFlBQW5CLENBQWdDQyxJQUFJLENBQUNDLFNBQUwsQ0FBZUwsVUFBZixDQUFoQyxDQUZJLENBQU47O1VBckJHO1lBQUE7WUFBQTtZQUFBOztVQUFBO1lBQUE7WUFBQTs7VUFBQTtZQUFBO1lBQUE7WUFBQTtZQUFB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
@@ -1,7 +1,9 @@
1
- import assert from "assert";
2
- import formatISO from "date-fns/formatISO";
3
- import { fr } from "date-fns/locale";
4
- import parseDate from "date-fns/parse";
1
+ import assert from "assert"; // Note: "/index.js" added to imports, because of issue
2
+ // https://github.com/date-fns/date-fns/issues/2964
3
+
4
+ import formatISO from "date-fns/formatISO/index.js";
5
+ import frLocale from "date-fns/locale/fr/index.js";
6
+ import parseDate from "date-fns/parse/index.js";
5
7
  import deepEqual from "deep-equal";
6
8
  import fs from "fs-extra";
7
9
  import frontMatter from "front-matter";
@@ -74,7 +76,7 @@ export async function* iterRechercheRawAmendements(amendementsSearchCacheDir, ur
74
76
  if (minDateDepot != null) {
75
77
  const dateDepotTd = amendementTdList[10];
76
78
  const dateDepot = formatISO(parseDate(dateDepotTd.text, "d MMMM y", new Date(), {
77
- locale: fr
79
+ locale: frLocale
78
80
  }), {
79
81
  representation: "date"
80
82
  });
@@ -91,7 +93,7 @@ export async function* iterRechercheRawAmendements(amendementsSearchCacheDir, ur
91
93
 
92
94
  if (dateExamenTd.text) {
93
95
  const dateExamen = formatISO(parseDate(dateExamenTd.text, "d MMMM y", new Date(), {
94
- locale: fr
96
+ locale: frLocale
95
97
  }), {
96
98
  representation: "date"
97
99
  });
@@ -184,4 +186,4 @@ export async function* iterRechercheRawAmendements(amendementsSearchCacheDir, ur
184
186
  url = new URL(urlPath, "https://www.assemblee-nationale.fr/").toString();
185
187
  }
186
188
  }
187
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhc3NlcnQiLCJmb3JtYXRJU08iLCJmciIsInBhcnNlRGF0ZSIsImRlZXBFcXVhbCIsImZzIiwiZnJvbnRNYXR0ZXIiLCJqc1lhbWwiLCJmZXRjaCIsInBhcnNlIiwicGFyc2VIdG1sIiwicGF0aCIsImNsZWFuQW1lbmRlbWVudCIsIkNvbnZlcnQiLCJBbWVuZGVtZW50c0NvbnZlcnQiLCJpdGVyUmVjaGVyY2hlQW1lbmRlbWVudHMiLCJhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyIiwidXJsIiwiaW5jcmVtZW50YWwiLCJtaW5EYXRlRGVwb3QiLCJtaW5EYXRlRXhhbWVuIiwib3B0aW9ucyIsImFtZW5kZW1lbnRVcmxQYXRoIiwiYW1lbmRlbWVudCIsIml0ZXJSZWNoZXJjaGVSYXdBbWVuZGVtZW50cyIsInRvQW1lbmRlbWVudCIsIkpTT04iLCJzdHJpbmdpZnkiLCJlbnN1cmVEaXIiLCJzdHJpY3RFcXVhbCIsImV4ZWMiLCJub3RTdHJpY3RFcXVhbCIsImluY2x1ZGVzIiwiYW1lbmRlbWVudE51bWJlciIsIml0ZXJTZWFyY2hQYWdlcyIsInZlcmJvc2UiLCJjb25zb2xlIiwibG9nIiwicmVzcG9uc2UiLCJvayIsInN0YXR1cyIsInN0YXR1c1RleHQiLCJwYWdlIiwidGV4dCIsImh0bWwiLCJxdWVyeVNlbGVjdG9yIiwiYW1lbmRlbWVudHNDb3VudERpdiIsImFtZW5kZW1lbnRzQ291bnQiLCJwYXJzZUludCIsImFtZW5kZW1lbnRzRGl2IiwiYW1lbmRlbWVudHNUYWJsZSIsInRmb290VHIiLCJ0Zm9vdFRyQ2VsbHMiLCJxdWVyeVNlbGVjdG9yQWxsIiwibWFwIiwiY2VsbCIsImFtZW5kZW1lbnRzVHIiLCJsZW5ndGgiLCJhbWVuZGVtZW50VHIiLCJhbWVuZGVtZW50VGRMaXN0Iiwib3V0ZXJIVE1MIiwiZGF0ZURlcG90VGQiLCJkYXRlRGVwb3QiLCJEYXRlIiwibG9jYWxlIiwicmVwcmVzZW50YXRpb24iLCJkYXRlRXhhbWVuVGQiLCJkYXRlRXhhbWVuIiwiZ2V0QXR0cmlidXRlIiwidW5kZWZpbmVkIiwiYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZCIsInNwbGl0IiwiYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGgiLCJqb2luIiwic2xpY2UiLCJkaXJuYW1lIiwiZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUiLCJwYXRoRXhpc3RzIiwicmVhZEZpbGUiLCJhbWVuZGVtZW50VHJPdXRlckh0bWwiLCJhbWVuZGVtZW50U2VhcmNoQ2FjaGUiLCJkdW1wIiwicG9zaXRpb24iLCJzZWFyY2giLCJyZXBsYWNlIiwic29ydEtleXMiLCJib2R5IiwiYW1lbmRlbWVudEh0bWxVcmwiLCJVUkwiLCJ0b1N0cmluZyIsImFtZW5kZW1lbnRIdG1sUmVzcG9uc2UiLCJhbWVuZGVtZW50SHRtbFBhZ2UiLCJhbWVuZGVtZW50SHRtbCIsImZvcm1hdHNMaSIsImpzb25MaSIsImZpbmQiLCJmb3JtYXRMaSIsImZvcm1hdFNwYW4iLCJqc29uQSIsImFtZW5kZW1lbnRKc29uVXJsUGF0aCIsImFtZW5kZW1lbnRKc29uVXJsIiwiYW1lbmRlbWVudEpzb25SZXNwb25zZSIsImpzb24iLCJ3cml0ZUZpbGUiLCJwYWdpbmF0aW9uQSIsInVybFBhdGgiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFyc2Vycy9yZWNoZXJjaGVfYW1lbmRlbWVudHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tIFwiYXNzZXJ0XCJcbmltcG9ydCBmb3JtYXRJU08gZnJvbSBcImRhdGUtZm5zL2Zvcm1hdElTT1wiXG5pbXBvcnQgeyBmciB9IGZyb20gXCJkYXRlLWZucy9sb2NhbGVcIlxuaW1wb3J0IHBhcnNlRGF0ZSBmcm9tIFwiZGF0ZS1mbnMvcGFyc2VcIlxuaW1wb3J0IGRlZXBFcXVhbCBmcm9tIFwiZGVlcC1lcXVhbFwiXG5pbXBvcnQgZnMgZnJvbSBcImZzLWV4dHJhXCJcbmltcG9ydCBmcm9udE1hdHRlciBmcm9tIFwiZnJvbnQtbWF0dGVyXCJcbmltcG9ydCBqc1lhbWwgZnJvbSBcImpzLXlhbWxcIlxuaW1wb3J0IGZldGNoIGZyb20gXCJub2RlLWZldGNoXCJcbmltcG9ydCB7IHBhcnNlIGFzIHBhcnNlSHRtbCB9IGZyb20gXCJub2RlLWh0bWwtcGFyc2VyXCJcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCJcblxuaW1wb3J0IHsgY2xlYW5BbWVuZGVtZW50IH0gZnJvbSBcIi4uL2NsZWFuZXJzXCJcbmltcG9ydCB7IEFtZW5kZW1lbnQgYXMgUmF3QW1lbmRlbWVudCB9IGZyb20gXCIuLi9yYXdfdHlwZXMvYW1lbmRlbWVudHNcIlxuaW1wb3J0IHsgQW1lbmRlbWVudCwgQ29udmVydCBhcyBBbWVuZGVtZW50c0NvbnZlcnQgfSBmcm9tIFwiLi4vdHlwZXMvYW1lbmRlbWVudHNcIlxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24qIGl0ZXJSZWNoZXJjaGVBbWVuZGVtZW50cyhcbiAgYW1lbmRlbWVudHNTZWFyY2hDYWNoZURpcjogc3RyaW5nLFxuICB1cmw6IHN0cmluZyxcbiAgaW5jcmVtZW50YWw6IGJvb2xlYW4sXG4gIG1pbkRhdGVEZXBvdD86IHN0cmluZyB8IG51bGwsXG4gIG1pbkRhdGVFeGFtZW4/OiBzdHJpbmcgfCBudWxsLFxuICBvcHRpb25zOiB7IHNpbGVudD86IGJvb2xlYW47IHZlcmJvc2U/OiBib29sZWFuIH0gPSB7fSxcbik6IEFzeW5jR2VuZXJhdG9yPFtzdHJpbmcsIEFtZW5kZW1lbnRdLCB2b2lkLCB1bmtub3duPiB7XG4gIGZvciBhd2FpdCAoY29uc3QgW1xuICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgIGFtZW5kZW1lbnQsXG4gIF0gb2YgaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICAgIGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIsXG4gICAgdXJsLFxuICAgIGluY3JlbWVudGFsLFxuICAgIG1pbkRhdGVEZXBvdCxcbiAgICBtaW5EYXRlRXhhbWVuLFxuICAgIG9wdGlvbnMsXG4gICkpIHtcbiAgICBjbGVhbkFtZW5kZW1lbnQoYW1lbmRlbWVudClcbiAgICAvLyBEb3VibGUgY29udmVyc2lvbiwgdG8gY29udmVydCBzdHJpbmdzIHRvIGRhdGVzLlxuICAgIHlpZWxkIFtcbiAgICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgICAgQW1lbmRlbWVudHNDb252ZXJ0LnRvQW1lbmRlbWVudChKU09OLnN0cmluZ2lmeShhbWVuZGVtZW50KSksXG4gICAgXVxuICB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiogaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICBhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyOiBzdHJpbmcsXG4gIHVybDogc3RyaW5nLFxuICBpbmNyZW1lbnRhbDogYm9vbGVhbixcbiAgbWluRGF0ZURlcG90Pzogc3RyaW5nIHwgbnVsbCxcbiAgbWluRGF0ZUV4YW1lbj86IHN0cmluZyB8IG51bGwsXG4gIG9wdGlvbnM6IHsgc2lsZW50PzogYm9vbGVhbjsgdmVyYm9zZT86IGJvb2xlYW4gfSA9IHt9LFxuKTogQXN5bmNHZW5lcmF0b3I8W3N0cmluZywgUmF3QW1lbmRlbWVudF0sIHZvaWQsIHVua25vd24+IHtcbiAgYXdhaXQgZnMuZW5zdXJlRGlyKGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIpXG5cbiAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgIC9bPyZdZGF0ZV9kZXBvdD0vLmV4ZWModXJsKSxcbiAgICBudWxsLFxuICAgIGBVUkwgJHt1cmx9IGFscmVhZHkgY29udGFpbnMgYSBkZXBvc2l0IGRhdGVgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXW9yZGVyPS8uZXhlYyh1cmwpLFxuICAgIG51bGwsXG4gICAgYFVSTCAke3VybH0gYWxyZWFkeSBjb250YWlucyBhIHNvcnQgb3JkZXJgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXXBhZ2U9Ly5leGVjKHVybCksXG4gICAgbnVsbCxcbiAgICBgVVJMICR7dXJsfSBhbHJlYWR5IGNvbnRhaW5zIGEgcGFnZSBudW1iZXJgLFxuICApXG4gIGlmIChpbmNyZW1lbnRhbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9bPyZdZXRhdD0vLmV4ZWModXJsKSxcbiAgICAgIG51bGwsXG4gICAgICBgSW4gaW5jcmVtZW50YWwgbW9kZSwgVVJMICR7dXJsfSBtdXN0IGNvbnRhaW4gYW4gXCJldGF0XCIgcXVlcnkgcGFyYW1ldGVyYCxcbiAgICApXG4gIH1cbiAgdXJsICs9ICh1cmwuaW5jbHVkZXMoXCI/XCIpID8gXCImXCIgOiBcIj9cIikgKyBcIm9yZGVyPWRhdGVfZGVwb3QsZGVzYyZwYWdlPTFcIlxuXG4gIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9cXGR7NH0tXFxkezJ9LVxcZHsyfS8uZXhlYyhtaW5EYXRlRGVwb3QpLFxuICAgICAgbnVsbCxcbiAgICAgIGBJbnZhbGlkIGZvcm1hdCBmb3IgbWluaW11bSBkYXRlOiAke21pbkRhdGVEZXBvdH1gLFxuICAgIClcbiAgfVxuXG4gIGxldCBhbWVuZGVtZW50TnVtYmVyID0gMFxuICBpdGVyU2VhcmNoUGFnZXM6IHdoaWxlICh0cnVlKSB7XG4gICAgaWYgKG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgY29uc29sZS5sb2coYEZldGNoaW5nIGFtZW5kZW1lbnRzIHNlYXJjaCBwYWdlIGF0ICR7dXJsfeKApmApXG4gICAgfVxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsKVxuICAgIGFzc2VydChcbiAgICAgIHJlc3BvbnNlLm9rLFxuICAgICAgYFJldHJpZXZhbCBvZiBzZWFyY2ggcGFnZSBhdCAke3VybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7cmVzcG9uc2Uuc3RhdHVzfSAke3Jlc3BvbnNlLnN0YXR1c1RleHR9YCxcbiAgICApXG4gICAgY29uc3QgcGFnZSA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKVxuICAgIGNvbnN0IGh0bWwgPSBwYXJzZUh0bWwocGFnZSlcbiAgICBpZiAoaHRtbC5xdWVyeVNlbGVjdG9yKFwiZGl2Lm5vLXJlc3VsdFwiKSAhPT0gbnVsbCkge1xuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY29uc3QgYW1lbmRlbWVudHNDb3VudERpdiA9IGh0bWwucXVlcnlTZWxlY3RvcihcImRpdi5taXJyb3ItY2FyZC1zdWJ0aXRsZVwiKVxuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhbWVuZGVtZW50c0NvdW50RGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzQ291bnQgPSBwYXJzZUludCgvXFxkKy8uZXhlYyhhbWVuZGVtZW50c0NvdW50RGl2IS50ZXh0KSFbMF0pXG4gICAgY29uc3QgYW1lbmRlbWVudHNEaXYgPSBodG1sLnF1ZXJ5U2VsZWN0b3IoXG4gICAgICBcImRpdi5hbWVuZGVtZW50LWxpc3QtLXJlc3VsdHMtdGFibGVcIixcbiAgICApXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzRGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzVGFibGUgPSBhbWVuZGVtZW50c0RpdiEucXVlcnlTZWxlY3RvcihcInRhYmxlXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzVGFibGUsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUciA9IGFtZW5kZW1lbnRzVGFibGUhLnF1ZXJ5U2VsZWN0b3IoXCJ0Zm9vdCA+IHRyXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKHRmb290VHIsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUckNlbGxzID0gdGZvb3RUciFcbiAgICAgIC5xdWVyeVNlbGVjdG9yQWxsKFwidGQsIHRoXCIpXG4gICAgICAubWFwKChjZWxsKSA9PiBjZWxsLnRleHQpXG4gICAgYXNzZXJ0KFxuICAgICAgZGVlcEVxdWFsKHRmb290VHJDZWxscywgW1xuICAgICAgICBcIlwiLFxuICAgICAgICBcIm7CsFwiLFxuICAgICAgICBcIkRvc3NpZXIgbMOpZ2lzbGF0aWZcIixcbiAgICAgICAgXCJFbXBsYWNlbWVudFwiLFxuICAgICAgICBcIkF1dGV1clwiLFxuICAgICAgICBcIsOJdGF0XCIsXG4gICAgICAgIFwiU29ydFwiLFxuICAgICAgICBcIkRhdGUgZCdleGFtZW5cIixcbiAgICAgICAgXCJFeGFtaW7DqSBwYXJcIixcbiAgICAgICAgXCJUZXh0ZSB2aXPDqVwiLFxuICAgICAgICBcIkRhdGUgZGUgZMOpcMO0dFwiLFxuICAgICAgXSksXG4gICAgICBgVW5leHBlY3RlZCBjb2x1bW5zIGluICR7SlNPTi5zdHJpbmdpZnkodGZvb3RUckNlbGxzLCBudWxsLCAyKX1gLFxuICAgIClcbiAgICBjb25zdCBhbWVuZGVtZW50c1RyID0gYW1lbmRlbWVudHNUYWJsZSEucXVlcnlTZWxlY3RvckFsbChcInRib2R5ID4gdHJcIilcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYW1lbmRlbWVudHNUci5sZW5ndGgsIDApXG4gICAgZm9yIChjb25zdCBhbWVuZGVtZW50VHIgb2YgYW1lbmRlbWVudHNUcikge1xuICAgICAgYW1lbmRlbWVudE51bWJlcisrXG5cbiAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCB8fCBtaW5EYXRlRXhhbWVuICE9IG51bGwpIHtcbiAgICAgICAgY29uc3QgYW1lbmRlbWVudFRkTGlzdCA9IGFtZW5kZW1lbnRUci5xdWVyeVNlbGVjdG9yQWxsKFwidGRcIilcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICAgIGFtZW5kZW1lbnRUZExpc3QubGVuZ3RoLFxuICAgICAgICAgIDExLFxuICAgICAgICAgIGBVbmV4cGVjdGVkIG51bWJlciBvZiBjb2x1bW5zIGluIGFtZW5kbWVudCByb3c6ICR7YW1lbmRlbWVudFRyLm91dGVySFRNTH1gLFxuICAgICAgICApXG4gICAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IGRhdGVEZXBvdFRkID0gYW1lbmRlbWVudFRkTGlzdFsxMF1cbiAgICAgICAgICBjb25zdCBkYXRlRGVwb3QgPSBmb3JtYXRJU08oXG4gICAgICAgICAgICBwYXJzZURhdGUoZGF0ZURlcG90VGQudGV4dCwgXCJkIE1NTU0geVwiLCBuZXcgRGF0ZSgpLCB7IGxvY2FsZTogZnIgfSksXG4gICAgICAgICAgICB7IHJlcHJlc2VudGF0aW9uOiBcImRhdGVcIiB9LFxuICAgICAgICAgIClcbiAgICAgICAgICBpZiAoZGF0ZURlcG90IDwgbWluRGF0ZURlcG90KSB7XG4gICAgICAgICAgICAvLyBTaW5jZSB0aGUgYW1lbmRtZW50cyBhcmUgc29ydGVkIGJ5IGRlcG9zaXQgZGF0ZSwgb25jZSBhbiBhbWVuZG1lbnRcbiAgICAgICAgICAgIC8vIHdpdGggYW4gb2xkIGRlcG9zaXQgZGF0ZSBpcyBlbmNvdW50ZXJlZCwgdGhlIGZ1bGwgc2VhcmNoIGNhbiBiZSBzdG9wcGVkLlxuICAgICAgICAgICAgYnJlYWsgaXRlclNlYXJjaFBhZ2VzXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChtaW5EYXRlRXhhbWVuICE9IG51bGwpIHtcbiAgICAgICAgICBjb25zdCBkYXRlRXhhbWVuVGQgPSBhbWVuZGVtZW50VGRMaXN0WzddXG4gICAgICAgICAgaWYgKGRhdGVFeGFtZW5UZC50ZXh0KSB7XG4gICAgICAgICAgICBjb25zdCBkYXRlRXhhbWVuID0gZm9ybWF0SVNPKFxuICAgICAgICAgICAgICBwYXJzZURhdGUoZGF0ZUV4YW1lblRkLnRleHQsIFwiZCBNTU1NIHlcIiwgbmV3IERhdGUoKSwge1xuICAgICAgICAgICAgICAgIGxvY2FsZTogZnIsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICB7IHJlcHJlc2VudGF0aW9uOiBcImRhdGVcIiB9LFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgaWYgKGRhdGVFeGFtZW4gPCBtaW5EYXRlRXhhbWVuKSB7XG4gICAgICAgICAgICAgIC8vIFRoaXMgYW1lbmRtZW50IGhhcyBiZWVuIGRpc2N1c3NlZCBzaW5jZSBhIGZldyBkYXlzLlxuICAgICAgICAgICAgICAvLyA9PiBJZ25vcmUgaXQsIGJlY2F1c2UgaXQgc2hvdWxkIGJlIGluIEFzc2VtYmzDqWUgb3BlbiBkYXRhLlxuICAgICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBhbWVuZGVtZW50VXJsUGF0aCA9IGFtZW5kZW1lbnRUci5nZXRBdHRyaWJ1dGUoXCJkYXRhLWhyZWZcIilcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhbWVuZGVtZW50VXJsUGF0aCwgdW5kZWZpbmVkKVxuICAgICAgY29uc3QgYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZCA9IGFtZW5kZW1lbnRVcmxQYXRoIS5zcGxpdChcIi9cIilcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgICAgYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZFswXSxcbiAgICAgICAgXCJcIixcbiAgICAgICAgYFVuZXhwZWN0ZWQgVVJMIHBhdGggZm9yIGFtZW5kZW1lbnQ6ICR7YW1lbmRlbWVudFVybFBhdGh9YCxcbiAgICAgIClcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgICAgYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZFsxXSxcbiAgICAgICAgXCJkeW5cIixcbiAgICAgICAgYFVuZXhwZWN0ZWQgVVJMIHBhdGggZm9yIGFtZW5kZW1lbnQ6ICR7YW1lbmRlbWVudFVybFBhdGh9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoID1cbiAgICAgICAgcGF0aC5qb2luKFxuICAgICAgICAgIGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIsXG4gICAgICAgICAgLi4uYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZC5zbGljZSgyKSxcbiAgICAgICAgKSArIFwiLmh0bWxcIlxuICAgICAgYXdhaXQgZnMuZW5zdXJlRGlyKHBhdGguZGlybmFtZShhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCkpXG4gICAgICBjb25zdCBleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSA9IChhd2FpdCBmcy5wYXRoRXhpc3RzKFxuICAgICAgICBhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCxcbiAgICAgICkpXG4gICAgICAgID8gYXdhaXQgZnMucmVhZEZpbGUoYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGgsIFwidXRmOFwiKVxuICAgICAgICA6IG51bGxcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRUck91dGVySHRtbCA9IGFtZW5kZW1lbnRUci5vdXRlckhUTUxcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRTZWFyY2hDYWNoZSA9IGAtLS1cXG4ke2pzWWFtbC5kdW1wKFxuICAgICAgICB7XG4gICAgICAgICAgcG9zaXRpb246IGFtZW5kZW1lbnRzQ291bnQgLSBhbWVuZGVtZW50TnVtYmVyLFxuICAgICAgICAgIHNlYXJjaDogdXJsLnJlcGxhY2UoLyZwYWdlPVtcXGRdKy8sIFwiXCIpLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgc29ydEtleXM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICApfS0tLVxcblxcbiR7YW1lbmRlbWVudFRyT3V0ZXJIdG1sfWBcbiAgICAgIGlmIChhbWVuZGVtZW50U2VhcmNoQ2FjaGUgPT09IGV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlKSB7XG4gICAgICAgIGlmIChpbmNyZW1lbnRhbCkge1xuICAgICAgICAgIC8vIFRoZSBzYW1lIDx0cj4gaXMgYWxyZWFkeSBpbiBjYWNoZSBhbmQgaW4gdGhlIHNhbWUgcG9zaXRpb24uXG4gICAgICAgICAgLy8gQXNzdW1lIHRoYXQgZm9sbG93aW5nIGFtZW5kbWVudHMgYXJlIG5vdCBjaGFuZ2VkIGFuZCBzdG9wIGxvb2tpbmdcbiAgICAgICAgICAvLyBmb3IgYW1lbmRtZW50cyB0byB1cHNlcnQuXG4gICAgICAgICAgYnJlYWsgaXRlclNlYXJjaFBhZ2VzXG4gICAgICAgIH1cbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUgIT09IG51bGwgJiZcbiAgICAgICAgZnJvbnRNYXR0ZXIoZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUpLmJvZHkgPT09XG4gICAgICAgICAgYW1lbmRlbWVudFRyT3V0ZXJIdG1sXG4gICAgICApIHtcbiAgICAgICAgLy8gVGhlIHNhbWUgPHRyPiBpcyBhbHJlYWR5IGluIGNhY2hlLCBidXQgaW4gYSBkaWZmZXJlbnQgcG9zaXRpb24uXG4gICAgICAgIC8vIEFzc3VtZSB0aGUgYW1lbmRtZW50IGlzIHVuY2hhbmdlZC5cbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGlmIChvcHRpb25zLnZlcmJvc2UpIHtcbiAgICAgICAgaWYgKGV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlID09PSBudWxsKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgICBgQWRkaW5nIGFtZW5kZW1lbnQgc2VhcmNoIGNhY2hlOiAke2FtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRofeKApmAsXG4gICAgICAgICAgKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgICAgYFVwZGF0aW5nIGFtZW5kZW1lbnQgc2VhcmNoIGNhY2hlOiAke2FtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRofeKApmAsXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbFVybCA9IG5ldyBVUkwoXG4gICAgICAgIGFtZW5kZW1lbnRVcmxQYXRoISxcbiAgICAgICAgXCJodHRwczovL3d3dy5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL1wiLFxuICAgICAgKS50b1N0cmluZygpXG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbFJlc3BvbnNlID0gYXdhaXQgZmV0Y2goYW1lbmRlbWVudEh0bWxVcmwpXG4gICAgICBhc3NlcnQoXG4gICAgICAgIGFtZW5kZW1lbnRIdG1sUmVzcG9uc2Uub2ssXG4gICAgICAgIGBSZXRyaWV2YWwgb2YgYW1lbmRlbWVudCBIVE1MIHBhZ2UgYXQgJHthbWVuZGVtZW50SHRtbFVybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7YW1lbmRlbWVudEh0bWxSZXNwb25zZS5zdGF0dXN9ICR7YW1lbmRlbWVudEh0bWxSZXNwb25zZS5zdGF0dXNUZXh0fWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbFBhZ2UgPSBhd2FpdCBhbWVuZGVtZW50SHRtbFJlc3BvbnNlLnRleHQoKVxuICAgICAgY29uc3QgYW1lbmRlbWVudEh0bWwgPSBwYXJzZUh0bWwoYW1lbmRlbWVudEh0bWxQYWdlKVxuICAgICAgY29uc3QgZm9ybWF0c0xpID0gYW1lbmRlbWVudEh0bWwucXVlcnlTZWxlY3RvckFsbChcbiAgICAgICAgXCJsaS5taXJyb3ItY2FyZC1oZWFkZXItLW9wdGlvbnMtLWNvbnRlbnQtLWl0ZW1cIixcbiAgICAgIClcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChmb3JtYXRzTGkubGVuZ3RoLCAwKVxuICAgICAgY29uc3QganNvbkxpID0gZm9ybWF0c0xpLmZpbmQoKGZvcm1hdExpKSA9PiB7XG4gICAgICAgIGNvbnN0IGZvcm1hdFNwYW4gPSBmb3JtYXRMaS5xdWVyeVNlbGVjdG9yKFwiYSA+IHNwYW5cIilcbiAgICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgICAgIGZvcm1hdFNwYW4sXG4gICAgICAgICAgbnVsbCxcbiAgICAgICAgICBgTm8gPHNwYW4+IGluIDxhPiBmb3VuZCBpbiAke2Zvcm1hdExpLnRvU3RyaW5nKCl9YCxcbiAgICAgICAgKVxuICAgICAgICByZXR1cm4gZm9ybWF0U3BhbiEudGV4dCA9PT0gXCJWZXJzaW9uIEpTT05cIlxuICAgICAgfSlcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgICAganNvbkxpLFxuICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgIGBObyBKU09OIHZlcnNpb24gZm91bmQgZm9yIGFtZW5kZW1lbnQgYXQgJHthbWVuZGVtZW50SHRtbFVybH1gLFxuICAgICAgKVxuICAgICAgY29uc3QganNvbkEgPSBqc29uTGkhLnF1ZXJ5U2VsZWN0b3IoXCJhXCIpXG4gICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoXG4gICAgICAgIGpzb25BLFxuICAgICAgICBudWxsLFxuICAgICAgICBgTm8gPGE+IGZvdW5kIGluICR7anNvbkxpIS50b1N0cmluZygpfWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50SnNvblVybFBhdGggPSBqc29uQSEuZ2V0QXR0cmlidXRlKFwiaHJlZlwiKVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgICBhbWVuZGVtZW50SnNvblVybFBhdGgsXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgYE5vIFVSTCBmb3VuZCBmb3IgSlNPTiB2ZXJzaW9uIG9mIGFtZW5kZW1lbnQ6ICR7anNvbkxpIS50b1N0cmluZygpfWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50SnNvblVybCA9IG5ldyBVUkwoXG4gICAgICAgIGFtZW5kZW1lbnRKc29uVXJsUGF0aCEsXG4gICAgICAgIFwiaHR0cHM6Ly93d3cuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9cIixcbiAgICAgICkudG9TdHJpbmcoKVxuICAgICAgY29uc3QgYW1lbmRlbWVudEpzb25SZXNwb25zZSA9IGF3YWl0IGZldGNoKGFtZW5kZW1lbnRKc29uVXJsKVxuICAgICAgYXNzZXJ0KFxuICAgICAgICBhbWVuZGVtZW50SnNvblJlc3BvbnNlLm9rLFxuICAgICAgICBgUmV0cmlldmFsIG9mIGFtZW5kZW1lbnQgSlNPTiBwYWdlIGF0ICR7YW1lbmRlbWVudEpzb25Vcmx9IGZhaWxlZCB3aXRoIGVycm9yOiAke2FtZW5kZW1lbnRKc29uUmVzcG9uc2Uuc3RhdHVzfSAke2FtZW5kZW1lbnRKc29uUmVzcG9uc2Uuc3RhdHVzVGV4dH1gLFxuICAgICAgKVxuICAgICAgY29uc3QgYW1lbmRlbWVudCA9IGF3YWl0IGFtZW5kZW1lbnRKc29uUmVzcG9uc2UuanNvbigpXG4gICAgICB5aWVsZCBbYW1lbmRlbWVudFVybFBhdGghLCBhbWVuZGVtZW50XVxuXG4gICAgICAvLyBTZWFyY2hDYWNoZSBtdXN0IGJlIHdyaXR0ZW4gYXQgdGhlIGVuZCB0byBlbnN1cmUgdGhhdCBldmVyeXRoaW5nIGlzIGluIGEgY29uc2lzdGVudCBzdGF0ZSxcbiAgICAgIC8vIGV2ZW4gaWYgc2NyaXB0IGZhaWxzIGFicnVwdGx5LlxuICAgICAgYXdhaXQgZnMud3JpdGVGaWxlKFxuICAgICAgICBhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCxcbiAgICAgICAgYW1lbmRlbWVudFNlYXJjaENhY2hlLFxuICAgICAgICBcInV0ZjhcIixcbiAgICAgIClcbiAgICB9XG5cbiAgICBjb25zdCBwYWdpbmF0aW9uQSA9IGh0bWwucXVlcnlTZWxlY3RvcihcbiAgICAgIFwiZGl2LmFuLXBhZ2luYXRpb24tLWl0ZW0gPiBpLmFuLWljb25zLWNoZXZyb24tcmlnaHQgfiBhXCIsXG4gICAgKVxuICAgIGlmIChwYWdpbmF0aW9uQSA9PT0gbnVsbCkge1xuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY29uc3QgdXJsUGF0aCA9IHBhZ2luYXRpb25BLmdldEF0dHJpYnV0ZShcImhyZWZcIilcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwodXJsUGF0aCwgdW5kZWZpbmVkKVxuICAgIHVybCA9IG5ldyBVUkwodXJsUGF0aCEsIFwiaHR0cHM6Ly93d3cuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9cIikudG9TdHJpbmcoKVxuICB9XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLE1BQVAsTUFB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
189
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhc3NlcnQiLCJmb3JtYXRJU08iLCJmckxvY2FsZSIsInBhcnNlRGF0ZSIsImRlZXBFcXVhbCIsImZzIiwiZnJvbnRNYXR0ZXIiLCJqc1lhbWwiLCJmZXRjaCIsInBhcnNlIiwicGFyc2VIdG1sIiwicGF0aCIsImNsZWFuQW1lbmRlbWVudCIsIkNvbnZlcnQiLCJBbWVuZGVtZW50c0NvbnZlcnQiLCJpdGVyUmVjaGVyY2hlQW1lbmRlbWVudHMiLCJhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyIiwidXJsIiwiaW5jcmVtZW50YWwiLCJtaW5EYXRlRGVwb3QiLCJtaW5EYXRlRXhhbWVuIiwib3B0aW9ucyIsImFtZW5kZW1lbnRVcmxQYXRoIiwiYW1lbmRlbWVudCIsIml0ZXJSZWNoZXJjaGVSYXdBbWVuZGVtZW50cyIsInRvQW1lbmRlbWVudCIsIkpTT04iLCJzdHJpbmdpZnkiLCJlbnN1cmVEaXIiLCJzdHJpY3RFcXVhbCIsImV4ZWMiLCJub3RTdHJpY3RFcXVhbCIsImluY2x1ZGVzIiwiYW1lbmRlbWVudE51bWJlciIsIml0ZXJTZWFyY2hQYWdlcyIsInZlcmJvc2UiLCJjb25zb2xlIiwibG9nIiwicmVzcG9uc2UiLCJvayIsInN0YXR1cyIsInN0YXR1c1RleHQiLCJwYWdlIiwidGV4dCIsImh0bWwiLCJxdWVyeVNlbGVjdG9yIiwiYW1lbmRlbWVudHNDb3VudERpdiIsImFtZW5kZW1lbnRzQ291bnQiLCJwYXJzZUludCIsImFtZW5kZW1lbnRzRGl2IiwiYW1lbmRlbWVudHNUYWJsZSIsInRmb290VHIiLCJ0Zm9vdFRyQ2VsbHMiLCJxdWVyeVNlbGVjdG9yQWxsIiwibWFwIiwiY2VsbCIsImFtZW5kZW1lbnRzVHIiLCJsZW5ndGgiLCJhbWVuZGVtZW50VHIiLCJhbWVuZGVtZW50VGRMaXN0Iiwib3V0ZXJIVE1MIiwiZGF0ZURlcG90VGQiLCJkYXRlRGVwb3QiLCJEYXRlIiwibG9jYWxlIiwicmVwcmVzZW50YXRpb24iLCJkYXRlRXhhbWVuVGQiLCJkYXRlRXhhbWVuIiwiZ2V0QXR0cmlidXRlIiwidW5kZWZpbmVkIiwiYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZCIsInNwbGl0IiwiYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGgiLCJqb2luIiwic2xpY2UiLCJkaXJuYW1lIiwiZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUiLCJwYXRoRXhpc3RzIiwicmVhZEZpbGUiLCJhbWVuZGVtZW50VHJPdXRlckh0bWwiLCJhbWVuZGVtZW50U2VhcmNoQ2FjaGUiLCJkdW1wIiwicG9zaXRpb24iLCJzZWFyY2giLCJyZXBsYWNlIiwic29ydEtleXMiLCJib2R5IiwiYW1lbmRlbWVudEh0bWxVcmwiLCJVUkwiLCJ0b1N0cmluZyIsImFtZW5kZW1lbnRIdG1sUmVzcG9uc2UiLCJhbWVuZGVtZW50SHRtbFBhZ2UiLCJhbWVuZGVtZW50SHRtbCIsImZvcm1hdHNMaSIsImpzb25MaSIsImZpbmQiLCJmb3JtYXRMaSIsImZvcm1hdFNwYW4iLCJqc29uQSIsImFtZW5kZW1lbnRKc29uVXJsUGF0aCIsImFtZW5kZW1lbnRKc29uVXJsIiwiYW1lbmRlbWVudEpzb25SZXNwb25zZSIsImpzb24iLCJ3cml0ZUZpbGUiLCJwYWdpbmF0aW9uQSIsInVybFBhdGgiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFyc2Vycy9yZWNoZXJjaGVfYW1lbmRlbWVudHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tIFwiYXNzZXJ0XCJcbi8vIE5vdGU6IFwiL2luZGV4LmpzXCIgYWRkZWQgdG8gaW1wb3J0cywgYmVjYXVzZSBvZiBpc3N1ZVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2RhdGUtZm5zL2RhdGUtZm5zL2lzc3Vlcy8yOTY0XG5pbXBvcnQgZm9ybWF0SVNPIGZyb20gXCJkYXRlLWZucy9mb3JtYXRJU08vaW5kZXguanNcIlxuaW1wb3J0IGZyTG9jYWxlIGZyb20gXCJkYXRlLWZucy9sb2NhbGUvZnIvaW5kZXguanNcIlxuaW1wb3J0IHBhcnNlRGF0ZSBmcm9tIFwiZGF0ZS1mbnMvcGFyc2UvaW5kZXguanNcIlxuaW1wb3J0IGRlZXBFcXVhbCBmcm9tIFwiZGVlcC1lcXVhbFwiXG5pbXBvcnQgZnMgZnJvbSBcImZzLWV4dHJhXCJcbmltcG9ydCBmcm9udE1hdHRlciBmcm9tIFwiZnJvbnQtbWF0dGVyXCJcbmltcG9ydCBqc1lhbWwgZnJvbSBcImpzLXlhbWxcIlxuaW1wb3J0IGZldGNoIGZyb20gXCJub2RlLWZldGNoXCJcbmltcG9ydCB7IHBhcnNlIGFzIHBhcnNlSHRtbCB9IGZyb20gXCJub2RlLWh0bWwtcGFyc2VyXCJcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCJcblxuaW1wb3J0IHsgY2xlYW5BbWVuZGVtZW50IH0gZnJvbSBcIi4uL2NsZWFuZXJzXCJcbmltcG9ydCB7IEFtZW5kZW1lbnQgYXMgUmF3QW1lbmRlbWVudCB9IGZyb20gXCIuLi9yYXdfdHlwZXMvYW1lbmRlbWVudHNcIlxuaW1wb3J0IHsgQW1lbmRlbWVudCwgQ29udmVydCBhcyBBbWVuZGVtZW50c0NvbnZlcnQgfSBmcm9tIFwiLi4vdHlwZXMvYW1lbmRlbWVudHNcIlxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24qIGl0ZXJSZWNoZXJjaGVBbWVuZGVtZW50cyhcbiAgYW1lbmRlbWVudHNTZWFyY2hDYWNoZURpcjogc3RyaW5nLFxuICB1cmw6IHN0cmluZyxcbiAgaW5jcmVtZW50YWw6IGJvb2xlYW4sXG4gIG1pbkRhdGVEZXBvdD86IHN0cmluZyB8IG51bGwsXG4gIG1pbkRhdGVFeGFtZW4/OiBzdHJpbmcgfCBudWxsLFxuICBvcHRpb25zOiB7IHNpbGVudD86IGJvb2xlYW47IHZlcmJvc2U/OiBib29sZWFuIH0gPSB7fSxcbik6IEFzeW5jR2VuZXJhdG9yPFtzdHJpbmcsIEFtZW5kZW1lbnRdLCB2b2lkLCB1bmtub3duPiB7XG4gIGZvciBhd2FpdCAoY29uc3QgW1xuICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgIGFtZW5kZW1lbnQsXG4gIF0gb2YgaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICAgIGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIsXG4gICAgdXJsLFxuICAgIGluY3JlbWVudGFsLFxuICAgIG1pbkRhdGVEZXBvdCxcbiAgICBtaW5EYXRlRXhhbWVuLFxuICAgIG9wdGlvbnMsXG4gICkpIHtcbiAgICBjbGVhbkFtZW5kZW1lbnQoYW1lbmRlbWVudClcbiAgICAvLyBEb3VibGUgY29udmVyc2lvbiwgdG8gY29udmVydCBzdHJpbmdzIHRvIGRhdGVzLlxuICAgIHlpZWxkIFtcbiAgICAgIGFtZW5kZW1lbnRVcmxQYXRoLFxuICAgICAgQW1lbmRlbWVudHNDb252ZXJ0LnRvQW1lbmRlbWVudChKU09OLnN0cmluZ2lmeShhbWVuZGVtZW50KSksXG4gICAgXVxuICB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiogaXRlclJlY2hlcmNoZVJhd0FtZW5kZW1lbnRzKFxuICBhbWVuZGVtZW50c1NlYXJjaENhY2hlRGlyOiBzdHJpbmcsXG4gIHVybDogc3RyaW5nLFxuICBpbmNyZW1lbnRhbDogYm9vbGVhbixcbiAgbWluRGF0ZURlcG90Pzogc3RyaW5nIHwgbnVsbCxcbiAgbWluRGF0ZUV4YW1lbj86IHN0cmluZyB8IG51bGwsXG4gIG9wdGlvbnM6IHsgc2lsZW50PzogYm9vbGVhbjsgdmVyYm9zZT86IGJvb2xlYW4gfSA9IHt9LFxuKTogQXN5bmNHZW5lcmF0b3I8W3N0cmluZywgUmF3QW1lbmRlbWVudF0sIHZvaWQsIHVua25vd24+IHtcbiAgYXdhaXQgZnMuZW5zdXJlRGlyKGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIpXG5cbiAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgIC9bPyZdZGF0ZV9kZXBvdD0vLmV4ZWModXJsKSxcbiAgICBudWxsLFxuICAgIGBVUkwgJHt1cmx9IGFscmVhZHkgY29udGFpbnMgYSBkZXBvc2l0IGRhdGVgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXW9yZGVyPS8uZXhlYyh1cmwpLFxuICAgIG51bGwsXG4gICAgYFVSTCAke3VybH0gYWxyZWFkeSBjb250YWlucyBhIHNvcnQgb3JkZXJgLFxuICApXG4gIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAvWz8mXXBhZ2U9Ly5leGVjKHVybCksXG4gICAgbnVsbCxcbiAgICBgVVJMICR7dXJsfSBhbHJlYWR5IGNvbnRhaW5zIGEgcGFnZSBudW1iZXJgLFxuICApXG4gIGlmIChpbmNyZW1lbnRhbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9bPyZdZXRhdD0vLmV4ZWModXJsKSxcbiAgICAgIG51bGwsXG4gICAgICBgSW4gaW5jcmVtZW50YWwgbW9kZSwgVVJMICR7dXJsfSBtdXN0IGNvbnRhaW4gYW4gXCJldGF0XCIgcXVlcnkgcGFyYW1ldGVyYCxcbiAgICApXG4gIH1cbiAgdXJsICs9ICh1cmwuaW5jbHVkZXMoXCI/XCIpID8gXCImXCIgOiBcIj9cIikgKyBcIm9yZGVyPWRhdGVfZGVwb3QsZGVzYyZwYWdlPTFcIlxuXG4gIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgIC9cXGR7NH0tXFxkezJ9LVxcZHsyfS8uZXhlYyhtaW5EYXRlRGVwb3QpLFxuICAgICAgbnVsbCxcbiAgICAgIGBJbnZhbGlkIGZvcm1hdCBmb3IgbWluaW11bSBkYXRlOiAke21pbkRhdGVEZXBvdH1gLFxuICAgIClcbiAgfVxuXG4gIGxldCBhbWVuZGVtZW50TnVtYmVyID0gMFxuICBpdGVyU2VhcmNoUGFnZXM6IHdoaWxlICh0cnVlKSB7XG4gICAgaWYgKG9wdGlvbnMudmVyYm9zZSkge1xuICAgICAgY29uc29sZS5sb2coYEZldGNoaW5nIGFtZW5kZW1lbnRzIHNlYXJjaCBwYWdlIGF0ICR7dXJsfeKApmApXG4gICAgfVxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsKVxuICAgIGFzc2VydChcbiAgICAgIHJlc3BvbnNlLm9rLFxuICAgICAgYFJldHJpZXZhbCBvZiBzZWFyY2ggcGFnZSBhdCAke3VybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7cmVzcG9uc2Uuc3RhdHVzfSAke3Jlc3BvbnNlLnN0YXR1c1RleHR9YCxcbiAgICApXG4gICAgY29uc3QgcGFnZSA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKVxuICAgIGNvbnN0IGh0bWwgPSBwYXJzZUh0bWwocGFnZSlcbiAgICBpZiAoaHRtbC5xdWVyeVNlbGVjdG9yKFwiZGl2Lm5vLXJlc3VsdFwiKSAhPT0gbnVsbCkge1xuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY29uc3QgYW1lbmRlbWVudHNDb3VudERpdiA9IGh0bWwucXVlcnlTZWxlY3RvcihcImRpdi5taXJyb3ItY2FyZC1zdWJ0aXRsZVwiKVxuICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhbWVuZGVtZW50c0NvdW50RGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzQ291bnQgPSBwYXJzZUludCgvXFxkKy8uZXhlYyhhbWVuZGVtZW50c0NvdW50RGl2IS50ZXh0KSFbMF0pXG4gICAgY29uc3QgYW1lbmRlbWVudHNEaXYgPSBodG1sLnF1ZXJ5U2VsZWN0b3IoXG4gICAgICBcImRpdi5hbWVuZGVtZW50LWxpc3QtLXJlc3VsdHMtdGFibGVcIixcbiAgICApXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzRGl2LCBudWxsKVxuICAgIGNvbnN0IGFtZW5kZW1lbnRzVGFibGUgPSBhbWVuZGVtZW50c0RpdiEucXVlcnlTZWxlY3RvcihcInRhYmxlXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKGFtZW5kZW1lbnRzVGFibGUsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUciA9IGFtZW5kZW1lbnRzVGFibGUhLnF1ZXJ5U2VsZWN0b3IoXCJ0Zm9vdCA+IHRyXCIpXG4gICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKHRmb290VHIsIG51bGwpXG4gICAgY29uc3QgdGZvb3RUckNlbGxzID0gdGZvb3RUciFcbiAgICAgIC5xdWVyeVNlbGVjdG9yQWxsKFwidGQsIHRoXCIpXG4gICAgICAubWFwKChjZWxsKSA9PiBjZWxsLnRleHQpXG4gICAgYXNzZXJ0KFxuICAgICAgZGVlcEVxdWFsKHRmb290VHJDZWxscywgW1xuICAgICAgICBcIlwiLFxuICAgICAgICBcIm7CsFwiLFxuICAgICAgICBcIkRvc3NpZXIgbMOpZ2lzbGF0aWZcIixcbiAgICAgICAgXCJFbXBsYWNlbWVudFwiLFxuICAgICAgICBcIkF1dGV1clwiLFxuICAgICAgICBcIsOJdGF0XCIsXG4gICAgICAgIFwiU29ydFwiLFxuICAgICAgICBcIkRhdGUgZCdleGFtZW5cIixcbiAgICAgICAgXCJFeGFtaW7DqSBwYXJcIixcbiAgICAgICAgXCJUZXh0ZSB2aXPDqVwiLFxuICAgICAgICBcIkRhdGUgZGUgZMOpcMO0dFwiLFxuICAgICAgXSksXG4gICAgICBgVW5leHBlY3RlZCBjb2x1bW5zIGluICR7SlNPTi5zdHJpbmdpZnkodGZvb3RUckNlbGxzLCBudWxsLCAyKX1gLFxuICAgIClcbiAgICBjb25zdCBhbWVuZGVtZW50c1RyID0gYW1lbmRlbWVudHNUYWJsZSEucXVlcnlTZWxlY3RvckFsbChcInRib2R5ID4gdHJcIilcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoYW1lbmRlbWVudHNUci5sZW5ndGgsIDApXG4gICAgZm9yIChjb25zdCBhbWVuZGVtZW50VHIgb2YgYW1lbmRlbWVudHNUcikge1xuICAgICAgYW1lbmRlbWVudE51bWJlcisrXG5cbiAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCB8fCBtaW5EYXRlRXhhbWVuICE9IG51bGwpIHtcbiAgICAgICAgY29uc3QgYW1lbmRlbWVudFRkTGlzdCA9IGFtZW5kZW1lbnRUci5xdWVyeVNlbGVjdG9yQWxsKFwidGRcIilcbiAgICAgICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgICAgIGFtZW5kZW1lbnRUZExpc3QubGVuZ3RoLFxuICAgICAgICAgIDExLFxuICAgICAgICAgIGBVbmV4cGVjdGVkIG51bWJlciBvZiBjb2x1bW5zIGluIGFtZW5kbWVudCByb3c6ICR7YW1lbmRlbWVudFRyLm91dGVySFRNTH1gLFxuICAgICAgICApXG4gICAgICAgIGlmIChtaW5EYXRlRGVwb3QgIT0gbnVsbCkge1xuICAgICAgICAgIGNvbnN0IGRhdGVEZXBvdFRkID0gYW1lbmRlbWVudFRkTGlzdFsxMF1cbiAgICAgICAgICBjb25zdCBkYXRlRGVwb3QgPSBmb3JtYXRJU08oXG4gICAgICAgICAgICBwYXJzZURhdGUoZGF0ZURlcG90VGQudGV4dCwgXCJkIE1NTU0geVwiLCBuZXcgRGF0ZSgpLCB7IGxvY2FsZTogZnJMb2NhbGUgfSksXG4gICAgICAgICAgICB7IHJlcHJlc2VudGF0aW9uOiBcImRhdGVcIiB9LFxuICAgICAgICAgIClcbiAgICAgICAgICBpZiAoZGF0ZURlcG90IDwgbWluRGF0ZURlcG90KSB7XG4gICAgICAgICAgICAvLyBTaW5jZSB0aGUgYW1lbmRtZW50cyBhcmUgc29ydGVkIGJ5IGRlcG9zaXQgZGF0ZSwgb25jZSBhbiBhbWVuZG1lbnRcbiAgICAgICAgICAgIC8vIHdpdGggYW4gb2xkIGRlcG9zaXQgZGF0ZSBpcyBlbmNvdW50ZXJlZCwgdGhlIGZ1bGwgc2VhcmNoIGNhbiBiZSBzdG9wcGVkLlxuICAgICAgICAgICAgYnJlYWsgaXRlclNlYXJjaFBhZ2VzXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChtaW5EYXRlRXhhbWVuICE9IG51bGwpIHtcbiAgICAgICAgICBjb25zdCBkYXRlRXhhbWVuVGQgPSBhbWVuZGVtZW50VGRMaXN0WzddXG4gICAgICAgICAgaWYgKGRhdGVFeGFtZW5UZC50ZXh0KSB7XG4gICAgICAgICAgICBjb25zdCBkYXRlRXhhbWVuID0gZm9ybWF0SVNPKFxuICAgICAgICAgICAgICBwYXJzZURhdGUoZGF0ZUV4YW1lblRkLnRleHQsIFwiZCBNTU1NIHlcIiwgbmV3IERhdGUoKSwge1xuICAgICAgICAgICAgICAgIGxvY2FsZTogZnJMb2NhbGUsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICB7IHJlcHJlc2VudGF0aW9uOiBcImRhdGVcIiB9LFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgaWYgKGRhdGVFeGFtZW4gPCBtaW5EYXRlRXhhbWVuKSB7XG4gICAgICAgICAgICAgIC8vIFRoaXMgYW1lbmRtZW50IGhhcyBiZWVuIGRpc2N1c3NlZCBzaW5jZSBhIGZldyBkYXlzLlxuICAgICAgICAgICAgICAvLyA9PiBJZ25vcmUgaXQsIGJlY2F1c2UgaXQgc2hvdWxkIGJlIGluIEFzc2VtYmzDqWUgb3BlbiBkYXRhLlxuICAgICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBhbWVuZGVtZW50VXJsUGF0aCA9IGFtZW5kZW1lbnRUci5nZXRBdHRyaWJ1dGUoXCJkYXRhLWhyZWZcIilcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChhbWVuZGVtZW50VXJsUGF0aCwgdW5kZWZpbmVkKVxuICAgICAgY29uc3QgYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZCA9IGFtZW5kZW1lbnRVcmxQYXRoIS5zcGxpdChcIi9cIilcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgICAgYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZFswXSxcbiAgICAgICAgXCJcIixcbiAgICAgICAgYFVuZXhwZWN0ZWQgVVJMIHBhdGggZm9yIGFtZW5kZW1lbnQ6ICR7YW1lbmRlbWVudFVybFBhdGh9YCxcbiAgICAgIClcbiAgICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgICAgYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZFsxXSxcbiAgICAgICAgXCJkeW5cIixcbiAgICAgICAgYFVuZXhwZWN0ZWQgVVJMIHBhdGggZm9yIGFtZW5kZW1lbnQ6ICR7YW1lbmRlbWVudFVybFBhdGh9YCxcbiAgICAgIClcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRoID1cbiAgICAgICAgcGF0aC5qb2luKFxuICAgICAgICAgIGFtZW5kZW1lbnRzU2VhcmNoQ2FjaGVEaXIsXG4gICAgICAgICAgLi4uYW1lbmRlbWVudFVybFBhdGhTcGxpdHRlZC5zbGljZSgyKSxcbiAgICAgICAgKSArIFwiLmh0bWxcIlxuICAgICAgYXdhaXQgZnMuZW5zdXJlRGlyKHBhdGguZGlybmFtZShhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCkpXG4gICAgICBjb25zdCBleGlzdGluZ0FtZW5kZW1lbnRTZWFyY2hDYWNoZSA9IChhd2FpdCBmcy5wYXRoRXhpc3RzKFxuICAgICAgICBhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCxcbiAgICAgICkpXG4gICAgICAgID8gYXdhaXQgZnMucmVhZEZpbGUoYW1lbmRlbWVudFNlYXJjaENhY2hlRmlsZVBhdGgsIFwidXRmOFwiKVxuICAgICAgICA6IG51bGxcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRUck91dGVySHRtbCA9IGFtZW5kZW1lbnRUci5vdXRlckhUTUxcbiAgICAgIGNvbnN0IGFtZW5kZW1lbnRTZWFyY2hDYWNoZSA9IGAtLS1cXG4ke2pzWWFtbC5kdW1wKFxuICAgICAgICB7XG4gICAgICAgICAgcG9zaXRpb246IGFtZW5kZW1lbnRzQ291bnQgLSBhbWVuZGVtZW50TnVtYmVyLFxuICAgICAgICAgIHNlYXJjaDogdXJsLnJlcGxhY2UoLyZwYWdlPVtcXGRdKy8sIFwiXCIpLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgc29ydEtleXM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICApfS0tLVxcblxcbiR7YW1lbmRlbWVudFRyT3V0ZXJIdG1sfWBcbiAgICAgIGlmIChhbWVuZGVtZW50U2VhcmNoQ2FjaGUgPT09IGV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlKSB7XG4gICAgICAgIGlmIChpbmNyZW1lbnRhbCkge1xuICAgICAgICAgIC8vIFRoZSBzYW1lIDx0cj4gaXMgYWxyZWFkeSBpbiBjYWNoZSBhbmQgaW4gdGhlIHNhbWUgcG9zaXRpb24uXG4gICAgICAgICAgLy8gQXNzdW1lIHRoYXQgZm9sbG93aW5nIGFtZW5kbWVudHMgYXJlIG5vdCBjaGFuZ2VkIGFuZCBzdG9wIGxvb2tpbmdcbiAgICAgICAgICAvLyBmb3IgYW1lbmRtZW50cyB0byB1cHNlcnQuXG4gICAgICAgICAgYnJlYWsgaXRlclNlYXJjaFBhZ2VzXG4gICAgICAgIH1cbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUgIT09IG51bGwgJiZcbiAgICAgICAgZnJvbnRNYXR0ZXIoZXhpc3RpbmdBbWVuZGVtZW50U2VhcmNoQ2FjaGUpLmJvZHkgPT09XG4gICAgICAgICAgYW1lbmRlbWVudFRyT3V0ZXJIdG1sXG4gICAgICApIHtcbiAgICAgICAgLy8gVGhlIHNhbWUgPHRyPiBpcyBhbHJlYWR5IGluIGNhY2hlLCBidXQgaW4gYSBkaWZmZXJlbnQgcG9zaXRpb24uXG4gICAgICAgIC8vIEFzc3VtZSB0aGUgYW1lbmRtZW50IGlzIHVuY2hhbmdlZC5cbiAgICAgICAgY29udGludWVcbiAgICAgIH1cbiAgICAgIGlmIChvcHRpb25zLnZlcmJvc2UpIHtcbiAgICAgICAgaWYgKGV4aXN0aW5nQW1lbmRlbWVudFNlYXJjaENhY2hlID09PSBudWxsKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgICBgQWRkaW5nIGFtZW5kZW1lbnQgc2VhcmNoIGNhY2hlOiAke2FtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRofeKApmAsXG4gICAgICAgICAgKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgICAgYFVwZGF0aW5nIGFtZW5kZW1lbnQgc2VhcmNoIGNhY2hlOiAke2FtZW5kZW1lbnRTZWFyY2hDYWNoZUZpbGVQYXRofeKApmAsXG4gICAgICAgICAgKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbFVybCA9IG5ldyBVUkwoXG4gICAgICAgIGFtZW5kZW1lbnRVcmxQYXRoISxcbiAgICAgICAgXCJodHRwczovL3d3dy5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyL1wiLFxuICAgICAgKS50b1N0cmluZygpXG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbFJlc3BvbnNlID0gYXdhaXQgZmV0Y2goYW1lbmRlbWVudEh0bWxVcmwpXG4gICAgICBhc3NlcnQoXG4gICAgICAgIGFtZW5kZW1lbnRIdG1sUmVzcG9uc2Uub2ssXG4gICAgICAgIGBSZXRyaWV2YWwgb2YgYW1lbmRlbWVudCBIVE1MIHBhZ2UgYXQgJHthbWVuZGVtZW50SHRtbFVybH0gZmFpbGVkIHdpdGggZXJyb3I6ICR7YW1lbmRlbWVudEh0bWxSZXNwb25zZS5zdGF0dXN9ICR7YW1lbmRlbWVudEh0bWxSZXNwb25zZS5zdGF0dXNUZXh0fWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50SHRtbFBhZ2UgPSBhd2FpdCBhbWVuZGVtZW50SHRtbFJlc3BvbnNlLnRleHQoKVxuICAgICAgY29uc3QgYW1lbmRlbWVudEh0bWwgPSBwYXJzZUh0bWwoYW1lbmRlbWVudEh0bWxQYWdlKVxuICAgICAgY29uc3QgZm9ybWF0c0xpID0gYW1lbmRlbWVudEh0bWwucXVlcnlTZWxlY3RvckFsbChcbiAgICAgICAgXCJsaS5taXJyb3ItY2FyZC1oZWFkZXItLW9wdGlvbnMtLWNvbnRlbnQtLWl0ZW1cIixcbiAgICAgIClcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChmb3JtYXRzTGkubGVuZ3RoLCAwKVxuICAgICAgY29uc3QganNvbkxpID0gZm9ybWF0c0xpLmZpbmQoKGZvcm1hdExpKSA9PiB7XG4gICAgICAgIGNvbnN0IGZvcm1hdFNwYW4gPSBmb3JtYXRMaS5xdWVyeVNlbGVjdG9yKFwiYSA+IHNwYW5cIilcbiAgICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgICAgIGZvcm1hdFNwYW4sXG4gICAgICAgICAgbnVsbCxcbiAgICAgICAgICBgTm8gPHNwYW4+IGluIDxhPiBmb3VuZCBpbiAke2Zvcm1hdExpLnRvU3RyaW5nKCl9YCxcbiAgICAgICAgKVxuICAgICAgICByZXR1cm4gZm9ybWF0U3BhbiEudGV4dCA9PT0gXCJWZXJzaW9uIEpTT05cIlxuICAgICAgfSlcbiAgICAgIGFzc2VydC5ub3RTdHJpY3RFcXVhbChcbiAgICAgICAganNvbkxpLFxuICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgIGBObyBKU09OIHZlcnNpb24gZm91bmQgZm9yIGFtZW5kZW1lbnQgYXQgJHthbWVuZGVtZW50SHRtbFVybH1gLFxuICAgICAgKVxuICAgICAgY29uc3QganNvbkEgPSBqc29uTGkhLnF1ZXJ5U2VsZWN0b3IoXCJhXCIpXG4gICAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwoXG4gICAgICAgIGpzb25BLFxuICAgICAgICBudWxsLFxuICAgICAgICBgTm8gPGE+IGZvdW5kIGluICR7anNvbkxpIS50b1N0cmluZygpfWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50SnNvblVybFBhdGggPSBqc29uQSEuZ2V0QXR0cmlidXRlKFwiaHJlZlwiKVxuICAgICAgYXNzZXJ0Lm5vdFN0cmljdEVxdWFsKFxuICAgICAgICBhbWVuZGVtZW50SnNvblVybFBhdGgsXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgYE5vIFVSTCBmb3VuZCBmb3IgSlNPTiB2ZXJzaW9uIG9mIGFtZW5kZW1lbnQ6ICR7anNvbkxpIS50b1N0cmluZygpfWAsXG4gICAgICApXG4gICAgICBjb25zdCBhbWVuZGVtZW50SnNvblVybCA9IG5ldyBVUkwoXG4gICAgICAgIGFtZW5kZW1lbnRKc29uVXJsUGF0aCEsXG4gICAgICAgIFwiaHR0cHM6Ly93d3cuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9cIixcbiAgICAgICkudG9TdHJpbmcoKVxuICAgICAgY29uc3QgYW1lbmRlbWVudEpzb25SZXNwb25zZSA9IGF3YWl0IGZldGNoKGFtZW5kZW1lbnRKc29uVXJsKVxuICAgICAgYXNzZXJ0KFxuICAgICAgICBhbWVuZGVtZW50SnNvblJlc3BvbnNlLm9rLFxuICAgICAgICBgUmV0cmlldmFsIG9mIGFtZW5kZW1lbnQgSlNPTiBwYWdlIGF0ICR7YW1lbmRlbWVudEpzb25Vcmx9IGZhaWxlZCB3aXRoIGVycm9yOiAke2FtZW5kZW1lbnRKc29uUmVzcG9uc2Uuc3RhdHVzfSAke2FtZW5kZW1lbnRKc29uUmVzcG9uc2Uuc3RhdHVzVGV4dH1gLFxuICAgICAgKVxuICAgICAgY29uc3QgYW1lbmRlbWVudCA9IGF3YWl0IGFtZW5kZW1lbnRKc29uUmVzcG9uc2UuanNvbigpXG4gICAgICB5aWVsZCBbYW1lbmRlbWVudFVybFBhdGghLCBhbWVuZGVtZW50XVxuXG4gICAgICAvLyBTZWFyY2hDYWNoZSBtdXN0IGJlIHdyaXR0ZW4gYXQgdGhlIGVuZCB0byBlbnN1cmUgdGhhdCBldmVyeXRoaW5nIGlzIGluIGEgY29uc2lzdGVudCBzdGF0ZSxcbiAgICAgIC8vIGV2ZW4gaWYgc2NyaXB0IGZhaWxzIGFicnVwdGx5LlxuICAgICAgYXdhaXQgZnMud3JpdGVGaWxlKFxuICAgICAgICBhbWVuZGVtZW50U2VhcmNoQ2FjaGVGaWxlUGF0aCxcbiAgICAgICAgYW1lbmRlbWVudFNlYXJjaENhY2hlLFxuICAgICAgICBcInV0ZjhcIixcbiAgICAgIClcbiAgICB9XG5cbiAgICBjb25zdCBwYWdpbmF0aW9uQSA9IGh0bWwucXVlcnlTZWxlY3RvcihcbiAgICAgIFwiZGl2LmFuLXBhZ2luYXRpb24tLWl0ZW0gPiBpLmFuLWljb25zLWNoZXZyb24tcmlnaHQgfiBhXCIsXG4gICAgKVxuICAgIGlmIChwYWdpbmF0aW9uQSA9PT0gbnVsbCkge1xuICAgICAgYnJlYWtcbiAgICB9XG4gICAgY29uc3QgdXJsUGF0aCA9IHBhZ2luYXRpb25BLmdldEF0dHJpYnV0ZShcImhyZWZcIilcbiAgICBhc3NlcnQubm90U3RyaWN0RXF1YWwodXJsUGF0aCwgdW5kZWZpbmVkKVxuICAgIHVybCA9IG5ldyBVUkwodXJsUGF0aCEsIFwiaHR0cHM6Ly93d3cuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci9cIikudG9TdHJpbmcoKVxuICB9XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLE1BQVAsTUFBbUIsUUFBbkIsQyxDQUNBO0FBQ0E7O0FBQ0EsT0FBT0MsU0FBUCxNQUFzQiw2QkFBdEI7QUFDQSxPQUFPQyxRQUFQLE1BQXFCLDZCQUFyQjtBQUNBLE9BQU9DLFNBQVAsTUFBc0IseUJBQXRCO0FBQ0EsT0FBT0MsU0FBUCxNQUFzQixZQUF0QjtBQUNBLE9BQU9DLEVBQVAsTUFBZSxVQUFmO0FBQ0EsT0FBT0MsV0FBUCxNQUF3QixjQUF4QjtBQUNBLE9BQU9DLE1BQVAsTUFBbUIsU0FBbkI7QUFDQSxPQUFPQyxLQUFQLE1BQWtCLFlBQWxCO0FBQ0EsU0FBU0MsS0FBSyxJQUFJQyxTQUFsQixRQUFtQyxrQkFBbkM7QUFDQSxPQUFPQyxJQUFQLE1BQWlCLE1BQWpCO1NBRVNDLGU7U0FFWUMsT0FBTyxJQUFJQyxrQjtBQUVoQyxPQUFPLGdCQUFnQkMsd0JBQWhCLENBQ0xDLHlCQURLLEVBRUxDLEdBRkssRUFHTEMsV0FISyxFQUlMQyxZQUpLLEVBS0xDLGFBTEssRUFNTEMsT0FBZ0QsR0FBRyxFQU45QyxFQU9nRDtFQUNyRCxXQUFXLE1BQU0sQ0FDZkMsaUJBRGUsRUFFZkMsVUFGZSxDQUFqQixJQUdLQywyQkFBMkIsQ0FDOUJSLHlCQUQ4QixFQUU5QkMsR0FGOEIsRUFHOUJDLFdBSDhCLEVBSTlCQyxZQUo4QixFQUs5QkMsYUFMOEIsRUFNOUJDLE9BTjhCLENBSGhDLEVBVUc7SUFDRFQsZUFBZSxDQUFDVyxVQUFELENBQWYsQ0FEQyxDQUVEOztJQUNBLE1BQU0sQ0FDSkQsaUJBREksRUFFSlIsa0JBQWtCLENBQUNXLFlBQW5CLENBQWdDQyxJQUFJLENBQUNDLFNBQUwsQ0FBZUosVUFBZixDQUFoQyxDQUZJLENBQU47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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tricoteuses/assemblee",
3
- "version": "0.29.13",
3
+ "version": "1.0.0",
4
4
  "description": "Retrieve, clean up & handle French Assemblée nationale's open data",
5
5
  "keywords": [
6
6
  "Assemblée nationale",