@seniorsistemas/angular-components 17.25.10 → 17.26.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.
Files changed (50) hide show
  1. package/bundles/seniorsistemas-angular-components.umd.js +586 -66
  2. package/bundles/seniorsistemas-angular-components.umd.js.map +1 -1
  3. package/bundles/seniorsistemas-angular-components.umd.min.js +2 -2
  4. package/bundles/seniorsistemas-angular-components.umd.min.js.map +1 -1
  5. package/components/dynamic-form/configurations/fields/text-area-field.d.ts +2 -0
  6. package/components/index.d.ts +1 -0
  7. package/components/speech-recognition/speech-recognition/speech-recognition.component.d.ts +50 -0
  8. package/components/speech-recognition/speech-recognition.module.d.ts +2 -0
  9. package/components/speech-recognition/speech-recognition.service.d.ts +18 -0
  10. package/components/speech-recognition/text-to-speech.service.d.ts +22 -0
  11. package/components/text-area/index.d.ts +2 -0
  12. package/components/text-area/text-area/text-area.component.d.ts +24 -0
  13. package/components/text-area/text-area.module.d.ts +2 -0
  14. package/esm2015/components/dynamic-form/components/fields/text-area/text-area-field.component.js +2 -2
  15. package/esm2015/components/dynamic-form/configurations/fields/text-area-field.js +3 -1
  16. package/esm2015/components/dynamic-form/dynamic-form.module.js +3 -1
  17. package/esm2015/components/index.js +2 -1
  18. package/esm2015/components/speech-recognition/speech-recognition/speech-recognition.component.js +202 -0
  19. package/esm2015/components/speech-recognition/speech-recognition.module.js +19 -0
  20. package/esm2015/components/speech-recognition/speech-recognition.service.js +102 -0
  21. package/esm2015/components/speech-recognition/text-to-speech.service.js +75 -0
  22. package/esm2015/components/text-area/index.js +3 -0
  23. package/esm2015/components/text-area/text-area/text-area.component.js +87 -0
  24. package/esm2015/components/text-area/text-area.module.js +24 -0
  25. package/esm2015/components/timeline/components/timeline-icon-item/timeline-icon-item.component.js +3 -3
  26. package/esm2015/components/timeline/models/timeline-item.js +3 -3
  27. package/esm2015/locale/fallback.js +6 -2
  28. package/esm2015/seniorsistemas-angular-components.js +65 -61
  29. package/esm5/components/dynamic-form/components/fields/text-area/text-area-field.component.js +2 -2
  30. package/esm5/components/dynamic-form/configurations/fields/text-area-field.js +3 -1
  31. package/esm5/components/dynamic-form/dynamic-form.module.js +3 -1
  32. package/esm5/components/index.js +2 -1
  33. package/esm5/components/speech-recognition/speech-recognition/speech-recognition.component.js +216 -0
  34. package/esm5/components/speech-recognition/speech-recognition.module.js +22 -0
  35. package/esm5/components/speech-recognition/speech-recognition.service.js +104 -0
  36. package/esm5/components/speech-recognition/text-to-speech.service.js +83 -0
  37. package/esm5/components/text-area/index.js +3 -0
  38. package/esm5/components/text-area/text-area/text-area.component.js +94 -0
  39. package/esm5/components/text-area/text-area.module.js +27 -0
  40. package/esm5/components/timeline/components/timeline-icon-item/timeline-icon-item.component.js +3 -3
  41. package/esm5/components/timeline/models/timeline-item.js +3 -3
  42. package/esm5/locale/fallback.js +6 -2
  43. package/esm5/seniorsistemas-angular-components.js +65 -61
  44. package/fesm2015/seniorsistemas-angular-components.js +485 -8
  45. package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
  46. package/fesm5/seniorsistemas-angular-components.js +522 -8
  47. package/fesm5/seniorsistemas-angular-components.js.map +1 -1
  48. package/package.json +1 -1
  49. package/seniorsistemas-angular-components.d.ts +64 -60
  50. package/seniorsistemas-angular-components.metadata.json +1 -1
@@ -1,5 +1,5 @@
1
1
  import { __decorate, __awaiter, __param, __rest } from 'tslib';
2
- import { EventEmitter, Input, Output, Component, ContentChildren, ViewChild, HostListener, forwardRef, NgModule, ɵɵdefineInjectable, Injectable, ElementRef, ApplicationRef, ComponentFactoryResolver, Injector, Renderer2, Directive, TemplateRef, ViewContainerRef, KeyValueDiffers, HostBinding, ChangeDetectorRef, ViewChildren, Pipe, ɵɵinject, InjectionToken, Inject, PLATFORM_ID, ViewEncapsulation, INJECTOR, ContentChild, Optional } from '@angular/core';
2
+ import { EventEmitter, Input, Output, Component, ContentChildren, ViewChild, HostListener, forwardRef, NgModule, ɵɵdefineInjectable, Injectable, ElementRef, ApplicationRef, ComponentFactoryResolver, Injector, Renderer2, Directive, TemplateRef, ViewContainerRef, KeyValueDiffers, HostBinding, ChangeDetectorRef, ViewChildren, Pipe, ɵɵinject, InjectionToken, Inject, PLATFORM_ID, ViewEncapsulation, INJECTOR, ContentChild, NgZone, Optional } from '@angular/core';
3
3
  import { trigger, transition, style as style$7, animate, state, group, query, animateChild } from '@angular/animations';
4
4
  import { Subject, of, from, ReplaySubject, throwError, fromEvent, forkJoin, pipe } from 'rxjs';
5
5
  import { takeUntil, tap, map, switchMap, catchError, first, filter, take, delay, debounceTime, repeat, finalize } from 'rxjs/operators';
@@ -6581,12 +6581,14 @@ class SliderField extends Field {
6581
6581
 
6582
6582
  class TextAreaField extends Field {
6583
6583
  constructor(config) {
6584
+ var _a;
6584
6585
  super(config);
6585
6586
  this.cols = config.cols;
6586
6587
  this.rows = config.rows;
6587
6588
  this.keyFilter = config.keyFilter;
6588
6589
  this.style = config.style;
6589
6590
  this.readonly = config.readonly;
6591
+ this.speechRecognition = (_a = config.speechRecognition) !== null && _a !== void 0 ? _a : false;
6590
6592
  }
6591
6593
  }
6592
6594
 
@@ -10646,7 +10648,7 @@ __decorate([
10646
10648
  ], TextAreaFieldComponent.prototype, "inputRef", void 0);
10647
10649
  TextAreaFieldComponent = __decorate([
10648
10650
  Component({
10649
- template: "<s-field-label *ngIf=\"inputRef\" [field]=\"field\"\n [fieldContainerRef]=\"inputRef?.nativeElement\"></s-field-label>\n\n<textarea #inputRef\n [id]=\"(field.id || field.name)\"\n *ngIf=\"!field.keyFilter\"\n pInputTextarea\n [rows]=\"field.rows\"\n [cols]=\"field.cols\"\n [formControl]=\"formControl\"\n style=\"resize: vertical;\"\n [ngStyle]=\"field.style\"\n [readonly]=\"field.readonly ? field.readonly() : false\"\n></textarea>\n<textarea #inputRef\n [id]=\"(field.id || field.name)\"\n *ngIf=\"field.keyFilter\"\n pInputTextarea\n [rows]=\"field.rows\"\n [cols]=\"field.cols\"\n [formControl]=\"formControl\"\n style=\"resize: vertical;\"\n [pKeyFilter]=\"field.keyFilter\"\n [ngStyle]=\"field.style\"\n [readonly]=\"field.readonly ? field.readonly() : false\"\n></textarea>\n"
10651
+ template: "<s-field-label *ngIf=\"textArea\" [field]=\"field\"\n [fieldContainerRef]=\"textArea.textAreaElement?.nativeElement\"></s-field-label>\n\n<s-textarea\n #textArea\n [inputId]=\"(field.id || field.name)\"\n [rows]=\"field.rows\"\n [formControl]=\"formControl\"\n style=\"resize: vertical;\"\n [inputStyle]=\"field.style\"\n [readOnly]=\"field.readonly ? field.readonly() : false\"\n [keyFilter]=\"field.keyFilter\"\n [speechRecognition]=\"field.speechRecognition\">\n</s-textarea>\n"
10650
10652
  })
10651
10653
  ], TextAreaFieldComponent);
10652
10654
 
@@ -12422,6 +12424,476 @@ TextFieldModule = __decorate([
12422
12424
  })
12423
12425
  ], TextFieldModule);
12424
12426
 
12427
+ var TextAreaComponent_1;
12428
+ let TextAreaComponent = TextAreaComponent_1 = class TextAreaComponent {
12429
+ constructor() {
12430
+ this.onChange = () => { };
12431
+ this.onTouched = () => { };
12432
+ this.disabled = false;
12433
+ this.value = '';
12434
+ this.inputId = `textarea-${Math.random()}`;
12435
+ this.rows = 5;
12436
+ this.speechRecognition = false;
12437
+ this.readOnly = false;
12438
+ this.renderTextArea = false;
12439
+ }
12440
+ get textAreaElement() {
12441
+ return this._textAreaElement;
12442
+ }
12443
+ set textAreaElement(value) {
12444
+ this._textAreaElement = value;
12445
+ setTimeout(() => {
12446
+ this.renderTextArea = true;
12447
+ });
12448
+ }
12449
+ writeValue(obj) {
12450
+ this.value = obj;
12451
+ }
12452
+ registerOnChange(fn) {
12453
+ this.onChange = fn;
12454
+ }
12455
+ registerOnTouched(fn) {
12456
+ this.onTouched = fn;
12457
+ }
12458
+ setDisabledState(isDisabled) {
12459
+ this.disabled = isDisabled;
12460
+ }
12461
+ setValue(value) {
12462
+ if (this.disabled) {
12463
+ return;
12464
+ }
12465
+ this.value = value;
12466
+ this.writeValue(this.value);
12467
+ this.onChange(this.value);
12468
+ this.onTouched(this.value);
12469
+ }
12470
+ handleRecognizedText(recognizedText) {
12471
+ this.setValue(recognizedText);
12472
+ }
12473
+ };
12474
+ __decorate([
12475
+ ViewChild('textArea', { read: ElementRef })
12476
+ ], TextAreaComponent.prototype, "textAreaElement", null);
12477
+ __decorate([
12478
+ Input()
12479
+ ], TextAreaComponent.prototype, "inputId", void 0);
12480
+ __decorate([
12481
+ Input()
12482
+ ], TextAreaComponent.prototype, "rows", void 0);
12483
+ __decorate([
12484
+ Input()
12485
+ ], TextAreaComponent.prototype, "speechRecognition", void 0);
12486
+ __decorate([
12487
+ Input()
12488
+ ], TextAreaComponent.prototype, "keyFilter", void 0);
12489
+ __decorate([
12490
+ Input()
12491
+ ], TextAreaComponent.prototype, "inputStyle", void 0);
12492
+ __decorate([
12493
+ Input()
12494
+ ], TextAreaComponent.prototype, "readOnly", void 0);
12495
+ TextAreaComponent = TextAreaComponent_1 = __decorate([
12496
+ Component({
12497
+ selector: 's-textarea',
12498
+ template: "<textarea\n *ngIf=\"keyFilter\"\n #textArea\n class=\"textarea\"\n [pKeyFilter]=\"keyFilter\"\n [id]=\"inputId\"\n [rows]=\"rows\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n [ngStyle]=\"inputStyle\"\n [readOnly]=\"readOnly\"\n (ngModelChange)=\"setValue($event)\">\n</textarea>\n\n<textarea\n *ngIf=\"!keyFilter\"\n #textArea\n class=\"textarea\"\n [id]=\"inputId\"\n [rows]=\"rows\"\n [(ngModel)]=\"value\"\n [disabled]=\"disabled\"\n [ngStyle]=\"inputStyle\"\n [readOnly]=\"readOnly\"\n (ngModelChange)=\"setValue($event)\">\n</textarea>\n\n<s-speech-recognition\n *ngIf=\"speechRecognition && renderTextArea\"\n [textAreaElement]=\"textAreaElement.nativeElement\"\n (recognizedText)=\"handleRecognizedText($event)\">\n</s-speech-recognition>\n",
12499
+ providers: [
12500
+ {
12501
+ provide: NG_VALUE_ACCESSOR,
12502
+ useExisting: forwardRef(() => TextAreaComponent_1),
12503
+ multi: true,
12504
+ },
12505
+ ],
12506
+ styles: [".textarea{border-radius:3px;border:1px solid #c1c1cc;background:#fff;width:100%;max-width:100%;min-height:4em;min-width:10em;outline:0;padding:8px;display:block}.textarea:disabled{opacity:.5}"]
12507
+ })
12508
+ ], TextAreaComponent);
12509
+
12510
+ let SpeechRecognitionService = class SpeechRecognitionService {
12511
+ constructor(localeService, ngZone) {
12512
+ this.localeService = localeService;
12513
+ this.ngZone = ngZone;
12514
+ this.isListening = false;
12515
+ this.TIMEOUT_NO_MESSAGE = 3000;
12516
+ this.setRecognition();
12517
+ }
12518
+ listen() {
12519
+ if (this.isListening) {
12520
+ return;
12521
+ }
12522
+ const speechSubject = new Subject();
12523
+ this.isListening = true;
12524
+ this.recognition.continuous = true;
12525
+ this.recognition.interimResults = true;
12526
+ this.recognition.maxAlternatives = 1;
12527
+ let silenceTimer;
12528
+ const restartSilenceTimer = () => {
12529
+ if (silenceTimer !== undefined) {
12530
+ clearTimeout(silenceTimer);
12531
+ }
12532
+ silenceTimer = setTimeout(() => {
12533
+ this.recognition.stop();
12534
+ }, this.TIMEOUT_NO_MESSAGE);
12535
+ };
12536
+ let fullTranscript = '';
12537
+ let interimTranscript = '';
12538
+ this.recognition.onresult = (event) => {
12539
+ this.ngZone.run(() => {
12540
+ restartSilenceTimer();
12541
+ let interimTranscript = '';
12542
+ for (let i = event.resultIndex; i < event.results.length; ++i) {
12543
+ const transcript = event.results[i][0].transcript;
12544
+ if (event.results[i].isFinal) {
12545
+ fullTranscript += transcript + '\n';
12546
+ }
12547
+ else {
12548
+ interimTranscript += transcript;
12549
+ }
12550
+ }
12551
+ interimTranscript = interimTranscript;
12552
+ speechSubject.next({ text: fullTranscript + interimTranscript, isFinal: false });
12553
+ });
12554
+ };
12555
+ this.recognition.onerror = () => {
12556
+ this.ngZone.run(() => {
12557
+ if (silenceTimer !== undefined) {
12558
+ clearTimeout(silenceTimer);
12559
+ }
12560
+ this.isListening = false;
12561
+ speechSubject.next({
12562
+ isFinal: true,
12563
+ text: ''
12564
+ });
12565
+ });
12566
+ };
12567
+ this.recognition.onend = () => {
12568
+ this.ngZone.run(() => {
12569
+ if (silenceTimer !== undefined) {
12570
+ clearTimeout(silenceTimer);
12571
+ }
12572
+ speechSubject.next({ text: fullTranscript + interimTranscript, isFinal: true });
12573
+ this.isListening = false;
12574
+ speechSubject.complete();
12575
+ });
12576
+ };
12577
+ this.recognition.start();
12578
+ return speechSubject;
12579
+ }
12580
+ stop() {
12581
+ this.recognition.stop();
12582
+ }
12583
+ setRecognition() {
12584
+ const SpeechRecognitionConstructor = window.SpeechRecognition || window.webkitSpeechRecognition;
12585
+ if (!SpeechRecognitionConstructor) {
12586
+ throw new Error('Speech recognition is not supported in this browser.');
12587
+ }
12588
+ this.recognition = new SpeechRecognitionConstructor();
12589
+ this.recognition.lang = this.localeService.getLocaleOptions().locale || 'pt-BR';
12590
+ this.recognition.interimResults = false;
12591
+ this.recognition.maxAlternatives = 1;
12592
+ }
12593
+ };
12594
+ SpeechRecognitionService.ctorParameters = () => [
12595
+ { type: LocaleService },
12596
+ { type: NgZone }
12597
+ ];
12598
+ SpeechRecognitionService.ɵprov = ɵɵdefineInjectable({ factory: function SpeechRecognitionService_Factory() { return new SpeechRecognitionService(ɵɵinject(LocaleService), ɵɵinject(NgZone)); }, token: SpeechRecognitionService, providedIn: "root" });
12599
+ SpeechRecognitionService = __decorate([
12600
+ Injectable({
12601
+ providedIn: 'root'
12602
+ })
12603
+ ], SpeechRecognitionService);
12604
+
12605
+ let TextToSpeechService = class TextToSpeechService {
12606
+ constructor(locale, ngZone) {
12607
+ this.locale = locale;
12608
+ this.ngZone = ngZone;
12609
+ this.utterance = new SpeechSynthesisUtterance();
12610
+ this.voices = [];
12611
+ this.setVoices();
12612
+ }
12613
+ setVoices() {
12614
+ let _voices = speechSynthesis.getVoices();
12615
+ if (!_voices.length) {
12616
+ speechSynthesis.onvoiceschanged = () => {
12617
+ this.ngZone.run(() => {
12618
+ _voices = speechSynthesis.getVoices();
12619
+ const currentLang = this.locale.getLocaleOptions().locale || 'pt-BR';
12620
+ this.voices = _voices.filter((voice) => voice.lang === currentLang);
12621
+ this.activeVoice = this.voices[0];
12622
+ });
12623
+ };
12624
+ }
12625
+ }
12626
+ /**
12627
+ * Updates the active voice
12628
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisVoice/voiceURI)
12629
+ * @param voiceUri
12630
+ */
12631
+ updateVoice(voiceUri) {
12632
+ this.activeVoice = this.voices.find((voice) => voice.voiceURI === voiceUri);
12633
+ }
12634
+ speak(text, speed = 1) {
12635
+ if (!this.activeVoice) {
12636
+ return;
12637
+ }
12638
+ return new Promise((resolve) => {
12639
+ this.utterance.text = text;
12640
+ this.utterance.voice = this.activeVoice;
12641
+ this.utterance.rate = speed;
12642
+ speechSynthesis.speak(this.utterance);
12643
+ this.utterance.onend = () => {
12644
+ this.ngZone.run(() => {
12645
+ resolve(true);
12646
+ });
12647
+ };
12648
+ });
12649
+ }
12650
+ pause() {
12651
+ speechSynthesis.pause();
12652
+ }
12653
+ resume() {
12654
+ speechSynthesis.resume();
12655
+ }
12656
+ cancel() {
12657
+ speechSynthesis.cancel();
12658
+ }
12659
+ get hasVoice() {
12660
+ return !!this.activeVoice;
12661
+ }
12662
+ };
12663
+ TextToSpeechService.ctorParameters = () => [
12664
+ { type: LocaleService },
12665
+ { type: NgZone }
12666
+ ];
12667
+ TextToSpeechService.ɵprov = ɵɵdefineInjectable({ factory: function TextToSpeechService_Factory() { return new TextToSpeechService(ɵɵinject(LocaleService), ɵɵinject(NgZone)); }, token: TextToSpeechService, providedIn: "root" });
12668
+ TextToSpeechService = __decorate([
12669
+ Injectable({
12670
+ providedIn: 'root'
12671
+ })
12672
+ ], TextToSpeechService);
12673
+
12674
+ let SpeechRecognitionComponent = class SpeechRecognitionComponent {
12675
+ constructor(speechRecognitionService, textToSpeechService, translateService) {
12676
+ this.speechRecognitionService = speechRecognitionService;
12677
+ this.textToSpeechService = textToSpeechService;
12678
+ this.translateService = translateService;
12679
+ this._recognizedText = '';
12680
+ this.originalTextAreaElementText = '';
12681
+ this.isDoneSpeaking = false;
12682
+ this.onDestroy$ = new Subject();
12683
+ this.VOICE_SPEEDS = [0.5, 1, 1.5, 2];
12684
+ this.SPEECH_RECOGNITION_MARGIN_OFFSET = 13;
12685
+ this.keydownEventListener = (event) => {
12686
+ if (this.disabled) {
12687
+ event.preventDefault();
12688
+ }
12689
+ };
12690
+ this.TEXT_AREA_ELEMENT_MUTATION_OBSERVER = new MutationObserver(() => {
12691
+ this.SPEECH_CONTAINER_WIDTH_CALLBACK();
12692
+ });
12693
+ this.SPEECH_CONTAINER_WIDTH_CALLBACK = () => {
12694
+ this.setSpeechContainerWidth();
12695
+ };
12696
+ this.speechRecognitionContainerWidth = 0;
12697
+ this.disabled = false;
12698
+ this.isSpeaking = false;
12699
+ this.voiceSpeed = 1;
12700
+ this.isDisabledMicrophone = false;
12701
+ this.canRenderMicrophone = true;
12702
+ this.canRenderTextToSpeech = true;
12703
+ this.canRenderListeningText = false;
12704
+ this.canRenderDiscard = false;
12705
+ this.canRenderAprove = false;
12706
+ this.canRenderTextToSpeechToolbar = false;
12707
+ this.isPlayingTextToSpeech = false;
12708
+ this.recognizedText = new EventEmitter();
12709
+ }
12710
+ ngOnInit() {
12711
+ if (!this.textAreaElement) {
12712
+ throw new Error('textAreaElement is required');
12713
+ }
12714
+ this.textAreaElement.placeholder = this.translateService.instant("platform.angular_components.text_area_speech_recognition_placeholder");
12715
+ this.textAreaElement.addEventListener('keydown', this.keydownEventListener);
12716
+ const config = { attributes: true, childList: true, subtree: true };
12717
+ this.TEXT_AREA_ELEMENT_MUTATION_OBSERVER.observe(this.textAreaElement, config);
12718
+ window.addEventListener('resize', this.SPEECH_CONTAINER_WIDTH_CALLBACK);
12719
+ }
12720
+ ngAfterViewInit() {
12721
+ setTimeout(() => {
12722
+ this.setSpeechContainerWidth();
12723
+ });
12724
+ }
12725
+ onListen() {
12726
+ if (this.isDisabledMicrophone || this.isListening) {
12727
+ return;
12728
+ }
12729
+ this.disabled = true;
12730
+ this.canRenderMicrophone = false;
12731
+ this.canRenderListeningText = true;
12732
+ if (this.textAreaElement.value && !this.originalTextAreaElementText) {
12733
+ this.originalTextAreaElementText = this.textAreaElement.value;
12734
+ }
12735
+ this.textAreaElement.value = '';
12736
+ this.isSpeaking = true;
12737
+ this.speechRecognitionService.listen()
12738
+ .pipe(takeUntil(this.onDestroy$))
12739
+ .subscribe(({ text, isFinal }) => {
12740
+ this._recognizedText = text;
12741
+ this.setTextAreaValue(text);
12742
+ setTimeout(() => {
12743
+ this.textAreaElement.scrollTop = this.textAreaElement.scrollHeight;
12744
+ }, 120);
12745
+ if (isFinal) {
12746
+ this.canRenderAprove = true;
12747
+ this.canRenderDiscard = true;
12748
+ this.canRenderListeningText = false;
12749
+ this.isSpeaking = false;
12750
+ }
12751
+ });
12752
+ }
12753
+ onOpenToolbar() {
12754
+ if (this.isDisabledTextToSpeech) {
12755
+ return;
12756
+ }
12757
+ this.canRenderTextToSpeechToolbar = true;
12758
+ this.canRenderTextToSpeech = false;
12759
+ this.isPlayingTextToSpeech = true;
12760
+ this.speak();
12761
+ }
12762
+ onCloseToolbar() {
12763
+ this.canRenderTextToSpeechToolbar = false;
12764
+ this.canRenderTextToSpeech = true;
12765
+ this.isPlayingTextToSpeech = false;
12766
+ this.textToSpeechService.cancel();
12767
+ this.voiceSpeed = 1;
12768
+ }
12769
+ onDiscard() {
12770
+ this.canRenderAprove = false;
12771
+ this.canRenderDiscard = false;
12772
+ this.canRenderMicrophone = true;
12773
+ this.canRenderTextToSpeechToolbar = false;
12774
+ this.canRenderTextToSpeech = true;
12775
+ this._recognizedText = '';
12776
+ this.setTextAreaValue(this.originalTextAreaElementText);
12777
+ this.disabled = false;
12778
+ this.textToSpeechService.cancel();
12779
+ }
12780
+ onAprove() {
12781
+ this.canRenderAprove = false;
12782
+ this.canRenderDiscard = false;
12783
+ this.canRenderMicrophone = true;
12784
+ this.canRenderTextToSpeechToolbar = false;
12785
+ this.canRenderTextToSpeech = true;
12786
+ this.originalTextAreaElementText = this._recognizedText;
12787
+ this.recognizedText.emit(this._recognizedText);
12788
+ this._recognizedText = '';
12789
+ this.disabled = false;
12790
+ this.textToSpeechService.cancel();
12791
+ }
12792
+ ngOnDestroy() {
12793
+ this.onDestroy$.next();
12794
+ this.onDestroy$.complete();
12795
+ this.textAreaElement.removeEventListener('keydown', this.keydownEventListener);
12796
+ window.removeEventListener('resize', this.SPEECH_CONTAINER_WIDTH_CALLBACK);
12797
+ this.TEXT_AREA_ELEMENT_MUTATION_OBSERVER.disconnect();
12798
+ }
12799
+ toggleTextToSpeech() {
12800
+ if (this.isPlayingTextToSpeech) {
12801
+ this.textToSpeechService.pause();
12802
+ }
12803
+ else {
12804
+ if (this.isDoneSpeaking) {
12805
+ this.speak();
12806
+ }
12807
+ else {
12808
+ this.textToSpeechService.resume();
12809
+ }
12810
+ }
12811
+ this.isPlayingTextToSpeech = !this.isPlayingTextToSpeech;
12812
+ }
12813
+ restartTextToSpeech() {
12814
+ this.isPlayingTextToSpeech = true;
12815
+ this.textToSpeechService.cancel();
12816
+ this.speak();
12817
+ }
12818
+ updateVoiceSpeed() {
12819
+ const voiceSpeedIndex = this.VOICE_SPEEDS.indexOf(this.voiceSpeed);
12820
+ const nextVoiceSpeedIndex = this.VOICE_SPEEDS[voiceSpeedIndex + 1] ? voiceSpeedIndex + 1 : 0;
12821
+ this.voiceSpeed = this.VOICE_SPEEDS[nextVoiceSpeedIndex];
12822
+ this.textToSpeechService.cancel();
12823
+ this.speak();
12824
+ }
12825
+ stopListening() {
12826
+ this.speechRecognitionService.stop();
12827
+ }
12828
+ get isListening() {
12829
+ return this.speechRecognitionService.isListening;
12830
+ }
12831
+ get isDisabledTextToSpeech() {
12832
+ const hasTextToSpeechVoice = this.textToSpeechService.hasVoice;
12833
+ return !this._recognizedText || !hasTextToSpeechVoice || this.isListening;
12834
+ }
12835
+ setTextAreaValue(value) {
12836
+ this.textAreaElement.value = value;
12837
+ }
12838
+ speak() {
12839
+ this.isDoneSpeaking = false;
12840
+ this.textToSpeechService.speak(this._recognizedText, this.voiceSpeed).then(() => {
12841
+ this.isPlayingTextToSpeech = false;
12842
+ this.isDoneSpeaking = true;
12843
+ });
12844
+ }
12845
+ setSpeechContainerWidth() {
12846
+ this.speechRecognitionContainerWidth = this.textAreaElement.getBoundingClientRect().width - this.SPEECH_RECOGNITION_MARGIN_OFFSET;
12847
+ }
12848
+ };
12849
+ SpeechRecognitionComponent.ctorParameters = () => [
12850
+ { type: SpeechRecognitionService },
12851
+ { type: TextToSpeechService },
12852
+ { type: TranslateService }
12853
+ ];
12854
+ __decorate([
12855
+ Input()
12856
+ ], SpeechRecognitionComponent.prototype, "textAreaElement", void 0);
12857
+ __decorate([
12858
+ Output()
12859
+ ], SpeechRecognitionComponent.prototype, "recognizedText", void 0);
12860
+ SpeechRecognitionComponent = __decorate([
12861
+ Component({
12862
+ selector: 's-speech-recognition',
12863
+ template: "<section class=\"speech-recognition\" [style.width.px]=\"speechRecognitionContainerWidth\" *ngIf=\"speechRecognitionContainerWidth\">\n <div class=\"speech-recognition-text\">\n <ng-container *ngIf=\"canRenderMicrophone\">\n {{ 'platform.angular_components.text_area_before_speech' | translate }}\n </ng-container>\n\n <ng-container *ngIf=\"isSpeaking\">\n {{ 'platform.angular_components.text_area_while_speech' | translate }}\n </ng-container>\n\n <ng-container *ngIf=\"canRenderAprove && canRenderDiscard\">\n {{ 'platform.angular_components.text_area_end_speech' | translate }}\n </ng-container>\n </div>\n <div class=\"speech-recognition-buttons\">\n <span\n *ngIf=\"canRenderListeningText\"\n (click)=\"stopListening()\"\n class=\"speech-recognition-item speech-recognition-item-regular\">\n <i class=\"far fa-ellipsis-h\"></i>\n </span>\n\n <span\n *ngIf=\"canRenderMicrophone\"\n (click)=\"onListen()\"\n class=\"speech-recognition-item speech-recognition-item-microphone\"\n [class.speech-recognition-item-disabled]=\"isDisabledMicrophone || isListening || disabled\">\n <i class=\"fas fa-microphone\"></i>\n </span>\n\n <span\n *ngIf=\"canRenderAprove\"\n (click)=\"onAprove()\"\n class=\"speech-recognition-item speech-recognition-item-aprove\">\n <i class=\"fas fa-check\"></i>\n </span>\n\n <span *ngIf=\"canRenderDiscard\"\n (click)=\"onDiscard()\"\n class=\"speech-recognition-item speech-recognition-item-discard\">\n <i class=\"fas fa-times\"></i>\n </span>\n\n <span\n *ngIf=\"canRenderTextToSpeech\"\n (click)=\"onOpenToolbar()\"\n class=\"speech-recognition-item speech-recognition-item-regular\"\n [class.speech-recognition-item-disabled]=\"isDisabledTextToSpeech\">\n <i class=\"fas fa-volume-down\"></i>\n </span>\n\n <span\n *ngIf=\"canRenderTextToSpeechToolbar\"\n class=\"speech-recognition-item-toolbar\">\n <i class=\"fas\" [class.fa-pause]=\"isPlayingTextToSpeech\" [class.fa-play]=\"!isPlayingTextToSpeech\"\n (click)=\"toggleTextToSpeech()\"></i>\n <i class=\"fas fa-backward\" (click)=\"restartTextToSpeech()\"></i>\n <span (click)=\"updateVoiceSpeed()\">\n {{ voiceSpeed }}x\n </span>\n <i class=\"fas fa-times\" (click)=\"onCloseToolbar()\"></i>\n </span>\n </div>\n</section>\n",
12864
+ styles: [".speech-recognition{display:-ms-flexbox;display:flex;gap:10px;-ms-flex-pack:justify;justify-content:space-between}.speech-recognition-buttons{display:-ms-flexbox;display:flex;gap:10px;position:relative;bottom:15px}.speech-recognition-item{display:-ms-inline-flexbox;display:inline-flex;height:25px;padding:4px 12px;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;gap:8px;border-radius:15px;cursor:pointer;transition:background .1s ease-in}.speech-recognition-item i,.speech-recognition-item span{color:#fff}.speech-recognition-item-disabled{cursor:default!important}.speech-recognition-item-disabled *{opacity:.5}.speech-recognition-item-microphone{background:#428bca}.speech-recognition-item-microphone:not(.speech-recognition-item-disabled):hover{background:#063951}.speech-recognition-item-regular{background:#7892a1}.speech-recognition-item-regular:not(.speech-recognition-item-disabled):hover{background:#697882}.speech-recognition-item-aprove{background:#0c9348}.speech-recognition-item-aprove:not(.speech-recognition-item-disabled):hover{background:#063951}.speech-recognition-item-discard{background:#c13018}.speech-recognition-item-discard:not(.speech-recognition-item-disabled):hover{background:#063951}.speech-recognition-item-toolbar{background:#7892a1;display:-ms-flexbox;display:flex;border-radius:15px;-ms-flex-align:center;align-items:center;color:#fff}.speech-recognition-item-toolbar i,.speech-recognition-item-toolbar span{cursor:pointer}.speech-recognition-item-toolbar i:not(:first-child),.speech-recognition-item-toolbar i:not(:last-child){padding:6px}.speech-recognition-item-toolbar i:first-child{padding-left:10px}.speech-recognition-item-toolbar i:last-child{padding-right:10px}.speech-recognition-item-toolbar span{height:25px}.speech-recognition-text{color:#212533;font-size:12px;font-style:normal;font-weight:400;word-break:break-word}"]
12865
+ })
12866
+ ], SpeechRecognitionComponent);
12867
+
12868
+ let SpeechRecognitionModule = class SpeechRecognitionModule {
12869
+ };
12870
+ SpeechRecognitionModule = __decorate([
12871
+ NgModule({
12872
+ declarations: [SpeechRecognitionComponent],
12873
+ imports: [
12874
+ CommonModule,
12875
+ TranslateModule
12876
+ ],
12877
+ exports: [SpeechRecognitionComponent]
12878
+ })
12879
+ ], SpeechRecognitionModule);
12880
+
12881
+ let TextAreaModule = class TextAreaModule {
12882
+ };
12883
+ TextAreaModule = __decorate([
12884
+ NgModule({
12885
+ declarations: [TextAreaComponent],
12886
+ imports: [
12887
+ CommonModule,
12888
+ FormsModule,
12889
+ ReactiveFormsModule,
12890
+ SpeechRecognitionModule,
12891
+ KeyFilterModule
12892
+ ],
12893
+ exports: [TextAreaComponent]
12894
+ })
12895
+ ], TextAreaModule);
12896
+
12425
12897
  let DynamicFormModule = class DynamicFormModule {
12426
12898
  };
12427
12899
  DynamicFormModule = __decorate([
@@ -12479,6 +12951,7 @@ DynamicFormModule = __decorate([
12479
12951
  ProfilePictureModule,
12480
12952
  EditorFieldModule,
12481
12953
  FieldLabelModule,
12954
+ TextAreaModule
12482
12955
  ],
12483
12956
  declarations: [
12484
12957
  AutocompleteFieldComponent,
@@ -19141,8 +19614,8 @@ __decorate([
19141
19614
  TimelineIconItemComponent = __decorate([
19142
19615
  Component({
19143
19616
  selector: "s-timeline-icon-item",
19144
- template: "<ng-container *ngIf=\"item\">\n <div\n class=\"timeline__icon-item\"\n [ngClass]=\"{\n 'timeline__icon-item--small': item.testSize('small'),\n 'timeline__icon-item--normal': item.testSize('normal'),\n 'timeline__icon-item--warning': item.testSeverity('warning'),\n 'timeline__icon-item--error': item.testSeverity('error'),\n 'timeline__icon-item--completed': isComplete,\n 'timeline__icon-item--active': isActive,\n 'timeline__icon-item--active--highlight': isActive && highlightActive\n }\">\n <div\n class=\"timeline__icon-item__icon\"\n [pTooltip]=\"item.tooltip\"\n tooltipPosition=\"top\"\n [ngStyle]=\"{ backgroundColor: item.color }\">\n <ng-content *ngIf=\"item.icon; then icon_content; else label_text_content\"></ng-content>\n <ng-template #icon_content>\n <span [ngClass]=\"item.icon\"></span>\n </ng-template>\n <ng-template #label_text_content>\n <span class=\"timeline__icon-item__icon__label\">\n {{ item.label }}\n </span>\n </ng-template>\n </div>\n </div>\n</ng-container>\n",
19145
- styles: [".timeline__icon-item .timeline__icon-item__icon{-ms-flex-align:center;align-items:center;background-color:#697882;border-radius:50%;color:#fff;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;margin:4px;-webkit-user-select:none;-ms-user-select:none;user-select:none}.timeline__icon-item .timeline__icon-item__icon .timeline__icon-item__icon__label{font-family:\"Open Sans\",sans-serif}.timeline__icon-item.timeline__icon-item--small .timeline__icon-item__icon{font-size:0;height:16px;width:16px}.timeline__icon-item.timeline__icon-item--normal .timeline__icon-item__icon{font-size:10px;height:24px;padding:8px;width:24px}.timeline__icon-item.timeline__icon-item--normal .timeline__icon-item__icon .timeline__icon-item__icon__label{font-size:14px}.timeline__icon-item.timeline__icon-item--active--highlight .timeline__icon-item__icon{font-size:20px;height:40px;padding:10px;width:40px}.timeline__icon-item.timeline__icon-item--active--highlight .timeline__icon-item__icon .timeline__icon-item__icon__label{font-size:22px}.timeline__icon-item.timeline__icon-item--active .timeline__icon-item__icon,.timeline__icon-item.timeline__icon-item--completed .timeline__icon-item__icon{background-color:#0c9348}.timeline__icon-item.timeline__icon-item--warning.timeline__icon-item--active .timeline__icon-item__icon{background-color:#fcbf10;color:#333}.timeline__icon-item.timeline__icon-item--danger.timeline__icon-item--active .timeline__icon-item__icon{background-color:#f8931f;color:#333}.timeline__icon-item.timeline__icon-item--error.timeline__icon-item--active .timeline__icon-item__icon{background-color:#c13018}"]
19617
+ template: "<ng-container *ngIf=\"item\">\n <div\n class=\"timeline__icon-item\"\n [ngClass]=\"{\n 'timeline__icon-item--small': item.testSize('small'),\n 'timeline__icon-item--normal': item.testSize('normal'),\n 'timeline__icon-item--warning': item.testSeverity('warning'),\n 'timeline__icon-item--error': item.testSeverity('error'),\n 'timeline__icon-item--completed': isComplete,\n 'timeline__icon-item--active': isActive,\n 'timeline__icon-item--active--highlight': isActive && highlightActive\n }\">\n <div\n class=\"timeline__icon-item__icon\"\n [pTooltip]=\"item.tooltip\"\n tooltipPosition=\"top\"\n [ngStyle]=\"{ backgroundColor: item.color }\">\n <ng-content *ngIf=\"item.icon; then icon_content; else label_text_content\"></ng-content>\n <ng-template #icon_content>\n <span [ngClass]=\"item.icon\"></span>\n </ng-template>\n <ng-template #label_text_content>\n <span class=\"timeline__icon-item__icon__label\" [class.large_label]=\"item.label?.length > 2\">\n {{ item.label }}\n </span>\n </ng-template>\n </div>\n </div>\n</ng-container>\n",
19618
+ styles: [".timeline__icon-item .timeline__icon-item__icon{-ms-flex-align:center;align-items:center;background-color:#697882;border-radius:50%;color:#fff;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;margin:4px;-webkit-user-select:none;-ms-user-select:none;user-select:none}.timeline__icon-item .timeline__icon-item__icon .timeline__icon-item__icon__label{font-family:\"Open Sans\",sans-serif}.timeline__icon-item.timeline__icon-item--small .timeline__icon-item__icon{font-size:0;height:16px;width:16px}.timeline__icon-item.timeline__icon-item--normal .timeline__icon-item__icon{font-size:10px;height:24px;padding:8px;width:24px}.timeline__icon-item.timeline__icon-item--normal .timeline__icon-item__icon .timeline__icon-item__icon__label{font-size:14px}.timeline__icon-item.timeline__icon-item--normal .timeline__icon-item__icon .timeline__icon-item__icon__label.large_label{font-size:12px}.timeline__icon-item.timeline__icon-item--active--highlight .timeline__icon-item__icon{font-size:20px;height:40px;padding:10px;width:40px}.timeline__icon-item.timeline__icon-item--active--highlight .timeline__icon-item__icon .timeline__icon-item__icon__label{font-size:22px}.timeline__icon-item.timeline__icon-item--active--highlight .timeline__icon-item__icon .timeline__icon-item__icon__label.large_label{font-size:18px}.timeline__icon-item.timeline__icon-item--active .timeline__icon-item__icon,.timeline__icon-item.timeline__icon-item--completed .timeline__icon-item__icon{background-color:#0c9348}.timeline__icon-item.timeline__icon-item--warning.timeline__icon-item--active .timeline__icon-item__icon{background-color:#fcbf10;color:#333}.timeline__icon-item.timeline__icon-item--danger.timeline__icon-item--active .timeline__icon-item__icon{background-color:#f8931f;color:#333}.timeline__icon-item.timeline__icon-item--error.timeline__icon-item--active .timeline__icon-item__icon{background-color:#c13018}"]
19146
19619
  })
19147
19620
  ], TimelineIconItemComponent);
19148
19621
 
@@ -19386,7 +19859,7 @@ var TimelineItemSize;
19386
19859
  TimelineItemSize["Small"] = "small";
19387
19860
  })(TimelineItemSize || (TimelineItemSize = {}));
19388
19861
 
19389
- const LABEL_MAX_LENGTH = 2;
19862
+ const LABEL_MAX_LENGTH = 3;
19390
19863
  class TimelineItem {
19391
19864
  constructor(params) {
19392
19865
  this.id = params.id;
@@ -19409,7 +19882,7 @@ class TimelineItem {
19409
19882
  throw new Error("An icon and label string were passed to the item. Enter an icon or label text");
19410
19883
  }
19411
19884
  if (((_a = this.label) === null || _a === void 0 ? void 0 : _a.length) > LABEL_MAX_LENGTH) {
19412
- throw new Error("Label text is expected to be a maximum of two characters long");
19885
+ throw new Error("Label text is expected to be a maximum of three characters long");
19413
19886
  }
19414
19887
  }
19415
19888
  testSize(value) {
@@ -20977,12 +21450,16 @@ const fallback = {
20977
21450
  "platform.angular_components.add_all": "Adicionar todos",
20978
21451
  "platform.angular_components.remove_all": "Remover todos",
20979
21452
  "platform.angular_components.country_name_gb": "Reino Unido",
20980
- "platform.angular_components.insight_footer": "Conteúdo gerado por inteligência artificial. Sujeito a imprecisões."
21453
+ "platform.angular_components.insight_footer": "Conteúdo gerado por inteligência artificial. Sujeito a imprecisões.",
21454
+ "platform.angular_components.text_area_speech_recognition_placeholder": "Preencha o campo, com pelo menos, uma frase",
21455
+ "platform.angular_components.text_area_before_speech": "Grave ou ouça o texto clicando nos Ícones",
21456
+ "platform.angular_components.text_area_while_speech": "Clique novamente no Ícone para finalizar",
21457
+ "platform.angular_components.text_area_end_speech": "Gravação finalizada"
20981
21458
  };
20982
21459
 
20983
21460
  /**
20984
21461
  * Generated bundle index. Do not edit.
20985
21462
  */
20986
21463
 
20987
- export { AccordionComponent, AccordionModule, AccordionPanelComponent, AlertComponent, AlertModule, AngularComponentsModule, AutocompleteField, BadgeColors, BadgeComponent, BadgeModule, BaseFieldComponent, BignumberField, BignumberInputDirective, BignumberInputModule, BooleanField, BooleanOptionsLabel, BreadcrumbComponent, BreadcrumbModule, Breakpoints, ButtonAnimation, ButtonComponent, ButtonField, ButtonModule, ButtonPriority, ButtonSize, CalendarField, CalendarLocaleOptions, CalendarMaskDirective, CalendarMaskModule, CardComponent, CardModule, CardTemplateTypes, ChatComponent, ChatModule, CheckDisabled, CheckboxComponent, CheckboxModule, ChipsComponent, ChipsField, ChipsModule, CodeEditorModule, CollapseLinkComponent, CollapseLinkModule, ControlErrorsComponent, ControlErrorsModule, CountryPhonePickerComponent, CountryPhonePickerModule, CurrencyField, CurrencyService, CustomFieldsComponent, CustomFieldsModule, CustomFieldsService, DEFAULT_CALENDAR_LOCALE_OPTIONS, DEFAULT_LOCALE_OPTIONS, DEFAULT_NUMBER_LOCALE_OPTIONS, DebounceUtils, DoubleClickDirective, DynamicConfig, DynamicFormComponent, DynamicFormModule, DynamicType, EditableOverlayDirective, EditableOverlayModule, EmptyStateComponent, EmptyStateModule, EnumBadgeColors, EnumColumnFieldType, EnumSeverity, ExportUtils, Field, FieldType, Fieldset, FileUploadComponent, FileUploadModule, FileUploadPermissions, FileValidation, FormField, GanttComponent, GanttModule, GlobalSearchComponent, GlobalSearchDropdownItemComponent, GlobalSearchModule, GlobalSearchSizeEnum, Grid, GridMenuComponent, GridMenuModule, GridType, HelpPopoverComponent, HelpPopoverDirective, HelpPopoverModule, HostProjectConfigsInjectionToken, IAInsightComponent, IAInsightModule, IAInsightTemplateTypes, ImageCropperComponent, ImageCropperModule, ImageCropperService, InfoSignDirective, InfoSignModule, InlineEditCalendarField, InlineEditComponent, InlineEditField, InlineEditLookupField, InlineEditModule, InlineEditNumberField, InlineEditTextAreaField, InlineEditTextAreaIAField, InlineEditTextField, KanbanComponent, KanbanModule, KanbanTemplateTypes, LabelValueComponent, LabelValueModule, Languages, LoadingStateComponent, LoadingStateDirective, LoadingStateModule, LocaleModule, LocaleOptions, LocaleService, LocalizedCurrencyPipe, LocalizedCurrencyPipeOptions, LocalizedDateImpurePipe, LocalizedDatePipe, LocalizedNumberInputDirective, LocalizedNumberInputModule, LocalizedNumberPipe, LocalizedTimeImpurePipe, LocalizedTimePipe, LongPressDirective, LookupComponent, LookupField, MaskFormatterModule, MaskFormatterPipe, MouseEventsModule, NavigationButtonComponent, NavigationButtonModule, NavigationDirective, NumberAlignmentOption, NumberField, NumberInputDirective, NumberInputModule, NumberLocaleOptions, NumericService, ObjectCardComponent, ObjectCardFieldComponent, ObjectCardMainComponent, ObjectCardModule, Option, Ordination, PanelComponent, PanelModule, PasswordField, PasswordStrengthComponent, PasswordStrengthDirective, PasswordStrengthModule, PasswordStrengthPositions, PasswordStrengths, PicklistComponent, PicklistModule, PicklistTemplateTypes, ProductHeaderComponent, ProductHeaderModule, ProfilePicturePickerComponent, ProfilePicturePickerModule, ProgressBarColors, ProgressBarComponent, ProgressBarModule, RadioButtonField, RatingScaleComponent, RatingScaleModule, RationButtonOption, Row, RowTogllerDirective, SVGFactoryDirective, SVGFactoryModule, Section, SelectButtonComponent, SelectButtonModule, SelectField, SelectOption, SidebarComponent, SidebarModule, SlidePanelComponent, SlidePanelModule, SliderComponent, SliderModule, SplitButtonComponent, SplitButtonModule, SplitButtonType, StatsCardComponent, StatsCardModule, StepState, StepsComponent, StepsModule, Structure, StructureType, SwitchComponent, SwitchModule, TableFrozenPositionDirective, TableHeaderCheckboxComponent, TableHeaderCheckboxModule, TableModule, TaxCalculationLanguageConfigs, TemplateDirective, TemplateModule, TextAreaField, TextAreaIAComponent, TextAreaIAModule, TextField, Themes, ThumbnailComponent, ThumbnailModule, ThumbnailSize, ThumbnailsComponent, ThumbnailsModule, TieredMenuDirective, TieredMenuModule, TileComponent, TileModule, TimelineComponent, TimelineItem, TimelineItemSeverity, TimelineItemSize, TimelineModule, ToastComponent, ToastModule, ToastService, TokenListComponent, TokenListModule, TooltipModule, TooltipPosition, ValidateErrors, ViewMode, WorkspaceSwitchComponent, WorkspaceSwitchModule, convertToMomentDateFormat, countries, fallback, getElementLeftoverContentAvailable, getElementPositionInfo, isMousePositionOutsideOfElement, isNullOrUndefined, parseItensPickList, ɵ0$3 as ɵ0, ɵ1$2 as ɵ1, ɵ2$1 as ɵ2, ɵ3$1 as ɵ3, ɵ4, TooltipComponent as ɵa, TooltipDirective as ɵb, TableColumnsComponent as ɵba, TablePagingComponent as ɵbb, PasswordFieldModule as ɵbc, FieldLabelModule as ɵbd, FieldLabelComponent as ɵbe, PasswordFieldComponent as ɵbf, TextFieldModule as ɵbg, TextFieldComponent as ɵbh, NumberFieldModule as ɵbi, NumberFieldComponent as ɵbj, CurrencyFieldModule as ɵbk, CurrencyFieldComponent as ɵbl, BignumberFieldModule as ɵbm, BignumberFieldComponent as ɵbn, CheckboxFieldModule as ɵbo, CheckboxFieldComponent as ɵbp, ProfilePictureModule as ɵbq, ThumbnailService as ɵbr, StructureModule as ɵbs, HeaderComponent as ɵbt, FooterComponent as ɵbu, ProfilePictureFieldComponent as ɵbv, EditorFieldModule as ɵbw, EditorFieldComponent as ɵbx, AutocompleteFieldComponent as ɵby, BooleanFieldComponent as ɵbz, InfoSignComponent as ɵc, BooleanSwitchFieldComponent as ɵca, CalendarFieldComponent as ɵcb, ChipsFieldComponent as ɵcc, CountryPhonePickerFieldComponent as ɵcd, DynamicFieldComponent as ɵce, DynamicFormDirective as ɵcf, FieldsetComponent as ɵcg, FileUploadComponent$1 as ɵch, LookupFieldComponent as ɵci, RadioButtonComponent as ɵcj, RowComponent as ɵck, SectionComponent as ɵcl, SelectFieldComponent as ɵcm, SliderFieldComponent as ɵcn, TextAreaFieldComponent as ɵco, TextAreaIAFieldComponent as ɵcp, IAssistService as ɵcq, ButtonFieldComponent as ɵcr, DecimalField as ɵct, SideTableComponent as ɵcu, InfiniteScrollModule as ɵcv, InfiniteScrollDirective as ɵcw, IAInsightSidebarComponent as ɵcx, IAInsightCardComponent as ɵcy, IAInsightCardLoaderComponent as ɵcz, TieredMenuEventService as ɵd, GridMenuItemComponent as ɵda, InlineEditItemComponent as ɵdb, InlineEditCalendarComponent as ɵdc, InlineEditLookupComponent as ɵdd, InlineEditNumberComponent as ɵde, InlineEditTextComponent as ɵdf, InlineEditTextAreaComponent as ɵdg, InlineEditTextAreaIAComponent as ɵdh, KanbanEventService as ɵdi, KanbanItemComponent as ɵdj, KanbanColumnComponent as ɵdk, KanbanItemDraggingComponent as ɵdl, NumberLocaleOptions as ɵdm, BorderButtonModule as ɵdn, BorderButtonComponent as ɵdo, ProgressBarDeterminateComponent as ɵdp, ProgressBarIndeterminateComponent as ɵdq, SelectButtonItemComponent as ɵdr, SlidePanelService as ɵds, ThumbnailItemComponent as ɵdt, ThumbnailItemVideoComponent as ɵdu, ThumbnailItemImageComponent as ɵdv, TimelineItemModule as ɵdw, TimelineIconItemComponent as ɵdx, HorizontalTimelineModule as ɵdy, HorizontalTimelineComponent as ɵdz, TieredMenuService as ɵe, VerticalTimelineModule as ɵea, VerticalTimelineComponent as ɵeb, RangeLineComponent as ɵec, CollapseOptionComponent as ɵed, CollapsedItemsComponent as ɵee, VerticalItemsComponent as ɵef, ChipItemComponent as ɵeg, TieredMenuGlobalService as ɵf, TieredMenuComponent as ɵg, TieredMenuNestedComponent as ɵh, TieredMenuItemComponent as ɵi, TieredMenuDividerComponent as ɵj, LocalizedCurrencyImpurePipe as ɵk, LocalizedBignumberPipe as ɵl, LocalizedBignumberImpurePipe as ɵm, NumericPipe as ɵn, ChatMessageComponent as ɵo, CustomTranslationsModule as ɵp, CodeEditorComponent as ɵq, CoreFacade as ɵr, CodeMirror6Core as ɵs, CountryPhonePickerService as ɵt, EmptyStateGoBackComponent as ɵu, IAssistIconComponent as ɵv, SeniorIconComponent as ɵw, DotsIndicatorComponent as ɵx, LoadingIndicatorComponent as ɵy, FileUploadService as ɵz };
21464
+ export { AccordionComponent, AccordionModule, AccordionPanelComponent, AlertComponent, AlertModule, AngularComponentsModule, AutocompleteField, BadgeColors, BadgeComponent, BadgeModule, BaseFieldComponent, BignumberField, BignumberInputDirective, BignumberInputModule, BooleanField, BooleanOptionsLabel, BreadcrumbComponent, BreadcrumbModule, Breakpoints, ButtonAnimation, ButtonComponent, ButtonField, ButtonModule, ButtonPriority, ButtonSize, CalendarField, CalendarLocaleOptions, CalendarMaskDirective, CalendarMaskModule, CardComponent, CardModule, CardTemplateTypes, ChatComponent, ChatModule, CheckDisabled, CheckboxComponent, CheckboxModule, ChipsComponent, ChipsField, ChipsModule, CodeEditorModule, CollapseLinkComponent, CollapseLinkModule, ControlErrorsComponent, ControlErrorsModule, CountryPhonePickerComponent, CountryPhonePickerModule, CurrencyField, CurrencyService, CustomFieldsComponent, CustomFieldsModule, CustomFieldsService, DEFAULT_CALENDAR_LOCALE_OPTIONS, DEFAULT_LOCALE_OPTIONS, DEFAULT_NUMBER_LOCALE_OPTIONS, DebounceUtils, DoubleClickDirective, DynamicConfig, DynamicFormComponent, DynamicFormModule, DynamicType, EditableOverlayDirective, EditableOverlayModule, EmptyStateComponent, EmptyStateModule, EnumBadgeColors, EnumColumnFieldType, EnumSeverity, ExportUtils, Field, FieldType, Fieldset, FileUploadComponent, FileUploadModule, FileUploadPermissions, FileValidation, FormField, GanttComponent, GanttModule, GlobalSearchComponent, GlobalSearchDropdownItemComponent, GlobalSearchModule, GlobalSearchSizeEnum, Grid, GridMenuComponent, GridMenuModule, GridType, HelpPopoverComponent, HelpPopoverDirective, HelpPopoverModule, HostProjectConfigsInjectionToken, IAInsightComponent, IAInsightModule, IAInsightTemplateTypes, ImageCropperComponent, ImageCropperModule, ImageCropperService, InfoSignDirective, InfoSignModule, InlineEditCalendarField, InlineEditComponent, InlineEditField, InlineEditLookupField, InlineEditModule, InlineEditNumberField, InlineEditTextAreaField, InlineEditTextAreaIAField, InlineEditTextField, KanbanComponent, KanbanModule, KanbanTemplateTypes, LabelValueComponent, LabelValueModule, Languages, LoadingStateComponent, LoadingStateDirective, LoadingStateModule, LocaleModule, LocaleOptions, LocaleService, LocalizedCurrencyPipe, LocalizedCurrencyPipeOptions, LocalizedDateImpurePipe, LocalizedDatePipe, LocalizedNumberInputDirective, LocalizedNumberInputModule, LocalizedNumberPipe, LocalizedTimeImpurePipe, LocalizedTimePipe, LongPressDirective, LookupComponent, LookupField, MaskFormatterModule, MaskFormatterPipe, MouseEventsModule, NavigationButtonComponent, NavigationButtonModule, NavigationDirective, NumberAlignmentOption, NumberField, NumberInputDirective, NumberInputModule, NumberLocaleOptions, NumericService, ObjectCardComponent, ObjectCardFieldComponent, ObjectCardMainComponent, ObjectCardModule, Option, Ordination, PanelComponent, PanelModule, PasswordField, PasswordStrengthComponent, PasswordStrengthDirective, PasswordStrengthModule, PasswordStrengthPositions, PasswordStrengths, PicklistComponent, PicklistModule, PicklistTemplateTypes, ProductHeaderComponent, ProductHeaderModule, ProfilePicturePickerComponent, ProfilePicturePickerModule, ProgressBarColors, ProgressBarComponent, ProgressBarModule, RadioButtonField, RatingScaleComponent, RatingScaleModule, RationButtonOption, Row, RowTogllerDirective, SVGFactoryDirective, SVGFactoryModule, Section, SelectButtonComponent, SelectButtonModule, SelectField, SelectOption, SidebarComponent, SidebarModule, SlidePanelComponent, SlidePanelModule, SliderComponent, SliderModule, SplitButtonComponent, SplitButtonModule, SplitButtonType, StatsCardComponent, StatsCardModule, StepState, StepsComponent, StepsModule, Structure, StructureType, SwitchComponent, SwitchModule, TableFrozenPositionDirective, TableHeaderCheckboxComponent, TableHeaderCheckboxModule, TableModule, TaxCalculationLanguageConfigs, TemplateDirective, TemplateModule, TextAreaComponent, TextAreaField, TextAreaIAComponent, TextAreaIAModule, TextAreaModule, TextField, Themes, ThumbnailComponent, ThumbnailModule, ThumbnailSize, ThumbnailsComponent, ThumbnailsModule, TieredMenuDirective, TieredMenuModule, TileComponent, TileModule, TimelineComponent, TimelineItem, TimelineItemSeverity, TimelineItemSize, TimelineModule, ToastComponent, ToastModule, ToastService, TokenListComponent, TokenListModule, TooltipModule, TooltipPosition, ValidateErrors, ViewMode, WorkspaceSwitchComponent, WorkspaceSwitchModule, convertToMomentDateFormat, countries, fallback, getElementLeftoverContentAvailable, getElementPositionInfo, isMousePositionOutsideOfElement, isNullOrUndefined, parseItensPickList, ɵ0$3 as ɵ0, ɵ1$2 as ɵ1, ɵ2$1 as ɵ2, ɵ3$1 as ɵ3, ɵ4, TooltipComponent as ɵa, TooltipDirective as ɵb, TableColumnsComponent as ɵba, TablePagingComponent as ɵbb, PasswordFieldModule as ɵbc, FieldLabelModule as ɵbd, FieldLabelComponent as ɵbe, PasswordFieldComponent as ɵbf, TextFieldModule as ɵbg, TextFieldComponent as ɵbh, NumberFieldModule as ɵbi, NumberFieldComponent as ɵbj, CurrencyFieldModule as ɵbk, CurrencyFieldComponent as ɵbl, BignumberFieldModule as ɵbm, BignumberFieldComponent as ɵbn, CheckboxFieldModule as ɵbo, CheckboxFieldComponent as ɵbp, ProfilePictureModule as ɵbq, ThumbnailService as ɵbr, StructureModule as ɵbs, HeaderComponent as ɵbt, FooterComponent as ɵbu, ProfilePictureFieldComponent as ɵbv, EditorFieldModule as ɵbw, EditorFieldComponent as ɵbx, SpeechRecognitionModule as ɵby, SpeechRecognitionComponent as ɵbz, InfoSignComponent as ɵc, SpeechRecognitionService as ɵca, TextToSpeechService as ɵcb, AutocompleteFieldComponent as ɵcc, BooleanFieldComponent as ɵcd, BooleanSwitchFieldComponent as ɵce, CalendarFieldComponent as ɵcf, ChipsFieldComponent as ɵcg, CountryPhonePickerFieldComponent as ɵch, DynamicFieldComponent as ɵci, DynamicFormDirective as ɵcj, FieldsetComponent as ɵck, FileUploadComponent$1 as ɵcl, LookupFieldComponent as ɵcm, RadioButtonComponent as ɵcn, RowComponent as ɵco, SectionComponent as ɵcp, SelectFieldComponent as ɵcq, SliderFieldComponent as ɵcr, TextAreaFieldComponent as ɵcs, TextAreaIAFieldComponent as ɵct, IAssistService as ɵcu, ButtonFieldComponent as ɵcv, DecimalField as ɵcx, SideTableComponent as ɵcy, InfiniteScrollModule as ɵcz, TieredMenuEventService as ɵd, InfiniteScrollDirective as ɵda, IAInsightSidebarComponent as ɵdb, IAInsightCardComponent as ɵdc, IAInsightCardLoaderComponent as ɵdd, GridMenuItemComponent as ɵde, InlineEditItemComponent as ɵdf, InlineEditCalendarComponent as ɵdg, InlineEditLookupComponent as ɵdh, InlineEditNumberComponent as ɵdi, InlineEditTextComponent as ɵdj, InlineEditTextAreaComponent as ɵdk, InlineEditTextAreaIAComponent as ɵdl, KanbanEventService as ɵdm, KanbanItemComponent as ɵdn, KanbanColumnComponent as ɵdo, KanbanItemDraggingComponent as ɵdp, NumberLocaleOptions as ɵdq, BorderButtonModule as ɵdr, BorderButtonComponent as ɵds, ProgressBarDeterminateComponent as ɵdt, ProgressBarIndeterminateComponent as ɵdu, SelectButtonItemComponent as ɵdv, SlidePanelService as ɵdw, ThumbnailItemComponent as ɵdx, ThumbnailItemVideoComponent as ɵdy, ThumbnailItemImageComponent as ɵdz, TieredMenuService as ɵe, TimelineItemModule as ɵea, TimelineIconItemComponent as ɵeb, HorizontalTimelineModule as ɵec, HorizontalTimelineComponent as ɵed, VerticalTimelineModule as ɵee, VerticalTimelineComponent as ɵef, RangeLineComponent as ɵeg, CollapseOptionComponent as ɵeh, CollapsedItemsComponent as ɵei, VerticalItemsComponent as ɵej, ChipItemComponent as ɵek, TieredMenuGlobalService as ɵf, TieredMenuComponent as ɵg, TieredMenuNestedComponent as ɵh, TieredMenuItemComponent as ɵi, TieredMenuDividerComponent as ɵj, LocalizedCurrencyImpurePipe as ɵk, LocalizedBignumberPipe as ɵl, LocalizedBignumberImpurePipe as ɵm, NumericPipe as ɵn, ChatMessageComponent as ɵo, CustomTranslationsModule as ɵp, CodeEditorComponent as ɵq, CoreFacade as ɵr, CodeMirror6Core as ɵs, CountryPhonePickerService as ɵt, EmptyStateGoBackComponent as ɵu, IAssistIconComponent as ɵv, SeniorIconComponent as ɵw, DotsIndicatorComponent as ɵx, LoadingIndicatorComponent as ɵy, FileUploadService as ɵz };
20988
21465
  //# sourceMappingURL=seniorsistemas-angular-components.js.map