@koalarx/ui
Version:
Koala UI is a modern and accessible component library designed to speed up interface development in Angular projects. With simple integration and clear documentation, you can easily build robust and visually appealing applications.
38 lines (33 loc) • 2.52 kB
JavaScript
import { validateCnpj } from '@koalarx/utils/KlString';
import * as i0 from '@angular/core';
import { inject, effect, ChangeDetectionStrategy, Component } from '@angular/core';
import { AppConfig } from '@koalarx/ui/core/config';
import { InputFieldBase } from '@koalarx/ui/shared/components/input-field';
import { InputText } from '@koalarx/ui/shared/components/input-field/input-text';
function CNPJValidator(control) {
if (control.value && !validateCnpj(control.value)) {
return { cnpjInvalid: true };
}
return null;
}
class InputCnpj extends InputFieldBase {
translations = inject(AppConfig).translation.form;
constructor() {
super();
effect(() => {
const control = this.control();
control.addValidators(CNPJValidator);
});
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: InputCnpj, deps: [], target: i0.ɵɵFactoryTarget.Component });
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.6", type: InputCnpj, isStandalone: true, selector: "kl-input-cnpj", usesInheritance: true, ngImport: i0, template: "<kl-input-text\n [control]=\"control()\"\n [label]=\"label()\"\n [placeholder]=\"placeholder()\"\n [hint]=\"hint()\"\n mask=\"AA.AAA.AAA/AAAA-AA\">\n\n <ng-container errors>\n @if (control().errors?.['cnpjInvalid']) {\n <div class=\"error-message\">{{ translations.invalidCNPJ }}</div>\n }\n </ng-container>\n</kl-input-text>\n", dependencies: [{ kind: "component", type: InputText, selector: "kl-input-text", inputs: ["mask"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: InputCnpj, decorators: [{
type: Component,
args: [{ selector: 'kl-input-cnpj', changeDetection: ChangeDetectionStrategy.OnPush, imports: [InputText], template: "<kl-input-text\n [control]=\"control()\"\n [label]=\"label()\"\n [placeholder]=\"placeholder()\"\n [hint]=\"hint()\"\n mask=\"AA.AAA.AAA/AAAA-AA\">\n\n <ng-container errors>\n @if (control().errors?.['cnpjInvalid']) {\n <div class=\"error-message\">{{ translations.invalidCNPJ }}</div>\n }\n </ng-container>\n</kl-input-text>\n" }]
}], ctorParameters: () => [] });
/**
* Generated bundle index. Do not edit.
*/
export { CNPJValidator, InputCnpj };
//# sourceMappingURL=koalarx-ui-shared-components-input-field-input-cnpj.mjs.map