@progress/kendo-angular-scheduler 12.2.0-develop.1 → 12.2.0-develop.3
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/esm2020/package-metadata.mjs +2 -2
- package/esm2020/scheduler.component.mjs +18 -4
- package/esm2020/toolbar/navigation.component.mjs +6 -26
- package/esm2020/toolbar/toolbar.component.mjs +28 -11
- package/esm2020/toolbar/toolbar.module.mjs +7 -3
- package/esm2020/toolbar/view-selector.component.mjs +23 -11
- package/fesm2015/progress-kendo-angular-scheduler.mjs +80 -55
- package/fesm2020/progress-kendo-angular-scheduler.mjs +80 -55
- package/package.json +12 -12
- package/scheduler.component.d.ts +9 -1
- package/schematics/ngAdd/index.js +2 -2
- package/toolbar/navigation.component.d.ts +1 -15
- package/toolbar/toolbar.component.d.ts +9 -4
- package/toolbar/toolbar.module.d.ts +1 -1
- package/toolbar/view-selector.component.d.ts +11 -3
|
@@ -9,7 +9,7 @@ export const packageMetadata = {
|
|
|
9
9
|
name: '@progress/kendo-angular-scheduler',
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
|
12
|
-
publishDate:
|
|
13
|
-
version: '12.2.0-develop.
|
|
12
|
+
publishDate: 1684487904,
|
|
13
|
+
version: '12.2.0-develop.3',
|
|
14
14
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
15
15
|
};
|
|
@@ -261,6 +261,10 @@ export class SchedulerComponent {
|
|
|
261
261
|
* Fires when the user clicks the **PDF export** command button.
|
|
262
262
|
*/
|
|
263
263
|
this.pdfExport = new EventEmitter();
|
|
264
|
+
/**
|
|
265
|
+
* Fires when the Scheduler is resized horizontally.
|
|
266
|
+
*/
|
|
267
|
+
this.schedulerResize = new EventEmitter();
|
|
264
268
|
/**
|
|
265
269
|
* @hidden
|
|
266
270
|
*/
|
|
@@ -543,6 +547,12 @@ export class SchedulerComponent {
|
|
|
543
547
|
this.viewContext.notifyAction(action);
|
|
544
548
|
}
|
|
545
549
|
}
|
|
550
|
+
/**
|
|
551
|
+
* @hidden
|
|
552
|
+
*/
|
|
553
|
+
onToolbarWidthChange(width) {
|
|
554
|
+
this.schedulerResize.emit(width);
|
|
555
|
+
}
|
|
546
556
|
/**
|
|
547
557
|
* Creates a popup editor for the new event.
|
|
548
558
|
*
|
|
@@ -882,7 +892,7 @@ export class SchedulerComponent {
|
|
|
882
892
|
}
|
|
883
893
|
}
|
|
884
894
|
SchedulerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SchedulerComponent, deps: [{ token: i0.ElementRef }, { token: i1.ViewContextService }, { token: i2.ViewStateService }, { token: i3.EditService }, { token: i4.DialogsService }, { token: i5.IntlService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i6.PDFService }, { token: i7.LocalizationService }, { token: i8.DomEventsService }, { token: i0.Renderer2 }, { token: i9.FocusService }], target: i0.ɵɵFactoryTarget.Component });
|
|
885
|
-
SchedulerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SchedulerComponent, selector: "kendo-scheduler", inputs: { selectedViewIndex: "selectedViewIndex", editable: "editable", selectable: "selectable", min: "min", max: "max", eventHeight: "eventHeight", columnWidth: "columnWidth", showWorkHours: "showWorkHours", startTime: "startTime", endTime: "endTime", workDayStart: "workDayStart", workDayEnd: "workDayEnd", workWeekStart: "workWeekStart", workWeekEnd: "workWeekEnd", weekStart: "weekStart", slotDuration: "slotDuration", slotDivisions: "slotDivisions", slotFill: "slotFill", scrollTime: "scrollTime", group: "group", resources: "resources", loading: "loading", timezone: "timezone", events: "events", selectedDate: "selectedDate", modelFields: "modelFields", currentTimeMarker: "currentTimeMarker", highlightOngoingEvents: "highlightOngoingEvents", slotClass: "slotClass", eventClass: "eventClass", eventStyles: "eventStyles", isSlotSelected: "isSlotSelected" }, outputs: { selectedViewIndexChange: "selectedViewIndexChange", navigate: "navigate", dateChange: "dateChange", slotClick: "slotClick", slotDblClick: "slotDblClick", create: "create", eventClick: "eventClick", eventDblClick: "eventDblClick", eventKeydown: "eventKeydown", cancel: "cancel", save: "save", remove: "remove", resizeStart: "resizeStart", resize: "resize", resizeEnd: "resizeEnd", dragStart: "dragStart", drag: "drag", dragEnd: "dragEnd", slotDragStart: "slotDragStart", slotDrag: "slotDrag", slotDragEnd: "slotDragEnd", pdfExport: "pdfExport" }, host: { properties: { "class.k-widget": "this.hostClasses", "class.k-scheduler": "this.hostClasses", "class.k-floatwrap": "this.hostClasses", "attr.role": "this.ariaRole", "class.k-rtl": "this.rtl", "attr.dir": "this.dir" } }, providers: [
|
|
895
|
+
SchedulerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SchedulerComponent, selector: "kendo-scheduler", inputs: { selectedViewIndex: "selectedViewIndex", editable: "editable", selectable: "selectable", min: "min", max: "max", eventHeight: "eventHeight", columnWidth: "columnWidth", showWorkHours: "showWorkHours", startTime: "startTime", endTime: "endTime", workDayStart: "workDayStart", workDayEnd: "workDayEnd", workWeekStart: "workWeekStart", workWeekEnd: "workWeekEnd", weekStart: "weekStart", slotDuration: "slotDuration", slotDivisions: "slotDivisions", slotFill: "slotFill", scrollTime: "scrollTime", group: "group", resources: "resources", loading: "loading", timezone: "timezone", events: "events", selectedDate: "selectedDate", modelFields: "modelFields", currentTimeMarker: "currentTimeMarker", highlightOngoingEvents: "highlightOngoingEvents", slotClass: "slotClass", eventClass: "eventClass", eventStyles: "eventStyles", isSlotSelected: "isSlotSelected" }, outputs: { selectedViewIndexChange: "selectedViewIndexChange", navigate: "navigate", dateChange: "dateChange", slotClick: "slotClick", slotDblClick: "slotDblClick", create: "create", eventClick: "eventClick", eventDblClick: "eventDblClick", eventKeydown: "eventKeydown", cancel: "cancel", save: "save", remove: "remove", resizeStart: "resizeStart", resize: "resize", resizeEnd: "resizeEnd", dragStart: "dragStart", drag: "drag", dragEnd: "dragEnd", slotDragStart: "slotDragStart", slotDrag: "slotDrag", slotDragEnd: "slotDragEnd", pdfExport: "pdfExport", schedulerResize: "schedulerResize" }, host: { properties: { "class.k-widget": "this.hostClasses", "class.k-scheduler": "this.hostClasses", "class.k-floatwrap": "this.hostClasses", "attr.role": "this.ariaRole", "class.k-rtl": "this.rtl", "attr.dir": "this.dir" } }, providers: [
|
|
886
896
|
EditService,
|
|
887
897
|
DialogsService,
|
|
888
898
|
DomEventsService,
|
|
@@ -1145,9 +1155,10 @@ SchedulerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
|
|
|
1145
1155
|
[views]="$any(views)"
|
|
1146
1156
|
[selectedView]="selectedView"
|
|
1147
1157
|
[template]="toolbarTemplate"
|
|
1148
|
-
(navigate)="onNavigationAction($event)"
|
|
1149
1158
|
[min]="min"
|
|
1150
1159
|
[max]="max"
|
|
1160
|
+
(navigate)="onNavigationAction($event)"
|
|
1161
|
+
(toolbarWidthChange)="onToolbarWidthChange($event)"
|
|
1151
1162
|
></kendo-scheduler-toolbar>
|
|
1152
1163
|
|
|
1153
1164
|
<ng-container *ngTemplateOutlet="selectedView?.template">
|
|
@@ -1168,7 +1179,7 @@ SchedulerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
|
|
|
1168
1179
|
|
|
1169
1180
|
<div [loading]="loading" kendoSchedulerLoading>
|
|
1170
1181
|
</div>
|
|
1171
|
-
`, isInline: true, components: [{ type: i10.ToolbarComponent, selector: "kendo-scheduler-toolbar", inputs: ["selectedView", "views", "dateRange", "selectedDate", "template", "min", "max"], outputs: ["navigate"] }, { type: i11.EditDialogComponent, selector: "kendo-scheduler-edit-dialog", inputs: ["resources", "timezone", "weekStart", "fields", "editTemplate"] }, { type: i12.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: i13.LoadingComponent, selector: "[kendoSchedulerLoading]", inputs: ["loading"] }], directives: [{ type: i14.LocalizedMessagesDirective, selector: "[kendoSchedulerLocalizedMessages]" }, { type: i15.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1182
|
+
`, isInline: true, components: [{ type: i10.ToolbarComponent, selector: "kendo-scheduler-toolbar", inputs: ["selectedView", "views", "dateRange", "selectedDate", "template", "min", "max"], outputs: ["navigate", "toolbarWidthChange"] }, { type: i11.EditDialogComponent, selector: "kendo-scheduler-edit-dialog", inputs: ["resources", "timezone", "weekStart", "fields", "editTemplate"] }, { type: i12.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: i13.LoadingComponent, selector: "[kendoSchedulerLoading]", inputs: ["loading"] }], directives: [{ type: i14.LocalizedMessagesDirective, selector: "[kendoSchedulerLocalizedMessages]" }, { type: i15.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1172
1183
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SchedulerComponent, decorators: [{
|
|
1173
1184
|
type: Component,
|
|
1174
1185
|
args: [{
|
|
@@ -1438,9 +1449,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
1438
1449
|
[views]="$any(views)"
|
|
1439
1450
|
[selectedView]="selectedView"
|
|
1440
1451
|
[template]="toolbarTemplate"
|
|
1441
|
-
(navigate)="onNavigationAction($event)"
|
|
1442
1452
|
[min]="min"
|
|
1443
1453
|
[max]="max"
|
|
1454
|
+
(navigate)="onNavigationAction($event)"
|
|
1455
|
+
(toolbarWidthChange)="onToolbarWidthChange($event)"
|
|
1444
1456
|
></kendo-scheduler-toolbar>
|
|
1445
1457
|
|
|
1446
1458
|
<ng-container *ngTemplateOutlet="selectedView?.template">
|
|
@@ -1589,6 +1601,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
1589
1601
|
type: Output
|
|
1590
1602
|
}], pdfExport: [{
|
|
1591
1603
|
type: Output
|
|
1604
|
+
}], schedulerResize: [{
|
|
1605
|
+
type: Output
|
|
1592
1606
|
}], editDialogTemplate: [{
|
|
1593
1607
|
type: ContentChild,
|
|
1594
1608
|
args: [EditDialogTemplateDirective, { static: false }]
|
|
@@ -43,21 +43,7 @@ export class ToolbarNavigationComponent {
|
|
|
43
43
|
this.localization = localization;
|
|
44
44
|
this.cd = cd;
|
|
45
45
|
this.viewContext = viewContext;
|
|
46
|
-
|
|
47
|
-
* @hidden
|
|
48
|
-
* TODO: Drop in next MAJOR version
|
|
49
|
-
*/
|
|
50
|
-
this.inlineDisplayStyle = 'flex';
|
|
51
|
-
/**
|
|
52
|
-
* @hidden
|
|
53
|
-
* TODO: Drop in next MAJOR version
|
|
54
|
-
*/
|
|
55
|
-
this.inlineFlexFlowStyle = 'inherit';
|
|
56
|
-
/**
|
|
57
|
-
* @hidden
|
|
58
|
-
* TODO: Drop in next MAJOR version
|
|
59
|
-
*/
|
|
60
|
-
this.inlineGapStyle = 'inherit';
|
|
46
|
+
this.hostClass = true;
|
|
61
47
|
/**
|
|
62
48
|
* @hidden
|
|
63
49
|
*/
|
|
@@ -199,10 +185,10 @@ export class ToolbarNavigationComponent {
|
|
|
199
185
|
}
|
|
200
186
|
}
|
|
201
187
|
ToolbarNavigationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarNavigationComponent, deps: [{ token: i1.PopupService }, { token: i2.ToolbarService }, { token: i3.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: i4.ViewContextService }], target: i0.ɵɵFactoryTarget.Component });
|
|
202
|
-
ToolbarNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ToolbarNavigationComponent, selector: "[kendoSchedulerToolbarNavigation]", inputs: { min: "min", max: "max" }, host: { properties: { "
|
|
188
|
+
ToolbarNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ToolbarNavigationComponent, selector: "[kendoSchedulerToolbarNavigation]", inputs: { min: "min", max: "max" }, host: { properties: { "class.k-toolbar-group": "this.hostClass" } }, providers: [
|
|
203
189
|
PopupService
|
|
204
190
|
], viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true }], ngImport: i0, template: `
|
|
205
|
-
<span class="k-scheduler-navigation k-button-group" role="group">
|
|
191
|
+
<span class="k-scheduler-navigation k-button-group k-button-group-solid" role="group">
|
|
206
192
|
<button kendoButton
|
|
207
193
|
(click)="todayClick()"
|
|
208
194
|
class="k-nav-today"
|
|
@@ -274,7 +260,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
274
260
|
PopupService
|
|
275
261
|
],
|
|
276
262
|
template: `
|
|
277
|
-
<span class="k-scheduler-navigation k-button-group" role="group">
|
|
263
|
+
<span class="k-scheduler-navigation k-button-group k-button-group-solid" role="group">
|
|
278
264
|
<button kendoButton
|
|
279
265
|
(click)="todayClick()"
|
|
280
266
|
class="k-nav-today"
|
|
@@ -340,15 +326,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
340
326
|
}], ctorParameters: function () { return [{ type: i1.PopupService }, { type: i2.ToolbarService }, { type: i3.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: i4.ViewContextService }]; }, propDecorators: { calendar: [{
|
|
341
327
|
type: ViewChild,
|
|
342
328
|
args: ['calendar', { static: false }]
|
|
343
|
-
}],
|
|
344
|
-
type: HostBinding,
|
|
345
|
-
args: ['style.display']
|
|
346
|
-
}], inlineFlexFlowStyle: [{
|
|
347
|
-
type: HostBinding,
|
|
348
|
-
args: ['style.flex-flow']
|
|
349
|
-
}], inlineGapStyle: [{
|
|
329
|
+
}], hostClass: [{
|
|
350
330
|
type: HostBinding,
|
|
351
|
-
args: ['
|
|
331
|
+
args: ['class.k-toolbar-group']
|
|
352
332
|
}], min: [{
|
|
353
333
|
type: Input
|
|
354
334
|
}], max: [{
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
|
|
5
|
+
import { Component, ElementRef, EventEmitter, HostBinding, Input, NgZone, Output } from '@angular/core';
|
|
6
6
|
import { Observable, Subscription } from 'rxjs';
|
|
7
7
|
import { SchedulerView } from '../types';
|
|
8
8
|
import { ToolbarTemplateDirective } from './toolbar-template.directive';
|
|
@@ -11,16 +11,20 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
import * as i1 from "./toolbar.service";
|
|
12
12
|
import * as i2 from "./navigation.component";
|
|
13
13
|
import * as i3 from "./view-selector.component";
|
|
14
|
-
import * as i4 from "@angular
|
|
14
|
+
import * as i4 from "@progress/kendo-angular-common";
|
|
15
|
+
import * as i5 from "@angular/common";
|
|
15
16
|
/**
|
|
16
17
|
* @hidden
|
|
17
18
|
*/
|
|
18
19
|
export class ToolbarComponent {
|
|
19
|
-
constructor(service) {
|
|
20
|
+
constructor(service, element, zone) {
|
|
20
21
|
this.service = service;
|
|
22
|
+
this.element = element;
|
|
23
|
+
this.zone = zone;
|
|
21
24
|
this.hostClasses = true;
|
|
22
25
|
this.toolbarRole = 'toolbar';
|
|
23
26
|
this.navigate = new EventEmitter();
|
|
27
|
+
this.toolbarWidthChange = new EventEmitter();
|
|
24
28
|
// The template context is the same as the service context,
|
|
25
29
|
// but with resolved values instead of observables.
|
|
26
30
|
this.templateContext = {};
|
|
@@ -30,6 +34,7 @@ export class ToolbarComponent {
|
|
|
30
34
|
ngOnInit() {
|
|
31
35
|
this.subs.add(this.selectedDate.subscribe(date => this.templateContext.selectedDate = date));
|
|
32
36
|
this.subs.add(this.dateRange.subscribe(dateRange => this.templateContext.dateRange = dateRange));
|
|
37
|
+
this.resizeHandler();
|
|
33
38
|
}
|
|
34
39
|
ngOnChanges() {
|
|
35
40
|
this.service.context = {
|
|
@@ -48,9 +53,15 @@ export class ToolbarComponent {
|
|
|
48
53
|
ngOnDestroy() {
|
|
49
54
|
this.subs.unsubscribe();
|
|
50
55
|
}
|
|
56
|
+
resizeHandler() {
|
|
57
|
+
const element = this.element.nativeElement;
|
|
58
|
+
this.zone.run(() => this.toolbarWidth = element.offsetWidth);
|
|
59
|
+
this.toolbarWidthChange.emit(this.toolbarWidth);
|
|
60
|
+
}
|
|
61
|
+
;
|
|
51
62
|
}
|
|
52
|
-
ToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarComponent, deps: [{ token: i1.ToolbarService }], target: i0.ɵɵFactoryTarget.Component });
|
|
53
|
-
ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ToolbarComponent, selector: "kendo-scheduler-toolbar", inputs: { selectedView: "selectedView", views: "views", dateRange: "dateRange", selectedDate: "selectedDate", template: "template", min: "min", max: "max" }, outputs: { navigate: "navigate" }, host: { properties: { "class.k-scheduler-toolbar": "this.hostClasses", "class.k-toolbar": "this.hostClasses", "class.k-toolbar-md": "this.hostClasses", "attr.role": "this.toolbarRole" } }, usesOnChanges: true, ngImport: i0, template: `
|
|
63
|
+
ToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarComponent, deps: [{ token: i1.ToolbarService }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
64
|
+
ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ToolbarComponent, selector: "kendo-scheduler-toolbar", inputs: { selectedView: "selectedView", views: "views", dateRange: "dateRange", selectedDate: "selectedDate", template: "template", min: "min", max: "max" }, outputs: { navigate: "navigate", toolbarWidthChange: "toolbarWidthChange" }, host: { properties: { "class.k-scheduler-toolbar": "this.hostClasses", "class.k-toolbar": "this.hostClasses", "class.k-toolbar-md": "this.hostClasses", "attr.role": "this.toolbarRole" } }, usesOnChanges: true, ngImport: i0, template: `
|
|
54
65
|
<ng-template
|
|
55
66
|
*ngIf="template; else defaultTemplate"
|
|
56
67
|
[ngTemplateOutlet]="template.templateRef"
|
|
@@ -61,9 +72,11 @@ ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
|
|
|
61
72
|
<ng-template #defaultTemplate>
|
|
62
73
|
<div kendoSchedulerToolbarNavigation [min]="min" [max]="max"></div>
|
|
63
74
|
<span class="k-spacer"></span>
|
|
64
|
-
<div kendoSchedulerToolbarViewSelector></div>
|
|
75
|
+
<div kendoSchedulerToolbarViewSelector [toolbarWidth]="toolbarWidth"></div>
|
|
65
76
|
</ng-template>
|
|
66
|
-
|
|
77
|
+
|
|
78
|
+
<kendo-resize-sensor (resize)="resizeHandler()" [style]="'display: contents;'"></kendo-resize-sensor>
|
|
79
|
+
`, isInline: true, components: [{ type: i2.ToolbarNavigationComponent, selector: "[kendoSchedulerToolbarNavigation]", inputs: ["min", "max"] }, { type: i3.ToolbarViewSelectorComponent, selector: "[kendoSchedulerToolbarViewSelector]", inputs: ["toolbarWidth", "responsiveBreakpoint"] }, { type: i4.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
|
|
67
80
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarComponent, decorators: [{
|
|
68
81
|
type: Component,
|
|
69
82
|
args: [{
|
|
@@ -79,11 +92,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
79
92
|
<ng-template #defaultTemplate>
|
|
80
93
|
<div kendoSchedulerToolbarNavigation [min]="min" [max]="max"></div>
|
|
81
94
|
<span class="k-spacer"></span>
|
|
82
|
-
<div kendoSchedulerToolbarViewSelector></div>
|
|
95
|
+
<div kendoSchedulerToolbarViewSelector [toolbarWidth]="toolbarWidth"></div>
|
|
83
96
|
</ng-template>
|
|
97
|
+
|
|
98
|
+
<kendo-resize-sensor (resize)="resizeHandler()" [style]="'display: contents;'"></kendo-resize-sensor>
|
|
84
99
|
`
|
|
85
100
|
}]
|
|
86
|
-
}], ctorParameters: function () { return [{ type: i1.ToolbarService }]; }, propDecorators: { hostClasses: [{
|
|
101
|
+
}], ctorParameters: function () { return [{ type: i1.ToolbarService }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { hostClasses: [{
|
|
87
102
|
type: HostBinding,
|
|
88
103
|
args: ['class.k-scheduler-toolbar']
|
|
89
104
|
}, {
|
|
@@ -105,10 +120,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
105
120
|
type: Input
|
|
106
121
|
}], template: [{
|
|
107
122
|
type: Input
|
|
108
|
-
}], navigate: [{
|
|
109
|
-
type: Output
|
|
110
123
|
}], min: [{
|
|
111
124
|
type: Input
|
|
112
125
|
}], max: [{
|
|
113
126
|
type: Input
|
|
127
|
+
}], navigate: [{
|
|
128
|
+
type: Output
|
|
129
|
+
}], toolbarWidthChange: [{
|
|
130
|
+
type: Output
|
|
114
131
|
}] } });
|
|
@@ -8,6 +8,7 @@ import { ButtonsModule } from '@progress/kendo-angular-buttons';
|
|
|
8
8
|
import { CalendarModule } from '@progress/kendo-angular-dateinputs';
|
|
9
9
|
import { PopupModule } from '@progress/kendo-angular-popup';
|
|
10
10
|
import { EventsModule } from '@progress/kendo-angular-common';
|
|
11
|
+
import { ResizeSensorModule } from '@progress/kendo-angular-common';
|
|
11
12
|
import { ToolbarNavigationComponent } from './navigation.component';
|
|
12
13
|
import { ToolbarComponent } from './toolbar.component';
|
|
13
14
|
import { ToolbarTemplateDirective } from './toolbar-template.directive';
|
|
@@ -35,7 +36,8 @@ ToolbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
|
35
36
|
CalendarModule,
|
|
36
37
|
PopupModule,
|
|
37
38
|
EventsModule,
|
|
38
|
-
SharedModule
|
|
39
|
+
SharedModule,
|
|
40
|
+
ResizeSensorModule], exports: [ToolbarComponent, ToolbarNavigationComponent,
|
|
39
41
|
ToolbarTemplateDirective,
|
|
40
42
|
ToolbarViewSelectorComponent] });
|
|
41
43
|
ToolbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarModule, imports: [[
|
|
@@ -44,7 +46,8 @@ ToolbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
|
|
|
44
46
|
CalendarModule,
|
|
45
47
|
PopupModule,
|
|
46
48
|
EventsModule,
|
|
47
|
-
SharedModule
|
|
49
|
+
SharedModule,
|
|
50
|
+
ResizeSensorModule
|
|
48
51
|
]] });
|
|
49
52
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarModule, decorators: [{
|
|
50
53
|
type: NgModule,
|
|
@@ -55,7 +58,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
55
58
|
CalendarModule,
|
|
56
59
|
PopupModule,
|
|
57
60
|
EventsModule,
|
|
58
|
-
SharedModule
|
|
61
|
+
SharedModule,
|
|
62
|
+
ResizeSensorModule
|
|
59
63
|
],
|
|
60
64
|
exports: [
|
|
61
65
|
ToolbarComponent,
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
3
|
* Licensed under commercial license. See LICENSE.md in the project root for more information
|
|
4
4
|
*-------------------------------------------------------------------------------------------*/
|
|
5
|
-
import { Component,
|
|
5
|
+
import { Component, Input } from '@angular/core';
|
|
6
6
|
import { ToolbarService } from './toolbar.service';
|
|
7
7
|
import { LocalizationService } from '@progress/kendo-angular-l10n';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
@@ -31,9 +31,12 @@ export class ToolbarViewSelectorComponent {
|
|
|
31
31
|
this.service = service;
|
|
32
32
|
this.localization = localization;
|
|
33
33
|
/**
|
|
34
|
-
*
|
|
34
|
+
* Specifies the Toolbar width (in pixels) at which the responsive behavior should be enabled.
|
|
35
|
+
* The responsive behavior means that the ButtonGroup with the views will be replaced by a `select` element.
|
|
36
|
+
*
|
|
37
|
+
* @default 1024
|
|
35
38
|
*/
|
|
36
|
-
this.
|
|
39
|
+
this.responsiveBreakpoint = 1024;
|
|
37
40
|
}
|
|
38
41
|
/**
|
|
39
42
|
* @hidden
|
|
@@ -80,9 +83,9 @@ export class ToolbarViewSelectorComponent {
|
|
|
80
83
|
}
|
|
81
84
|
}
|
|
82
85
|
ToolbarViewSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarViewSelectorComponent, deps: [{ token: i1.ToolbarService }, { token: i2.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
83
|
-
ToolbarViewSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ToolbarViewSelectorComponent, selector: "[kendoSchedulerToolbarViewSelector]",
|
|
86
|
+
ToolbarViewSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ToolbarViewSelectorComponent, selector: "[kendoSchedulerToolbarViewSelector]", inputs: { toolbarWidth: "toolbarWidth", responsiveBreakpoint: "responsiveBreakpoint" }, ngImport: i0, template: `
|
|
84
87
|
<select
|
|
85
|
-
*ngIf="ctx.views?.length > 1"
|
|
88
|
+
*ngIf="ctx.views?.length > 1 && toolbarWidth <= responsiveBreakpoint"
|
|
86
89
|
(change)="onChange($event)"
|
|
87
90
|
class="k-views-dropdown k-picker-md k-rounded-md k-picker-solid k-dropdownlist k-picker"
|
|
88
91
|
[attr.aria-label]="selectView"
|
|
@@ -95,7 +98,11 @@ ToolbarViewSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
95
98
|
{{ view.title }}
|
|
96
99
|
</option>
|
|
97
100
|
</select>
|
|
98
|
-
<span
|
|
101
|
+
<span
|
|
102
|
+
*ngIf="toolbarWidth > responsiveBreakpoint"
|
|
103
|
+
class="k-toolbar-button-group k-scheduler-views k-button-group k-button-group-solid"
|
|
104
|
+
role="group"
|
|
105
|
+
>
|
|
99
106
|
<button kendoButton
|
|
100
107
|
type="button"
|
|
101
108
|
*ngFor="let view of ctx.views"
|
|
@@ -117,7 +124,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
117
124
|
selector: '[kendoSchedulerToolbarViewSelector]',
|
|
118
125
|
template: `
|
|
119
126
|
<select
|
|
120
|
-
*ngIf="ctx.views?.length > 1"
|
|
127
|
+
*ngIf="ctx.views?.length > 1 && toolbarWidth <= responsiveBreakpoint"
|
|
121
128
|
(change)="onChange($event)"
|
|
122
129
|
class="k-views-dropdown k-picker-md k-rounded-md k-picker-solid k-dropdownlist k-picker"
|
|
123
130
|
[attr.aria-label]="selectView"
|
|
@@ -130,7 +137,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
130
137
|
{{ view.title }}
|
|
131
138
|
</option>
|
|
132
139
|
</select>
|
|
133
|
-
<span
|
|
140
|
+
<span
|
|
141
|
+
*ngIf="toolbarWidth > responsiveBreakpoint"
|
|
142
|
+
class="k-toolbar-button-group k-scheduler-views k-button-group k-button-group-solid"
|
|
143
|
+
role="group"
|
|
144
|
+
>
|
|
134
145
|
<button kendoButton
|
|
135
146
|
type="button"
|
|
136
147
|
*ngFor="let view of ctx.views"
|
|
@@ -146,7 +157,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
146
157
|
</span>
|
|
147
158
|
`
|
|
148
159
|
}]
|
|
149
|
-
}], ctorParameters: function () { return [{ type: i1.ToolbarService }, { type: i2.LocalizationService }]; }, propDecorators: {
|
|
150
|
-
type:
|
|
151
|
-
|
|
160
|
+
}], ctorParameters: function () { return [{ type: i1.ToolbarService }, { type: i2.LocalizationService }]; }, propDecorators: { toolbarWidth: [{
|
|
161
|
+
type: Input
|
|
162
|
+
}], responsiveBreakpoint: [{
|
|
163
|
+
type: Input
|
|
152
164
|
}] } });
|