@seniorsistemas/angular-components 17.9.5 → 17.9.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/bundles/seniorsistemas-angular-components.umd.js +385 -149
  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/custom-fields/custom-fields.component.d.ts +1 -0
  6. package/components/dynamic-form/components/dynamic-field/dynamic-field.component.d.ts +0 -1
  7. package/components/dynamic-form/components/field-label/field-label.component.d.ts +6 -0
  8. package/components/dynamic-form/components/field-label/field-label.module.d.ts +2 -0
  9. package/components/dynamic-form/components/fields/autocomplete/autocomplete-field.component.d.ts +7 -0
  10. package/components/dynamic-form/components/fields/bignumber/bignumber-field.component.d.ts +5 -2
  11. package/components/dynamic-form/components/fields/calendar/calendar-field.component.d.ts +9 -2
  12. package/components/dynamic-form/components/fields/chips/chips-field.component.d.ts +7 -1
  13. package/components/dynamic-form/components/fields/country-phone-picker/country-phone-picker-field.component.d.ts +7 -0
  14. package/components/dynamic-form/components/fields/currency/currency-field.component.d.ts +6 -3
  15. package/components/dynamic-form/components/fields/file-upload/file-upload.component.d.ts +10 -0
  16. package/components/dynamic-form/components/fields/number/number-field.component.d.ts +7 -2
  17. package/components/dynamic-form/components/fields/password/password-field.component.d.ts +6 -2
  18. package/components/dynamic-form/components/fields/text/text-field.component.d.ts +6 -2
  19. package/components/dynamic-form/components/fields/text-area/text-area-field.component.d.ts +5 -0
  20. package/components/dynamic-form/components/fields/text-area-ia/text-area-ia-field.component.d.ts +2 -1
  21. package/components/dynamic-form/configurations/fields/field.d.ts +2 -0
  22. package/components/dynamic-form/configurations/form-field.d.ts +1 -0
  23. package/components/dynamic-form/dynamic-form.component.d.ts +0 -1
  24. package/components/dynamic-form/dynamic-form.directive.d.ts +0 -1
  25. package/components/info-sign/info-sign.directive.d.ts +4 -2
  26. package/components/locale/index.d.ts +1 -0
  27. package/components/tooltip/tooltip.directive.d.ts +1 -0
  28. package/esm2015/components/custom-fields/custom-fields.component.js +8 -2
  29. package/esm2015/components/dynamic-form/components/dynamic-field/dynamic-field.component.js +2 -5
  30. package/esm2015/components/dynamic-form/components/field-label/field-label.component.js +24 -0
  31. package/esm2015/components/dynamic-form/components/field-label/field-label.module.js +19 -0
  32. package/esm2015/components/dynamic-form/components/fields/autocomplete/autocomplete-field.component.js +18 -3
  33. package/esm2015/components/dynamic-form/components/fields/bignumber/bignumber-field.component.js +13 -5
  34. package/esm2015/components/dynamic-form/components/fields/bignumber/bignumber-field.module.js +3 -1
  35. package/esm2015/components/dynamic-form/components/fields/boolean/boolean-field.component.js +2 -2
  36. package/esm2015/components/dynamic-form/components/fields/calendar/calendar-field.component.js +19 -5
  37. package/esm2015/components/dynamic-form/components/fields/chips/chips-field.component.js +16 -5
  38. package/esm2015/components/dynamic-form/components/fields/country-phone-picker/country-phone-picker-field.component.js +18 -3
  39. package/esm2015/components/dynamic-form/components/fields/currency/currency-field.component.js +14 -6
  40. package/esm2015/components/dynamic-form/components/fields/currency/currency-field.module.js +12 -2
  41. package/esm2015/components/dynamic-form/components/fields/file-upload/file-upload.component.js +36 -3
  42. package/esm2015/components/dynamic-form/components/fields/lookup/lookup-field.component.js +2 -2
  43. package/esm2015/components/dynamic-form/components/fields/number/number-field.component.js +17 -5
  44. package/esm2015/components/dynamic-form/components/fields/number/number-field.module.js +3 -1
  45. package/esm2015/components/dynamic-form/components/fields/password/password-field.component.js +14 -4
  46. package/esm2015/components/dynamic-form/components/fields/password/password-field.module.js +3 -1
  47. package/esm2015/components/dynamic-form/components/fields/profile-picture/profile-picture-field.component.js +2 -2
  48. package/esm2015/components/dynamic-form/components/fields/profile-picture/profile-picture-field.module.js +3 -1
  49. package/esm2015/components/dynamic-form/components/fields/radio-button/radio-button-field.component.js +2 -2
  50. package/esm2015/components/dynamic-form/components/fields/select/select-field.component.js +2 -2
  51. package/esm2015/components/dynamic-form/components/fields/slider/slider-field.component.js +2 -2
  52. package/esm2015/components/dynamic-form/components/fields/text/text-field.component.js +15 -5
  53. package/esm2015/components/dynamic-form/components/fields/text/text-field.module.js +3 -1
  54. package/esm2015/components/dynamic-form/components/fields/text-area/text-area-field.component.js +15 -3
  55. package/esm2015/components/dynamic-form/components/fields/text-area-ia/text-area-ia-field.component.js +6 -3
  56. package/esm2015/components/dynamic-form/components/grid/row/row.component.js +1 -9
  57. package/esm2015/components/dynamic-form/configurations/fields/field.js +2 -1
  58. package/esm2015/components/dynamic-form/configurations/form-field.js +1 -1
  59. package/esm2015/components/dynamic-form/dynamic-form.component.js +2 -5
  60. package/esm2015/components/dynamic-form/dynamic-form.directive.js +1 -4
  61. package/esm2015/components/dynamic-form/dynamic-form.module.js +3 -1
  62. package/esm2015/components/info-sign/info-sign.directive.js +14 -8
  63. package/esm2015/components/locale/index.js +2 -1
  64. package/esm2015/components/locale/services/numeric.service.js +4 -3
  65. package/esm2015/components/tooltip/tooltip.directive.js +33 -2
  66. package/esm2015/seniorsistemas-angular-components.js +86 -84
  67. package/esm5/components/custom-fields/custom-fields.component.js +9 -2
  68. package/esm5/components/dynamic-form/components/dynamic-field/dynamic-field.component.js +2 -5
  69. package/esm5/components/dynamic-form/components/field-label/field-label.component.js +25 -0
  70. package/esm5/components/dynamic-form/components/field-label/field-label.module.js +22 -0
  71. package/esm5/components/dynamic-form/components/fields/autocomplete/autocomplete-field.component.js +17 -4
  72. package/esm5/components/dynamic-form/components/fields/bignumber/bignumber-field.component.js +13 -5
  73. package/esm5/components/dynamic-form/components/fields/bignumber/bignumber-field.module.js +3 -1
  74. package/esm5/components/dynamic-form/components/fields/boolean/boolean-field.component.js +2 -2
  75. package/esm5/components/dynamic-form/components/fields/calendar/calendar-field.component.js +19 -5
  76. package/esm5/components/dynamic-form/components/fields/chips/chips-field.component.js +16 -5
  77. package/esm5/components/dynamic-form/components/fields/country-phone-picker/country-phone-picker-field.component.js +17 -4
  78. package/esm5/components/dynamic-form/components/fields/currency/currency-field.component.js +14 -6
  79. package/esm5/components/dynamic-form/components/fields/currency/currency-field.module.js +12 -2
  80. package/esm5/components/dynamic-form/components/fields/file-upload/file-upload.component.js +37 -5
  81. package/esm5/components/dynamic-form/components/fields/lookup/lookup-field.component.js +2 -2
  82. package/esm5/components/dynamic-form/components/fields/number/number-field.component.js +17 -5
  83. package/esm5/components/dynamic-form/components/fields/number/number-field.module.js +3 -1
  84. package/esm5/components/dynamic-form/components/fields/password/password-field.component.js +14 -4
  85. package/esm5/components/dynamic-form/components/fields/password/password-field.module.js +3 -1
  86. package/esm5/components/dynamic-form/components/fields/profile-picture/profile-picture-field.component.js +2 -2
  87. package/esm5/components/dynamic-form/components/fields/profile-picture/profile-picture-field.module.js +3 -1
  88. package/esm5/components/dynamic-form/components/fields/radio-button/radio-button-field.component.js +2 -2
  89. package/esm5/components/dynamic-form/components/fields/select/select-field.component.js +2 -2
  90. package/esm5/components/dynamic-form/components/fields/slider/slider-field.component.js +2 -2
  91. package/esm5/components/dynamic-form/components/fields/text/text-field.component.js +15 -5
  92. package/esm5/components/dynamic-form/components/fields/text/text-field.module.js +3 -1
  93. package/esm5/components/dynamic-form/components/fields/text-area/text-area-field.component.js +14 -4
  94. package/esm5/components/dynamic-form/components/fields/text-area-ia/text-area-ia-field.component.js +6 -3
  95. package/esm5/components/dynamic-form/components/grid/row/row.component.js +2 -2
  96. package/esm5/components/dynamic-form/configurations/fields/field.js +2 -1
  97. package/esm5/components/dynamic-form/configurations/form-field.js +1 -1
  98. package/esm5/components/dynamic-form/dynamic-form.component.js +2 -5
  99. package/esm5/components/dynamic-form/dynamic-form.directive.js +1 -4
  100. package/esm5/components/dynamic-form/dynamic-form.module.js +3 -1
  101. package/esm5/components/info-sign/info-sign.directive.js +14 -8
  102. package/esm5/components/locale/index.js +2 -1
  103. package/esm5/components/locale/services/numeric.service.js +4 -3
  104. package/esm5/components/tooltip/tooltip.directive.js +40 -8
  105. package/esm5/seniorsistemas-angular-components.js +86 -84
  106. package/fesm2015/seniorsistemas-angular-components.js +290 -64
  107. package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
  108. package/fesm5/seniorsistemas-angular-components.js +301 -68
  109. package/fesm5/seniorsistemas-angular-components.js.map +1 -1
  110. package/package.json +1 -1
  111. package/seniorsistemas-angular-components.d.ts +85 -83
  112. package/seniorsistemas-angular-components.metadata.json +1 -1
@@ -1,7 +1,7 @@
1
1
  import { __decorate, __awaiter, __param, __rest } from 'tslib';
2
2
  import { EventEmitter, Input, Output, Component, ContentChildren, ViewChild, HostListener, forwardRef, NgModule, ɵɵdefineInjectable, Injectable, ElementRef, ApplicationRef, ComponentFactoryResolver, Injector, Renderer2, Directive, KeyValueDiffers, HostBinding, TemplateRef, InjectionToken, Inject, ViewEncapsulation, ViewContainerRef, ChangeDetectorRef, Pipe, ɵɵinject, ContentChild, Optional, ViewChildren } from '@angular/core';
3
3
  import { trigger, transition, style as style$7, animate, state, group, query, animateChild } from '@angular/animations';
4
- import { Subject, of, from, ReplaySubject, throwError, forkJoin } from 'rxjs';
4
+ import { Subject, of, from, ReplaySubject, throwError, fromEvent, forkJoin } from 'rxjs';
5
5
  import { takeUntil, tap, map, switchMap, catchError, first, filter, take, delay, debounceTime, repeat, finalize } from 'rxjs/operators';
6
6
  import { CommonModule } from '@angular/common';
7
7
  import { NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule, FormControl, FormGroup, NG_VALIDATORS, FormBuilder, Validators, FormArray, ControlContainer } from '@angular/forms';
@@ -463,13 +463,14 @@ let TooltipDirective = class TooltipDirective {
463
463
  */
464
464
  updateTooltipVisibilityWhenFocusOnInput() {
465
465
  if (this.focusedInputRef) {
466
+ const inputFocus = this.focusedInputRef;
466
467
  const icon = this.getIconFromFocusedInput();
467
468
  this.renderer.listen(this.focusedInputRef, 'focus', () => {
468
469
  if (icon && this.isMatchingTooltip(icon)) {
469
470
  this.createTootipByFocus(icon);
470
471
  }
471
472
  });
472
- this.renderer.listen(this.focusedInputRef, 'blur', () => {
473
+ this.renderer.listen(inputFocus, 'blur', () => {
473
474
  if (icon && this.isMatchingTooltip(icon)) {
474
475
  this.removeTooltip(icon);
475
476
  this.destroy();
@@ -596,6 +597,36 @@ let TooltipDirective = class TooltipDirective {
596
597
  icon.appendChild(tooltip);
597
598
  this.setTooltipComponentProperties();
598
599
  setTimeout(() => tooltip.classList.add("tooltip--visible"), 0);
600
+ this.renderer.listen(window, 'scroll', () => {
601
+ this.updateTooltipPosition();
602
+ });
603
+ }
604
+ }
605
+ updateTooltipPosition() {
606
+ if (this.componentRef) {
607
+ const { left, right, top, bottom } = this.elementRef.nativeElement.getBoundingClientRect();
608
+ const tooltipWidth = right - left;
609
+ const tooltipHeight = bottom - top;
610
+ switch (this.position) {
611
+ case TooltipPosition.Top:
612
+ this.componentRef.instance.left = Math.round(tooltipWidth / 2 + left);
613
+ this.componentRef.instance.top = Math.round(top - 20 - 5);
614
+ break;
615
+ case TooltipPosition.Bottom:
616
+ this.componentRef.instance.left = Math.round(tooltipWidth / 2 + left);
617
+ this.componentRef.instance.top = Math.round(bottom + 20);
618
+ break;
619
+ case TooltipPosition.Left:
620
+ this.componentRef.instance.left = Math.round(left - 20);
621
+ this.componentRef.instance.top = Math.round(top + tooltipHeight / 2 - 5);
622
+ break;
623
+ case TooltipPosition.Right:
624
+ this.componentRef.instance.left = Math.round(right + 20);
625
+ this.componentRef.instance.top = Math.round(top + tooltipHeight / 2 - 5);
626
+ break;
627
+ default:
628
+ break;
629
+ }
599
630
  }
600
631
  }
601
632
  showTooltip() {
@@ -4266,6 +4297,7 @@ class Field {
4266
4297
  this.representedBy = config.representedBy;
4267
4298
  this.CustomFieldClass = config.CustomFieldClass;
4268
4299
  this.CustomFieldComponentClass = config.CustomFieldComponentClass;
4300
+ this.displayTimeInfoSign = config.displayTimeInfoSign;
4269
4301
  }
4270
4302
  }
4271
4303
 
@@ -5524,13 +5556,10 @@ __decorate([
5524
5556
  __decorate([
5525
5557
  Input()
5526
5558
  ], DynamicFormComponent.prototype, "errorMessages", void 0);
5527
- __decorate([
5528
- Input()
5529
- ], DynamicFormComponent.prototype, "displayTimeInfoSign", void 0);
5530
5559
  DynamicFormComponent = __decorate([
5531
5560
  Component({
5532
5561
  selector: "s-dynamic-form",
5533
- template: "<div *ngIf=\"configs; else templateFields\">\n <ng-container *ngFor=\"let config of configs\">\n <ng-container\n *sDynamicForm=\"{\n id: id,\n config: config,\n group: form,\n errorMessages: errorMessages\n }\">\n </ng-container>\n </ng-container>\n</div>\n\n<ng-template #templateFields>\n <s-dynamic-field\n [id]=\"id\"\n [fields]=\"fields\"\n [form]=\"form\"\n [errorMessages]=\"errorMessages\"\n [displayTimeInfoSign]=\"displayTimeInfoSign\">\n </s-dynamic-field>\n</ng-template>\n",
5562
+ template: "<div *ngIf=\"configs; else templateFields\">\n <ng-container *ngFor=\"let config of configs\">\n <ng-container\n *sDynamicForm=\"{\n id: id,\n config: config,\n group: form,\n errorMessages: errorMessages\n }\">\n </ng-container>\n </ng-container>\n</div>\n\n<ng-template #templateFields>\n <s-dynamic-field\n [id]=\"id\"\n [fields]=\"fields\"\n [form]=\"form\"\n [errorMessages]=\"errorMessages\">\n </s-dynamic-field>\n</ng-template>\n",
5534
5563
  encapsulation: ViewEncapsulation.None,
5535
5564
  styles: ["label.required:after{content:\" *\";color:#c13018}"]
5536
5565
  })
@@ -6255,7 +6284,18 @@ let InfoSignDirective = class InfoSignDirective {
6255
6284
  this.componentFactoryResolver = componentFactoryResolver;
6256
6285
  this.displayTime = 5000;
6257
6286
  }
6287
+ ngOnChanges() {
6288
+ this.createInfoSign();
6289
+ }
6258
6290
  ngOnInit() {
6291
+ this.createInfoSign();
6292
+ }
6293
+ ngOnDestroy() {
6294
+ if (this.componentRef) {
6295
+ this.componentRef.destroy();
6296
+ }
6297
+ }
6298
+ createInfoSign() {
6259
6299
  if (!this.componentRef && this.sInfoSign) {
6260
6300
  this.viewContainer.clear();
6261
6301
  const componentFactory = this.componentFactoryResolver.resolveComponentFactory(InfoSignComponent);
@@ -6273,11 +6313,6 @@ let InfoSignDirective = class InfoSignDirective {
6273
6313
  this.viewContainer.createEmbeddedView(this.templateRef);
6274
6314
  }
6275
6315
  }
6276
- ngOnDestroy() {
6277
- if (this.componentRef) {
6278
- this.componentRef.destroy();
6279
- }
6280
- }
6281
6316
  };
6282
6317
  InfoSignDirective.ctorParameters = () => [
6283
6318
  { type: TemplateRef },
@@ -6295,7 +6330,7 @@ __decorate([
6295
6330
  ], InfoSignDirective.prototype, "focusedInputRef", void 0);
6296
6331
  InfoSignDirective = __decorate([
6297
6332
  Directive({
6298
- selector: "[sInfoSign]",
6333
+ selector: "[sInfoSign]"
6299
6334
  })
6300
6335
  ], InfoSignDirective);
6301
6336
 
@@ -6768,10 +6803,11 @@ let NumericService = class NumericService {
6768
6803
  * @return `string` The formatted value.
6769
6804
  */
6770
6805
  instant(value, options) {
6771
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
6806
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
6772
6807
  options = Object.assign(Object.assign({}, options), { locale: (_c = (_a = options === null || options === void 0 ? void 0 : options.locale) !== null && _a !== void 0 ? _a : (_b = this.localeService.getLocaleOptions()) === null || _b === void 0 ? void 0 : _b.locale) !== null && _c !== void 0 ? _c : "pt-BR", numberFormatOptions: Object.assign(Object.assign({}, options === null || options === void 0 ? void 0 : options.numberFormatOptions), { currency: ((_d = options === null || options === void 0 ? void 0 : options.numberFormatOptions) === null || _d === void 0 ? void 0 : _d.style) === "currency" ? ((_f = (_e = options === null || options === void 0 ? void 0 : options.numberFormatOptions) === null || _e === void 0 ? void 0 : _e.currency) !== null && _f !== void 0 ? _f : "BRL") : undefined, currencyDisplay: ((_g = options === null || options === void 0 ? void 0 : options.numberFormatOptions) === null || _g === void 0 ? void 0 : _g.style) === "currency"
6773
6808
  ? ((_j = (_h = options === null || options === void 0 ? void 0 : options.numberFormatOptions) === null || _h === void 0 ? void 0 : _h.currencyDisplay) !== null && _j !== void 0 ? _j : "narrowSymbol")
6774
- : undefined, minimumFractionDigits: (_l = (_k = options === null || options === void 0 ? void 0 : options.numberFormatOptions) === null || _k === void 0 ? void 0 : _k.minimumFractionDigits) !== null && _l !== void 0 ? _l : 2, maximumFractionDigits: (_o = (_m = options === null || options === void 0 ? void 0 : options.numberFormatOptions) === null || _m === void 0 ? void 0 : _m.maximumFractionDigits) !== null && _o !== void 0 ? _o : 2 }) });
6809
+ : undefined, minimumFractionDigits: (_o = (_l = (_k = options === null || options === void 0 ? void 0 : options.numberFormatOptions) === null || _k === void 0 ? void 0 : _k.minimumFractionDigits) !== null && _l !== void 0 ? _l : (_m = options === null || options === void 0 ? void 0 : options.numberFormatOptions) === null || _m === void 0 ? void 0 : _m.maximumFractionDigits) !== null && _o !== void 0 ? _o : 2, maximumFractionDigits: (_s = (_q = (_p = options === null || options === void 0 ? void 0 : options.numberFormatOptions) === null || _p === void 0 ? void 0 : _p.maximumFractionDigits) !== null && _q !== void 0 ? _q : (_r = options === null || options === void 0 ? void 0 : options.numberFormatOptions) === null || _r === void 0 ? void 0 : _r.minimumFractionDigits) !== null && _s !== void 0 ? _s : 2 }) });
6810
+ options.numberFormatOptions["roundingMode"] = "trunc";
6775
6811
  options.numberFormatOptions["trailingZeroDisplay"] = "stripIfInteger";
6776
6812
  // From https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat
6777
6813
  return new Intl.NumberFormat(options.locale, options.numberFormatOptions).format(this.getType(value) === "number" || this.getType(value) === "string" ? value : value.toString());
@@ -8453,7 +8489,22 @@ TableHeaderCheckboxModule = __decorate([
8453
8489
  ], TableHeaderCheckboxModule);
8454
8490
 
8455
8491
  let AutocompleteFieldComponent = class AutocompleteFieldComponent {
8492
+ constructor(changeDetectorRef, elementRef) {
8493
+ this.changeDetectorRef = changeDetectorRef;
8494
+ this.elementRef = elementRef;
8495
+ }
8496
+ ngAfterViewInit() {
8497
+ this.setInputRef();
8498
+ this.changeDetectorRef.detectChanges();
8499
+ }
8500
+ setInputRef() {
8501
+ this.inputRef = this.elementRef.nativeElement.querySelector('input');
8502
+ }
8456
8503
  };
8504
+ AutocompleteFieldComponent.ctorParameters = () => [
8505
+ { type: ChangeDetectorRef },
8506
+ { type: ElementRef }
8507
+ ];
8457
8508
  __decorate([
8458
8509
  Input()
8459
8510
  ], AutocompleteFieldComponent.prototype, "field", void 0);
@@ -8462,7 +8513,7 @@ __decorate([
8462
8513
  ], AutocompleteFieldComponent.prototype, "formControl", void 0);
8463
8514
  AutocompleteFieldComponent = __decorate([
8464
8515
  Component({
8465
- template: "<div\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\">\n <s-lookup\n [id]=\"(field.id || field.name)\"\n [multiple]=\"field.multiple\"\n [formControl]=\"formControl\"\n [placeholder]=\"field.placeholder\"\n [lookupSuggestions]=\"field.suggestions\"\n [dataKey]=\"field.dataKey\"\n (onLookupRequest)=\"field.onSearch($event)\"\n [lookupDisplayField]=\"field.displayField\"\n [showSearch]=\"false\"\n [lookupAppendTo]=\"field.appendTo\"\n (onSelect)=\"field.onSelect ? field.onSelect($event) : null\"\n (onUnselect)=\"field.onUnselect ? field.onUnselect($event) : null\"\n (onClear)=\"field.onClear ? field.onClear($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n [lookupEmptyMessage]=\"field.emptyMessage\">\n </s-lookup>\n</div>\n"
8516
+ template: "<s-field-label *ngIf=\"inputRef\" [field]=\"field\"\n [fieldContainerRef]=\"inputRef\"></s-field-label>\n \n<div\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\">\n <s-lookup\n [id]=\"(field.id || field.name)\"\n [multiple]=\"field.multiple\"\n [formControl]=\"formControl\"\n [placeholder]=\"field.placeholder\"\n [lookupSuggestions]=\"field.suggestions\"\n [dataKey]=\"field.dataKey\"\n (onLookupRequest)=\"field.onSearch($event)\"\n [lookupDisplayField]=\"field.displayField\"\n [showSearch]=\"false\"\n [lookupAppendTo]=\"field.appendTo\"\n (onSelect)=\"field.onSelect ? field.onSelect($event) : null\"\n (onUnselect)=\"field.onUnselect ? field.onUnselect($event) : null\"\n (onClear)=\"field.onClear ? field.onClear($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n [lookupEmptyMessage]=\"field.emptyMessage\">\n </s-lookup>\n</div>\n"
8466
8517
  })
8467
8518
  ], AutocompleteFieldComponent);
8468
8519
 
@@ -8479,7 +8530,7 @@ __decorate([
8479
8530
  ], BooleanFieldComponent.prototype, "formControl", void 0);
8480
8531
  BooleanFieldComponent = __decorate([
8481
8532
  Component({
8482
- template: "<ng-container *ngIf=\"field.verticalAlignment;else horizontalAlignment\">\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <p-radioButton\n [name]=\"field.name\"\n [value]=\"true\"\n [label]=\"field.optionsLabel.true\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-1'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton>\n </div>\n <div class=\"ui-g-12\">\n <p-radioButton\n [name]=\"field.name\"\n [value]=\"false\"\n [label]=\"field.optionsLabel.false\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-2'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton>\n </div>\n <div\n *ngIf=\"!field.showClear && !field.required()\"\n class=\"ui-g-12\">\n <p-radioButton \n [name]=\"field.name\"\n [value]=\"null\"\n [label]=\"field.optionsLabel.empty\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-3'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton> \n </div>\n <div>\n <s-button\n *ngIf=\"field.showClear && !field.required() && !formControl.disabled\"\n [label]=\"field.optionsLabel.clear || 'Clear selection'\"\n (onClick)=\"onClear()\"\n priority=\"link\">\n </s-button>\n </div>\n\n </div>\n</ng-container>\n\n<ng-template #horizontalAlignment>\n <div class=\"ui-g\">\n <p-radioButton\n [name]=\"field.name\"\n [value]=\"true\"\n [label]=\"field.optionsLabel.true\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-1'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton>\n \n <p-radioButton\n [name]=\"field.name\"\n [value]=\"false\"\n [label]=\"field.optionsLabel.false\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-2'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton>\n\n <p-radioButton\n *ngIf=\"!field.showClear && !field.required()\"\n [name]=\"field.name\"\n [value]=\"null\"\n [label]=\"field.optionsLabel.empty\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-3'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton>\n\n <s-button\n *ngIf=\"field.showClear && !field.required() && !formControl.disabled\"\n style=\"margin-left: 40px;\"\n [label]=\"field.optionsLabel.clear || 'Clear selection'\"\n (onClick)=\"onClear()\"\n priority=\"link\">\n </s-button>\n </div>\n</ng-template>\n"
8533
+ template: "<s-field-label [field]=\"field\"></s-field-label>\n\n<ng-container *ngIf=\"field.verticalAlignment;else horizontalAlignment\">\n <div class=\"ui-g\">\n <div class=\"ui-g-12\">\n <p-radioButton\n [name]=\"field.name\"\n [value]=\"true\"\n [label]=\"field.optionsLabel.true\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-1'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton>\n </div>\n <div class=\"ui-g-12\">\n <p-radioButton\n [name]=\"field.name\"\n [value]=\"false\"\n [label]=\"field.optionsLabel.false\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-2'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton>\n </div>\n <div\n *ngIf=\"!field.showClear && !field.required()\"\n class=\"ui-g-12\">\n <p-radioButton \n [name]=\"field.name\"\n [value]=\"null\"\n [label]=\"field.optionsLabel.empty\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-3'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton> \n </div>\n <div>\n <s-button\n *ngIf=\"field.showClear && !field.required() && !formControl.disabled\"\n [label]=\"field.optionsLabel.clear || 'Clear selection'\"\n (onClick)=\"onClear()\"\n priority=\"link\">\n </s-button>\n </div>\n\n </div>\n</ng-container>\n\n<ng-template #horizontalAlignment>\n <div class=\"ui-g\">\n <p-radioButton\n [name]=\"field.name\"\n [value]=\"true\"\n [label]=\"field.optionsLabel.true\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-1'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton>\n \n <p-radioButton\n [name]=\"field.name\"\n [value]=\"false\"\n [label]=\"field.optionsLabel.false\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-2'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton>\n\n <p-radioButton\n *ngIf=\"!field.showClear && !field.required()\"\n [name]=\"field.name\"\n [value]=\"null\"\n [label]=\"field.optionsLabel.empty\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-3'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton>\n\n <s-button\n *ngIf=\"field.showClear && !field.required() && !formControl.disabled\"\n style=\"margin-left: 40px;\"\n [label]=\"field.optionsLabel.clear || 'Clear selection'\"\n (onClick)=\"onClear()\"\n priority=\"link\">\n </s-button>\n </div>\n</ng-template>\n"
8483
8534
  })
8484
8535
  ], BooleanFieldComponent);
8485
8536
 
@@ -8498,8 +8549,10 @@ BooleanSwitchFieldComponent = __decorate([
8498
8549
  ], BooleanSwitchFieldComponent);
8499
8550
 
8500
8551
  let CalendarFieldComponent = class CalendarFieldComponent {
8501
- constructor(translateService) {
8552
+ constructor(translateService, changeDetectorRef, elementRef) {
8502
8553
  this.translateService = translateService;
8554
+ this.changeDetectorRef = changeDetectorRef;
8555
+ this.elementRef = elementRef;
8503
8556
  this.locale = {
8504
8557
  firstDayOfWeek: 0,
8505
8558
  dayNames: [
@@ -8563,9 +8616,18 @@ let CalendarFieldComponent = class CalendarFieldComponent {
8563
8616
  hourFormat: this.translateService.instant("platform.angular_components.hour_format"),
8564
8617
  };
8565
8618
  }
8619
+ ngAfterViewInit() {
8620
+ this.setInputRef();
8621
+ this.changeDetectorRef.detectChanges();
8622
+ }
8623
+ setInputRef() {
8624
+ this.inputRef = this.elementRef.nativeElement.querySelector('input');
8625
+ }
8566
8626
  };
8567
8627
  CalendarFieldComponent.ctorParameters = () => [
8568
- { type: TranslateService }
8628
+ { type: TranslateService },
8629
+ { type: ChangeDetectorRef },
8630
+ { type: ElementRef }
8569
8631
  ];
8570
8632
  __decorate([
8571
8633
  Input()
@@ -8579,15 +8641,20 @@ __decorate([
8579
8641
  __decorate([
8580
8642
  Input()
8581
8643
  ], CalendarFieldComponent.prototype, "timeOnly", void 0);
8644
+ __decorate([
8645
+ ViewChild('calendar')
8646
+ ], CalendarFieldComponent.prototype, "calendar", void 0);
8582
8647
  CalendarFieldComponent = __decorate([
8583
8648
  Component({
8584
- template: "<div\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\">\n <!-- Remover as propriedades [showTransitionOptions] e [hideTransitionOptions] quando atualizar para o PrimeNG v10, esses atributos foram\n usados para remover um bug ocasionado pela anima\u00E7\u00E3o do componente p-calendar, bug explicado nas issues: #ERPROM-5534, #ERPROM-8248 e #DSN-1045. -->\n <p-calendar\n #calendar\n sCalendarMask\n [inputId]=\"(field.id || field.name)\"\n [name]=\"field.name\"\n [showIcon]=\"true\"\n [timeOnly]=\"timeOnly\"\n [selectionMode]=\"field.selectionMode\"\n [rangeSeparator]=\"field.rangeSeparator\"\n [showTime]=\"showTime\"\n [showSeconds]=\"field.showSeconds\"\n [showOnFocus]=\"field.showOnFocus\"\n [formControl]=\"formControl\"\n [icon]=\"timeOnly ? 'fa fa-clock' : 'fa fa-calendar'\"\n [minDate]=\"field.minDate\"\n [maxDate]=\"field.maxDate\"\n [defaultDate]=\"field.defaultDate\"\n [locale]=\"field.calendarLocaleOptions || locale\"\n [dateFormat]=\"field.calendarLocaleOptions?.dateFormat || 'platform.angular_components.date_format' | translate\"\n [hourFormat]=\"field.calendarLocaleOptions?.hourFormat || 'platform.angular_components.hour_format' | translate\"\n [view]=\"field.view\"\n [placeholder]=\"field.placeholder\"\n inputStyleClass=\"mousetrap\"\n [appendTo]=\"field.appendTo\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event): null\"\n (onSelect)=\"field.onSelect ? field.onSelect($event) : null\"\n (onClose)=\"field.onClose ? field.onClose($event) : null\"\n (onTodayClick)=\"field.onTodayClick ? field.onTodayClick($event) : null\"\n (onClearClick)=\"field.onClearClick ? field.onClearClick($event) : null\"\n (onMonthChange)=\"field.onMonthChange ? field.onMonthChange($event) : null\"\n (onYearChange)=\"field.onYearChange ? field.onYearChange($event) : null\"\n [showTransitionOptions]=\"'0ms'\"\n [hideTransitionOptions]=\"'0ms'\">\n </p-calendar>\n</div>\n"
8649
+ template: "<s-field-label *ngIf=\"inputRef\" [field]=\"field\"\n [fieldContainerRef]=\"inputRef\"></s-field-label>\n\n<div\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\">\n <!-- Remover as propriedades [showTransitionOptions] e [hideTransitionOptions] quando atualizar para o PrimeNG v10, esses atributos foram\n usados para remover um bug ocasionado pela anima\u00E7\u00E3o do componente p-calendar, bug explicado nas issues: #ERPROM-5534, #ERPROM-8248 e #DSN-1045. -->\n <p-calendar\n #calendar\n sCalendarMask\n [inputId]=\"(field.id || field.name)\"\n [name]=\"field.name\"\n [showIcon]=\"true\"\n [timeOnly]=\"timeOnly\"\n [selectionMode]=\"field.selectionMode\"\n [rangeSeparator]=\"field.rangeSeparator\"\n [showTime]=\"showTime\"\n [showSeconds]=\"field.showSeconds\"\n [showOnFocus]=\"field.showOnFocus\"\n [formControl]=\"formControl\"\n [icon]=\"timeOnly ? 'fa fa-clock' : 'fa fa-calendar'\"\n [minDate]=\"field.minDate\"\n [maxDate]=\"field.maxDate\"\n [defaultDate]=\"field.defaultDate\"\n [locale]=\"field.calendarLocaleOptions || locale\"\n [dateFormat]=\"field.calendarLocaleOptions?.dateFormat || 'platform.angular_components.date_format' | translate\"\n [hourFormat]=\"field.calendarLocaleOptions?.hourFormat || 'platform.angular_components.hour_format' | translate\"\n [view]=\"field.view\"\n [placeholder]=\"field.placeholder\"\n inputStyleClass=\"mousetrap\"\n [appendTo]=\"field.appendTo\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event): null\"\n (onSelect)=\"field.onSelect ? field.onSelect($event) : null\"\n (onClose)=\"field.onClose ? field.onClose($event) : null\"\n (onTodayClick)=\"field.onTodayClick ? field.onTodayClick($event) : null\"\n (onClearClick)=\"field.onClearClick ? field.onClearClick($event) : null\"\n (onMonthChange)=\"field.onMonthChange ? field.onMonthChange($event) : null\"\n (onYearChange)=\"field.onYearChange ? field.onYearChange($event) : null\"\n [showTransitionOptions]=\"'0ms'\"\n [hideTransitionOptions]=\"'0ms'\">\n </p-calendar>\n</div>\n"
8585
8650
  })
8586
8651
  ], CalendarFieldComponent);
8587
8652
 
8588
8653
  let ChipsFieldComponent = class ChipsFieldComponent {
8589
- constructor(clipboard) {
8654
+ constructor(clipboard, changeDetectorRef, elementRef) {
8590
8655
  this.clipboard = clipboard;
8656
+ this.changeDetectorRef = changeDetectorRef;
8657
+ this.elementRef = elementRef;
8591
8658
  this.feedbackMessageVisible = false;
8592
8659
  this.copyButtonVisible = true;
8593
8660
  }
@@ -8606,9 +8673,18 @@ let ChipsFieldComponent = class ChipsFieldComponent {
8606
8673
  }
8607
8674
  }
8608
8675
  }
8676
+ ngAfterViewInit() {
8677
+ this.setInputRef();
8678
+ this.changeDetectorRef.detectChanges();
8679
+ }
8680
+ setInputRef() {
8681
+ this.inputRef = this.elementRef.nativeElement.querySelector('input');
8682
+ }
8609
8683
  };
8610
8684
  ChipsFieldComponent.ctorParameters = () => [
8611
- { type: Clipboard }
8685
+ { type: Clipboard },
8686
+ { type: ChangeDetectorRef },
8687
+ { type: ElementRef }
8612
8688
  ];
8613
8689
  __decorate([
8614
8690
  Input()
@@ -8618,13 +8694,28 @@ __decorate([
8618
8694
  ], ChipsFieldComponent.prototype, "formControl", void 0);
8619
8695
  ChipsFieldComponent = __decorate([
8620
8696
  Component({
8621
- template: "<div class=\"chips-field-wrapper\">\n <div style=\"width: 100%;\">\n <p-chips\n *ngIf=\"field.keyFilter\"\n [inputId]=\"(field.id || field.name)\"\n [formControl]=\"formControl\"\n [placeholder]=\"field.placeholder\"\n [allowDuplicate]=\"false\"\n [addOnTab]=\"true\"\n [addOnBlur]=\"true\"\n (onAdd)=\"field.onAdd ? field.onAdd($event) : null\"\n (onRemove)=\"field.onRemove ? field.onRemove($event) : null\"\n (onChipClick)=\"field.onChipClick ? field.onChipClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n [pKeyFilter]=\"field.keyFilter\">\n <ng-template let-item pTemplate=\"item\">\n <span\n class=\"chip-content\"\n [sTooltip]=\"item\">\n {{ item }}\n </span>\n </ng-template>\n </p-chips>\n \n <p-chips\n *ngIf=\"!field.keyFilter\"\n [inputId]=\"(field.id || field.name)\"\n [formControl]=\"formControl\"\n [placeholder]=\"field.placeholder\"\n [allowDuplicate]=\"false\"\n [addOnTab]=\"true\"\n [addOnBlur]=\"true\"\n (onAdd)=\"field.onAdd ? field.onAdd($event) : null\"\n (onRemove)=\"field.onRemove ? field.onRemove($event) : null\"\n (onChipClick)=\"field.onChipClick ? field.onChipClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n <ng-template let-item pTemplate=\"item\">\n <span\n class=\"chip-content\"\n [sTooltip]=\"item\">\n {{ item }}\n </span>\n </ng-template>\n </p-chips>\n </div>\n \n <button\n *ngIf=\"field.showCopyButton && formControl.value?.length > 0 && copyButtonVisible\"\n class=\"copy-content-button\"\n (click)=\"onCopyFieldContent()\">\n {{ \"platform.angular_components.copy_field_content\" | translate }}\n </button>\n \n <span\n *ngIf=\"feedbackMessageVisible\"\n class=\"feedback-message\">\n {{ \"platform.angular_components.copied_to_clipboard\" | translate }}\n </span>\n</div>\n",
8697
+ template: "<s-field-label *ngIf=\"inputRef\" [field]=\"field\"\n [fieldContainerRef]=\"inputRef\"></s-field-label>\n \n<div class=\"chips-field-wrapper\">\n <div style=\"width: 100%;\">\n <p-chips\n *ngIf=\"field.keyFilter\"\n [inputId]=\"(field.id || field.name)\"\n [formControl]=\"formControl\"\n [placeholder]=\"field.placeholder\"\n [allowDuplicate]=\"false\"\n [addOnTab]=\"true\"\n [addOnBlur]=\"true\"\n (onAdd)=\"field.onAdd ? field.onAdd($event) : null\"\n (onRemove)=\"field.onRemove ? field.onRemove($event) : null\"\n (onChipClick)=\"field.onChipClick ? field.onChipClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n [pKeyFilter]=\"field.keyFilter\">\n <ng-template let-item pTemplate=\"item\">\n <span\n class=\"chip-content\"\n [sTooltip]=\"item\">\n {{ item }}\n </span>\n </ng-template>\n </p-chips>\n \n <p-chips\n *ngIf=\"!field.keyFilter\"\n [inputId]=\"(field.id || field.name)\"\n [formControl]=\"formControl\"\n [placeholder]=\"field.placeholder\"\n [allowDuplicate]=\"false\"\n [addOnTab]=\"true\"\n [addOnBlur]=\"true\"\n (onAdd)=\"field.onAdd ? field.onAdd($event) : null\"\n (onRemove)=\"field.onRemove ? field.onRemove($event) : null\"\n (onChipClick)=\"field.onChipClick ? field.onChipClick($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n <ng-template let-item pTemplate=\"item\">\n <span\n class=\"chip-content\"\n [sTooltip]=\"item\">\n {{ item }}\n </span>\n </ng-template>\n </p-chips>\n </div>\n \n <button\n *ngIf=\"field.showCopyButton && formControl.value?.length > 0 && copyButtonVisible\"\n class=\"copy-content-button\"\n (click)=\"onCopyFieldContent()\">\n {{ \"platform.angular_components.copy_field_content\" | translate }}\n </button>\n \n <span\n *ngIf=\"feedbackMessageVisible\"\n class=\"feedback-message\">\n {{ \"platform.angular_components.copied_to_clipboard\" | translate }}\n </span>\n</div>\n",
8622
8698
  styles: [".chips-field-wrapper{-ms-flex-align:start;align-items:flex-start;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.chips-field-wrapper .chip-content{display:block;overflow:hidden;padding-right:1rem;text-overflow:ellipsis}.chips-field-wrapper .copy-content-button{background-color:transparent;border:none;color:#2a6496;cursor:pointer;margin-top:8px}.chips-field-wrapper .feedback-message{color:#0c9348;display:block;margin-top:8px;-webkit-user-select:none;-ms-user-select:none;user-select:none}"]
8623
8699
  })
8624
8700
  ], ChipsFieldComponent);
8625
8701
 
8626
8702
  let CountryPhonePickerFieldComponent = class CountryPhonePickerFieldComponent {
8703
+ constructor(changeDetectorRef, elementRef) {
8704
+ this.changeDetectorRef = changeDetectorRef;
8705
+ this.elementRef = elementRef;
8706
+ }
8707
+ ngAfterViewInit() {
8708
+ this.setInputRef();
8709
+ this.changeDetectorRef.detectChanges();
8710
+ }
8711
+ setInputRef() {
8712
+ this.inputRef = this.elementRef.nativeElement.querySelector('input');
8713
+ }
8627
8714
  };
8715
+ CountryPhonePickerFieldComponent.ctorParameters = () => [
8716
+ { type: ChangeDetectorRef },
8717
+ { type: ElementRef }
8718
+ ];
8628
8719
  __decorate([
8629
8720
  Input()
8630
8721
  ], CountryPhonePickerFieldComponent.prototype, "field", void 0);
@@ -8633,7 +8724,7 @@ __decorate([
8633
8724
  ], CountryPhonePickerFieldComponent.prototype, "formControl", void 0);
8634
8725
  CountryPhonePickerFieldComponent = __decorate([
8635
8726
  Component({
8636
- template: "<s-country-phone-picker\n [formControl]=\"formControl\"\n [ordination]=\"field.ordination\"\n [countries]=\"field.countries\"\n (selected)=\"field.onSelected\"\n (focusLost)=\"field.onFocusLost\">\n</s-country-phone-picker>"
8727
+ template: "<s-field-label *ngIf=\"inputRef\" [field]=\"field\"\n [fieldContainerRef]=\"inputRef\"></s-field-label>\n\n<s-country-phone-picker\n [formControl]=\"formControl\"\n [ordination]=\"field.ordination\"\n [countries]=\"field.countries\"\n (selected)=\"field.onSelected\"\n (focusLost)=\"field.onFocusLost\">\n</s-country-phone-picker>"
8637
8728
  })
8638
8729
  ], CountryPhonePickerFieldComponent);
8639
8730
 
@@ -8667,16 +8758,47 @@ FieldsetComponent = __decorate([
8667
8758
  ], FieldsetComponent);
8668
8759
 
8669
8760
  let FileUploadComponent$1 = class FileUploadComponent extends BaseFieldComponent {
8761
+ constructor(changeDetectorRef, elementRef) {
8762
+ super();
8763
+ this.changeDetectorRef = changeDetectorRef;
8764
+ this.elementRef = elementRef;
8765
+ }
8766
+ onClick() {
8767
+ this.dispatchFocusInputRef();
8768
+ this.addEventOnBlur();
8769
+ }
8770
+ ngAfterViewInit() {
8771
+ this.setInputRef();
8772
+ this.changeDetectorRef.detectChanges();
8773
+ }
8774
+ addEventOnBlur() {
8775
+ fromEvent(document, 'click')
8776
+ .pipe(filter((event) => !this.elementRef.nativeElement.contains(event.target)), take(1))
8777
+ .subscribe(() => this.inputRef.dispatchEvent(new Event('blur')));
8778
+ }
8779
+ setInputRef() {
8780
+ this.inputRef = this.elementRef.nativeElement.querySelector('input');
8781
+ }
8782
+ dispatchFocusInputRef() {
8783
+ this.inputRef.dispatchEvent(new Event('focus'));
8784
+ }
8670
8785
  };
8786
+ FileUploadComponent$1.ctorParameters = () => [
8787
+ { type: ChangeDetectorRef },
8788
+ { type: ElementRef }
8789
+ ];
8671
8790
  __decorate([
8672
8791
  Input()
8673
8792
  ], FileUploadComponent$1.prototype, "field", void 0);
8674
8793
  __decorate([
8675
8794
  Input()
8676
8795
  ], FileUploadComponent$1.prototype, "formControl", void 0);
8796
+ __decorate([
8797
+ HostListener('click')
8798
+ ], FileUploadComponent$1.prototype, "onClick", null);
8677
8799
  FileUploadComponent$1 = __decorate([
8678
8800
  Component({
8679
- template: "<s-file-upload [id]=\"(field.id || field.name)\" [accept]=\"field.accept\" [files]=\"field.files\" [multiple]=\"field.multiple\"\n [chooseLabel]=\"field.chooseLabel\" [removeLabel]=\"field.removeLabel\" [cancelLabel]=\"field.cancelLabel\"\n [successTooltip]=\"field.successTooltip\" (uploadHandler)=\"field.onUploadFile($event, field)\"\n (removeFile)=\"field.onRemoveFile($event, field)\" (cancelUpload)=\"field.onCancelUpload($event, field)\"\n (downloadFile)=\"field.onDownloadFile($event, field)\" [formGroup]=\"formControl\"\n [showFileUploadDate]=\"field.showFileUploadDate\"> \n</s-file-upload>\n"
8801
+ template: "<s-field-label *ngIf=\"inputRef\" [field]=\"field\"\n [fieldContainerRef]=\"inputRef\"></s-field-label>\n \n<s-file-upload\n [id]=\"(field.id || field.name)\"\n [accept]=\"field.accept\"\n [files]=\"field.files\"\n [multiple]=\"field.multiple\"\n [chooseLabel]=\"field.chooseLabel\"\n [removeLabel]=\"field.removeLabel\"\n [cancelLabel]=\"field.cancelLabel\"\n [successTooltip]=\"field.successTooltip\"\n (uploadHandler)=\"field.onUploadFile($event, field)\"\n (removeFile)=\"field.onRemoveFile($event, field)\"\n (cancelUpload)=\"field.onCancelUpload($event, field)\"\n (downloadFile)=\"field.onDownloadFile($event, field)\"\n [formGroup]=\"formControl\"\n [showFileUploadDate]=\"field.showFileUploadDate\"> \n</s-file-upload>\n"
8680
8802
  })
8681
8803
  ], FileUploadComponent$1);
8682
8804
 
@@ -8690,7 +8812,7 @@ __decorate([
8690
8812
  ], LookupFieldComponent.prototype, "formControl", void 0);
8691
8813
  LookupFieldComponent = __decorate([
8692
8814
  Component({
8693
- template: "<div [sTooltip]=\"field.tooltip\" tooltipPosition=\"top\" [showDelay]=\"500\">\n <s-lookup\n [id]=\"field.id || field.name\"\n [multiple]=\"field.multiple\"\n [formControl]=\"formControl\"\n [lookupSuggestions]=\"field.lookupSuggestions\"\n [dataKey]=\"field.dataKey\"\n [placeholder]=\"field.placeholder\"\n [showSearch]=\"field.showSearch\"\n [searchFields]=\"field.searchFields\"\n [searchGridFields]=\"field.searchGridFields\"\n [searchGridData]=\"field.gridData\"\n (onLookupRequest)=\"field.onLookupRequest($event)\"\n (onSearchRequest)=\"field.onSearchRequest($event)\"\n [lookupDisplayField]=\"field.lookupDisplayField\"\n [searchTotalRecords]=\"field.searchTotalRecords\"\n [searchTotalRecordsLabel]=\"field.searchTotalRecordsLabel\"\n [searchTitle]=\"field.searchTitle\"\n [selectLabel]=\"field.selectLabel\"\n [searchEmptyTitle]=\"field.searchEmptyTitle\"\n [filterLabel]=\"field.filterLabel\"\n [filterTitle]=\"field.filterTitle\"\n [clearLabel]=\"field.clearLabel\"\n [cancelLabel]=\"field.cancelLabel\"\n [emptyFieldLabel]=\"field.emptyFieldLabel\"\n (onSelect)=\"field.onSelect($event)\"\n (onUnselect)=\"field.onUnselect($event)\"\n (onClear)=\"field.onClear ? field.onClear($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n [lookupAppendTo]=\"field.appendTo\"\n [lookupEmptyMessage]=\"field.emptyMessage\"\n [recordLabel]=\"field.recordLabel\"\n [recordsLabel]=\"field.recordsLabel\"\n [defaultFilter]=\"field.defaultFilter\"\n [autocompleteForceSelection]=\"field.autocompleteForceSelection\"\n [showAddOption]=\"field.showAddOption\"\n [showEditOption]=\"field.showEditOption\"\n [showRemoveOption]=\"field.showRemoveOption\"\n (onAdd)=\"field.onAdd()\"\n (onEdit)=\"field.onEdit($event)\"\n (onRemove)=\"field.onRemove($event)\"\n >\n </s-lookup>\n</div>\n"
8815
+ template: "<s-field-label [field]=\"field\">\n\n<div [sTooltip]=\"field.tooltip\" tooltipPosition=\"top\" [showDelay]=\"500\">\n <s-lookup\n [id]=\"field.id || field.name\"\n [multiple]=\"field.multiple\"\n [formControl]=\"formControl\"\n [lookupSuggestions]=\"field.lookupSuggestions\"\n [dataKey]=\"field.dataKey\"\n [placeholder]=\"field.placeholder\"\n [showSearch]=\"field.showSearch\"\n [searchFields]=\"field.searchFields\"\n [searchGridFields]=\"field.searchGridFields\"\n [searchGridData]=\"field.gridData\"\n (onLookupRequest)=\"field.onLookupRequest($event)\"\n (onSearchRequest)=\"field.onSearchRequest($event)\"\n [lookupDisplayField]=\"field.lookupDisplayField\"\n [searchTotalRecords]=\"field.searchTotalRecords\"\n [searchTotalRecordsLabel]=\"field.searchTotalRecordsLabel\"\n [searchTitle]=\"field.searchTitle\"\n [selectLabel]=\"field.selectLabel\"\n [searchEmptyTitle]=\"field.searchEmptyTitle\"\n [filterLabel]=\"field.filterLabel\"\n [filterTitle]=\"field.filterTitle\"\n [clearLabel]=\"field.clearLabel\"\n [cancelLabel]=\"field.cancelLabel\"\n [emptyFieldLabel]=\"field.emptyFieldLabel\"\n (onSelect)=\"field.onSelect($event)\"\n (onUnselect)=\"field.onUnselect($event)\"\n (onClear)=\"field.onClear ? field.onClear($event) : null\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n [lookupAppendTo]=\"field.appendTo\"\n [lookupEmptyMessage]=\"field.emptyMessage\"\n [recordLabel]=\"field.recordLabel\"\n [recordsLabel]=\"field.recordsLabel\"\n [defaultFilter]=\"field.defaultFilter\"\n [autocompleteForceSelection]=\"field.autocompleteForceSelection\"\n [showAddOption]=\"field.showAddOption\"\n [showEditOption]=\"field.showEditOption\"\n [showRemoveOption]=\"field.showRemoveOption\"\n (onAdd)=\"field.onAdd()\"\n (onEdit)=\"field.onEdit($event)\"\n (onRemove)=\"field.onRemove($event)\"\n >\n </s-lookup>\n</div>\n"
8694
8816
  })
8695
8817
  ], LookupFieldComponent);
8696
8818
 
@@ -8732,7 +8854,7 @@ __decorate([
8732
8854
  ], RadioButtonComponent.prototype, "onFocus", void 0);
8733
8855
  RadioButtonComponent = __decorate([
8734
8856
  Component({
8735
- template: "<ng-container *ngIf=\"field.verticalAlignment;else horizontalAlignment\">\n <div class=\"ui-g\">\n <div\n *ngFor=\"let option of field.options; let i = index\"\n class=\"ui-g-12\">\n <ng-container\n [ngTemplateOutlet]=\"radioButton\"\n [ngTemplateOutletContext]=\"{option: option, index: i}\">\n </ng-container>\n </div>\n <s-button\n *ngIf=\"field.showClear && !field.required() && !formControl.disabled\"\n [label]=\"field.clearLabel || 'Clear selection'\"\n (onClick)=\"onClear()\"\n priority=\"link\">\n </s-button>\n </div>\n</ng-container>\n\n<ng-template #horizontalAlignment>\n <div class=\"ui-g\">\n <ng-container\n *ngFor=\"let option of field.options; let i = index\"\n [ngTemplateOutlet]=\"radioButton\"\n [ngTemplateOutletContext]=\"{option: option, index: i}\">\n </ng-container>\n </div>\n <s-button\n *ngIf=\"field.showClear && !field.required() && !formControl.disabled\"\n class=\"horizontal-clear-option\"\n [label]=\"field.clearLabel || 'Clear selection'\"\n (onClick)=\"onClear()\"\n priority=\"link\">\n </s-button>\n</ng-template>\n\n<ng-template #radioButton let-option=\"option\" let-i=\"index\">\n <p-radioButton\n [name]=\"field.name\"\n [value]=\"option.value\"\n [label]=\"option.label\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-' + i\"\n [sTooltip]=\"field.tooltip\"\n (onClick)=\"onClick.next($event)\"\n (onFocus)=\"onFocus.next($event)\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton>\n</ng-template>\n",
8857
+ template: "<s-field-label [field]=\"field\"></s-field-label>\n\n<ng-container *ngIf=\"field.verticalAlignment;else horizontalAlignment\">\n <div class=\"ui-g\">\n <div\n *ngFor=\"let option of field.options; let i = index\"\n class=\"ui-g-12\">\n <ng-container\n [ngTemplateOutlet]=\"radioButton\"\n [ngTemplateOutletContext]=\"{option: option, index: i}\">\n </ng-container>\n </div>\n <s-button\n *ngIf=\"field.showClear && !field.required() && !formControl.disabled\"\n [label]=\"field.clearLabel || 'Clear selection'\"\n (onClick)=\"onClear()\"\n priority=\"link\">\n </s-button>\n </div>\n</ng-container>\n\n<ng-template #horizontalAlignment>\n <div class=\"ui-g\">\n <ng-container\n *ngFor=\"let option of field.options; let i = index\"\n [ngTemplateOutlet]=\"radioButton\"\n [ngTemplateOutletContext]=\"{option: option, index: i}\">\n </ng-container>\n </div>\n <s-button\n *ngIf=\"field.showClear && !field.required() && !formControl.disabled\"\n class=\"horizontal-clear-option\"\n [label]=\"field.clearLabel || 'Clear selection'\"\n (onClick)=\"onClear()\"\n priority=\"link\">\n </s-button>\n</ng-template>\n\n<ng-template #radioButton let-option=\"option\" let-i=\"index\">\n <p-radioButton\n [name]=\"field.name\"\n [value]=\"option.value\"\n [label]=\"option.label\"\n [formControl]=\"formControl\"\n [inputId]=\"(field.id || field.name) + '-' + i\"\n [sTooltip]=\"field.tooltip\"\n (onClick)=\"onClick.next($event)\"\n (onFocus)=\"onFocus.next($event)\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\">\n </p-radioButton>\n</ng-template>\n",
8736
8858
  encapsulation: ViewEncapsulation.None,
8737
8859
  styles: [`
8738
8860
  s-button.horizontal-clear-option button {
@@ -8777,7 +8899,7 @@ __decorate([
8777
8899
  ], SelectFieldComponent.prototype, "formControl", void 0);
8778
8900
  SelectFieldComponent = __decorate([
8779
8901
  Component({
8780
- template: "<p-dropdown\n *ngIf=\"!field.multiple\"\n [inputId]=\"(field.id || field.name)\"\n [name]=\"field.name\"\n [options]=\"isFunction(field.options) ? field.options() : field.options\"\n [placeholder]=\"field.placeholder || ' '\"\n [formControl]=\"formControl\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n [showClear]=\"field.showClear\"\n dataKey=\"{{field.dataKey}}\"\n optionLabel=\"{{field.optionLabel}}\"\n [autoDisplayFirst]=\"field.autoDisplayFirst\"\n [appendTo]=\"field.appendTo || 'body'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onChange)=\"field.onChange ? field.onChange($event) : null\">\n</p-dropdown>\n<p-multiSelect\n *ngIf=\"field.multiple\"\n [formControl]=\"formControl\"\n [name]=\"field.name\"\n [inputId]=\"(field.id || field.name)\"\n [options]=\"isFunction(field.options) ? field.options() : field.options\"\n [defaultLabel]=\"field.placeholder\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [emptyFilterMessage]=\"field.emptyMessage || 'platform.angular_components.no_records_found' | translate\"\n [showDelay]=\"500\"\n [selectedItemsLabel]=\"field.multipleSelectedLabel || 'platform.angular_components.total_records_selected' | translate\"\n [appendTo]=\"field.appendTo || 'body'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onChange)=\"field.onChange ? field.onChange($event) : null\">\n</p-multiSelect>\n\n"
8902
+ template: "<s-field-label [field]=\"field\"></s-field-label>\n\n<p-dropdown\n *ngIf=\"!field.multiple\"\n [inputId]=\"(field.id || field.name)\"\n [name]=\"field.name\"\n [options]=\"isFunction(field.options) ? field.options() : field.options\"\n [placeholder]=\"field.placeholder || ' '\"\n [formControl]=\"formControl\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n [showClear]=\"field.showClear\"\n dataKey=\"{{field.dataKey}}\"\n optionLabel=\"{{field.optionLabel}}\"\n [autoDisplayFirst]=\"field.autoDisplayFirst\"\n [appendTo]=\"field.appendTo || 'body'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onChange)=\"field.onChange ? field.onChange($event) : null\">\n</p-dropdown>\n<p-multiSelect\n *ngIf=\"field.multiple\"\n [formControl]=\"formControl\"\n [name]=\"field.name\"\n [inputId]=\"(field.id || field.name)\"\n [options]=\"isFunction(field.options) ? field.options() : field.options\"\n [defaultLabel]=\"field.placeholder\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [emptyFilterMessage]=\"field.emptyMessage || 'platform.angular_components.no_records_found' | translate\"\n [showDelay]=\"500\"\n [selectedItemsLabel]=\"field.multipleSelectedLabel || 'platform.angular_components.total_records_selected' | translate\"\n [appendTo]=\"field.appendTo || 'body'\"\n (onClick)=\"field.onClick ? field.onClick($event) : null\"\n (onChange)=\"field.onChange ? field.onChange($event) : null\">\n</p-multiSelect>\n\n"
8781
8903
  })
8782
8904
  ], SelectFieldComponent);
8783
8905
 
@@ -8880,22 +9002,34 @@ __decorate([
8880
9002
  ], SliderFieldComponent.prototype, "onSlideEnd", void 0);
8881
9003
  SliderFieldComponent = __decorate([
8882
9004
  Component({
8883
- template: "<ng-container>\n <div class=\"slider-group\">\n <div class=\"slider-label\">\n <span>{{label}}</span>\n </div>\n <p-slider \n [id]=\"(field.id || field.name)\"\n [formControl]=\"formControl\"\n [range]=\"field.range\"\n [orientation]=\"field.orientation\"\n [min]=\"field.min\" \n [max]=\"field.max\"\n [step]=\"field.step\"\n [animate]=\"field.animate\" \n (onChange)=\"field.onChange ? field.onChange($event) : null\"\n (onSlideEnd)=\"field.onSlideEnd ? field.onSlideEnd($event) : null\">\n </p-slider>\n </div>\n</ng-container>",
9005
+ template: "<s-field-label [field]=\"field\"></s-field-label>\n\n<ng-container>\n <div class=\"slider-group\">\n <div class=\"slider-label\">\n <span>{{label}}</span>\n </div>\n <p-slider \n [id]=\"(field.id || field.name)\"\n [formControl]=\"formControl\"\n [range]=\"field.range\"\n [orientation]=\"field.orientation\"\n [min]=\"field.min\" \n [max]=\"field.max\"\n [step]=\"field.step\"\n [animate]=\"field.animate\" \n (onChange)=\"field.onChange ? field.onChange($event) : null\"\n (onSlideEnd)=\"field.onSlideEnd ? field.onSlideEnd($event) : null\">\n </p-slider>\n </div>\n</ng-container>",
8884
9006
  styles: [".slider-label{margin-bottom:5px;margin-left:-10px}.slider-group{margin-left:9px;margin-right:11px}"]
8885
9007
  })
8886
9008
  ], SliderFieldComponent);
8887
9009
 
8888
9010
  let TextAreaFieldComponent = class TextAreaFieldComponent {
9011
+ constructor(changeDetectorRef) {
9012
+ this.changeDetectorRef = changeDetectorRef;
9013
+ }
9014
+ ngAfterViewInit() {
9015
+ this.changeDetectorRef.detectChanges();
9016
+ }
8889
9017
  };
9018
+ TextAreaFieldComponent.ctorParameters = () => [
9019
+ { type: ChangeDetectorRef }
9020
+ ];
8890
9021
  __decorate([
8891
9022
  Input()
8892
9023
  ], TextAreaFieldComponent.prototype, "field", void 0);
8893
9024
  __decorate([
8894
9025
  Input()
8895
9026
  ], TextAreaFieldComponent.prototype, "formControl", void 0);
9027
+ __decorate([
9028
+ ViewChild('inputRef')
9029
+ ], TextAreaFieldComponent.prototype, "inputRef", void 0);
8896
9030
  TextAreaFieldComponent = __decorate([
8897
9031
  Component({
8898
- template: "<textarea\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\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"
9032
+ 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"
8899
9033
  })
8900
9034
  ], TextAreaFieldComponent);
8901
9035
 
@@ -8967,9 +9101,12 @@ __decorate([
8967
9101
  __decorate([
8968
9102
  Input()
8969
9103
  ], TextAreaIAFieldComponent.prototype, "formControl", void 0);
9104
+ __decorate([
9105
+ ViewChild('inputRef')
9106
+ ], TextAreaIAFieldComponent.prototype, "inputRef", void 0);
8970
9107
  TextAreaIAFieldComponent = __decorate([
8971
9108
  Component({
8972
- template: "<s-loading-state\n [loading]=\"isLoading\"\n [blockWindow]=\"true\"> \n</s-loading-state>\n\n<p-dialog\n [(visible)]=\"isVisible\"\n [modal]=\"true\"\n [style]=\"{ width: '50vw' }\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n (onHide)=\"onHideDialog()\">\n <p-header>\n <div class=\"dialog-header\">\n <span class=\"iassist-icon\">\n <ng-container [ngTemplateOutlet]=\"iassistIcon\"></ng-container>\n </span>\n IAssist - Content Generator\n </div>\n </p-header>\n <s-dynamic-form\n [fields]=\"fields\"\n [form]=\"formGroup\">\n </s-dynamic-form>\n <p-footer>\n <div class=\"footer-content\">\n <s-button\n id=\"-submit-button\"\n type=\"button\"\n [label]=\"'platform.angular_components.generate_text' | translate\"\n (onClick)=\"submitContext()\"\n sTooltip=\"(ALT + SHIFT + S)\"\n showDelay=\"500\">\n </s-button>\n <s-button\n id=\"-cancel-button\"\n type=\"button\"\n priority=\"link\"\n [label]=\"'platform.angular_components.cancel' | translate\"\n (onClick)=\"hideDialog()\"\n sTooltip=\"(ALT + SHIFT + C)\"\n showDelay=\"500\">\n </s-button>\n </div>\n </p-footer>\n</p-dialog>\n\n<div class=\"textarea-ia\">\n <textarea\n [id]=\"(field.id || field.name)\"\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 <button\n class=\"iassist-button\"\n (click)=\"showDialog()\"\n sTooltip=\"IAssist - Content Generator\">\n <ng-container [ngTemplateOutlet]=\"iassistIcon\"></ng-container>\n </button>\n</div>\n\n<ng-template #iassistIcon>\n <svg style=\"width: 100%; height: 100%;\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5.81451 18.1054L5.99593 17.6059L7.52166 13.4099L7.60877 13.1726L7.61277 13.1614L7.94285 12.2543L8.01159 12.0648L8.05394 11.949L5.2998 8.52426L5.02726 8.18379C5.00569 8.15821 4.9881 8.13104 4.97292 8.10226C4.90099 7.9632 4.85063 7.81294 4.82186 7.6531C4.73075 7.1344 4.90418 6.60771 5.28382 6.24326C5.29421 6.23447 5.3038 6.22567 5.31419 6.21688L5.47164 6.0914L9.3439 3.00238L9.5469 2.84094L9.57088 2.82096L10.4101 2.15041L11.8007 1.04188C11.2181 0.925188 10.6163 0.863647 10.0001 0.863647C4.95374 0.863647 0.863281 4.9541 0.863281 9.99963C0.863281 13.5346 2.87254 16.5989 5.80971 18.1182\" fill=\"#0FA389\"/>\n <path d=\"M14.099 1.83472L13.9495 2.24632L11.997 7.61074L11.9427 7.7594L11.9003 7.87369L14.7448 11.4103C14.7463 11.4127 14.7479 11.4143 14.7495 11.4167L14.9414 11.654C14.9541 11.67 14.9661 11.6868 14.9765 11.7044C15.0764 11.8698 15.1444 12.0505 15.1779 12.2431C15.273 12.7826 15.0812 13.3284 14.676 13.6897C14.656 13.7129 14.6345 13.7344 14.6105 13.7536L11.8563 15.9507L11.6789 16.0922L11.6022 16.1537L10.7406 16.8402V16.841L10.3937 17.1176L9.85747 17.5452L9.39951 17.9112L8.11035 18.9398C8.72016 19.0677 9.35155 19.1364 9.99973 19.1364C15.0461 19.1364 19.1365 15.046 19.1365 9.99964C19.1365 6.42789 17.0857 3.33727 14.099 1.83472Z\" fill=\"#0FA389\"/>\n <path d=\"M14.7287 12.3222C14.7047 12.1832 14.6551 12.0545 14.5864 11.941L14.3954 11.7036C14.3954 11.7036 14.3946 11.7028 14.3938 11.7028L11.3839 7.96005L10.5031 6.86511L10.4256 6.7676L9.03255 5.03487L8.83674 4.79191C8.79278 4.71678 8.75681 4.63446 8.73204 4.54814C8.72085 4.51058 8.71286 4.47222 8.70566 4.43465C8.68568 4.32196 8.68408 4.21007 8.69847 4.10217L8.62334 4.16291L8.44511 4.30438L5.75731 6.44871L5.60066 6.57339C5.34011 6.82275 5.20584 7.19279 5.27218 7.57482C5.29296 7.68751 5.32892 7.79541 5.37927 7.89292C5.37927 7.89292 5.37927 7.89292 5.38007 7.89371L5.6566 8.23818L8.57139 11.8627L8.63293 11.9394L9.53047 13.0559L9.59041 13.1303L9.98363 13.6186L11.0178 14.9046C11.0186 14.9054 11.0194 14.9069 11.0202 14.9077L11.1361 15.0516V15.0524C11.2184 15.1755 11.2768 15.317 11.3048 15.4728C11.3239 15.5807 11.3263 15.6878 11.3143 15.7925L11.3175 15.7965L11.3943 15.735L11.5717 15.5935L14.3266 13.3964L14.3218 13.3908C14.6335 13.1438 14.8022 12.7394 14.7287 12.3222Z\" fill=\"#F3F3F5\"/>\n <path d=\"M10.6822 15.0082C10.6814 15.0074 10.6806 15.0058 10.6806 15.005L10.5672 14.8643L10.3809 14.6325L10.3282 14.567L10.2211 14.4335L9.40028 13.4129L9.32835 13.3242L8.77289 12.6345L8.68098 12.5194L8.44121 12.2205L8.37168 12.4099L8.04159 13.317L8.0376 13.329L7.95128 13.5664L6.42475 17.7623L6.24333 18.2618L5.90605 19.1881L5.73262 19.6645C5.73182 19.6661 5.73102 19.6677 5.73102 19.6685C5.72863 19.6749 5.72703 19.6821 5.72543 19.6885C5.71584 19.7228 5.71424 19.758 5.72063 19.7948C5.74461 19.929 5.87329 20.0193 6.00836 19.9962C6.04112 19.9898 6.07229 19.9778 6.09867 19.9602C6.09867 19.9602 6.09947 19.9602 6.10027 19.9594L6.14103 19.9266L7.39422 18.9268L9.11496 17.5537L9.57292 17.1877L10.1092 16.7601L10.4561 16.4827L10.4537 16.4811C10.7582 16.2382 10.9236 15.8402 10.8509 15.4294C10.8237 15.2735 10.7654 15.1313 10.6822 15.0082Z\" fill=\"#0C847B\"/>\n <path d=\"M9.17644 4.56325C9.2124 4.68713 9.26915 4.80062 9.34268 4.90053C9.34348 4.90053 9.34428 4.90213 9.34428 4.90213L9.40342 4.97645C9.40502 4.97805 9.40582 4.97885 9.40662 4.98045L9.56806 5.17946L9.64878 5.28096L9.67915 5.31932L9.8414 5.51993L10.5559 6.40947L10.7054 6.59569L11.2169 7.23188L11.5142 7.60192L11.5693 7.45247L13.5202 2.08964L14.1596 0.332135C14.1596 0.330536 14.1604 0.328139 14.1612 0.32654C14.174 0.288177 14.1772 0.246617 14.17 0.205058C14.1468 0.0699879 14.0182 -0.0195258 13.8823 0.00365186C13.8407 0.0116442 13.8024 0.028428 13.7712 0.0540033L12.578 1.00589L12.498 1.06982L10.6958 2.50844L9.85658 3.17819L9.8326 3.19737L9.6296 3.35961L9.45297 3.50028C9.2116 3.73925 9.08692 4.08931 9.15006 4.44976C9.15726 4.48813 9.16525 4.52649 9.17644 4.56325Z\" fill=\"#0C847B\"/>\n </svg>\n</ng-template>",
9109
+ template: "<s-field-label [field]=\"field\"\n [fieldContainerRef]=\"inputRef?.nativeElement\"></s-field-label>\n\n<s-loading-state\n [loading]=\"isLoading\"\n [blockWindow]=\"true\"> \n</s-loading-state>\n\n<p-dialog\n [(visible)]=\"isVisible\"\n [modal]=\"true\"\n [style]=\"{ width: '50vw' }\"\n [draggable]=\"false\"\n [resizable]=\"false\"\n (onHide)=\"onHideDialog()\">\n <p-header>\n <div class=\"dialog-header\">\n <span class=\"iassist-icon\">\n <ng-container [ngTemplateOutlet]=\"iassistIcon\"></ng-container>\n </span>\n IAssist - Content Generator\n </div>\n </p-header>\n <s-dynamic-form\n [fields]=\"fields\"\n [form]=\"formGroup\">\n </s-dynamic-form>\n <p-footer>\n <div class=\"footer-content\">\n <s-button\n id=\"-submit-button\"\n type=\"button\"\n [label]=\"'platform.angular_components.generate_text' | translate\"\n (onClick)=\"submitContext()\"\n sTooltip=\"(ALT + SHIFT + S)\"\n showDelay=\"500\">\n </s-button>\n <s-button\n id=\"-cancel-button\"\n type=\"button\"\n priority=\"link\"\n [label]=\"'platform.angular_components.cancel' | translate\"\n (onClick)=\"hideDialog()\"\n sTooltip=\"(ALT + SHIFT + C)\"\n showDelay=\"500\">\n </s-button>\n </div>\n </p-footer>\n</p-dialog>\n\n<div class=\"textarea-ia\">\n <textarea #inputRef\n [id]=\"(field.id || field.name)\"\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 <button\n class=\"iassist-button\"\n (click)=\"showDialog()\"\n sTooltip=\"IAssist - Content Generator\">\n <ng-container [ngTemplateOutlet]=\"iassistIcon\"></ng-container>\n </button>\n</div>\n\n<ng-template #iassistIcon>\n <svg style=\"width: 100%; height: 100%;\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M5.81451 18.1054L5.99593 17.6059L7.52166 13.4099L7.60877 13.1726L7.61277 13.1614L7.94285 12.2543L8.01159 12.0648L8.05394 11.949L5.2998 8.52426L5.02726 8.18379C5.00569 8.15821 4.9881 8.13104 4.97292 8.10226C4.90099 7.9632 4.85063 7.81294 4.82186 7.6531C4.73075 7.1344 4.90418 6.60771 5.28382 6.24326C5.29421 6.23447 5.3038 6.22567 5.31419 6.21688L5.47164 6.0914L9.3439 3.00238L9.5469 2.84094L9.57088 2.82096L10.4101 2.15041L11.8007 1.04188C11.2181 0.925188 10.6163 0.863647 10.0001 0.863647C4.95374 0.863647 0.863281 4.9541 0.863281 9.99963C0.863281 13.5346 2.87254 16.5989 5.80971 18.1182\" fill=\"#0FA389\"/>\n <path d=\"M14.099 1.83472L13.9495 2.24632L11.997 7.61074L11.9427 7.7594L11.9003 7.87369L14.7448 11.4103C14.7463 11.4127 14.7479 11.4143 14.7495 11.4167L14.9414 11.654C14.9541 11.67 14.9661 11.6868 14.9765 11.7044C15.0764 11.8698 15.1444 12.0505 15.1779 12.2431C15.273 12.7826 15.0812 13.3284 14.676 13.6897C14.656 13.7129 14.6345 13.7344 14.6105 13.7536L11.8563 15.9507L11.6789 16.0922L11.6022 16.1537L10.7406 16.8402V16.841L10.3937 17.1176L9.85747 17.5452L9.39951 17.9112L8.11035 18.9398C8.72016 19.0677 9.35155 19.1364 9.99973 19.1364C15.0461 19.1364 19.1365 15.046 19.1365 9.99964C19.1365 6.42789 17.0857 3.33727 14.099 1.83472Z\" fill=\"#0FA389\"/>\n <path d=\"M14.7287 12.3222C14.7047 12.1832 14.6551 12.0545 14.5864 11.941L14.3954 11.7036C14.3954 11.7036 14.3946 11.7028 14.3938 11.7028L11.3839 7.96005L10.5031 6.86511L10.4256 6.7676L9.03255 5.03487L8.83674 4.79191C8.79278 4.71678 8.75681 4.63446 8.73204 4.54814C8.72085 4.51058 8.71286 4.47222 8.70566 4.43465C8.68568 4.32196 8.68408 4.21007 8.69847 4.10217L8.62334 4.16291L8.44511 4.30438L5.75731 6.44871L5.60066 6.57339C5.34011 6.82275 5.20584 7.19279 5.27218 7.57482C5.29296 7.68751 5.32892 7.79541 5.37927 7.89292C5.37927 7.89292 5.37927 7.89292 5.38007 7.89371L5.6566 8.23818L8.57139 11.8627L8.63293 11.9394L9.53047 13.0559L9.59041 13.1303L9.98363 13.6186L11.0178 14.9046C11.0186 14.9054 11.0194 14.9069 11.0202 14.9077L11.1361 15.0516V15.0524C11.2184 15.1755 11.2768 15.317 11.3048 15.4728C11.3239 15.5807 11.3263 15.6878 11.3143 15.7925L11.3175 15.7965L11.3943 15.735L11.5717 15.5935L14.3266 13.3964L14.3218 13.3908C14.6335 13.1438 14.8022 12.7394 14.7287 12.3222Z\" fill=\"#F3F3F5\"/>\n <path d=\"M10.6822 15.0082C10.6814 15.0074 10.6806 15.0058 10.6806 15.005L10.5672 14.8643L10.3809 14.6325L10.3282 14.567L10.2211 14.4335L9.40028 13.4129L9.32835 13.3242L8.77289 12.6345L8.68098 12.5194L8.44121 12.2205L8.37168 12.4099L8.04159 13.317L8.0376 13.329L7.95128 13.5664L6.42475 17.7623L6.24333 18.2618L5.90605 19.1881L5.73262 19.6645C5.73182 19.6661 5.73102 19.6677 5.73102 19.6685C5.72863 19.6749 5.72703 19.6821 5.72543 19.6885C5.71584 19.7228 5.71424 19.758 5.72063 19.7948C5.74461 19.929 5.87329 20.0193 6.00836 19.9962C6.04112 19.9898 6.07229 19.9778 6.09867 19.9602C6.09867 19.9602 6.09947 19.9602 6.10027 19.9594L6.14103 19.9266L7.39422 18.9268L9.11496 17.5537L9.57292 17.1877L10.1092 16.7601L10.4561 16.4827L10.4537 16.4811C10.7582 16.2382 10.9236 15.8402 10.8509 15.4294C10.8237 15.2735 10.7654 15.1313 10.6822 15.0082Z\" fill=\"#0C847B\"/>\n <path d=\"M9.17644 4.56325C9.2124 4.68713 9.26915 4.80062 9.34268 4.90053C9.34348 4.90053 9.34428 4.90213 9.34428 4.90213L9.40342 4.97645C9.40502 4.97805 9.40582 4.97885 9.40662 4.98045L9.56806 5.17946L9.64878 5.28096L9.67915 5.31932L9.8414 5.51993L10.5559 6.40947L10.7054 6.59569L11.2169 7.23188L11.5142 7.60192L11.5693 7.45247L13.5202 2.08964L14.1596 0.332135C14.1596 0.330536 14.1604 0.328139 14.1612 0.32654C14.174 0.288177 14.1772 0.246617 14.17 0.205058C14.1468 0.0699879 14.0182 -0.0195258 13.8823 0.00365186C13.8407 0.0116442 13.8024 0.028428 13.7712 0.0540033L12.578 1.00589L12.498 1.06982L10.6958 2.50844L9.85658 3.17819L9.8326 3.19737L9.6296 3.35961L9.45297 3.50028C9.2116 3.73925 9.08692 4.08931 9.15006 4.44976C9.15726 4.48813 9.16525 4.52649 9.17644 4.56325Z\" fill=\"#0C847B\"/>\n </svg>\n</ng-template>",
8973
9110
  styles: [".footer-content{display:-ms-flexbox;display:flex;-ms-flex-positive:0;flex-grow:0}.textarea-ia{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end;gap:8px}.iassist-button{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;border:none;border-radius:50%;box-shadow:none;cursor:pointer;height:32px;width:32px}.dialog-header{display:-ms-flexbox;display:flex;gap:12px}.dialog-header .iassist-icon{display:block;height:24px;width:24px}"]
8974
9111
  })
8975
9112
  ], TextAreaIAFieldComponent);
@@ -9005,14 +9142,6 @@ RowComponent = __decorate([
9005
9142
  <div class="ui-g">
9006
9143
  <ng-container *ngFor="let field of config.fields">
9007
9144
  <div [ngClass]="field.gridClass" *ngIf="field.visible()">
9008
- <label
9009
- [for]="field.name"
9010
- [ngClass]="{ 'required': field.required() }"
9011
- *sInfoSign="field.infoSign"
9012
- >
9013
- {{ field.label }}
9014
- </label>
9015
-
9016
9145
  <ng-container *sDynamicForm="{ id: id, config: field, group: group}"></ng-container>
9017
9146
 
9018
9147
  <s-control-errors [form]="group" [control]="group.controls[field.name]"
@@ -9070,13 +9199,10 @@ __decorate([
9070
9199
  __decorate([
9071
9200
  Input()
9072
9201
  ], DynamicFieldComponent.prototype, "errorMessages", void 0);
9073
- __decorate([
9074
- Input()
9075
- ], DynamicFieldComponent.prototype, "displayTimeInfoSign", void 0);
9076
9202
  DynamicFieldComponent = __decorate([
9077
9203
  Component({
9078
9204
  selector: "s-dynamic-field",
9079
- template: "<div class=\"ui-fluid\" [formGroup]=\"form\">\n <div class=\"ui-g\">\n <ng-container *ngFor=\"let field of fields\">\n <div\n *ngIf=\"!field.visible || field.visible()\"\n [ngClass]=\"field.gridClass\"\n >\n <span *ngIf=\"field.label\">\n <label\n *sInfoSign=\"\n field.infoSign;\n displayTime: displayTimeInfoSign\n \"\n [for]=\"field.name\"\n [ngClass]=\"{ required: field.required() }\"\n >\n {{ field.label }}\n </label>\n </span>\n\n <ng-container\n *sDynamicForm=\"{\n id: id,\n config: field,\n group: form\n }\"\n ></ng-container>\n\n <s-control-errors\n [form]=\"form\"\n [control]=\"form.controls[field.name]\"\n [errorMessages]=\"getErrorMessages(field.errorMessages)\"\n ></s-control-errors>\n\n <ng-container *ngIf=\"field.footer\">\n <ng-container *ngIf=\"field.footer.help\">\n <span\n *ngIf=\"\n field.footer.help.visible({\n abstractControl: form.controls[field.name],\n formField: field\n })\n \"\n style=\"color: #888b99\"\n >\n {{ field.footer.help.text }}\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"field.footer.link\">\n <div\n *ngIf=\"\n field.footer.link.visible({\n abstractControl: form.controls[field.name],\n formField: field\n })\n \"\n class=\"ui-g\"\n style=\"margin-left: -10px\"\n >\n <s-button\n [label]=\"field.footer.link.label\"\n priority=\"link\"\n (onClick)=\"\n field.footer.link.onClick({\n abstractControl:\n form.controls[field.name],\n formField: field\n })\n \"\n [auxiliary]=\"true\"\n ></s-button>\n </div>\n </ng-container>\n </ng-container>\n\n <ng-template\n *ngIf=\"field?.bottomTemplate\"\n [ngTemplateOutlet]=\"field.bottomTemplate\"\n ></ng-template>\n </div>\n </ng-container>\n </div>\n</div>\n"
9205
+ template: "<div class=\"ui-fluid\" [formGroup]=\"form\">\n <div class=\"ui-g\">\n <ng-container *ngFor=\"let field of fields\">\n <div\n *ngIf=\"!field.visible || field.visible()\"\n [ngClass]=\"field.gridClass\">\n\n <ng-container\n *sDynamicForm=\"{\n id: id,\n config: field,\n group: form\n }\"\n ></ng-container>\n\n <s-control-errors\n [form]=\"form\"\n [control]=\"form.controls[field.name]\"\n [errorMessages]=\"getErrorMessages(field.errorMessages)\"\n ></s-control-errors>\n\n <ng-container *ngIf=\"field.footer\">\n <ng-container *ngIf=\"field.footer.help\">\n <span\n *ngIf=\"\n field.footer.help.visible({\n abstractControl: form.controls[field.name],\n formField: field\n })\n \"\n style=\"color: #888b99\"\n >\n {{ field.footer.help.text }}\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"field.footer.link\">\n <div\n *ngIf=\"\n field.footer.link.visible({\n abstractControl: form.controls[field.name],\n formField: field\n })\n \"\n class=\"ui-g\"\n style=\"margin-left: -10px\"\n >\n <s-button\n [label]=\"field.footer.link.label\"\n priority=\"link\"\n (onClick)=\"\n field.footer.link.onClick({\n abstractControl:\n form.controls[field.name],\n formField: field\n })\n \"\n [auxiliary]=\"true\"\n ></s-button>\n </div>\n </ng-container>\n </ng-container>\n\n <ng-template\n *ngIf=\"field?.bottomTemplate\"\n [ngTemplateOutlet]=\"field.bottomTemplate\"\n ></ng-template>\n </div>\n </ng-container>\n </div>\n</div>\n"
9080
9206
  })
9081
9207
  ], DynamicFieldComponent);
9082
9208
 
@@ -9092,9 +9218,10 @@ var StructureType;
9092
9218
  })(StructureType || (StructureType = {}));
9093
9219
 
9094
9220
  let BignumberFieldComponent = class BignumberFieldComponent extends BaseFieldComponent {
9095
- constructor(localeService) {
9221
+ constructor(localeService, changeDetectorRef) {
9096
9222
  super();
9097
9223
  this.localeService = localeService;
9224
+ this.changeDetectorRef = changeDetectorRef;
9098
9225
  this.onInput = new EventEmitter();
9099
9226
  this.onFocus = new EventEmitter();
9100
9227
  this.onComplete = new EventEmitter();
@@ -9152,9 +9279,13 @@ let BignumberFieldComponent = class BignumberFieldComponent extends BaseFieldCom
9152
9279
  },
9153
9280
  });
9154
9281
  }
9282
+ ngAfterViewInit() {
9283
+ this.changeDetectorRef.detectChanges();
9284
+ }
9155
9285
  };
9156
9286
  BignumberFieldComponent.ctorParameters = () => [
9157
- { type: LocaleService }
9287
+ { type: LocaleService },
9288
+ { type: ChangeDetectorRef }
9158
9289
  ];
9159
9290
  __decorate([
9160
9291
  Input()
@@ -9171,9 +9302,12 @@ __decorate([
9171
9302
  __decorate([
9172
9303
  Output()
9173
9304
  ], BignumberFieldComponent.prototype, "onComplete", void 0);
9305
+ __decorate([
9306
+ ViewChild('inputRef')
9307
+ ], BignumberFieldComponent.prototype, "inputRef", void 0);
9174
9308
  BignumberFieldComponent = __decorate([
9175
9309
  Component({
9176
- template: "<p-inputMask\n *ngIf=\"field.mask; else noMask\"\n type=\"text\"\n [inputId]=\"(field.id || field.name)\"\n [name]=\"field.name\"\n [mask]=\"isFunction(field.mask) ? field.mask() : field.mask\"\n [placeholder]=\"field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl\"\n [autoClear]=\"field.autoClear\">\n</p-inputMask>\n\n<ng-template #noMask>\n <ng-container>\n <div class=\"ui-inputgroup\">\n <ng-container *ngIf=\"field.leftAddon\">\n <span *ngIf=\"field.leftAddon.callback\" class=\"addon-button addon-button--left\">\n <s-button\n [label]=\"field.leftAddon.label\"\n [iconClass]=\"field.leftAddon.icon\"\n [priority]=\"field.leftAddon.priority\"\n [disabled]=\"isFunction(field.leftAddon.disabled) ? field.leftAddon.disabled() : field.leftAddon.disabled\"\n (onClick)=\"field.leftAddon.callback()\">\n </s-button>\n </span>\n <span *ngIf=\"!field.leftAddon.callback\" class=\"ui-inputgroup-addon\">\n <span *ngIf=\"field.leftAddon.label\">{{field.leftAddon.label}}</span>\n <span *ngIf=\"!field.leftAddon.label\" [ngClass]=\"field.leftAddon.icon\"></span>\n </span>\n </ng-container>\n\n <input\n [id]=\"(field.id || field.name)\"\n type=\"text\"\n [name]=\"field.name\"\n sBignumberInput\n [allowNegative]=\"field.allowNegative\"\n [precision]=\"isFunction(field.precision) ? trigger(field.precision) : field.precision\"\n [scale]=\"isFunction(field.scale) ? trigger(field.scale) : field.scale\"\n [decimalSeparator]=\"field.numberLocaleOptions.decimalSeparator\"\n [thousandsSeparator]=\"field.numberLocaleOptions.thousandsSeparator\"\n [alignTo]=\"field.alignTo\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl\" />\n <ng-container *ngIf=\"field.rightAddon\">\n <span *ngIf=\"field.rightAddon.callback\" class=\"addon-button addon-button--right\">\n <s-button\n [label]=\"field.rightAddon.label\"\n [iconClass]=\"field.rightAddon.icon\"\n [priority]=\"field.rightAddon.priority\"\n [disabled]=\"isFunction(field.rightAddon.disabled) ? field.rightAddon.disabled() : field.rightAddon.disabled\"\n (onClick)=\"field.rightAddon.callback()\">\n </s-button>\n </span>\n <span *ngIf=\"!field.rightAddon.callback\" class=\"ui-inputgroup-addon\">\n <span *ngIf=\"field.rightAddon.label\">{{field.rightAddon.label}}</span>\n <span *ngIf=\"!field.rightAddon.label\" [ngClass]=\"field.rightAddon.icon\"></span>\n </span>\n </ng-container>\n </div>\n </ng-container>\n</ng-template>\n",
9310
+ template: "<s-field-label *ngIf=\"inputRef\" [field]=\"field\"\n [fieldContainerRef]=\"inputRef?.nativeElement\"></s-field-label>\n \n<p-inputMask #inputRef\n *ngIf=\"field.mask; else noMask\"\n type=\"text\"\n [inputId]=\"(field.id || field.name)\"\n [name]=\"field.name\"\n [mask]=\"isFunction(field.mask) ? field.mask() : field.mask\"\n [placeholder]=\"field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl\"\n [autoClear]=\"field.autoClear\">\n</p-inputMask>\n\n<ng-template #noMask>\n <ng-container>\n <div class=\"ui-inputgroup\">\n <ng-container *ngIf=\"field.leftAddon\">\n <span *ngIf=\"field.leftAddon.callback\" class=\"addon-button addon-button--left\">\n <s-button\n [label]=\"field.leftAddon.label\"\n [iconClass]=\"field.leftAddon.icon\"\n [priority]=\"field.leftAddon.priority\"\n [disabled]=\"isFunction(field.leftAddon.disabled) ? field.leftAddon.disabled() : field.leftAddon.disabled\"\n (onClick)=\"field.leftAddon.callback()\">\n </s-button>\n </span>\n <span *ngIf=\"!field.leftAddon.callback\" class=\"ui-inputgroup-addon\">\n <span *ngIf=\"field.leftAddon.label\">{{field.leftAddon.label}}</span>\n <span *ngIf=\"!field.leftAddon.label\" [ngClass]=\"field.leftAddon.icon\"></span>\n </span>\n </ng-container>\n\n <input #inputRef\n [id]=\"(field.id || field.name)\"\n type=\"text\"\n [name]=\"field.name\"\n sBignumberInput\n [allowNegative]=\"field.allowNegative\"\n [precision]=\"isFunction(field.precision) ? trigger(field.precision) : field.precision\"\n [scale]=\"isFunction(field.scale) ? trigger(field.scale) : field.scale\"\n [decimalSeparator]=\"field.numberLocaleOptions.decimalSeparator\"\n [thousandsSeparator]=\"field.numberLocaleOptions.thousandsSeparator\"\n [alignTo]=\"field.alignTo\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl\" />\n <ng-container *ngIf=\"field.rightAddon\">\n <span *ngIf=\"field.rightAddon.callback\" class=\"addon-button addon-button--right\">\n <s-button\n [label]=\"field.rightAddon.label\"\n [iconClass]=\"field.rightAddon.icon\"\n [priority]=\"field.rightAddon.priority\"\n [disabled]=\"isFunction(field.rightAddon.disabled) ? field.rightAddon.disabled() : field.rightAddon.disabled\"\n (onClick)=\"field.rightAddon.callback()\">\n </s-button>\n </span>\n <span *ngIf=\"!field.rightAddon.callback\" class=\"ui-inputgroup-addon\">\n <span *ngIf=\"field.rightAddon.label\">{{field.rightAddon.label}}</span>\n <span *ngIf=\"!field.rightAddon.label\" [ngClass]=\"field.rightAddon.icon\"></span>\n </span>\n </ng-container>\n </div>\n </ng-container>\n</ng-template>\n",
9177
9311
  encapsulation: ViewEncapsulation.None,
9178
9312
  styles: ["s-number-field.ng-dirty.ng-invalid .ui-inputtext{border-color:#c13018}s-number-field.ng-dirty.ng-invalid .ui-inputtext:hover{border-color:#e44328}.addon-button{border:1px solid #c1c1cc}.addon-button s-button .s-button-with-text,.addon-button s-button button{height:100%;min-width:40px!important}.addon-button--left{border-radius:5px 0 0 5px;border-right:none}.addon-button--left s-button button{border-bottom-right-radius:0;border-top-right-radius:0}.addon-button--right{border-left:none;border-radius:0 5px 5px 0}.addon-button--right s-button button{border-bottom-left-radius:0;border-top-left-radius:0}"]
9179
9313
  })
@@ -9366,10 +9500,11 @@ CurrencyService = __decorate([
9366
9500
  * @deprecated Should use bignumber instead
9367
9501
  */
9368
9502
  let CurrencyFieldComponent = class CurrencyFieldComponent extends BaseFieldComponent {
9369
- constructor(localeService, currencyService) {
9503
+ constructor(currencyService, localeService, changeDetectorRef) {
9370
9504
  super();
9371
- this.localeService = localeService;
9372
9505
  this.currencyService = currencyService;
9506
+ this.localeService = localeService;
9507
+ this.changeDetectorRef = changeDetectorRef;
9373
9508
  }
9374
9509
  ngOnInit() {
9375
9510
  this.onLocaleService();
@@ -9401,10 +9536,14 @@ let CurrencyFieldComponent = class CurrencyFieldComponent extends BaseFieldCompo
9401
9536
  },
9402
9537
  });
9403
9538
  }
9539
+ ngAfterViewInit() {
9540
+ this.changeDetectorRef.detectChanges();
9541
+ }
9404
9542
  };
9405
9543
  CurrencyFieldComponent.ctorParameters = () => [
9544
+ { type: CurrencyService },
9406
9545
  { type: LocaleService },
9407
- { type: CurrencyService }
9546
+ { type: ChangeDetectorRef }
9408
9547
  ];
9409
9548
  __decorate([
9410
9549
  Input()
@@ -9412,14 +9551,18 @@ __decorate([
9412
9551
  __decorate([
9413
9552
  Input()
9414
9553
  ], CurrencyFieldComponent.prototype, "formControl", void 0);
9554
+ __decorate([
9555
+ ViewChild('inputRef')
9556
+ ], CurrencyFieldComponent.prototype, "inputRef", void 0);
9415
9557
  CurrencyFieldComponent = __decorate([
9416
9558
  Component({
9417
- template: "<div class=\"ui-inputgroup\">\n <span\n *ngIf=\"field.currency || field.numberLocaleOptions?.currencySymbol\"\n class=\"ui-inputgroup-addon\"\n >\n {{\n field.currency\n ? currencyService.getCurrencySymbol({\n currency: field.currency()\n })\n : field.numberLocaleOptions.currencySymbol\n }}\n </span>\n\n <input\n *ngIf=\"!field.mask\"\n type=\"text\"\n [id]=\"field.id || field.name\"\n [name]=\"field.name\"\n [formControl]=\"formControl\"\n sNumberInput\n [precision]=\"\n field.precision\n ? isFunction(field.precision)\n ? trigger(field.precision)\n : field.precision\n : field.currency && field.currency()\n ? currencyService.currencies[field.currency()].precision\n : 15\n \"\n [scale]=\"\n field.scale\n ? isFunction(field.scale)\n ? trigger(field.scale)\n : field.scale\n : field.currency && field.currency()\n ? currencyService.currencies[field.currency()].scale\n : 0\n \"\n [decimalSeparator]=\"field.numberLocaleOptions.decimalSeparator\"\n [thousandsSeparator]=\"field.numberLocaleOptions.thousandsSeparator\"\n [alignTo]=\"field.alignTo\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"field.onFocus ? field.onFocus($event) : null\"\n />\n\n <p-inputMask\n *ngIf=\"field.mask\"\n type=\"text\"\n [inputId]=\"field.id || field.name\"\n [name]=\"field.name\"\n [formControl]=\"formControl\"\n [mask]=\"field.mask\"\n [placeholder]=\"field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onComplete)=\"field.onComplete ? field.onComplete($event) : null\"\n (onInput)=\"field.onInput ? field.onInput($event) : null\"\n ></p-inputMask>\n</div>\n"
9559
+ template: "<s-field-label *ngIf=\"inputRef\" [field]=\"field\"\n [fieldContainerRef]=\"inputRef?.nativeElement\"></s-field-label>\n \n<div class=\"ui-inputgroup\">\n <span\n *ngIf=\"field.currency || field.numberLocaleOptions?.currencySymbol\"\n class=\"ui-inputgroup-addon\"\n >\n {{\n field.currency\n ? currencyService.getCurrencySymbol({\n currency: field.currency()\n })\n : field.numberLocaleOptions.currencySymbol\n }}\n </span>\n <input #inputRef\n *ngIf=\"!field.mask\"\n type=\"text\"\n [id]=\"field.id || field.name\"\n [name]=\"field.name\"\n [formControl]=\"formControl\"\n sNumberInput\n [precision]=\"\n field.precision\n ? isFunction(field.precision)\n ? trigger(field.precision)\n : field.precision\n : field.currency && field.currency()\n ? currencyService.currencies[field.currency()].precision\n : 15\n \"\n [scale]=\"\n field.scale\n ? isFunction(field.scale)\n ? trigger(field.scale)\n : field.scale\n : field.currency && field.currency()\n ? currencyService.currencies[field.currency()].scale\n : 0\n \"\n [decimalSeparator]=\"field.numberLocaleOptions.decimalSeparator\"\n [thousandsSeparator]=\"field.numberLocaleOptions.thousandsSeparator\"\n [alignTo]=\"field.alignTo\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"field.onFocus ? field.onFocus($event): null\" />\n <p-inputMask #inputRef\n *ngIf=\"field.mask\"\n type=\"text\"\n [inputId]=\"field.id || field.name\"\n [name]=\"field.name\"\n [formControl]=\"formControl\"\n [mask]=\"field.mask\"\n [placeholder]=\"field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n (onFocus)=\"field.onFocus ? field.onFocus($event) : null\"\n (onComplete)=\"field.onComplete ? field.onComplete($event) : null\"\n (onInput)=\"field.onInput ? field.onInput($event) : null\"\n ></p-inputMask>\n</div>\n"
9418
9560
  })
9419
9561
  ], CurrencyFieldComponent);
9420
9562
 
9421
9563
  let PasswordFieldComponent = class PasswordFieldComponent {
9422
- constructor() {
9564
+ constructor(changeDetectorRef) {
9565
+ this.changeDetectorRef = changeDetectorRef;
9423
9566
  this.onInput = new EventEmitter();
9424
9567
  this.onFocus = new EventEmitter();
9425
9568
  this.onComplete = new EventEmitter();
@@ -9456,7 +9599,13 @@ let PasswordFieldComponent = class PasswordFieldComponent {
9456
9599
  onChangeVisible() {
9457
9600
  this.passwordVisible = !this.passwordVisible;
9458
9601
  }
9602
+ ngAfterViewInit() {
9603
+ this.changeDetectorRef.detectChanges();
9604
+ }
9459
9605
  };
9606
+ PasswordFieldComponent.ctorParameters = () => [
9607
+ { type: ChangeDetectorRef }
9608
+ ];
9460
9609
  __decorate([
9461
9610
  Input()
9462
9611
  ], PasswordFieldComponent.prototype, "field", void 0);
@@ -9472,17 +9621,21 @@ __decorate([
9472
9621
  __decorate([
9473
9622
  Output()
9474
9623
  ], PasswordFieldComponent.prototype, "onComplete", void 0);
9624
+ __decorate([
9625
+ ViewChild('inputRef')
9626
+ ], PasswordFieldComponent.prototype, "inputRef", void 0);
9475
9627
  PasswordFieldComponent = __decorate([
9476
9628
  Component({
9477
- template: "<div class=\"password-field\" [ngClass]=\"{ 'password-field--toggle': field.showToggle }\">\n <input\n [type]=\"passwordVisible ? 'text' : 'password'\"\n [id]=\"field.id || field.name\"\n class=\"password-input\"\n [name]=\"field.name\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n [maxLength]=\"field.maxLength\"\n pInputText\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [formControl]=\"formControl\"\n [ngStyle]=\"field.style\"\n [sPasswordStrength]=\"field.passwordStrength\"\n [psDescription]=\"field.passwordStrengthOptions?.description\"\n [psWeakTitle]=\"field.passwordStrengthOptions?.weakTitle\"\n [psMediumTitle]=\"field.passwordStrengthOptions?.mediumTitle\"\n [psStrongTitle]=\"field.passwordStrengthOptions?.strongTitle\"\n [psValidation]=\"field.passwordStrengthOptions?.validation\"\n />\n <span *ngIf=\"field.showToggle\" class=\"toggle-button\">\n <s-button\n [iconClass]=\"passwordVisible ? 'fas fa-eye-slash' : 'fas fa-eye'\"\n priority=\"default\"\n (onClick)=\"onChangeVisible()\">\n </s-button>\n </span>\n</div>\n",
9629
+ template: "<s-field-label *ngIf=\"inputRef\" [field]=\"field\"\n [fieldContainerRef]=\"inputRef\"></s-field-label>\n \n<div class=\"password-field\" [ngClass]=\"{ 'password-field--toggle': field.showToggle }\">\n <input #inputRef\n [type]=\"passwordVisible ? 'text' : 'password'\"\n [id]=\"field.id || field.name\"\n class=\"password-input\"\n [name]=\"field.name\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n [maxLength]=\"field.maxLength\"\n pInputText\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [formControl]=\"formControl\"\n [ngStyle]=\"field.style\"\n [sPasswordStrength]=\"field.passwordStrength\"\n [psDescription]=\"field.passwordStrengthOptions?.description\"\n [psWeakTitle]=\"field.passwordStrengthOptions?.weakTitle\"\n [psMediumTitle]=\"field.passwordStrengthOptions?.mediumTitle\"\n [psStrongTitle]=\"field.passwordStrengthOptions?.strongTitle\"\n [psValidation]=\"field.passwordStrengthOptions?.validation\"\n />\n <span *ngIf=\"field.showToggle\" class=\"toggle-button\">\n <s-button\n [iconClass]=\"passwordVisible ? 'fas fa-eye-slash' : 'fas fa-eye'\"\n priority=\"default\"\n (onClick)=\"onChangeVisible()\">\n </s-button>\n </span>\n</div>\n",
9478
9630
  encapsulation: ViewEncapsulation.None,
9479
9631
  styles: ["s-text-field.ng-dirty.ng-invalid .ui-inputtext{border-color:#c13018}s-text-field.ng-dirty.ng-invalid .ui-inputtext:hover{border-color:#e44328}.password-field{display:-ms-flexbox;display:flex}.password-field--toggle .password-input{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.password-field--toggle .toggle-button s-button button{border-bottom-left-radius:0;border-top-left-radius:0}"]
9480
9632
  })
9481
9633
  ], PasswordFieldComponent);
9482
9634
 
9483
9635
  let TextFieldComponent = class TextFieldComponent extends BaseFieldComponent {
9484
- constructor() {
9485
- super(...arguments);
9636
+ constructor(changeDetectorRef) {
9637
+ super();
9638
+ this.changeDetectorRef = changeDetectorRef;
9486
9639
  this.onInput = new EventEmitter();
9487
9640
  this.onFocus = new EventEmitter();
9488
9641
  this.onComplete = new EventEmitter();
@@ -9502,11 +9655,17 @@ let TextFieldComponent = class TextFieldComponent extends BaseFieldComponent {
9502
9655
  this.field.onComplete(event);
9503
9656
  });
9504
9657
  }
9658
+ ngAfterViewInit() {
9659
+ this.changeDetectorRef.detectChanges();
9660
+ }
9505
9661
  ngOnDestroy() {
9506
9662
  this.ngUnsubscribe.next();
9507
9663
  this.ngUnsubscribe.complete();
9508
9664
  }
9509
9665
  };
9666
+ TextFieldComponent.ctorParameters = () => [
9667
+ { type: ChangeDetectorRef }
9668
+ ];
9510
9669
  __decorate([
9511
9670
  Input()
9512
9671
  ], TextFieldComponent.prototype, "field", void 0);
@@ -9522,9 +9681,12 @@ __decorate([
9522
9681
  __decorate([
9523
9682
  Output()
9524
9683
  ], TextFieldComponent.prototype, "onComplete", void 0);
9684
+ __decorate([
9685
+ ViewChild('inputRef')
9686
+ ], TextFieldComponent.prototype, "inputRef", void 0);
9525
9687
  TextFieldComponent = __decorate([
9526
9688
  Component({
9527
- template: "<p-inputMask\n *ngIf=\"field.mask; else noMask\"\n [type]=\"field.inputType || 'text'\"\n [inputId]=\"field.id || field.name\"\n [name]=\"field.name\"\n [mask]=\"isFunction(field.mask) ? field.mask() : field.mask\"\n [placeholder]=\"field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl\"\n [readonly]=\"field.readonly ? field.readonly() : false\">\n</p-inputMask>\n<ng-template #noMask>\n <ng-container>\n <div class=\"ui-inputgroup\">\n\n <ng-container *ngIf=\"field.leftAddon\">\n <span *ngIf=\"field.leftAddon.callback\" class=\"addon-button addon-button--left\">\n <s-button\n [label]=\"field.leftAddon.label\"\n [iconClass]=\"field.leftAddon.icon\"\n [priority]=\"field.leftAddon.priority\"\n [disabled]=\"isFunction(field.leftAddon.disabled) ? field.leftAddon.disabled(): field.leftAddon.disabled\"\n (onClick)=\"field.leftAddon.callback()\">\n </s-button>\n </span>\n <span *ngIf=\"!field.leftAddon.callback\" class=\"ui-inputgroup-addon\">\n <span *ngIf=\"field.leftAddon.label\">{{ field.leftAddon.label }}</span>\n <span *ngIf=\"!field.leftAddon.label\" [ngClass]=\"field.leftAddon.icon\"></span>\n </span>\n </ng-container> \n\n <ng-container *ngTemplateOutlet=\"field.keyFilter ? inputKeyFilter : input\"></ng-container>\n\n <ng-container *ngIf=\"field.rightAddon\">\n <span *ngIf=\"field.rightAddon.callback\" class=\"addon-button addon-button--right\">\n <s-button\n [label]=\"field.rightAddon.label\"\n [iconClass]=\"field.rightAddon.icon\"\n [priority]=\"field.rightAddon.priority\"\n [disabled]=\"isFunction(field.rightAddon.disabled) ? field.rightAddon.disabled() : field.rightAddon.disabled\"\n (onClick)=\"field.rightAddon.callback()\">\n </s-button>\n </span>\n <span *ngIf=\"!field.rightAddon.callback\" class=\"ui-inputgroup-addon\">\n <span *ngIf=\"field.rightAddon.label\">{{ field.rightAddon.label }}</span>\n <span *ngIf=\"!field.rightAddon.label\" [ngClass]=\"field.rightAddon.icon\"></span>\n </span>\n </ng-container> \n </div>\n </ng-container>\n</ng-template>\n<ng-template #input>\n <input\n [type]=\"field.inputType || 'text'\"\n [id]=\"field.id || field.name\"\n [name]=\"field.name\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n [maxLength]=\"field.maxLength\"\n pInputText\n [autocomplete]=\"field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [formControl]=\"formControl\"\n [ngStyle]=\"field.style\"\n [readOnly]=\"field.readonly ? field.readonly() : false\" />\n</ng-template>\n<ng-template #inputKeyFilter>\n <input\n #inputText\n [type]=\"field.inputType || 'text'\"\n [id]=\"field.id || field.name\"\n [name]=\"field.name\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n [maxLength]=\"field.maxLength\"\n pInputText\n [autocomplete]=\"field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [pKeyFilter]=\"field.keyFilter\"\n [formControl]=\"formControl\"\n [ngStyle]=\"field.style\"\n [readOnly]=\"field.readonly ? field.readonly() : false\" />\n</ng-template>\n",
9689
+ template: "<s-field-label *ngIf=\"inputRef\" [field]=\"field\"\n [fieldContainerRef]=\"inputRef?.nativeElement\"></s-field-label>\n\n<p-inputMask #inputRef\n *ngIf=\"field.mask; else noMask\"\n [type]=\"field.inputType || 'text'\"\n [inputId]=\"field.id || field.name\"\n [name]=\"field.name\"\n [mask]=\"isFunction(field.mask) ? field.mask() : field.mask\"\n [placeholder]=\"field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl\"\n [readonly]=\"field.readonly ? field.readonly() : false\">\n</p-inputMask>\n<ng-template #noMask>\n <ng-container>\n <div class=\"ui-inputgroup\">\n\n <ng-container *ngIf=\"field.leftAddon\">\n <span *ngIf=\"field.leftAddon.callback\" class=\"addon-button addon-button--left\">\n <s-button\n [label]=\"field.leftAddon.label\"\n [iconClass]=\"field.leftAddon.icon\"\n [priority]=\"field.leftAddon.priority\"\n [disabled]=\"isFunction(field.leftAddon.disabled) ? field.leftAddon.disabled(): field.leftAddon.disabled\"\n (onClick)=\"field.leftAddon.callback()\">\n </s-button>\n </span>\n <span *ngIf=\"!field.leftAddon.callback\" class=\"ui-inputgroup-addon\">\n <span *ngIf=\"field.leftAddon.label\">{{ field.leftAddon.label }}</span>\n <span *ngIf=\"!field.leftAddon.label\" [ngClass]=\"field.leftAddon.icon\"></span>\n </span>\n </ng-container> \n\n <ng-container *ngTemplateOutlet=\"field.keyFilter ? inputKeyFilter : input\"></ng-container>\n\n <ng-container *ngIf=\"field.rightAddon\">\n <span *ngIf=\"field.rightAddon.callback\" class=\"addon-button addon-button--right\">\n <s-button\n [label]=\"field.rightAddon.label\"\n [iconClass]=\"field.rightAddon.icon\"\n [priority]=\"field.rightAddon.priority\"\n [disabled]=\"isFunction(field.rightAddon.disabled) ? field.rightAddon.disabled() : field.rightAddon.disabled\"\n (onClick)=\"field.rightAddon.callback()\">\n </s-button>\n </span>\n <span *ngIf=\"!field.rightAddon.callback\" class=\"ui-inputgroup-addon\">\n <span *ngIf=\"field.rightAddon.label\">{{ field.rightAddon.label }}</span>\n <span *ngIf=\"!field.rightAddon.label\" [ngClass]=\"field.rightAddon.icon\"></span>\n </span>\n </ng-container> \n </div>\n </ng-container>\n</ng-template>\n<ng-template #input>\n <input #inputRef\n [type]=\"field.inputType || 'text'\"\n [id]=\"field.id || field.name\"\n [name]=\"field.name\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n [maxLength]=\"field.maxLength\"\n pInputText\n [autocomplete]=\"field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [formControl]=\"formControl\"\n [ngStyle]=\"field.style\"\n [readOnly]=\"field.readonly ? field.readonly() : false\" />\n</ng-template>\n<ng-template #inputKeyFilter>\n <input #inputText\n [type]=\"field.inputType || 'text'\"\n [id]=\"field.id || field.name\"\n [name]=\"field.name\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n [maxLength]=\"field.maxLength\"\n pInputText\n [autocomplete]=\"field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n (input)=\"onInput.next($event)\"\n [pKeyFilter]=\"field.keyFilter\"\n [formControl]=\"formControl\"\n [ngStyle]=\"field.style\"\n [readOnly]=\"field.readonly ? field.readonly() : false\" />\n</ng-template>\n",
9528
9690
  encapsulation: ViewEncapsulation.None,
9529
9691
  styles: ["s-text-field.ng-dirty.ng-invalid .ui-inputtext{border-color:#c13018}s-text-field.ng-dirty.ng-invalid .ui-inputtext:hover{border-color:#e44328}.addon-button{border:1px solid #c1c1cc}.addon-button s-button .s-button-with-text,.addon-button s-button button{height:100%;min-width:40px}.addon-button--left{border-radius:5px 0 0 5px;border-right:none}.addon-button--left s-button button{border-bottom-right-radius:0;border-top-right-radius:0}.addon-button--right{border-left:none;border-radius:0 5px 5px 0}.addon-button--right s-button button{border-bottom-left-radius:0;border-top-left-radius:0}"]
9530
9692
  })
@@ -9540,7 +9702,7 @@ __decorate([
9540
9702
  ], ProfilePictureFieldComponent.prototype, "formControl", void 0);
9541
9703
  ProfilePictureFieldComponent = __decorate([
9542
9704
  Component({
9543
- template: "<s-profile-picture-picker\n [formControl]=\"formControl\"\n [simpleTitle]=\"field.simpleTitle\"\n [actionTitle]=\"field.actionTitle\"\n [subtitle]=\"field.subtitle\"\n [aspectRatio]=\"field.aspectRatio\"\n [cropperLabelsConfig]=\"field.cropperLabelsConfig\"\n [removeButtonLabel]=\"field.removeButtonLabel\"\n [changeButtonLabel]=\"field.changeButtonLabel\"\n [confirmationTexts]=\"field.confirmationTexts\"\n [maxFileSize]=\"field.maxFileSize\"\n [accept]=\"field.accept\"\n [supportedExtensions]=\"field.supportedExtensions\"\n (changedImage)=\"field.onChangeImage ? field.onChangeImage($event) : null\"\n (removedImage)=\"field.onRemovedImage ? field.onRemovedImage() : null\"\n (invalidFile)=\"field.onInvalidFile ? field.onInvalidFile($event) : null\">\n</s-profile-picture-picker>"
9705
+ template: "<s-field-label [field]=\"field\"></s-field-label>\n\n<s-profile-picture-picker\n [formControl]=\"formControl\"\n [simpleTitle]=\"field.simpleTitle\"\n [actionTitle]=\"field.actionTitle\"\n [subtitle]=\"field.subtitle\"\n [aspectRatio]=\"field.aspectRatio\"\n [cropperLabelsConfig]=\"field.cropperLabelsConfig\"\n [removeButtonLabel]=\"field.removeButtonLabel\"\n [changeButtonLabel]=\"field.changeButtonLabel\"\n [confirmationTexts]=\"field.confirmationTexts\"\n [maxFileSize]=\"field.maxFileSize\"\n [accept]=\"field.accept\"\n [supportedExtensions]=\"field.supportedExtensions\"\n (changedImage)=\"field.onChangeImage ? field.onChangeImage($event) : null\"\n (removedImage)=\"field.onRemovedImage ? field.onRemovedImage() : null\"\n (invalidFile)=\"field.onInvalidFile ? field.onInvalidFile($event) : null\">\n</s-profile-picture-picker>"
9544
9706
  })
9545
9707
  ], ProfilePictureFieldComponent);
9546
9708
 
@@ -9775,13 +9937,44 @@ DynamicFormDirective.ctorParameters = () => [
9775
9937
  __decorate([
9776
9938
  Input()
9777
9939
  ], DynamicFormDirective.prototype, "sDynamicForm", null);
9778
- __decorate([
9779
- Input("sDynamicFormDisplayTimeInfoSign")
9780
- ], DynamicFormDirective.prototype, "displayTimeInfoSign", void 0);
9781
9940
  DynamicFormDirective = __decorate([
9782
9941
  Directive({ selector: "[sDynamicForm]" })
9783
9942
  ], DynamicFormDirective);
9784
9943
 
9944
+ let FieldLabelComponent = class FieldLabelComponent {
9945
+ constructor() {
9946
+ this.displayTimeInfoSign = 5000;
9947
+ }
9948
+ };
9949
+ __decorate([
9950
+ Input()
9951
+ ], FieldLabelComponent.prototype, "field", void 0);
9952
+ __decorate([
9953
+ Input()
9954
+ ], FieldLabelComponent.prototype, "displayTimeInfoSign", void 0);
9955
+ __decorate([
9956
+ Input()
9957
+ ], FieldLabelComponent.prototype, "fieldContainerRef", void 0);
9958
+ FieldLabelComponent = __decorate([
9959
+ Component({
9960
+ selector: 's-field-label',
9961
+ template: "<span *ngIf=\"field.label\">\n <label\n *sInfoSign=\"\n field.infoSign;\n displayTime: field.displayTimeInfoSign;\n focusedInputRef: fieldContainerRef\n \"\n [for]=\"field.name\"\n [ngClass]=\"{ required: field.required() }\">\n {{ field.label }}\n </label>\n</span>\n"
9962
+ })
9963
+ ], FieldLabelComponent);
9964
+
9965
+ let FieldLabelModule = class FieldLabelModule {
9966
+ };
9967
+ FieldLabelModule = __decorate([
9968
+ NgModule({
9969
+ imports: [
9970
+ CommonModule,
9971
+ InfoSignModule
9972
+ ],
9973
+ declarations: [FieldLabelComponent],
9974
+ exports: [FieldLabelComponent],
9975
+ })
9976
+ ], FieldLabelModule);
9977
+
9785
9978
  let PasswordFieldModule = class PasswordFieldModule {
9786
9979
  };
9787
9980
  PasswordFieldModule = __decorate([
@@ -9794,6 +9987,7 @@ PasswordFieldModule = __decorate([
9794
9987
  TooltipModule,
9795
9988
  PasswordStrengthModule,
9796
9989
  InputTextModule,
9990
+ FieldLabelModule
9797
9991
  ],
9798
9992
  declarations: [PasswordFieldComponent],
9799
9993
  exports: [PasswordFieldComponent],
@@ -9813,6 +10007,7 @@ TextFieldModule = __decorate([
9813
10007
  InputMaskModule,
9814
10008
  InputTextModule,
9815
10009
  KeyFilterModule,
10010
+ FieldLabelModule
9816
10011
  ],
9817
10012
  declarations: [TextFieldComponent],
9818
10013
  exports: [TextFieldComponent],
@@ -9820,9 +10015,11 @@ TextFieldModule = __decorate([
9820
10015
  ], TextFieldModule);
9821
10016
 
9822
10017
  let NumberFieldComponent = class NumberFieldComponent extends BaseFieldComponent {
9823
- constructor(localeService) {
10018
+ constructor(localeService, elementRef, changeDetectorRef) {
9824
10019
  super();
9825
10020
  this.localeService = localeService;
10021
+ this.elementRef = elementRef;
10022
+ this.changeDetectorRef = changeDetectorRef;
9826
10023
  this.onInput = new EventEmitter();
9827
10024
  this.onFocus = new EventEmitter();
9828
10025
  this.onComplete = new EventEmitter();
@@ -9843,6 +10040,10 @@ let NumberFieldComponent = class NumberFieldComponent extends BaseFieldComponent
9843
10040
  this.field.onComplete(event);
9844
10041
  });
9845
10042
  }
10043
+ ngAfterViewInit() {
10044
+ this.setInputRef();
10045
+ this.changeDetectorRef.detectChanges();
10046
+ }
9846
10047
  ngOnDestroy() {
9847
10048
  this.ngUnsubscribe.next();
9848
10049
  this.ngUnsubscribe.complete();
@@ -9880,9 +10081,15 @@ let NumberFieldComponent = class NumberFieldComponent extends BaseFieldComponent
9880
10081
  },
9881
10082
  });
9882
10083
  }
10084
+ setInputRef() {
10085
+ const input = this.elementRef.nativeElement.querySelector("input");
10086
+ this.inputRef = input;
10087
+ }
9883
10088
  };
9884
10089
  NumberFieldComponent.ctorParameters = () => [
9885
- { type: LocaleService }
10090
+ { type: LocaleService },
10091
+ { type: ElementRef },
10092
+ { type: ChangeDetectorRef }
9886
10093
  ];
9887
10094
  __decorate([
9888
10095
  Input()
@@ -9901,7 +10108,7 @@ __decorate([
9901
10108
  ], NumberFieldComponent.prototype, "onComplete", void 0);
9902
10109
  NumberFieldComponent = __decorate([
9903
10110
  Component({
9904
- template: "<p-inputMask\n *ngIf=\"field.mask; else noMask\"\n type=\"text\"\n [inputId]=\"(field.id || field.name)\"\n [name]=\"field.name\"\n [mask]=\"isFunction(field.mask) ? field.mask() : field.mask\"\n [placeholder]=\"field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl\" >\n</p-inputMask>\n<ng-template #noMask>\n <ng-container>\n <div class=\"ui-inputgroup\">\n <ng-container *ngIf=\"field.leftAddon\">\n <span *ngIf=\"field.leftAddon.callback\" class=\"addon-button addon-button--left\">\n <s-button\n [label]=\"field.leftAddon.label\"\n [iconClass]=\"field.leftAddon.icon\"\n [priority]=\"field.leftAddon.priority\"\n [disabled]=\"isFunction(field.leftAddon.disabled) ? field.leftAddon.disabled() : field.leftAddon.disabled\"\n (onClick)=\"field.leftAddon.callback()\">\n </s-button>\n </span>\n <span *ngIf=\"!field.leftAddon.callback\" class=\"ui-inputgroup-addon\">\n <span *ngIf=\"field.leftAddon.label\">{{field.leftAddon.label}}</span>\n <span *ngIf=\"!field.leftAddon.label\" [ngClass]=\"field.leftAddon.icon\"></span>\n </span>\n </ng-container>\n\n <ng-container *ngTemplateOutlet=\"field.type === fieldType.Double && field.alignTo === numberAlignmentOption.LEFT ? localizedNumber : input\"></ng-container>\n\n <ng-container *ngIf=\"field.rightAddon\">\n <span *ngIf=\"field.rightAddon.callback\" class=\"addon-button addon-button--right\">\n <s-button\n [label]=\"field.rightAddon.label\"\n [iconClass]=\"field.rightAddon.icon\"\n [priority]=\"field.rightAddon.priority\"\n [disabled]=\"isFunction(field.rightAddon.disabled) ? field.rightAddon.disabled() : field.rightAddon.disabled\"\n (onClick)=\"field.rightAddon.callback()\">\n </s-button>\n </span>\n <span *ngIf=\"!field.rightAddon.callback\" class=\"ui-inputgroup-addon\">\n <span *ngIf=\"field.rightAddon.label\">{{field.rightAddon.label}}</span>\n <span *ngIf=\"!field.rightAddon.label\" [ngClass]=\"field.rightAddon.icon\"></span>\n </span>\n </ng-container>\n </div>\n </ng-container>\n</ng-template>\n<ng-template #input>\n <input\n [id]=\"(field.id || field.name)\"\n type=\"text\"\n [name]=\"field.name\"\n sNumberInput\n [precision]=\"isFunction(field.precision) ? trigger(field.precision) : field.precision\"\n [scale]=\"isFunction(field.scale) ? trigger(field.scale) : field.scale\"\n [decimalSeparator]=\"field.numberLocaleOptions.decimalSeparator\"\n [thousandsSeparator]=\"field.numberLocaleOptions.thousandsSeparator\"\n [alignTo]=\"field.alignTo\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl\" />\n</ng-template>\n<ng-template #localizedNumber>\n <input\n [id]=\"(field.id || field.name)\"\n type=\"text\"\n [name]=\"field.name\"\n sLocalizedNumberInput\n [precision]=\"isFunction(field.precision) ? trigger(field.precision) : field.precision\"\n [decimalSeparator]=\"field.numberLocaleOptions.decimalSeparator\"\n [thousandsSeparator]=\"field.numberLocaleOptions.thousandsSeparator\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl\" />\n</ng-template>\n",
10111
+ template: "<s-field-label *ngIf=\"inputRef\" [field]=\"field\"\n [fieldContainerRef]=\"inputRef\"></s-field-label>\n\n<p-inputMask #inputRef\n *ngIf=\"field.mask; else noMask\"\n type=\"text\"\n [inputId]=\"(field.id || field.name)\"\n [name]=\"field.name\"\n [mask]=\"isFunction(field.mask) ? field.mask() : field.mask\"\n [placeholder]=\"field.placeholder\"\n slotChar=\"_\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [showDelay]=\"500\"\n styleClass=\"mousetrap\"\n (onBlur)=\"field.onBlur ? field.onBlur($event) : null\"\n (onFocus)=\"onFocus.next($event)\"\n (onComplete)=\"onComplete.next($event)\"\n (onInput)=\"onInput.next($event)\"\n [formControl]=\"formControl\" >\n</p-inputMask>\n<ng-template #noMask>\n <ng-container>\n <div class=\"ui-inputgroup\">\n <ng-container *ngIf=\"field.leftAddon\">\n <span *ngIf=\"field.leftAddon.callback\" class=\"addon-button addon-button--left\">\n <s-button\n [label]=\"field.leftAddon.label\"\n [iconClass]=\"field.leftAddon.icon\"\n [priority]=\"field.leftAddon.priority\"\n [disabled]=\"isFunction(field.leftAddon.disabled) ? field.leftAddon.disabled() : field.leftAddon.disabled\"\n (onClick)=\"field.leftAddon.callback()\">\n </s-button>\n </span>\n <span *ngIf=\"!field.leftAddon.callback\" class=\"ui-inputgroup-addon\">\n <span *ngIf=\"field.leftAddon.label\">{{field.leftAddon.label}}</span>\n <span *ngIf=\"!field.leftAddon.label\" [ngClass]=\"field.leftAddon.icon\"></span>\n </span>\n </ng-container>\n\n <ng-container *ngTemplateOutlet=\"field.type === fieldType.Double && field.alignTo === numberAlignmentOption.LEFT ? localizedNumber : input\"></ng-container>\n\n <ng-container *ngIf=\"field.rightAddon\">\n <span *ngIf=\"field.rightAddon.callback\" class=\"addon-button addon-button--right\">\n <s-button\n [label]=\"field.rightAddon.label\"\n [iconClass]=\"field.rightAddon.icon\"\n [priority]=\"field.rightAddon.priority\"\n [disabled]=\"isFunction(field.rightAddon.disabled) ? field.rightAddon.disabled() : field.rightAddon.disabled\"\n (onClick)=\"field.rightAddon.callback()\">\n </s-button>\n </span>\n <span *ngIf=\"!field.rightAddon.callback\" class=\"ui-inputgroup-addon\">\n <span *ngIf=\"field.rightAddon.label\">{{field.rightAddon.label}}</span>\n <span *ngIf=\"!field.rightAddon.label\" [ngClass]=\"field.rightAddon.icon\"></span>\n </span>\n </ng-container>\n </div>\n </ng-container>\n</ng-template>\n<ng-template #input>\n <input #inputRef\n [id]=\"(field.id || field.name)\"\n type=\"text\"\n [name]=\"field.name\"\n sNumberInput\n [precision]=\"isFunction(field.precision) ? trigger(field.precision) : field.precision\"\n [scale]=\"isFunction(field.scale) ? trigger(field.scale) : field.scale\"\n [decimalSeparator]=\"field.numberLocaleOptions.decimalSeparator\"\n [thousandsSeparator]=\"field.numberLocaleOptions.thousandsSeparator\"\n [alignTo]=\"field.alignTo\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl\" />\n</ng-template>\n<ng-template #localizedNumber>\n <input #inputRef\n [id]=\"(field.id || field.name)\"\n type=\"text\"\n [name]=\"field.name\"\n sLocalizedNumberInput\n [precision]=\"isFunction(field.precision) ? trigger(field.precision) : field.precision\"\n [decimalSeparator]=\"field.numberLocaleOptions.decimalSeparator\"\n [thousandsSeparator]=\"field.numberLocaleOptions.thousandsSeparator\"\n [sTooltip]=\"field.tooltip\"\n tooltipPosition=\"top\"\n [placeholder]=\"field.placeholder\"\n [showDelay]=\"500\"\n pInputText\n [autocomplete]=\"field.browserAutocomplete ? 'on' : 'off'\"\n [ngClass]=\"'mousetrap'\"\n (blur)=\"field.onBlur ? field.onBlur($event) : null\"\n (focus)=\"onFocus.next($event)\"\n [formControl]=\"formControl\" />\n</ng-template>\n",
9905
10112
  encapsulation: ViewEncapsulation.None,
9906
10113
  styles: ["s-number-field.ng-dirty.ng-invalid .ui-inputtext{border-color:#c13018}s-number-field.ng-dirty.ng-invalid .ui-inputtext:hover{border-color:#e44328}.addon-button{border:1px solid #c1c1cc}.addon-button s-button .s-button-with-text,.addon-button s-button button{height:100%;min-width:40px}.addon-button--left{border-radius:5px 0 0 5px;border-right:none}.addon-button--left s-button button{border-bottom-right-radius:0;border-top-right-radius:0}.addon-button--right{border-left:none;border-radius:0 5px 5px 0}.addon-button--right s-button button{border-bottom-left-radius:0;border-top-left-radius:0}"]
9907
10114
  })
@@ -9921,6 +10128,7 @@ NumberFieldModule = __decorate([
9921
10128
  TooltipModule,
9922
10129
  InputMaskModule,
9923
10130
  InputTextModule,
10131
+ FieldLabelModule
9924
10132
  ],
9925
10133
  declarations: [NumberFieldComponent],
9926
10134
  exports: [NumberFieldComponent],
@@ -9931,7 +10139,16 @@ let CurrencyFieldModule = class CurrencyFieldModule {
9931
10139
  };
9932
10140
  CurrencyFieldModule = __decorate([
9933
10141
  NgModule({
9934
- imports: [CommonModule, FormsModule, ReactiveFormsModule, NumberInputModule, TooltipModule, InputMaskModule, InputTextModule],
10142
+ imports: [
10143
+ CommonModule,
10144
+ FormsModule,
10145
+ ReactiveFormsModule,
10146
+ NumberInputModule,
10147
+ TooltipModule,
10148
+ InputMaskModule,
10149
+ InputTextModule,
10150
+ FieldLabelModule
10151
+ ],
9935
10152
  declarations: [CurrencyFieldComponent],
9936
10153
  exports: [CurrencyFieldComponent],
9937
10154
  })
@@ -9950,6 +10167,7 @@ BignumberFieldModule = __decorate([
9950
10167
  TooltipModule,
9951
10168
  InputMaskModule,
9952
10169
  InputTextModule,
10170
+ FieldLabelModule
9953
10171
  ],
9954
10172
  declarations: [BignumberFieldComponent],
9955
10173
  exports: [BignumberFieldComponent],
@@ -10669,6 +10887,7 @@ ProfilePictureModule = __decorate([
10669
10887
  FormsModule,
10670
10888
  ReactiveFormsModule,
10671
10889
  ProfilePicturePickerModule,
10890
+ FieldLabelModule
10672
10891
  ],
10673
10892
  declarations: [ProfilePictureFieldComponent],
10674
10893
  exports: [ProfilePictureFieldComponent],
@@ -10728,6 +10947,7 @@ DynamicFormModule = __decorate([
10728
10947
  CurrencyFieldModule,
10729
10948
  BignumberFieldModule,
10730
10949
  ProfilePictureModule,
10950
+ FieldLabelModule
10731
10951
  ],
10732
10952
  declarations: [
10733
10953
  AutocompleteFieldComponent,
@@ -10920,6 +11140,7 @@ let CustomFieldsComponent = CustomFieldsComponent_1 = class CustomFieldsComponen
10920
11140
  this.formGroup.patchValue(this.parseValuesForFields(this.value));
10921
11141
  this.ready = true;
10922
11142
  });
11143
+ this.addDisplayTimeInfoSignToFields();
10923
11144
  }
10924
11145
  ngAfterViewInit() {
10925
11146
  this.enableOrDisableFields(this.disableFields);
@@ -11323,6 +11544,11 @@ let CustomFieldsComponent = CustomFieldsComponent_1 = class CustomFieldsComponen
11323
11544
  getTranslateLabel(label) {
11324
11545
  return this.translateService.instant(`${this.domain}.${this.service}.${label}`);
11325
11546
  }
11547
+ addDisplayTimeInfoSignToFields() {
11548
+ this.fields.forEach((field) => {
11549
+ field.displayTimeInfoSign = this.displayTimeInfoSign;
11550
+ });
11551
+ }
11326
11552
  };
11327
11553
  CustomFieldsComponent.ctorParameters = () => [
11328
11554
  { type: CustomFieldsService },
@@ -11373,7 +11599,7 @@ __decorate([
11373
11599
  CustomFieldsComponent = CustomFieldsComponent_1 = __decorate([
11374
11600
  Component({
11375
11601
  selector: "s-custom-fields",
11376
- template: "<s-dynamic-form [fields]=\"fields\"\n [form]=\"formGroup\"\n [errorMessages]=\"{pattern: invalidErrorLabel, required: requiredErrorMessage}\"\n [displayTimeInfoSign]=\"displayTimeInfoSign\"></s-dynamic-form>",
11602
+ template: "<s-dynamic-form [fields]=\"fields\"\n [form]=\"formGroup\"\n [errorMessages]=\"{\n pattern: invalidErrorLabel,\n required: requiredErrorMessage}\">\n</s-dynamic-form>",
11377
11603
  providers: [
11378
11604
  {
11379
11605
  provide: NG_VALUE_ACCESSOR,
@@ -17350,5 +17576,5 @@ const fallback = {
17350
17576
  * Generated bundle index. Do not edit.
17351
17577
  */
17352
17578
 
17353
- export { AccordionComponent, AccordionModule, AccordionPanelComponent, AlertComponent, AlertModule, AngularComponentsModule, AutocompleteField, BadgeColors, BadgeComponent, BadgeModule, BaseFieldComponent, BignumberField, BignumberInputDirective, BignumberInputModule, BooleanField, BooleanOptionsLabel, BreadcrumbComponent, BreadcrumbModule, Breakpoints, ButtonComponent, ButtonModule, ButtonPriority, ButtonSize, CalendarField, CalendarLocaleOptions, CalendarMaskDirective, CalendarMaskModule, CardComponent, CardModule, CardTemplateTypes, ChipsField, 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, HostProjectConfigsInjectionToken, IAInsightComponent, IAInsightModule, IAInsightTemplateTypes, ImageCropperComponent, ImageCropperModule, ImageCropperService, InfoSignDirective, InfoSignModule, KanbanComponent, KanbanModule, KanbanTemplateTypes, 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, ObjectCardComponent, ObjectCardFieldComponent, ObjectCardMainComponent, ObjectCardModule, Option, Ordination, PanelComponent, PanelModule, PasswordField, PasswordStrengthComponent, PasswordStrengthDirective, PasswordStrengthModule, PasswordStrengthPositions, PasswordStrengths, ProductHeaderComponent, ProductHeaderModule, ProfilePicturePickerComponent, ProfilePicturePickerModule, ProgressBarColors, ProgressBarComponent, ProgressBarModule, RadioButtonField, RatingScaleComponent, RatingScaleModule, RationButtonOption, RowTogllerDirective, SVGFactoryDirective, SVGFactoryModule, Section, SelectButtonComponent, SelectButtonModule, SelectField, SelectOption, SidebarComponent, SidebarModule, SlidePanelComponent, SlidePanelModule, SplitButtonComponent, SplitButtonModule, SplitButtonType, StatsCardComponent, StatsCardModule, StepState, StepsComponent, StepsModule, Structure, SwitchComponent, SwitchModule, TableFrozenPositionDirective, TableHeaderCheckboxComponent, TableHeaderCheckboxModule, TableModule, TaxCalculationLanguageConfigs, TextAreaField, TextField, Themes, ThumbnailComponent, ThumbnailModule, ThumbnailSize, TieredMenuDirective, TieredMenuModule, TileComponent, TileModule, TimelineComponent, TimelineItem, TimelineItemSeverity, TimelineItemSize, TimelineModule, TokenListComponent, TokenListModule, TooltipModule, TooltipPosition, ValidateErrors, ViewMode, WorkspaceSwitchComponent, WorkspaceSwitchModule, convertToMomentDateFormat, countries, fallback, TooltipComponent as ɵa, TooltipDirective as ɵb, TextFieldComponent as ɵba, NumberFieldModule as ɵbb, LocalizedNumberInputModule as ɵbc, NumberInputModule as ɵbd, NumberFieldComponent as ɵbe, CurrencyFieldModule as ɵbf, CurrencyFieldComponent as ɵbg, BignumberFieldModule as ɵbh, BignumberInputModule as ɵbi, BignumberFieldComponent as ɵbj, ProfilePictureModule as ɵbk, ThumbnailService as ɵbl, StructureModule as ɵbm, HeaderComponent as ɵbn, FooterComponent as ɵbo, ProfilePictureFieldComponent as ɵbp, AutocompleteFieldComponent as ɵbq, BooleanFieldComponent as ɵbr, BooleanSwitchFieldComponent as ɵbs, CalendarFieldComponent as ɵbt, ChipsFieldComponent as ɵbu, CountryPhonePickerFieldComponent as ɵbv, DynamicFieldComponent as ɵbw, DynamicFormDirective as ɵbx, FieldsetComponent as ɵby, FileUploadComponent$1 as ɵbz, TemplateDirective as ɵc, LookupFieldComponent as ɵca, RadioButtonComponent as ɵcb, RowComponent as ɵcc, SectionComponent as ɵcd, SelectFieldComponent as ɵce, SliderFieldComponent as ɵcf, TextAreaFieldComponent as ɵcg, TextAreaIAFieldComponent as ɵch, IAssistService as ɵci, DecimalField as ɵck, SideTableComponent as ɵcl, InfiniteScrollModule as ɵcm, InfiniteScrollDirective as ɵcn, IAInsightSidebarComponent as ɵco, IAInsightCardComponent as ɵcp, IAInsightCardLoaderComponent as ɵcq, KanbanEventService as ɵcr, KanbanItemComponent as ɵcs, KanbanColumnComponent as ɵct, KanbanItemDraggingComponent as ɵcu, NumberLocaleOptions as ɵcv, TieredMenuEventService as ɵcw, TieredMenuService as ɵcx, TieredMenuGlobalService as ɵcy, TieredMenuComponent as ɵcz, TemplateModule as ɵd, TieredMenuNestedComponent as ɵda, TieredMenuItemComponent as ɵdb, TieredMenuDividerComponent as ɵdc, BorderButtonModule as ɵdd, BorderButtonComponent as ɵde, ProgressBarDeterminateComponent as ɵdf, ProgressBarIndeterminateComponent as ɵdg, SelectButtonItemComponent as ɵdh, SlidePanelService as ɵdi, TimelineItemModule as ɵdj, TimelineIconItemComponent as ɵdk, HorizontalTimelineModule as ɵdl, HorizontalTimelineComponent as ɵdm, VerticalTimelineModule as ɵdn, VerticalTimelineComponent as ɵdo, RangeLineComponent as ɵdp, CollapseOptionComponent as ɵdq, CollapsedItemsComponent as ɵdr, VerticalItemsComponent as ɵds, CustomTranslationsModule as ɵe, CodeEditorComponent as ɵf, CoreFacade as ɵg, CodeMirror6Core as ɵh, CountryPhonePickerService as ɵi, LocalizedCurrencyImpurePipe as ɵj, LocalizedBignumberPipe as ɵk, LocalizedBignumberImpurePipe as ɵl, NumericPipe as ɵm, NumericService as ɵn, EmptyStateGoBackComponent as ɵo, IAssistIconComponent as ɵp, SeniorIconComponent as ɵq, DotsIndicatorComponent as ɵr, LoadingIndicatorComponent as ɵs, FileUploadService as ɵt, InfoSignComponent as ɵu, TableColumnsComponent as ɵv, TablePagingComponent as ɵw, PasswordFieldModule as ɵx, PasswordFieldComponent as ɵy, TextFieldModule as ɵz };
17579
+ export { AccordionComponent, AccordionModule, AccordionPanelComponent, AlertComponent, AlertModule, AngularComponentsModule, AutocompleteField, BadgeColors, BadgeComponent, BadgeModule, BaseFieldComponent, BignumberField, BignumberInputDirective, BignumberInputModule, BooleanField, BooleanOptionsLabel, BreadcrumbComponent, BreadcrumbModule, Breakpoints, ButtonComponent, ButtonModule, ButtonPriority, ButtonSize, CalendarField, CalendarLocaleOptions, CalendarMaskDirective, CalendarMaskModule, CardComponent, CardModule, CardTemplateTypes, ChipsField, 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, HostProjectConfigsInjectionToken, IAInsightComponent, IAInsightModule, IAInsightTemplateTypes, ImageCropperComponent, ImageCropperModule, ImageCropperService, InfoSignDirective, InfoSignModule, KanbanComponent, KanbanModule, KanbanTemplateTypes, 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, ProductHeaderComponent, ProductHeaderModule, ProfilePicturePickerComponent, ProfilePicturePickerModule, ProgressBarColors, ProgressBarComponent, ProgressBarModule, RadioButtonField, RatingScaleComponent, RatingScaleModule, RationButtonOption, RowTogllerDirective, SVGFactoryDirective, SVGFactoryModule, Section, SelectButtonComponent, SelectButtonModule, SelectField, SelectOption, SidebarComponent, SidebarModule, SlidePanelComponent, SlidePanelModule, SplitButtonComponent, SplitButtonModule, SplitButtonType, StatsCardComponent, StatsCardModule, StepState, StepsComponent, StepsModule, Structure, SwitchComponent, SwitchModule, TableFrozenPositionDirective, TableHeaderCheckboxComponent, TableHeaderCheckboxModule, TableModule, TaxCalculationLanguageConfigs, TextAreaField, TextField, Themes, ThumbnailComponent, ThumbnailModule, ThumbnailSize, TieredMenuDirective, TieredMenuModule, TileComponent, TileModule, TimelineComponent, TimelineItem, TimelineItemSeverity, TimelineItemSize, TimelineModule, TokenListComponent, TokenListModule, TooltipModule, TooltipPosition, ValidateErrors, ViewMode, WorkspaceSwitchComponent, WorkspaceSwitchModule, convertToMomentDateFormat, countries, fallback, TooltipComponent as ɵa, TooltipDirective as ɵb, PasswordFieldComponent as ɵba, TextFieldModule as ɵbb, TextFieldComponent as ɵbc, NumberFieldModule as ɵbd, LocalizedNumberInputModule as ɵbe, NumberInputModule as ɵbf, NumberFieldComponent as ɵbg, CurrencyFieldModule as ɵbh, CurrencyFieldComponent as ɵbi, BignumberFieldModule as ɵbj, BignumberInputModule as ɵbk, BignumberFieldComponent as ɵbl, ProfilePictureModule as ɵbm, ThumbnailService as ɵbn, StructureModule as ɵbo, HeaderComponent as ɵbp, FooterComponent as ɵbq, ProfilePictureFieldComponent as ɵbr, AutocompleteFieldComponent as ɵbs, BooleanFieldComponent as ɵbt, BooleanSwitchFieldComponent as ɵbu, CalendarFieldComponent as ɵbv, ChipsFieldComponent as ɵbw, CountryPhonePickerFieldComponent as ɵbx, DynamicFieldComponent as ɵby, DynamicFormDirective as ɵbz, TemplateDirective as ɵc, FieldsetComponent as ɵca, FileUploadComponent$1 as ɵcb, LookupFieldComponent as ɵcc, RadioButtonComponent as ɵcd, RowComponent as ɵce, SectionComponent as ɵcf, SelectFieldComponent as ɵcg, SliderFieldComponent as ɵch, TextAreaFieldComponent as ɵci, TextAreaIAFieldComponent as ɵcj, IAssistService as ɵck, DecimalField as ɵcm, SideTableComponent as ɵcn, InfiniteScrollModule as ɵco, InfiniteScrollDirective as ɵcp, IAInsightSidebarComponent as ɵcq, IAInsightCardComponent as ɵcr, IAInsightCardLoaderComponent as ɵcs, KanbanEventService as ɵct, KanbanItemComponent as ɵcu, KanbanColumnComponent as ɵcv, KanbanItemDraggingComponent as ɵcw, NumberLocaleOptions as ɵcx, TieredMenuEventService as ɵcy, TieredMenuService as ɵcz, TemplateModule as ɵd, TieredMenuGlobalService as ɵda, TieredMenuComponent as ɵdb, TieredMenuNestedComponent as ɵdc, TieredMenuItemComponent as ɵdd, TieredMenuDividerComponent as ɵde, BorderButtonModule as ɵdf, BorderButtonComponent as ɵdg, ProgressBarDeterminateComponent as ɵdh, ProgressBarIndeterminateComponent as ɵdi, SelectButtonItemComponent as ɵdj, SlidePanelService as ɵdk, TimelineItemModule as ɵdl, TimelineIconItemComponent as ɵdm, HorizontalTimelineModule as ɵdn, HorizontalTimelineComponent as ɵdo, VerticalTimelineModule as ɵdp, VerticalTimelineComponent as ɵdq, RangeLineComponent as ɵdr, CollapseOptionComponent as ɵds, CollapsedItemsComponent as ɵdt, VerticalItemsComponent as ɵdu, CustomTranslationsModule as ɵe, CodeEditorComponent as ɵf, CoreFacade as ɵg, CodeMirror6Core as ɵh, CountryPhonePickerService as ɵi, LocalizedCurrencyImpurePipe as ɵj, LocalizedBignumberPipe as ɵk, LocalizedBignumberImpurePipe as ɵl, NumericPipe as ɵm, EmptyStateGoBackComponent as ɵn, IAssistIconComponent as ɵo, SeniorIconComponent as ɵp, DotsIndicatorComponent as ɵq, LoadingIndicatorComponent as ɵr, FileUploadService as ɵs, InfoSignComponent as ɵt, TableColumnsComponent as ɵu, TablePagingComponent as ɵv, PasswordFieldModule as ɵw, FieldLabelModule as ɵx, InfoSignModule as ɵy, FieldLabelComponent as ɵz };
17354
17580
  //# sourceMappingURL=seniorsistemas-angular-components.js.map