@acorex/components 7.17.22 → 7.17.23
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/check-box/lib/check-box.component.d.ts +3 -3
- package/common/lib/classes/components.class.d.ts +11 -0
- package/common/lib/components/value-component.class.d.ts +10 -4
- package/esm2022/calendar/lib/calendar-range.component.mjs +1 -2
- package/esm2022/calendar/lib/calendar.component.mjs +10 -2
- package/esm2022/check-box/lib/check-box.component.mjs +9 -4
- package/esm2022/color-palette/lib/color-palette.component.mjs +4 -2
- package/esm2022/common/lib/classes/components.class.mjs +1 -1
- package/esm2022/common/lib/components/value-component.class.mjs +38 -65
- package/esm2022/data-pager/lib/data-pager.component.mjs +1 -2
- package/esm2022/form/index.mjs +2 -3
- package/esm2022/form/lib/form-field.component.mjs +34 -6
- package/esm2022/form/lib/form.component.mjs +44 -86
- package/esm2022/form/lib/form.config.mjs +3 -23
- package/esm2022/form/lib/form.module.mjs +9 -8
- package/esm2022/form/lib/validation-rule.directive.mjs +33 -0
- package/esm2022/form/lib/validation-summary.component.mjs +19 -13
- package/esm2022/label/lib/label.component.mjs +21 -10
- package/esm2022/number-box/lib/number-box.component.mjs +8 -3
- package/esm2022/otp/lib/otp.component.mjs +1 -1
- package/esm2022/password-box/lib/password-box.component.mjs +4 -2
- package/esm2022/radio/lib/radio.component.mjs +2 -2
- package/esm2022/select-box/lib/select-box.component.mjs +1 -2
- package/esm2022/selection-list/lib/selection-list.component.mjs +8 -8
- package/fesm2022/acorex-components-calendar.mjs +9 -2
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-check-box.mjs +8 -3
- package/fesm2022/acorex-components-check-box.mjs.map +1 -1
- package/fesm2022/acorex-components-color-palette.mjs +3 -1
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-common.mjs +36 -63
- package/fesm2022/acorex-components-common.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +0 -1
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs +135 -250
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-label.mjs +19 -8
- package/fesm2022/acorex-components-label.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box.mjs +7 -2
- package/fesm2022/acorex-components-number-box.mjs.map +1 -1
- package/fesm2022/acorex-components-otp.mjs.map +1 -1
- package/fesm2022/acorex-components-password-box.mjs +3 -1
- package/fesm2022/acorex-components-password-box.mjs.map +1 -1
- package/fesm2022/acorex-components-radio.mjs +1 -1
- package/fesm2022/acorex-components-radio.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +0 -1
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list.mjs +6 -6
- package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
- package/form/index.d.ts +1 -2
- package/form/lib/form-field.component.d.ts +8 -2
- package/form/lib/form.component.d.ts +9 -13
- package/form/lib/form.config.d.ts +0 -10
- package/form/lib/form.module.d.ts +3 -2
- package/form/lib/validation-rule.directive.d.ts +16 -0
- package/form/lib/validation-summary.component.d.ts +8 -5
- package/label/lib/label.component.d.ts +6 -6
- package/package.json +7 -7
- package/selection-list/lib/selection-list.component.d.ts +2 -2
- package/esm2022/form/lib/validation-rule.widget.mjs +0 -124
- package/esm2022/form/lib/validation.class.mjs +0 -2
- package/form/lib/validation-rule.widget.d.ts +0 -23
- package/form/lib/validation.class.d.ts +0 -18
@@ -1,124 +0,0 @@
|
|
1
|
-
import { AXValuableComponent, MXBaseComponent } from '@acorex/components/common';
|
2
|
-
import { AXTranslator } from '@acorex/core/translation';
|
3
|
-
import { ChangeDetectionStrategy, Component, Inject, Input, Optional, ViewEncapsulation, inject, } from '@angular/core';
|
4
|
-
import { AX_FORM_CONFIG } from './form.config';
|
5
|
-
import * as i0 from "@angular/core";
|
6
|
-
import * as i1 from "@acorex/components/common";
|
7
|
-
export class AXValidationRuleComponent extends MXBaseComponent {
|
8
|
-
ngOnInit() {
|
9
|
-
super.ngOnInit();
|
10
|
-
this.getHostElement().validate = this.validate.bind(this);
|
11
|
-
}
|
12
|
-
/**
|
13
|
-
* @ignore
|
14
|
-
*/
|
15
|
-
constructor(control) {
|
16
|
-
super();
|
17
|
-
this.control = control;
|
18
|
-
this._config = inject(AX_FORM_CONFIG);
|
19
|
-
this.rule = 'required';
|
20
|
-
this.showMessage = true;
|
21
|
-
this.enabled = true;
|
22
|
-
}
|
23
|
-
validate(value) {
|
24
|
-
if (this.enabled === false) {
|
25
|
-
return Promise.resolve({ result: true });
|
26
|
-
}
|
27
|
-
if (this.rule == 'custom') {
|
28
|
-
const regRule = this._config.validation.rules[this.value];
|
29
|
-
if (regRule) {
|
30
|
-
return this._internalValidate(regRule.rule, value, this.message || regRule.message, regRule.value);
|
31
|
-
}
|
32
|
-
}
|
33
|
-
return this._internalValidate(this.rule, value, this.message, this.value);
|
34
|
-
}
|
35
|
-
_internalValidate(type, value, message, ruleValue) {
|
36
|
-
return new Promise((resolve) => {
|
37
|
-
switch (type) {
|
38
|
-
case 'required':
|
39
|
-
resolve({
|
40
|
-
message: this.showMessage
|
41
|
-
? message || AXTranslator.get('validation.messages.required', { name: this.control?.name })
|
42
|
-
: '',
|
43
|
-
result: !this._isNullOrEmpty(value),
|
44
|
-
});
|
45
|
-
break;
|
46
|
-
case 'regex':
|
47
|
-
const ex = new RegExp(ruleValue);
|
48
|
-
resolve({
|
49
|
-
message: this.showMessage ? message || AXTranslator.get('validation.messages.regex') : '',
|
50
|
-
result: ex.test(value),
|
51
|
-
});
|
52
|
-
break;
|
53
|
-
case 'callback':
|
54
|
-
if (typeof ruleValue === 'function') {
|
55
|
-
const res = {};
|
56
|
-
res.message = this.showMessage ? message : null;
|
57
|
-
const val = ruleValue({ value, message });
|
58
|
-
if (val instanceof Promise) {
|
59
|
-
val
|
60
|
-
.then((c) => {
|
61
|
-
res.result = c;
|
62
|
-
})
|
63
|
-
.catch((c) => {
|
64
|
-
res.result = false;
|
65
|
-
})
|
66
|
-
.finally(() => {
|
67
|
-
resolve(res);
|
68
|
-
});
|
69
|
-
}
|
70
|
-
else {
|
71
|
-
res.result = val;
|
72
|
-
resolve(res);
|
73
|
-
}
|
74
|
-
}
|
75
|
-
else {
|
76
|
-
resolve({
|
77
|
-
message: AXTranslator.get('validation.messages.invalid-rull-fn'),
|
78
|
-
result: false,
|
79
|
-
});
|
80
|
-
}
|
81
|
-
break;
|
82
|
-
default:
|
83
|
-
resolve({
|
84
|
-
message: AXTranslator.get('validation.messages.invalid-rull-name'),
|
85
|
-
result: false,
|
86
|
-
});
|
87
|
-
}
|
88
|
-
});
|
89
|
-
}
|
90
|
-
_isNullOrEmpty(value) {
|
91
|
-
return (value === undefined ||
|
92
|
-
value === null ||
|
93
|
-
Number.isNaN(value) ||
|
94
|
-
(Array.isArray(value) && value.length == 0) ||
|
95
|
-
(typeof value === 'string' && value.trim().length === 0));
|
96
|
-
}
|
97
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXValidationRuleComponent, deps: [{ token: AXValuableComponent, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
98
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: AXValidationRuleComponent, selector: "ax-validation-rule", inputs: { rule: "rule", message: "message", showMessage: "showMessage", value: "value", enabled: "enabled" }, usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
99
|
-
}
|
100
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: AXValidationRuleComponent, decorators: [{
|
101
|
-
type: Component,
|
102
|
-
args: [{
|
103
|
-
selector: 'ax-validation-rule',
|
104
|
-
template: '',
|
105
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
106
|
-
encapsulation: ViewEncapsulation.None,
|
107
|
-
}]
|
108
|
-
}], ctorParameters: () => [{ type: i1.AXValuableComponent, decorators: [{
|
109
|
-
type: Optional
|
110
|
-
}, {
|
111
|
-
type: Inject,
|
112
|
-
args: [AXValuableComponent]
|
113
|
-
}] }], propDecorators: { rule: [{
|
114
|
-
type: Input
|
115
|
-
}], message: [{
|
116
|
-
type: Input
|
117
|
-
}], showMessage: [{
|
118
|
-
type: Input
|
119
|
-
}], value: [{
|
120
|
-
type: Input
|
121
|
-
}], enabled: [{
|
122
|
-
type: Input
|
123
|
-
}] } });
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi1ydWxlLndpZGdldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mb3JtL3NyYy9saWIvdmFsaWRhdGlvbi1ydWxlLndpZGdldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hELE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULE1BQU0sRUFDTixLQUFLLEVBRUwsUUFBUSxFQUNSLGlCQUFpQixFQUNqQixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUy9DLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxlQUFlO0lBa0I1RCxRQUFRO1FBQ04sS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxjQUFjLEVBQVUsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsWUFHVSxPQUE0QjtRQUVwQyxLQUFLLEVBQUUsQ0FBQztRQUZBLFlBQU8sR0FBUCxPQUFPLENBQXFCO1FBNUI5QixZQUFPLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBR3pDLFNBQUksR0FBMEIsVUFBVSxDQUFDO1FBTXpDLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBTW5CLFlBQU8sR0FBRyxJQUFJLENBQUM7SUFnQmYsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFVO1FBQ2pCLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLEVBQUU7WUFDMUIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsTUFB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bmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhUcmFuc2xhdG9yIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhfRk9STV9DT05GSUcgfSBmcm9tICcuL2Zvcm0uY29uZmlnJztcbmltcG9ydCB7IEFYVmFsaWRhdGlvblJ1bGUsIEFYVmFsaWRhdGlvblJ1bGVSZXN1bHQsIEFYVmFsaWRhdGlvblJ1bGVUeXBlcyB9IGZyb20gJy4vdmFsaWRhdGlvbi5jbGFzcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LXZhbGlkYXRpb24tcnVsZScsXG4gIHRlbXBsYXRlOiAnJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEFYVmFsaWRhdGlvblJ1bGVDb21wb25lbnQgZXh0ZW5kcyBNWEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBBWFZhbGlkYXRpb25SdWxlLCBPbkluaXQge1xuICBwcml2YXRlIF9jb25maWcgPSBpbmplY3QoQVhfRk9STV9DT05GSUcpO1xuXG4gIEBJbnB1dCgpXG4gIHJ1bGU6IEFYVmFsaWRhdGlvblJ1bGVUeXBlcyA9ICdyZXF1aXJlZCc7XG5cbiAgQElucHV0KClcbiAgbWVzc2FnZTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHNob3dNZXNzYWdlID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICB2YWx1ZTogYW55O1xuXG4gIEBJbnB1dCgpXG4gIGVuYWJsZWQgPSB0cnVlO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgKHRoaXMuZ2V0SG9zdEVsZW1lbnQoKSBhcyBhbnkpLnZhbGlkYXRlID0gdGhpcy52YWxpZGF0ZS5iaW5kKHRoaXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChBWFZhbHVhYmxlQ29tcG9uZW50KVxuICAgIHByaXZhdGUgY29udHJvbDogQVhWYWx1YWJsZUNvbXBvbmVudCxcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHZhbGlkYXRlKHZhbHVlOiBhbnkpOiBQcm9taXNlPEFYVmFsaWRhdGlvblJ1bGVSZXN1bHQ+IHtcbiAgICBpZiAodGhpcy5lbmFibGVkID09PSBmYWxzZSkge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7IHJlc3VsdDogdHJ1ZSB9KTtcbiAgICB9XG4gICAgaWYgKHRoaXMucnVsZSA9PSAnY3VzdG9tJykge1xuICAgICAgY29uc3QgcmVnUnVsZSA9IHRoaXMuX2NvbmZpZy52YWxpZGF0aW9uLnJ1bGVzW3RoaXMudmFsdWVdO1xuICAgICAgaWYgKHJlZ1J1bGUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ludGVybmFsVmFsaWRhdGUocmVnUnVsZS5ydWxlLCB2YWx1ZSwgdGhpcy5tZXNzYWdlIHx8IHJlZ1J1bGUubWVzc2FnZSwgcmVnUnVsZS52YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9pbnRlcm5hbFZhbGlkYXRlKHRoaXMucnVsZSwgdmFsdWUsIHRoaXMubWVzc2FnZSwgdGhpcy52YWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIF9pbnRlcm5hbFZhbGlkYXRlKFxuICAgIHR5cGU6IHN0cmluZyxcbiAgICB2YWx1ZT86IGFueSxcbiAgICBtZXNzYWdlPzogc3RyaW5nLFxuICAgIHJ1bGVWYWx1ZT86IGFueSxcbiAgKTogUHJvbWlzZTxBWFZhbGlkYXRpb25SdWxlUmVzdWx0PiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPEFYVmFsaWRhdGlvblJ1bGVSZXN1bHQ+KChyZXNvbHZlKSA9PiB7XG4gICAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgY2FzZSAncmVxdWlyZWQnOlxuICAgICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgICAgbWVzc2FnZTogdGhpcy5zaG93TWVzc2FnZVxuICAgICAgICAgICAgICA/IG1lc3NhZ2UgfHwgQVhUcmFuc2xhdG9yLmdldCgndmFsaWRhdGlvbi5tZXNzYWdlcy5yZXF1aXJlZCcsIHsgbmFtZTogdGhpcy5jb250cm9sPy5uYW1lIH0pXG4gICAgICAgICAgICAgIDogJycsXG4gICAgICAgICAgICByZXN1bHQ6ICF0aGlzLl9pc051bGxPckVtcHR5KHZhbHVlKSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAncmVnZXgnOlxuICAgICAgICAgIGNvbnN0IGV4ID0gbmV3IFJlZ0V4cChydWxlVmFsdWUpO1xuICAgICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgICAgbWVzc2FnZTogdGhpcy5zaG93TWVzc2FnZSA/IG1lc3NhZ2UgfHwgQVhUcmFuc2xhdG9yLmdldCgndmFsaWRhdGlvbi5tZXNzYWdlcy5yZWdleCcpIDogJycsXG4gICAgICAgICAgICByZXN1bHQ6IGV4LnRlc3QodmFsdWUpLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdjYWxsYmFjayc6XG4gICAgICAgICAgaWYgKHR5cGVvZiBydWxlVmFsdWUgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIGNvbnN0IHJlczogYW55ID0ge307XG4gICAgICAgICAgICByZXMubWVzc2FnZSA9IHRoaXMuc2hvd01lc3NhZ2UgPyBtZXNzYWdlIDogbnVsbDtcbiAgICAgICAgICAgIGNvbnN0IHZhbCA9IHJ1bGVWYWx1ZSh7IHZhbHVlLCBtZXNzYWdlIH0pO1xuICAgICAgICAgICAgaWYgKHZhbCBpbnN0YW5jZW9mIFByb21pc2UpIHtcbiAgICAgICAgICAgICAgdmFsXG4gICAgICAgICAgICAgICAgLnRoZW4oKGMpID0+IHtcbiAgICAgICAgICAgICAgICAgIHJlcy5yZXN1bHQgPSBjO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLmNhdGNoKChjKSA9PiB7XG4gICAgICAgICAgICAgICAgICByZXMucmVzdWx0ID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICByZXNvbHZlKHJlcyk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICByZXMucmVzdWx0ID0gdmFsO1xuICAgICAgICAgICAgICByZXNvbHZlKHJlcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgICAgICBtZXNzYWdlOiBBWFRyYW5zbGF0b3IuZ2V0KCd2YWxpZGF0aW9uLm1lc3NhZ2VzLmludmFsaWQtcnVsbC1mbicpLFxuICAgICAgICAgICAgICByZXN1bHQ6IGZhbHNlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgICAgbWVzc2FnZTogQVhUcmFuc2xhdG9yLmdldCgndmFsaWRhdGlvbi5tZXNzYWdlcy5pbnZhbGlkLXJ1bGwtbmFtZScpLFxuICAgICAgICAgICAgcmVzdWx0OiBmYWxzZSxcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzTnVsbE9yRW1wdHkodmFsdWU6IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICB2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICB2YWx1ZSA9PT0gbnVsbCB8fFxuICAgICAgTnVtYmVyLmlzTmFOKHZhbHVlKSB8fFxuICAgICAgKEFycmF5LmlzQXJyYXkodmFsdWUpICYmIHZhbHVlLmxlbmd0aCA9PSAwKSB8fFxuICAgICAgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiYgdmFsdWUudHJpbSgpLmxlbmd0aCA9PT0gMClcbiAgICApO1xuICB9XG59XG4iXX0=
|
@@ -1,2 +0,0 @@
|
|
1
|
-
export {};
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9mb3JtL3NyYy9saWIvdmFsaWRhdGlvbi5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgQVhWYWxpZGF0aW9uUnVsZVR5cGVzID0gJ3JlcXVpcmVkJyB8ICdyZWdleCcgfCAnY2FsbGJhY2snIHwgJ2N1c3RvbSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhWYWxpZGF0aW9uUnVsZSB7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIHJ1bGU6IEFYVmFsaWRhdGlvblJ1bGVUeXBlcztcbiAgdmFsdWU/OiBhbnk7XG4gIGVuYWJsZWQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYVmFsaWRhdGlvblJ1bGVSZXN1bHQge1xuICBtZXNzYWdlPzogc3RyaW5nO1xuICBuYW1lPzogc3RyaW5nO1xuICByZXN1bHQ6IGJvb2xlYW47XG4gIHZhbHVlPzogYW55O1xuICBpZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBWEZvcm1WYWxpZGF0aW9uUmVzdWx0IHtcbiAgcmVzdWx0OiBib29sZWFuO1xuICBpdGVtcz86IEFYVmFsaWRhdGlvblJ1bGVSZXN1bHRbXTtcbn1cbiJdfQ==
|
@@ -1,23 +0,0 @@
|
|
1
|
-
import { AXValuableComponent, MXBaseComponent } from '@acorex/components/common';
|
2
|
-
import { OnInit } from '@angular/core';
|
3
|
-
import { AXValidationRule, AXValidationRuleResult, AXValidationRuleTypes } from './validation.class';
|
4
|
-
import * as i0 from "@angular/core";
|
5
|
-
export declare class AXValidationRuleComponent extends MXBaseComponent implements AXValidationRule, OnInit {
|
6
|
-
private control;
|
7
|
-
private _config;
|
8
|
-
rule: AXValidationRuleTypes;
|
9
|
-
message: string;
|
10
|
-
showMessage: boolean;
|
11
|
-
value: any;
|
12
|
-
enabled: boolean;
|
13
|
-
ngOnInit(): void;
|
14
|
-
/**
|
15
|
-
* @ignore
|
16
|
-
*/
|
17
|
-
constructor(control: AXValuableComponent);
|
18
|
-
validate(value: any): Promise<AXValidationRuleResult>;
|
19
|
-
private _internalValidate;
|
20
|
-
private _isNullOrEmpty;
|
21
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AXValidationRuleComponent, [{ optional: true; }]>;
|
22
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AXValidationRuleComponent, "ax-validation-rule", never, { "rule": { "alias": "rule"; "required": false; }; "message": { "alias": "message"; "required": false; }; "showMessage": { "alias": "showMessage"; "required": false; }; "value": { "alias": "value"; "required": false; }; "enabled": { "alias": "enabled"; "required": false; }; }, {}, never, never, false, never>;
|
23
|
-
}
|
@@ -1,18 +0,0 @@
|
|
1
|
-
export type AXValidationRuleTypes = 'required' | 'regex' | 'callback' | 'custom';
|
2
|
-
export interface AXValidationRule {
|
3
|
-
message?: string;
|
4
|
-
rule: AXValidationRuleTypes;
|
5
|
-
value?: any;
|
6
|
-
enabled?: boolean;
|
7
|
-
}
|
8
|
-
export interface AXValidationRuleResult {
|
9
|
-
message?: string;
|
10
|
-
name?: string;
|
11
|
-
result: boolean;
|
12
|
-
value?: any;
|
13
|
-
id?: string;
|
14
|
-
}
|
15
|
-
export interface AXFormValidationResult {
|
16
|
-
result: boolean;
|
17
|
-
items?: AXValidationRuleResult[];
|
18
|
-
}
|