@lagoshny/ngx-validation-messages 15.0.0 → 17.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/{esm2020 → esm2022}/lagoshny-ngx-validation-messages.mjs +4 -4
- package/esm2022/lib/components/ngx-custom-message/ngx-custom-message.component.mjs +40 -0
- package/{esm2020 → esm2022}/lib/components/ngx-validation-messages/ngx-validation-messages.component.mjs +112 -97
- package/esm2022/lib/directivies/ngx-validator-name.directive.mjs +38 -0
- package/{esm2020 → esm2022}/lib/interface/ngx-validation-messages.config.mjs +2 -2
- package/{esm2020 → esm2022}/lib/ngx-validation-messages.module.mjs +56 -56
- package/esm2022/lib/service/ngx-validation-messages.service.mjs +73 -0
- package/{esm2020 → esm2022}/public-api.mjs +4 -4
- package/{fesm2020 → fesm2022}/lagoshny-ngx-validation-messages.mjs +281 -248
- package/{fesm2020 → fesm2022}/lagoshny-ngx-validation-messages.mjs.map +1 -1
- package/index.d.ts +5 -5
- package/lib/components/ngx-custom-message/ngx-custom-message.component.d.ts +20 -20
- package/lib/components/ngx-validation-messages/ngx-validation-messages.component.d.ts +40 -40
- package/lib/directivies/ngx-validator-name.directive.d.ts +25 -25
- package/lib/interface/ngx-validation-messages.config.d.ts +17 -17
- package/lib/ngx-validation-messages.module.d.ts +18 -18
- package/lib/service/ngx-validation-messages.service.d.ts +37 -37
- package/package.json +8 -11
- package/public-api.d.ts +1 -1
- package/esm2020/lib/components/ngx-custom-message/ngx-custom-message.component.mjs +0 -32
- package/esm2020/lib/directivies/ngx-validator-name.directive.mjs +0 -29
- package/esm2020/lib/service/ngx-validation-messages.service.mjs +0 -72
- package/fesm2015/lagoshny-ngx-validation-messages.mjs +0 -280
- package/fesm2015/lagoshny-ngx-validation-messages.mjs.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
5
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFnb3Nobnktbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9uZ3gtdmFsaWRhdGlvbi1tZXNzYWdlcy9zcmMvbGFnb3Nobnktbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Component, ElementRef, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Component allows specifying custom validation message for the specified
|
|
5
|
+
* validator to override default message.
|
|
6
|
+
*
|
|
7
|
+
* Use this component as child in {@link NgxValidationMessagesComponent}.
|
|
8
|
+
*/
|
|
9
|
+
export class NgxCustomMessageComponent {
|
|
10
|
+
/**
|
|
11
|
+
* The name of the validator for which you want to override the message.
|
|
12
|
+
*/
|
|
13
|
+
validatorName;
|
|
14
|
+
/**
|
|
15
|
+
* Contains overridden message for validator.
|
|
16
|
+
*/
|
|
17
|
+
message;
|
|
18
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgxCustomMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NgxCustomMessageComponent, selector: "ngx-custom-message", inputs: { validatorName: ["forValidator", "validatorName"] }, viewQueries: [{ propertyName: "message", first: true, predicate: ["message"], descendants: true }], ngImport: i0, template: `
|
|
20
|
+
<div #message>
|
|
21
|
+
<ng-content></ng-content>
|
|
22
|
+
</div>`, isInline: true });
|
|
23
|
+
}
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgxCustomMessageComponent, decorators: [{
|
|
25
|
+
type: Component,
|
|
26
|
+
args: [{
|
|
27
|
+
selector: 'ngx-custom-message',
|
|
28
|
+
template: `
|
|
29
|
+
<div #message>
|
|
30
|
+
<ng-content></ng-content>
|
|
31
|
+
</div>`
|
|
32
|
+
}]
|
|
33
|
+
}], propDecorators: { validatorName: [{
|
|
34
|
+
type: Input,
|
|
35
|
+
args: ['forValidator']
|
|
36
|
+
}], message: [{
|
|
37
|
+
type: ViewChild,
|
|
38
|
+
args: ['message']
|
|
39
|
+
}] } });
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWN1c3RvbS1tZXNzYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12YWxpZGF0aW9uLW1lc3NhZ2VzL3NyYy9saWIvY29tcG9uZW50cy9uZ3gtY3VzdG9tLW1lc3NhZ2Uvbmd4LWN1c3RvbS1tZXNzYWdlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUV4RTs7Ozs7R0FLRztBQVFILE1BQU0sT0FBTyx5QkFBeUI7SUFFcEM7O09BRUc7SUFFSSxhQUFhLENBQVM7SUFFN0I7O09BRUc7SUFFSSxPQUFPLENBQWE7d0dBWmhCLHlCQUF5Qjs0RkFBekIseUJBQXlCLDROQUwxQjs7O1dBR0Q7OzRGQUVFLHlCQUF5QjtrQkFQckMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUU7OztXQUdEO2lCQUNWOzhCQU9RLGFBQWE7c0JBRG5CLEtBQUs7dUJBQUMsY0FBYztnQkFPZCxPQUFPO3NCQURiLFNBQVM7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIENvbXBvbmVudCBhbGxvd3Mgc3BlY2lmeWluZyBjdXN0b20gdmFsaWRhdGlvbiBtZXNzYWdlIGZvciB0aGUgc3BlY2lmaWVkXG4gKiB2YWxpZGF0b3IgdG8gb3ZlcnJpZGUgZGVmYXVsdCBtZXNzYWdlLlxuICpcbiAqIFVzZSB0aGlzIGNvbXBvbmVudCBhcyBjaGlsZCBpbiB7QGxpbmsgTmd4VmFsaWRhdGlvbk1lc3NhZ2VzQ29tcG9uZW50fS5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmd4LWN1c3RvbS1tZXNzYWdlJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2ICNtZXNzYWdlPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PmBcbn0pXG5leHBvcnQgY2xhc3MgTmd4Q3VzdG9tTWVzc2FnZUNvbXBvbmVudCB7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSB2YWxpZGF0b3IgZm9yIHdoaWNoIHlvdSB3YW50IHRvIG92ZXJyaWRlIHRoZSBtZXNzYWdlLlxuICAgKi9cbiAgQElucHV0KCdmb3JWYWxpZGF0b3InKVxuICBwdWJsaWMgdmFsaWRhdG9yTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDb250YWlucyBvdmVycmlkZGVuIG1lc3NhZ2UgZm9yIHZhbGlkYXRvci5cbiAgICovXG4gIEBWaWV3Q2hpbGQoJ21lc3NhZ2UnKVxuICBwdWJsaWMgbWVzc2FnZTogRWxlbWVudFJlZjtcblxufVxuIl19
|
|
@@ -1,97 +1,112 @@
|
|
|
1
|
-
import { Component, ContentChildren, ElementRef, Inject, Input } from '@angular/core';
|
|
2
|
-
import { NgxValidatorNameDirective } from '../../directivies/ngx-validator-name.directive';
|
|
3
|
-
import { NGX_VALIDATION_MESSAGES_CONFIG } from '../../interface/ngx-validation-messages.config';
|
|
4
|
-
import { NgxValidationMessagesService } from '../../service/ngx-validation-messages.service';
|
|
5
|
-
import { NgxCustomMessageComponent } from '../ngx-custom-message/ngx-custom-message.component';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../../service/ngx-validation-messages.service";
|
|
8
|
-
import * as i2 from "@angular/common";
|
|
9
|
-
import * as i3 from "@angular/material/form-field";
|
|
10
|
-
/**
|
|
11
|
-
* Component for displaying validation messages, supports child components of type {@link NgxCustomMessageComponent}
|
|
12
|
-
* and html elements with directive {@link NgxValidatorNameDirective} to override validation messages.
|
|
13
|
-
*/
|
|
14
|
-
export class NgxValidationMessagesComponent {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXZhbGlkYXRpb24tbWVzc2FnZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMvc3JjL2xpYi9jb21wb25lbnRzL25neC12YWxpZGF0aW9uLW1lc3NhZ2VzL25neC12YWxpZGF0aW9uLW1lc3NhZ2VzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12YWxpZGF0aW9uLW1lc3NhZ2VzL3NyYy9saWIvY29tcG9uZW50cy9uZ3gtdmFsaWRhdGlvbi1tZXNzYWdlcy9uZ3gtdmFsaWRhdGlvbi1tZXNzYWdlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDaEgsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDM0YsT0FBTyxFQUNMLDhCQUE4QixFQUUvQixNQUFNLGdEQUFnRCxDQUFDO0FBQ3hELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDOzs7OztBQUUvRjs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sOEJBQThCO0lBNkJ6QyxZQUEyRCxtQkFBZ0QsRUFDdkYsNEJBQTBELEVBQzFELG1CQUErQjtRQUZRLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBNkI7UUFDdkYsaUNBQTRCLEdBQTVCLDRCQUE0QixDQUE4QjtRQUMxRCx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQVk7UUFYNUMsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFFL0I7O1dBRUc7UUFDSyxpQkFBWSxHQUFHLE9BQU8sQ0FBQztRQUV2Qix5QkFBb0IsR0FB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R0FBRyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDO1lBQ3RELE9BQU8sR0FBRyxJQUFJLENBQUMsNEJBQTRCLENBQUMsa0NBQWtDLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1lBRXBJLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxLQUFLLFFBQVE7Z0JBQzVELENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsYUFBYSxHQUFHLE9BQU87Z0JBQ3BFLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBQyxhQUFhLEVBQUUsT0FBTyxFQUFDLENBQUM7UUFDNUUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs0SEEzRlUsOEJBQThCLGtCQTZCckIsOEJBQThCO2dIQTdCdkMsOEJBQThCLDRLQVd4Qix5QkFBeUIscURBTXpCLHlCQUF5Qiw2QkNuQzVDLDBzQ0E2QkE7NEZEWGEsOEJBQThCO2tCQUwxQyxTQUFTOytCQUNFLGtEQUFrRDs7MEJBaUMvQyxNQUFNOzJCQUFDLDhCQUE4QjtnSEF2QjNDLFdBQVc7c0JBRGpCLEtBQUs7dUJBQUMsS0FBSztnQkFPTCxrQkFBa0I7c0JBRHhCLGVBQWU7dUJBQUMseUJBQXlCO2dCQU9uQyxrQkFBa0I7c0JBRHhCLGVBQWU7dUJBQUMseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIEVsZW1lbnRSZWYsIEluamVjdCwgSW5wdXQsIFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd4VmFsaWRhdG9yTmFtZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2aWVzL25neC12YWxpZGF0b3ItbmFtZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtcbiAgTkdYX1ZBTElEQVRJT05fTUVTU0FHRVNfQ09ORklHLFxuICBOZ3hWYWxpZGF0aW9uTWVzc2FnZXNDb25maWdcbn0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlL25neC12YWxpZGF0aW9uLW1lc3NhZ2VzLmNvbmZpZyc7XG5pbXBvcnQgeyBOZ3hWYWxpZGF0aW9uTWVzc2FnZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9uZ3gtdmFsaWRhdGlvbi1tZXNzYWdlcy5zZXJ2aWNlJztcbmltcG9ydCB7IE5neEN1c3RvbU1lc3NhZ2VDb21wb25lbnQgfSBmcm9tICcuLi9uZ3gtY3VzdG9tLW1lc3NhZ2Uvbmd4LWN1c3RvbS1tZXNzYWdlLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQ29tcG9uZW50IGZvciBkaXNwbGF5aW5nIHZhbGlkYXRpb24gbWVzc2FnZXMsIHN1cHBvcnRzIGNoaWxkIGNvbXBvbmVudHMgb2YgdHlwZSB7QGxpbmsgTmd4Q3VzdG9tTWVzc2FnZUNvbXBvbmVudH1cbiAqIGFuZCBodG1sIGVsZW1lbnRzIHdpdGggZGlyZWN0aXZlIHtAbGluayBOZ3hWYWxpZGF0b3JOYW1lRGlyZWN0aXZlfSB0byBvdmVycmlkZSB2YWxpZGF0aW9uIG1lc3NhZ2VzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtdmFsaWRhdGlvbi1tZXNzYWdlcywgW25neFZhbGlkYXRpb25NZXNzYWdlc10nLFxuICB0ZW1wbGF0ZVVybDogJy4vbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9uZ3gtdmFsaWRhdGlvbi1tZXNzYWdlcy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE5neFZhbGlkYXRpb25NZXNzYWdlc0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gIC8qKlxuICAgKiBGb3JtIGNvbnRyb2wgZm9yIHdoaWNoIG5lZWQgdG8gc2hvdyB2YWxpZGF0aW9uIG1lc3NhZ2VzLlxuICAgKi9cbiAgQElucHV0KCdmb3InKVxuICBwdWJsaWMgZm9ybUNvbnRyb2w6IGFueTtcblxuICAvKipcbiAgICogQ29udGFpbnMge0BsaW5rIE5neEN1c3RvbU1lc3NhZ2VDb21wb25lbnR9IGlmIHByZXNlbnQuXG4gICAqL1xuICBAQ29udGVudENoaWxkcmVuKE5neEN1c3RvbU1lc3NhZ2VDb21wb25lbnQpXG4gIHB1YmxpYyBjdXN0b21Nc2dDb21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIENvbnRhaW5zIHtAbGluayBOZ3hWYWxpZGF0b3JOYW1lRGlyZWN0aXZlfSBpZiBwcmVzZW50LlxuICAgKi9cbiAgQENvbnRlbnRDaGlsZHJlbihOZ3hWYWxpZGF0b3JOYW1lRGlyZWN0aXZlKVxuICBwdWJsaWMgY3VzdG9tTXNnRGlyZWN0aXZlO1xuXG4gIHB1YmxpYyBpc01hdGVyaWFsRXJyb3IgPSBmYWxzZTtcblxuICAvKipcbiAgICogS2V5IHRvIGdldCBkZWZhdWx0IHZhbGlkYXRpb24gbWVzc2FnZS5cbiAgICovXG4gIHByaXZhdGUgZGVmYXVsdEVycm9yID0gJ2Vycm9yJztcblxuICBwcml2YXRlIG1hdGVyaWFsRXJyb3JFbGVtZW50ID0gJ01BVC1FUlJPUic7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChOR1hfVkFMSURBVElPTl9NRVNTQUdFU19DT05GSUcpIHB1YmxpYyBuZ3hWYWxpZGF0aW9uQ29uZmlnOiBOZ3hWYWxpZGF0aW9uTWVzc2FnZXNDb25maWcsXG4gICAgICAgICAgICAgIHByaXZhdGUgbmd4VmFsaWRhdGlvbk1lc3NhZ2VzU2VydmljZTogTmd4VmFsaWRhdGlvbk1lc3NhZ2VzU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBkaXJlY3RpdmVFbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpcmVjdGl2ZUVsZW1lbnRSZWYgJiYgdGhpcy5kaXJlY3RpdmVFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnRcbiAgICAgICYmIHRoaXMuZGlyZWN0aXZlRWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm5vZGVOYW1lKSB7XG4gICAgICB0aGlzLmlzTWF0ZXJpYWxFcnJvciA9IHRoaXMubWF0ZXJpYWxFcnJvckVsZW1lbnQudG9Mb2NhbGVVcHBlckNhc2UoKVxuICAgICAgICA9PT0gdGhpcy5kaXJlY3RpdmVFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQubm9kZU5hbWUudG9Mb2NhbGVVcHBlckNhc2UoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0IGFsbCB2YWxpZGF0aW9uIG1lc3NhZ2VzIGZvciBzcGVjaWZpZWQgZm9ybSBjb250cm9sLlxuICAgKi9cbiAgcHVibGljIGdldCBlcnJvck1lc3NhZ2VzKCk6IEFycmF5PHN0cmluZz4ge1xuICAgIGNvbnN0IHJlc3VsdDogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXG4gICAgaWYgKCF0aGlzLmZvcm1Db250cm9sIHx8ICF0aGlzLmZvcm1Db250cm9sLmVycm9ycykge1xuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG4gICAgaWYgKHRoaXMuY3VzdG9tTXNnQ29tcG9uZW50ICYmIHRoaXMuY3VzdG9tTXNnQ29tcG9uZW50Lmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMucHJvY2Vzc2luZ0N1c3RvbU1lc3NhZ2VzKHRoaXMuY3VzdG9tTXNnQ29tcG9uZW50KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuY3VzdG9tTXNnRGlyZWN0aXZlICYmIHRoaXMuY3VzdG9tTXNnRGlyZWN0aXZlLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMucHJvY2Vzc2luZ0N1c3RvbU1lc3NhZ2VzKHRoaXMuY3VzdG9tTXNnRGlyZWN0aXZlKTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzKSB7XG4gICAgICBpZiAodGhpcy5mb3JtQ29udHJvbC5lcnJvcnMuaGFzT3duUHJvcGVydHkocHJvcGVydHkpXG4gICAgICAgICYmICh0aGlzLmZvcm1Db250cm9sLnRvdWNoZWQgfHwgdGhpcy5mb3JtQ29udHJvbC5kaXJ0eSkpIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzW3Byb3BlcnR5XS5jdXN0b21NZXNzYWdlcyBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2goLi4udGhpcy5mb3JtQ29udHJvbC5lcnJvcnNbcHJvcGVydHldLmN1c3RvbU1lc3NhZ2VzKTtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5mb3JtQ29udHJvbC5lcnJvcnNbcHJvcGVydHldLmN1c3RvbU1lc3NhZ2UpIHtcbiAgICAgICAgICByZXN1bHQucHVzaCh0aGlzLmZvcm1Db250cm9sLmVycm9yc1twcm9wZXJ0eV0uY3VzdG9tTWVzc2FnZSk7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdmFsaWRhdGlvbk1lc3NhZ2U6IHN0cmluZyA9XG4gICAgICAgICAgdGhpcy5uZ3hWYWxpZGF0aW9uTWVzc2FnZXNTZXJ2aWNlLmdldFZhbGlkYXRvckVycm9yTWVzc2FnZXMocHJvcGVydHksIHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzW3Byb3BlcnR5XSk7XG4gICAgICAgIHJlc3VsdC5wdXNoKHZhbGlkYXRpb25NZXNzYWdlIHx8IHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzW3Byb3BlcnR5XS5tZXNzYWdlXG4gICAgICAgICAgfHwgdGhpcy5uZ3hWYWxpZGF0aW9uTWVzc2FnZXNTZXJ2aWNlLmdldFZhbGlkYXRvckVycm9yTWVzc2FnZXModGhpcy5kZWZhdWx0RXJyb3IpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgcHJvY2Vzc2luZ0N1c3RvbU1lc3NhZ2VzKGN1c3RvbU1lc3NhZ2U6IFF1ZXJ5TGlzdDxhbnk+KTogdm9pZCB7XG4gICAgY3VzdG9tTWVzc2FnZS5mb3JFYWNoKChtc2c6IGFueSkgPT4ge1xuICAgICAgaWYgKCF0aGlzLmZvcm1Db250cm9sLmVycm9yc1ttc2cudmFsaWRhdG9yTmFtZV0pIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgbGV0IG1lc3NhZ2UgPSAobXNnIGluc3RhbmNlb2YgTmd4Q3VzdG9tTWVzc2FnZUNvbXBvbmVudClcbiAgICAgICAgPyBtc2cubWVzc2FnZS5uYXRpdmVFbGVtZW50LmlubmVyVGV4dCA6IG1zZy5tZXNzYWdlO1xuICAgICAgbWVzc2FnZSA9IHRoaXMubmd4VmFsaWRhdGlvbk1lc3NhZ2VzU2VydmljZS5leHBhbmRQYXJhbWV0ZXJpemVkVGVtcGxhdGVNZXNzYWdlKG1lc3NhZ2UsIHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzW21zZy52YWxpZGF0b3JOYW1lXSk7XG5cbiAgICAgIHR5cGVvZiB0aGlzLmZvcm1Db250cm9sLmVycm9yc1ttc2cudmFsaWRhdG9yTmFtZV0gPT09ICdvYmplY3QnXG4gICAgICAgID8gdGhpcy5mb3JtQ29udHJvbC5lcnJvcnNbbXNnLnZhbGlkYXRvck5hbWVdLmN1c3RvbU1lc3NhZ2UgPSBtZXNzYWdlXG4gICAgICAgIDogdGhpcy5mb3JtQ29udHJvbC5lcnJvcnNbbXNnLnZhbGlkYXRvck5hbWVdID0ge2N1c3RvbU1lc3NhZ2U6IG1lc3NhZ2V9O1xuICAgIH0pO1xuICB9XG5cbn1cbiIsIjwhLS1UbyBzaG93IGVycm9yIG1lc3NhZ2VzIHN0YW5kYWxvbmUgd2l0aG91dCBjb21wb25lbnQtLT5cbjxkaXYgKm5nSWY9XCIhZm9ybUNvbnRyb2wgJiYgY3VzdG9tTXNnQ29tcG9uZW50Lmxlbmd0aCA9PSAwICYmIGN1c3RvbU1zZ0RpcmVjdGl2ZS5sZW5ndGggPT0gMFwiXG4gICAgIFtuZ0NsYXNzXT1cIm5neFZhbGlkYXRpb25Db25maWc/LnZhbGlkYXRpb25NZXNzYWdlc1N0eWxlPy5ibG9ja0NsYXNzTmFtZXMgfHwgJ25neF92bV9fZGVmX2Vycm9yX2Jsb2NrJ1wiPlxuIDxzcGFuIFtuZ0NsYXNzXT1cIm5neFZhbGlkYXRpb25Db25maWc/LnZhbGlkYXRpb25NZXNzYWdlc1N0eWxlPy50ZXh0Q2xhc3NOYW1lcyB8fCAnbmd4X3ZtX19kZWZfZXJyb3JfdGV4dCdcIj5cbiAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiA8L3NwYW4+XG48L2Rpdj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cImVycm9yTWVzc2FnZXMubGVuZ3RoID4gMFwiPlxuXG4gIDwhLS1UbyBzaG93IGVycm9yIG1lc3NhZ2VzIGluIG1hdGVyaWFsIHVpIHN0eWxlLS0+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc01hdGVyaWFsRXJyb3I7IGVsc2Ugd2l0aG91dE1hdGVyaWFsXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbWVzc2FnZSBvZiBlcnJvck1lc3NhZ2VzXCI+XG4gICAgICA8bWF0LWVycm9yPnt7IG1lc3NhZ2UgfX08L21hdC1lcnJvcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPCEtLVRvIHNob3cgZXJyb3IgbWVzc2FnZXMgaW4gdXNlciBzdHlsZS0tPlxuICA8bmctdGVtcGxhdGUgI3dpdGhvdXRNYXRlcmlhbD5cbiAgICA8ZGl2IFtuZ0NsYXNzXT1cIm5neFZhbGlkYXRpb25Db25maWc/LnZhbGlkYXRpb25NZXNzYWdlc1N0eWxlPy5ibG9ja0NsYXNzTmFtZXMgfHwgJ25neF92bV9fZGVmX2Vycm9yX2Jsb2NrJ1wiPlxuICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgbWVzc2FnZSBvZiBlcnJvck1lc3NhZ2VzXCI+XG4gICAgICAgIDxzcGFuIFtuZ0NsYXNzXT1cIm5neFZhbGlkYXRpb25Db25maWc/LnZhbGlkYXRpb25NZXNzYWdlc1N0eWxlPy50ZXh0Q2xhc3NOYW1lcyB8fCAnbmd4X3ZtX19kZWZfZXJyb3JfdGV4dCdcIj5cbiAgICAgICAgICB7eyBtZXNzYWdlIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuXG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
1
|
+
import { Component, ContentChildren, ElementRef, Inject, Input } from '@angular/core';
|
|
2
|
+
import { NgxValidatorNameDirective } from '../../directivies/ngx-validator-name.directive';
|
|
3
|
+
import { NGX_VALIDATION_MESSAGES_CONFIG } from '../../interface/ngx-validation-messages.config';
|
|
4
|
+
import { NgxValidationMessagesService } from '../../service/ngx-validation-messages.service';
|
|
5
|
+
import { NgxCustomMessageComponent } from '../ngx-custom-message/ngx-custom-message.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../service/ngx-validation-messages.service";
|
|
8
|
+
import * as i2 from "@angular/common";
|
|
9
|
+
import * as i3 from "@angular/material/form-field";
|
|
10
|
+
/**
|
|
11
|
+
* Component for displaying validation messages, supports child components of type {@link NgxCustomMessageComponent}
|
|
12
|
+
* and html elements with directive {@link NgxValidatorNameDirective} to override validation messages.
|
|
13
|
+
*/
|
|
14
|
+
export class NgxValidationMessagesComponent {
|
|
15
|
+
ngxValidationConfig;
|
|
16
|
+
ngxValidationMessagesService;
|
|
17
|
+
directiveElementRef;
|
|
18
|
+
/**
|
|
19
|
+
* Form control for which need to show validation messages.
|
|
20
|
+
*/
|
|
21
|
+
formControl;
|
|
22
|
+
/**
|
|
23
|
+
* Contains {@link NgxCustomMessageComponent} if present.
|
|
24
|
+
*/
|
|
25
|
+
customMsgComponent;
|
|
26
|
+
/**
|
|
27
|
+
* Contains {@link NgxValidatorNameDirective} if present.
|
|
28
|
+
*/
|
|
29
|
+
customMsgDirective;
|
|
30
|
+
isMaterialError = false;
|
|
31
|
+
/**
|
|
32
|
+
* Key to get default validation message.
|
|
33
|
+
*/
|
|
34
|
+
defaultError = 'error';
|
|
35
|
+
materialErrorElement = 'MAT-ERROR';
|
|
36
|
+
constructor(ngxValidationConfig, ngxValidationMessagesService, directiveElementRef) {
|
|
37
|
+
this.ngxValidationConfig = ngxValidationConfig;
|
|
38
|
+
this.ngxValidationMessagesService = ngxValidationMessagesService;
|
|
39
|
+
this.directiveElementRef = directiveElementRef;
|
|
40
|
+
}
|
|
41
|
+
ngAfterViewInit() {
|
|
42
|
+
if (this.directiveElementRef && this.directiveElementRef.nativeElement
|
|
43
|
+
&& this.directiveElementRef.nativeElement.nodeName) {
|
|
44
|
+
this.isMaterialError = this.materialErrorElement.toLocaleUpperCase()
|
|
45
|
+
=== this.directiveElementRef.nativeElement.nodeName.toLocaleUpperCase();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Get all validation messages for specified form control.
|
|
50
|
+
*/
|
|
51
|
+
get errorMessages() {
|
|
52
|
+
const result = [];
|
|
53
|
+
if (!this.formControl || !this.formControl.errors) {
|
|
54
|
+
return result;
|
|
55
|
+
}
|
|
56
|
+
if (this.customMsgComponent && this.customMsgComponent.length > 0) {
|
|
57
|
+
this.processingCustomMessages(this.customMsgComponent);
|
|
58
|
+
}
|
|
59
|
+
if (this.customMsgDirective && this.customMsgDirective.length > 0) {
|
|
60
|
+
this.processingCustomMessages(this.customMsgDirective);
|
|
61
|
+
}
|
|
62
|
+
for (const property in this.formControl.errors) {
|
|
63
|
+
if (this.formControl.errors.hasOwnProperty(property)
|
|
64
|
+
&& (this.formControl.touched || this.formControl.dirty)) {
|
|
65
|
+
if (this.formControl.errors[property].customMessages instanceof Array) {
|
|
66
|
+
result.push(...this.formControl.errors[property].customMessages);
|
|
67
|
+
continue;
|
|
68
|
+
}
|
|
69
|
+
if (this.formControl.errors[property].customMessage) {
|
|
70
|
+
result.push(this.formControl.errors[property].customMessage);
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
const validationMessage = this.ngxValidationMessagesService.getValidatorErrorMessages(property, this.formControl.errors[property]);
|
|
74
|
+
result.push(validationMessage || this.formControl.errors[property].message
|
|
75
|
+
|| this.ngxValidationMessagesService.getValidatorErrorMessages(this.defaultError));
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return result;
|
|
79
|
+
}
|
|
80
|
+
processingCustomMessages(customMessage) {
|
|
81
|
+
customMessage.forEach((msg) => {
|
|
82
|
+
if (!this.formControl.errors[msg.validatorName]) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
let message = (msg instanceof NgxCustomMessageComponent)
|
|
86
|
+
? msg.message.nativeElement.innerText : msg.message;
|
|
87
|
+
message = this.ngxValidationMessagesService.expandParameterizedTemplateMessage(message, this.formControl.errors[msg.validatorName]);
|
|
88
|
+
typeof this.formControl.errors[msg.validatorName] === 'object'
|
|
89
|
+
? this.formControl.errors[msg.validatorName].customMessage = message
|
|
90
|
+
: this.formControl.errors[msg.validatorName] = { customMessage: message };
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgxValidationMessagesComponent, deps: [{ token: NGX_VALIDATION_MESSAGES_CONFIG }, { token: i1.NgxValidationMessagesService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
94
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NgxValidationMessagesComponent, selector: "ngx-validation-messages, [ngxValidationMessages]", inputs: { formControl: ["for", "formControl"] }, queries: [{ propertyName: "customMsgComponent", predicate: NgxCustomMessageComponent }, { propertyName: "customMsgDirective", predicate: NgxValidatorNameDirective }], ngImport: i0, template: "<!--To show error messages standalone without component-->\n<div *ngIf=\"!formControl && customMsgComponent.length == 0 && customMsgDirective.length == 0\"\n [ngClass]=\"ngxValidationConfig?.validationMessagesStyle?.blockClassNames || 'ngx_vm__def_error_block'\">\n <span [ngClass]=\"ngxValidationConfig?.validationMessagesStyle?.textClassNames || 'ngx_vm__def_error_text'\">\n <ng-content></ng-content>\n </span>\n</div>\n\n<ng-container *ngIf=\"errorMessages.length > 0\">\n\n <!--To show error messages in material ui style-->\n <ng-container *ngIf=\"isMaterialError; else withoutMaterial\">\n <ng-container *ngFor=\"let message of errorMessages\">\n <mat-error>{{ message }}</mat-error>\n </ng-container>\n </ng-container>\n\n <!--To show error messages in user style-->\n <ng-template #withoutMaterial>\n <div [ngClass]=\"ngxValidationConfig?.validationMessagesStyle?.blockClassNames || 'ngx_vm__def_error_block'\">\n <div *ngFor=\"let message of errorMessages\">\n <span [ngClass]=\"ngxValidationConfig?.validationMessagesStyle?.textClassNames || 'ngx_vm__def_error_text'\">\n {{ message }}\n </span>\n </div>\n </div>\n </ng-template>\n\n</ng-container>\n", styles: [".ngx_vm__def_error_block{position:relative;display:inline-block;width:100%;margin-bottom:10px;margin-top:2px;padding:8px;border-radius:0;background:#c51244;box-shadow:1px 1px 1px #aaa;opacity:.8}.ngx_vm__def_error_text{color:#fff}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }] });
|
|
95
|
+
}
|
|
96
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgxValidationMessagesComponent, decorators: [{
|
|
97
|
+
type: Component,
|
|
98
|
+
args: [{ selector: 'ngx-validation-messages, [ngxValidationMessages]', template: "<!--To show error messages standalone without component-->\n<div *ngIf=\"!formControl && customMsgComponent.length == 0 && customMsgDirective.length == 0\"\n [ngClass]=\"ngxValidationConfig?.validationMessagesStyle?.blockClassNames || 'ngx_vm__def_error_block'\">\n <span [ngClass]=\"ngxValidationConfig?.validationMessagesStyle?.textClassNames || 'ngx_vm__def_error_text'\">\n <ng-content></ng-content>\n </span>\n</div>\n\n<ng-container *ngIf=\"errorMessages.length > 0\">\n\n <!--To show error messages in material ui style-->\n <ng-container *ngIf=\"isMaterialError; else withoutMaterial\">\n <ng-container *ngFor=\"let message of errorMessages\">\n <mat-error>{{ message }}</mat-error>\n </ng-container>\n </ng-container>\n\n <!--To show error messages in user style-->\n <ng-template #withoutMaterial>\n <div [ngClass]=\"ngxValidationConfig?.validationMessagesStyle?.blockClassNames || 'ngx_vm__def_error_block'\">\n <div *ngFor=\"let message of errorMessages\">\n <span [ngClass]=\"ngxValidationConfig?.validationMessagesStyle?.textClassNames || 'ngx_vm__def_error_text'\">\n {{ message }}\n </span>\n </div>\n </div>\n </ng-template>\n\n</ng-container>\n", styles: [".ngx_vm__def_error_block{position:relative;display:inline-block;width:100%;margin-bottom:10px;margin-top:2px;padding:8px;border-radius:0;background:#c51244;box-shadow:1px 1px 1px #aaa;opacity:.8}.ngx_vm__def_error_text{color:#fff}\n"] }]
|
|
99
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
100
|
+
type: Inject,
|
|
101
|
+
args: [NGX_VALIDATION_MESSAGES_CONFIG]
|
|
102
|
+
}] }, { type: i1.NgxValidationMessagesService }, { type: i0.ElementRef }], propDecorators: { formControl: [{
|
|
103
|
+
type: Input,
|
|
104
|
+
args: ['for']
|
|
105
|
+
}], customMsgComponent: [{
|
|
106
|
+
type: ContentChildren,
|
|
107
|
+
args: [NgxCustomMessageComponent]
|
|
108
|
+
}], customMsgDirective: [{
|
|
109
|
+
type: ContentChildren,
|
|
110
|
+
args: [NgxValidatorNameDirective]
|
|
111
|
+
}] } });
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXZhbGlkYXRpb24tbWVzc2FnZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMvc3JjL2xpYi9jb21wb25lbnRzL25neC12YWxpZGF0aW9uLW1lc3NhZ2VzL25neC12YWxpZGF0aW9uLW1lc3NhZ2VzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12YWxpZGF0aW9uLW1lc3NhZ2VzL3NyYy9saWIvY29tcG9uZW50cy9uZ3gtdmFsaWRhdGlvbi1tZXNzYWdlcy9uZ3gtdmFsaWRhdGlvbi1tZXNzYWdlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxlQUFlLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDaEgsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDM0YsT0FBTyxFQUNMLDhCQUE4QixFQUUvQixNQUFNLGdEQUFnRCxDQUFDO0FBQ3hELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDOzs7OztBQUUvRjs7O0dBR0c7QUFNSCxNQUFNLE9BQU8sOEJBQThCO0lBNkJrQjtJQUN2QztJQUNBO0lBN0JwQjs7T0FFRztJQUVJLFdBQVcsQ0FBTTtJQUV4Qjs7T0FFRztJQUVJLGtCQUFrQixDQUFDO0lBRTFCOztPQUVHO0lBRUksa0JBQWtCLENBQUM7SUFFbkIsZUFBZSxHQUFHLEtBQUssQ0FBQztJQUUvQjs7T0FFRztJQUNLLFlBQVksR0FBRyxPQUFPLENBQUM7SUFFdkIsb0JBQW9CLEdBQUcsV0FBVyxDQUFDO0lBRTNDLFlBQTJELG1CQUFnRCxFQUN2Riw0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O2dCQU9uQyxrQkFBa0I7c0JBRHhCLGVBQWU7dUJBQUMseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIEVsZW1lbnRSZWYsIEluamVjdCwgSW5wdXQsIFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmd4VmFsaWRhdG9yTmFtZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2aWVzL25neC12YWxpZGF0b3ItbmFtZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtcbiAgTkdYX1ZBTElEQVRJT05fTUVTU0FHRVNfQ09ORklHLFxuICBOZ3hWYWxpZGF0aW9uTWVzc2FnZXNDb25maWdcbn0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlL25neC12YWxpZGF0aW9uLW1lc3NhZ2VzLmNvbmZpZyc7XG5pbXBvcnQgeyBOZ3hWYWxpZGF0aW9uTWVzc2FnZXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9uZ3gtdmFsaWRhdGlvbi1tZXNzYWdlcy5zZXJ2aWNlJztcbmltcG9ydCB7IE5neEN1c3RvbU1lc3NhZ2VDb21wb25lbnQgfSBmcm9tICcuLi9uZ3gtY3VzdG9tLW1lc3NhZ2Uvbmd4LWN1c3RvbS1tZXNzYWdlLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQ29tcG9uZW50IGZvciBkaXNwbGF5aW5nIHZhbGlkYXRpb24gbWVzc2FnZXMsIHN1cHBvcnRzIGNoaWxkIGNvbXBvbmVudHMgb2YgdHlwZSB7QGxpbmsgTmd4Q3VzdG9tTWVzc2FnZUNvbXBvbmVudH1cbiAqIGFuZCBodG1sIGVsZW1lbnRzIHdpdGggZGlyZWN0aXZlIHtAbGluayBOZ3hWYWxpZGF0b3JOYW1lRGlyZWN0aXZlfSB0byBvdmVycmlkZSB2YWxpZGF0aW9uIG1lc3NhZ2VzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtdmFsaWRhdGlvbi1tZXNzYWdlcywgW25neFZhbGlkYXRpb25NZXNzYWdlc10nLFxuICB0ZW1wbGF0ZVVybDogJy4vbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9uZ3gtdmFsaWRhdGlvbi1tZXNzYWdlcy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE5neFZhbGlkYXRpb25NZXNzYWdlc0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gIC8qKlxuICAgKiBGb3JtIGNvbnRyb2wgZm9yIHdoaWNoIG5lZWQgdG8gc2hvdyB2YWxpZGF0aW9uIG1lc3NhZ2VzLlxuICAgKi9cbiAgQElucHV0KCdmb3InKVxuICBwdWJsaWMgZm9ybUNvbnRyb2w6IGFueTtcblxuICAvKipcbiAgICogQ29udGFpbnMge0BsaW5rIE5neEN1c3RvbU1lc3NhZ2VDb21wb25lbnR9IGlmIHByZXNlbnQuXG4gICAqL1xuICBAQ29udGVudENoaWxkcmVuKE5neEN1c3RvbU1lc3NhZ2VDb21wb25lbnQpXG4gIHB1YmxpYyBjdXN0b21Nc2dDb21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIENvbnRhaW5zIHtAbGluayBOZ3hWYWxpZGF0b3JOYW1lRGlyZWN0aXZlfSBpZiBwcmVzZW50LlxuICAgKi9cbiAgQENvbnRlbnRDaGlsZHJlbihOZ3hWYWxpZGF0b3JOYW1lRGlyZWN0aXZlKVxuICBwdWJsaWMgY3VzdG9tTXNnRGlyZWN0aXZlO1xuXG4gIHB1YmxpYyBpc01hdGVyaWFsRXJyb3IgPSBmYWxzZTtcblxuICAvKipcbiAgICogS2V5IHRvIGdldCBkZWZhdWx0IHZhbGlkYXRpb24gbWVzc2FnZS5cbiAgICovXG4gIHByaXZhdGUgZGVmYXVsdEVycm9yID0gJ2Vycm9yJztcblxuICBwcml2YXRlIG1hdGVyaWFsRXJyb3JFbGVtZW50ID0gJ01BVC1FUlJPUic7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChOR1hfVkFMSURBVElPTl9NRVNTQUdFU19DT05GSUcpIHB1YmxpYyBuZ3hWYWxpZGF0aW9uQ29uZmlnOiBOZ3hWYWxpZGF0aW9uTWVzc2FnZXNDb25maWcsXG4gICAgICAgICAgICAgIHByaXZhdGUgbmd4VmFsaWRhdGlvbk1lc3NhZ2VzU2VydmljZTogTmd4VmFsaWRhdGlvbk1lc3NhZ2VzU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBkaXJlY3RpdmVFbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpcmVjdGl2ZUVsZW1lbnRSZWYgJiYgdGhpcy5kaXJlY3RpdmVFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnRcbiAgICAgICYmIHRoaXMuZGlyZWN0aXZlRWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm5vZGVOYW1lKSB7XG4gICAgICB0aGlzLmlzTWF0ZXJpYWxFcnJvciA9IHRoaXMubWF0ZXJpYWxFcnJvckVsZW1lbnQudG9Mb2NhbGVVcHBlckNhc2UoKVxuICAgICAgICA9PT0gdGhpcy5kaXJlY3RpdmVFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQubm9kZU5hbWUudG9Mb2NhbGVVcHBlckNhc2UoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0IGFsbCB2YWxpZGF0aW9uIG1lc3NhZ2VzIGZvciBzcGVjaWZpZWQgZm9ybSBjb250cm9sLlxuICAgKi9cbiAgcHVibGljIGdldCBlcnJvck1lc3NhZ2VzKCk6IEFycmF5PHN0cmluZz4ge1xuICAgIGNvbnN0IHJlc3VsdDogQXJyYXk8c3RyaW5nPiA9IFtdO1xuXG4gICAgaWYgKCF0aGlzLmZvcm1Db250cm9sIHx8ICF0aGlzLmZvcm1Db250cm9sLmVycm9ycykge1xuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG4gICAgaWYgKHRoaXMuY3VzdG9tTXNnQ29tcG9uZW50ICYmIHRoaXMuY3VzdG9tTXNnQ29tcG9uZW50Lmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMucHJvY2Vzc2luZ0N1c3RvbU1lc3NhZ2VzKHRoaXMuY3VzdG9tTXNnQ29tcG9uZW50KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuY3VzdG9tTXNnRGlyZWN0aXZlICYmIHRoaXMuY3VzdG9tTXNnRGlyZWN0aXZlLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMucHJvY2Vzc2luZ0N1c3RvbU1lc3NhZ2VzKHRoaXMuY3VzdG9tTXNnRGlyZWN0aXZlKTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzKSB7XG4gICAgICBpZiAodGhpcy5mb3JtQ29udHJvbC5lcnJvcnMuaGFzT3duUHJvcGVydHkocHJvcGVydHkpXG4gICAgICAgICYmICh0aGlzLmZvcm1Db250cm9sLnRvdWNoZWQgfHwgdGhpcy5mb3JtQ29udHJvbC5kaXJ0eSkpIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzW3Byb3BlcnR5XS5jdXN0b21NZXNzYWdlcyBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICAgICAgcmVzdWx0LnB1c2goLi4udGhpcy5mb3JtQ29udHJvbC5lcnJvcnNbcHJvcGVydHldLmN1c3RvbU1lc3NhZ2VzKTtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5mb3JtQ29udHJvbC5lcnJvcnNbcHJvcGVydHldLmN1c3RvbU1lc3NhZ2UpIHtcbiAgICAgICAgICByZXN1bHQucHVzaCh0aGlzLmZvcm1Db250cm9sLmVycm9yc1twcm9wZXJ0eV0uY3VzdG9tTWVzc2FnZSk7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdmFsaWRhdGlvbk1lc3NhZ2U6IHN0cmluZyA9XG4gICAgICAgICAgdGhpcy5uZ3hWYWxpZGF0aW9uTWVzc2FnZXNTZXJ2aWNlLmdldFZhbGlkYXRvckVycm9yTWVzc2FnZXMocHJvcGVydHksIHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzW3Byb3BlcnR5XSk7XG4gICAgICAgIHJlc3VsdC5wdXNoKHZhbGlkYXRpb25NZXNzYWdlIHx8IHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzW3Byb3BlcnR5XS5tZXNzYWdlXG4gICAgICAgICAgfHwgdGhpcy5uZ3hWYWxpZGF0aW9uTWVzc2FnZXNTZXJ2aWNlLmdldFZhbGlkYXRvckVycm9yTWVzc2FnZXModGhpcy5kZWZhdWx0RXJyb3IpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgcHJvY2Vzc2luZ0N1c3RvbU1lc3NhZ2VzKGN1c3RvbU1lc3NhZ2U6IFF1ZXJ5TGlzdDxhbnk+KTogdm9pZCB7XG4gICAgY3VzdG9tTWVzc2FnZS5mb3JFYWNoKChtc2c6IGFueSkgPT4ge1xuICAgICAgaWYgKCF0aGlzLmZvcm1Db250cm9sLmVycm9yc1ttc2cudmFsaWRhdG9yTmFtZV0pIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgbGV0IG1lc3NhZ2UgPSAobXNnIGluc3RhbmNlb2YgTmd4Q3VzdG9tTWVzc2FnZUNvbXBvbmVudClcbiAgICAgICAgPyBtc2cubWVzc2FnZS5uYXRpdmVFbGVtZW50LmlubmVyVGV4dCA6IG1zZy5tZXNzYWdlO1xuICAgICAgbWVzc2FnZSA9IHRoaXMubmd4VmFsaWRhdGlvbk1lc3NhZ2VzU2VydmljZS5leHBhbmRQYXJhbWV0ZXJpemVkVGVtcGxhdGVNZXNzYWdlKG1lc3NhZ2UsIHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzW21zZy52YWxpZGF0b3JOYW1lXSk7XG5cbiAgICAgIHR5cGVvZiB0aGlzLmZvcm1Db250cm9sLmVycm9yc1ttc2cudmFsaWRhdG9yTmFtZV0gPT09ICdvYmplY3QnXG4gICAgICAgID8gdGhpcy5mb3JtQ29udHJvbC5lcnJvcnNbbXNnLnZhbGlkYXRvck5hbWVdLmN1c3RvbU1lc3NhZ2UgPSBtZXNzYWdlXG4gICAgICAgIDogdGhpcy5mb3JtQ29udHJvbC5lcnJvcnNbbXNnLnZhbGlkYXRvck5hbWVdID0ge2N1c3RvbU1lc3NhZ2U6IG1lc3NhZ2V9O1xuICAgIH0pO1xuICB9XG5cbn1cbiIsIjwhLS1UbyBzaG93IGVycm9yIG1lc3NhZ2VzIHN0YW5kYWxvbmUgd2l0aG91dCBjb21wb25lbnQtLT5cbjxkaXYgKm5nSWY9XCIhZm9ybUNvbnRyb2wgJiYgY3VzdG9tTXNnQ29tcG9uZW50Lmxlbmd0aCA9PSAwICYmIGN1c3RvbU1zZ0RpcmVjdGl2ZS5sZW5ndGggPT0gMFwiXG4gICAgIFtuZ0NsYXNzXT1cIm5neFZhbGlkYXRpb25Db25maWc/LnZhbGlkYXRpb25NZXNzYWdlc1N0eWxlPy5ibG9ja0NsYXNzTmFtZXMgfHwgJ25neF92bV9fZGVmX2Vycm9yX2Jsb2NrJ1wiPlxuIDxzcGFuIFtuZ0NsYXNzXT1cIm5neFZhbGlkYXRpb25Db25maWc/LnZhbGlkYXRpb25NZXNzYWdlc1N0eWxlPy50ZXh0Q2xhc3NOYW1lcyB8fCAnbmd4X3ZtX19kZWZfZXJyb3JfdGV4dCdcIj5cbiAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiA8L3NwYW4+XG48L2Rpdj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cImVycm9yTWVzc2FnZXMubGVuZ3RoID4gMFwiPlxuXG4gIDwhLS1UbyBzaG93IGVycm9yIG1lc3NhZ2VzIGluIG1hdGVyaWFsIHVpIHN0eWxlLS0+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc01hdGVyaWFsRXJyb3I7IGVsc2Ugd2l0aG91dE1hdGVyaWFsXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbWVzc2FnZSBvZiBlcnJvck1lc3NhZ2VzXCI+XG4gICAgICA8bWF0LWVycm9yPnt7IG1lc3NhZ2UgfX08L21hdC1lcnJvcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPCEtLVRvIHNob3cgZXJyb3IgbWVzc2FnZXMgaW4gdXNlciBzdHlsZS0tPlxuICA8bmctdGVtcGxhdGUgI3dpdGhvdXRNYXRlcmlhbD5cbiAgICA8ZGl2IFtuZ0NsYXNzXT1cIm5neFZhbGlkYXRpb25Db25maWc/LnZhbGlkYXRpb25NZXNzYWdlc1N0eWxlPy5ibG9ja0NsYXNzTmFtZXMgfHwgJ25neF92bV9fZGVmX2Vycm9yX2Jsb2NrJ1wiPlxuICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgbWVzc2FnZSBvZiBlcnJvck1lc3NhZ2VzXCI+XG4gICAgICAgIDxzcGFuIFtuZ0NsYXNzXT1cIm5neFZhbGlkYXRpb25Db25maWc/LnZhbGlkYXRpb25NZXNzYWdlc1N0eWxlPy50ZXh0Q2xhc3NOYW1lcyB8fCAnbmd4X3ZtX19kZWZfZXJyb3JfdGV4dCdcIj5cbiAgICAgICAgICB7eyBtZXNzYWdlIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuXG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Directive, ElementRef, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Allows to specify custom validator message to override default message.
|
|
5
|
+
*
|
|
6
|
+
* It's alternative for {@link NgxCustomMessageComponent}.
|
|
7
|
+
* If you want to use standard html tags to define custom message, use this directive on html tag within
|
|
8
|
+
* {@link NgxValidationMessagesComponent} specifying validator name as directive parameter,
|
|
9
|
+
* otherwise use {@link NgxCustomMessageComponent}.
|
|
10
|
+
*/
|
|
11
|
+
export class NgxValidatorNameDirective {
|
|
12
|
+
elem;
|
|
13
|
+
/**
|
|
14
|
+
* The name of the validator for which you want to override the message.
|
|
15
|
+
*/
|
|
16
|
+
validatorName;
|
|
17
|
+
/**
|
|
18
|
+
* Contains overridden message for validator.
|
|
19
|
+
*/
|
|
20
|
+
message;
|
|
21
|
+
constructor(elem) {
|
|
22
|
+
this.elem = elem;
|
|
23
|
+
}
|
|
24
|
+
ngAfterViewInit() {
|
|
25
|
+
this.message = this.elem.nativeElement.innerText;
|
|
26
|
+
}
|
|
27
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgxValidatorNameDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
28
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: NgxValidatorNameDirective, selector: "[ngxValidatorName]", inputs: { validatorName: "validatorName" }, ngImport: i0 });
|
|
29
|
+
}
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgxValidatorNameDirective, decorators: [{
|
|
31
|
+
type: Directive,
|
|
32
|
+
args: [{
|
|
33
|
+
selector: '[ngxValidatorName]'
|
|
34
|
+
}]
|
|
35
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { validatorName: [{
|
|
36
|
+
type: Input
|
|
37
|
+
}] } });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXZhbGlkYXRvci1uYW1lLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC12YWxpZGF0aW9uLW1lc3NhZ2VzL3NyYy9saWIvZGlyZWN0aXZpZXMvbmd4LXZhbGlkYXRvci1uYW1lLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUU1RTs7Ozs7OztHQU9HO0FBSUgsTUFBTSxPQUFPLHlCQUF5QjtJQWFoQjtJQVhwQjs7T0FFRztJQUVJLGFBQWEsQ0FBUztJQUU3Qjs7T0FFRztJQUNJLE9BQU8sQ0FBUztJQUV2QixZQUFvQixJQUFnQjtRQUFoQixTQUFJLEdBQUosSUFBSSxDQUFZO0lBQ3BDLENBQUM7SUFFTSxlQUFlO1FBQ3BCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDO0lBQ25ELENBQUM7d0dBbEJVLHlCQUF5Qjs0RkFBekIseUJBQXlCOzs0RkFBekIseUJBQXlCO2tCQUhyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7aUJBQy9COytFQU9RLGFBQWE7c0JBRG5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQWxsb3dzIHRvIHNwZWNpZnkgY3VzdG9tIHZhbGlkYXRvciBtZXNzYWdlIHRvIG92ZXJyaWRlIGRlZmF1bHQgbWVzc2FnZS5cbiAqXG4gKiBJdCdzIGFsdGVybmF0aXZlIGZvciB7QGxpbmsgTmd4Q3VzdG9tTWVzc2FnZUNvbXBvbmVudH0uXG4gKiBJZiB5b3Ugd2FudCB0byB1c2Ugc3RhbmRhcmQgaHRtbCB0YWdzIHRvIGRlZmluZSBjdXN0b20gbWVzc2FnZSwgdXNlIHRoaXMgZGlyZWN0aXZlIG9uIGh0bWwgdGFnIHdpdGhpblxuICoge0BsaW5rIE5neFZhbGlkYXRpb25NZXNzYWdlc0NvbXBvbmVudH0gc3BlY2lmeWluZyB2YWxpZGF0b3IgbmFtZSBhcyBkaXJlY3RpdmUgcGFyYW1ldGVyLFxuICogb3RoZXJ3aXNlIHVzZSB7QGxpbmsgTmd4Q3VzdG9tTWVzc2FnZUNvbXBvbmVudH0uXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tuZ3hWYWxpZGF0b3JOYW1lXSdcbn0pXG5leHBvcnQgY2xhc3MgTmd4VmFsaWRhdG9yTmFtZURpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgdmFsaWRhdG9yIGZvciB3aGljaCB5b3Ugd2FudCB0byBvdmVycmlkZSB0aGUgbWVzc2FnZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB2YWxpZGF0b3JOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENvbnRhaW5zIG92ZXJyaWRkZW4gbWVzc2FnZSBmb3IgdmFsaWRhdG9yLlxuICAgKi9cbiAgcHVibGljIG1lc3NhZ2U6IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW06IEVsZW1lbnRSZWYpIHtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlID0gdGhpcy5lbGVtLm5hdGl2ZUVsZW1lbnQuaW5uZXJUZXh0O1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
-
export const NGX_VALIDATION_MESSAGES_CONFIG = new InjectionToken('NgxValidationMessagesConfig');
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
export const NGX_VALIDATION_MESSAGES_CONFIG = new InjectionToken('NgxValidationMessagesConfig');
|
|
3
3
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXZhbGlkYXRpb24tbWVzc2FnZXMuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMvc3JjL2xpYi9pbnRlcmZhY2Uvbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQ3ZDLElBQUksY0FBYyxDQUE4Qiw2QkFBNkIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNvbnN0IE5HWF9WQUxJREFUSU9OX01FU1NBR0VTX0NPTkZJRzogSW5qZWN0aW9uVG9rZW48Tmd4VmFsaWRhdGlvbk1lc3NhZ2VzQ29uZmlnPlxuICA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOZ3hWYWxpZGF0aW9uTWVzc2FnZXNDb25maWc+KCdOZ3hWYWxpZGF0aW9uTWVzc2FnZXNDb25maWcnKTtcblxuZXhwb3J0IGludGVyZmFjZSBOZ3hWYWxpZGF0aW9uTWVzc2FnZXNDb25maWcge1xuXG4gIC8qKlxuICAgKiBPYmplY3QgY29udGFpbnMgdmFsaWRhdGlvbiBtZXNzYWdlcyBpbiB2YWxpZGF0b3JOYW1lOiB2YWxpZGF0b3JNZXNzYWdlIGZvcm1hdC5cbiAgICovXG4gIG1lc3NhZ2VzOiB7XG4gICAgW3ZhbGlkYXRvck5hbWU6IHN0cmluZ106IHN0cmluZztcbiAgfTtcblxuICAvKipcbiAgICogRGVmaW5lIGN1c3RvbSBzdHlsZXMgdG8gZGlzcGxheSB2YWxpZGF0aW9uIG1lc3NhZ2VzLlxuICAgKi9cbiAgdmFsaWRhdGlvbk1lc3NhZ2VzU3R5bGU/OiB7XG4gICAgYmxvY2tDbGFzc05hbWVzPzogc3RyaW5nO1xuICAgIHRleHRDbGFzc05hbWVzPzogc3RyaW5nO1xuICB9O1xuXG59XG4iXX0=
|
|
@@ -1,56 +1,56 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { NgxCustomMessageComponent } from './components/ngx-custom-message/ngx-custom-message.component';
|
|
4
|
-
import { NgxValidationMessagesComponent } from './components/ngx-validation-messages/ngx-validation-messages.component';
|
|
5
|
-
import { NgxValidatorNameDirective } from './directivies/ngx-validator-name.directive';
|
|
6
|
-
import { NGX_VALIDATION_MESSAGES_CONFIG } from './interface/ngx-validation-messages.config';
|
|
7
|
-
import { NgxValidationMessagesService } from './service/ngx-validation-messages.service';
|
|
8
|
-
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
export { NGX_VALIDATION_MESSAGES_CONFIG } from './interface/ngx-validation-messages.config';
|
|
11
|
-
export { NgxCustomMessageComponent } from './components/ngx-custom-message/ngx-custom-message.component';
|
|
12
|
-
export { NgxValidationMessagesComponent } from './components/ngx-validation-messages/ngx-validation-messages.component';
|
|
13
|
-
export { NgxValidatorNameDirective } from './directivies/ngx-validator-name.directive';
|
|
14
|
-
export class NgxValidationMessagesModule {
|
|
15
|
-
static forRoot(config) {
|
|
16
|
-
return {
|
|
17
|
-
ngModule: NgxValidationMessagesModule,
|
|
18
|
-
providers: [
|
|
19
|
-
NgxValidationMessagesService,
|
|
20
|
-
{
|
|
21
|
-
provide: NGX_VALIDATION_MESSAGES_CONFIG,
|
|
22
|
-
useValue: config
|
|
23
|
-
}
|
|
24
|
-
]
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
38
|
-
type: NgModule,
|
|
39
|
-
args: [{
|
|
40
|
-
imports: [
|
|
41
|
-
CommonModule,
|
|
42
|
-
MatFormFieldModule,
|
|
43
|
-
],
|
|
44
|
-
declarations: [
|
|
45
|
-
NgxValidationMessagesComponent,
|
|
46
|
-
NgxCustomMessageComponent,
|
|
47
|
-
NgxValidatorNameDirective
|
|
48
|
-
],
|
|
49
|
-
exports: [
|
|
50
|
-
NgxValidationMessagesComponent,
|
|
51
|
-
NgxCustomMessageComponent,
|
|
52
|
-
NgxValidatorNameDirective
|
|
53
|
-
]
|
|
54
|
-
}]
|
|
55
|
-
}] });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { NgxCustomMessageComponent } from './components/ngx-custom-message/ngx-custom-message.component';
|
|
4
|
+
import { NgxValidationMessagesComponent } from './components/ngx-validation-messages/ngx-validation-messages.component';
|
|
5
|
+
import { NgxValidatorNameDirective } from './directivies/ngx-validator-name.directive';
|
|
6
|
+
import { NGX_VALIDATION_MESSAGES_CONFIG } from './interface/ngx-validation-messages.config';
|
|
7
|
+
import { NgxValidationMessagesService } from './service/ngx-validation-messages.service';
|
|
8
|
+
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
export { NGX_VALIDATION_MESSAGES_CONFIG } from './interface/ngx-validation-messages.config';
|
|
11
|
+
export { NgxCustomMessageComponent } from './components/ngx-custom-message/ngx-custom-message.component';
|
|
12
|
+
export { NgxValidationMessagesComponent } from './components/ngx-validation-messages/ngx-validation-messages.component';
|
|
13
|
+
export { NgxValidatorNameDirective } from './directivies/ngx-validator-name.directive';
|
|
14
|
+
export class NgxValidationMessagesModule {
|
|
15
|
+
static forRoot(config) {
|
|
16
|
+
return {
|
|
17
|
+
ngModule: NgxValidationMessagesModule,
|
|
18
|
+
providers: [
|
|
19
|
+
NgxValidationMessagesService,
|
|
20
|
+
{
|
|
21
|
+
provide: NGX_VALIDATION_MESSAGES_CONFIG,
|
|
22
|
+
useValue: config
|
|
23
|
+
}
|
|
24
|
+
]
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgxValidationMessagesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
28
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: NgxValidationMessagesModule, declarations: [NgxValidationMessagesComponent,
|
|
29
|
+
NgxCustomMessageComponent,
|
|
30
|
+
NgxValidatorNameDirective], imports: [CommonModule,
|
|
31
|
+
MatFormFieldModule], exports: [NgxValidationMessagesComponent,
|
|
32
|
+
NgxCustomMessageComponent,
|
|
33
|
+
NgxValidatorNameDirective] });
|
|
34
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgxValidationMessagesModule, imports: [CommonModule,
|
|
35
|
+
MatFormFieldModule] });
|
|
36
|
+
}
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NgxValidationMessagesModule, decorators: [{
|
|
38
|
+
type: NgModule,
|
|
39
|
+
args: [{
|
|
40
|
+
imports: [
|
|
41
|
+
CommonModule,
|
|
42
|
+
MatFormFieldModule,
|
|
43
|
+
],
|
|
44
|
+
declarations: [
|
|
45
|
+
NgxValidationMessagesComponent,
|
|
46
|
+
NgxCustomMessageComponent,
|
|
47
|
+
NgxValidatorNameDirective
|
|
48
|
+
],
|
|
49
|
+
exports: [
|
|
50
|
+
NgxValidationMessagesComponent,
|
|
51
|
+
NgxCustomMessageComponent,
|
|
52
|
+
NgxValidatorNameDirective
|
|
53
|
+
]
|
|
54
|
+
}]
|
|
55
|
+
}] });
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXZhbGlkYXRpb24tbWVzc2FnZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMvc3JjL2xpYi9uZ3gtdmFsaWRhdGlvbi1tZXNzYWdlcy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBc0IsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLHdFQUF3RSxDQUFDO0FBQ3RILE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQ3JGLE9BQU8sRUFBQyw4QkFBOEIsRUFBOEIsTUFBTSw0Q0FBNEMsQ0FBQztBQUN2SCxPQUFPLEVBQUMsNEJBQTRCLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUN2RixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQzs7QUFFaEUsT0FBTyxFQUFDLDhCQUE4QixFQUE4QixNQUFNLDRDQUE0QyxDQUFDO0FBQ3ZILE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDhEQUE4RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLHdFQUF3RSxDQUFDO0FBQ3RILE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBa0JyRixNQUFNLE9BQU8sMkJBQTJCO0lBQ3RDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBbUM7UUFDaEQsT0FBTztZQUNMLFFBQVEsRUFBRSwyQkFBMkI7WUFDckMsU0FBUyxFQUFFO2dCQUNULDRCQUE0QjtnQkFDNUI7b0JBQ0UsT0FBTyxFQUFFLDhCQUE4QjtvQkFDdkMsUUFBUSxFQUFFLE1BQU07aUJBQ2pCO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzt3R0FaVSwyQkFBMkI7eUdBQTNCLDJCQUEyQixpQkFWcEMsOEJBQThCO1lBQzlCLHlCQUF5QjtZQUN6Qix5QkFBeUIsYUFOekIsWUFBWTtZQUNaLGtCQUFrQixhQVFsQiw4QkFBOEI7WUFDOUIseUJBQXlCO1lBQ3pCLHlCQUF5Qjt5R0FHaEIsMkJBQTJCLFlBZHBDLFlBQVk7WUFDWixrQkFBa0I7OzRGQWFULDJCQUEyQjtrQkFoQnZDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osa0JBQWtCO3FCQUNuQjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osOEJBQThCO3dCQUM5Qix5QkFBeUI7d0JBQ3pCLHlCQUF5QjtxQkFDMUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLDhCQUE4Qjt3QkFDOUIseUJBQXlCO3dCQUN6Qix5QkFBeUI7cUJBQzFCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge01vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Tmd4Q3VzdG9tTWVzc2FnZUNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL25neC1jdXN0b20tbWVzc2FnZS9uZ3gtY3VzdG9tLW1lc3NhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7Tmd4VmFsaWRhdGlvbk1lc3NhZ2VzQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMvbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMuY29tcG9uZW50JztcbmltcG9ydCB7Tmd4VmFsaWRhdG9yTmFtZURpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3Rpdmllcy9uZ3gtdmFsaWRhdG9yLW5hbWUuZGlyZWN0aXZlJztcbmltcG9ydCB7TkdYX1ZBTElEQVRJT05fTUVTU0FHRVNfQ09ORklHLCBOZ3hWYWxpZGF0aW9uTWVzc2FnZXNDb25maWd9IGZyb20gJy4vaW50ZXJmYWNlL25neC12YWxpZGF0aW9uLW1lc3NhZ2VzLmNvbmZpZyc7XG5pbXBvcnQge05neFZhbGlkYXRpb25NZXNzYWdlc1NlcnZpY2V9IGZyb20gJy4vc2VydmljZS9uZ3gtdmFsaWRhdGlvbi1tZXNzYWdlcy5zZXJ2aWNlJztcbmltcG9ydCB7TWF0Rm9ybUZpZWxkTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcblxuZXhwb3J0IHtOR1hfVkFMSURBVElPTl9NRVNTQUdFU19DT05GSUcsIE5neFZhbGlkYXRpb25NZXNzYWdlc0NvbmZpZ30gZnJvbSAnLi9pbnRlcmZhY2Uvbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMuY29uZmlnJztcbmV4cG9ydCB7Tmd4Q3VzdG9tTWVzc2FnZUNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL25neC1jdXN0b20tbWVzc2FnZS9uZ3gtY3VzdG9tLW1lc3NhZ2UuY29tcG9uZW50JztcbmV4cG9ydCB7Tmd4VmFsaWRhdGlvbk1lc3NhZ2VzQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMvbmd4LXZhbGlkYXRpb24tbWVzc2FnZXMuY29tcG9uZW50JztcbmV4cG9ydCB7Tmd4VmFsaWRhdG9yTmFtZURpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3Rpdmllcy9uZ3gtdmFsaWRhdG9yLW5hbWUuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIE5neFZhbGlkYXRpb25NZXNzYWdlc0NvbXBvbmVudCxcbiAgICBOZ3hDdXN0b21NZXNzYWdlQ29tcG9uZW50LFxuICAgIE5neFZhbGlkYXRvck5hbWVEaXJlY3RpdmVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIE5neFZhbGlkYXRpb25NZXNzYWdlc0NvbXBvbmVudCxcbiAgICBOZ3hDdXN0b21NZXNzYWdlQ29tcG9uZW50LFxuICAgIE5neFZhbGlkYXRvck5hbWVEaXJlY3RpdmVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3hWYWxpZGF0aW9uTWVzc2FnZXNNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChjb25maWc6IE5neFZhbGlkYXRpb25NZXNzYWdlc0NvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8Tmd4VmFsaWRhdGlvbk1lc3NhZ2VzTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBOZ3hWYWxpZGF0aW9uTWVzc2FnZXNNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgTmd4VmFsaWRhdGlvbk1lc3NhZ2VzU2VydmljZSxcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IE5HWF9WQUxJREFUSU9OX01FU1NBR0VTX0NPTkZJRyxcbiAgICAgICAgICB1c2VWYWx1ZTogY29uZmlnXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG59XG4iXX0=
|