@tilde-nlp/ngx-common 5.0.21 → 5.0.22

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.
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm9pY2UubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tbW9uL3NyYy9saWIvdGV4dC10by1zcGVlY2gvbW9kZWxzL3ZvaWNlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFZvaWNlIHtcclxuICB2b2ljZTogc3RyaW5nO1xyXG4gIGFwaVZlcnNpb246IG51bWJlcjtcclxuICBhcGlVcmw6IHN0cmluZztcclxufVxyXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidm9pY2UubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tbW9uL3NyYy9saWIvdGV4dC10by1zcGVlY2gvbW9kZWxzL3ZvaWNlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFZvaWNlIHtcclxuICB2b2ljZTogc3RyaW5nO1xyXG4gIGFwaVZlcnNpb246IG51bWJlcjtcclxuICBhcGlVcmw6IHN0cmluZztcclxuICB2b2ljZU5hbWU/OiBzdHJpbmc7XHJcbn1cclxuIl19
@@ -21,17 +21,28 @@ import * as i6 from "@angular/material/core";
21
21
  import * as i7 from "@ngbracket/ngx-layout/extended";
22
22
  import * as i8 from "@ngx-translate/core";
23
23
  const _c0 = a0 => ({ nth: a0 });
24
+ function TextToSpeechComponent_mat_option_6_Conditional_1_Template(rf, ctx) { if (rf & 1) {
25
+ i0.ɵɵtext(0);
26
+ } if (rf & 2) {
27
+ const voice_r1 = i0.ɵɵnextContext().$implicit;
28
+ i0.ɵɵtextInterpolate1(" ", voice_r1.voiceName, " ");
29
+ } }
30
+ function TextToSpeechComponent_mat_option_6_Conditional_2_Template(rf, ctx) { if (rf & 1) {
31
+ i0.ɵɵtext(0);
32
+ i0.ɵɵpipe(1, "translate");
33
+ } if (rf & 2) {
34
+ const i_r2 = i0.ɵɵnextContext().index;
35
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(1, 1, "voice", i0.ɵɵpureFunction1(4, _c0, i_r2 + 1)), " ");
36
+ } }
24
37
  function TextToSpeechComponent_mat_option_6_Template(rf, ctx) { if (rf & 1) {
25
38
  i0.ɵɵelementStart(0, "mat-option", 12);
26
- i0.ɵɵtext(1);
27
- i0.ɵɵpipe(2, "translate");
39
+ i0.ɵɵtemplate(1, TextToSpeechComponent_mat_option_6_Conditional_1_Template, 1, 1)(2, TextToSpeechComponent_mat_option_6_Conditional_2_Template, 2, 6);
28
40
  i0.ɵɵelementEnd();
29
41
  } if (rf & 2) {
30
42
  const voice_r1 = ctx.$implicit;
31
- const i_r2 = ctx.index;
32
43
  i0.ɵɵproperty("value", voice_r1);
33
44
  i0.ɵɵadvance();
34
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(2, 2, "voice", i0.ɵɵpureFunction1(5, _c0, i_r2 + 1)), " ");
45
+ i0.ɵɵconditional(1, voice_r1.voiceName ? 1 : 2);
35
46
  } }
36
47
  function TextToSpeechComponent_mat_icon_17_Template(rf, ctx) { if (rf & 1) {
37
48
  i0.ɵɵelementStart(0, "mat-icon");
@@ -106,7 +117,7 @@ export class TextToSpeechComponent {
106
117
  i0.ɵɵelementEnd();
107
118
  i0.ɵɵelementStart(5, "mat-select", 2);
108
119
  i0.ɵɵtwoWayListener("valueChange", function TextToSpeechComponent_Template_mat_select_valueChange_5_listener($event) { i0.ɵɵtwoWayBindingSet(ctx.selected, $event) || (ctx.selected = $event); return $event; });
109
- i0.ɵɵtemplate(6, TextToSpeechComponent_mat_option_6_Template, 3, 7, "mat-option", 3);
120
+ i0.ɵɵtemplate(6, TextToSpeechComponent_mat_option_6_Template, 3, 2, "mat-option", 3);
110
121
  i0.ɵɵelementEnd()();
111
122
  i0.ɵɵelementStart(7, "div", 4)(8, "textarea", 5);
112
123
  i0.ɵɵpipe(9, "translate");
@@ -165,11 +176,11 @@ export class TextToSpeechComponent {
165
176
  MatSelectModule,
166
177
  FlexLayoutModule,
167
178
  TranslateModule
168
- ], template: "<div [ngClass.lt-md]=\"'mobile'\" class=\"text-to-speech-wrapper\">\r\n <mat-form-field appearance=\"outline\" color=\"accent\">\r\n <mat-label>{{\"selectVoice\" | translate }}</mat-label>\r\n <mat-select [(value)]=\"selected\">\r\n <mat-option *ngFor=\"let voice of voices; let i = index\" [value]=\"voice\">\r\n {{ 'voice' | translate: {nth: i + 1} }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <div class=\"text-to-speech-textarea-wrapper\">\r\n <textarea [(ngModel)]=\"text\" class=\"text-to-speech-textarea\" [placeholder]=\"'placeholder' | translate\"></textarea>\r\n <div [class.text-overflow]=\"hasOverflow\" class=\"text-to-speech-characters\">\r\n {{text?.length ?? 0}}/{{maxCharLength}}\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-to-speech-actions\">\r\n <div [matTooltip]=\"!text ? ('playDisabled' | translate) : ''\">\r\n <button [matTooltip]=\"(isPlaying ? 'stop' : 'play') | translate\" [disabled]=\"!text || isLoading\" (click)=\"togglePlay()\" mat-icon-button>\r\n <mat-icon *ngIf=\"!isLoading\"> {{ isPlaying ? 'stop' : 'volume_up' }} </mat-icon>\r\n <mat-spinner *ngIf=\"isLoading\" [diameter]=\"20\"></mat-spinner>\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".text-to-speech-wrapper{margin-top:5px;position:relative;display:flex;flex-direction:column;align-items:center}.text-to-speech-wrapper mat-form-field{max-width:900px!important;width:100%}.text-to-speech-textarea-wrapper,.text-to-speech-textarea{position:relative;width:100%;max-width:900px}.text-to-speech-textarea-wrapper{border:1px solid var(--base-70);padding:5px;border-radius:8px;box-shadow:0 0 16px #0000001a}.text-to-speech-textarea{margin:15px 0;padding:0 10px;min-height:120px;resize:none;outline:none;border:none}.text-to-speech-actions{position:absolute;bottom:-25px}.text-to-speech-actions button{color:#fff;background-color:var(--accent)}.text-to-speech-actions button:disabled{background-color:var(--base-70)}.text-to-speech-characters{position:absolute;right:10px;bottom:0;margin:5px;font-size:13px;color:var(--base-65)}.text-overflow{right:30px}.mobile .text-overflow{right:15px}\n"] }]
179
+ ], template: "<div [ngClass.lt-md]=\"'mobile'\" class=\"text-to-speech-wrapper\">\r\n <mat-form-field appearance=\"outline\" color=\"accent\">\r\n <mat-label>{{\"selectVoice\" | translate }}</mat-label>\r\n <mat-select [(value)]=\"selected\">\r\n <mat-option *ngFor=\"let voice of voices; let i = index\" [value]=\"voice\">\r\n @if(voice.voiceName){\r\n {{voice.voiceName}}\r\n }\r\n @else{\r\n {{ 'voice' | translate: {nth: i + 1} }}\r\n }\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <div class=\"text-to-speech-textarea-wrapper\">\r\n <textarea [(ngModel)]=\"text\" class=\"text-to-speech-textarea\" [placeholder]=\"'placeholder' | translate\"></textarea>\r\n <div [class.text-overflow]=\"hasOverflow\" class=\"text-to-speech-characters\">\r\n {{text?.length ?? 0}}/{{maxCharLength}}\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-to-speech-actions\">\r\n <div [matTooltip]=\"!text ? ('playDisabled' | translate) : ''\">\r\n <button [matTooltip]=\"(isPlaying ? 'stop' : 'play') | translate\" [disabled]=\"!text || isLoading\" (click)=\"togglePlay()\" mat-icon-button>\r\n <mat-icon *ngIf=\"!isLoading\"> {{ isPlaying ? 'stop' : 'volume_up' }} </mat-icon>\r\n <mat-spinner *ngIf=\"isLoading\" [diameter]=\"20\"></mat-spinner>\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".text-to-speech-wrapper{margin-top:5px;position:relative;display:flex;flex-direction:column;align-items:center}.text-to-speech-wrapper mat-form-field{max-width:900px!important;width:100%}.text-to-speech-textarea-wrapper,.text-to-speech-textarea{position:relative;width:100%;max-width:900px}.text-to-speech-textarea-wrapper{border:1px solid var(--base-70);padding:5px;border-radius:8px;box-shadow:0 0 16px #0000001a}.text-to-speech-textarea{margin:15px 0;padding:0 10px;min-height:120px;resize:none;outline:none;border:none}.text-to-speech-actions{position:absolute;bottom:-25px}.text-to-speech-actions button{color:#fff;background-color:var(--accent)}.text-to-speech-actions button:disabled{background-color:var(--base-70)}.text-to-speech-characters{position:absolute;right:10px;bottom:0;margin:5px;font-size:13px;color:var(--base-65)}.text-overflow{right:30px}.mobile .text-overflow{right:15px}\n"] }]
169
180
  }], null, { maxCharLength: [{
170
181
  type: Input
171
182
  }], voices: [{
172
183
  type: Input
173
184
  }] }); })();
174
185
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TextToSpeechComponent, { className: "TextToSpeechComponent", filePath: "lib\\text-to-speech\\text-to-speech.component.ts", lineNumber: 35 }); })();
175
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC10by1zcGVlY2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbW1vbi9zcmMvbGliL3RleHQtdG8tc3BlZWNoL3RleHQtdG8tc3BlZWNoLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21tb24vc3JjL2xpYi90ZXh0LXRvLXNwZWVjaC90ZXh0LXRvLXNwZWVjaC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7Ozs7Ozs7SUNSaEQsc0NBQXdFO0lBQ3RF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bEIsZUFBZSw4QkFDZixnQkFBZ0IsNEJBQ2hCLGVBQWU7O2lGQUtOLHFCQUFxQjtjQW5CakMsU0FBUzsyQkFDRSxvQkFBb0IsY0FDbEIsSUFBSSxXQUNQO29CQUNQLFlBQVk7b0JBQ1osU0FBUztvQkFDVCxhQUFhO29CQUNiLE9BQU87b0JBQ1AsV0FBVztvQkFDWCxrQkFBa0I7b0JBQ2xCLGdCQUFnQjtvQkFDaEIsa0JBQWtCO29CQUNsQixlQUFlO29CQUNmLGdCQUFnQjtvQkFDaEIsZUFBZTtpQkFDaEI7Z0JBS1EsYUFBYTtrQkFBckIsS0FBSztZQUNHLE1BQU07a0JBQWQsS0FBSzs7a0ZBRksscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbiwgTWF0SWNvbkJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdEljb24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgVFRTQXBpU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvdHRzLWFwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgZmluYWxpemUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NTcGlubmVyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lcic7XHJcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuaW1wb3J0IHsgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IEZsZXhMYXlvdXRNb2R1bGUgfSBmcm9tICdAbmdicmFja2V0L25neC1sYXlvdXQnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgVm9pY2UgfSBmcm9tICcuL21vZGVscy92b2ljZS5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi10ZXh0LXRvLXNwZWVjaCcsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBNYXRCdXR0b24sXHJcbiAgICBNYXRJY29uQnV0dG9uLFxyXG4gICAgTWF0SWNvbixcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgTWF0UHJvZ3Jlc3NTcGlubmVyLFxyXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcclxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcclxuICAgIE1hdFNlbGVjdE1vZHVsZSxcclxuICAgIEZsZXhMYXlvdXRNb2R1bGUsXHJcbiAgICBUcmFuc2xhdGVNb2R1bGVcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0LXRvLXNwZWVjaC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL3RleHQtdG8tc3BlZWNoLmNvbXBvbmVudC5zY3NzJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRleHRUb1NwZWVjaENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgbWF4Q2hhckxlbmd0aDogbnVtYmVyID0gMTAwMDtcclxuICBASW5wdXQoKSB2b2ljZXMhOiBWb2ljZVtdO1xyXG5cclxuICB0ZXh0ITogc3RyaW5nO1xyXG4gIHByZXZpb3VzVGV4dCE6IHN0cmluZztcclxuICBwcmV2aW91c1ZvaWNlITogc3RyaW5nO1xyXG4gIGF1ZGlvITogSFRNTEF1ZGlvRWxlbWVudDtcclxuICBpc0xvYWRpbmchOiBib29sZWFuO1xyXG4gIGlzUGxheWluZyE6IGJvb2xlYW47XHJcbiAgXHJcbiAgc2VsZWN0ZWQhOiBWb2ljZTtcclxuXHJcbiAgZ2V0IGhhc092ZXJmbG93KCkge1xyXG4gICAgY29uc3QgdGV4dGFyZWEgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCd0ZXh0YXJlYScpIGFzIEhUTUxUZXh0QXJlYUVsZW1lbnQ7XHJcbiAgICByZXR1cm4gdGV4dGFyZWE/LmNsaWVudEhlaWdodCA8IHRleHRhcmVhPy5zY3JvbGxIZWlnaHQgPyB0cnVlIDogZmFsc2VcclxuICB9XHJcblxyXG4gIHJlYWRvbmx5ICNUVFNBcGlTZXJ2aWNlID0gaW5qZWN0KFRUU0FwaVNlcnZpY2UpO1xyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VsZWN0ZWQgPSB0aGlzLnZvaWNlc1swXTtcclxuICB9XHJcblxyXG4gIHRvZ2dsZVBsYXkoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5pc1BsYXlpbmcpIHtcclxuICAgICAgdGhpcy5zdG9wKCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XHJcblxyXG4gICAgY29uc3QgdGV4dCA9IHRoaXMudGV4dC5sZW5ndGggPiB0aGlzLm1heENoYXJMZW5ndGggPyB0aGlzLnRleHQuc3Vic3RyaW5nKDAsIHRoaXMubWF4Q2hhckxlbmd0aCkgOiB0aGlzLnRleHQ7XHJcblxyXG4gICAgaWYgKCh0aGlzLmF1ZGlvICYmIHRleHQgPT09IHRoaXMucHJldmlvdXNUZXh0KSAmJiAodGhpcy5zZWxlY3RlZC52b2ljZSA9PT0gdGhpcy5wcmV2aW91c1ZvaWNlKSkge1xyXG4gICAgICB0aGlzLmF1ZGlvLnBsYXkoKTtcclxuICAgICAgdGhpcy5pc1BsYXlpbmcgPSB0cnVlO1xyXG4gICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy4jVFRTQXBpU2VydmljZVxyXG4gICAgICAucGxheSh0ZXh0LCB0aGlzLnNlbGVjdGVkKVxyXG4gICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiB7IHRoaXMuaXNMb2FkaW5nID0gZmFsc2UgfSkpXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXMpID0+IHtcclxuICAgICAgICAgIHRoaXMucHJldmlvdXNUZXh0ID0gdGV4dDtcclxuICAgICAgICAgIHRoaXMucHJldmlvdXNWb2ljZSA9IHRoaXMuc2VsZWN0ZWQudm9pY2U7XHJcbiAgICAgICAgICBjb25zdCBhdWRpb1VybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwocmVzKTtcclxuICAgICAgICAgIHRoaXMuYXVkaW8gPSBuZXcgQXVkaW8oYXVkaW9VcmwpO1xyXG4gICAgICAgICAgdGhpcy5hdWRpby5wbGF5KCk7XHJcblxyXG4gICAgICAgICAgdGhpcy5pc1BsYXlpbmcgPSB0cnVlO1xyXG5cclxuICAgICAgICAgIHRoaXMuYXVkaW8ub25lbmRlZCA9ICgpID0+IHtcclxuICAgICAgICAgICAgVVJMLnJldm9rZU9iamVjdFVSTChhdWRpb1VybCk7XHJcbiAgICAgICAgICAgIHRoaXMuaXNQbGF5aW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc3RvcCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmF1ZGlvKSB7XHJcbiAgICAgIHRoaXMuYXVkaW8ucGF1c2UoKTtcclxuICAgICAgdGhpcy5hdWRpby5jdXJyZW50VGltZSA9IDA7XHJcbiAgICAgIHRoaXMuaXNQbGF5aW5nID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgW25nQ2xhc3MubHQtbWRdPVwiJ21vYmlsZSdcIiBjbGFzcz1cInRleHQtdG8tc3BlZWNoLXdyYXBwZXJcIj5cclxuICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjb2xvcj1cImFjY2VudFwiPlxyXG4gICAgPG1hdC1sYWJlbD57e1wic2VsZWN0Vm9pY2VcIiB8IHRyYW5zbGF0ZSB9fTwvbWF0LWxhYmVsPlxyXG4gICAgPG1hdC1zZWxlY3QgWyh2YWx1ZSldPVwic2VsZWN0ZWRcIj5cclxuICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHZvaWNlIG9mIHZvaWNlczsgbGV0IGkgPSBpbmRleFwiIFt2YWx1ZV09XCJ2b2ljZVwiPlxyXG4gICAgICAgIHt7ICd2b2ljZScgfCB0cmFuc2xhdGU6IHtudGg6IGkgKyAxfSB9fVxyXG4gICAgICA8L21hdC1vcHRpb24+XHJcbiAgICA8L21hdC1zZWxlY3Q+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiAgPGRpdiBjbGFzcz1cInRleHQtdG8tc3BlZWNoLXRleHRhcmVhLXdyYXBwZXJcIj5cclxuICAgIDx0ZXh0YXJlYSBbKG5nTW9kZWwpXT1cInRleHRcIiBjbGFzcz1cInRleHQtdG8tc3BlZWNoLXRleHRhcmVhXCIgW3BsYWNlaG9sZGVyXT1cIidwbGFjZWhvbGRlcicgfCB0cmFuc2xhdGVcIj48L3RleHRhcmVhPlxyXG4gICAgPGRpdiBbY2xhc3MudGV4dC1vdmVyZmxvd109XCJoYXNPdmVyZmxvd1wiIGNsYXNzPVwidGV4dC10by1zcGVlY2gtY2hhcmFjdGVyc1wiPlxyXG4gICAgICB7e3RleHQ/Lmxlbmd0aCA/PyAwfX0ve3ttYXhDaGFyTGVuZ3RofX1cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwidGV4dC10by1zcGVlY2gtYWN0aW9uc1wiPlxyXG4gICAgPGRpdiBbbWF0VG9vbHRpcF09XCIhdGV4dCA/ICgncGxheURpc2FibGVkJyB8IHRyYW5zbGF0ZSkgOiAnJ1wiPlxyXG4gICAgICA8YnV0dG9uIFttYXRUb29sdGlwXT1cIihpc1BsYXlpbmcgPyAnc3RvcCcgOiAncGxheScpIHwgdHJhbnNsYXRlXCIgW2Rpc2FibGVkXT1cIiF0ZXh0IHx8IGlzTG9hZGluZ1wiIChjbGljayk9XCJ0b2dnbGVQbGF5KClcIiBtYXQtaWNvbi1idXR0b24+XHJcbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiIWlzTG9hZGluZ1wiPiB7eyBpc1BsYXlpbmcgPyAnc3RvcCcgOiAndm9sdW1lX3VwJyB9fSAgPC9tYXQtaWNvbj5cclxuICAgICAgICA8bWF0LXNwaW5uZXIgKm5nSWY9XCJpc0xvYWRpbmdcIiBbZGlhbWV0ZXJdPVwiMjBcIj48L21hdC1zcGlubmVyPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
186
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC10by1zcGVlY2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbW1vbi9zcmMvbGliL3RleHQtdG8tc3BlZWNoL3RleHQtdG8tc3BlZWNoLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21tb24vc3JjL2xpYi90ZXh0LXRvLXNwZWVjaC90ZXh0LXRvLXNwZWVjaC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7Ozs7Ozs7Ozs7SUNONUMsWUFDRjs7O0lBREUs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Q2IsT0FBTztZQUNQLFdBQVcsMkRBQ1gsa0JBQWtCO1lBQ2xCLGdCQUFnQixpQkFDaEIsa0JBQWtCLGdDQUNsQixlQUFlLDhCQUNmLGdCQUFnQiw0QkFDaEIsZUFBZTs7aUZBS04scUJBQXFCO2NBbkJqQyxTQUFTOzJCQUNFLG9CQUFvQixjQUNsQixJQUFJLFdBQ1A7b0JBQ1AsWUFBWTtvQkFDWixTQUFTO29CQUNULGFBQWE7b0JBQ2IsT0FBTztvQkFDUCxXQUFXO29CQUNYLGtCQUFrQjtvQkFDbEIsZ0JBQWdCO29CQUNoQixrQkFBa0I7b0JBQ2xCLGVBQWU7b0JBQ2YsZ0JBQWdCO29CQUNoQixlQUFlO2lCQUNoQjtnQkFLUSxhQUFhO2tCQUFyQixLQUFLO1lBQ0csTUFBTTtrQkFBZCxLQUFLOztrRkFGSyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0QnV0dG9uLCBNYXRJY29uQnV0dG9uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0SWNvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBUVFNBcGlTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy90dHMtYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcclxuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgRmxleExheW91dE1vZHVsZSB9IGZyb20gJ0BuZ2JyYWNrZXQvbmd4LWxheW91dCc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBWb2ljZSB9IGZyb20gJy4vbW9kZWxzL3ZvaWNlLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXRleHQtdG8tc3BlZWNoJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIE1hdEJ1dHRvbixcclxuICAgIE1hdEljb25CdXR0b24sXHJcbiAgICBNYXRJY29uLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXIsXHJcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxyXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxyXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxyXG4gICAgRmxleExheW91dE1vZHVsZSxcclxuICAgIFRyYW5zbGF0ZU1vZHVsZVxyXG4gIF0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RleHQtdG8tc3BlZWNoLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vdGV4dC10by1zcGVlY2guY29tcG9uZW50LnNjc3MnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGV4dFRvU3BlZWNoQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBtYXhDaGFyTGVuZ3RoOiBudW1iZXIgPSAxMDAwO1xyXG4gIEBJbnB1dCgpIHZvaWNlcyE6IFZvaWNlW107XHJcblxyXG4gIHRleHQhOiBzdHJpbmc7XHJcbiAgcHJldmlvdXNUZXh0ITogc3RyaW5nO1xyXG4gIHByZXZpb3VzVm9pY2UhOiBzdHJpbmc7XHJcbiAgYXVkaW8hOiBIVE1MQXVkaW9FbGVtZW50O1xyXG4gIGlzTG9hZGluZyE6IGJvb2xlYW47XHJcbiAgaXNQbGF5aW5nITogYm9vbGVhbjtcclxuICBcclxuICBzZWxlY3RlZCE6IFZvaWNlO1xyXG5cclxuICBnZXQgaGFzT3ZlcmZsb3coKSB7XHJcbiAgICBjb25zdCB0ZXh0YXJlYSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3RleHRhcmVhJykgYXMgSFRNTFRleHRBcmVhRWxlbWVudDtcclxuICAgIHJldHVybiB0ZXh0YXJlYT8uY2xpZW50SGVpZ2h0IDwgdGV4dGFyZWE/LnNjcm9sbEhlaWdodCA/IHRydWUgOiBmYWxzZVxyXG4gIH1cclxuXHJcbiAgcmVhZG9ubHkgI1RUU0FwaVNlcnZpY2UgPSBpbmplY3QoVFRTQXBpU2VydmljZSk7XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWxlY3RlZCA9IHRoaXMudm9pY2VzWzBdO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlUGxheSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmlzUGxheWluZykge1xyXG4gICAgICB0aGlzLnN0b3AoKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcclxuXHJcbiAgICBjb25zdCB0ZXh0ID0gdGhpcy50ZXh0Lmxlbmd0aCA+IHRoaXMubWF4Q2hhckxlbmd0aCA/IHRoaXMudGV4dC5zdWJzdHJpbmcoMCwgdGhpcy5tYXhDaGFyTGVuZ3RoKSA6IHRoaXMudGV4dDtcclxuXHJcbiAgICBpZiAoKHRoaXMuYXVkaW8gJiYgdGV4dCA9PT0gdGhpcy5wcmV2aW91c1RleHQpICYmICh0aGlzLnNlbGVjdGVkLnZvaWNlID09PSB0aGlzLnByZXZpb3VzVm9pY2UpKSB7XHJcbiAgICAgIHRoaXMuYXVkaW8ucGxheSgpO1xyXG4gICAgICB0aGlzLmlzUGxheWluZyA9IHRydWU7XHJcbiAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLiNUVFNBcGlTZXJ2aWNlXHJcbiAgICAgIC5wbGF5KHRleHQsIHRoaXMuc2VsZWN0ZWQpXHJcbiAgICAgIC5waXBlKGZpbmFsaXplKCgpID0+IHsgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZSB9KSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlcykgPT4ge1xyXG4gICAgICAgICAgdGhpcy5wcmV2aW91c1RleHQgPSB0ZXh0O1xyXG4gICAgICAgICAgdGhpcy5wcmV2aW91c1ZvaWNlID0gdGhpcy5zZWxlY3RlZC52b2ljZTtcclxuICAgICAgICAgIGNvbnN0IGF1ZGlvVXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChyZXMpO1xyXG4gICAgICAgICAgdGhpcy5hdWRpbyA9IG5ldyBBdWRpbyhhdWRpb1VybCk7XHJcbiAgICAgICAgICB0aGlzLmF1ZGlvLnBsYXkoKTtcclxuXHJcbiAgICAgICAgICB0aGlzLmlzUGxheWluZyA9IHRydWU7XHJcblxyXG4gICAgICAgICAgdGhpcy5hdWRpby5vbmVuZGVkID0gKCkgPT4ge1xyXG4gICAgICAgICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKGF1ZGlvVXJsKTtcclxuICAgICAgICAgICAgdGhpcy5pc1BsYXlpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBzdG9wKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuYXVkaW8pIHtcclxuICAgICAgdGhpcy5hdWRpby5wYXVzZSgpO1xyXG4gICAgICB0aGlzLmF1ZGlvLmN1cnJlbnRUaW1lID0gMDtcclxuICAgICAgdGhpcy5pc1BsYXlpbmcgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBbbmdDbGFzcy5sdC1tZF09XCInbW9iaWxlJ1wiIGNsYXNzPVwidGV4dC10by1zcGVlY2gtd3JhcHBlclwiPlxyXG4gIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNvbG9yPVwiYWNjZW50XCI+XHJcbiAgICA8bWF0LWxhYmVsPnt7XCJzZWxlY3RWb2ljZVwiIHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XHJcbiAgICA8bWF0LXNlbGVjdCBbKHZhbHVlKV09XCJzZWxlY3RlZFwiPlxyXG4gICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgdm9pY2Ugb2Ygdm9pY2VzOyBsZXQgaSA9IGluZGV4XCIgW3ZhbHVlXT1cInZvaWNlXCI+XHJcbiAgICAgICAgQGlmKHZvaWNlLnZvaWNlTmFtZSl7XHJcbiAgICAgICAgICB7e3ZvaWNlLnZvaWNlTmFtZX19XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBlbHNle1xyXG4gICAgICAgIHt7ICd2b2ljZScgfCB0cmFuc2xhdGU6IHtudGg6IGkgKyAxfSB9fVxyXG4gICAgICAgIH1cclxuICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgPC9tYXQtc2VsZWN0PlxyXG4gIDwvbWF0LWZvcm0tZmllbGQ+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJ0ZXh0LXRvLXNwZWVjaC10ZXh0YXJlYS13cmFwcGVyXCI+XHJcbiAgICA8dGV4dGFyZWEgWyhuZ01vZGVsKV09XCJ0ZXh0XCIgY2xhc3M9XCJ0ZXh0LXRvLXNwZWVjaC10ZXh0YXJlYVwiIFtwbGFjZWhvbGRlcl09XCIncGxhY2Vob2xkZXInIHwgdHJhbnNsYXRlXCI+PC90ZXh0YXJlYT5cclxuICAgIDxkaXYgW2NsYXNzLnRleHQtb3ZlcmZsb3ddPVwiaGFzT3ZlcmZsb3dcIiBjbGFzcz1cInRleHQtdG8tc3BlZWNoLWNoYXJhY3RlcnNcIj5cclxuICAgICAge3t0ZXh0Py5sZW5ndGggPz8gMH19L3t7bWF4Q2hhckxlbmd0aH19XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cInRleHQtdG8tc3BlZWNoLWFjdGlvbnNcIj5cclxuICAgIDxkaXYgW21hdFRvb2x0aXBdPVwiIXRleHQgPyAoJ3BsYXlEaXNhYmxlZCcgfCB0cmFuc2xhdGUpIDogJydcIj5cclxuICAgICAgPGJ1dHRvbiBbbWF0VG9vbHRpcF09XCIoaXNQbGF5aW5nID8gJ3N0b3AnIDogJ3BsYXknKSB8IHRyYW5zbGF0ZVwiIFtkaXNhYmxlZF09XCIhdGV4dCB8fCBpc0xvYWRpbmdcIiAoY2xpY2spPVwidG9nZ2xlUGxheSgpXCIgbWF0LWljb24tYnV0dG9uPlxyXG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cIiFpc0xvYWRpbmdcIj4ge3sgaXNQbGF5aW5nID8gJ3N0b3AnIDogJ3ZvbHVtZV91cCcgfX0gIDwvbWF0LWljb24+XHJcbiAgICAgICAgPG1hdC1zcGlubmVyICpuZ0lmPVwiaXNMb2FkaW5nXCIgW2RpYW1ldGVyXT1cIjIwXCI+PC9tYXQtc3Bpbm5lcj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -5968,17 +5968,28 @@ class TTSApiService {
5968
5968
  }], null, null); })();
5969
5969
 
5970
5970
  const _c0$2 = a0 => ({ nth: a0 });
5971
+ function TextToSpeechComponent_mat_option_6_Conditional_1_Template(rf, ctx) { if (rf & 1) {
5972
+ i0.ɵɵtext(0);
5973
+ } if (rf & 2) {
5974
+ const voice_r1 = i0.ɵɵnextContext().$implicit;
5975
+ i0.ɵɵtextInterpolate1(" ", voice_r1.voiceName, " ");
5976
+ } }
5977
+ function TextToSpeechComponent_mat_option_6_Conditional_2_Template(rf, ctx) { if (rf & 1) {
5978
+ i0.ɵɵtext(0);
5979
+ i0.ɵɵpipe(1, "translate");
5980
+ } if (rf & 2) {
5981
+ const i_r2 = i0.ɵɵnextContext().index;
5982
+ i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(1, 1, "voice", i0.ɵɵpureFunction1(4, _c0$2, i_r2 + 1)), " ");
5983
+ } }
5971
5984
  function TextToSpeechComponent_mat_option_6_Template(rf, ctx) { if (rf & 1) {
5972
5985
  i0.ɵɵelementStart(0, "mat-option", 12);
5973
- i0.ɵɵtext(1);
5974
- i0.ɵɵpipe(2, "translate");
5986
+ i0.ɵɵtemplate(1, TextToSpeechComponent_mat_option_6_Conditional_1_Template, 1, 1)(2, TextToSpeechComponent_mat_option_6_Conditional_2_Template, 2, 6);
5975
5987
  i0.ɵɵelementEnd();
5976
5988
  } if (rf & 2) {
5977
5989
  const voice_r1 = ctx.$implicit;
5978
- const i_r2 = ctx.index;
5979
5990
  i0.ɵɵproperty("value", voice_r1);
5980
5991
  i0.ɵɵadvance();
5981
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind2(2, 2, "voice", i0.ɵɵpureFunction1(5, _c0$2, i_r2 + 1)), " ");
5992
+ i0.ɵɵconditional(1, voice_r1.voiceName ? 1 : 2);
5982
5993
  } }
5983
5994
  function TextToSpeechComponent_mat_icon_17_Template(rf, ctx) { if (rf & 1) {
5984
5995
  i0.ɵɵelementStart(0, "mat-icon");
@@ -6053,7 +6064,7 @@ class TextToSpeechComponent {
6053
6064
  i0.ɵɵelementEnd();
6054
6065
  i0.ɵɵelementStart(5, "mat-select", 2);
6055
6066
  i0.ɵɵtwoWayListener("valueChange", function TextToSpeechComponent_Template_mat_select_valueChange_5_listener($event) { i0.ɵɵtwoWayBindingSet(ctx.selected, $event) || (ctx.selected = $event); return $event; });
6056
- i0.ɵɵtemplate(6, TextToSpeechComponent_mat_option_6_Template, 3, 7, "mat-option", 3);
6067
+ i0.ɵɵtemplate(6, TextToSpeechComponent_mat_option_6_Template, 3, 2, "mat-option", 3);
6057
6068
  i0.ɵɵelementEnd()();
6058
6069
  i0.ɵɵelementStart(7, "div", 4)(8, "textarea", 5);
6059
6070
  i0.ɵɵpipe(9, "translate");
@@ -6112,7 +6123,7 @@ class TextToSpeechComponent {
6112
6123
  MatSelectModule,
6113
6124
  FlexLayoutModule,
6114
6125
  TranslateModule
6115
- ], template: "<div [ngClass.lt-md]=\"'mobile'\" class=\"text-to-speech-wrapper\">\r\n <mat-form-field appearance=\"outline\" color=\"accent\">\r\n <mat-label>{{\"selectVoice\" | translate }}</mat-label>\r\n <mat-select [(value)]=\"selected\">\r\n <mat-option *ngFor=\"let voice of voices; let i = index\" [value]=\"voice\">\r\n {{ 'voice' | translate: {nth: i + 1} }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <div class=\"text-to-speech-textarea-wrapper\">\r\n <textarea [(ngModel)]=\"text\" class=\"text-to-speech-textarea\" [placeholder]=\"'placeholder' | translate\"></textarea>\r\n <div [class.text-overflow]=\"hasOverflow\" class=\"text-to-speech-characters\">\r\n {{text?.length ?? 0}}/{{maxCharLength}}\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-to-speech-actions\">\r\n <div [matTooltip]=\"!text ? ('playDisabled' | translate) : ''\">\r\n <button [matTooltip]=\"(isPlaying ? 'stop' : 'play') | translate\" [disabled]=\"!text || isLoading\" (click)=\"togglePlay()\" mat-icon-button>\r\n <mat-icon *ngIf=\"!isLoading\"> {{ isPlaying ? 'stop' : 'volume_up' }} </mat-icon>\r\n <mat-spinner *ngIf=\"isLoading\" [diameter]=\"20\"></mat-spinner>\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".text-to-speech-wrapper{margin-top:5px;position:relative;display:flex;flex-direction:column;align-items:center}.text-to-speech-wrapper mat-form-field{max-width:900px!important;width:100%}.text-to-speech-textarea-wrapper,.text-to-speech-textarea{position:relative;width:100%;max-width:900px}.text-to-speech-textarea-wrapper{border:1px solid var(--base-70);padding:5px;border-radius:8px;box-shadow:0 0 16px #0000001a}.text-to-speech-textarea{margin:15px 0;padding:0 10px;min-height:120px;resize:none;outline:none;border:none}.text-to-speech-actions{position:absolute;bottom:-25px}.text-to-speech-actions button{color:#fff;background-color:var(--accent)}.text-to-speech-actions button:disabled{background-color:var(--base-70)}.text-to-speech-characters{position:absolute;right:10px;bottom:0;margin:5px;font-size:13px;color:var(--base-65)}.text-overflow{right:30px}.mobile .text-overflow{right:15px}\n"] }]
6126
+ ], template: "<div [ngClass.lt-md]=\"'mobile'\" class=\"text-to-speech-wrapper\">\r\n <mat-form-field appearance=\"outline\" color=\"accent\">\r\n <mat-label>{{\"selectVoice\" | translate }}</mat-label>\r\n <mat-select [(value)]=\"selected\">\r\n <mat-option *ngFor=\"let voice of voices; let i = index\" [value]=\"voice\">\r\n @if(voice.voiceName){\r\n {{voice.voiceName}}\r\n }\r\n @else{\r\n {{ 'voice' | translate: {nth: i + 1} }}\r\n }\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n\r\n <div class=\"text-to-speech-textarea-wrapper\">\r\n <textarea [(ngModel)]=\"text\" class=\"text-to-speech-textarea\" [placeholder]=\"'placeholder' | translate\"></textarea>\r\n <div [class.text-overflow]=\"hasOverflow\" class=\"text-to-speech-characters\">\r\n {{text?.length ?? 0}}/{{maxCharLength}}\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-to-speech-actions\">\r\n <div [matTooltip]=\"!text ? ('playDisabled' | translate) : ''\">\r\n <button [matTooltip]=\"(isPlaying ? 'stop' : 'play') | translate\" [disabled]=\"!text || isLoading\" (click)=\"togglePlay()\" mat-icon-button>\r\n <mat-icon *ngIf=\"!isLoading\"> {{ isPlaying ? 'stop' : 'volume_up' }} </mat-icon>\r\n <mat-spinner *ngIf=\"isLoading\" [diameter]=\"20\"></mat-spinner>\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".text-to-speech-wrapper{margin-top:5px;position:relative;display:flex;flex-direction:column;align-items:center}.text-to-speech-wrapper mat-form-field{max-width:900px!important;width:100%}.text-to-speech-textarea-wrapper,.text-to-speech-textarea{position:relative;width:100%;max-width:900px}.text-to-speech-textarea-wrapper{border:1px solid var(--base-70);padding:5px;border-radius:8px;box-shadow:0 0 16px #0000001a}.text-to-speech-textarea{margin:15px 0;padding:0 10px;min-height:120px;resize:none;outline:none;border:none}.text-to-speech-actions{position:absolute;bottom:-25px}.text-to-speech-actions button{color:#fff;background-color:var(--accent)}.text-to-speech-actions button:disabled{background-color:var(--base-70)}.text-to-speech-characters{position:absolute;right:10px;bottom:0;margin:5px;font-size:13px;color:var(--base-65)}.text-overflow{right:30px}.mobile .text-overflow{right:15px}\n"] }]
6116
6127
  }], null, { maxCharLength: [{
6117
6128
  type: Input
6118
6129
  }], voices: [{