lib-portal-angular 0.0.59 → 0.0.61
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.
- package/esm2022/lib/components/components.module.mjs +21 -4
- package/esm2022/lib/components/imput/input.component.mjs +123 -52
- package/esm2022/lib/directive/cep-mask.directive.mjs +49 -0
- package/esm2022/lib/directive/cnpj-mask.directive.mjs +53 -0
- package/esm2022/lib/directive/cpf-mask.directive.mjs +52 -0
- package/esm2022/public-api.mjs +6 -1
- package/fesm2022/lib-portal-angular.mjs +282 -52
- package/fesm2022/lib-portal-angular.mjs.map +1 -1
- package/lib/components/components.module.d.ts +16 -13
- package/lib/components/imput/input.component.d.ts +15 -1
- package/lib/directive/cep-mask.directive.d.ts +12 -0
- package/lib/directive/cnpj-mask.directive.d.ts +12 -0
- package/lib/directive/cpf-mask.directive.d.ts +12 -0
- package/package.json +1 -1
- package/public-api.d.ts +4 -0
package/esm2022/public-api.mjs
CHANGED
|
@@ -26,6 +26,11 @@ export * from './lib/components/select/select.component';
|
|
|
26
26
|
export * from './lib/components/tables/data-table.component';
|
|
27
27
|
export * from './lib/components/textarea/textarea.component';
|
|
28
28
|
export * from './lib/components/tree-node/tree-node.component';
|
|
29
|
+
// Diretivas
|
|
30
|
+
export * from './lib/directive/autofocus-directive/autofocus.directive';
|
|
31
|
+
export * from './lib/directive/cep-mask.directive';
|
|
32
|
+
export * from './lib/directive/cnpj-mask.directive';
|
|
33
|
+
export * from './lib/directive/cpf-mask.directive';
|
|
29
34
|
// Enums
|
|
30
35
|
export * from './lib/enum/ButtonClassesEnum';
|
|
31
36
|
// Módulos
|
|
@@ -38,4 +43,4 @@ export * from './lib/components/confirmation/confirmation.service';
|
|
|
38
43
|
export * from './lib/components/tables/data-paginate.service';
|
|
39
44
|
export * from './lib/service/refresh-service.service';
|
|
40
45
|
export * from './lib/service/route-parameter.service';
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2xpYi1wb3J0YWwtYW5ndWxhci9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQUVILGNBQWM7QUFDZCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLGtFQUFrRSxDQUFDO0FBQ2pGLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsMERBQTBELENBQUM7QUFDekUsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxnREFBZ0QsQ0FBQztBQUUvRCxZQUFZO0FBQ1osY0FBYyx5REFBeUQsQ0FBQztBQUN4RSxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUVuRCxRQUFRO0FBQ1IsY0FBYyw4QkFBOEIsQ0FBQztBQUU3QyxVQUFVO0FBQ1YsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsaUNBQWlDLENBQUM7QUFHaEQsVUFBVTtBQUNWLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyx1Q0FBdUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygc2ltLWxpYlxuICpcbiAqIEVzdGUgYXJxdWl2byBleHBvcnRhIHRvZG9zIG9zIGNvbXBvbmVudGVzLCBlbnVtcyBlIG3Ds2R1bG9zIG5lY2Vzc8Ohcmlvc1xuICogcGFyYSBxdWUgb3MgY29uc3VtaWRvcmVzIGRhIGJpYmxpb3RlY2EgcG9zc2FtIHV0aWxpesOhLWxvcyBlbSBzdWFzIGFwbGljYcOnw7Vlcy5cbiAqL1xuXG4vLyBDb21wb25lbnRlc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90YWIvdGFiLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NlYXJjaC1jdXN0b21lci9zZWFyY2gtY3VzdG9tZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY3VzdG9tLXN3aXRjaC9jdXN0b20tc3dpdGNoLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2FwcC1iYWNrZ3JvdW5kL2FwcC1iYWNrZ3JvdW5kLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2JhZGdlL2JhZGdlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Jhc2ljLXJlZ2lzdHJhdGlvbi9iYXNpYy1yZWdpc3RyYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jYXJkL2NhcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY29kZS1oaWdobGlnaHQvY29kZS1oaWdobGlnaHQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvY29uZmlybWF0aW9uL2NvbmZpcm1hdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9jdXN0b20tcGFnaW5hdGlvbi9jdXN0b20tcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9pbXB1dC9pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9tdWx0aS1zZWxlY3QvbXVsdGktc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3JhZGlvL3JhZGlvLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NlYXJjaC1pbnB1dC9zZWFyY2gtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2VsZWN0L3NlbGVjdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90YWJsZXMvZGF0YS10YWJsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90ZXh0YXJlYS90ZXh0YXJlYS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy90cmVlLW5vZGUvdHJlZS1ub2RlLmNvbXBvbmVudCc7XG5cbi8vIERpcmV0aXZhc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlL2F1dG9mb2N1cy1kaXJlY3RpdmUvYXV0b2ZvY3VzLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmUvY2VwLW1hc2suZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZS9jbnBqLW1hc2suZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZS9jcGYtbWFzay5kaXJlY3RpdmUnO1xuXG4vLyBFbnVtc1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZW51bS9CdXR0b25DbGFzc2VzRW51bSc7XG5cbi8vIE3Ds2R1bG9zXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbXBvbmVudHMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ljb25zL2x1Y2lkZS1pY29ucy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbGliLXBvcnRhbC1hbmd1bGFyLm1vZHVsZSc7XG5cblxuLy8gU2VydmljZVxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9hbGVydC9ub3RpZmljYXRpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2NvbmZpcm1hdGlvbi9jb25maXJtYXRpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3RhYmxlcy9kYXRhLXBhZ2luYXRlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZS9yZWZyZXNoLXNlcnZpY2Uuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlL3JvdXRlLXBhcmFtZXRlci5zZXJ2aWNlJztcblxuIl19
|
|
@@ -1014,6 +1014,154 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1014
1014
|
type: Output
|
|
1015
1015
|
}] } });
|
|
1016
1016
|
|
|
1017
|
+
class CepMaskDirective {
|
|
1018
|
+
constructor(el, renderer) {
|
|
1019
|
+
this.el = el;
|
|
1020
|
+
this.renderer = renderer;
|
|
1021
|
+
this.enabled = false; // Define como opcional e padrão desabilitado
|
|
1022
|
+
}
|
|
1023
|
+
onInputChange(event) {
|
|
1024
|
+
if (!this.enabled)
|
|
1025
|
+
return; // Não aplica a máscara se não estiver habilitada
|
|
1026
|
+
// Obtém o valor atual e remove todos os caracteres não numéricos
|
|
1027
|
+
let initialValue = this.el.nativeElement.value.replace(/\D/g, '');
|
|
1028
|
+
// Limita o número de caracteres a 8 para CEP
|
|
1029
|
+
if (initialValue.length > 8) {
|
|
1030
|
+
initialValue = initialValue.slice(0, 8);
|
|
1031
|
+
}
|
|
1032
|
+
// Aplica a máscara de CEP
|
|
1033
|
+
const formattedValue = this.formatCep(initialValue);
|
|
1034
|
+
// Atualiza o valor do input se necessário
|
|
1035
|
+
if (formattedValue !== this.el.nativeElement.value) {
|
|
1036
|
+
this.renderer.setProperty(this.el.nativeElement, 'value', formattedValue);
|
|
1037
|
+
// Dispara um evento de input para atualizar o modelo
|
|
1038
|
+
if (event.target.dispatchEvent) {
|
|
1039
|
+
const newEvent = new Event('input', { bubbles: true });
|
|
1040
|
+
event.target.dispatchEvent(newEvent);
|
|
1041
|
+
}
|
|
1042
|
+
}
|
|
1043
|
+
}
|
|
1044
|
+
formatCep(value) {
|
|
1045
|
+
// Aplica a formatação de CEP: 12345-678
|
|
1046
|
+
return value.replace(/(\d{5})(\d)/, '$1-$2');
|
|
1047
|
+
}
|
|
1048
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CepMaskDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
1049
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: CepMaskDirective, selector: "[cepMask]", inputs: { enabled: ["cepMask", "enabled"] }, host: { listeners: { "input": "onInputChange($event)" } }, ngImport: i0 }); }
|
|
1050
|
+
}
|
|
1051
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CepMaskDirective, decorators: [{
|
|
1052
|
+
type: Directive,
|
|
1053
|
+
args: [{
|
|
1054
|
+
selector: '[cepMask]',
|
|
1055
|
+
}]
|
|
1056
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { enabled: [{
|
|
1057
|
+
type: Input,
|
|
1058
|
+
args: ['cepMask']
|
|
1059
|
+
}], onInputChange: [{
|
|
1060
|
+
type: HostListener,
|
|
1061
|
+
args: ['input', ['$event']]
|
|
1062
|
+
}] } });
|
|
1063
|
+
|
|
1064
|
+
class CnpjMaskDirective {
|
|
1065
|
+
constructor(el, renderer) {
|
|
1066
|
+
this.el = el;
|
|
1067
|
+
this.renderer = renderer;
|
|
1068
|
+
this.enabled = false; // Define como opcional e padrão desabilitado
|
|
1069
|
+
}
|
|
1070
|
+
onInputChange(event) {
|
|
1071
|
+
if (!this.enabled)
|
|
1072
|
+
return; // Não aplica a máscara se não estiver habilitada
|
|
1073
|
+
// Obtém o valor atual e remove todos os caracteres não numéricos
|
|
1074
|
+
let initialValue = this.el.nativeElement.value.replace(/\D/g, '');
|
|
1075
|
+
// Limita o número de caracteres a 14 para CNPJ
|
|
1076
|
+
if (initialValue.length > 14) {
|
|
1077
|
+
initialValue = initialValue.slice(0, 14);
|
|
1078
|
+
}
|
|
1079
|
+
// Aplica a máscara de CNPJ
|
|
1080
|
+
const formattedValue = this.formatCnpj(initialValue);
|
|
1081
|
+
// Atualiza o valor do input se necessário
|
|
1082
|
+
if (formattedValue !== this.el.nativeElement.value) {
|
|
1083
|
+
this.renderer.setProperty(this.el.nativeElement, 'value', formattedValue);
|
|
1084
|
+
// Dispara um evento de input para atualizar o modelo
|
|
1085
|
+
if (event.target.dispatchEvent) {
|
|
1086
|
+
const newEvent = new Event('input', { bubbles: true });
|
|
1087
|
+
event.target.dispatchEvent(newEvent);
|
|
1088
|
+
}
|
|
1089
|
+
}
|
|
1090
|
+
}
|
|
1091
|
+
formatCnpj(value) {
|
|
1092
|
+
// Aplica a formatação de CNPJ: 12.345.678/0001-00
|
|
1093
|
+
return value
|
|
1094
|
+
.replace(/(\d{2})(\d)/, '$1.$2')
|
|
1095
|
+
.replace(/(\d{3})(\d)/, '$1.$2')
|
|
1096
|
+
.replace(/(\d{3})(\d{4})(\d)/, '$1/$2-$3')
|
|
1097
|
+
.replace(/(\d{4})(\d{2})$/, '$1-$2');
|
|
1098
|
+
}
|
|
1099
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CnpjMaskDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
1100
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: CnpjMaskDirective, selector: "[cnpjMask]", inputs: { enabled: ["cnpjMask", "enabled"] }, host: { listeners: { "input": "onInputChange($event)" } }, ngImport: i0 }); }
|
|
1101
|
+
}
|
|
1102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CnpjMaskDirective, decorators: [{
|
|
1103
|
+
type: Directive,
|
|
1104
|
+
args: [{
|
|
1105
|
+
selector: '[cnpjMask]',
|
|
1106
|
+
}]
|
|
1107
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { enabled: [{
|
|
1108
|
+
type: Input,
|
|
1109
|
+
args: ['cnpjMask']
|
|
1110
|
+
}], onInputChange: [{
|
|
1111
|
+
type: HostListener,
|
|
1112
|
+
args: ['input', ['$event']]
|
|
1113
|
+
}] } });
|
|
1114
|
+
|
|
1115
|
+
class CpfMaskDirective {
|
|
1116
|
+
constructor(el, renderer) {
|
|
1117
|
+
this.el = el;
|
|
1118
|
+
this.renderer = renderer;
|
|
1119
|
+
this.enabled = false; // Define como opcional e padrão desabilitado
|
|
1120
|
+
}
|
|
1121
|
+
onInputChange(event) {
|
|
1122
|
+
if (!this.enabled)
|
|
1123
|
+
return;
|
|
1124
|
+
// Obtém o valor atual e remove todos os caracteres não numéricos
|
|
1125
|
+
let initialValue = this.el.nativeElement.value.replace(/\D/g, '');
|
|
1126
|
+
// Limita o número de caracteres a 11 para CPF
|
|
1127
|
+
if (initialValue.length > 11) {
|
|
1128
|
+
initialValue = initialValue.slice(0, 11);
|
|
1129
|
+
}
|
|
1130
|
+
// Aplica a máscara de CPF
|
|
1131
|
+
const formattedValue = this.formatCpf(initialValue);
|
|
1132
|
+
// Atualiza o valor do input se necessário
|
|
1133
|
+
if (formattedValue !== this.el.nativeElement.value) {
|
|
1134
|
+
this.renderer.setProperty(this.el.nativeElement, 'value', formattedValue);
|
|
1135
|
+
// Dispara um evento de input para atualizar o modelo
|
|
1136
|
+
if (event.target.dispatchEvent) {
|
|
1137
|
+
const newEvent = new Event('input', { bubbles: true });
|
|
1138
|
+
event.target.dispatchEvent(newEvent);
|
|
1139
|
+
}
|
|
1140
|
+
}
|
|
1141
|
+
}
|
|
1142
|
+
formatCpf(value) {
|
|
1143
|
+
// Aplica a formatação de CPF: 123.456.789-00
|
|
1144
|
+
return value
|
|
1145
|
+
.replace(/(\d{3})(\d)/, '$1.$2')
|
|
1146
|
+
.replace(/(\d{3})(\d)/, '$1.$2')
|
|
1147
|
+
.replace(/(\d{3})(\d{1,2})$/, '$1-$2');
|
|
1148
|
+
}
|
|
1149
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CpfMaskDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
1150
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: CpfMaskDirective, selector: "[cpfMask]", inputs: { enabled: ["cpfMask", "enabled"] }, host: { listeners: { "input": "onInputChange($event)" } }, ngImport: i0 }); }
|
|
1151
|
+
}
|
|
1152
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CpfMaskDirective, decorators: [{
|
|
1153
|
+
type: Directive,
|
|
1154
|
+
args: [{
|
|
1155
|
+
selector: '[cpfMask]',
|
|
1156
|
+
}]
|
|
1157
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { enabled: [{
|
|
1158
|
+
type: Input,
|
|
1159
|
+
args: ['cpfMask']
|
|
1160
|
+
}], onInputChange: [{
|
|
1161
|
+
type: HostListener,
|
|
1162
|
+
args: ['input', ['$event']]
|
|
1163
|
+
}] } });
|
|
1164
|
+
|
|
1017
1165
|
class InputComponent {
|
|
1018
1166
|
constructor(authService) {
|
|
1019
1167
|
this.authService = authService;
|
|
@@ -1028,6 +1176,11 @@ class InputComponent {
|
|
|
1028
1176
|
this.required = false;
|
|
1029
1177
|
this.pattern = null;
|
|
1030
1178
|
this.autofocus = false;
|
|
1179
|
+
this.useCpfMask = false;
|
|
1180
|
+
this.useCnpjMask = false;
|
|
1181
|
+
this.useCepMask = false;
|
|
1182
|
+
this.onlyNumbers = false;
|
|
1183
|
+
this.validateInput = false;
|
|
1031
1184
|
this.labelFontWeight = 400;
|
|
1032
1185
|
this.inputEvent = new EventEmitter();
|
|
1033
1186
|
this.changeEvent = new EventEmitter();
|
|
@@ -1039,17 +1192,116 @@ class InputComponent {
|
|
|
1039
1192
|
this.onChangeCallback = () => { };
|
|
1040
1193
|
this.onTouchedCallback = () => { };
|
|
1041
1194
|
this.value = '';
|
|
1195
|
+
this.showErrorModal = false;
|
|
1196
|
+
this.errorMessage = '';
|
|
1042
1197
|
this.subscriptions = [];
|
|
1043
1198
|
}
|
|
1199
|
+
getInputType() {
|
|
1200
|
+
return this.onlyNumbers ? 'tel' : this.type;
|
|
1201
|
+
}
|
|
1044
1202
|
onInput(event) {
|
|
1045
1203
|
const inputElement = event.target;
|
|
1046
|
-
|
|
1204
|
+
let inputValue = inputElement.value;
|
|
1205
|
+
if ((this.onlyNumbers) && !(this.useCpfMask || this.useCnpjMask || this.useCepMask)) {
|
|
1206
|
+
inputValue = inputValue.replace(/\D/g, '');
|
|
1207
|
+
}
|
|
1208
|
+
this.value = inputValue;
|
|
1047
1209
|
this.onChangeCallback(this.value);
|
|
1048
1210
|
this.inputEvent.emit(event);
|
|
1211
|
+
// Validar imediatamente após o último caractere numérico para CPF, CNPJ ou CEP
|
|
1212
|
+
const numericValue = this.value.replace(/\D/g, ''); // Remove todos os caracteres não numéricos
|
|
1213
|
+
if (this.validateInput) {
|
|
1214
|
+
if (this.useCpfMask && numericValue.length === 11 && !this.validateCpf(numericValue)) {
|
|
1215
|
+
this.clearAndShowValidationError('CPF inválido. Por favor, insira um CPF correto.');
|
|
1216
|
+
}
|
|
1217
|
+
else if (this.useCnpjMask && numericValue.length === 14 && !this.validateCnpj(numericValue)) {
|
|
1218
|
+
this.clearAndShowValidationError('CNPJ inválido. Por favor, insira um CNPJ correto.');
|
|
1219
|
+
}
|
|
1220
|
+
else if (this.useCepMask && numericValue.length === 8 && !this.validateCep(numericValue)) {
|
|
1221
|
+
this.clearAndShowValidationError('CEP inválido. Por favor, insira um CEP correto.');
|
|
1222
|
+
}
|
|
1223
|
+
}
|
|
1224
|
+
}
|
|
1225
|
+
onKeyDown(event) {
|
|
1226
|
+
if (this.onlyNumbers && !/^\d$/.test(event.key) && event.key !== 'Backspace' && event.key !== 'ArrowLeft' && event.key !== 'ArrowRight') {
|
|
1227
|
+
event.preventDefault();
|
|
1228
|
+
}
|
|
1049
1229
|
}
|
|
1050
1230
|
onChange(event) {
|
|
1231
|
+
const numericValue = this.value.replace(/\D/g, ''); // Remove todos os caracteres não numéricos
|
|
1232
|
+
// Validação também ocorre no blur para casos onde o input não está completo
|
|
1233
|
+
if (this.validateInput) {
|
|
1234
|
+
if (this.useCpfMask && !this.validateCpf(numericValue)) {
|
|
1235
|
+
this.clearAndShowValidationError('CPF inválido. Por favor, insira um CPF correto.');
|
|
1236
|
+
}
|
|
1237
|
+
else if (this.useCnpjMask && !this.validateCnpj(numericValue)) {
|
|
1238
|
+
this.clearAndShowValidationError('CNPJ inválido. Por favor, insira um CNPJ correto.');
|
|
1239
|
+
}
|
|
1240
|
+
else if (this.useCepMask && !this.validateCep(numericValue)) {
|
|
1241
|
+
this.clearAndShowValidationError('CEP inválido. Por favor, insira um CEP correto.');
|
|
1242
|
+
}
|
|
1243
|
+
}
|
|
1051
1244
|
this.changeEvent.emit(event);
|
|
1052
1245
|
}
|
|
1246
|
+
validateCpf(cpf) {
|
|
1247
|
+
if (cpf.length !== 11 || /^(\d)\1+$/.test(cpf))
|
|
1248
|
+
return false;
|
|
1249
|
+
let sum = 0, remainder;
|
|
1250
|
+
for (let i = 1; i <= 9; i++)
|
|
1251
|
+
sum += parseInt(cpf.substring(i - 1, i)) * (11 - i);
|
|
1252
|
+
remainder = (sum * 10) % 11;
|
|
1253
|
+
if (remainder === 10 || remainder === 11)
|
|
1254
|
+
remainder = 0;
|
|
1255
|
+
if (remainder !== parseInt(cpf.substring(9, 10)))
|
|
1256
|
+
return false;
|
|
1257
|
+
sum = 0;
|
|
1258
|
+
for (let i = 1; i <= 10; i++)
|
|
1259
|
+
sum += parseInt(cpf.substring(i - 1, i)) * (12 - i);
|
|
1260
|
+
remainder = (sum * 10) % 11;
|
|
1261
|
+
if (remainder === 10 || remainder === 11)
|
|
1262
|
+
remainder = 0;
|
|
1263
|
+
return remainder === parseInt(cpf.substring(10, 11));
|
|
1264
|
+
}
|
|
1265
|
+
validateCnpj(cnpj) {
|
|
1266
|
+
if (cnpj.length !== 14)
|
|
1267
|
+
return false;
|
|
1268
|
+
let length = cnpj.length - 2;
|
|
1269
|
+
let numbers = cnpj.substring(0, length);
|
|
1270
|
+
let digits = cnpj.substring(length);
|
|
1271
|
+
let sum = 0, pos = length - 7;
|
|
1272
|
+
for (let i = length; i >= 1; i--) {
|
|
1273
|
+
sum += parseInt(numbers.charAt(length - i)) * pos--;
|
|
1274
|
+
if (pos < 2)
|
|
1275
|
+
pos = 9;
|
|
1276
|
+
}
|
|
1277
|
+
let result = sum % 11 < 2 ? 0 : 11 - sum % 11;
|
|
1278
|
+
if (result !== parseInt(digits.charAt(0)))
|
|
1279
|
+
return false;
|
|
1280
|
+
length = length + 1;
|
|
1281
|
+
numbers = cnpj.substring(0, length);
|
|
1282
|
+
sum = 0;
|
|
1283
|
+
pos = length - 7;
|
|
1284
|
+
for (let i = length; i >= 1; i--) {
|
|
1285
|
+
sum += parseInt(numbers.charAt(length - i)) * pos--;
|
|
1286
|
+
if (pos < 2)
|
|
1287
|
+
pos = 9;
|
|
1288
|
+
}
|
|
1289
|
+
result = sum % 11 < 2 ? 0 : 11 - sum % 11;
|
|
1290
|
+
return result === parseInt(digits.charAt(1));
|
|
1291
|
+
}
|
|
1292
|
+
validateCep(cep) {
|
|
1293
|
+
return /^\d{8}$/.test(cep); // Valida apenas números, sem considerar a máscara
|
|
1294
|
+
}
|
|
1295
|
+
clearAndShowValidationError(message) {
|
|
1296
|
+
this.value = ''; // Limpa o valor do ngModel
|
|
1297
|
+
this.onChangeCallback(this.value); // Atualiza o ngModel com o valor limpo
|
|
1298
|
+
this.errorMessage = message;
|
|
1299
|
+
this.showErrorModal = true;
|
|
1300
|
+
}
|
|
1301
|
+
closeModal() {
|
|
1302
|
+
this.showErrorModal = false;
|
|
1303
|
+
this.errorMessage = '';
|
|
1304
|
+
}
|
|
1053
1305
|
onFocus(event) {
|
|
1054
1306
|
this.focusEvent.emit(event);
|
|
1055
1307
|
}
|
|
@@ -1090,69 +1342,23 @@ class InputComponent {
|
|
|
1090
1342
|
this.subscriptions.forEach(sub => sub.unsubscribe());
|
|
1091
1343
|
}
|
|
1092
1344
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputComponent, deps: [{ token: AuthService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1093
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: InputComponent, selector: "argenta-custom-input", inputs: { label: "label", placeholder: "placeholder", id: "id", type: "type", disabled: "disabled", readonly: "readonly", maxlength: "maxlength", minlength: "minlength", required: "required", pattern: "pattern", autofocus: "autofocus", labelFontWeight: "labelFontWeight", permissions: "permissions" }, outputs: { inputEvent: "inputEvent", changeEvent: "changeEvent", focusEvent: "focusEvent", blurEvent: "blurEvent", keyupEvent: "keyupEvent", keydownEvent: "keydownEvent", keypressEvent: "keypressEvent" }, providers: [
|
|
1345
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: InputComponent, selector: "argenta-custom-input", inputs: { label: "label", placeholder: "placeholder", id: "id", type: "type", disabled: "disabled", readonly: "readonly", maxlength: "maxlength", minlength: "minlength", required: "required", pattern: "pattern", autofocus: "autofocus", useCpfMask: "useCpfMask", useCnpjMask: "useCnpjMask", useCepMask: "useCepMask", onlyNumbers: "onlyNumbers", validateInput: "validateInput", labelFontWeight: "labelFontWeight", permissions: "permissions" }, outputs: { inputEvent: "inputEvent", changeEvent: "changeEvent", focusEvent: "focusEvent", blurEvent: "blurEvent", keyupEvent: "keyupEvent", keydownEvent: "keydownEvent", keypressEvent: "keypressEvent" }, providers: [
|
|
1094
1346
|
{
|
|
1095
1347
|
provide: NG_VALUE_ACCESSOR,
|
|
1096
1348
|
useExisting: forwardRef(() => InputComponent),
|
|
1097
1349
|
multi: true
|
|
1098
1350
|
}
|
|
1099
|
-
], ngImport: i0, template:
|
|
1100
|
-
<div *ngIf="hasPermission()" class="form-group">
|
|
1101
|
-
<label [for]="id" [ngClass]="'label-styles'">{{ label }}</label>
|
|
1102
|
-
<input [type]="type"
|
|
1103
|
-
class="form-control custom-input"
|
|
1104
|
-
[id]="id"
|
|
1105
|
-
[placeholder]="placeholder"
|
|
1106
|
-
[(ngModel)]="value"
|
|
1107
|
-
(input)="onInput($event)"
|
|
1108
|
-
(change)="onChange($event)"
|
|
1109
|
-
(focus)="onFocus($event)"
|
|
1110
|
-
(blur)="onBlur($event)"
|
|
1111
|
-
(keyup)="keyupEvent.emit($event)"
|
|
1112
|
-
(keydown)="keydownEvent.emit($event)"
|
|
1113
|
-
(keypress)="keypressEvent.emit($event)"
|
|
1114
|
-
[disabled]="disabled"
|
|
1115
|
-
[readonly]="readonly"
|
|
1116
|
-
[attr.maxlength]="maxlength"
|
|
1117
|
-
[attr.minlength]="minlength"
|
|
1118
|
-
[required]="required"
|
|
1119
|
-
[attr.pattern]="pattern"
|
|
1120
|
-
[autofocus]="autofocus">
|
|
1121
|
-
</div>
|
|
1122
|
-
`, isInline: true, styles: ["@import\"https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap\";body{font-family:Inter,sans-serif}.form-group{font-family:Inter,Arial,sans-serif;font-size:1rem;font-weight:700}.form-check-input{font-family:Inter,Arial,sans-serif;color:#333;font-size:.9rem}.form-check-label{width:623px;height:19px;top:1608px;left:133px;gap:0px;opacity:0px;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:19.36px;text-align:left}.custom-input{font-family:Inter,Arial,sans-serif;color:#333;font-size:.9rem;height:46px}.custom-input::placeholder{font-size:14px;color:#d3d3d3}.form-label{font-family:Inter,Arial,sans-serif;color:#333;font-size:1rem;font-weight:700}.label-styles{font-weight:400;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:19.36px;text-align:left;margin-top:1rem;margin-bottom:.5rem}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1351
|
+
], ngImport: i0, template: "<div *ngIf=\"hasPermission()\" class=\"form-group\">\n <label [for]=\"id\" [ngClass]=\"'label-styles'\">{{ label }}</label>\n <input [type]=\"getInputType()\"\n class=\"form-control custom-input\"\n [id]=\"id\"\n [placeholder]=\"placeholder\"\n [(ngModel)]=\"value\"\n (input)=\"onInput($event)\"\n (change)=\"onChange($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n (keyup)=\"keyupEvent.emit($event)\"\n (keydown)=\"onKeyDown($event)\"\n (keypress)=\"keypressEvent.emit($event)\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [required]=\"required\"\n [attr.pattern]=\"pattern\"\n [autofocus]=\"autofocus\"\n [cpfMask]=\"useCpfMask\" \n [cnpjMask]=\"useCnpjMask\" \n [cepMask]=\"useCepMask\">\n\n <!-- Modal para exibir mensagens de erro -->\n <div class=\"modal-overlay\" *ngIf=\"showErrorModal\">\n <div class=\"modal-content\">\n <span class=\"close\" (click)=\"closeModal()\">×</span>\n <p>{{ errorMessage }}</p>\n <button class=\"btn-ok\" (click)=\"closeModal()\">OK</button>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap\";body{font-family:Inter,sans-serif}.form-group{font-family:Inter,Arial,sans-serif;font-size:1rem;font-weight:700}.form-check-input{font-family:Inter,Arial,sans-serif;color:#333;font-size:.9rem}.form-check-label{width:623px;height:19px;top:1608px;left:133px;gap:0px;opacity:0px;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:19.36px;text-align:left}.custom-input{font-family:Inter,Arial,sans-serif;color:#333;font-size:.9rem;height:46px}.custom-input::placeholder{font-size:14px;color:#d3d3d3}.form-label{font-family:Inter,Arial,sans-serif;color:#333;font-size:1rem;font-weight:700}.label-styles{font-weight:400;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:19.36px;text-align:left;margin-top:1rem;margin-bottom:.5rem}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;padding:25px 30px;border-radius:8px;width:360px;text-align:center;position:relative;box-shadow:0 4px 12px #0003}.close{position:absolute;top:10px;right:15px;cursor:pointer;font-size:20px;color:#555;transition:color .3s}.close:hover{color:#f44336}.btn-ok{margin-top:20px;padding:8px 20px;border:none;background-color:#00444c;color:#fff;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .3s,transform .2s}.btn-ok:hover{background-color:#00363d;transform:scale(1.05)}.btn-ok:active{transform:scale(.98)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: CepMaskDirective, selector: "[cepMask]", inputs: ["cepMask"] }, { kind: "directive", type: CnpjMaskDirective, selector: "[cnpjMask]", inputs: ["cnpjMask"] }, { kind: "directive", type: CpfMaskDirective, selector: "[cpfMask]", inputs: ["cpfMask"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
1123
1352
|
}
|
|
1124
1353
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: InputComponent, decorators: [{
|
|
1125
1354
|
type: Component,
|
|
1126
|
-
args: [{ selector: 'argenta-custom-input',
|
|
1127
|
-
<div *ngIf="hasPermission()" class="form-group">
|
|
1128
|
-
<label [for]="id" [ngClass]="'label-styles'">{{ label }}</label>
|
|
1129
|
-
<input [type]="type"
|
|
1130
|
-
class="form-control custom-input"
|
|
1131
|
-
[id]="id"
|
|
1132
|
-
[placeholder]="placeholder"
|
|
1133
|
-
[(ngModel)]="value"
|
|
1134
|
-
(input)="onInput($event)"
|
|
1135
|
-
(change)="onChange($event)"
|
|
1136
|
-
(focus)="onFocus($event)"
|
|
1137
|
-
(blur)="onBlur($event)"
|
|
1138
|
-
(keyup)="keyupEvent.emit($event)"
|
|
1139
|
-
(keydown)="keydownEvent.emit($event)"
|
|
1140
|
-
(keypress)="keypressEvent.emit($event)"
|
|
1141
|
-
[disabled]="disabled"
|
|
1142
|
-
[readonly]="readonly"
|
|
1143
|
-
[attr.maxlength]="maxlength"
|
|
1144
|
-
[attr.minlength]="minlength"
|
|
1145
|
-
[required]="required"
|
|
1146
|
-
[attr.pattern]="pattern"
|
|
1147
|
-
[autofocus]="autofocus">
|
|
1148
|
-
</div>
|
|
1149
|
-
`, providers: [
|
|
1355
|
+
args: [{ selector: 'argenta-custom-input', providers: [
|
|
1150
1356
|
{
|
|
1151
1357
|
provide: NG_VALUE_ACCESSOR,
|
|
1152
1358
|
useExisting: forwardRef(() => InputComponent),
|
|
1153
1359
|
multi: true
|
|
1154
1360
|
}
|
|
1155
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, styles: ["@import\"https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap\";body{font-family:Inter,sans-serif}.form-group{font-family:Inter,Arial,sans-serif;font-size:1rem;font-weight:700}.form-check-input{font-family:Inter,Arial,sans-serif;color:#333;font-size:.9rem}.form-check-label{width:623px;height:19px;top:1608px;left:133px;gap:0px;opacity:0px;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:19.36px;text-align:left}.custom-input{font-family:Inter,Arial,sans-serif;color:#333;font-size:.9rem;height:46px}.custom-input::placeholder{font-size:14px;color:#d3d3d3}.form-label{font-family:Inter,Arial,sans-serif;color:#333;font-size:1rem;font-weight:700}.label-styles{font-weight:400;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:19.36px;text-align:left;margin-top:1rem;margin-bottom:.5rem}\n"] }]
|
|
1361
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"hasPermission()\" class=\"form-group\">\n <label [for]=\"id\" [ngClass]=\"'label-styles'\">{{ label }}</label>\n <input [type]=\"getInputType()\"\n class=\"form-control custom-input\"\n [id]=\"id\"\n [placeholder]=\"placeholder\"\n [(ngModel)]=\"value\"\n (input)=\"onInput($event)\"\n (change)=\"onChange($event)\"\n (focus)=\"onFocus($event)\"\n (blur)=\"onBlur($event)\"\n (keyup)=\"keyupEvent.emit($event)\"\n (keydown)=\"onKeyDown($event)\"\n (keypress)=\"keypressEvent.emit($event)\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [attr.maxlength]=\"maxlength\"\n [attr.minlength]=\"minlength\"\n [required]=\"required\"\n [attr.pattern]=\"pattern\"\n [autofocus]=\"autofocus\"\n [cpfMask]=\"useCpfMask\" \n [cnpjMask]=\"useCnpjMask\" \n [cepMask]=\"useCepMask\">\n\n <!-- Modal para exibir mensagens de erro -->\n <div class=\"modal-overlay\" *ngIf=\"showErrorModal\">\n <div class=\"modal-content\">\n <span class=\"close\" (click)=\"closeModal()\">×</span>\n <p>{{ errorMessage }}</p>\n <button class=\"btn-ok\" (click)=\"closeModal()\">OK</button>\n </div>\n </div>\n</div>\n", styles: ["@charset \"UTF-8\";@import\"https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap\";body{font-family:Inter,sans-serif}.form-group{font-family:Inter,Arial,sans-serif;font-size:1rem;font-weight:700}.form-check-input{font-family:Inter,Arial,sans-serif;color:#333;font-size:.9rem}.form-check-label{width:623px;height:19px;top:1608px;left:133px;gap:0px;opacity:0px;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:19.36px;text-align:left}.custom-input{font-family:Inter,Arial,sans-serif;color:#333;font-size:.9rem;height:46px}.custom-input::placeholder{font-size:14px;color:#d3d3d3}.form-label{font-family:Inter,Arial,sans-serif;color:#333;font-size:1rem;font-weight:700}.label-styles{font-weight:400;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:19.36px;text-align:left;margin-top:1rem;margin-bottom:.5rem}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;padding:25px 30px;border-radius:8px;width:360px;text-align:center;position:relative;box-shadow:0 4px 12px #0003}.close{position:absolute;top:10px;right:15px;cursor:pointer;font-size:20px;color:#555;transition:color .3s}.close:hover{color:#f44336}.btn-ok{margin-top:20px;padding:8px 20px;border:none;background-color:#00444c;color:#fff;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .3s,transform .2s}.btn-ok:hover{background-color:#00363d;transform:scale(1.05)}.btn-ok:active{transform:scale(.98)}\n"] }]
|
|
1156
1362
|
}], ctorParameters: function () { return [{ type: AuthService }]; }, propDecorators: { label: [{
|
|
1157
1363
|
type: Input
|
|
1158
1364
|
}], placeholder: [{
|
|
@@ -1175,6 +1381,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1175
1381
|
type: Input
|
|
1176
1382
|
}], autofocus: [{
|
|
1177
1383
|
type: Input
|
|
1384
|
+
}], useCpfMask: [{
|
|
1385
|
+
type: Input
|
|
1386
|
+
}], useCnpjMask: [{
|
|
1387
|
+
type: Input
|
|
1388
|
+
}], useCepMask: [{
|
|
1389
|
+
type: Input
|
|
1390
|
+
}], onlyNumbers: [{
|
|
1391
|
+
type: Input
|
|
1392
|
+
}], validateInput: [{
|
|
1393
|
+
type: Input
|
|
1178
1394
|
}], labelFontWeight: [{
|
|
1179
1395
|
type: Input
|
|
1180
1396
|
}], permissions: [{
|
|
@@ -2310,6 +2526,9 @@ class ComponentsModule {
|
|
|
2310
2526
|
AlertComponent,
|
|
2311
2527
|
ConfirmationComponent,
|
|
2312
2528
|
AutofocusDirective,
|
|
2529
|
+
CepMaskDirective,
|
|
2530
|
+
CnpjMaskDirective,
|
|
2531
|
+
CpfMaskDirective,
|
|
2313
2532
|
CustomPaginationComponent,
|
|
2314
2533
|
TreeNodeComponent,
|
|
2315
2534
|
SearchInputComponent,
|
|
@@ -2337,6 +2556,10 @@ class ComponentsModule {
|
|
|
2337
2556
|
BadgeComponent,
|
|
2338
2557
|
AlertComponent,
|
|
2339
2558
|
ConfirmationComponent,
|
|
2559
|
+
AutofocusDirective,
|
|
2560
|
+
CepMaskDirective,
|
|
2561
|
+
CnpjMaskDirective,
|
|
2562
|
+
CpfMaskDirective,
|
|
2340
2563
|
CustomPaginationComponent,
|
|
2341
2564
|
TreeNodeComponent,
|
|
2342
2565
|
SearchInputComponent,
|
|
@@ -2373,6 +2596,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
2373
2596
|
AlertComponent,
|
|
2374
2597
|
ConfirmationComponent,
|
|
2375
2598
|
AutofocusDirective,
|
|
2599
|
+
CepMaskDirective,
|
|
2600
|
+
CnpjMaskDirective,
|
|
2601
|
+
CpfMaskDirective,
|
|
2376
2602
|
CustomPaginationComponent,
|
|
2377
2603
|
TreeNodeComponent,
|
|
2378
2604
|
SearchInputComponent,
|
|
@@ -2406,6 +2632,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
2406
2632
|
BadgeComponent,
|
|
2407
2633
|
AlertComponent,
|
|
2408
2634
|
ConfirmationComponent,
|
|
2635
|
+
AutofocusDirective,
|
|
2636
|
+
CepMaskDirective,
|
|
2637
|
+
CnpjMaskDirective,
|
|
2638
|
+
CpfMaskDirective,
|
|
2409
2639
|
CustomPaginationComponent,
|
|
2410
2640
|
TreeNodeComponent,
|
|
2411
2641
|
SearchInputComponent,
|
|
@@ -2576,5 +2806,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
2576
2806
|
* Generated bundle index. Do not edit.
|
|
2577
2807
|
*/
|
|
2578
2808
|
|
|
2579
|
-
export { AlertComponent, AppBackgroundComponent, BadgeComponent, BasicRegistrationComponent, ButtonClasses, ButtonComponent, CardComponent, CheckboxComponent, CodeHighlightComponent, ComponentsModule, ConfirmationComponent, ConfirmationService, CustomPaginationComponent, CustomSwitchComponent, DataPaginateService, DataTableComponent, InputComponent, LibPortalAngularModule, LucideIconsModule, MultiSelectComponent, NotificationService, RadioComponent, RefreshService, RouterParameterService, SearchCustomerComponent, SearchInputComponent, SelectComponent, TabComponent, TextareaComponent, TreeNodeComponent };
|
|
2809
|
+
export { AlertComponent, AppBackgroundComponent, AutofocusDirective, BadgeComponent, BasicRegistrationComponent, ButtonClasses, ButtonComponent, CardComponent, CepMaskDirective, CheckboxComponent, CnpjMaskDirective, CodeHighlightComponent, ComponentsModule, ConfirmationComponent, ConfirmationService, CpfMaskDirective, CustomPaginationComponent, CustomSwitchComponent, DataPaginateService, DataTableComponent, InputComponent, LibPortalAngularModule, LucideIconsModule, MultiSelectComponent, NotificationService, RadioComponent, RefreshService, RouterParameterService, SearchCustomerComponent, SearchInputComponent, SelectComponent, TabComponent, TextareaComponent, TreeNodeComponent };
|
|
2580
2810
|
//# sourceMappingURL=lib-portal-angular.mjs.map
|