@progress/kendo-angular-gantt 2.0.5 → 2.1.0-dev.202211250900

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 (75) hide show
  1. package/bundles/kendo-angular-gantt.umd.js +1 -1
  2. package/esm2015/binding-directives/flat-binding.directive.js +3 -3
  3. package/esm2015/binding-directives/hierarchy-binding.directive.js +3 -3
  4. package/esm2015/columns/cell-template.directive.js +3 -3
  5. package/esm2015/columns/column-base.component.js +3 -3
  6. package/esm2015/columns/column-group.component.js +3 -3
  7. package/esm2015/columns/column-menu-template.directive.js +3 -3
  8. package/esm2015/columns/column.component.js +3 -3
  9. package/esm2015/columns/edit-template.directive.js +3 -3
  10. package/esm2015/columns/filter-cell-template.directive.js +3 -3
  11. package/esm2015/columns/filter-menu-template.directive.js +3 -3
  12. package/esm2015/columns/footer-template.directive.js +3 -3
  13. package/esm2015/columns/header-template.directive.js +3 -3
  14. package/esm2015/columns/span-column.component.js +3 -3
  15. package/esm2015/common/mapping.service.js +3 -3
  16. package/esm2015/common/option-changes.service.js +3 -3
  17. package/esm2015/dependencies/dependency-dom.service.js +3 -3
  18. package/esm2015/dependencies/gantt-dependency.directive.js +3 -3
  19. package/esm2015/dragging/dependency-drag-create.directive.js +3 -3
  20. package/esm2015/dragging/drag-validation-tooltip.component.js +3 -3
  21. package/esm2015/editing/add-task.component.js +3 -3
  22. package/esm2015/editing/dependencies-table.component.js +3 -3
  23. package/esm2015/editing/edit-dialog.component.js +3 -3
  24. package/esm2015/editing/edit.service.js +3 -3
  25. package/esm2015/editing/task-fields.component.js +3 -3
  26. package/esm2015/expanded-state/expandable.directive.js +3 -3
  27. package/esm2015/gantt.component.js +6 -3
  28. package/esm2015/gantt.module.js +8 -4
  29. package/esm2015/localization/custom-messages.component.js +3 -3
  30. package/esm2015/localization/gantt-localization.service.js +3 -3
  31. package/esm2015/localization/localized-messages.directive.js +3 -3
  32. package/esm2015/localization/messages.js +3 -3
  33. package/esm2015/main.js +1 -0
  34. package/esm2015/navigation/navigation.service.js +3 -3
  35. package/esm2015/package-metadata.js +1 -1
  36. package/esm2015/rendering/gantt-header-table-body.component.js +5 -5
  37. package/esm2015/rendering/gantt-milestone-task.component.js +3 -3
  38. package/esm2015/rendering/gantt-summary-task.component.js +3 -3
  39. package/esm2015/rendering/gantt-task-base.js +31 -8
  40. package/esm2015/rendering/gantt-task.component.js +3 -3
  41. package/esm2015/rendering/gantt-tasks-table-body.component.js +3 -3
  42. package/esm2015/scrolling/scroll-sync.service.js +3 -3
  43. package/esm2015/scrolling/timeline-scroll.directive.js +3 -3
  44. package/esm2015/scrolling/timeline-scroll.service.js +3 -3
  45. package/esm2015/selection/selectable.directive.js +3 -3
  46. package/esm2015/template-directives/summary-task-template.directive.js +3 -3
  47. package/esm2015/template-directives/task-content-template.directive.js +3 -3
  48. package/esm2015/template-directives/task-template.directive.js +3 -3
  49. package/esm2015/timeline/gantt-timeline.component.js +3 -3
  50. package/esm2015/timeline/timeline-base-view.service.js +36 -9
  51. package/esm2015/timeline/timeline-day-view.component.js +3 -3
  52. package/esm2015/timeline/timeline-day-view.service.js +3 -3
  53. package/esm2015/timeline/timeline-month-view.component.js +3 -3
  54. package/esm2015/timeline/timeline-month-view.service.js +4 -4
  55. package/esm2015/timeline/timeline-view.service.js +6 -4
  56. package/esm2015/timeline/timeline-week-view.component.js +3 -3
  57. package/esm2015/timeline/timeline-week-view.service.js +3 -3
  58. package/esm2015/timeline/timeline-year-view.component.js +38 -0
  59. package/esm2015/timeline/timeline-year-view.service.js +55 -0
  60. package/esm2015/timeline/view-base.js +3 -3
  61. package/esm2015/toolbar/toolbar-template.directive.js +3 -3
  62. package/esm2015/toolbar/toolbar.component.js +3 -3
  63. package/esm2015/toolbar/view-selector.component.js +3 -3
  64. package/esm2015/utils.js +20 -2
  65. package/fesm2015/kendo-angular-gantt.js +341 -191
  66. package/gantt.module.d.ts +24 -23
  67. package/main.d.ts +1 -0
  68. package/models/slot.interface.d.ts +6 -0
  69. package/models/timeline-view.d.ts +1 -1
  70. package/package.json +1 -1
  71. package/timeline/timeline-base-view.service.d.ts +2 -1
  72. package/timeline/timeline-year-view.component.d.ts +18 -0
  73. package/timeline/timeline-year-view.service.d.ts +31 -0
  74. package/timeline/view-base.d.ts +1 -1
  75. package/utils.d.ts +13 -0
@@ -16,14 +16,14 @@ export class TimelineMonthViewComponent extends ViewBase {
16
16
  this.type = 'month';
17
17
  }
18
18
  }
19
- TimelineMonthViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimelineMonthViewComponent, deps: [{ token: i1.OptionChangesService }, { token: i2.DependencyDomService }], target: i0.ɵɵFactoryTarget.Component });
20
- TimelineMonthViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TimelineMonthViewComponent, selector: "kendo-gantt-timeline-month-view", providers: [
19
+ TimelineMonthViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineMonthViewComponent, deps: [{ token: i1.OptionChangesService }, { token: i2.DependencyDomService }], target: i0.ɵɵFactoryTarget.Component });
20
+ TimelineMonthViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TimelineMonthViewComponent, selector: "kendo-gantt-timeline-month-view", providers: [
21
21
  {
22
22
  provide: ViewBase,
23
23
  useExisting: forwardRef(() => TimelineMonthViewComponent)
24
24
  }
25
25
  ], usesInheritance: true, ngImport: i0, template: '', isInline: true });
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimelineMonthViewComponent, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineMonthViewComponent, decorators: [{
27
27
  type: Component,
28
28
  args: [{
29
29
  selector: 'kendo-gantt-timeline-month-view',
@@ -51,14 +51,14 @@ export class TimelineMonthViewService extends TimelineBaseViewService {
51
51
  // will return the header rows slots
52
52
  let slots = [];
53
53
  let { start, end } = this.getRange(tasks);
54
- const months = this.getMonths(start, end);
54
+ const months = this.getMonths(start, end, true);
55
55
  const weeks = this.getWeeks(start, end);
56
56
  slots.push(months, weeks);
57
57
  return slots;
58
58
  }
59
59
  }
60
- TimelineMonthViewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimelineMonthViewService, deps: [{ token: i1.IntlService }, { token: i2.MappingService }], target: i0.ɵɵFactoryTarget.Injectable });
61
- TimelineMonthViewService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimelineMonthViewService });
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimelineMonthViewService, decorators: [{
60
+ TimelineMonthViewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineMonthViewService, deps: [{ token: i1.IntlService }, { token: i2.MappingService }], target: i0.ɵɵFactoryTarget.Injectable });
61
+ TimelineMonthViewService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineMonthViewService });
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineMonthViewService, decorators: [{
63
63
  type: Injectable
64
64
  }], ctorParameters: function () { return [{ type: i1.IntlService }, { type: i2.MappingService }]; } });
@@ -6,6 +6,7 @@ import { EventEmitter, Injectable } from '@angular/core';
6
6
  import { TimelineDayViewService } from './timeline-day-view.service';
7
7
  import { TimelineMonthViewService } from './timeline-month-view.service';
8
8
  import { TimelineWeekViewService } from './timeline-week-view.service';
9
+ import { TimeLineYearViewService } from './timeline-year-view.service';
9
10
  import * as i0 from "@angular/core";
10
11
  /**
11
12
  * @hidden
@@ -13,7 +14,8 @@ import * as i0 from "@angular/core";
13
14
  const services = {
14
15
  day: TimelineDayViewService,
15
16
  week: TimelineWeekViewService,
16
- month: TimelineMonthViewService
17
+ month: TimelineMonthViewService,
18
+ year: TimeLineYearViewService
17
19
  };
18
20
  /**
19
21
  * @hidden
@@ -28,8 +30,8 @@ export class TimelineViewService {
28
30
  return serviceType ? this.injector.get(serviceType) : null;
29
31
  }
30
32
  }
31
- TimelineViewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimelineViewService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
32
- TimelineViewService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimelineViewService });
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimelineViewService, decorators: [{
33
+ TimelineViewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineViewService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
34
+ TimelineViewService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineViewService });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineViewService, decorators: [{
34
36
  type: Injectable
35
37
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
@@ -16,14 +16,14 @@ export class TimelineWeekViewComponent extends ViewBase {
16
16
  this.type = 'week';
17
17
  }
18
18
  }
19
- TimelineWeekViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimelineWeekViewComponent, deps: [{ token: i1.OptionChangesService }, { token: i2.DependencyDomService }], target: i0.ɵɵFactoryTarget.Component });
20
- TimelineWeekViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TimelineWeekViewComponent, selector: "kendo-gantt-timeline-week-view", providers: [
19
+ TimelineWeekViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineWeekViewComponent, deps: [{ token: i1.OptionChangesService }, { token: i2.DependencyDomService }], target: i0.ɵɵFactoryTarget.Component });
20
+ TimelineWeekViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TimelineWeekViewComponent, selector: "kendo-gantt-timeline-week-view", providers: [
21
21
  {
22
22
  provide: ViewBase,
23
23
  useExisting: forwardRef(() => TimelineWeekViewComponent)
24
24
  }
25
25
  ], usesInheritance: true, ngImport: i0, template: '', isInline: true });
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimelineWeekViewComponent, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineWeekViewComponent, decorators: [{
27
27
  type: Component,
28
28
  args: [{
29
29
  selector: 'kendo-gantt-timeline-week-view',
@@ -53,8 +53,8 @@ export class TimelineWeekViewService extends TimelineBaseViewService {
53
53
  return slots;
54
54
  }
55
55
  }
56
- TimelineWeekViewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimelineWeekViewService, deps: [{ token: i1.IntlService }, { token: i2.MappingService }], target: i0.ɵɵFactoryTarget.Injectable });
57
- TimelineWeekViewService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimelineWeekViewService });
58
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TimelineWeekViewService, decorators: [{
56
+ TimelineWeekViewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineWeekViewService, deps: [{ token: i1.IntlService }, { token: i2.MappingService }], target: i0.ɵɵFactoryTarget.Injectable });
57
+ TimelineWeekViewService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineWeekViewService });
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineWeekViewService, decorators: [{
59
59
  type: Injectable
60
60
  }], ctorParameters: function () { return [{ type: i1.IntlService }, { type: i2.MappingService }]; } });
@@ -0,0 +1,38 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { Component, forwardRef } from '@angular/core';
6
+ import { ViewBase } from './view-base';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../common/option-changes.service";
9
+ import * as i2 from "../dependencies/dependency-dom.service";
10
+ export class TimelineYearViewComponent extends ViewBase {
11
+ constructor(optionChangesService, dependencyDomService) {
12
+ super(optionChangesService, dependencyDomService);
13
+ /**
14
+ * The type for this view (`year`).
15
+ */
16
+ this.type = 'year';
17
+ }
18
+ }
19
+ TimelineYearViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineYearViewComponent, deps: [{ token: i1.OptionChangesService }, { token: i2.DependencyDomService }], target: i0.ɵɵFactoryTarget.Component });
20
+ TimelineYearViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TimelineYearViewComponent, selector: "kendo-gantt-timeline-year-view", providers: [
21
+ {
22
+ provide: ViewBase,
23
+ useExisting: forwardRef(() => TimelineYearViewComponent)
24
+ }
25
+ ], usesInheritance: true, ngImport: i0, template: '', isInline: true });
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimelineYearViewComponent, decorators: [{
27
+ type: Component,
28
+ args: [{
29
+ selector: 'kendo-gantt-timeline-year-view',
30
+ template: '',
31
+ providers: [
32
+ {
33
+ provide: ViewBase,
34
+ useExisting: forwardRef(() => TimelineYearViewComponent)
35
+ }
36
+ ]
37
+ }]
38
+ }], ctorParameters: function () { return [{ type: i1.OptionChangesService }, { type: i2.DependencyDomService }]; } });
@@ -0,0 +1,55 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { Injectable } from "@angular/core";
6
+ import { addMonths, firstDayOfMonth, getDate, lastDayOfMonth } from "@progress/kendo-date-math";
7
+ import { TimelineBaseViewService } from "./timeline-base-view.service";
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@progress/kendo-angular-intl";
10
+ import * as i2 from "../common/mapping.service";
11
+ /**
12
+ * @hidden
13
+ */
14
+ export class TimeLineYearViewService extends TimelineBaseViewService {
15
+ constructor(intlService, mapper) {
16
+ super(intlService, mapper);
17
+ }
18
+ getTableWidth(tasks) {
19
+ const timeSlots = this.getSlots(tasks)[1];
20
+ const slotWidth = this.options.slotWidth;
21
+ return Math.round(timeSlots.length * slotWidth);
22
+ }
23
+ getStartOffset(rangeStart) {
24
+ const monthStart = firstDayOfMonth(rangeStart);
25
+ return addMonths(getDate(monthStart), -1);
26
+ }
27
+ /**
28
+ *
29
+ */
30
+ getEndOffset(rangeEnd) {
31
+ const monthEnd = lastDayOfMonth(rangeEnd);
32
+ return addMonths(getDate(monthEnd), 1);
33
+ }
34
+ /**
35
+ *
36
+ * @param tasks - The tasks which are going to be rendered in the table
37
+ * @returns {Array<Object>} - A collection containing the years and months slots
38
+ *
39
+ * Used to render the number of columns and the header
40
+ */
41
+ getSlots(tasks) {
42
+ // will return the header rows slots
43
+ let slots = [];
44
+ let { start, end } = this.getRange(tasks);
45
+ const years = this.getYears(start, end);
46
+ const months = this.getMonths(start, end);
47
+ slots.push(years, months);
48
+ return slots;
49
+ }
50
+ }
51
+ TimeLineYearViewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimeLineYearViewService, deps: [{ token: i1.IntlService }, { token: i2.MappingService }], target: i0.ɵɵFactoryTarget.Injectable });
52
+ TimeLineYearViewService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimeLineYearViewService });
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TimeLineYearViewService, decorators: [{
54
+ type: Injectable
55
+ }], ctorParameters: function () { return [{ type: i1.IntlService }, { type: i2.MappingService }]; } });
@@ -32,9 +32,9 @@ export class ViewBase {
32
32
  }
33
33
  }
34
34
  }
35
- ViewBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ViewBase, deps: [{ token: i1.OptionChangesService }, { token: i2.DependencyDomService }], target: i0.ɵɵFactoryTarget.Directive });
36
- ViewBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ViewBase, selector: "kendo-gantt-view-base", inputs: { slotWidth: "slotWidth" }, usesOnChanges: true, ngImport: i0 });
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ViewBase, decorators: [{
35
+ ViewBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ViewBase, deps: [{ token: i1.OptionChangesService }, { token: i2.DependencyDomService }], target: i0.ɵɵFactoryTarget.Directive });
36
+ ViewBase.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: ViewBase, selector: "kendo-gantt-view-base", inputs: { slotWidth: "slotWidth" }, usesOnChanges: true, ngImport: i0 });
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ViewBase, decorators: [{
38
38
  type: Directive,
39
39
  args: [{
40
40
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -112,9 +112,9 @@ export class ToolbarTemplateDirective {
112
112
  return this._position;
113
113
  }
114
114
  }
115
- ToolbarTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ToolbarTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
116
- ToolbarTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: ToolbarTemplateDirective, selector: "[kendoGanttToolbarTemplate]", inputs: { position: "position" }, ngImport: i0 });
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ToolbarTemplateDirective, decorators: [{
115
+ ToolbarTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ToolbarTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
116
+ ToolbarTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: ToolbarTemplateDirective, selector: "[kendoGanttToolbarTemplate]", inputs: { position: "position" }, ngImport: i0 });
117
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ToolbarTemplateDirective, decorators: [{
118
118
  type: Directive,
119
119
  args: [{
120
120
  selector: '[kendoGanttToolbarTemplate]'
@@ -34,8 +34,8 @@ export class ToolbarComponent {
34
34
  this.activeViewChange.emit(view);
35
35
  }
36
36
  }
37
- ToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
38
- ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ToolbarComponent, selector: "kendo-gantt-toolbar", inputs: { showAddTask: "showAddTask", showViewSelector: "showViewSelector", views: "views", activeView: "activeView", toolbarTemplate: "toolbarTemplate", position: "position" }, outputs: { activeViewChange: "activeViewChange" }, host: { properties: { "attr.role": "this.role" } }, ngImport: i0, template: `
37
+ ToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
38
+ ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ToolbarComponent, selector: "kendo-gantt-toolbar", inputs: { showAddTask: "showAddTask", showViewSelector: "showViewSelector", views: "views", activeView: "activeView", toolbarTemplate: "toolbarTemplate", position: "position" }, outputs: { activeViewChange: "activeViewChange" }, host: { properties: { "attr.role": "this.role" } }, ngImport: i0, template: `
39
39
  <ng-container *ngIf="!renderTemplate">
40
40
  <kendo-gantt-add-task *ngIf="showAddTask"></kendo-gantt-add-task>
41
41
  <span class="k-spacer k-toolbar-spacer"></span>
@@ -52,7 +52,7 @@ ToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versi
52
52
  >
53
53
  </ng-template>
54
54
  `, isInline: true, components: [{ type: i1.GanttAddTaskComponent, selector: "kendo-gantt-add-task", inputs: ["data", "icon"] }, { type: i2.ViewSelectorComponent, selector: "kendo-gantt-view-selector", inputs: ["views", "activeView"], outputs: ["activeViewChange"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
55
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ToolbarComponent, decorators: [{
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ToolbarComponent, decorators: [{
56
56
  type: Component,
57
57
  args: [{
58
58
  selector: 'kendo-gantt-toolbar',
@@ -46,8 +46,8 @@ export class ViewSelectorComponent {
46
46
  this.activeViewChange.emit(event.target.value);
47
47
  }
48
48
  }
49
- ViewSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ViewSelectorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
50
- ViewSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ViewSelectorComponent, selector: "kendo-gantt-view-selector", inputs: { views: "views", activeView: "activeView" }, outputs: { activeViewChange: "activeViewChange" }, host: { properties: { "class.k-gantt-views-wrapper": "this.hostClass" } }, ngImport: i0, template: `
49
+ ViewSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ViewSelectorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
50
+ ViewSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ViewSelectorComponent, selector: "kendo-gantt-view-selector", inputs: { views: "views", activeView: "activeView" }, outputs: { activeViewChange: "activeViewChange" }, host: { properties: { "class.k-gantt-views-wrapper": "this.hostClass" } }, ngImport: i0, template: `
51
51
  <select
52
52
  class="k-dropdownlist k-picker k-rounded-md k-views-dropdown"
53
53
  aria-label="View Selector"
@@ -63,7 +63,7 @@ ViewSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
63
63
  (click)="onClick(view)">{{getViewTypeText(view)}}</button>
64
64
  </kendo-buttongroup>
65
65
  `, isInline: true, components: [{ type: i2.ButtonGroupComponent, selector: "kendo-buttongroup", inputs: ["disabled", "selection", "width", "tabIndex", "navigable"], outputs: ["navigate"], exportAs: ["kendoButtonGroup"] }], directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i4.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i2.ButtonDirective, selector: "button[kendoButton], span[kendoButton]", inputs: ["toggleable", "togglable", "selected", "tabIndex", "icon", "iconClass", "imageUrl", "disabled", "size", "rounded", "fillMode", "themeColor", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
66
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ViewSelectorComponent, decorators: [{
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ViewSelectorComponent, decorators: [{
67
67
  type: Component,
68
68
  args: [{
69
69
  selector: 'kendo-gantt-view-selector',
package/esm2015/utils.js CHANGED
@@ -3,7 +3,7 @@
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { isDocumentAvailable, closestInScope, matchesClasses } from '@progress/kendo-angular-common';
6
- import { addDays, addWeeks, cloneDate, firstDayInWeek } from '@progress/kendo-date-math';
6
+ import { addDays, addWeeks, cloneDate, firstDayInWeek, lastDayOfMonth } from '@progress/kendo-date-math';
7
7
  import { DependencyType } from './models/dependency-type.enum';
8
8
  /**
9
9
  * @hidden
@@ -73,7 +73,25 @@ export const lastDayOfWeek = (standingPoint, firstWeekDay) => {
73
73
  return lastDayOfTargetWeek;
74
74
  };
75
75
  /**
76
- * Persists the intially resolved scrollbar width value.
76
+ * @hidden
77
+ *
78
+ * Returns the total number of days in a month
79
+ */
80
+ export const getTotalDaysInMonth = (date) => {
81
+ return lastDayOfMonth(date).getDate();
82
+ };
83
+ /**
84
+ * @hidden
85
+ *
86
+ * Returns the total number of months between two dates
87
+ * by excluding the months of the dates themselves.
88
+ */
89
+ export const getTotalMonthsInBetween = (start, end) => {
90
+ let diff = end.getMonth() - start.getMonth() + (12 * (end.getFullYear() - start.getFullYear()));
91
+ return diff <= 1 ? 0 : diff - 1;
92
+ };
93
+ /**
94
+ * Persists the initially resolved scrollbar width value.
77
95
  */
78
96
  let SCROLLBAR_WIDTH;
79
97
  /**