@osovitny/anatoly 3.16.81 → 3.16.83
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/ui/components/html-editor/forms-html-editor.component.mjs +5 -5
- package/esm2022/lib/ui/forms/components/urlslug/urlslug.component.mjs +16 -25
- package/esm2022/lib/ui/validation/item-validation-summary.component.mjs +7 -10
- package/esm2022/lib/ui/validation/validation-summary.component.mjs +47 -47
- package/fesm2022/osovitny-anatoly.mjs +71 -83
- package/fesm2022/osovitny-anatoly.mjs.map +1 -1
- package/lib/ui/forms/components/urlslug/urlslug.component.d.ts +3 -6
- package/lib/ui/validation/item-validation-summary.component.d.ts +2 -3
- package/lib/ui/validation/validation-summary.component.d.ts +3 -16
- package/package.json +1 -1
|
@@ -35,7 +35,7 @@ export class FormsHtmlEditorComponent extends HtmlEditorComponentBase {
|
|
|
35
35
|
});
|
|
36
36
|
}
|
|
37
37
|
static ɵfac = function FormsHtmlEditorComponent_Factory(t) { return new (t || FormsHtmlEditorComponent)(); };
|
|
38
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FormsHtmlEditorComponent, selectors: [["anatoly-forms-html-editor"]], inputs: { editorFormKey: "editorFormKey" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 5, vars:
|
|
38
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FormsHtmlEditorComponent, selectors: [["anatoly-forms-html-editor"]], inputs: { editorFormKey: "editorFormKey" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 5, vars: 10, consts: [[1, "form-group", 3, "formGroup", "ngClass"], [1, "col-form-label"], [3, "formControlName", "froalaEditor", "froalaInit"], [3, "formGroup", "formSubmitted", "controlName"]], template: function FormsHtmlEditorComponent_Template(rf, ctx) { if (rf & 1) {
|
|
39
39
|
i0.ɵɵelementStart(0, "div", 0)(1, "label", 1);
|
|
40
40
|
i0.ɵɵtext(2);
|
|
41
41
|
i0.ɵɵelementEnd();
|
|
@@ -45,19 +45,19 @@ export class FormsHtmlEditorComponent extends HtmlEditorComponentBase {
|
|
|
45
45
|
i0.ɵɵelement(4, "anatoly-item-validation-summary", 3);
|
|
46
46
|
i0.ɵɵelementEnd();
|
|
47
47
|
} if (rf & 2) {
|
|
48
|
-
i0.ɵɵproperty("formGroup", ctx.formGroup)("ngClass", i0.ɵɵpureFunction1(
|
|
48
|
+
i0.ɵɵproperty("formGroup", ctx.formGroup)("ngClass", i0.ɵɵpureFunction1(8, _c0, ctx.isControlInvalid(ctx.editorFormKey)));
|
|
49
49
|
i0.ɵɵadvance(2);
|
|
50
50
|
i0.ɵɵtextInterpolate(ctx.editorLabelText);
|
|
51
51
|
i0.ɵɵadvance(1);
|
|
52
52
|
i0.ɵɵproperty("formControlName", ctx.editorFormKey)("froalaEditor", ctx.options);
|
|
53
53
|
i0.ɵɵadvance(1);
|
|
54
|
-
i0.ɵɵproperty("formGroup", ctx.formGroup)("formSubmitted", ctx.formSubmitted)("
|
|
54
|
+
i0.ɵɵproperty("formGroup", ctx.formGroup)("formSubmitted", ctx.formSubmitted)("controlName", ctx.editorFormKey);
|
|
55
55
|
} }, dependencies: [i1.NgClass, i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgControlStatusGroup, i2.FormGroupDirective, i2.FormControlName, i3.FroalaEditorDirective, i4.NativeElementDirective, i5.ItemValidationSummaryComponent], encapsulation: 2 });
|
|
56
56
|
}
|
|
57
57
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FormsHtmlEditorComponent, [{
|
|
58
58
|
type: Component,
|
|
59
|
-
args: [{ selector: "anatoly-forms-html-editor", template: "<div [formGroup]=\"formGroup\" [ngClass]=\"{'has-error': isControlInvalid(editorFormKey) }\" class=\"form-group\" >\r\n <label class=\"col-form-label\">{{ editorLabelText }}</label>\r\n <textarea [formControlName]=\"editorFormKey\" [froalaEditor]=\"options\" (froalaInit)=\"initializeControl($event)\"></textarea>\r\n <anatoly-item-validation-summary [formGroup]=\"formGroup\"\r\n [formSubmitted]=\"formSubmitted\"\r\n [
|
|
59
|
+
args: [{ selector: "anatoly-forms-html-editor", template: "<div [formGroup]=\"formGroup\" [ngClass]=\"{'has-error': isControlInvalid(editorFormKey) }\" class=\"form-group\" >\r\n <label class=\"col-form-label\">{{ editorLabelText }}</label>\r\n <textarea [formControlName]=\"editorFormKey\" [froalaEditor]=\"options\" (froalaInit)=\"initializeControl($event)\"></textarea>\r\n <anatoly-item-validation-summary [formGroup]=\"formGroup\"\r\n [formSubmitted]=\"formSubmitted\"\r\n [controlName]=\"editorFormKey\">\r\n </anatoly-item-validation-summary>\r\n</div>\r\n" }]
|
|
60
60
|
}], function () { return []; }, { editorFormKey: [{
|
|
61
61
|
type: Input
|
|
62
62
|
}] }); })();
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybXMtaHRtbC1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL3VpL2NvbXBvbmVudHMvaHRtbC1lZGl0b3IvZm9ybXMtaHRtbC1lZGl0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL3VpL2NvbXBvbmVudHMvaHRtbC1lZGl0b3IvZm9ybXMtaHRtbC1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsS0FBSztBQUNMLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7OztBQU12RSxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsdUJBQXVCO0lBQzFELGFBQWEsR0FBVyxNQUFNLENBQUM7SUFFeEM7UUFDRSxLQUFLLEVBQUUsQ0FBQztJQUNWLENBQUM7SUFFTSw0QkFBNEIsQ0FBQyxJQUFJLEVBQUUsS0FBSztRQUM3QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxJQUFJO1lBQ3BDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztrRkFYVSx3QkFBd0I7NkRBQXhCLHdCQUF3QjtZQzFCckMsOEJBQTZHLGVBQUE7WUFDM0UsWUFBcUI7WUFBQSxpQkFBUTtZQUMzRCxtQ0FBOEc7WUFBekMsdUhBQWMsNkJBQXlCLElBQUM7WUFBQyxpQkFBVztZQUN6SCxxREFHa0M7WUFDdEMsaUJBQU07O1lBUEQseUNBQXVCLGdGQUFBO1lBQ00sZUFBcUI7WUFBckIseUNBQXFCO1lBQ3pDLGVBQWlDO1lBQWpDLG1EQUFpQyw2QkFBQTtZQUNWLGVBQXVCO1lBQXZCLHlDQUF1QixvQ0FBQSxrQ0FBQTs7O3VGRHVCL0Msd0JBQXdCO2NBSnBDLFNBQVM7MkJBQ0UsMkJBQTJCO3NDQUk1QixhQUFhO2tCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDEyIERlYyAyMDE3XHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIyIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHsgSHRtbEVkaXRvckNvbXBvbmVudEJhc2UgfSBmcm9tIFwiLi9iYXNlLWh0bWwtZWRpdG9yLmNvbXBvbmVudFwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiYW5hdG9seS1mb3Jtcy1odG1sLWVkaXRvclwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vZm9ybXMtaHRtbC1lZGl0b3IuY29tcG9uZW50Lmh0bWxcIixcclxufSlcclxuZXhwb3J0IGNsYXNzIEZvcm1zSHRtbEVkaXRvckNvbXBvbmVudCBleHRlbmRzIEh0bWxFZGl0b3JDb21wb25lbnRCYXNlIHtcclxuICBASW5wdXQoKSBlZGl0b3JGb3JtS2V5OiBzdHJpbmcgPSBcImh0bWxcIjtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldEZvcm1WYWx1ZUFmdGVySW5pdGlhbGl6ZWQobmFtZSwgdmFsdWUpIHtcclxuICAgIHRoaXMuZG9BZnRlckluaXRpYWxpemVkKGZ1bmN0aW9uICh0aGF0KSB7XHJcbiAgICAgIHRoYXQuc2V0Rm9ybVZhbHVlKG5hbWUsIHZhbHVlKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCIgW25nQ2xhc3NdPVwieydoYXMtZXJyb3InOiBpc0NvbnRyb2xJbnZhbGlkKGVkaXRvckZvcm1LZXkpIH1cIiBjbGFzcz1cImZvcm0tZ3JvdXBcIiA+XHJcbiAgICA8bGFiZWwgY2xhc3M9XCJjb2wtZm9ybS1sYWJlbFwiPnt7IGVkaXRvckxhYmVsVGV4dCB9fTwvbGFiZWw+XHJcbiAgICA8dGV4dGFyZWEgW2Zvcm1Db250cm9sTmFtZV09XCJlZGl0b3JGb3JtS2V5XCIgW2Zyb2FsYUVkaXRvcl09XCJvcHRpb25zXCIgKGZyb2FsYUluaXQpPVwiaW5pdGlhbGl6ZUNvbnRyb2woJGV2ZW50KVwiPjwvdGV4dGFyZWE+XHJcbiAgICA8YW5hdG9seS1pdGVtLXZhbGlkYXRpb24tc3VtbWFyeSBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZm9ybVN1Ym1pdHRlZF09XCJmb3JtU3VibWl0dGVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb250cm9sTmFtZV09XCJlZGl0b3JGb3JtS2V5XCI+XHJcbiAgICA8L2FuYXRvbHktaXRlbS12YWxpZGF0aW9uLXN1bW1hcnk+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -52,18 +52,13 @@ export class UrlSlugComponent extends EditComponentBase {
|
|
|
52
52
|
//Inputs
|
|
53
53
|
title = 'Permalink:';
|
|
54
54
|
isTitleVisible = true;
|
|
55
|
-
class;
|
|
56
|
-
watchedControlName;
|
|
57
55
|
urlPrefix;
|
|
58
56
|
isGoButtonVisible = true;
|
|
59
57
|
//Validation
|
|
60
|
-
|
|
61
|
-
|
|
58
|
+
controlName;
|
|
59
|
+
watchedControlName;
|
|
62
60
|
//Outputs
|
|
63
61
|
generating = new EventEmitter();
|
|
64
|
-
constructor() {
|
|
65
|
-
super();
|
|
66
|
-
}
|
|
67
62
|
ngOnInit() {
|
|
68
63
|
this.startWatching();
|
|
69
64
|
}
|
|
@@ -71,7 +66,7 @@ export class UrlSlugComponent extends EditComponentBase {
|
|
|
71
66
|
let slugedText = Utils.slugify(text);
|
|
72
67
|
let event = { urlSlug: slugedText };
|
|
73
68
|
this.generating.emit(event);
|
|
74
|
-
this.setFormValue(this.
|
|
69
|
+
this.setFormValue(this.controlName, event.urlSlug);
|
|
75
70
|
}
|
|
76
71
|
startWatching() {
|
|
77
72
|
this.subs.sink = this.formGroup.get(this.watchedControlName).valueChanges.subscribe({
|
|
@@ -83,7 +78,7 @@ export class UrlSlugComponent extends EditComponentBase {
|
|
|
83
78
|
this.generateUrlSlug(value);
|
|
84
79
|
}
|
|
85
80
|
});
|
|
86
|
-
this.subs.sink = this.formGroup.get(this.
|
|
81
|
+
this.subs.sink = this.formGroup.get(this.controlName).valueChanges.subscribe({
|
|
87
82
|
next: (value) => {
|
|
88
83
|
this.hrefGo = value;
|
|
89
84
|
}
|
|
@@ -91,11 +86,11 @@ export class UrlSlugComponent extends EditComponentBase {
|
|
|
91
86
|
}
|
|
92
87
|
//Events
|
|
93
88
|
onUrlSlugChange() {
|
|
94
|
-
let text = this.getFormValue(this.
|
|
89
|
+
let text = this.getFormValue(this.controlName);
|
|
95
90
|
this.generateUrlSlug(text);
|
|
96
91
|
}
|
|
97
|
-
static ɵfac = function UrlSlugComponent_Factory(t) { return
|
|
98
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UrlSlugComponent, selectors: [["anatoly-forms-urlslug"]], inputs: { title: "title", isTitleVisible: "isTitleVisible",
|
|
92
|
+
static ɵfac = /*@__PURE__*/ function () { let ɵUrlSlugComponent_BaseFactory; return function UrlSlugComponent_Factory(t) { return (ɵUrlSlugComponent_BaseFactory || (ɵUrlSlugComponent_BaseFactory = i0.ɵɵgetInheritedFactory(UrlSlugComponent)))(t || UrlSlugComponent); }; }();
|
|
93
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UrlSlugComponent, selectors: [["anatoly-forms-urlslug"]], inputs: { title: "title", isTitleVisible: "isTitleVisible", urlPrefix: "urlPrefix", isGoButtonVisible: "isGoButtonVisible", controlName: "controlName", watchedControlName: "watchedControlName" }, outputs: { generating: "generating" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 7, vars: 13, consts: [[3, "formGroup", "ngClass"], [1, "d-flex", "align-items-end"], [3, "formGroup", "formSubmitted", "formControlName"], [1, "form-group"], ["class", "col-form-label", 4, "ngIf"], ["type", "text", "placeholder", "Type url slug here", 1, "form-control", 3, "formControlName", "focusout"], ["class", "form-group flex-shrink-1", 4, "ngIf"], [1, "col-form-label"], [1, "urlPrefix"], [1, "form-group", "flex-shrink-1"], ["target", "_blank", 1, "btn", "btn-primary", 3, "href"]], template: function UrlSlugComponent_Template(rf, ctx) { if (rf & 1) {
|
|
99
94
|
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
|
|
100
95
|
i0.ɵɵelement(2, "anatoly-item-validation-summary", 2);
|
|
101
96
|
i0.ɵɵelementStart(3, "div", 3);
|
|
@@ -106,38 +101,34 @@ export class UrlSlugComponent extends EditComponentBase {
|
|
|
106
101
|
i0.ɵɵtemplate(6, UrlSlugComponent_div_6_Template, 3, 2, "div", 6);
|
|
107
102
|
i0.ɵɵelementEnd()();
|
|
108
103
|
} if (rf & 2) {
|
|
109
|
-
i0.ɵɵclassMapInterpolate1("permalink form-group ", ctx.
|
|
110
|
-
i0.ɵɵproperty("formGroup", ctx.formGroup)("ngClass", i0.ɵɵpureFunction1(
|
|
104
|
+
i0.ɵɵclassMapInterpolate1("permalink form-group ", ctx.classes, "");
|
|
105
|
+
i0.ɵɵproperty("formGroup", ctx.formGroup)("ngClass", i0.ɵɵpureFunction1(11, _c0, ctx.isControlInvalid(ctx.controlName)));
|
|
111
106
|
i0.ɵɵadvance(2);
|
|
112
|
-
i0.ɵɵproperty("formGroup", ctx.formGroup)("formSubmitted", ctx.formSubmitted)("formControlName", ctx.
|
|
107
|
+
i0.ɵɵproperty("formGroup", ctx.formGroup)("formSubmitted", ctx.formSubmitted)("formControlName", ctx.controlName);
|
|
113
108
|
i0.ɵɵadvance(2);
|
|
114
109
|
i0.ɵɵproperty("ngIf", ctx.isTitleVisible);
|
|
115
110
|
i0.ɵɵadvance(1);
|
|
116
|
-
i0.ɵɵproperty("formControlName", ctx.
|
|
111
|
+
i0.ɵɵproperty("formControlName", ctx.controlName);
|
|
117
112
|
i0.ɵɵadvance(1);
|
|
118
113
|
i0.ɵɵproperty("ngIf", ctx.isGoButtonVisible);
|
|
119
114
|
} }, dependencies: [i1.NgClass, i1.NgIf, i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgControlStatusGroup, i2.FormGroupDirective, i2.FormControlName, i3.NativeElementDirective, i4.ItemValidationSummaryComponent], encapsulation: 2 });
|
|
120
115
|
}
|
|
121
116
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UrlSlugComponent, [{
|
|
122
117
|
type: Component,
|
|
123
|
-
args: [{ selector: 'anatoly-forms-urlslug', template: "<div [formGroup]='formGroup' [ngClass]=\"{'has-error': isControlInvalid(
|
|
124
|
-
}],
|
|
118
|
+
args: [{ selector: 'anatoly-forms-urlslug', template: "<div [formGroup]='formGroup' [ngClass]=\"{'has-error': isControlInvalid(controlName)}\"\r\n class=\"permalink form-group {{ classes }}\">\r\n <div class=\"d-flex align-items-end\">\r\n <anatoly-item-validation-summary\r\n [formGroup]='formGroup'\r\n [formSubmitted]='formSubmitted'\r\n [formControlName]='controlName'>\r\n </anatoly-item-validation-summary>\r\n\r\n <div class=\"form-group\">\r\n <label *ngIf='isTitleVisible' class='col-form-label'>\r\n {{ title }}\r\n <span class=\"urlPrefix\">{{ urlPrefix }}</span>\r\n </label>\r\n <input type='text'\r\n class='form-control'\r\n placeholder='Type url slug here'\r\n [formControlName]='controlName'\r\n (focusout)='onUrlSlugChange()' />\r\n </div>\r\n\r\n <div class=\"form-group flex-shrink-1\" *ngIf=\"isGoButtonVisible\">\r\n <a href=\"{{urlPrefix}}{{hrefGo}}\" target=\"_blank\" class=\"btn btn-primary\">Go</a>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
|
|
119
|
+
}], null, { title: [{
|
|
125
120
|
type: Input
|
|
126
121
|
}], isTitleVisible: [{
|
|
127
122
|
type: Input
|
|
128
|
-
}], class: [{
|
|
129
|
-
type: Input
|
|
130
|
-
}], watchedControlName: [{
|
|
131
|
-
type: Input
|
|
132
123
|
}], urlPrefix: [{
|
|
133
124
|
type: Input
|
|
134
125
|
}], isGoButtonVisible: [{
|
|
135
126
|
type: Input
|
|
136
|
-
}],
|
|
127
|
+
}], controlName: [{
|
|
137
128
|
type: Input
|
|
138
|
-
}],
|
|
129
|
+
}], watchedControlName: [{
|
|
139
130
|
type: Input
|
|
140
131
|
}], generating: [{
|
|
141
132
|
type: Output
|
|
142
133
|
}] }); })();
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsc2x1Zy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvZm9ybXMvY29tcG9uZW50cy91cmxzbHVnL3VybHNsdWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL3VpL2Zvcm1zL2NvbXBvbmVudHMvdXJsc2x1Zy91cmxzbHVnLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRTFGLEtBQUs7QUFDTCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUN2RixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7SUNYekMsZ0NBQXFEO0lBQ25ELFlBQ0E7SUFBQSwrQkFBd0I7SUFBQSxZQUFlO0lBQUEsaUJBQU8sRUFBQTs7O0lBRDlDLGVBQ0E7SUFEQSw2Q0FDQTtJQUF3QixlQUFlO0lBQWYsc0NBQWU7OztJQVMzQyw4QkFBZ0UsWUFBQTtJQUNZLGtCQUFFO0lBQUEsaUJBQUksRUFBQTs7O0lBQTdFLGVBQThCO0lBQTlCLGdHQUE4Qjs7O0FES3ZDLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxpQkFBaUI7SUFDckQsVUFBVSxHQUFZLElBQUksQ0FBQztJQUMzQixNQUFNLENBQVM7SUFFZixRQUFRO0lBQ0MsS0FBSyxHQUFXLFlBQVksQ0FBQztJQUM3QixjQUFjLEdBQUcsSUFBSSxDQUFDO0lBRXRCLFNBQVMsQ0FBUztJQUNsQixpQkFBaUIsR0FBRyxJQUFJLENBQUM7SUFFbEMsWUFBWTtJQUNILFdBQVcsQ0FBUztJQUNwQixrQkFBa0IsQ0FBUztJQUVwQyxTQUFTO0lBQ0MsVUFBVSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBRTdELFFBQVE7UUFDTixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVPLGVBQWUsQ0FBQyxJQUFJO1FBQzFCLElBQUksVUFBVSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDckMsSUFBSSxLQUFLLEdBQUcsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLENBQUM7UUFFcEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU8sYUFBYTtRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDO1lBQ2xGLElBQUksRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUNkLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtvQkFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7b0JBQ3hCLE9BQU87aUJBQ1I7Z0JBRUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM5QixDQUFDO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUM7WUFDM0UsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7WUFDdEIsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO0lBQ1IsZUFBZTtRQUNiLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQztrT0FyRFUsZ0JBQWdCLFNBQWhCLGdCQUFnQjs2REFBaEIsZ0JBQWdCO1lDM0I3Qiw4QkFDNkMsYUFBQTtZQUV6QyxxREFJa0M7WUFFbEMsOEJBQXdCO1lBQ3RCLHFFQUdRO1lBQ1IsZ0NBSXdDO1lBQWpDLGtHQUFZLHFCQUFpQixJQUFDO1lBSnJDLGlCQUl3QyxFQUFBO1lBRzFDLGlFQUVNO1lBQ1IsaUJBQU0sRUFBQTs7WUF2Qk4sbUVBQTBDO1lBRHZDLHlDQUF1QiwrRUFBQTtZQUl0QixlQUF1QjtZQUF2Qix5Q0FBdUIsb0NBQUEsb0NBQUE7WUFNZixlQUFvQjtZQUFwQix5Q0FBb0I7WUFPckIsZUFBK0I7WUFBL0IsaURBQStCO1lBSUQsZUFBdUI7WUFBdkIsNENBQXVCOzs7dUZETXJELGdCQUFnQjtjQUo1QixTQUFTOzJCQUNFLHVCQUF1QjtnQkFReEIsS0FBSztrQkFBYixLQUFLO1lBQ0csY0FBYztrQkFBdEIsS0FBSztZQUVHLFNBQVM7a0JBQWpCLEtBQUs7WUFDRyxpQkFBaUI7a0JBQXpCLEtBQUs7WUFHRyxXQUFXO2tCQUFuQixLQUFLO1lBQ0csa0JBQWtCO2tCQUExQixLQUFLO1lBR0ksVUFBVTtrQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW1Ab3Nvdml0bnkuY29tXHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55IGFuYXRvbHlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAwMiBBdWcgMjAyMlxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTctMjAyMiBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IEVkaXRDb21wb25lbnRCYXNlIH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9iYXNlL2NvbXBvbmVudHMvZWRpdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVdGlscyB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvdXRpbHMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhbmF0b2x5LWZvcm1zLXVybHNsdWcnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi91cmxzbHVnLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVXJsU2x1Z0NvbXBvbmVudCBleHRlbmRzIEVkaXRDb21wb25lbnRCYXNlIGltcGxlbWVudHMgT25Jbml0IHtcclxuICBmaXJzdFZhbHVlOiBib29sZWFuID0gdHJ1ZTtcclxuICBocmVmR286IHN0cmluZztcclxuXHJcbiAgLy9JbnB1dHNcclxuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nID0gJ1Blcm1hbGluazonO1xyXG4gIEBJbnB1dCgpIGlzVGl0bGVWaXNpYmxlID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KCkgdXJsUHJlZml4OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaXNHb0J1dHRvblZpc2libGUgPSB0cnVlO1xyXG5cclxuICAvL1ZhbGlkYXRpb25cclxuICBASW5wdXQoKSBjb250cm9sTmFtZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHdhdGNoZWRDb250cm9sTmFtZTogc3RyaW5nO1xyXG5cclxuICAvL091dHB1dHNcclxuICBAT3V0cHV0KCkgZ2VuZXJhdGluZzogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5zdGFydFdhdGNoaW5nKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdlbmVyYXRlVXJsU2x1Zyh0ZXh0KSB7XHJcbiAgICBsZXQgc2x1Z2VkVGV4dCA9IFV0aWxzLnNsdWdpZnkodGV4dCk7XHJcbiAgICBsZXQgZXZlbnQgPSB7IHVybFNsdWc6IHNsdWdlZFRleHQgfTtcclxuXHJcbiAgICB0aGlzLmdlbmVyYXRpbmcuZW1pdChldmVudCk7XHJcbiAgICB0aGlzLnNldEZvcm1WYWx1ZSh0aGlzLmNvbnRyb2xOYW1lLCAgZXZlbnQudXJsU2x1Zyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0YXJ0V2F0Y2hpbmcoKSB7XHJcbiAgICB0aGlzLnN1YnMuc2luayA9IHRoaXMuZm9ybUdyb3VwLmdldCh0aGlzLndhdGNoZWRDb250cm9sTmFtZSkudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6ICh2YWx1ZSkgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLmZpcnN0VmFsdWUpIHtcclxuICAgICAgICAgIHRoaXMuZmlyc3RWYWx1ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5nZW5lcmF0ZVVybFNsdWcodmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLnN1YnMuc2luayA9IHRoaXMuZm9ybUdyb3VwLmdldCh0aGlzLmNvbnRyb2xOYW1lKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHZhbHVlKSA9PiB7XHJcbiAgICAgICAgdGhpcy5ocmVmR28gPSB2YWx1ZTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvL0V2ZW50c1xyXG4gIG9uVXJsU2x1Z0NoYW5nZSgpe1xyXG4gICAgbGV0IHRleHQgPSB0aGlzLmdldEZvcm1WYWx1ZSh0aGlzLmNvbnRyb2xOYW1lKTtcclxuICAgIHRoaXMuZ2VuZXJhdGVVcmxTbHVnKHRleHQpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IFtmb3JtR3JvdXBdPSdmb3JtR3JvdXAnIFtuZ0NsYXNzXT1cInsnaGFzLWVycm9yJzogaXNDb250cm9sSW52YWxpZChjb250cm9sTmFtZSl9XCJcclxuICBjbGFzcz1cInBlcm1hbGluayBmb3JtLWdyb3VwIHt7IGNsYXNzZXMgfX1cIj5cclxuICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWVuZFwiPlxyXG4gICAgPGFuYXRvbHktaXRlbS12YWxpZGF0aW9uLXN1bW1hcnlcclxuICAgICAgW2Zvcm1Hcm91cF09J2Zvcm1Hcm91cCdcclxuICAgICAgW2Zvcm1TdWJtaXR0ZWRdPSdmb3JtU3VibWl0dGVkJ1xyXG4gICAgICBbZm9ybUNvbnRyb2xOYW1lXT0nY29udHJvbE5hbWUnPlxyXG4gICAgPC9hbmF0b2x5LWl0ZW0tdmFsaWRhdGlvbi1zdW1tYXJ5PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XHJcbiAgICAgIDxsYWJlbCAqbmdJZj0naXNUaXRsZVZpc2libGUnIGNsYXNzPSdjb2wtZm9ybS1sYWJlbCc+XHJcbiAgICAgICAge3sgdGl0bGUgfX1cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInVybFByZWZpeFwiPnt7IHVybFByZWZpeCB9fTwvc3Bhbj5cclxuICAgICAgPC9sYWJlbD5cclxuICAgICAgPGlucHV0IHR5cGU9J3RleHQnXHJcbiAgICAgICAgICAgICBjbGFzcz0nZm9ybS1jb250cm9sJ1xyXG4gICAgICAgICAgICAgcGxhY2Vob2xkZXI9J1R5cGUgdXJsIHNsdWcgaGVyZSdcclxuICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPSdjb250cm9sTmFtZSdcclxuICAgICAgICAgICAgIChmb2N1c291dCk9J29uVXJsU2x1Z0NoYW5nZSgpJyAvPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAgZmxleC1zaHJpbmstMVwiICpuZ0lmPVwiaXNHb0J1dHRvblZpc2libGVcIj5cclxuICAgICAgPGEgaHJlZj1cInt7dXJsUHJlZml4fX17e2hyZWZHb319XCIgdGFyZ2V0PVwiX2JsYW5rXCIgY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIj5HbzwvYT5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -35,24 +35,21 @@ function ItemValidationSummaryComponent_ul_0_Template(rf, ctx) { if (rf & 1) {
|
|
|
35
35
|
} if (rf & 2) {
|
|
36
36
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
37
37
|
i0.ɵɵadvance(1);
|
|
38
|
-
i0.ɵɵproperty("ngForOf", ctx_r0.getValidationMessages(ctx_r0.formGroup.get(ctx_r0.
|
|
38
|
+
i0.ɵɵproperty("ngForOf", ctx_r0.getValidationMessages(ctx_r0.formGroup.get(ctx_r0.controlName)));
|
|
39
39
|
} }
|
|
40
40
|
export class ItemValidationSummaryComponent extends ValidationSummaryComponent {
|
|
41
|
-
|
|
42
|
-
formControlTitle;
|
|
41
|
+
controlName;
|
|
43
42
|
static ɵfac = /*@__PURE__*/ function () { let ɵItemValidationSummaryComponent_BaseFactory; return function ItemValidationSummaryComponent_Factory(t) { return (ɵItemValidationSummaryComponent_BaseFactory || (ɵItemValidationSummaryComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ItemValidationSummaryComponent)))(t || ItemValidationSummaryComponent); }; }();
|
|
44
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ItemValidationSummaryComponent, selectors: [["anatoly-item-validation-summary"]], inputs: {
|
|
43
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ItemValidationSummaryComponent, selectors: [["anatoly-item-validation-summary"]], inputs: { controlName: "controlName" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 1, vars: 1, consts: [["class", "list-unstyled", 4, "ngIf"], [1, "list-unstyled"], [4, "ngFor", "ngForOf"], [1, "help-block"]], template: function ItemValidationSummaryComponent_Template(rf, ctx) { if (rf & 1) {
|
|
45
44
|
i0.ɵɵtemplate(0, ItemValidationSummaryComponent_ul_0_Template, 2, 1, "ul", 0);
|
|
46
45
|
} if (rf & 2) {
|
|
47
|
-
i0.ɵɵproperty("ngIf", ctx.isControlInvalid(ctx.
|
|
46
|
+
i0.ɵɵproperty("ngIf", ctx.isControlInvalid(ctx.controlName));
|
|
48
47
|
} }, dependencies: [i1.NgForOf, i1.NgIf], encapsulation: 2 });
|
|
49
48
|
}
|
|
50
49
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ItemValidationSummaryComponent, [{
|
|
51
50
|
type: Component,
|
|
52
|
-
args: [{ selector: "anatoly-item-validation-summary", template: "<ul class=\"list-unstyled\" *ngIf=\"isControlInvalid(
|
|
53
|
-
}], null, {
|
|
54
|
-
type: Input
|
|
55
|
-
}], formControlTitle: [{
|
|
51
|
+
args: [{ selector: "anatoly-item-validation-summary", template: "<ul class=\"list-unstyled\" *ngIf=\"isControlInvalid(controlName)\">\r\n <li *ngFor=\"let error of getValidationMessages(formGroup.get(controlName))\">\r\n <span class=\"help-block\">{{ error }}</span>\r\n </li>\r\n</ul>\r\n\r\n" }]
|
|
52
|
+
}], null, { controlName: [{
|
|
56
53
|
type: Input
|
|
57
54
|
}] }); })();
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS12YWxpZGF0aW9uLXN1bW1hcnkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL3VpL3ZhbGlkYXRpb24vaXRlbS12YWxpZGF0aW9uLXN1bW1hcnkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL3VpL3ZhbGlkYXRpb24vaXRlbS12YWxpZGF0aW9uLXN1bW1hcnkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsS0FBSztBQUNMLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7O0lDbkIxRSwwQkFBNEUsY0FBQTtJQUNqRCxZQUFXO0lBQUEsaUJBQU8sRUFBQTs7O0lBQWxCLGVBQVc7SUFBWCw4QkFBVzs7O0lBRnhDLDZCQUFnRTtJQUM5RCxrRkFFSztJQUNQLGlCQUFLOzs7SUFIbUIsZUFBb0Q7SUFBcEQsZ0dBQW9EOztBRHlCNUUsTUFBTSxPQUFPLDhCQUErQixTQUFRLDBCQUEwQjtJQUNuRSxXQUFXLENBQVM7MFJBRGxCLDhCQUE4QixTQUE5Qiw4QkFBOEI7NkRBQTlCLDhCQUE4QjtZQzFCM0MsNkVBSUs7O1lBSnNCLDREQUFtQzs7O3VGRDBCakQsOEJBQThCO2NBSjFDLFNBQVM7MkJBQ0UsaUNBQWlDO2dCQUlsQyxXQUFXO2tCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDYgRGVjIDIwMTdcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBWYWxpZGF0aW9uU3VtbWFyeUNvbXBvbmVudCB9IGZyb20gXCIuL3ZhbGlkYXRpb24tc3VtbWFyeS5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImFuYXRvbHktaXRlbS12YWxpZGF0aW9uLXN1bW1hcnlcIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL2l0ZW0tdmFsaWRhdGlvbi1zdW1tYXJ5LmNvbXBvbmVudC5odG1sXCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJdGVtVmFsaWRhdGlvblN1bW1hcnlDb21wb25lbnQgZXh0ZW5kcyBWYWxpZGF0aW9uU3VtbWFyeUNvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgY29udHJvbE5hbWU6IHN0cmluZztcclxufVxyXG4iLCI8dWwgY2xhc3M9XCJsaXN0LXVuc3R5bGVkXCIgKm5nSWY9XCJpc0NvbnRyb2xJbnZhbGlkKGNvbnRyb2xOYW1lKVwiPlxyXG4gIDxsaSAqbmdGb3I9XCJsZXQgZXJyb3Igb2YgZ2V0VmFsaWRhdGlvbk1lc3NhZ2VzKGZvcm1Hcm91cC5nZXQoY29udHJvbE5hbWUpKVwiPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJoZWxwLWJsb2NrXCI+e3sgZXJyb3IgfX08L3NwYW4+XHJcbiAgPC9saT5cclxuPC91bD5cclxuXHJcbiJdfQ==
|
|
@@ -22,6 +22,39 @@ export class ValidationSummaryComponent extends EditComponentBase {
|
|
|
22
22
|
constructor() {
|
|
23
23
|
super();
|
|
24
24
|
}
|
|
25
|
+
getControlTitle(control, name) {
|
|
26
|
+
if (control?.nativeElement) {
|
|
27
|
+
let value = this.getTitleAttribute(control.nativeElement);
|
|
28
|
+
return value ? value : name;
|
|
29
|
+
}
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
getTitleAttribute(nativeElement) {
|
|
33
|
+
let title;
|
|
34
|
+
let element;
|
|
35
|
+
let tagName = nativeElement.tagName;
|
|
36
|
+
switch (tagName) {
|
|
37
|
+
// For Kendo time and date picker element title is assigned to the 4th child control.
|
|
38
|
+
case "KENDO-TIMEPICKER":
|
|
39
|
+
case "KENDO-DATEPICKER":
|
|
40
|
+
element = nativeElement.children[0]?.children[0]?.children[0]?.children[0];
|
|
41
|
+
break;
|
|
42
|
+
// For Kendo numaric element title is assigned to the 2nd child control.
|
|
43
|
+
case "KENDO-NUMERICTEXTBOX":
|
|
44
|
+
element = nativeElement.children[0]?.children[0];
|
|
45
|
+
break;
|
|
46
|
+
default:
|
|
47
|
+
element = nativeElement;
|
|
48
|
+
break;
|
|
49
|
+
}
|
|
50
|
+
if (element) {
|
|
51
|
+
title = element.getAttribute("formControlTitle");
|
|
52
|
+
if (!title) {
|
|
53
|
+
title = element.getAttribute("title");
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return title;
|
|
57
|
+
}
|
|
25
58
|
getFormValidationMessages() {
|
|
26
59
|
let messages = [];
|
|
27
60
|
Object.keys(this.formGroup.controls).forEach((k) => {
|
|
@@ -29,18 +62,27 @@ export class ValidationSummaryComponent extends EditComponentBase {
|
|
|
29
62
|
if (control.controls != null) {
|
|
30
63
|
Object.keys(control.controls).forEach((k) => {
|
|
31
64
|
var child = control.controls[k];
|
|
32
|
-
this.getValidationMessages(child, this.
|
|
65
|
+
this.getValidationMessages(child, this.getControlTitle(child, k)).forEach((m) => messages.push(m));
|
|
33
66
|
});
|
|
34
67
|
}
|
|
35
68
|
else {
|
|
36
|
-
this.getValidationMessages(control, this.
|
|
69
|
+
this.getValidationMessages(control, this.getControlTitle(control, k)).forEach((m) => messages.push(m));
|
|
37
70
|
}
|
|
38
71
|
});
|
|
39
72
|
return messages;
|
|
40
73
|
}
|
|
41
|
-
getValidationMessages(state,
|
|
42
|
-
let thing = state.path || thingName;
|
|
74
|
+
getValidationMessages(state, title) {
|
|
43
75
|
let messages = [];
|
|
76
|
+
let thing;
|
|
77
|
+
if (title) {
|
|
78
|
+
thing = title;
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
thing = this.getControlTitle(state, null);
|
|
82
|
+
if (!thing) {
|
|
83
|
+
thing = state.path;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
44
86
|
if (state.errors) {
|
|
45
87
|
for (let errorName in state.errors) {
|
|
46
88
|
if (state.errors.hasOwnProperty(errorName)) {
|
|
@@ -69,48 +111,6 @@ export class ValidationSummaryComponent extends EditComponentBase {
|
|
|
69
111
|
}
|
|
70
112
|
return messages;
|
|
71
113
|
}
|
|
72
|
-
/**
|
|
73
|
-
* Get Control Name
|
|
74
|
-
* @param control
|
|
75
|
-
* @param thingName
|
|
76
|
-
*/
|
|
77
|
-
getControlName(control, thingName) {
|
|
78
|
-
let value = this.getControlTitle(control);
|
|
79
|
-
return value ? value : thingName;
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Retrieve tilte of control
|
|
83
|
-
* @param control
|
|
84
|
-
*/
|
|
85
|
-
getControlTitle(control) {
|
|
86
|
-
if (control?.nativeElement) {
|
|
87
|
-
let controlTitle = this.getTitleAttribute(control.nativeElement);
|
|
88
|
-
return controlTitle;
|
|
89
|
-
}
|
|
90
|
-
return undefined;
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Return title attribute of form control
|
|
94
|
-
*/
|
|
95
|
-
getTitleAttribute(nativeElement) {
|
|
96
|
-
let title;
|
|
97
|
-
switch (nativeElement.tagName) {
|
|
98
|
-
// For Kendo time and date picker element title is assigned to the 4th child control.
|
|
99
|
-
case "KENDO-TIMEPICKER":
|
|
100
|
-
case "KENDO-DATEPICKER":
|
|
101
|
-
title =
|
|
102
|
-
nativeElement.children[0]?.children[0]?.children[0]?.children[0]?.getAttribute("title");
|
|
103
|
-
break;
|
|
104
|
-
// For Kendo numaric element title is assigned to the 2nd child control.
|
|
105
|
-
case "KENDO-NUMERICTEXTBOX":
|
|
106
|
-
title = nativeElement.children[0]?.children[0]?.getAttribute("title");
|
|
107
|
-
break;
|
|
108
|
-
default:
|
|
109
|
-
title = nativeElement.getAttribute("title");
|
|
110
|
-
break;
|
|
111
|
-
}
|
|
112
|
-
return title;
|
|
113
|
-
}
|
|
114
114
|
static ɵfac = function ValidationSummaryComponent_Factory(t) { return new (t || ValidationSummaryComponent)(); };
|
|
115
115
|
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ValidationSummaryComponent, selectors: [["ng-component"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function ValidationSummaryComponent_Template(rf, ctx) { }, encapsulation: 2 });
|
|
116
116
|
}
|
|
@@ -120,4 +120,4 @@ export class ValidationSummaryComponent extends EditComponentBase {
|
|
|
120
120
|
template: ''
|
|
121
121
|
}]
|
|
122
122
|
}], function () { return []; }, null); })();
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi1zdW1tYXJ5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi91aS92YWxpZGF0aW9uL3ZhbGlkYXRpb24tc3VtbWFyeS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcxQyxLQUFLO0FBQ0wsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOENBQThDLENBQUM7O0FBS2pGLE1BQU0sT0FBZ0IsMEJBQTJCLFNBQVEsaUJBQWlCO0lBQ3hFO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQseUJBQXlCO1FBQ3ZCLElBQUksUUFBUSxHQUFhLEVBQUUsQ0FBQztRQUU1QixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDakQsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFekMsSUFBZ0IsT0FBUSxDQUFDLFFBQVEsSUFBSSxJQUFJLEVBQUU7Z0JBQ3pDLE1BQU0sQ0FBQyxJQUFJLENBQWEsT0FBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO29CQUN2RCxJQUFJLEtBQUssR0FBZSxPQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO29CQUM3QyxJQUFJLENBQUMscUJBQXFCLENBQ3hCLEtBQUssRUFDTCxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FDOUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxD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RUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUM1RSxPQUFPLENBQ1IsQ0FBQztnQkFDSixNQUFNO1lBRVIsd0VBQXdFO1lBQ3hFLEtBQUssc0JBQXNCO2dCQUN6QixLQUFLLEdBQUcsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUN0RSxNQUFNO1lBRVI7Z0JBQ0UsS0FBSyxHQUFHLGFBQWEsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7Z0JBQzVDLE1BQU07U0FDVDtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztvRkE1SG1CLDBCQUEwQjs2REFBMUIsMEJBQTBCOzt1RkFBMUIsMEJBQTBCO2NBSC9DLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsRUFBRTthQUNiIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDggRGVjIDIwMTdcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBFZGl0Q29tcG9uZW50QmFzZSB9IGZyb20gXCIuLi9jb21wb25lbnRzL2Jhc2UvY29tcG9uZW50cy9lZGl0LmNvbXBvbmVudFwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGU6ICcnXHJcbn0pXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBWYWxpZGF0aW9uU3VtbWFyeUNvbXBvbmVudCBleHRlbmRzIEVkaXRDb21wb25lbnRCYXNlIHtcclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBnZXRGb3JtVmFsaWRhdGlvbk1lc3NhZ2VzKCk6IHN0cmluZ1tdIHtcclxuICAgIGxldCBtZXNzYWdlczogc3RyaW5nW10gPSBbXTtcclxuXHJcbiAgICBPYmplY3Qua2V5cyh0aGlzLmZvcm1Hcm91cC5jb250cm9scykuZm9yRWFjaCgoaykgPT4ge1xyXG4gICAgICB2YXIgY29udHJvbCA9IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzW2tdO1xyXG5cclxuICAgICAgaWYgKCg8Rm9ybUdyb3VwPmNvbnRyb2wpLmNvbnRyb2xzICE9IG51bGwpIHtcclxuICAgICAgICBPYmplY3Qua2V5cygoPEZvcm1Hcm91cD5jb250cm9sKS5jb250cm9scykuZm9yRWFjaCgoaykgPT4ge1xyXG4gICAgICAgICAgdmFyIGNoaWxkID0gKDxGb3JtR3JvdXA+Y29udHJvbCkuY29udHJvbHNba107XHJcbiAgICAgICAgICB0aGlzLmdldFZhbGlkYXRpb25NZXNzYWdlcyhcclxuICAgICAgICAgICAgY2hpbGQsXHJcbiAgICAgICAgICAgIHRoaXMuZ2V0Q29udHJvbE5hbWUoY2hpbGQsIGspXHJcbiAgICAgICAgICApLmZvckVhY2goKG0pID0+IG1lc3NhZ2VzLnB1c2gobSkpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZ2V0VmFsaWRhdGlvbk1lc3NhZ2VzKFxyXG4gICAgICAgICAgY29udHJvbCxcclxuICAgICAgICAgIHRoaXMuZ2V0Q29udHJvbE5hbWUoY29udHJvbCwgaylcclxuICAgICAgICApLmZvckVhY2goKG0pID0+IG1lc3NhZ2VzLnB1c2gobSkpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gbWVzc2FnZXM7XHJcbiAgfVxyXG5cclxuICBnZXRWYWxpZGF0aW9uTWVzc2FnZXMoc3RhdGU6IGFueSwgdGhpbmdOYW1lPzogc3RyaW5nKSB7XHJcbiAgICBsZXQgdGhpbmc6IHN0cmluZyA9IHN0YXRlLnBhdGggfHwgdGhpbmdOYW1lO1xyXG4gICAgbGV0IG1lc3NhZ2VzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAgIGlmIChzdGF0ZS5lcnJvcnMpIHtcclxuICAgICAgZm9yIChsZXQgZXJyb3JOYW1lIGluIHN0YXRlLmVycm9ycykge1xyXG4gICAgICAgIGlmIChzdGF0ZS5lcnJvcnMuaGFzT3duUHJvcGVydHkoZXJyb3JOYW1lKSkge1xyXG4gICAgICAgICAgc3dpdGNoIChlcnJvck5hbWUpIHtcclxuICAgICAgICAgICAgY2FzZSBcInJlcXVpcmVkXCI6XHJcbiAgICAgICAgICAgICAgbWVzc2FnZXMucHVzaChgJHt0aGluZ30gaXMgcmVxdWlyZWRgKTtcclxuICAgICAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgICAgIGNhc2UgXCJtaW5sZW5ndGhcIjpcclxuICAgICAgICAgICAgICBtZXNzYWdlcy5wdXNoKFxyXG4gICAgICAgICAgICAgICAgYCR7dGhpbmd9IG11c3QgYmUgYXQgbGVhc3QgJHtzdGF0ZS5lcnJvcnNbXCJtaW5sZW5ndGhcIl0ucmVxdWlyZWRMZW5ndGh9IGNoYXJhY3RlcnNgXHJcbiAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgICAgIGNhc2UgXCJwYXR0ZXJuXCI6XHJcbiAgICAgICAgICAgICAgbWVzc2FnZXMucHVzaChgJHt0aGluZ30gY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXJzYCk7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgICAgICBjYXNlIFwiZm9ybWF0XCI6XHJcbiAgICAgICAgICAgICAgbWVzc2FnZXMucHVzaChgJHt0aGluZ30gZm9ybWF0IG1pc21hdGNoYCk7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgICAgICBjYXNlIFwibWF4bGVuZ3RoXCI6XHJcbiAgICAgICAgICAgICAgbWVzc2FnZXMucHVzaChcclxuICAgICAgICAgICAgICAgIGAke3RoaW5nfSBtdXN0IGhhdmUgbWF4aW11bSAke3N0YXRlLmVycm9yc1tcIm1heGxlbmd0aFwiXS5yZXF1aXJlZExlbmd0aH0gY2hhcmFjdGVyc2BcclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICAgICAgY2FzZSBcInNwZWNpYWxjaGFyYWN0ZXJzXCI6XHJcbiAgICAgICAgICAgICAgbWVzc2FnZXMucHVzaChgJHt0aGluZ30gY29udGFpbnMgc3BlY2lhbCBjaGFyYWN0ZXJzYCk7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG1lc3NhZ2VzO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IENvbnRyb2wgTmFtZVxyXG4gICAqIEBwYXJhbSBjb250cm9sXHJcbiAgICogQHBhcmFtIHRoaW5nTmFtZVxyXG4gICAqL1xyXG4gIGdldENvbnRyb2xOYW1lKGNvbnRyb2w6IGFueSwgdGhpbmdOYW1lPzogc3RyaW5nKSB7XHJcbiAgICBsZXQgdmFsdWUgPSB0aGlzLmdldENvbnRyb2xUaXRsZShjb250cm9sKTtcclxuICAgIHJldHVybiB2YWx1ZSA/IHZhbHVlIDogdGhpbmdOYW1lO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0cmlldmUgdGlsdGUgb2YgY29udHJvbFxyXG4gICAqIEBwYXJhbSBjb250cm9sXHJcbiAgICovXHJcbiAgZ2V0Q29udHJvbFRpdGxlKGNvbnRyb2w6IGFueSk6IHN0cmluZyB7XHJcbiAgICBpZiAoY29udHJvbD8ubmF0aXZlRWxlbWVudCkge1xyXG4gICAgICBsZXQgY29udHJvbFRpdGxlID0gdGhpcy5nZXRUaXRsZUF0dHJpYnV0ZShjb250cm9sLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgICByZXR1cm4gY29udHJvbFRpdGxlO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXR1cm4gdGl0bGUgYXR0cmlidXRlIG9mIGZvcm0gY29udHJvbFxyXG4gICAqL1xyXG4gIGdldFRpdGxlQXR0cmlidXRlKG5hdGl2ZUVsZW1lbnQ6IEhUTUxGb3JtRWxlbWVudCk6IHN0cmluZyB7XHJcbiAgICBsZXQgdGl0bGU6IHN0cmluZztcclxuXHJcbiAgICBzd2l0Y2ggKG5hdGl2ZUVsZW1lbnQudGFnTmFtZSkge1xyXG4gICAgICAvLyBGb3IgS2VuZG8gdGltZSBhbmQgZGF0ZSBwaWNrZXIgZWxlbWVudCB0aXRsZSBpcyBhc3NpZ25lZCB0byB0aGUgNHRoIGNoaWxkIGNvbnRyb2wuXHJcbiAgICAgIGNhc2UgXCJLRU5ETy1USU1FUElDS0VSXCI6XHJcbiAgICAgIGNhc2UgXCJLRU5ETy1EQVRFUElDS0VSXCI6XHJcbiAgICAgICAgdGl0bGUgPVxyXG4gICAgICAgICAgbmF0aXZlRWxlbWVudC5jaGlsZHJlblswXT8uY2hpbGRyZW5bMF0/LmNoaWxkcmVuWzBdPy5jaGlsZHJlblswXT8uZ2V0QXR0cmlidXRlKFxyXG4gICAgICAgICAgICBcInRpdGxlXCJcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAvLyBGb3IgS2VuZG8gbnVtYXJpYyBlbGVtZW50IHRpdGxlIGlzIGFzc2lnbmVkIHRvIHRoZSAybmQgY2hpbGQgY29udHJvbC5cclxuICAgICAgY2FzZSBcIktFTkRPLU5VTUVSSUNURVhUQk9YXCI6XHJcbiAgICAgICAgdGl0bGUgPSBuYXRpdmVFbGVtZW50LmNoaWxkcmVuWzBdPy5jaGlsZHJlblswXT8uZ2V0QXR0cmlidXRlKFwidGl0bGVcIik7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHRpdGxlID0gbmF0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoXCJ0aXRsZVwiKTtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGl0bGU7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi1zdW1tYXJ5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi91aS92YWxpZGF0aW9uL3ZhbGlkYXRpb24tc3VtbWFyeS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixNQUFNO0FBQ04sT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcxQyxLQUFLO0FBQ0wsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOENBQThDLENBQUM7O0FBS2pGLE1BQU0sT0FBZ0IsMEJBQTJCLFNBQVEsaUJBQWlCO0lBQ3hFO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRU8sZUFBZSxDQUFDLE9BQU8sRUFBRSxJQUFhO1FBQzVDLElBQUksT0FBTyxFQUFFLGFBQWEsRUFBRTtZQUMxQixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQzFELE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztTQUM3QjtRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxhQUE4QjtRQUN0RCxJQUFJLEtBQWEsQ0FBQztRQUNsQixJQUFJLE9BQU8sQ0FBQztRQUNaLElBQUksT0FBTyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUM7UUFFcEMsUUFBUSxPQUFPLEVBQUU7WUFDZixxRkFBcUY7WUFDckYsS0FBSyxrQkFBa0IsQ0FBQztZQUN4QixLQUFLLGtCQUFrQjtnQkFDckIsT0FBTyxHQUFHLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMs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QyxjQUFjLGFBQWEsQ0FDbkYsQ0FBQzs0QkFDRixNQUFNO3dCQUVSLEtBQUssU0FBUzs0QkFDWixRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyw4QkFBOEIsQ0FBQyxDQUFDOzRCQUN0RCxNQUFNO3dCQUVSLEtBQUssUUFBUTs0QkFDWCxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxrQkFBa0IsQ0FBQyxDQUFDOzRCQUMxQyxNQUFNO3dCQUVSLEtBQUssV0FBVzs0QkFDZCxRQUFRLENBQUMsSUFBSSxDQUNYLEdBQUcsS0FBSyxzQkFBc0IsS0FBSyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxjQUFjLGFBQWEsQ0FDcEYsQ0FBQzs0QkFDRixNQUFNO3dCQUVSLEtBQUssbUJBQW1COzRCQUN0QixRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyw4QkFBOEIsQ0FBQyxDQUFDOzRCQUN0RCxNQUFNO3FCQUNUO2lCQUNGO2FBQ0Y7U0FDRjtRQUVELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7b0ZBNUhtQiwwQkFBMEI7NkRBQTFCLDBCQUEwQjs7dUZBQTFCLDBCQUEwQjtjQUgvQyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLEVBQUU7YUFDYiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW1Ab3Nvdml0bnkuY29tXHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55IGFuYXRvbHlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICA4IERlYyAyMDE3XHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNi0yMDIyIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHsgRWRpdENvbXBvbmVudEJhc2UgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9iYXNlL2NvbXBvbmVudHMvZWRpdC5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlOiAnJ1xyXG59KVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVmFsaWRhdGlvblN1bW1hcnlDb21wb25lbnQgZXh0ZW5kcyBFZGl0Q29tcG9uZW50QmFzZSB7XHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRDb250cm9sVGl0bGUoY29udHJvbCwgbmFtZT86IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAoY29udHJvbD8ubmF0aXZlRWxlbWVudCkge1xyXG4gICAgICBsZXQgdmFsdWUgPSB0aGlzLmdldFRpdGxlQXR0cmlidXRlKGNvbnRyb2wubmF0aXZlRWxlbWVudCk7XHJcbiAgICAgIHJldHVybiB2YWx1ZSA/IHZhbHVlIDogbmFtZTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRUaXRsZUF0dHJpYnV0ZShuYXRpdmVFbGVtZW50OiBIVE1MRm9ybUVsZW1lbnQpOiBzdHJpbmcge1xyXG4gICAgbGV0IHRpdGxlOiBzdHJpbmc7XHJcbiAgICBsZXQgZWxlbWVudDtcclxuICAgIGxldCB0YWdOYW1lID0gbmF0aXZlRWxlbWVudC50YWdOYW1lO1xyXG5cclxuICAgIHN3aXRjaCAodGFnTmFtZSkge1xyXG4gICAgICAvLyBGb3IgS2VuZG8gdGltZSBhbmQgZGF0ZSBwaWNrZXIgZWxlbWVudCB0aXRsZSBpcyBhc3NpZ25lZCB0byB0aGUgNHRoIGNoaWxkIGNvbnRyb2wuXHJcbiAgICAgIGNhc2UgXCJLRU5ETy1USU1FUElDS0VSXCI6XHJcbiAgICAgIGNhc2UgXCJLRU5ETy1EQVRFUElDS0VSXCI6XHJcbiAgICAgICAgZWxlbWVudCA9IG5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF0/LmNoaWxkcmVuWzBdPy5jaGlsZHJlblswXT8uY2hpbGRyZW5bMF07XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAvLyBGb3IgS2VuZG8gbnVtYXJpYyBlbGVtZW50IHRpdGxlIGlzIGFzc2lnbmVkIHRvIHRoZSAybmQgY2hpbGQgY29udHJvbC5cclxuICAgICAgY2FzZSBcIktFTkRPLU5VTUVSSUNURVhUQk9YXCI6XHJcbiAgICAgICAgZWxlbWVudCA9IG5hdGl2ZUVsZW1lbnQuY2hpbGRyZW5bMF0/LmNoaWxkcmVuWzBdO1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICBlbGVtZW50ID0gbmF0aXZlRWxlbWVudDtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuXHJcbiAgICBpZiAoZWxlbWVudCkge1xyXG4gICAgICB0aXRsZSA9IGVsZW1lbnQuZ2V0QXR0cmlidXRlKFwiZm9ybUNvbnRyb2xUaXRsZVwiKTtcclxuICAgICAgaWYgKCF0aXRsZSkge1xyXG4gICAgICAgIHRpdGxlID0gZWxlbWVudC5nZXRBdHRyaWJ1dGUoXCJ0aXRsZVwiKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aXRsZTtcclxuICB9XHJcblxyXG4gIGdldEZvcm1WYWxpZGF0aW9uTWVzc2FnZXMoKTogc3RyaW5nW10ge1xyXG4gICAgbGV0IG1lc3NhZ2VzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAgIE9iamVjdC5rZXlzKHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzKS5mb3JFYWNoKChrKSA9PiB7XHJcbiAgICAgIHZhciBjb250cm9sID0gdGhpcy5mb3JtR3JvdXAuY29udHJvbHNba107XHJcblxyXG4gICAgICBpZiAoKDxGb3JtR3JvdXA+Y29udHJvbCkuY29udHJvbHMgIT0gbnVsbCkge1xyXG4gICAgICAgIE9iamVjdC5rZXlzKCg8Rm9ybUdyb3VwPmNvbnRyb2wpLmNvbnRyb2xzKS5mb3JFYWNoKChrKSA9PiB7XHJcbiAgICAgICAgICB2YXIgY2hpbGQgPSAoPEZvcm1Hcm91cD5jb250cm9sKS5jb250cm9sc1trXTtcclxuICAgICAgICAgIHRoaXMuZ2V0VmFsaWRhdGlvbk1lc3NhZ2VzKFxyXG4gICAgICAgICAgICBjaGlsZCxcclxuICAgICAgICAgICAgdGhpcy5nZXRDb250cm9sVGl0bGUoY2hpbGQsIGspXHJcbiAgICAgICAgICApLmZvckVhY2goKG0pID0+IG1lc3NhZ2VzLnB1c2gobSkpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZ2V0VmFsaWRhdGlvbk1lc3NhZ2VzKFxyXG4gICAgICAgICAgY29udHJvbCxcclxuICAgICAgICAgIHRoaXMuZ2V0Q29udHJvbFRpdGxlKGNvbnRyb2wsIGspXHJcbiAgICAgICAgKS5mb3JFYWNoKChtKSA9PiBtZXNzYWdlcy5wdXNoKG0pKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIG1lc3NhZ2VzO1xyXG4gIH1cclxuXHJcbiAgZ2V0VmFsaWRhdGlvbk1lc3NhZ2VzKHN0YXRlOiBhbnksIHRpdGxlPzogc3RyaW5nKSB7XHJcbiAgICBsZXQgbWVzc2FnZXM6IHN0cmluZ1tdID0gW107XHJcbiAgICBsZXQgdGhpbmc7XHJcblxyXG4gICAgaWYgKHRpdGxlKSB7XHJcbiAgICAgIHRoaW5nID0gdGl0bGU7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpbmcgPSB0aGlzLmdldENvbnRyb2xUaXRsZShzdGF0ZSwgbnVsbCk7XHJcblxyXG4gICAgICBpZiAoIXRoaW5nKXtcclxuICAgICAgICB0aGluZz0gc3RhdGUucGF0aDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChzdGF0ZS5lcnJvcnMpIHtcclxuICAgICAgZm9yIChsZXQgZXJyb3JOYW1lIGluIHN0YXRlLmVycm9ycykge1xyXG4gICAgICAgIGlmIChzdGF0ZS5lcnJvcnMuaGFzT3duUHJvcGVydHkoZXJyb3JOYW1lKSkge1xyXG4gICAgICAgICAgc3dpdGNoIChlcnJvck5hbWUpIHtcclxuICAgICAgICAgICAgY2FzZSBcInJlcXVpcmVkXCI6XHJcbiAgICAgICAgICAgICAgbWVzc2FnZXMucHVzaChgJHt0aGluZ30gaXMgcmVxdWlyZWRgKTtcclxuICAgICAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgICAgIGNhc2UgXCJtaW5sZW5ndGhcIjpcclxuICAgICAgICAgICAgICBtZXNzYWdlcy5wdXNoKFxyXG4gICAgICAgICAgICAgICAgYCR7dGhpbmd9IG11c3QgYmUgYXQgbGVhc3QgJHtzdGF0ZS5lcnJvcnNbXCJtaW5sZW5ndGhcIl0ucmVxdWlyZWRMZW5ndGh9IGNoYXJhY3RlcnNgXHJcbiAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgICAgIGNhc2UgXCJwYXR0ZXJuXCI6XHJcbiAgICAgICAgICAgICAgbWVzc2FnZXMucHVzaChgJHt0aGluZ30gY29udGFpbnMgaWxsZWdhbCBjaGFyYWN0ZXJzYCk7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgICAgICBjYXNlIFwiZm9ybWF0XCI6XHJcbiAgICAgICAgICAgICAgbWVzc2FnZXMucHVzaChgJHt0aGluZ30gZm9ybWF0IG1pc21hdGNoYCk7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAgICAgICBjYXNlIFwibWF4bGVuZ3RoXCI6XHJcbiAgICAgICAgICAgICAgbWVzc2FnZXMucHVzaChcclxuICAgICAgICAgICAgICAgIGAke3RoaW5nfSBtdXN0IGhhdmUgbWF4aW11bSAke3N0YXRlLmVycm9yc1tcIm1heGxlbmd0aFwiXS5yZXF1aXJlZExlbmd0aH0gY2hhcmFjdGVyc2BcclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICAgICAgY2FzZSBcInNwZWNpYWxjaGFyYWN0ZXJzXCI6XHJcbiAgICAgICAgICAgICAgbWVzc2FnZXMucHVzaChgJHt0aGluZ30gY29udGFpbnMgc3BlY2lhbCBjaGFyYWN0ZXJzYCk7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG1lc3NhZ2VzO1xyXG4gIH1cclxufVxyXG4iXX0=
|