@progress/kendo-angular-scheduler 12.2.0-develop.2 → 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.
@@ -7,7 +7,7 @@ import { Directive, Optional, Injectable, EventEmitter, Input, Inject, isDevMode
7
7
  import * as i1$1 from '@progress/kendo-angular-l10n';
8
8
  import { LocalizationService, L10N_PREFIX, RTL, ComponentMessages } from '@progress/kendo-angular-l10n';
9
9
  import * as i7 from '@progress/kendo-angular-common';
10
- import { hasObservers, isDocumentAvailable, isVisible as isVisible$1, scrollbarWidth, isChanged, Keys, anyChanged, ResizeSensorComponent, EventsModule, guid, ResizeSensorModule } from '@progress/kendo-angular-common';
10
+ import { hasObservers, isDocumentAvailable, isVisible as isVisible$1, scrollbarWidth, isChanged, Keys, anyChanged, ResizeSensorComponent, EventsModule, ResizeSensorModule, guid } from '@progress/kendo-angular-common';
11
11
  import { isEqualDate, timezoneNames, ZonedDate, toLocalDate, getDate, Day, MS_PER_DAY, addDays, firstDayOfMonth, firstDayInWeek, addMonths, addWeeks } from '@progress/kendo-date-math';
12
12
  import { auditTime, buffer, filter, map, debounceTime, take, switchMap, tap, distinctUntilChanged } from 'rxjs/operators';
13
13
  import { validatePackage } from '@progress/kendo-licensing';
@@ -48,8 +48,8 @@ const packageMetadata = {
48
48
  name: '@progress/kendo-angular-scheduler',
49
49
  productName: 'Kendo UI for Angular',
50
50
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
51
- publishDate: 1684484766,
52
- version: '12.2.0-develop.2',
51
+ publishDate: 1684487904,
52
+ version: '12.2.0-develop.3',
53
53
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
54
54
  };
55
55
 
@@ -2345,21 +2345,7 @@ class ToolbarNavigationComponent {
2345
2345
  this.localization = localization;
2346
2346
  this.cd = cd;
2347
2347
  this.viewContext = viewContext;
2348
- /**
2349
- * @hidden
2350
- * TODO: Drop in next MAJOR version
2351
- */
2352
- this.inlineDisplayStyle = 'flex';
2353
- /**
2354
- * @hidden
2355
- * TODO: Drop in next MAJOR version
2356
- */
2357
- this.inlineFlexFlowStyle = 'inherit';
2358
- /**
2359
- * @hidden
2360
- * TODO: Drop in next MAJOR version
2361
- */
2362
- this.inlineGapStyle = 'inherit';
2348
+ this.hostClass = true;
2363
2349
  /**
2364
2350
  * @hidden
2365
2351
  */
@@ -2501,10 +2487,10 @@ class ToolbarNavigationComponent {
2501
2487
  }
2502
2488
  }
2503
2489
  ToolbarNavigationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarNavigationComponent, deps: [{ token: i1$2.PopupService }, { token: ToolbarService }, { token: i1$1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: ViewContextService }], target: i0.ɵɵFactoryTarget.Component });
2504
- ToolbarNavigationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ToolbarNavigationComponent, selector: "[kendoSchedulerToolbarNavigation]", inputs: { min: "min", max: "max" }, host: { properties: { "style.display": "this.inlineDisplayStyle", "style.flex-flow": "this.inlineFlexFlowStyle", "style.gap": "this.inlineGapStyle" } }, providers: [
2490
+ 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: [
2505
2491
  PopupService
2506
2492
  ], viewQueries: [{ propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true }], ngImport: i0, template: `
2507
- <span class="k-scheduler-navigation k-button-group" role="group">
2493
+ <span class="k-scheduler-navigation k-button-group k-button-group-solid" role="group">
2508
2494
  <button kendoButton
2509
2495
  (click)="todayClick()"
2510
2496
  class="k-nav-today"
@@ -2576,7 +2562,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2576
2562
  PopupService
2577
2563
  ],
2578
2564
  template: `
2579
- <span class="k-scheduler-navigation k-button-group" role="group">
2565
+ <span class="k-scheduler-navigation k-button-group k-button-group-solid" role="group">
2580
2566
  <button kendoButton
2581
2567
  (click)="todayClick()"
2582
2568
  class="k-nav-today"
@@ -2642,15 +2628,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2642
2628
  }], ctorParameters: function () { return [{ type: i1$2.PopupService }, { type: ToolbarService }, { type: i1$1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: ViewContextService }]; }, propDecorators: { calendar: [{
2643
2629
  type: ViewChild,
2644
2630
  args: ['calendar', { static: false }]
2645
- }], inlineDisplayStyle: [{
2631
+ }], hostClass: [{
2646
2632
  type: HostBinding,
2647
- args: ['style.display']
2648
- }], inlineFlexFlowStyle: [{
2649
- type: HostBinding,
2650
- args: ['style.flex-flow']
2651
- }], inlineGapStyle: [{
2652
- type: HostBinding,
2653
- args: ['style.gap']
2633
+ args: ['class.k-toolbar-group']
2654
2634
  }], min: [{
2655
2635
  type: Input
2656
2636
  }], max: [{
@@ -2677,9 +2657,12 @@ class ToolbarViewSelectorComponent {
2677
2657
  this.service = service;
2678
2658
  this.localization = localization;
2679
2659
  /**
2680
- * @hidden
2660
+ * Specifies the Toolbar width (in pixels) at which the responsive behavior should be enabled.
2661
+ * The responsive behavior means that the ButtonGroup with the views will be replaced by a `select` element.
2662
+ *
2663
+ * @default 1024
2681
2664
  */
2682
- this.hostClasses = true;
2665
+ this.responsiveBreakpoint = 1024;
2683
2666
  }
2684
2667
  /**
2685
2668
  * @hidden
@@ -2726,9 +2709,9 @@ class ToolbarViewSelectorComponent {
2726
2709
  }
2727
2710
  }
2728
2711
  ToolbarViewSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarViewSelectorComponent, deps: [{ token: ToolbarService }, { token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
2729
- ToolbarViewSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ToolbarViewSelectorComponent, selector: "[kendoSchedulerToolbarViewSelector]", host: { properties: { "class.k-scheduler-views-wrapper": "this.hostClasses" } }, ngImport: i0, template: `
2712
+ ToolbarViewSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ToolbarViewSelectorComponent, selector: "[kendoSchedulerToolbarViewSelector]", inputs: { toolbarWidth: "toolbarWidth", responsiveBreakpoint: "responsiveBreakpoint" }, ngImport: i0, template: `
2730
2713
  <select
2731
- *ngIf="ctx.views?.length > 1"
2714
+ *ngIf="ctx.views?.length > 1 && toolbarWidth <= responsiveBreakpoint"
2732
2715
  (change)="onChange($event)"
2733
2716
  class="k-views-dropdown k-picker-md k-rounded-md k-picker-solid k-dropdownlist k-picker"
2734
2717
  [attr.aria-label]="selectView"
@@ -2741,7 +2724,11 @@ ToolbarViewSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
2741
2724
  {{ view.title }}
2742
2725
  </option>
2743
2726
  </select>
2744
- <span class="k-scheduler-views k-button-group" role="group">
2727
+ <span
2728
+ *ngIf="toolbarWidth > responsiveBreakpoint"
2729
+ class="k-toolbar-button-group k-scheduler-views k-button-group k-button-group-solid"
2730
+ role="group"
2731
+ >
2745
2732
  <button kendoButton
2746
2733
  type="button"
2747
2734
  *ngFor="let view of ctx.views"
@@ -2763,7 +2750,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2763
2750
  selector: '[kendoSchedulerToolbarViewSelector]',
2764
2751
  template: `
2765
2752
  <select
2766
- *ngIf="ctx.views?.length > 1"
2753
+ *ngIf="ctx.views?.length > 1 && toolbarWidth <= responsiveBreakpoint"
2767
2754
  (change)="onChange($event)"
2768
2755
  class="k-views-dropdown k-picker-md k-rounded-md k-picker-solid k-dropdownlist k-picker"
2769
2756
  [attr.aria-label]="selectView"
@@ -2776,7 +2763,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2776
2763
  {{ view.title }}
2777
2764
  </option>
2778
2765
  </select>
2779
- <span class="k-scheduler-views k-button-group" role="group">
2766
+ <span
2767
+ *ngIf="toolbarWidth > responsiveBreakpoint"
2768
+ class="k-toolbar-button-group k-scheduler-views k-button-group k-button-group-solid"
2769
+ role="group"
2770
+ >
2780
2771
  <button kendoButton
2781
2772
  type="button"
2782
2773
  *ngFor="let view of ctx.views"
@@ -2792,20 +2783,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2792
2783
  </span>
2793
2784
  `
2794
2785
  }]
2795
- }], ctorParameters: function () { return [{ type: ToolbarService }, { type: i1$1.LocalizationService }]; }, propDecorators: { hostClasses: [{
2796
- type: HostBinding,
2797
- args: ['class.k-scheduler-views-wrapper']
2786
+ }], ctorParameters: function () { return [{ type: ToolbarService }, { type: i1$1.LocalizationService }]; }, propDecorators: { toolbarWidth: [{
2787
+ type: Input
2788
+ }], responsiveBreakpoint: [{
2789
+ type: Input
2798
2790
  }] } });
2799
2791
 
2800
2792
  /**
2801
2793
  * @hidden
2802
2794
  */
2803
2795
  class ToolbarComponent {
2804
- constructor(service) {
2796
+ constructor(service, element, zone) {
2805
2797
  this.service = service;
2798
+ this.element = element;
2799
+ this.zone = zone;
2806
2800
  this.hostClasses = true;
2807
2801
  this.toolbarRole = 'toolbar';
2808
2802
  this.navigate = new EventEmitter();
2803
+ this.toolbarWidthChange = new EventEmitter();
2809
2804
  // The template context is the same as the service context,
2810
2805
  // but with resolved values instead of observables.
2811
2806
  this.templateContext = {};
@@ -2815,6 +2810,7 @@ class ToolbarComponent {
2815
2810
  ngOnInit() {
2816
2811
  this.subs.add(this.selectedDate.subscribe(date => this.templateContext.selectedDate = date));
2817
2812
  this.subs.add(this.dateRange.subscribe(dateRange => this.templateContext.dateRange = dateRange));
2813
+ this.resizeHandler();
2818
2814
  }
2819
2815
  ngOnChanges() {
2820
2816
  this.service.context = {
@@ -2833,9 +2829,15 @@ class ToolbarComponent {
2833
2829
  ngOnDestroy() {
2834
2830
  this.subs.unsubscribe();
2835
2831
  }
2832
+ resizeHandler() {
2833
+ const element = this.element.nativeElement;
2834
+ this.zone.run(() => this.toolbarWidth = element.offsetWidth);
2835
+ this.toolbarWidthChange.emit(this.toolbarWidth);
2836
+ }
2837
+ ;
2836
2838
  }
2837
- ToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarComponent, deps: [{ token: ToolbarService }], target: i0.ɵɵFactoryTarget.Component });
2838
- 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: `
2839
+ ToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarComponent, deps: [{ token: ToolbarService }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
2840
+ 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: `
2839
2841
  <ng-template
2840
2842
  *ngIf="template; else defaultTemplate"
2841
2843
  [ngTemplateOutlet]="template.templateRef"
@@ -2846,9 +2848,11 @@ ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
2846
2848
  <ng-template #defaultTemplate>
2847
2849
  <div kendoSchedulerToolbarNavigation [min]="min" [max]="max"></div>
2848
2850
  <span class="k-spacer"></span>
2849
- <div kendoSchedulerToolbarViewSelector></div>
2851
+ <div kendoSchedulerToolbarViewSelector [toolbarWidth]="toolbarWidth"></div>
2850
2852
  </ng-template>
2851
- `, isInline: true, components: [{ type: ToolbarNavigationComponent, selector: "[kendoSchedulerToolbarNavigation]", inputs: ["min", "max"] }, { type: ToolbarViewSelectorComponent, selector: "[kendoSchedulerToolbarViewSelector]" }], directives: [{ type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i11.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
2853
+
2854
+ <kendo-resize-sensor (resize)="resizeHandler()" [style]="'display: contents;'"></kendo-resize-sensor>
2855
+ `, isInline: true, components: [{ type: ToolbarNavigationComponent, selector: "[kendoSchedulerToolbarNavigation]", inputs: ["min", "max"] }, { type: ToolbarViewSelectorComponent, selector: "[kendoSchedulerToolbarViewSelector]", inputs: ["toolbarWidth", "responsiveBreakpoint"] }, { type: i7.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], directives: [{ type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i11.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
2852
2856
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarComponent, decorators: [{
2853
2857
  type: Component,
2854
2858
  args: [{
@@ -2864,11 +2868,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2864
2868
  <ng-template #defaultTemplate>
2865
2869
  <div kendoSchedulerToolbarNavigation [min]="min" [max]="max"></div>
2866
2870
  <span class="k-spacer"></span>
2867
- <div kendoSchedulerToolbarViewSelector></div>
2871
+ <div kendoSchedulerToolbarViewSelector [toolbarWidth]="toolbarWidth"></div>
2868
2872
  </ng-template>
2873
+
2874
+ <kendo-resize-sensor (resize)="resizeHandler()" [style]="'display: contents;'"></kendo-resize-sensor>
2869
2875
  `
2870
2876
  }]
2871
- }], ctorParameters: function () { return [{ type: ToolbarService }]; }, propDecorators: { hostClasses: [{
2877
+ }], ctorParameters: function () { return [{ type: ToolbarService }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { hostClasses: [{
2872
2878
  type: HostBinding,
2873
2879
  args: ['class.k-scheduler-toolbar']
2874
2880
  }, {
@@ -2890,12 +2896,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
2890
2896
  type: Input
2891
2897
  }], template: [{
2892
2898
  type: Input
2893
- }], navigate: [{
2894
- type: Output
2895
2899
  }], min: [{
2896
2900
  type: Input
2897
2901
  }], max: [{
2898
2902
  type: Input
2903
+ }], navigate: [{
2904
+ type: Output
2905
+ }], toolbarWidthChange: [{
2906
+ type: Output
2899
2907
  }] } });
2900
2908
 
2901
2909
  /**
@@ -6080,6 +6088,10 @@ class SchedulerComponent {
6080
6088
  * Fires when the user clicks the **PDF export** command button.
6081
6089
  */
6082
6090
  this.pdfExport = new EventEmitter();
6091
+ /**
6092
+ * Fires when the Scheduler is resized horizontally.
6093
+ */
6094
+ this.schedulerResize = new EventEmitter();
6083
6095
  /**
6084
6096
  * @hidden
6085
6097
  */
@@ -6362,6 +6374,12 @@ class SchedulerComponent {
6362
6374
  this.viewContext.notifyAction(action);
6363
6375
  }
6364
6376
  }
6377
+ /**
6378
+ * @hidden
6379
+ */
6380
+ onToolbarWidthChange(width) {
6381
+ this.schedulerResize.emit(width);
6382
+ }
6365
6383
  /**
6366
6384
  * Creates a popup editor for the new event.
6367
6385
  *
@@ -6701,7 +6719,7 @@ class SchedulerComponent {
6701
6719
  }
6702
6720
  }
6703
6721
  SchedulerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SchedulerComponent, deps: [{ token: i0.ElementRef }, { token: ViewContextService }, { token: ViewStateService }, { token: EditService }, { token: DialogsService }, { token: i1$4.IntlService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: PDFService }, { token: i1$1.LocalizationService }, { token: DomEventsService }, { token: i0.Renderer2 }, { token: FocusService }], target: i0.ɵɵFactoryTarget.Component });
6704
- 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: [
6722
+ 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: [
6705
6723
  EditService,
6706
6724
  DialogsService,
6707
6725
  DomEventsService,
@@ -6964,9 +6982,10 @@ SchedulerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
6964
6982
  [views]="$any(views)"
6965
6983
  [selectedView]="selectedView"
6966
6984
  [template]="toolbarTemplate"
6967
- (navigate)="onNavigationAction($event)"
6968
6985
  [min]="min"
6969
6986
  [max]="max"
6987
+ (navigate)="onNavigationAction($event)"
6988
+ (toolbarWidthChange)="onToolbarWidthChange($event)"
6970
6989
  ></kendo-scheduler-toolbar>
6971
6990
 
6972
6991
  <ng-container *ngTemplateOutlet="selectedView?.template">
@@ -6987,7 +7006,7 @@ SchedulerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
6987
7006
 
6988
7007
  <div [loading]="loading" kendoSchedulerLoading>
6989
7008
  </div>
6990
- `, isInline: true, components: [{ type: ToolbarComponent, selector: "kendo-scheduler-toolbar", inputs: ["selectedView", "views", "dateRange", "selectedDate", "template", "min", "max"], outputs: ["navigate"] }, { type: EditDialogComponent, selector: "kendo-scheduler-edit-dialog", inputs: ["resources", "timezone", "weekStart", "fields", "editTemplate"] }, { type: i7.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: LoadingComponent, selector: "[kendoSchedulerLoading]", inputs: ["loading"] }], directives: [{ type: LocalizedMessagesDirective, selector: "[kendoSchedulerLocalizedMessages]" }, { type: i11.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
7009
+ `, isInline: true, components: [{ type: ToolbarComponent, selector: "kendo-scheduler-toolbar", inputs: ["selectedView", "views", "dateRange", "selectedDate", "template", "min", "max"], outputs: ["navigate", "toolbarWidthChange"] }, { type: EditDialogComponent, selector: "kendo-scheduler-edit-dialog", inputs: ["resources", "timezone", "weekStart", "fields", "editTemplate"] }, { type: i7.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { type: LoadingComponent, selector: "[kendoSchedulerLoading]", inputs: ["loading"] }], directives: [{ type: LocalizedMessagesDirective, selector: "[kendoSchedulerLocalizedMessages]" }, { type: i11.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
6991
7010
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SchedulerComponent, decorators: [{
6992
7011
  type: Component,
6993
7012
  args: [{
@@ -7257,9 +7276,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7257
7276
  [views]="$any(views)"
7258
7277
  [selectedView]="selectedView"
7259
7278
  [template]="toolbarTemplate"
7260
- (navigate)="onNavigationAction($event)"
7261
7279
  [min]="min"
7262
7280
  [max]="max"
7281
+ (navigate)="onNavigationAction($event)"
7282
+ (toolbarWidthChange)="onToolbarWidthChange($event)"
7263
7283
  ></kendo-scheduler-toolbar>
7264
7284
 
7265
7285
  <ng-container *ngTemplateOutlet="selectedView?.template">
@@ -7408,6 +7428,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7408
7428
  type: Output
7409
7429
  }], pdfExport: [{
7410
7430
  type: Output
7431
+ }], schedulerResize: [{
7432
+ type: Output
7411
7433
  }], editDialogTemplate: [{
7412
7434
  type: ContentChild,
7413
7435
  args: [EditDialogTemplateDirective, { static: false }]
@@ -7731,7 +7753,8 @@ ToolbarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
7731
7753
  CalendarModule,
7732
7754
  PopupModule,
7733
7755
  EventsModule,
7734
- SharedModule], exports: [ToolbarComponent, ToolbarNavigationComponent,
7756
+ SharedModule,
7757
+ ResizeSensorModule], exports: [ToolbarComponent, ToolbarNavigationComponent,
7735
7758
  ToolbarTemplateDirective,
7736
7759
  ToolbarViewSelectorComponent] });
7737
7760
  ToolbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarModule, imports: [[
@@ -7740,7 +7763,8 @@ ToolbarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version:
7740
7763
  CalendarModule,
7741
7764
  PopupModule,
7742
7765
  EventsModule,
7743
- SharedModule
7766
+ SharedModule,
7767
+ ResizeSensorModule
7744
7768
  ]] });
7745
7769
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ToolbarModule, decorators: [{
7746
7770
  type: NgModule,
@@ -7751,7 +7775,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7751
7775
  CalendarModule,
7752
7776
  PopupModule,
7753
7777
  EventsModule,
7754
- SharedModule
7778
+ SharedModule,
7779
+ ResizeSensorModule
7755
7780
  ],
7756
7781
  exports: [
7757
7782
  ToolbarComponent,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-scheduler",
3
- "version": "12.2.0-develop.2",
3
+ "version": "12.2.0-develop.3",
4
4
  "description": "Kendo UI Scheduler Angular - Outlook or Google-style angular scheduler calendar. Full-featured and customizable embedded scheduling from the creator developers trust for professional UI components.",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "Progress",
@@ -25,21 +25,21 @@
25
25
  "@progress/kendo-data-query": "^1.0.0",
26
26
  "@progress/kendo-drawing": "^1.17.2",
27
27
  "@progress/kendo-licensing": "^1.0.2",
28
- "@progress/kendo-angular-buttons": "12.2.0-develop.2",
29
- "@progress/kendo-angular-common": "12.2.0-develop.2",
30
- "@progress/kendo-angular-dateinputs": "12.2.0-develop.2",
31
- "@progress/kendo-angular-dialog": "12.2.0-develop.2",
32
- "@progress/kendo-angular-dropdowns": "12.2.0-develop.2",
33
- "@progress/kendo-angular-icons": "12.2.0-develop.2",
34
- "@progress/kendo-angular-inputs": "12.2.0-develop.2",
35
- "@progress/kendo-angular-intl": "12.2.0-develop.2",
36
- "@progress/kendo-angular-l10n": "12.2.0-develop.2",
37
- "@progress/kendo-angular-popup": "12.2.0-develop.2",
28
+ "@progress/kendo-angular-buttons": "12.2.0-develop.3",
29
+ "@progress/kendo-angular-common": "12.2.0-develop.3",
30
+ "@progress/kendo-angular-dateinputs": "12.2.0-develop.3",
31
+ "@progress/kendo-angular-dialog": "12.2.0-develop.3",
32
+ "@progress/kendo-angular-dropdowns": "12.2.0-develop.3",
33
+ "@progress/kendo-angular-icons": "12.2.0-develop.3",
34
+ "@progress/kendo-angular-inputs": "12.2.0-develop.3",
35
+ "@progress/kendo-angular-intl": "12.2.0-develop.3",
36
+ "@progress/kendo-angular-l10n": "12.2.0-develop.3",
37
+ "@progress/kendo-angular-popup": "12.2.0-develop.3",
38
38
  "rxjs": "^6.5.3 || ^7.0.0"
39
39
  },
40
40
  "dependencies": {
41
41
  "tslib": "^2.3.1",
42
- "@progress/kendo-angular-schematics": "12.2.0-develop.2",
42
+ "@progress/kendo-angular-schematics": "12.2.0-develop.3",
43
43
  "@progress/kendo-date-math": "^1.3.2",
44
44
  "@progress/kendo-draggable": "^3.0.2",
45
45
  "@progress/kendo-file-saver": "^1.0.7",
@@ -441,6 +441,10 @@ export declare class SchedulerComponent implements AfterContentInit, OnDestroy,
441
441
  * Fires when the user clicks the **PDF export** command button.
442
442
  */
443
443
  pdfExport: EventEmitter<PDFExportEvent>;
444
+ /**
445
+ * Fires when the Scheduler is resized horizontally.
446
+ */
447
+ schedulerResize: EventEmitter<number>;
444
448
  /**
445
449
  * @hidden
446
450
  */
@@ -556,6 +560,10 @@ export declare class SchedulerComponent implements AfterContentInit, OnDestroy,
556
560
  * @hidden
557
561
  */
558
562
  onNavigationAction(action: NavigationAction): boolean;
563
+ /**
564
+ * @hidden
565
+ */
566
+ onToolbarWidthChange(width: number): void;
559
567
  /**
560
568
  * Creates a popup editor for the new event.
561
569
  *
@@ -680,5 +688,5 @@ export declare class SchedulerComponent implements AfterContentInit, OnDestroy,
680
688
  private intlChange;
681
689
  private attachElementEventHandlers;
682
690
  static ɵfac: i0.ɵɵFactoryDeclaration<SchedulerComponent, never>;
683
- static ɵcmp: i0.ɵɵComponentDeclaration<SchedulerComponent, "kendo-scheduler", never, { "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"; }, { "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"; }, ["editDialogTemplate", "toolbarTemplate", "views", "allDayEventTemplate", "eventTemplate", "timeSlotTemplate", "minorTimeHeaderTemplate", "majorTimeHeaderTemplate", "monthDaySlotTemplate", "multiWeekDaySlotTemplate", "dateHeaderTemplate", "allDaySlotTemplate", "groupHeaderTemplate", "agendaDateTemplate", "agendaTimeTemplate"], never>;
691
+ static ɵcmp: i0.ɵɵComponentDeclaration<SchedulerComponent, "kendo-scheduler", never, { "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"; }, { "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"; }, ["editDialogTemplate", "toolbarTemplate", "views", "allDayEventTemplate", "eventTemplate", "timeSlotTemplate", "minorTimeHeaderTemplate", "majorTimeHeaderTemplate", "monthDaySlotTemplate", "multiWeekDaySlotTemplate", "dateHeaderTemplate", "allDaySlotTemplate", "groupHeaderTemplate", "agendaDateTemplate", "agendaTimeTemplate"], never>;
684
692
  }
@@ -4,9 +4,9 @@ const schematics_1 = require("@angular-devkit/schematics");
4
4
  function default_1(options) {
5
5
  const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'SchedulerModule', package: 'scheduler', peerDependencies: {
6
6
  // peer dep of the dropdowns
7
- '@progress/kendo-angular-treeview': '12.2.0-develop.2',
7
+ '@progress/kendo-angular-treeview': '12.2.0-develop.3',
8
8
  // peer dependency of kendo-angular-inputs
9
- '@progress/kendo-angular-dialog': '12.2.0-develop.2',
9
+ '@progress/kendo-angular-dialog': '12.2.0-develop.3',
10
10
  // peer dependency of kendo-angular-icons
11
11
  '@progress/kendo-svg-icons': '^1.0.0'
12
12
  } });
@@ -42,21 +42,7 @@ export declare class ToolbarNavigationComponent implements OnDestroy {
42
42
  private cd;
43
43
  private viewContext;
44
44
  set calendar(calendar: CalendarComponent);
45
- /**
46
- * @hidden
47
- * TODO: Drop in next MAJOR version
48
- */
49
- inlineDisplayStyle: string;
50
- /**
51
- * @hidden
52
- * TODO: Drop in next MAJOR version
53
- */
54
- inlineFlexFlowStyle: string;
55
- /**
56
- * @hidden
57
- * TODO: Drop in next MAJOR version
58
- */
59
- inlineGapStyle: string;
45
+ hostClass: boolean;
60
46
  /**
61
47
  * @hidden
62
48
  */
@@ -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 { EventEmitter } from '@angular/core';
5
+ import { ElementRef, EventEmitter, NgZone } from '@angular/core';
6
6
  import { Observable } from 'rxjs';
7
7
  import { DateRange } from '../types';
8
8
  import { NavigationAction } from '../types';
@@ -15,6 +15,8 @@ import * as i0 from "@angular/core";
15
15
  */
16
16
  export declare class ToolbarComponent {
17
17
  private service;
18
+ private element;
19
+ private zone;
18
20
  hostClasses: boolean;
19
21
  toolbarRole: string;
20
22
  selectedView: SchedulerView;
@@ -22,15 +24,18 @@ export declare class ToolbarComponent {
22
24
  dateRange: Observable<DateRange>;
23
25
  selectedDate: Observable<Date>;
24
26
  template: ToolbarTemplateDirective;
25
- navigate: EventEmitter<NavigationAction>;
26
27
  min: Date;
27
28
  max: Date;
29
+ navigate: EventEmitter<NavigationAction>;
30
+ toolbarWidthChange: EventEmitter<number>;
28
31
  templateContext: any;
32
+ toolbarWidth: number;
29
33
  private subs;
30
- constructor(service: ToolbarService);
34
+ constructor(service: ToolbarService, element: ElementRef, zone: NgZone);
31
35
  ngOnInit(): void;
32
36
  ngOnChanges(): void;
33
37
  ngOnDestroy(): void;
38
+ resizeHandler(): void;
34
39
  static ɵfac: i0.ɵɵFactoryDeclaration<ToolbarComponent, never>;
35
- static ɵcmp: i0.ɵɵComponentDeclaration<ToolbarComponent, "kendo-scheduler-toolbar", never, { "selectedView": "selectedView"; "views": "views"; "dateRange": "dateRange"; "selectedDate": "selectedDate"; "template": "template"; "min": "min"; "max": "max"; }, { "navigate": "navigate"; }, never, never>;
40
+ static ɵcmp: i0.ɵɵComponentDeclaration<ToolbarComponent, "kendo-scheduler-toolbar", never, { "selectedView": "selectedView"; "views": "views"; "dateRange": "dateRange"; "selectedDate": "selectedDate"; "template": "template"; "min": "min"; "max": "max"; }, { "navigate": "navigate"; "toolbarWidthChange": "toolbarWidthChange"; }, never, never>;
36
41
  }
@@ -25,6 +25,6 @@ export declare const publicDirectives: (typeof ToolbarTemplateDirective | typeof
25
25
  */
26
26
  export declare class ToolbarModule {
27
27
  static ɵfac: i0.ɵɵFactoryDeclaration<ToolbarModule, never>;
28
- static ɵmod: i0.ɵɵNgModuleDeclaration<ToolbarModule, [typeof i1.ToolbarComponent, typeof i2.ToolbarNavigationComponent, typeof i3.ToolbarTemplateDirective, typeof i4.ToolbarViewSelectorComponent], [typeof i5.CommonModule, typeof i6.ButtonsModule, typeof i7.CalendarModule, typeof i8.PopupModule, typeof i9.EventsModule, typeof i10.SharedModule], [typeof i1.ToolbarComponent, typeof i2.ToolbarNavigationComponent, typeof i3.ToolbarTemplateDirective, typeof i4.ToolbarViewSelectorComponent]>;
28
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ToolbarModule, [typeof i1.ToolbarComponent, typeof i2.ToolbarNavigationComponent, typeof i3.ToolbarTemplateDirective, typeof i4.ToolbarViewSelectorComponent], [typeof i5.CommonModule, typeof i6.ButtonsModule, typeof i7.CalendarModule, typeof i8.PopupModule, typeof i9.EventsModule, typeof i10.SharedModule, typeof i9.ResizeSensorModule], [typeof i1.ToolbarComponent, typeof i2.ToolbarNavigationComponent, typeof i3.ToolbarTemplateDirective, typeof i4.ToolbarViewSelectorComponent]>;
29
29
  static ɵinj: i0.ɵɵInjectorDeclaration<ToolbarModule>;
30
30
  }
@@ -27,9 +27,17 @@ export declare class ToolbarViewSelectorComponent implements OnDestroy {
27
27
  private service;
28
28
  private localization;
29
29
  /**
30
- * @hidden
30
+ * Specifies the current width of the Toolbar (in pixels) so the responsive calculations can be made.
31
+ * The ([resizeScheduler]({% slug api_scheduler_schedulercomponent %}#toc-resizescheduler)) event can be used in order to obtain the Toolbar width.
32
+ */
33
+ toolbarWidth: number;
34
+ /**
35
+ * Specifies the Toolbar width (in pixels) at which the responsive behavior should be enabled.
36
+ * The responsive behavior means that the ButtonGroup with the views will be replaced by a `select` element.
37
+ *
38
+ * @default 1024
31
39
  */
32
- hostClasses: boolean;
40
+ responsiveBreakpoint: number;
33
41
  /**
34
42
  * @hidden
35
43
  */
@@ -54,5 +62,5 @@ export declare class ToolbarViewSelectorComponent implements OnDestroy {
54
62
  */
55
63
  isSelected(view: SchedulerView): boolean;
56
64
  static ɵfac: i0.ɵɵFactoryDeclaration<ToolbarViewSelectorComponent, never>;
57
- static ɵcmp: i0.ɵɵComponentDeclaration<ToolbarViewSelectorComponent, "[kendoSchedulerToolbarViewSelector]", never, {}, {}, never, never>;
65
+ static ɵcmp: i0.ɵɵComponentDeclaration<ToolbarViewSelectorComponent, "[kendoSchedulerToolbarViewSelector]", never, { "toolbarWidth": "toolbarWidth"; "responsiveBreakpoint": "responsiveBreakpoint"; }, {}, never, never>;
58
66
  }