@dev-tcloud/tcloud-ui 0.0.49 → 0.0.51

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 (32) hide show
  1. package/README.md +11 -0
  2. package/esm2020/lib/_directives/directives.module.mjs +10 -5
  3. package/esm2020/lib/_directives/hover-parent/hover-parent.directive.mjs +58 -0
  4. package/esm2020/lib/_modules/tcloud-ui-datepicker/tcloud-ui-datepicker.component.mjs +302 -0
  5. package/esm2020/lib/_modules/tcloud-ui-datepicker/tcloud-ui-datepicker.module.mjs +31 -0
  6. package/esm2020/lib/_modules/tcloud-ui-datepicker-time/tcloud-ui-datepicker-time.component.mjs +209 -0
  7. package/esm2020/lib/_modules/tcloud-ui-datepicker-time/tcloud-ui-datepicker-time.module.mjs +35 -0
  8. package/esm2020/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.component.mjs +79 -29
  9. package/esm2020/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.module.mjs +8 -4
  10. package/esm2020/lib/_pipes/datebr.mjs +102 -0
  11. package/esm2020/lib/_pipes/index.mjs +2 -1
  12. package/esm2020/lib/_pipes/tcloud-pipes.module.mjs +14 -8
  13. package/esm2020/lib/tcloud-ui.module.mjs +17 -3
  14. package/esm2020/public-api.mjs +8 -1
  15. package/fesm2015/dev-tcloud-tcloud-ui.mjs +1345 -553
  16. package/fesm2015/dev-tcloud-tcloud-ui.mjs.map +1 -1
  17. package/fesm2020/dev-tcloud-tcloud-ui.mjs +1337 -551
  18. package/fesm2020/dev-tcloud-tcloud-ui.mjs.map +1 -1
  19. package/lib/_directives/directives.module.d.ts +2 -1
  20. package/lib/_directives/hover-parent/hover-parent.directive.d.ts +15 -0
  21. package/lib/_modules/tcloud-ui-datepicker/tcloud-ui-datepicker.component.d.ts +46 -0
  22. package/lib/_modules/tcloud-ui-datepicker/tcloud-ui-datepicker.module.d.ts +9 -0
  23. package/lib/_modules/tcloud-ui-datepicker-time/tcloud-ui-datepicker-time.component.d.ts +34 -0
  24. package/lib/_modules/tcloud-ui-datepicker-time/tcloud-ui-datepicker-time.module.d.ts +10 -0
  25. package/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.component.d.ts +2 -1
  26. package/lib/_modules/tcloud-ui-filters/tcloud-ui-filters.module.d.ts +2 -1
  27. package/lib/_pipes/datebr.d.ts +11 -0
  28. package/lib/_pipes/index.d.ts +1 -0
  29. package/lib/_pipes/tcloud-pipes.module.d.ts +3 -2
  30. package/lib/tcloud-ui.module.d.ts +5 -3
  31. package/package.json +1 -1
  32. package/public-api.d.ts +5 -0
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, Input, NgModule, Injectable, EventEmitter, Output, ViewChild, forwardRef, Pipe, Directive, HostListener } from '@angular/core';
2
+ import { Component, Input, NgModule, Injectable, EventEmitter, Output, ViewChild, forwardRef, Pipe, ViewEncapsulation, Directive, HostListener } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule, DatePipe } from '@angular/common';
5
5
  import { Subject } from 'rxjs';
@@ -944,12 +944,12 @@ const CUSTOM_INPUT_VALIDATORS$1 = {
944
944
  useExisting: forwardRef(() => TCloudUiMultiSelectComponent),
945
945
  multi: true
946
946
  };
947
- const CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$3 = {
947
+ const CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$5 = {
948
948
  provide: NG_VALUE_ACCESSOR,
949
949
  useExisting: forwardRef(() => TCloudUiMultiSelectComponent),
950
950
  multi: true
951
951
  };
952
- const noop$3 = () => {
952
+ const noop$5 = () => {
953
953
  };
954
954
  class TCloudUiMultiSelectComponent {
955
955
  constructor() {
@@ -962,8 +962,8 @@ class TCloudUiMultiSelectComponent {
962
962
  this.onChange = new EventEmitter();
963
963
  //Placeholders for the callbacks which are later providesd
964
964
  //by the Control Value Accessor
965
- this.onTouchedCallback = noop$3;
966
- this.onChangeCallback = noop$3;
965
+ this.onTouchedCallback = noop$5;
966
+ this.onChangeCallback = noop$5;
967
967
  }
968
968
  ngOnInit() {
969
969
  setTimeout(() => { this.toChange(); });
@@ -1094,10 +1094,10 @@ class TCloudUiMultiSelectComponent {
1094
1094
  }
1095
1095
  }
1096
1096
  TCloudUiMultiSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiMultiSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1097
- TCloudUiMultiSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiMultiSelectComponent, selector: "tcloud-ui-multi-select", inputs: { tcList: "tcList", placeholder: "placeholder", disabled: "disabled", loading: "loading", required: "required" }, outputs: { tcChange: "tcChange", onChange: "onChange" }, providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$3, CUSTOM_INPUT_VALIDATORS$1], ngImport: i0, template: "\r\n <div>\r\n <table>\r\n <tr *ngIf=\"tcList\">\r\n <td>\r\n <select \r\n class=\"tc-form-control\"\r\n [(ngModel)]=\"item_value\"\r\n [class.tc-parent-validation]=\"use_validation_required\" \r\n #_select\r\n [disabled]=\"tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\r\n [title]=\"tcList.length === 0 ? 'Nenhum item dispon\u00EDvel' : placeholder\">\r\n <option></option>\r\n <ng-container *ngFor=\"let item of tcList; let i = index\">\r\n <option [title]=\"item.description\" *ngIf=\"!item.active\" [value]=\"item.value\">{{ item.description }}</option>\r\n </ng-container>\r\n </select>\r\n </td>\r\n <td>\r\n <button\r\n [disabled]=\"!item_value || tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\r\n title=\"Adicionar\"\r\n class=\"btn-plus-select\"\r\n (click)=\"addItem(_select.value);onChangeTouched()\"\r\n type=\"button\">\r\n <i class=\"fas fa-plus\"></i>\r\n </button>\r\n </td>\r\n </tr>\r\n </table>\r\n\r\n <div class=\"box-itens-selected\" *ngIf=\"count_actives > 0 && (tcList && tcList.length > 0)\">\r\n <ng-container *ngFor=\"let item of tcList\">\r\n\r\n <ng-container *ngIf=\"item.active\">\r\n <div class=\"box-label\" [ngStyle]=\"item_width(item.value)\">\r\n <div class=\"box-value\" [title]=\"item.value\">\r\n {{ item.value }} \r\n </div>\r\n <div class=\"box-action\">\r\n <button\r\n [disabled]=\"tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\r\n title=\"Remover\"\r\n type=\"button\"\r\n (click)=\"removeItem(item.value);onChangeTouched()\">\r\n <i class=\"fas fa-times\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n </ng-container>\r\n </div>\r\n </div>\r\n", styles: ["table{width:100%;border-collapse:collapse;border:none}table td{vertical-align:top}table td:first-child{width:100%}select{font-size:.8rem;height:40px;border:1px solid #999;border-radius:4px 0 0 4px;padding:6px 10px;white-space:nowrap;text-overflow:ellipsis;width:100%;background-color:#fff;color:#888}.btn-plus-select{width:30px;height:40px;border:none;color:#fff;background-color:var(--verde);border-radius:0 4px 4px 0}.box-itens-selected{display:flex;padding:9px;background-color:#ededed;border-radius:4px}select:disabled{opacity:.8!important;cursor:not-allowed!important;background-color:#ededed}button:disabled{opacity:.5!important;cursor:not-allowed!important}.box-label{position:relative;display:inline-block;height:35px;min-width:60px;background-color:var(--verde);color:#fff;padding:8px 15px 10px;border:none;border-radius:5px;margin:2px;width:100%}.box-label .box-value{width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.box-label .box-action{position:absolute;right:4px;top:7px}.box-label .box-action button{color:#d72020;background-color:var(--verde);border:none;font-weight:700;cursor:pointer}.box-label .box-action button i{font-size:12px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
1097
+ TCloudUiMultiSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiMultiSelectComponent, selector: "tcloud-ui-multi-select", inputs: { tcList: "tcList", placeholder: "placeholder", disabled: "disabled", loading: "loading", required: "required" }, outputs: { tcChange: "tcChange", onChange: "onChange" }, providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$5, CUSTOM_INPUT_VALIDATORS$1], ngImport: i0, template: "\r\n <div>\r\n <table>\r\n <tr *ngIf=\"tcList\">\r\n <td>\r\n <select \r\n class=\"tc-form-control\"\r\n [(ngModel)]=\"item_value\"\r\n [class.tc-parent-validation]=\"use_validation_required\" \r\n #_select\r\n [disabled]=\"tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\r\n [title]=\"tcList.length === 0 ? 'Nenhum item dispon\u00EDvel' : placeholder\">\r\n <option></option>\r\n <ng-container *ngFor=\"let item of tcList; let i = index\">\r\n <option [title]=\"item.description\" *ngIf=\"!item.active\" [value]=\"item.value\">{{ item.description }}</option>\r\n </ng-container>\r\n </select>\r\n </td>\r\n <td>\r\n <button\r\n [disabled]=\"!item_value || tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\r\n title=\"Adicionar\"\r\n class=\"btn-plus-select\"\r\n (click)=\"addItem(_select.value);onChangeTouched()\"\r\n type=\"button\">\r\n <i class=\"fas fa-plus\"></i>\r\n </button>\r\n </td>\r\n </tr>\r\n </table>\r\n\r\n <div class=\"box-itens-selected\" *ngIf=\"count_actives > 0 && (tcList && tcList.length > 0)\">\r\n <ng-container *ngFor=\"let item of tcList\">\r\n\r\n <ng-container *ngIf=\"item.active\">\r\n <div class=\"box-label\" [ngStyle]=\"item_width(item.value)\">\r\n <div class=\"box-value\" [title]=\"item.value\">\r\n {{ item.value }} \r\n </div>\r\n <div class=\"box-action\">\r\n <button\r\n [disabled]=\"tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\r\n title=\"Remover\"\r\n type=\"button\"\r\n (click)=\"removeItem(item.value);onChangeTouched()\">\r\n <i class=\"fas fa-times\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n </ng-container>\r\n </div>\r\n </div>\r\n", styles: ["table{width:100%;border-collapse:collapse;border:none}table td{vertical-align:top}table td:first-child{width:100%}select{font-size:.8rem;height:40px;border:1px solid #999;border-radius:4px 0 0 4px;padding:6px 10px;white-space:nowrap;text-overflow:ellipsis;width:100%;background-color:#fff;color:#888}.btn-plus-select{width:30px;height:40px;border:none;color:#fff;background-color:var(--verde);border-radius:0 4px 4px 0}.box-itens-selected{display:flex;padding:9px;background-color:#ededed;border-radius:4px}select:disabled{opacity:.8!important;cursor:not-allowed!important;background-color:#ededed}button:disabled{opacity:.5!important;cursor:not-allowed!important}.box-label{position:relative;display:inline-block;height:35px;min-width:60px;background-color:var(--verde);color:#fff;padding:8px 15px 10px;border:none;border-radius:5px;margin:2px;width:100%}.box-label .box-value{width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.box-label .box-action{position:absolute;right:4px;top:7px}.box-label .box-action button{color:#d72020;background-color:var(--verde);border:none;font-weight:700;cursor:pointer}.box-label .box-action button i{font-size:12px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
1098
1098
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiMultiSelectComponent, decorators: [{
1099
1099
  type: Component,
1100
- args: [{ selector: 'tcloud-ui-multi-select', providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$3, CUSTOM_INPUT_VALIDATORS$1], template: "\r\n <div>\r\n <table>\r\n <tr *ngIf=\"tcList\">\r\n <td>\r\n <select \r\n class=\"tc-form-control\"\r\n [(ngModel)]=\"item_value\"\r\n [class.tc-parent-validation]=\"use_validation_required\" \r\n #_select\r\n [disabled]=\"tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\r\n [title]=\"tcList.length === 0 ? 'Nenhum item dispon\u00EDvel' : placeholder\">\r\n <option></option>\r\n <ng-container *ngFor=\"let item of tcList; let i = index\">\r\n <option [title]=\"item.description\" *ngIf=\"!item.active\" [value]=\"item.value\">{{ item.description }}</option>\r\n </ng-container>\r\n </select>\r\n </td>\r\n <td>\r\n <button\r\n [disabled]=\"!item_value || tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\r\n title=\"Adicionar\"\r\n class=\"btn-plus-select\"\r\n (click)=\"addItem(_select.value);onChangeTouched()\"\r\n type=\"button\">\r\n <i class=\"fas fa-plus\"></i>\r\n </button>\r\n </td>\r\n </tr>\r\n </table>\r\n\r\n <div class=\"box-itens-selected\" *ngIf=\"count_actives > 0 && (tcList && tcList.length > 0)\">\r\n <ng-container *ngFor=\"let item of tcList\">\r\n\r\n <ng-container *ngIf=\"item.active\">\r\n <div class=\"box-label\" [ngStyle]=\"item_width(item.value)\">\r\n <div class=\"box-value\" [title]=\"item.value\">\r\n {{ item.value }} \r\n </div>\r\n <div class=\"box-action\">\r\n <button\r\n [disabled]=\"tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\r\n title=\"Remover\"\r\n type=\"button\"\r\n (click)=\"removeItem(item.value);onChangeTouched()\">\r\n <i class=\"fas fa-times\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n </ng-container>\r\n </div>\r\n </div>\r\n", styles: ["table{width:100%;border-collapse:collapse;border:none}table td{vertical-align:top}table td:first-child{width:100%}select{font-size:.8rem;height:40px;border:1px solid #999;border-radius:4px 0 0 4px;padding:6px 10px;white-space:nowrap;text-overflow:ellipsis;width:100%;background-color:#fff;color:#888}.btn-plus-select{width:30px;height:40px;border:none;color:#fff;background-color:var(--verde);border-radius:0 4px 4px 0}.box-itens-selected{display:flex;padding:9px;background-color:#ededed;border-radius:4px}select:disabled{opacity:.8!important;cursor:not-allowed!important;background-color:#ededed}button:disabled{opacity:.5!important;cursor:not-allowed!important}.box-label{position:relative;display:inline-block;height:35px;min-width:60px;background-color:var(--verde);color:#fff;padding:8px 15px 10px;border:none;border-radius:5px;margin:2px;width:100%}.box-label .box-value{width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.box-label .box-action{position:absolute;right:4px;top:7px}.box-label .box-action button{color:#d72020;background-color:var(--verde);border:none;font-weight:700;cursor:pointer}.box-label .box-action button i{font-size:12px}\n"] }]
1100
+ args: [{ selector: 'tcloud-ui-multi-select', providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$5, CUSTOM_INPUT_VALIDATORS$1], template: "\r\n <div>\r\n <table>\r\n <tr *ngIf=\"tcList\">\r\n <td>\r\n <select \r\n class=\"tc-form-control\"\r\n [(ngModel)]=\"item_value\"\r\n [class.tc-parent-validation]=\"use_validation_required\" \r\n #_select\r\n [disabled]=\"tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\r\n [title]=\"tcList.length === 0 ? 'Nenhum item dispon\u00EDvel' : placeholder\">\r\n <option></option>\r\n <ng-container *ngFor=\"let item of tcList; let i = index\">\r\n <option [title]=\"item.description\" *ngIf=\"!item.active\" [value]=\"item.value\">{{ item.description }}</option>\r\n </ng-container>\r\n </select>\r\n </td>\r\n <td>\r\n <button\r\n [disabled]=\"!item_value || tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\r\n title=\"Adicionar\"\r\n class=\"btn-plus-select\"\r\n (click)=\"addItem(_select.value);onChangeTouched()\"\r\n type=\"button\">\r\n <i class=\"fas fa-plus\"></i>\r\n </button>\r\n </td>\r\n </tr>\r\n </table>\r\n\r\n <div class=\"box-itens-selected\" *ngIf=\"count_actives > 0 && (tcList && tcList.length > 0)\">\r\n <ng-container *ngFor=\"let item of tcList\">\r\n\r\n <ng-container *ngIf=\"item.active\">\r\n <div class=\"box-label\" [ngStyle]=\"item_width(item.value)\">\r\n <div class=\"box-value\" [title]=\"item.value\">\r\n {{ item.value }} \r\n </div>\r\n <div class=\"box-action\">\r\n <button\r\n [disabled]=\"tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\r\n title=\"Remover\"\r\n type=\"button\"\r\n (click)=\"removeItem(item.value);onChangeTouched()\">\r\n <i class=\"fas fa-times\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n </ng-container>\r\n </div>\r\n </div>\r\n", styles: ["table{width:100%;border-collapse:collapse;border:none}table td{vertical-align:top}table td:first-child{width:100%}select{font-size:.8rem;height:40px;border:1px solid #999;border-radius:4px 0 0 4px;padding:6px 10px;white-space:nowrap;text-overflow:ellipsis;width:100%;background-color:#fff;color:#888}.btn-plus-select{width:30px;height:40px;border:none;color:#fff;background-color:var(--verde);border-radius:0 4px 4px 0}.box-itens-selected{display:flex;padding:9px;background-color:#ededed;border-radius:4px}select:disabled{opacity:.8!important;cursor:not-allowed!important;background-color:#ededed}button:disabled{opacity:.5!important;cursor:not-allowed!important}.box-label{position:relative;display:inline-block;height:35px;min-width:60px;background-color:var(--verde);color:#fff;padding:8px 15px 10px;border:none;border-radius:5px;margin:2px;width:100%}.box-label .box-value{width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.box-label .box-action{position:absolute;right:4px;top:7px}.box-label .box-action button{color:#d72020;background-color:var(--verde);border:none;font-weight:700;cursor:pointer}.box-label .box-action button i{font-size:12px}\n"] }]
1101
1101
  }], ctorParameters: function () { return []; }, propDecorators: { tcList: [{
1102
1102
  type: Input
1103
1103
  }], placeholder: [{
@@ -1171,12 +1171,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
1171
1171
  type: Injectable
1172
1172
  }] });
1173
1173
 
1174
- const CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$2 = {
1174
+ const CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$4 = {
1175
1175
  provide: NG_VALUE_ACCESSOR,
1176
1176
  useExisting: forwardRef(() => TCloudUiDataListComponent),
1177
1177
  multi: true
1178
1178
  };
1179
- const noop$2 = () => {
1179
+ const noop$4 = () => {
1180
1180
  };
1181
1181
  class TCloudUiDataListComponent {
1182
1182
  constructor(dataListService, formBuilder) {
@@ -1200,8 +1200,8 @@ class TCloudUiDataListComponent {
1200
1200
  this.id = '';
1201
1201
  //Placeholders for the callbacks which are later providesd
1202
1202
  //by the Control Value Accessor
1203
- this.onTouchedCallback = noop$2;
1204
- this.onChangeCallback = noop$2;
1203
+ this.onTouchedCallback = noop$4;
1204
+ this.onChangeCallback = noop$4;
1205
1205
  }
1206
1206
  set disabled(v) {
1207
1207
  if (v) {
@@ -1415,13 +1415,13 @@ class TCloudUiDataListComponent {
1415
1415
  TCloudUiDataListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDataListComponent, deps: [{ token: DataListService }, { token: i2.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
1416
1416
  TCloudUiDataListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiDataListComponent, selector: "tcloud-ui-data-list", inputs: { placeholder: "placeholder", disabled: "disabled", loading: "loading", search: "search", ngModel: "ngModel" }, outputs: { onInputChange: "onInputChange", onChange: "onChange", ngModelChange: "ngModelChange" }, providers: [
1417
1417
  DataListService,
1418
- CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$2
1418
+ CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$4
1419
1419
  ], ngImport: i0, template: "<div *ngIf=\"formulario\" id=\"area-{{ id }}\" class=\"tc-dropdown\" [class.disabled]=\"disabled || loading\">\r\n <div *ngIf=\"loading\" class=\"loading-area\">\r\n <i class=\"fas fa-spinner fa-spin\"></i>\r\n </div>\r\n <!-- [attr.data-bs-toggle]=\"'dropdown'\" -->\r\n <button \r\n [class.loading-box]=\"loading\"\r\n [disabled]=\"disabled || loading\"\r\n class=\"dropdown-toggle button-select no-margin-bottom\" \r\n type=\"button\" \r\n id=\"{{ id }}\" \r\n \r\n [attr.aria-haspopup]=\"'true'\" \r\n [attr.aria-expanded]=\"'false'\" \r\n (click)=\"toOpen()\" >\r\n\r\n <i *ngIf=\"(selected_description === undefined || selected_description === null || selected_description === '' ) && !loading \">{{ placeholder }}</i>\r\n {{ selected_description }}\r\n <span><i class=\"fas fa-angle-down\"></i></span>\r\n </button>\r\n <div class=\"tc-dropdown-menu {{ menu_on_top }}\" id=\"box-{{ id }}\" [attr.aria-labelledby]=\"id\" [class.to-hide]=\"!menu_show\" [style]=\"box_style\">\r\n\r\n <div class=\"line-search\" *ngIf=\"search\">\r\n <table class=\"box-search\">\r\n <tr>\r\n\r\n <td class=\"area-input\">\r\n <input type=\"text\" class=\"tc-form-control\" [(ngModel)]=\"search_text\" (input)=\"toSearch($event)\" placeholder=\"Buscar...\" > \r\n </td>\r\n\r\n <td class=\"area-icon\">\r\n <i *ngIf=\"search_text === ''\" class=\"fas fa-search icon-search\"></i>\r\n <button type=\"button\" *ngIf=\"search_text !== ''\" (click)=\"clearTextSearch()\"><i class=\"fas fa-times\"></i></button>\r\n </td>\r\n \r\n </tr>\r\n </table>\r\n </div>\r\n \r\n <div class=\"area-options\" id=\"{{ id }}-options\" (click)=\"toClose()\">\r\n <ng-content></ng-content> \r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"formulario\">\r\n <form [formGroup]=\"formulario\" style=\"display: none;\" >\r\n <input id=\"{{ id }}-hidden\" formControlName=\"selected_item\" type=\"hidden\">\r\n </form>\r\n</div>\r\n", styles: [".dropdown-toggle:after{display:none!important}.tc-dropdown{position:relative}.tc-dropdown .button-select{width:100%;background-color:#fff;border:1px solid #ccc;height:35px;text-align:left;padding-left:15px;font-size:14px;color:#666}.tc-dropdown .button-select span{position:absolute;right:6px;top:7px}.tc-dropdown .tc-dropdown-menu{width:100%;border:1px solid #ccc;background-color:#fff;position:absolute;z-index:1}.tc-dropdown .area-options{max-height:200px;overflow-y:scroll;overflow-x:hidden}.tc-dropdown .menu-on-top{position:absolute}.line-search{padding:3px}.line-search .box-search{width:100%;border-collapse:collapse}.line-search .box-search td.area-icon{padding:4px 0 2px 8px;width:35px}.line-search .box-search td.area-icon .icon-search{color:#666}.line-search .box-search td.area-icon button{border:none;background-color:transparent;color:#999;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.line-search .box-search td.area-input{border:none}.line-search .box-search td.area-input input{width:100%}.line-search .box-search input{width:100%;font-size:13px;height:33px;border:1px solid #ccc;padding:10px}.loading-area{line-height:0;position:relative;height:0;bottom:-10px;left:10px}button:disabled{background-color:#eee!important;border:1px solid #ececec!important;cursor:not-allowed}.loading-box{cursor:progress!important}.disabled i{color:#999!important}.to-hide{display:none}.no-margin-bottom{margin-bottom:0!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
1420
1420
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDataListComponent, decorators: [{
1421
1421
  type: Component,
1422
1422
  args: [{ selector: 'tcloud-ui-data-list', providers: [
1423
1423
  DataListService,
1424
- CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$2
1424
+ CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$4
1425
1425
  ], template: "<div *ngIf=\"formulario\" id=\"area-{{ id }}\" class=\"tc-dropdown\" [class.disabled]=\"disabled || loading\">\r\n <div *ngIf=\"loading\" class=\"loading-area\">\r\n <i class=\"fas fa-spinner fa-spin\"></i>\r\n </div>\r\n <!-- [attr.data-bs-toggle]=\"'dropdown'\" -->\r\n <button \r\n [class.loading-box]=\"loading\"\r\n [disabled]=\"disabled || loading\"\r\n class=\"dropdown-toggle button-select no-margin-bottom\" \r\n type=\"button\" \r\n id=\"{{ id }}\" \r\n \r\n [attr.aria-haspopup]=\"'true'\" \r\n [attr.aria-expanded]=\"'false'\" \r\n (click)=\"toOpen()\" >\r\n\r\n <i *ngIf=\"(selected_description === undefined || selected_description === null || selected_description === '' ) && !loading \">{{ placeholder }}</i>\r\n {{ selected_description }}\r\n <span><i class=\"fas fa-angle-down\"></i></span>\r\n </button>\r\n <div class=\"tc-dropdown-menu {{ menu_on_top }}\" id=\"box-{{ id }}\" [attr.aria-labelledby]=\"id\" [class.to-hide]=\"!menu_show\" [style]=\"box_style\">\r\n\r\n <div class=\"line-search\" *ngIf=\"search\">\r\n <table class=\"box-search\">\r\n <tr>\r\n\r\n <td class=\"area-input\">\r\n <input type=\"text\" class=\"tc-form-control\" [(ngModel)]=\"search_text\" (input)=\"toSearch($event)\" placeholder=\"Buscar...\" > \r\n </td>\r\n\r\n <td class=\"area-icon\">\r\n <i *ngIf=\"search_text === ''\" class=\"fas fa-search icon-search\"></i>\r\n <button type=\"button\" *ngIf=\"search_text !== ''\" (click)=\"clearTextSearch()\"><i class=\"fas fa-times\"></i></button>\r\n </td>\r\n \r\n </tr>\r\n </table>\r\n </div>\r\n \r\n <div class=\"area-options\" id=\"{{ id }}-options\" (click)=\"toClose()\">\r\n <ng-content></ng-content> \r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"formulario\">\r\n <form [formGroup]=\"formulario\" style=\"display: none;\" >\r\n <input id=\"{{ id }}-hidden\" formControlName=\"selected_item\" type=\"hidden\">\r\n </form>\r\n</div>\r\n", styles: [".dropdown-toggle:after{display:none!important}.tc-dropdown{position:relative}.tc-dropdown .button-select{width:100%;background-color:#fff;border:1px solid #ccc;height:35px;text-align:left;padding-left:15px;font-size:14px;color:#666}.tc-dropdown .button-select span{position:absolute;right:6px;top:7px}.tc-dropdown .tc-dropdown-menu{width:100%;border:1px solid #ccc;background-color:#fff;position:absolute;z-index:1}.tc-dropdown .area-options{max-height:200px;overflow-y:scroll;overflow-x:hidden}.tc-dropdown .menu-on-top{position:absolute}.line-search{padding:3px}.line-search .box-search{width:100%;border-collapse:collapse}.line-search .box-search td.area-icon{padding:4px 0 2px 8px;width:35px}.line-search .box-search td.area-icon .icon-search{color:#666}.line-search .box-search td.area-icon button{border:none;background-color:transparent;color:#999;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.line-search .box-search td.area-input{border:none}.line-search .box-search td.area-input input{width:100%}.line-search .box-search input{width:100%;font-size:13px;height:33px;border:1px solid #ccc;padding:10px}.loading-area{line-height:0;position:relative;height:0;bottom:-10px;left:10px}button:disabled{background-color:#eee!important;border:1px solid #ececec!important;cursor:not-allowed}.loading-box{cursor:progress!important}.disabled i{color:#999!important}.to-hide{display:none}.no-margin-bottom{margin-bottom:0!important}\n"] }]
1426
1426
  }], ctorParameters: function () { return [{ type: DataListService }, { type: i2.FormBuilder }]; }, propDecorators: { placeholder: [{
1427
1427
  type: Input
@@ -1529,12 +1529,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
1529
1529
  }]
1530
1530
  }] });
1531
1531
 
1532
- const CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$1 = {
1532
+ const CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$3 = {
1533
1533
  provide: NG_VALUE_ACCESSOR,
1534
1534
  useExisting: forwardRef(() => TCloudUiChoiceIssuesComponent),
1535
1535
  multi: true
1536
1536
  };
1537
- const noop$1 = () => {
1537
+ const noop$3 = () => {
1538
1538
  };
1539
1539
  class TCloudUiChoiceIssuesComponent {
1540
1540
  constructor() {
@@ -1546,8 +1546,8 @@ class TCloudUiChoiceIssuesComponent {
1546
1546
  this.innerValue = false;
1547
1547
  //Placeholders for the callbacks which are later providesd
1548
1548
  //by the Control Value Accessor
1549
- this.onTouchedCallback = noop$1;
1550
- this.onChangeCallback = noop$1;
1549
+ this.onTouchedCallback = noop$3;
1550
+ this.onChangeCallback = noop$3;
1551
1551
  this.ID = 'tc-issue-' + Math.random().toString(36).substr(2, 9);
1552
1552
  }
1553
1553
  //get accessor
@@ -1593,10 +1593,10 @@ class TCloudUiChoiceIssuesComponent {
1593
1593
  }
1594
1594
  }
1595
1595
  TCloudUiChoiceIssuesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiChoiceIssuesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1596
- TCloudUiChoiceIssuesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiChoiceIssuesComponent, selector: "tcloud-ui-choice-issues", inputs: { view: "view", titulo: "titulo", subTitulo: "subTitulo", disabled: "disabled" }, outputs: { onChange: "onChange" }, providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$1], viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["campo"], descendants: true, read: true }], ngImport: i0, template: "\r\n\r\n<input #campo [(ngModel)]=\"value\" type=\"hidden\" [value]=\"false\" >\r\n<div class=\"box p-2 mt-3 mb-2\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <p class=\"titulo\">{{ titulo }}</p> \r\n </div>\r\n <div class=\"col-md-4 text-right\"> \r\n\r\n <table class=\"mt-2 mr-2\" *ngIf=\"!view\" >\r\n <tr>\r\n <td>\r\n <div class=\"form-fieldset\">\r\n <label [class.v-true]=\"value\" class=\"mr-1\"><input #campo name=\"{{ ID }}\" [value]=\"true\" type=\"radio\" [(ngModel)]=\"value\" (click)=\"setV(true)\" >Sim</label>\r\n </div>\r\n </td>\r\n <td>\r\n <div class=\"form-fieldset\">\r\n <label [class.v-true]=\"!value\" class=\"ml-2\"><input #campo name=\"{{ ID }}\" [value]=\"false\" type=\"radio\" [(ngModel)]=\"value\" (click)=\"setV(false)\" >N\u00E3o</label>\r\n </div>\r\n </td>\r\n </tr>\r\n </table> \r\n\r\n <table class=\"mt-2 mr-2\" *ngIf=\"view\" >\r\n <tr>\r\n <td>\r\n <div class=\"form-fieldset view\" >\r\n <label *ngIf=\"value\" class=\"v-true disabled\" >Sim</label>\r\n <label *ngIf=\"!value\">N\u00E3o</label>\r\n </div>\r\n </td>\r\n </tr>\r\n </table>\r\n </div>\r\n <div class=\"col-md-12 mt-1\">\r\n <p class=\"sub-titulo\">{{ subTitulo }}</p>\r\n </div>\r\n <div class=\"col-md-12 mt-2 mb-1\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n", styles: [".titulo{font-size:1rem;color:var(--cinza)}.sub-titulo{color:#b0adaa}.box{border:1px solid var(--cinza3);border-radius:10px}.box.box-icon{display:flex;justify-content:center;padding:35px 20px}.form-fieldset input{display:none}.form-fieldset .v-true{background:var(--verde);color:#fff}.form-fieldset label{font-size:11px;background:var(--cinza4);cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:space-around;text-transform:uppercase;border-radius:30px;padding:7px;margin:0;width:66px}.form-fieldset label:before{content:\"\";background:#fff;border-radius:50%;height:15px;width:15px}.form-fieldset label:nth-child(2){margin-right:20px}table{width:100%;max-width:200px}table th,table td{vertical-align:top}.view,.view label{cursor:inherit!important}.disabled{background-color:#8fdfe8!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
1596
+ TCloudUiChoiceIssuesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiChoiceIssuesComponent, selector: "tcloud-ui-choice-issues", inputs: { view: "view", titulo: "titulo", subTitulo: "subTitulo", disabled: "disabled" }, outputs: { onChange: "onChange" }, providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$3], viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["campo"], descendants: true, read: true }], ngImport: i0, template: "\r\n\r\n<input #campo [(ngModel)]=\"value\" type=\"hidden\" [value]=\"false\" >\r\n<div class=\"box p-2 mt-3 mb-2\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <p class=\"titulo\">{{ titulo }}</p> \r\n </div>\r\n <div class=\"col-md-4 text-right\"> \r\n\r\n <table class=\"mt-2 mr-2\" *ngIf=\"!view\" >\r\n <tr>\r\n <td>\r\n <div class=\"form-fieldset\">\r\n <label [class.v-true]=\"value\" class=\"mr-1\"><input #campo name=\"{{ ID }}\" [value]=\"true\" type=\"radio\" [(ngModel)]=\"value\" (click)=\"setV(true)\" >Sim</label>\r\n </div>\r\n </td>\r\n <td>\r\n <div class=\"form-fieldset\">\r\n <label [class.v-true]=\"!value\" class=\"ml-2\"><input #campo name=\"{{ ID }}\" [value]=\"false\" type=\"radio\" [(ngModel)]=\"value\" (click)=\"setV(false)\" >N\u00E3o</label>\r\n </div>\r\n </td>\r\n </tr>\r\n </table> \r\n\r\n <table class=\"mt-2 mr-2\" *ngIf=\"view\" >\r\n <tr>\r\n <td>\r\n <div class=\"form-fieldset view\" >\r\n <label *ngIf=\"value\" class=\"v-true disabled\" >Sim</label>\r\n <label *ngIf=\"!value\">N\u00E3o</label>\r\n </div>\r\n </td>\r\n </tr>\r\n </table>\r\n </div>\r\n <div class=\"col-md-12 mt-1\">\r\n <p class=\"sub-titulo\">{{ subTitulo }}</p>\r\n </div>\r\n <div class=\"col-md-12 mt-2 mb-1\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n", styles: [".titulo{font-size:1rem;color:var(--cinza)}.sub-titulo{color:#b0adaa}.box{border:1px solid var(--cinza3);border-radius:10px}.box.box-icon{display:flex;justify-content:center;padding:35px 20px}.form-fieldset input{display:none}.form-fieldset .v-true{background:var(--verde);color:#fff}.form-fieldset label{font-size:11px;background:var(--cinza4);cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:space-around;text-transform:uppercase;border-radius:30px;padding:7px;margin:0;width:66px}.form-fieldset label:before{content:\"\";background:#fff;border-radius:50%;height:15px;width:15px}.form-fieldset label:nth-child(2){margin-right:20px}table{width:100%;max-width:200px}table th,table td{vertical-align:top}.view,.view label{cursor:inherit!important}.disabled{background-color:#8fdfe8!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
1597
1597
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiChoiceIssuesComponent, decorators: [{
1598
1598
  type: Component,
1599
- args: [{ selector: 'tcloud-ui-choice-issues', providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$1], template: "\r\n\r\n<input #campo [(ngModel)]=\"value\" type=\"hidden\" [value]=\"false\" >\r\n<div class=\"box p-2 mt-3 mb-2\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <p class=\"titulo\">{{ titulo }}</p> \r\n </div>\r\n <div class=\"col-md-4 text-right\"> \r\n\r\n <table class=\"mt-2 mr-2\" *ngIf=\"!view\" >\r\n <tr>\r\n <td>\r\n <div class=\"form-fieldset\">\r\n <label [class.v-true]=\"value\" class=\"mr-1\"><input #campo name=\"{{ ID }}\" [value]=\"true\" type=\"radio\" [(ngModel)]=\"value\" (click)=\"setV(true)\" >Sim</label>\r\n </div>\r\n </td>\r\n <td>\r\n <div class=\"form-fieldset\">\r\n <label [class.v-true]=\"!value\" class=\"ml-2\"><input #campo name=\"{{ ID }}\" [value]=\"false\" type=\"radio\" [(ngModel)]=\"value\" (click)=\"setV(false)\" >N\u00E3o</label>\r\n </div>\r\n </td>\r\n </tr>\r\n </table> \r\n\r\n <table class=\"mt-2 mr-2\" *ngIf=\"view\" >\r\n <tr>\r\n <td>\r\n <div class=\"form-fieldset view\" >\r\n <label *ngIf=\"value\" class=\"v-true disabled\" >Sim</label>\r\n <label *ngIf=\"!value\">N\u00E3o</label>\r\n </div>\r\n </td>\r\n </tr>\r\n </table>\r\n </div>\r\n <div class=\"col-md-12 mt-1\">\r\n <p class=\"sub-titulo\">{{ subTitulo }}</p>\r\n </div>\r\n <div class=\"col-md-12 mt-2 mb-1\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n", styles: [".titulo{font-size:1rem;color:var(--cinza)}.sub-titulo{color:#b0adaa}.box{border:1px solid var(--cinza3);border-radius:10px}.box.box-icon{display:flex;justify-content:center;padding:35px 20px}.form-fieldset input{display:none}.form-fieldset .v-true{background:var(--verde);color:#fff}.form-fieldset label{font-size:11px;background:var(--cinza4);cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:space-around;text-transform:uppercase;border-radius:30px;padding:7px;margin:0;width:66px}.form-fieldset label:before{content:\"\";background:#fff;border-radius:50%;height:15px;width:15px}.form-fieldset label:nth-child(2){margin-right:20px}table{width:100%;max-width:200px}table th,table td{vertical-align:top}.view,.view label{cursor:inherit!important}.disabled{background-color:#8fdfe8!important}\n"] }]
1599
+ args: [{ selector: 'tcloud-ui-choice-issues', providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$3], template: "\r\n\r\n<input #campo [(ngModel)]=\"value\" type=\"hidden\" [value]=\"false\" >\r\n<div class=\"box p-2 mt-3 mb-2\">\r\n <div class=\"row\">\r\n <div class=\"col-md-8\">\r\n <p class=\"titulo\">{{ titulo }}</p> \r\n </div>\r\n <div class=\"col-md-4 text-right\"> \r\n\r\n <table class=\"mt-2 mr-2\" *ngIf=\"!view\" >\r\n <tr>\r\n <td>\r\n <div class=\"form-fieldset\">\r\n <label [class.v-true]=\"value\" class=\"mr-1\"><input #campo name=\"{{ ID }}\" [value]=\"true\" type=\"radio\" [(ngModel)]=\"value\" (click)=\"setV(true)\" >Sim</label>\r\n </div>\r\n </td>\r\n <td>\r\n <div class=\"form-fieldset\">\r\n <label [class.v-true]=\"!value\" class=\"ml-2\"><input #campo name=\"{{ ID }}\" [value]=\"false\" type=\"radio\" [(ngModel)]=\"value\" (click)=\"setV(false)\" >N\u00E3o</label>\r\n </div>\r\n </td>\r\n </tr>\r\n </table> \r\n\r\n <table class=\"mt-2 mr-2\" *ngIf=\"view\" >\r\n <tr>\r\n <td>\r\n <div class=\"form-fieldset view\" >\r\n <label *ngIf=\"value\" class=\"v-true disabled\" >Sim</label>\r\n <label *ngIf=\"!value\">N\u00E3o</label>\r\n </div>\r\n </td>\r\n </tr>\r\n </table>\r\n </div>\r\n <div class=\"col-md-12 mt-1\">\r\n <p class=\"sub-titulo\">{{ subTitulo }}</p>\r\n </div>\r\n <div class=\"col-md-12 mt-2 mb-1\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n", styles: [".titulo{font-size:1rem;color:var(--cinza)}.sub-titulo{color:#b0adaa}.box{border:1px solid var(--cinza3);border-radius:10px}.box.box-icon{display:flex;justify-content:center;padding:35px 20px}.form-fieldset input{display:none}.form-fieldset .v-true{background:var(--verde);color:#fff}.form-fieldset label{font-size:11px;background:var(--cinza4);cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:space-around;text-transform:uppercase;border-radius:30px;padding:7px;margin:0;width:66px}.form-fieldset label:before{content:\"\";background:#fff;border-radius:50%;height:15px;width:15px}.form-fieldset label:nth-child(2){margin-right:20px}table{width:100%;max-width:200px}table th,table td{vertical-align:top}.view,.view label{cursor:inherit!important}.disabled{background-color:#8fdfe8!important}\n"] }]
1600
1600
  }], ctorParameters: function () { return []; }, propDecorators: { view: [{
1601
1601
  type: Input
1602
1602
  }], titulo: [{
@@ -1643,12 +1643,12 @@ const CUSTOM_INPUT_VALIDATORS = {
1643
1643
  useExisting: forwardRef(() => TCloudUiMultiInputComponent),
1644
1644
  multi: true
1645
1645
  };
1646
- const CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR = {
1646
+ const CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$2 = {
1647
1647
  provide: NG_VALUE_ACCESSOR,
1648
1648
  useExisting: forwardRef(() => TCloudUiMultiInputComponent),
1649
1649
  multi: true
1650
1650
  };
1651
- const noop = () => {
1651
+ const noop$2 = () => {
1652
1652
  };
1653
1653
  class TCloudUiMultiInputComponent {
1654
1654
  constructor() {
@@ -1661,8 +1661,8 @@ class TCloudUiMultiInputComponent {
1661
1661
  this.onChange = new EventEmitter();
1662
1662
  //Placeholders for the callbacks which are later providesd
1663
1663
  //by the Control Value Accessor
1664
- this.onTouchedCallback = noop;
1665
- this.onChangeCallback = noop;
1664
+ this.onTouchedCallback = noop$2;
1665
+ this.onChangeCallback = noop$2;
1666
1666
  }
1667
1667
  ngOnInit() {
1668
1668
  setTimeout(() => {
@@ -1781,10 +1781,10 @@ class TCloudUiMultiInputComponent {
1781
1781
  }
1782
1782
  }
1783
1783
  TCloudUiMultiInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiMultiInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1784
- TCloudUiMultiInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiMultiInputComponent, selector: "tcloud-ui-multi-input", inputs: { tcList: "tcList", placeholder: "placeholder", disabled: "disabled", loading: "loading", required: "required" }, outputs: { tcChange: "tcChange", onChange: "onChange" }, providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR, CUSTOM_INPUT_VALIDATORS], ngImport: i0, template: "<div>\n\n <table>\n <tr>\n <td>\n <input class=\"tc-form-control\" (blur)=\"onChangeTouched()\" [(ngModel)]=\"item_value\" [class.tc-parent-validation]=\"use_validation_required\" type=\"text\" [(ngModel)]=\"input_value\" [disabled]=\"disabled || loading\" name=\"input_value\">\n </td>\n <td>\n <button\n [disabled]=\"!item_value || disabled || loading\"\n title=\"Adicionar\"\n class=\"btn-plus-select\"\n (click)=\"addItem(input_value);onChangeTouched()\"\n type=\"button\">\n <i class=\"fas fa-plus\"></i>\n </button>\n </td>\n </tr>\n </table>\n \n <div class=\"box-itens-selected\" *ngIf=\"(tcList && tcList.length > 0)\">\n <ng-container *ngFor=\"let item of tcList; let i = index\">\n \n <div class=\"box-label\" [ngStyle]=\"item_width(item.value)\">\n <div class=\"box-value\" [title]=\"item.value\" >\n {{ item.value }} \n </div>\n <div class=\"box-action\">\n <button\n [disabled]=\"tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\n title=\"Remover\"\n type=\"button\"\n (click)=\"removeItem(item.value, i);onChangeTouched()\">\n <i class=\"fas fa-times\"></i>\n </button>\n </div>\n </div>\n\n </ng-container>\n </div>\n \n</div>\n ", styles: ["table{width:100%;border-collapse:collapse;border:none}table td{vertical-align:top}table td:first-child{width:100%}input{font-size:.8rem;height:40px;border:1px solid #999;border-radius:4px 0 0 4px;padding:6px 10px;white-space:nowrap;text-overflow:ellipsis;width:100%;background-color:#fff;color:#888}.btn-plus-select{width:30px;height:40px;border:none;color:#fff;background-color:var(--verde);border-radius:0 4px 4px 0}.box-itens-selected{display:block;padding:9px;background-color:#ededed;border-radius:4px;width:100%}select:disabled{opacity:.8!important;cursor:not-allowed!important;background-color:#ededed}button:disabled{opacity:.5!important;cursor:not-allowed!important}.box-label{position:relative;display:inline-block;height:35px;min-width:60px;background-color:var(--verde);color:#fff;padding:8px 15px 10px;border:none;border-radius:5px;margin:2px;width:100%}.box-label .box-value{width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.box-label .box-action{position:absolute;right:4px;top:7px}.box-label .box-action button{color:#d72020;background-color:transparent;border:none;font-weight:700;cursor:pointer}.box-label .box-action button i{font-size:12px}\n"], dependencies: [{ kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
1784
+ TCloudUiMultiInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiMultiInputComponent, selector: "tcloud-ui-multi-input", inputs: { tcList: "tcList", placeholder: "placeholder", disabled: "disabled", loading: "loading", required: "required" }, outputs: { tcChange: "tcChange", onChange: "onChange" }, providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$2, CUSTOM_INPUT_VALIDATORS], ngImport: i0, template: "<div>\n\n <table>\n <tr>\n <td>\n <input class=\"tc-form-control\" (blur)=\"onChangeTouched()\" [(ngModel)]=\"item_value\" [class.tc-parent-validation]=\"use_validation_required\" type=\"text\" [(ngModel)]=\"input_value\" [disabled]=\"disabled || loading\" name=\"input_value\">\n </td>\n <td>\n <button\n [disabled]=\"!item_value || disabled || loading\"\n title=\"Adicionar\"\n class=\"btn-plus-select\"\n (click)=\"addItem(input_value);onChangeTouched()\"\n type=\"button\">\n <i class=\"fas fa-plus\"></i>\n </button>\n </td>\n </tr>\n </table>\n \n <div class=\"box-itens-selected\" *ngIf=\"(tcList && tcList.length > 0)\">\n <ng-container *ngFor=\"let item of tcList; let i = index\">\n \n <div class=\"box-label\" [ngStyle]=\"item_width(item.value)\">\n <div class=\"box-value\" [title]=\"item.value\" >\n {{ item.value }} \n </div>\n <div class=\"box-action\">\n <button\n [disabled]=\"tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\n title=\"Remover\"\n type=\"button\"\n (click)=\"removeItem(item.value, i);onChangeTouched()\">\n <i class=\"fas fa-times\"></i>\n </button>\n </div>\n </div>\n\n </ng-container>\n </div>\n \n</div>\n ", styles: ["table{width:100%;border-collapse:collapse;border:none}table td{vertical-align:top}table td:first-child{width:100%}input{font-size:.8rem;height:40px;border:1px solid #999;border-radius:4px 0 0 4px;padding:6px 10px;white-space:nowrap;text-overflow:ellipsis;width:100%;background-color:#fff;color:#888}.btn-plus-select{width:30px;height:40px;border:none;color:#fff;background-color:var(--verde);border-radius:0 4px 4px 0}.box-itens-selected{display:block;padding:9px;background-color:#ededed;border-radius:4px;width:100%}select:disabled{opacity:.8!important;cursor:not-allowed!important;background-color:#ededed}button:disabled{opacity:.5!important;cursor:not-allowed!important}.box-label{position:relative;display:inline-block;height:35px;min-width:60px;background-color:var(--verde);color:#fff;padding:8px 15px 10px;border:none;border-radius:5px;margin:2px;width:100%}.box-label .box-value{width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.box-label .box-action{position:absolute;right:4px;top:7px}.box-label .box-action button{color:#d72020;background-color:transparent;border:none;font-weight:700;cursor:pointer}.box-label .box-action button i{font-size:12px}\n"], dependencies: [{ kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
1785
1785
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiMultiInputComponent, decorators: [{
1786
1786
  type: Component,
1787
- args: [{ selector: 'tcloud-ui-multi-input', providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR, CUSTOM_INPUT_VALIDATORS], template: "<div>\n\n <table>\n <tr>\n <td>\n <input class=\"tc-form-control\" (blur)=\"onChangeTouched()\" [(ngModel)]=\"item_value\" [class.tc-parent-validation]=\"use_validation_required\" type=\"text\" [(ngModel)]=\"input_value\" [disabled]=\"disabled || loading\" name=\"input_value\">\n </td>\n <td>\n <button\n [disabled]=\"!item_value || disabled || loading\"\n title=\"Adicionar\"\n class=\"btn-plus-select\"\n (click)=\"addItem(input_value);onChangeTouched()\"\n type=\"button\">\n <i class=\"fas fa-plus\"></i>\n </button>\n </td>\n </tr>\n </table>\n \n <div class=\"box-itens-selected\" *ngIf=\"(tcList && tcList.length > 0)\">\n <ng-container *ngFor=\"let item of tcList; let i = index\">\n \n <div class=\"box-label\" [ngStyle]=\"item_width(item.value)\">\n <div class=\"box-value\" [title]=\"item.value\" >\n {{ item.value }} \n </div>\n <div class=\"box-action\">\n <button\n [disabled]=\"tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\n title=\"Remover\"\n type=\"button\"\n (click)=\"removeItem(item.value, i);onChangeTouched()\">\n <i class=\"fas fa-times\"></i>\n </button>\n </div>\n </div>\n\n </ng-container>\n </div>\n \n</div>\n ", styles: ["table{width:100%;border-collapse:collapse;border:none}table td{vertical-align:top}table td:first-child{width:100%}input{font-size:.8rem;height:40px;border:1px solid #999;border-radius:4px 0 0 4px;padding:6px 10px;white-space:nowrap;text-overflow:ellipsis;width:100%;background-color:#fff;color:#888}.btn-plus-select{width:30px;height:40px;border:none;color:#fff;background-color:var(--verde);border-radius:0 4px 4px 0}.box-itens-selected{display:block;padding:9px;background-color:#ededed;border-radius:4px;width:100%}select:disabled{opacity:.8!important;cursor:not-allowed!important;background-color:#ededed}button:disabled{opacity:.5!important;cursor:not-allowed!important}.box-label{position:relative;display:inline-block;height:35px;min-width:60px;background-color:var(--verde);color:#fff;padding:8px 15px 10px;border:none;border-radius:5px;margin:2px;width:100%}.box-label .box-value{width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.box-label .box-action{position:absolute;right:4px;top:7px}.box-label .box-action button{color:#d72020;background-color:transparent;border:none;font-weight:700;cursor:pointer}.box-label .box-action button i{font-size:12px}\n"] }]
1787
+ args: [{ selector: 'tcloud-ui-multi-input', providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$2, CUSTOM_INPUT_VALIDATORS], template: "<div>\n\n <table>\n <tr>\n <td>\n <input class=\"tc-form-control\" (blur)=\"onChangeTouched()\" [(ngModel)]=\"item_value\" [class.tc-parent-validation]=\"use_validation_required\" type=\"text\" [(ngModel)]=\"input_value\" [disabled]=\"disabled || loading\" name=\"input_value\">\n </td>\n <td>\n <button\n [disabled]=\"!item_value || disabled || loading\"\n title=\"Adicionar\"\n class=\"btn-plus-select\"\n (click)=\"addItem(input_value);onChangeTouched()\"\n type=\"button\">\n <i class=\"fas fa-plus\"></i>\n </button>\n </td>\n </tr>\n </table>\n \n <div class=\"box-itens-selected\" *ngIf=\"(tcList && tcList.length > 0)\">\n <ng-container *ngFor=\"let item of tcList; let i = index\">\n \n <div class=\"box-label\" [ngStyle]=\"item_width(item.value)\">\n <div class=\"box-value\" [title]=\"item.value\" >\n {{ item.value }} \n </div>\n <div class=\"box-action\">\n <button\n [disabled]=\"tcList === undefined || (tcList && tcList.length === 0) || disabled || loading\"\n title=\"Remover\"\n type=\"button\"\n (click)=\"removeItem(item.value, i);onChangeTouched()\">\n <i class=\"fas fa-times\"></i>\n </button>\n </div>\n </div>\n\n </ng-container>\n </div>\n \n</div>\n ", styles: ["table{width:100%;border-collapse:collapse;border:none}table td{vertical-align:top}table td:first-child{width:100%}input{font-size:.8rem;height:40px;border:1px solid #999;border-radius:4px 0 0 4px;padding:6px 10px;white-space:nowrap;text-overflow:ellipsis;width:100%;background-color:#fff;color:#888}.btn-plus-select{width:30px;height:40px;border:none;color:#fff;background-color:var(--verde);border-radius:0 4px 4px 0}.box-itens-selected{display:block;padding:9px;background-color:#ededed;border-radius:4px;width:100%}select:disabled{opacity:.8!important;cursor:not-allowed!important;background-color:#ededed}button:disabled{opacity:.5!important;cursor:not-allowed!important}.box-label{position:relative;display:inline-block;height:35px;min-width:60px;background-color:var(--verde);color:#fff;padding:8px 15px 10px;border:none;border-radius:5px;margin:2px;width:100%}.box-label .box-value{width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.box-label .box-action{position:absolute;right:4px;top:7px}.box-label .box-action button{color:#d72020;background-color:transparent;border:none;font-weight:700;cursor:pointer}.box-label .box-action button i{font-size:12px}\n"] }]
1788
1788
  }], ctorParameters: function () { return []; }, propDecorators: { tcList: [{
1789
1789
  type: Input
1790
1790
  }], placeholder: [{
@@ -2079,6 +2079,106 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2079
2079
  args: [{ name: 'bytes' }]
2080
2080
  }] });
2081
2081
 
2082
+ class DateBRPipe {
2083
+ constructor() {
2084
+ this.mascara = "##/##/####";
2085
+ }
2086
+ createMask(v) {
2087
+ const mask = this.mascara;
2088
+ let str = v.replace(/\s/g, '');
2089
+ let strMask = '';
2090
+ if (str.length <= 10) {
2091
+ let j = 0;
2092
+ for (let i = 0; i < mask.length; i++) {
2093
+ if (mask[i] == '#') {
2094
+ strMask += str[j++];
2095
+ }
2096
+ else {
2097
+ strMask += mask[i];
2098
+ }
2099
+ }
2100
+ }
2101
+ else {
2102
+ return v;
2103
+ }
2104
+ return strMask;
2105
+ }
2106
+ createMask4(v) {
2107
+ const mask = "##/##";
2108
+ let str = v.replace(/\s/g, '');
2109
+ let strMask = '';
2110
+ if (str.length <= 10) {
2111
+ let j = 0;
2112
+ for (let i = 0; i < mask.length; i++) {
2113
+ if (mask[i] == '#') {
2114
+ strMask += str[j++];
2115
+ }
2116
+ else {
2117
+ strMask += mask[i];
2118
+ }
2119
+ }
2120
+ }
2121
+ else {
2122
+ return v;
2123
+ }
2124
+ return strMask;
2125
+ }
2126
+ create_mask(v, _mask) {
2127
+ const mask = _mask;
2128
+ let str = v.replace(/\s/g, '');
2129
+ let strMask = '';
2130
+ if (str.length <= 10) {
2131
+ let j = 0;
2132
+ for (let i = 0; i < mask.length; i++) {
2133
+ if (mask[i] == '#') {
2134
+ strMask += str[j++];
2135
+ }
2136
+ else {
2137
+ strMask += mask[i];
2138
+ }
2139
+ }
2140
+ }
2141
+ else {
2142
+ return v;
2143
+ }
2144
+ return strMask;
2145
+ }
2146
+ transform(v) {
2147
+ if (v) {
2148
+ v = (v).replace(/\//g, "");
2149
+ if ((v).length == 1) {
2150
+ return this.create_mask(v, '#');
2151
+ }
2152
+ if ((v).length == 2) {
2153
+ return this.create_mask(v, '##/');
2154
+ }
2155
+ if ((v).length == 3) {
2156
+ return this.create_mask(v, '##/#');
2157
+ }
2158
+ if ((v).length == 4) {
2159
+ return this.create_mask(v, '##/##');
2160
+ }
2161
+ if ((v).length == 5) {
2162
+ return this.create_mask(v, '##/##/#');
2163
+ }
2164
+ if ((v).length == 6) {
2165
+ return this.create_mask(v, '##/##/##');
2166
+ }
2167
+ if ((v).length == 7) {
2168
+ return this.create_mask(v, '##/##/###');
2169
+ }
2170
+ return this.create_mask(v, '##/##/####');
2171
+ }
2172
+ return '';
2173
+ }
2174
+ }
2175
+ DateBRPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DateBRPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
2176
+ DateBRPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: DateBRPipe, name: "datebr" });
2177
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DateBRPipe, decorators: [{
2178
+ type: Pipe,
2179
+ args: [{ name: 'datebr' }]
2180
+ }] });
2181
+
2082
2182
  class TCloudUiSearchInObjectService {
2083
2183
  constructor(datepipe, statusinfo) {
2084
2184
  this.datepipe = datepipe;
@@ -2489,354 +2589,528 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
2489
2589
  }]
2490
2590
  }] });
2491
2591
 
2492
- class TCloudUiAlignDirective {
2493
- constructor(el, renderer) {
2494
- this.el = el;
2495
- this.renderer = renderer;
2496
- this._direction = 'start';
2592
+ var TCFiltersType;
2593
+ (function (TCFiltersType) {
2594
+ TCFiltersType["text"] = "text";
2595
+ TCFiltersType["number"] = "number";
2596
+ TCFiltersType["select"] = "select";
2597
+ TCFiltersType["boolean"] = "boolean";
2598
+ TCFiltersType["datetime"] = "datetime-local";
2599
+ })(TCFiltersType || (TCFiltersType = {}));
2600
+ var TCCondition;
2601
+ (function (TCCondition) {
2602
+ TCCondition["equal"] = "equal";
2603
+ TCCondition["gte"] = "gte";
2604
+ TCCondition["lte"] = "lte";
2605
+ TCCondition["lt"] = "lt";
2606
+ TCCondition["gt"] = "gt";
2607
+ })(TCCondition || (TCCondition = {}));
2608
+
2609
+ var translation = {
2610
+ ptBR: {
2611
+ days: ["Domingo", "Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sábado"],
2612
+ daysShort: ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb"],
2613
+ daysMin: ["Do", "Se", "Te", "Qu", "Qu", "Se", "Sa"],
2614
+ months: ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"],
2615
+ monthsShort: ["Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez"],
2616
+ today: "Hoje",
2617
+ clear: "Limpar",
2618
+ titleFormat: "MM y",
2619
+ format: "dd/mm/yyyy",
2620
+ weekStart: 0
2497
2621
  }
2498
- set TCalign(direction) {
2499
- if (direction) {
2500
- this._direction = direction;
2501
- this.setStyle(this.el.nativeElement);
2622
+ };
2623
+ const CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$1 = {
2624
+ provide: NG_VALUE_ACCESSOR,
2625
+ useExisting: forwardRef(() => TCloudUiDatepickerComponent),
2626
+ multi: true
2627
+ };
2628
+ const noop$1 = () => {
2629
+ };
2630
+ class TCloudUiDatepickerComponent {
2631
+ constructor(_DateBRPipe, _changeDetectorRef) {
2632
+ this._DateBRPipe = _DateBRPipe;
2633
+ this._changeDetectorRef = _changeDetectorRef;
2634
+ // multiple permite selecionar multiplas datas
2635
+ this.multiple = false;
2636
+ // maxNumberOfDates - Maximum number of dates users can select. No limit is applied if 0 is set.
2637
+ // Depende de: multiple como true
2638
+ this.maxNumberOfDates = 0;
2639
+ // daysOfWeekDisabled - Dias da semana desabilidatos = 0 para sabado até 6 para domingo
2640
+ this.daysOfWeekDisabled = [];
2641
+ // minDate - Data minima para exibicao do calendario - ex: 01/01/2020
2642
+ this.minDate = '';
2643
+ // maxDate - Data maxima para exibicao do calendario - ex: 31/12/2020
2644
+ this.maxDate = '';
2645
+ // datesDisabled - Datas desabilitadas - Ex: ['12/10/2020','25/12/2020']
2646
+ this.datesDisabled = [];
2647
+ // modeInput - Exibe um input para quando clicar abrir o calendario
2648
+ this.modeInput = false;
2649
+ this.useBorder = true;
2650
+ // onChange - Dispara a data selecionada
2651
+ this.onChange = new EventEmitter();
2652
+ this.ngModelChange = new EventEmitter();
2653
+ this.code = 'tcloud-ui-datepicker';
2654
+ this.ID = '';
2655
+ //Placeholders for the callbacks which are later providesd
2656
+ //by the Control Value Accessor
2657
+ this.onTouchedCallback = noop$1;
2658
+ this.onChangeCallback = noop$1;
2659
+ }
2660
+ set ngModel(v) {
2661
+ //console.log('ngModel', v);
2662
+ if (v && v !== this.innerValue) {
2663
+ this.innerValue = v; //this.toSetMask(v);
2502
2664
  }
2503
2665
  }
2504
2666
  ngOnInit() {
2667
+ this.ID = this.generateID();
2668
+ Datepicker.locales.ptBR = translation.ptBR;
2669
+ this.start_datepicker();
2505
2670
  }
2506
- setStyle(el) {
2507
- if (this._direction === 'start') {
2508
- this.renderer.setStyle(el, 'text-align', 'left');
2671
+ generateID() {
2672
+ return `tcloud-ui-datepicker-${Math.floor(Math.random() * Math.floor(Math.random() * Date.now()))}`;
2673
+ }
2674
+ toSetMask(v) {
2675
+ return this._DateBRPipe.transform(v);
2676
+ }
2677
+ get_options() {
2678
+ let options = {
2679
+ nextArrow: `<i class="fas fa-caret-right"></i>`,
2680
+ prevArrow: `<i class="fas fa-caret-left"></i>`,
2681
+ format: 'dd/mm/yyyy',
2682
+ daysOfWeekHighlighted: [0, 6],
2683
+ language: 'ptBR'
2684
+ };
2685
+ if ((this.daysOfWeekDisabled).length > 0) {
2686
+ options['daysOfWeekDisabled'] = this.daysOfWeekDisabled;
2509
2687
  }
2510
- if (this._direction === 'center') {
2511
- this.renderer.setStyle(el, 'text-align', 'center');
2688
+ if ((this.datesDisabled).length > 0) {
2689
+ options['datesDisabled'] = this.datesDisabled;
2512
2690
  }
2513
- if (this._direction === 'end') {
2514
- this.renderer.setStyle(el, 'text-align', 'right');
2691
+ if (this.minDate !== '') {
2692
+ options['minDate'] = this.minDate;
2515
2693
  }
2694
+ if (this.maxDate !== '') {
2695
+ options['maxDate'] = this.maxDate;
2696
+ }
2697
+ if (this.multiple) {
2698
+ options['maxNumberOfDates'] = this.maxNumberOfDates;
2699
+ }
2700
+ return options;
2516
2701
  }
2517
- }
2518
- TCloudUiAlignDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAlignDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
2519
- TCloudUiAlignDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiAlignDirective, selector: "[TCalign]", inputs: { TCalign: "TCalign" }, ngImport: i0 });
2520
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAlignDirective, decorators: [{
2521
- type: Directive,
2522
- args: [{
2523
- selector: '[TCalign]'
2524
- }]
2525
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { TCalign: [{
2526
- type: Input
2527
- }] } });
2528
-
2529
- class TCloudUiTooltipDirective {
2530
- constructor(el, renderer) {
2531
- this.el = el;
2532
- this.renderer = renderer;
2533
- this._direction = 'top';
2534
- // main
2535
- this.el_height = 0;
2536
- this.el_width = 0;
2537
- this.el_center = 0;
2538
- this.el_position = 0;
2539
- // tooltip
2540
- this.target_height = 0;
2541
- this.target_width = 0;
2542
- this.target_center = 0;
2543
- this.ID = '';
2544
- this.info_text = '';
2702
+ clearDate() {
2703
+ if (this.datepicker) {
2704
+ this.datepicker.setDate({ clear: true });
2705
+ }
2545
2706
  }
2546
- onMouseOver() {
2547
- if (this.getElement()) {
2548
- this.renderer.addClass(this.el.nativeElement, 'main-tooltip');
2549
- const el = this.getElement();
2550
- el.style.display = 'inline';
2551
- setTimeout(() => {
2552
- this.el_height = this.el.nativeElement.offsetHeight;
2553
- this.el_width = this.el.nativeElement.offsetWidth;
2554
- this.el_center = this.el_width / 2;
2555
- const rect = this.el.nativeElement?.getBoundingClientRect();
2556
- this.el_position = rect?.left || 0;
2557
- // console.log('this.el_width', this.el_width);
2558
- // console.log('this.el_center', this.el_center);
2559
- // console.log('this.el_position', this.el_position);
2560
- this.target_height = el.offsetHeight;
2561
- this.target_width = el.offsetWidth;
2562
- this.target_center = this.target_width / 2;
2563
- // console.log('target_heigth', this.target_height);
2564
- // console.log('target_width', this.target_width);
2565
- // console.log('target_center', this.target_center);
2566
- // this.renderer.setStyle(el, 'bottom', `${this.el_position}px`);
2567
- switch (this._direction) {
2568
- case 'top':
2569
- this.to_top(el);
2570
- break;
2571
- case 'bottom':
2572
- this.to_bottom(el);
2573
- break;
2574
- case 'left':
2575
- this.to_left(el);
2576
- break;
2577
- case 'right':
2578
- this.to_right(el);
2579
- break;
2707
+ start_datepicker() {
2708
+ setTimeout(() => {
2709
+ const input_datepicker = this.input_datepicker?.nativeElement;
2710
+ if (input_datepicker) {
2711
+ input_datepicker.setAttribute('placeholder', 'DD/MM/YYYY');
2712
+ if (!this.useBorder) {
2713
+ input_datepicker.setAttribute('style', 'border:none; text-align: center; max-width: 105px; padding: 0;');
2580
2714
  }
2581
- });
2582
- }
2715
+ this.datepicker = new Datepicker(input_datepicker, this.get_options());
2716
+ if (this.innerValue && this.innerValue !== '') {
2717
+ this.toSetDefaultDate(this.innerValue);
2718
+ }
2719
+ input_datepicker.addEventListener('keyup', (event) => {
2720
+ const v = (input_datepicker['value']) ? input_datepicker['value'] : '';
2721
+ input_datepicker['value'] = this.toSetMask(v);
2722
+ if ((input_datepicker['value']).length >= 10) {
2723
+ const v = (input_datepicker['value']).substring(0, 10);
2724
+ const part_date = (v).split('/');
2725
+ if ((part_date).length === 3) {
2726
+ let dia = part_date[0];
2727
+ let mes = part_date[1];
2728
+ let ano = part_date[2];
2729
+ mes = (+(mes) < 10) ? `0${+mes}` : mes;
2730
+ dia = (+(dia) < 10) ? `0${+dia}` : dia;
2731
+ const dt = new Date(ano + '-' + mes + '-' + dia);
2732
+ if (dt) {
2733
+ input_datepicker?.changeDate;
2734
+ document.getElementById(this.ID)?.blur();
2735
+ this.onChange.emit(this.innerValue);
2736
+ this.ngModelChange.emit(this.innerValue);
2737
+ }
2738
+ }
2739
+ }
2740
+ else {
2741
+ this.innerValue = undefined;
2742
+ this.onChange.emit(this.innerValue);
2743
+ this.ngModelChange.emit(this.innerValue);
2744
+ }
2745
+ //console.log('input_datepicker', input_datepicker['value'] );
2746
+ });
2747
+ input_datepicker.addEventListener('changeDate', (event) => {
2748
+ //console.log(event);
2749
+ if (event?.detail?.date) {
2750
+ this.toSelectedDate(event.detail);
2751
+ }
2752
+ else {
2753
+ //console.log('event null');
2754
+ this.innerValue = '';
2755
+ this.ngModelChange.emit(this.innerValue);
2756
+ }
2757
+ });
2758
+ }
2759
+ });
2583
2760
  }
2584
- onMouseOut() {
2585
- if (this.getElement()) {
2586
- const el = this.getElement();
2587
- el.style.display = 'none';
2588
- this.renderer.removeClass(this.el.nativeElement, 'main-tooltip');
2761
+ toSetDate() {
2762
+ // Ex de uso
2763
+ const dates = ['18/11/2022'];
2764
+ if (this.datepicker) {
2765
+ this.datepicker.setDate(dates);
2589
2766
  }
2590
2767
  }
2591
- set TCtooltip(tooltip) {
2592
- if (tooltip) {
2593
- this.check(tooltip);
2768
+ toSetDefaultDate(date) {
2769
+ if (date === undefined || date === null || date === '') {
2770
+ this.clearDate();
2771
+ return;
2772
+ }
2773
+ let dates = [];
2774
+ if (date && typeof date === 'string') {
2775
+ if ((date).includes(',')) {
2776
+ const dates = (date).split(',');
2777
+ date = dates;
2778
+ if (!this.multiple) {
2779
+ this.innerValue = date = dates[0];
2780
+ this.ngModelChange.emit(this.innerValue);
2781
+ }
2782
+ }
2783
+ }
2784
+ if (date && typeof date === 'string') {
2785
+ (dates).push(date);
2786
+ }
2787
+ else {
2788
+ dates = date;
2789
+ }
2790
+ if (this.datepicker) {
2791
+ this.datepicker.setDate(dates);
2594
2792
  }
2595
2793
  }
2596
- set TCdirection(direction) {
2597
- if (direction) {
2598
- this._direction = direction;
2794
+ toSelectedDate(detail) {
2795
+ if (detail.datepicker.dates && (detail.datepicker.dates).length > 0) {
2796
+ if (this.multiple) {
2797
+ let dates = [];
2798
+ for (let i = 0; i < (detail.datepicker.dates).length; i++) {
2799
+ const timeStamp = detail.datepicker.dates[i];
2800
+ (dates).push(this.format_date(timeStamp));
2801
+ }
2802
+ this.innerValue = dates;
2803
+ this.onChange.emit(this.innerValue);
2804
+ }
2805
+ else {
2806
+ const timeStamp = detail.datepicker.dates[0];
2807
+ const date = this.format_date(timeStamp);
2808
+ this.onChange.emit(date);
2809
+ this.innerValue = date;
2810
+ }
2599
2811
  }
2812
+ else {
2813
+ this.clearDate();
2814
+ this.innerValue = null;
2815
+ this.onChange.emit(this.innerValue);
2816
+ }
2817
+ this.value = this.innerValue;
2818
+ this.ngModelChange.emit(this.innerValue);
2819
+ }
2820
+ format_date(timeStamp) {
2821
+ var date = new Date(timeStamp);
2822
+ let dia = `${date.getDate()}`;
2823
+ let mes = `${date.getMonth() + 1}`;
2824
+ let ano = `${date.getFullYear()}`;
2825
+ dia = (+(dia) < 10) ? `0${+dia}` : dia;
2826
+ mes = (+(mes) < 10) ? `0${+mes}` : mes;
2827
+ const dateFormat = `${dia}/${mes}/${ano}`;
2828
+ return dateFormat;
2829
+ }
2830
+ toClickIn(id) {
2831
+ const element = document.getElementById(id);
2832
+ setTimeout(() => {
2833
+ element?.datepicker?.show();
2834
+ });
2600
2835
  }
2601
- ngOnInit() {
2602
- }
2603
- generateID() {
2604
- return `tc-tooltip-${Math.floor(Math.random() * Math.floor(Math.random() * Date.now()))}`;
2605
- }
2606
- getElement() {
2607
- return document.getElementById(this.ID) || undefined;
2836
+ //get accessor
2837
+ get value() {
2838
+ return this.innerValue;
2608
2839
  }
2609
- check(tooltip) {
2610
- this.ID = this.generateID();
2611
- this.info_text = tooltip;
2612
- let el = this.el.nativeElement;
2613
- this.main_el = el;
2614
- if (el) {
2615
- this.create_tooltip(tooltip, el);
2840
+ ;
2841
+ //set accessor including call the onchange callback
2842
+ set value(v) {
2843
+ //console.log('value', v);
2844
+ if (v !== this.innerValue) {
2845
+ this.innerValue = v; // this.toSetMask(v);
2846
+ this.onChangeCallback(v);
2616
2847
  }
2617
2848
  else {
2618
- console.log("TCL: tooltip -> el", this.el.nativeElement);
2849
+ // this.innerValue = '';
2619
2850
  }
2620
2851
  }
2621
- setStyle(el) {
2622
- // this.renderer.setStyle(el, 'position', 'relative');
2623
- // this.renderer.setStyle(el, 'display', 'inline');
2624
- }
2625
- create_tooltip(tip, el) {
2626
- this.setStyle(el);
2627
- const tooltip = document.createElement("div");
2628
- tooltip.setAttribute('id', this.ID);
2629
- tooltip.setAttribute('style', `
2630
- position: absolute;
2631
- display: none;
2632
- padding: 10px;
2633
- border-radius: 10px;
2634
- text-align: center;
2635
- width: max-content;
2636
- max-width: 250px;
2637
- background-color: transparent;
2638
- color: transparent;
2639
- z-index: 1090;
2640
- bottom: ${this.el_position}px;
2641
- left: ${this.target_center}px;
2642
- `);
2643
- tooltip.innerHTML = tip;
2644
- el.insertBefore(tooltip, null);
2645
- }
2646
- to_top(el) {
2647
- const pos = this.el_center - (this.target_center);
2648
- this.renderer.setStyle(el, 'left', `${(pos)}px`);
2649
- this.renderer.setStyle(el, 'bottom', `${(this.el_height + 7)}px`);
2650
- el.setAttribute('class', 'tc-directive-tooltip tc-directive-tooltip-top');
2852
+ //Set touched on blur
2853
+ onBlur() {
2854
+ this.onTouchedCallback();
2651
2855
  }
2652
- to_bottom(el) {
2653
- const pos = this.el_center - (this.target_center);
2654
- this.renderer.setStyle(el, 'left', `${(pos)}px`);
2655
- this.renderer.setStyle(el, 'bottom', `-${(this.target_height + 7)}px`);
2656
- el.setAttribute('class', 'tc-directive-tooltip tc-directive-tooltip-bottom');
2856
+ //From ControlValueAccessor interface
2857
+ writeValue(value) {
2858
+ if (value !== this.innerValue) {
2859
+ this.innerValue = value;
2860
+ this.toSetDefaultDate(value);
2861
+ }
2657
2862
  }
2658
- to_right(el) {
2659
- const pos = this.el_width;
2660
- this.renderer.setStyle(el, 'left', `${(pos + 11)}px`);
2661
- this.renderer.setStyle(el, 'bottom', `-${(((this.target_height) / 2) - (this.el_height / 2))}px`);
2662
- el.setAttribute('class', 'tc-directive-tooltip tc-directive-tooltip-right');
2863
+ //From ControlValueAccessor interface
2864
+ registerOnChange(fn) {
2865
+ this.onChangeCallback = fn;
2663
2866
  }
2664
- to_left(el) {
2665
- const pos = -((this.target_width));
2666
- this.renderer.setStyle(el, 'left', `${(pos - 11)}px`);
2667
- this.renderer.setStyle(el, 'bottom', `-${(((this.target_height) / 2) - (this.el_height / 2))}px`);
2668
- el.setAttribute('class', 'tc-directive-tooltip tc-directive-tooltip-left');
2867
+ //From ControlValueAccessor interface
2868
+ registerOnTouched(fn) {
2869
+ this.onTouchedCallback = fn;
2669
2870
  }
2670
2871
  }
2671
- TCloudUiTooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiTooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
2672
- TCloudUiTooltipDirectivedir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiTooltipDirective, selector: "[TCtooltip]", inputs: { TCtooltip: "TCtooltip", TCdirection: "TCdirection" }, host: { listeners: { "mouseover": "onMouseOver()", "mouseout": "onMouseOut()" } }, ngImport: i0 });
2673
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiTooltipDirective, decorators: [{
2674
- type: Directive,
2675
- args: [{
2676
- selector: '[TCtooltip]'
2677
- }]
2678
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { onMouseOver: [{
2679
- type: HostListener,
2680
- args: ['mouseover']
2681
- }], onMouseOut: [{
2682
- type: HostListener,
2683
- args: ['mouseout']
2684
- }], TCtooltip: [{
2872
+ TCloudUiDatepickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDatepickerComponent, deps: [{ token: DateBRPipe }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2873
+ TCloudUiDatepickerComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiDatepickerComponent, selector: "tcloud-ui-datepicker", inputs: { multiple: "multiple", maxNumberOfDates: "maxNumberOfDates", daysOfWeekDisabled: "daysOfWeekDisabled", minDate: "minDate", maxDate: "maxDate", datesDisabled: "datesDisabled", modeInput: "modeInput", useBorder: "useBorder", ngModel: "ngModel", code: "code" }, outputs: { onChange: "onChange", ngModelChange: "ngModelChange" }, providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$1], viewQueries: [{ propertyName: "input_datepicker", first: true, predicate: ["input_datepicker"], descendants: true }], ngImport: i0, template: "<!-- Input mode -->\r\n<ng-container *ngIf=\"modeInput\">\r\n\r\n <div class=\"input-tc-datepicker\" [class.no-border]=\"!useBorder\">\r\n <table class=\"table-box-input\">\r\n <tr>\r\n <td>\r\n <div class=\"delimiter-time-icon\" (click)=\"toClickIn(ID)\" ><i class=\"fas fa-calendar-alt\"></i></div>\r\n </td>\r\n <td>\r\n <input #input_datepicker type=\"text\" name=\"{{ID}}\" id=\"{{ID}}\" class=\"form-control\" >\r\n </td>\r\n </tr>\r\n </table>\r\n </div>\r\n\r\n \r\n \r\n</ng-container>\r\n\r\n<!-- Inline mode -->\r\n<ng-container *ngIf=\"!modeInput\"> \r\n <div #input_datepicker id=\"{{ID}}\" pattern=\"/^\\d{2}\\/\\d{2}\\/\\d{4}$/\"></div>\r\n</ng-container>\r\n\r\n\r\n<!-- EX de uso \r\n <tc-datepicker \r\n [multiple]=\"false\"\r\n [daysOfWeekDisabled]=\"[0,6]\"\r\n [minDate]=\"'18/11/2021'\"\r\n [maxDate]=\"'18/12/2023'\"\r\n [datesDisabled]=\"['12/10/2022','25/12/2022']\"\r\n [modeInput]=\"false\"\r\n [(ngModel)]=\"dateValue\" >\r\n </tc-datepicker>\r\n \r\n // multiple = false\r\n // dateValue - string - pode ser: 12/12/2022 \r\n\r\n // multiple = true\r\n // dateValue - string - pode ser: 11/12/2022,12/12/2022 ... \r\n\r\n <pre>data: {{ dateValue }}</pre>\r\n-->\r\n", styles: [".input_datepicker{width:100%;max-width:290px}.input-tc-datepicker{border:1px solid #ccc;border-radius:3px}.input-tc-datepicker.no-border{border:none!important}.input-tc-datepicker .table-box-input{width:100%}.input-tc-datepicker .table-box-input td:first-child{width:20px}.input-tc-datepicker .table-box-input td:first-child .delimiter-time-icon{text-align:center;cursor:pointer}.input-tc-datepicker .table-box-input input{border:none}\n", ".datepicker{display:none}.datepicker.active{display:block}.datepicker-dropdown{left:0;padding-top:4px;position:absolute;top:0;z-index:20}.datepicker-dropdown.datepicker-orient-top{padding-bottom:4px;padding-top:0}.datepicker-picker{background-color:#fff;border-radius:4px;display:inline-block}.datepicker-dropdown .datepicker-picker{box-shadow:0 2px 3px #0a0a0a1a,0 0 0 1px #0a0a0a1a}.datepicker-picker span{-webkit-touch-callout:none;border:0;border-radius:4px;cursor:default;display:block;flex:1;text-align:center;-webkit-user-select:none;user-select:none}.datepicker-main{padding:2px}.datepicker-footer{background-color:#f5f5f5;box-shadow:inset 0 1px 1px #0a0a0a1a}.datepicker-controls,.datepicker-grid,.datepicker-view,.datepicker-view .days-of-week{display:flex}.datepicker-grid{flex-wrap:wrap}.datepicker-view .days .datepicker-cell,.datepicker-view .dow{flex-basis:14.2857142857%}.datepicker-view.datepicker-grid .datepicker-cell{flex-basis:25%}.datepicker-cell,.datepicker-view .week{height:2.25rem;line-height:2.25rem}.datepicker-title{background-color:#f5f5f5;box-shadow:inset 0 -1px 1px #0a0a0a1a;font-weight:700;padding:.375rem .75rem;text-align:center}.datepicker-header .datepicker-controls{padding:2px 2px 0}.datepicker-controls .button{align-items:center;background-color:#fff;border:1px solid #dbdbdb;border-radius:4px;box-shadow:none;color:#363636;cursor:pointer;display:inline-flex;font-size:1rem;height:2.25em;justify-content:center;line-height:1.5;margin:0;padding:calc(.375em - 1px) .75em;position:relative;text-align:center;vertical-align:top;white-space:nowrap}.datepicker-controls .button:active,.datepicker-controls .button:focus{outline:none}.datepicker-controls .button:hover{border-color:#b5b5b5;color:#363636}.datepicker-controls .button:focus{border-color:#3273dc;color:#363636}.datepicker-controls .button:focus:not(:active){box-shadow:0 0 0 .125em #3273dc40}.datepicker-controls .button:active{border-color:#4a4a4a;color:#363636}.datepicker-controls .button[disabled]{cursor:not-allowed}.datepicker-header .datepicker-controls .button{border-color:transparent;font-weight:700}.datepicker-header .datepicker-controls .button:hover{background-color:#f9f9f9}.datepicker-header .datepicker-controls .button:focus:not(:active){box-shadow:0 0 0 .125em #ffffff40}.datepicker-header .datepicker-controls .button:active{background-color:#f2f2f2}.datepicker-header .datepicker-controls .button[disabled]{box-shadow:none}.datepicker-footer .datepicker-controls .button{border-radius:2px;font-size:.75rem;margin:calc(.375rem - 1px) .375rem;width:100%}.datepicker-controls .view-switch{flex:auto}.datepicker-controls .next-btn,.datepicker-controls .prev-btn{padding-left:.375rem;padding-right:.375rem;width:2.25rem}.datepicker-controls .next-btn.disabled,.datepicker-controls .prev-btn.disabled{visibility:hidden}.datepicker-view .dow{font-size:.875rem;font-weight:700;height:1.5rem;line-height:1.5rem}.datepicker-view .week{color:#b5b5b5;font-size:.75rem;width:2.25rem}@media (max-width:22.5rem){.datepicker-view .week{width:1.96875rem}}.datepicker-grid{width:15.75rem}@media (max-width:22.5rem){.calendar-weeks+.days .datepicker-grid{width:13.78125rem}}.datepicker-cell:not(.disabled):hover{background-color:#f9f9f9;cursor:pointer}.datepicker-cell.focused:not(.selected){background-color:#e8e8e8}.datepicker-cell.selected,.datepicker-cell.selected:hover{background-color:#3273dc;color:#fff;font-weight:600}.datepicker-cell.disabled{color:#dbdbdb}.datepicker-cell.next:not(.disabled),.datepicker-cell.prev:not(.disabled){color:#7a7a7a}.datepicker-cell.next.selected,.datepicker-cell.prev.selected{color:#e6e6e6}.datepicker-cell.highlighted:not(.selected):not(.range):not(.today){background-color:#f5f5f5;border-radius:0}.datepicker-cell.highlighted:not(.selected):not(.range):not(.today):not(.disabled):hover{background-color:#eee}.datepicker-cell.highlighted:not(.selected):not(.range):not(.today).focused{background-color:#e8e8e8}.datepicker-cell.today:not(.selected){background-color:#00d1b2}.datepicker-cell.today:not(.selected):not(.disabled){color:#fff}.datepicker-cell.today.focused:not(.selected){background-color:#00c4a7}.datepicker-cell.range-end:not(.selected),.datepicker-cell.range-start:not(.selected){background-color:#b5b5b5;color:#fff}.datepicker-cell.range-end.focused:not(.selected),.datepicker-cell.range-start.focused:not(.selected){background-color:#afafaf}.datepicker-cell.range-start{border-radius:4px 0 0 4px}.datepicker-cell.range-end{border-radius:0 4px 4px 0}.datepicker-cell.range{background-color:#dbdbdb;border-radius:0}.datepicker-cell.range:not(.disabled):not(.focused):not(.today):hover{background-color:#d5d5d5}.datepicker-cell.range.disabled{color:#c2c2c2}.datepicker-cell.range.focused{background-color:#cfcfcf}.datepicker-view.datepicker-grid .datepicker-cell{height:4.5rem;line-height:4.5rem}.datepicker-input.in-edit{border-color:#2366d1}.datepicker-input.in-edit:active,.datepicker-input.in-edit:focus{box-shadow:0 0 .25em .25em #2366d133}\n", ".datepicker-picker{border:1px solid #ccc;padding:10px 15px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
2874
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDatepickerComponent, decorators: [{
2875
+ type: Component,
2876
+ args: [{ selector: 'tcloud-ui-datepicker', providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$1], encapsulation: ViewEncapsulation.None, template: "<!-- Input mode -->\r\n<ng-container *ngIf=\"modeInput\">\r\n\r\n <div class=\"input-tc-datepicker\" [class.no-border]=\"!useBorder\">\r\n <table class=\"table-box-input\">\r\n <tr>\r\n <td>\r\n <div class=\"delimiter-time-icon\" (click)=\"toClickIn(ID)\" ><i class=\"fas fa-calendar-alt\"></i></div>\r\n </td>\r\n <td>\r\n <input #input_datepicker type=\"text\" name=\"{{ID}}\" id=\"{{ID}}\" class=\"form-control\" >\r\n </td>\r\n </tr>\r\n </table>\r\n </div>\r\n\r\n \r\n \r\n</ng-container>\r\n\r\n<!-- Inline mode -->\r\n<ng-container *ngIf=\"!modeInput\"> \r\n <div #input_datepicker id=\"{{ID}}\" pattern=\"/^\\d{2}\\/\\d{2}\\/\\d{4}$/\"></div>\r\n</ng-container>\r\n\r\n\r\n<!-- EX de uso \r\n <tc-datepicker \r\n [multiple]=\"false\"\r\n [daysOfWeekDisabled]=\"[0,6]\"\r\n [minDate]=\"'18/11/2021'\"\r\n [maxDate]=\"'18/12/2023'\"\r\n [datesDisabled]=\"['12/10/2022','25/12/2022']\"\r\n [modeInput]=\"false\"\r\n [(ngModel)]=\"dateValue\" >\r\n </tc-datepicker>\r\n \r\n // multiple = false\r\n // dateValue - string - pode ser: 12/12/2022 \r\n\r\n // multiple = true\r\n // dateValue - string - pode ser: 11/12/2022,12/12/2022 ... \r\n\r\n <pre>data: {{ dateValue }}</pre>\r\n-->\r\n", styles: [".input_datepicker{width:100%;max-width:290px}.input-tc-datepicker{border:1px solid #ccc;border-radius:3px}.input-tc-datepicker.no-border{border:none!important}.input-tc-datepicker .table-box-input{width:100%}.input-tc-datepicker .table-box-input td:first-child{width:20px}.input-tc-datepicker .table-box-input td:first-child .delimiter-time-icon{text-align:center;cursor:pointer}.input-tc-datepicker .table-box-input input{border:none}\n", ".datepicker{display:none}.datepicker.active{display:block}.datepicker-dropdown{left:0;padding-top:4px;position:absolute;top:0;z-index:20}.datepicker-dropdown.datepicker-orient-top{padding-bottom:4px;padding-top:0}.datepicker-picker{background-color:#fff;border-radius:4px;display:inline-block}.datepicker-dropdown .datepicker-picker{box-shadow:0 2px 3px #0a0a0a1a,0 0 0 1px #0a0a0a1a}.datepicker-picker span{-webkit-touch-callout:none;border:0;border-radius:4px;cursor:default;display:block;flex:1;text-align:center;-webkit-user-select:none;user-select:none}.datepicker-main{padding:2px}.datepicker-footer{background-color:#f5f5f5;box-shadow:inset 0 1px 1px #0a0a0a1a}.datepicker-controls,.datepicker-grid,.datepicker-view,.datepicker-view .days-of-week{display:flex}.datepicker-grid{flex-wrap:wrap}.datepicker-view .days .datepicker-cell,.datepicker-view .dow{flex-basis:14.2857142857%}.datepicker-view.datepicker-grid .datepicker-cell{flex-basis:25%}.datepicker-cell,.datepicker-view .week{height:2.25rem;line-height:2.25rem}.datepicker-title{background-color:#f5f5f5;box-shadow:inset 0 -1px 1px #0a0a0a1a;font-weight:700;padding:.375rem .75rem;text-align:center}.datepicker-header .datepicker-controls{padding:2px 2px 0}.datepicker-controls .button{align-items:center;background-color:#fff;border:1px solid #dbdbdb;border-radius:4px;box-shadow:none;color:#363636;cursor:pointer;display:inline-flex;font-size:1rem;height:2.25em;justify-content:center;line-height:1.5;margin:0;padding:calc(.375em - 1px) .75em;position:relative;text-align:center;vertical-align:top;white-space:nowrap}.datepicker-controls .button:active,.datepicker-controls .button:focus{outline:none}.datepicker-controls .button:hover{border-color:#b5b5b5;color:#363636}.datepicker-controls .button:focus{border-color:#3273dc;color:#363636}.datepicker-controls .button:focus:not(:active){box-shadow:0 0 0 .125em #3273dc40}.datepicker-controls .button:active{border-color:#4a4a4a;color:#363636}.datepicker-controls .button[disabled]{cursor:not-allowed}.datepicker-header .datepicker-controls .button{border-color:transparent;font-weight:700}.datepicker-header .datepicker-controls .button:hover{background-color:#f9f9f9}.datepicker-header .datepicker-controls .button:focus:not(:active){box-shadow:0 0 0 .125em #ffffff40}.datepicker-header .datepicker-controls .button:active{background-color:#f2f2f2}.datepicker-header .datepicker-controls .button[disabled]{box-shadow:none}.datepicker-footer .datepicker-controls .button{border-radius:2px;font-size:.75rem;margin:calc(.375rem - 1px) .375rem;width:100%}.datepicker-controls .view-switch{flex:auto}.datepicker-controls .next-btn,.datepicker-controls .prev-btn{padding-left:.375rem;padding-right:.375rem;width:2.25rem}.datepicker-controls .next-btn.disabled,.datepicker-controls .prev-btn.disabled{visibility:hidden}.datepicker-view .dow{font-size:.875rem;font-weight:700;height:1.5rem;line-height:1.5rem}.datepicker-view .week{color:#b5b5b5;font-size:.75rem;width:2.25rem}@media (max-width:22.5rem){.datepicker-view .week{width:1.96875rem}}.datepicker-grid{width:15.75rem}@media (max-width:22.5rem){.calendar-weeks+.days .datepicker-grid{width:13.78125rem}}.datepicker-cell:not(.disabled):hover{background-color:#f9f9f9;cursor:pointer}.datepicker-cell.focused:not(.selected){background-color:#e8e8e8}.datepicker-cell.selected,.datepicker-cell.selected:hover{background-color:#3273dc;color:#fff;font-weight:600}.datepicker-cell.disabled{color:#dbdbdb}.datepicker-cell.next:not(.disabled),.datepicker-cell.prev:not(.disabled){color:#7a7a7a}.datepicker-cell.next.selected,.datepicker-cell.prev.selected{color:#e6e6e6}.datepicker-cell.highlighted:not(.selected):not(.range):not(.today){background-color:#f5f5f5;border-radius:0}.datepicker-cell.highlighted:not(.selected):not(.range):not(.today):not(.disabled):hover{background-color:#eee}.datepicker-cell.highlighted:not(.selected):not(.range):not(.today).focused{background-color:#e8e8e8}.datepicker-cell.today:not(.selected){background-color:#00d1b2}.datepicker-cell.today:not(.selected):not(.disabled){color:#fff}.datepicker-cell.today.focused:not(.selected){background-color:#00c4a7}.datepicker-cell.range-end:not(.selected),.datepicker-cell.range-start:not(.selected){background-color:#b5b5b5;color:#fff}.datepicker-cell.range-end.focused:not(.selected),.datepicker-cell.range-start.focused:not(.selected){background-color:#afafaf}.datepicker-cell.range-start{border-radius:4px 0 0 4px}.datepicker-cell.range-end{border-radius:0 4px 4px 0}.datepicker-cell.range{background-color:#dbdbdb;border-radius:0}.datepicker-cell.range:not(.disabled):not(.focused):not(.today):hover{background-color:#d5d5d5}.datepicker-cell.range.disabled{color:#c2c2c2}.datepicker-cell.range.focused{background-color:#cfcfcf}.datepicker-view.datepicker-grid .datepicker-cell{height:4.5rem;line-height:4.5rem}.datepicker-input.in-edit{border-color:#2366d1}.datepicker-input.in-edit:active,.datepicker-input.in-edit:focus{box-shadow:0 0 .25em .25em #2366d133}\n", ".datepicker-picker{border:1px solid #ccc;padding:10px 15px}\n"] }]
2877
+ }], ctorParameters: function () { return [{ type: DateBRPipe }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { multiple: [{
2685
2878
  type: Input
2686
- }], TCdirection: [{
2879
+ }], maxNumberOfDates: [{
2880
+ type: Input
2881
+ }], daysOfWeekDisabled: [{
2882
+ type: Input
2883
+ }], minDate: [{
2884
+ type: Input
2885
+ }], maxDate: [{
2886
+ type: Input
2887
+ }], datesDisabled: [{
2888
+ type: Input
2889
+ }], modeInput: [{
2890
+ type: Input
2891
+ }], useBorder: [{
2892
+ type: Input
2893
+ }], onChange: [{
2894
+ type: Output
2895
+ }], ngModel: [{
2896
+ type: Input
2897
+ }], ngModelChange: [{
2898
+ type: Output
2899
+ }], input_datepicker: [{
2900
+ type: ViewChild,
2901
+ args: ['input_datepicker', { static: false }]
2902
+ }], code: [{
2687
2903
  type: Input
2688
2904
  }] } });
2689
2905
 
2690
- class TCloudUiDirectiveModule {
2691
- }
2692
- TCloudUiDirectiveModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2693
- TCloudUiDirectiveModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDirectiveModule, declarations: [TCloudUiTooltipDirective,
2694
- TCloudUiAlignDirective], exports: [TCloudUiTooltipDirective,
2695
- TCloudUiAlignDirective] });
2696
- TCloudUiDirectiveModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDirectiveModule });
2697
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDirectiveModule, decorators: [{
2698
- type: NgModule,
2699
- args: [{
2700
- declarations: [
2701
- TCloudUiTooltipDirective,
2702
- TCloudUiAlignDirective
2703
- ],
2704
- exports: [
2705
- TCloudUiTooltipDirective,
2706
- TCloudUiAlignDirective
2707
- ],
2708
- }]
2709
- }] });
2710
-
2711
- class TCloudUiPipesModule {
2712
- }
2713
- TCloudUiPipesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiPipesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2714
- TCloudUiPipesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiPipesModule, declarations: [MonthNamePipe,
2715
- StatusInfoPipe,
2716
- RespectivePipe,
2717
- CNPJPipe,
2718
- CPFPipe,
2719
- BytesPipe], imports: [CommonModule], exports: [DatePipe,
2720
- MonthNamePipe,
2721
- StatusInfoPipe,
2722
- RespectivePipe,
2723
- CNPJPipe,
2724
- CPFPipe,
2725
- BytesPipe] });
2726
- TCloudUiPipesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiPipesModule, providers: [
2727
- DatePipe,
2728
- MonthNamePipe,
2729
- StatusInfoPipe,
2730
- RespectivePipe,
2731
- CNPJPipe,
2732
- CPFPipe,
2733
- BytesPipe
2734
- ], imports: [CommonModule] });
2735
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiPipesModule, decorators: [{
2736
- type: NgModule,
2737
- args: [{
2738
- imports: [
2739
- CommonModule,
2740
- ],
2741
- declarations: [
2742
- MonthNamePipe,
2743
- StatusInfoPipe,
2744
- RespectivePipe,
2745
- CNPJPipe,
2746
- CPFPipe,
2747
- BytesPipe
2748
- ],
2749
- exports: [
2750
- DatePipe,
2751
- MonthNamePipe,
2752
- StatusInfoPipe,
2753
- RespectivePipe,
2754
- CNPJPipe,
2755
- CPFPipe,
2756
- BytesPipe
2757
- ],
2758
- providers: [
2759
- DatePipe,
2760
- MonthNamePipe,
2761
- StatusInfoPipe,
2762
- RespectivePipe,
2763
- CNPJPipe,
2764
- CPFPipe,
2765
- BytesPipe
2766
- ]
2767
- }]
2768
- }] });
2769
-
2770
- class TCloudUiLoadingTransitionsService {
2906
+ const CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR = {
2907
+ provide: NG_VALUE_ACCESSOR,
2908
+ useExisting: forwardRef(() => TCloudUiDatepickerTimeComponent),
2909
+ multi: true
2910
+ };
2911
+ const noop = () => {
2912
+ };
2913
+ class TCloudUiDatepickerTimeComponent {
2771
2914
  constructor() {
2772
- this.ID = 'tcloud-ui-loading-transitions';
2915
+ this.ngModelChange = new EventEmitter();
2916
+ this.onChange = new EventEmitter();
2917
+ this.eventChange = new EventEmitter();
2918
+ this.DD_MM_YYYY = '';
2919
+ this.HH = '';
2920
+ this.MM = '';
2921
+ this.ID = '';
2922
+ //Placeholders for the callbacks which are later providesd
2923
+ //by the Control Value Accessor
2924
+ this.onTouchedCallback = noop;
2925
+ this.onChangeCallback = noop;
2773
2926
  }
2774
- /**
2775
- * Inicia a tela de bloqueio para carregamento de tarefa
2776
- */
2777
- start() {
2778
- this.create_loading_transition();
2779
- if (document.getElementById(this.ID)) {
2780
- const box = document.getElementById(this.ID);
2781
- box?.classList.add('tcloud-ui-start-loading');
2927
+ set ngModel(v) {
2928
+ if (v && v !== this.innerValue) {
2929
+ this.innerValue = v;
2782
2930
  }
2783
2931
  }
2784
- /**
2785
- * Encerra a tela de bloqueio
2786
- */
2787
- stop() {
2788
- if (document.getElementById(this.ID)) {
2789
- const box = document.getElementById(this.ID);
2790
- box?.classList.remove('tcloud-ui-start-loading');
2791
- const body = document.getElementsByTagName('body')[0];
2792
- body.classList.remove('tcloud-ui-body-loading-transitions');
2932
+ ngOnInit() {
2933
+ this.ID = this.generateID();
2934
+ }
2935
+ generateID() {
2936
+ return `tcloud-ui-datepicker-time-${Math.floor(Math.random() * Math.floor(Math.random() * Date.now()))}`;
2937
+ }
2938
+ toSetDate(date) {
2939
+ console.log('toSetDate', date);
2940
+ this.set_date_by_datepicker(date);
2941
+ }
2942
+ toSetTime() {
2943
+ if (this.DD_MM_YYYY && ((this.DD_MM_YYYY).trim()).length === 10) {
2944
+ const date = (this.DD_MM_YYYY).replace(/-/g, '/');
2945
+ let date_part = (date).split('/');
2946
+ let dd = date_part[0];
2947
+ let mm = date_part[1];
2948
+ let yy = date_part[2];
2949
+ const datetime = new Date(`${yy}-${mm}-${dd}`);
2950
+ if (this.checkIsDate(datetime)) {
2951
+ this.set_date_by_datepicker(date);
2952
+ }
2793
2953
  }
2794
2954
  }
2795
- create_loading_transition() {
2796
- let box = null;
2797
- if (document.getElementById(this.ID)) {
2798
- box = document.getElementById(this.ID);
2955
+ set_date_by_datepicker(date) {
2956
+ if (date) {
2957
+ date = (date).replace(/-/g, '/');
2958
+ let date_part = (date).split('/');
2959
+ let dia = date_part[0];
2960
+ let mes = date_part[1];
2961
+ let ano = date_part[2];
2962
+ let hh = this.HH;
2963
+ if (!hh) {
2964
+ hh = '00';
2965
+ }
2966
+ else {
2967
+ if ((+(hh) >= 0 && +(hh) < 24)) {
2968
+ hh = (+(hh) < 10) ? `0${+(hh)}` : `${+(hh)}`;
2969
+ }
2970
+ else {
2971
+ hh = '00';
2972
+ }
2973
+ }
2974
+ let mm = this.MM;
2975
+ if (!mm) {
2976
+ mm = '00';
2977
+ }
2978
+ else {
2979
+ if ((+(mm) >= 0 && +(mm) < 60)) {
2980
+ mm = (+(mm) < 10) ? `0${+(mm)}` : `${+(mm)}`;
2981
+ }
2982
+ else {
2983
+ mm = '00';
2984
+ }
2985
+ }
2986
+ if (hh === '00') {
2987
+ this.HH = hh;
2988
+ }
2989
+ if (mm === '00') {
2990
+ this.MM = mm;
2991
+ }
2992
+ const str_date = `${ano}-${mes}-${dia}T${hh}:${mm}:00`;
2993
+ const datetime = new Date(str_date);
2994
+ if (this.checkIsDate(datetime)) {
2995
+ this.innerValue = datetime;
2996
+ }
2997
+ else {
2998
+ this.innerValue = undefined;
2999
+ }
3000
+ this.ngModelChange.emit(this.innerValue);
3001
+ this.onChange.emit(this.innerValue);
3002
+ this.eventChange.emit(this.datepickertime?.nativeElement);
3003
+ console.log('str_date', str_date);
2799
3004
  }
2800
3005
  else {
2801
- box = document.createElement("div");
2802
- box.setAttribute('id', this.ID);
3006
+ this.innerValue = undefined;
3007
+ this.ngModelChange.emit(this.innerValue);
3008
+ this.onChange.emit(this.innerValue);
3009
+ this.eventChange.emit(this.datepickertime?.nativeElement);
3010
+ }
3011
+ }
3012
+ // Distribuir os valores da data por pedaços: data - hora - min
3013
+ to_date_hh_mm(d) {
3014
+ let dia = `${(d).getDate()}`;
3015
+ dia = (+(dia) < 10) ? `0${+dia}` : dia;
3016
+ let mes = `${(d).getMonth() + 1}`;
3017
+ mes = (+(mes) < 10) ? `0${+mes}` : mes;
3018
+ let ano = `${(d).getFullYear()}`;
3019
+ let hh = `${(d).getHours()}`;
3020
+ let mm = `${(d).getMinutes()}`;
3021
+ if (hh && (+(hh) < 0 || +(hh) > 23)) {
3022
+ hh = '00';
3023
+ }
3024
+ hh = (hh) ? ((+(hh) < 10) ? `0${hh}` : hh) : '00';
3025
+ if (mm && (+(mm) < 0 || +(mm) > 59)) {
3026
+ mm = '00';
3027
+ }
3028
+ mm = (mm) ? ((+(mm) < 10) ? `0${mm}` : mm) : '00';
3029
+ this.MM = mm;
3030
+ this.HH = hh;
3031
+ this.DD_MM_YYYY = `${dia}/${mes}/${ano}`;
3032
+ }
3033
+ checkIsDate(d) {
3034
+ if (Object.prototype.toString.call(d) === "[object Date]") {
3035
+ if (isNaN(d)) {
3036
+ return false;
3037
+ }
3038
+ else {
3039
+ return true;
3040
+ }
2803
3041
  }
2804
- box.style.display = 'none';
2805
- box.innerHTML = `<div class="tc-loading-icon"><i class="fas fa-spinner fa-spin"></i></div>`;
2806
- const body = document.getElementsByTagName('body')[0];
2807
- body.appendChild(box);
2808
- body.classList.add('tcloud-ui-body-loading-transitions');
3042
+ return false;
2809
3043
  }
2810
- }
2811
- TCloudUiLoadingTransitionsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiLoadingTransitionsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
2812
- TCloudUiLoadingTransitionsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiLoadingTransitionsService, providedIn: 'root' });
2813
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiLoadingTransitionsService, decorators: [{
2814
- type: Injectable,
2815
- args: [{
2816
- providedIn: 'root',
2817
- }]
2818
- }], ctorParameters: function () { return []; } });
2819
-
2820
- var TCFiltersType;
2821
- (function (TCFiltersType) {
2822
- TCFiltersType["text"] = "text";
2823
- TCFiltersType["number"] = "number";
2824
- TCFiltersType["select"] = "select";
2825
- TCFiltersType["boolean"] = "boolean";
2826
- TCFiltersType["datetime"] = "datetime-local";
2827
- })(TCFiltersType || (TCFiltersType = {}));
2828
- var TCCondition;
2829
- (function (TCCondition) {
2830
- TCCondition["equal"] = "equal";
2831
- TCCondition["gte"] = "gte";
2832
- TCCondition["lte"] = "lte";
2833
- TCCondition["lt"] = "lt";
2834
- TCCondition["gt"] = "gt";
2835
- })(TCCondition || (TCCondition = {}));
3044
+ clean() {
3045
+ this.DD_MM_YYYY = '';
3046
+ this.HH = '';
3047
+ this.MM = '';
3048
+ }
3049
+ toClickIn(id) {
3050
+ document.getElementById(id)?.focus();
3051
+ }
3052
+ //get accessor
3053
+ get value() {
3054
+ return this.innerValue;
3055
+ }
3056
+ ;
3057
+ //set accessor including call the onchange callback
3058
+ set value(v) {
3059
+ //console.log('set value', v);
3060
+ if (v !== this.innerValue) {
3061
+ //console.log('set value this.innerValue', this.innerValue);
3062
+ this.innerValue = v;
3063
+ this.onChangeCallback(v);
3064
+ }
3065
+ }
3066
+ //Set touched on blur
3067
+ onBlur() {
3068
+ this.onTouchedCallback();
3069
+ }
3070
+ //From ControlValueAccessor interface
3071
+ writeValue(value) {
3072
+ if (value !== this.innerValue) {
3073
+ this.innerValue = value;
3074
+ console.log('writeValue this.innerValue', this.innerValue);
3075
+ if (this.checkIsDate(value)) {
3076
+ this.to_date_hh_mm(value);
3077
+ }
3078
+ else {
3079
+ this.clean();
3080
+ }
3081
+ }
3082
+ }
3083
+ //From ControlValueAccessor interface
3084
+ registerOnChange(fn) {
3085
+ this.onChangeCallback = fn;
3086
+ }
3087
+ //From ControlValueAccessor interface
3088
+ registerOnTouched(fn) {
3089
+ this.onTouchedCallback = fn;
3090
+ }
3091
+ }
3092
+ TCloudUiDatepickerTimeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDatepickerTimeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3093
+ TCloudUiDatepickerTimeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiDatepickerTimeComponent, selector: "tcloud-ui-datepicker-time", inputs: { ngModel: "ngModel" }, outputs: { ngModelChange: "ngModelChange", onChange: "onChange", eventChange: "eventChange" }, providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR], viewQueries: [{ propertyName: "datepickertime", first: true, predicate: ["_datepickertime"], descendants: true }], ngImport: i0, template: "<input type=\"hidden\" value=\"{{ innerValue }}\" #_datepickertime >\r\n<form #_formulario=\"ngForm\">\r\n <div class=\"input-control-time\">\r\n <div class=\"form-control-time\">\r\n <table class=\"form-time\">\r\n <tr>\r\n <!-- <td class=\"area-icon\"><div class=\"delimiter-time-icon\" (click)=\"toClickIn(ID)\" ><i class=\"fas fa-calendar-alt\"></i></div></td> -->\r\n <td class=\"area-input-date\"><tcloud-ui-datepicker #_tclouddatepickertime [modeInput]=\"true\" name=\"date\" [useBorder]=\"false\" [(ngModel)]=\"DD_MM_YYYY\" (onChange)=\"toSetDate($event)\" ></tcloud-ui-datepicker></td>\r\n <td class=\"area-delimiter\"><div class=\"delimiter-time\"></div></td>\r\n <td class=\"area-input-hour\"><input type=\"text\" placeholder=\"HH\" (keyup)=\"toSetTime()\" [(ngModel)]=\"HH\" maxlength=\"2\" name=\"hh\" pattern=\"[0][0-9]|[1][0-9]|2[0-3]\"></td>\r\n <td class=\"area-delimiter\"><div class=\"delimiter-time\">:</div></td>\r\n <td class=\"area-input-minute\"><input type=\"text\" placeholder=\"MM\" (keyup)=\"toSetTime()\" [(ngModel)]=\"MM\" maxlength=\"2\" name=\"mm\" pattern=\"[012345][0-9]\"></td>\r\n <td class=\"area-clean\"></td>\r\n </tr>\r\n </table>\r\n </div>\r\n </div>\r\n</form>", styles: [".input-control-time{border:1px solid #ccc;border-radius:3px;width:100%}.form-control-time{max-width:220px;border:none}.form-control-time input{text-align:center}.form-time{width:100%}.delimiter-time{width:100%;text-align:center}.delimiter-time-icon{border:none;height:35px;width:10px;padding:4px;font-size:17px;text-align:center;opacity:.6}.area-icon{width:25px}.area-input-date{width:105px}.area-delimiter{width:2px;text-align:center}.area-input-hour,.area-input-minute{text-align:center;width:28px}.area-input-hour input,.area-input-minute input{height:35px;width:28px;text-align:center;color:#999;font-weight:600;font-style:italic}.area-input-hour input:focus,.area-input-minute input:focus{outline:none}.area-clean{width:15px}input,.datepicker-input{border:none!important}\n"], dependencies: [{ kind: "component", type: TCloudUiDatepickerComponent, selector: "tcloud-ui-datepicker", inputs: ["multiple", "maxNumberOfDates", "daysOfWeekDisabled", "minDate", "maxDate", "datesDisabled", "modeInput", "useBorder", "ngModel", "code"], outputs: ["onChange", "ngModelChange"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
3094
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDatepickerTimeComponent, decorators: [{
3095
+ type: Component,
3096
+ args: [{ selector: 'tcloud-ui-datepicker-time', providers: [CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR], template: "<input type=\"hidden\" value=\"{{ innerValue }}\" #_datepickertime >\r\n<form #_formulario=\"ngForm\">\r\n <div class=\"input-control-time\">\r\n <div class=\"form-control-time\">\r\n <table class=\"form-time\">\r\n <tr>\r\n <!-- <td class=\"area-icon\"><div class=\"delimiter-time-icon\" (click)=\"toClickIn(ID)\" ><i class=\"fas fa-calendar-alt\"></i></div></td> -->\r\n <td class=\"area-input-date\"><tcloud-ui-datepicker #_tclouddatepickertime [modeInput]=\"true\" name=\"date\" [useBorder]=\"false\" [(ngModel)]=\"DD_MM_YYYY\" (onChange)=\"toSetDate($event)\" ></tcloud-ui-datepicker></td>\r\n <td class=\"area-delimiter\"><div class=\"delimiter-time\"></div></td>\r\n <td class=\"area-input-hour\"><input type=\"text\" placeholder=\"HH\" (keyup)=\"toSetTime()\" [(ngModel)]=\"HH\" maxlength=\"2\" name=\"hh\" pattern=\"[0][0-9]|[1][0-9]|2[0-3]\"></td>\r\n <td class=\"area-delimiter\"><div class=\"delimiter-time\">:</div></td>\r\n <td class=\"area-input-minute\"><input type=\"text\" placeholder=\"MM\" (keyup)=\"toSetTime()\" [(ngModel)]=\"MM\" maxlength=\"2\" name=\"mm\" pattern=\"[012345][0-9]\"></td>\r\n <td class=\"area-clean\"></td>\r\n </tr>\r\n </table>\r\n </div>\r\n </div>\r\n</form>", styles: [".input-control-time{border:1px solid #ccc;border-radius:3px;width:100%}.form-control-time{max-width:220px;border:none}.form-control-time input{text-align:center}.form-time{width:100%}.delimiter-time{width:100%;text-align:center}.delimiter-time-icon{border:none;height:35px;width:10px;padding:4px;font-size:17px;text-align:center;opacity:.6}.area-icon{width:25px}.area-input-date{width:105px}.area-delimiter{width:2px;text-align:center}.area-input-hour,.area-input-minute{text-align:center;width:28px}.area-input-hour input,.area-input-minute input{height:35px;width:28px;text-align:center;color:#999;font-weight:600;font-style:italic}.area-input-hour input:focus,.area-input-minute input:focus{outline:none}.area-clean{width:15px}input,.datepicker-input{border:none!important}\n"] }]
3097
+ }], propDecorators: { ngModel: [{
3098
+ type: Input
3099
+ }], ngModelChange: [{
3100
+ type: Output
3101
+ }], onChange: [{
3102
+ type: Output
3103
+ }], eventChange: [{
3104
+ type: Output
3105
+ }], datepickertime: [{
3106
+ type: ViewChild,
3107
+ args: ['_datepickertime', { static: false }]
3108
+ }] } });
2836
3109
 
2837
3110
  class TCloudUiFiltersComponent {
2838
3111
  constructor(datepipe) {
2839
3112
  this.datepipe = datepipe;
3113
+ this.datepickers = [];
2840
3114
  this.inputs = [];
2841
3115
  this.show_filters = false;
2842
3116
  this.submitText = 'Filtrar';
@@ -2884,7 +3158,8 @@ class TCloudUiFiltersComponent {
2884
3158
  this.show_filters = true;
2885
3159
  if (this.filters && (this.filters).length > 0) {
2886
3160
  (this.filters).forEach((filter) => {
2887
- this.searchIn(filter, undefined);
3161
+ console.log('init filter', filter);
3162
+ this.searchIn(filter, 'sync');
2888
3163
  });
2889
3164
  }
2890
3165
  // this.toResult();
@@ -2970,32 +3245,42 @@ class TCloudUiFiltersComponent {
2970
3245
  }
2971
3246
  return current;
2972
3247
  }
2973
- searchIn(item, event) {
3248
+ searchIn(item, event, value) {
2974
3249
  this.start_filter_fc = undefined;
2975
- if (event !== undefined) {
2976
- if (typeof event === 'boolean') {
2977
- item.searchText = event;
2978
- this.onChange.emit(true);
2979
- }
2980
- else {
2981
- if (event === null) {
2982
- item.searchText = '';
2983
- }
2984
- else {
2985
- if (event.target) {
2986
- if (event.target.valueAsDate) {
2987
- item.searchText = event?.target?.valueAsDate;
2988
- }
2989
- else {
2990
- if (event.target.value) {
2991
- // item.searchText = (event.target.value).toUpperCase();
2992
- item.searchText = this.normalize(event.target.value);
2993
- }
2994
- }
2995
- }
2996
- this.onChange.emit(true);
2997
- }
2998
- }
3250
+ if (value) {
3251
+ console.log('searchIn item', item);
3252
+ console.log('searchIn event', event);
3253
+ }
3254
+ let isValid = true;
3255
+ if (event === 'sync' && isValid) {
3256
+ isValid = false;
3257
+ this.onChange.emit(true);
3258
+ }
3259
+ if (typeof event === 'boolean' && isValid) {
3260
+ isValid = false;
3261
+ item.searchText = event;
3262
+ this.onChange.emit(true);
3263
+ }
3264
+ if (event === undefined || event === null || event === '' && isValid) {
3265
+ isValid = false;
3266
+ item.searchText = '';
3267
+ this.onChange.emit(true);
3268
+ }
3269
+ if (event?.datepickertime && isValid) {
3270
+ isValid = false;
3271
+ console.log('is a date', event?.innerValue);
3272
+ item.searchText = event?.innerValue;
3273
+ this.onChange.emit(true);
3274
+ }
3275
+ if (event?.target?.value && isValid) {
3276
+ isValid = false;
3277
+ item.searchText = this.normalize(event.target.value);
3278
+ this.onChange.emit(true);
3279
+ }
3280
+ if (event?.target?.value === '' && isValid) {
3281
+ isValid = false;
3282
+ item.searchText = '';
3283
+ this.onChange.emit(true);
2999
3284
  }
3000
3285
  if (this.useOnChangeSubmit) {
3001
3286
  this.start_filter_fc = this.start_filter();
@@ -3004,6 +3289,43 @@ class TCloudUiFiltersComponent {
3004
3289
  this.emitSubmitFilters();
3005
3290
  }
3006
3291
  }
3292
+ // searchIn(item: TCDataFilters, event?: any, value?: any){
3293
+ // if( value ){
3294
+ // console.log('searchIn item', item);
3295
+ // console.log('searchIn event', event);
3296
+ // }
3297
+ // this.start_filter_fc = undefined;
3298
+ // if( event !== undefined ){
3299
+ // if( typeof event === 'boolean' ){
3300
+ // item.searchText = event;
3301
+ // this.onChange.emit(true);
3302
+ // }else{
3303
+ // if( event === null ){
3304
+ // item.searchText = '';
3305
+ // }else{
3306
+ // if( event.defaultValue ){
3307
+ // item.searchText = event.defaultValue;
3308
+ // }else if( event.target ){
3309
+ // if( event.target.valueAsDate ){
3310
+ // item.searchText = event?.target?.valueAsDate;
3311
+ // }else{
3312
+ // if( event.target.value ){
3313
+ // // item.searchText = (event.target.value).toUpperCase();
3314
+ // item.searchText = this.normalize(event.target.value);
3315
+ // }
3316
+ // }
3317
+ // }
3318
+ // this.onChange.emit(true);
3319
+ // }
3320
+ // }
3321
+ // }
3322
+ // if( this.useOnChangeSubmit ){
3323
+ // this.start_filter_fc = this.start_filter();
3324
+ // }
3325
+ // if( !this.useButtonSubmit ){
3326
+ // this.emitSubmitFilters();
3327
+ // }
3328
+ // }
3007
3329
  start_filter() {
3008
3330
  for (let i = 0; i < (this.data).length; i++) {
3009
3331
  this.setDataIndex(i, true);
@@ -3144,10 +3466,10 @@ class TCloudUiFiltersComponent {
3144
3466
  }
3145
3467
  }
3146
3468
  TCloudUiFiltersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiFiltersComponent, deps: [{ token: i1.DatePipe }], target: i0.ɵɵFactoryTarget.Component });
3147
- TCloudUiFiltersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiFiltersComponent, selector: "tcloud-ui-filters", inputs: { data: "data", filters: "filters", submitText: "submitText", useOnChangeSubmit: "useOnChangeSubmit", useButtonSubmit: "useButtonSubmit", useNormalizeCaseSensitive: "useNormalizeCaseSensitive" }, outputs: { result: "result", onFilter: "onFilter", onChange: "onChange", onSubmit: "onSubmit" }, viewQueries: [{ propertyName: "_formulario", first: true, predicate: ["_formulario"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"show_filters\" class=\"area-filter\">\n <ng-container *ngFor=\"let item of filters; let i = index\">\n\n <ng-container *ngIf=\"!item.type || (item.type && item.type !== 'boolean')\">\n \n <div class=\"box-filter-input\" [style]=\"(item.width !== '') ? 'width:'+item.width : ''\">\n \n <ng-container *ngIf=\"item.type !== 'select'\">\n <div class=\"m-description\"><i [class.to-active]=\"_input.value !== ''\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div>\n <input \n [attr.data-date-format]=\"( item.type === 'datetime-local' ) ? 'MM-DD-YYYY HH:mm' : null \"\n #_input\n placeholder=\"{{ (item.placeholder !== '') ? item.placeholder : '' }}\"\n name=\"input_{{i+1}}\" \n type=\"{{ (item.type === 'number') ? 'text' : item.type }}\" \n class=\"form-control tc-form-control\" \n (keyup)=\"searchIn(item, $event)\">\n <button class=\"btn-clear-filter-text\" [class.to-hide]=\"_input.value === ''\" (click)=\"searchIn(item, null); _input.value = ''\">\n <i class=\"fas fa-times\"></i>\n </button>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"item.type === 'select' && item.data && (item.data).length > 0\" >\n <div class=\"m-description\"><i [class.to-active]=\"_input.value !== ''\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div>\n <select \n #_input\n name=\"input_{{i+1}}\" \n class=\"form-control tc-form-control\" \n (change)=\"searchIn(item, $event)\">\n <option [ngValue]=\"\"></option>\n <ng-container *ngFor=\"let v of item.data\">\n <option [ngValue]=\"v.value\">{{ v.description }}</option>\n </ng-container>\n </select>\n <!-- <button class=\"btn-clear-filter-text\" [class.to-hide]=\"_input.value === ''\" (click)=\"searchIn(item, null); _input.value = ''\">\n <i class=\"fas fa-times\"></i>\n </button> -->\n </div>\n </ng-container>\n\n </div>\n\n\n \n </ng-container>\n\n <ng-container *ngIf=\"item.type && item.type === 'boolean'\">\n \n <div class=\"box-filter-input\" [style]=\"(item.width !== '') ? 'width:'+item.width : ''\">\n <div class=\"m-description\"><i [class.to-active]=\"_input.checked === true\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div class=\"area-input-checkbox\">\n <div class=\"form-control tc-form-control\">\n <label>\n {{ item.placeholder }}\n <input \n #_input\n placeholder=\"{{ (item.placeholder !== '') ? item.placeholder : '' }}\"\n name=\"input_{{i+1}}\" \n type=\"checkbox\" \n (change)=\"searchIn(item, _input.checked)\"> \n </label>\n </div> \n </div>\n </div>\n\n </ng-container>\n\n\n </ng-container>\n\n <div class=\"text-right mb-1 mr-1\" *ngIf=\"useButtonSubmit\">\n <button type=\"button\" class=\"tc-btn btn-new-grey\" (click)=\"toSubmit()\" >{{ submitText }}&nbsp;<i class=\"fas fa-filter icon-filter\"></i></button>\n </div>\n\n</div>\n\n<!-- <pre>{{ inputs | json }}</pre> -->\n <!-- <pre> {{ data | json }} </pre> -->\n<!-- \n<p>FILTERS</p>\n<pre> {{ filters | json }}</pre> -->", styles: [".box-filter-input{display:inline-block;padding:10px 5px;position:relative}.area-filter{border:1px solid #eeeeee;border-radius:5px;margin-bottom:5px}.btn-clear-filter-text{position:absolute;right:8px;top:38px;background-color:#fff;border:none;cursor:pointer;color:#aaa}.to-hide{display:none}.icon-filter{color:#ccc}.to-active{color:var(--verde)}.area-input-checkbox label{cursor:pointer;margin-bottom:0;color:#9f9f9f}.m-description{margin-bottom:3px}input{color:#535353}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }] });
3469
+ TCloudUiFiltersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiFiltersComponent, selector: "tcloud-ui-filters", inputs: { data: "data", filters: "filters", submitText: "submitText", useOnChangeSubmit: "useOnChangeSubmit", useButtonSubmit: "useButtonSubmit", useNormalizeCaseSensitive: "useNormalizeCaseSensitive" }, outputs: { result: "result", onFilter: "onFilter", onChange: "onChange", onSubmit: "onSubmit" }, viewQueries: [{ propertyName: "_formulario", first: true, predicate: ["_formulario"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"show_filters\" class=\"area-filter\">\n <ng-container *ngFor=\"let item of filters; let i = index\">\n\n <ng-container *ngIf=\"!item.type || (item.type && item.type !== 'boolean')\">\n \n <div class=\"box-filter-input\" [style]=\"(item.width !== '') ? 'width:'+item.width : ''\">\n\n <ng-container *ngIf=\"item.type === 'datetime-local'\">\n <div class=\"m-description\"><i [class.to-active]=\"(datepickers[i] !== undefined && datepickers[i] !== null && datepickers[i] !== '')\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div>\n <tcloud-ui-datepicker-time #_input [(ngModel)]=\"datepickers[i]\" name=\"input_{{i+1}}\" (eventChange)=\"searchIn(item, _input, 'teste')\" > </tcloud-ui-datepicker-time>\n <button class=\"btn-clear-filter-text\" [class.to-hide]=\"!(datepickers[i] !== undefined && datepickers[i] !== null && datepickers[i] !== '')\" (click)=\"searchIn(item, null); item.searchText = undefined; datepickers[i] = ''\">\n <i class=\"fas fa-times\"></i>\n </button>\n </div> \n </ng-container>\n \n <ng-container *ngIf=\"item.type !== 'select' && item.type !== 'datetime-local'\">\n <div class=\"m-description\"><i [class.to-active]=\"_input.value !== ''\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div>\n <input \n #_input\n placeholder=\"{{ (item.placeholder !== '') ? item.placeholder : '' }}\"\n name=\"input_{{i+1}}\" \n type=\"{{ (item.type === 'number') ? 'text' : item.type }}\" \n class=\"form-control tc-form-control\" \n (keyup)=\"searchIn(item, $event)\"> \n <button class=\"btn-clear-filter-text\" [class.to-hide]=\"_input.value === ''\" (click)=\"searchIn(item, null); _input.value = ''\">\n <i class=\"fas fa-times\"></i>\n </button>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"item.type === 'select' && item.data && (item.data).length > 0\" >\n <div class=\"m-description\"><i [class.to-active]=\"_input.value !== ''\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div>\n <select \n #_input\n name=\"input_{{i+1}}\" \n class=\"form-control tc-form-control\" \n (change)=\"searchIn(item, $event)\">\n <option [ngValue]=\"\"></option>\n <ng-container *ngFor=\"let v of item.data\">\n <option [ngValue]=\"v.value\">{{ v.description }}</option>\n </ng-container>\n </select>\n <!-- <button class=\"btn-clear-filter-text\" [class.to-hide]=\"_input.value === ''\" (click)=\"searchIn(item, null); _input.value = ''\">\n <i class=\"fas fa-times\"></i>\n </button> -->\n </div>\n </ng-container>\n\n </div>\n\n\n \n </ng-container>\n\n <ng-container *ngIf=\"item.type && item.type === 'boolean'\">\n \n <div class=\"box-filter-input\" [style]=\"(item.width !== '') ? 'width:'+item.width : ''\">\n <div class=\"m-description\"><i [class.to-active]=\"_input.checked === true\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div class=\"area-input-checkbox\">\n <div class=\"form-control tc-form-control\">\n <label>\n {{ item.placeholder }}\n <input \n #_input\n placeholder=\"{{ (item.placeholder !== '') ? item.placeholder : '' }}\"\n name=\"input_{{i+1}}\" \n type=\"checkbox\" \n (change)=\"searchIn(item, _input.checked)\"> \n </label>\n </div> \n </div>\n </div>\n\n </ng-container>\n\n\n </ng-container>\n\n <div class=\"text-right mb-1 mr-1\" *ngIf=\"useButtonSubmit\">\n <button type=\"button\" class=\"tc-btn btn-new-grey\" (click)=\"toSubmit()\" >{{ submitText }}&nbsp;<i class=\"fas fa-filter icon-filter\"></i></button>\n </div>\n\n</div>\n\n<!-- <pre>{{ inputs | json }}</pre> -->\n <!-- <pre> {{ data | json }} </pre> -->\n<!-- \n<p>FILTERS</p>\n<pre> {{ filters | json }}</pre> -->", styles: [".box-filter-input{display:inline-grid;padding:10px 5px;position:relative}.area-filter{border:1px solid #eeeeee;border-radius:5px;margin-bottom:5px}.btn-clear-filter-text{position:absolute;right:8px;top:38px;background-color:#fff;border:none;cursor:pointer;color:#aaa}.to-hide{display:none}.icon-filter{color:#ccc}.to-active{color:var(--verde)}.area-input-checkbox label{cursor:pointer;margin-bottom:0;color:#9f9f9f}.m-description{margin-bottom:3px}input{color:#535353}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: TCloudUiDatepickerTimeComponent, selector: "tcloud-ui-datepicker-time", inputs: ["ngModel"], outputs: ["ngModelChange", "onChange", "eventChange"] }] });
3148
3470
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiFiltersComponent, decorators: [{
3149
3471
  type: Component,
3150
- args: [{ selector: 'tcloud-ui-filters', template: "<div *ngIf=\"show_filters\" class=\"area-filter\">\n <ng-container *ngFor=\"let item of filters; let i = index\">\n\n <ng-container *ngIf=\"!item.type || (item.type && item.type !== 'boolean')\">\n \n <div class=\"box-filter-input\" [style]=\"(item.width !== '') ? 'width:'+item.width : ''\">\n \n <ng-container *ngIf=\"item.type !== 'select'\">\n <div class=\"m-description\"><i [class.to-active]=\"_input.value !== ''\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div>\n <input \n [attr.data-date-format]=\"( item.type === 'datetime-local' ) ? 'MM-DD-YYYY HH:mm' : null \"\n #_input\n placeholder=\"{{ (item.placeholder !== '') ? item.placeholder : '' }}\"\n name=\"input_{{i+1}}\" \n type=\"{{ (item.type === 'number') ? 'text' : item.type }}\" \n class=\"form-control tc-form-control\" \n (keyup)=\"searchIn(item, $event)\">\n <button class=\"btn-clear-filter-text\" [class.to-hide]=\"_input.value === ''\" (click)=\"searchIn(item, null); _input.value = ''\">\n <i class=\"fas fa-times\"></i>\n </button>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"item.type === 'select' && item.data && (item.data).length > 0\" >\n <div class=\"m-description\"><i [class.to-active]=\"_input.value !== ''\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div>\n <select \n #_input\n name=\"input_{{i+1}}\" \n class=\"form-control tc-form-control\" \n (change)=\"searchIn(item, $event)\">\n <option [ngValue]=\"\"></option>\n <ng-container *ngFor=\"let v of item.data\">\n <option [ngValue]=\"v.value\">{{ v.description }}</option>\n </ng-container>\n </select>\n <!-- <button class=\"btn-clear-filter-text\" [class.to-hide]=\"_input.value === ''\" (click)=\"searchIn(item, null); _input.value = ''\">\n <i class=\"fas fa-times\"></i>\n </button> -->\n </div>\n </ng-container>\n\n </div>\n\n\n \n </ng-container>\n\n <ng-container *ngIf=\"item.type && item.type === 'boolean'\">\n \n <div class=\"box-filter-input\" [style]=\"(item.width !== '') ? 'width:'+item.width : ''\">\n <div class=\"m-description\"><i [class.to-active]=\"_input.checked === true\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div class=\"area-input-checkbox\">\n <div class=\"form-control tc-form-control\">\n <label>\n {{ item.placeholder }}\n <input \n #_input\n placeholder=\"{{ (item.placeholder !== '') ? item.placeholder : '' }}\"\n name=\"input_{{i+1}}\" \n type=\"checkbox\" \n (change)=\"searchIn(item, _input.checked)\"> \n </label>\n </div> \n </div>\n </div>\n\n </ng-container>\n\n\n </ng-container>\n\n <div class=\"text-right mb-1 mr-1\" *ngIf=\"useButtonSubmit\">\n <button type=\"button\" class=\"tc-btn btn-new-grey\" (click)=\"toSubmit()\" >{{ submitText }}&nbsp;<i class=\"fas fa-filter icon-filter\"></i></button>\n </div>\n\n</div>\n\n<!-- <pre>{{ inputs | json }}</pre> -->\n <!-- <pre> {{ data | json }} </pre> -->\n<!-- \n<p>FILTERS</p>\n<pre> {{ filters | json }}</pre> -->", styles: [".box-filter-input{display:inline-block;padding:10px 5px;position:relative}.area-filter{border:1px solid #eeeeee;border-radius:5px;margin-bottom:5px}.btn-clear-filter-text{position:absolute;right:8px;top:38px;background-color:#fff;border:none;cursor:pointer;color:#aaa}.to-hide{display:none}.icon-filter{color:#ccc}.to-active{color:var(--verde)}.area-input-checkbox label{cursor:pointer;margin-bottom:0;color:#9f9f9f}.m-description{margin-bottom:3px}input{color:#535353}\n"] }]
3472
+ args: [{ selector: 'tcloud-ui-filters', template: "<div *ngIf=\"show_filters\" class=\"area-filter\">\n <ng-container *ngFor=\"let item of filters; let i = index\">\n\n <ng-container *ngIf=\"!item.type || (item.type && item.type !== 'boolean')\">\n \n <div class=\"box-filter-input\" [style]=\"(item.width !== '') ? 'width:'+item.width : ''\">\n\n <ng-container *ngIf=\"item.type === 'datetime-local'\">\n <div class=\"m-description\"><i [class.to-active]=\"(datepickers[i] !== undefined && datepickers[i] !== null && datepickers[i] !== '')\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div>\n <tcloud-ui-datepicker-time #_input [(ngModel)]=\"datepickers[i]\" name=\"input_{{i+1}}\" (eventChange)=\"searchIn(item, _input, 'teste')\" > </tcloud-ui-datepicker-time>\n <button class=\"btn-clear-filter-text\" [class.to-hide]=\"!(datepickers[i] !== undefined && datepickers[i] !== null && datepickers[i] !== '')\" (click)=\"searchIn(item, null); item.searchText = undefined; datepickers[i] = ''\">\n <i class=\"fas fa-times\"></i>\n </button>\n </div> \n </ng-container>\n \n <ng-container *ngIf=\"item.type !== 'select' && item.type !== 'datetime-local'\">\n <div class=\"m-description\"><i [class.to-active]=\"_input.value !== ''\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div>\n <input \n #_input\n placeholder=\"{{ (item.placeholder !== '') ? item.placeholder : '' }}\"\n name=\"input_{{i+1}}\" \n type=\"{{ (item.type === 'number') ? 'text' : item.type }}\" \n class=\"form-control tc-form-control\" \n (keyup)=\"searchIn(item, $event)\"> \n <button class=\"btn-clear-filter-text\" [class.to-hide]=\"_input.value === ''\" (click)=\"searchIn(item, null); _input.value = ''\">\n <i class=\"fas fa-times\"></i>\n </button>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"item.type === 'select' && item.data && (item.data).length > 0\" >\n <div class=\"m-description\"><i [class.to-active]=\"_input.value !== ''\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div>\n <select \n #_input\n name=\"input_{{i+1}}\" \n class=\"form-control tc-form-control\" \n (change)=\"searchIn(item, $event)\">\n <option [ngValue]=\"\"></option>\n <ng-container *ngFor=\"let v of item.data\">\n <option [ngValue]=\"v.value\">{{ v.description }}</option>\n </ng-container>\n </select>\n <!-- <button class=\"btn-clear-filter-text\" [class.to-hide]=\"_input.value === ''\" (click)=\"searchIn(item, null); _input.value = ''\">\n <i class=\"fas fa-times\"></i>\n </button> -->\n </div>\n </ng-container>\n\n </div>\n\n\n \n </ng-container>\n\n <ng-container *ngIf=\"item.type && item.type === 'boolean'\">\n \n <div class=\"box-filter-input\" [style]=\"(item.width !== '') ? 'width:'+item.width : ''\">\n <div class=\"m-description\"><i [class.to-active]=\"_input.checked === true\" class=\"fas fa-filter icon-filter\"></i>&nbsp;{{ item.description }}</div>\n <div class=\"area-input-checkbox\">\n <div class=\"form-control tc-form-control\">\n <label>\n {{ item.placeholder }}\n <input \n #_input\n placeholder=\"{{ (item.placeholder !== '') ? item.placeholder : '' }}\"\n name=\"input_{{i+1}}\" \n type=\"checkbox\" \n (change)=\"searchIn(item, _input.checked)\"> \n </label>\n </div> \n </div>\n </div>\n\n </ng-container>\n\n\n </ng-container>\n\n <div class=\"text-right mb-1 mr-1\" *ngIf=\"useButtonSubmit\">\n <button type=\"button\" class=\"tc-btn btn-new-grey\" (click)=\"toSubmit()\" >{{ submitText }}&nbsp;<i class=\"fas fa-filter icon-filter\"></i></button>\n </div>\n\n</div>\n\n<!-- <pre>{{ inputs | json }}</pre> -->\n <!-- <pre> {{ data | json }} </pre> -->\n<!-- \n<p>FILTERS</p>\n<pre> {{ filters | json }}</pre> -->", styles: [".box-filter-input{display:inline-grid;padding:10px 5px;position:relative}.area-filter{border:1px solid #eeeeee;border-radius:5px;margin-bottom:5px}.btn-clear-filter-text{position:absolute;right:8px;top:38px;background-color:#fff;border:none;cursor:pointer;color:#aaa}.to-hide{display:none}.icon-filter{color:#ccc}.to-active{color:var(--verde)}.area-input-checkbox label{cursor:pointer;margin-bottom:0;color:#9f9f9f}.m-description{margin-bottom:3px}input{color:#535353}\n"] }]
3151
3473
  }], ctorParameters: function () { return [{ type: i1.DatePipe }]; }, propDecorators: { _formulario: [{
3152
3474
  type: ViewChild,
3153
3475
  args: ['_formulario']
@@ -3173,231 +3495,683 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
3173
3495
  type: Output
3174
3496
  }] } });
3175
3497
 
3498
+ class TCloudUiDatepickerModule {
3499
+ }
3500
+ TCloudUiDatepickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDatepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3501
+ TCloudUiDatepickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDatepickerModule, declarations: [TCloudUiDatepickerComponent], imports: [CommonModule,
3502
+ FormsModule,
3503
+ ReactiveFormsModule], exports: [TCloudUiDatepickerComponent] });
3504
+ TCloudUiDatepickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDatepickerModule, imports: [CommonModule,
3505
+ FormsModule,
3506
+ ReactiveFormsModule] });
3507
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDatepickerModule, decorators: [{
3508
+ type: NgModule,
3509
+ args: [{
3510
+ declarations: [
3511
+ TCloudUiDatepickerComponent
3512
+ ],
3513
+ exports: [
3514
+ TCloudUiDatepickerComponent
3515
+ ],
3516
+ imports: [
3517
+ CommonModule,
3518
+ FormsModule,
3519
+ ReactiveFormsModule
3520
+ ]
3521
+ }]
3522
+ }] });
3523
+
3524
+ class TCloudUiDatepickerTimeModule {
3525
+ }
3526
+ TCloudUiDatepickerTimeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDatepickerTimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3527
+ TCloudUiDatepickerTimeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDatepickerTimeModule, declarations: [TCloudUiDatepickerTimeComponent], imports: [CommonModule,
3528
+ TCloudUiDatepickerModule,
3529
+ FormsModule,
3530
+ ReactiveFormsModule], exports: [TCloudUiDatepickerTimeComponent] });
3531
+ TCloudUiDatepickerTimeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDatepickerTimeModule, imports: [CommonModule,
3532
+ TCloudUiDatepickerModule,
3533
+ FormsModule,
3534
+ ReactiveFormsModule] });
3535
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDatepickerTimeModule, decorators: [{
3536
+ type: NgModule,
3537
+ args: [{
3538
+ declarations: [
3539
+ TCloudUiDatepickerTimeComponent
3540
+ ],
3541
+ exports: [
3542
+ TCloudUiDatepickerTimeComponent
3543
+ ],
3544
+ imports: [
3545
+ CommonModule,
3546
+ TCloudUiDatepickerModule,
3547
+ FormsModule,
3548
+ ReactiveFormsModule,
3549
+ ]
3550
+ }]
3551
+ }] });
3552
+
3176
3553
  class TCloudUiFiltersModule {
3177
3554
  }
3178
3555
  TCloudUiFiltersModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiFiltersModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3179
3556
  TCloudUiFiltersModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiFiltersModule, declarations: [TCloudUiFiltersComponent], imports: [CommonModule,
3180
- FormsModule], exports: [TCloudUiFiltersComponent] });
3557
+ FormsModule,
3558
+ TCloudUiDatepickerTimeModule], exports: [TCloudUiFiltersComponent] });
3181
3559
  TCloudUiFiltersModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiFiltersModule, imports: [CommonModule,
3182
- FormsModule] });
3560
+ FormsModule,
3561
+ TCloudUiDatepickerTimeModule] });
3183
3562
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiFiltersModule, decorators: [{
3184
3563
  type: NgModule,
3185
3564
  args: [{
3186
3565
  declarations: [
3187
- TCloudUiFiltersComponent
3566
+ TCloudUiFiltersComponent
3567
+ ],
3568
+ exports: [
3569
+ TCloudUiFiltersComponent
3570
+ ],
3571
+ imports: [
3572
+ CommonModule,
3573
+ FormsModule,
3574
+ TCloudUiDatepickerTimeModule
3575
+ ]
3576
+ }]
3577
+ }] });
3578
+
3579
+ class TCloudUiAccordionService {
3580
+ constructor() {
3581
+ this._stateToggle = new Subject();
3582
+ this.stateToggle$ = this._stateToggle.asObservable();
3583
+ this._stateLoading = new Subject();
3584
+ this.stateLoading$ = this._stateLoading.asObservable();
3585
+ this._stateDisabled = new Subject();
3586
+ this.stateDisabled$ = this._stateDisabled.asObservable();
3587
+ }
3588
+ toggle(action) {
3589
+ this._stateToggle.next(action);
3590
+ }
3591
+ getLoading() {
3592
+ return this.loading;
3593
+ }
3594
+ setLoading(loading) {
3595
+ this.loading = loading;
3596
+ this._stateLoading.next(loading);
3597
+ }
3598
+ getShow() {
3599
+ return this.show;
3600
+ }
3601
+ setDisabled(disabled) {
3602
+ this._stateDisabled.next(disabled);
3603
+ }
3604
+ getDisabled() {
3605
+ return this.disabled;
3606
+ }
3607
+ }
3608
+ TCloudUiAccordionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
3609
+ TCloudUiAccordionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionService });
3610
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionService, decorators: [{
3611
+ type: Injectable
3612
+ }] });
3613
+
3614
+ class TCloudUiAccordionComponent {
3615
+ constructor(_tCloudUiAccordionService) {
3616
+ this._tCloudUiAccordionService = _tCloudUiAccordionService;
3617
+ this._disabled = false;
3618
+ this._show = false;
3619
+ this.onAction = new EventEmitter();
3620
+ this._loading = false;
3621
+ }
3622
+ set disabled(v) {
3623
+ this._disabled = v;
3624
+ if (this._disabled) {
3625
+ setTimeout(() => {
3626
+ this._tCloudUiAccordionService.setDisabled(this._disabled);
3627
+ this._tCloudUiAccordionService.toggle(false);
3628
+ });
3629
+ }
3630
+ }
3631
+ get disabled() { return this._disabled; }
3632
+ set show(v) {
3633
+ if (this._show !== v) {
3634
+ this._show = v;
3635
+ if (!this.disabled) {
3636
+ setTimeout(() => { this._tCloudUiAccordionService.toggle(this._show); });
3637
+ }
3638
+ }
3639
+ }
3640
+ get show() { return this._show; }
3641
+ /**
3642
+ * loading - boolean - Coloca o modal em modo de carregamento - default false
3643
+ */
3644
+ set loading(loading) {
3645
+ this._loading = loading;
3646
+ this._tCloudUiAccordionService.setLoading(loading);
3647
+ }
3648
+ get loading() { return this._loading; }
3649
+ ngOnInit() {
3650
+ this.subscription_01 = this._tCloudUiAccordionService.stateLoading$.subscribe((loading) => {
3651
+ this.loading = loading;
3652
+ });
3653
+ this.subscription_02 = this._tCloudUiAccordionService.stateToggle$.subscribe((show) => {
3654
+ this.onAction.emit((show === true) ? 'open' : 'close');
3655
+ });
3656
+ }
3657
+ ngOnDestroy() {
3658
+ if (this.subscription_01) {
3659
+ this.subscription_01.unsubscribe();
3660
+ }
3661
+ if (this.subscription_02) {
3662
+ this.subscription_02.unsubscribe();
3663
+ }
3664
+ }
3665
+ }
3666
+ TCloudUiAccordionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionComponent, deps: [{ token: TCloudUiAccordionService }], target: i0.ɵɵFactoryTarget.Component });
3667
+ TCloudUiAccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiAccordionComponent, selector: "tcloud-ui-accordion", inputs: { disabled: "disabled", show: "show", loading: "loading" }, outputs: { onAction: "onAction" }, providers: [
3668
+ TCloudUiAccordionService
3669
+ ], ngImport: i0, template: "<div class=\"tc-accordion\" [class.tc-accordion-disabled]=\"disabled\">\n <ng-content></ng-content>\n</div>", styles: [".tc-accordion{border:1px solid #ccc;padding:8px 12px;border-radius:15px;margin-bottom:5px}.tc-accordion-disabled{background-color:#e3e3e3;opacity:.6}\n"] });
3670
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionComponent, decorators: [{
3671
+ type: Component,
3672
+ args: [{ selector: 'tcloud-ui-accordion', providers: [
3673
+ TCloudUiAccordionService
3674
+ ], template: "<div class=\"tc-accordion\" [class.tc-accordion-disabled]=\"disabled\">\n <ng-content></ng-content>\n</div>", styles: [".tc-accordion{border:1px solid #ccc;padding:8px 12px;border-radius:15px;margin-bottom:5px}.tc-accordion-disabled{background-color:#e3e3e3;opacity:.6}\n"] }]
3675
+ }], ctorParameters: function () { return [{ type: TCloudUiAccordionService }]; }, propDecorators: { disabled: [{
3676
+ type: Input
3677
+ }], show: [{
3678
+ type: Input
3679
+ }], onAction: [{
3680
+ type: Output
3681
+ }], loading: [{
3682
+ type: Input
3683
+ }] } });
3684
+
3685
+ class TCloudUiAccordionTitleComponent {
3686
+ constructor(_tCloudUiAccordionService) {
3687
+ this._tCloudUiAccordionService = _tCloudUiAccordionService;
3688
+ this.show = false;
3689
+ this.loading = false;
3690
+ this.disabled = false;
3691
+ }
3692
+ ngOnInit() {
3693
+ this.loading = this._tCloudUiAccordionService.getLoading() || false;
3694
+ this.subscription_01 = this._tCloudUiAccordionService.stateLoading$.subscribe((loading) => {
3695
+ this.loading = loading;
3696
+ });
3697
+ this.show = this._tCloudUiAccordionService.getShow() || false;
3698
+ this.subscription_02 = this._tCloudUiAccordionService.stateToggle$.subscribe((show) => {
3699
+ this.show = show;
3700
+ });
3701
+ this.disabled = this._tCloudUiAccordionService.getDisabled() || false;
3702
+ this.subscription_03 = this._tCloudUiAccordionService.stateDisabled$.subscribe((disabled) => {
3703
+ this.disabled = disabled;
3704
+ });
3705
+ }
3706
+ toggle() {
3707
+ if (this.disabled) {
3708
+ return;
3709
+ }
3710
+ this.show = !this.show;
3711
+ this._tCloudUiAccordionService.toggle(this.show);
3712
+ }
3713
+ toggle_title() {
3714
+ this.toggle();
3715
+ }
3716
+ ngOnDestroy() {
3717
+ if (this.subscription_01) {
3718
+ this.subscription_01.unsubscribe();
3719
+ }
3720
+ if (this.subscription_02) {
3721
+ this.subscription_02.unsubscribe();
3722
+ }
3723
+ if (this.subscription_03) {
3724
+ this.subscription_03.unsubscribe();
3725
+ }
3726
+ }
3727
+ }
3728
+ TCloudUiAccordionTitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionTitleComponent, deps: [{ token: TCloudUiAccordionService }], target: i0.ɵɵFactoryTarget.Component });
3729
+ TCloudUiAccordionTitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiAccordionTitleComponent, selector: "tcloud-ui-accordion-title", ngImport: i0, template: "<div class=\"tc-accordion-title\">\n <table class=\"tc-accordion-table\">\n <tr>\n <td class=\"area-title\" (click)=\"toggle_title()\" >\n <ng-content></ng-content>\n </td>\n <td class=\"tc-accordion-actions\">\n <button type=\"button\" class=\"tc-btn-accordion-toggle\" [disabled]=\"disabled\" (click)=\"toggle()\" >\n\n <i class=\"fas fa-chevron-right icon-toggle\" *ngIf=\"!show\"></i>\n <i class=\"fas fa-chevron-down icon-toggle\" *ngIf=\"show\"></i>\n\n </button>\n </td>\n </tr>\n </table>\n</div>", styles: [".tc-accordion-table{width:100%}.tc-accordion-actions{width:15px}.tc-btn-accordion-toggle{font-size:20px;border:none;background-color:transparent;background:none;cursor:pointer;margin:auto}.tc-btn-accordion-toggle:disabled{cursor:not-allowed!important;opacity:.6}.icon-toggle{color:var(--verde)}.area-title{width:100;cursor:pointer;color:var(--verde)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3730
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionTitleComponent, decorators: [{
3731
+ type: Component,
3732
+ args: [{ selector: 'tcloud-ui-accordion-title', template: "<div class=\"tc-accordion-title\">\n <table class=\"tc-accordion-table\">\n <tr>\n <td class=\"area-title\" (click)=\"toggle_title()\" >\n <ng-content></ng-content>\n </td>\n <td class=\"tc-accordion-actions\">\n <button type=\"button\" class=\"tc-btn-accordion-toggle\" [disabled]=\"disabled\" (click)=\"toggle()\" >\n\n <i class=\"fas fa-chevron-right icon-toggle\" *ngIf=\"!show\"></i>\n <i class=\"fas fa-chevron-down icon-toggle\" *ngIf=\"show\"></i>\n\n </button>\n </td>\n </tr>\n </table>\n</div>", styles: [".tc-accordion-table{width:100%}.tc-accordion-actions{width:15px}.tc-btn-accordion-toggle{font-size:20px;border:none;background-color:transparent;background:none;cursor:pointer;margin:auto}.tc-btn-accordion-toggle:disabled{cursor:not-allowed!important;opacity:.6}.icon-toggle{color:var(--verde)}.area-title{width:100;cursor:pointer;color:var(--verde)}\n"] }]
3733
+ }], ctorParameters: function () { return [{ type: TCloudUiAccordionService }]; } });
3734
+
3735
+ class TCloudUiAccordionBodyComponent {
3736
+ constructor(_tCloudUiAccordionService) {
3737
+ this._tCloudUiAccordionService = _tCloudUiAccordionService;
3738
+ this.show = false;
3739
+ }
3740
+ ngOnInit() {
3741
+ this.show = this._tCloudUiAccordionService.getShow() || false;
3742
+ this._tCloudUiAccordionService.stateToggle$.subscribe((show) => {
3743
+ this.show = show;
3744
+ });
3745
+ }
3746
+ }
3747
+ TCloudUiAccordionBodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionBodyComponent, deps: [{ token: TCloudUiAccordionService }], target: i0.ɵɵFactoryTarget.Component });
3748
+ TCloudUiAccordionBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiAccordionBodyComponent, selector: "tcloud-ui-accordion-body", ngImport: i0, template: "<div class=\"tc-accordion-content\" style=\"display: none;\" [class.show]=\"show\">\n <ng-content></ng-content>\n</div>", styles: [".show{display:block!important}.tc-accordion-content{padding-top:15px;padding-bottom:15px}\n"] });
3749
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionBodyComponent, decorators: [{
3750
+ type: Component,
3751
+ args: [{ selector: 'tcloud-ui-accordion-body', template: "<div class=\"tc-accordion-content\" style=\"display: none;\" [class.show]=\"show\">\n <ng-content></ng-content>\n</div>", styles: [".show{display:block!important}.tc-accordion-content{padding-top:15px;padding-bottom:15px}\n"] }]
3752
+ }], ctorParameters: function () { return [{ type: TCloudUiAccordionService }]; } });
3753
+
3754
+ class TCloudUiAccordionModule {
3755
+ }
3756
+ TCloudUiAccordionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3757
+ TCloudUiAccordionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionModule, declarations: [TCloudUiAccordionComponent,
3758
+ TCloudUiAccordionTitleComponent,
3759
+ TCloudUiAccordionBodyComponent], imports: [CommonModule], exports: [TCloudUiAccordionComponent,
3760
+ TCloudUiAccordionTitleComponent,
3761
+ TCloudUiAccordionBodyComponent] });
3762
+ TCloudUiAccordionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionModule, imports: [CommonModule] });
3763
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionModule, decorators: [{
3764
+ type: NgModule,
3765
+ args: [{
3766
+ declarations: [
3767
+ TCloudUiAccordionComponent,
3768
+ TCloudUiAccordionTitleComponent,
3769
+ TCloudUiAccordionBodyComponent
3770
+ ],
3771
+ exports: [
3772
+ TCloudUiAccordionComponent,
3773
+ TCloudUiAccordionTitleComponent,
3774
+ TCloudUiAccordionBodyComponent
3775
+ ],
3776
+ imports: [
3777
+ CommonModule
3778
+ ]
3779
+ }]
3780
+ }] });
3781
+
3782
+ class TCloudUiAlignDirective {
3783
+ constructor(el, renderer) {
3784
+ this.el = el;
3785
+ this.renderer = renderer;
3786
+ this._direction = 'start';
3787
+ }
3788
+ set TCalign(direction) {
3789
+ if (direction) {
3790
+ this._direction = direction;
3791
+ this.setStyle(this.el.nativeElement);
3792
+ }
3793
+ }
3794
+ ngOnInit() {
3795
+ }
3796
+ setStyle(el) {
3797
+ if (this._direction === 'start') {
3798
+ this.renderer.setStyle(el, 'text-align', 'left');
3799
+ }
3800
+ if (this._direction === 'center') {
3801
+ this.renderer.setStyle(el, 'text-align', 'center');
3802
+ }
3803
+ if (this._direction === 'end') {
3804
+ this.renderer.setStyle(el, 'text-align', 'right');
3805
+ }
3806
+ }
3807
+ }
3808
+ TCloudUiAlignDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAlignDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
3809
+ TCloudUiAlignDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiAlignDirective, selector: "[TCalign]", inputs: { TCalign: "TCalign" }, ngImport: i0 });
3810
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAlignDirective, decorators: [{
3811
+ type: Directive,
3812
+ args: [{
3813
+ selector: '[TCalign]'
3814
+ }]
3815
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { TCalign: [{
3816
+ type: Input
3817
+ }] } });
3818
+
3819
+ class TCloudUiHoverParentDirective {
3820
+ constructor(renderer) {
3821
+ this.renderer = renderer;
3822
+ }
3823
+ onMouseOver() {
3824
+ if (this.getElement()) {
3825
+ const el = this.getElement();
3826
+ if (el) {
3827
+ this.renderer.addClass(el, (this.CLASS) ? this.CLASS : 'tcloud-hover-parent');
3828
+ }
3829
+ }
3830
+ }
3831
+ onMouseOut() {
3832
+ if (this.getElement()) {
3833
+ const el = this.getElement();
3834
+ if (el) {
3835
+ this.renderer.removeClass(el, (this.CLASS) ? this.CLASS : 'tcloud-hover-parent');
3836
+ }
3837
+ }
3838
+ }
3839
+ set TCHoverParent(id) {
3840
+ if (id) {
3841
+ this.ID = id;
3842
+ }
3843
+ }
3844
+ set TCHoverParentClass(clss) {
3845
+ if (clss) {
3846
+ this.CLASS = clss;
3847
+ }
3848
+ }
3849
+ getElement() {
3850
+ if (this.ID) {
3851
+ return document.getElementById(this.ID) || undefined;
3852
+ }
3853
+ return undefined;
3854
+ }
3855
+ }
3856
+ TCloudUiHoverParentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiHoverParentDirective, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
3857
+ TCloudUiHoverParentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiHoverParentDirective, selector: "[TCHoverParent]", inputs: { TCHoverParent: "TCHoverParent", TCHoverParentClass: "TCHoverParentClass" }, host: { listeners: { "mouseover": "onMouseOver()", "mouseout": "onMouseOut()" } }, ngImport: i0 });
3858
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiHoverParentDirective, decorators: [{
3859
+ type: Directive,
3860
+ args: [{
3861
+ selector: '[TCHoverParent]'
3862
+ }]
3863
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }]; }, propDecorators: { onMouseOver: [{
3864
+ type: HostListener,
3865
+ args: ['mouseover']
3866
+ }], onMouseOut: [{
3867
+ type: HostListener,
3868
+ args: ['mouseout']
3869
+ }], TCHoverParent: [{
3870
+ type: Input
3871
+ }], TCHoverParentClass: [{
3872
+ type: Input
3873
+ }] } });
3874
+
3875
+ class TCloudUiTooltipDirective {
3876
+ constructor(el, renderer) {
3877
+ this.el = el;
3878
+ this.renderer = renderer;
3879
+ this._direction = 'top';
3880
+ // main
3881
+ this.el_height = 0;
3882
+ this.el_width = 0;
3883
+ this.el_center = 0;
3884
+ this.el_position = 0;
3885
+ // tooltip
3886
+ this.target_height = 0;
3887
+ this.target_width = 0;
3888
+ this.target_center = 0;
3889
+ this.ID = '';
3890
+ this.info_text = '';
3891
+ }
3892
+ onMouseOver() {
3893
+ if (this.getElement()) {
3894
+ this.renderer.addClass(this.el.nativeElement, 'main-tooltip');
3895
+ const el = this.getElement();
3896
+ el.style.display = 'inline';
3897
+ setTimeout(() => {
3898
+ this.el_height = this.el.nativeElement.offsetHeight;
3899
+ this.el_width = this.el.nativeElement.offsetWidth;
3900
+ this.el_center = this.el_width / 2;
3901
+ const rect = this.el.nativeElement?.getBoundingClientRect();
3902
+ this.el_position = rect?.left || 0;
3903
+ // console.log('this.el_width', this.el_width);
3904
+ // console.log('this.el_center', this.el_center);
3905
+ // console.log('this.el_position', this.el_position);
3906
+ this.target_height = el.offsetHeight;
3907
+ this.target_width = el.offsetWidth;
3908
+ this.target_center = this.target_width / 2;
3909
+ // console.log('target_heigth', this.target_height);
3910
+ // console.log('target_width', this.target_width);
3911
+ // console.log('target_center', this.target_center);
3912
+ // this.renderer.setStyle(el, 'bottom', `${this.el_position}px`);
3913
+ switch (this._direction) {
3914
+ case 'top':
3915
+ this.to_top(el);
3916
+ break;
3917
+ case 'bottom':
3918
+ this.to_bottom(el);
3919
+ break;
3920
+ case 'left':
3921
+ this.to_left(el);
3922
+ break;
3923
+ case 'right':
3924
+ this.to_right(el);
3925
+ break;
3926
+ }
3927
+ });
3928
+ }
3929
+ }
3930
+ onMouseOut() {
3931
+ if (this.getElement()) {
3932
+ const el = this.getElement();
3933
+ el.style.display = 'none';
3934
+ this.renderer.removeClass(this.el.nativeElement, 'main-tooltip');
3935
+ }
3936
+ }
3937
+ set TCtooltip(tooltip) {
3938
+ if (tooltip) {
3939
+ this.check(tooltip);
3940
+ }
3941
+ }
3942
+ set TCdirection(direction) {
3943
+ if (direction) {
3944
+ this._direction = direction;
3945
+ }
3946
+ }
3947
+ ngOnInit() {
3948
+ }
3949
+ generateID() {
3950
+ return `tc-tooltip-${Math.floor(Math.random() * Math.floor(Math.random() * Date.now()))}`;
3951
+ }
3952
+ getElement() {
3953
+ return document.getElementById(this.ID) || undefined;
3954
+ }
3955
+ check(tooltip) {
3956
+ this.ID = this.generateID();
3957
+ this.info_text = tooltip;
3958
+ let el = this.el.nativeElement;
3959
+ this.main_el = el;
3960
+ if (el) {
3961
+ this.create_tooltip(tooltip, el);
3962
+ }
3963
+ else {
3964
+ console.log("TCL: tooltip -> el", this.el.nativeElement);
3965
+ }
3966
+ }
3967
+ setStyle(el) {
3968
+ // this.renderer.setStyle(el, 'position', 'relative');
3969
+ // this.renderer.setStyle(el, 'display', 'inline');
3970
+ }
3971
+ create_tooltip(tip, el) {
3972
+ this.setStyle(el);
3973
+ const tooltip = document.createElement("div");
3974
+ tooltip.setAttribute('id', this.ID);
3975
+ tooltip.setAttribute('style', `
3976
+ position: absolute;
3977
+ display: none;
3978
+ padding: 10px;
3979
+ border-radius: 10px;
3980
+ text-align: center;
3981
+ width: max-content;
3982
+ max-width: 250px;
3983
+ background-color: transparent;
3984
+ color: transparent;
3985
+ z-index: 1090;
3986
+ bottom: ${this.el_position}px;
3987
+ left: ${this.target_center}px;
3988
+ `);
3989
+ tooltip.innerHTML = tip;
3990
+ el.insertBefore(tooltip, null);
3991
+ }
3992
+ to_top(el) {
3993
+ const pos = this.el_center - (this.target_center);
3994
+ this.renderer.setStyle(el, 'left', `${(pos)}px`);
3995
+ this.renderer.setStyle(el, 'bottom', `${(this.el_height + 7)}px`);
3996
+ el.setAttribute('class', 'tc-directive-tooltip tc-directive-tooltip-top');
3997
+ }
3998
+ to_bottom(el) {
3999
+ const pos = this.el_center - (this.target_center);
4000
+ this.renderer.setStyle(el, 'left', `${(pos)}px`);
4001
+ this.renderer.setStyle(el, 'bottom', `-${(this.target_height + 7)}px`);
4002
+ el.setAttribute('class', 'tc-directive-tooltip tc-directive-tooltip-bottom');
4003
+ }
4004
+ to_right(el) {
4005
+ const pos = this.el_width;
4006
+ this.renderer.setStyle(el, 'left', `${(pos + 11)}px`);
4007
+ this.renderer.setStyle(el, 'bottom', `-${(((this.target_height) / 2) - (this.el_height / 2))}px`);
4008
+ el.setAttribute('class', 'tc-directive-tooltip tc-directive-tooltip-right');
4009
+ }
4010
+ to_left(el) {
4011
+ const pos = -((this.target_width));
4012
+ this.renderer.setStyle(el, 'left', `${(pos - 11)}px`);
4013
+ this.renderer.setStyle(el, 'bottom', `-${(((this.target_height) / 2) - (this.el_height / 2))}px`);
4014
+ el.setAttribute('class', 'tc-directive-tooltip tc-directive-tooltip-left');
4015
+ }
4016
+ }
4017
+ TCloudUiTooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiTooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
4018
+ TCloudUiTooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiTooltipDirective, selector: "[TCtooltip]", inputs: { TCtooltip: "TCtooltip", TCdirection: "TCdirection" }, host: { listeners: { "mouseover": "onMouseOver()", "mouseout": "onMouseOut()" } }, ngImport: i0 });
4019
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiTooltipDirective, decorators: [{
4020
+ type: Directive,
4021
+ args: [{
4022
+ selector: '[TCtooltip]'
4023
+ }]
4024
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { onMouseOver: [{
4025
+ type: HostListener,
4026
+ args: ['mouseover']
4027
+ }], onMouseOut: [{
4028
+ type: HostListener,
4029
+ args: ['mouseout']
4030
+ }], TCtooltip: [{
4031
+ type: Input
4032
+ }], TCdirection: [{
4033
+ type: Input
4034
+ }] } });
4035
+
4036
+ class TCloudUiDirectiveModule {
4037
+ }
4038
+ TCloudUiDirectiveModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDirectiveModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4039
+ TCloudUiDirectiveModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDirectiveModule, declarations: [TCloudUiTooltipDirective,
4040
+ TCloudUiAlignDirective,
4041
+ TCloudUiHoverParentDirective], exports: [TCloudUiTooltipDirective,
4042
+ TCloudUiAlignDirective,
4043
+ TCloudUiHoverParentDirective] });
4044
+ TCloudUiDirectiveModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDirectiveModule });
4045
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiDirectiveModule, decorators: [{
4046
+ type: NgModule,
4047
+ args: [{
4048
+ declarations: [
4049
+ TCloudUiTooltipDirective,
4050
+ TCloudUiAlignDirective,
4051
+ TCloudUiHoverParentDirective
4052
+ ],
4053
+ exports: [
4054
+ TCloudUiTooltipDirective,
4055
+ TCloudUiAlignDirective,
4056
+ TCloudUiHoverParentDirective
4057
+ ],
4058
+ }]
4059
+ }] });
4060
+
4061
+ class TCloudUiPipesModule {
4062
+ }
4063
+ TCloudUiPipesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiPipesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
4064
+ TCloudUiPipesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiPipesModule, declarations: [MonthNamePipe,
4065
+ StatusInfoPipe,
4066
+ RespectivePipe,
4067
+ CNPJPipe,
4068
+ CPFPipe,
4069
+ BytesPipe,
4070
+ DateBRPipe], imports: [CommonModule], exports: [DatePipe,
4071
+ MonthNamePipe,
4072
+ StatusInfoPipe,
4073
+ RespectivePipe,
4074
+ CNPJPipe,
4075
+ CPFPipe,
4076
+ BytesPipe,
4077
+ DateBRPipe] });
4078
+ TCloudUiPipesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiPipesModule, providers: [
4079
+ DatePipe,
4080
+ MonthNamePipe,
4081
+ StatusInfoPipe,
4082
+ RespectivePipe,
4083
+ CNPJPipe,
4084
+ CPFPipe,
4085
+ BytesPipe,
4086
+ DateBRPipe
4087
+ ], imports: [CommonModule] });
4088
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiPipesModule, decorators: [{
4089
+ type: NgModule,
4090
+ args: [{
4091
+ imports: [
4092
+ CommonModule,
4093
+ ],
4094
+ declarations: [
4095
+ MonthNamePipe,
4096
+ StatusInfoPipe,
4097
+ RespectivePipe,
4098
+ CNPJPipe,
4099
+ CPFPipe,
4100
+ BytesPipe,
4101
+ DateBRPipe
3188
4102
  ],
3189
4103
  exports: [
3190
- TCloudUiFiltersComponent
4104
+ DatePipe,
4105
+ MonthNamePipe,
4106
+ StatusInfoPipe,
4107
+ RespectivePipe,
4108
+ CNPJPipe,
4109
+ CPFPipe,
4110
+ BytesPipe,
4111
+ DateBRPipe
3191
4112
  ],
3192
- imports: [
3193
- CommonModule,
3194
- FormsModule
4113
+ providers: [
4114
+ DatePipe,
4115
+ MonthNamePipe,
4116
+ StatusInfoPipe,
4117
+ RespectivePipe,
4118
+ CNPJPipe,
4119
+ CPFPipe,
4120
+ BytesPipe,
4121
+ DateBRPipe
3195
4122
  ]
3196
4123
  }]
3197
4124
  }] });
3198
4125
 
3199
- class TCloudUiAccordionService {
4126
+ class TCloudUiLoadingTransitionsService {
3200
4127
  constructor() {
3201
- this._stateToggle = new Subject();
3202
- this.stateToggle$ = this._stateToggle.asObservable();
3203
- this._stateLoading = new Subject();
3204
- this.stateLoading$ = this._stateLoading.asObservable();
3205
- this._stateDisabled = new Subject();
3206
- this.stateDisabled$ = this._stateDisabled.asObservable();
3207
- }
3208
- toggle(action) {
3209
- this._stateToggle.next(action);
3210
- }
3211
- getLoading() {
3212
- return this.loading;
3213
- }
3214
- setLoading(loading) {
3215
- this.loading = loading;
3216
- this._stateLoading.next(loading);
3217
- }
3218
- getShow() {
3219
- return this.show;
3220
- }
3221
- setDisabled(disabled) {
3222
- this._stateDisabled.next(disabled);
3223
- }
3224
- getDisabled() {
3225
- return this.disabled;
3226
- }
3227
- }
3228
- TCloudUiAccordionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
3229
- TCloudUiAccordionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionService });
3230
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionService, decorators: [{
3231
- type: Injectable
3232
- }] });
3233
-
3234
- class TCloudUiAccordionComponent {
3235
- constructor(_tCloudUiAccordionService) {
3236
- this._tCloudUiAccordionService = _tCloudUiAccordionService;
3237
- this._disabled = false;
3238
- this._show = false;
3239
- this.onAction = new EventEmitter();
3240
- this._loading = false;
3241
- }
3242
- set disabled(v) {
3243
- this._disabled = v;
3244
- if (this._disabled) {
3245
- setTimeout(() => {
3246
- this._tCloudUiAccordionService.setDisabled(this._disabled);
3247
- this._tCloudUiAccordionService.toggle(false);
3248
- });
3249
- }
3250
- }
3251
- get disabled() { return this._disabled; }
3252
- set show(v) {
3253
- if (this._show !== v) {
3254
- this._show = v;
3255
- if (!this.disabled) {
3256
- setTimeout(() => { this._tCloudUiAccordionService.toggle(this._show); });
3257
- }
3258
- }
4128
+ this.ID = 'tcloud-ui-loading-transitions';
3259
4129
  }
3260
- get show() { return this._show; }
3261
4130
  /**
3262
- * loading - boolean - Coloca o modal em modo de carregamento - default false
4131
+ * Inicia a tela de bloqueio para carregamento de tarefa
3263
4132
  */
3264
- set loading(loading) {
3265
- this._loading = loading;
3266
- this._tCloudUiAccordionService.setLoading(loading);
3267
- }
3268
- get loading() { return this._loading; }
3269
- ngOnInit() {
3270
- this.subscription_01 = this._tCloudUiAccordionService.stateLoading$.subscribe((loading) => {
3271
- this.loading = loading;
3272
- });
3273
- this.subscription_02 = this._tCloudUiAccordionService.stateToggle$.subscribe((show) => {
3274
- this.onAction.emit((show === true) ? 'open' : 'close');
3275
- });
3276
- }
3277
- ngOnDestroy() {
3278
- if (this.subscription_01) {
3279
- this.subscription_01.unsubscribe();
3280
- }
3281
- if (this.subscription_02) {
3282
- this.subscription_02.unsubscribe();
4133
+ start() {
4134
+ this.create_loading_transition();
4135
+ if (document.getElementById(this.ID)) {
4136
+ const box = document.getElementById(this.ID);
4137
+ box?.classList.add('tcloud-ui-start-loading');
3283
4138
  }
3284
4139
  }
3285
- }
3286
- TCloudUiAccordionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionComponent, deps: [{ token: TCloudUiAccordionService }], target: i0.ɵɵFactoryTarget.Component });
3287
- TCloudUiAccordionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiAccordionComponent, selector: "tcloud-ui-accordion", inputs: { disabled: "disabled", show: "show", loading: "loading" }, outputs: { onAction: "onAction" }, providers: [
3288
- TCloudUiAccordionService
3289
- ], ngImport: i0, template: "<div class=\"tc-accordion\" [class.tc-accordion-disabled]=\"disabled\">\n <ng-content></ng-content>\n</div>", styles: [".tc-accordion{border:1px solid #ccc;padding:8px 12px;border-radius:15px;margin-bottom:5px}.tc-accordion-disabled{background-color:#e3e3e3;opacity:.6}\n"] });
3290
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionComponent, decorators: [{
3291
- type: Component,
3292
- args: [{ selector: 'tcloud-ui-accordion', providers: [
3293
- TCloudUiAccordionService
3294
- ], template: "<div class=\"tc-accordion\" [class.tc-accordion-disabled]=\"disabled\">\n <ng-content></ng-content>\n</div>", styles: [".tc-accordion{border:1px solid #ccc;padding:8px 12px;border-radius:15px;margin-bottom:5px}.tc-accordion-disabled{background-color:#e3e3e3;opacity:.6}\n"] }]
3295
- }], ctorParameters: function () { return [{ type: TCloudUiAccordionService }]; }, propDecorators: { disabled: [{
3296
- type: Input
3297
- }], show: [{
3298
- type: Input
3299
- }], onAction: [{
3300
- type: Output
3301
- }], loading: [{
3302
- type: Input
3303
- }] } });
3304
-
3305
- class TCloudUiAccordionTitleComponent {
3306
- constructor(_tCloudUiAccordionService) {
3307
- this._tCloudUiAccordionService = _tCloudUiAccordionService;
3308
- this.show = false;
3309
- this.loading = false;
3310
- this.disabled = false;
3311
- }
3312
- ngOnInit() {
3313
- this.loading = this._tCloudUiAccordionService.getLoading() || false;
3314
- this.subscription_01 = this._tCloudUiAccordionService.stateLoading$.subscribe((loading) => {
3315
- this.loading = loading;
3316
- });
3317
- this.show = this._tCloudUiAccordionService.getShow() || false;
3318
- this.subscription_02 = this._tCloudUiAccordionService.stateToggle$.subscribe((show) => {
3319
- this.show = show;
3320
- });
3321
- this.disabled = this._tCloudUiAccordionService.getDisabled() || false;
3322
- this.subscription_03 = this._tCloudUiAccordionService.stateDisabled$.subscribe((disabled) => {
3323
- this.disabled = disabled;
3324
- });
3325
- }
3326
- toggle() {
3327
- if (this.disabled) {
3328
- return;
4140
+ /**
4141
+ * Encerra a tela de bloqueio
4142
+ */
4143
+ stop() {
4144
+ if (document.getElementById(this.ID)) {
4145
+ const box = document.getElementById(this.ID);
4146
+ box?.classList.remove('tcloud-ui-start-loading');
4147
+ const body = document.getElementsByTagName('body')[0];
4148
+ body.classList.remove('tcloud-ui-body-loading-transitions');
3329
4149
  }
3330
- this.show = !this.show;
3331
- this._tCloudUiAccordionService.toggle(this.show);
3332
4150
  }
3333
- toggle_title() {
3334
- this.toggle();
3335
- }
3336
- ngOnDestroy() {
3337
- if (this.subscription_01) {
3338
- this.subscription_01.unsubscribe();
3339
- }
3340
- if (this.subscription_02) {
3341
- this.subscription_02.unsubscribe();
4151
+ create_loading_transition() {
4152
+ let box = null;
4153
+ if (document.getElementById(this.ID)) {
4154
+ box = document.getElementById(this.ID);
3342
4155
  }
3343
- if (this.subscription_03) {
3344
- this.subscription_03.unsubscribe();
4156
+ else {
4157
+ box = document.createElement("div");
4158
+ box.setAttribute('id', this.ID);
3345
4159
  }
4160
+ box.style.display = 'none';
4161
+ box.innerHTML = `<div class="tc-loading-icon"><i class="fas fa-spinner fa-spin"></i></div>`;
4162
+ const body = document.getElementsByTagName('body')[0];
4163
+ body.appendChild(box);
4164
+ body.classList.add('tcloud-ui-body-loading-transitions');
3346
4165
  }
3347
4166
  }
3348
- TCloudUiAccordionTitleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionTitleComponent, deps: [{ token: TCloudUiAccordionService }], target: i0.ɵɵFactoryTarget.Component });
3349
- TCloudUiAccordionTitleComponentcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiAccordionTitleComponent, selector: "tcloud-ui-accordion-title", ngImport: i0, template: "<div class=\"tc-accordion-title\">\n <table class=\"tc-accordion-table\">\n <tr>\n <td class=\"area-title\" (click)=\"toggle_title()\" >\n <ng-content></ng-content>\n </td>\n <td class=\"tc-accordion-actions\">\n <button type=\"button\" class=\"tc-btn-accordion-toggle\" [disabled]=\"disabled\" (click)=\"toggle()\" >\n\n <i class=\"fas fa-chevron-right icon-toggle\" *ngIf=\"!show\"></i>\n <i class=\"fas fa-chevron-down icon-toggle\" *ngIf=\"show\"></i>\n\n </button>\n </td>\n </tr>\n </table>\n</div>", styles: [".tc-accordion-table{width:100%}.tc-accordion-actions{width:15px}.tc-btn-accordion-toggle{font-size:20px;border:none;background-color:transparent;background:none;cursor:pointer;margin:auto}.tc-btn-accordion-toggle:disabled{cursor:not-allowed!important;opacity:.6}.icon-toggle{color:var(--verde)}.area-title{width:100;cursor:pointer;color:var(--verde)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
3350
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionTitleComponent, decorators: [{
3351
- type: Component,
3352
- args: [{ selector: 'tcloud-ui-accordion-title', template: "<div class=\"tc-accordion-title\">\n <table class=\"tc-accordion-table\">\n <tr>\n <td class=\"area-title\" (click)=\"toggle_title()\" >\n <ng-content></ng-content>\n </td>\n <td class=\"tc-accordion-actions\">\n <button type=\"button\" class=\"tc-btn-accordion-toggle\" [disabled]=\"disabled\" (click)=\"toggle()\" >\n\n <i class=\"fas fa-chevron-right icon-toggle\" *ngIf=\"!show\"></i>\n <i class=\"fas fa-chevron-down icon-toggle\" *ngIf=\"show\"></i>\n\n </button>\n </td>\n </tr>\n </table>\n</div>", styles: [".tc-accordion-table{width:100%}.tc-accordion-actions{width:15px}.tc-btn-accordion-toggle{font-size:20px;border:none;background-color:transparent;background:none;cursor:pointer;margin:auto}.tc-btn-accordion-toggle:disabled{cursor:not-allowed!important;opacity:.6}.icon-toggle{color:var(--verde)}.area-title{width:100;cursor:pointer;color:var(--verde)}\n"] }]
3353
- }], ctorParameters: function () { return [{ type: TCloudUiAccordionService }]; } });
3354
-
3355
- class TCloudUiAccordionBodyComponent {
3356
- constructor(_tCloudUiAccordionService) {
3357
- this._tCloudUiAccordionService = _tCloudUiAccordionService;
3358
- this.show = false;
3359
- }
3360
- ngOnInit() {
3361
- this.show = this._tCloudUiAccordionService.getShow() || false;
3362
- this._tCloudUiAccordionService.stateToggle$.subscribe((show) => {
3363
- this.show = show;
3364
- });
3365
- }
3366
- }
3367
- TCloudUiAccordionBodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionBodyComponent, deps: [{ token: TCloudUiAccordionService }], target: i0.ɵɵFactoryTarget.Component });
3368
- TCloudUiAccordionBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: TCloudUiAccordionBodyComponent, selector: "tcloud-ui-accordion-body", ngImport: i0, template: "<div class=\"tc-accordion-content\" style=\"display: none;\" [class.show]=\"show\">\n <ng-content></ng-content>\n</div>", styles: [".show{display:block!important}.tc-accordion-content{padding-top:15px;padding-bottom:15px}\n"] });
3369
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionBodyComponent, decorators: [{
3370
- type: Component,
3371
- args: [{ selector: 'tcloud-ui-accordion-body', template: "<div class=\"tc-accordion-content\" style=\"display: none;\" [class.show]=\"show\">\n <ng-content></ng-content>\n</div>", styles: [".show{display:block!important}.tc-accordion-content{padding-top:15px;padding-bottom:15px}\n"] }]
3372
- }], ctorParameters: function () { return [{ type: TCloudUiAccordionService }]; } });
3373
-
3374
- class TCloudUiAccordionModule {
3375
- }
3376
- TCloudUiAccordionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
3377
- TCloudUiAccordionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionModule, declarations: [TCloudUiAccordionComponent,
3378
- TCloudUiAccordionTitleComponent,
3379
- TCloudUiAccordionBodyComponent], imports: [CommonModule], exports: [TCloudUiAccordionComponent,
3380
- TCloudUiAccordionTitleComponent,
3381
- TCloudUiAccordionBodyComponent] });
3382
- TCloudUiAccordionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionModule, imports: [CommonModule] });
3383
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiAccordionModule, decorators: [{
3384
- type: NgModule,
4167
+ TCloudUiLoadingTransitionsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiLoadingTransitionsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
4168
+ TCloudUiLoadingTransitionsServiceprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiLoadingTransitionsService, providedIn: 'root' });
4169
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: TCloudUiLoadingTransitionsService, decorators: [{
4170
+ type: Injectable,
3385
4171
  args: [{
3386
- declarations: [
3387
- TCloudUiAccordionComponent,
3388
- TCloudUiAccordionTitleComponent,
3389
- TCloudUiAccordionBodyComponent
3390
- ],
3391
- exports: [
3392
- TCloudUiAccordionComponent,
3393
- TCloudUiAccordionTitleComponent,
3394
- TCloudUiAccordionBodyComponent
3395
- ],
3396
- imports: [
3397
- CommonModule
3398
- ]
4172
+ providedIn: 'root',
3399
4173
  }]
3400
- }] });
4174
+ }], ctorParameters: function () { return []; } });
3401
4175
 
3402
4176
  class TCloudUiModule {
3403
4177
  }
@@ -3417,6 +4191,8 @@ TCloudUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
3417
4191
  TCloudUiScrollBoxModule,
3418
4192
  TCloudUiFiltersModule,
3419
4193
  TCloudUiAccordionModule,
4194
+ TCloudUiDatepickerModule,
4195
+ TCloudUiDatepickerTimeModule,
3420
4196
  // Directives
3421
4197
  TCloudUiDirectiveModule,
3422
4198
  // Pipes
@@ -3435,6 +4211,8 @@ TCloudUiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
3435
4211
  TCloudUiScrollBoxModule,
3436
4212
  TCloudUiFiltersModule,
3437
4213
  TCloudUiAccordionModule,
4214
+ TCloudUiDatepickerModule,
4215
+ TCloudUiDatepickerTimeModule,
3438
4216
  // Directives
3439
4217
  TCloudUiDirectiveModule,
3440
4218
  // Pipes
@@ -3457,6 +4235,8 @@ TCloudUiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
3457
4235
  TCloudUiScrollBoxModule,
3458
4236
  TCloudUiFiltersModule,
3459
4237
  TCloudUiAccordionModule,
4238
+ TCloudUiDatepickerModule,
4239
+ TCloudUiDatepickerTimeModule,
3460
4240
  // Directives
3461
4241
  TCloudUiDirectiveModule,
3462
4242
  // Pipes
@@ -3475,6 +4255,8 @@ TCloudUiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
3475
4255
  TCloudUiScrollBoxModule,
3476
4256
  TCloudUiFiltersModule,
3477
4257
  TCloudUiAccordionModule,
4258
+ TCloudUiDatepickerModule,
4259
+ TCloudUiDatepickerTimeModule,
3478
4260
  // Directives
3479
4261
  TCloudUiDirectiveModule,
3480
4262
  // Pipes
@@ -3498,6 +4280,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
3498
4280
  TCloudUiScrollBoxModule,
3499
4281
  TCloudUiFiltersModule,
3500
4282
  TCloudUiAccordionModule,
4283
+ TCloudUiDatepickerModule,
4284
+ TCloudUiDatepickerTimeModule,
3501
4285
  // Directives
3502
4286
  TCloudUiDirectiveModule,
3503
4287
  // Pipes
@@ -3519,6 +4303,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
3519
4303
  TCloudUiScrollBoxModule,
3520
4304
  TCloudUiFiltersModule,
3521
4305
  TCloudUiAccordionModule,
4306
+ TCloudUiDatepickerModule,
4307
+ TCloudUiDatepickerTimeModule,
3522
4308
  // Directives
3523
4309
  TCloudUiDirectiveModule,
3524
4310
  // Pipes
@@ -3539,5 +4325,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
3539
4325
  * Generated bundle index. Do not edit.
3540
4326
  */
3541
4327
 
3542
- export { BytesPipe, CNPJPipe, CPFPipe, CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$2 as CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR, MonthNamePipe, RespectivePipe, StatusInfoPipe, TCCondition, TCFiltersType, TCloudUiAccordionBodyComponent, TCloudUiAccordionComponent, TCloudUiAccordionModule, TCloudUiAccordionTitleComponent, TCloudUiAlignDirective, TCloudUiChoiceIssuesComponent, TCloudUiChoiceIssuesModule, TCloudUiDataListComponent, TCloudUiDataListModule, TCloudUiDataListOptionComponent, TCloudUiDirectiveModule, TCloudUiFiltersComponent, TCloudUiFiltersModule, TCloudUiInputSearchComponent, TCloudUiInputSearchModule, TCloudUiLineStepCircleComponent, TCloudUiLineStepCircleModule, TCloudUiLinhaLogoComponent, TCloudUiLinhaLogoModule, TCloudUiLoadingTransitionsService, TCloudUiModalBodyComponent, TCloudUiModalComponent, TCloudUiModalFooterComponent, TCloudUiModalHeaderComponent, TCloudUiModalModule, TCloudUiModule, TCloudUiMultiInputComponent, TCloudUiMultiInputModule, TCloudUiMultiSelectComponent, TCloudUiMultiSelectModule, TCloudUiNotFoundComponent, TCloudUiNotFoundModule, TCloudUiNumberStepComponent, TCloudUiNumberStepModule, TCloudUiPipesModule, TCloudUiScrollBoxComponent, TCloudUiScrollBoxModule, TCloudUiSearchInObjectService, TCloudUiTabContentComponent, TCloudUiTabHeadComponent, TCloudUiTabMenuComponent, TCloudUiTabMenuModule, TCloudUiTabSubtitleComponent, TCloudUiTabTitleComponent, TCloudUiTableComponent, TCloudUiTableModule, TCloudUiTooltipDirective };
4328
+ export { BytesPipe, CNPJPipe, CPFPipe, CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR$4 as CUSTOM_INPUT_CONTROL_VALUE_ACCESSOR, DateBRPipe, MonthNamePipe, RespectivePipe, StatusInfoPipe, TCCondition, TCFiltersType, TCloudUiAccordionBodyComponent, TCloudUiAccordionComponent, TCloudUiAccordionModule, TCloudUiAccordionTitleComponent, TCloudUiAlignDirective, TCloudUiChoiceIssuesComponent, TCloudUiChoiceIssuesModule, TCloudUiDataListComponent, TCloudUiDataListModule, TCloudUiDataListOptionComponent, TCloudUiDatepickerComponent, TCloudUiDatepickerModule, TCloudUiDatepickerTimeComponent, TCloudUiDatepickerTimeModule, TCloudUiDirectiveModule, TCloudUiFiltersComponent, TCloudUiFiltersModule, TCloudUiHoverParentDirective, TCloudUiInputSearchComponent, TCloudUiInputSearchModule, TCloudUiLineStepCircleComponent, TCloudUiLineStepCircleModule, TCloudUiLinhaLogoComponent, TCloudUiLinhaLogoModule, TCloudUiLoadingTransitionsService, TCloudUiModalBodyComponent, TCloudUiModalComponent, TCloudUiModalFooterComponent, TCloudUiModalHeaderComponent, TCloudUiModalModule, TCloudUiModule, TCloudUiMultiInputComponent, TCloudUiMultiInputModule, TCloudUiMultiSelectComponent, TCloudUiMultiSelectModule, TCloudUiNotFoundComponent, TCloudUiNotFoundModule, TCloudUiNumberStepComponent, TCloudUiNumberStepModule, TCloudUiPipesModule, TCloudUiScrollBoxComponent, TCloudUiScrollBoxModule, TCloudUiSearchInObjectService, TCloudUiTabContentComponent, TCloudUiTabHeadComponent, TCloudUiTabMenuComponent, TCloudUiTabMenuModule, TCloudUiTabSubtitleComponent, TCloudUiTabTitleComponent, TCloudUiTableComponent, TCloudUiTableModule, TCloudUiTooltipDirective };
3543
4329
  //# sourceMappingURL=dev-tcloud-tcloud-ui.mjs.map