easy-layout 5.0.104 → 5.1.1

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.
@@ -5,19 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  exports.default = void 0;
6
6
  var _easyWithStyle = _interopRequireDefault(require("easy-with-style"));
7
7
  var _easy = require("easy");
8
+ var _easyDragAndDrop = require("easy-drag-and-drop");
8
9
  var _sizeable = _interopRequireDefault(require("../div/sizeable"));
9
10
  var _sizeable1 = _interopRequireDefault(require("../section/sizeable"));
10
11
  var _cursor = require("../cursor");
11
- var _constants = require("../constants");
12
- var _options = require("../options");
13
- function _arrayLikeToArray(arr, len) {
14
- if (len == null || len > arr.length) len = arr.length;
15
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
16
- return arr2;
17
- }
18
- function _arrayWithoutHoles(arr) {
19
- if (Array.isArray(arr)) return _arrayLikeToArray(arr);
20
- }
21
12
  function _assertThisInitialized(self) {
22
13
  if (self === void 0) {
23
14
  throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
@@ -118,12 +109,6 @@ function _interopRequireDefault(obj) {
118
109
  function _isNativeFunction(fn) {
119
110
  return Function.toString.call(fn).indexOf("[native code]") !== -1;
120
111
  }
121
- function _iterableToArray(iter) {
122
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
123
- }
124
- function _nonIterableSpread() {
125
- throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
126
- }
127
112
  function _possibleConstructorReturn(self, call) {
128
113
  if (call && (_typeof(call) === "object" || typeof call === "function")) {
129
114
  return call;
@@ -147,21 +132,10 @@ function _taggedTemplateLiteral(strings, raw) {
147
132
  }
148
133
  }));
149
134
  }
150
- function _toConsumableArray(arr) {
151
- return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
152
- }
153
135
  var _typeof = function(obj) {
154
136
  "@swc/helpers - typeof";
155
137
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
156
138
  };
157
- function _unsupportedIterableToArray(o, minLen) {
158
- if (!o) return;
159
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
160
- var n = Object.prototype.toString.call(o).slice(8, -1);
161
- if (n === "Object" && o.constructor) n = o.constructor.name;
162
- if (n === "Map" || n === "Set") return Array.from(n);
163
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
164
- }
165
139
  function _wrapNativeSuper(Class) {
166
140
  var _cache = typeof Map === "function" ? new Map() : undefined;
167
141
  _wrapNativeSuper = function _wrapNativeSuper(Class) {
@@ -221,142 +195,25 @@ function _templateObject() {
221
195
  };
222
196
  return data;
223
197
  }
224
- var BLUR_EVENT_TYPE = _easy.eventTypes.BLUR_EVENT_TYPE, DRAG_EVENT_TYPE = _easy.eventTypes.DRAG_EVENT_TYPE, MOUSEUP_EVENT_TYPE = _easy.eventTypes.MOUSEUP_EVENT_TYPE, STOP_DRAG_EVENT_TYPE = _easy.eventTypes.STOP_DRAG_EVENT_TYPE, START_DRAG_EVENT_TYPE = _easy.eventTypes.START_DRAG_EVENT_TYPE;
225
198
  var SplitterDiv = /*#__PURE__*/ function(Element) {
226
199
  _inherits(SplitterDiv, Element);
227
200
  var _super = _createSuper(SplitterDiv);
228
- function SplitterDiv(selector, options) {
201
+ function SplitterDiv() {
229
202
  _classCallCheck(this, SplitterDiv);
230
- var _this;
231
- _this = _super.call(this, selector);
232
- _this.options = options;
233
- return _this;
203
+ return _super.apply(this, arguments);
234
204
  }
235
205
  _createClass(SplitterDiv, [
236
206
  {
237
- key: "isOptionPresent",
238
- value: function isOptionPresent(option) {
239
- var optionPresent = !!this.options[option];
240
- return optionPresent;
241
- }
242
- },
243
- {
244
- key: "setOptions",
245
- value: function setOptions(options) {
246
- this.options = options;
247
- }
248
- },
249
- {
250
- key: "setOption",
251
- value: function setOption(option) {
252
- this.options[option] = true;
253
- }
254
- },
255
- {
256
- key: "unsetOption",
257
- value: function unsetOption(option) {
258
- delete this.options[option];
259
- }
260
- },
261
- {
262
- key: "onDrag",
263
- value: function onDrag(dragHandler, element) {
264
- var eventType = DRAG_EVENT_TYPE, handler = dragHandler; ///
265
- this.addEventListener(eventType, handler, element);
266
- }
267
- },
268
- {
269
- key: "offDrag",
270
- value: function offDrag(dragHandler, element) {
271
- var eventType = DRAG_EVENT_TYPE, handler = dragHandler; ///
272
- this.removeEventListener(eventType, handler, element);
273
- }
274
- },
275
- {
276
- key: "onStopDrag",
277
- value: function onStopDrag(stopDragHandler, element) {
278
- var eventType = STOP_DRAG_EVENT_TYPE, handler = stopDragHandler; ///
279
- this.addEventListener(eventType, handler, element);
280
- }
281
- },
282
- {
283
- key: "offStopDrag",
284
- value: function offStopDrag(stopDragHandler, element) {
285
- var eventType = STOP_DRAG_EVENT_TYPE, handler = stopDragHandler; ///
286
- this.removeEventListener(eventType, handler, element);
287
- }
288
- },
289
- {
290
- key: "onStartDrag",
291
- value: function onStartDrag(stopDragHandler, element) {
292
- var eventType = START_DRAG_EVENT_TYPE, handler = stopDragHandler; ///
293
- this.addEventListener(eventType, handler, element);
294
- }
295
- },
296
- {
297
- key: "offStartDrag",
298
- value: function offStartDrag(stopDragHandler, element) {
299
- var eventType = START_DRAG_EVENT_TYPE, handler = stopDragHandler; ///
300
- this.removeEventListener(eventType, handler, element);
301
- }
302
- },
303
- {
304
- key: "callHandlers",
305
- value: function callHandlers(eventType) {
306
- for(var _len = arguments.length, remainingArguments = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++){
307
- remainingArguments[_key - 1] = arguments[_key];
308
- }
309
- var _this = this;
310
- var eventListeners = this.findEventListeners(eventType);
311
- eventListeners.forEach(function(eventListener) {
312
- var _handler;
313
- var handler = eventListener.handler, handlerElement = eventListener.element, element = _this; ///
314
- (_handler = handler).call.apply(_handler, [
315
- handlerElement
316
- ].concat(_toConsumableArray(remainingArguments), [
317
- element
318
- ]));
319
- });
320
- }
321
- },
322
- {
323
- key: "enable",
324
- value: function enable() {
325
- this.removeClass("disabled");
326
- }
327
- },
328
- {
329
- key: "disable",
330
- value: function disable() {
331
- this.addClass("disabled");
332
- }
333
- },
334
- {
335
- key: "isDisabled",
336
- value: function isDisabled() {
337
- var disabled = this.hasClass("disabled");
338
- return disabled;
207
+ key: "mouseOutHandler",
208
+ value: function mouseOutHandler(event, element) {
209
+ (0, _cursor).resetCursor();
339
210
  }
340
211
  },
341
212
  {
342
- key: "isDragging",
343
- value: function isDragging() {
344
- var dragging = this.hasClass("dragging");
345
- return dragging;
346
- }
347
- },
348
- {
349
- key: "getDirection",
350
- value: function getDirection() {
351
- var direction;
352
- var nextSiblingElement = this.getNextSiblingElement(), previousSiblingElement = this.getPreviousSiblingElement(), nextSiblingElementSizeableElement = isElementSizeableElement(nextSiblingElement), previousSiblingElementSizeableElement = isElementSizeableElement(previousSiblingElement);
353
- if (nextSiblingElementSizeableElement) {
354
- direction = +1;
355
- }
356
- if (previousSiblingElementSizeableElement) {
357
- direction = -1;
358
- }
359
- return direction;
213
+ key: "stopDragHandler",
214
+ value: function stopDragHandler(dropElement, aborted, element, done) {
215
+ (0, _cursor).resetCursor();
216
+ done();
360
217
  }
361
218
  },
362
219
  {
@@ -374,76 +231,45 @@ var SplitterDiv = /*#__PURE__*/ function(Element) {
374
231
  }
375
232
  },
376
233
  {
377
- key: "startDrag",
378
- value: function startDrag() {
379
- var eventType = START_DRAG_EVENT_TYPE, escapeKeyStopsDraggingOptionPresent = this.isOptionPresent(_options.ESCAPE_KEY_STOPS_DRAGGING_OPTION);
380
- if (escapeKeyStopsDraggingOptionPresent) {
381
- _easy.window.onKeyDown(this.keyDownHandler, this);
234
+ key: "getDirection",
235
+ value: function getDirection() {
236
+ var direction;
237
+ var nextSiblingElement = this.getNextSiblingElement(), previousSiblingElement = this.getPreviousSiblingElement(), nextSiblingElementSizeableElement = isElementSizeableElement(nextSiblingElement), previousSiblingElementSizeableElement = isElementSizeableElement(previousSiblingElement);
238
+ if (nextSiblingElementSizeableElement) {
239
+ direction = +1;
382
240
  }
383
- this.addClass("dragging");
384
- this.callHandlers(eventType);
385
- }
386
- },
387
- {
388
- key: "stopDrag",
389
- value: function stopDrag() {
390
- var eventType = STOP_DRAG_EVENT_TYPE, escapeKeyStopsDraggingOptionPresent = this.isOptionPresent(_options.ESCAPE_KEY_STOPS_DRAGGING_OPTION);
391
- if (escapeKeyStopsDraggingOptionPresent) {
392
- _easy.window.offKeyDown(this.keyDownHandler, this);
241
+ if (previousSiblingElementSizeableElement) {
242
+ direction = -1;
393
243
  }
394
- this.removeClass("dragging");
395
- this.callHandlers(eventType);
244
+ return direction;
396
245
  }
397
246
  },
398
247
  {
399
- key: "mouseUpHandler",
400
- value: function mouseUpHandler(event, element) {
401
- var disabled = this.isDisabled();
402
- if (!disabled) {
403
- var dragging = this.isDragging();
404
- if (dragging) {
405
- this.stopDrag();
406
- }
407
- (0, _cursor).resetCursor();
408
- }
248
+ key: "enable",
249
+ value: function enable() {
250
+ this.removeClass("disabled");
409
251
  }
410
252
  },
411
253
  {
412
- key: "mouseOutHandler",
413
- value: function mouseOutHandler(event, element) {
414
- var disabled = this.isDisabled();
415
- if (!disabled) {
416
- var dragging = this.isDragging();
417
- if (!dragging) {
418
- (0, _cursor).resetCursor();
419
- }
420
- }
254
+ key: "disable",
255
+ value: function disable() {
256
+ this.addClass("disabled");
421
257
  }
422
258
  },
423
259
  {
424
- key: "keyDownHandler",
425
- value: function keyDownHandler(event, element) {
426
- var keyCode = event.keyCode;
427
- if (keyCode === _constants.ESCAPE_KEY_CODE) {
428
- var dragging = this.isDragging();
429
- if (dragging) {
430
- this.stopDrag();
431
- }
432
- (0, _cursor).resetCursor();
433
- }
260
+ key: "isDisabled",
261
+ value: function isDisabled() {
262
+ var disabled = this.hasClass("disabled");
263
+ return disabled;
434
264
  }
435
265
  },
436
266
  {
437
267
  key: "didMount",
438
268
  value: function didMount() {
439
- var _properties = this.properties, onDrag = _properties.onDrag, onStopDrag = _properties.onStopDrag, onStartDrag = _properties.onStartDrag, disabled = _properties.disabled, dragHandler = onDrag, stopDragHandler = onStopDrag, startDragHandler = onStartDrag; ///
440
- disabled === true ? this.disable() : this.enable();
441
- dragHandler && this.onDrag(dragHandler);
442
- stopDragHandler && this.onStopDrag(stopDragHandler);
443
- startDragHandler && this.onStartDrag(startDragHandler);
444
- _easy.window.on("".concat(BLUR_EVENT_TYPE, " ").concat(MOUSEUP_EVENT_TYPE), this.mouseUpHandler, this); ///
445
- _easy.window.onMouseMove(this.mouseMoveHandler, this);
446
- this.onMouseDown(this.mouseDownHandler, this);
269
+ this.enableDrag();
270
+ this.onDrag(this.dragHandler, this);
271
+ this.onStopDrag(this.stopDragHandler, this);
272
+ this.onStartDrag(this.startDragHandler, this);
447
273
  this.onMouseOver(this.mouseOverHandler, this);
448
274
  this.onMouseOut(this.mouseOutHandler, this);
449
275
  }
@@ -451,15 +277,12 @@ var SplitterDiv = /*#__PURE__*/ function(Element) {
451
277
  {
452
278
  key: "willUnmount",
453
279
  value: function willUnmount() {
454
- var _properties = this.properties, onDrag = _properties.onDrag, onStopDrag = _properties.onStopDrag, onStartDrag = _properties.onStartDrag, dragHandler = onDrag, stopDragHandler = onStopDrag, startDragHandler = onStartDrag; ///
455
- dragHandler && this.offDrag(dragHandler);
456
- stopDragHandler && this.offStopDrag(stopDragHandler);
457
- startDragHandler && this.offStartDrag(startDragHandler);
458
- _easy.window.off("".concat(BLUR_EVENT_TYPE, " ").concat(MOUSEUP_EVENT_TYPE), this.mouseUpHandler, this); ///
459
- _easy.window.offMouseMove(this.mouseMoveHandler, this);
460
- this.offMouseDown(this.mouseDownHandler, this);
461
- this.offMouseOver(this.mouseOverHandler, this);
462
280
  this.offMouseOut(this.mouseOutHandler, this);
281
+ this.offMouseOver(this.mouseOverHandler, this);
282
+ this.offStartDrag(this.startDragHandler, this);
283
+ this.offStopDrag(this.stopDragHandler, this);
284
+ this.offDrag(this.dragHandler, this);
285
+ this.disableDrag();
463
286
  }
464
287
  },
465
288
  {
@@ -472,7 +295,7 @@ var SplitterDiv = /*#__PURE__*/ function(Element) {
472
295
  {
473
296
  key: "fromClass",
474
297
  value: function fromClass(Class, properties) {
475
- var _options1 = properties.options, options = _options1 === void 0 ? {} : _options1, splitterDiv = _easy.Element.fromClass(Class, properties, options);
298
+ var splitterDiv = _easy.Element.fromClass(Class, properties);
476
299
  return splitterDiv;
477
300
  }
478
301
  }
@@ -480,16 +303,16 @@ var SplitterDiv = /*#__PURE__*/ function(Element) {
480
303
  return SplitterDiv;
481
304
  }(_wrapNativeSuper(_easy.Element));
482
305
  _defineProperty(SplitterDiv, "tagName", "div");
483
- _defineProperty(SplitterDiv, "defaultProperties", {
484
- className: "splitter"
485
- });
486
306
  _defineProperty(SplitterDiv, "ignoredProperties", [
487
307
  "onDrag",
488
- "options",
489
308
  "disabled",
490
309
  "onStopDrag",
491
310
  "onStartDrag"
492
311
  ]);
312
+ _defineProperty(SplitterDiv, "defaultProperties", {
313
+ className: "splitter"
314
+ });
315
+ Object.assign(SplitterDiv.prototype, _easyDragAndDrop.dragMixins);
493
316
  var _default = (0, _easyWithStyle).default(SplitterDiv)(_templateObject());
494
317
  exports.default = _default;
495
318
  function isElementSizeableElement(element) {
@@ -497,4 +320,4 @@ function isElementSizeableElement(element) {
497
320
  return elementSizeableElement;
498
321
  }
499
322
 
500
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaXYvc3BsaXR0ZXIuanMiLCIuLi9zcmMvY29uc3RhbnRzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgd2l0aFN0eWxlIGZyb20gXCJlYXN5LXdpdGgtc3R5bGVcIjsgIC8vL1xuXG5pbXBvcnQgeyB3aW5kb3csIEVsZW1lbnQsIGV2ZW50VHlwZXMgfSBmcm9tIFwiZWFzeVwiO1xuXG5pbXBvcnQgU2l6ZWFibGVEaXYgZnJvbSBcIi4uL2Rpdi9zaXplYWJsZVwiO1xuaW1wb3J0IFNpemVhYmxlU2VjdGlvbiBmcm9tIFwiLi4vc2VjdGlvbi9zaXplYWJsZVwiO1xuXG5pbXBvcnQgeyByZXNldEN1cnNvciB9IGZyb20gXCIuLi9jdXJzb3JcIjtcbmltcG9ydCB7IEVTQ0FQRV9LRVlfQ09ERSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IEVTQ0FQRV9LRVlfU1RPUFNfRFJBR0dJTkdfT1BUSU9OIH0gZnJvbSBcIi4uL29wdGlvbnNcIjtcblxuY29uc3QgeyBCTFVSX0VWRU5UX1RZUEUsIERSQUdfRVZFTlRfVFlQRSwgTU9VU0VVUF9FVkVOVF9UWVBFLCBTVE9QX0RSQUdfRVZFTlRfVFlQRSwgU1RBUlRfRFJBR19FVkVOVF9UWVBFIH0gPSBldmVudFR5cGVzO1xuXG5jbGFzcyBTcGxpdHRlckRpdiBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3RvcihzZWxlY3Rvciwgb3B0aW9ucykge1xuICAgIHN1cGVyKHNlbGVjdG9yKTtcblxuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gIH1cblxuICBpc09wdGlvblByZXNlbnQob3B0aW9uKSB7XG4gICAgY29uc3Qgb3B0aW9uUHJlc2VudCA9ICEhdGhpcy5vcHRpb25zW29wdGlvbl07XG5cbiAgICByZXR1cm4gb3B0aW9uUHJlc2VudDtcbiAgfVxuXG4gIHNldE9wdGlvbnMob3B0aW9ucykge1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gIH1cblxuICBzZXRPcHRpb24ob3B0aW9uKSB7XG4gICAgdGhpcy5vcHRpb25zW29wdGlvbl0gPSB0cnVlO1xuICB9XG5cbiAgdW5zZXRPcHRpb24ob3B0aW9uKSB7XG4gICAgZGVsZXRlKHRoaXMub3B0aW9uc1tvcHRpb25dKTtcbiAgfVxuXG4gIG9uRHJhZyhkcmFnSGFuZGxlciwgZWxlbWVudCkge1xuICAgIGNvbnN0IGV2ZW50VHlwZSA9IERSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgICBoYW5kbGVyID0gZHJhZ0hhbmRsZXI7ICAvLy9cblxuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xuICB9XG5cbiAgb2ZmRHJhZyhkcmFnSGFuZGxlciwgZWxlbWVudCkge1xuICAgIGNvbnN0IGV2ZW50VHlwZSA9IERSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgICBoYW5kbGVyID0gZHJhZ0hhbmRsZXI7ICAvLy9cblxuICAgIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xuICB9XG5cbiAgb25TdG9wRHJhZyhzdG9wRHJhZ0hhbmRsZXIsIGVsZW1lbnQpIHtcbiAgICBjb25zdCBldmVudFR5cGUgPSBTVE9QX0RSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgICBoYW5kbGVyID0gc3RvcERyYWdIYW5kbGVyOyAgLy8vXG5cbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbiAgfVxuXG4gIG9mZlN0b3BEcmFnKHN0b3BEcmFnSGFuZGxlciwgZWxlbWVudCkge1xuICAgIGNvbnN0IGV2ZW50VHlwZSA9IFNUT1BfRFJBR19FVkVOVF9UWVBFLFxuICAgICAgICAgIGhhbmRsZXIgPSBzdG9wRHJhZ0hhbmRsZXI7ICAvLy9cblxuICAgIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xuICB9XG5cbiAgb25TdGFydERyYWcoc3RvcERyYWdIYW5kbGVyLCBlbGVtZW50KSB7XG4gICAgY29uc3QgZXZlbnRUeXBlID0gU1RBUlRfRFJBR19FVkVOVF9UWVBFLFxuICAgICAgICAgIGhhbmRsZXIgPSBzdG9wRHJhZ0hhbmRsZXI7ICAvLy9cblxuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xuICB9XG5cbiAgb2ZmU3RhcnREcmFnKHN0b3BEcmFnSGFuZGxlciwgZWxlbWVudCkge1xuICAgIGNvbnN0IGV2ZW50VHlwZSA9IFNUQVJUX0RSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgICBoYW5kbGVyID0gc3RvcERyYWdIYW5kbGVyOyAgLy8vXG5cbiAgICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbiAgfVxuXG4gIGNhbGxIYW5kbGVycyhldmVudFR5cGUsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICAgIGNvbnN0IGV2ZW50TGlzdGVuZXJzID0gdGhpcy5maW5kRXZlbnRMaXN0ZW5lcnMoZXZlbnRUeXBlKTtcblxuICAgIGV2ZW50TGlzdGVuZXJzLmZvckVhY2goKGV2ZW50TGlzdGVuZXIpID0+IHtcbiAgICAgIGNvbnN0IHsgaGFuZGxlciwgZWxlbWVudDogaGFuZGxlckVsZW1lbnQgfSA9IGV2ZW50TGlzdGVuZXIsXG4gICAgICAgICAgICBlbGVtZW50ID0gdGhpczsgLy8vXG5cbiAgICAgIGhhbmRsZXIuY2FsbChoYW5kbGVyRWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCBlbGVtZW50KTtcbiAgICB9KTtcbiAgfVxuXG4gIGVuYWJsZSgpIHtcbiAgICB0aGlzLnJlbW92ZUNsYXNzKFwiZGlzYWJsZWRcIik7XG4gIH1cblxuICBkaXNhYmxlKCkge1xuICAgIHRoaXMuYWRkQ2xhc3MoXCJkaXNhYmxlZFwiKTtcbiAgfVxuXG4gIGlzRGlzYWJsZWQoKSB7XG4gICAgY29uc3QgZGlzYWJsZWQgPSB0aGlzLmhhc0NsYXNzKFwiZGlzYWJsZWRcIik7XG4gICAgXG4gICAgcmV0dXJuIGRpc2FibGVkO1xuICB9XG5cbiAgaXNEcmFnZ2luZygpIHtcbiAgICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaGFzQ2xhc3MoXCJkcmFnZ2luZ1wiKTtcbiAgICBcbiAgICByZXR1cm4gZHJhZ2dpbmc7XG4gIH1cbiAgXG4gIGdldERpcmVjdGlvbigpIHtcbiAgICBsZXQgZGlyZWN0aW9uO1xuXG4gICAgY29uc3QgbmV4dFNpYmxpbmdFbGVtZW50ID0gdGhpcy5nZXROZXh0U2libGluZ0VsZW1lbnQoKSxcbiAgICAgICAgICBwcmV2aW91c1NpYmxpbmdFbGVtZW50ID0gdGhpcy5nZXRQcmV2aW91c1NpYmxpbmdFbGVtZW50KCksXG4gICAgICAgICAgbmV4dFNpYmxpbmdFbGVtZW50U2l6ZWFibGVFbGVtZW50ID0gaXNFbGVtZW50U2l6ZWFibGVFbGVtZW50KG5leHRTaWJsaW5nRWxlbWVudCksXG4gICAgICAgICAgcHJldmlvdXNTaWJsaW5nRWxlbWVudFNpemVhYmxlRWxlbWVudCA9IGlzRWxlbWVudFNpemVhYmxlRWxlbWVudChwcmV2aW91c1NpYmxpbmdFbGVtZW50KTtcblxuICAgIGlmIChuZXh0U2libGluZ0VsZW1lbnRTaXplYWJsZUVsZW1lbnQpIHtcbiAgICAgIGRpcmVjdGlvbiA9ICsxO1xuICAgIH1cblxuICAgIGlmIChwcmV2aW91c1NpYmxpbmdFbGVtZW50U2l6ZWFibGVFbGVtZW50KSB7XG4gICAgICBkaXJlY3Rpb24gPSAtMTtcbiAgICB9XG5cbiAgICByZXR1cm4gZGlyZWN0aW9uO1xuICB9XG5cbiAgZ2V0U2l6ZWFibGVFbGVtZW50KCkge1xuICAgIGxldCBzaXplYWJsZUVsZW1lbnQ7XG5cbiAgICBjb25zdCBuZXh0U2libGluZ0VsZW1lbnQgPSB0aGlzLmdldE5leHRTaWJsaW5nRWxlbWVudCgpLFxuICAgICAgICAgIHByZXZpb3VzU2libGluZ0VsZW1lbnQgPSB0aGlzLmdldFByZXZpb3VzU2libGluZ0VsZW1lbnQoKSxcbiAgICAgICAgICBuZXh0U2libGluZ0VsZW1lbnRTaXplYWJsZUVsZW1lbnQgPSBpc0VsZW1lbnRTaXplYWJsZUVsZW1lbnQobmV4dFNpYmxpbmdFbGVtZW50KSxcbiAgICAgICAgICBwcmV2aW91c1NpYmxpbmdFbGVtZW50U2l6ZWFibGVFbGVtZW50ID0gaXNFbGVtZW50U2l6ZWFibGVFbGVtZW50KHByZXZpb3VzU2libGluZ0VsZW1lbnQpO1xuXG4gICAgaWYgKG5leHRTaWJsaW5nRWxlbWVudFNpemVhYmxlRWxlbWVudCkge1xuICAgICAgc2l6ZWFibGVFbGVtZW50ID0gbmV4dFNpYmxpbmdFbGVtZW50OyAvLy9cbiAgICB9XG5cbiAgICBpZiAocHJldmlvdXNTaWJsaW5nRWxlbWVudFNpemVhYmxlRWxlbWVudCkge1xuICAgICAgc2l6ZWFibGVFbGVtZW50ID0gcHJldmlvdXNTaWJsaW5nRWxlbWVudDsgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIHNpemVhYmxlRWxlbWVudDtcbiAgfVxuXG4gIHN0YXJ0RHJhZygpIHtcbiAgICBjb25zdCBldmVudFR5cGUgPSBTVEFSVF9EUkFHX0VWRU5UX1RZUEUsXG4gICAgICAgICAgZXNjYXBlS2V5U3RvcHNEcmFnZ2luZ09wdGlvblByZXNlbnQgPSB0aGlzLmlzT3B0aW9uUHJlc2VudChFU0NBUEVfS0VZX1NUT1BTX0RSQUdHSU5HX09QVElPTik7XG5cbiAgICBpZiAoZXNjYXBlS2V5U3RvcHNEcmFnZ2luZ09wdGlvblByZXNlbnQpIHtcbiAgICAgIHdpbmRvdy5vbktleURvd24odGhpcy5rZXlEb3duSGFuZGxlciwgdGhpcyk7XG4gICAgfVxuXG4gICAgdGhpcy5hZGRDbGFzcyhcImRyYWdnaW5nXCIpO1xuXG4gICAgdGhpcy5jYWxsSGFuZGxlcnMoZXZlbnRUeXBlKVxuICB9XG5cbiAgc3RvcERyYWcoKSB7XG4gICAgY29uc3QgZXZlbnRUeXBlID0gU1RPUF9EUkFHX0VWRU5UX1RZUEUsXG4gICAgICAgICAgZXNjYXBlS2V5U3RvcHNEcmFnZ2luZ09wdGlvblByZXNlbnQgPSB0aGlzLmlzT3B0aW9uUHJlc2VudChFU0NBUEVfS0VZX1NUT1BTX0RSQUdHSU5HX09QVElPTik7XG5cbiAgICBpZiAoZXNjYXBlS2V5U3RvcHNEcmFnZ2luZ09wdGlvblByZXNlbnQpIHtcbiAgICAgIHdpbmRvdy5vZmZLZXlEb3duKHRoaXMua2V5RG93bkhhbmRsZXIsIHRoaXMpO1xuICAgIH1cblxuICAgIHRoaXMucmVtb3ZlQ2xhc3MoXCJkcmFnZ2luZ1wiKTtcblxuICAgIHRoaXMuY2FsbEhhbmRsZXJzKGV2ZW50VHlwZSk7XG4gIH1cblxuICBtb3VzZVVwSGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICAgIGNvbnN0IGRpc2FibGVkID0gdGhpcy5pc0Rpc2FibGVkKCk7XG5cbiAgICBpZiAoIWRpc2FibGVkKSB7XG4gICAgICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaXNEcmFnZ2luZygpO1xuXG4gICAgICBpZiAoZHJhZ2dpbmcpIHtcbiAgICAgICAgdGhpcy5zdG9wRHJhZygpO1xuICAgICAgfVxuXG4gICAgICByZXNldEN1cnNvcigpO1xuICAgIH1cbiAgfVxuXG4gIG1vdXNlT3V0SGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICAgIGNvbnN0IGRpc2FibGVkID0gdGhpcy5pc0Rpc2FibGVkKCk7XG5cbiAgICBpZiAoIWRpc2FibGVkKSB7XG4gICAgICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaXNEcmFnZ2luZygpO1xuXG4gICAgICBpZiAoIWRyYWdnaW5nKSB7XG4gICAgICAgIHJlc2V0Q3Vyc29yKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAga2V5RG93bkhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgICBjb25zdCB7IGtleUNvZGUgfSA9IGV2ZW50O1xuXG4gICAgaWYgKGtleUNvZGUgPT09IEVTQ0FQRV9LRVlfQ09ERSkge1xuICAgICAgY29uc3QgZHJhZ2dpbmcgPSB0aGlzLmlzRHJhZ2dpbmcoKTtcblxuICAgICAgaWYgKGRyYWdnaW5nKSB7XG4gICAgICAgIHRoaXMuc3RvcERyYWcoKTtcbiAgICAgIH1cblxuICAgICAgcmVzZXRDdXJzb3IoKTtcbiAgICB9XG4gIH1cblxuICBkaWRNb3VudCgpIHtcbiAgICBjb25zdCB7IG9uRHJhZywgb25TdG9wRHJhZywgb25TdGFydERyYWcsIGRpc2FibGVkIH0gPSB0aGlzLnByb3BlcnRpZXMsXG4gICAgICAgICAgZHJhZ0hhbmRsZXIgPSBvbkRyYWcsIC8vL1xuICAgICAgICAgIHN0b3BEcmFnSGFuZGxlciA9IG9uU3RvcERyYWcsIC8vL1xuICAgICAgICAgIHN0YXJ0RHJhZ0hhbmRsZXIgPSBvblN0YXJ0RHJhZzsgLy8vXG5cbiAgICAoZGlzYWJsZWQgPT09IHRydWUpID8gLy8vXG4gICAgICB0aGlzLmRpc2FibGUoKSA6XG4gICAgICAgIHRoaXMuZW5hYmxlKCk7XG5cbiAgICBkcmFnSGFuZGxlciAmJiB0aGlzLm9uRHJhZyhkcmFnSGFuZGxlcik7XG4gICAgc3RvcERyYWdIYW5kbGVyICYmIHRoaXMub25TdG9wRHJhZyhzdG9wRHJhZ0hhbmRsZXIpO1xuICAgIHN0YXJ0RHJhZ0hhbmRsZXIgJiYgdGhpcy5vblN0YXJ0RHJhZyhzdGFydERyYWdIYW5kbGVyKTtcblxuICAgIHdpbmRvdy5vbihgJHtCTFVSX0VWRU5UX1RZUEV9ICR7TU9VU0VVUF9FVkVOVF9UWVBFfWAsIHRoaXMubW91c2VVcEhhbmRsZXIsIHRoaXMpOyAgLy8vXG5cbiAgICB3aW5kb3cub25Nb3VzZU1vdmUodGhpcy5tb3VzZU1vdmVIYW5kbGVyLCB0aGlzKTtcblxuICAgIHRoaXMub25Nb3VzZURvd24odGhpcy5tb3VzZURvd25IYW5kbGVyLCB0aGlzKTtcbiAgICB0aGlzLm9uTW91c2VPdmVyKHRoaXMubW91c2VPdmVySGFuZGxlciwgdGhpcyk7XG4gICAgdGhpcy5vbk1vdXNlT3V0KHRoaXMubW91c2VPdXRIYW5kbGVyLCB0aGlzKTtcbiAgfVxuXG4gIHdpbGxVbm1vdW50KCkge1xuICAgIGNvbnN0IHsgb25EcmFnLCBvblN0b3BEcmFnLCBvblN0YXJ0RHJhZyB9ID0gdGhpcy5wcm9wZXJ0aWVzLFxuICAgICAgICAgIGRyYWdIYW5kbGVyID0gb25EcmFnLCAvLy9cbiAgICAgICAgICBzdG9wRHJhZ0hhbmRsZXIgPSBvblN0b3BEcmFnLCAvLy9cbiAgICAgICAgICBzdGFydERyYWdIYW5kbGVyID0gb25TdGFydERyYWc7IC8vL1xuXG4gICAgZHJhZ0hhbmRsZXIgJiYgdGhpcy5vZmZEcmFnKGRyYWdIYW5kbGVyKTtcbiAgICBzdG9wRHJhZ0hhbmRsZXIgJiYgdGhpcy5vZmZTdG9wRHJhZyhzdG9wRHJhZ0hhbmRsZXIpO1xuICAgIHN0YXJ0RHJhZ0hhbmRsZXIgJiYgdGhpcy5vZmZTdGFydERyYWcoc3RhcnREcmFnSGFuZGxlcik7XG5cbiAgICB3aW5kb3cub2ZmKGAke0JMVVJfRVZFTlRfVFlQRX0gJHtNT1VTRVVQX0VWRU5UX1RZUEV9YCwgdGhpcy5tb3VzZVVwSGFuZGxlciwgdGhpcyk7ICAvLy9cblxuICAgIHdpbmRvdy5vZmZNb3VzZU1vdmUodGhpcy5tb3VzZU1vdmVIYW5kbGVyLCB0aGlzKTtcblxuICAgIHRoaXMub2ZmTW91c2VEb3duKHRoaXMubW91c2VEb3duSGFuZGxlciwgdGhpcyk7XG4gICAgdGhpcy5vZmZNb3VzZU92ZXIodGhpcy5tb3VzZU92ZXJIYW5kbGVyLCB0aGlzKTtcbiAgICB0aGlzLm9mZk1vdXNlT3V0KHRoaXMubW91c2VPdXRIYW5kbGVyLCB0aGlzKTtcbiAgfVxuXG4gIGluaXRpYWxpc2UoKSB7XG4gICAgdGhpcy5zZXRJbml0aWFsU3RhdGUoKTtcbiAgfVxuXG4gIHN0YXRpYyB0YWdOYW1lID0gXCJkaXZcIjtcblxuICBzdGF0aWMgZGVmYXVsdFByb3BlcnRpZXMgPSB7XG4gICAgY2xhc3NOYW1lOiBcInNwbGl0dGVyXCJcbiAgfTtcblxuICBzdGF0aWMgaWdub3JlZFByb3BlcnRpZXMgPSBbXG4gICAgXCJvbkRyYWdcIixcbiAgICBcIm9wdGlvbnNcIixcbiAgICBcImRpc2FibGVkXCIsXG4gICAgXCJvblN0b3BEcmFnXCIsXG4gICAgXCJvblN0YXJ0RHJhZ1wiXG4gIF07XG5cbiAgc3RhdGljIGZyb21DbGFzcyhDbGFzcywgcHJvcGVydGllcykge1xuICAgIGNvbnN0IHsgb3B0aW9ucyA9IHt9IH0gPSBwcm9wZXJ0aWVzLFxuICAgICAgICAgIHNwbGl0dGVyRGl2ID0gRWxlbWVudC5mcm9tQ2xhc3MoQ2xhc3MsIHByb3BlcnRpZXMsIG9wdGlvbnMpO1xuXG4gICAgcmV0dXJuIHNwbGl0dGVyRGl2O1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IHdpdGhTdHlsZShTcGxpdHRlckRpdilgXG5cbiAgZmxleC1zaHJpbms6IDA7XG5cbmA7XG5cbmZ1bmN0aW9uIGlzRWxlbWVudFNpemVhYmxlRWxlbWVudChlbGVtZW50KSB7XG4gIGNvbnN0IGVsZW1lbnRTaXplYWJsZUVsZW1lbnQgPSAoZWxlbWVudCBpbnN0YW5jZW9mIFNpemVhYmxlRGl2KSB8fCAoZWxlbWVudCBpbnN0YW5jZW9mIFNpemVhYmxlU2VjdGlvbik7XG5cbiAgcmV0dXJuIGVsZW1lbnRTaXplYWJsZUVsZW1lbnQ7XG59XG4iLCJcInVzZSBzdHJpY3RcIjtcblxuZXhwb3J0IGNvbnN0IEFVVE8gPSBcImF1dG9cIjtcbmV4cG9ydCBjb25zdCBDVVJTT1IgPSBcImN1cnNvclwiO1xuZXhwb3J0IGNvbnN0IENPTF9SRVNJWkUgPSBcImNvbC1yZXNpemVcIjtcbmV4cG9ydCBjb25zdCBST1dfUkVTSVpFID0gXCJyb3ctcmVzaXplXCI7XG5leHBvcnQgY29uc3QgRVNDQVBFX0tFWV9DT0RFID0gMjc7XG4iXSwibmFtZXMiOlsiQkxVUl9FVkVOVF9UWVBFIiwiZXZlbnRUeXBlcyIsIkRSQUdfRVZFTlRfVFlQRSIsIk1PVVNFVVBfRVZFTlRfVFlQRSIsIlNUT1BfRFJBR19FVkVOVF9UWVBFIiwiU1RBUlRfRFJBR19FVkVOVF9UWVBFIiwiU3BsaXR0ZXJEaXYiLCJzZWxlY3RvciIsIm9wdGlvbnMiLCJpc09wdGlvblByZXNlbnQiLCJvcHRpb24iLCJvcHRpb25QcmVzZW50Iiwic2V0T3B0aW9ucyIsInNldE9wdGlvbiIsInVuc2V0T3B0aW9uIiwib25EcmFnIiwiZHJhZ0hhbmRsZXIiLCJlbGVtZW50IiwiZXZlbnRUeXBlIiwiaGFuZGxlciIsImFkZEV2ZW50TGlzdGVuZXIiLCJvZmZEcmFnIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIm9uU3RvcERyYWciLCJzdG9wRHJhZ0hhbmRsZXIiLCJvZmZTdG9wRHJhZyIsIm9uU3RhcnREcmFnIiwib2ZmU3RhcnREcmFnIiwiY2FsbEhhbmRsZXJzIiwicmVtYWluaW5nQXJndW1lbnRzIiwiZXZlbnRMaXN0ZW5lcnMiLCJmaW5kRXZlbnRMaXN0ZW5lcnMiLCJmb3JFYWNoIiwiZXZlbnRMaXN0ZW5lciIsImhhbmRsZXJFbGVtZW50IiwiY2FsbCIsImVuYWJsZSIsInJlbW92ZUNsYXNzIiwiZGlzYWJsZSIsImFkZENsYXNzIiwiaXNEaXNhYmxlZCIsImRpc2FibGVkIiwiaGFzQ2xhc3MiLCJpc0RyYWdnaW5nIiwiZHJhZ2dpbmciLCJnZXREaXJlY3Rpb24iLCJkaXJlY3Rpb24iLCJuZXh0U2libGluZ0VsZW1lbnQiLCJnZXROZXh0U2libGluZ0VsZW1lbnQiLCJwcmV2aW91c1NpYmxpbmdFbGVtZW50IiwiZ2V0UHJldmlvdXNTaWJsaW5nRWxlbWVudCIsIm5leHRTaWJsaW5nRWxlbWVudFNpemVhYmxlRWxlbWVudCIsImlzRWxlbWVudFNpemVhYmxlRWxlbWVudCIsInByZXZpb3VzU2libGluZ0VsZW1lbnRTaXplYWJsZUVsZW1lbnQiLCJnZXRTaXplYWJsZUVsZW1lbnQiLCJzaXplYWJsZUVsZW1lbnQiLCJzdGFydERyYWciLCJlc2NhcGVLZXlTdG9wc0RyYWdnaW5nT3B0aW9uUHJlc2VudCIsIkVTQ0FQRV9LRVlfU1RPUFNfRFJBR0dJTkdfT1BUSU9OIiwid2luZG93Iiwib25LZXlEb3duIiwia2V5RG93bkhhbmRsZXIiLCJzdG9wRHJhZyIsIm9mZktleURvd24iLCJtb3VzZVVwSGFuZGxlciIsImV2ZW50IiwicmVzZXRDdXJzb3IiLCJtb3VzZU91dEhhbmRsZXIiLCJrZXlDb2RlIiwiRVNDQVBFX0tFWV9DT0RFIiwiZGlkTW91bnQiLCJwcm9wZXJ0aWVzIiwic3RhcnREcmFnSGFuZGxlciIsIm9uIiwib25Nb3VzZU1vdmUiLCJtb3VzZU1vdmVIYW5kbGVyIiwib25Nb3VzZURvd24iLCJtb3VzZURvd25IYW5kbGVyIiwib25Nb3VzZU92ZXIiLCJtb3VzZU92ZXJIYW5kbGVyIiwib25Nb3VzZU91dCIsIndpbGxVbm1vdW50Iiwib2ZmIiwib2ZmTW91c2VNb3ZlIiwib2ZmTW91c2VEb3duIiwib2ZmTW91c2VPdmVyIiwib2ZmTW91c2VPdXQiLCJpbml0aWFsaXNlIiwic2V0SW5pdGlhbFN0YXRlIiwiZnJvbUNsYXNzIiwiQ2xhc3MiLCJzcGxpdHRlckRpdiIsIkVsZW1lbnQiLCJ0YWdOYW1lIiwiZGVmYXVsdFByb3BlcnRpZXMiLCJjbGFzc05hbWUiLCJpZ25vcmVkUHJvcGVydGllcyIsIndpdGhTdHlsZSIsImVsZW1lbnRTaXplYWJsZUVsZW1lbnQiLCJTaXplYWJsZURpdiIsIlNpemVhYmxlU2VjdGlvbiJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOzs7OztBQUVTLElBQUEsY0FBaUIsa0NBQWpCLGlCQUFpQixFQUFBO0FBRUssSUFBQSxLQUFNLFdBQU4sTUFBTSxDQUFBO0FBRTFCLElBQUEsU0FBaUIsa0NBQWpCLGlCQUFpQixFQUFBO0FBQ2IsSUFBQSxVQUFxQixrQ0FBckIscUJBQXFCLEVBQUE7QUFFckIsSUFBQSxPQUFXLFdBQVgsV0FBVyxDQUFBO0FBQ1AsSUFBQSxVQUFjLFdBQWQsY0FBYyxDQUFBO0FBQ0csSUFBQSxRQUFZLFdBQVosWUFBWSxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
323
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaXYvc3BsaXR0ZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwiZWFzeVwiO1xuaW1wb3J0IHsgZHJhZ01peGlucyB9IGZyb20gXCJlYXN5LWRyYWctYW5kLWRyb3BcIjtcblxuaW1wb3J0IFNpemVhYmxlRGl2IGZyb20gXCIuLi9kaXYvc2l6ZWFibGVcIjtcbmltcG9ydCBTaXplYWJsZVNlY3Rpb24gZnJvbSBcIi4uL3NlY3Rpb24vc2l6ZWFibGVcIjtcblxuaW1wb3J0IHsgcmVzZXRDdXJzb3IgfSBmcm9tIFwiLi4vY3Vyc29yXCI7XG5cbmNsYXNzIFNwbGl0dGVyRGl2IGV4dGVuZHMgRWxlbWVudCB7XG4gIG1vdXNlT3V0SGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICAgIHJlc2V0Q3Vyc29yKCk7XG4gIH1cblxuICBzdG9wRHJhZ0hhbmRsZXIoZHJvcEVsZW1lbnQsIGFib3J0ZWQsIGVsZW1lbnQsIGRvbmUpIHtcbiAgICByZXNldEN1cnNvcigpO1xuXG4gICAgZG9uZSgpO1xuICB9XG5cbiAgZ2V0U2l6ZWFibGVFbGVtZW50KCkge1xuICAgIGxldCBzaXplYWJsZUVsZW1lbnQ7XG5cbiAgICBjb25zdCBuZXh0U2libGluZ0VsZW1lbnQgPSB0aGlzLmdldE5leHRTaWJsaW5nRWxlbWVudCgpLFxuICAgICAgICAgIHByZXZpb3VzU2libGluZ0VsZW1lbnQgPSB0aGlzLmdldFByZXZpb3VzU2libGluZ0VsZW1lbnQoKSxcbiAgICAgICAgICBuZXh0U2libGluZ0VsZW1lbnRTaXplYWJsZUVsZW1lbnQgPSBpc0VsZW1lbnRTaXplYWJsZUVsZW1lbnQobmV4dFNpYmxpbmdFbGVtZW50KSxcbiAgICAgICAgICBwcmV2aW91c1NpYmxpbmdFbGVtZW50U2l6ZWFibGVFbGVtZW50ID0gaXNFbGVtZW50U2l6ZWFibGVFbGVtZW50KHByZXZpb3VzU2libGluZ0VsZW1lbnQpO1xuXG4gICAgaWYgKG5leHRTaWJsaW5nRWxlbWVudFNpemVhYmxlRWxlbWVudCkge1xuICAgICAgc2l6ZWFibGVFbGVtZW50ID0gbmV4dFNpYmxpbmdFbGVtZW50OyAvLy9cbiAgICB9XG5cbiAgICBpZiAocHJldmlvdXNTaWJsaW5nRWxlbWVudFNpemVhYmxlRWxlbWVudCkge1xuICAgICAgc2l6ZWFibGVFbGVtZW50ID0gcHJldmlvdXNTaWJsaW5nRWxlbWVudDsgLy8vXG4gICAgfVxuXG4gICAgcmV0dXJuIHNpemVhYmxlRWxlbWVudDtcbiAgfVxuXG4gIGdldERpcmVjdGlvbigpIHtcbiAgICBsZXQgZGlyZWN0aW9uO1xuXG4gICAgY29uc3QgbmV4dFNpYmxpbmdFbGVtZW50ID0gdGhpcy5nZXROZXh0U2libGluZ0VsZW1lbnQoKSxcbiAgICAgICAgICBwcmV2aW91c1NpYmxpbmdFbGVtZW50ID0gdGhpcy5nZXRQcmV2aW91c1NpYmxpbmdFbGVtZW50KCksXG4gICAgICAgICAgbmV4dFNpYmxpbmdFbGVtZW50U2l6ZWFibGVFbGVtZW50ID0gaXNFbGVtZW50U2l6ZWFibGVFbGVtZW50KG5leHRTaWJsaW5nRWxlbWVudCksXG4gICAgICAgICAgcHJldmlvdXNTaWJsaW5nRWxlbWVudFNpemVhYmxlRWxlbWVudCA9IGlzRWxlbWVudFNpemVhYmxlRWxlbWVudChwcmV2aW91c1NpYmxpbmdFbGVtZW50KTtcblxuICAgIGlmIChuZXh0U2libGluZ0VsZW1lbnRTaXplYWJsZUVsZW1lbnQpIHtcbiAgICAgIGRpcmVjdGlvbiA9ICsxO1xuICAgIH1cblxuICAgIGlmIChwcmV2aW91c1NpYmxpbmdFbGVtZW50U2l6ZWFibGVFbGVtZW50KSB7XG4gICAgICBkaXJlY3Rpb24gPSAtMTtcbiAgICB9XG5cbiAgICByZXR1cm4gZGlyZWN0aW9uO1xuICB9XG5cbiAgZW5hYmxlKCkge1xuICAgIHRoaXMucmVtb3ZlQ2xhc3MoXCJkaXNhYmxlZFwiKTtcbiAgfVxuXG4gIGRpc2FibGUoKSB7XG4gICAgdGhpcy5hZGRDbGFzcyhcImRpc2FibGVkXCIpO1xuICB9XG5cbiAgaXNEaXNhYmxlZCgpIHtcbiAgICBjb25zdCBkaXNhYmxlZCA9IHRoaXMuaGFzQ2xhc3MoXCJkaXNhYmxlZFwiKTtcblxuICAgIHJldHVybiBkaXNhYmxlZDtcbiAgfVxuXG4gIGRpZE1vdW50KCkge1xuICAgIHRoaXMuZW5hYmxlRHJhZygpO1xuXG4gICAgdGhpcy5vbkRyYWcodGhpcy5kcmFnSGFuZGxlciwgdGhpcyk7XG5cbiAgICB0aGlzLm9uU3RvcERyYWcodGhpcy5zdG9wRHJhZ0hhbmRsZXIsIHRoaXMpO1xuXG4gICAgdGhpcy5vblN0YXJ0RHJhZyh0aGlzLnN0YXJ0RHJhZ0hhbmRsZXIsIHRoaXMpO1xuXG4gICAgdGhpcy5vbk1vdXNlT3Zlcih0aGlzLm1vdXNlT3ZlckhhbmRsZXIsIHRoaXMpO1xuXG4gICAgdGhpcy5vbk1vdXNlT3V0KHRoaXMubW91c2VPdXRIYW5kbGVyLCB0aGlzKTtcbiAgfVxuXG4gIHdpbGxVbm1vdW50KCkge1xuICAgIHRoaXMub2ZmTW91c2VPdXQodGhpcy5tb3VzZU91dEhhbmRsZXIsIHRoaXMpO1xuXG4gICAgdGhpcy5vZmZNb3VzZU92ZXIodGhpcy5tb3VzZU92ZXJIYW5kbGVyLCB0aGlzKTtcblxuICAgIHRoaXMub2ZmU3RhcnREcmFnKHRoaXMuc3RhcnREcmFnSGFuZGxlciwgdGhpcyk7XG5cbiAgICB0aGlzLm9mZlN0b3BEcmFnKHRoaXMuc3RvcERyYWdIYW5kbGVyLCB0aGlzKTtcblxuICAgIHRoaXMub2ZmRHJhZyh0aGlzLmRyYWdIYW5kbGVyLCB0aGlzKTtcblxuICAgIHRoaXMuZGlzYWJsZURyYWcoKTtcbiAgfVxuXG4gIGluaXRpYWxpc2UoKSB7XG4gICAgdGhpcy5zZXRJbml0aWFsU3RhdGUoKTtcbiAgfVxuXG4gIHN0YXRpYyB0YWdOYW1lID0gXCJkaXZcIjtcblxuICBzdGF0aWMgaWdub3JlZFByb3BlcnRpZXMgPSBbXG4gICAgXCJvbkRyYWdcIixcbiAgICBcImRpc2FibGVkXCIsXG4gICAgXCJvblN0b3BEcmFnXCIsXG4gICAgXCJvblN0YXJ0RHJhZ1wiXG4gIF07XG5cbiAgc3RhdGljIGRlZmF1bHRQcm9wZXJ0aWVzID0ge1xuICAgIGNsYXNzTmFtZTogXCJzcGxpdHRlclwiXG4gIH07XG5cbiAgc3RhdGljIGZyb21DbGFzcyhDbGFzcywgcHJvcGVydGllcykge1xuICAgIGNvbnN0IHNwbGl0dGVyRGl2ID0gRWxlbWVudC5mcm9tQ2xhc3MoQ2xhc3MsIHByb3BlcnRpZXMpO1xuXG4gICAgcmV0dXJuIHNwbGl0dGVyRGl2O1xuICB9XG59XG5cbk9iamVjdC5hc3NpZ24oU3BsaXR0ZXJEaXYucHJvdG90eXBlLCBkcmFnTWl4aW5zKTtcblxuZXhwb3J0IGRlZmF1bHQgd2l0aFN0eWxlKFNwbGl0dGVyRGl2KWBcblxuICBmbGV4LXNocmluazogMDtcblxuYDtcblxuZnVuY3Rpb24gaXNFbGVtZW50U2l6ZWFibGVFbGVtZW50KGVsZW1lbnQpIHtcbiAgY29uc3QgZWxlbWVudFNpemVhYmxlRWxlbWVudCA9IChlbGVtZW50IGluc3RhbmNlb2YgU2l6ZWFibGVEaXYpIHx8IChlbGVtZW50IGluc3RhbmNlb2YgU2l6ZWFibGVTZWN0aW9uKTtcblxuICByZXR1cm4gZWxlbWVudFNpemVhYmxlRWxlbWVudDtcbn1cbiJdLCJuYW1lcyI6WyJTcGxpdHRlckRpdiIsIm1vdXNlT3V0SGFuZGxlciIsImV2ZW50IiwiZWxlbWVudCIsInJlc2V0Q3Vyc29yIiwic3RvcERyYWdIYW5kbGVyIiwiZHJvcEVsZW1lbnQiLCJhYm9ydGVkIiwiZG9uZSIsImdldFNpemVhYmxlRWxlbWVudCIsInNpemVhYmxlRWxlbWVudCIsIm5leHRTaWJsaW5nRWxlbWVudCIsImdldE5leHRTaWJsaW5nRWxlbWVudCIsInByZXZpb3VzU2libGluZ0VsZW1lbnQiLCJnZXRQcmV2aW91c1NpYmxpbmdFbGVtZW50IiwibmV4dFNpYmxpbmdFbGVtZW50U2l6ZWFibGVFbGVtZW50IiwiaXNFbGVtZW50U2l6ZWFibGVFbGVtZW50IiwicHJldmlvdXNTaWJsaW5nRWxlbWVudFNpemVhYmxlRWxlbWVudCIsImdldERpcmVjdGlvbiIsImRpcmVjdGlvbiIsImVuYWJsZSIsInJlbW92ZUNsYXNzIiwiZGlzYWJsZSIsImFkZENsYXNzIiwiaXNEaXNhYmxlZCIsImRpc2FibGVkIiwiaGFzQ2xhc3MiLCJkaWRNb3VudCIsImVuYWJsZURyYWciLCJvbkRyYWciLCJkcmFnSGFuZGxlciIsIm9uU3RvcERyYWciLCJvblN0YXJ0RHJhZyIsInN0YXJ0RHJhZ0hhbmRsZXIiLCJvbk1vdXNlT3ZlciIsIm1vdXNlT3ZlckhhbmRsZXIiLCJvbk1vdXNlT3V0Iiwid2lsbFVubW91bnQiLCJvZmZNb3VzZU91dCIsIm9mZk1vdXNlT3ZlciIsIm9mZlN0YXJ0RHJhZyIsIm9mZlN0b3BEcmFnIiwib2ZmRHJhZyIsImRpc2FibGVEcmFnIiwiaW5pdGlhbGlzZSIsInNldEluaXRpYWxTdGF0ZSIsImZyb21DbGFzcyIsIkNsYXNzIiwicHJvcGVydGllcyIsInNwbGl0dGVyRGl2IiwiRWxlbWVudCIsInRhZ05hbWUiLCJpZ25vcmVkUHJvcGVydGllcyIsImRlZmF1bHRQcm9wZXJ0aWVzIiwiY2xhc3NOYW1lIiwiT2JqZWN0IiwiYXNzaWduIiwicHJvdG90eXBlIiwiZHJhZ01peGlucyIsIndpdGhTdHlsZSIsImVsZW1lbnRTaXplYWJsZUVsZW1lbnQiLCJTaXplYWJsZURpdiIsIlNpemVhYmxlU2VjdGlvbiJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOzs7OztBQUVTLElBQUEsY0FBaUIsa0NBQWpCLGlCQUFpQixFQUFBO0FBRWYsSUFBQSxLQUFNLFdBQU4sTUFBTSxDQUFBO0FBQ0gsSUFBQSxnQkFBb0IsV0FBcEIsb0JBQW9CLENBQUE7QUFFdkIsSUFBQSxTQUFpQixrQ0FBakIsaUJBQWlCLEVBQUE7QUFDYixJQUFBLFVBQXFCLGtDQUFyQixxQkFBcUIsRUFB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
@@ -106,7 +106,7 @@ function _createSuper(Derived) {
106
106
  }
107
107
  function _templateObject() {
108
108
  var data = _taggedTemplateLiteral([
109
- "\n\n height: 24rem;\n max-height: 40rem;\n\n"
109
+ "\n\n height: 24rem;\n min-height: 12rem;\n\n"
110
110
  ]);
111
111
  _templateObject = function _templateObject() {
112
112
  return data;
@@ -128,4 +128,4 @@ _defineProperty(BottomSizeableDiv, "defaultProperties", {
128
128
  var _default = (0, _easyWithStyle).default(BottomSizeableDiv)(_templateObject());
129
129
  exports.default = _default;
130
130
 
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9leGFtcGxlL2Rpdi9zaXplYWJsZS9ib3R0b20uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IFNpemVhYmxlRGl2IH0gZnJvbSBcIi4uLy4uLy4uL2luZGV4XCI7IC8vL1xuXG5jbGFzcyBCb3R0b21TaXplYWJsZURpdiBleHRlbmRzIFNpemVhYmxlRGl2IHtcbiAgc3RhdGljIGRlZmF1bHRQcm9wZXJ0aWVzID0ge1xuICAgIGNsYXNzTmFtZTogXCJib3R0b21cIlxuICB9O1xufVxuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGUoQm90dG9tU2l6ZWFibGVEaXYpYFxuXG4gIGhlaWdodDogMjRyZW07XG4gIG1heC1oZWlnaHQ6IDQwcmVtO1xuXG5gO1xuIl0sIm5hbWVzIjpbIkJvdHRvbVNpemVhYmxlRGl2IiwiU2l6ZWFibGVEaXYiLCJkZWZhdWx0UHJvcGVydGllcyIsImNsYXNzTmFtZSIsIndpdGhTdHlsZSJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOzs7OztBQUVTLElBQUEsY0FBaUIsa0NBQWpCLGlCQUFpQixFQUFBO0FBRVgsSUFBQSxNQUFnQixXQUFoQixnQkFBZ0IsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUU1QyxJQUFBLEFBQU1BLGlCQUFpQixpQkFNcEIsQUFOSDs7O2FBQU1BLGlCQUFpQjs7Ozs7Q0FJdEIsQ0FKK0JDLE1BQVcsWUFBQSxDQUkxQztBQUhDLGdCQURJRCxpQkFBaUIsRUFDZEUsbUJBQWlCLEVBQUc7SUFDekJDLFNBQVMsRUFBRSxRQUFRO0NBQ3BCLENBQUM7ZUFHV0MsQ0FBQUEsR0FBQUEsY0FBUyxBQUFtQixDQUFBLFFBQW5CLENBQUNKLGlCQUFpQixDQUFDIn0=
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9leGFtcGxlL2Rpdi9zaXplYWJsZS9ib3R0b20uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IFNpemVhYmxlRGl2IH0gZnJvbSBcIi4uLy4uLy4uL2luZGV4XCI7IC8vL1xuXG5jbGFzcyBCb3R0b21TaXplYWJsZURpdiBleHRlbmRzIFNpemVhYmxlRGl2IHtcbiAgc3RhdGljIGRlZmF1bHRQcm9wZXJ0aWVzID0ge1xuICAgIGNsYXNzTmFtZTogXCJib3R0b21cIlxuICB9O1xufVxuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGUoQm90dG9tU2l6ZWFibGVEaXYpYFxuXG4gIGhlaWdodDogMjRyZW07XG4gIG1pbi1oZWlnaHQ6IDEycmVtO1xuXG5gO1xuIl0sIm5hbWVzIjpbIkJvdHRvbVNpemVhYmxlRGl2IiwiU2l6ZWFibGVEaXYiLCJkZWZhdWx0UHJvcGVydGllcyIsImNsYXNzTmFtZSIsIndpdGhTdHlsZSJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOzs7OztBQUVTLElBQUEsY0FBaUIsa0NBQWpCLGlCQUFpQixFQUFBO0FBRVgsSUFBQSxNQUFnQixXQUFoQixnQkFBZ0IsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUU1QyxJQUFBLEFBQU1BLGlCQUFpQixpQkFNcEIsQUFOSDs7O2FBQU1BLGlCQUFpQjs7Ozs7Q0FJdEIsQ0FKK0JDLE1BQVcsWUFBQSxDQUkxQztBQUhDLGdCQURJRCxpQkFBaUIsRUFDZEUsbUJBQWlCLEVBQUc7SUFDekJDLFNBQVMsRUFBRSxRQUFRO0NBQ3BCLENBQUM7ZUFHV0MsQ0FBQUEsR0FBQUEsY0FBUyxBQUFtQixDQUFBLFFBQW5CLENBQUNKLGlCQUFpQixDQUFDIn0=
@@ -106,7 +106,7 @@ function _createSuper(Derived) {
106
106
  }
107
107
  function _templateObject() {
108
108
  var data = _taggedTemplateLiteral([
109
- "\n\n width: 24rem;\n max-width: 48rem;\n\n"
109
+ "\n\n width: 24rem;\n min-width: 12rem;\n max-width: 36rem;\n\n"
110
110
  ]);
111
111
  _templateObject = function _templateObject() {
112
112
  return data;
@@ -128,4 +128,4 @@ _defineProperty(LeftSizeableDiv, "defaultProperties", {
128
128
  var _default = (0, _easyWithStyle).default(LeftSizeableDiv)(_templateObject());
129
129
  exports.default = _default;
130
130
 
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9leGFtcGxlL2Rpdi9zaXplYWJsZS9sZWZ0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgd2l0aFN0eWxlIGZyb20gXCJlYXN5LXdpdGgtc3R5bGVcIjsgIC8vL1xuXG5pbXBvcnQgeyBTaXplYWJsZURpdiB9IGZyb20gXCIuLi8uLi8uLi9pbmRleFwiOyAvLy9cblxuY2xhc3MgTGVmdFNpemVhYmxlRGl2IGV4dGVuZHMgU2l6ZWFibGVEaXYge1xuICBzdGF0aWMgZGVmYXVsdFByb3BlcnRpZXMgPSB7XG4gICAgY2xhc3NOYW1lOiBcImxlZnRcIlxuICB9O1xufVxuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGUoTGVmdFNpemVhYmxlRGl2KWBcblxuICB3aWR0aDogMjRyZW07XG4gIG1heC13aWR0aDogNDhyZW07XG5cbmA7XG4iXSwibmFtZXMiOlsiTGVmdFNpemVhYmxlRGl2IiwiU2l6ZWFibGVEaXYiLCJkZWZhdWx0UHJvcGVydGllcyIsImNsYXNzTmFtZSIsIndpdGhTdHlsZSJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOzs7OztBQUVTLElBQUEsY0FBaUIsa0NBQWpCLGlCQUFpQixFQUFBO0FBRVgsSUFBQSxNQUFnQixXQUFoQixnQkFBZ0IsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUU1QyxJQUFBLEFBQU1BLGVBQWUsaUJBTWxCLEFBTkg7OzthQUFNQSxlQUFlOzs7OztDQUlwQixDQUo2QkMsTUFBVyxZQUFBLENBSXhDO0FBSEMsZ0JBRElELGVBQWUsRUFDWkUsbUJBQWlCLEVBQUc7SUFDekJDLFNBQVMsRUFBRSxNQUFNO0NBQ2xCLENBQUM7ZUFHV0MsQ0FBQUEsR0FBQUEsY0FBUyxBQUFpQixDQUFBLFFBQWpCLENBQUNKLGVBQWUsQ0FBQyJ9
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9leGFtcGxlL2Rpdi9zaXplYWJsZS9sZWZ0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgd2l0aFN0eWxlIGZyb20gXCJlYXN5LXdpdGgtc3R5bGVcIjsgIC8vL1xuXG5pbXBvcnQgeyBTaXplYWJsZURpdiB9IGZyb20gXCIuLi8uLi8uLi9pbmRleFwiOyAvLy9cblxuY2xhc3MgTGVmdFNpemVhYmxlRGl2IGV4dGVuZHMgU2l6ZWFibGVEaXYge1xuICBzdGF0aWMgZGVmYXVsdFByb3BlcnRpZXMgPSB7XG4gICAgY2xhc3NOYW1lOiBcImxlZnRcIlxuICB9O1xufVxuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGUoTGVmdFNpemVhYmxlRGl2KWBcblxuICB3aWR0aDogMjRyZW07XG4gIG1pbi13aWR0aDogMTJyZW07XG4gIG1heC13aWR0aDogMzZyZW07XG5cbmA7XG4iXSwibmFtZXMiOlsiTGVmdFNpemVhYmxlRGl2IiwiU2l6ZWFibGVEaXYiLCJkZWZhdWx0UHJvcGVydGllcyIsImNsYXNzTmFtZSIsIndpdGhTdHlsZSJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOzs7OztBQUVTLElBQUEsY0FBaUIsa0NBQWpCLGlCQUFpQixFQUFBO0FBRVgsSUFBQSxNQUFnQixXQUFoQixnQkFBZ0IsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUU1QyxJQUFBLEFBQU1BLGVBQWUsaUJBTWxCLEFBTkg7OzthQUFNQSxlQUFlOzs7OztDQUlwQixDQUo2QkMsTUFBVyxZQUFBLENBSXhDO0FBSEMsZ0JBRElELGVBQWUsRUFDWkUsbUJBQWlCLEVBQUc7SUFDekJDLFNBQVMsRUFBRSxNQUFNO0NBQ2xCLENBQUM7ZUFHV0MsQ0FBQUEsR0FBQUEsY0FBUyxBQUFpQixDQUFBLFFBQWpCLENBQUNKLGVBQWUsQ0FBQyJ9
@@ -16,20 +16,6 @@ function _classCallCheck(instance, Constructor) {
16
16
  throw new TypeError("Cannot call a class as a function");
17
17
  }
18
18
  }
19
- function _defineProperties(target, props) {
20
- for(var i = 0; i < props.length; i++){
21
- var descriptor = props[i];
22
- descriptor.enumerable = descriptor.enumerable || false;
23
- descriptor.configurable = true;
24
- if ("value" in descriptor) descriptor.writable = true;
25
- Object.defineProperty(target, descriptor.key, descriptor);
26
- }
27
- }
28
- function _createClass(Constructor, protoProps, staticProps) {
29
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
30
- if (staticProps) _defineProperties(Constructor, staticProps);
31
- return Constructor;
32
- }
33
19
  function _defineProperty(obj, key, value) {
34
20
  if (key in obj) {
35
21
  Object.defineProperty(obj, key, {
@@ -43,22 +29,6 @@ function _defineProperty(obj, key, value) {
43
29
  }
44
30
  return obj;
45
31
  }
46
- function _get(target, property, receiver) {
47
- if (typeof Reflect !== "undefined" && Reflect.get) {
48
- _get = Reflect.get;
49
- } else {
50
- _get = function _get(target, property, receiver) {
51
- var base = _superPropBase(target, property);
52
- if (!base) return;
53
- var desc = Object.getOwnPropertyDescriptor(base, property);
54
- if (desc.get) {
55
- return desc.get.call(receiver);
56
- }
57
- return desc.value;
58
- };
59
- }
60
- return _get(target, property, receiver || target);
61
- }
62
32
  function _getPrototypeOf(o) {
63
33
  _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
64
34
  return o.__proto__ || Object.getPrototypeOf(o);
@@ -96,13 +66,6 @@ function _setPrototypeOf(o, p) {
96
66
  };
97
67
  return _setPrototypeOf(o, p);
98
68
  }
99
- function _superPropBase(object, property) {
100
- while(!Object.prototype.hasOwnProperty.call(object, property)){
101
- object = _getPrototypeOf(object);
102
- if (object === null) break;
103
- }
104
- return object;
105
- }
106
69
  function _taggedTemplateLiteral(strings, raw) {
107
70
  if (!raw) {
108
71
  raw = strings.slice(0);
@@ -157,29 +120,6 @@ var MainHorizontalSplitterDiv = /*#__PURE__*/ function(HorizontalSplitterDiv) {
157
120
  _classCallCheck(this, MainHorizontalSplitterDiv);
158
121
  return _super.apply(this, arguments);
159
122
  }
160
- _createClass(MainHorizontalSplitterDiv, [
161
- {
162
- key: "dragHandler",
163
- value: function dragHandler(sizeableDivHeight) {
164
- var bottomLeftDiv = this.properties.bottomLeftDiv, height = sizeableDivHeight; ///
165
- bottomLeftDiv.setHeight(height);
166
- }
167
- },
168
- {
169
- key: "didMount",
170
- value: function didMount() {
171
- _get(_getPrototypeOf(MainHorizontalSplitterDiv.prototype), "didMount", this).call(this);
172
- this.onDrag(this.dragHandler, this);
173
- }
174
- },
175
- {
176
- key: "willUnmount",
177
- value: function willUnmount() {
178
- this.offDrag(this.dragHandler, this);
179
- _get(_getPrototypeOf(MainHorizontalSplitterDiv.prototype), "willUnmount", this).call(this);
180
- }
181
- }
182
- ]);
183
123
  return MainHorizontalSplitterDiv;
184
124
  }(_index.HorizontalSplitterDiv);
185
125
  _defineProperty(MainHorizontalSplitterDiv, "defaultProperties", {
@@ -188,4 +128,4 @@ _defineProperty(MainHorizontalSplitterDiv, "defaultProperties", {
188
128
  var _default = (0, _easyWithStyle).default(MainHorizontalSplitterDiv)(_templateObject());
189
129
  exports.default = _default;
190
130
 
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9leGFtcGxlL2Rpdi9zcGxpdHRlci9ob3Jpem9udGFsL21haW4uanMiLCIuLi9zcmMvY29uc3RhbnRzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIlwidXNlIHN0cmljdFwiO1xuXG5pbXBvcnQgd2l0aFN0eWxlIGZyb20gXCJlYXN5LXdpdGgtc3R5bGVcIjsgIC8vL1xuXG5pbXBvcnQgeyBIb3Jpem9udGFsU3BsaXR0ZXJEaXYgfSBmcm9tIFwiLi4vLi4vLi4vLi4vaW5kZXhcIjsgIC8vL1xuXG5jbGFzcyBNYWluSG9yaXpvbnRhbFNwbGl0dGVyRGl2IGV4dGVuZHMgSG9yaXpvbnRhbFNwbGl0dGVyRGl2IHtcbiAgZHJhZ0hhbmRsZXIoc2l6ZWFibGVEaXZIZWlnaHQpIHtcbiAgICBjb25zdCB7IGJvdHRvbUxlZnREaXYgfSA9IHRoaXMucHJvcGVydGllcyxcbiAgICAgICAgICBoZWlnaHQgPSBzaXplYWJsZURpdkhlaWdodDsgLy8vXG5cbiAgICBib3R0b21MZWZ0RGl2LnNldEhlaWdodChoZWlnaHQpO1xuICB9XG5cbiAgZGlkTW91bnQoKSB7XG4gICAgc3VwZXIuZGlkTW91bnQoKTtcblxuICAgIHRoaXMub25EcmFnKHRoaXMuZHJhZ0hhbmRsZXIsIHRoaXMpO1xuICB9XG5cbiAgd2lsbFVubW91bnQoKSB7XG4gICAgdGhpcy5vZmZEcmFnKHRoaXMuZHJhZ0hhbmRsZXIsIHRoaXMpO1xuXG4gICAgc3VwZXIud2lsbFVubW91bnQoKTtcbiAgfVxuXG4gIHN0YXRpYyBkZWZhdWx0UHJvcGVydGllcyA9IHtcbiAgICBjbGFzc05hbWU6IFwibWFpblwiXG4gIH07XG59XG5cbmV4cG9ydCBkZWZhdWx0IHdpdGhTdHlsZShNYWluSG9yaXpvbnRhbFNwbGl0dGVyRGl2KWBcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcblxuYDtcbiIsIlwidXNlIHN0cmljdFwiO1xuXG5leHBvcnQgY29uc3QgQVVUTyA9IFwiYXV0b1wiO1xuZXhwb3J0IGNvbnN0IENVUlNPUiA9IFwiY3Vyc29yXCI7XG5leHBvcnQgY29uc3QgQ09MX1JFU0laRSA9IFwiY29sLXJlc2l6ZVwiO1xuZXhwb3J0IGNvbnN0IFJPV19SRVNJWkUgPSBcInJvdy1yZXNpemVcIjtcbmV4cG9ydCBjb25zdCBFU0NBUEVfS0VZX0NPREUgPSAyNztcbiJdLCJuYW1lcyI6WyJNYWluSG9yaXpvbnRhbFNwbGl0dGVyRGl2IiwiZHJhZ0hhbmRsZXIiLCJzaXplYWJsZURpdkhlaWdodCIsImJvdHRvbUxlZnREaXYiLCJwcm9wZXJ0aWVzIiwiaGVpZ2h0Iiwic2V0SGVpZ2h0IiwiZGlkTW91bnQiLCJvbkRyYWciLCJ3aWxsVW5tb3VudCIsIm9mZkRyYWciLCJIb3Jpem9udGFsU3BsaXR0ZXJEaXYiLCJkZWZhdWx0UHJvcGVydGllcyIsImNsYXNzTmFtZSIsIndpdGhTdHlsZSJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOzs7OztBQUVTLElBQUEsY0FBaUIsa0NBQWpCLGlCQUFpQixFQUFBO0FBRUQsSUFBQSxNQUFtQixXQUFuQixtQkFBbUIsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFekQsSUFBQSxBQUFNQSx5QkFBeUIsaUJBeUI1QixBQXpCSDs7O2FBQU1BLHlCQUF5Qjs7Ozs7O1lBQzdCQyxHQUFXLEVBQVhBLGFBQVc7bUJBQVhBLFNBQUFBLFdBQVcsQ0FBQ0MsaUJBQWlCLEVBQUU7Z0JBQzdCLElBQU0sQUFBRUMsYUFBYSxHQUFLLElBQUksQ0FBQ0MsVUFBVSxDQUFqQ0QsYUFBYSxBQUFvQixFQUNuQ0UsTUFBTSxHQUFHSCxpQkFBaUIsQUFBQyxFQUFDLEdBQUc7Z0JBRXJDQyxhQUFhLENBQUNHLFNBQVMsQ0FBQ0QsTUFBTSxDQUFDLENBQUM7YUFDakM7OztZQUVERSxHQUFRLEVBQVJBLFVBQVE7bUJBQVJBLFNBQUFBLFFBQVEsR0FBRztnQkFDVCxxQkFURVAseUJBQXlCLGFBU3JCTyxVQUFRLEVBQWQsSUFBSyxDQUFBLFdDZlQsQ0RlcUI7Z0JBRWpCLElBQUksQ0FBQ0MsTUFBTSxDQUFDLElBQUksQ0FBQ1AsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO2FBQ3JDOzs7WUFFRFEsR0FBVyxFQUFYQSxhQUFXO21CQUFYQSxTQUFBQSxXQUFXLEdBQUc7Z0JBQ1osSUFBSSxDQUFDQyxPQUFPLENBQUMsSUFBSSxDQUFDVCxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBRXJDLHFCQWpCRUQseUJBQXlCLGFBaUJyQlMsYUFBVyxFQUFqQixJQUFLLENBQUEsV0N2QlQsQ0R1QndCO2FBQ3JCOzs7O0NBS0YsQ0F2QnVDRSxNQUFxQixzQkFBQSxDQXVCNUQ7QUFIQyxnQkFwQklYLHlCQUF5QixFQW9CdEJZLG1CQUFpQixFQUFHO0lBQ3pCQyxTQUFTLEVBQUUsTUFBTTtDQUNsQixDQUFDO2VBR1dDLENBQUFBLEdBQUFBLGNBQVMsQUFBMkIsQ0FBQSxRQUEzQixDQUFDZCx5QkFBeUIsQ0FBQyJ9
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9leGFtcGxlL2Rpdi9zcGxpdHRlci9ob3Jpem9udGFsL21haW4uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IEhvcml6b250YWxTcGxpdHRlckRpdiB9IGZyb20gXCIuLi8uLi8uLi8uLi9pbmRleFwiOyAgLy8vXG5cbmNsYXNzIE1haW5Ib3Jpem9udGFsU3BsaXR0ZXJEaXYgZXh0ZW5kcyBIb3Jpem9udGFsU3BsaXR0ZXJEaXYge1xuICBzdGF0aWMgZGVmYXVsdFByb3BlcnRpZXMgPSB7XG4gICAgY2xhc3NOYW1lOiBcIm1haW5cIlxuICB9O1xufVxuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGUoTWFpbkhvcml6b250YWxTcGxpdHRlckRpdilgXG5cbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG5cbmA7XG4iXSwibmFtZXMiOlsiTWFpbkhvcml6b250YWxTcGxpdHRlckRpdiIsIkhvcml6b250YWxTcGxpdHRlckRpdiIsImRlZmF1bHRQcm9wZXJ0aWVzIiwiY2xhc3NOYW1lIiwid2l0aFN0eWxlIl0sIm1hcHBpbmdzIjoiQUFBQSxZQUFZLENBQUM7Ozs7O0FBRVMsSUFBQSxjQUFpQixrQ0FBakIsaUJBQWlCLEVBQUE7QUFFRCxJQUFBLE1BQW1CLFdBQW5CLG1CQUFtQixDQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXpELElBQUEsQUFBTUEseUJBQXlCLGlCQU01QixBQU5IOzs7YUFBTUEseUJBQXlCOzs7OztDQUk5QixDQUp1Q0MsTUFBcUIsc0JBQUEsQ0FJNUQ7QUFIQyxnQkFESUQseUJBQXlCLEVBQ3RCRSxtQkFBaUIsRUFBRztJQUN6QkMsU0FBUyxFQUFFLE1BQU07Q0FDbEIsQ0FBQztlQUdXQyxDQUFBQSxHQUFBQSxjQUFTLEFBQTJCLENBQUEsUUFBM0IsQ0FBQ0oseUJBQXlCLENBQUMifQ==
@@ -39,23 +39,22 @@ function _templateObject() {
39
39
  };
40
40
  return data;
41
41
  }
42
- var ESCAPE_KEY_STOPS_DRAGGING_OPTION = _index.options.ESCAPE_KEY_STOPS_DRAGGING_OPTION;
43
42
  var View = function(properties) {
44
- var className = properties.className, bottomLeftDiv = /*#__PURE__*/ React.createElement(_bottomLeft.default, null), _$options = {
45
- ESCAPE_KEY_STOPS_DRAGGING_OPTION: ESCAPE_KEY_STOPS_DRAGGING_OPTION
46
- };
43
+ var className = properties.className, bottomLeftDiv = /*#__PURE__*/ React.createElement(_bottomLeft.default, null), bottomSizeableDiv = /*#__PURE__*/ React.createElement(_bottom.default, null);
44
+ var bottomSizeableDivHeight;
47
45
  return /*#__PURE__*/ React.createElement("div", {
48
46
  className: "".concat(className, " view")
49
- }, /*#__PURE__*/ React.createElement(_index.ColumnsDiv, null, /*#__PURE__*/ React.createElement(_left.default, null, /*#__PURE__*/ React.createElement(_index.RowsDiv, null, /*#__PURE__*/ React.createElement(_yellow.default, null), /*#__PURE__*/ React.createElement(_pseudo.default, null), bottomLeftDiv)), /*#__PURE__*/ React.createElement(_left1.default, {
50
- options: _$options
51
- }), /*#__PURE__*/ React.createElement(_index.ColumnDiv, null, /*#__PURE__*/ React.createElement(_index.RowsDiv, null, /*#__PURE__*/ React.createElement(_index.RowDiv, null, /*#__PURE__*/ React.createElement(_index.ColumnsDiv, null, /*#__PURE__*/ React.createElement(_index.ColumnDiv, null), /*#__PURE__*/ React.createElement(_right1.default, {
52
- options: _$options
53
- }), /*#__PURE__*/ React.createElement(_right.default, null, /*#__PURE__*/ React.createElement(_index.RowsDiv, null, /*#__PURE__*/ React.createElement(_blue.default, null))))), /*#__PURE__*/ React.createElement(_main.default, {
54
- bottomLeftDiv: bottomLeftDiv,
55
- options: _$options
56
- }), /*#__PURE__*/ React.createElement(_bottom.default, null)))));
47
+ }, /*#__PURE__*/ React.createElement(_index.ColumnsDiv, null, /*#__PURE__*/ React.createElement(_left.default, null, /*#__PURE__*/ React.createElement(_index.RowsDiv, null, /*#__PURE__*/ React.createElement(_yellow.default, null), /*#__PURE__*/ React.createElement(_pseudo.default, null), bottomLeftDiv)), /*#__PURE__*/ React.createElement(_left1.default, null), /*#__PURE__*/ React.createElement(_index.ColumnDiv, null, /*#__PURE__*/ React.createElement(_index.RowsDiv, null, /*#__PURE__*/ React.createElement(_index.RowDiv, null, /*#__PURE__*/ React.createElement(_index.ColumnsDiv, null, /*#__PURE__*/ React.createElement(_index.ColumnDiv, null), /*#__PURE__*/ React.createElement(_right1.default, null), /*#__PURE__*/ React.createElement(_right.default, null, /*#__PURE__*/ React.createElement(_index.RowsDiv, null, /*#__PURE__*/ React.createElement(_blue.default, null))))), /*#__PURE__*/ React.createElement(_main.default, {
48
+ onStartDrag: function(element) {
49
+ bottomSizeableDivHeight = bottomSizeableDiv.getHeight();
50
+ },
51
+ onDrag: function(relativeMouseTop, relativeMouseLeft) {
52
+ var height = bottomSizeableDivHeight - relativeMouseTop;
53
+ bottomLeftDiv.setHeight(height);
54
+ }
55
+ }), bottomSizeableDiv))));
57
56
  };
58
57
  var _default = (0, _easyWithStyle).default(View)(_templateObject());
59
58
  exports.default = _default;
60
59
 
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leGFtcGxlL3ZpZXcuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IFJvd0RpdiwgUm93c0RpdiwgQ29sdW1uRGl2LCBDb2x1bW5zRGl2LCBvcHRpb25zIH0gZnJvbSBcIi4uL2luZGV4XCI7IC8vL1xuXG5pbXBvcnQgQmx1ZVJvd0RpdiBmcm9tIFwiLi9kaXYvcm93L2JsdWVcIjtcbmltcG9ydCBZZWxsb3dSb3dEaXYgZnJvbSBcIi4vZGl2L3Jvdy95ZWxsb3dcIjtcbmltcG9ydCBCb3R0b21MZWZ0RGl2IGZyb20gXCIuL2Rpdi9ib3R0b21MZWZ0XCI7XG5pbXBvcnQgTGVmdFNpemVhYmxlRGl2IGZyb20gXCIuL2Rpdi9zaXplYWJsZS9sZWZ0XCI7XG5pbXBvcnQgUmlnaHRTaXplYWJsZURpdiBmcm9tIFwiLi9kaXYvc2l6ZWFibGUvcmlnaHRcIjtcbmltcG9ydCBQc2V1ZG9TcGxpdHRlckRpdiBmcm9tIFwiLi9kaXYvc3BsaXR0ZXIvcHNldWRvXCI7XG5pbXBvcnQgQm90dG9tU2l6ZWFibGVEaXYgZnJvbSBcIi4vZGl2L3NpemVhYmxlL2JvdHRvbVwiO1xuaW1wb3J0IExlZnRWZXJ0aWNhbFNwbGl0dGVyRGl2IGZyb20gXCIuL2Rpdi9zcGxpdHRlci92ZXJ0aWNhbC9sZWZ0XCI7XG5pbXBvcnQgUmlnaHRWZXJ0aWNhbFNwbGl0dGVyRGl2IGZyb20gXCIuL2Rpdi9zcGxpdHRlci92ZXJ0aWNhbC9yaWdodFwiO1xuaW1wb3J0IE1haW5Ib3Jpem9udGFsU3BsaXR0ZXJEaXYgZnJvbSBcIi4vZGl2L3NwbGl0dGVyL2hvcml6b250YWwvbWFpblwiO1xuXG5jb25zdCB7IEVTQ0FQRV9LRVlfU1RPUFNfRFJBR0dJTkdfT1BUSU9OIH0gPSBvcHRpb25zO1xuXG5jb25zdCBWaWV3ID0gKHByb3BlcnRpZXMpID0+IHtcbiAgY29uc3QgeyBjbGFzc05hbWUgfSA9IHByb3BlcnRpZXMsXG4gICAgICAgIGJvdHRvbUxlZnREaXYgPVxuXG4gICAgICAgICAgPEJvdHRvbUxlZnREaXYvPlxuXG4gICAgICAgICxcbiAgICAgICAgb3B0aW9ucyA9IHtcbiAgICAgICAgICBFU0NBUEVfS0VZX1NUT1BTX0RSQUdHSU5HX09QVElPTlxuICAgICAgICB9O1xuXG4gIHJldHVybiAoXG5cbiAgICA8ZGl2IGNsYXNzTmFtZT17YCR7Y2xhc3NOYW1lfSB2aWV3YH0+XG4gICAgICA8Q29sdW1uc0Rpdj5cbiAgICAgICAgPExlZnRTaXplYWJsZURpdj5cbiAgICAgICAgICA8Um93c0Rpdj5cbiAgICAgICAgICAgIDxZZWxsb3dSb3dEaXYvPlxuICAgICAgICAgICAgPFBzZXVkb1NwbGl0dGVyRGl2Lz5cbiAgICAgICAgICAgIHtib3R0b21MZWZ0RGl2fVxuICAgICAgICAgIDwvUm93c0Rpdj5cbiAgICAgICAgPC9MZWZ0U2l6ZWFibGVEaXY+XG4gICAgICAgIDxMZWZ0VmVydGljYWxTcGxpdHRlckRpdiBvcHRpb25zPXtvcHRpb25zfSAvPlxuICAgICAgICA8Q29sdW1uRGl2PlxuICAgICAgICAgIDxSb3dzRGl2PlxuICAgICAgICAgICAgPFJvd0Rpdj5cbiAgICAgICAgICAgICAgPENvbHVtbnNEaXY+XG4gICAgICAgICAgICAgICAgPENvbHVtbkRpdi8+XG4gICAgICAgICAgICAgICAgPFJpZ2h0VmVydGljYWxTcGxpdHRlckRpdiBvcHRpb25zPXtvcHRpb25zfSAvPlxuICAgICAgICAgICAgICAgIDxSaWdodFNpemVhYmxlRGl2PlxuICAgICAgICAgICAgICAgICAgPFJvd3NEaXY+XG4gICAgICAgICAgICAgICAgICAgIDxCbHVlUm93RGl2Lz5cbiAgICAgICAgICAgICAgICAgIDwvUm93c0Rpdj5cbiAgICAgICAgICAgICAgICA8L1JpZ2h0U2l6ZWFibGVEaXY+XG4gICAgICAgICAgICAgIDwvQ29sdW1uc0Rpdj5cbiAgICAgICAgICAgIDwvUm93RGl2PlxuICAgICAgICAgICAgPE1haW5Ib3Jpem9udGFsU3BsaXR0ZXJEaXYgYm90dG9tTGVmdERpdj17Ym90dG9tTGVmdERpdn0gb3B0aW9ucz17b3B0aW9uc30gLz5cbiAgICAgICAgICAgIDxCb3R0b21TaXplYWJsZURpdi8+XG4gICAgICAgICAgPC9Sb3dzRGl2PlxuICAgICAgICA8L0NvbHVtbkRpdj5cbiAgICAgIDwvQ29sdW1uc0Rpdj5cbiAgICA8L2Rpdj5cblxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgd2l0aFN0eWxlKFZpZXcpYFxuXG4gIHdpZHRoOiA2NHJlbTtcbiAgaGVpZ2h0OiA2NHJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgXG5gO1xuIl0sIm5hbWVzIjpbIkVTQ0FQRV9LRVlfU1RPUFNfRFJBR0dJTkdfT1BUSU9OIiwib3B0aW9ucyIsIlZpZXciLCJwcm9wZXJ0aWVzIiwiY2xhc3NOYW1lIiwiYm90dG9tTGVmdERpdiIsIkJvdHRvbUxlZnREaXYiLCJkaXYiLCJDb2x1bW5zRGl2IiwiTGVmdFNpemVhYmxlRGl2IiwiUm93c0RpdiIsIlllbGxvd1Jvd0RpdiIsIlBzZXVkb1NwbGl0dGVyRGl2IiwiTGVmdFZlcnRpY2FsU3BsaXR0ZXJEaXYiLCJDb2x1bW5EaXYiLCJSb3dEaXYiLCJSaWdodFZlcnRpY2FsU3BsaXR0ZXJEaXYiLCJSaWdodFNpemVhYmxlRGl2IiwiQmx1ZVJvd0RpdiIsIk1haW5Ib3Jpem9udGFsU3BsaXR0ZXJEaXYiLCJCb3R0b21TaXplYWJsZURpdiIsIndpdGhTdHlsZSJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOzs7OztBQUVTLElBQUEsY0FBaUIsa0NBQWpCLGlCQUFpQixFQUFBO0FBRXlCLElBQUEsTUFBVSxXQUFWLFVBQVUsQ0FBQTtBQUVuRCxJQUFBLEtBQWdCLGtDQUFoQixnQkFBZ0IsRUFBQTtBQUNkLElBQUEsT0FBa0Isa0NBQWxCLGtCQUFrQixFQUFBO0FBQ2pCLElBQUEsV0FBa0Isa0NBQWxCLGtCQUFrQixFQUFBO0FBQ2hCLElBQUEsS0FBcUIsa0NBQXJCLHFCQUFxQixFQUFBO0FBQ3BCLElBQUEsTUFBc0Isa0NBQXRCLHNCQUFzQixFQUFBO0FBQ3JCLElBQUEsT0FBdUIsa0NBQXZCLHVCQUF1QixFQUFBO0FBQ3ZCLElBQUEsT0FBdUIsa0NBQXZCLHVCQUF1QixFQUFBO0FBQ2pCLElBQUEsTUFBOEIsa0NBQTlCLDhCQUE4QixFQUFBO0FBQzdCLElBQUEsT0FBK0Isa0NBQS9CLCtCQUErQixFQUFBO0FBQzlCLElBQUEsS0FBZ0Msa0NBQWhDLGdDQUFnQyxFQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXRFLElBQU0sQUFBRUEsZ0NBQWdDLEdBQUtDLE1BQU8sUUFBQSxDQUE1Q0QsZ0NBQWdDLEFBQVksQUFBQztBQUVyRCxJQUFNRSxJQUFJLEdBQUcsU0FBQ0MsVUFBVSxFQUFLO0lBQzNCLElBQU0sQUFBRUMsU0FBUyxHQUFLRCxVQUFVLENBQXhCQyxTQUFTLEFBQWUsRUFDMUJDLGFBQWEsaUJBRVgsb0JBQUNDLFdBQWEsUUFBQSxPQUFFLEVBR2xCTCxTQUFPLEdBQUc7UUFDUkQsZ0NBQWdDLEVBQWhDQSxnQ0FBZ0M7S0FDakMsQUFBQztJQUVSLHFCQUVFLG9CQUFDTyxLQUFHO1FBQUNILFNBQVMsRUFBRSxBQUFDLEVBQUEsQ0FBWSxNQUFLLENBQWZBLFNBQVMsRUFBQyxPQUFLLENBQUM7cUJBQ2pDLG9CQUFDSSxNQUFVLFdBQUEsc0JBQ1Qsb0JBQUNDLEtBQWUsUUFBQSxzQkFDZCxvQkFBQ0MsTUFBTyxRQUFBLHNCQUNOLG9CQUFDQyxPQUFZLFFBQUEsT0FBRSxnQkFDZixvQkFBQ0MsT0FBaUIsUUFBQSxPQUFFLEVBQ25CUCxhQUFhLENBQ04sQ0FDTSxnQkFDbEIsb0JBQUNRLE1BQXVCLFFBQUE7UUFBQ1osT0FBTyxFQUFFQSxTQUFPO01BQUksZ0JBQzdDLG9CQUFDYSxNQUFTLFVBQUEsc0JBQ1Isb0JBQUNKLE1BQU8sUUFBQSxzQkFDTixvQkFBQ0ssTUFBTSxPQUFBLHNCQUNMLG9CQUFDUCxNQUFVLFdBQUEsc0JBQ1Qsb0JBQUNNLE1BQVMsVUFBQSxPQUFFLGdCQUNaLG9CQUFDRSxPQUF3QixRQUFBO1FBQUNmLE9BQU8sRUFBRUEsU0FBTztNQUFJLGdCQUM5QyxvQkFBQ2dCLE1BQWdCLFFBQUEsc0JBQ2Ysb0JBQUNQLE1BQU8sUUFBQSxzQkFDTixvQkFBQ1EsS0FBVSxRQUFBLE9BQUUsQ0FDTCxDQUNPLENBQ1IsQ0FDTixnQkFDVCxvQkFBQ0MsS0FBeUIsUUFBQTtRQUFDZCxhQUFhLEVBQUVBLGFBQWE7UUFBRUosT0FBTyxFQUFFQSxTQUFPO01BQUksZ0JBQzdFLG9CQUFDbUIsT0FBaUIsUUFBQSxPQUFFLENBQ1osQ0FDQSxDQUNELENBQ1QsQ0FFTjtDQUNILEFBQUM7ZUFFYUMsQ0FBQUEsR0FBQUEsY0FBUyxBQUFNLENBQUEsUUFBTixDQUFDbkIsSUFBSSxDQUFDIn0=
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9leGFtcGxlL3ZpZXcuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB3aXRoU3R5bGUgZnJvbSBcImVhc3ktd2l0aC1zdHlsZVwiOyAgLy8vXG5cbmltcG9ydCB7IFJvd0RpdiwgUm93c0RpdiwgQ29sdW1uRGl2LCBDb2x1bW5zRGl2IH0gZnJvbSBcIi4uL2luZGV4XCI7IC8vL1xuXG5pbXBvcnQgQmx1ZVJvd0RpdiBmcm9tIFwiLi9kaXYvcm93L2JsdWVcIjtcbmltcG9ydCBZZWxsb3dSb3dEaXYgZnJvbSBcIi4vZGl2L3Jvdy95ZWxsb3dcIjtcbmltcG9ydCBCb3R0b21MZWZ0RGl2IGZyb20gXCIuL2Rpdi9ib3R0b21MZWZ0XCI7XG5pbXBvcnQgTGVmdFNpemVhYmxlRGl2IGZyb20gXCIuL2Rpdi9zaXplYWJsZS9sZWZ0XCI7XG5pbXBvcnQgUmlnaHRTaXplYWJsZURpdiBmcm9tIFwiLi9kaXYvc2l6ZWFibGUvcmlnaHRcIjtcbmltcG9ydCBQc2V1ZG9TcGxpdHRlckRpdiBmcm9tIFwiLi9kaXYvc3BsaXR0ZXIvcHNldWRvXCI7XG5pbXBvcnQgQm90dG9tU2l6ZWFibGVEaXYgZnJvbSBcIi4vZGl2L3NpemVhYmxlL2JvdHRvbVwiO1xuaW1wb3J0IExlZnRWZXJ0aWNhbFNwbGl0dGVyRGl2IGZyb20gXCIuL2Rpdi9zcGxpdHRlci92ZXJ0aWNhbC9sZWZ0XCI7XG5pbXBvcnQgUmlnaHRWZXJ0aWNhbFNwbGl0dGVyRGl2IGZyb20gXCIuL2Rpdi9zcGxpdHRlci92ZXJ0aWNhbC9yaWdodFwiO1xuaW1wb3J0IE1haW5Ib3Jpem9udGFsU3BsaXR0ZXJEaXYgZnJvbSBcIi4vZGl2L3NwbGl0dGVyL2hvcml6b250YWwvbWFpblwiO1xuXG5jb25zdCBWaWV3ID0gKHByb3BlcnRpZXMpID0+IHtcbiAgY29uc3QgeyBjbGFzc05hbWUgfSA9IHByb3BlcnRpZXMsXG4gICAgICAgIGJvdHRvbUxlZnREaXYgPVxuXG4gICAgICAgICAgPEJvdHRvbUxlZnREaXYvPlxuXG4gICAgICAgICxcbiAgICAgICAgYm90dG9tU2l6ZWFibGVEaXYgPVxuXG4gICAgICAgICAgPEJvdHRvbVNpemVhYmxlRGl2Lz5cblxuICAgICAgICA7XG5cbiAgbGV0IGJvdHRvbVNpemVhYmxlRGl2SGVpZ2h0O1xuXG4gIHJldHVybiAoXG5cbiAgICA8ZGl2IGNsYXNzTmFtZT17YCR7Y2xhc3NOYW1lfSB2aWV3YH0+XG4gICAgICA8Q29sdW1uc0Rpdj5cbiAgICAgICAgPExlZnRTaXplYWJsZURpdj5cbiAgICAgICAgICA8Um93c0Rpdj5cbiAgICAgICAgICAgIDxZZWxsb3dSb3dEaXYvPlxuICAgICAgICAgICAgPFBzZXVkb1NwbGl0dGVyRGl2Lz5cbiAgICAgICAgICAgIHtib3R0b21MZWZ0RGl2fVxuICAgICAgICAgIDwvUm93c0Rpdj5cbiAgICAgICAgPC9MZWZ0U2l6ZWFibGVEaXY+XG4gICAgICAgIDxMZWZ0VmVydGljYWxTcGxpdHRlckRpdi8+XG4gICAgICAgIDxDb2x1bW5EaXY+XG4gICAgICAgICAgPFJvd3NEaXY+XG4gICAgICAgICAgICA8Um93RGl2PlxuICAgICAgICAgICAgICA8Q29sdW1uc0Rpdj5cbiAgICAgICAgICAgICAgICA8Q29sdW1uRGl2Lz5cbiAgICAgICAgICAgICAgICA8UmlnaHRWZXJ0aWNhbFNwbGl0dGVyRGl2Lz5cbiAgICAgICAgICAgICAgICA8UmlnaHRTaXplYWJsZURpdj5cbiAgICAgICAgICAgICAgICAgIDxSb3dzRGl2PlxuICAgICAgICAgICAgICAgICAgICA8Qmx1ZVJvd0Rpdi8+XG4gICAgICAgICAgICAgICAgICA8L1Jvd3NEaXY+XG4gICAgICAgICAgICAgICAgPC9SaWdodFNpemVhYmxlRGl2PlxuICAgICAgICAgICAgICA8L0NvbHVtbnNEaXY+XG4gICAgICAgICAgICA8L1Jvd0Rpdj5cbiAgICAgICAgICAgIDxNYWluSG9yaXpvbnRhbFNwbGl0dGVyRGl2IG9uU3RhcnREcmFnPXsoZWxlbWVudCkgPT4ge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbVNpemVhYmxlRGl2SGVpZ2h0ID0gYm90dG9tU2l6ZWFibGVEaXYuZ2V0SGVpZ2h0KCk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkRyYWc9eyhyZWxhdGl2ZU1vdXNlVG9wLCByZWxhdGl2ZU1vdXNlTGVmdCkgPT4ge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGhlaWdodCA9IGJvdHRvbVNpemVhYmxlRGl2SGVpZ2h0IC0gcmVsYXRpdmVNb3VzZVRvcDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3R0b21MZWZ0RGl2LnNldEhlaWdodChoZWlnaHQpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIHtib3R0b21TaXplYWJsZURpdn1cbiAgICAgICAgICA8L1Jvd3NEaXY+XG4gICAgICAgIDwvQ29sdW1uRGl2PlxuICAgICAgPC9Db2x1bW5zRGl2PlxuICAgIDwvZGl2PlxuXG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGUoVmlldylgXG5cbiAgd2lkdGg6IDY0cmVtO1xuICBoZWlnaHQ6IDY0cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBcbmA7XG4iXSwibmFtZXMiOlsiVmlldyIsInByb3BlcnRpZXMiLCJjbGFzc05hbWUiLCJib3R0b21MZWZ0RGl2IiwiQm90dG9tTGVmdERpdiIsImJvdHRvbVNpemVhYmxlRGl2IiwiQm90dG9tU2l6ZWFibGVEaXYiLCJib3R0b21TaXplYWJsZURpdkhlaWdodCIsImRpdiIsIkNvbHVtbnNEaXYiLCJMZWZ0U2l6ZWFibGVEaXYiLCJSb3dzRGl2IiwiWWVsbG93Um93RGl2IiwiUHNldWRvU3BsaXR0ZXJEaXYiLCJMZWZ0VmVydGljYWxTcGxpdHRlckRpdiIsIkNvbHVtbkRpdiIsIlJvd0RpdiIsIlJpZ2h0VmVydGljYWxTcGxpdHRlckRpdiIsIlJpZ2h0U2l6ZWFibGVEaXYiLCJCbHVlUm93RGl2IiwiTWFpbkhvcml6b250YWxTcGxpdHRlckRpdiIsIm9uU3RhcnREcmFnIiwiZWxlbWVudCIsImdldEhlaWdodCIsIm9uRHJhZyIsInJlbGF0aXZlTW91c2VUb3AiLCJyZWxhdGl2ZU1vdXNlTGVmdCIsImhlaWdodCIsInNldEhlaWdodCIsIndpdGhTdHlsZSJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOzs7OztBQUVTLElBQUEsY0FBaUIsa0NBQWpCLGlCQUFpQixFQUFBO0FBRWdCLElBQUEsTUFBVSxXQUFWLFVBQVUsQ0FBQTtBQUUxQyxJQUFBLEtBQWdCLGtDQUFoQixnQkFBZ0IsRUFBQTtBQUNkLElBQUEsT0FBa0Isa0NBQWxCLGtCQUFrQixFQUFBO0FBQ2pCLElBQUEsV0FBa0Isa0NBQWxCLGtCQUFrQixFQUFBO0FBQ2hCLElBQUEsS0FBcUIsa0NBQXJCLHFCQUFxQixFQUFBO0FBQ3BCLElBQUEsTUFBc0Isa0NBQXRCLHNCQUFzQixFQUFBO0FBQ3JCLElBQUEsT0FBdUIsa0NBQXZCLHVCQUF1QixFQUFBO0FBQ3ZCLElBQUEsT0FBdUIsa0NBQXZCLHVCQUF1QixFQUFBO0FBQ2pCLElBQUEsTUFBOEIsa0NBQTlCLDhCQUE4QixFQUFBO0FBQzdCLElBQUEsT0FBK0Isa0NBQS9CLCtCQUErQixFQUFBO0FBQzlCLElBQUEsS0FBZ0Msa0NBQWhDLGdDQUFnQyxFQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXRFLElBQU1BLElBQUksR0FBRyxTQUFDQyxVQUFVLEVBQUs7SUFDM0IsSUFBTSxBQUFFQyxTQUFTLEdBQUtELFVBQVUsQ0FBeEJDLFNBQVMsQUFBZSxFQUMxQkMsYUFBYSxpQkFFWCxvQkFBQ0MsV0FBYSxRQUFBLE9BQUUsRUFHbEJDLGlCQUFpQixpQkFFZixvQkFBQ0MsT0FBaUIsUUFBQSxPQUFFLEFBRXJCO0lBRVAsSUFBSUMsdUJBQXVCLEFBQUM7SUFFNUIscUJBRUUsb0JBQUNDLEtBQUc7UUFBQ04sU0FBUyxFQUFFLEFBQUMsRUFBQSxDQUFZLE1BQUssQ0FBZkEsU0FBUyxFQUFDLE9BQUssQ0FBQztxQkFDakMsb0JBQUNPLE1BQVUsV0FBQSxzQkFDVCxvQkFBQ0MsS0FBZSxRQUFBLHNCQUNkLG9CQUFDQyxNQUFPLFFBQUEsc0JBQ04sb0JBQUNDLE9BQVksUUFBQSxPQUFFLGdCQUNmLG9CQUFDQyxPQUFpQixRQUFBLE9BQUUsRUFDbkJWLGFBQWEsQ0FDTixDQUNNLGdCQUNsQixvQkFBQ1csTUFBdUIsUUFBQSxPQUFFLGdCQUMxQixvQkFBQ0MsTUFBUyxVQUFBLHNCQUNSLG9CQUFDSixNQUFPLFFBQUEsc0JBQ04sb0JBQUNLLE1BQU0sT0FBQSxzQkFDTCxvQkFBQ1AsTUFBVSxXQUFBLHNCQUNULG9CQUFDTSxNQUFTLFVBQUEsT0FBRSxnQkFDWixvQkFBQ0UsT0FBd0IsUUFBQSxPQUFFLGdCQUMzQixvQkFBQ0MsTUFBZ0IsUUFBQSxzQkFDZixvQkFBQ1AsTUFBTyxRQUFBLHNCQUNOLG9CQUFDUSxLQUFVLFFBQUEsT0FBRSxDQUNMLENBQ08sQ0FDUixDQUNOLGdCQUNULG9CQUFDQyxLQUF5QixRQUFBO1FBQUNDLFdBQVcsRUFBRSxTQUFDQyxPQUFPLEVBQUs7WUFFeEJmLHVCQUF1QixHQUFHRixpQkFBaUIsQ0FBQ2tCLFNBQVMsRUFBRSxDQUFDO1NBRXpEO1FBQ0RDLE1BQU0sRUFBRSxTQUFDQyxnQkFBZ0IsRUFBRUMsaUJBQWlCLEVBQUs7WUFFL0MsSUFBTUMsTUFBTSxHQUFHcEIsdUJBQXVCLEdBQUdrQixnQkFBZ0IsQUFBQztZQUUxRHRCLGFBQWEsQ0FBQ3lCLFNBQVMsQ0FBQ0QsTUFBTSxDQUFDLENBQUM7U0FFakM7TUFDMUIsRUFDRHRCLGlCQUFpQixDQUNWLENBQ0EsQ0FDRCxDQUNULENBRU47Q0FDSCxBQUFDO2VBRWF3QixDQUFBQSxHQUFBQSxjQUFTLEFBQU0sQ0FBQSxRQUFOLENBQUM3QixJQUFJLENBQUMifQ==