speechrecorderng 3.6.0 → 3.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/action/action.mjs +73 -0
- package/{esm2020 → esm2022}/lib/audio/array_audio_buffer.mjs +163 -163
- package/{esm2020 → esm2022}/lib/audio/array_audio_buffer_input_stream.mjs +85 -85
- package/{esm2020 → esm2022}/lib/audio/array_audio_buffer_random_access_stream.mjs +15 -15
- package/esm2022/lib/audio/audio_data_holder.mjs +264 -0
- package/{esm2020 → esm2022}/lib/audio/audio_display.mjs +93 -93
- package/{esm2020 → esm2022}/lib/audio/audio_player.mjs +213 -213
- package/esm2022/lib/audio/capture/capture.mjs +855 -0
- package/esm2022/lib/audio/context.mjs +79 -0
- package/{esm2020 → esm2022}/lib/audio/dsp/level_measure.mjs +515 -515
- package/{esm2020 → esm2022}/lib/audio/format.mjs +16 -16
- package/esm2022/lib/audio/impl/wavformat.mjs +6 -0
- package/{esm2020 → esm2022}/lib/audio/impl/wavreader.mjs +133 -133
- package/esm2022/lib/audio/impl/wavwriter.mjs +105 -0
- package/esm2022/lib/audio/inddb_audio_buffer.mjs +508 -0
- package/{esm2020 → esm2022}/lib/audio/io/stream.mjs +58 -58
- package/esm2022/lib/audio/net_audio_buffer.mjs +293 -0
- package/{esm2020 → esm2022}/lib/audio/persistor.mjs +80 -80
- package/{esm2020 → esm2022}/lib/audio/playback/array_audio_buffer_source_node.mjs +125 -125
- package/esm2022/lib/audio/playback/audio_source_node.mjs +18 -0
- package/esm2022/lib/audio/playback/audio_source_worklet_module_loader.mjs +167 -0
- package/{esm2020 → esm2022}/lib/audio/playback/inddb_audio_buffer_source_node.mjs +166 -166
- package/{esm2020 → esm2022}/lib/audio/playback/net_audio_buffer_source_node.mjs +217 -217
- package/esm2022/lib/audio/playback/player.mjs +402 -0
- package/esm2022/lib/audio/ui/audio_canvas_layer_comp.mjs +347 -0
- package/{esm2020 → esm2022}/lib/audio/ui/audio_display_control.mjs +65 -65
- package/{esm2020 → esm2022}/lib/audio/ui/audio_display_scroll_pane.mjs +139 -139
- package/{esm2020 → esm2022}/lib/audio/ui/audiosignal.mjs +524 -524
- package/{esm2020 → esm2022}/lib/audio/ui/common.mjs +18 -18
- package/esm2022/lib/audio/ui/container.mjs +414 -0
- package/{esm2020 → esm2022}/lib/audio/ui/livelevel.mjs +352 -352
- package/esm2022/lib/audio/ui/scroll_pane_horizontal.mjs +11 -0
- package/esm2022/lib/audio/ui/sonagram.mjs +900 -0
- package/esm2022/lib/db/inddb.mjs +120 -0
- package/esm2022/lib/dsp/utils.mjs +48 -0
- package/{esm2020 → esm2022}/lib/io/BinaryReader.mjs +84 -84
- package/esm2022/lib/io/BinaryWriter.mjs +74 -0
- package/{esm2020 → esm2022}/lib/io/stream.mjs +258 -258
- package/{esm2020 → esm2022}/lib/math/2d/geometry.mjs +27 -27
- package/esm2022/lib/math/complex.mjs +58 -0
- package/{esm2020 → esm2022}/lib/math/dft.mjs +195 -195
- package/{esm2020 → esm2022}/lib/media/utils.mjs +13 -13
- package/esm2022/lib/net/uploader.mjs +367 -0
- package/{esm2020 → esm2022}/lib/recorder_component.mjs +64 -64
- package/esm2022/lib/speechrecorder/project/project.mjs +49 -0
- package/esm2022/lib/speechrecorder/project/project.service.mjs +64 -0
- package/{esm2020 → esm2022}/lib/speechrecorder/recording.mjs +123 -123
- package/esm2022/lib/speechrecorder/recordings/basic_recording.service.mjs +218 -0
- package/esm2022/lib/speechrecorder/recordings/recordings.service.mjs +1014 -0
- package/{esm2020 → esm2022}/lib/speechrecorder/script/script.mjs +114 -114
- package/{esm2020 → esm2022}/lib/speechrecorder/script/script.service.mjs +47 -47
- package/esm2022/lib/speechrecorder/session/audiorecorder.mjs +1179 -0
- package/esm2022/lib/speechrecorder/session/basicrecorder.mjs +668 -0
- package/esm2022/lib/speechrecorder/session/controlpanel.mjs +416 -0
- package/{esm2020 → esm2022}/lib/speechrecorder/session/item.mjs +29 -29
- package/{esm2020 → esm2022}/lib/speechrecorder/session/progress.mjs +69 -69
- package/{esm2020 → esm2022}/lib/speechrecorder/session/prompting.mjs +571 -571
- package/{esm2020 → esm2022}/lib/speechrecorder/session/recorder_combi_pane.mjs +65 -65
- package/esm2022/lib/speechrecorder/session/recording_file_cache.mjs +195 -0
- package/{esm2020 → esm2022}/lib/speechrecorder/session/recording_list.mjs +103 -103
- package/{esm2020 → esm2022}/lib/speechrecorder/session/recordingfile/recording-file-meta.component.mjs +63 -63
- package/{esm2020 → esm2022}/lib/speechrecorder/session/recordingfile/recording-file-navi.component.mjs +51 -51
- package/{esm2020 → esm2022}/lib/speechrecorder/session/recordingfile/recording-file-u-i.component.mjs +104 -104
- package/{esm2020 → esm2022}/lib/speechrecorder/session/recordingfile/recording-file-view.component.mjs +381 -381
- package/{esm2020 → esm2022}/lib/speechrecorder/session/recordingfile/recording-file.mjs +67 -67
- package/esm2022/lib/speechrecorder/session/recordingfile/recordingfile-service.mjs +288 -0
- package/{esm2020 → esm2022}/lib/speechrecorder/session/session.mjs +1 -1
- package/esm2022/lib/speechrecorder/session/session.service.mjs +69 -0
- package/{esm2020 → esm2022}/lib/speechrecorder/session/session_finished_dialog.mjs +29 -29
- package/esm2022/lib/speechrecorder/session/sessionmanager.mjs +1386 -0
- package/{esm2020 → esm2022}/lib/speechrecorder/session/warning_bar.mjs +28 -28
- package/{esm2020 → esm2022}/lib/speechrecorder/spruploader.mjs +22 -22
- package/{esm2020 → esm2022}/lib/speechrecorder/startstopsignal/startstopsignal.mjs +1 -1
- package/esm2022/lib/speechrecorder/startstopsignal/ui/simpletrafficlight.mjs +57 -0
- package/{esm2020 → esm2022}/lib/speechrecorderng.component.mjs +388 -388
- package/{esm2020 → esm2022}/lib/speechrecorderng.module.mjs +100 -100
- package/{esm2020 → esm2022}/lib/spr.config.mjs +26 -26
- package/{esm2020 → esm2022}/lib/spr.module.version.mjs +2 -2
- package/{esm2020 → esm2022}/lib/ui/canvas_layer_comp.mjs +38 -38
- package/{esm2020 → esm2022}/lib/ui/message_dialog.mjs +30 -30
- package/esm2022/lib/ui/recordingitem_display.mjs +253 -0
- package/{esm2020 → esm2022}/lib/ui/responsive_component.mjs +24 -24
- package/{esm2020 → esm2022}/lib/utils/scrollIntoViewToBottom.mjs +23 -23
- package/esm2022/lib/utils/ua-parser.mjs +190 -0
- package/esm2022/lib/utils/utils.mjs +105 -0
- package/esm2022/lib/utils/wake_lock.mjs +114 -0
- package/{esm2020 → esm2022}/lib/utils/wake_lock_media.mjs +1 -1
- package/{esm2020 → esm2022}/public-api.mjs +33 -33
- package/{esm2020 → esm2022}/speechrecorderng.mjs +4 -4
- package/{fesm2020 → fesm2022}/speechrecorderng.mjs +16518 -16454
- package/fesm2022/speechrecorderng.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/action/action.d.ts +27 -27
- package/lib/audio/array_audio_buffer.d.ts +31 -31
- package/lib/audio/array_audio_buffer_input_stream.d.ts +14 -14
- package/lib/audio/array_audio_buffer_random_access_stream.d.ts +9 -9
- package/lib/audio/audio_data_holder.d.ts +84 -84
- package/lib/audio/audio_display.d.ts +36 -36
- package/lib/audio/audio_player.d.ts +47 -47
- package/lib/audio/capture/capture.d.ts +67 -67
- package/lib/audio/context.d.ts +6 -6
- package/lib/audio/dsp/level_measure.d.ts +60 -60
- package/lib/audio/format.d.ts +11 -11
- package/lib/audio/impl/wavformat.d.ts +5 -5
- package/lib/audio/impl/wavreader.d.ts +16 -16
- package/lib/audio/impl/wavwriter.d.ts +13 -13
- package/lib/audio/inddb_audio_buffer.d.ts +68 -68
- package/lib/audio/io/stream.d.ts +28 -28
- package/lib/audio/net_audio_buffer.d.ts +57 -57
- package/lib/audio/persistor.d.ts +29 -29
- package/lib/audio/playback/array_audio_buffer_source_node.d.ts +18 -18
- package/lib/audio/playback/audio_source_node.d.ts +10 -10
- package/lib/audio/playback/audio_source_worklet_module_loader.d.ts +4 -4
- package/lib/audio/playback/inddb_audio_buffer_source_node.d.ts +21 -21
- package/lib/audio/playback/net_audio_buffer_source_node.d.ts +27 -27
- package/lib/audio/playback/player.d.ts +65 -65
- package/lib/audio/ui/audio_canvas_layer_comp.d.ts +68 -68
- package/lib/audio/ui/audio_display_control.d.ts +25 -25
- package/lib/audio/ui/audio_display_scroll_pane.d.ts +26 -26
- package/lib/audio/ui/audiosignal.d.ts +30 -30
- package/lib/audio/ui/common.d.ts +11 -11
- package/lib/audio/ui/container.d.ts +63 -63
- package/lib/audio/ui/livelevel.d.ts +60 -60
- package/lib/audio/ui/scroll_pane_horizontal.d.ts +5 -5
- package/lib/audio/ui/sonagram.d.ts +37 -37
- package/lib/db/inddb.d.ts +21 -21
- package/lib/dsp/utils.d.ts +19 -19
- package/lib/io/BinaryReader.d.ts +18 -18
- package/lib/io/BinaryWriter.d.ts +15 -15
- package/lib/io/stream.d.ts +59 -59
- package/lib/math/2d/geometry.d.ts +18 -18
- package/lib/math/complex.d.ts +17 -17
- package/lib/math/dft.d.ts +22 -22
- package/lib/media/utils.d.ts +3 -3
- package/lib/net/uploader.d.ts +81 -81
- package/lib/recorder_component.d.ts +16 -16
- package/lib/speechrecorder/project/project.d.ts +59 -59
- package/lib/speechrecorder/project/project.service.d.ts +21 -21
- package/lib/speechrecorder/recording.d.ts +51 -51
- package/lib/speechrecorder/recordings/basic_recording.service.d.ts +27 -27
- package/lib/speechrecorder/recordings/recordings.service.d.ts +48 -48
- package/lib/speechrecorder/script/script.d.ts +80 -79
- package/lib/speechrecorder/script/script.service.d.ts +16 -16
- package/lib/speechrecorder/session/audiorecorder.d.ts +122 -122
- package/lib/speechrecorder/session/basicrecorder.d.ts +139 -139
- package/lib/speechrecorder/session/controlpanel.d.ts +109 -107
- package/lib/speechrecorder/session/item.d.ts +12 -12
- package/lib/speechrecorder/session/progress.d.ts +17 -17
- package/lib/speechrecorder/session/prompting.d.ts +121 -121
- package/lib/speechrecorder/session/recorder_combi_pane.d.ts +32 -32
- package/lib/speechrecorder/session/recording_file_cache.d.ts +33 -33
- package/lib/speechrecorder/session/recording_list.d.ts +24 -24
- package/lib/speechrecorder/session/recordingfile/recording-file-meta.component.d.ts +15 -15
- package/lib/speechrecorder/session/recordingfile/recording-file-navi.component.d.ts +20 -20
- package/lib/speechrecorder/session/recordingfile/recording-file-u-i.component.d.ts +31 -31
- package/lib/speechrecorder/session/recordingfile/recording-file-view.component.d.ts +55 -55
- package/lib/speechrecorder/session/recordingfile/recording-file.d.ts +7 -7
- package/lib/speechrecorder/session/recordingfile/recordingfile-service.d.ts +24 -24
- package/lib/speechrecorder/session/session.d.ts +15 -15
- package/lib/speechrecorder/session/session.service.d.ts +20 -20
- package/lib/speechrecorder/session/session_finished_dialog.d.ts +10 -10
- package/lib/speechrecorder/session/sessionmanager.d.ts +129 -123
- package/lib/speechrecorder/session/warning_bar.d.ts +8 -8
- package/lib/speechrecorder/spruploader.d.ts +11 -11
- package/lib/speechrecorder/startstopsignal/startstopsignal.d.ts +10 -10
- package/lib/speechrecorder/startstopsignal/ui/simpletrafficlight.d.ts +11 -11
- package/lib/speechrecorderng.component.d.ts +61 -61
- package/lib/speechrecorderng.module.d.ts +56 -56
- package/lib/spr.config.d.ts +17 -17
- package/lib/spr.module.version.d.ts +1 -1
- package/lib/ui/canvas_layer_comp.d.ts +13 -13
- package/lib/ui/message_dialog.d.ts +10 -10
- package/lib/ui/recordingitem_display.d.ts +84 -84
- package/lib/ui/responsive_component.d.ts +9 -9
- package/lib/utils/scrollIntoViewToBottom.d.ts +9 -9
- package/lib/utils/ua-parser.d.ts +43 -43
- package/lib/utils/utils.d.ts +19 -19
- package/lib/utils/wake_lock.d.ts +23 -23
- package/lib/utils/wake_lock_media.d.ts +1 -1
- package/package.json +17 -23
- package/public-api.d.ts +33 -33
- package/esm2020/lib/action/action.mjs +0 -73
- package/esm2020/lib/audio/audio_data_holder.mjs +0 -264
- package/esm2020/lib/audio/capture/capture.mjs +0 -855
- package/esm2020/lib/audio/context.mjs +0 -79
- package/esm2020/lib/audio/impl/wavformat.mjs +0 -6
- package/esm2020/lib/audio/impl/wavwriter.mjs +0 -105
- package/esm2020/lib/audio/inddb_audio_buffer.mjs +0 -508
- package/esm2020/lib/audio/net_audio_buffer.mjs +0 -293
- package/esm2020/lib/audio/playback/audio_source_node.mjs +0 -18
- package/esm2020/lib/audio/playback/audio_source_worklet_module_loader.mjs +0 -167
- package/esm2020/lib/audio/playback/player.mjs +0 -402
- package/esm2020/lib/audio/ui/audio_canvas_layer_comp.mjs +0 -347
- package/esm2020/lib/audio/ui/container.mjs +0 -414
- package/esm2020/lib/audio/ui/scroll_pane_horizontal.mjs +0 -11
- package/esm2020/lib/audio/ui/sonagram.mjs +0 -900
- package/esm2020/lib/db/inddb.mjs +0 -120
- package/esm2020/lib/dsp/utils.mjs +0 -48
- package/esm2020/lib/io/BinaryWriter.mjs +0 -74
- package/esm2020/lib/math/complex.mjs +0 -58
- package/esm2020/lib/net/uploader.mjs +0 -367
- package/esm2020/lib/speechrecorder/project/project.mjs +0 -49
- package/esm2020/lib/speechrecorder/project/project.service.mjs +0 -64
- package/esm2020/lib/speechrecorder/recordings/basic_recording.service.mjs +0 -216
- package/esm2020/lib/speechrecorder/recordings/recordings.service.mjs +0 -1014
- package/esm2020/lib/speechrecorder/session/audiorecorder.mjs +0 -1179
- package/esm2020/lib/speechrecorder/session/basicrecorder.mjs +0 -666
- package/esm2020/lib/speechrecorder/session/controlpanel.mjs +0 -409
- package/esm2020/lib/speechrecorder/session/recording_file_cache.mjs +0 -195
- package/esm2020/lib/speechrecorder/session/recordingfile/recordingfile-service.mjs +0 -288
- package/esm2020/lib/speechrecorder/session/session.service.mjs +0 -69
- package/esm2020/lib/speechrecorder/session/sessionmanager.mjs +0 -1333
- package/esm2020/lib/speechrecorder/startstopsignal/ui/simpletrafficlight.mjs +0 -57
- package/esm2020/lib/ui/recordingitem_display.mjs +0 -253
- package/esm2020/lib/utils/ua-parser.mjs +0 -190
- package/esm2020/lib/utils/utils.mjs +0 -105
- package/esm2020/lib/utils/wake_lock.mjs +0 -114
- package/fesm2015/speechrecorderng.mjs +0 -17708
- package/fesm2015/speechrecorderng.mjs.map +0 -1
- package/fesm2020/speechrecorderng.mjs.map +0 -1
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
import { Component, Input } from "@angular/core";
|
|
2
|
-
import { SessionService } from "./session.service";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class WarningBar {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.displayClass = 'off';
|
|
7
|
-
}
|
|
8
|
-
set show(show) {
|
|
9
|
-
if (show) {
|
|
10
|
-
this.displayClass = 'on';
|
|
11
|
-
}
|
|
12
|
-
else {
|
|
13
|
-
this.displayClass = 'off';
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
WarningBar.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: WarningBar, selector: "app-warningbar", inputs: { warningText: "warningText", show: "show" }, providers: [SessionService], ngImport: i0, template: `
|
|
1
|
+
import { Component, Input } from "@angular/core";
|
|
2
|
+
import { SessionService } from "./session.service";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class WarningBar {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.displayClass = 'off';
|
|
7
|
+
}
|
|
8
|
+
set show(show) {
|
|
9
|
+
if (show) {
|
|
10
|
+
this.displayClass = 'on';
|
|
11
|
+
}
|
|
12
|
+
else {
|
|
13
|
+
this.displayClass = 'off';
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WarningBar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: WarningBar, selector: "app-warningbar", inputs: { warningText: "warningText", show: "show" }, providers: [SessionService], ngImport: i0, template: `
|
|
19
18
|
<div [class]="displayClass">{{warningText}}</div>
|
|
20
19
|
|
|
21
|
-
`, isInline: true, styles: [":host{flex:0 0 content;background:orange}\n", ".off{display:none}\n", ".on{padding:2px;display:inline-block;width:100%;font-weight:700;font-size:larger;text-align:center}\n"] });
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
`, isInline: true, styles: [":host{flex:0 0 content;background:orange}\n", ".off{display:none}\n", ".on{padding:2px;display:inline-block;width:100%;font-weight:700;font-size:larger;text-align:center}\n"] }); }
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: WarningBar, decorators: [{
|
|
23
|
+
type: Component,
|
|
24
24
|
args: [{ selector: 'app-warningbar', providers: [SessionService], template: `
|
|
25
25
|
<div [class]="displayClass">{{warningText}}</div>
|
|
26
26
|
|
|
27
|
-
`, styles: [":host{flex:0 0 content;background:orange}\n", ".off{display:none}\n", ".on{padding:2px;display:inline-block;width:100%;font-weight:700;font-size:larger;text-align:center}\n"] }]
|
|
28
|
-
}], propDecorators: { warningText: [{
|
|
29
|
-
type: Input
|
|
30
|
-
}], show: [{
|
|
31
|
-
type: Input
|
|
32
|
-
}] } });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
`, styles: [":host{flex:0 0 content;background:orange}\n", ".off{display:none}\n", ".on{padding:2px;display:inline-block;width:100%;font-weight:700;font-size:larger;text-align:center}\n"] }]
|
|
28
|
+
}], propDecorators: { warningText: [{
|
|
29
|
+
type: Input
|
|
30
|
+
}], show: [{
|
|
31
|
+
type: Input
|
|
32
|
+
}] } });
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FybmluZ19iYXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGVlY2hyZWNvcmRlcm5nL3NyYy9saWIvc3BlZWNocmVjb3JkZXIvc2Vzc2lvbi93YXJuaW5nX2Jhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sbUJBQW1CLENBQUM7O0FBOEJqRCxNQUFNLE9BQU8sVUFBVTtJQTVCdkI7UUFxQ0UsaUJBQVksR0FBUSxLQUFLLENBQUM7S0FDM0I7SUFSQyxJQUFhLElBQUksQ0FBQyxJQUFZO1FBQzVCLElBQUcsSUFBSSxFQUFDO1lBQ04sSUFBSSxDQUFDLFlBQVksR0FBQyxJQUFJLENBQUE7U0FDdkI7YUFBSTtZQUNILElBQUksQ0FBQyxZQUFZLEdBQUMsS0FBSyxDQUFBO1NBQ3hCO0lBQ0gsQ0FBQzs4R0FSVSxVQUFVO2tHQUFWLFVBQVUsK0ZBekJWLENBQUMsY0FBYyxDQUFDLDBCQUNqQjs7O0dBR1Q7OzJGQXFCVSxVQUFVO2tCQTVCdEIsU0FBUzsrQkFFRSxnQkFBZ0IsYUFDZixDQUFDLGNBQWMsQ0FBQyxZQUNqQjs7O0dBR1Q7OEJBc0JRLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ08sSUFBSTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtTZXNzaW9uU2VydmljZX0gZnJvbSBcIi4vc2Vzc2lvbi5zZXJ2aWNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHJcbiAgc2VsZWN0b3I6ICdhcHAtd2FybmluZ2JhcicsXHJcbiAgcHJvdmlkZXJzOiBbU2Vzc2lvblNlcnZpY2VdLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8ZGl2IFtjbGFzc109XCJkaXNwbGF5Q2xhc3NcIj57e3dhcm5pbmdUZXh0fX08L2Rpdj5cclxuXHJcbiAgYCxcclxuICBzdHlsZXM6IFtgOmhvc3Qge1xyXG5cclxuICAgIGZsZXg6IDAgMCBjb250ZW50O1xyXG4gICAgYmFja2dyb3VuZDogb3JhbmdlO1xyXG5cclxuICB9YCxgXHJcbiAgICAub2ZmIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICBgLGBcclxuICAgIC5vbiB7XHJcbiAgICAgIHBhZGRpbmc6IDJweDtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIGZvbnQtc2l6ZTogbGFyZ2VyO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgYCBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBXYXJuaW5nQmFyIHtcclxuICBASW5wdXQoKSB3YXJuaW5nVGV4dCE6c3RyaW5nO1xyXG4gIEBJbnB1dCgpIHNldCBzaG93KHNob3c6Ym9vbGVhbil7XHJcbiAgICBpZihzaG93KXtcclxuICAgICAgdGhpcy5kaXNwbGF5Q2xhc3M9J29uJ1xyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMuZGlzcGxheUNsYXNzPSdvZmYnXHJcbiAgICB9XHJcbiAgfVxyXG4gIGRpc3BsYXlDbGFzczpzdHJpbmc9J29mZic7XHJcbn1cclxuIl19
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { Uploader } from "../net/uploader";
|
|
2
|
-
import { Inject, Injectable } from "@angular/core";
|
|
3
|
-
import { SPEECHRECORDER_CONFIG } from "../spr.config";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/common/http";
|
|
6
|
-
import * as i2 from "../spr.config";
|
|
7
|
-
export class SpeechRecorderUploader extends Uploader {
|
|
8
|
-
constructor(httpClient, config) {
|
|
9
|
-
super(httpClient, (config) ? config.withCredentials : false);
|
|
10
|
-
this.httpClient = httpClient;
|
|
11
|
-
this.config = config;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
17
|
-
type: Injectable
|
|
18
|
-
}], ctorParameters:
|
|
19
|
-
type: Inject,
|
|
20
|
-
args: [SPEECHRECORDER_CONFIG]
|
|
21
|
-
}] }]
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Uploader } from "../net/uploader";
|
|
2
|
+
import { Inject, Injectable } from "@angular/core";
|
|
3
|
+
import { SPEECHRECORDER_CONFIG } from "../spr.config";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common/http";
|
|
6
|
+
import * as i2 from "../spr.config";
|
|
7
|
+
export class SpeechRecorderUploader extends Uploader {
|
|
8
|
+
constructor(httpClient, config) {
|
|
9
|
+
super(httpClient, (config) ? config.withCredentials : false);
|
|
10
|
+
this.httpClient = httpClient;
|
|
11
|
+
this.config = config;
|
|
12
|
+
}
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: SpeechRecorderUploader, deps: [{ token: i1.HttpClient }, { token: SPEECHRECORDER_CONFIG }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
14
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: SpeechRecorderUploader }); }
|
|
15
|
+
}
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: SpeechRecorderUploader, decorators: [{
|
|
17
|
+
type: Injectable
|
|
18
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.SpeechRecorderConfig, decorators: [{
|
|
19
|
+
type: Inject,
|
|
20
|
+
args: [SPEECHRECORDER_CONFIG]
|
|
21
|
+
}] }] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BydXBsb2FkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGVlY2hyZWNvcmRlcm5nL3NyYy9saWIvc3BlZWNocmVjb3JkZXIvc3BydXBsb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBQyxxQkFBcUIsRUFBdUIsTUFBTSxlQUFlLENBQUM7Ozs7QUFHekUsTUFBTSxPQUFPLHNCQUF1QixTQUFRLFFBQVE7SUFFbkQsWUFBb0IsVUFBcUIsRUFBd0MsTUFBNEI7UUFDM0csS0FBSyxDQUFDLFVBQVUsRUFBQyxDQUFDLE1BQU0sQ0FBQyxDQUFBLENBQUMsQ0FBQSxNQUFNLENBQUMsZUFBZSxDQUFBLENBQUMsQ0FBQSxLQUFLLENBQUMsQ0FBQztRQUR0QyxlQUFVLEdBQVYsVUFBVSxDQUFXO1FBQXdDLFdBQU0sR0FBTixNQUFNLENBQXNCO0lBRTdHLENBQUM7OEdBSlcsc0JBQXNCLDRDQUVnQixxQkFBcUI7a0hBRjNELHNCQUFzQjs7MkZBQXRCLHNCQUFzQjtrQkFEbkMsVUFBVTs7MEJBR2tDLE1BQU07MkJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmltcG9ydCB7VXBsb2FkZXJ9IGZyb20gXCIuLi9uZXQvdXBsb2FkZXJcIjtcclxuaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7SHR0cENsaWVudH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7U1BFRUNIUkVDT1JERVJfQ09ORklHLCBTcGVlY2hSZWNvcmRlckNvbmZpZ30gZnJvbSBcIi4uL3Nwci5jb25maWdcIjtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuIGV4cG9ydCBjbGFzcyBTcGVlY2hSZWNvcmRlclVwbG9hZGVyIGV4dGVuZHMgVXBsb2FkZXJ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cENsaWVudDpIdHRwQ2xpZW50LEBJbmplY3QoU1BFRUNIUkVDT1JERVJfQ09ORklHKSBwcml2YXRlIGNvbmZpZz86U3BlZWNoUmVjb3JkZXJDb25maWcpe1xyXG4gICAgc3VwZXIoaHR0cENsaWVudCwoY29uZmlnKT9jb25maWcud2l0aENyZWRlbnRpYWxzOmZhbHNlKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhcnRzdG9wc2lnbmFsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BlZWNocmVjb3JkZXJuZy9zcmMvbGliL3NwZWVjaHJlY29yZGVyL3N0YXJ0c3RvcHNpZ25hbC9zdGFydHN0b3BzaWduYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4gICAgZXhwb3J0IGNvbnN0IGVudW0gU3RhdGUge0lETEUsIFBSRVJFQ09SRElORywgUE9TVFJFQ09SRElORywgUkVDT1JESU5HLCBPRkZ9XHJcblxyXG4gICAgZXhwb3J0IGludGVyZmFjZSBTdGFydFN0b3BTaWduYWwge1xyXG4gICAgICAgIHN0YXR1czpTdGF0ZTtcclxuICAgIH1cclxuXHJcbiJdfQ==
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class SimpleTrafficLight {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.status = 4 /* State.OFF */;
|
|
6
|
+
}
|
|
7
|
+
set status(status) {
|
|
8
|
+
if (4 /* State.OFF */ === status) {
|
|
9
|
+
this.lighttop = 'grey';
|
|
10
|
+
this.lightmid = 'grey';
|
|
11
|
+
this.lightbottom = 'grey';
|
|
12
|
+
}
|
|
13
|
+
else if (0 /* State.IDLE */ === status) {
|
|
14
|
+
this.lighttop = 'red';
|
|
15
|
+
this.lightmid = 'grey';
|
|
16
|
+
this.lightbottom = 'grey';
|
|
17
|
+
}
|
|
18
|
+
else if (1 /* State.PRERECORDING */ == status) {
|
|
19
|
+
this.lighttop = 'red';
|
|
20
|
+
this.lightmid = 'yellow';
|
|
21
|
+
this.lightbottom = 'grey';
|
|
22
|
+
}
|
|
23
|
+
else if (3 /* State.RECORDING */ == status) {
|
|
24
|
+
this.lighttop = 'grey';
|
|
25
|
+
this.lightmid = 'grey';
|
|
26
|
+
this.lightbottom = 'green';
|
|
27
|
+
}
|
|
28
|
+
else if (2 /* State.POSTRECORDING */ == status) {
|
|
29
|
+
this.lighttop = 'grey';
|
|
30
|
+
this.lightmid = 'yellow';
|
|
31
|
+
this.lightbottom = 'grey';
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: SimpleTrafficLight, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
35
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.6", type: SimpleTrafficLight, selector: "app-simpletrafficlight", inputs: { status: "status" }, ngImport: i0, template: `
|
|
36
|
+
|
|
37
|
+
<div>
|
|
38
|
+
<div class="circle {{lighttop}}"></div>
|
|
39
|
+
<div class="circle {{lightmid}}"></div>
|
|
40
|
+
<div class="circle {{lightbottom}}"></div>
|
|
41
|
+
</div>
|
|
42
|
+
`, isInline: true, styles: [".circle{width:50px;height:50px;border-radius:50%;margin:5px;background:grey}\n", ".red{background:red}\n", ".yellow{background:yellow}\n", ".green{background:green}\n", ".black{background:black}\n", ":host{display:flex;flex-direction:column;background:black;padding:2px;height:170px;max-height:170px;flex:0 0 content}\n"] }); }
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImport: i0, type: SimpleTrafficLight, decorators: [{
|
|
45
|
+
type: Component,
|
|
46
|
+
args: [{ selector: 'app-simpletrafficlight', template: `
|
|
47
|
+
|
|
48
|
+
<div>
|
|
49
|
+
<div class="circle {{lighttop}}"></div>
|
|
50
|
+
<div class="circle {{lightmid}}"></div>
|
|
51
|
+
<div class="circle {{lightbottom}}"></div>
|
|
52
|
+
</div>
|
|
53
|
+
`, styles: [".circle{width:50px;height:50px;border-radius:50%;margin:5px;background:grey}\n", ".red{background:red}\n", ".yellow{background:yellow}\n", ".green{background:green}\n", ".black{background:black}\n", ":host{display:flex;flex-direction:column;background:black;padding:2px;height:170px;max-height:170px;flex:0 0 content}\n"] }]
|
|
54
|
+
}], ctorParameters: () => [], propDecorators: { status: [{
|
|
55
|
+
type: Input
|
|
56
|
+
}] } });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxldHJhZmZpY2xpZ2h0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BlZWNocmVjb3JkZXJuZy9zcmMvbGliL3NwZWVjaHJlY29yZGVyL3N0YXJ0c3RvcHNpZ25hbC91aS9zaW1wbGV0cmFmZmljbGlnaHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUE7O0FBaUQ3QyxNQUFNLE9BQU8sa0JBQWtCO0lBTTdCO1FBQ0UsSUFBSSxDQUFDLE1BQU0sb0JBQVUsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFDSSxNQUFNLENBQUMsTUFBYTtRQUN0QixJQUFJLHNCQUFjLE1BQU0sRUFBRTtZQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQztZQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQztZQUN2QixJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQztTQUMzQjthQUFNLElBQUksdUJBQWUsTUFBTSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1lBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDO1NBQzNCO2FBQU0sSUFBSSw4QkFBc0IsTUFBTSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1lBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDO1NBQzNCO2FBQU0sSUFBSSwyQkFBbUIsTUFBTSxFQUFFO1lBQ3BDLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDO1NBQzVCO2FBQU0sSUFBSSwrQkFBdUIsTUFBTSxFQUFFO1lBQ3hDLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQzs4R0FqQ1Usa0JBQWtCO2tHQUFsQixrQkFBa0IsNEZBMUNuQjs7Ozs7OztHQU9UOzsyRkFtQ1Usa0JBQWtCO2tCQTlDOUIsU0FBUzsrQkFFRSx3QkFBd0IsWUFFeEI7Ozs7Ozs7R0FPVDt3REE4Q0csTUFBTTtzQkFEVCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCB7U3RhcnRTdG9wU2lnbmFsLCBTdGF0ZX0gZnJvbSAnLi4vc3RhcnRzdG9wc2lnbmFsJ1xyXG5cclxuQENvbXBvbmVudCh7XHJcblxyXG4gIHNlbGVjdG9yOiAnYXBwLXNpbXBsZXRyYWZmaWNsaWdodCcsXHJcblxyXG4gIHRlbXBsYXRlOiBgXHJcblxyXG4gICAgPGRpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNpcmNsZSB7e2xpZ2h0dG9wfX1cIj48L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNpcmNsZSB7e2xpZ2h0bWlkfX1cIj48L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNpcmNsZSB7e2xpZ2h0Ym90dG9tfX1cIj48L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIGBcclxuICAsXHJcbiAgc3R5bGVzOiBbYC5jaXJjbGUge1xyXG4gICAgd2lkdGg6IDUwcHg7XHJcbiAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBtYXJnaW46IDVweDtcclxuICAgIGJhY2tncm91bmQ6IGdyZXk7XHJcbiAgfWAsIGAucmVkIHtcclxuICAgIGJhY2tncm91bmQ6IHJlZDtcclxuICB9XHJcbiAgYCwgYFxyXG4gICAgLnllbGxvdyB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHllbGxvdztcclxuICAgIH1cclxuICBgLCBgXHJcbiAgICAuZ3JlZW4ge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBncmVlbjtcclxuICAgIH1cclxuICBgLCBgXHJcbiAgICAuYmxhY2sge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBibGFjaztcclxuICAgIH1gLFxyXG4gICAgICBgOmhvc3Qge1xyXG4gICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBibGFjaztcclxuICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgIHBhZGRpbmc6IDJweDtcclxuICAgICAgICAgICAgIGhlaWdodDogMTcwcHg7XHJcbiAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxNzBweDtcclxuICAgICAgICAgICAgIGZsZXg6IDAgMCBjb250ZW50O1xyXG4gICAgICAgICAgIH1cclxuICAgICAgICAgICBgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2ltcGxlVHJhZmZpY0xpZ2h0IGltcGxlbWVudHMgU3RhcnRTdG9wU2lnbmFsIHtcclxuXHJcbiAgbGlnaHR0b3AhOiBzdHJpbmc7XHJcbiAgbGlnaHRtaWQhOiBzdHJpbmc7XHJcbiAgbGlnaHRib3R0b20hOiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5zdGF0dXM9U3RhdGUuT0ZGO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgc3RhdHVzKHN0YXR1czogU3RhdGUpIHtcclxuICAgIGlmIChTdGF0ZS5PRkYgPT09IHN0YXR1cykge1xyXG4gICAgICB0aGlzLmxpZ2h0dG9wID0gJ2dyZXknO1xyXG4gICAgICB0aGlzLmxpZ2h0bWlkID0gJ2dyZXknO1xyXG4gICAgICB0aGlzLmxpZ2h0Ym90dG9tID0gJ2dyZXknO1xyXG4gICAgfSBlbHNlIGlmIChTdGF0ZS5JRExFID09PSBzdGF0dXMpIHtcclxuICAgICAgdGhpcy5saWdodHRvcCA9ICdyZWQnO1xyXG4gICAgICB0aGlzLmxpZ2h0bWlkID0gJ2dyZXknO1xyXG4gICAgICB0aGlzLmxpZ2h0Ym90dG9tID0gJ2dyZXknO1xyXG4gICAgfSBlbHNlIGlmIChTdGF0ZS5QUkVSRUNPUkRJTkcgPT0gc3RhdHVzKSB7XHJcbiAgICAgIHRoaXMubGlnaHR0b3AgPSAncmVkJztcclxuICAgICAgdGhpcy5saWdodG1pZCA9ICd5ZWxsb3cnO1xyXG4gICAgICB0aGlzLmxpZ2h0Ym90dG9tID0gJ2dyZXknO1xyXG4gICAgfSBlbHNlIGlmIChTdGF0ZS5SRUNPUkRJTkcgPT0gc3RhdHVzKSB7XHJcbiAgICAgIHRoaXMubGlnaHR0b3AgPSAnZ3JleSc7XHJcbiAgICAgIHRoaXMubGlnaHRtaWQgPSAnZ3JleSc7XHJcbiAgICAgIHRoaXMubGlnaHRib3R0b20gPSAnZ3JlZW4nO1xyXG4gICAgfSBlbHNlIGlmIChTdGF0ZS5QT1NUUkVDT1JESU5HID09IHN0YXR1cykge1xyXG4gICAgICB0aGlzLmxpZ2h0dG9wID0gJ2dyZXknO1xyXG4gICAgICB0aGlzLmxpZ2h0bWlkID0gJ3llbGxvdyc7XHJcbiAgICAgIHRoaXMubGlnaHRib3R0b20gPSAnZ3JleSc7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuIl19
|