@seniorsistemas/angular-components 17.17.13 → 17.17.14

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 (27) hide show
  1. package/bundles/seniorsistemas-angular-components.umd.js +63 -51
  2. package/bundles/seniorsistemas-angular-components.umd.js.map +1 -1
  3. package/bundles/seniorsistemas-angular-components.umd.min.js +1 -1
  4. package/bundles/seniorsistemas-angular-components.umd.min.js.map +1 -1
  5. package/components/dynamic-form/configurations/fields/field.d.ts +2 -0
  6. package/components/info-sign/info-sign.directive.d.ts +1 -0
  7. package/components/tooltip/tooltip.directive.d.ts +2 -7
  8. package/esm2015/components/dynamic-form/components/dynamic-field/dynamic-field.component.js +2 -2
  9. package/esm2015/components/dynamic-form/components/field-label/field-label.component.js +2 -2
  10. package/esm2015/components/dynamic-form/components/fields/radio-button/radio-button-field.component.js +9 -2
  11. package/esm2015/components/dynamic-form/components/grid/row/row.component.js +2 -2
  12. package/esm2015/components/dynamic-form/configurations/fields/field.js +3 -2
  13. package/esm2015/components/info-sign/info-sign.directive.js +12 -5
  14. package/esm2015/components/tooltip/tooltip.directive.js +42 -40
  15. package/esm5/components/dynamic-form/components/dynamic-field/dynamic-field.component.js +2 -2
  16. package/esm5/components/dynamic-form/components/field-label/field-label.component.js +2 -2
  17. package/esm5/components/dynamic-form/components/fields/radio-button/radio-button-field.component.js +3 -3
  18. package/esm5/components/dynamic-form/components/grid/row/row.component.js +2 -2
  19. package/esm5/components/dynamic-form/configurations/fields/field.js +3 -2
  20. package/esm5/components/info-sign/info-sign.directive.js +12 -5
  21. package/esm5/components/tooltip/tooltip.directive.js +45 -40
  22. package/fesm2015/seniorsistemas-angular-components.js +66 -50
  23. package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
  24. package/fesm5/seniorsistemas-angular-components.js +63 -51
  25. package/fesm5/seniorsistemas-angular-components.js.map +1 -1
  26. package/package.json +1 -1
  27. package/seniorsistemas-angular-components.metadata.json +1 -1
@@ -387,6 +387,8 @@ var TooltipComponent = /** @class */ (function () {
387
387
  return TooltipComponent;
388
388
  }());
389
389
 
390
+ var isNullOrUndefined = function (value) { return value === null || value === undefined; };
391
+
390
392
  var DEFAULT_TIMER = 300;
391
393
  var DebounceUtils = /** @class */ (function () {
392
394
  function DebounceUtils() {
@@ -461,8 +463,9 @@ var TooltipDirective = /** @class */ (function () {
461
463
  this.visible = true;
462
464
  this.mobileBehavior = MobileBehavior.Pressing;
463
465
  this.componentRef = null;
466
+ this.existFocusedInputRefTooltip = false;
464
467
  this.boundOnWindowMouseMoveFunction = this.onWindowMouseMove.bind(this);
465
- this.debounceCreateTooltipFunction = this.debounceUtils.debounceLeading(function () { return _this.createTootip(); });
468
+ this.debounceCreateTooltipFunction = this.debounceUtils.debounceLeading(function () { return _this._createTooltip(true, true); });
466
469
  }
467
470
  TooltipDirective.prototype.ngOnInit = function () {
468
471
  this.validatePosition();
@@ -483,7 +486,7 @@ var TooltipDirective = /** @class */ (function () {
483
486
  left: Math.min(elementRect.left, toolTipRect.left),
484
487
  bottom: Math.max(elementRect.bottom, toolTipRect.bottom),
485
488
  };
486
- if (this.isMousePositionOutsideOfElement(event.clientX, event.clientY, totalElementArea)) {
489
+ if (this.isMousePositionOutsideOfElement(event.clientX, event.clientY, totalElementArea) && !this.existFocusedInputRefTooltip) {
487
490
  this.destroy();
488
491
  }
489
492
  };
@@ -498,15 +501,17 @@ var TooltipDirective = /** @class */ (function () {
498
501
  if (this.focusedInputRef) {
499
502
  var inputFocus = this.focusedInputRef;
500
503
  var icon_1 = this.getIconFromFocusedInput();
501
- this.renderer.listen(this.focusedInputRef, "focus", function () {
504
+ this.renderer.listen(inputFocus, "focus", function () {
502
505
  if (icon_1) {
503
- _this.createTootipByFocus(icon_1);
506
+ _this.existFocusedInputRefTooltip = true;
507
+ _this._createTooltip(false, false);
504
508
  }
505
509
  });
506
510
  this.renderer.listen(inputFocus, "blur", function () {
507
511
  if (icon_1) {
508
512
  _this.removeTooltip(icon_1);
509
513
  _this.destroy();
514
+ _this.existFocusedInputRefTooltip = false;
510
515
  }
511
516
  });
512
517
  }
@@ -537,7 +542,7 @@ var TooltipDirective = /** @class */ (function () {
537
542
  };
538
543
  TooltipDirective.prototype.onFocus = function () {
539
544
  if (this.tooltipEvent === TooltipEvent.Focus) {
540
- this.createTootip();
545
+ this._createTooltip(true, true);
541
546
  }
542
547
  };
543
548
  TooltipDirective.prototype.onBlur = function () {
@@ -551,14 +556,18 @@ var TooltipDirective = /** @class */ (function () {
551
556
  }
552
557
  };
553
558
  TooltipDirective.prototype.onMouseLeave = function () {
554
- if (this.tooltipEvent === TooltipEvent.Hover) {
559
+ if (this.tooltipEvent === TooltipEvent.Hover && !this.existFocusedInputRefTooltip) {
555
560
  this.destroy();
556
561
  }
557
562
  };
558
563
  TooltipDirective.prototype.onTouchStart = function () {
564
+ var _this = this;
559
565
  if (this.tooltipEvent === TooltipEvent.Hover) {
560
566
  window.clearTimeout(this.touchTimeout);
561
- this.touchTimeout = window.setTimeout(this.createTootip.bind(this), this.mobileBehavior === MobileBehavior.Pressing ? this.showDelay : 0);
567
+ var _delay = this.mobileBehavior === MobileBehavior.Pressing ? this.showDelay : 0;
568
+ this.touchTimeout = window.setTimeout(function () {
569
+ _this._createTooltip(true, true);
570
+ }, _delay);
562
571
  }
563
572
  };
564
573
  TooltipDirective.prototype.onTouchEnd = function () {
@@ -576,43 +585,37 @@ var TooltipDirective = /** @class */ (function () {
576
585
  throw new Error("Tooltip " + this.position + " position is unexpected");
577
586
  }
578
587
  };
579
- TooltipDirective.prototype.createTootip = function () {
580
- var _a;
581
- if (this.componentRef === null && ((_a = this.tooltip) === null || _a === void 0 ? void 0 : _a.length)) {
582
- var domElem = this.getDomElement();
583
- document.body.appendChild(domElem);
584
- this.setTooltipComponentProperties();
585
- this.showTimeout = window.setTimeout(this.showTooltip.bind(this), this.showDelay);
586
- this.tooltipDivElement = domElem.querySelector(".tooltip");
587
- if (this.displayTime) {
588
- window.setTimeout(this.destroy.bind(this), this.displayTime);
589
- }
590
- }
591
- };
592
588
  TooltipDirective.prototype.getDomElement = function () {
593
589
  var componentFactory = this.componentFactoryResolver.resolveComponentFactory(TooltipComponent);
594
590
  this.componentRef = componentFactory.create(this.injector);
595
591
  this.appRef.attachView(this.componentRef.hostView);
596
592
  return this.componentRef.hostView.rootNodes[0];
597
593
  };
598
- /**
599
- * Cria um tooltip para o icone do input em focus.
600
- *
601
- * @param icon O ícone do input em focus.
602
- */
603
- TooltipDirective.prototype.createTootipByFocus = function (icon) {
594
+ TooltipDirective.prototype._createTooltip = function (useShowDelay, autoDestroy) {
604
595
  var _this = this;
596
+ if (useShowDelay === void 0) { useShowDelay = false; }
597
+ if (autoDestroy === void 0) { autoDestroy = true; }
605
598
  var _a;
606
- if (this.componentRef === null && ((_a = this.tooltip) === null || _a === void 0 ? void 0 : _a.length)) {
607
- var domElem = this.getDomElement();
608
- var tooltip_1 = domElem.querySelector(".tooltip");
609
- icon.appendChild(tooltip_1);
610
- this.setTooltipComponentProperties();
611
- this.setTooltipPositionProperty(icon);
612
- setTimeout(function () { return tooltip_1.classList.add("tooltip--visible"); }, 0);
613
- this.renderer.listen(window, "scroll", function () {
614
- _this.setTooltipPositionProperty(icon);
615
- });
599
+ var hasText = ((_a = this.tooltip) === null || _a === void 0 ? void 0 : _a.length) > 0;
600
+ var hasComponentRef = this.componentRef !== null;
601
+ if (!hasText || hasComponentRef) {
602
+ return;
603
+ }
604
+ var domElement = this.getDomElement();
605
+ document.body.appendChild(domElement);
606
+ this.tooltipDivElement = domElement.querySelector(".tooltip");
607
+ this.setTooltipComponentProperties();
608
+ var _showDelay = useShowDelay ? this.showDelay : 0;
609
+ setTimeout(function () {
610
+ _this.showTooltip();
611
+ }, _showDelay);
612
+ this.renderer.listen(window, "scroll", function () {
613
+ _this.setTooltipPositionProperty();
614
+ });
615
+ if (autoDestroy && this.displayTime) {
616
+ setTimeout(function () {
617
+ _this.destroy();
618
+ }, this.displayTime);
616
619
  }
617
620
  };
618
621
  TooltipDirective.prototype.showTooltip = function () {
@@ -622,11 +625,14 @@ var TooltipDirective = /** @class */ (function () {
622
625
  window.addEventListener("mousemove", this.boundOnWindowMouseMoveFunction);
623
626
  }
624
627
  };
625
- TooltipDirective.prototype.setTooltipPositionProperty = function (element) {
628
+ TooltipDirective.prototype.setTooltipPositionProperty = function () {
626
629
  var e_1, _a;
630
+ if (!this.componentRef) {
631
+ return;
632
+ }
627
633
  var margin = 20;
628
634
  var anchorSize = 5;
629
- var domElem = element || this.componentRef.hostView.rootNodes[0].querySelector("#tooltip");
635
+ var domElem = this.componentRef.hostView.rootNodes[0].querySelector("#tooltip");
630
636
  var _b = domElem.getBoundingClientRect(), height = _b.height, width = _b.width;
631
637
  var _c = this.elementRef.nativeElement.getBoundingClientRect(), left = _c.left, right = _c.right, top = _c.top, bottom = _c.bottom;
632
638
  var positions = [
@@ -686,7 +692,7 @@ var TooltipDirective = /** @class */ (function () {
686
692
  }
687
693
  };
688
694
  TooltipDirective.prototype.destroy = function () {
689
- if (this.componentRef !== null) {
695
+ if (!isNullOrUndefined(this.componentRef)) {
690
696
  window.clearTimeout(this.showTimeout);
691
697
  this.appRef.detachView(this.componentRef.hostView);
692
698
  this.componentRef.destroy();
@@ -5245,8 +5251,6 @@ var convertToMomentDateFormat = function (format) {
5245
5251
  .replace(/\byy\b/, "YYYY"); // year (four digits)
5246
5252
  };
5247
5253
 
5248
- var isNullOrUndefined = function (value) { return value === null || value === undefined; };
5249
-
5250
5254
  var CountryPhonePickerComponent = /** @class */ (function () {
5251
5255
  function CountryPhonePickerComponent(_countryPhonePickerService, _translate, _eRef, platformId) {
5252
5256
  var _this = this;
@@ -5641,7 +5645,7 @@ var FieldSize = /** @class */ (function () {
5641
5645
  var Field = /** @class */ (function () {
5642
5646
  function Field(config) {
5643
5647
  var _this = this;
5644
- var _a, _b, _c, _d, _e;
5648
+ var _a, _b, _c, _d, _e, _f;
5645
5649
  if ((_a = config.footer) === null || _a === void 0 ? void 0 : _a.help) {
5646
5650
  config.footer.help = __assign({ visible: function () { return true; } }, (_b = config.footer) === null || _b === void 0 ? void 0 : _b.help);
5647
5651
  }
@@ -5668,6 +5672,7 @@ var Field = /** @class */ (function () {
5668
5672
  this.CustomFieldClass = config.CustomFieldClass;
5669
5673
  this.CustomFieldComponentClass = config.CustomFieldComponentClass;
5670
5674
  this.displayTimeInfoSign = (_e = config.displayTimeInfoSign) !== null && _e !== void 0 ? _e : 5000;
5675
+ this.useInfoSignFocusedInputRef = (_f = config.useInfoSignFocusedInputRef) !== null && _f !== void 0 ? _f : true;
5671
5676
  }
5672
5677
  return Field;
5673
5678
  }());
@@ -7699,6 +7704,7 @@ var InfoSignDirective = /** @class */ (function () {
7699
7704
  this.viewContainer = viewContainer;
7700
7705
  this.componentFactoryResolver = componentFactoryResolver;
7701
7706
  this.displayTime = 5000;
7707
+ this.useFocusedInputRef = true;
7702
7708
  }
7703
7709
  InfoSignDirective.prototype.ngOnChanges = function () {
7704
7710
  this.createInfoSign();
@@ -7716,10 +7722,13 @@ var InfoSignDirective = /** @class */ (function () {
7716
7722
  this.viewContainer.clear();
7717
7723
  var componentFactory = this.componentFactoryResolver.resolveComponentFactory(InfoSignComponent);
7718
7724
  this.componentRef = this.viewContainer.createComponent(componentFactory);
7719
- this.componentRef.instance.templateRef = this.templateRef;
7720
- this.componentRef.instance.tooltip = this.sInfoSign;
7721
- this.componentRef.instance.displayTime = this.displayTime;
7722
- this.componentRef.instance.focusedInputRef = this.focusedInputRef;
7725
+ var _infoSignComponent = this.componentRef.instance;
7726
+ _infoSignComponent.templateRef = this.templateRef;
7727
+ _infoSignComponent.tooltip = this.sInfoSign;
7728
+ _infoSignComponent.displayTime = this.displayTime;
7729
+ if (this.useFocusedInputRef) {
7730
+ _infoSignComponent.focusedInputRef = this.focusedInputRef;
7731
+ }
7723
7732
  }
7724
7733
  else if (this.componentRef && this.sInfoSign) {
7725
7734
  this.componentRef.instance.tooltip = this.sInfoSign;
@@ -7743,6 +7752,9 @@ var InfoSignDirective = /** @class */ (function () {
7743
7752
  __decorate([
7744
7753
  Input('sInfoSignFocusedInputRef')
7745
7754
  ], InfoSignDirective.prototype, "focusedInputRef", void 0);
7755
+ __decorate([
7756
+ Input('sInfoSignUseFocusedInputRef')
7757
+ ], InfoSignDirective.prototype, "useFocusedInputRef", void 0);
7746
7758
  InfoSignDirective = __decorate([
7747
7759
  Directive({
7748
7760
  selector: "[sInfoSign]"
@@ -10760,9 +10772,9 @@ var RadioButtonComponent = /** @class */ (function () {
10760
10772
  ], RadioButtonComponent.prototype, "onFocus", void 0);
10761
10773
  RadioButtonComponent = __decorate([
10762
10774
  Component({
10763
- 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",
10775
+ 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 horizontal-radio-buttons-container\">\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 class=\"radio-button-item\"\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",
10764
10776
  encapsulation: ViewEncapsulation.None,
10765
- styles: ["\n s-button.horizontal-clear-option button {\n width: min-content !important;\n }\n "]
10777
+ styles: ["\n s-button.horizontal-clear-option button {\n width: min-content !important;\n }\n\n .horizontal-radio-buttons-container {\n gap: 20px 40px;\n .radio-button-item {\n margin: 0;\n }\n }\n "]
10766
10778
  })
10767
10779
  ], RadioButtonComponent);
10768
10780
  return RadioButtonComponent;
@@ -11084,7 +11096,7 @@ var RowComponent = /** @class */ (function () {
11084
11096
  ], RowComponent.prototype, "errorMessages", void 0);
11085
11097
  RowComponent = __decorate([
11086
11098
  Component({
11087
- template: "\n <div class=\"ui-fluid\" [formGroup]=\"group\">\n <div class=\"ui-g\">\n <ng-container *ngFor=\"let field of config.fields\">\n <div [ngClass]=\"field.gridClass\" *ngIf=\"field.visible()\">\n <ng-container *ngIf=\"field.type === FieldType.Custom && field.label\" >\n <label *sInfoSign=\"field.infoSign\" [for]=\"field.name\" [ngClass]=\"{ required: field.required() }\" >\n {{ field.label }}\n </label>\n </ng-container>\n\n <ng-container *sDynamicForm=\"{ id: id, config: field, group: group}\"></ng-container>\n\n <s-control-errors [form]=\"group\" [control]=\"group.controls[field.name]\"\n [errorMessages]=\"getErrorMessages(field.errorMessages)\"></s-control-errors>\n\n <ng-container *ngIf=\"field.footer\">\n <ng-container *ngIf=\"field.footer.help\">\n <span *ngIf=\"field.footer.help.visible({ abstractControl: group.controls[field.name], formField: field })\" style=\"color: #888B99\">{{ field.footer.help.text }}</span>\n </ng-container>\n\n <ng-container *ngIf=\"field.footer.link\">\n <div\n *ngIf=\"field.footer.link.visible({ abstractControl: group.controls[field.name], formField: field })\"\n class=\"ui-g\"\n style=\"margin-left: -17px\"\n >\n <s-button\n [label]=\"field.footer.link.label\"\n priority=\"link\"\n (onClick)=\"field.footer.link.onClick({ abstractControl: group.controls[field.name], formField: field })\"\n [auxiliary]=\"true\"\n ></s-button>\n </div>\n </ng-container>\n </ng-container>\n\n <ng-template *ngIf=\"field?.bottomTemplate\" [ngTemplateOutlet]=\"field.bottomTemplate\"></ng-template>\n </div>\n </ng-container>\n </div>\n "
11099
+ template: "\n <div class=\"ui-fluid\" [formGroup]=\"group\">\n <div class=\"ui-g\">\n <ng-container *ngFor=\"let field of config.fields\">\n <div [ngClass]=\"field.gridClass\" *ngIf=\"field.visible()\">\n <ng-container *ngIf=\"field.type === FieldType.Custom && field.label\" >\n <label *sInfoSign=\"field.infoSign; displayTime: field.displayTimeInfoSign; useFocusedInputRef: field.useInfoSignFocusedInputRef\" [for]=\"field.name\" [ngClass]=\"{ required: field.required() }\" >\n {{ field.label }}\n </label>\n </ng-container>\n\n <ng-container *sDynamicForm=\"{ id: id, config: field, group: group}\"></ng-container>\n\n <s-control-errors [form]=\"group\" [control]=\"group.controls[field.name]\"\n [errorMessages]=\"getErrorMessages(field.errorMessages)\"></s-control-errors>\n\n <ng-container *ngIf=\"field.footer\">\n <ng-container *ngIf=\"field.footer.help\">\n <span *ngIf=\"field.footer.help.visible({ abstractControl: group.controls[field.name], formField: field })\" style=\"color: #888B99\">{{ field.footer.help.text }}</span>\n </ng-container>\n\n <ng-container *ngIf=\"field.footer.link\">\n <div\n *ngIf=\"field.footer.link.visible({ abstractControl: group.controls[field.name], formField: field })\"\n class=\"ui-g\"\n style=\"margin-left: -17px\"\n >\n <s-button\n [label]=\"field.footer.link.label\"\n priority=\"link\"\n (onClick)=\"field.footer.link.onClick({ abstractControl: group.controls[field.name], formField: field })\"\n [auxiliary]=\"true\"\n ></s-button>\n </div>\n </ng-container>\n </ng-container>\n\n <ng-template *ngIf=\"field?.bottomTemplate\" [ngTemplateOutlet]=\"field.bottomTemplate\"></ng-template>\n </div>\n </ng-container>\n </div>\n "
11088
11100
  })
11089
11101
  ], RowComponent);
11090
11102
  return RowComponent;
@@ -11118,7 +11130,7 @@ var DynamicFieldComponent = /** @class */ (function () {
11118
11130
  DynamicFieldComponent = __decorate([
11119
11131
  Component({
11120
11132
  selector: "s-dynamic-field",
11121
- 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 *ngIf=\"field.label && field.type === FieldType.Custom\">\n <label\n *sInfoSign=\"\n field.infoSign;\n displayTime: field.displayTimeInfoSign\n \"\n [for]=\"field.name\"\n [ngClass]=\"{ required: field.required() }\"\n >\n {{ field.label }}\n </label>\n </ng-container>\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"
11133
+ 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 *ngIf=\"field.label && field.type === FieldType.Custom\">\n <label\n *sInfoSign=\"field.infoSign; displayTime: field.displayTimeInfoSign; useFocusedInputRef: field.useInfoSignFocusedInputRef\"\n [for]=\"field.name\"\n [ngClass]=\"{ required: field.required() }\"\n >\n {{ field.label }}\n </label>\n </ng-container>\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"
11122
11134
  })
11123
11135
  ], DynamicFieldComponent);
11124
11136
  return DynamicFieldComponent;
@@ -11890,7 +11902,7 @@ var FieldLabelComponent = /** @class */ (function () {
11890
11902
  FieldLabelComponent = __decorate([
11891
11903
  Component({
11892
11904
  selector: 's-field-label',
11893
- template: "<!--\n Caso esse componente seja alterado/removido/movido,\n alterar a label no row.component.ts e dynamic-field.component.ts\n-->\n\n<span *ngIf=\"field.label\">\n <label\n *sInfoSign=\"field.infoSign; displayTime: field.displayTimeInfoSign; focusedInputRef: fieldContainerRef\"\n [for]=\"field.name\"\n [ngClass]=\"{ required: field.required() }\"\n >\n {{ field.label }}\n </label>\n</span>\n"
11905
+ template: "<!--\n Caso esse componente seja alterado/removido/movido,\n alterar a label no row.component.ts e dynamic-field.component.ts\n-->\n\n<span *ngIf=\"field.label\">\n <label\n *sInfoSign=\"field.infoSign; displayTime: field.displayTimeInfoSign; focusedInputRef: fieldContainerRef; useFocusedInputRef: field.useInfoSignFocusedInputRef\"\n [for]=\"field.name\"\n [ngClass]=\"{ required: field.required() }\"\n >\n {{ field.label }}\n </label>\n</span>\n"
11894
11906
  })
11895
11907
  ], FieldLabelComponent);
11896
11908
  return FieldLabelComponent;