@osovitny/anatoly 3.17.99 → 3.17.100

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.
@@ -23,6 +23,7 @@ import * as i2 from "@angular/forms";
23
23
  import * as i3 from "@progress/kendo-angular-dropdowns";
24
24
  import * as i4 from "@progress/kendo-angular-label";
25
25
  import * as i5 from "../../../directives/native-element.directive";
26
+ import * as i6 from "../../../validation/item-validation-summary.component";
26
27
  function ModerationStatusDropdownlist_div_0_kendo_label_2_Template(rf, ctx) { if (rf & 1) {
27
28
  i0.ɵɵelement(0, "kendo-label", 5);
28
29
  } if (rf & 2) {
@@ -52,7 +53,7 @@ function ModerationStatusDropdownlist_div_1_kendo_label_1_Template(rf, ctx) { if
52
53
  function ModerationStatusDropdownlist_div_1_Template(rf, ctx) { if (rf & 1) {
53
54
  i0.ɵɵelementStart(0, "div", 1);
54
55
  i0.ɵɵtemplate(1, ModerationStatusDropdownlist_div_1_kendo_label_1_Template, 1, 1, "kendo-label", 3);
55
- i0.ɵɵelement(2, "kendo-dropdownlist", 6);
56
+ i0.ɵɵelement(2, "kendo-dropdownlist", 6)(3, "anatoly-item-validation-summary", 7);
56
57
  i0.ɵɵelementEnd();
57
58
  } if (rf & 2) {
58
59
  const ctx_r1 = i0.ɵɵnextContext();
@@ -60,6 +61,8 @@ function ModerationStatusDropdownlist_div_1_Template(rf, ctx) { if (rf & 1) {
60
61
  i0.ɵɵproperty("ngIf", ctx_r1.isTitleVisible);
61
62
  i0.ɵɵadvance();
62
63
  i0.ɵɵproperty("data", ctx_r1.items)("valuePrimitive", true)("formControlName", ctx_r1.controlName);
64
+ i0.ɵɵadvance();
65
+ i0.ɵɵproperty("formGroup", ctx_r1.formGroup)("formSubmitted", ctx_r1.formSubmitted)("controlName", ctx_r1.controlName);
63
66
  } }
64
67
  export class ModerationStatusDropdownlist extends EnumEditComponentBase {
65
68
  constructor() {
@@ -68,17 +71,17 @@ export class ModerationStatusDropdownlist extends EnumEditComponentBase {
68
71
  this.enumeration = ModerationStatus;
69
72
  }
70
73
  static { this.ɵfac = function ModerationStatusDropdownlist_Factory(t) { return new (t || ModerationStatusDropdownlist)(); }; }
71
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ModerationStatusDropdownlist, selectors: [["anatoly-moderationstatus-dropdownlist"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 2, consts: [["class", "form-group", 4, "ngIf"], [1, "form-group"], [1, "controls"], [3, "text", 4, "ngIf"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "ngModel", "ngModelChange", "valueChange"], [3, "text"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "formControlName"]], template: function ModerationStatusDropdownlist_Template(rf, ctx) { if (rf & 1) {
72
- i0.ɵɵtemplate(0, ModerationStatusDropdownlist_div_0_Template, 4, 4, "div", 0)(1, ModerationStatusDropdownlist_div_1_Template, 3, 4, "div", 0);
74
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ModerationStatusDropdownlist, selectors: [["anatoly-moderationstatus-dropdownlist"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 2, consts: [["class", "form-group", 4, "ngIf"], [1, "form-group"], [1, "controls"], [3, "text", 4, "ngIf"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "ngModel", "ngModelChange", "valueChange"], [3, "text"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "formControlName"], [3, "formGroup", "formSubmitted", "controlName"]], template: function ModerationStatusDropdownlist_Template(rf, ctx) { if (rf & 1) {
75
+ i0.ɵɵtemplate(0, ModerationStatusDropdownlist_div_0_Template, 4, 4, "div", 0)(1, ModerationStatusDropdownlist_div_1_Template, 4, 7, "div", 0);
73
76
  } if (rf & 2) {
74
77
  i0.ɵɵproperty("ngIf", ctx.isNgModelBased);
75
78
  i0.ɵɵadvance();
76
79
  i0.ɵɵproperty("ngIf", !ctx.isNgModelBased);
77
- } }, dependencies: [i1.NgIf, i2.NgControlStatus, i2.FormControlName, i2.NgModel, i3.DropDownListComponent, i4.LabelComponent, i5.NativeElementDirective], encapsulation: 2 }); }
80
+ } }, dependencies: [i1.NgIf, i2.NgControlStatus, i2.NgControlStatusGroup, i2.FormGroupDirective, i2.FormControlName, i2.NgModel, i3.DropDownListComponent, i4.LabelComponent, i5.NativeElementDirective, i6.ItemValidationSummaryComponent], encapsulation: 2 }); }
78
81
  }
79
82
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ModerationStatusDropdownlist, [{
80
83
  type: Component,
81
- args: [{ selector: 'anatoly-moderationstatus-dropdownlist', template: "<div class=\"form-group\" *ngIf='isNgModelBased'>\r\n <div class=\"controls\">\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [(ngModel)]=\"sv\"\r\n (valueChange)=\"onChange($event)\" />\r\n </div>\r\n</div>\r\n\r\n<div class=\"form-group\" *ngIf='!isNgModelBased'>\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [formControlName]='controlName' />\r\n</div>\r\n" }]
84
+ args: [{ selector: 'anatoly-moderationstatus-dropdownlist', template: "<div class=\"form-group\" *ngIf='isNgModelBased'>\r\n <div class=\"controls\">\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [(ngModel)]=\"sv\"\r\n (valueChange)=\"onChange($event)\" />\r\n </div>\r\n</div>\r\n\r\n<div class=\"form-group\" *ngIf='!isNgModelBased'>\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [formControlName]='controlName' />\r\n <anatoly-item-validation-summary [formGroup]='formGroup'\r\n [formSubmitted]='formSubmitted'\r\n [controlName]='controlName' />\r\n</div>\r\n" }]
82
85
  }], () => [], null); })();
83
86
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ModerationStatusDropdownlist, { className: "ModerationStatusDropdownlist", filePath: "lib\\ui\\components\\dropdownlists\\moderationstatus\\moderationstatus.dropdownlist.ts", lineNumber: 27 }); })();
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZXJhdGlvbnN0YXR1cy5kcm9wZG93bmxpc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9kcm9wZG93bmxpc3RzL21vZGVyYXRpb25zdGF0dXMvbW9kZXJhdGlvbnN0YXR1cy5kcm9wZG93bmxpc3QudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9kcm9wZG93bmxpc3RzL21vZGVyYXRpb25zdGF0dXMvbW9kZXJhdGlvbnN0YXR1cy5kcm9wZG93bmxpc3QuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7OztFQWFFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEQsS0FBSztBQUNMLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOzs7Ozs7OztJQ2xCOUUsaUNBQXFFOzs7SUFBeEQsOENBQWtCOzs7O0lBRm5DLDhCQUErQyxhQUFBO0lBRTNDLG1HQUFxRTtJQUNyRSw2Q0FJdUQ7SUFEbkMsaVBBQWdCLDBMQUNELGVBQUEsdUJBQWdCLENBQUEsSUFEZjtJQUhwQyxpQkFJdUQsRUFBQSxFQUFBOzs7SUFMdEIsZUFBb0I7SUFBcEIsNENBQW9CO0lBQ2pDLGNBQWM7SUFBZCxtQ0FBYyx3QkFBQSxzQkFBQTs7O0lBU3BDLGlDQUFxRTs7O0lBQXhELDhDQUFrQjs7O0lBRGpDLDhCQUFnRDtJQUM5QyxtR0FBcUU7SUFDckUsd0NBR3NEO0lBQ3hELGlCQUFNOzs7SUFMNkIsY0FBb0I7SUFBcEIsNENBQW9CO0lBQ2pDLGNBQWM7SUFBZCxtQ0FBYyx3QkFBQSx1Q0FBQTs7QURhcEMsTUFBTSxPQUFPLDRCQUE2QixTQUFRLHFCQUFxQjtJQUNyRTtRQUNFLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLEtBQUssR0FBRyxtQkFBbUIsQ0FBQztRQUNqQyxJQUFJLENBQUMsV0FBVyxHQUFHLGdCQUFnQixDQUFDO0lBQ3RDLENBQUM7NkZBTFUsNEJBQTRCO29FQUE1Qiw0QkFBNEI7WUMxQnpDLDZFQVNNLGdFQUFBOztZQVRtQix5Q0FBb0I7WUFXcEIsY0FBcUI7WUFBckIsMENBQXFCOzs7aUZEZWpDLDRCQUE0QjtjQUp4QyxTQUFTOzJCQUNFLHVDQUF1Qzs7a0ZBR3RDLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW0ub3Nvdml0bnlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAyMCBKYW4gMjAyNFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTctMjAyNSBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHsgTW9kZXJhdGlvblN0YXR1cyB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvZW51bXMnO1xyXG5pbXBvcnQgeyBFbnVtRWRpdENvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9iYXNlL2NvbXBvbmVudHMvZW51bS1lZGl0LmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FuYXRvbHktbW9kZXJhdGlvbnN0YXR1cy1kcm9wZG93bmxpc3QnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RlcmF0aW9uc3RhdHVzLmRyb3Bkb3dubGlzdC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTW9kZXJhdGlvblN0YXR1c0Ryb3Bkb3dubGlzdCBleHRlbmRzIEVudW1FZGl0Q29tcG9uZW50QmFzZSBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy50aXRsZSA9ICdNb2RlcmF0aW9uIFN0YXR1cyc7XHJcbiAgICB0aGlzLmVudW1lcmF0aW9uID0gTW9kZXJhdGlvblN0YXR1cztcclxuICB9XHJcbn1cclxuXHJcbiIsIjxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCIgKm5nSWY9J2lzTmdNb2RlbEJhc2VkJz5cclxuICA8ZGl2IGNsYXNzPVwiY29udHJvbHNcIj5cclxuICAgIDxrZW5kby1sYWJlbCB0ZXh0PVwie3sgdGl0bGUgfX1cIiAqbmdJZj0naXNUaXRsZVZpc2libGUnPjwva2VuZG8tbGFiZWw+XHJcbiAgICA8a2VuZG8tZHJvcGRvd25saXN0IFtkYXRhXT1cIml0ZW1zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVGaWVsZD1cInZhbHVlXCIgdGV4dEZpZWxkPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZVByaW1pdGl2ZV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzdlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvbkNoYW5nZSgkZXZlbnQpXCIgLz5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiICpuZ0lmPSchaXNOZ01vZGVsQmFzZWQnPlxyXG4gIDxrZW5kby1sYWJlbCB0ZXh0PVwie3sgdGl0bGUgfX1cIiAqbmdJZj0naXNUaXRsZVZpc2libGUnPjwva2VuZG8tbGFiZWw+XHJcbiAgPGtlbmRvLWRyb3Bkb3dubGlzdCBbZGF0YV09XCJpdGVtc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICB2YWx1ZUZpZWxkPVwidmFsdWVcIiB0ZXh0RmllbGQ9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZVByaW1pdGl2ZV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPSdjb250cm9sTmFtZScgLz5cclxuPC9kaXY+XHJcbiJdfQ==
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZXJhdGlvbnN0YXR1cy5kcm9wZG93bmxpc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9kcm9wZG93bmxpc3RzL21vZGVyYXRpb25zdGF0dXMvbW9kZXJhdGlvbnN0YXR1cy5kcm9wZG93bmxpc3QudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9kcm9wZG93bmxpc3RzL21vZGVyYXRpb25zdGF0dXMvbW9kZXJhdGlvbnN0YXR1cy5kcm9wZG93bmxpc3QuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7OztFQWFFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEQsS0FBSztBQUNMLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOzs7Ozs7Ozs7SUNsQjlFLGlDQUFxRTs7O0lBQXhELDhDQUFrQjs7OztJQUZuQyw4QkFBK0MsYUFBQTtJQUUzQyxtR0FBcUU7SUFDckUsNkNBSXVEO0lBRG5DLGlQQUFnQiwwTEFDRCxlQUFBLHVCQUFnQixDQUFBLElBRGY7SUFIcEMsaUJBSXVELEVBQUEsRUFBQTs7O0lBTHRCLGVBQW9CO0lBQXBCLDRDQUFvQjtJQUNqQyxjQUFjO0lBQWQsbUNBQWMsd0JBQUEsc0JBQUE7OztJQVNwQyxpQ0FBcUU7OztJQUF4RCw4Q0FBa0I7OztJQURqQyw4QkFBZ0Q7SUFDOUMsbUdBQXFFO0lBQ3JFLHdDQUdzRCx5Q0FBQTtJQUl4RCxpQkFBTTs7O0lBUjZCLGNBQW9CO0lBQXBCLDRDQUFvQjtJQUNqQyxjQUFjO0lBQWQsbUNBQWMsd0JBQUEsdUNBQUE7SUFJRCxjQUF1QjtJQUF2Qiw0Q0FBdUIsdUNBQUEsbUNBQUE7O0FEUzFELE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxxQkFBcUI7SUFDckU7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxLQUFLLEdBQUcsbUJBQW1CLENBQUM7UUFDakMsSUFBSSxDQUFDLFdBQVcsR0FBRyxnQkFBZ0IsQ0FBQztJQUN0QyxDQUFDOzZGQUxVLDRCQUE0QjtvRUFBNUIsNEJBQTRCO1lDMUJ6Qyw2RUFTTSxnRUFBQTs7WUFUbUIseUNBQW9CO1lBV3BCLGNBQXFCO1lBQXJCLDBDQUFxQjs7O2lGRGVqQyw0QkFBNEI7Y0FKeEMsU0FBUzsyQkFDRSx1Q0FBdUM7O2tGQUd0Qyw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltLm9zb3ZpdG55QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMjAgSmFuIDIwMjRcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE3LTIwMjUgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IE1vZGVyYXRpb25TdGF0dXMgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL2VudW1zJztcclxuaW1wb3J0IHsgRW51bUVkaXRDb21wb25lbnRCYXNlIH0gZnJvbSAnLi4vLi4vYmFzZS9jb21wb25lbnRzL2VudW0tZWRpdC5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhbmF0b2x5LW1vZGVyYXRpb25zdGF0dXMtZHJvcGRvd25saXN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbW9kZXJhdGlvbnN0YXR1cy5kcm9wZG93bmxpc3QuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIE1vZGVyYXRpb25TdGF0dXNEcm9wZG93bmxpc3QgZXh0ZW5kcyBFbnVtRWRpdENvbXBvbmVudEJhc2UgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoKTtcclxuICAgIHRoaXMudGl0bGUgPSAnTW9kZXJhdGlvbiBTdGF0dXMnO1xyXG4gICAgdGhpcy5lbnVtZXJhdGlvbiA9IE1vZGVyYXRpb25TdGF0dXM7XHJcbiAgfVxyXG59XHJcblxyXG4iLCI8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiICpuZ0lmPSdpc05nTW9kZWxCYXNlZCc+XHJcbiAgPGRpdiBjbGFzcz1cImNvbnRyb2xzXCI+XHJcbiAgICA8a2VuZG8tbGFiZWwgdGV4dD1cInt7IHRpdGxlIH19XCIgKm5nSWY9J2lzVGl0bGVWaXNpYmxlJz48L2tlbmRvLWxhYmVsPlxyXG4gICAgPGtlbmRvLWRyb3Bkb3dubGlzdCBbZGF0YV09XCJpdGVtc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlRmllbGQ9XCJ2YWx1ZVwiIHRleHRGaWVsZD1cInRleHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVQcmltaXRpdmVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwic3ZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwib25DaGFuZ2UoJGV2ZW50KVwiIC8+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIiAqbmdJZj0nIWlzTmdNb2RlbEJhc2VkJz5cclxuICA8a2VuZG8tbGFiZWwgdGV4dD1cInt7IHRpdGxlIH19XCIgKm5nSWY9J2lzVGl0bGVWaXNpYmxlJz48L2tlbmRvLWxhYmVsPlxyXG4gIDxrZW5kby1kcm9wZG93bmxpc3QgW2RhdGFdPVwiaXRlbXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgdmFsdWVGaWVsZD1cInZhbHVlXCIgdGV4dEZpZWxkPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVQcmltaXRpdmVdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT0nY29udHJvbE5hbWUnIC8+XHJcbiAgPGFuYXRvbHktaXRlbS12YWxpZGF0aW9uLXN1bW1hcnkgW2Zvcm1Hcm91cF09J2Zvcm1Hcm91cCdcclxuICAgICAgICAgICAgICAgICAgICAgIFtmb3JtU3VibWl0dGVkXT0nZm9ybVN1Ym1pdHRlZCdcclxuICAgICAgICAgICAgICAgICAgICAgIFtjb250cm9sTmFtZV09J2NvbnRyb2xOYW1lJyAvPlxyXG48L2Rpdj5cclxuIl19
@@ -23,6 +23,7 @@ import * as i2 from "@angular/forms";
23
23
  import * as i3 from "@progress/kendo-angular-dropdowns";
24
24
  import * as i4 from "@progress/kendo-angular-label";
25
25
  import * as i5 from "../../../directives/native-element.directive";
26
+ import * as i6 from "../../../validation/item-validation-summary.component";
26
27
  function PublishStatusDropdownlist_div_0_kendo_label_2_Template(rf, ctx) { if (rf & 1) {
27
28
  i0.ɵɵelement(0, "kendo-label", 5);
28
29
  } if (rf & 2) {
@@ -52,7 +53,7 @@ function PublishStatusDropdownlist_div_1_kendo_label_1_Template(rf, ctx) { if (r
52
53
  function PublishStatusDropdownlist_div_1_Template(rf, ctx) { if (rf & 1) {
53
54
  i0.ɵɵelementStart(0, "div", 1);
54
55
  i0.ɵɵtemplate(1, PublishStatusDropdownlist_div_1_kendo_label_1_Template, 1, 1, "kendo-label", 3);
55
- i0.ɵɵelement(2, "kendo-dropdownlist", 6);
56
+ i0.ɵɵelement(2, "kendo-dropdownlist", 6)(3, "anatoly-item-validation-summary", 7);
56
57
  i0.ɵɵelementEnd();
57
58
  } if (rf & 2) {
58
59
  const ctx_r1 = i0.ɵɵnextContext();
@@ -60,6 +61,8 @@ function PublishStatusDropdownlist_div_1_Template(rf, ctx) { if (rf & 1) {
60
61
  i0.ɵɵproperty("ngIf", ctx_r1.isTitleVisible);
61
62
  i0.ɵɵadvance();
62
63
  i0.ɵɵproperty("data", ctx_r1.items)("valuePrimitive", true)("formControlName", ctx_r1.controlName);
64
+ i0.ɵɵadvance();
65
+ i0.ɵɵproperty("formGroup", ctx_r1.formGroup)("formSubmitted", ctx_r1.formSubmitted)("controlName", ctx_r1.controlName);
63
66
  } }
64
67
  export class PublishStatusDropdownlist extends EnumEditComponentBase {
65
68
  constructor() {
@@ -68,17 +71,17 @@ export class PublishStatusDropdownlist extends EnumEditComponentBase {
68
71
  this.enumeration = PublishStatus;
69
72
  }
70
73
  static { this.ɵfac = function PublishStatusDropdownlist_Factory(t) { return new (t || PublishStatusDropdownlist)(); }; }
71
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PublishStatusDropdownlist, selectors: [["anatoly-publishstatus-dropdownlist"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 2, consts: [["class", "form-group", 4, "ngIf"], [1, "form-group"], [1, "controls"], [3, "text", 4, "ngIf"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "ngModel", "ngModelChange", "valueChange"], [3, "text"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "formControlName"]], template: function PublishStatusDropdownlist_Template(rf, ctx) { if (rf & 1) {
72
- i0.ɵɵtemplate(0, PublishStatusDropdownlist_div_0_Template, 4, 4, "div", 0)(1, PublishStatusDropdownlist_div_1_Template, 3, 4, "div", 0);
74
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PublishStatusDropdownlist, selectors: [["anatoly-publishstatus-dropdownlist"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 2, consts: [["class", "form-group", 4, "ngIf"], [1, "form-group"], [1, "controls"], [3, "text", 4, "ngIf"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "ngModel", "ngModelChange", "valueChange"], [3, "text"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "formControlName"], [3, "formGroup", "formSubmitted", "controlName"]], template: function PublishStatusDropdownlist_Template(rf, ctx) { if (rf & 1) {
75
+ i0.ɵɵtemplate(0, PublishStatusDropdownlist_div_0_Template, 4, 4, "div", 0)(1, PublishStatusDropdownlist_div_1_Template, 4, 7, "div", 0);
73
76
  } if (rf & 2) {
74
77
  i0.ɵɵproperty("ngIf", ctx.isNgModelBased);
75
78
  i0.ɵɵadvance();
76
79
  i0.ɵɵproperty("ngIf", !ctx.isNgModelBased);
77
- } }, dependencies: [i1.NgIf, i2.NgControlStatus, i2.FormControlName, i2.NgModel, i3.DropDownListComponent, i4.LabelComponent, i5.NativeElementDirective], encapsulation: 2 }); }
80
+ } }, dependencies: [i1.NgIf, i2.NgControlStatus, i2.NgControlStatusGroup, i2.FormGroupDirective, i2.FormControlName, i2.NgModel, i3.DropDownListComponent, i4.LabelComponent, i5.NativeElementDirective, i6.ItemValidationSummaryComponent], encapsulation: 2 }); }
78
81
  }
79
82
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PublishStatusDropdownlist, [{
80
83
  type: Component,
81
- args: [{ selector: 'anatoly-publishstatus-dropdownlist', template: "<div class=\"form-group\" *ngIf='isNgModelBased'>\r\n <div class=\"controls\">\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [(ngModel)]=\"sv\"\r\n (valueChange)=\"onChange($event)\" />\r\n </div>\r\n</div>\r\n\r\n<div class=\"form-group\" *ngIf='!isNgModelBased'>\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [formControlName]='controlName' />\r\n</div>\r\n" }]
84
+ args: [{ selector: 'anatoly-publishstatus-dropdownlist', template: "<div class=\"form-group\" *ngIf='isNgModelBased'>\r\n <div class=\"controls\">\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [(ngModel)]=\"sv\"\r\n (valueChange)=\"onChange($event)\" />\r\n </div>\r\n</div>\r\n\r\n<div class=\"form-group\" *ngIf='!isNgModelBased'>\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [formControlName]='controlName' />\r\n <anatoly-item-validation-summary [formGroup]='formGroup'\r\n [formSubmitted]='formSubmitted'\r\n [controlName]='controlName' />\r\n</div>\r\n" }]
82
85
  }], () => [], null); })();
83
86
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PublishStatusDropdownlist, { className: "PublishStatusDropdownlist", filePath: "lib\\ui\\components\\dropdownlists\\publishstatus\\publishstatus.dropdownlist.ts", lineNumber: 27 }); })();
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaHN0YXR1cy5kcm9wZG93bmxpc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9kcm9wZG93bmxpc3RzL3B1Ymxpc2hzdGF0dXMvcHVibGlzaHN0YXR1cy5kcm9wZG93bmxpc3QudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9kcm9wZG93bmxpc3RzL3B1Ymxpc2hzdGF0dXMvcHVibGlzaHN0YXR1cy5kcm9wZG93bmxpc3QuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7OztFQWFFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEQsS0FBSztBQUNMLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7Ozs7Ozs7SUNsQjlFLGlDQUFxRTs7O0lBQXhELDhDQUFrQjs7OztJQUZuQyw4QkFBK0MsYUFBQTtJQUUzQyxnR0FBcUU7SUFDckUsNkNBSXVEO0lBRG5DLDhPQUFnQix1TEFDRCxlQUFBLHVCQUFnQixDQUFBLElBRGY7SUFIcEMsaUJBSXVELEVBQUEsRUFBQTs7O0lBTHRCLGVBQW9CO0lBQXBCLDRDQUFvQjtJQUNqQyxjQUFjO0lBQWQsbUNBQWMsd0JBQUEsc0JBQUE7OztJQVNwQyxpQ0FBcUU7OztJQUF4RCw4Q0FBa0I7OztJQURqQyw4QkFBZ0Q7SUFDOUMsZ0dBQXFFO0lBQ3JFLHdDQUdzRDtJQUN4RCxpQkFBTTs7O0lBTDZCLGNBQW9CO0lBQXBCLDRDQUFvQjtJQUNqQyxjQUFjO0lBQWQsbUNBQWMsd0JBQUEsdUNBQUE7O0FEYXBDLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxxQkFBcUI7SUFDbEU7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxLQUFLLEdBQUcsZ0JBQWdCLENBQUM7UUFDOUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxhQUFhLENBQUM7SUFDbkMsQ0FBQzswRkFMVSx5QkFBeUI7b0VBQXpCLHlCQUF5QjtZQzFCdEMsMEVBU00sNkRBQUE7O1lBVG1CLHlDQUFvQjtZQVdwQixjQUFxQjtZQUFyQiwwQ0FBcUI7OztpRkRlakMseUJBQXlCO2NBSnJDLFNBQVM7MkJBQ0Usb0NBQW9DOztrRkFHbkMseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbS5vc292aXRueUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDIwIEphbiAyMDI0XHJcblxyXG4gIENvcHlyaWdodCAoYykgMjAxNy0yMDI1IE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuLy9Ob2RlXHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBQdWJsaXNoU3RhdHVzIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9lbnVtcyc7XHJcbmltcG9ydCB7IEVudW1FZGl0Q29tcG9uZW50QmFzZSB9IGZyb20gJy4uLy4uL2Jhc2UvY29tcG9uZW50cy9lbnVtLWVkaXQuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYW5hdG9seS1wdWJsaXNoc3RhdHVzLWRyb3Bkb3dubGlzdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3B1Ymxpc2hzdGF0dXMuZHJvcGRvd25saXN0Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQdWJsaXNoU3RhdHVzRHJvcGRvd25saXN0IGV4dGVuZHMgRW51bUVkaXRDb21wb25lbnRCYXNlIGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgICB0aGlzLnRpdGxlID0gJ1B1Ymxpc2ggU3RhdHVzJztcclxuICAgIHRoaXMuZW51bWVyYXRpb24gPSBQdWJsaXNoU3RhdHVzO1xyXG4gIH1cclxufVxyXG5cclxuIiwiPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIiAqbmdJZj0naXNOZ01vZGVsQmFzZWQnPlxyXG4gIDxkaXYgY2xhc3M9XCJjb250cm9sc1wiPlxyXG4gICAgPGtlbmRvLWxhYmVsIHRleHQ9XCJ7eyB0aXRsZSB9fVwiICpuZ0lmPSdpc1RpdGxlVmlzaWJsZSc+PC9rZW5kby1sYWJlbD5cclxuICAgIDxrZW5kby1kcm9wZG93bmxpc3QgW2RhdGFdPVwiaXRlbXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZUZpZWxkPVwidmFsdWVcIiB0ZXh0RmllbGQ9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlUHJpbWl0aXZlXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInN2XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uQ2hhbmdlKCRldmVudClcIiAvPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCIgKm5nSWY9JyFpc05nTW9kZWxCYXNlZCc+XHJcbiAgPGtlbmRvLWxhYmVsIHRleHQ9XCJ7eyB0aXRsZSB9fVwiICpuZ0lmPSdpc1RpdGxlVmlzaWJsZSc+PC9rZW5kby1sYWJlbD5cclxuICA8a2VuZG8tZHJvcGRvd25saXN0IFtkYXRhXT1cIml0ZW1zXCJcclxuICAgICAgICAgICAgICAgICAgICAgIHZhbHVlRmllbGQ9XCJ2YWx1ZVwiIHRleHRGaWVsZD1cInRleHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlUHJpbWl0aXZlXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09J2NvbnRyb2xOYW1lJyAvPlxyXG48L2Rpdj5cclxuIl19
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaHN0YXR1cy5kcm9wZG93bmxpc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9kcm9wZG93bmxpc3RzL3B1Ymxpc2hzdGF0dXMvcHVibGlzaHN0YXR1cy5kcm9wZG93bmxpc3QudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9kcm9wZG93bmxpc3RzL3B1Ymxpc2hzdGF0dXMvcHVibGlzaHN0YXR1cy5kcm9wZG93bmxpc3QuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7OztFQWFFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFbEQsS0FBSztBQUNMLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7Ozs7Ozs7O0lDbEI5RSxpQ0FBcUU7OztJQUF4RCw4Q0FBa0I7Ozs7SUFGbkMsOEJBQStDLGFBQUE7SUFFM0MsZ0dBQXFFO0lBQ3JFLDZDQUl1RDtJQURuQyw4T0FBZ0IsdUxBQ0QsZUFBQSx1QkFBZ0IsQ0FBQSxJQURmO0lBSHBDLGlCQUl1RCxFQUFBLEVBQUE7OztJQUx0QixlQUFvQjtJQUFwQiw0Q0FBb0I7SUFDakMsY0FBYztJQUFkLG1DQUFjLHdCQUFBLHNCQUFBOzs7SUFTcEMsaUNBQXFFOzs7SUFBeEQsOENBQWtCOzs7SUFEakMsOEJBQWdEO0lBQzlDLGdHQUFxRTtJQUNyRSx3Q0FHc0QseUNBQUE7SUFJeEQsaUJBQU07OztJQVI2QixjQUFvQjtJQUFwQiw0Q0FBb0I7SUFDakMsY0FBYztJQUFkLG1DQUFjLHdCQUFBLHVDQUFBO0lBSUQsY0FBdUI7SUFBdkIsNENBQXVCLHVDQUFBLG1DQUFBOztBRFMxRCxNQUFNLE9BQU8seUJBQTBCLFNBQVEscUJBQXFCO0lBQ2xFO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsS0FBSyxHQUFHLGdCQUFnQixDQUFDO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUcsYUFBYSxDQUFDO0lBQ25DLENBQUM7MEZBTFUseUJBQXlCO29FQUF6Qix5QkFBeUI7WUMxQnRDLDBFQVNNLDZEQUFBOztZQVRtQix5Q0FBb0I7WUFXcEIsY0FBcUI7WUFBckIsMENBQXFCOzs7aUZEZWpDLHlCQUF5QjtjQUpyQyxTQUFTOzJCQUNFLG9DQUFvQzs7a0ZBR25DLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW0ub3Nvdml0bnlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAyMCBKYW4gMjAyNFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTctMjAyNSBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHsgUHVibGlzaFN0YXR1cyB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvZW51bXMnO1xyXG5pbXBvcnQgeyBFbnVtRWRpdENvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9iYXNlL2NvbXBvbmVudHMvZW51bS1lZGl0LmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FuYXRvbHktcHVibGlzaHN0YXR1cy1kcm9wZG93bmxpc3QnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wdWJsaXNoc3RhdHVzLmRyb3Bkb3dubGlzdC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgUHVibGlzaFN0YXR1c0Ryb3Bkb3dubGlzdCBleHRlbmRzIEVudW1FZGl0Q29tcG9uZW50QmFzZSBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy50aXRsZSA9ICdQdWJsaXNoIFN0YXR1cyc7XHJcbiAgICB0aGlzLmVudW1lcmF0aW9uID0gUHVibGlzaFN0YXR1cztcclxuICB9XHJcbn1cclxuXHJcbiIsIjxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCIgKm5nSWY9J2lzTmdNb2RlbEJhc2VkJz5cclxuICA8ZGl2IGNsYXNzPVwiY29udHJvbHNcIj5cclxuICAgIDxrZW5kby1sYWJlbCB0ZXh0PVwie3sgdGl0bGUgfX1cIiAqbmdJZj0naXNUaXRsZVZpc2libGUnPjwva2VuZG8tbGFiZWw+XHJcbiAgICA8a2VuZG8tZHJvcGRvd25saXN0IFtkYXRhXT1cIml0ZW1zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVGaWVsZD1cInZhbHVlXCIgdGV4dEZpZWxkPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZVByaW1pdGl2ZV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzdlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvbkNoYW5nZSgkZXZlbnQpXCIgLz5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiICpuZ0lmPSchaXNOZ01vZGVsQmFzZWQnPlxyXG4gIDxrZW5kby1sYWJlbCB0ZXh0PVwie3sgdGl0bGUgfX1cIiAqbmdJZj0naXNUaXRsZVZpc2libGUnPjwva2VuZG8tbGFiZWw+XHJcbiAgPGtlbmRvLWRyb3Bkb3dubGlzdCBbZGF0YV09XCJpdGVtc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICB2YWx1ZUZpZWxkPVwidmFsdWVcIiB0ZXh0RmllbGQ9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZVByaW1pdGl2ZV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPSdjb250cm9sTmFtZScgLz5cclxuICA8YW5hdG9seS1pdGVtLXZhbGlkYXRpb24tc3VtbWFyeSBbZm9ybUdyb3VwXT0nZm9ybUdyb3VwJ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JtU3VibWl0dGVkXT0nZm9ybVN1Ym1pdHRlZCdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29udHJvbE5hbWVdPSdjb250cm9sTmFtZScgLz5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -6843,6 +6843,174 @@ class CountryDropdownlist extends EditComponentBase {
6843
6843
  </file>
6844
6844
  */
6845
6845
 
6846
+ /*
6847
+ <file>
6848
+ Project:
6849
+ @osovitny/anatoly
6850
+
6851
+ Authors:
6852
+ Vadim Osovitny vadim.osovitny@osovitny.com
6853
+ Anatoly Osovitny anatoly.osovitny@osovitny.com
6854
+
6855
+ Created:
6856
+ 8 Dec 2017
6857
+
6858
+ Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
6859
+ </file>
6860
+ */
6861
+ //Node
6862
+ class ValidationSummaryComponent extends EditComponentBase {
6863
+ constructor() {
6864
+ super();
6865
+ }
6866
+ getControlTitle(control, name) {
6867
+ if (control?.nativeElement) {
6868
+ let value = this.getTitleAttribute(control.nativeElement);
6869
+ return value ? value : name;
6870
+ }
6871
+ return undefined;
6872
+ }
6873
+ getTitleAttribute(nativeElement) {
6874
+ let title;
6875
+ let element;
6876
+ let tagName = nativeElement.tagName;
6877
+ switch (tagName) {
6878
+ // For Kendo time and date picker element title is assigned to the 4th child control.
6879
+ case "KENDO-TIMEPICKER":
6880
+ case "KENDO-DATEPICKER":
6881
+ element = nativeElement.children[0]?.children[0]?.children[0]?.children[0];
6882
+ break;
6883
+ // For Kendo numaric element title is assigned to the 2nd child control.
6884
+ case "KENDO-NUMERICTEXTBOX":
6885
+ element = nativeElement.children[0]?.children[0];
6886
+ break;
6887
+ default:
6888
+ element = nativeElement;
6889
+ break;
6890
+ }
6891
+ if (element) {
6892
+ title = element.getAttribute("formControlTitle");
6893
+ if (!title) {
6894
+ title = element.getAttribute("title");
6895
+ }
6896
+ }
6897
+ return title;
6898
+ }
6899
+ getFormValidationMessages() {
6900
+ let messages = [];
6901
+ Object.keys(this.formGroup.controls).forEach((k) => {
6902
+ let control = this.formGroup.controls[k];
6903
+ if (control.controls != null) {
6904
+ Object.keys(control.controls).forEach((k) => {
6905
+ var child = control.controls[k];
6906
+ this.getValidationMessages(child, this.getControlTitle(child, k)).forEach((m) => messages.push(m));
6907
+ });
6908
+ }
6909
+ else {
6910
+ this.getValidationMessages(control, this.getControlTitle(control, k)).forEach((m) => messages.push(m));
6911
+ }
6912
+ });
6913
+ return messages;
6914
+ }
6915
+ getValidationMessages(control, title) {
6916
+ let messages = [];
6917
+ let thing;
6918
+ if (title) {
6919
+ thing = title;
6920
+ }
6921
+ else {
6922
+ thing = this.getControlTitle(control, null);
6923
+ if (!thing) {
6924
+ thing = control.path;
6925
+ }
6926
+ }
6927
+ if (control.errors) {
6928
+ for (let errorName in control.errors) {
6929
+ if (control.errors.hasOwnProperty(errorName)) {
6930
+ switch (errorName) {
6931
+ case "required":
6932
+ messages.push(`${thing} is required`);
6933
+ break;
6934
+ case "minlength":
6935
+ messages.push(`${thing} must be at least ${control.errors["minlength"].requiredLength} characters`);
6936
+ break;
6937
+ case "pattern":
6938
+ messages.push(`${thing} contains illegal characters`);
6939
+ break;
6940
+ case "format":
6941
+ messages.push(`${thing} format mismatch`);
6942
+ break;
6943
+ case "maxlength":
6944
+ messages.push(`${thing} must have maximum ${control.errors["maxlength"].requiredLength} characters`);
6945
+ break;
6946
+ case "specialcharacters":
6947
+ messages.push(`${thing} contains special characters`);
6948
+ break;
6949
+ }
6950
+ }
6951
+ }
6952
+ }
6953
+ return messages;
6954
+ }
6955
+ static { this.ɵfac = function ValidationSummaryComponent_Factory(t) { return new (t || ValidationSummaryComponent)(); }; }
6956
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ValidationSummaryComponent, selectors: [["ng-component"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function ValidationSummaryComponent_Template(rf, ctx) { }, encapsulation: 2 }); }
6957
+ }
6958
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ValidationSummaryComponent, [{
6959
+ type: Component,
6960
+ args: [{
6961
+ template: ''
6962
+ }]
6963
+ }], () => [], null); })();
6964
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ValidationSummaryComponent, { className: "ValidationSummaryComponent", filePath: "lib\\ui\\validation\\validation-summary.component.ts", lineNumber: 27 }); })();
6965
+
6966
+ /*
6967
+ <file>
6968
+ Project:
6969
+ @osovitny/anatoly
6970
+
6971
+ Authors:
6972
+ Vadim Osovitny vadim.osovitny@osovitny.com
6973
+ Anatoly Osovitny anatoly.osovitny@osovitny.com
6974
+
6975
+ Created:
6976
+ 6 Dec 2017
6977
+
6978
+ Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
6979
+ </file>
6980
+ */
6981
+ //Node
6982
+ function ItemValidationSummaryComponent_ul_0_li_1_Template(rf, ctx) { if (rf & 1) {
6983
+ i0.ɵɵelementStart(0, "li")(1, "span", 3);
6984
+ i0.ɵɵtext(2);
6985
+ i0.ɵɵelementEnd()();
6986
+ } if (rf & 2) {
6987
+ const error_r2 = ctx.$implicit;
6988
+ i0.ɵɵadvance(2);
6989
+ i0.ɵɵtextInterpolate(error_r2);
6990
+ } }
6991
+ function ItemValidationSummaryComponent_ul_0_Template(rf, ctx) { if (rf & 1) {
6992
+ i0.ɵɵelementStart(0, "ul", 1);
6993
+ i0.ɵɵtemplate(1, ItemValidationSummaryComponent_ul_0_li_1_Template, 3, 1, "li", 2);
6994
+ i0.ɵɵelementEnd();
6995
+ } if (rf & 2) {
6996
+ const ctx_r0 = i0.ɵɵnextContext();
6997
+ i0.ɵɵadvance();
6998
+ i0.ɵɵproperty("ngForOf", ctx_r0.getValidationMessages(ctx_r0.formGroup.controls[ctx_r0.controlName]));
6999
+ } }
7000
+ class ItemValidationSummaryComponent extends ValidationSummaryComponent {
7001
+ static { this.ɵfac = /*@__PURE__*/ (() => { let ɵItemValidationSummaryComponent_BaseFactory; return function ItemValidationSummaryComponent_Factory(t) { return (ɵItemValidationSummaryComponent_BaseFactory || (ɵItemValidationSummaryComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ItemValidationSummaryComponent)))(t || ItemValidationSummaryComponent); }; })(); }
7002
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ItemValidationSummaryComponent, selectors: [["anatoly-item-validation-summary"]], 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) {
7003
+ i0.ɵɵtemplate(0, ItemValidationSummaryComponent_ul_0_Template, 2, 1, "ul", 0);
7004
+ } if (rf & 2) {
7005
+ i0.ɵɵproperty("ngIf", ctx.isControlInvalid(ctx.controlName));
7006
+ } }, dependencies: [i1$2.NgForOf, i1$2.NgIf], encapsulation: 2 }); }
7007
+ }
7008
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ItemValidationSummaryComponent, [{
7009
+ type: Component,
7010
+ args: [{ selector: "anatoly-item-validation-summary", template: "<ul class=\"list-unstyled\" *ngIf=\"isControlInvalid(controlName)\">\r\n <li *ngFor=\"let error of getValidationMessages(formGroup.controls[controlName])\">\r\n <span class=\"help-block\">{{ error }}</span>\r\n </li>\r\n</ul>\r\n\r\n" }]
7011
+ }], null, null); })();
7012
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ItemValidationSummaryComponent, { className: "ItemValidationSummaryComponent", filePath: "lib\\ui\\validation\\item-validation-summary.component.ts", lineNumber: 27 }); })();
7013
+
6846
7014
  /*
6847
7015
  <file>
6848
7016
  Project:
@@ -6887,7 +7055,7 @@ function ModerationStatusDropdownlist_div_1_kendo_label_1_Template(rf, ctx) { if
6887
7055
  function ModerationStatusDropdownlist_div_1_Template(rf, ctx) { if (rf & 1) {
6888
7056
  i0.ɵɵelementStart(0, "div", 1);
6889
7057
  i0.ɵɵtemplate(1, ModerationStatusDropdownlist_div_1_kendo_label_1_Template, 1, 1, "kendo-label", 3);
6890
- i0.ɵɵelement(2, "kendo-dropdownlist", 6);
7058
+ i0.ɵɵelement(2, "kendo-dropdownlist", 6)(3, "anatoly-item-validation-summary", 7);
6891
7059
  i0.ɵɵelementEnd();
6892
7060
  } if (rf & 2) {
6893
7061
  const ctx_r1 = i0.ɵɵnextContext();
@@ -6895,6 +7063,8 @@ function ModerationStatusDropdownlist_div_1_Template(rf, ctx) { if (rf & 1) {
6895
7063
  i0.ɵɵproperty("ngIf", ctx_r1.isTitleVisible);
6896
7064
  i0.ɵɵadvance();
6897
7065
  i0.ɵɵproperty("data", ctx_r1.items)("valuePrimitive", true)("formControlName", ctx_r1.controlName);
7066
+ i0.ɵɵadvance();
7067
+ i0.ɵɵproperty("formGroup", ctx_r1.formGroup)("formSubmitted", ctx_r1.formSubmitted)("controlName", ctx_r1.controlName);
6898
7068
  } }
6899
7069
  class ModerationStatusDropdownlist extends EnumEditComponentBase {
6900
7070
  constructor() {
@@ -6903,17 +7073,17 @@ class ModerationStatusDropdownlist extends EnumEditComponentBase {
6903
7073
  this.enumeration = ModerationStatus;
6904
7074
  }
6905
7075
  static { this.ɵfac = function ModerationStatusDropdownlist_Factory(t) { return new (t || ModerationStatusDropdownlist)(); }; }
6906
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ModerationStatusDropdownlist, selectors: [["anatoly-moderationstatus-dropdownlist"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 2, consts: [["class", "form-group", 4, "ngIf"], [1, "form-group"], [1, "controls"], [3, "text", 4, "ngIf"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "ngModel", "ngModelChange", "valueChange"], [3, "text"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "formControlName"]], template: function ModerationStatusDropdownlist_Template(rf, ctx) { if (rf & 1) {
6907
- i0.ɵɵtemplate(0, ModerationStatusDropdownlist_div_0_Template, 4, 4, "div", 0)(1, ModerationStatusDropdownlist_div_1_Template, 3, 4, "div", 0);
7076
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ModerationStatusDropdownlist, selectors: [["anatoly-moderationstatus-dropdownlist"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 2, consts: [["class", "form-group", 4, "ngIf"], [1, "form-group"], [1, "controls"], [3, "text", 4, "ngIf"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "ngModel", "ngModelChange", "valueChange"], [3, "text"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "formControlName"], [3, "formGroup", "formSubmitted", "controlName"]], template: function ModerationStatusDropdownlist_Template(rf, ctx) { if (rf & 1) {
7077
+ i0.ɵɵtemplate(0, ModerationStatusDropdownlist_div_0_Template, 4, 4, "div", 0)(1, ModerationStatusDropdownlist_div_1_Template, 4, 7, "div", 0);
6908
7078
  } if (rf & 2) {
6909
7079
  i0.ɵɵproperty("ngIf", ctx.isNgModelBased);
6910
7080
  i0.ɵɵadvance();
6911
7081
  i0.ɵɵproperty("ngIf", !ctx.isNgModelBased);
6912
- } }, dependencies: [i1$2.NgIf, i2.NgControlStatus, i2.FormControlName, i2.NgModel, i3.DropDownListComponent, i4$1.LabelComponent, NativeElementDirective], encapsulation: 2 }); }
7082
+ } }, dependencies: [i1$2.NgIf, i2.NgControlStatus, i2.NgControlStatusGroup, i2.FormGroupDirective, i2.FormControlName, i2.NgModel, i3.DropDownListComponent, i4$1.LabelComponent, NativeElementDirective, ItemValidationSummaryComponent], encapsulation: 2 }); }
6913
7083
  }
6914
7084
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ModerationStatusDropdownlist, [{
6915
7085
  type: Component,
6916
- args: [{ selector: 'anatoly-moderationstatus-dropdownlist', template: "<div class=\"form-group\" *ngIf='isNgModelBased'>\r\n <div class=\"controls\">\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [(ngModel)]=\"sv\"\r\n (valueChange)=\"onChange($event)\" />\r\n </div>\r\n</div>\r\n\r\n<div class=\"form-group\" *ngIf='!isNgModelBased'>\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [formControlName]='controlName' />\r\n</div>\r\n" }]
7086
+ args: [{ selector: 'anatoly-moderationstatus-dropdownlist', template: "<div class=\"form-group\" *ngIf='isNgModelBased'>\r\n <div class=\"controls\">\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [(ngModel)]=\"sv\"\r\n (valueChange)=\"onChange($event)\" />\r\n </div>\r\n</div>\r\n\r\n<div class=\"form-group\" *ngIf='!isNgModelBased'>\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [formControlName]='controlName' />\r\n <anatoly-item-validation-summary [formGroup]='formGroup'\r\n [formSubmitted]='formSubmitted'\r\n [controlName]='controlName' />\r\n</div>\r\n" }]
6917
7087
  }], () => [], null); })();
6918
7088
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ModerationStatusDropdownlist, { className: "ModerationStatusDropdownlist", filePath: "lib\\ui\\components\\dropdownlists\\moderationstatus\\moderationstatus.dropdownlist.ts", lineNumber: 27 }); })();
6919
7089
 
@@ -6961,7 +7131,7 @@ function PublishStatusDropdownlist_div_1_kendo_label_1_Template(rf, ctx) { if (r
6961
7131
  function PublishStatusDropdownlist_div_1_Template(rf, ctx) { if (rf & 1) {
6962
7132
  i0.ɵɵelementStart(0, "div", 1);
6963
7133
  i0.ɵɵtemplate(1, PublishStatusDropdownlist_div_1_kendo_label_1_Template, 1, 1, "kendo-label", 3);
6964
- i0.ɵɵelement(2, "kendo-dropdownlist", 6);
7134
+ i0.ɵɵelement(2, "kendo-dropdownlist", 6)(3, "anatoly-item-validation-summary", 7);
6965
7135
  i0.ɵɵelementEnd();
6966
7136
  } if (rf & 2) {
6967
7137
  const ctx_r1 = i0.ɵɵnextContext();
@@ -6969,6 +7139,8 @@ function PublishStatusDropdownlist_div_1_Template(rf, ctx) { if (rf & 1) {
6969
7139
  i0.ɵɵproperty("ngIf", ctx_r1.isTitleVisible);
6970
7140
  i0.ɵɵadvance();
6971
7141
  i0.ɵɵproperty("data", ctx_r1.items)("valuePrimitive", true)("formControlName", ctx_r1.controlName);
7142
+ i0.ɵɵadvance();
7143
+ i0.ɵɵproperty("formGroup", ctx_r1.formGroup)("formSubmitted", ctx_r1.formSubmitted)("controlName", ctx_r1.controlName);
6972
7144
  } }
6973
7145
  class PublishStatusDropdownlist extends EnumEditComponentBase {
6974
7146
  constructor() {
@@ -6977,17 +7149,17 @@ class PublishStatusDropdownlist extends EnumEditComponentBase {
6977
7149
  this.enumeration = PublishStatus;
6978
7150
  }
6979
7151
  static { this.ɵfac = function PublishStatusDropdownlist_Factory(t) { return new (t || PublishStatusDropdownlist)(); }; }
6980
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PublishStatusDropdownlist, selectors: [["anatoly-publishstatus-dropdownlist"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 2, consts: [["class", "form-group", 4, "ngIf"], [1, "form-group"], [1, "controls"], [3, "text", 4, "ngIf"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "ngModel", "ngModelChange", "valueChange"], [3, "text"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "formControlName"]], template: function PublishStatusDropdownlist_Template(rf, ctx) { if (rf & 1) {
6981
- i0.ɵɵtemplate(0, PublishStatusDropdownlist_div_0_Template, 4, 4, "div", 0)(1, PublishStatusDropdownlist_div_1_Template, 3, 4, "div", 0);
7152
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PublishStatusDropdownlist, selectors: [["anatoly-publishstatus-dropdownlist"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 2, consts: [["class", "form-group", 4, "ngIf"], [1, "form-group"], [1, "controls"], [3, "text", 4, "ngIf"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "ngModel", "ngModelChange", "valueChange"], [3, "text"], ["valueField", "value", "textField", "text", 3, "data", "valuePrimitive", "formControlName"], [3, "formGroup", "formSubmitted", "controlName"]], template: function PublishStatusDropdownlist_Template(rf, ctx) { if (rf & 1) {
7153
+ i0.ɵɵtemplate(0, PublishStatusDropdownlist_div_0_Template, 4, 4, "div", 0)(1, PublishStatusDropdownlist_div_1_Template, 4, 7, "div", 0);
6982
7154
  } if (rf & 2) {
6983
7155
  i0.ɵɵproperty("ngIf", ctx.isNgModelBased);
6984
7156
  i0.ɵɵadvance();
6985
7157
  i0.ɵɵproperty("ngIf", !ctx.isNgModelBased);
6986
- } }, dependencies: [i1$2.NgIf, i2.NgControlStatus, i2.FormControlName, i2.NgModel, i3.DropDownListComponent, i4$1.LabelComponent, NativeElementDirective], encapsulation: 2 }); }
7158
+ } }, dependencies: [i1$2.NgIf, i2.NgControlStatus, i2.NgControlStatusGroup, i2.FormGroupDirective, i2.FormControlName, i2.NgModel, i3.DropDownListComponent, i4$1.LabelComponent, NativeElementDirective, ItemValidationSummaryComponent], encapsulation: 2 }); }
6987
7159
  }
6988
7160
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PublishStatusDropdownlist, [{
6989
7161
  type: Component,
6990
- args: [{ selector: 'anatoly-publishstatus-dropdownlist', template: "<div class=\"form-group\" *ngIf='isNgModelBased'>\r\n <div class=\"controls\">\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [(ngModel)]=\"sv\"\r\n (valueChange)=\"onChange($event)\" />\r\n </div>\r\n</div>\r\n\r\n<div class=\"form-group\" *ngIf='!isNgModelBased'>\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [formControlName]='controlName' />\r\n</div>\r\n" }]
7162
+ args: [{ selector: 'anatoly-publishstatus-dropdownlist', template: "<div class=\"form-group\" *ngIf='isNgModelBased'>\r\n <div class=\"controls\">\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [(ngModel)]=\"sv\"\r\n (valueChange)=\"onChange($event)\" />\r\n </div>\r\n</div>\r\n\r\n<div class=\"form-group\" *ngIf='!isNgModelBased'>\r\n <kendo-label text=\"{{ title }}\" *ngIf='isTitleVisible'></kendo-label>\r\n <kendo-dropdownlist [data]=\"items\"\r\n valueField=\"value\" textField=\"text\"\r\n [valuePrimitive]=\"true\"\r\n [formControlName]='controlName' />\r\n <anatoly-item-validation-summary [formGroup]='formGroup'\r\n [formSubmitted]='formSubmitted'\r\n [controlName]='controlName' />\r\n</div>\r\n" }]
6991
7163
  }], () => [], null); })();
6992
7164
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PublishStatusDropdownlist, { className: "PublishStatusDropdownlist", filePath: "lib\\ui\\components\\dropdownlists\\publishstatus\\publishstatus.dropdownlist.ts", lineNumber: 27 }); })();
6993
7165
 
@@ -7268,174 +7440,6 @@ class HtmlEditorComponentBase extends EditComponentBase {
7268
7440
  }] }); })();
7269
7441
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(HtmlEditorComponentBase, { className: "HtmlEditorComponentBase", filePath: "lib\\ui\\components\\html-editor\\base-html-editor.component.ts", lineNumber: 31 }); })();
7270
7442
 
7271
- /*
7272
- <file>
7273
- Project:
7274
- @osovitny/anatoly
7275
-
7276
- Authors:
7277
- Vadim Osovitny vadim.osovitny@osovitny.com
7278
- Anatoly Osovitny anatoly.osovitny@osovitny.com
7279
-
7280
- Created:
7281
- 8 Dec 2017
7282
-
7283
- Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
7284
- </file>
7285
- */
7286
- //Node
7287
- class ValidationSummaryComponent extends EditComponentBase {
7288
- constructor() {
7289
- super();
7290
- }
7291
- getControlTitle(control, name) {
7292
- if (control?.nativeElement) {
7293
- let value = this.getTitleAttribute(control.nativeElement);
7294
- return value ? value : name;
7295
- }
7296
- return undefined;
7297
- }
7298
- getTitleAttribute(nativeElement) {
7299
- let title;
7300
- let element;
7301
- let tagName = nativeElement.tagName;
7302
- switch (tagName) {
7303
- // For Kendo time and date picker element title is assigned to the 4th child control.
7304
- case "KENDO-TIMEPICKER":
7305
- case "KENDO-DATEPICKER":
7306
- element = nativeElement.children[0]?.children[0]?.children[0]?.children[0];
7307
- break;
7308
- // For Kendo numaric element title is assigned to the 2nd child control.
7309
- case "KENDO-NUMERICTEXTBOX":
7310
- element = nativeElement.children[0]?.children[0];
7311
- break;
7312
- default:
7313
- element = nativeElement;
7314
- break;
7315
- }
7316
- if (element) {
7317
- title = element.getAttribute("formControlTitle");
7318
- if (!title) {
7319
- title = element.getAttribute("title");
7320
- }
7321
- }
7322
- return title;
7323
- }
7324
- getFormValidationMessages() {
7325
- let messages = [];
7326
- Object.keys(this.formGroup.controls).forEach((k) => {
7327
- let control = this.formGroup.controls[k];
7328
- if (control.controls != null) {
7329
- Object.keys(control.controls).forEach((k) => {
7330
- var child = control.controls[k];
7331
- this.getValidationMessages(child, this.getControlTitle(child, k)).forEach((m) => messages.push(m));
7332
- });
7333
- }
7334
- else {
7335
- this.getValidationMessages(control, this.getControlTitle(control, k)).forEach((m) => messages.push(m));
7336
- }
7337
- });
7338
- return messages;
7339
- }
7340
- getValidationMessages(control, title) {
7341
- let messages = [];
7342
- let thing;
7343
- if (title) {
7344
- thing = title;
7345
- }
7346
- else {
7347
- thing = this.getControlTitle(control, null);
7348
- if (!thing) {
7349
- thing = control.path;
7350
- }
7351
- }
7352
- if (control.errors) {
7353
- for (let errorName in control.errors) {
7354
- if (control.errors.hasOwnProperty(errorName)) {
7355
- switch (errorName) {
7356
- case "required":
7357
- messages.push(`${thing} is required`);
7358
- break;
7359
- case "minlength":
7360
- messages.push(`${thing} must be at least ${control.errors["minlength"].requiredLength} characters`);
7361
- break;
7362
- case "pattern":
7363
- messages.push(`${thing} contains illegal characters`);
7364
- break;
7365
- case "format":
7366
- messages.push(`${thing} format mismatch`);
7367
- break;
7368
- case "maxlength":
7369
- messages.push(`${thing} must have maximum ${control.errors["maxlength"].requiredLength} characters`);
7370
- break;
7371
- case "specialcharacters":
7372
- messages.push(`${thing} contains special characters`);
7373
- break;
7374
- }
7375
- }
7376
- }
7377
- }
7378
- return messages;
7379
- }
7380
- static { this.ɵfac = function ValidationSummaryComponent_Factory(t) { return new (t || ValidationSummaryComponent)(); }; }
7381
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ValidationSummaryComponent, selectors: [["ng-component"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function ValidationSummaryComponent_Template(rf, ctx) { }, encapsulation: 2 }); }
7382
- }
7383
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ValidationSummaryComponent, [{
7384
- type: Component,
7385
- args: [{
7386
- template: ''
7387
- }]
7388
- }], () => [], null); })();
7389
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ValidationSummaryComponent, { className: "ValidationSummaryComponent", filePath: "lib\\ui\\validation\\validation-summary.component.ts", lineNumber: 27 }); })();
7390
-
7391
- /*
7392
- <file>
7393
- Project:
7394
- @osovitny/anatoly
7395
-
7396
- Authors:
7397
- Vadim Osovitny vadim.osovitny@osovitny.com
7398
- Anatoly Osovitny anatoly.osovitny@osovitny.com
7399
-
7400
- Created:
7401
- 6 Dec 2017
7402
-
7403
- Copyright (c) 2016-2025 Osovitny Inc. All rights reserved.
7404
- </file>
7405
- */
7406
- //Node
7407
- function ItemValidationSummaryComponent_ul_0_li_1_Template(rf, ctx) { if (rf & 1) {
7408
- i0.ɵɵelementStart(0, "li")(1, "span", 3);
7409
- i0.ɵɵtext(2);
7410
- i0.ɵɵelementEnd()();
7411
- } if (rf & 2) {
7412
- const error_r2 = ctx.$implicit;
7413
- i0.ɵɵadvance(2);
7414
- i0.ɵɵtextInterpolate(error_r2);
7415
- } }
7416
- function ItemValidationSummaryComponent_ul_0_Template(rf, ctx) { if (rf & 1) {
7417
- i0.ɵɵelementStart(0, "ul", 1);
7418
- i0.ɵɵtemplate(1, ItemValidationSummaryComponent_ul_0_li_1_Template, 3, 1, "li", 2);
7419
- i0.ɵɵelementEnd();
7420
- } if (rf & 2) {
7421
- const ctx_r0 = i0.ɵɵnextContext();
7422
- i0.ɵɵadvance();
7423
- i0.ɵɵproperty("ngForOf", ctx_r0.getValidationMessages(ctx_r0.formGroup.controls[ctx_r0.controlName]));
7424
- } }
7425
- class ItemValidationSummaryComponent extends ValidationSummaryComponent {
7426
- static { this.ɵfac = /*@__PURE__*/ (() => { let ɵItemValidationSummaryComponent_BaseFactory; return function ItemValidationSummaryComponent_Factory(t) { return (ɵItemValidationSummaryComponent_BaseFactory || (ɵItemValidationSummaryComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ItemValidationSummaryComponent)))(t || ItemValidationSummaryComponent); }; })(); }
7427
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ItemValidationSummaryComponent, selectors: [["anatoly-item-validation-summary"]], 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) {
7428
- i0.ɵɵtemplate(0, ItemValidationSummaryComponent_ul_0_Template, 2, 1, "ul", 0);
7429
- } if (rf & 2) {
7430
- i0.ɵɵproperty("ngIf", ctx.isControlInvalid(ctx.controlName));
7431
- } }, dependencies: [i1$2.NgForOf, i1$2.NgIf], encapsulation: 2 }); }
7432
- }
7433
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ItemValidationSummaryComponent, [{
7434
- type: Component,
7435
- args: [{ selector: "anatoly-item-validation-summary", template: "<ul class=\"list-unstyled\" *ngIf=\"isControlInvalid(controlName)\">\r\n <li *ngFor=\"let error of getValidationMessages(formGroup.controls[controlName])\">\r\n <span class=\"help-block\">{{ error }}</span>\r\n </li>\r\n</ul>\r\n\r\n" }]
7436
- }], null, null); })();
7437
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ItemValidationSummaryComponent, { className: "ItemValidationSummaryComponent", filePath: "lib\\ui\\validation\\item-validation-summary.component.ts", lineNumber: 27 }); })();
7438
-
7439
7443
  /*
7440
7444
  <file>
7441
7445
  Project: