@seniorsistemas/angular-components 17.16.13 → 17.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/bundles/seniorsistemas-angular-components.umd.js +366 -9
  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/chips/chip-item/chip-item.component.d.ts +22 -0
  6. package/components/chips/chips/chips.component.d.ts +55 -0
  7. package/components/chips/chips.module.d.ts +2 -0
  8. package/components/chips/index.d.ts +3 -0
  9. package/components/chips/models/chip-models.d.ts +7 -0
  10. package/components/dynamic-form/components/dynamic-field/dynamic-field.component.d.ts +2 -0
  11. package/components/dynamic-form/components/field-label/field-label.component.d.ts +2 -3
  12. package/components/dynamic-form/components/grid/row/row.component.d.ts +2 -0
  13. package/components/index.d.ts +1 -0
  14. package/components/shared/helpers.d.ts +18 -0
  15. package/components/shared/index.d.ts +1 -0
  16. package/esm2015/components/chips/chip-item/chip-item.component.js +68 -0
  17. package/esm2015/components/chips/chips/chips.component.js +228 -0
  18. package/esm2015/components/chips/chips.module.js +24 -0
  19. package/esm2015/components/chips/index.js +3 -0
  20. package/esm2015/components/chips/models/chip-models.js +1 -0
  21. package/esm2015/components/dynamic-form/components/dynamic-field/dynamic-field.component.js +6 -2
  22. package/esm2015/components/dynamic-form/components/field-label/field-label.component.js +2 -8
  23. package/esm2015/components/dynamic-form/components/grid/row/row.component.js +11 -2
  24. package/esm2015/components/dynamic-form/configurations/fields/field.js +3 -3
  25. package/esm2015/components/dynamic-form/index.js +1 -1
  26. package/esm2015/components/index.js +2 -1
  27. package/esm2015/components/shared/helpers.js +30 -0
  28. package/esm2015/components/shared/index.js +2 -1
  29. package/esm2015/seniorsistemas-angular-components.js +2 -1
  30. package/esm5/components/chips/chip-item/chip-item.component.js +77 -0
  31. package/esm5/components/chips/chips/chips.component.js +235 -0
  32. package/esm5/components/chips/chips.module.js +27 -0
  33. package/esm5/components/chips/index.js +3 -0
  34. package/esm5/components/chips/models/chip-models.js +1 -0
  35. package/esm5/components/dynamic-form/components/dynamic-field/dynamic-field.component.js +4 -2
  36. package/esm5/components/dynamic-form/components/field-label/field-label.component.js +2 -6
  37. package/esm5/components/dynamic-form/components/grid/row/row.component.js +4 -2
  38. package/esm5/components/dynamic-form/configurations/fields/field.js +3 -3
  39. package/esm5/components/dynamic-form/index.js +1 -1
  40. package/esm5/components/index.js +2 -1
  41. package/esm5/components/shared/helpers.js +35 -0
  42. package/esm5/components/shared/index.js +2 -1
  43. package/esm5/seniorsistemas-angular-components.js +2 -1
  44. package/fesm2015/seniorsistemas-angular-components.js +350 -14
  45. package/fesm2015/seniorsistemas-angular-components.js.map +1 -1
  46. package/fesm5/seniorsistemas-angular-components.js +365 -12
  47. package/fesm5/seniorsistemas-angular-components.js.map +1 -1
  48. package/package.json +1 -1
  49. package/seniorsistemas-angular-components.d.ts +1 -0
  50. package/seniorsistemas-angular-components.metadata.json +1 -1
@@ -5628,7 +5628,7 @@
5628
5628
  var Field = /** @class */ (function () {
5629
5629
  function Field(config) {
5630
5630
  var _this = this;
5631
- var _a, _b, _c, _d;
5631
+ var _a, _b, _c, _d, _e;
5632
5632
  if ((_a = config.footer) === null || _a === void 0 ? void 0 : _a.help) {
5633
5633
  config.footer.help = __assign({ visible: function () { return true; } }, (_b = config.footer) === null || _b === void 0 ? void 0 : _b.help);
5634
5634
  }
@@ -5654,7 +5654,7 @@
5654
5654
  this.representedBy = config.representedBy;
5655
5655
  this.CustomFieldClass = config.CustomFieldClass;
5656
5656
  this.CustomFieldComponentClass = config.CustomFieldComponentClass;
5657
- this.displayTimeInfoSign = config.displayTimeInfoSign;
5657
+ this.displayTimeInfoSign = (_e = config.displayTimeInfoSign) !== null && _e !== void 0 ? _e : 5000;
5658
5658
  }
5659
5659
  return Field;
5660
5660
  }());
@@ -11061,6 +11061,7 @@
11061
11061
 
11062
11062
  var RowComponent = /** @class */ (function () {
11063
11063
  function RowComponent() {
11064
+ this.FieldType = exports.FieldType;
11064
11065
  }
11065
11066
  RowComponent.prototype.ngOnInit = function () { };
11066
11067
  RowComponent.prototype.getErrorMessages = function (errorMessages) {
@@ -11085,7 +11086,7 @@
11085
11086
  ], RowComponent.prototype, "errorMessages", void 0);
11086
11087
  RowComponent = __decorate([
11087
11088
  core.Component({
11088
- 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 *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 "
11089
+ 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 "
11089
11090
  })
11090
11091
  ], RowComponent);
11091
11092
  return RowComponent;
@@ -11093,6 +11094,7 @@
11093
11094
 
11094
11095
  var DynamicFieldComponent = /** @class */ (function () {
11095
11096
  function DynamicFieldComponent() {
11097
+ this.FieldType = exports.FieldType;
11096
11098
  }
11097
11099
  DynamicFieldComponent.prototype.getErrorMessages = function (errorMessages) {
11098
11100
  if (errorMessages)
@@ -11118,7 +11120,7 @@
11118
11120
  DynamicFieldComponent = __decorate([
11119
11121
  core.Component({
11120
11122
  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\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"
11123
+ 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"
11122
11124
  })
11123
11125
  ], DynamicFieldComponent);
11124
11126
  return DynamicFieldComponent;
@@ -11880,21 +11882,17 @@
11880
11882
 
11881
11883
  var FieldLabelComponent = /** @class */ (function () {
11882
11884
  function FieldLabelComponent() {
11883
- this.displayTimeInfoSign = 5000;
11884
11885
  }
11885
11886
  __decorate([
11886
11887
  core.Input()
11887
11888
  ], FieldLabelComponent.prototype, "field", void 0);
11888
- __decorate([
11889
- core.Input()
11890
- ], FieldLabelComponent.prototype, "displayTimeInfoSign", void 0);
11891
11889
  __decorate([
11892
11890
  core.Input()
11893
11891
  ], FieldLabelComponent.prototype, "fieldContainerRef", void 0);
11894
11892
  FieldLabelComponent = __decorate([
11895
11893
  core.Component({
11896
11894
  selector: 's-field-label',
11897
- 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"
11895
+ 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"
11898
11896
  })
11899
11897
  ], FieldLabelComponent);
11900
11898
  return FieldLabelComponent;
@@ -18340,6 +18338,41 @@
18340
18338
  return SelectButtonModule;
18341
18339
  }());
18342
18340
 
18341
+ /**
18342
+ * A decorator that can be used to disable functions based on a boolean property on the component.
18343
+ *
18344
+ * @param disabledField The name of the boolean property that will be used to determine if the decorated
18345
+ * function should be disabled. Defaults to 'disabled'.
18346
+ * @returns A decorator function that can be used to decorate a function.
18347
+ *
18348
+ * @example
18349
+ * class MyComponent {
18350
+ * disabled = true;
18351
+ *
18352
+ * @CheckDisabled()
18353
+ * onClick() {
18354
+ * console.log('Button was clicked');
18355
+ * }
18356
+ * }
18357
+ */
18358
+ function CheckDisabled(disabledField) {
18359
+ if (disabledField === void 0) { disabledField = 'disabled'; }
18360
+ return function (_target, _propertyKey, descriptor) {
18361
+ var originalMethod = descriptor.value;
18362
+ descriptor.value = function () {
18363
+ var args = [];
18364
+ for (var _i = 0; _i < arguments.length; _i++) {
18365
+ args[_i] = arguments[_i];
18366
+ }
18367
+ if (this[disabledField]) {
18368
+ return;
18369
+ }
18370
+ return originalMethod.apply(this, args);
18371
+ };
18372
+ return descriptor;
18373
+ };
18374
+ }
18375
+
18343
18376
  var SidebarComponent = /** @class */ (function () {
18344
18377
  function SidebarComponent(focusTrapFactory) {
18345
18378
  this.focusTrapFactory = focusTrapFactory;
@@ -20644,6 +20677,326 @@
20644
20677
  return PicklistModule;
20645
20678
  }());
20646
20679
 
20680
+ var ChipsComponent = /** @class */ (function () {
20681
+ function ChipsComponent(cdr) {
20682
+ this.cdr = cdr;
20683
+ this.newItem = '';
20684
+ this.value = [];
20685
+ this.placeholder = '';
20686
+ this.inputId = "chips-" + ChipsComponent_1._id++;
20687
+ this.allowDuplicated = true;
20688
+ this.caseSensitiveDuplication = false;
20689
+ this.addOnTab = true;
20690
+ this.addOnBlur = true;
20691
+ this.autofocus = false;
20692
+ this.infoLabel = '';
20693
+ this.showTooltip = true;
20694
+ this.maxLengthRenderWithoutTooltip = 20;
20695
+ this.onAdd = new core.EventEmitter();
20696
+ this.onRemove = new core.EventEmitter();
20697
+ this.onFocus = new core.EventEmitter();
20698
+ this.onBlur = new core.EventEmitter();
20699
+ this.onChipClick = new core.EventEmitter();
20700
+ this.valueChange = new core.EventEmitter();
20701
+ this.isTabEventActive = false;
20702
+ this.onChange = function () { };
20703
+ this.onTouched = function () { };
20704
+ }
20705
+ ChipsComponent_1 = ChipsComponent;
20706
+ ChipsComponent.prototype.ngAfterViewInit = function () {
20707
+ var _a;
20708
+ if (this.autofocus && this.input) {
20709
+ this.input.nativeElement.focus();
20710
+ }
20711
+ this.chipTemplate = (_a = this.templates.find(function (x) { return x.type === 'chip-container'; })) === null || _a === void 0 ? void 0 : _a.template;
20712
+ this.cdr.detectChanges();
20713
+ };
20714
+ ChipsComponent.prototype.writeValue = function (obj) {
20715
+ this.value = obj;
20716
+ };
20717
+ ChipsComponent.prototype.registerOnChange = function (fn) {
20718
+ this.onChange = fn;
20719
+ };
20720
+ ChipsComponent.prototype.registerOnTouched = function (fn) {
20721
+ this.onTouched = fn;
20722
+ };
20723
+ ChipsComponent.prototype.setDisabledState = function (isDisabled) {
20724
+ this.disabled = isDisabled;
20725
+ };
20726
+ ChipsComponent.prototype.onKeydown = function ($event) {
20727
+ var _this = this;
20728
+ var isEnter = $event.key === 'Enter';
20729
+ var isSeparator = this.separator && $event.key === this.separator;
20730
+ var eventKeyIsTab = $event.key === 'Tab';
20731
+ if (eventKeyIsTab) {
20732
+ this.isTabEventActive = true;
20733
+ setTimeout(function () {
20734
+ _this.isTabEventActive = false;
20735
+ }, 50);
20736
+ }
20737
+ var isTab = this.addOnTab && eventKeyIsTab;
20738
+ if (isEnter || isSeparator || isTab) {
20739
+ $event.preventDefault();
20740
+ this.addItem();
20741
+ }
20742
+ };
20743
+ ChipsComponent.prototype.onInputFocus = function ($event) {
20744
+ this.onFocus.emit($event);
20745
+ };
20746
+ ChipsComponent.prototype.onInputLostFocus = function ($event) {
20747
+ if (!this.addOnBlur || this.isTabEventActive) {
20748
+ return;
20749
+ }
20750
+ this.addItem();
20751
+ this.onBlur.emit($event);
20752
+ };
20753
+ ChipsComponent.prototype.removeItem = function (_a) {
20754
+ var itemIndex = _a.itemIndex, event = _a.event;
20755
+ var _removedItem = this.value[itemIndex];
20756
+ this.value.splice(itemIndex, 1);
20757
+ this.onRemove.emit({ value: _removedItem, originalEvent: event });
20758
+ };
20759
+ ChipsComponent.prototype.chipClicked = function (_a) {
20760
+ var event = _a.event, data = _a.data;
20761
+ this.onChipClick.emit({ value: data, originalEvent: event });
20762
+ };
20763
+ ChipsComponent.prototype.addItem = function () {
20764
+ var _a;
20765
+ var _this = this;
20766
+ var hasValue = !!this.newItem;
20767
+ if (!hasValue) {
20768
+ return;
20769
+ }
20770
+ if (this.max && this.value.length === this.max) {
20771
+ return;
20772
+ }
20773
+ var validItemLength = this.maxLength ? this.newItem.length <= this.maxLength : true;
20774
+ if (!validItemLength) {
20775
+ return;
20776
+ }
20777
+ var hasField = !!this.field;
20778
+ var _mappedValues = this.field ? this.value.map(function (x) { return x[_this.field]; }) : this.value;
20779
+ var valueToAdd = hasField ? (_a = {}, _a[this.field] = this.newItem, _a) : this.newItem;
20780
+ var duplicatedItem = _mappedValues.find(function (x) {
20781
+ if (_this.caseSensitiveDuplication) {
20782
+ return x === _this.newItem;
20783
+ }
20784
+ else {
20785
+ return x.toLowerCase() === _this.newItem.toLowerCase();
20786
+ }
20787
+ });
20788
+ var hasDuplicatedItem = false;
20789
+ if (!this.allowDuplicated) {
20790
+ hasDuplicatedItem = duplicatedItem ? Boolean(duplicatedItem) : false;
20791
+ }
20792
+ if (!hasDuplicatedItem) {
20793
+ this.storeValue(valueToAdd);
20794
+ }
20795
+ this.newItem = '';
20796
+ };
20797
+ ChipsComponent.prototype.storeValue = function (value) {
20798
+ this.value = __spread(this.value, [value]);
20799
+ this.onAdd.emit({ value: value });
20800
+ this.valueChange.emit(this.value);
20801
+ this.writeValue(this.value);
20802
+ this.onChange(this.value);
20803
+ this.onTouched(this.value);
20804
+ };
20805
+ var ChipsComponent_1;
20806
+ ChipsComponent._id = 0;
20807
+ ChipsComponent.ctorParameters = function () { return [
20808
+ { type: core.ChangeDetectorRef }
20809
+ ]; };
20810
+ __decorate([
20811
+ core.Input()
20812
+ ], ChipsComponent.prototype, "disabled", void 0);
20813
+ __decorate([
20814
+ core.Input()
20815
+ ], ChipsComponent.prototype, "field", void 0);
20816
+ __decorate([
20817
+ core.Input()
20818
+ ], ChipsComponent.prototype, "value", void 0);
20819
+ __decorate([
20820
+ core.Input()
20821
+ ], ChipsComponent.prototype, "placeholder", void 0);
20822
+ __decorate([
20823
+ core.Input()
20824
+ ], ChipsComponent.prototype, "max", void 0);
20825
+ __decorate([
20826
+ core.Input()
20827
+ ], ChipsComponent.prototype, "maxLength", void 0);
20828
+ __decorate([
20829
+ core.Input()
20830
+ ], ChipsComponent.prototype, "inputId", void 0);
20831
+ __decorate([
20832
+ core.Input()
20833
+ ], ChipsComponent.prototype, "allowDuplicated", void 0);
20834
+ __decorate([
20835
+ core.Input()
20836
+ ], ChipsComponent.prototype, "caseSensitiveDuplication", void 0);
20837
+ __decorate([
20838
+ core.Input()
20839
+ ], ChipsComponent.prototype, "addOnTab", void 0);
20840
+ __decorate([
20841
+ core.Input()
20842
+ ], ChipsComponent.prototype, "addOnBlur", void 0);
20843
+ __decorate([
20844
+ core.Input()
20845
+ ], ChipsComponent.prototype, "separator", void 0);
20846
+ __decorate([
20847
+ core.Input()
20848
+ ], ChipsComponent.prototype, "autofocus", void 0);
20849
+ __decorate([
20850
+ core.Input()
20851
+ ], ChipsComponent.prototype, "infoLabel", void 0);
20852
+ __decorate([
20853
+ core.Input()
20854
+ ], ChipsComponent.prototype, "keyFilter", void 0);
20855
+ __decorate([
20856
+ core.Input()
20857
+ ], ChipsComponent.prototype, "showTooltip", void 0);
20858
+ __decorate([
20859
+ core.Input()
20860
+ ], ChipsComponent.prototype, "maxLengthRenderWithoutTooltip", void 0);
20861
+ __decorate([
20862
+ core.Output()
20863
+ ], ChipsComponent.prototype, "onAdd", void 0);
20864
+ __decorate([
20865
+ core.Output()
20866
+ ], ChipsComponent.prototype, "onRemove", void 0);
20867
+ __decorate([
20868
+ core.Output()
20869
+ ], ChipsComponent.prototype, "onFocus", void 0);
20870
+ __decorate([
20871
+ core.Output()
20872
+ ], ChipsComponent.prototype, "onBlur", void 0);
20873
+ __decorate([
20874
+ core.Output()
20875
+ ], ChipsComponent.prototype, "onChipClick", void 0);
20876
+ __decorate([
20877
+ core.Output()
20878
+ ], ChipsComponent.prototype, "valueChange", void 0);
20879
+ __decorate([
20880
+ core.ContentChildren(TemplateDirective)
20881
+ ], ChipsComponent.prototype, "templates", void 0);
20882
+ __decorate([
20883
+ core.ViewChild('input', { read: core.ElementRef })
20884
+ ], ChipsComponent.prototype, "input", void 0);
20885
+ __decorate([
20886
+ core.HostListener("document:keydown", ["$event"]),
20887
+ CheckDisabled()
20888
+ ], ChipsComponent.prototype, "onKeydown", null);
20889
+ __decorate([
20890
+ CheckDisabled()
20891
+ ], ChipsComponent.prototype, "onInputLostFocus", null);
20892
+ ChipsComponent = ChipsComponent_1 = __decorate([
20893
+ core.Component({
20894
+ selector: 's-chips',
20895
+ template: "<ul class=\"chips-container\">\n <li *ngFor=\"let item of value; let index = index\">\n <s-chip-item\n [templateRef]=\"chipTemplate\"\n [dataRender]=\"item\"\n [objectField]=\"field\"\n [itemIndex]=\"index\"\n [disabled]=\"disabled\"\n [showTooltip]=\"showTooltip\"\n [maxLengthRenderWithoutTooltip]=\"maxLengthRenderWithoutTooltip\"\n (clickRemove)=\"removeItem($event)\"\n (chipClicked)=\"chipClicked($event)\">\n </s-chip-item>\n </li>\n <ng-container *ngIf=\"keyFilter\">\n <input\n #input\n [disabled]=\"disabled || max === value?.length\"\n [placeholder]=\"placeholder\"\n [maxlength]=\"maxLength\"\n [id]=\"inputId\"\n [(ngModel)]=\"newItem\"\n [pKeyFilter]=\"keyFilter\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputLostFocus($event)\">\n </ng-container>\n <ng-container *ngIf=\"!keyFilter\">\n <input\n #input\n [disabled]=\"disabled || max === value?.length\"\n [placeholder]=\"placeholder\"\n [maxlength]=\"maxLength\"\n [id]=\"inputId\"\n [(ngModel)]=\"newItem\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputLostFocus($event)\">\n </ng-container>\n</ul>\n<ng-container *ngIf=\"infoLabel\">\n <span class=\"info-label\">\n {{ infoLabel }}\n </span>\n</ng-container>\n",
20896
+ providers: [
20897
+ {
20898
+ provide: forms.NG_VALUE_ACCESSOR,
20899
+ useExisting: core.forwardRef(function () { return ChipsComponent_1; }),
20900
+ multi: true
20901
+ }
20902
+ ],
20903
+ styles: [".chips-container{width:100%;padding:8px;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;border-radius:3px;border:1px solid #c1c1cc;background-color:#fff;list-style:none;gap:8px}.chips-container input{background-color:#fff;width:100%;border:none;min-height:2em;min-width:15%;-ms-flex:1;flex:1}.chips-container input:focus-visible{outline:0}.info-label{color:#888b99;font-size:12px;font-style:normal;font-weight:400}"]
20904
+ })
20905
+ ], ChipsComponent);
20906
+ return ChipsComponent;
20907
+ }());
20908
+
20909
+ var ChipItemComponent = /** @class */ (function () {
20910
+ function ChipItemComponent() {
20911
+ this.disabled = false;
20912
+ this.itemIndex = -1;
20913
+ this.showTooltip = true;
20914
+ this.maxLengthRenderWithoutTooltip = 20;
20915
+ this.clickRemove = new core.EventEmitter();
20916
+ this.chipClicked = new core.EventEmitter();
20917
+ }
20918
+ ChipItemComponent.prototype.clickedRemove = function ($event) {
20919
+ this.clickRemove.emit({ index: this.itemIndex, event: $event });
20920
+ };
20921
+ ChipItemComponent.prototype.onChipClicked = function ($event) {
20922
+ this.chipClicked.emit({ event: $event, data: this.dataRender });
20923
+ };
20924
+ Object.defineProperty(ChipItemComponent.prototype, "_text", {
20925
+ get: function () {
20926
+ var _text = this._rawText;
20927
+ return _text.substring(0, _text.length > this.maxLengthRenderWithoutTooltip ? this.maxLengthRenderWithoutTooltip : _text.length) + (_text.length > this.maxLengthRenderWithoutTooltip ? '...' : '');
20928
+ },
20929
+ enumerable: true,
20930
+ configurable: true
20931
+ });
20932
+ Object.defineProperty(ChipItemComponent.prototype, "_rawText", {
20933
+ get: function () {
20934
+ return this.objectField ? this.dataRender[this.objectField] || '' : this.dataRender || '';
20935
+ },
20936
+ enumerable: true,
20937
+ configurable: true
20938
+ });
20939
+ __decorate([
20940
+ core.Input()
20941
+ ], ChipItemComponent.prototype, "dataRender", void 0);
20942
+ __decorate([
20943
+ core.Input()
20944
+ ], ChipItemComponent.prototype, "objectField", void 0);
20945
+ __decorate([
20946
+ core.Input()
20947
+ ], ChipItemComponent.prototype, "disabled", void 0);
20948
+ __decorate([
20949
+ core.Input()
20950
+ ], ChipItemComponent.prototype, "templateRef", void 0);
20951
+ __decorate([
20952
+ core.Input()
20953
+ ], ChipItemComponent.prototype, "itemIndex", void 0);
20954
+ __decorate([
20955
+ core.Input()
20956
+ ], ChipItemComponent.prototype, "showTooltip", void 0);
20957
+ __decorate([
20958
+ core.Input()
20959
+ ], ChipItemComponent.prototype, "maxLengthRenderWithoutTooltip", void 0);
20960
+ __decorate([
20961
+ core.Output()
20962
+ ], ChipItemComponent.prototype, "clickRemove", void 0);
20963
+ __decorate([
20964
+ core.Output()
20965
+ ], ChipItemComponent.prototype, "chipClicked", void 0);
20966
+ __decorate([
20967
+ CheckDisabled()
20968
+ ], ChipItemComponent.prototype, "clickedRemove", null);
20969
+ __decorate([
20970
+ CheckDisabled()
20971
+ ], ChipItemComponent.prototype, "onChipClicked", null);
20972
+ ChipItemComponent = __decorate([
20973
+ core.Component({
20974
+ selector: 's-chip-item',
20975
+ template: "<ng-template #itemRender>\n <div\n class=\"chip-item\"\n [class.chip-item-disabled]=\"disabled\"\n (click)=\"onChipClicked($event)\"\n [sTooltip]=\"_rawText\"\n [showDelay]=\"0\"\n [visible]=\"showTooltip ? _rawText.length > maxLengthRenderWithoutTooltip : false\">\n <ng-container *ngIf=\"templateRef\">\n <ng-container *ngTemplateOutlet=\"templateRef; context: { $implicit: dataRender, text: _text }\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!templateRef\">\n {{ _text }}\n </ng-container>\n <i class=\"fas fa-times\" (click)=\"clickedRemove($event)\"></i>\n </div>\n</ng-template>\n\n\n<ng-container *ngIf=\"objectField && !templateRef\">\n <ng-container *ngTemplateOutlet=\"itemRender;\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"!objectField && !templateRef\">\n <ng-container *ngTemplateOutlet=\"itemRender;\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"templateRef\">\n <ng-container *ngTemplateOutlet=\"itemRender\"></ng-container>\n</ng-container>\n",
20976
+ styles: [".chip-item{border-radius:4px;border:1px solid #888b99;background-color:#eeebf2;word-break:break-word;font-size:12px;font-weight:400;text-align:center;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:8px;padding:0 8px}.chip-item i{cursor:pointer}.chip-item:hover:not(.chip-item-disabled){background:#c1c1cc}.chip-item-disabled{opacity:.5}.chip-item-disabled i{cursor:default}"]
20977
+ })
20978
+ ], ChipItemComponent);
20979
+ return ChipItemComponent;
20980
+ }());
20981
+
20982
+ var ChipsModule = /** @class */ (function () {
20983
+ function ChipsModule() {
20984
+ }
20985
+ ChipsModule = __decorate([
20986
+ core.NgModule({
20987
+ declarations: [ChipsComponent, ChipItemComponent],
20988
+ imports: [
20989
+ common.CommonModule,
20990
+ forms.FormsModule,
20991
+ TooltipModule,
20992
+ keyfilter.KeyFilterModule
20993
+ ],
20994
+ exports: [ChipsComponent]
20995
+ })
20996
+ ], ChipsModule);
20997
+ return ChipsModule;
20998
+ }());
20999
+
20647
21000
  var fallback = {
20648
21001
  "platform.angular_components.drag_your_photo_or": "Arraste sua foto ou",
20649
21002
  "platform.angular_components.select_a_file": "selecione um arquivo",
@@ -20992,9 +21345,12 @@
20992
21345
  exports.CalendarMaskModule = CalendarMaskModule;
20993
21346
  exports.CardComponent = CardComponent;
20994
21347
  exports.CardModule = CardModule;
21348
+ exports.CheckDisabled = CheckDisabled;
20995
21349
  exports.CheckboxComponent = CheckboxComponent;
20996
21350
  exports.CheckboxModule = CheckboxModule;
21351
+ exports.ChipsComponent = ChipsComponent;
20997
21352
  exports.ChipsField = ChipsField;
21353
+ exports.ChipsModule = ChipsModule;
20998
21354
  exports.CodeEditorModule = CodeEditorModule;
20999
21355
  exports.CollapseLinkComponent = CollapseLinkComponent;
21000
21356
  exports.CollapseLinkModule = CollapseLinkModule;
@@ -21249,6 +21605,7 @@
21249
21605
  exports.ɵed = CollapsedItemsComponent;
21250
21606
  exports.ɵee = VerticalItemsComponent;
21251
21607
  exports.ɵef = ButtonModule;
21608
+ exports.ɵeg = ChipItemComponent;
21252
21609
  exports.ɵf = TieredMenuComponent;
21253
21610
  exports.ɵg = TieredMenuNestedComponent;
21254
21611
  exports.ɵh = TieredMenuItemComponent;