speechrecorderng 2.25.3 → 2.25.6

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.
Files changed (76) hide show
  1. package/esm2020/lib/audio/audio_display.mjs +7 -32
  2. package/esm2020/lib/audio/audio_player.mjs +7 -25
  3. package/esm2020/lib/audio/impl/wavformat.mjs +1 -1
  4. package/esm2020/lib/audio/playback/player.mjs +4 -4
  5. package/esm2020/lib/audio/ui/audio_canvas_layer_comp.mjs +6 -6
  6. package/esm2020/lib/audio/ui/audio_display_control.mjs +10 -19
  7. package/esm2020/lib/audio/ui/audio_display_scroll_pane.mjs +7 -34
  8. package/esm2020/lib/audio/ui/audiosignal.mjs +6 -19
  9. package/esm2020/lib/audio/ui/container.mjs +7 -44
  10. package/esm2020/lib/audio/ui/livelevel.mjs +6 -33
  11. package/esm2020/lib/audio/ui/scroll_pane_horizontal.mjs +5 -19
  12. package/esm2020/lib/audio/ui/sonagram.mjs +6 -19
  13. package/esm2020/lib/speechrecorder/project/project.service.mjs +3 -3
  14. package/esm2020/lib/speechrecorder/recordings/recordings.service.mjs +3 -3
  15. package/esm2020/lib/speechrecorder/script/script.service.mjs +3 -3
  16. package/esm2020/lib/speechrecorder/session/audiorecorder.mjs +23 -74
  17. package/esm2020/lib/speechrecorder/session/controlpanel.mjs +47 -129
  18. package/esm2020/lib/speechrecorder/session/progress.mjs +9 -53
  19. package/esm2020/lib/speechrecorder/session/prompting.mjs +33 -176
  20. package/esm2020/lib/speechrecorder/session/recorder_combi_pane.mjs +6 -6
  21. package/esm2020/lib/speechrecorder/session/recording_list.mjs +8 -8
  22. package/esm2020/lib/speechrecorder/session/recordingfile/recording-file-meta.component.mjs +9 -13
  23. package/esm2020/lib/speechrecorder/session/recordingfile/recording-file-navi.component.mjs +9 -18
  24. package/esm2020/lib/speechrecorder/session/recordingfile/recording-file-u-i.component.mjs +10 -36
  25. package/esm2020/lib/speechrecorder/session/recordingfile/recording-file-view.component.mjs +10 -37
  26. package/esm2020/lib/speechrecorder/session/recordingfile/recordingfile-service.mjs +3 -3
  27. package/esm2020/lib/speechrecorder/session/session.service.mjs +3 -3
  28. package/esm2020/lib/speechrecorder/session/session_finished_dialog.mjs +4 -4
  29. package/esm2020/lib/speechrecorder/session/sessionmanager.mjs +54 -71
  30. package/esm2020/lib/speechrecorder/session/warning_bar.mjs +6 -29
  31. package/esm2020/lib/speechrecorder/spruploader.mjs +3 -3
  32. package/esm2020/lib/speechrecorder/startstopsignal/ui/simpletrafficlight.mjs +6 -41
  33. package/esm2020/lib/speechrecorderng.component.mjs +7 -18
  34. package/esm2020/lib/speechrecorderng.module.mjs +5 -5
  35. package/esm2020/lib/spr.config.mjs +3 -3
  36. package/esm2020/lib/spr.module.version.mjs +2 -2
  37. package/esm2020/lib/ui/canvas_layer_comp.mjs +3 -3
  38. package/esm2020/lib/ui/message_dialog.mjs +7 -7
  39. package/esm2020/lib/ui/recordingitem_display.mjs +19 -55
  40. package/esm2020/lib/utils/scrollIntoViewToBottom.mjs +3 -3
  41. package/fesm2015/speechrecorderng.mjs +416 -1107
  42. package/fesm2015/speechrecorderng.mjs.map +1 -1
  43. package/fesm2020/speechrecorderng.mjs +416 -1107
  44. package/fesm2020/speechrecorderng.mjs.map +1 -1
  45. package/{speechrecorderng.d.ts → index.d.ts} +0 -0
  46. package/lib/audio/audio_display.d.ts +1 -1
  47. package/lib/audio/audio_player.d.ts +1 -1
  48. package/lib/audio/ui/audio_canvas_layer_comp.d.ts +2 -2
  49. package/lib/audio/ui/audio_display_control.d.ts +1 -1
  50. package/lib/audio/ui/audio_display_scroll_pane.d.ts +1 -1
  51. package/lib/audio/ui/audiosignal.d.ts +1 -1
  52. package/lib/audio/ui/container.d.ts +1 -1
  53. package/lib/audio/ui/livelevel.d.ts +1 -1
  54. package/lib/audio/ui/scroll_pane_horizontal.d.ts +1 -1
  55. package/lib/audio/ui/sonagram.d.ts +1 -1
  56. package/lib/speechrecorder/session/audiorecorder.d.ts +2 -2
  57. package/lib/speechrecorder/session/controlpanel.d.ts +7 -7
  58. package/lib/speechrecorder/session/progress.d.ts +1 -1
  59. package/lib/speechrecorder/session/prompting.d.ts +5 -5
  60. package/lib/speechrecorder/session/recorder_combi_pane.d.ts +1 -1
  61. package/lib/speechrecorder/session/recording_list.d.ts +1 -1
  62. package/lib/speechrecorder/session/recordingfile/recording-file-meta.component.d.ts +1 -1
  63. package/lib/speechrecorder/session/recordingfile/recording-file-navi.component.d.ts +1 -1
  64. package/lib/speechrecorder/session/recordingfile/recording-file-u-i.component.d.ts +1 -1
  65. package/lib/speechrecorder/session/recordingfile/recording-file-view.component.d.ts +1 -1
  66. package/lib/speechrecorder/session/session_finished_dialog.d.ts +1 -1
  67. package/lib/speechrecorder/session/sessionmanager.d.ts +3 -1
  68. package/lib/speechrecorder/session/warning_bar.d.ts +1 -1
  69. package/lib/speechrecorder/startstopsignal/ui/simpletrafficlight.d.ts +1 -1
  70. package/lib/speechrecorderng.component.d.ts +1 -1
  71. package/lib/spr.module.version.d.ts +1 -1
  72. package/lib/ui/canvas_layer_comp.d.ts +1 -1
  73. package/lib/ui/message_dialog.d.ts +1 -1
  74. package/lib/ui/recordingitem_display.d.ts +2 -2
  75. package/lib/utils/scrollIntoViewToBottom.d.ts +1 -1
  76. package/package.json +15 -15
@@ -282,48 +282,21 @@ export class LevelBar {
282
282
  }
283
283
  }
284
284
  }
285
- LevelBar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LevelBar, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
286
- LevelBar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: LevelBar, selector: "audio-levelbar", inputs: { streamingMode: "streamingMode", displayLevelInfos: "displayLevelInfos" }, host: { listeners: { "scroll": "onScroll($event)", "window:resize": "onResize($event)" } }, viewQueries: [{ propertyName: "virtualCanvasRef", first: true, predicate: ["virtualCanvas"], descendants: true, static: true }, { propertyName: "liveLevelCanvasRef", first: true, predicate: ["levelbar"], descendants: true, static: true }, { propertyName: "markerCanvasRef", first: true, predicate: ["markerCanvas"], descendants: true, static: true }], ngImport: i0, template: `
285
+ LevelBar.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LevelBar, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
286
+ LevelBar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: LevelBar, selector: "audio-levelbar", inputs: { streamingMode: "streamingMode", displayLevelInfos: "displayLevelInfos" }, host: { listeners: { "scroll": "onScroll($event)", "window:resize": "onResize($event)" } }, viewQueries: [{ propertyName: "virtualCanvasRef", first: true, predicate: ["virtualCanvas"], descendants: true, static: true }, { propertyName: "liveLevelCanvasRef", first: true, predicate: ["levelbar"], descendants: true, static: true }, { propertyName: "markerCanvasRef", first: true, predicate: ["markerCanvas"], descendants: true, static: true }], ngImport: i0, template: `
287
287
  <div #virtualCanvas>
288
288
  <canvas #levelbar></canvas>
289
289
  <canvas #markerCanvas></canvas>
290
290
  </div>
291
291
  `, isInline: true, styles: [":host{width:100%;background:darkgray;box-sizing:border-box;height:100%;position:relative;overflow-x:scroll;overflow-y:auto}\n", "div{top:0;left:0;width:100%;height:100%;box-sizing:border-box}\n", "canvas{top:0;left:0;width:100%;height:100%;position:absolute}\n"] });
292
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LevelBar, decorators: [{
292
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: LevelBar, decorators: [{
293
293
  type: Component,
294
- args: [{
295
- selector: 'audio-levelbar',
296
- template: `
294
+ args: [{ selector: 'audio-levelbar', template: `
297
295
  <div #virtualCanvas>
298
296
  <canvas #levelbar></canvas>
299
297
  <canvas #markerCanvas></canvas>
300
298
  </div>
301
- `,
302
- styles: [`:host {
303
-
304
- width: 100%;
305
- background: darkgray;
306
- box-sizing: border-box;
307
- height: 100%;
308
- position: relative;
309
- overflow-x: scroll;
310
- overflow-y: auto;
311
- }`, `div {
312
- top: 0;
313
- left: 0;
314
- width: 100%;
315
- height: 100%;
316
-
317
- /*position: absolute;*/
318
- box-sizing: border-box;
319
- }`, `canvas {
320
- top: 0;
321
- left: 0;
322
- width: 100%;
323
- height: 100%;
324
- position: absolute;
325
- }`]
326
- }]
299
+ `, styles: [":host{width:100%;background:darkgray;box-sizing:border-box;height:100%;position:relative;overflow-x:scroll;overflow-y:auto}\n", "div{top:0;left:0;width:100%;height:100%;box-sizing:border-box}\n", "canvas{top:0;left:0;width:100%;height:100%;position:absolute}\n"] }]
327
300
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { virtualCanvasRef: [{
328
301
  type: ViewChild,
329
302
  args: ['virtualCanvas', { static: true }]
@@ -344,4 +317,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
344
317
  type: HostListener,
345
318
  args: ['window:resize', ['$event']]
346
319
  }] } });
347
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGl2ZWxldmVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BlZWNocmVjb3JkZXJuZy9zcmMvbGliL2F1ZGlvL3VpL2xpdmVsZXZlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW1DLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQTs7QUFHckgsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDeEMsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDO0FBQ2xDLE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLFlBQVksR0FBQyxDQUFDLENBQUM7QUFDMUQsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsQ0FBQztBQUM1QixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FBQyxDQUFDO0FBQy9CLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFDLENBQUMsQ0FBQztBQUV0QyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsR0FBRyxDQUFDO0FBc0N4QyxNQUFNLE9BQU8sUUFBUTtJQWlCbkIsWUFBb0IsR0FBZSxFQUFVLGlCQUFvQztRQUE3RCxRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQVUsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQVBqRixjQUFTLEdBQUcsWUFBWSxDQUFDO1FBQ2pCLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLHNCQUFpQixHQUFzQixJQUFJLENBQUM7UUFDNUMsdUJBQWtCLEdBQWMsSUFBSSxDQUFDO1FBRTdDLGdCQUFXLEdBQUcscUJBQXFCLENBQUM7UUFHbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLEtBQUssRUFBaUIsQ0FBQztJQUM3QyxDQUFDO0lB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TixRQUFRO3NCQURQLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIElucHV0LCBWaWV3Q2hpbGR9IGZyb20gXCJAYW5ndWxhci9jb3JlXCJcclxuaW1wb3J0IHtMZXZlbEluZm8sIExldmVsSW5mb3MsIExldmVsTGlzdGVuZXJ9IGZyb20gXCIuLi9kc3AvbGV2ZWxfbWVhc3VyZVwiO1xyXG5cclxuZXhwb3J0IGNvbnN0IERFRkFVTFRfV0FSTl9EQl9MRVZFTCA9IC0yO1xyXG5leHBvcnQgY29uc3QgTUlOX0RCX0xFVkVMID0gLTYwLjA7XHJcbmV4cG9ydCBjb25zdCBDT05TSURFUkVEX1NJTEVOQ0VfREJfTEVWRUwgPSBNSU5fREJfTEVWRUwqMjtcclxuZXhwb3J0IGNvbnN0IExJTkVfV0lEVEggPSAyO1xyXG5leHBvcnQgY29uc3QgTElORV9ESVNUQU5DRSA9IDI7XHJcbmV4cG9ydCBjb25zdCBMRVZFTF9JTkRJQ0FUT1JfSEVJR0hUPTM7XHJcblxyXG5leHBvcnQgY29uc3QgT1ZFUkZMT1dfVEhSRVNIT0xEID0gMC4yNTtcclxuZXhwb3J0IGNvbnN0IE9WRVJGTE9XX0lOQ1JfRkFDVE9SID0gMC41O1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG5cclxuICBzZWxlY3RvcjogJ2F1ZGlvLWxldmVsYmFyJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiAjdmlydHVhbENhbnZhcz5cclxuICAgICAgPGNhbnZhcyAjbGV2ZWxiYXI+PC9jYW52YXM+XHJcbiAgICAgIDxjYW52YXMgI21hcmtlckNhbnZhcz48L2NhbnZhcz5cclxuICAgIDwvZGl2PlxyXG4gIGAsXHJcbiAgc3R5bGVzOiBbYDpob3N0IHtcclxuXHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IGRhcmtncmF5O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgfWAsIGBkaXYge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgIC8qcG9zaXRpb246IGFic29sdXRlOyovXHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIH1gLCBgY2FudmFzIHtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB9YF1cclxuXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMZXZlbEJhciBpbXBsZW1lbnRzIExldmVsTGlzdGVuZXIsQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ3ZpcnR1YWxDYW52YXMnLCB7IHN0YXRpYzogdHJ1ZSB9KSB2aXJ0dWFsQ2FudmFzUmVmITogRWxlbWVudFJlZjtcclxuICB2aXJ0dWFsQ2FudmFzITogSFRNTERpdkVsZW1lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnbGV2ZWxiYXInLCB7IHN0YXRpYzogdHJ1ZSB9KSBsaXZlTGV2ZWxDYW52YXNSZWYhOiBFbGVtZW50UmVmO1xyXG4gIGxpdmVMZXZlbENhbnZhcyE6IEhUTUxDYW52YXNFbGVtZW50O1xyXG4gIEBWaWV3Q2hpbGQoJ21hcmtlckNhbnZhcycsIHsgc3RhdGljOiB0cnVlIH0pIG1hcmtlckNhbnZhc1JlZiE6IEVsZW1lbnRSZWY7XHJcbiAgbWFya2VyQ2FudmFzITogSFRNTENhbnZhc0VsZW1lbnQ7XHJcbiAgY2UhOiBIVE1MRGl2RWxlbWVudDtcclxuICBkYlZhbHVlczogQXJyYXk8QXJyYXk8bnVtYmVyPj47XHJcbiAgcGVha0RiTHZsID0gTUlOX0RCX0xFVkVMO1xyXG4gIHByaXZhdGUgX3N0cmVhbWluZ01vZGUgPSBmYWxzZTtcclxuICBwcml2YXRlIF9zdGF0aWNMZXZlbEluZm9zOiBMZXZlbEluZm9zIHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBfcGxheUZyYW1lUG9zaXRpb246IG51bWJlcnxudWxsPW51bGw7XHJcblxyXG4gIHdhcm5EQkxldmVsID0gREVGQVVMVF9XQVJOX0RCX0xFVkVMO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICAgIHRoaXMuZGJWYWx1ZXMgPSBuZXcgQXJyYXk8QXJyYXk8bnVtYmVyPj4oKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuY2UgPSB0aGlzLnJlZi5uYXRpdmVFbGVtZW50O1xyXG4gICAgdGhpcy5saXZlTGV2ZWxDYW52YXMgPSB0aGlzLmxpdmVMZXZlbENhbnZhc1JlZi5uYXRpdmVFbGVtZW50O1xyXG4gICAgdGhpcy5tYXJrZXJDYW52YXMgPSB0aGlzLm1hcmtlckNhbnZhc1JlZi5uYXRpdmVFbGVtZW50O1xyXG4gICAgdGhpcy5tYXJrZXJDYW52YXMuc3R5bGUuekluZGV4ID0gJzQnO1xyXG4gICAgdGhpcy52aXJ0dWFsQ2FudmFzID0gdGhpcy52aXJ0dWFsQ2FudmFzUmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICB0aGlzLmxheW91dCgpO1xyXG4gICAgdGhpcy5kcmF3QWxsKCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignc2Nyb2xsJywgWyckZXZlbnQnXSlcclxuICBvblNjcm9sbChzZTogRXZlbnQpIHtcclxuICAgIHNldFRpbWVvdXQoKCk9PntcclxuICAgICAgICAgIHRoaXMudXBkYXRlVmlld3BvcnRQb3NpdGlvbigpO1xyXG4gICAgICAgICAgdGhpcy5kcmF3QWxsKCk7XHJcbiAgICAgICAgICB0aGlzLmRyYXdQbGF5UG9zaXRpb24oKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVZpZXdwb3J0UG9zaXRpb24oKXtcclxuICAgIC8vIE1vdmUgY2FudmFzZXMgdG8gdmlzaWJsZSB2aWV3cG9ydCBwb3NpdGlvblxyXG4gICAgbGV0IHZpZXdQb3J0U3R5bGVMZWZ0PXRoaXMuY2Uuc2Nyb2xsTGVmdCArICdweCc7XHJcbiAgICB0aGlzLmxpdmVMZXZlbENhbnZhcy5zdHlsZS5sZWZ0ID0gdmlld1BvcnRTdHlsZUxlZnQ7XHJcbiAgICB0aGlzLm1hcmtlckNhbnZhcy5zdHlsZS5sZWZ0ID0gdmlld1BvcnRTdHlsZUxlZnQ7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCBzdHJlYW1pbmdNb2RlKHN0cmVhbWluZ01vZGU6IGJvb2xlYW4pIHtcclxuICAgIGlmICh0aGlzLl9zdHJlYW1pbmdNb2RlICE9PSBzdHJlYW1pbmdNb2RlKSB7XHJcbiAgICAgIHRoaXMuX3N0cmVhbWluZ01vZGUgPSBzdHJlYW1pbmdNb2RlO1xyXG4gICAgICB0aGlzLnJlc2V0KCk7XHJcbiAgICAgIHRoaXMubGF5b3V0U3RhdGljKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCBkaXNwbGF5TGV2ZWxJbmZvcyhsZXZlbEluZm9zOiBMZXZlbEluZm9zIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xyXG4gICAgaWYgKGxldmVsSW5mb3MpIHtcclxuICAgICAgdGhpcy5fc3RhdGljTGV2ZWxJbmZvcyA9IGxldmVsSW5mb3M7XHJcbiAgICAgIHRoaXMuZGJWYWx1ZXMgPSBsZXZlbEluZm9zLmJ1ZmZlckxldmVsSW5mb3MubWFwKChsaSkgPT4ge1xyXG4gICAgICAgIHJldHVybiBsaS5wb3dlckxldmVsc0RCKClcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLl9zdGF0aWNMZXZlbEluZm9zID1udWxsO1xyXG4gICAgICAgIHRoaXMuZGJWYWx1ZXMgPSBuZXcgQXJyYXk8QXJyYXk8bnVtYmVyPj4oKTtcclxuICAgIH1cclxuICAgIHRoaXMubGF5b3V0U3RhdGljKCk7XHJcbiAgfVxyXG5cclxuICBzZXQgY2hhbm5lbENvdW50KGNoYW5uZWxDb3VudDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnJlc2V0KCk7XHJcbiAgfVxyXG5cclxuICBzZXQgcGxheUZyYW1lUG9zaXRpb24ocGxheUZyYW1lUG9zaXRpb246IG51bWJlcikge1xyXG4gICAgdGhpcy5fcGxheUZyYW1lUG9zaXRpb24gPSBwbGF5RnJhbWVQb3NpdGlvbjtcclxuICAgIHRoaXMuZHJhd1BsYXlQb3NpdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXHJcbiAgb25SZXNpemUoZXZlbnQ6IEV2ZW50KSB7XHJcblxyXG4gICAgdGhpcy5sYXlvdXQoKTtcclxuICAgIHRoaXMuZHJhd0FsbCgpO1xyXG4gIH1cclxuXHJcbiAgbGF5b3V0KCkge1xyXG5cclxuICAgIC8vIHNldCBDYW52YXMgc2l6ZSB0byB2aWV3cG9ydCBzaXplXHJcbiAgICB0aGlzLmxpdmVMZXZlbENhbnZhcy53aWR0aCA9IHRoaXMuY2Uub2Zmc2V0V2lkdGg7XHJcbiAgICB0aGlzLmxpdmVMZXZlbENhbnZhcy5oZWlnaHQgPSB0aGlzLmNlLm9mZnNldEhlaWdodDtcclxuXHJcbiAgICB0aGlzLm1hcmtlckNhbnZhcy53aWR0aCA9IHRoaXMuY2Uub2Zmc2V0V2lkdGg7XHJcbiAgICB0aGlzLm1hcmtlckNhbnZhcy5oZWlnaHQgPSB0aGlzLmNlLm9mZnNldEhlaWdodDtcclxuXHJcbiAgICAvLyBhbmQgbW92ZSB0byB2aWV3cG9ydCBwb3NpdGlvblxyXG4gICAgdGhpcy51cGRhdGVWaWV3cG9ydFBvc2l0aW9uKCk7XHJcblxyXG4gICAgdGhpcy5kcmF3QWxsKCk7XHJcbiAgICB0aGlzLmRyYXdQbGF5UG9zaXRpb24oKTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZShsZXZlbEluZm9zOiBMZXZlbEluZm8pIHtcclxuICAgIGlmICh0aGlzLl9zdHJlYW1pbmdNb2RlKSB7XHJcbiAgICAgIGxldCBkYlZhbHMgPSBsZXZlbEluZm9zLnBvd2VyTGV2ZWxzREIoKTtcclxuICAgICAgbGV0IHBlYWtEQlZhbCA9IGxldmVsSW5mb3MucG93ZXJMZXZlbERCKCk7XHJcbiAgICAgIGlmICh0aGlzLnBlYWtEYkx2bCA8IHBlYWtEQlZhbCkge1xyXG4gICAgICAgIHRoaXMucGVha0RiTHZsID0gcGVha0RCVmFsO1xyXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuZGJWYWx1ZXMucHVzaChkYlZhbHMpO1xyXG4gICAgICBsZXQgaSA9IHRoaXMuZGJWYWx1ZXMubGVuZ3RoIC0gMTtcclxuICAgICAgbGV0IHggPSBpICogKExJTkVfRElTVEFOQ0UgKyBMSU5FX1dJRFRIKTtcclxuICAgICAgdGhpcy5kcmF3UHVzaFZhbHVlKHgsIGRiVmFscyk7XHJcbiAgICAgIHRoaXMuY2hlY2tXaWR0aCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RyZWFtRmluaXNoZWQoKSB7XHJcbiAgICB0aGlzLmxheW91dFN0YXRpYygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsYXlvdXRTdGF0aWMoKSB7XHJcblxyXG4gICAgbGV0IHJlcXVpcmVkV2lkdGggPSBNYXRoLnJvdW5kKHRoaXMuZGJWYWx1ZXMubGVuZ3RoICogKExJTkVfRElTVEFOQ0UgKyBMSU5FX1dJRFRIKSk7XHJcbiAgICBpZiAodGhpcy52aXJ0dWFsQ2FudmFzICYmIHRoaXMuY2UpIHtcclxuXHJcbiAgICAgIHRoaXMudmlydHVhbENhbnZhcy5zdHlsZS53aWR0aCA9IHJlcXVpcmVkV2lkdGggKyAncHgnO1xyXG4gICAgICB0aGlzLmNlLnNjcm9sbExlZnQgPSByZXF1aXJlZFdpZHRoIC0gdGhpcy5jZS5vZmZzZXRXaWR0aDtcclxuICAgICAgdGhpcy5sYXlvdXQoKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNoZWNrV2lkdGgoKSB7XHJcbiAgICBsZXQgcmVxdWlyZWRXaWR0aCA9IHRoaXMuZGJWYWx1ZXMubGVuZ3RoICogKExJTkVfRElTVEFOQ0UgKyBMSU5FX1dJRFRIKTtcclxuICAgIGlmICh0aGlzLnZpcnR1YWxDYW52YXMub2Zmc2V0V2lkdGggLSByZXF1aXJlZFdpZHRoIDwgdGhpcy5jZS5vZmZzZXRXaWR0aCAqIE9WRVJGTE9XX1RIUkVTSE9MRCkge1xyXG4gICAgICBsZXQgbmV3V2lkdGggPSBNYXRoLmZsb29yKHRoaXMudmlydHVhbENhbnZhcy5vZmZzZXRXaWR0aCArICh0aGlzLmNlLm9mZnNldFdpZHRoICogT1ZFUkZMT1dfSU5DUl9GQUNUT1IpKTtcclxuICAgICAgdGhpcy52aXJ0dWFsQ2FudmFzLnN0eWxlLndpZHRoID0gbmV3V2lkdGggKyAncHgnO1xyXG4gICAgICB0aGlzLmNlLnNjcm9sbExlZnQgPSBuZXdXaWR0aCAtIHRoaXMuY2Uub2Zmc2V0V2lkdGg7XHJcblxyXG4gICAgICAgLy8gZG8gbm90IGNhbGwgbGF5b3V0IGhlcmUgaXQgaXMgdHJpZ2dlcmVkIGJ5IHRoZSBzY3JvbGwgZXZlbnRcclxuICAgICAgLy90aGlzLmxheW91dCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVzZXQoKSB7XHJcbiAgICB0aGlzLnBlYWtEYkx2bCA9IE1JTl9EQl9MRVZFTDtcclxuICAgIHRoaXMuZGJWYWx1ZXMgPSBuZXcgQXJyYXk8QXJyYXk8bnVtYmVyPj4oKTtcclxuICAgIHRoaXMubGF5b3V0KCk7XHJcbiAgICB0aGlzLmRyYXdBbGwoKTtcclxuICAgIHRoaXMuZHJhd1BsYXlQb3NpdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBkcmF3TGV2ZWxCYWNrZ3JvdW5kKGc6IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCwgeDogbnVtYmVyLCBoOiBudW1iZXIpe1xyXG4gICAgZy5zdHJva2VTdHlsZSA9ICdibGFjayc7XHJcbiAgICBnLmZpbGxTdHlsZSA9ICdibGFjayc7XHJcbiAgICBnLmZpbGxSZWN0KHgsMCxMSU5FX1dJRFRIK0xJTkVfRElTVEFOQ0UsaClcclxuICB9XHJcblxyXG4gIC8vIHByaXZhdGUgZHJhd0xldmVsTGluZShnOiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQsIHg6IG51bWJlciwgaDogbnVtYmVyLCBkYlZhbDogbnVtYmVyKSB7XHJcbiAgLy8gICAvL3RyYW5zbGF0ZSB0byB2aWV3cG9ydFxyXG4gIC8vICAgbGV0IHhjID0geCAtIHRoaXMuY2Uuc2Nyb2xsTGVmdDtcclxuICAvL1xyXG4gIC8vICAgdGhpcy5kcmF3TGV2ZWxCYWNrZ3JvdW5kKGcseGMsaCk7XHJcbiAgLy8gICBnLmxpbmVXaWR0aCA9IExJTkVfV0lEVEg7XHJcbiAgLy8gICBpZiAoZGJWYWwgPj0gdGhpcy53YXJuREJMZXZlbCkge1xyXG4gIC8vICAgICBnLnN0cm9rZVN0eWxlID0gJ3JlZCc7XHJcbiAgLy8gICAgIGcuZmlsbFN0eWxlID0gJ3JlZCc7XHJcbiAgLy9cclxuICAvLyAgIH0gZWxzZSB7XHJcbiAgLy8gICAgIGcuc3Ryb2tlU3R5bGUgPSAnIzAwYzg1Myc7XHJcbiAgLy8gICAgIGcuZmlsbFN0eWxlID0gJyMwMGM4NTMnO1xyXG4gIC8vICAgfVxyXG4gIC8vICAgZy5iZWdpblBhdGgoKTtcclxuICAvLyAgIGcubW92ZVRvKHhjLCBoKTtcclxuICAvLyAgIGxldCBwVmFsID0gKChkYlZhbCAtIE1JTl9EQl9MRVZFTCkgLyAtTUlOX0RCX0xFVkVMKSAqIGg7XHJcbiAgLy9cclxuICAvLyAgIGcubGluZVRvKHhjLCBoIC0gcFZhbCk7XHJcbiAgLy8gICBnLmNsb3NlUGF0aCgpO1xyXG4gIC8vICAgZy5zdHJva2UoKTtcclxuICAvL1xyXG4gIC8vIH1cclxuXHJcbiAgcHJpdmF0ZSBkcmF3TGV2ZWxMaW5lcyhnOiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQsIHg6IG51bWJlciwgaDogbnVtYmVyLCBkYlZhbHM6IEFycmF5PG51bWJlcj4pIHtcclxuICAgIC8vdHJhbnNsYXRlIHRvIHZpZXdwb3J0XHJcbiAgICBsZXQgeGMgPSB4IC0gdGhpcy5jZS5zY3JvbGxMZWZ0O1xyXG4gICAgdGhpcy5kcmF3TGV2ZWxCYWNrZ3JvdW5kKGcseGMsaCk7XHJcblxyXG4gICAgbGV0IGNoSCA9IE1hdGguZmxvb3IoaCAvIGRiVmFscy5sZW5ndGgpO1xyXG4gICAgZy5saW5lV2lkdGggPSBMSU5FX1dJRFRIO1xyXG4gICAgZm9yIChsZXQgY2ggPSAwOyBjaCA8IGRiVmFscy5sZW5ndGg7IGNoKyspIHtcclxuICAgICAgbGV0IGRiVmFsID0gZGJWYWxzW2NoXTtcclxuXHJcbiAgICAgIGxldCB5ID0gTWF0aC5mbG9vcihjaCAqIGNoSCk7XHJcbiAgICAgIGlmIChkYlZhbCA+PSB0aGlzLndhcm5EQkxldmVsKSB7XHJcbiAgICAgICAgZy5zdHJva2VTdHlsZSA9ICdyZWQnO1xyXG4gICAgICAgIGcuZmlsbFN0eWxlID0gJ3JlZCc7XHJcbiAgICAgIH0gZWxzZSBpZihkYlZhbCA8IENPTlNJREVSRURfU0lMRU5DRV9EQl9MRVZFTCkge1xyXG4gICAgICAgIGcuc3Ryb2tlU3R5bGU9J2dyZXknO1xyXG4gICAgICAgIGcuZmlsbFN0eWxlPSdncmV5J1xyXG4gICAgICB9IGVsc2V7XHJcbiAgICAgICAgICBnLnN0cm9rZVN0eWxlID0gJyMwMGM4NTMnO1xyXG4gICAgICAgICAgZy5maWxsU3R5bGUgPSAnIzAwYzg1MydcclxuICAgICAgfVxyXG4gICAgICBnLmJlZ2luUGF0aCgpO1xyXG4gICAgICBnLm1vdmVUbyh4YywgeSArIGNoSCk7XHJcbiAgICAgIGcubGluZVRvKHhjLCB5ICsgY2hIIC0gTEVWRUxfSU5ESUNBVE9SX0hFSUdIVCk7XHJcbiAgICAgIGxldCBwblZhbD0oKGRiVmFsIC0gTUlOX0RCX0xFVkVMKSAvIC1NSU5fREJfTEVWRUwpO1xyXG4gICAgICBsZXQgbHZsSW5kaWNhdG9yU3BhY2U9TEVWRUxfSU5ESUNBVE9SX0hFSUdIVCtMSU5FX0RJU1RBTkNFO1xyXG4gICAgICBsZXQgbGV2ZWxIPWNoSC1sdmxJbmRpY2F0b3JTcGFjZTtcclxuICAgICAgbGV0IHBWYWwgPSBwblZhbCAqIGxldmVsSDtcclxuICAgICAgaWYocFZhbD5sZXZlbEgtMSl7XHJcbiAgICAgICAgcFZhbD1sZXZlbEgtMVxyXG4gICAgICB9ZWxzZSBpZihwVmFsPDApe1xyXG4gICAgICAgIHBWYWw9MFxyXG4gICAgICB9XHJcbiAgICAgIGcubW92ZVRvKHhjLCB5ICsgY2hIIC0gbHZsSW5kaWNhdG9yU3BhY2UgKTtcclxuICAgICAgZy5saW5lVG8oeGMsIHkgKyBjaEggLSBsdmxJbmRpY2F0b3JTcGFjZSAtIHBWYWwpO1xyXG4gICAgICBnLmNsb3NlUGF0aCgpO1xyXG4gICAgICBnLnN0cm9rZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBkcmF3UHVzaFZhbHVlKHg6IG51bWJlciwgZGJWYWxzOiBBcnJheTxudW1iZXI+KSB7XHJcblxyXG4gICAgaWYgKHRoaXMubGl2ZUxldmVsQ2FudmFzKSB7XHJcbiAgICAgIGxldCBoID0gdGhpcy5saXZlTGV2ZWxDYW52YXMuaGVpZ2h0O1xyXG4gICAgICBsZXQgZyA9IHRoaXMubGl2ZUxldmVsQ2FudmFzLmdldENvbnRleHQoXCIyZFwiKTtcclxuICAgICAgaWYgKGcpIHtcclxuICAgICAgICB0aGlzLmRyYXdMZXZlbExpbmVzKGcsIHgsIGgsIGRiVmFscyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgIGRyYXdBbGwoKSB7XHJcbiAgICBpZiAodGhpcy5saXZlTGV2ZWxDYW52YXMpIHtcclxuICAgICAgbGV0IHcgPSB0aGlzLmxpdmVMZXZlbENhbnZhcy53aWR0aDtcclxuICAgICAgbGV0IGggPSB0aGlzLmxpdmVMZXZlbENhbnZhcy5oZWlnaHQ7XHJcbiAgICAgIGxldCBnID0gdGhpcy5saXZlTGV2ZWxDYW52YXMuZ2V0Q29udGV4dChcIjJkXCIpO1xyXG4gICAgICBpZiAoZykge1xyXG4gICAgICAgIC8vIGNsZWFyIGNhbnZhc1xyXG4gICAgICAgIGcuZmlsbFN0eWxlID0gJ2dyZXknO1xyXG4gICAgICAgIGcuZmlsbFJlY3QoMCwgMCwgdywgaCk7XHJcblxyXG4gICAgICAgIGcubGluZVdpZHRoID0gTElORV9XSURUSDtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuZGJWYWx1ZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgLy8gZHJhdyBvbmx5IHZpZXdwb3J0IHBhcnQ6XHJcblxyXG4gICAgICAgICAgLy8gZHJhdyBmcm9tIHgxIHRvIHgyXHJcbiAgICAgICAgICBsZXQgeDEgPSB0aGlzLmNlLnNjcm9sbExlZnQ7XHJcbiAgICAgICAgICBsZXQgeDIgPSB4MSArIHRoaXMuY2Uub2Zmc2V0V2lkdGg7XHJcblxyXG4gICAgICAgICAgLy8gY29ycmVzcG9uZHMgdG8gdGhpcyBsZXZlbCB2YWx1ZXM6XHJcbiAgICAgICAgICBsZXQgaTEgPSBNYXRoLmZsb29yKHgxIC8gKExJTkVfRElTVEFOQ0UgKyBMSU5FX1dJRFRIKSk7XHJcbiAgICAgICAgICBsZXQgaTIgPSBNYXRoLmNlaWwoeDIgLyAoTElORV9ESVNUQU5DRSArIExJTkVfV0lEVEgpKTtcclxuICAgICAgICAgIC8vIHNvbWUgdmFsdWVzIGFyb3VuZFxyXG4gICAgICAgICAgaTEgLT0gMjtcclxuICAgICAgICAgIGkyICs9IDI7XHJcbiAgICAgICAgICAvLyBsaW1pdHNcclxuICAgICAgICAgIGlmIChpMSA8IDApIHtcclxuICAgICAgICAgICAgaTEgPSAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKGkyID4gdGhpcy5kYlZhbHVlcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgaTIgPSB0aGlzLmRiVmFsdWVzLmxlbmd0aDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB2YXIgYz0wO1xyXG4gICAgICAgICAgZm9yIChsZXQgaSA9IGkxOyBpIDwgaTI7IGkrKykge1xyXG4gICAgICAgICAgICAgIGxldCB4ID0gaSAqIChMSU5FX0RJU1RBTkNFICsgTElORV9XSURUSCk7XHJcbiAgICAgICAgICAgICAgbGV0IGRiVmFscyA9IHRoaXMuZGJWYWx1ZXNbaV07XHJcbiAgICAgICAgICAgICAgaWYgKGRiVmFscykge1xyXG4gICAgICAgICAgICAgICAgICB0aGlzLmRyYXdMZXZlbExpbmVzKGcsIHgsIGgsIGRiVmFscyk7XHJcbiAgICAgICAgICAgICAgICAgIGMrKztcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICBwcml2YXRlIGZyYW1lc1BlclBpeGVsKCk6IG51bWJlciB8IG51bGwge1xyXG4gICAgLy8gb25lIGJ1ZmZlclxyXG4gICAgaWYgKHRoaXMuX3N0YXRpY0xldmVsSW5mb3MpIHtcclxuICAgICAgbGV0IGZyYW1lc1BlckJ1ZmZlciA9IHRoaXMuX3N0YXRpY0xldmVsSW5mb3MuZnJhbWVzUGVyQnVmZmVyKCk7XHJcbiAgICAgIGxldCBwaXhlbHNQZXJCdWZmZXIgPSBMSU5FX0RJU1RBTkNFICsgTElORV9XSURUSDtcclxuXHJcbiAgICAgIHJldHVybiBmcmFtZXNQZXJCdWZmZXIgLyBwaXhlbHNQZXJCdWZmZXI7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG5cclxuICBwcml2YXRlIGRyYXdQbGF5UG9zaXRpb24oKSB7XHJcbiAgICBpZiAodGhpcy5tYXJrZXJDYW52YXMpIHtcclxuICAgICAgbGV0IHcgPSB0aGlzLm1hcmtlckNhbnZhcy53aWR0aDtcclxuICAgICAgbGV0IGggPSB0aGlzLm1hcmtlckNhbnZhcy5oZWlnaHQ7XHJcbiAgICAgIGxldCBnID0gdGhpcy5tYXJrZXJDYW52YXMuZ2V0Q29udGV4dChcIjJkXCIpO1xyXG4gICAgICBpZiAoZykge1xyXG4gICAgICAgIGcuY2xlYXJSZWN0KDAsIDAsIHcsIGgpO1xyXG4gICAgICAgIGxldCBmcmFtZXNQZXJQaXhlbCA9IHRoaXMuZnJhbWVzUGVyUGl4ZWwoKTtcclxuICAgICAgICBpZiAoZnJhbWVzUGVyUGl4ZWwgJiYgdGhpcy5fcGxheUZyYW1lUG9zaXRpb24pIHtcclxuICAgICAgICAgIGxldCB4ID0gdGhpcy5fcGxheUZyYW1lUG9zaXRpb24gLyBmcmFtZXNQZXJQaXhlbDtcclxuXHJcbiAgICAgICAgICAvLyBHZXQgcG9zaXRpb24gaW4gdmlld3BvcnRcclxuICAgICAgICAgIGxldCB4YyA9IHggLSB0aGlzLmNlLnNjcm9sbExlZnQ7XHJcbiAgICAgICAgICAvLyBPbmx5IGRyYXcgaWYgaW5zaWRlIG1hcmtlciAodmlld3BvcnQpIGNhbnZhc1xyXG4gICAgICAgICAgaWYoeGM+PTAgJiYgeGM8PXcpIHtcclxuICAgICAgICAgICAgZy5maWxsU3R5bGUgPSAncmVkJztcclxuICAgICAgICAgICAgZy5zdHJva2VTdHlsZSA9ICdyZWQnO1xyXG4gICAgICAgICAgICBnLmxpbmVXaWR0aCA9IExJTkVfV0lEVEg7XHJcbiAgICAgICAgICAgIGcuYmVnaW5QYXRoKCk7XHJcbiAgICAgICAgICAgIC8vIHBhaW50IG92ZXIgYWxsIGNoYW5uZWxzXHJcbiAgICAgICAgICAgIGcubW92ZVRvKHhjLCAwKTtcclxuICAgICAgICAgICAgZy5saW5lVG8oeGMsIGgpO1xyXG4gICAgICAgICAgICBnLmNsb3NlUGF0aCgpO1xyXG4gICAgICAgICAgICBnLnN0cm9rZSgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG5cclxufVxyXG4iXX0=
320
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGl2ZWxldmVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BlZWNocmVjb3JkZXJuZy9zcmMvbGliL2F1ZGlvL3VpL2xpdmVsZXZlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW1DLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQTs7QUFHckgsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDeEMsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLENBQUMsSUFBSSxDQUFDO0FBQ2xDLE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLFlBQVksR0FBQyxDQUFDLENBQUM7QUFDMUQsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsQ0FBQztBQUM1QixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FBQyxDQUFDO0FBQy9CLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFDLENBQUMsQ0FBQztBQUV0QyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsR0FBRyxDQUFDO0FBc0N4QyxNQUFNLE9BQU8sUUFBUTtJQWlCbkIsWUFBb0IsR0FBZSxFQUFVLGlCQUFvQztRQUE3RCxRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQVUsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQVBqRixjQUFTLEdBQUcsWUFBWSxDQUFDO1FBQ2pCLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLHNCQUFpQixHQUFzQixJQUFJLENBQUM7UUFDNUMsdUJBQWtCLEdBQWMsSUFBSSxDQUFDO1FBRTdDLGdCQUFXLEdBQUcscUJBQXFCLENBQUM7UUFHbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLEtBQUssRUFBaUIsQ0FBQztJQUM3QyxDQUFDO0lB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dG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIFZpZXdDaGlsZH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIlxyXG5pbXBvcnQge0xldmVsSW5mbywgTGV2ZWxJbmZvcywgTGV2ZWxMaXN0ZW5lcn0gZnJvbSBcIi4uL2RzcC9sZXZlbF9tZWFzdXJlXCI7XHJcblxyXG5leHBvcnQgY29uc3QgREVGQVVMVF9XQVJOX0RCX0xFVkVMID0gLTI7XHJcbmV4cG9ydCBjb25zdCBNSU5fREJfTEVWRUwgPSAtNjAuMDtcclxuZXhwb3J0IGNvbnN0IENPTlNJREVSRURfU0lMRU5DRV9EQl9MRVZFTCA9IE1JTl9EQl9MRVZFTCoyO1xyXG5leHBvcnQgY29uc3QgTElORV9XSURUSCA9IDI7XHJcbmV4cG9ydCBjb25zdCBMSU5FX0RJU1RBTkNFID0gMjtcclxuZXhwb3J0IGNvbnN0IExFVkVMX0lORElDQVRPUl9IRUlHSFQ9MztcclxuXHJcbmV4cG9ydCBjb25zdCBPVkVSRkxPV19USFJFU0hPTEQgPSAwLjI1O1xyXG5leHBvcnQgY29uc3QgT1ZFUkZMT1dfSU5DUl9GQUNUT1IgPSAwLjU7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcblxyXG4gIHNlbGVjdG9yOiAnYXVkaW8tbGV2ZWxiYXInLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2ICN2aXJ0dWFsQ2FudmFzPlxyXG4gICAgICA8Y2FudmFzICNsZXZlbGJhcj48L2NhbnZhcz5cclxuICAgICAgPGNhbnZhcyAjbWFya2VyQ2FudmFzPjwvY2FudmFzPlxyXG4gICAgPC9kaXY+XHJcbiAgYCxcclxuICBzdHlsZXM6IFtgOmhvc3Qge1xyXG5cclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogZGFya2dyYXk7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xyXG4gICAgb3ZlcmZsb3cteTogYXV0bztcclxuICB9YCwgYGRpdiB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgLypwb3NpdGlvbjogYWJzb2x1dGU7Ki9cclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgfWAsIGBjYW52YXMge1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIH1gXVxyXG5cclxufSlcclxuZXhwb3J0IGNsYXNzIExldmVsQmFyIGltcGxlbWVudHMgTGV2ZWxMaXN0ZW5lcixBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgQFZpZXdDaGlsZCgndmlydHVhbENhbnZhcycsIHsgc3RhdGljOiB0cnVlIH0pIHZpcnR1YWxDYW52YXNSZWYhOiBFbGVtZW50UmVmO1xyXG4gIHZpcnR1YWxDYW52YXMhOiBIVE1MRGl2RWxlbWVudDtcclxuICBAVmlld0NoaWxkKCdsZXZlbGJhcicsIHsgc3RhdGljOiB0cnVlIH0pIGxpdmVMZXZlbENhbnZhc1JlZiE6IEVsZW1lbnRSZWY7XHJcbiAgbGl2ZUxldmVsQ2FudmFzITogSFRNTENhbnZhc0VsZW1lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnbWFya2VyQ2FudmFzJywgeyBzdGF0aWM6IHRydWUgfSkgbWFya2VyQ2FudmFzUmVmITogRWxlbWVudFJlZjtcclxuICBtYXJrZXJDYW52YXMhOiBIVE1MQ2FudmFzRWxlbWVudDtcclxuICBjZSE6IEhUTUxEaXZFbGVtZW50O1xyXG4gIGRiVmFsdWVzOiBBcnJheTxBcnJheTxudW1iZXI+PjtcclxuICBwZWFrRGJMdmwgPSBNSU5fREJfTEVWRUw7XHJcbiAgcHJpdmF0ZSBfc3RyZWFtaW5nTW9kZSA9IGZhbHNlO1xyXG4gIHByaXZhdGUgX3N0YXRpY0xldmVsSW5mb3M6IExldmVsSW5mb3MgfCBudWxsID0gbnVsbDtcclxuICBwcml2YXRlIF9wbGF5RnJhbWVQb3NpdGlvbjogbnVtYmVyfG51bGw9bnVsbDtcclxuXHJcbiAgd2FybkRCTGV2ZWwgPSBERUZBVUxUX1dBUk5fREJfTEVWRUw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVmOiBFbGVtZW50UmVmLCBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgdGhpcy5kYlZhbHVlcyA9IG5ldyBBcnJheTxBcnJheTxudW1iZXI+PigpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5jZSA9IHRoaXMucmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICB0aGlzLmxpdmVMZXZlbENhbnZhcyA9IHRoaXMubGl2ZUxldmVsQ2FudmFzUmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICB0aGlzLm1hcmtlckNhbnZhcyA9IHRoaXMubWFya2VyQ2FudmFzUmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICB0aGlzLm1hcmtlckNhbnZhcy5zdHlsZS56SW5kZXggPSAnNCc7XHJcbiAgICB0aGlzLnZpcnR1YWxDYW52YXMgPSB0aGlzLnZpcnR1YWxDYW52YXNSZWYubmF0aXZlRWxlbWVudDtcclxuICAgIHRoaXMubGF5b3V0KCk7XHJcbiAgICB0aGlzLmRyYXdBbGwoKTtcclxuICB9XHJcblxyXG5cclxuICBASG9zdExpc3RlbmVyKCdzY3JvbGwnLCBbJyRldmVudCddKVxyXG4gIG9uU2Nyb2xsKHNlOiBFdmVudCkge1xyXG4gICAgc2V0VGltZW91dCgoKT0+e1xyXG4gICAgICAgICAgdGhpcy51cGRhdGVWaWV3cG9ydFBvc2l0aW9uKCk7XHJcbiAgICAgICAgICB0aGlzLmRyYXdBbGwoKTtcclxuICAgICAgICAgIHRoaXMuZHJhd1BsYXlQb3NpdGlvbigpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlVmlld3BvcnRQb3NpdGlvbigpe1xyXG4gICAgLy8gTW92ZSBjYW52YXNlcyB0byB2aXNpYmxlIHZpZXdwb3J0IHBvc2l0aW9uXHJcbiAgICBsZXQgdmlld1BvcnRTdHlsZUxlZnQ9dGhpcy5jZS5zY3JvbGxMZWZ0ICsgJ3B4JztcclxuICAgIHRoaXMubGl2ZUxldmVsQ2FudmFzLnN0eWxlLmxlZnQgPSB2aWV3UG9ydFN0eWxlTGVmdDtcclxuICAgIHRoaXMubWFya2VyQ2FudmFzLnN0eWxlLmxlZnQgPSB2aWV3UG9ydFN0eWxlTGVmdDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IHN0cmVhbWluZ01vZGUoc3RyZWFtaW5nTW9kZTogYm9vbGVhbikge1xyXG4gICAgaWYgKHRoaXMuX3N0cmVhbWluZ01vZGUgIT09IHN0cmVhbWluZ01vZGUpIHtcclxuICAgICAgdGhpcy5fc3RyZWFtaW5nTW9kZSA9IHN0cmVhbWluZ01vZGU7XHJcbiAgICAgIHRoaXMucmVzZXQoKTtcclxuICAgICAgdGhpcy5sYXlvdXRTdGF0aWMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGRpc3BsYXlMZXZlbEluZm9zKGxldmVsSW5mb3M6IExldmVsSW5mb3MgfCBudWxsIHwgdW5kZWZpbmVkKSB7XHJcbiAgICBpZiAobGV2ZWxJbmZvcykge1xyXG4gICAgICB0aGlzLl9zdGF0aWNMZXZlbEluZm9zID0gbGV2ZWxJbmZvcztcclxuICAgICAgdGhpcy5kYlZhbHVlcyA9IGxldmVsSW5mb3MuYnVmZmVyTGV2ZWxJbmZvcy5tYXAoKGxpKSA9PiB7XHJcbiAgICAgICAgcmV0dXJuIGxpLnBvd2VyTGV2ZWxzREIoKVxyXG4gICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuX3N0YXRpY0xldmVsSW5mb3MgPW51bGw7XHJcbiAgICAgICAgdGhpcy5kYlZhbHVlcyA9IG5ldyBBcnJheTxBcnJheTxudW1iZXI+PigpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5sYXlvdXRTdGF0aWMoKTtcclxuICB9XHJcblxyXG4gIHNldCBjaGFubmVsQ291bnQoY2hhbm5lbENvdW50OiBudW1iZXIpIHtcclxuICAgIHRoaXMucmVzZXQoKTtcclxuICB9XHJcblxyXG4gIHNldCBwbGF5RnJhbWVQb3NpdGlvbihwbGF5RnJhbWVQb3NpdGlvbjogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9wbGF5RnJhbWVQb3NpdGlvbiA9IHBsYXlGcmFtZVBvc2l0aW9uO1xyXG4gICAgdGhpcy5kcmF3UGxheVBvc2l0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcclxuICBvblJlc2l6ZShldmVudDogRXZlbnQpIHtcclxuXHJcbiAgICB0aGlzLmxheW91dCgpO1xyXG4gICAgdGhpcy5kcmF3QWxsKCk7XHJcbiAgfVxyXG5cclxuICBsYXlvdXQoKSB7XHJcblxyXG4gICAgLy8gc2V0IENhbnZhcyBzaXplIHRvIHZpZXdwb3J0IHNpemVcclxuICAgIHRoaXMubGl2ZUxldmVsQ2FudmFzLndpZHRoID0gdGhpcy5jZS5vZmZzZXRXaWR0aDtcclxuICAgIHRoaXMubGl2ZUxldmVsQ2FudmFzLmhlaWdodCA9IHRoaXMuY2Uub2Zmc2V0SGVpZ2h0O1xyXG5cclxuICAgIHRoaXMubWFya2VyQ2FudmFzLndpZHRoID0gdGhpcy5jZS5vZmZzZXRXaWR0aDtcclxuICAgIHRoaXMubWFya2VyQ2FudmFzLmhlaWdodCA9IHRoaXMuY2Uub2Zmc2V0SGVpZ2h0O1xyXG5cclxuICAgIC8vIGFuZCBtb3ZlIHRvIHZpZXdwb3J0IHBvc2l0aW9uXHJcbiAgICB0aGlzLnVwZGF0ZVZpZXdwb3J0UG9zaXRpb24oKTtcclxuXHJcbiAgICB0aGlzLmRyYXdBbGwoKTtcclxuICAgIHRoaXMuZHJhd1BsYXlQb3NpdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlKGxldmVsSW5mb3M6IExldmVsSW5mbykge1xyXG4gICAgaWYgKHRoaXMuX3N0cmVhbWluZ01vZGUpIHtcclxuICAgICAgbGV0IGRiVmFscyA9IGxldmVsSW5mb3MucG93ZXJMZXZlbHNEQigpO1xyXG4gICAgICBsZXQgcGVha0RCVmFsID0gbGV2ZWxJbmZvcy5wb3dlckxldmVsREIoKTtcclxuICAgICAgaWYgKHRoaXMucGVha0RiTHZsIDwgcGVha0RCVmFsKSB7XHJcbiAgICAgICAgdGhpcy5wZWFrRGJMdmwgPSBwZWFrREJWYWw7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5kYlZhbHVlcy5wdXNoKGRiVmFscyk7XHJcbiAgICAgIGxldCBpID0gdGhpcy5kYlZhbHVlcy5sZW5ndGggLSAxO1xyXG4gICAgICBsZXQgeCA9IGkgKiAoTElORV9ESVNUQU5DRSArIExJTkVfV0lEVEgpO1xyXG4gICAgICB0aGlzLmRyYXdQdXNoVmFsdWUoeCwgZGJWYWxzKTtcclxuICAgICAgdGhpcy5jaGVja1dpZHRoKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdHJlYW1GaW5pc2hlZCgpIHtcclxuICAgIHRoaXMubGF5b3V0U3RhdGljKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGxheW91dFN0YXRpYygpIHtcclxuXHJcbiAgICBsZXQgcmVxdWlyZWRXaWR0aCA9IE1hdGgucm91bmQodGhpcy5kYlZhbHVlcy5sZW5ndGggKiAoTElORV9ESVNUQU5DRSArIExJTkVfV0lEVEgpKTtcclxuICAgIGlmICh0aGlzLnZpcnR1YWxDYW52YXMgJiYgdGhpcy5jZSkge1xyXG5cclxuICAgICAgdGhpcy52aXJ0dWFsQ2FudmFzLnN0eWxlLndpZHRoID0gcmVxdWlyZWRXaWR0aCArICdweCc7XHJcbiAgICAgIHRoaXMuY2Uuc2Nyb2xsTGVmdCA9IHJlcXVpcmVkV2lkdGggLSB0aGlzLmNlLm9mZnNldFdpZHRoO1xyXG4gICAgICB0aGlzLmxheW91dCgpO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2hlY2tXaWR0aCgpIHtcclxuICAgIGxldCByZXF1aXJlZFdpZHRoID0gdGhpcy5kYlZhbHVlcy5sZW5ndGggKiAoTElORV9ESVNUQU5DRSArIExJTkVfV0lEVEgpO1xyXG4gICAgaWYgKHRoaXMudmlydHVhbENhbnZhcy5vZmZzZXRXaWR0aCAtIHJlcXVpcmVkV2lkdGggPCB0aGlzLmNlLm9mZnNldFdpZHRoICogT1ZFUkZMT1dfVEhSRVNIT0xEKSB7XHJcbiAgICAgIGxldCBuZXdXaWR0aCA9IE1hdGguZmxvb3IodGhpcy52aXJ0dWFsQ2FudmFzLm9mZnNldFdpZHRoICsgKHRoaXMuY2Uub2Zmc2V0V2lkdGggKiBPVkVSRkxPV19JTkNSX0ZBQ1RPUikpO1xyXG4gICAgICB0aGlzLnZpcnR1YWxDYW52YXMuc3R5bGUud2lkdGggPSBuZXdXaWR0aCArICdweCc7XHJcbiAgICAgIHRoaXMuY2Uuc2Nyb2xsTGVmdCA9IG5ld1dpZHRoIC0gdGhpcy5jZS5vZmZzZXRXaWR0aDtcclxuXHJcbiAgICAgICAvLyBkbyBub3QgY2FsbCBsYXlvdXQgaGVyZSBpdCBpcyB0cmlnZ2VyZWQgYnkgdGhlIHNjcm9sbCBldmVudFxyXG4gICAgICAvL3RoaXMubGF5b3V0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXNldCgpIHtcclxuICAgIHRoaXMucGVha0RiTHZsID0gTUlOX0RCX0xFVkVMO1xyXG4gICAgdGhpcy5kYlZhbHVlcyA9IG5ldyBBcnJheTxBcnJheTxudW1iZXI+PigpO1xyXG4gICAgdGhpcy5sYXlvdXQoKTtcclxuICAgIHRoaXMuZHJhd0FsbCgpO1xyXG4gICAgdGhpcy5kcmF3UGxheVBvc2l0aW9uKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGRyYXdMZXZlbEJhY2tncm91bmQoZzogQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELCB4OiBudW1iZXIsIGg6IG51bWJlcil7XHJcbiAgICBnLnN0cm9rZVN0eWxlID0gJ2JsYWNrJztcclxuICAgIGcuZmlsbFN0eWxlID0gJ2JsYWNrJztcclxuICAgIGcuZmlsbFJlY3QoeCwwLExJTkVfV0lEVEgrTElORV9ESVNUQU5DRSxoKVxyXG4gIH1cclxuXHJcbiAgLy8gcHJpdmF0ZSBkcmF3TGV2ZWxMaW5lKGc6IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCwgeDogbnVtYmVyLCBoOiBudW1iZXIsIGRiVmFsOiBudW1iZXIpIHtcclxuICAvLyAgIC8vdHJhbnNsYXRlIHRvIHZpZXdwb3J0XHJcbiAgLy8gICBsZXQgeGMgPSB4IC0gdGhpcy5jZS5zY3JvbGxMZWZ0O1xyXG4gIC8vXHJcbiAgLy8gICB0aGlzLmRyYXdMZXZlbEJhY2tncm91bmQoZyx4YyxoKTtcclxuICAvLyAgIGcubGluZVdpZHRoID0gTElORV9XSURUSDtcclxuICAvLyAgIGlmIChkYlZhbCA+PSB0aGlzLndhcm5EQkxldmVsKSB7XHJcbiAgLy8gICAgIGcuc3Ryb2tlU3R5bGUgPSAncmVkJztcclxuICAvLyAgICAgZy5maWxsU3R5bGUgPSAncmVkJztcclxuICAvL1xyXG4gIC8vICAgfSBlbHNlIHtcclxuICAvLyAgICAgZy5zdHJva2VTdHlsZSA9ICcjMDBjODUzJztcclxuICAvLyAgICAgZy5maWxsU3R5bGUgPSAnIzAwYzg1Myc7XHJcbiAgLy8gICB9XHJcbiAgLy8gICBnLmJlZ2luUGF0aCgpO1xyXG4gIC8vICAgZy5tb3ZlVG8oeGMsIGgpO1xyXG4gIC8vICAgbGV0IHBWYWwgPSAoKGRiVmFsIC0gTUlOX0RCX0xFVkVMKSAvIC1NSU5fREJfTEVWRUwpICogaDtcclxuICAvL1xyXG4gIC8vICAgZy5saW5lVG8oeGMsIGggLSBwVmFsKTtcclxuICAvLyAgIGcuY2xvc2VQYXRoKCk7XHJcbiAgLy8gICBnLnN0cm9rZSgpO1xyXG4gIC8vXHJcbiAgLy8gfVxyXG5cclxuICBwcml2YXRlIGRyYXdMZXZlbExpbmVzKGc6IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCwgeDogbnVtYmVyLCBoOiBudW1iZXIsIGRiVmFsczogQXJyYXk8bnVtYmVyPikge1xyXG4gICAgLy90cmFuc2xhdGUgdG8gdmlld3BvcnRcclxuICAgIGxldCB4YyA9IHggLSB0aGlzLmNlLnNjcm9sbExlZnQ7XHJcbiAgICB0aGlzLmRyYXdMZXZlbEJhY2tncm91bmQoZyx4YyxoKTtcclxuXHJcbiAgICBsZXQgY2hIID0gTWF0aC5mbG9vcihoIC8gZGJWYWxzLmxlbmd0aCk7XHJcbiAgICBnLmxpbmVXaWR0aCA9IExJTkVfV0lEVEg7XHJcbiAgICBmb3IgKGxldCBjaCA9IDA7IGNoIDwgZGJWYWxzLmxlbmd0aDsgY2grKykge1xyXG4gICAgICBsZXQgZGJWYWwgPSBkYlZhbHNbY2hdO1xyXG5cclxuICAgICAgbGV0IHkgPSBNYXRoLmZsb29yKGNoICogY2hIKTtcclxuICAgICAgaWYgKGRiVmFsID49IHRoaXMud2FybkRCTGV2ZWwpIHtcclxuICAgICAgICBnLnN0cm9rZVN0eWxlID0gJ3JlZCc7XHJcbiAgICAgICAgZy5maWxsU3R5bGUgPSAncmVkJztcclxuICAgICAgfSBlbHNlIGlmKGRiVmFsIDwgQ09OU0lERVJFRF9TSUxFTkNFX0RCX0xFVkVMKSB7XHJcbiAgICAgICAgZy5zdHJva2VTdHlsZT0nZ3JleSc7XHJcbiAgICAgICAgZy5maWxsU3R5bGU9J2dyZXknXHJcbiAgICAgIH0gZWxzZXtcclxuICAgICAgICAgIGcuc3Ryb2tlU3R5bGUgPSAnIzAwYzg1Myc7XHJcbiAgICAgICAgICBnLmZpbGxTdHlsZSA9ICcjMDBjODUzJ1xyXG4gICAgICB9XHJcbiAgICAgIGcuYmVnaW5QYXRoKCk7XHJcbiAgICAgIGcubW92ZVRvKHhjLCB5ICsgY2hIKTtcclxuICAgICAgZy5saW5lVG8oeGMsIHkgKyBjaEggLSBMRVZFTF9JTkRJQ0FUT1JfSEVJR0hUKTtcclxuICAgICAgbGV0IHBuVmFsPSgoZGJWYWwgLSBNSU5fREJfTEVWRUwpIC8gLU1JTl9EQl9MRVZFTCk7XHJcbiAgICAgIGxldCBsdmxJbmRpY2F0b3JTcGFjZT1MRVZFTF9JTkRJQ0FUT1JfSEVJR0hUK0xJTkVfRElTVEFOQ0U7XHJcbiAgICAgIGxldCBsZXZlbEg9Y2hILWx2bEluZGljYXRvclNwYWNlO1xyXG4gICAgICBsZXQgcFZhbCA9IHBuVmFsICogbGV2ZWxIO1xyXG4gICAgICBpZihwVmFsPmxldmVsSC0xKXtcclxuICAgICAgICBwVmFsPWxldmVsSC0xXHJcbiAgICAgIH1lbHNlIGlmKHBWYWw8MCl7XHJcbiAgICAgICAgcFZhbD0wXHJcbiAgICAgIH1cclxuICAgICAgZy5tb3ZlVG8oeGMsIHkgKyBjaEggLSBsdmxJbmRpY2F0b3JTcGFjZSApO1xyXG4gICAgICBnLmxpbmVUbyh4YywgeSArIGNoSCAtIGx2bEluZGljYXRvclNwYWNlIC0gcFZhbCk7XHJcbiAgICAgIGcuY2xvc2VQYXRoKCk7XHJcbiAgICAgIGcuc3Ryb2tlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGRyYXdQdXNoVmFsdWUoeDogbnVtYmVyLCBkYlZhbHM6IEFycmF5PG51bWJlcj4pIHtcclxuXHJcbiAgICBpZiAodGhpcy5saXZlTGV2ZWxDYW52YXMpIHtcclxuICAgICAgbGV0IGggPSB0aGlzLmxpdmVMZXZlbENhbnZhcy5oZWlnaHQ7XHJcbiAgICAgIGxldCBnID0gdGhpcy5saXZlTGV2ZWxDYW52YXMuZ2V0Q29udGV4dChcIjJkXCIpO1xyXG4gICAgICBpZiAoZykge1xyXG4gICAgICAgIHRoaXMuZHJhd0xldmVsTGluZXMoZywgeCwgaCwgZGJWYWxzKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSAgZHJhd0FsbCgpIHtcclxuICAgIGlmICh0aGlzLmxpdmVMZXZlbENhbnZhcykge1xyXG4gICAgICBsZXQgdyA9IHRoaXMubGl2ZUxldmVsQ2FudmFzLndpZHRoO1xyXG4gICAgICBsZXQgaCA9IHRoaXMubGl2ZUxldmVsQ2FudmFzLmhlaWdodDtcclxuICAgICAgbGV0IGcgPSB0aGlzLmxpdmVMZXZlbENhbnZhcy5nZXRDb250ZXh0KFwiMmRcIik7XHJcbiAgICAgIGlmIChnKSB7XHJcbiAgICAgICAgLy8gY2xlYXIgY2FudmFzXHJcbiAgICAgICAgZy5maWxsU3R5bGUgPSAnZ3JleSc7XHJcbiAgICAgICAgZy5maWxsUmVjdCgwLCAwLCB3LCBoKTtcclxuXHJcbiAgICAgICAgZy5saW5lV2lkdGggPSBMSU5FX1dJRFRIO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5kYlZhbHVlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAvLyBkcmF3IG9ubHkgdmlld3BvcnQgcGFydDpcclxuXHJcbiAgICAgICAgICAvLyBkcmF3IGZyb20geDEgdG8geDJcclxuICAgICAgICAgIGxldCB4MSA9IHRoaXMuY2Uuc2Nyb2xsTGVmdDtcclxuICAgICAgICAgIGxldCB4MiA9IHgxICsgdGhpcy5jZS5vZmZzZXRXaWR0aDtcclxuXHJcbiAgICAgICAgICAvLyBjb3JyZXNwb25kcyB0byB0aGlzIGxldmVsIHZhbHVlczpcclxuICAgICAgICAgIGxldCBpMSA9IE1hdGguZmxvb3IoeDEgLyAoTElORV9ESVNUQU5DRSArIExJTkVfV0lEVEgpKTtcclxuICAgICAgICAgIGxldCBpMiA9IE1hdGguY2VpbCh4MiAvIChMSU5FX0RJU1RBTkNFICsgTElORV9XSURUSCkpO1xyXG4gICAgICAgICAgLy8gc29tZSB2YWx1ZXMgYXJvdW5kXHJcbiAgICAgICAgICBpMSAtPSAyO1xyXG4gICAgICAgICAgaTIgKz0gMjtcclxuICAgICAgICAgIC8vIGxpbWl0c1xyXG4gICAgICAgICAgaWYgKGkxIDwgMCkge1xyXG4gICAgICAgICAgICBpMSA9IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAoaTIgPiB0aGlzLmRiVmFsdWVzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICBpMiA9IHRoaXMuZGJWYWx1ZXMubGVuZ3RoO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIHZhciBjPTA7XHJcbiAgICAgICAgICBmb3IgKGxldCBpID0gaTE7IGkgPCBpMjsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgbGV0IHggPSBpICogKExJTkVfRElTVEFOQ0UgKyBMSU5FX1dJRFRIKTtcclxuICAgICAgICAgICAgICBsZXQgZGJWYWxzID0gdGhpcy5kYlZhbHVlc1tpXTtcclxuICAgICAgICAgICAgICBpZiAoZGJWYWxzKSB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZHJhd0xldmVsTGluZXMoZywgeCwgaCwgZGJWYWxzKTtcclxuICAgICAgICAgICAgICAgICAgYysrO1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIHByaXZhdGUgZnJhbWVzUGVyUGl4ZWwoKTogbnVtYmVyIHwgbnVsbCB7XHJcbiAgICAvLyBvbmUgYnVmZmVyXHJcbiAgICBpZiAodGhpcy5fc3RhdGljTGV2ZWxJbmZvcykge1xyXG4gICAgICBsZXQgZnJhbWVzUGVyQnVmZmVyID0gdGhpcy5fc3RhdGljTGV2ZWxJbmZvcy5mcmFtZXNQZXJCdWZmZXIoKTtcclxuICAgICAgbGV0IHBpeGVsc1BlckJ1ZmZlciA9IExJTkVfRElTVEFOQ0UgKyBMSU5FX1dJRFRIO1xyXG5cclxuICAgICAgcmV0dXJuIGZyYW1lc1BlckJ1ZmZlciAvIHBpeGVsc1BlckJ1ZmZlcjtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcblxyXG4gIHByaXZhdGUgZHJhd1BsYXlQb3NpdGlvbigpIHtcclxuICAgIGlmICh0aGlzLm1hcmtlckNhbnZhcykge1xyXG4gICAgICBsZXQgdyA9IHRoaXMubWFya2VyQ2FudmFzLndpZHRoO1xyXG4gICAgICBsZXQgaCA9IHRoaXMubWFya2VyQ2FudmFzLmhlaWdodDtcclxuICAgICAgbGV0IGcgPSB0aGlzLm1hcmtlckNhbnZhcy5nZXRDb250ZXh0KFwiMmRcIik7XHJcbiAgICAgIGlmIChnKSB7XHJcbiAgICAgICAgZy5jbGVhclJlY3QoMCwgMCwgdywgaCk7XHJcbiAgICAgICAgbGV0IGZyYW1lc1BlclBpeGVsID0gdGhpcy5mcmFtZXNQZXJQaXhlbCgpO1xyXG4gICAgICAgIGlmIChmcmFtZXNQZXJQaXhlbCAmJiB0aGlzLl9wbGF5RnJhbWVQb3NpdGlvbikge1xyXG4gICAgICAgICAgbGV0IHggPSB0aGlzLl9wbGF5RnJhbWVQb3NpdGlvbiAvIGZyYW1lc1BlclBpeGVsO1xyXG5cclxuICAgICAgICAgIC8vIEdldCBwb3NpdGlvbiBpbiB2aWV3cG9ydFxyXG4gICAgICAgICAgbGV0IHhjID0geCAtIHRoaXMuY2Uuc2Nyb2xsTGVmdDtcclxuICAgICAgICAgIC8vIE9ubHkgZHJhdyBpZiBpbnNpZGUgbWFya2VyICh2aWV3cG9ydCkgY2FudmFzXHJcbiAgICAgICAgICBpZih4Yz49MCAmJiB4Yzw9dykge1xyXG4gICAgICAgICAgICBnLmZpbGxTdHlsZSA9ICdyZWQnO1xyXG4gICAgICAgICAgICBnLnN0cm9rZVN0eWxlID0gJ3JlZCc7XHJcbiAgICAgICAgICAgIGcubGluZVdpZHRoID0gTElORV9XSURUSDtcclxuICAgICAgICAgICAgZy5iZWdpblBhdGgoKTtcclxuICAgICAgICAgICAgLy8gcGFpbnQgb3ZlciBhbGwgY2hhbm5lbHNcclxuICAgICAgICAgICAgZy5tb3ZlVG8oeGMsIDApO1xyXG4gICAgICAgICAgICBnLmxpbmVUbyh4YywgaCk7XHJcbiAgICAgICAgICAgIGcuY2xvc2VQYXRoKCk7XHJcbiAgICAgICAgICAgIGcuc3Ryb2tlKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcblxyXG59XHJcbiJdfQ==
@@ -2,24 +2,10 @@ import { Component } from "@angular/core";
2
2
  import * as i0 from "@angular/core";
3
3
  export class ScrollPaneHorizontal {
4
4
  }
5
- ScrollPaneHorizontal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ScrollPaneHorizontal, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
- ScrollPaneHorizontal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ScrollPaneHorizontal, selector: "scroll-pane-horizontal", ngImport: i0, template: '', isInline: true, styles: [":host{width:100%;background:darkgray;box-sizing:border-box;height:100%;position:relative;overflow-x:scroll;overflow-y:auto}\n"] });
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ScrollPaneHorizontal, decorators: [{
5
+ ScrollPaneHorizontal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ScrollPaneHorizontal, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ ScrollPaneHorizontal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: ScrollPaneHorizontal, selector: "scroll-pane-horizontal", ngImport: i0, template: '', isInline: true, styles: [":host{width:100%;background:darkgray;box-sizing:border-box;height:100%;position:relative;overflow-x:scroll;overflow-y:auto}\n"] });
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ScrollPaneHorizontal, decorators: [{
8
8
  type: Component,
9
- args: [{
10
- selector: 'scroll-pane-horizontal',
11
- template: '',
12
- styles: [
13
- `:host {
14
- width: 100%;
15
- background: darkgray;
16
- box-sizing: border-box;
17
- height: 100%;
18
- position: relative;
19
- overflow-x: scroll;
20
- overflow-y: auto;
21
- }`
22
- ]
23
- }]
9
+ args: [{ selector: 'scroll-pane-horizontal', template: '', styles: [":host{width:100%;background:darkgray;box-sizing:border-box;height:100%;position:relative;overflow-x:scroll;overflow-y:auto}\n"] }]
24
10
  }] });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsX3BhbmVfaG9yaXpvbnRhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NwZWVjaHJlY29yZGVybmcvc3JjL2xpYi9hdWRpby91aS9zY3JvbGxfcGFuZV9ob3Jpem9udGFsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7O0FBa0J4QyxNQUFNLE9BQU8sb0JBQW9COztrSEFBcEIsb0JBQW9CO3NHQUFwQixvQkFBb0IsOERBYnJCLEVBQUU7NEZBYUQsb0JBQW9CO2tCQWhCaEMsU0FBUzttQkFBQztvQkFFVCxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxRQUFRLEVBQUUsRUFBRTtvQkFDWixNQUFNLEVBQUU7d0JBQ047Ozs7Ozs7O01BUUU7cUJBQUM7aUJBRU4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuQENvbXBvbmVudCh7XG5cbiAgc2VsZWN0b3I6ICdzY3JvbGwtcGFuZS1ob3Jpem9udGFsJyxcbiAgdGVtcGxhdGU6ICcnLFxuICBzdHlsZXM6IFtcbiAgICBgOmhvc3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiBkYXJrZ3JheTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIH1gXVxuXG59KVxuZXhwb3J0IGNsYXNzIFNjcm9sbFBhbmVIb3Jpem9udGFse1xuXG59XG4iXX0=
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsX3BhbmVfaG9yaXpvbnRhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NwZWVjaHJlY29yZGVybmcvc3JjL2xpYi9hdWRpby91aS9zY3JvbGxfcGFuZV9ob3Jpem9udGFsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7O0FBa0J4QyxNQUFNLE9BQU8sb0JBQW9COztrSEFBcEIsb0JBQW9CO3NHQUFwQixvQkFBb0IsOERBYnJCLEVBQUU7NEZBYUQsb0JBQW9CO2tCQWhCaEMsU0FBUzsrQkFFRSx3QkFBd0IsWUFDeEIsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5AQ29tcG9uZW50KHtcblxuICBzZWxlY3RvcjogJ3Njcm9sbC1wYW5lLWhvcml6b250YWwnLFxuICB0ZW1wbGF0ZTogJycsXG4gIHN0eWxlczogW1xuICAgIGA6aG9zdCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IGRhcmtncmF5O1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgfWBdXG5cbn0pXG5leHBvcnQgY2xhc3MgU2Nyb2xsUGFuZUhvcml6b250YWx7XG5cbn1cbiJdfQ==