@progress/kendo-angular-scheduler 21.1.1-develop.2 → 21.2.0-develop.2

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.
Files changed (37) hide show
  1. package/esm2022/editing/date-time-picker.component.mjs +59 -56
  2. package/esm2022/editing/edit-dialog.component.mjs +373 -359
  3. package/esm2022/editing/recurrence/recurrence-editor.component.mjs +262 -253
  4. package/esm2022/editing/recurrence/recurrence-frequency-editor.component.mjs +44 -41
  5. package/esm2022/editing/recurrence/recurrence-monthly-yearly-editor.component.mjs +190 -193
  6. package/esm2022/editing/recurrence/recurrence-weekday-rule-editor.component.mjs +44 -43
  7. package/esm2022/editing/resource-multiple-editor.component.mjs +49 -41
  8. package/esm2022/editing/resource-single-editor.component.mjs +35 -31
  9. package/esm2022/editing/timezone-editor.component.mjs +20 -17
  10. package/esm2022/package-metadata.mjs +2 -2
  11. package/esm2022/pdf/pdf-command.directive.mjs +27 -17
  12. package/esm2022/scheduler.component.mjs +631 -625
  13. package/esm2022/toolbar/toolbar.component.mjs +37 -37
  14. package/esm2022/toolbar/view-selector.component.mjs +42 -33
  15. package/esm2022/views/agenda/agenda-header-item.component.mjs +23 -19
  16. package/esm2022/views/agenda/agenda-header.component.mjs +28 -26
  17. package/esm2022/views/agenda/agenda-task-item.component.mjs +49 -29
  18. package/esm2022/views/agenda/agenda-view-list.component.mjs +117 -95
  19. package/esm2022/views/common/resize-hint.component.mjs +16 -9
  20. package/esm2022/views/common/view-footer.component.mjs +27 -25
  21. package/esm2022/views/day-time/day-time-view-item.component.mjs +125 -85
  22. package/esm2022/views/month/month-slot.component.mjs +39 -29
  23. package/esm2022/views/month/month-view-item.component.mjs +81 -61
  24. package/esm2022/views/month/month-view-renderer.component.mjs +349 -281
  25. package/esm2022/views/multi-day/day-view.component.mjs +72 -69
  26. package/esm2022/views/multi-day/multi-day-view-renderer.component.mjs +665 -515
  27. package/esm2022/views/multi-day/multi-day-view.component.mjs +76 -73
  28. package/esm2022/views/multi-day/week-view.component.mjs +78 -75
  29. package/esm2022/views/multi-day/work-week-view.component.mjs +80 -77
  30. package/esm2022/views/timeline/timeline-month-view.component.mjs +74 -71
  31. package/esm2022/views/timeline/timeline-multi-day-view.component.mjs +449 -359
  32. package/esm2022/views/timeline/timeline-view.component.mjs +68 -65
  33. package/esm2022/views/timeline/timeline-week-view.component.mjs +74 -71
  34. package/esm2022/views/year/year-view-internal.component.mjs +151 -131
  35. package/fesm2022/progress-kendo-angular-scheduler.mjs +4448 -3889
  36. package/package.json +15 -15
  37. package/schematics/ngAdd/index.js +3 -3
@@ -7,7 +7,6 @@ import { capitalize, isPresent } from '../../common/util';
7
7
  import { RecurrenceService } from './recurrence.service';
8
8
  import { LocalizationService } from '@progress/kendo-angular-l10n';
9
9
  import { Button, ButtonComponent, ButtonGroupComponent } from '@progress/kendo-angular-buttons';
10
- import { NgFor } from '@angular/common';
11
10
  import { LabelComponent } from '@progress/kendo-angular-label';
12
11
  import * as i0 from "@angular/core";
13
12
  import * as i1 from "./recurrence.service";
@@ -77,29 +76,30 @@ export class RecurrenceWeekdayRuleEditorComponent {
77
76
  }
78
77
  }
79
78
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RecurrenceWeekdayRuleEditorComponent, deps: [{ token: i1.RecurrenceService }, { token: i2.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
80
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: RecurrenceWeekdayRuleEditorComponent, isStandalone: true, selector: "kendo-recurrence-weekday-rule-editor", viewQueries: [{ propertyName: "weekDayButtons", predicate: Button, descendants: true }], ngImport: i0, template: `
79
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: RecurrenceWeekdayRuleEditorComponent, isStandalone: true, selector: "kendo-recurrence-weekday-rule-editor", viewQueries: [{ propertyName: "weekDayButtons", predicate: Button, descendants: true }], ngImport: i0, template: `
81
80
  <div class="k-form-field">
82
- <kendo-label
83
- [text]="textFor('weeklyRepeatOn')"
84
- labelCssClass="k-form-label"
85
- (click)="onWeeklyRepeatOnClick()"
86
- ></kendo-label>
87
- <div class="k-form-field-wrap">
88
- <kendo-buttongroup
89
- class="k-button-group-solid"
90
- width="100%"
91
- selection="multiple"
92
- >
93
- <button
94
- *ngFor='let day of weekDays'
95
- kendoButton
96
- [selected]="isSelected(day)"
97
- (click)="onDayClick(day)"
98
- >{{ capitalize(day.text) }}</button>
99
- </kendo-buttongroup>
100
- </div>
81
+ <kendo-label
82
+ [text]="textFor('weeklyRepeatOn')"
83
+ labelCssClass="k-form-label"
84
+ (click)="onWeeklyRepeatOnClick()"
85
+ ></kendo-label>
86
+ <div class="k-form-field-wrap">
87
+ <kendo-buttongroup
88
+ class="k-button-group-solid"
89
+ width="100%"
90
+ selection="multiple"
91
+ >
92
+ @for (day of weekDays; track day) {
93
+ <button
94
+ kendoButton
95
+ [selected]="isSelected(day)"
96
+ (click)="onDayClick(day)"
97
+ >{{ capitalize(day.text) }}</button>
98
+ }
99
+ </kendo-buttongroup>
100
+ </div>
101
101
  </div>
102
- `, isInline: true, dependencies: [{ kind: "component", type: LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional", "labelCssStyle", "labelCssClass"], exportAs: ["kendoLabel"] }, { kind: "component", type: ButtonGroupComponent, selector: "kendo-buttongroup", inputs: ["disabled", "selection", "width", "tabIndex", "navigable"], outputs: ["navigate"], exportAs: ["kendoButtonGroup"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
102
+ `, isInline: true, dependencies: [{ kind: "component", type: LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional", "labelCssStyle", "labelCssClass"], exportAs: ["kendoLabel"] }, { kind: "component", type: ButtonGroupComponent, selector: "kendo-buttongroup", inputs: ["disabled", "selection", "width", "tabIndex", "navigable"], outputs: ["navigate"], exportAs: ["kendoButtonGroup"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
103
103
  }
104
104
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RecurrenceWeekdayRuleEditorComponent, decorators: [{
105
105
  type: Component,
@@ -107,29 +107,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
107
107
  selector: 'kendo-recurrence-weekday-rule-editor',
108
108
  template: `
109
109
  <div class="k-form-field">
110
- <kendo-label
111
- [text]="textFor('weeklyRepeatOn')"
112
- labelCssClass="k-form-label"
113
- (click)="onWeeklyRepeatOnClick()"
114
- ></kendo-label>
115
- <div class="k-form-field-wrap">
116
- <kendo-buttongroup
117
- class="k-button-group-solid"
118
- width="100%"
119
- selection="multiple"
120
- >
121
- <button
122
- *ngFor='let day of weekDays'
123
- kendoButton
124
- [selected]="isSelected(day)"
125
- (click)="onDayClick(day)"
126
- >{{ capitalize(day.text) }}</button>
127
- </kendo-buttongroup>
128
- </div>
110
+ <kendo-label
111
+ [text]="textFor('weeklyRepeatOn')"
112
+ labelCssClass="k-form-label"
113
+ (click)="onWeeklyRepeatOnClick()"
114
+ ></kendo-label>
115
+ <div class="k-form-field-wrap">
116
+ <kendo-buttongroup
117
+ class="k-button-group-solid"
118
+ width="100%"
119
+ selection="multiple"
120
+ >
121
+ @for (day of weekDays; track day) {
122
+ <button
123
+ kendoButton
124
+ [selected]="isSelected(day)"
125
+ (click)="onDayClick(day)"
126
+ >{{ capitalize(day.text) }}</button>
127
+ }
128
+ </kendo-buttongroup>
129
+ </div>
129
130
  </div>
130
- `,
131
+ `,
131
132
  standalone: true,
132
- imports: [LabelComponent, ButtonGroupComponent, NgFor, ButtonComponent]
133
+ imports: [LabelComponent, ButtonGroupComponent, ButtonComponent]
133
134
  }]
134
135
  }], ctorParameters: () => [{ type: i1.RecurrenceService }, { type: i2.LocalizationService }], propDecorators: { weekDayButtons: [{
135
136
  type: ViewChildren,
@@ -6,7 +6,7 @@ import { Component, forwardRef, ViewChild } from '@angular/core';
6
6
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
7
7
  import { ResourceEditorBase } from './resource-editor-base';
8
8
  import { MultiSelectComponent, TagTemplateDirective, ItemTemplateDirective } from '@progress/kendo-angular-dropdowns';
9
- import { NgIf, NgStyle } from '@angular/common';
9
+ import { NgStyle } from '@angular/common';
10
10
  import * as i0 from "@angular/core";
11
11
  /**
12
12
  * @hidden
@@ -30,30 +30,34 @@ export class MultipleResourceEditorComponent extends ResourceEditorBase {
30
30
  this.resourceMultiSelect.focus();
31
31
  }
32
32
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MultipleResourceEditorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
33
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: MultipleResourceEditorComponent, isStandalone: true, selector: "kendo-multiple-resource-editor", providers: [
33
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: MultipleResourceEditorComponent, isStandalone: true, selector: "kendo-multiple-resource-editor", providers: [
34
34
  MULTIPLE_RESOURCE_VALUE_ACCESSOR
35
35
  ], viewQueries: [{ propertyName: "resourceMultiSelect", first: true, predicate: ["resourceMultiSelect"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
36
36
  <kendo-multiselect
37
- #resourceMultiSelect
38
- [data]='resource.data'
39
- [textField]='resource.textField'
40
- [valueField]='resource.valueField'
41
- [valuePrimitive]='true'
42
- [value]='resourceValue'
43
- (valueChange)='onResourceValueChange($event)'
44
- >
45
- <ng-template kendoDropDownListItemTemplate let-dataItem>
46
- <span *ngIf="resource.colorField" class="k-scheduler-mark"
47
- [ngStyle]="getResourceStyle(dataItem)"></span>
48
- {{ getField(dataItem, resource.textField) }}
49
- </ng-template>
50
- <ng-template kendoMultiSelectTagTemplate let-dataItem>
51
- <span *ngIf="resource.colorField" class="k-scheduler-mark"
52
- [ngStyle]="getTagStyle(dataItem)"></span>
53
- {{ getField(dataItem, resource.textField) }}
54
- </ng-template>
37
+ #resourceMultiSelect
38
+ [data]='resource.data'
39
+ [textField]='resource.textField'
40
+ [valueField]='resource.valueField'
41
+ [valuePrimitive]='true'
42
+ [value]='resourceValue'
43
+ (valueChange)='onResourceValueChange($event)'
44
+ >
45
+ <ng-template kendoDropDownListItemTemplate let-dataItem>
46
+ @if (resource.colorField) {
47
+ <span class="k-scheduler-mark"
48
+ [ngStyle]="getResourceStyle(dataItem)"></span>
49
+ }
50
+ {{ getField(dataItem, resource.textField) }}
51
+ </ng-template>
52
+ <ng-template kendoMultiSelectTagTemplate let-dataItem>
53
+ @if (resource.colorField) {
54
+ <span class="k-scheduler-mark"
55
+ [ngStyle]="getTagStyle(dataItem)"></span>
56
+ }
57
+ {{ getField(dataItem, resource.textField) }}
58
+ </ng-template>
55
59
  </kendo-multiselect>
56
- `, isInline: true, dependencies: [{ kind: "component", type: MultiSelectComponent, selector: "kendo-multiselect", inputs: ["showStickyHeader", "focusableId", "autoClose", "loading", "data", "value", "valueField", "textField", "tabindex", "tabIndex", "size", "rounded", "fillMode", "placeholder", "adaptiveMode", "adaptiveTitle", "adaptiveSubtitle", "disabled", "itemDisabled", "checkboxes", "readonly", "filterable", "virtual", "popupSettings", "listHeight", "valuePrimitive", "clearButton", "tagMapper", "allowCustom", "valueNormalizer", "inputAttributes"], outputs: ["filterChange", "valueChange", "open", "opened", "close", "closed", "focus", "blur", "inputFocus", "inputBlur", "removeTag"], exportAs: ["kendoMultiSelect"] }, { kind: "directive", type: ItemTemplateDirective, selector: "[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: TagTemplateDirective, selector: "[kendoMultiSelectTagTemplate],[kendoMultiSelectTreeTagTemplate]" }] });
60
+ `, isInline: true, dependencies: [{ kind: "component", type: MultiSelectComponent, selector: "kendo-multiselect", inputs: ["showStickyHeader", "focusableId", "autoClose", "loading", "data", "value", "valueField", "textField", "tabindex", "tabIndex", "size", "rounded", "fillMode", "placeholder", "adaptiveMode", "adaptiveTitle", "adaptiveSubtitle", "disabled", "itemDisabled", "checkboxes", "readonly", "filterable", "virtual", "popupSettings", "listHeight", "valuePrimitive", "clearButton", "tagMapper", "allowCustom", "valueNormalizer", "inputAttributes"], outputs: ["filterChange", "valueChange", "open", "opened", "close", "closed", "focus", "blur", "inputFocus", "inputBlur", "removeTag"], exportAs: ["kendoMultiSelect"] }, { kind: "directive", type: ItemTemplateDirective, selector: "[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]" }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: TagTemplateDirective, selector: "[kendoMultiSelectTagTemplate],[kendoMultiSelectTreeTagTemplate]" }] });
57
61
  }
58
62
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MultipleResourceEditorComponent, decorators: [{
59
63
  type: Component,
@@ -64,28 +68,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
64
68
  selector: 'kendo-multiple-resource-editor',
65
69
  template: `
66
70
  <kendo-multiselect
67
- #resourceMultiSelect
68
- [data]='resource.data'
69
- [textField]='resource.textField'
70
- [valueField]='resource.valueField'
71
- [valuePrimitive]='true'
72
- [value]='resourceValue'
73
- (valueChange)='onResourceValueChange($event)'
74
- >
75
- <ng-template kendoDropDownListItemTemplate let-dataItem>
76
- <span *ngIf="resource.colorField" class="k-scheduler-mark"
77
- [ngStyle]="getResourceStyle(dataItem)"></span>
78
- {{ getField(dataItem, resource.textField) }}
79
- </ng-template>
80
- <ng-template kendoMultiSelectTagTemplate let-dataItem>
81
- <span *ngIf="resource.colorField" class="k-scheduler-mark"
82
- [ngStyle]="getTagStyle(dataItem)"></span>
83
- {{ getField(dataItem, resource.textField) }}
84
- </ng-template>
71
+ #resourceMultiSelect
72
+ [data]='resource.data'
73
+ [textField]='resource.textField'
74
+ [valueField]='resource.valueField'
75
+ [valuePrimitive]='true'
76
+ [value]='resourceValue'
77
+ (valueChange)='onResourceValueChange($event)'
78
+ >
79
+ <ng-template kendoDropDownListItemTemplate let-dataItem>
80
+ @if (resource.colorField) {
81
+ <span class="k-scheduler-mark"
82
+ [ngStyle]="getResourceStyle(dataItem)"></span>
83
+ }
84
+ {{ getField(dataItem, resource.textField) }}
85
+ </ng-template>
86
+ <ng-template kendoMultiSelectTagTemplate let-dataItem>
87
+ @if (resource.colorField) {
88
+ <span class="k-scheduler-mark"
89
+ [ngStyle]="getTagStyle(dataItem)"></span>
90
+ }
91
+ {{ getField(dataItem, resource.textField) }}
92
+ </ng-template>
85
93
  </kendo-multiselect>
86
- `,
94
+ `,
87
95
  standalone: true,
88
- imports: [MultiSelectComponent, ItemTemplateDirective, NgIf, NgStyle, TagTemplateDirective]
96
+ imports: [MultiSelectComponent, ItemTemplateDirective, NgStyle, TagTemplateDirective]
89
97
  }]
90
98
  }], propDecorators: { resourceMultiSelect: [{
91
99
  type: ViewChild,
@@ -6,7 +6,7 @@ import { Component, forwardRef, ViewChild } from '@angular/core';
6
6
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
7
7
  import { ResourceEditorBase } from './resource-editor-base';
8
8
  import { DropDownListComponent, ItemTemplateDirective } from '@progress/kendo-angular-dropdowns';
9
- import { NgIf, NgStyle } from '@angular/common';
9
+ import { NgStyle } from '@angular/common';
10
10
  import * as i0 from "@angular/core";
11
11
  /**
12
12
  * @hidden
@@ -25,25 +25,27 @@ export class SingleResourceEditorComponent extends ResourceEditorBase {
25
25
  this.resourceDropDown.focus();
26
26
  }
27
27
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SingleResourceEditorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
28
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: SingleResourceEditorComponent, isStandalone: true, selector: "kendo-single-resource-editor", providers: [
28
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SingleResourceEditorComponent, isStandalone: true, selector: "kendo-single-resource-editor", providers: [
29
29
  SINGLE_RESOURCE_VALUE_ACCESSOR
30
30
  ], viewQueries: [{ propertyName: "resourceDropDown", first: true, predicate: ["resourceDropDown"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
31
31
  <kendo-dropdownlist
32
- #resourceDropDown
33
- [data]='resource.data'
34
- [textField]='resource.textField'
35
- [valueField]='resource.valueField'
36
- [valuePrimitive]='true'
37
- [value]='resourceValue'
38
- (valueChange)='onResourceValueChange($event)'
39
- >
40
- <ng-template kendoDropDownListItemTemplate let-dataItem>
41
- <span *ngIf="resource.colorField" class="k-scheduler-mark"
42
- [ngStyle]="getResourceStyle(dataItem)"></span>
43
- {{ getField(dataItem, resource.textField) }}
44
- </ng-template>
32
+ #resourceDropDown
33
+ [data]='resource.data'
34
+ [textField]='resource.textField'
35
+ [valueField]='resource.valueField'
36
+ [valuePrimitive]='true'
37
+ [value]='resourceValue'
38
+ (valueChange)='onResourceValueChange($event)'
39
+ >
40
+ <ng-template kendoDropDownListItemTemplate let-dataItem>
41
+ @if (resource.colorField) {
42
+ <span class="k-scheduler-mark"
43
+ [ngStyle]="getResourceStyle(dataItem)"></span>
44
+ }
45
+ {{ getField(dataItem, resource.textField) }}
46
+ </ng-template>
45
47
  </kendo-dropdownlist>
46
- `, isInline: true, dependencies: [{ kind: "component", type: DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["customIconClass", "showStickyHeader", "icon", "svgIcon", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "adaptiveTitle", "adaptiveSubtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "leftRightArrowsNavigation", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { kind: "directive", type: ItemTemplateDirective, selector: "[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
48
+ `, isInline: true, dependencies: [{ kind: "component", type: DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["customIconClass", "showStickyHeader", "icon", "svgIcon", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "adaptiveTitle", "adaptiveSubtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "leftRightArrowsNavigation", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { kind: "directive", type: ItemTemplateDirective, selector: "[kendoDropDownListItemTemplate],[kendoComboBoxItemTemplate],[kendoAutoCompleteItemTemplate],[kendoMultiSelectItemTemplate]" }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
47
49
  }
48
50
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SingleResourceEditorComponent, decorators: [{
49
51
  type: Component,
@@ -54,23 +56,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
54
56
  selector: 'kendo-single-resource-editor',
55
57
  template: `
56
58
  <kendo-dropdownlist
57
- #resourceDropDown
58
- [data]='resource.data'
59
- [textField]='resource.textField'
60
- [valueField]='resource.valueField'
61
- [valuePrimitive]='true'
62
- [value]='resourceValue'
63
- (valueChange)='onResourceValueChange($event)'
64
- >
65
- <ng-template kendoDropDownListItemTemplate let-dataItem>
66
- <span *ngIf="resource.colorField" class="k-scheduler-mark"
67
- [ngStyle]="getResourceStyle(dataItem)"></span>
68
- {{ getField(dataItem, resource.textField) }}
69
- </ng-template>
59
+ #resourceDropDown
60
+ [data]='resource.data'
61
+ [textField]='resource.textField'
62
+ [valueField]='resource.valueField'
63
+ [valuePrimitive]='true'
64
+ [value]='resourceValue'
65
+ (valueChange)='onResourceValueChange($event)'
66
+ >
67
+ <ng-template kendoDropDownListItemTemplate let-dataItem>
68
+ @if (resource.colorField) {
69
+ <span class="k-scheduler-mark"
70
+ [ngStyle]="getResourceStyle(dataItem)"></span>
71
+ }
72
+ {{ getField(dataItem, resource.textField) }}
73
+ </ng-template>
70
74
  </kendo-dropdownlist>
71
- `,
75
+ `,
72
76
  standalone: true,
73
- imports: [DropDownListComponent, ItemTemplateDirective, NgIf, NgStyle]
77
+ imports: [DropDownListComponent, ItemTemplateDirective, NgStyle]
74
78
  }]
75
79
  }], propDecorators: { resourceDropDown: [{
76
80
  type: ViewChild,
@@ -7,7 +7,6 @@ import { Component, forwardRef, Input, EventEmitter, Output } from '@angular/cor
7
7
  import { NG_VALUE_ACCESSOR, NgControl, ReactiveFormsModule } from '@angular/forms';
8
8
  import { timezoneNames } from '@progress/kendo-date-math';
9
9
  import { ComboBoxComponent } from '@progress/kendo-angular-dropdowns';
10
- import { NgIf } from '@angular/common';
11
10
  import * as i0 from "@angular/core";
12
11
  import * as i1 from "@angular/forms";
13
12
  /**
@@ -110,11 +109,11 @@ export class TimeZoneEditorComponent {
110
109
  this.onTouchedCallback = fn;
111
110
  }
112
111
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TimeZoneEditorComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
113
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: TimeZoneEditorComponent, isStandalone: true, selector: "kendo-timezone-editor", inputs: { width: "width" }, outputs: { valueChange: "valueChange" }, providers: [
112
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: TimeZoneEditorComponent, isStandalone: true, selector: "kendo-timezone-editor", inputs: { width: "width" }, outputs: { valueChange: "valueChange" }, providers: [
114
113
  TIME_ZONE_VALUE_ACCESSOR
115
114
  ], viewQueries: [{ propertyName: "tzComboBox", first: true, predicate: ["tzcombobox"], descendants: true, static: true }, { propertyName: "tzComboBoxControl", first: true, predicate: ["tzcomboboxControl"], descendants: true, static: true }], ngImport: i0, template: `
116
- <kendo-combobox
117
- *ngIf="!formControl"
115
+ @if (!formControl) {
116
+ <kendo-combobox
118
117
  #tzcombobox
119
118
  [style.width.px]="width"
120
119
  [allowCustom]="false"
@@ -124,9 +123,10 @@ export class TimeZoneEditorComponent {
124
123
  [value]="tz"
125
124
  (filterChange)="onTimeZoneFilterChange($event)"
126
125
  (valueChange)="onTimeZoneChange($event)">
127
- </kendo-combobox>
128
- <kendo-combobox
129
- *ngIf="formControl"
126
+ </kendo-combobox>
127
+ }
128
+ @if (formControl) {
129
+ <kendo-combobox
130
130
  #tzcomboboxControl
131
131
  [style.width.px]="width"
132
132
  [allowCustom]="false"
@@ -137,8 +137,9 @@ export class TimeZoneEditorComponent {
137
137
  [formControl]="formControl"
138
138
  (filterChange)="onTimeZoneFilterChange($event)"
139
139
  (valueChange)="onTimeZoneChange($event)">
140
- </kendo-combobox>
141
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ComboBoxComponent, selector: "kendo-combobox", inputs: ["icon", "svgIcon", "inputAttributes", "showStickyHeader", "focusableId", "allowCustom", "data", "value", "textField", "valueField", "valuePrimitive", "valueNormalizer", "placeholder", "adaptiveMode", "adaptiveTitle", "adaptiveSubtitle", "popupSettings", "listHeight", "loading", "suggest", "clearButton", "disabled", "itemDisabled", "readonly", "tabindex", "tabIndex", "filterable", "virtual", "size", "rounded", "fillMode"], outputs: ["valueChange", "selectionChange", "filterChange", "open", "opened", "close", "closed", "focus", "blur", "inputFocus", "inputBlur", "escape"], exportAs: ["kendoComboBox"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
140
+ </kendo-combobox>
141
+ }
142
+ `, isInline: true, dependencies: [{ kind: "component", type: ComboBoxComponent, selector: "kendo-combobox", inputs: ["icon", "svgIcon", "inputAttributes", "showStickyHeader", "focusableId", "allowCustom", "data", "value", "textField", "valueField", "valuePrimitive", "valueNormalizer", "placeholder", "adaptiveMode", "adaptiveTitle", "adaptiveSubtitle", "popupSettings", "listHeight", "loading", "suggest", "clearButton", "disabled", "itemDisabled", "readonly", "tabindex", "tabIndex", "filterable", "virtual", "size", "rounded", "fillMode"], outputs: ["valueChange", "selectionChange", "filterChange", "open", "opened", "close", "closed", "focus", "blur", "inputFocus", "inputBlur", "escape"], exportAs: ["kendoComboBox"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
142
143
  }
143
144
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TimeZoneEditorComponent, decorators: [{
144
145
  type: Component,
@@ -148,8 +149,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
148
149
  ],
149
150
  selector: 'kendo-timezone-editor',
150
151
  template: `
151
- <kendo-combobox
152
- *ngIf="!formControl"
152
+ @if (!formControl) {
153
+ <kendo-combobox
153
154
  #tzcombobox
154
155
  [style.width.px]="width"
155
156
  [allowCustom]="false"
@@ -159,9 +160,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
159
160
  [value]="tz"
160
161
  (filterChange)="onTimeZoneFilterChange($event)"
161
162
  (valueChange)="onTimeZoneChange($event)">
162
- </kendo-combobox>
163
- <kendo-combobox
164
- *ngIf="formControl"
163
+ </kendo-combobox>
164
+ }
165
+ @if (formControl) {
166
+ <kendo-combobox
165
167
  #tzcomboboxControl
166
168
  [style.width.px]="width"
167
169
  [allowCustom]="false"
@@ -172,10 +174,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
172
174
  [formControl]="formControl"
173
175
  (filterChange)="onTimeZoneFilterChange($event)"
174
176
  (valueChange)="onTimeZoneChange($event)">
175
- </kendo-combobox>
176
- `,
177
+ </kendo-combobox>
178
+ }
179
+ `,
177
180
  standalone: true,
178
- imports: [NgIf, ComboBoxComponent, ReactiveFormsModule]
181
+ imports: [ComboBoxComponent, ReactiveFormsModule]
179
182
  }]
180
183
  }], ctorParameters: () => [{ type: i0.Injector }], propDecorators: { tzComboBox: [{
181
184
  type: ViewChild,
@@ -10,7 +10,7 @@ export const packageMetadata = {
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCode: 'KENDOUIANGULAR',
12
12
  productCodes: ['KENDOUIANGULAR'],
13
- publishDate: 1763729397,
14
- version: '21.1.1-develop.2',
13
+ publishDate: 1764002485,
14
+ version: '21.2.0-develop.2',
15
15
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
16
16
  };
@@ -8,7 +8,7 @@ import { LocalizationService } from '@progress/kendo-angular-l10n';
8
8
  import { PDFService } from './pdf.service';
9
9
  import { filePdfIcon } from '@progress/kendo-svg-icons';
10
10
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
11
- import { NgIf, NgClass } from '@angular/common';
11
+ import { NgClass } from '@angular/common';
12
12
  import * as i0 from "@angular/core";
13
13
  import * as i1 from "./pdf.service";
14
14
  import * as i2 from "@progress/kendo-angular-l10n";
@@ -48,37 +48,47 @@ export class PDFCommandDirective extends Button {
48
48
  this.svgIcon = filePdfIcon;
49
49
  }
50
50
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PDFCommandDirective, deps: [{ token: i1.PDFService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
51
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: PDFCommandDirective, isStandalone: true, selector: "[kendoSchedulerPDFCommand]", host: { listeners: { "click": "onClick($event)" } }, usesInheritance: true, ngImport: i0, template: `
52
- <kendo-icon-wrapper
53
- *ngIf="icon || svgIcon"
51
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: PDFCommandDirective, isStandalone: true, selector: "[kendoSchedulerPDFCommand]", host: { listeners: { "click": "onClick($event)" } }, usesInheritance: true, ngImport: i0, template: `
52
+ @if (icon || svgIcon) {
53
+ <kendo-icon-wrapper
54
54
  innerCssClass="k-button-icon"
55
55
  [name]="icon"
56
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
57
- <span *ngIf="imageUrl" class="k-button-icon k-icon">
56
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
57
+ }
58
+ @if (imageUrl) {
59
+ <span class="k-button-icon k-icon">
58
60
  <img [src]="imageUrl" class="k-image" role="presentation" />
59
- </span>
60
- <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
61
+ </span>
62
+ }
63
+ @if (iconClass) {
64
+ <span class="k-button-icon" [ngClass]="iconClass"></span>
65
+ }
61
66
  <span class="k-button-text"><ng-content></ng-content></span>
62
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
67
+ `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
63
68
  }
64
69
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PDFCommandDirective, decorators: [{
65
70
  type: Component,
66
71
  args: [{
67
72
  selector: '[kendoSchedulerPDFCommand]',
68
73
  template: `
69
- <kendo-icon-wrapper
70
- *ngIf="icon || svgIcon"
74
+ @if (icon || svgIcon) {
75
+ <kendo-icon-wrapper
71
76
  innerCssClass="k-button-icon"
72
77
  [name]="icon"
73
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
74
- <span *ngIf="imageUrl" class="k-button-icon k-icon">
78
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
79
+ }
80
+ @if (imageUrl) {
81
+ <span class="k-button-icon k-icon">
75
82
  <img [src]="imageUrl" class="k-image" role="presentation" />
76
- </span>
77
- <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
83
+ </span>
84
+ }
85
+ @if (iconClass) {
86
+ <span class="k-button-icon" [ngClass]="iconClass"></span>
87
+ }
78
88
  <span class="k-button-text"><ng-content></ng-content></span>
79
- `,
89
+ `,
80
90
  standalone: true,
81
- imports: [NgIf, IconWrapperComponent, NgClass]
91
+ imports: [IconWrapperComponent, NgClass]
82
92
  }]
83
93
  }], ctorParameters: () => [{ type: i1.PDFService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i2.LocalizationService }, { type: i0.NgZone }], propDecorators: { onClick: [{
84
94
  type: HostListener,