speechrecorderng 2.25.6 → 2.25.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/audio/audio_display.mjs +6 -6
- package/esm2020/lib/audio/audio_player.mjs +6 -6
- package/esm2020/lib/audio/format.mjs +1 -1
- package/esm2020/lib/audio/ui/audio_canvas_layer_comp.mjs +7 -7
- package/esm2020/lib/audio/ui/audio_display_control.mjs +4 -4
- package/esm2020/lib/audio/ui/audio_display_scroll_pane.mjs +4 -4
- package/esm2020/lib/audio/ui/audiosignal.mjs +4 -4
- package/esm2020/lib/audio/ui/container.mjs +4 -4
- package/esm2020/lib/audio/ui/livelevel.mjs +4 -4
- package/esm2020/lib/audio/ui/scroll_pane_horizontal.mjs +4 -4
- package/esm2020/lib/audio/ui/sonagram.mjs +4 -4
- package/esm2020/lib/dsp/utils.mjs +1 -1
- package/esm2020/lib/io/BinaryWriter.mjs +1 -1
- package/esm2020/lib/math/complex.mjs +1 -1
- package/esm2020/lib/math/dft.mjs +1 -1
- package/esm2020/lib/math/utils.mjs +1 -1
- package/esm2020/lib/speechrecorder/project/project.service.mjs +4 -4
- package/esm2020/lib/speechrecorder/recordings/recordings.service.mjs +4 -4
- package/esm2020/lib/speechrecorder/script/script.service.mjs +4 -4
- package/esm2020/lib/speechrecorder/session/audiorecorder.mjs +82 -77
- package/esm2020/lib/speechrecorder/session/basicrecorder.mjs +10 -5
- package/esm2020/lib/speechrecorder/session/controlpanel.mjs +67 -54
- package/esm2020/lib/speechrecorder/session/progress.mjs +4 -4
- package/esm2020/lib/speechrecorder/session/prompting.mjs +33 -29
- package/esm2020/lib/speechrecorder/session/recorder_combi_pane.mjs +15 -12
- package/esm2020/lib/speechrecorder/session/recording_list.mjs +4 -4
- package/esm2020/lib/speechrecorder/session/recordingfile/recording-file-meta.component.mjs +4 -4
- package/esm2020/lib/speechrecorder/session/recordingfile/recording-file-navi.component.mjs +12 -12
- package/esm2020/lib/speechrecorder/session/recordingfile/recording-file-u-i.component.mjs +4 -4
- package/esm2020/lib/speechrecorder/session/recordingfile/recording-file-view.component.mjs +7 -6
- package/esm2020/lib/speechrecorder/session/recordingfile/recordingfile-service.mjs +4 -4
- package/esm2020/lib/speechrecorder/session/session.service.mjs +4 -4
- package/esm2020/lib/speechrecorder/session/session_finished_dialog.mjs +4 -4
- package/esm2020/lib/speechrecorder/session/sessionmanager.mjs +76 -72
- package/esm2020/lib/speechrecorder/session/warning_bar.mjs +4 -4
- package/esm2020/lib/speechrecorder/spruploader.mjs +4 -4
- package/esm2020/lib/speechrecorder/startstopsignal/startstopsignal.mjs +1 -1
- package/esm2020/lib/speechrecorder/startstopsignal/ui/simpletrafficlight.mjs +4 -4
- package/esm2020/lib/speechrecorderng.component.mjs +4 -4
- package/esm2020/lib/speechrecorderng.module.mjs +8 -8
- package/esm2020/lib/spr.config.mjs +4 -4
- package/esm2020/lib/spr.module.version.mjs +2 -2
- package/esm2020/lib/ui/canvas_layer_comp.mjs +4 -4
- package/esm2020/lib/ui/message_dialog.mjs +4 -4
- package/esm2020/lib/ui/recordingitem_display.mjs +31 -27
- package/esm2020/lib/ui/responsive_component.mjs +24 -0
- package/esm2020/lib/utils/css_utils.mjs +1 -1
- package/esm2020/lib/utils/scrollIntoViewToBottom.mjs +4 -4
- package/fesm2015/speechrecorderng.mjs +401 -345
- package/fesm2015/speechrecorderng.mjs.map +1 -1
- package/fesm2020/speechrecorderng.mjs +401 -345
- package/fesm2020/speechrecorderng.mjs.map +1 -1
- package/lib/speechrecorder/session/audiorecorder.d.ts +6 -4
- package/lib/speechrecorder/session/basicrecorder.d.ts +8 -3
- package/lib/speechrecorder/session/controlpanel.d.ts +9 -3
- package/lib/speechrecorder/session/prompting.d.ts +5 -1
- package/lib/speechrecorder/session/recorder_combi_pane.d.ts +5 -2
- package/lib/speechrecorder/session/recordingfile/recording-file-view.component.d.ts +1 -1
- package/lib/speechrecorder/session/sessionmanager.d.ts +6 -6
- package/lib/speechrecorderng.module.d.ts +17 -18
- package/lib/spr.module.version.d.ts +1 -1
- package/lib/ui/recordingitem_display.d.ts +8 -4
- package/lib/ui/responsive_component.d.ts +9 -0
- package/package.json +1 -1
|
@@ -65,8 +65,8 @@ export class RecordingList {
|
|
|
65
65
|
return str;
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
|
-
RecordingList.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
69
|
-
RecordingList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.
|
|
68
|
+
RecordingList.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RecordingList, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
69
|
+
RecordingList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RecordingList, selector: "app-recordinglist", inputs: { selectDisabled: "selectDisabled", selectedRecordingFile: "selectedRecordingFile" }, outputs: { selectedRecordingFileChanged: "selectedRecordingFileChanged" }, ngImport: i0, template: `
|
|
70
70
|
<mat-card>
|
|
71
71
|
<mat-card-header>
|
|
72
72
|
<h2>Recording list</h2>
|
|
@@ -96,7 +96,7 @@ RecordingList.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version:
|
|
|
96
96
|
</mat-card>
|
|
97
97
|
|
|
98
98
|
`, isInline: true, styles: [".monospaced{font-family:monospace}.mat-cell,.mat-header-cell{padding-left:5px;padding-right:5px}.mat-card,.mat-card-header,.mat-card-content{width:auto}.flexForm{display:flex;flex-direction:column;width:auto}\n", ":host{position:relative;margin:0;padding:0;background:lightgrey;width:100%;flex:1;overflow-y:auto;min-height:0px}\n", ".selected{font-weight:700}\n"], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "component", type: i3.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i3.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "component", type: i4.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i4.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i4.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i4.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i4.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i4.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i4.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i4.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i4.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i4.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i5.ScrollIntoViewDirective, selector: "[scrollIntoViewToBottom]", inputs: ["scrollIntoViewToBottom"] }, { kind: "pipe", type: i6.DatePipe, name: "date" }] });
|
|
99
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
99
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RecordingList, decorators: [{
|
|
100
100
|
type: Component,
|
|
101
101
|
args: [{ selector: 'app-recordinglist', template: `
|
|
102
102
|
<mat-card>
|
|
@@ -135,4 +135,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
135
135
|
}], selectedRecordingFile: [{
|
|
136
136
|
type: Input
|
|
137
137
|
}] } });
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkaW5nX2xpc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGVlY2hyZWNvcmRlcm5nL3NyYy9saWIvc3BlZWNocmVjb3JkZXIvc2Vzc2lvbi9yZWNvcmRpbmdfbGlzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVwRixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDN0MsT0FBTyxFQUFXLGtCQUFrQixFQUFDLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7O0FBNkRyRSxNQUFNLE9BQU8sYUFBYTtJQVV4QjtRQVRRLGtCQUFhLEdBQXNCLElBQUksS0FBSyxFQUFpQixDQUFDO1FBR3RFLDBEQUEwRDtRQUMxRCxTQUFJLEdBQUMsQ0FBQyxPQUFPLEVBQUMsYUFBYSxFQUFDLFFBQVEsRUFBQyxRQUFRLENBQUMsQ0FBQztRQUN0QyxtQkFBYyxHQUFTLEtBQUssQ0FBQztRQUM1QixpQ0FBNEIsR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztRQUNsRSwwQkFBcUIsR0FBb0IsSUFBSSxDQUFDO1FBR3JELElBQUksQ0FBQyx1QkFBdUIsR0FBQyxJQUFJLGtCQUFrQixFQUFpQixDQUFDO0lBQ3ZFLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxlQUFlO1FBQ3JCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQy9CLElBQUksR0FBRyxHQUFRLENBQUMsQ0FBQztZQUNqQixJQUFJLEVBQUUsR0FBVyxJQUFJLENBQUM7WUFDdEIsSUFBSSxFQUFFLEdBQVcsSUFBSSxDQUFDO1lBQ3RCLElBQUcsQ0FBQyxDQUFDLGlCQUFpQixJQUFJLENBQUMsQ0FBQyxpQkFBaUIsRUFBQztnQkFDNUMsRUFBRSxHQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQTtnQkFDdEIsRUFBRSxHQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQTthQUN2QjtpQkFBSyxJQUFHLENBQUMsQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBQztnQkFDdEMsRUFBRSxHQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDM0IsRUFBRSxHQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUM1QjtpQkFBSyxJQUFHLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRTtnQkFDekIsRUFBRSxHQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDcEIsRUFBRSxHQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNyQjtZQUNELElBQUcsRUFBRSxLQUFHLElBQUksSUFBSSxFQUFFLEtBQUcsSUFBSSxFQUFDO2dCQUN4QixHQUFHLEdBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQzthQUMvQjtZQUNELE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxHQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQUksQ0FBQyxFQUFnQjtRQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELG1CQUFtQixDQUFDLEVBQWdCO1FBQ2xDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNqQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2pEO0lBQ0gsQ0FBQztJQUVELG1CQUFtQixDQUFDLEVBQWdCO1FBQ2xDLElBQUksR0FBRyxHQUFDLFVBQVUsQ0FBQztRQUNuQixJQUFHLEVBQUUsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRTtZQUM5QixHQUFHLEdBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDcEU7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7OzJHQTlEVSxhQUFhOytGQUFiLGFBQWEsa09BdERkOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTZCVDs0RkF5QlUsYUFBYTtrQkExRHpCLFNBQVM7K0JBRUUsbUJBQW1CLFlBRW5COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTZCVDswRUErQlEsY0FBYztzQkFBdEIsS0FBSztnQkFDSSw0QkFBNEI7c0JBQXJDLE1BQU07Z0JBQ0UscUJBQXFCO3NCQUE3QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtSZWNvcmRpbmdGaWxlLCBTcHJSZWNvcmRpbmdGaWxlfSBmcm9tIFwiLi4vcmVjb3JkaW5nXCI7XHJcbmltcG9ydCB7TWVkaWFVdGlsc30gZnJvbSBcIi4uLy4uL21lZGlhL3V0aWxzXCI7XHJcbmltcG9ydCB7TWF0VGFibGUsIE1hdFRhYmxlRGF0YVNvdXJjZX0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3RhYmxlXCI7XHJcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cclxuICBzZWxlY3RvcjogJ2FwcC1yZWNvcmRpbmdsaXN0JyxcclxuXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxtYXQtY2FyZD5cclxuICAgICAgICA8bWF0LWNhcmQtaGVhZGVyPlxyXG4gICAgICAgICAgPGgyPlJlY29yZGluZyBsaXN0PC9oMj5cclxuICAgICAgICA8L21hdC1jYXJkLWhlYWRlcj5cclxuICAgICAgPG1hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICA8dGFibGUgbWF0LXRhYmxlIFtkYXRhU291cmNlXT1cInJlY29yZGluZ0xpc3REYXRhU291cmNlXCIgY2xhc3M9XCJtYXQtZWxldmF0aW9uLXowXCI+XHJcbiAgICAgIDx0ciBtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPVwiY29scztzdGlja3k6dHJ1ZVwiPjwvdHI+XHJcbiAgICAgIDx0ciBtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgZWxlbWVudDsgY29sdW1uczogY29scztcIiBbc2Nyb2xsSW50b1ZpZXdUb0JvdHRvbV09XCJlbGVtZW50LnV1aWQ9PT1zZWxlY3RlZFJlY29yZGluZ0ZpbGU/LnV1aWRcIj48L3RyPlxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImluZGV4XCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBtYXQtaGVhZGVyPiM8L3RoPlxyXG4gICAgICAgIDx0ZCBtYXQtY2VsbCBjbGFzcz1cIm1vbm9zcGFjZWRcIiAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50O2xldCBpID0gaW5kZXhcIj57e3JlY29yZGluZ0xpc3REYXRhU291cmNlLmRhdGEubGVuZ3RoLWl9fTwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cInN0YXJ0ZWREYXRlXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBtYXQtaGVhZGVyPlN0YXJ0ZWQ8L3RoPlxyXG4gICAgICAgIDx0ZCBtYXQtY2VsbCBjbGFzcz1cIm1vbm9zcGFjZWRcIiAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+e3tlbGVtZW50LnN0YXJ0ZWREYXRlIHwgZGF0ZTonWVlZWS1NTS1kZCBISDptbTpzcyd9fTwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImxlbmd0aFwiPlxyXG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgbWF0LWhlYWRlcj5MZW5ndGg8L3RoPlxyXG4gICAgICAgIDx0ZCBtYXQtY2VsbCBjbGFzcz1cIm1vbm9zcGFjZWRcIiAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+e3tsZW5ndGhUaW1lRm9ybWF0dGVkKGVsZW1lbnQpfX08L3RkPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJhY3Rpb25cIj5cclxuICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPkFjdGlvbjwvdGg+XHJcbiAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIj48YnV0dG9uIG1hdC1zdHJva2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwic2VsZWN0UmVjb3JkaW5nRmlsZShlbGVtZW50KVwiIFtkaXNhYmxlZF09XCJzZWxlY3REaXNhYmxlZCB8fCBlbGVtZW50LnV1aWQ9PT1zZWxlY3RlZFJlY29yZGluZ0ZpbGU/LnV1aWRcIj48bWF0LWljb24+ZWRpdF9hdHRyaWJ1dGVzPC9tYXQtaWNvbj4gU2VsZWN0PC9idXR0b24+PC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L3RhYmxlPlxyXG4gICAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICA8L21hdC1jYXJkPlxyXG5cclxuICBgLFxyXG4gIHN0eWxlczogW2A6aG9zdCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYmFja2dyb3VuZDogbGlnaHRncmV5O1xyXG4gICAgd2lkdGg6IDEwMCU7IC8qIHVzZSBhbGwgaG9yaXpvbnRhbCBhdmFpbGFibGUgc3BhY2UgKi9cclxuICAgIGZsZXg6IDE7IC8qIC4uLiBhbmQgZmlsbCByZXN0IG9mIHZlcnRpY2FsIGF2YWlsYWJsZSBzcGFjZSAob3RoZXIgY29tcG9uZW50cyBoYXZlIGZsZXggMCkgKi9cclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcblxyXG4gICAgLyogV29ya2Fyb3VuZCBmb3IgRmlyZWZveFxyXG4gICAgSWYgdGhlIHByb2dyZXNzIHRhYmxlIGdldHMgbG9uZyAoc2NyaXB0IHdpdGggbWFueSBpdGVtcykgRkYgaW5jcmVhc2VzIHRoZSBoZWlnaHQgb2YgdGhlIG92ZXJmbG93IHByb2dyZXNzQ29udGFpbmVyIGFuZFxyXG4gICAgdGhlIHdob2xlIGFwcCBkb2VzIG5vdCBmaXQgaW50byB0aGUgcGFnZSBhbnltb3JlLiBUaGUgYXBwIG92ZXJmbG93cyBhbmQgc2hvd3MgYSB2ZXJ0aWNhbCBzY3JvbGxiYXIgZm9yIHRoZSB3aG9sZSBhcHAuXHJcbiAgICBTZWUgaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8yODYzNjgzMi9maXJlZm94LW92ZXJmbG93LXktbm90LXdvcmtpbmctd2l0aC1uZXN0ZWQtZmxleGJveFxyXG4gICAgKi9cclxuICAgIG1pbi1oZWlnaHQ6IDBweDtcclxuXHJcbiAgfWAsYFxyXG4gICAgLnNlbGVjdGVke1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIH1cclxuICBgXSxcclxuICBzdHlsZVVybHM6IFsnLi4vLi4vc3BlZWNocmVjb3JkZXJfbWF0LnNjc3MnXVxyXG5cclxufSlcclxuZXhwb3J0IGNsYXNzIFJlY29yZGluZ0xpc3QgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0e1xyXG4gIHByaXZhdGUgcmVjb3JkaW5nTGlzdDpBcnJheTxSZWNvcmRpbmdGaWxlPj1uZXcgQXJyYXk8UmVjb3JkaW5nRmlsZT4oKTtcclxuICAvL3JlY29yZGluZ0xpc3RTdWJqZWN0OlN1YmplY3Q8QXJyYXk8UmVjb3JkaW5nRmlsZT4+ID0gbmV3IFN1YmplY3Q8QXJyYXk8UmVjb3JkaW5nRmlsZT4+KCk7XHJcbiAgcmVjb3JkaW5nTGlzdERhdGFTb3VyY2U6TWF0VGFibGVEYXRhU291cmNlPFJlY29yZGluZ0ZpbGU+O1xyXG4gIC8vY29scz1bJ2luZGV4JywnbGVuZ3RoJywnc2FtcGxlcycsJ3NhbXBsZXJhdGUnLCdhY3Rpb24nXTtcclxuICBjb2xzPVsnaW5kZXgnLCdzdGFydGVkRGF0ZScsJ2xlbmd0aCcsJ2FjdGlvbiddO1xyXG4gIEBJbnB1dCgpIHNlbGVjdERpc2FibGVkOmJvb2xlYW49ZmFsc2U7XHJcbiAgQE91dHB1dCgpIHNlbGVjdGVkUmVjb3JkaW5nRmlsZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFJlY29yZGluZ0ZpbGU+KCk7XHJcbiAgQElucHV0KCkgc2VsZWN0ZWRSZWNvcmRpbmdGaWxlOlJlY29yZGluZ0ZpbGV8bnVsbD1udWxsO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMucmVjb3JkaW5nTGlzdERhdGFTb3VyY2U9bmV3IE1hdFRhYmxlRGF0YVNvdXJjZTxSZWNvcmRpbmdGaWxlPigpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5idWlsZERhdGFTb3VyY2UoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYnVpbGREYXRhU291cmNlKCl7XHJcbiAgICB0aGlzLnJlY29yZGluZ0xpc3Quc29ydCgoYSwgYikgPT4ge1xyXG4gICAgICBsZXQgY21wOm51bWJlcj0wO1xyXG4gICAgICBsZXQgYUQ6RGF0ZXxudWxsPW51bGw7XHJcbiAgICAgIGxldCBiRDpEYXRlfG51bGw9bnVsbDtcclxuICAgICAgaWYoYS5fc3RhcnRlZEFzRGF0ZU9iaiAmJiBiLl9zdGFydGVkQXNEYXRlT2JqKXtcclxuICAgICAgICBhRD1hLl9zdGFydGVkQXNEYXRlT2JqXHJcbiAgICAgICAgYkQ9Yi5fc3RhcnRlZEFzRGF0ZU9ialxyXG4gICAgICB9ZWxzZSBpZihhLnN0YXJ0ZWREYXRlICYmIGIuc3RhcnRlZERhdGUpe1xyXG4gICAgICAgIGFEPW5ldyBEYXRlKGEuc3RhcnRlZERhdGUpO1xyXG4gICAgICAgIGJEPW5ldyBEYXRlKGIuc3RhcnRlZERhdGUpO1xyXG4gICAgICB9ZWxzZSBpZihhLmRhdGUgJiYgYi5kYXRlKSB7XHJcbiAgICAgICAgYUQ9bmV3IERhdGUoYS5kYXRlKTtcclxuICAgICAgICBiRD1uZXcgRGF0ZShiLmRhdGUpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmKGFEIT09bnVsbCAmJiBiRCE9PW51bGwpe1xyXG4gICAgICAgIGNtcD1iRC5nZXRUaW1lKCktYUQuZ2V0VGltZSgpO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBjbXA7XHJcbiAgICB9KTtcclxuICAgIHRoaXMucmVjb3JkaW5nTGlzdERhdGFTb3VyY2UuZGF0YT10aGlzLnJlY29yZGluZ0xpc3Q7XHJcbiAgfVxyXG5cclxuICBwdXNoKHJmOlJlY29yZGluZ0ZpbGUpe1xyXG4gICAgdGhpcy5yZWNvcmRpbmdMaXN0LnB1c2gocmYpO1xyXG4gICAgdGhpcy5idWlsZERhdGFTb3VyY2UoKTtcclxuICB9XHJcblxyXG4gIHNlbGVjdFJlY29yZGluZ0ZpbGUocmY6UmVjb3JkaW5nRmlsZSl7XHJcbiAgICB0aGlzLnNlbGVjdGVkUmVjb3JkaW5nRmlsZUNoYW5nZWQuZW1pdChyZik7XHJcbiAgfVxyXG5cclxuICBzZWxlY3RUb3AoKSB7XHJcbiAgICBpZiAodGhpcy5yZWNvcmRpbmdMaXN0Lmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5zZWxlY3RSZWNvcmRpbmdGaWxlKHRoaXMucmVjb3JkaW5nTGlzdFswXSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBsZW5ndGhUaW1lRm9ybWF0dGVkKHJmOlJlY29yZGluZ0ZpbGUpe1xyXG4gICAgbGV0IHN0cj0nLS06LS06LS0nO1xyXG4gICAgaWYocmYuZnJhbWVzICYmIHJmLmF1ZGlvQnVmZmVyKSB7XHJcbiAgICAgIHN0cj1NZWRpYVV0aWxzLnRvTWVkaWFUaW1lKHJmLmZyYW1lcyAvIHJmLmF1ZGlvQnVmZmVyPy5zYW1wbGVSYXRlKTtcclxuICAgIH1cclxuICAgIHJldHVybiBzdHI7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkaW5nX2xpc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGVlY2hyZWNvcmRlcm5nL3NyYy9saWIvc3BlZWNocmVjb3JkZXIvc2Vzc2lvbi9yZWNvcmRpbmdfbGlzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUVwRixPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDN0MsT0FBTyxFQUFXLGtCQUFrQixFQUFDLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7O0FBNkRyRSxNQUFNLE9BQU8sYUFBYTtJQVV4QjtRQVRRLGtCQUFhLEdBQXNCLElBQUksS0FBSyxFQUFpQixDQUFDO1FBR3RFLDBEQUEwRDtRQUMxRCxTQUFJLEdBQUMsQ0FBQyxPQUFPLEVBQUMsYUFBYSxFQUFDLFFBQVEsRUFBQyxRQUFRLENBQUMsQ0FBQztRQUN0QyxtQkFBYyxHQUFTLEtBQUssQ0FBQztRQUM1QixpQ0FBNEIsR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztRQUNsRSwwQkFBcUIsR0FBb0IsSUFBSSxDQUFDO1FBR3JELElBQUksQ0FBQyx1QkFBdUIsR0FBQyxJQUFJLGtCQUFrQixFQUFpQixDQUFDO0lBQ3ZFLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxlQUFlO1FBQ3JCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQy9CLElBQUksR0FBRyxHQUFRLENBQUMsQ0FBQztZQUNqQixJQUFJLEVBQUUsR0FBVyxJQUFJLENBQUM7WUFDdEIsSUFBSSxFQUFFLEdBQVcsSUFBSSxDQUFDO1lBQ3RCLElBQUcsQ0FBQyxDQUFDLGlCQUFpQixJQUFJLENBQUMsQ0FBQyxpQkFBaUIsRUFBQztnQkFDNUMsRUFBRSxHQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQTtnQkFDdEIsRUFBRSxHQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQTthQUN2QjtpQkFBSyxJQUFHLENBQUMsQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBQztnQkFDdEMsRUFBRSxHQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDM0IsRUFBRSxHQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUM1QjtpQkFBSyxJQUFHLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRTtnQkFDekIsRUFBRSxHQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDcEIsRUFBRSxHQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNyQjtZQUNELElBQUcsRUFBRSxLQUFHLElBQUksSUFBSSxFQUFFLEtBQUcsSUFBSSxFQUFDO2dCQUN4QixHQUFHLEdBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxHQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQzthQUMvQjtZQUNELE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxHQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQUksQ0FBQyxFQUFnQjtRQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELG1CQUFtQixDQUFDLEVBQWdCO1FBQ2xDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNqQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2pEO0lBQ0gsQ0FBQztJQUVELG1CQUFtQixDQUFDLEVBQWdCO1FBQ2xDLElBQUksR0FBRyxHQUFDLFVBQVUsQ0FBQztRQUNuQixJQUFHLEVBQUUsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRTtZQUM5QixHQUFHLEdBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDcEU7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7OzBHQTlEVSxhQUFhOzhGQUFiLGFBQWEsa09BdERkOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTZCVDsyRkF5QlUsYUFBYTtrQkExRHpCLFNBQVM7K0JBRUUsbUJBQW1CLFlBRW5COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTZCVDswRUErQlEsY0FBYztzQkFBdEIsS0FBSztnQkFDSSw0QkFBNEI7c0JBQXJDLE1BQU07Z0JBQ0UscUJBQXFCO3NCQUE3QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtSZWNvcmRpbmdGaWxlLCBTcHJSZWNvcmRpbmdGaWxlfSBmcm9tIFwiLi4vcmVjb3JkaW5nXCI7XHJcbmltcG9ydCB7TWVkaWFVdGlsc30gZnJvbSBcIi4uLy4uL21lZGlhL3V0aWxzXCI7XHJcbmltcG9ydCB7TWF0VGFibGUsIE1hdFRhYmxlRGF0YVNvdXJjZX0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3RhYmxlXCI7XHJcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cclxuICBzZWxlY3RvcjogJ2FwcC1yZWNvcmRpbmdsaXN0JyxcclxuXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxtYXQtY2FyZD5cclxuICAgICAgICA8bWF0LWNhcmQtaGVhZGVyPlxyXG4gICAgICAgICAgPGgyPlJlY29yZGluZyBsaXN0PC9oMj5cclxuICAgICAgICA8L21hdC1jYXJkLWhlYWRlcj5cclxuICAgICAgPG1hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICA8dGFibGUgbWF0LXRhYmxlIFtkYXRhU291cmNlXT1cInJlY29yZGluZ0xpc3REYXRhU291cmNlXCIgY2xhc3M9XCJtYXQtZWxldmF0aW9uLXowXCI+XHJcbiAgICAgIDx0ciBtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPVwiY29scztzdGlja3k6dHJ1ZVwiPjwvdHI+XHJcbiAgICAgIDx0ciBtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgZWxlbWVudDsgY29sdW1uczogY29scztcIiBbc2Nyb2xsSW50b1ZpZXdUb0JvdHRvbV09XCJlbGVtZW50LnV1aWQ9PT1zZWxlY3RlZFJlY29yZGluZ0ZpbGU/LnV1aWRcIj48L3RyPlxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImluZGV4XCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBtYXQtaGVhZGVyPiM8L3RoPlxyXG4gICAgICAgIDx0ZCBtYXQtY2VsbCBjbGFzcz1cIm1vbm9zcGFjZWRcIiAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50O2xldCBpID0gaW5kZXhcIj57e3JlY29yZGluZ0xpc3REYXRhU291cmNlLmRhdGEubGVuZ3RoLWl9fTwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cInN0YXJ0ZWREYXRlXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBtYXQtaGVhZGVyPlN0YXJ0ZWQ8L3RoPlxyXG4gICAgICAgIDx0ZCBtYXQtY2VsbCBjbGFzcz1cIm1vbm9zcGFjZWRcIiAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+e3tlbGVtZW50LnN0YXJ0ZWREYXRlIHwgZGF0ZTonWVlZWS1NTS1kZCBISDptbTpzcyd9fTwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImxlbmd0aFwiPlxyXG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgbWF0LWhlYWRlcj5MZW5ndGg8L3RoPlxyXG4gICAgICAgIDx0ZCBtYXQtY2VsbCBjbGFzcz1cIm1vbm9zcGFjZWRcIiAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+e3tsZW5ndGhUaW1lRm9ybWF0dGVkKGVsZW1lbnQpfX08L3RkPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJhY3Rpb25cIj5cclxuICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPkFjdGlvbjwvdGg+XHJcbiAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIj48YnV0dG9uIG1hdC1zdHJva2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwic2VsZWN0UmVjb3JkaW5nRmlsZShlbGVtZW50KVwiIFtkaXNhYmxlZF09XCJzZWxlY3REaXNhYmxlZCB8fCBlbGVtZW50LnV1aWQ9PT1zZWxlY3RlZFJlY29yZGluZ0ZpbGU/LnV1aWRcIj48bWF0LWljb24+ZWRpdF9hdHRyaWJ1dGVzPC9tYXQtaWNvbj4gU2VsZWN0PC9idXR0b24+PC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L3RhYmxlPlxyXG4gICAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XHJcbiAgICA8L21hdC1jYXJkPlxyXG5cclxuICBgLFxyXG4gIHN0eWxlczogW2A6aG9zdCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYmFja2dyb3VuZDogbGlnaHRncmV5O1xyXG4gICAgd2lkdGg6IDEwMCU7IC8qIHVzZSBhbGwgaG9yaXpvbnRhbCBhdmFpbGFibGUgc3BhY2UgKi9cclxuICAgIGZsZXg6IDE7IC8qIC4uLiBhbmQgZmlsbCByZXN0IG9mIHZlcnRpY2FsIGF2YWlsYWJsZSBzcGFjZSAob3RoZXIgY29tcG9uZW50cyBoYXZlIGZsZXggMCkgKi9cclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcblxyXG4gICAgLyogV29ya2Fyb3VuZCBmb3IgRmlyZWZveFxyXG4gICAgSWYgdGhlIHByb2dyZXNzIHRhYmxlIGdldHMgbG9uZyAoc2NyaXB0IHdpdGggbWFueSBpdGVtcykgRkYgaW5jcmVhc2VzIHRoZSBoZWlnaHQgb2YgdGhlIG92ZXJmbG93IHByb2dyZXNzQ29udGFpbmVyIGFuZFxyXG4gICAgdGhlIHdob2xlIGFwcCBkb2VzIG5vdCBmaXQgaW50byB0aGUgcGFnZSBhbnltb3JlLiBUaGUgYXBwIG92ZXJmbG93cyBhbmQgc2hvd3MgYSB2ZXJ0aWNhbCBzY3JvbGxiYXIgZm9yIHRoZSB3aG9sZSBhcHAuXHJcbiAgICBTZWUgaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8yODYzNjgzMi9maXJlZm94LW92ZXJmbG93LXktbm90LXdvcmtpbmctd2l0aC1uZXN0ZWQtZmxleGJveFxyXG4gICAgKi9cclxuICAgIG1pbi1oZWlnaHQ6IDBweDtcclxuXHJcbiAgfWAsYFxyXG4gICAgLnNlbGVjdGVke1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIH1cclxuICBgXSxcclxuICBzdHlsZVVybHM6IFsnLi4vLi4vc3BlZWNocmVjb3JkZXJfbWF0LnNjc3MnXVxyXG5cclxufSlcclxuZXhwb3J0IGNsYXNzIFJlY29yZGluZ0xpc3QgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0e1xyXG4gIHByaXZhdGUgcmVjb3JkaW5nTGlzdDpBcnJheTxSZWNvcmRpbmdGaWxlPj1uZXcgQXJyYXk8UmVjb3JkaW5nRmlsZT4oKTtcclxuICAvL3JlY29yZGluZ0xpc3RTdWJqZWN0OlN1YmplY3Q8QXJyYXk8UmVjb3JkaW5nRmlsZT4+ID0gbmV3IFN1YmplY3Q8QXJyYXk8UmVjb3JkaW5nRmlsZT4+KCk7XHJcbiAgcmVjb3JkaW5nTGlzdERhdGFTb3VyY2U6TWF0VGFibGVEYXRhU291cmNlPFJlY29yZGluZ0ZpbGU+O1xyXG4gIC8vY29scz1bJ2luZGV4JywnbGVuZ3RoJywnc2FtcGxlcycsJ3NhbXBsZXJhdGUnLCdhY3Rpb24nXTtcclxuICBjb2xzPVsnaW5kZXgnLCdzdGFydGVkRGF0ZScsJ2xlbmd0aCcsJ2FjdGlvbiddO1xyXG4gIEBJbnB1dCgpIHNlbGVjdERpc2FibGVkOmJvb2xlYW49ZmFsc2U7XHJcbiAgQE91dHB1dCgpIHNlbGVjdGVkUmVjb3JkaW5nRmlsZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFJlY29yZGluZ0ZpbGU+KCk7XHJcbiAgQElucHV0KCkgc2VsZWN0ZWRSZWNvcmRpbmdGaWxlOlJlY29yZGluZ0ZpbGV8bnVsbD1udWxsO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMucmVjb3JkaW5nTGlzdERhdGFTb3VyY2U9bmV3IE1hdFRhYmxlRGF0YVNvdXJjZTxSZWNvcmRpbmdGaWxlPigpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5idWlsZERhdGFTb3VyY2UoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYnVpbGREYXRhU291cmNlKCl7XHJcbiAgICB0aGlzLnJlY29yZGluZ0xpc3Quc29ydCgoYSwgYikgPT4ge1xyXG4gICAgICBsZXQgY21wOm51bWJlcj0wO1xyXG4gICAgICBsZXQgYUQ6RGF0ZXxudWxsPW51bGw7XHJcbiAgICAgIGxldCBiRDpEYXRlfG51bGw9bnVsbDtcclxuICAgICAgaWYoYS5fc3RhcnRlZEFzRGF0ZU9iaiAmJiBiLl9zdGFydGVkQXNEYXRlT2JqKXtcclxuICAgICAgICBhRD1hLl9zdGFydGVkQXNEYXRlT2JqXHJcbiAgICAgICAgYkQ9Yi5fc3RhcnRlZEFzRGF0ZU9ialxyXG4gICAgICB9ZWxzZSBpZihhLnN0YXJ0ZWREYXRlICYmIGIuc3RhcnRlZERhdGUpe1xyXG4gICAgICAgIGFEPW5ldyBEYXRlKGEuc3RhcnRlZERhdGUpO1xyXG4gICAgICAgIGJEPW5ldyBEYXRlKGIuc3RhcnRlZERhdGUpO1xyXG4gICAgICB9ZWxzZSBpZihhLmRhdGUgJiYgYi5kYXRlKSB7XHJcbiAgICAgICAgYUQ9bmV3IERhdGUoYS5kYXRlKTtcclxuICAgICAgICBiRD1uZXcgRGF0ZShiLmRhdGUpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmKGFEIT09bnVsbCAmJiBiRCE9PW51bGwpe1xyXG4gICAgICAgIGNtcD1iRC5nZXRUaW1lKCktYUQuZ2V0VGltZSgpO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBjbXA7XHJcbiAgICB9KTtcclxuICAgIHRoaXMucmVjb3JkaW5nTGlzdERhdGFTb3VyY2UuZGF0YT10aGlzLnJlY29yZGluZ0xpc3Q7XHJcbiAgfVxyXG5cclxuICBwdXNoKHJmOlJlY29yZGluZ0ZpbGUpe1xyXG4gICAgdGhpcy5yZWNvcmRpbmdMaXN0LnB1c2gocmYpO1xyXG4gICAgdGhpcy5idWlsZERhdGFTb3VyY2UoKTtcclxuICB9XHJcblxyXG4gIHNlbGVjdFJlY29yZGluZ0ZpbGUocmY6UmVjb3JkaW5nRmlsZSl7XHJcbiAgICB0aGlzLnNlbGVjdGVkUmVjb3JkaW5nRmlsZUNoYW5nZWQuZW1pdChyZik7XHJcbiAgfVxyXG5cclxuICBzZWxlY3RUb3AoKSB7XHJcbiAgICBpZiAodGhpcy5yZWNvcmRpbmdMaXN0Lmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5zZWxlY3RSZWNvcmRpbmdGaWxlKHRoaXMucmVjb3JkaW5nTGlzdFswXSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBsZW5ndGhUaW1lRm9ybWF0dGVkKHJmOlJlY29yZGluZ0ZpbGUpe1xyXG4gICAgbGV0IHN0cj0nLS06LS06LS0nO1xyXG4gICAgaWYocmYuZnJhbWVzICYmIHJmLmF1ZGlvQnVmZmVyKSB7XHJcbiAgICAgIHN0cj1NZWRpYVV0aWxzLnRvTWVkaWFUaW1lKHJmLmZyYW1lcyAvIHJmLmF1ZGlvQnVmZmVyPy5zYW1wbGVSYXRlKTtcclxuICAgIH1cclxuICAgIHJldHVybiBzdHI7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -43,8 +43,8 @@ export class RecordingFileMetaComponent {
|
|
|
43
43
|
return t;
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
|
-
RecordingFileMetaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
47
|
-
RecordingFileMetaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.
|
|
46
|
+
RecordingFileMetaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RecordingFileMetaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
47
|
+
RecordingFileMetaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RecordingFileMetaComponent, selector: "app-recording-file-meta", inputs: { sessionId: "sessionId", recordingFile: "recordingFile" }, ngImport: i0, template: `
|
|
48
48
|
<mat-card>
|
|
49
49
|
<mat-card-title>Recording file ID: {{recordingFile?.recordingFileId}}</mat-card-title>
|
|
50
50
|
<mat-card-content>
|
|
@@ -78,7 +78,7 @@ RecordingFileMetaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
|
|
|
78
78
|
</mat-card-content>
|
|
79
79
|
</mat-card>
|
|
80
80
|
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatCard, selector: "mat-card", exportAs: ["matCard"] }, { kind: "directive", type: i2.MatCardContent, selector: "mat-card-content, [mat-card-content], [matCardContent]" }, { kind: "directive", type: i2.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }] });
|
|
81
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
81
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RecordingFileMetaComponent, decorators: [{
|
|
82
82
|
type: Component,
|
|
83
83
|
args: [{ selector: 'app-recording-file-meta', template: `
|
|
84
84
|
<mat-card>
|
|
@@ -119,4 +119,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
119
119
|
}], recordingFile: [{
|
|
120
120
|
type: Input
|
|
121
121
|
}] } });
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkaW5nLWZpbGUtbWV0YS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGVlY2hyZWNvcmRlcm5nL3NyYy9saWIvc3BlZWNocmVjb3JkZXIvc2Vzc2lvbi9yZWNvcmRpbmdmaWxlL3JlY29yZGluZy1maWxlLW1ldGEuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFTLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGtCQUFrQixDQUFDOzs7O0FBeUNuRCxNQUFNLE9BQU8sMEJBQTBCO0lBdEN2QztRQXlDVyxjQUFTLEdBQXdCLElBQUksQ0FBQztRQUV2QyxtQkFBYyxHQUF1QixJQUFJLENBQUM7UUE0QmxELGFBQVEsR0FBYSxJQUFJLENBQUM7UUFDMUIsU0FBSSxHQUF1QixJQUFJLENBQUM7S0FTakM7SUFwQ0MsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFhLGFBQWEsQ0FBQyxhQUFtQztRQUM1RCxJQUFJLENBQUMsY0FBYyxHQUFDLGFBQWEsQ0FBQztRQUNsQyxJQUFHLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQztZQUM3QyxJQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUM7Z0JBQzNELElBQUksQ0FBQyxRQUFRLEdBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDO2FBQ3REO1lBQ0QsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUVqQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztnQkFDakIsT0FBTyxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsR0FBQyxJQUFJLENBQUMsUUFBUSxHQUFFLFNBQVMsR0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7YUFDdkU7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUM7Z0JBQ3RDLE9BQU8sQ0FBQyxLQUFLLENBQUMsaUJBQWlCLEdBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRSxTQUFTLEdBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO2FBQ3BFO1NBQ0Y7YUFBSTtZQUNILElBQUksQ0FBQyxRQUFRLEdBQUMsSUFBSSxDQUFDO1lBQ25CLElBQUksQ0FBQyxJQUFJLEdBQUMsSUFBSSxDQUFDO1NBQ2hCO0lBQ0gsQ0FBQztJQUtELG9CQUFvQjtRQUNsQixJQUFJLENBQUMsR0FBQyxJQUFJLENBQUM7UUFDWCxJQUFHLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdEIsQ0FBQyxHQUFHLGlCQUFpQixDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUNqRTtRQUNELE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQzs7dUhBMUNVLDBCQUEwQjsyR0FBMUIsMEJBQTBCLG1JQXBDM0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWlDVDsyRkFHVSwwQkFBMEI7a0JBdEN0QyxTQUFTOytCQUNFLHlCQUF5QixZQUN6Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUNUOzhCQU1RLFNBQVM7c0JBQWpCLEtBQUs7Z0JBUU8sYUFBYTtzQkFBekIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtSZWNvcmRpbmdGaWxlVXRpbH0gZnJvbSBcIi4vcmVjb3JkaW5nLWZpbGVcIjtcclxuaW1wb3J0IHtSZWNvcmRpbmdGaWxlLCBTcHJSZWNvcmRpbmdGaWxlfSBmcm9tIFwiLi4vLi4vcmVjb3JkaW5nXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1yZWNvcmRpbmctZmlsZS1tZXRhJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPG1hdC1jYXJkPlxyXG4gICAgICA8bWF0LWNhcmQtdGl0bGU+UmVjb3JkaW5nIGZpbGUgSUQ6IHt7cmVjb3JkaW5nRmlsZT8ucmVjb3JkaW5nRmlsZUlkfX08L21hdC1jYXJkLXRpdGxlPlxyXG4gICAgICA8bWF0LWNhcmQtY29udGVudD5cclxuICAgICAgICA8dGFibGU+XHJcbiAgICAgICAgICA8dHIgKm5nSWY9XCJpdGVtQ29kZVwiPlxyXG4gICAgICAgICAgICA8dGQ+SXRlbWNvZGU6PC90ZD5cclxuICAgICAgICAgICAgPHRkPnt7aXRlbUNvZGV9fTwvdGQ+XHJcbiAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgPHRyICpuZ0lmPVwidXVpZCAmJiAhaXRlbUNvZGVcIj5cclxuICAgICAgICAgICAgPHRkPlVVSUQ6PC90ZD5cclxuICAgICAgICAgICAgPHRkPnt7dXVpZH19PC90ZD5cclxuICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICA8dHIgKm5nSWY9XCJyZWNvcmRpbmdGaWxlPy5zdGFydGVkRGF0ZVwiPlxyXG4gICAgICAgICAgICA8dGQ+U3RhcnRlZDo8L3RkPlxyXG4gICAgICAgICAgICA8dGQ+e3tyZWNvcmRpbmdGaWxlPy5zdGFydGVkRGF0ZX19PC90ZD5cclxuICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICA8dHIgKm5nSWY9XCIhcmVjb3JkaW5nRmlsZT8uc3RhcnRlZERhdGUgJiYgcmVjb3JkaW5nRmlsZT8uZGF0ZVwiPlxyXG4gICAgICAgICAgICA8dGQ+RGF0ZTo8L3RkPlxyXG4gICAgICAgICAgICA8dGQ+e3tyZWNvcmRpbmdGaWxlPy5kYXRlfX08L3RkPlxyXG4gICAgICAgICAgPC90cj5cclxuICAgICAgICAgIDx0ciAqbmdJZj1cIml0ZW1Db2RlXCI+XHJcbiAgICAgICAgICAgIDx0ZD5Qcm9tcHQ6PC90ZD5cclxuICAgICAgICAgICAgPHRkPnt7cmVjb3JkaW5nQXNQbGFpblRleHQoKX19PC90ZD5cclxuICAgICAgICAgIDwvdHI+XHJcblxyXG4gICAgICAgICAgPHRyICpuZ0lmPVwic2Vzc2lvbklkXCI+XHJcbiAgICAgICAgICAgIDx0ZD5TZXNzaW9uOjwvdGQ+XHJcbiAgICAgICAgICAgIDx0ZD57e3Nlc3Npb25JZH19PC90ZD5cclxuICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgPC90YWJsZT5cclxuICAgICAgPC9tYXQtY2FyZC1jb250ZW50PlxyXG4gICAgPC9tYXQtY2FyZD5cclxuICBgLFxyXG4gIHN0eWxlczogW11cclxufSlcclxuZXhwb3J0IGNsYXNzIFJlY29yZGluZ0ZpbGVNZXRhQ29tcG9uZW50e1xyXG5cclxuXHJcbiAgQElucHV0KCkgc2Vzc2lvbklkOnN0cmluZyB8IG51bWJlciB8IG51bGw9bnVsbDtcclxuXHJcbiAgcHJpdmF0ZSBfcmVjb3JkaW5nRmlsZTpTcHJSZWNvcmRpbmdGaWxlfG51bGw9bnVsbDtcclxuXHJcbiAgZ2V0IHJlY29yZGluZ0ZpbGUoKTogU3ByUmVjb3JkaW5nRmlsZSB8IG51bGwge1xyXG4gICAgcmV0dXJuIHRoaXMuX3JlY29yZGluZ0ZpbGU7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBzZXQgcmVjb3JkaW5nRmlsZShyZWNvcmRpbmdGaWxlOlNwclJlY29yZGluZ0ZpbGV8bnVsbCl7XHJcbiAgICB0aGlzLl9yZWNvcmRpbmdGaWxlPXJlY29yZGluZ0ZpbGU7XHJcbiAgICBpZih0aGlzLl9yZWNvcmRpbmdGaWxlKSB7XHJcbiAgICAgIHRoaXMuaXRlbUNvZGUgPSB0aGlzLl9yZWNvcmRpbmdGaWxlLml0ZW1Db2RlO1xyXG4gICAgICBpZighdGhpcy5pdGVtQ29kZSAmJiB0aGlzLl9yZWNvcmRpbmdGaWxlLnJlY29yZGluZz8uaXRlbWNvZGUpe1xyXG4gICAgICAgIHRoaXMuaXRlbUNvZGU9dGhpcy5fcmVjb3JkaW5nRmlsZS5yZWNvcmRpbmcuaXRlbWNvZGU7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuaXRlbUNvZGUpIHtcclxuXHJcbiAgICAgICAgdGhpcy51dWlkID0gbnVsbDtcclxuICAgICAgICBjb25zb2xlLmRlYnVnKFwiU3ByUmVjb3JkaW5nRmlsZTogXCIrdGhpcy5pdGVtQ29kZSsgXCIgVVVJRDogXCIrdGhpcy51dWlkKVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuaXRlbUNvZGUgPSBudWxsO1xyXG4gICAgICAgIHRoaXMudXVpZCA9IHRoaXMuX3JlY29yZGluZ0ZpbGU/LnV1aWQ7XHJcbiAgICAgICAgY29uc29sZS5kZWJ1ZyhcIlJlY29yZGluZ0ZpbGU6IFwiK3RoaXMuaXRlbUNvZGUrIFwiIFVVSUQ6IFwiK3RoaXMudXVpZClcclxuICAgICAgfVxyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMuaXRlbUNvZGU9bnVsbDtcclxuICAgICAgdGhpcy51dWlkPW51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpdGVtQ29kZTpzdHJpbmd8bnVsbD1udWxsO1xyXG4gIHV1aWQ6c3RyaW5nfG51bGx8dW5kZWZpbmVkPW51bGw7XHJcblxyXG4gIHJlY29yZGluZ0FzUGxhaW5UZXh0KCl7XHJcbiAgICBsZXQgdD1udWxsO1xyXG4gICAgaWYodGhpcy5fcmVjb3JkaW5nRmlsZSkge1xyXG4gICAgICB0ID0gUmVjb3JkaW5nRmlsZVV0aWwucmVjb3JkaW5nQXNQbGFpblRleHQodGhpcy5fcmVjb3JkaW5nRmlsZSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdDtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -21,8 +21,8 @@ export class RecordingFileNaviComponent {
|
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
|
-
RecordingFileNaviComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
25
|
-
RecordingFileNaviComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.
|
|
24
|
+
RecordingFileNaviComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RecordingFileNaviComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
25
|
+
RecordingFileNaviComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RecordingFileNaviComponent, selector: "app-recording-file-navi", inputs: { firstAction: "firstAction", prevAction: "prevAction", nextAction: "nextAction", lastAction: "lastAction", items: "items", itemPos: "itemPos", selectVersion: "selectVersion", versions: "versions", version: "version", naviInfoLoading: "naviInfoLoading" }, ngImport: i0, template: `
|
|
26
26
|
<div #controlPanel style="display:flex;flex-direction: row;">
|
|
27
27
|
<div #navi style="flex: 0;display:flex;flex-direction: row;flex-wrap: nowrap">
|
|
28
28
|
<fieldset>
|
|
@@ -36,16 +36,16 @@ RecordingFileNaviComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
|
|
|
36
36
|
<legend>Navigate</legend>
|
|
37
37
|
<mat-progress-spinner *ngIf="naviInfoLoading" mode="indeterminate" [diameter]="15"></mat-progress-spinner>
|
|
38
38
|
<div *ngIf="!naviInfoLoading" style="flex: 0;display:flex;flex-direction: row;flex-wrap: nowrap">
|
|
39
|
-
<button (click)="firstAction?.perform()" [disabled]="!firstAction || firstAction
|
|
39
|
+
<button (click)="firstAction?.perform()" [disabled]="!firstAction || firstAction.disabled" matTooltip="First recording file">
|
|
40
40
|
<mat-icon>first_page</mat-icon>
|
|
41
41
|
</button>
|
|
42
|
-
<button (click)="prevAction?.perform()" [disabled]="!prevAction || prevAction
|
|
42
|
+
<button (click)="prevAction?.perform()" [disabled]="!prevAction || prevAction.disabled" matTooltip="Previous recording file">
|
|
43
43
|
<mat-icon>chevron_left</mat-icon>
|
|
44
44
|
</button>
|
|
45
|
-
<button (click)="nextAction?.perform()" [disabled]="!nextAction || nextAction
|
|
45
|
+
<button (click)="nextAction?.perform()" [disabled]="!nextAction || nextAction.disabled" matTooltip="Next recording file">
|
|
46
46
|
<mat-icon>chevron_right</mat-icon>
|
|
47
47
|
</button>
|
|
48
|
-
<button (click)="lastAction?.perform()" [disabled]="!lastAction || lastAction
|
|
48
|
+
<button (click)="lastAction?.perform()" [disabled]="!lastAction || lastAction.disabled" matTooltip="Last recording file">
|
|
49
49
|
<mat-icon>last_page</mat-icon>
|
|
50
50
|
</button>
|
|
51
51
|
</div>
|
|
@@ -55,7 +55,7 @@ RecordingFileNaviComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
|
|
|
55
55
|
</div>
|
|
56
56
|
</div>
|
|
57
57
|
`, isInline: true, styles: [":host{flex:0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
|
|
58
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
58
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RecordingFileNaviComponent, decorators: [{
|
|
59
59
|
type: Component,
|
|
60
60
|
args: [{ selector: 'app-recording-file-navi', template: `
|
|
61
61
|
<div #controlPanel style="display:flex;flex-direction: row;">
|
|
@@ -71,16 +71,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
71
71
|
<legend>Navigate</legend>
|
|
72
72
|
<mat-progress-spinner *ngIf="naviInfoLoading" mode="indeterminate" [diameter]="15"></mat-progress-spinner>
|
|
73
73
|
<div *ngIf="!naviInfoLoading" style="flex: 0;display:flex;flex-direction: row;flex-wrap: nowrap">
|
|
74
|
-
<button (click)="firstAction?.perform()" [disabled]="!firstAction || firstAction
|
|
74
|
+
<button (click)="firstAction?.perform()" [disabled]="!firstAction || firstAction.disabled" matTooltip="First recording file">
|
|
75
75
|
<mat-icon>first_page</mat-icon>
|
|
76
76
|
</button>
|
|
77
|
-
<button (click)="prevAction?.perform()" [disabled]="!prevAction || prevAction
|
|
77
|
+
<button (click)="prevAction?.perform()" [disabled]="!prevAction || prevAction.disabled" matTooltip="Previous recording file">
|
|
78
78
|
<mat-icon>chevron_left</mat-icon>
|
|
79
79
|
</button>
|
|
80
|
-
<button (click)="nextAction?.perform()" [disabled]="!nextAction || nextAction
|
|
80
|
+
<button (click)="nextAction?.perform()" [disabled]="!nextAction || nextAction.disabled" matTooltip="Next recording file">
|
|
81
81
|
<mat-icon>chevron_right</mat-icon>
|
|
82
82
|
</button>
|
|
83
|
-
<button (click)="lastAction?.perform()" [disabled]="!lastAction || lastAction
|
|
83
|
+
<button (click)="lastAction?.perform()" [disabled]="!lastAction || lastAction.disabled" matTooltip="Last recording file">
|
|
84
84
|
<mat-icon>last_page</mat-icon>
|
|
85
85
|
</button>
|
|
86
86
|
</div>
|
|
@@ -111,4 +111,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
111
111
|
}], naviInfoLoading: [{
|
|
112
112
|
type: Input
|
|
113
113
|
}] } });
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkaW5nLWZpbGUtbmF2aS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGVlY2hyZWNvcmRlcm5nL3NyYy9saWIvc3BlZWNocmVjb3JkZXIvc2Vzc2lvbi9yZWNvcmRpbmdmaWxlL3JlY29yZGluZy1maWxlLW5hdmkuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFvQixNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBNENsRSxNQUFNLE9BQU8sMEJBQTBCO0lBYXJDO1FBTFMsYUFBUSxHQUFxQixJQUFJLENBQUM7UUFDbEMsWUFBTyxHQUFjLElBQUksQ0FBQztRQUUxQixvQkFBZSxHQUFDLEtBQUssQ0FBQztJQUVmLENBQUM7SUFFakIsUUFBUTtJQUNSLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxFQUFRO1FBQzFCLHlFQUF5RTtRQUV2RSxNQUFNLEtBQUssR0FBRyxFQUFFLENBQUMsTUFBMkIsQ0FBQztRQUM3QyxJQUFJLFNBQVMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLElBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNyQixJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUN2QztJQUNMLENBQUM7O3VIQTFCVSwwQkFBMEI7MkdBQTFCLDBCQUEwQix1VUF2QzNCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztXQWdDRDsyRkFPRSwwQkFBMEI7a0JBekN0QyxTQUFTOytCQUNFLHlCQUF5QixZQUN6Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7V0FnQ0Q7MEVBUUEsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRUcsZUFBZTtzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0FjdGlvbn0gZnJvbSBcIi4uLy4uLy4uL2FjdGlvbi9hY3Rpb25cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXJlY29yZGluZy1maWxlLW5hdmknLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgICAgPGRpdiAjY29udHJvbFBhbmVsIHN0eWxlPVwiZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOiByb3c7XCI+XHJcbiAgICAgICAgICA8ZGl2ICNuYXZpIHN0eWxlPVwiZmxleDogMDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246IHJvdztmbGV4LXdyYXA6IG5vd3JhcFwiPlxyXG4gICAgICAgICAgICA8ZmllbGRzZXQ+XHJcbiAgICAgICAgICAgICAgPGxlZ2VuZD5WZXJzaW9uczwvbGVnZW5kPlxyXG4gICAgICAgICAgICAgIDxtYXQtcHJvZ3Jlc3Mtc3Bpbm5lciAqbmdJZj1cIm5hdmlJbmZvTG9hZGluZ1wiIG1vZGU9XCJpbmRldGVybWluYXRlXCIgW2RpYW1ldGVyXT1cIjE1XCI+PC9tYXQtcHJvZ3Jlc3Mtc3Bpbm5lcj5cclxuICAgICAgICAgICAgICAgIDxzZWxlY3QgKm5nSWY9XCIhbmF2aUluZm9Mb2FkaW5nXCIgW2Rpc2FibGVkXT1cInZlcnNpb25zPT1udWxsIHx8IHZlcnNpb25zLmxlbmd0aD09MVwiIChjaGFuZ2UpPVwic2VsZWN0VmVyc2lvbkNoYW5nZSgkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IHYgb2YgdmVyc2lvbnM7IGxldCBpID0gaW5kZXhcIiBbc2VsZWN0ZWRdPVwidj09PXZlcnNpb25cIiB2YWx1ZT1cInt7dn19XCI+e3t2fX08c3BhbiAqbmdJZj1cImk9PTBcIj4gKGxhdGVzdCk8L3NwYW4+PC9vcHRpb24+XHJcbiAgICAgICAgICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgICAgICAgPC9maWVsZHNldD5cclxuICAgICAgICAgICAgPGZpZWxkc2V0PlxyXG4gICAgICAgICAgICAgIDxsZWdlbmQ+TmF2aWdhdGU8L2xlZ2VuZD5cclxuICAgICAgICAgICAgICA8bWF0LXByb2dyZXNzLXNwaW5uZXIgKm5nSWY9XCJuYXZpSW5mb0xvYWRpbmdcIiBtb2RlPVwiaW5kZXRlcm1pbmF0ZVwiIFtkaWFtZXRlcl09XCIxNVwiPjwvbWF0LXByb2dyZXNzLXNwaW5uZXI+XHJcbiAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFuYXZpSW5mb0xvYWRpbmdcIiAgc3R5bGU9XCJmbGV4OiAwO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjogcm93O2ZsZXgtd3JhcDogbm93cmFwXCI+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJmaXJzdEFjdGlvbj8ucGVyZm9ybSgpXCIgW2Rpc2FibGVkXT1cIiFmaXJzdEFjdGlvbiB8fCBmaXJzdEFjdGlvbi5kaXNhYmxlZFwiIG1hdFRvb2x0aXA9XCJGaXJzdCByZWNvcmRpbmcgZmlsZVwiPlxyXG4gICAgICAgICAgICAgICAgICA8bWF0LWljb24+Zmlyc3RfcGFnZTwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInByZXZBY3Rpb24/LnBlcmZvcm0oKVwiIFtkaXNhYmxlZF09XCIhcHJldkFjdGlvbiB8fCBwcmV2QWN0aW9uLmRpc2FibGVkXCIgbWF0VG9vbHRpcD1cIlByZXZpb3VzIHJlY29yZGluZyBmaWxlXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5jaGV2cm9uX2xlZnQ8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJuZXh0QWN0aW9uPy5wZXJmb3JtKClcIiBbZGlzYWJsZWRdPVwiIW5leHRBY3Rpb24gfHwgbmV4dEFjdGlvbi5kaXNhYmxlZFwiIG1hdFRvb2x0aXA9XCJOZXh0IHJlY29yZGluZyBmaWxlXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5jaGV2cm9uX3JpZ2h0PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwibGFzdEFjdGlvbj8ucGVyZm9ybSgpXCIgW2Rpc2FibGVkXT1cIiFsYXN0QWN0aW9uIHx8IGxhc3RBY3Rpb24uZGlzYWJsZWRcIiBtYXRUb29sdGlwPVwiTGFzdCByZWNvcmRpbmcgZmlsZVwiPlxyXG4gICAgICAgICAgICAgICAgICA8bWF0LWljb24+bGFzdF9wYWdlPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDxwICpuZ0lmPVwiaXRlbXMgJiYgaXRlbVBvcyE9PW51bGwgJiYgaXRlbVBvcyE9PXVuZGVmaW5lZFwiPkl0ZW0ge3tpdGVtUG9zKzF9fSBvZiB7e2l0ZW1zfX08L3A+XHJcbiAgICAgICAgICAgICAgPHA+KExpc3Qgb3JkZXJlZCBieSBkYXRlKTwvcD5cclxuICAgICAgICAgICAgPC9maWVsZHNldD5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgYCxcclxuICBzdHlsZXM6IFtcclxuICAgIGA6aG9zdCB7XHJcbiAgICAgICAgZmxleDogMDtcclxuXHJcbiAgICAgIH1gXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVjb3JkaW5nRmlsZU5hdmlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGZpcnN0QWN0aW9uOiBBY3Rpb248dm9pZD58dW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHByZXZBY3Rpb246IEFjdGlvbjx2b2lkPnx1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgbmV4dEFjdGlvbjogQWN0aW9uPHZvaWQ+fHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBsYXN0QWN0aW9uOiBBY3Rpb248dm9pZD58dW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIGl0ZW1zOm51bWJlciB8IG51bGx8dW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIGl0ZW1Qb3M6bnVtYmVyIHwgbnVsbHx1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgc2VsZWN0VmVyc2lvbjogQWN0aW9uPG51bWJlcj58dW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHZlcnNpb25zOiBBcnJheTxudW1iZXI+fG51bGw9bnVsbDtcclxuICBASW5wdXQoKSB2ZXJzaW9uOiBudW1iZXJ8bnVsbD1udWxsO1xyXG5cclxuICBASW5wdXQoKSBuYXZpSW5mb0xvYWRpbmc9ZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0VmVyc2lvbkNoYW5nZShldjpFdmVudCl7XHJcbiAgICAvL2NvbnNvbGUuZGVidWcoXCJDaGFuZ2UgZXZlbnQ6IFwiK2V2LnRhcmdldC52YWx1ZSsgXCIsIGFzIE5yOiBcIit2ZXJzaW9uTnIpO1xyXG5cclxuICAgICAgY29uc3Qgc2VsRWwgPSBldi50YXJnZXQgYXMgSFRNTFNlbGVjdEVsZW1lbnQ7XHJcbiAgICAgIGxldCB2ZXJzaW9uTnIgPSBwYXJzZUludChzZWxFbC52YWx1ZSk7XHJcbiAgICAgIGlmKHRoaXMuc2VsZWN0VmVyc2lvbikge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0VmVyc2lvbi5wZXJmb3JtKHZlcnNpb25Ocik7XHJcbiAgICAgIH1cclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -93,8 +93,8 @@ export class RecordingFileUI extends RecordingFileViewComponent {
|
|
|
93
93
|
}
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
|
-
RecordingFileUI.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
97
|
-
RecordingFileUI.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.
|
|
96
|
+
RecordingFileUI.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RecordingFileUI, deps: [{ token: i1.RecordingFileService }, { token: i2.RecordingService }, { token: i3.SessionService }, { token: i4.Router }, { token: i4.ActivatedRoute }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i5.MatDialog }, { token: i6.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component });
|
|
97
|
+
RecordingFileUI.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RecordingFileUI, selector: "app-audiodisplayplayer", usesInheritance: true, ngImport: i0, template: `
|
|
98
98
|
<h1>Recording file editing</h1>
|
|
99
99
|
<p>On export or delivery the editing selection of the recording file is cut out. If no editing selection is applied the original file is exported.</p>
|
|
100
100
|
|
|
@@ -115,7 +115,7 @@ RecordingFileUI.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", versio
|
|
|
115
115
|
|
|
116
116
|
<button mat-raised-button color="accent" (click)="applySelection()" [disabled]="editSaved">{{this.applyButtonText()}}</button>
|
|
117
117
|
`, isInline: true, styles: [":host{flex:2;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:20px;z-index:5;box-sizing:border-box;background-color:#fff}\n", ".ctrlview{display:flex;flex-direction:row}\n", "audio-display-control{flex:3}\n"], dependencies: [{ kind: "component", type: i7.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i8.AudioDisplayScrollPane, selector: "audio-display-scroll-pane", inputs: ["audioClip"], outputs: ["zoomInAction", "zoomOutAction", "zoomSelectedAction", "zoomFitToPanelAction"] }, { kind: "component", type: i9.AudioDisplayControl, selector: "audio-display-control", inputs: ["audioClip", "playStartAction", "playSelectionAction", "playStopAction", "zoomInAction", "zoomOutAction", "zoomFitToPanelAction", "zoomSelectedAction", "autoPlayOnSelectToggleAction"] }, { kind: "component", type: i10.RecordingFileNaviComponent, selector: "app-recording-file-navi", inputs: ["firstAction", "prevAction", "nextAction", "lastAction", "items", "itemPos", "selectVersion", "versions", "version", "naviInfoLoading"] }, { kind: "component", type: i11.RecordingFileMetaComponent, selector: "app-recording-file-meta", inputs: ["sessionId", "recordingFile"] }] });
|
|
118
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
118
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RecordingFileUI, decorators: [{
|
|
119
119
|
type: Component,
|
|
120
120
|
args: [{ selector: 'app-audiodisplayplayer', template: `
|
|
121
121
|
<h1>Recording file editing</h1>
|
|
@@ -139,4 +139,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
139
139
|
<button mat-raised-button color="accent" (click)="applySelection()" [disabled]="editSaved">{{this.applyButtonText()}}</button>
|
|
140
140
|
`, styles: [":host{flex:2;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:20px;z-index:5;box-sizing:border-box;background-color:#fff}\n", ".ctrlview{display:flex;flex-direction:row}\n", "audio-display-control{flex:3}\n"] }]
|
|
141
141
|
}], ctorParameters: function () { return [{ type: i1.RecordingFileService }, { type: i2.RecordingService }, { type: i3.SessionService }, { type: i4.Router }, { type: i4.ActivatedRoute }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i5.MatDialog }, { type: i6.MatSnackBar }]; } });
|
|
142
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkaW5nLWZpbGUtdS1pLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NwZWVjaHJlY29yZGVybmcvc3JjL2xpYi9zcGVlY2hyZWNvcmRlci9zZXNzaW9uL3JlY29yZGluZ2ZpbGUvcmVjb3JkaW5nLWZpbGUtdS1pLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUlWLE1BQU0sZUFBZSxDQUFBO0FBT3RCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUV6RCxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7Ozs7OztBQXNEM0UsTUFBTSxPQUFPLGVBQWdCLFNBQVEsMEJBQTBCO0lBSzdELFlBQXNCLG9CQUF5QyxFQUFXLGdCQUFpQyxFQUFXLGNBQTZCLEVBQVcsTUFBYSxFQUFXLEtBQXFCLEVBQVksR0FBc0IsRUFBVyxJQUFlLEVBQVksTUFBZ0IsRUFBUyxRQUFxQjtRQUMvVCxLQUFLLENBQUMsb0JBQW9CLEVBQUMsZ0JBQWdCLEVBQUMsY0FBYyxFQUFDLE1BQU0sRUFBQyxLQUFLLEVBQUMsR0FBRyxFQUFDLElBQUksRUFBQyxNQUFNLENBQUMsQ0FBQTtRQURwRSx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBQVcscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQUFXLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQVcsV0FBTSxHQUFOLE1BQU0sQ0FBTztRQUFXLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQVksUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFBVyxTQUFJLEdBQUosSUFBSSxDQUFXO1FBQVksV0FBTSxHQUFOLE1BQU0sQ0FBVTtRQUFTLGFBQVEsR0FBUixRQUFRLENBQWE7UUFIalUsdUJBQWtCLEdBQWdCLElBQUksQ0FBQztRQUN2QyxjQUFTLEdB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O29CQUMvQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxDQUFBO29CQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQTtvQkFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsb0NBQW9DLEVBQUUsSUFBSSxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUE7Z0JBQ2xGLENBQUMsQ0FBQyxDQUFDO2FBQ1I7U0FDRjtJQUNILENBQUM7OzZHQWhGVSxlQUFlO2lHQUFmLGVBQWUscUZBN0NoQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQlQ7NEZBeUJVLGVBQWU7a0JBakQzQixTQUFTOytCQUVFLHdCQUF3QixZQUV4Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQlQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIEVsZW1lbnRSZWZcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5cclxuXHJcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFJvdXRlcn0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQge1JlY29yZGluZ0ZpbGVTZXJ2aWNlfSBmcm9tIFwiLi9yZWNvcmRpbmdmaWxlLXNlcnZpY2VcIjtcclxuaW1wb3J0IHtNYXREaWFsb2d9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2dcIjtcclxuaW1wb3J0IHtTZWxlY3Rpb259IGZyb20gXCIuLi8uLi8uLi9hdWRpby9wZXJzaXN0b3JcIjtcclxuaW1wb3J0IHtNZXNzYWdlRGlhbG9nfSBmcm9tIFwiLi4vLi4vLi4vdWkvbWVzc2FnZV9kaWFsb2dcIjtcclxuaW1wb3J0IHtBY3Rpb259IGZyb20gXCIuLi8uLi8uLi9hY3Rpb24vYWN0aW9uXCI7XHJcbmltcG9ydCB7UmVjb3JkaW5nRmlsZVZpZXdDb21wb25lbnR9IGZyb20gXCIuL3JlY29yZGluZy1maWxlLXZpZXcuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7U2Vzc2lvblNlcnZpY2V9IGZyb20gXCIuLi9zZXNzaW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtSZWNvcmRpbmdTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vcmVjb3JkaW5ncy9yZWNvcmRpbmdzLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtNYXRTbmFja0Jhcn0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhclwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblxyXG4gIHNlbGVjdG9yOiAnYXBwLWF1ZGlvZGlzcGxheXBsYXllcicsXHJcblxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgIDxoMT5SZWNvcmRpbmcgZmlsZSBlZGl0aW5nPC9oMT5cclxuICAgICAgPHA+T24gZXhwb3J0IG9yIGRlbGl2ZXJ5IHRoZSBlZGl0aW5nIHNlbGVjdGlvbiBvZiB0aGUgcmVjb3JkaW5nIGZpbGUgaXMgY3V0IG91dC4gSWYgbm8gZWRpdGluZyBzZWxlY3Rpb24gaXMgYXBwbGllZCB0aGUgb3JpZ2luYWwgZmlsZSBpcyBleHBvcnRlZC48L3A+XHJcblxyXG4gICAgPGF1ZGlvLWRpc3BsYXktc2Nyb2xsLXBhbmUgI2F1ZGlvRGlzcGxheVNjcm9sbFBhbmU+PC9hdWRpby1kaXNwbGF5LXNjcm9sbC1wYW5lPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY3RybHZpZXdcIj5cclxuICAgICAgICA8YXBwLXJlY29yZGluZy1maWxlLW1ldGEgW3Nlc3Npb25JZF09XCJzZXNzaW9uSWRcIiAgW3JlY29yZGluZ0ZpbGVdPVwicmVjb3JkaW5nRmlsZVwiPjwvYXBwLXJlY29yZGluZy1maWxlLW1ldGE+XHJcbiAgICA8YXVkaW8tZGlzcGxheS1jb250cm9sIFthdWRpb0NsaXBdPVwiYXVkaW9DbGlwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxheVN0YXJ0QWN0aW9uXT1cInBsYXlTdGFydEFjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYXlTZWxlY3Rpb25BY3Rpb25dPVwicGxheVNlbGVjdGlvbkFjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYXlTdG9wQWN0aW9uXT1cInBsYXlTdG9wQWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXV0b1BsYXlPblNlbGVjdFRvZ2dsZUFjdGlvbl09XCJhcD8uYXV0b1BsYXlPblNlbGVjdFRvZ2dsZUFjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3pvb21JbkFjdGlvbl09XCJ6b29tSW5BY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt6b29tT3V0QWN0aW9uXT1cInpvb21PdXRBY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt6b29tU2VsZWN0ZWRBY3Rpb25dPVwiem9vbVNlbGVjdGVkQWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3pvb21GaXRUb1BhbmVsQWN0aW9uXT1cInpvb21GaXRUb1BhbmVsQWN0aW9uXCI+PC9hdWRpby1kaXNwbGF5LWNvbnRyb2w+XHJcbiAgICAgICAgPGFwcC1yZWNvcmRpbmctZmlsZS1uYXZpIFtpdGVtc109XCJhdmFpbFJlY0ZpbGVzPy5sZW5ndGhcIiBbaXRlbVBvc109XCJwb3NJbkxpc3RcIiBbdmVyc2lvbl09XCJyZWNvcmRpbmdGaWxlVmVyc2lvblwiIFt2ZXJzaW9uc109XCJ2ZXJzaW9uc1wiIFtmaXJzdEFjdGlvbl09XCJmaXJzdEFjdGlvblwiIFtwcmV2QWN0aW9uXT1cInByZXZBY3Rpb25cIiBbbmV4dEFjdGlvbl09XCJuZXh0QWN0aW9uXCIgW2xhc3RBY3Rpb25dPVwibGFzdEFjdGlvblwiIFtzZWxlY3RWZXJzaW9uXT1cInRvVmVyc2lvbkFjdGlvblwiIFtuYXZpSW5mb0xvYWRpbmddPVwibmF2aUluZm9Mb2FkaW5nXCI+PC9hcHAtcmVjb3JkaW5nLWZpbGUtbmF2aT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwiYWNjZW50XCIgKGNsaWNrKT1cImFwcGx5U2VsZWN0aW9uKClcIiBbZGlzYWJsZWRdPVwiZWRpdFNhdmVkXCI+e3t0aGlzLmFwcGx5QnV0dG9uVGV4dCgpfX08L2J1dHRvbj5cclxuICBgLFxyXG4gIHN0eWxlczogW1xyXG4gICAgYDpob3N0IHtcclxuICAgICAgICAgIGZsZXg6IDI7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgIG1pbi1oZWlnaHQ6MDtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgfWAsYFxyXG4gICAgICAgIC5jdHJsdmlld3tcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIH1cclxuICAgIGAsYFxyXG4gICAgICBhdWRpby1kaXNwbGF5LWNvbnRyb2x7XHJcblxyXG4gICAgICAgIGZsZXg6IDM7XHJcbiAgICAgIH1cclxuICAgIGBdXHJcblxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVjb3JkaW5nRmlsZVVJIGV4dGVuZHMgUmVjb3JkaW5nRmlsZVZpZXdDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgc2F2ZWRFZGl0U2VsZWN0aW9uOlNlbGVjdGlvbnxudWxsPW51bGw7XHJcbiAgZWRpdFNhdmVkOmJvb2xlYW49dHJ1ZVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcmVjb3JkaW5nRmlsZVNlcnZpY2U6UmVjb3JkaW5nRmlsZVNlcnZpY2UscHJvdGVjdGVkIHJlY29yZGluZ1NlcnZpY2U6UmVjb3JkaW5nU2VydmljZSxwcm90ZWN0ZWQgc2Vzc2lvblNlcnZpY2U6U2Vzc2lvblNlcnZpY2UscHJvdGVjdGVkIHJvdXRlcjpSb3V0ZXIscHJvdGVjdGVkIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgcHJvdGVjdGVkIHJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYscHJvdGVjdGVkIGVSZWY6RWxlbWVudFJlZiwgcHJvdGVjdGVkIGRpYWxvZzpNYXREaWFsb2cscHJpdmF0ZSBzbmFja0JhcjogTWF0U25hY2tCYXIpIHtcclxuICAgIHN1cGVyKHJlY29yZGluZ0ZpbGVTZXJ2aWNlLHJlY29yZGluZ1NlcnZpY2Usc2Vzc2lvblNlcnZpY2Uscm91dGVyLHJvdXRlLHJlZixlUmVmLGRpYWxvZylcclxuICAgIHRoaXMucGFyZW50RT10aGlzLmVSZWYubmF0aXZlRWxlbWVudDtcclxuXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKVxyXG4gIH1cclxuXHJcbiAgYXBwbHlCdXR0b25UZXh0KCk6c3RyaW5nIHtcclxuICAgIGlmKHRoaXMuYXVkaW9DbGlwKSB7XHJcbiAgICAgIGxldCBzID0gdGhpcy5hdWRpb0NsaXAuc2VsZWN0aW9uXHJcbiAgICAgIGlmIChzKSB7XHJcbiAgICAgICAgcmV0dXJuIFwiQXBwbHkgY3VycmVudCBzZWxlY3Rpb24gYXMgZWRpdGluZyBzZWxlY3Rpb25cIjtcclxuICAgICAgfWVsc2V7XHJcbiAgICAgICAgcmV0dXJuIFwiQ2FuY2VsIG91dCBlZGl0aW5nIHNlbGVjdGlvblwiO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBqdXN0IGFzIGZhbGxiYWNrXHJcbiAgICByZXR1cm4gXCJBcHBseSBzZWxlY3Rpb25cIjtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBsb2FkUmVjRmlsZShyZklkOm51bWJlciB8IHN0cmluZykge1xyXG4gICAgdGhpcy5lZGl0U2F2ZWQgPSB0cnVlO1xyXG4gICAgc3VwZXIubG9hZFJlY0ZpbGUocmZJZCk7XHJcbiAgfVxyXG5cclxucHJvdGVjdGVkIGxvYWRlZFJlY2ZpbGUoKSB7XHJcbiAgc3VwZXIubG9hZGVkUmVjZmlsZSgpO1xyXG4gIGlmKHRoaXMuYXVkaW9DbGlwKSB7XHJcbiAgICB0aGlzLmF1ZGlvQ2xpcC5hZGRTZWxlY3Rpb25PYnNlcnZlcigoY2xpcCkgPT4ge1xyXG4gICAgICBsZXQgcyA9IGNsaXAuc2VsZWN0aW9uXHJcbiAgICAgIHRoaXMuZWRpdFNhdmVkID0gKCh0aGlzLnNhdmVkRWRpdFNlbGVjdGlvbiA9PSBudWxsICYmIHMgPT0gbnVsbCkgfHwgdGhpcy5zYXZlZEVkaXRTZWxlY3Rpb24gIT0gbnVsbCAmJiB0aGlzLnNhdmVkRWRpdFNlbGVjdGlvbi5lcXVhbHMocykpXHJcbiAgICB9KTtcclxuICB9XHJcbiAgdGhpcy5zYXZlZEVkaXRTZWxlY3Rpb24gPSB0aGlzLmF1ZGlvQ2xpcD90aGlzLmF1ZGlvQ2xpcC5zZWxlY3Rpb246bnVsbDtcclxuICB0aGlzLmVkaXRTYXZlZCA9IHRydWVcclxufVxyXG5cclxuICBhcHBseVNlbGVjdGlvbigpe1xyXG4gICAgaWYodGhpcy5hdWRpb0NsaXApIHtcclxuICAgICAgbGV0IGFiPXRoaXMuYXVkaW9DbGlwLmJ1ZmZlcjtcclxuICAgICAgbGV0IHMgPSB0aGlzLmF1ZGlvQ2xpcC5zZWxlY3Rpb25cclxuICAgICAgaWYgKGFiICYmIHRoaXMucmVjb3JkaW5nRmlsZT8ucmVjb3JkaW5nRmlsZUlkKSB7XHJcblxyXG4gICAgICAgIGxldCBzcj0gbnVsbDtcclxuICAgICAgICBsZXQgc2Y9bnVsbDtcclxuICAgICAgICBsZXQgZWY9bnVsbDtcclxuICAgICAgICBpZihzKSB7XHJcbiAgICAgICAgICBzcj0gYWIuc2FtcGxlUmF0ZTtcclxuICAgICAgICAgIHNmID0gcy5zdGFydEZyYW1lO1xyXG4gICAgICAgICAgZWYgPSBzLmVuZEZyYW1lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAgIHRoaXMucmVjb3JkaW5nRmlsZVNlcnZpY2Uuc2F2ZUVkaXRTZWxlY3Rpb24odGhpcy5yZWNvcmRpbmdGaWxlLnJlY29yZGluZ0ZpbGVJZCwgc3IsIHNmLCBlZikuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5kaWFsb2cub3BlbihNZXNzYWdlRGlhbG9nLCB7XHJcblxyXG4gICAgICAgICAgICAgICAgZGF0YToge1xyXG4gICAgICAgICAgICAgICAgICB0eXBlOiAnZXJyb3InLFxyXG4gICAgICAgICAgICAgICAgICB0aXRsZTogJ1NhdmUgc2VsZWN0aW9uIGVkaXQgZXJyb3InLFxyXG4gICAgICAgICAgICAgICAgICBtc2c6IFwiQ291bGQgbm90IHNhdmUgZWRpdCBzZWxlY3Rpb24gdG8gV2lraVNwZWVjaCBzZXJ2ZXIhXCIsXHJcbiAgICAgICAgICAgICAgICAgIGFkdmljZTogXCJQbGVhc2UgY2hlY2sgbmV0d29yayBjb25uZWN0aW9uIGFuZCBzZXJ2ZXIgc3RhdGUuXCJcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgLy8gT3IgdXNlIHJldHVybmVkIHNlbGVjdGlvbiB2YWx1ZSBmcm9tIHNlcnZlcj9cclxuICAgICAgICAgICAgICB0aGlzLnNhdmVkRWRpdFNlbGVjdGlvbiA9IHNcclxuICAgICAgICAgICAgICB0aGlzLmVkaXRTYXZlZCA9IHRydWVcclxuICAgICAgICAgICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oJ1NlbGVjdGlvbiBlZGl0IHNhdmVkIHN1Y2Nlc3NmdWxseS4nLCAnT0snLCB7ZHVyYXRpb246IDE1MDB9KVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbiJdfQ==
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkaW5nLWZpbGUtdS1pLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NwZWVjaHJlY29yZGVybmcvc3JjL2xpYi9zcGVlY2hyZWNvcmRlci9zZXNzaW9uL3JlY29yZGluZ2ZpbGUvcmVjb3JkaW5nLWZpbGUtdS1pLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUlWLE1BQU0sZUFBZSxDQUFBO0FBT3RCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUV6RCxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7Ozs7OztBQXNEM0UsTUFBTSxPQUFPLGVBQWdCLFNBQVEsMEJBQTBCO0lBSzdELFlBQXNCLG9CQUF5QyxFQUFXLGdCQUFpQyxFQUFXLGNBQTZCLEVBQVcsTUFBYSxFQUFXLEtBQXFCLEVBQVksR0FBc0IsRUFBVyxJQUFlLEVBQVksTUFBZ0IsRUFBUyxRQUFxQjtRQUMvVCxLQUFLLENBQUMsb0JBQW9CLEVBQUMsZ0JBQWdCLEVBQUMsY0FBYyxFQUFDLE1BQU0sRUFBQyxLQUFLLEVBQUMsR0FBRyxFQUFDLElBQUksRUFBQyxNQUFNLENBQUMsQ0FBQTtRQURwRSx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBQVcscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQUFXLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQVcsV0FBTSxHQUFOLE1BQU0sQ0FBTztRQUFXLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQVksUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFBVyxTQUFJLEdBQUosSUFBSSxDQUFXO1FBQVksV0FBTSxHQUFOLE1BQU0sQ0FBVTtRQUFTLGFBQVEsR0FBUixRQUFRLENBQWE7UUFIalUsdUJBQWtCLEdBQWdCLElBQUksQ0FBQztRQUN2QyxjQUFTLEdB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O29CQUMvQyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxDQUFBO29CQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQTtvQkFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsb0NBQW9DLEVBQUUsSUFBSSxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUE7Z0JBQ2xGLENBQUMsQ0FBQyxDQUFDO2FBQ1I7U0FDRjtJQUNILENBQUM7OzRHQWhGVSxlQUFlO2dHQUFmLGVBQWUscUZBN0NoQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQlQ7MkZBeUJVLGVBQWU7a0JBakQzQixTQUFTOytCQUVFLHdCQUF3QixZQUV4Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQlQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIEVsZW1lbnRSZWZcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5cclxuXHJcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFJvdXRlcn0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQge1JlY29yZGluZ0ZpbGVTZXJ2aWNlfSBmcm9tIFwiLi9yZWNvcmRpbmdmaWxlLXNlcnZpY2VcIjtcclxuaW1wb3J0IHtNYXREaWFsb2d9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2dcIjtcclxuaW1wb3J0IHtTZWxlY3Rpb259IGZyb20gXCIuLi8uLi8uLi9hdWRpby9wZXJzaXN0b3JcIjtcclxuaW1wb3J0IHtNZXNzYWdlRGlhbG9nfSBmcm9tIFwiLi4vLi4vLi4vdWkvbWVzc2FnZV9kaWFsb2dcIjtcclxuaW1wb3J0IHtBY3Rpb259IGZyb20gXCIuLi8uLi8uLi9hY3Rpb24vYWN0aW9uXCI7XHJcbmltcG9ydCB7UmVjb3JkaW5nRmlsZVZpZXdDb21wb25lbnR9IGZyb20gXCIuL3JlY29yZGluZy1maWxlLXZpZXcuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7U2Vzc2lvblNlcnZpY2V9IGZyb20gXCIuLi9zZXNzaW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtSZWNvcmRpbmdTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vcmVjb3JkaW5ncy9yZWNvcmRpbmdzLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtNYXRTbmFja0Jhcn0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhclwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblxyXG4gIHNlbGVjdG9yOiAnYXBwLWF1ZGlvZGlzcGxheXBsYXllcicsXHJcblxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICAgIDxoMT5SZWNvcmRpbmcgZmlsZSBlZGl0aW5nPC9oMT5cclxuICAgICAgPHA+T24gZXhwb3J0IG9yIGRlbGl2ZXJ5IHRoZSBlZGl0aW5nIHNlbGVjdGlvbiBvZiB0aGUgcmVjb3JkaW5nIGZpbGUgaXMgY3V0IG91dC4gSWYgbm8gZWRpdGluZyBzZWxlY3Rpb24gaXMgYXBwbGllZCB0aGUgb3JpZ2luYWwgZmlsZSBpcyBleHBvcnRlZC48L3A+XHJcblxyXG4gICAgPGF1ZGlvLWRpc3BsYXktc2Nyb2xsLXBhbmUgI2F1ZGlvRGlzcGxheVNjcm9sbFBhbmU+PC9hdWRpby1kaXNwbGF5LXNjcm9sbC1wYW5lPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY3RybHZpZXdcIj5cclxuICAgICAgICA8YXBwLXJlY29yZGluZy1maWxlLW1ldGEgW3Nlc3Npb25JZF09XCJzZXNzaW9uSWRcIiAgW3JlY29yZGluZ0ZpbGVdPVwicmVjb3JkaW5nRmlsZVwiPjwvYXBwLXJlY29yZGluZy1maWxlLW1ldGE+XHJcbiAgICA8YXVkaW8tZGlzcGxheS1jb250cm9sIFthdWRpb0NsaXBdPVwiYXVkaW9DbGlwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxheVN0YXJ0QWN0aW9uXT1cInBsYXlTdGFydEFjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYXlTZWxlY3Rpb25BY3Rpb25dPVwicGxheVNlbGVjdGlvbkFjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYXlTdG9wQWN0aW9uXT1cInBsYXlTdG9wQWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXV0b1BsYXlPblNlbGVjdFRvZ2dsZUFjdGlvbl09XCJhcD8uYXV0b1BsYXlPblNlbGVjdFRvZ2dsZUFjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3pvb21JbkFjdGlvbl09XCJ6b29tSW5BY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt6b29tT3V0QWN0aW9uXT1cInpvb21PdXRBY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt6b29tU2VsZWN0ZWRBY3Rpb25dPVwiem9vbVNlbGVjdGVkQWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3pvb21GaXRUb1BhbmVsQWN0aW9uXT1cInpvb21GaXRUb1BhbmVsQWN0aW9uXCI+PC9hdWRpby1kaXNwbGF5LWNvbnRyb2w+XHJcbiAgICAgICAgPGFwcC1yZWNvcmRpbmctZmlsZS1uYXZpIFtpdGVtc109XCJhdmFpbFJlY0ZpbGVzPy5sZW5ndGhcIiBbaXRlbVBvc109XCJwb3NJbkxpc3RcIiBbdmVyc2lvbl09XCJyZWNvcmRpbmdGaWxlVmVyc2lvblwiIFt2ZXJzaW9uc109XCJ2ZXJzaW9uc1wiIFtmaXJzdEFjdGlvbl09XCJmaXJzdEFjdGlvblwiIFtwcmV2QWN0aW9uXT1cInByZXZBY3Rpb25cIiBbbmV4dEFjdGlvbl09XCJuZXh0QWN0aW9uXCIgW2xhc3RBY3Rpb25dPVwibGFzdEFjdGlvblwiIFtzZWxlY3RWZXJzaW9uXT1cInRvVmVyc2lvbkFjdGlvblwiIFtuYXZpSW5mb0xvYWRpbmddPVwibmF2aUluZm9Mb2FkaW5nXCI+PC9hcHAtcmVjb3JkaW5nLWZpbGUtbmF2aT5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwiYWNjZW50XCIgKGNsaWNrKT1cImFwcGx5U2VsZWN0aW9uKClcIiBbZGlzYWJsZWRdPVwiZWRpdFNhdmVkXCI+e3t0aGlzLmFwcGx5QnV0dG9uVGV4dCgpfX08L2J1dHRvbj5cclxuICBgLFxyXG4gIHN0eWxlczogW1xyXG4gICAgYDpob3N0IHtcclxuICAgICAgICAgIGZsZXg6IDI7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgIG1pbi1oZWlnaHQ6MDtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgfWAsYFxyXG4gICAgICAgIC5jdHJsdmlld3tcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIH1cclxuICAgIGAsYFxyXG4gICAgICBhdWRpby1kaXNwbGF5LWNvbnRyb2x7XHJcblxyXG4gICAgICAgIGZsZXg6IDM7XHJcbiAgICAgIH1cclxuICAgIGBdXHJcblxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVjb3JkaW5nRmlsZVVJIGV4dGVuZHMgUmVjb3JkaW5nRmlsZVZpZXdDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuXHJcbiAgc2F2ZWRFZGl0U2VsZWN0aW9uOlNlbGVjdGlvbnxudWxsPW51bGw7XHJcbiAgZWRpdFNhdmVkOmJvb2xlYW49dHJ1ZVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcmVjb3JkaW5nRmlsZVNlcnZpY2U6UmVjb3JkaW5nRmlsZVNlcnZpY2UscHJvdGVjdGVkIHJlY29yZGluZ1NlcnZpY2U6UmVjb3JkaW5nU2VydmljZSxwcm90ZWN0ZWQgc2Vzc2lvblNlcnZpY2U6U2Vzc2lvblNlcnZpY2UscHJvdGVjdGVkIHJvdXRlcjpSb3V0ZXIscHJvdGVjdGVkIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSwgcHJvdGVjdGVkIHJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYscHJvdGVjdGVkIGVSZWY6RWxlbWVudFJlZiwgcHJvdGVjdGVkIGRpYWxvZzpNYXREaWFsb2cscHJpdmF0ZSBzbmFja0JhcjogTWF0U25hY2tCYXIpIHtcclxuICAgIHN1cGVyKHJlY29yZGluZ0ZpbGVTZXJ2aWNlLHJlY29yZGluZ1NlcnZpY2Usc2Vzc2lvblNlcnZpY2Uscm91dGVyLHJvdXRlLHJlZixlUmVmLGRpYWxvZylcclxuICAgIHRoaXMucGFyZW50RT10aGlzLmVSZWYubmF0aXZlRWxlbWVudDtcclxuXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKVxyXG4gIH1cclxuXHJcbiAgYXBwbHlCdXR0b25UZXh0KCk6c3RyaW5nIHtcclxuICAgIGlmKHRoaXMuYXVkaW9DbGlwKSB7XHJcbiAgICAgIGxldCBzID0gdGhpcy5hdWRpb0NsaXAuc2VsZWN0aW9uXHJcbiAgICAgIGlmIChzKSB7XHJcbiAgICAgICAgcmV0dXJuIFwiQXBwbHkgY3VycmVudCBzZWxlY3Rpb24gYXMgZWRpdGluZyBzZWxlY3Rpb25cIjtcclxuICAgICAgfWVsc2V7XHJcbiAgICAgICAgcmV0dXJuIFwiQ2FuY2VsIG91dCBlZGl0aW5nIHNlbGVjdGlvblwiO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBqdXN0IGFzIGZhbGxiYWNrXHJcbiAgICByZXR1cm4gXCJBcHBseSBzZWxlY3Rpb25cIjtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBsb2FkUmVjRmlsZShyZklkOm51bWJlciB8IHN0cmluZykge1xyXG4gICAgdGhpcy5lZGl0U2F2ZWQgPSB0cnVlO1xyXG4gICAgc3VwZXIubG9hZFJlY0ZpbGUocmZJZCk7XHJcbiAgfVxyXG5cclxucHJvdGVjdGVkIGxvYWRlZFJlY2ZpbGUoKSB7XHJcbiAgc3VwZXIubG9hZGVkUmVjZmlsZSgpO1xyXG4gIGlmKHRoaXMuYXVkaW9DbGlwKSB7XHJcbiAgICB0aGlzLmF1ZGlvQ2xpcC5hZGRTZWxlY3Rpb25PYnNlcnZlcigoY2xpcCkgPT4ge1xyXG4gICAgICBsZXQgcyA9IGNsaXAuc2VsZWN0aW9uXHJcbiAgICAgIHRoaXMuZWRpdFNhdmVkID0gKCh0aGlzLnNhdmVkRWRpdFNlbGVjdGlvbiA9PSBudWxsICYmIHMgPT0gbnVsbCkgfHwgdGhpcy5zYXZlZEVkaXRTZWxlY3Rpb24gIT0gbnVsbCAmJiB0aGlzLnNhdmVkRWRpdFNlbGVjdGlvbi5lcXVhbHMocykpXHJcbiAgICB9KTtcclxuICB9XHJcbiAgdGhpcy5zYXZlZEVkaXRTZWxlY3Rpb24gPSB0aGlzLmF1ZGlvQ2xpcD90aGlzLmF1ZGlvQ2xpcC5zZWxlY3Rpb246bnVsbDtcclxuICB0aGlzLmVkaXRTYXZlZCA9IHRydWVcclxufVxyXG5cclxuICBhcHBseVNlbGVjdGlvbigpe1xyXG4gICAgaWYodGhpcy5hdWRpb0NsaXApIHtcclxuICAgICAgbGV0IGFiPXRoaXMuYXVkaW9DbGlwLmJ1ZmZlcjtcclxuICAgICAgbGV0IHMgPSB0aGlzLmF1ZGlvQ2xpcC5zZWxlY3Rpb25cclxuICAgICAgaWYgKGFiICYmIHRoaXMucmVjb3JkaW5nRmlsZT8ucmVjb3JkaW5nRmlsZUlkKSB7XHJcblxyXG4gICAgICAgIGxldCBzcj0gbnVsbDtcclxuICAgICAgICBsZXQgc2Y9bnVsbDtcclxuICAgICAgICBsZXQgZWY9bnVsbDtcclxuICAgICAgICBpZihzKSB7XHJcbiAgICAgICAgICBzcj0gYWIuc2FtcGxlUmF0ZTtcclxuICAgICAgICAgIHNmID0gcy5zdGFydEZyYW1lO1xyXG4gICAgICAgICAgZWYgPSBzLmVuZEZyYW1lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAgIHRoaXMucmVjb3JkaW5nRmlsZVNlcnZpY2Uuc2F2ZUVkaXRTZWxlY3Rpb24odGhpcy5yZWNvcmRpbmdGaWxlLnJlY29yZGluZ0ZpbGVJZCwgc3IsIHNmLCBlZikuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5kaWFsb2cub3BlbihNZXNzYWdlRGlhbG9nLCB7XHJcblxyXG4gICAgICAgICAgICAgICAgZGF0YToge1xyXG4gICAgICAgICAgICAgICAgICB0eXBlOiAnZXJyb3InLFxyXG4gICAgICAgICAgICAgICAgICB0aXRsZTogJ1NhdmUgc2VsZWN0aW9uIGVkaXQgZXJyb3InLFxyXG4gICAgICAgICAgICAgICAgICBtc2c6IFwiQ291bGQgbm90IHNhdmUgZWRpdCBzZWxlY3Rpb24gdG8gV2lraVNwZWVjaCBzZXJ2ZXIhXCIsXHJcbiAgICAgICAgICAgICAgICAgIGFkdmljZTogXCJQbGVhc2UgY2hlY2sgbmV0d29yayBjb25uZWN0aW9uIGFuZCBzZXJ2ZXIgc3RhdGUuXCJcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgLy8gT3IgdXNlIHJldHVybmVkIHNlbGVjdGlvbiB2YWx1ZSBmcm9tIHNlcnZlcj9cclxuICAgICAgICAgICAgICB0aGlzLnNhdmVkRWRpdFNlbGVjdGlvbiA9IHNcclxuICAgICAgICAgICAgICB0aGlzLmVkaXRTYXZlZCA9IHRydWVcclxuICAgICAgICAgICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oJ1NlbGVjdGlvbiBlZGl0IHNhdmVkIHN1Y2Nlc3NmdWxseS4nLCAnT0snLCB7ZHVyYXRpb246IDE1MDB9KVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbiJdfQ==
|
|
@@ -32,6 +32,7 @@ export class RecordingFileViewComponent extends AudioDisplayPlayer {
|
|
|
32
32
|
//protected _recordingFileId: string | number = null;
|
|
33
33
|
this.sessionId = null;
|
|
34
34
|
this.sessionIdFromRoute = null;
|
|
35
|
+
this.availRecFiles = null;
|
|
35
36
|
this.versions = null;
|
|
36
37
|
this.recordingFile = null;
|
|
37
38
|
this.recordingFileVersion = null;
|
|
@@ -98,7 +99,7 @@ export class RecordingFileViewComponent extends AudioDisplayPlayer {
|
|
|
98
99
|
}
|
|
99
100
|
}
|
|
100
101
|
navigateToRecordingFile() {
|
|
101
|
-
if (this.posInList != null) {
|
|
102
|
+
if (this.posInList != null && this.availRecFiles) {
|
|
102
103
|
let latestNextRf = this.availRecFiles[this.posInList][0];
|
|
103
104
|
let lnRfId = latestNextRf.recordingFileId;
|
|
104
105
|
if (lnRfId) {
|
|
@@ -109,7 +110,7 @@ export class RecordingFileViewComponent extends AudioDisplayPlayer {
|
|
|
109
110
|
toVersion(ae) {
|
|
110
111
|
let toRfId = null;
|
|
111
112
|
let version = ae.value;
|
|
112
|
-
if (this.posInList != null) {
|
|
113
|
+
if (this.posInList != null && this.availRecFiles) {
|
|
113
114
|
let cRfs = this.availRecFiles[this.posInList];
|
|
114
115
|
let availVersionCnt = cRfs.length;
|
|
115
116
|
for (let cRf of cRfs) {
|
|
@@ -364,8 +365,8 @@ export class RecordingFileViewComponent extends AudioDisplayPlayer {
|
|
|
364
365
|
}
|
|
365
366
|
}
|
|
366
367
|
}
|
|
367
|
-
RecordingFileViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.
|
|
368
|
-
RecordingFileViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.
|
|
368
|
+
RecordingFileViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RecordingFileViewComponent, deps: [{ token: i1.RecordingFileService }, { token: i2.RecordingService }, { token: i3.SessionService }, { token: i4.Router }, { token: i4.ActivatedRoute }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i5.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
|
|
369
|
+
RecordingFileViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: RecordingFileViewComponent, selector: "app-audiodisplayplayer", viewQueries: [{ propertyName: "ac", first: true, predicate: AudioDisplayScrollPane, descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
|
369
370
|
|
|
370
371
|
<audio-display-scroll-pane #audioDisplayScrollPane></audio-display-scroll-pane>
|
|
371
372
|
<div class="ctrlview">
|
|
@@ -383,7 +384,7 @@ RecordingFileViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
|
|
|
383
384
|
<app-recording-file-navi [items]="availRecFiles?.length" [itemPos]="posInList" [version]="recordingFileVersion" [versions]="versions" [firstAction]="firstAction" [prevAction]="prevAction" [nextAction]="nextAction" [lastAction]="lastAction" [selectVersion]="toVersionAction" [naviInfoLoading]="naviInfoLoading"></app-recording-file-navi>
|
|
384
385
|
</div>
|
|
385
386
|
`, isInline: true, styles: [":host{flex:2;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:20px;z-index:5;box-sizing:border-box;background-color:#fff}\n", ".ctrlview{display:flex;flex-direction:row}\n", "audio-display-control{flex:3}\n"], dependencies: [{ kind: "component", type: i6.AudioDisplayScrollPane, selector: "audio-display-scroll-pane", inputs: ["audioClip"], outputs: ["zoomInAction", "zoomOutAction", "zoomSelectedAction", "zoomFitToPanelAction"] }, { kind: "component", type: i7.AudioDisplayControl, selector: "audio-display-control", inputs: ["audioClip", "playStartAction", "playSelectionAction", "playStopAction", "zoomInAction", "zoomOutAction", "zoomFitToPanelAction", "zoomSelectedAction", "autoPlayOnSelectToggleAction"] }, { kind: "component", type: i8.RecordingFileNaviComponent, selector: "app-recording-file-navi", inputs: ["firstAction", "prevAction", "nextAction", "lastAction", "items", "itemPos", "selectVersion", "versions", "version", "naviInfoLoading"] }, { kind: "component", type: i9.RecordingFileMetaComponent, selector: "app-recording-file-meta", inputs: ["sessionId", "recordingFile"] }] });
|
|
386
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.
|
|
387
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: RecordingFileViewComponent, decorators: [{
|
|
387
388
|
type: Component,
|
|
388
389
|
args: [{ selector: 'app-audiodisplayplayer', template: `
|
|
389
390
|
|
|
@@ -407,4 +408,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
407
408
|
type: ViewChild,
|
|
408
409
|
args: [AudioDisplayScrollPane]
|
|
409
410
|
}] } });
|
|
410
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkaW5nLWZpbGUtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGVlY2hyZWNvcmRlcm5nL3NyYy9saWIvc3BlZWNocmVjb3JkZXIvc2Vzc2lvbi9yZWNvcmRpbmdmaWxlL3JlY29yZGluZy1maWxlLXZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsU0FBUyxHQUdWLE1BQU0sZUFBZSxDQUFBO0FBUXRCLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRS9ELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQ25GLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFbkQsT0FBTyxFQUFDLE1BQU0sRUFBYyxNQUFNLHdCQUF3QixDQUFDO0FBSTNELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7Ozs7OztBQUduRCxNQUFNLE9BQU8sYUFBYTtDQUV6QjtBQWlERCxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsa0JBQWtCO0lBMkJoRSxZQUFzQixvQkFBMEMsRUFBWSxnQkFBa0MsRUFBWSxjQUE4QixFQUFZLE1BQWEsRUFBVyxLQUFxQixFQUFZLEdBQXNCLEVBQVksSUFBZ0IsRUFBWSxNQUFpQjtRQUMxUyxLQUFLLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQTtRQURILHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFBWSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQVksbUJBQWMsR0FBZCxjQUFjLENBQWdC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Ozs7Ozs7Ozs7Ozs7OztHQWlCVDs0RkEwQlUsMEJBQTBCO2tCQS9DdEMsU0FBUzsrQkFFRSx3QkFBd0IsWUFFeEI7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUJUOzBTQTJDTyxFQUFFO3NCQURULFNBQVM7dUJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgVmlld0NoaWxkLFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIEFmdGVyVmlld0luaXQsIElucHV0LCBFbGVtZW50UmVmLCBPbkluaXQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuXHJcblxyXG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlLCBQYXJhbXMsIFJvdXRlLCBSb3V0ZXJ9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuXHJcblxyXG5pbXBvcnQge1JlY29yZGluZ0ZpbGVTZXJ2aWNlfSBmcm9tIFwiLi9yZWNvcmRpbmdmaWxlLXNlcnZpY2VcIjtcclxuaW1wb3J0IHtNYXREaWFsb2d9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2dcIjtcclxuaW1wb3J0IHtBdWRpb0Rpc3BsYXlQbGF5ZXJ9IGZyb20gXCIuLi8uLi8uLi9hdWRpby9hdWRpb19wbGF5ZXJcIjtcclxuXHJcbmltcG9ydCB7QXVkaW9EaXNwbGF5U2Nyb2xsUGFuZX0gZnJvbSBcIi4uLy4uLy4uL2F1ZGlvL3VpL2F1ZGlvX2Rpc3BsYXlfc2Nyb2xsX3BhbmVcIjtcclxuaW1wb3J0IHtBdWRpb0NvbnRleHRQcm92aWRlcn0gZnJvbSBcIi4uLy4uLy4uL2F1ZGlvL2NvbnRleHRcIjtcclxuaW1wb3J0IHtBdWRpb0NsaXB9IGZyb20gXCIuLi8uLi8uLi9hdWRpby9wZXJzaXN0b3JcIjtcclxuaW1wb3J0IHtTZWxlY3Rpb259IGZyb20gXCIuLi8uLi8uLi9hdWRpby9wZXJzaXN0b3JcIjtcclxuXHJcbmltcG9ydCB7QWN0aW9uLCBBY3Rpb25FdmVudH0gZnJvbSBcIi4uLy4uLy4uL2FjdGlvbi9hY3Rpb25cIjtcclxuaW1wb3J0IHtTZXNzaW9uU2VydmljZX0gZnJvbSBcIi4uL3Nlc3Npb24uc2VydmljZVwiO1xyXG5pbXBvcnQge1JlY29yZGluZ1NlcnZpY2V9IGZyb20gXCIuLi8uLi9yZWNvcmRpbmdzL3JlY29yZGluZ3Muc2VydmljZVwiO1xyXG5pbXBvcnQge1JlY29yZGluZ0ZpbGUsIFNwclJlY29yZGluZ0ZpbGV9IGZyb20gXCIuLi8uLi9yZWNvcmRpbmdcIjtcclxuaW1wb3J0IHtSZWNvcmRpbmdGaWxlVXRpbH0gZnJvbSBcIi4vcmVjb3JkaW5nLWZpbGVcIjtcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgSXRlbWNvZGVJbmRleHtcclxuICBbaXRlbWNvZGU6IHN0cmluZ106IEFycmF5PFNwclJlY29yZGluZ0ZpbGU+O1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHJcbiAgc2VsZWN0b3I6ICdhcHAtYXVkaW9kaXNwbGF5cGxheWVyJyxcclxuXHJcbiAgdGVtcGxhdGU6IGBcclxuXHJcbiAgICA8YXVkaW8tZGlzcGxheS1zY3JvbGwtcGFuZSAjYXVkaW9EaXNwbGF5U2Nyb2xsUGFuZT48L2F1ZGlvLWRpc3BsYXktc2Nyb2xsLXBhbmU+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY3RybHZpZXdcIj5cclxuICAgICAgPGFwcC1yZWNvcmRpbmctZmlsZS1tZXRhIFtzZXNzaW9uSWRdPVwic2Vzc2lvbklkXCIgW3JlY29yZGluZ0ZpbGVdPVwicmVjb3JkaW5nRmlsZVwiPjwvYXBwLXJlY29yZGluZy1maWxlLW1ldGE+XHJcblxyXG4gICAgPGF1ZGlvLWRpc3BsYXktY29udHJvbCBbYXVkaW9DbGlwXT1cImF1ZGlvQ2xpcFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYXlTdGFydEFjdGlvbl09XCJwbGF5U3RhcnRBY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGF5U2VsZWN0aW9uQWN0aW9uXT1cInBsYXlTZWxlY3Rpb25BY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGF5U3RvcEFjdGlvbl09XCJwbGF5U3RvcEFjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F1dG9QbGF5T25TZWxlY3RUb2dnbGVBY3Rpb25dPVwiYXA/LmF1dG9QbGF5T25TZWxlY3RUb2dnbGVBY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt6b29tSW5BY3Rpb25dPVwiem9vbUluQWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbem9vbU91dEFjdGlvbl09XCJ6b29tT3V0QWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbem9vbVNlbGVjdGVkQWN0aW9uXT1cInpvb21TZWxlY3RlZEFjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIFt6b29tRml0VG9QYW5lbEFjdGlvbl09XCJ6b29tRml0VG9QYW5lbEFjdGlvblwiPjwvYXVkaW8tZGlzcGxheS1jb250cm9sPlxyXG4gICAgICA8YXBwLXJlY29yZGluZy1maWxlLW5hdmkgW2l0ZW1zXT1cImF2YWlsUmVjRmlsZXM/Lmxlbmd0aFwiIFtpdGVtUG9zXT1cInBvc0luTGlzdFwiIFt2ZXJzaW9uXT1cInJlY29yZGluZ0ZpbGVWZXJzaW9uXCIgW3ZlcnNpb25zXT1cInZlcnNpb25zXCIgW2ZpcnN0QWN0aW9uXT1cImZpcnN0QWN0aW9uXCIgW3ByZXZBY3Rpb25dPVwicHJldkFjdGlvblwiIFtuZXh0QWN0aW9uXT1cIm5leHRBY3Rpb25cIiBbbGFzdEFjdGlvbl09XCJsYXN0QWN0aW9uXCIgW3NlbGVjdFZlcnNpb25dPVwidG9WZXJzaW9uQWN0aW9uXCIgW25hdmlJbmZvTG9hZGluZ109XCJuYXZpSW5mb0xvYWRpbmdcIj48L2FwcC1yZWNvcmRpbmctZmlsZS1uYXZpPlxyXG4gICAgICA8L2Rpdj5cclxuICBgLFxyXG4gIHN0eWxlczogW1xyXG4gICAgYDpob3N0IHtcclxuICAgICAgICAgIGZsZXg6IDI7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgIG1pbi1oZWlnaHQ6MDtcclxuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgfWAsYFxyXG4gICAgICAgIC5jdHJsdmlld3tcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cclxuICAgICAgICB9XHJcbiAgICBgLGBcclxuICAgICAgYXVkaW8tZGlzcGxheS1jb250cm9se1xyXG5cclxuICAgICAgICBmbGV4OiAzO1xyXG4gICAgICB9XHJcbiAgICBgXVxyXG5cclxufSlcclxuZXhwb3J0IGNsYXNzIFJlY29yZGluZ0ZpbGVWaWV3Q29tcG9uZW50IGV4dGVuZHMgQXVkaW9EaXNwbGF5UGxheWVyIGltcGxlbWVudHMgT25Jbml0LEFmdGVyVmlld0luaXQge1xyXG5cclxuICAvL3Byb3RlY3RlZCBfcmVjb3JkaW5nRmlsZUlkOiBzdHJpbmcgfCBudW1iZXIgPSBudWxsO1xyXG5cclxuICBzZXNzaW9uSWQ6IHN0cmluZyB8IG51bWJlciB8IG51bGw9IG51bGw7XHJcbiAgc2Vzc2lvbklkRnJvbVJvdXRlOnN0cmluZ3xudWxsPW51bGw7XHJcblxyXG4gIGF2YWlsUmVjRmlsZXMhOiBBcnJheTxBcnJheTxTcHJSZWNvcmRpbmdGaWxlPj47XHJcbiAgdmVyc2lvbnM6IEFycmF5PG51bWJlcj58bnVsbD1udWxsO1xyXG5cclxuICByZWNvcmRpbmdGaWxlOiBTcHJSZWNvcmRpbmdGaWxlfG51bGw9bnVsbDtcclxuICByZWNvcmRpbmdGaWxlVmVyc2lvbjpudW1iZXJ8bnVsbD1udWxsO1xyXG4gIHByaXZhdGUgcm91dGVkQnlRdWVyeVBhcmFtPWZhbHNlO1xyXG4gIHBvc0luTGlzdDogbnVtYmVyfG51bGw9bnVsbDtcclxuXHJcblxyXG4gIEBWaWV3Q2hpbGQoQXVkaW9EaXNwbGF5U2Nyb2xsUGFuZSlcclxuICBwcml2YXRlIGFjITogQXVkaW9EaXNwbGF5U2Nyb2xsUGFuZTtcclxuXHJcbiAgZmlyc3RBY3Rpb246IEFjdGlvbjx2b2lkPjtcclxuICBwcmV2QWN0aW9uOiBBY3Rpb248dm9pZD47XHJcbiAgbmV4dEFjdGlvbjogQWN0aW9uPHZvaWQ+O1xyXG4gIGxhc3RBY3Rpb246IEFjdGlvbjx2b2lkPjtcclxuICB0b1ZlcnNpb25BY3Rpb246IEFjdGlvbjxudW1iZXI+O1xyXG5cclxuICBuYXZpSW5mb0xvYWRpbmc9ZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCByZWNvcmRpbmdGaWxlU2VydmljZTogUmVjb3JkaW5nRmlsZVNlcnZpY2UsIHByb3RlY3RlZCByZWNvcmRpbmdTZXJ2aWNlOiBSZWNvcmRpbmdTZXJ2aWNlLCBwcm90ZWN0ZWQgc2Vzc2lvblNlcnZpY2U6IFNlc3Npb25TZXJ2aWNlLCBwcm90ZWN0ZWQgcm91dGVyOlJvdXRlcixwcm90ZWN0ZWQgcm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwcm90ZWN0ZWQgcmVmOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJvdGVjdGVkIGVSZWY6IEVsZW1lbnRSZWYsIHByb3RlY3RlZCBkaWFsb2c6IE1hdERpYWxvZykge1xyXG4gICAgc3VwZXIocm91dGUsIHJlZiwgZVJlZilcclxuICAgIHRoaXMucGFyZW50RSA9IHRoaXMuZVJlZi5uYXRpdmVFbGVtZW50O1xyXG4gICAgdGhpcy5maXJzdEFjdGlvbiA9IG5ldyBBY3Rpb248dm9pZD4oJ0ZpcnN0Jyk7XHJcbiAgICB0aGlzLmZpcnN0QWN0aW9uLm9uQWN0aW9uPSAoKT0+e1xyXG4gICAgICB0aGlzLnBvc0luTGlzdD0wO1xyXG4gICAgICB0aGlzLm5hdmlnYXRlVG9SZWNvcmRpbmdGaWxlKCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnByZXZBY3Rpb24gPSBuZXcgQWN0aW9uPHZvaWQ+KCdQcmV2aW91cycpO1xyXG4gICAgdGhpcy5wcmV2QWN0aW9uLm9uQWN0aW9uPSAoKT0+dGhpcy5wcmV2RmlsZSgpO1xyXG4gICAgdGhpcy5uZXh0QWN0aW9uID0gbmV3IEFjdGlvbjx2b2lkPignTmV4dCcpO1xyXG4gICAgdGhpcy5uZXh0QWN0aW9uLm9uQWN0aW9uPSAoKT0+dGhpcy5uZXh0RmlsZSgpO1xyXG4gICAgdGhpcy5sYXN0QWN0aW9uID0gbmV3IEFjdGlvbjx2b2lkPignTGFzdCcpO1xyXG4gICAgdGhpcy5sYXN0QWN0aW9uLm9uQWN0aW9uPSAoKT0+e1xyXG4gICAgICBpZih0aGlzLmF2YWlsUmVjRmlsZXMpIHtcclxuICAgICAgICB0aGlzLnBvc0luTGlzdCA9IHRoaXMuYXZhaWxSZWNGaWxlcy5sZW5ndGggLSAxO1xyXG4gICAgICAgIHRoaXMubmF2aWdhdGVUb1JlY29yZGluZ0ZpbGUoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMudG9WZXJzaW9uQWN0aW9uPW5ldyBBY3Rpb248bnVtYmVyPignVG8gdmVyc2lvbicpO1xyXG4gICAgdGhpcy50b1ZlcnNpb25BY3Rpb24ub25BY3Rpb249IChhZSk9PnRoaXMudG9WZXJzaW9uKGFlKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgc3VwZXIubmdPbkluaXQoKTtcclxuXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKVxyXG4gICAgdGhpcy5yb3V0ZS5xdWVyeVBhcmFtcy5zdWJzY3JpYmUoKHBhcmFtczogUGFyYW1zKSA9PiB7XHJcbiAgICAgIGxldCByZklkUCA9IHBhcmFtc1sncmVjb3JkaW5nRmlsZUlkJ107XHJcbiAgICAgIGxldCBzSWRQID0gcGFyYW1zWydzZXNzaW9uSWQnXTtcclxuICAgICAgaWYgKHNJZFApIHtcclxuICAgICAgIHRoaXMuc2Vzc2lvbklkRnJvbVJvdXRlPXNJZFA7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHJmSWRQKSB7XHJcbiAgICAgICAgdGhpcy5yb3V0ZWRCeVF1ZXJ5UGFyYW09dHJ1ZTtcclxuICAgICAgICB0aGlzLmxvYWRSZWNGaWxlKHJmSWRQKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLnJvdXRlLnBhcmFtcy5zdWJzY3JpYmUoKHBhcmFtczogUGFyYW1zKSA9PiB7XHJcbiAgICAgIGxldCByZklkUCA9IHBhcmFtc1sncmVjb3JkaW5nRmlsZUlkJ107XHJcbiAgICAgIGxldCBzSWRQID0gcGFyYW1zWydzZXNzaW9uSWQnXTtcclxuICAgICAgaWYgKHNJZFApIHtcclxuICAgICAgICB0aGlzLnNlc3Npb25JZEZyb21Sb3V0ZT1zSWRQO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChyZklkUCkge1xyXG4gICAgICAgIHRoaXMucm91dGVkQnlRdWVyeVBhcmFtPWZhbHNlO1xyXG4gICAgICAgIHRoaXMubG9hZFJlY0ZpbGUocmZJZFApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIC8vIGlmKHRoaXMuc2Vzc2lvbklkKXtcclxuICAgIC8vICAgICB0aGlzLmxvYWRTZXNzaW9uKHRoaXMuc2Vzc2lvbklkKTtcclxuICAgIC8vIH1cclxuICB9XHJcblxyXG5cclxuICBwcml2YXRlIG5hdmlnYXRlVG9JZChyZklkOm51bWJlcnwgc3RyaW5nKXtcclxuXHJcbiAgICBpZih0aGlzLnJvdXRlZEJ5UXVlcnlQYXJhbSl7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtdLCB7cmVsYXRpdmVUbzogdGhpcy5yb3V0ZSwgcXVlcnlQYXJhbXM6eydyZWNvcmRpbmdGaWxlSWQnOnJmSWR9fSlcclxuICAgIH1lbHNlIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycuLi8nICsgcmZJZF0sIHtyZWxhdGl2ZVRvOiB0aGlzLnJvdXRlfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG5hdmlnYXRlVG9SZWNvcmRpbmdGaWxlKCl7XHJcbiAgICBpZih0aGlzLnBvc0luTGlzdCE9bnVsbCkge1xyXG4gICAgICBsZXQgbGF0ZXN0TmV4dFJmID0gdGhpcy5hdmFpbFJlY0ZpbGVzW3RoaXMucG9zSW5MaXN0XVswXTtcclxuICAgICAgbGV0IGxuUmZJZCA9IGxhdGVzdE5leHRSZi5yZWNvcmRpbmdGaWxlSWQ7XHJcbiAgICAgIGlmKGxuUmZJZCkge1xyXG4gICAgICAgIHRoaXMubmF2aWdhdGVUb0lkKGxuUmZJZCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRvVmVyc2lvbihhZTogQWN0aW9uRXZlbnQ8bnVtYmVyPikge1xyXG4gICAgbGV0IHRvUmZJZCA9IG51bGw7XHJcbiAgICBsZXQgdmVyc2lvbiA9IGFlLnZhbHVlO1xyXG4gICAgaWYodGhpcy5wb3NJbkxpc3QhPW51bGwpIHtcclxuICAgICAgbGV0IGNSZnMgPSB0aGlzLmF2YWlsUmVjRmlsZXNbdGhpcy5wb3NJbkxpc3RdO1xyXG4gICAgICBsZXQgYXZhaWxWZXJzaW9uQ250ID0gY1Jmcy5sZW5ndGg7XHJcbiAgICAgIGZvciAobGV0IGNSZiBvZiBjUmZzKSB7XHJcbiAgICAgICAgaWYoY1JmLnZlcnNpb24gIT1udWxsKSB7XHJcbiAgICAgICAgICBpZiAoY1JmLnZlcnNpb24gPT09IHZlcnNpb24pIHtcclxuICAgICAgICAgICAgdG9SZklkID0gY1JmLnJlY29yZGluZ0ZpbGVJZDtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAodG9SZklkICE9IG51bGwpIHtcclxuICAgICAgdGhpcy5uYXZpZ2F0ZVRvSWQodG9SZklkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICBwcmV2RmlsZSgpIHtcclxuICAgIGlmKHRoaXMucG9zSW5MaXN0IT1udWxsKSB7XHJcbiAgICAgIHRoaXMucG9zSW5MaXN0LS07XHJcbiAgICB9XHJcbiAgICB0aGlzLm5hdmlnYXRlVG9SZWNvcmRpbmdGaWxlKClcclxuICB9XHJcbiAgbmV4dEZpbGUoKSB7XHJcbiAgICBpZih0aGlzLnBvc0luTGlzdCE9bnVsbCkge1xyXG4gICAgICB0aGlzLnBvc0luTGlzdCsrO1xyXG4gICAgfVxyXG4gICAgdGhpcy5uYXZpZ2F0ZVRvUmVjb3JkaW5nRmlsZSgpXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHBvc2l0aW9uSW5MaXN0KCk6bnVtYmVyIHwgbnVsbHtcclxuICAgIGlmICh0aGlzLmF2YWlsUmVjRmlsZXMgJiYgdGhpcy5yZWNvcmRpbmdGaWxlKSB7XHJcbiAgICAgIGxldCBjaWM9dGhpcy5yZWNvcmRpbmdGaWxlLml0ZW1Db2RlO1xyXG4gICAgICBpZighY2ljICYmIHRoaXMucmVjb3JkaW5nRmlsZS5yZWNvcmRpbmcgJiYgdGhpcy5yZWNvcmRpbmdGaWxlLnJlY29yZGluZy5pdGVtY29kZSl7XHJcbiAgICAgICAgY2ljPXRoaXMucmVjb3JkaW5nRmlsZS5yZWNvcmRpbmcuaXRlbWNvZGU7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGNpYykge1xyXG4gICAgICAgIGxldCBpdGVtQ250ID0gdGhpcy5hdmFpbFJlY0ZpbGVzLmxlbmd0aFxyXG4gICAgICAgIGZvciAobGV0IHJmZGkgPSAwOyByZmRpIDwgaXRlbUNudDsgcmZkaSsrKSB7XHJcbiAgICAgICAgICBsZXQgYXJSZiA9IHRoaXMuYXZhaWxSZWNGaWxlc1tyZmRpXVswXTtcclxuICAgICAgICAgIGlmIChhclJmLnJlY29yZGluZykge1xyXG4gICAgICAgICAgICBsZXQgYXIgPSBhclJmLnJlY29yZGluZztcclxuICAgICAgICAgICAgaWYgKGNpYyA9PT0gYXIuaXRlbWNvZGUpIHtcclxuICAgICAgICAgICAgICByZXR1cm4gcmZkaTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfWVsc2V7XHJcbiAgICAgICAgbGV0IGl0ZW1DbnQgPSB0aGlzLmF2YWlsUmVjRmlsZXMubGVuZ3RoXHJcbiAgICAgICAgZm9yIChsZXQgcmZkaSA9IDA7IHJmZGkgPCBpdGVtQ250OyByZmRpKyspIHtcclxuICAgICAgICAgIGxldCBhclJmID0gdGhpcy5hdmFpbFJlY0ZpbGVzW3JmZGldWzBdO1xyXG4gICAgICAgICAgICBpZiAodGhpcy5yZWNvcmRpbmdGaWxlLnV1aWQgPT09IGFyUmYudXVpZCkge1xyXG4gICAgICAgICAgICAgIHJldHVybiByZmRpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVQb3MoKXtcclxuICAgIHRoaXMucG9zSW5MaXN0PXRoaXMucG9zaXRpb25Jbkxpc3QoKTtcclxuICAgIHRoaXMudG9WZXJzaW9uQWN0aW9uLmRpc2FibGVkPXRydWU7XHJcbiAgICBpZih0aGlzLmF2YWlsUmVjRmlsZXMpe1xyXG4gICAgICBsZXQgYXZSZnNMZW49dGhpcy5hdmFpbFJlY0ZpbGVzLmxlbmd0aDtcclxuICAgICAgaWYodGhpcy5wb3NJbkxpc3QgIT1udWxsICYmIGF2UmZzTGVuPnRoaXMucG9zSW5MaXN0KSB7XHJcbiAgICAgICAgbGV0IGFyZnMgPSB0aGlzLmF2YWlsUmVjRmlsZXNbdGhpcy5wb3NJbkxpc3RdO1xyXG4gICAgICAgIGlmIChhcmZzKSB7XHJcbiAgICAgICAgICB0aGlzLnZlcnNpb25zID0gbmV3IEFycmF5PG51bWJlcj4oKTtcclxuICAgICAgICAgIGZvciAobGV0IGFyZiBvZiBhcmZzKSB7XHJcbiAgICAgICAgICAgIGlmKGFyZi5yZWNvcmRpbmc/Lml0ZW1jb2RlKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy52ZXJzaW9ucy5wdXNoKGFyZi52ZXJzaW9uKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgdGhpcy50b1ZlcnNpb25BY3Rpb24uZGlzYWJsZWQ9KHRoaXMudmVyc2lvbnMubGVuZ3RoPDIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmKHRoaXMucmVjb3JkaW5nRmlsZSl7XHJcbiAgICAgIGlmKHRoaXMucmVjb3JkaW5nRmlsZS52ZXJzaW9uKXtcclxuICAgICAgICB0aGlzLnJlY29yZGluZ0ZpbGVWZXJzaW9uPXRoaXMucmVjb3JkaW5nRmlsZS52ZXJzaW9uO1xyXG4gICAgICB9ZWxzZXtcclxuICAgICAgICB0aGlzLnJlY29yZGluZ0ZpbGVWZXJzaW9uPTA7XHJcbiAgICAgIH1cclxuICAgIH1lbHNle1xyXG4gICAgICB0aGlzLnJlY29yZGluZ0ZpbGVWZXJzaW9uPW51bGw7XHJcbiAgICB9XHJcbiAgICB0aGlzLnVwZGF0ZUFjdGlvbnMoKVxyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGxvYWRSZWNGaWxlKHJmSWQ6bnVtYmVyIHwgc3RyaW5nKSB7XHJcbiAgICB0aGlzLmFwPy5zdG9wKCk7XHJcbiAgICB0aGlzLmF1ZGlvQ2xpcCA9bnVsbDtcclxuICAgIHRoaXMucmVjb3JkaW5nRmlsZT1udWxsO1xyXG4gICAgdGhpcy5wb3NJbkxpc3Q9bnVsbDtcclxuICAgIHRoaXMudXBkYXRlQWN0aW9ucygpO1xyXG4gICAgbGV0IGF1ZGlvQ29udGV4dCA9IEF1ZGlvQ29udGV4dFByb3ZpZGVyLmF1ZGlvQ29udGV4dEluc3RhbmNlKCk7XHJcbiAgICBpZihhdWRpb0NvbnRleHQpIHtcclxuICAgICAgdGhpcy5yZWNvcmRpbmdGaWxlU2VydmljZS5mZXRjaFNwclJlY29yZGluZ0ZpbGUoYXVkaW9Db250ZXh0LCByZklkKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICAgIHRoaXMuc3RhdHVzID0gJ0F1ZGlvIGZpbGUgbG9hZGVkLic7XHJcbiAgICAgICAgbGV0IGNsaXAgPSBudWxsO1xyXG4gICAgICAgIHRoaXMucmVjb3JkaW5nRmlsZSA9IHZhbHVlO1xyXG4gICAgICAgIGlmICh0aGlzLnJlY29yZGluZ0ZpbGUpIHtcclxuICAgICAgICAgIGxldCBhYiA9IHRoaXMucmVjb3JkaW5nRmlsZS5hdWRpb0J1ZmZlcjtcclxuICAgICAgICAgIGlmIChhYikge1xyXG4gICAgICAgICAgICBjbGlwID0gbmV3IEF1ZGlvQ2xpcChhYik7XHJcblxyXG4gICAgICAgICAgICBsZXQgZXNmZnNyID0gbnVsbDtcclxuICAgICAgICAgICAgbGV0IGVlZmZzciA9IG51bGw7XHJcbiAgICAgICAgICAgIGxldCBlc3IgPSBudWxsO1xyXG5cclxuICAgICAgICAgICAgaWYgKGNsaXAuYnVmZmVyICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICBlc3IgPSBhYi5zYW1wbGVSYXRlO1xyXG4gICAgICAgICAgICAgIGlmIChlc3IgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgZXNmZnNyID0gUmVjb3JkaW5nRmlsZVV0aWwuZWRpdFN0YXJ0RnJhbWVGb3JTYW1wbGVSYXRlKHRoaXMucmVjb3JkaW5nRmlsZSwgZXNyKTtcclxuICAgICAgICAgICAgICAgIGVlZmZzciA9IFJlY29yZGluZ0ZpbGVVdGlsLmVkaXRFbmRGcmFtZUZvclNhbXBsZVJhdGUodGhpcy5yZWNvcmRpbmdGaWxlLCBlc3IpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBsZXQgc2VsOiBTZWxlY3Rpb24gfCBudWxsID0gbnVsbDtcclxuICAgICAgICAgICAgICBpZiAoZXNmZnNyICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIGlmIChlZWZmc3IgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgICBzZWwgPSBuZXcgU2VsZWN0aW9uKGFiLnNhbXBsZVJhdGUsIGVzZmZzciwgZWVmZnNyKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgIGxldCBjaDAgPSBhYi5nZXRDaGFubmVsRGF0YSgwKTtcclxuICAgICAgICAgICAgICAgICAgbGV0IGZyYW1lTGVuZ3RoID0gY2gwLmxlbmd0aDtcclxuICAgICAgICAgICAgICAgICAgc2VsID0gbmV3IFNlbGVjdGlvbihlc3IsIGVzZmZzciwgZnJhbWVMZW5ndGgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH0gZWxzZSBpZiAoZWVmZnNyICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIHNlbCA9IG5ldyBTZWxlY3Rpb24oZXNyLCAwLCBlZWZmc3IpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBjbGlwLnNlbGVjdGlvbiA9IHNlbFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuYXVkaW9DbGlwID0gY2xpcFxyXG4gICAgICAgIHRoaXMubG9hZGVkUmVjZmlsZSgpO1xyXG5cclxuICAgICAgfSwgZXJyb3IxID0+IHtcclxuICAgICAgICB0aGlzLnN0YXR1cyA9ICdFcnJvciBsb2FkaW5nIGF1ZGlvIGZpbGUhJztcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgbG9hZGVkUmVjZmlsZSgpIHtcclxuICAgIGlmKHRoaXMucmVjb3JkaW5nRmlsZSAmJiAhdGhpcy5zZXNzaW9uSWQpIHtcclxuICAgICAgbGV0IHNJZD10aGlzLnJlY29yZGluZ0ZpbGUuc2Vzc2lvblxyXG4gICAgICBpZighc0lkKXtcclxuICAgICAgICBzSWQ9dGhpcy5zZXNzaW9uSWRGcm9tUm91dGU7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHNJZCkge1xyXG4gICAgICAgIHRoaXMubG9hZFNlc3Npb24oc0lkKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMudXBkYXRlUG9zKCk7XHJcbiAgICB0aGlzLnJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZUFjdGlvbnMoKXtcclxuICAgIGxldCBpdGVtQ250Om51bWJlcnxudWxsPW51bGw7XHJcbiAgICBpZih0aGlzLmF2YWlsUmVjRmlsZXMpIHtcclxuICAgICAgaXRlbUNudCA9IHRoaXMuYXZhaWxSZWNGaWxlcy5sZW5ndGg7XHJcbiAgICB9XHJcbiAgICB0aGlzLmZpcnN0QWN0aW9uLmRpc2FibGVkPSh0aGlzLnBvc0luTGlzdD09bnVsbCB8fCB0aGlzLnBvc0luTGlzdCA9PSAwKTtcclxuICAgIHRoaXMucHJldkFjdGlvbi5kaXNhYmxlZD0odGhpcy5wb3NJbkxpc3Q9PW51bGwgfHwgdGhpcy5wb3NJbkxpc3QgPT0gMCk7XHJcbiAgICB0aGlzLm5leHRBY3Rpb24uZGlzYWJsZWQ9KHRoaXMucG9zSW5MaXN0PT1udWxsIHx8IGl0ZW1DbnQ9PW51bGwgfHwgdGhpcy5wb3NJbkxpc3QgPj0gaXRlbUNudCAtIDEpO1xyXG4gICAgdGhpcy5sYXN0QWN0aW9uLmRpc2FibGVkPSh0aGlzLnBvc0luTGlzdD09bnVsbCB8fCBpdGVtQ250PT1udWxsIHx8IHRoaXMucG9zSW5MaXN0ID49IGl0ZW1DbnQgLSAxKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbG9hZFNlc3Npb24oc2Vzc2lvbklkOiBzdHJpbmd8IG51bWJlcikge1xyXG4gICAgLy8gbG9hZCBzZXNzaW9uIGFuZCByZWNvcmRpbmcgZmlsZSBtZXRhIGRhdGEgb25seSB3aGVuIG9uIGluaXQgYW5kIHdoZW4gc2Vzc2lvbiBjaGFuZ2VzXHJcbiAgICBpZiAoPHN0cmluZz5zZXNzaW9uSWQgIT0gPHN0cmluZz50aGlzLnNlc3Npb25JZCkge1xyXG4gICAgICAvLyB0ZWxsIFVJIHRoYXQgd2UgYXJlIHdvcmtpbmcuLi5cclxuICAgICAgdGhpcy5uYXZpSW5mb0xvYWRpbmc9dHJ1ZTtcclxuICAgICAgdGhpcy5zZXNzaW9uU2VydmljZS5zZXNzaW9uT2JzZXJ2ZXIoPHN0cmluZz5zZXNzaW9uSWQpLnN1YnNjcmliZSgocykgPT4ge1xyXG4gICAgICAgIC8vIHJlY2VpdmVkIHNlc3Npb24gZGF0YVxyXG4gICAgICAgIHRoaXMuc2Vzc2lvbklkID0gcy5zZXNzaW9uSWQ7XHJcbiAgICAgICAgLy8gZmV0Y2ggcmVjb3JkaW5nIGZpbGUgbWV0YSBkYXRhIGxpc3RcclxuICAgICAgICB0aGlzLnJlY29yZGluZ1NlcnZpY2Uuc3ByUmVjb3JkaW5nRmlsZUxpc3Qocy5wcm9qZWN0LCBzLnNlc3Npb25JZCkuc3Vic2NyaWJlKChyZmRzKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmF2YWlsUmVjRmlsZXMgPSBuZXcgQXJyYXk8QXJyYXk8U3ByUmVjb3JkaW5nRmlsZT4+KCk7XHJcbiAgICAgICAgICAvLyBidWlsZCBzdHJ1Y3R1cmUgaW5kZXhlZCBieSBpdGVtY29kZVxyXG4gICAgICAgICAgbGV0IGljSWR4ID0gbmV3IEl0ZW1jb2RlSW5kZXgoKTtcclxuICAgICAgICAgIGZvciAobGV0IHJmZGkgPSAwOyByZmRpIDwgcmZkcy5sZW5ndGg7IHJmZGkrKykge1xyXG4gICAgICAgICAgICBsZXQgcmZkID0gcmZkc1tyZmRpXTtcclxuICAgICAgICAgICAgaWYgKHJmZC5kYXRlKSB7XHJcbiAgICAgICAgICAgICAgLy8gY29udmVydCBkYXRlIHN0cmluZyBmb3IgZmFzdGVyIHNvcnRpbmcgbGF0ZXJcclxuICAgICAgICAgICAgICBsZXQgcmZkZCA9IG5ldyBEYXRlKHJmZC5kYXRlKTtcclxuICAgICAgICAgICAgICByZmQuX2RhdGVBc0RhdGVPYmogPSByZmRkO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxldCBpYyA9IHJmZC5pdGVtQ29kZTtcclxuXHJcbiAgICAgICAgICAgIGlmICghaWMpIHtcclxuICAgICAgICAgICAgICBsZXQgciA9IHJmZC5yZWNvcmRpbmc7XHJcbiAgICAgICAgICAgICAgaWYgKHIgJiYgci5pdGVtY29kZSkge1xyXG4gICAgICAgICAgICAgICAgaWMgPSByLml0ZW1jb2RlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAoaWMpIHtcclxuICAgICAgICAgICAgICBsZXQgZXhSZnNGb3JJYyA9IGljSWR4W2ljXTtcclxuICAgICAgICAgICAgICBpZiAoZXhSZnNGb3JJYyA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBpdGVtY29kZSBub3QgeWV0IHN0b3JlZFxyXG4gICAgICAgICAgICAgICAgbGV0IGFyZmQgPSBuZXcgQXJyYXk8U3ByUmVjb3JkaW5nRmlsZT4oKTtcclxuICAgICAgICAgICAgICAgIGFyZmQucHVzaChyZmQpO1xyXG4gICAgICAgICAgICAgICAgaWNJZHhbaWNdID0gYXJmZDtcclxuICAgICAgICAgICAgICAgIHRoaXMuYXZhaWxSZWNGaWxlcy5wdXNoKGFyZmQpO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAvLyByZWMgZmlsZSB3aXRoIGl0ZW1jb2RlIGFscmVhZHkgZXhpc3RzLCBhZGQgKHB1c2gpIHRoaXMgdmVyc2lvbiAuLi5cclxuICAgICAgICAgICAgICAgIGV4UmZzRm9ySWMucHVzaChyZmQpO1xyXG4gICAgICAgICAgICAgICAgLy8gLi4gYW5kIHNvcnQgbGF0ZXN0IHZlcnNpb24gKGhpZ2hlc3QgdmVyc2lvbiBudW1iZXIpIHRvIGxvd2VzdCBpbmRleFxyXG4gICAgICAgICAgICAgICAgZXhSZnNGb3JJYy5zb3J0KChyZmQxLCByZmQyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIHJldHVybiByZmQyLnZlcnNpb24gLSByZmQxLnZlcnNpb247XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgbGV0IGFyZmQgPSBuZXcgQXJyYXk8U3ByUmVjb3JkaW5nRmlsZT4oKTtcclxuICAgICAgICAgICAgICBhcmZkLnB1c2gocmZkKTtcclxuICAgICAgICAgICAgICB0aGlzLmF2YWlsUmVjRmlsZXMucHVzaChhcmZkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLy8gaGF2ZSB1bnNvcnRlZCBpdGVtY29kZSBpbmRleGVkIHJlY29yZGluZyBmaWxlcyBoZXJlXHJcbiAgICAgICAgICAvLyBzb3J0IHRoZW0gb3JkZXJlZCBieSBkYXRlIG9mIGxhdGVzdCB2ZXJzaW9uIGFzY2VuZGluZ1xyXG4gICAgICAgICAgdGhpcy5hdmFpbFJlY0ZpbGVzLnNvcnQoKHJmczEsIHJmczIpID0+IHtcclxuICAgICAgICAgICAgbGV0IGQxID0gcmZzMlswXS5fZGF0ZUFzRGF0ZU9iajtcclxuICAgICAgICAgICAgbGV0IGQyID0gcmZzMVswXS5fZGF0ZUFzRGF0ZU9iajtcclxuICAgICAgICAgICAgaWYgKGQxID09IG51bGwpIHtcclxuICAgICAgICAgICAgICBpZiAoZDIgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIDA7XHJcbiAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIC8vIFNvcnQgZW50cmllcyB3aG9zZSBkYXRlcyBhcmUgbm90IHNldCB0byB0aGUgZW5kXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gLTE7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGlmIChkMiA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBTb3J0IGVudHJpZXMgd2hvc2UgZGF0ZXMgYXJlIG5vdCBzZXQgdG8gdGhlIGVuZFxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIDE7XHJcbiAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIC8vIENvbXBhcmUgZGF0ZSBieSB0aW1lIGluIG1pbGxpc2Vjb25kcyB2YWx1ZVxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGQyLmdldFRpbWUoKSAtIGQxLmdldFRpbWUoKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgZm9yKGxldCBhdlJmIG9mIHRoaXMuYXZhaWxSZWNGaWxlcyl7XHJcbiAgICAgICAgICAgICAgaWYoYXZSZlswXSAmJiBhdlJmWzBdLnJlY29yZGluZykge1xyXG4gICAgICAgICAgICAgICAgbGV0IG9zID0gYXZSZlswXS5yZWNvcmRpbmcuaXRlbWNvZGUgKyAnOiB2ZXJzaW9uczogJztcclxuICAgICAgICAgICAgICAgIGZvciAobGV0IGF2UmZWIG9mIGF2UmYpIHtcclxuICAgICAgICAgICAgICAgICAgb3MgKz0gYXZSZlYudmVyc2lvbiArICcvJztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGNvbnNvbGUuZGVidWcob3MpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMudXBkYXRlUG9zKClcclxuICAgICAgICAgIHRoaXMubmF2aUluZm9Mb2FkaW5nPWZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5yZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9KTtcclxuICAgICAgfVxyXG4gIH1cclxufVxyXG5cclxuIl19
|
|
411
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkaW5nLWZpbGUtdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGVlY2hyZWNvcmRlcm5nL3NyYy9saWIvc3BlZWNocmVjb3JkZXIvc2Vzc2lvbi9yZWNvcmRpbmdmaWxlL3JlY29yZGluZy1maWxlLXZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsU0FBUyxHQUdWLE1BQU0sZUFBZSxDQUFBO0FBUXRCLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRS9ELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQ25GLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFbkQsT0FBTyxFQUFDLE1BQU0sRUFBYyxNQUFNLHdCQUF3QixDQUFDO0FBSTNELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7Ozs7OztBQUduRCxNQUFNLE9BQU8sYUFBYTtDQUV6QjtBQWlERCxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsa0JBQWtCO0lBMkJoRSxZQUFzQixvQkFBMEMsRUFBWSxnQkFBa0MsRUFBWSxjQUE4QixFQUFZLE1BQWEsRUFBVyxLQUFxQixFQUFZLEdBQXNCLEVBQVksSUFBZ0IsRUFBWSxNQUFpQjtRQUMxUyxLQUFLLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQTtRQURILHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFBWSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQVksbUJBQWMsR0FBZCxjQUFjLENBQWdC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QUNGO0lBQ0wsQ0FBQzs7dUhBL1dVLDBCQUEwQjsyR0FBMUIsMEJBQTBCLGtHQWdCMUIsc0JBQXNCLHVFQTNEdkI7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUJUOzJGQTBCVSwwQkFBMEI7a0JBL0N0QyxTQUFTOytCQUVFLHdCQUF3QixZQUV4Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQlQ7MFNBMkNPLEVBQUU7c0JBRFQsU0FBUzt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQWZ0ZXJWaWV3SW5pdCwgSW5wdXQsIEVsZW1lbnRSZWYsIE9uSW5pdCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5cclxuXHJcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFBhcmFtcywgUm91dGUsIFJvdXRlcn0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5cclxuXHJcbmltcG9ydCB7UmVjb3JkaW5nRmlsZVNlcnZpY2V9IGZyb20gXCIuL3JlY29yZGluZ2ZpbGUtc2VydmljZVwiO1xyXG5pbXBvcnQge01hdERpYWxvZ30gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2RpYWxvZ1wiO1xyXG5pbXBvcnQge0F1ZGlvRGlzcGxheVBsYXllcn0gZnJvbSBcIi4uLy4uLy4uL2F1ZGlvL2F1ZGlvX3BsYXllclwiO1xyXG5cclxuaW1wb3J0IHtBdWRpb0Rpc3BsYXlTY3JvbGxQYW5lfSBmcm9tIFwiLi4vLi4vLi4vYXVkaW8vdWkvYXVkaW9fZGlzcGxheV9zY3JvbGxfcGFuZVwiO1xyXG5pbXBvcnQge0F1ZGlvQ29udGV4dFByb3ZpZGVyfSBmcm9tIFwiLi4vLi4vLi4vYXVkaW8vY29udGV4dFwiO1xyXG5pbXBvcnQge0F1ZGlvQ2xpcH0gZnJvbSBcIi4uLy4uLy4uL2F1ZGlvL3BlcnNpc3RvclwiO1xyXG5pbXBvcnQge1NlbGVjdGlvbn0gZnJvbSBcIi4uLy4uLy4uL2F1ZGlvL3BlcnNpc3RvclwiO1xyXG5cclxuaW1wb3J0IHtBY3Rpb24sIEFjdGlvbkV2ZW50fSBmcm9tIFwiLi4vLi4vLi4vYWN0aW9uL2FjdGlvblwiO1xyXG5pbXBvcnQge1Nlc3Npb25TZXJ2aWNlfSBmcm9tIFwiLi4vc2Vzc2lvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7UmVjb3JkaW5nU2VydmljZX0gZnJvbSBcIi4uLy4uL3JlY29yZGluZ3MvcmVjb3JkaW5ncy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7UmVjb3JkaW5nRmlsZSwgU3ByUmVjb3JkaW5nRmlsZX0gZnJvbSBcIi4uLy4uL3JlY29yZGluZ1wiO1xyXG5pbXBvcnQge1JlY29yZGluZ0ZpbGVVdGlsfSBmcm9tIFwiLi9yZWNvcmRpbmctZmlsZVwiO1xyXG5cclxuXHJcbmV4cG9ydCBjbGFzcyBJdGVtY29kZUluZGV4e1xyXG4gIFtpdGVtY29kZTogc3RyaW5nXTogQXJyYXk8U3ByUmVjb3JkaW5nRmlsZT47XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG5cclxuICBzZWxlY3RvcjogJ2FwcC1hdWRpb2Rpc3BsYXlwbGF5ZXInLFxyXG5cclxuICB0ZW1wbGF0ZTogYFxyXG5cclxuICAgIDxhdWRpby1kaXNwbGF5LXNjcm9sbC1wYW5lICNhdWRpb0Rpc3BsYXlTY3JvbGxQYW5lPjwvYXVkaW8tZGlzcGxheS1zY3JvbGwtcGFuZT5cclxuICAgIDxkaXYgY2xhc3M9XCJjdHJsdmlld1wiPlxyXG4gICAgICA8YXBwLXJlY29yZGluZy1maWxlLW1ldGEgW3Nlc3Npb25JZF09XCJzZXNzaW9uSWRcIiBbcmVjb3JkaW5nRmlsZV09XCJyZWNvcmRpbmdGaWxlXCI+PC9hcHAtcmVjb3JkaW5nLWZpbGUtbWV0YT5cclxuXHJcbiAgICA8YXVkaW8tZGlzcGxheS1jb250cm9sIFthdWRpb0NsaXBdPVwiYXVkaW9DbGlwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxheVN0YXJ0QWN0aW9uXT1cInBsYXlTdGFydEFjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYXlTZWxlY3Rpb25BY3Rpb25dPVwicGxheVNlbGVjdGlvbkFjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BsYXlTdG9wQWN0aW9uXT1cInBsYXlTdG9wQWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXV0b1BsYXlPblNlbGVjdFRvZ2dsZUFjdGlvbl09XCJhcD8uYXV0b1BsYXlPblNlbGVjdFRvZ2dsZUFjdGlvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3pvb21JbkFjdGlvbl09XCJ6b29tSW5BY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt6b29tT3V0QWN0aW9uXT1cInpvb21PdXRBY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt6b29tU2VsZWN0ZWRBY3Rpb25dPVwiem9vbVNlbGVjdGVkQWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3pvb21GaXRUb1BhbmVsQWN0aW9uXT1cInpvb21GaXRUb1BhbmVsQWN0aW9uXCI+PC9hdWRpby1kaXNwbGF5LWNvbnRyb2w+XHJcbiAgICAgIDxhcHAtcmVjb3JkaW5nLWZpbGUtbmF2aSBbaXRlbXNdPVwiYXZhaWxSZWNGaWxlcz8ubGVuZ3RoXCIgW2l0ZW1Qb3NdPVwicG9zSW5MaXN0XCIgW3ZlcnNpb25dPVwicmVjb3JkaW5nRmlsZVZlcnNpb25cIiBbdmVyc2lvbnNdPVwidmVyc2lvbnNcIiBbZmlyc3RBY3Rpb25dPVwiZmlyc3RBY3Rpb25cIiBbcHJldkFjdGlvbl09XCJwcmV2QWN0aW9uXCIgW25leHRBY3Rpb25dPVwibmV4dEFjdGlvblwiIFtsYXN0QWN0aW9uXT1cImxhc3RBY3Rpb25cIiBbc2VsZWN0VmVyc2lvbl09XCJ0b1ZlcnNpb25BY3Rpb25cIiBbbmF2aUluZm9Mb2FkaW5nXT1cIm5hdmlJbmZvTG9hZGluZ1wiPjwvYXBwLXJlY29yZGluZy1maWxlLW5hdmk+XHJcbiAgICAgIDwvZGl2PlxyXG4gIGAsXHJcbiAgc3R5bGVzOiBbXHJcbiAgICBgOmhvc3Qge1xyXG4gICAgICAgICAgZmxleDogMjtcclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgbWluLWhlaWdodDowO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgei1pbmRleDogNTtcclxuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICB9YCxgXHJcbiAgICAgICAgLmN0cmx2aWV3e1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblxyXG4gICAgICAgIH1cclxuICAgIGAsYFxyXG4gICAgICBhdWRpby1kaXNwbGF5LWNvbnRyb2x7XHJcblxyXG4gICAgICAgIGZsZXg6IDM7XHJcbiAgICAgIH1cclxuICAgIGBdXHJcblxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVjb3JkaW5nRmlsZVZpZXdDb21wb25lbnQgZXh0ZW5kcyBBdWRpb0Rpc3BsYXlQbGF5ZXIgaW1wbGVtZW50cyBPbkluaXQsQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIC8vcHJvdGVjdGVkIF9yZWNvcmRpbmdGaWxlSWQ6IHN0cmluZyB8IG51bWJlciA9IG51bGw7XHJcblxyXG4gIHNlc3Npb25JZDogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbD0gbnVsbDtcclxuICBzZXNzaW9uSWRGcm9tUm91dGU6c3RyaW5nfG51bGw9bnVsbDtcclxuXHJcbiAgYXZhaWxSZWNGaWxlczogQXJyYXk8QXJyYXk8U3ByUmVjb3JkaW5nRmlsZT4+fG51bGw9bnVsbDtcclxuICB2ZXJzaW9uczogQXJyYXk8bnVtYmVyPnxudWxsPW51bGw7XHJcblxyXG4gIHJlY29yZGluZ0ZpbGU6IFNwclJlY29yZGluZ0ZpbGV8bnVsbD1udWxsO1xyXG4gIHJlY29yZGluZ0ZpbGVWZXJzaW9uOm51bWJlcnxudWxsPW51bGw7XHJcbiAgcHJpdmF0ZSByb3V0ZWRCeVF1ZXJ5UGFyYW09ZmFsc2U7XHJcbiAgcG9zSW5MaXN0OiBudW1iZXJ8bnVsbD1udWxsO1xyXG5cclxuXHJcbiAgQFZpZXdDaGlsZChBdWRpb0Rpc3BsYXlTY3JvbGxQYW5lKVxyXG4gIHByaXZhdGUgYWMhOiBBdWRpb0Rpc3BsYXlTY3JvbGxQYW5lO1xyXG5cclxuICBmaXJzdEFjdGlvbjogQWN0aW9uPHZvaWQ+O1xyXG4gIHByZXZBY3Rpb246IEFjdGlvbjx2b2lkPjtcclxuICBuZXh0QWN0aW9uOiBBY3Rpb248dm9pZD47XHJcbiAgbGFzdEFjdGlvbjogQWN0aW9uPHZvaWQ+O1xyXG4gIHRvVmVyc2lvbkFjdGlvbjogQWN0aW9uPG51bWJlcj47XHJcblxyXG4gIG5hdmlJbmZvTG9hZGluZz1mYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIHJlY29yZGluZ0ZpbGVTZXJ2aWNlOiBSZWNvcmRpbmdGaWxlU2VydmljZSwgcHJvdGVjdGVkIHJlY29yZGluZ1NlcnZpY2U6IFJlY29yZGluZ1NlcnZpY2UsIHByb3RlY3RlZCBzZXNzaW9uU2VydmljZTogU2Vzc2lvblNlcnZpY2UsIHByb3RlY3RlZCByb3V0ZXI6Um91dGVyLHByb3RlY3RlZCByb3V0ZTogQWN0aXZhdGVkUm91dGUsIHByb3RlY3RlZCByZWY6IENoYW5nZURldGVjdG9yUmVmLCBwcm90ZWN0ZWQgZVJlZjogRWxlbWVudFJlZiwgcHJvdGVjdGVkIGRpYWxvZzogTWF0RGlhbG9nKSB7XHJcbiAgICBzdXBlcihyb3V0ZSwgcmVmLCBlUmVmKVxyXG4gICAgdGhpcy5wYXJlbnRFID0gdGhpcy5lUmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICB0aGlzLmZpcnN0QWN0aW9uID0gbmV3IEFjdGlvbjx2b2lkPignRmlyc3QnKTtcclxuICAgIHRoaXMuZmlyc3RBY3Rpb24ub25BY3Rpb249ICgpPT57XHJcbiAgICAgIHRoaXMucG9zSW5MaXN0PTA7XHJcbiAgICAgIHRoaXMubmF2aWdhdGVUb1JlY29yZGluZ0ZpbGUoKTtcclxuICAgIH1cclxuICAgIHRoaXMucHJldkFjdGlvbiA9IG5ldyBBY3Rpb248dm9pZD4oJ1ByZXZpb3VzJyk7XHJcbiAgICB0aGlzLnByZXZBY3Rpb24ub25BY3Rpb249ICgpPT50aGlzLnByZXZGaWxlKCk7XHJcbiAgICB0aGlzLm5leHRBY3Rpb24gPSBuZXcgQWN0aW9uPHZvaWQ+KCdOZXh0Jyk7XHJcbiAgICB0aGlzLm5leHRBY3Rpb24ub25BY3Rpb249ICgpPT50aGlzLm5leHRGaWxlKCk7XHJcbiAgICB0aGlzLmxhc3RBY3Rpb24gPSBuZXcgQWN0aW9uPHZvaWQ+KCdMYXN0Jyk7XHJcbiAgICB0aGlzLmxhc3RBY3Rpb24ub25BY3Rpb249ICgpPT57XHJcbiAgICAgIGlmKHRoaXMuYXZhaWxSZWNGaWxlcykge1xyXG4gICAgICAgIHRoaXMucG9zSW5MaXN0ID0gdGhpcy5hdmFpbFJlY0ZpbGVzLmxlbmd0aCAtIDE7XHJcbiAgICAgICAgdGhpcy5uYXZpZ2F0ZVRvUmVjb3JkaW5nRmlsZSgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy50b1ZlcnNpb25BY3Rpb249bmV3IEFjdGlvbjxudW1iZXI+KCdUbyB2ZXJzaW9uJyk7XHJcbiAgICB0aGlzLnRvVmVyc2lvbkFjdGlvbi5vbkFjdGlvbj0gKGFlKT0+dGhpcy50b1ZlcnNpb24oYWUpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG5cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpXHJcbiAgICB0aGlzLnJvdXRlLnF1ZXJ5UGFyYW1zLnN1YnNjcmliZSgocGFyYW1zOiBQYXJhbXMpID0+IHtcclxuICAgICAgbGV0IHJmSWRQID0gcGFyYW1zWydyZWNvcmRpbmdGaWxlSWQnXTtcclxuICAgICAgbGV0IHNJZFAgPSBwYXJhbXNbJ3Nlc3Npb25JZCddO1xyXG4gICAgICBpZiAoc0lkUCkge1xyXG4gICAgICAgdGhpcy5zZXNzaW9uSWRGcm9tUm91dGU9c0lkUDtcclxuICAgICAgfVxyXG4gICAgICBpZiAocmZJZFApIHtcclxuICAgICAgICB0aGlzLnJvdXRlZEJ5UXVlcnlQYXJhbT10cnVlO1xyXG4gICAgICAgIHRoaXMubG9hZFJlY0ZpbGUocmZJZFApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHRoaXMucm91dGUucGFyYW1zLnN1YnNjcmliZSgocGFyYW1zOiBQYXJhbXMpID0+IHtcclxuICAgICAgbGV0IHJmSWRQID0gcGFyYW1zWydyZWNvcmRpbmdGaWxlSWQnXTtcclxuICAgICAgbGV0IHNJZFAgPSBwYXJhbXNbJ3Nlc3Npb25JZCddO1xyXG4gICAgICBpZiAoc0lkUCkge1xyXG4gICAgICAgIHRoaXMuc2Vzc2lvbklkRnJvbVJvdXRlPXNJZFA7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHJmSWRQKSB7XHJcbiAgICAgICAgdGhpcy5yb3V0ZWRCeVF1ZXJ5UGFyYW09ZmFsc2U7XHJcbiAgICAgICAgdGhpcy5sb2FkUmVjRmlsZShyZklkUCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgLy8gaWYodGhpcy5zZXNzaW9uSWQpe1xyXG4gICAgLy8gICAgIHRoaXMubG9hZFNlc3Npb24odGhpcy5zZXNzaW9uSWQpO1xyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcblxyXG4gIHByaXZhdGUgbmF2aWdhdGVUb0lkKHJmSWQ6bnVtYmVyfCBzdHJpbmcpe1xyXG5cclxuICAgIGlmKHRoaXMucm91dGVkQnlRdWVyeVBhcmFtKXtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHtyZWxhdGl2ZVRvOiB0aGlzLnJvdXRlLCBxdWVyeVBhcmFtczp7J3JlY29yZGluZ0ZpbGVJZCc6cmZJZH19KVxyXG4gICAgfWVsc2Uge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy4uLycgKyByZklkXSwge3JlbGF0aXZlVG86IHRoaXMucm91dGV9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgbmF2aWdhdGVUb1JlY29yZGluZ0ZpbGUoKXtcclxuICAgIGlmKHRoaXMucG9zSW5MaXN0IT1udWxsICYmIHRoaXMuYXZhaWxSZWNGaWxlcykge1xyXG4gICAgICBsZXQgbGF0ZXN0TmV4dFJmID0gdGhpcy5hdmFpbFJlY0ZpbGVzW3RoaXMucG9zSW5MaXN0XVswXTtcclxuICAgICAgbGV0IGxuUmZJZCA9IGxhdGVzdE5leHRSZi5yZWNvcmRpbmdGaWxlSWQ7XHJcbiAgICAgIGlmKGxuUmZJZCkge1xyXG4gICAgICAgIHRoaXMubmF2aWdhdGVUb0lkKGxuUmZJZCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRvVmVyc2lvbihhZTogQWN0aW9uRXZlbnQ8bnVtYmVyPikge1xyXG4gICAgbGV0IHRvUmZJZCA9IG51bGw7XHJcbiAgICBsZXQgdmVyc2lvbiA9IGFlLnZhbHVlO1xyXG4gICAgaWYodGhpcy5wb3NJbkxpc3QhPW51bGwgJiYgdGhpcy5hdmFpbFJlY0ZpbGVzKSB7XHJcbiAgICAgIGxldCBjUmZzID0gdGhpcy5hdmFpbFJlY0ZpbGVzW3RoaXMucG9zSW5MaXN0XTtcclxuICAgICAgbGV0IGF2YWlsVmVyc2lvbkNudCA9IGNSZnMubGVuZ3RoO1xyXG4gICAgICBmb3IgKGxldCBjUmYgb2YgY1Jmcykge1xyXG4gICAgICAgIGlmKGNSZi52ZXJzaW9uICE9bnVsbCkge1xyXG4gICAgICAgICAgaWYgKGNSZi52ZXJzaW9uID09PSB2ZXJzaW9uKSB7XHJcbiAgICAgICAgICAgIHRvUmZJZCA9IGNSZi5yZWNvcmRpbmdGaWxlSWQ7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKHRvUmZJZCAhPSBudWxsKSB7XHJcbiAgICAgIHRoaXMubmF2aWdhdGVUb0lkKHRvUmZJZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgcHJldkZpbGUoKSB7XHJcbiAgICBpZih0aGlzLnBvc0luTGlzdCE9bnVsbCkge1xyXG4gICAgICB0aGlzLnBvc0luTGlzdC0tO1xyXG4gICAgfVxyXG4gICAgdGhpcy5uYXZpZ2F0ZVRvUmVjb3JkaW5nRmlsZSgpXHJcbiAgfVxyXG4gIG5leHRGaWxlKCkge1xyXG4gICAgaWYodGhpcy5wb3NJbkxpc3QhPW51bGwpIHtcclxuICAgICAgdGhpcy5wb3NJbkxpc3QrKztcclxuICAgIH1cclxuICAgIHRoaXMubmF2aWdhdGVUb1JlY29yZGluZ0ZpbGUoKVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwb3NpdGlvbkluTGlzdCgpOm51bWJlciB8IG51bGx7XHJcbiAgICBpZiAodGhpcy5hdmFpbFJlY0ZpbGVzICYmIHRoaXMucmVjb3JkaW5nRmlsZSkge1xyXG4gICAgICBsZXQgY2ljPXRoaXMucmVjb3JkaW5nRmlsZS5pdGVtQ29kZTtcclxuICAgICAgaWYoIWNpYyAmJiB0aGlzLnJlY29yZGluZ0ZpbGUucmVjb3JkaW5nICYmIHRoaXMucmVjb3JkaW5nRmlsZS5yZWNvcmRpbmcuaXRlbWNvZGUpe1xyXG4gICAgICAgIGNpYz10aGlzLnJlY29yZGluZ0ZpbGUucmVjb3JkaW5nLml0ZW1jb2RlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChjaWMpIHtcclxuICAgICAgICBsZXQgaXRlbUNudCA9IHRoaXMuYXZhaWxSZWNGaWxlcy5sZW5ndGhcclxuICAgICAgICBmb3IgKGxldCByZmRpID0gMDsgcmZkaSA8IGl0ZW1DbnQ7IHJmZGkrKykge1xyXG4gICAgICAgICAgbGV0IGFyUmYgPSB0aGlzLmF2YWlsUmVjRmlsZXNbcmZkaV1bMF07XHJcbiAgICAgICAgICBpZiAoYXJSZi5yZWNvcmRpbmcpIHtcclxuICAgICAgICAgICAgbGV0IGFyID0gYXJSZi5yZWNvcmRpbmc7XHJcbiAgICAgICAgICAgIGlmIChjaWMgPT09IGFyLml0ZW1jb2RlKSB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHJmZGk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1lbHNle1xyXG4gICAgICAgIGxldCBpdGVtQ250ID0gdGhpcy5hdmFpbFJlY0ZpbGVzLmxlbmd0aFxyXG4gICAgICAgIGZvciAobGV0IHJmZGkgPSAwOyByZmRpIDwgaXRlbUNudDsgcmZkaSsrKSB7XHJcbiAgICAgICAgICBsZXQgYXJSZiA9IHRoaXMuYXZhaWxSZWNGaWxlc1tyZmRpXVswXTtcclxuICAgICAgICAgICAgaWYgKHRoaXMucmVjb3JkaW5nRmlsZS51dWlkID09PSBhclJmLnV1aWQpIHtcclxuICAgICAgICAgICAgICByZXR1cm4gcmZkaTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlUG9zKCl7XHJcbiAgICB0aGlzLnBvc0luTGlzdD10aGlzLnBvc2l0aW9uSW5MaXN0KCk7XHJcbiAgICB0aGlzLnRvVmVyc2lvbkFjdGlvbi5kaXNhYmxlZD10cnVlO1xyXG4gICAgaWYodGhpcy5hdmFpbFJlY0ZpbGVzKXtcclxuICAgICAgbGV0IGF2UmZzTGVuPXRoaXMuYXZhaWxSZWNGaWxlcy5sZW5ndGg7XHJcbiAgICAgIGlmKHRoaXMucG9zSW5MaXN0ICE9bnVsbCAmJiBhdlJmc0xlbj50aGlzLnBvc0luTGlzdCkge1xyXG4gICAgICAgIGxldCBhcmZzID0gdGhpcy5hdmFpbFJlY0ZpbGVzW3RoaXMucG9zSW5MaXN0XTtcclxuICAgICAgICBpZiAoYXJmcykge1xyXG4gICAgICAgICAgdGhpcy52ZXJzaW9ucyA9IG5ldyBBcnJheTxudW1iZXI+KCk7XHJcbiAgICAgICAgICBmb3IgKGxldCBhcmYgb2YgYXJmcykge1xyXG4gICAgICAgICAgICBpZihhcmYucmVjb3JkaW5nPy5pdGVtY29kZSkge1xyXG4gICAgICAgICAgICAgIHRoaXMudmVyc2lvbnMucHVzaChhcmYudmVyc2lvbilcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIHRoaXMudG9WZXJzaW9uQWN0aW9uLmRpc2FibGVkPSh0aGlzLnZlcnNpb25zLmxlbmd0aDwyKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZih0aGlzLnJlY29yZGluZ0ZpbGUpe1xyXG4gICAgICBpZih0aGlzLnJlY29yZGluZ0ZpbGUudmVyc2lvbil7XHJcbiAgICAgICAgdGhpcy5yZWNvcmRpbmdGaWxlVmVyc2lvbj10aGlzLnJlY29yZGluZ0ZpbGUudmVyc2lvbjtcclxuICAgICAgfWVsc2V7XHJcbiAgICAgICAgdGhpcy5yZWNvcmRpbmdGaWxlVmVyc2lvbj0wO1xyXG4gICAgICB9XHJcbiAgICB9ZWxzZXtcclxuICAgICAgdGhpcy5yZWNvcmRpbmdGaWxlVmVyc2lvbj1udWxsO1xyXG4gICAgfVxyXG4gICAgdGhpcy51cGRhdGVBY3Rpb25zKClcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBsb2FkUmVjRmlsZShyZklkOm51bWJlciB8IHN0cmluZykge1xyXG4gICAgdGhpcy5hcD8uc3RvcCgpO1xyXG4gICAgdGhpcy5hdWRpb0NsaXAgPW51bGw7XHJcbiAgICB0aGlzLnJlY29yZGluZ0ZpbGU9bnVsbDtcclxuICAgIHRoaXMucG9zSW5MaXN0PW51bGw7XHJcbiAgICB0aGlzLnVwZGF0ZUFjdGlvbnMoKTtcclxuICAgIGxldCBhdWRpb0NvbnRleHQgPSBBdWRpb0NvbnRleHRQcm92aWRlci5hdWRpb0NvbnRleHRJbnN0YW5jZSgpO1xyXG4gICAgaWYoYXVkaW9Db250ZXh0KSB7XHJcbiAgICAgIHRoaXMucmVjb3JkaW5nRmlsZVNlcnZpY2UuZmV0Y2hTcHJSZWNvcmRpbmdGaWxlKGF1ZGlvQ29udGV4dCwgcmZJZCkuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgICB0aGlzLnN0YXR1cyA9ICdBdWRpbyBmaWxlIGxvYWRlZC4nO1xyXG4gICAgICAgIGxldCBjbGlwID0gbnVsbDtcclxuICAgICAgICB0aGlzLnJlY29yZGluZ0ZpbGUgPSB2YWx1ZTtcclxuICAgICAgICBpZiAodGhpcy5yZWNvcmRpbmdGaWxlKSB7XHJcbiAgICAgICAgICBsZXQgYWIgPSB0aGlzLnJlY29yZGluZ0ZpbGUuYXVkaW9CdWZmZXI7XHJcbiAgICAgICAgICBpZiAoYWIpIHtcclxuICAgICAgICAgICAgY2xpcCA9IG5ldyBBdWRpb0NsaXAoYWIpO1xyXG5cclxuICAgICAgICAgICAgbGV0IGVzZmZzciA9IG51bGw7XHJcbiAgICAgICAgICAgIGxldCBlZWZmc3IgPSBudWxsO1xyXG4gICAgICAgICAgICBsZXQgZXNyID0gbnVsbDtcclxuXHJcbiAgICAgICAgICAgIGlmIChjbGlwLmJ1ZmZlciAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgZXNyID0gYWIuc2FtcGxlUmF0ZTtcclxuICAgICAgICAgICAgICBpZiAoZXNyICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIGVzZmZzciA9IFJlY29yZGluZ0ZpbGVVdGlsLmVkaXRTdGFydEZyYW1lRm9yU2FtcGxlUmF0ZSh0aGlzLnJlY29yZGluZ0ZpbGUsIGVzcik7XHJcbiAgICAgICAgICAgICAgICBlZWZmc3IgPSBSZWNvcmRpbmdGaWxlVXRpbC5lZGl0RW5kRnJhbWVGb3JTYW1wbGVSYXRlKHRoaXMucmVjb3JkaW5nRmlsZSwgZXNyKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgbGV0IHNlbDogU2VsZWN0aW9uIHwgbnVsbCA9IG51bGw7XHJcbiAgICAgICAgICAgICAgaWYgKGVzZmZzciAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAoZWVmZnNyICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICAgICAgc2VsID0gbmV3IFNlbGVjdGlvbihhYi5zYW1wbGVSYXRlLCBlc2Zmc3IsIGVlZmZzcik7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICBsZXQgY2gwID0gYWIuZ2V0Q2hhbm5lbERhdGEoMCk7XHJcbiAgICAgICAgICAgICAgICAgIGxldCBmcmFtZUxlbmd0aCA9IGNoMC5sZW5ndGg7XHJcbiAgICAgICAgICAgICAgICAgIHNlbCA9IG5ldyBTZWxlY3Rpb24oZXNyLCBlc2Zmc3IsIGZyYW1lTGVuZ3RoKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKGVlZmZzciAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICBzZWwgPSBuZXcgU2VsZWN0aW9uKGVzciwgMCwgZWVmZnNyKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgY2xpcC5zZWxlY3Rpb24gPSBzZWxcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmF1ZGlvQ2xpcCA9IGNsaXBcclxuICAgICAgICB0aGlzLmxvYWRlZFJlY2ZpbGUoKTtcclxuXHJcbiAgICAgIH0sIGVycm9yMSA9PiB7XHJcbiAgICAgICAgdGhpcy5zdGF0dXMgPSAnRXJyb3IgbG9hZGluZyBhdWRpbyBmaWxlISc7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGxvYWRlZFJlY2ZpbGUoKSB7XHJcbiAgICBpZih0aGlzLnJlY29yZGluZ0ZpbGUgJiYgIXRoaXMuc2Vzc2lvbklkKSB7XHJcbiAgICAgIGxldCBzSWQ9dGhpcy5yZWNvcmRpbmdGaWxlLnNlc3Npb25cclxuICAgICAgaWYoIXNJZCl7XHJcbiAgICAgICAgc0lkPXRoaXMuc2Vzc2lvbklkRnJvbVJvdXRlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChzSWQpIHtcclxuICAgICAgICB0aGlzLmxvYWRTZXNzaW9uKHNJZCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnVwZGF0ZVBvcygpO1xyXG4gICAgdGhpcy5yZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVBY3Rpb25zKCl7XHJcbiAgICBsZXQgaXRlbUNudDpudW1iZXJ8bnVsbD1udWxsO1xyXG4gICAgaWYodGhpcy5hdmFpbFJlY0ZpbGVzKSB7XHJcbiAgICAgIGl0ZW1DbnQgPSB0aGlzLmF2YWlsUmVjRmlsZXMubGVuZ3RoO1xyXG4gICAgfVxyXG4gICAgdGhpcy5maXJzdEFjdGlvbi5kaXNhYmxlZD0odGhpcy5wb3NJbkxpc3Q9PW51bGwgfHwgdGhpcy5wb3NJbkxpc3QgPT0gMCk7XHJcbiAgICB0aGlzLnByZXZBY3Rpb24uZGlzYWJsZWQ9KHRoaXMucG9zSW5MaXN0PT1udWxsIHx8IHRoaXMucG9zSW5MaXN0ID09IDApO1xyXG4gICAgdGhpcy5uZXh0QWN0aW9uLmRpc2FibGVkPSh0aGlzLnBvc0luTGlzdD09bnVsbCB8fCBpdGVtQ250PT1udWxsIHx8IHRoaXMucG9zSW5MaXN0ID49IGl0ZW1DbnQgLSAxKTtcclxuICAgIHRoaXMubGFzdEFjdGlvbi5kaXNhYmxlZD0odGhpcy5wb3NJbkxpc3Q9PW51bGwgfHwgaXRlbUNudD09bnVsbCB8fCB0aGlzLnBvc0luTGlzdCA+PSBpdGVtQ250IC0gMSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGxvYWRTZXNzaW9uKHNlc3Npb25JZDogc3RyaW5nfCBudW1iZXIpIHtcclxuICAgIC8vIGxvYWQgc2Vzc2lvbiBhbmQgcmVjb3JkaW5nIGZpbGUgbWV0YSBkYXRhIG9ubHkgd2hlbiBvbiBpbml0IGFuZCB3aGVuIHNlc3Npb24gY2hhbmdlc1xyXG4gICAgaWYgKDxzdHJpbmc+c2Vzc2lvbklkICE9IDxzdHJpbmc+dGhpcy5zZXNzaW9uSWQpIHtcclxuICAgICAgLy8gdGVsbCBVSSB0aGF0IHdlIGFyZSB3b3JraW5nLi4uXHJcbiAgICAgIHRoaXMubmF2aUluZm9Mb2FkaW5nPXRydWU7XHJcbiAgICAgIHRoaXMuc2Vzc2lvblNlcnZpY2Uuc2Vzc2lvbk9ic2VydmVyKDxzdHJpbmc+c2Vzc2lvbklkKS5zdWJzY3JpYmUoKHMpID0+IHtcclxuICAgICAgICAvLyByZWNlaXZlZCBzZXNzaW9uIGRhdGFcclxuICAgICAgICB0aGlzLnNlc3Npb25JZCA9IHMuc2Vzc2lvbklkO1xyXG4gICAgICAgIC8vIGZldGNoIHJlY29yZGluZyBmaWxlIG1ldGEgZGF0YSBsaXN0XHJcbiAgICAgICAgdGhpcy5yZWNvcmRpbmdTZXJ2aWNlLnNwclJlY29yZGluZ0ZpbGVMaXN0KHMucHJvamVjdCwgcy5zZXNzaW9uSWQpLnN1YnNjcmliZSgocmZkcykgPT4ge1xyXG4gICAgICAgICAgdGhpcy5hdmFpbFJlY0ZpbGVzID0gbmV3IEFycmF5PEFycmF5PFNwclJlY29yZGluZ0ZpbGU+PigpO1xyXG4gICAgICAgICAgLy8gYnVpbGQgc3RydWN0dXJlIGluZGV4ZWQgYnkgaXRlbWNvZGVcclxuICAgICAgICAgIGxldCBpY0lkeCA9IG5ldyBJdGVtY29kZUluZGV4KCk7XHJcbiAgICAgICAgICBmb3IgKGxldCByZmRpID0gMDsgcmZkaSA8IHJmZHMubGVuZ3RoOyByZmRpKyspIHtcclxuICAgICAgICAgICAgbGV0IHJmZCA9IHJmZHNbcmZkaV07XHJcbiAgICAgICAgICAgIGlmIChyZmQuZGF0ZSkge1xyXG4gICAgICAgICAgICAgIC8vIGNvbnZlcnQgZGF0ZSBzdHJpbmcgZm9yIGZhc3RlciBzb3J0aW5nIGxhdGVyXHJcbiAgICAgICAgICAgICAgbGV0IHJmZGQgPSBuZXcgRGF0ZShyZmQuZGF0ZSk7XHJcbiAgICAgICAgICAgICAgcmZkLl9kYXRlQXNEYXRlT2JqID0gcmZkZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBsZXQgaWMgPSByZmQuaXRlbUNvZGU7XHJcblxyXG4gICAgICAgICAgICBpZiAoIWljKSB7XHJcbiAgICAgICAgICAgICAgbGV0IHIgPSByZmQucmVjb3JkaW5nO1xyXG4gICAgICAgICAgICAgIGlmIChyICYmIHIuaXRlbWNvZGUpIHtcclxuICAgICAgICAgICAgICAgIGljID0gci5pdGVtY29kZTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKGljKSB7XHJcbiAgICAgICAgICAgICAgbGV0IGV4UmZzRm9ySWMgPSBpY0lkeFtpY107XHJcbiAgICAgICAgICAgICAgaWYgKGV4UmZzRm9ySWMgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgLy8gaXRlbWNvZGUgbm90IHlldCBzdG9yZWRcclxuICAgICAgICAgICAgICAgIGxldCBhcmZkID0gbmV3IEFycmF5PFNwclJlY29yZGluZ0ZpbGU+KCk7XHJcbiAgICAgICAgICAgICAgICBhcmZkLnB1c2gocmZkKTtcclxuICAgICAgICAgICAgICAgIGljSWR4W2ljXSA9IGFyZmQ7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmF2YWlsUmVjRmlsZXMucHVzaChhcmZkKTtcclxuICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgLy8gcmVjIGZpbGUgd2l0aCBpdGVtY29kZSBhbHJlYWR5IGV4aXN0cywgYWRkIChwdXNoKSB0aGlzIHZlcnNpb24gLi4uXHJcbiAgICAgICAgICAgICAgICBleFJmc0ZvckljLnB1c2gocmZkKTtcclxuICAgICAgICAgICAgICAgIC8vIC4uIGFuZCBzb3J0IGxhdGVzdCB2ZXJzaW9uIChoaWdoZXN0IHZlcnNpb24gbnVtYmVyKSB0byBsb3dlc3QgaW5kZXhcclxuICAgICAgICAgICAgICAgIGV4UmZzRm9ySWMuc29ydCgocmZkMSwgcmZkMikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICByZXR1cm4gcmZkMi52ZXJzaW9uIC0gcmZkMS52ZXJzaW9uO1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGxldCBhcmZkID0gbmV3IEFycmF5PFNwclJlY29yZGluZ0ZpbGU+KCk7XHJcbiAgICAgICAgICAgICAgYXJmZC5wdXNoKHJmZCk7XHJcbiAgICAgICAgICAgICAgdGhpcy5hdmFpbFJlY0ZpbGVzLnB1c2goYXJmZCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC8vIGhhdmUgdW5zb3J0ZWQgaXRlbWNvZGUgaW5kZXhlZCByZWNvcmRpbmcgZmlsZXMgaGVyZVxyXG4gICAgICAgICAgLy8gc29ydCB0aGVtIG9yZGVyZWQgYnkgZGF0ZSBvZiBsYXRlc3QgdmVyc2lvbiBhc2NlbmRpbmdcclxuICAgICAgICAgIHRoaXMuYXZhaWxSZWNGaWxlcy5zb3J0KChyZnMxLCByZnMyKSA9PiB7XHJcbiAgICAgICAgICAgIGxldCBkMSA9IHJmczJbMF0uX2RhdGVBc0RhdGVPYmo7XHJcbiAgICAgICAgICAgIGxldCBkMiA9IHJmczFbMF0uX2RhdGVBc0RhdGVPYmo7XHJcbiAgICAgICAgICAgIGlmIChkMSA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgaWYgKGQyID09IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiAwO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAvLyBTb3J0IGVudHJpZXMgd2hvc2UgZGF0ZXMgYXJlIG5vdCBzZXQgdG8gdGhlIGVuZFxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIC0xO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICBpZiAoZDIgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgLy8gU29ydCBlbnRyaWVzIHdob3NlIGRhdGVzIGFyZSBub3Qgc2V0IHRvIHRoZSBlbmRcclxuICAgICAgICAgICAgICAgIHJldHVybiAxO1xyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAvLyBDb21wYXJlIGRhdGUgYnkgdGltZSBpbiBtaWxsaXNlY29uZHMgdmFsdWVcclxuICAgICAgICAgICAgICAgIHJldHVybiBkMi5nZXRUaW1lKCkgLSBkMS5nZXRUaW1lKCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIGZvcihsZXQgYXZSZiBvZiB0aGlzLmF2YWlsUmVjRmlsZXMpe1xyXG4gICAgICAgICAgICAgIGlmKGF2UmZbMF0gJiYgYXZSZlswXS5yZWNvcmRpbmcpIHtcclxuICAgICAgICAgICAgICAgIGxldCBvcyA9IGF2UmZbMF0ucmVjb3JkaW5nLml0ZW1jb2RlICsgJzogdmVyc2lvbnM6ICc7XHJcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBhdlJmViBvZiBhdlJmKSB7XHJcbiAgICAgICAgICAgICAgICAgIG9zICs9IGF2UmZWLnZlcnNpb24gKyAnLyc7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBjb25zb2xlLmRlYnVnKG9zKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLnVwZGF0ZVBvcygpXHJcbiAgICAgICAgICB0aGlzLm5hdmlJbmZvTG9hZGluZz1mYWxzZTtcclxuICAgICAgICAgIHRoaXMucmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSk7XHJcbiAgICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiJdfQ==
|