@worktile/gantt 16.1.0-next.1 → 18.0.0-next.0

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 (98) hide show
  1. package/class/date-point.d.ts +2 -2
  2. package/class/event.d.ts +1 -0
  3. package/class/item.d.ts +7 -8
  4. package/class/view-type.d.ts +2 -1
  5. package/components/bar/bar-drag.d.ts +4 -3
  6. package/components/bar/bar.component.d.ts +1 -1
  7. package/components/bar/bar.component.scss +3 -0
  8. package/components/baseline/baseline.component.d.ts +1 -1
  9. package/components/calendar/calendar.scss +0 -1
  10. package/components/calendar/grid/calendar-grid.component.d.ts +1 -2
  11. package/components/calendar/header/calendar-header.component.d.ts +2 -2
  12. package/components/drag-backdrop/drag-backdrop.component.d.ts +4 -1
  13. package/components/drag-backdrop/drag-backdrop.component.scss +0 -1
  14. package/components/icon/icon.component.d.ts +1 -1
  15. package/components/links/links.component.d.ts +1 -1
  16. package/components/links/links.component.scss +0 -1
  17. package/components/loader/loader.component.d.ts +1 -1
  18. package/components/main/gantt-main.component.d.ts +1 -1
  19. package/components/range/range.component.d.ts +1 -1
  20. package/components/table/body/gantt-table-body.component.d.ts +1 -1
  21. package/components/table/gantt-table.scss +4 -3
  22. package/components/table/header/gantt-table-header.component.d.ts +3 -1
  23. package/components/toolbar/toolbar.component.d.ts +2 -1
  24. package/esm2022/class/date-point.mjs +1 -1
  25. package/esm2022/class/event.mjs +1 -1
  26. package/esm2022/class/item.mjs +13 -15
  27. package/esm2022/class/view-type.mjs +2 -1
  28. package/esm2022/components/bar/bar-drag.mjs +49 -48
  29. package/esm2022/components/bar/bar.component.mjs +9 -9
  30. package/esm2022/components/baseline/baseline.component.mjs +9 -9
  31. package/esm2022/components/calendar/grid/calendar-grid.component.mjs +10 -11
  32. package/esm2022/components/calendar/header/calendar-header.component.mjs +18 -12
  33. package/esm2022/components/drag-backdrop/drag-backdrop.component.mjs +15 -7
  34. package/esm2022/components/icon/icon.component.mjs +7 -6
  35. package/esm2022/components/links/lines/curve.mjs +1 -1
  36. package/esm2022/components/links/lines/factory.mjs +1 -1
  37. package/esm2022/components/links/lines/line.mjs +1 -1
  38. package/esm2022/components/links/lines/straight.mjs +1 -1
  39. package/esm2022/components/links/links.component.mjs +9 -9
  40. package/esm2022/components/loader/loader.component.mjs +6 -5
  41. package/esm2022/components/main/gantt-main.component.mjs +26 -14
  42. package/esm2022/components/range/range.component.mjs +9 -9
  43. package/esm2022/components/table/body/gantt-table-body.component.mjs +13 -15
  44. package/esm2022/components/table/header/gantt-table-header.component.mjs +21 -9
  45. package/esm2022/components/toolbar/toolbar.component.mjs +15 -9
  46. package/esm2022/gantt-abstract.mjs +1 -1
  47. package/esm2022/gantt-dom.service.mjs +6 -6
  48. package/esm2022/gantt-drag-container.mjs +6 -6
  49. package/esm2022/gantt-item-upper.mjs +6 -6
  50. package/esm2022/gantt-print.service.mjs +5 -5
  51. package/esm2022/gantt-upper.mjs +12 -15
  52. package/esm2022/gantt.component.mjs +40 -25
  53. package/esm2022/gantt.config.mjs +9 -2
  54. package/esm2022/gantt.module.mjs +60 -40
  55. package/esm2022/gantt.pipe.mjs +16 -13
  56. package/esm2022/gantt.styles.mjs +1 -6
  57. package/esm2022/root.component.mjs +21 -14
  58. package/esm2022/table/gantt-column.component.mjs +8 -7
  59. package/esm2022/table/gantt-table.component.mjs +6 -5
  60. package/esm2022/utils/date.mjs +16 -4
  61. package/esm2022/utils/drag-scroll.mjs +1 -1
  62. package/esm2022/utils/helpers.mjs +1 -1
  63. package/esm2022/utils/passive-listeners.mjs +1 -1
  64. package/esm2022/utils/set-style-with-vendor-prefix.mjs +1 -1
  65. package/esm2022/views/day.mjs +12 -13
  66. package/esm2022/views/factory.mjs +3 -1
  67. package/esm2022/views/hour.mjs +87 -0
  68. package/esm2022/views/month.mjs +5 -6
  69. package/esm2022/views/quarter.mjs +5 -6
  70. package/esm2022/views/view.mjs +77 -37
  71. package/esm2022/views/week.mjs +10 -11
  72. package/esm2022/views/year.mjs +5 -6
  73. package/fesm2022/worktile-gantt.mjs +2478 -2259
  74. package/fesm2022/worktile-gantt.mjs.map +1 -1
  75. package/gantt-abstract.d.ts +2 -2
  76. package/gantt-upper.d.ts +3 -5
  77. package/gantt.component.d.ts +6 -6
  78. package/gantt.component.scss +0 -5
  79. package/gantt.config.d.ts +16 -16
  80. package/gantt.module.d.ts +25 -23
  81. package/gantt.pipe.d.ts +6 -6
  82. package/gantt.styles.d.ts +0 -6
  83. package/package.json +6 -4
  84. package/root.component.d.ts +1 -1
  85. package/styles/index.scss +0 -2
  86. package/styles/variables.scss +4 -2
  87. package/table/gantt-column.component.d.ts +1 -1
  88. package/table/gantt-table.component.d.ts +1 -1
  89. package/utils/date.d.ts +5 -1
  90. package/utils/helpers.d.ts +2 -2
  91. package/views/day.d.ts +5 -5
  92. package/views/factory.d.ts +2 -1
  93. package/views/hour.d.ts +20 -0
  94. package/views/month.d.ts +2 -2
  95. package/views/quarter.d.ts +2 -2
  96. package/views/view.d.ts +24 -9
  97. package/views/week.d.ts +2 -2
  98. package/views/year.d.ts +2 -2
@@ -3,13 +3,13 @@ export declare class GanttDatePoint {
3
3
  start: GanttDate;
4
4
  text: string;
5
5
  x: number;
6
- y: number;
6
+ y: number | string;
7
7
  additions?: {
8
8
  isWeekend: boolean;
9
9
  isToday: boolean;
10
10
  };
11
11
  style?: Partial<CSSStyleDeclaration>;
12
- constructor(start: GanttDate, text: string, x: number, y: number, additions?: {
12
+ constructor(start: GanttDate, text: string, x: number, y: number | string, additions?: {
13
13
  isWeekend: boolean;
14
14
  isToday: boolean;
15
15
  }, style?: Partial<CSSStyleDeclaration>);
package/class/event.d.ts CHANGED
@@ -28,6 +28,7 @@ export declare class GanttBarClickEvent<T = unknown> {
28
28
  }
29
29
  export declare class GanttSelectedEvent<T = unknown> {
30
30
  event: Event;
31
+ current?: GanttItem<T>;
31
32
  selectedValue: GanttItem<T> | GanttItem<T>[];
32
33
  }
33
34
  export declare class GanttTableDragDroppedEvent<T = unknown> {
package/class/item.d.ts CHANGED
@@ -2,6 +2,7 @@ import { GanttDate } from '../utils/date';
2
2
  import { BehaviorSubject } from 'rxjs';
3
3
  import { GanttLink } from './link';
4
4
  import { GanttViewType } from './view-type';
5
+ import { GanttView } from '../views/view';
5
6
  export interface GanttItemRefs {
6
7
  width: number;
7
8
  x: number;
@@ -32,10 +33,11 @@ export interface GanttItem<T = unknown> {
32
33
  progress?: number;
33
34
  }
34
35
  export declare class GanttItemInternal {
36
+ private view?;
35
37
  id: string;
36
38
  title: string;
37
- start: GanttDate;
38
- end: GanttDate;
39
+ start: GanttDate | null;
40
+ end: GanttDate | null;
39
41
  links: GanttLink[];
40
42
  color?: string;
41
43
  barStyle?: Partial<CSSStyleDeclaration>;
@@ -49,9 +51,8 @@ export declare class GanttItemInternal {
49
51
  children: GanttItemInternal[];
50
52
  type?: GanttItemType;
51
53
  progress?: number;
52
- fillDays?: number;
53
54
  viewType?: GanttViewType;
54
- level?: number;
55
+ level: number;
55
56
  get refs(): {
56
57
  width: number;
57
58
  x: number;
@@ -62,10 +63,8 @@ export declare class GanttItemInternal {
62
63
  x: number;
63
64
  y: number;
64
65
  }>;
65
- constructor(item: GanttItem, level?: number, options?: {
66
- fillDays: number;
67
- });
68
- fillItemStartOrEnd(item: GanttItem): void;
66
+ constructor(item: GanttItem, level: number, view?: GanttView);
67
+ private fillDateWhenStartOrEndIsNil;
69
68
  updateRefs(refs: GanttItemRefs): void;
70
69
  updateDate(start: GanttDate, end: GanttDate): void;
71
70
  updateLevel(level: number): void;
@@ -3,7 +3,8 @@ export declare enum GanttViewType {
3
3
  quarter = "quarter",
4
4
  month = "month",
5
5
  year = "year",
6
- week = "week"
6
+ week = "week",
7
+ hour = "hour"
7
8
  }
8
9
  export declare const ganttViews: {
9
10
  name: string;
@@ -1,8 +1,8 @@
1
- import { ElementRef, OnDestroy, NgZone } from '@angular/core';
2
1
  import { DragDrop } from '@angular/cdk/drag-drop';
2
+ import { ElementRef, NgZone, OnDestroy } from '@angular/core';
3
+ import { GanttItemInternal } from '../../class/item';
3
4
  import { GanttDomService } from '../../gantt-dom.service';
4
5
  import { GanttDragContainer } from '../../gantt-drag-container';
5
- import { GanttItemInternal } from '../../class/item';
6
6
  import { GanttUpper } from '../../gantt-upper';
7
7
  import * as i0 from "@angular/core";
8
8
  export declare class GanttBarDrag implements OnDestroy {
@@ -36,7 +36,7 @@ export declare class GanttBarDrag implements OnDestroy {
36
36
  /** Horizontal direction in which the list is currently scrolling. */
37
37
  private _horizontalScrollDirection;
38
38
  /** Record bar days when bar handle drag move. */
39
- private barHandleDragMoveRecordDays;
39
+ private barHandleDragMoveRecordDiffs;
40
40
  /** Speed ratio for auto scroll */
41
41
  private autoScrollSpeedRates;
42
42
  constructor(dragDrop: DragDrop, dom: GanttDomService, dragContainer: GanttDragContainer, _ngZone: NgZone);
@@ -63,6 +63,7 @@ export declare class GanttBarDrag implements OnDestroy {
63
63
  private endOfBarHandle;
64
64
  private stopScrolling;
65
65
  private isStartOrEndInsideView;
66
+ private updateItemDate;
66
67
  createDrags(elementRef: ElementRef, item: GanttItemInternal, ganttUpper: GanttUpper): void;
67
68
  updateItem(item: GanttItemInternal): void;
68
69
  ngOnDestroy(): void;
@@ -22,5 +22,5 @@ export declare class NgxGanttBarComponent extends GanttItemUpper implements OnIn
22
22
  private setContentBackground;
23
23
  stopPropagation(event: Event): void;
24
24
  static ɵfac: i0.ɵɵFactoryDeclaration<NgxGanttBarComponent, never>;
25
- static ɵcmp: i0.ɵɵComponentDeclaration<NgxGanttBarComponent, "ngx-gantt-bar,gantt-bar", never, {}, { "barClick": "barClick"; }, never, never, false, never>;
25
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgxGanttBarComponent, "ngx-gantt-bar,gantt-bar", never, {}, { "barClick": "barClick"; }, never, never, true, never>;
26
26
  }
@@ -148,6 +148,9 @@ $gantt-bar-link-drop-border: 5px;
148
148
  background: variables.$gantt-bar-background-color;
149
149
  overflow: hidden;
150
150
  box-sizing: border-box;
151
+ display: flex;
152
+ align-items: center;
153
+ white-space: nowrap;
151
154
 
152
155
  .gantt-bar-content-progress {
153
156
  position: absolute;
@@ -14,5 +14,5 @@ export declare class NgxGanttBaselineComponent implements OnInit {
14
14
  ngOnInit(): void;
15
15
  private setPositions;
16
16
  static ɵfac: i0.ɵɵFactoryDeclaration<NgxGanttBaselineComponent, never>;
17
- static ɵcmp: i0.ɵɵComponentDeclaration<NgxGanttBaselineComponent, "ngx-gantt-baseline,gantt-baseline", never, { "baselineItem": { "alias": "baselineItem"; "required": false; }; "template": { "alias": "template"; "required": false; }; }, {}, never, never, false, never>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgxGanttBaselineComponent, "ngx-gantt-baseline,gantt-baseline", never, { "baselineItem": { "alias": "baselineItem"; "required": false; }; "template": { "alias": "template"; "required": false; }; }, {}, never, never, true, never>;
18
18
  }
@@ -45,7 +45,6 @@
45
45
  .gantt-calendar-header {
46
46
  position: relative;
47
47
  z-index: 2;
48
- height: variables.$gantt-header-height;
49
48
  .gantt-calendar-today-overlay {
50
49
  z-index: 2;
51
50
  }
@@ -9,7 +9,6 @@ export declare class GanttCalendarGridComponent implements OnInit, OnDestroy {
9
9
  private elementRef;
10
10
  get view(): import("@worktile/gantt").GanttView;
11
11
  private unsubscribe$;
12
- headerHeight: number;
13
12
  mainHeight: number;
14
13
  todayBorderRadius: number;
15
14
  viewTypes: typeof GanttViewType;
@@ -20,5 +19,5 @@ export declare class GanttCalendarGridComponent implements OnInit, OnDestroy {
20
19
  trackBy(point: GanttDatePoint, index: number): string | number;
21
20
  ngOnDestroy(): void;
22
21
  static ɵfac: i0.ɵɵFactoryDeclaration<GanttCalendarGridComponent, never>;
23
- static ɵcmp: i0.ɵɵComponentDeclaration<GanttCalendarGridComponent, "gantt-calendar-grid", never, {}, {}, never, never, false, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<GanttCalendarGridComponent, "gantt-calendar-grid", never, {}, {}, never, never, true, never>;
24
23
  }
@@ -9,13 +9,13 @@ export declare class GanttCalendarHeaderComponent implements OnInit {
9
9
  private elementRef;
10
10
  get view(): import("@worktile/gantt").GanttView;
11
11
  private unsubscribe$;
12
- headerHeight: number;
13
12
  viewTypes: typeof GanttViewType;
14
13
  className: string;
14
+ get height(): string;
15
15
  constructor(ganttUpper: GanttUpper, ngZone: NgZone, elementRef: ElementRef<HTMLElement>);
16
16
  ngOnInit(): void;
17
17
  setTodayPoint(): void;
18
18
  trackBy(point: GanttDatePoint, index: number): string | number;
19
19
  static ɵfac: i0.ɵɵFactoryDeclaration<GanttCalendarHeaderComponent, never>;
20
- static ɵcmp: i0.ɵɵComponentDeclaration<GanttCalendarHeaderComponent, "gantt-calendar-header", never, {}, {}, never, never, false, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<GanttCalendarHeaderComponent, "gantt-calendar-header", never, {}, {}, never, never, true, never>;
21
21
  }
@@ -1,5 +1,8 @@
1
+ import { GanttUpper } from '../../gantt-upper';
1
2
  import * as i0 from "@angular/core";
2
3
  export declare class GanttDragBackdropComponent {
4
+ ganttUpper: GanttUpper;
5
+ constructor(ganttUpper: GanttUpper);
3
6
  static ɵfac: i0.ɵɵFactoryDeclaration<GanttDragBackdropComponent, never>;
4
- static ɵcmp: i0.ɵɵComponentDeclaration<GanttDragBackdropComponent, "gantt-drag-backdrop", never, {}, {}, never, never, false, never>;
7
+ static ɵcmp: i0.ɵɵComponentDeclaration<GanttDragBackdropComponent, "gantt-drag-backdrop", never, {}, {}, never, never, true, never>;
5
8
  }
@@ -13,7 +13,6 @@
13
13
 
14
14
  .gantt-drag-mask {
15
15
  position: absolute;
16
- top: variables.$gantt-header-height;
17
16
  z-index: 1;
18
17
  height: 100%;
19
18
  display: none;
@@ -7,5 +7,5 @@ export declare class GanttIconComponent {
7
7
  constructor(elementRef: ElementRef<HTMLElement>);
8
8
  setSvg(name: string): void;
9
9
  static ɵfac: i0.ɵɵFactoryDeclaration<GanttIconComponent, never>;
10
- static ɵcmp: i0.ɵɵComponentDeclaration<GanttIconComponent, "gantt-icon", never, { "iconName": { "alias": "iconName"; "required": false; }; }, {}, never, never, false, never>;
10
+ static ɵcmp: i0.ɵɵComponentDeclaration<GanttIconComponent, "gantt-icon", never, { "iconName": { "alias": "iconName"; "required": false; }; }, {}, never, never, true, never>;
11
11
  }
@@ -33,5 +33,5 @@ export declare class GanttLinksComponent implements OnInit, OnChanges, OnDestroy
33
33
  mouseLeavePath(link: LinkInternal): void;
34
34
  ngOnDestroy(): void;
35
35
  static ɵfac: i0.ɵɵFactoryDeclaration<GanttLinksComponent, never>;
36
- static ɵcmp: i0.ɵɵComponentDeclaration<GanttLinksComponent, "gantt-links-overlay", never, { "flatItems": { "alias": "flatItems"; "required": false; }; }, { "lineClick": "lineClick"; }, never, never, false, never>;
36
+ static ɵcmp: i0.ɵɵComponentDeclaration<GanttLinksComponent, "gantt-links-overlay", never, { "flatItems": { "alias": "flatItems"; "required": false; }; }, { "lineClick": "lineClick"; }, never, never, true, never>;
37
37
  }
@@ -18,7 +18,6 @@
18
18
  height: 1px;
19
19
  overflow: visible !important;
20
20
  position: absolute;
21
- top: variables.$gantt-header-height;
22
21
  left: 0;
23
22
  z-index: 2000;
24
23
 
@@ -1,5 +1,5 @@
1
1
  import * as i0 from "@angular/core";
2
2
  export declare class GanttLoaderComponent {
3
3
  static ɵfac: i0.ɵɵFactoryDeclaration<GanttLoaderComponent, never>;
4
- static ɵcmp: i0.ɵɵComponentDeclaration<GanttLoaderComponent, "gantt-loader", never, {}, {}, never, never, false, never>;
4
+ static ɵcmp: i0.ɵɵComponentDeclaration<GanttLoaderComponent, "gantt-loader", never, {}, {}, never, never, true, never>;
5
5
  }
@@ -17,5 +17,5 @@ export declare class GanttMainComponent {
17
17
  constructor(ganttUpper: GanttUpper);
18
18
  trackBy(index: number, item: GanttGroupInternal | GanttItemInternal): string | number;
19
19
  static ɵfac: i0.ɵɵFactoryDeclaration<GanttMainComponent, never>;
20
- static ɵcmp: i0.ɵɵComponentDeclaration<GanttMainComponent, "gantt-main", never, { "viewportItems": { "alias": "viewportItems"; "required": false; }; "flatItems": { "alias": "flatItems"; "required": false; }; "groupHeaderTemplate": { "alias": "groupHeaderTemplate"; "required": false; }; "itemTemplate": { "alias": "itemTemplate"; "required": false; }; "barTemplate": { "alias": "barTemplate"; "required": false; }; "rangeTemplate": { "alias": "rangeTemplate"; "required": false; }; "baselineTemplate": { "alias": "baselineTemplate"; "required": false; }; }, { "barClick": "barClick"; "lineClick": "lineClick"; }, never, never, false, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<GanttMainComponent, "gantt-main", never, { "viewportItems": { "alias": "viewportItems"; "required": false; }; "flatItems": { "alias": "flatItems"; "required": false; }; "groupHeaderTemplate": { "alias": "groupHeaderTemplate"; "required": false; }; "itemTemplate": { "alias": "itemTemplate"; "required": false; }; "barTemplate": { "alias": "barTemplate"; "required": false; }; "rangeTemplate": { "alias": "rangeTemplate"; "required": false; }; "baselineTemplate": { "alias": "baselineTemplate"; "required": false; }; }, { "barClick": "barClick"; "lineClick": "lineClick"; }, never, never, true, never>;
21
21
  }
@@ -6,5 +6,5 @@ export declare class NgxGanttRangeComponent extends GanttItemUpper {
6
6
  ganttRangeClass: boolean;
7
7
  constructor(elementRef: ElementRef<HTMLDivElement>, ganttUpper: GanttUpper);
8
8
  static ɵfac: i0.ɵɵFactoryDeclaration<NgxGanttRangeComponent, never>;
9
- static ɵcmp: i0.ɵɵComponentDeclaration<NgxGanttRangeComponent, "ngx-gantt-range,gantt-range", never, {}, {}, never, never, false, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgxGanttRangeComponent, "ngx-gantt-range,gantt-range", never, {}, {}, never, never, true, never>;
10
10
  }
@@ -57,5 +57,5 @@ export declare class GanttTableBodyComponent implements OnInit, OnDestroy, After
57
57
  private showDropPositionPlaceholder;
58
58
  private cleanupDragArtifacts;
59
59
  static ɵfac: i0.ɵɵFactoryDeclaration<GanttTableBodyComponent, never>;
60
- static ɵcmp: i0.ɵɵComponentDeclaration<GanttTableBodyComponent, "gantt-table-body", never, { "viewportItems": { "alias": "viewportItems"; "required": false; }; "flatItems": { "alias": "flatItems"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "groupTemplate": { "alias": "groupTemplate"; "required": false; }; "emptyTemplate": { "alias": "emptyTemplate"; "required": false; }; "rowBeforeTemplate": { "alias": "rowBeforeTemplate"; "required": false; }; "rowAfterTemplate": { "alias": "rowAfterTemplate"; "required": false; }; "draggable": { "alias": "draggable"; "required": false; }; "dropEnterPredicate": { "alias": "dropEnterPredicate"; "required": false; }; }, { "dragDropped": "dragDropped"; "dragStarted": "dragStarted"; "dragEnded": "dragEnded"; "itemClick": "itemClick"; }, never, never, false, never>;
60
+ static ɵcmp: i0.ɵɵComponentDeclaration<GanttTableBodyComponent, "gantt-table-body", never, { "viewportItems": { "alias": "viewportItems"; "required": false; }; "flatItems": { "alias": "flatItems"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "groupTemplate": { "alias": "groupTemplate"; "required": false; }; "emptyTemplate": { "alias": "emptyTemplate"; "required": false; }; "rowBeforeTemplate": { "alias": "rowBeforeTemplate"; "required": false; }; "rowAfterTemplate": { "alias": "rowAfterTemplate"; "required": false; }; "draggable": { "alias": "draggable"; "required": false; }; "dropEnterPredicate": { "alias": "dropEnterPredicate"; "required": false; }; }, { "dragDropped": "dragDropped"; "dragStarted": "dragStarted"; "dragEnded": "dragEnded"; "itemClick": "itemClick"; }, never, never, true, never>;
61
61
  }
@@ -167,13 +167,15 @@
167
167
  .gantt-table-header {
168
168
  text-align: center;
169
169
  background: #fff;
170
- height: variables.$gantt-header-height;
171
- line-height: variables.$gantt-header-height;
172
170
  box-shadow: variables.$gantt-side-shadow;
173
171
  position: relative;
174
172
  z-index: 3;
175
173
  border-right: 1px solid variables.$gantt-border-color;
176
174
 
175
+ .gantt-table-header-container {
176
+ display: flex;
177
+ }
178
+
177
179
  @include gantt-table-item();
178
180
 
179
181
  .gantt-table-column {
@@ -186,7 +188,6 @@
186
188
  display: block;
187
189
  .gantt-table-group {
188
190
  display: flex;
189
- height: variables.$gantt-group-height;
190
191
  background: variables.$gantt-group-background-color;
191
192
  padding: 0 10px;
192
193
  align-items: center;
@@ -15,6 +15,8 @@ export declare class GanttTableHeaderComponent implements OnInit, OnDestroy {
15
15
  columns: QueryList<NgxGanttTableColumnComponent>;
16
16
  resizeLineElementRef: ElementRef<HTMLElement>;
17
17
  className: string;
18
+ get height(): string;
19
+ get lineHeight(): string;
18
20
  constructor(elementRef: ElementRef, gantt: GanttAbstractComponent, cdr: ChangeDetectorRef);
19
21
  ngOnInit(): void;
20
22
  private columnsChange;
@@ -27,5 +29,5 @@ export declare class GanttTableHeaderComponent implements OnInit, OnDestroy {
27
29
  private hideAuxiliaryLine;
28
30
  ngOnDestroy(): void;
29
31
  static ɵfac: i0.ɵɵFactoryDeclaration<GanttTableHeaderComponent, never>;
30
- static ɵcmp: i0.ɵɵComponentDeclaration<GanttTableHeaderComponent, "gantt-table-header", never, { "columns": { "alias": "columns"; "required": false; }; }, {}, never, never, false, never>;
32
+ static ɵcmp: i0.ɵɵComponentDeclaration<GanttTableHeaderComponent, "gantt-table-header", never, { "columns": { "alias": "columns"; "required": false; }; }, {}, never, never, true, never>;
31
33
  }
@@ -6,6 +6,7 @@ export declare class NgxGanttToolbarComponent {
6
6
  protected ganttUpper: GanttUpper;
7
7
  template: TemplateRef<any>;
8
8
  ganttItemClass: boolean;
9
+ get top(): string;
9
10
  ganttViewsMap: {
10
11
  [key: string]: {
11
12
  name: string;
@@ -15,5 +16,5 @@ export declare class NgxGanttToolbarComponent {
15
16
  constructor(ganttUpper: GanttUpper);
16
17
  selectView(view: GanttViewType): void;
17
18
  static ɵfac: i0.ɵɵFactoryDeclaration<NgxGanttToolbarComponent, never>;
18
- static ɵcmp: i0.ɵɵComponentDeclaration<NgxGanttToolbarComponent, "ngx-gantt-toolbar,gantt-toolbar", never, { "template": { "alias": "template"; "required": false; }; }, {}, never, never, false, never>;
19
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgxGanttToolbarComponent, "ngx-gantt-toolbar,gantt-toolbar", never, { "template": { "alias": "template"; "required": false; }; }, {}, never, never, true, never>;
19
20
  }
@@ -8,4 +8,4 @@ export class GanttDatePoint {
8
8
  this.style = style;
9
9
  }
10
10
  }
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1wb2ludC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dhbnR0L3NyYy9jbGFzcy9kYXRlLXBvaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxjQUFjO0lBQ3ZCLFlBQ1csS0FBZ0IsRUFDaEIsSUFBWSxFQUNaLENBQVMsRUFDVCxDQUFTLEVBQ1QsU0FHTixFQUNNLEtBQW9DO1FBUnBDLFVBQUssR0FBTCxLQUFLLENBQVc7UUFDaEIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLE1BQUMsR0FBRCxDQUFDLENBQVE7UUFDVCxNQUFDLEdBQUQsQ0FBQyxDQUFRO1FBQ1QsY0FBUyxHQUFULFNBQVMsQ0FHZjtRQUNNLFVBQUssR0FBTCxLQUFLLENBQStCO0lBQzVDLENBQUM7Q0FDUCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdhbnR0RGF0ZSB9IGZyb20gJy4uL3V0aWxzL2RhdGUnO1xuXG5leHBvcnQgY2xhc3MgR2FudHREYXRlUG9pbnQge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgc3RhcnQ6IEdhbnR0RGF0ZSxcbiAgICAgICAgcHVibGljIHRleHQ6IHN0cmluZyxcbiAgICAgICAgcHVibGljIHg6IG51bWJlcixcbiAgICAgICAgcHVibGljIHk6IG51bWJlcixcbiAgICAgICAgcHVibGljIGFkZGl0aW9ucz86IHtcbiAgICAgICAgICAgIGlzV2Vla2VuZDogYm9vbGVhbjtcbiAgICAgICAgICAgIGlzVG9kYXk6IGJvb2xlYW47XG4gICAgICAgIH0sXG4gICAgICAgIHB1YmxpYyBzdHlsZT86IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj5cbiAgICApIHt9XG59XG4iXX0=
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1wb2ludC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dhbnR0L3NyYy9jbGFzcy9kYXRlLXBvaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxjQUFjO0lBQ3ZCLFlBQ1csS0FBZ0IsRUFDaEIsSUFBWSxFQUNaLENBQVMsRUFDVCxDQUFrQixFQUNsQixTQUdOLEVBQ00sS0FBb0M7UUFScEMsVUFBSyxHQUFMLEtBQUssQ0FBVztRQUNoQixTQUFJLEdBQUosSUFBSSxDQUFRO1FBQ1osTUFBQyxHQUFELENBQUMsQ0FBUTtRQUNULE1BQUMsR0FBRCxDQUFDLENBQWlCO1FBQ2xCLGNBQVMsR0FBVCxTQUFTLENBR2Y7UUFDTSxVQUFLLEdBQUwsS0FBSyxDQUErQjtJQUM1QyxDQUFDO0NBQ1AiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHYW50dERhdGUgfSBmcm9tICcuLi91dGlscy9kYXRlJztcblxuZXhwb3J0IGNsYXNzIEdhbnR0RGF0ZVBvaW50IHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHN0YXJ0OiBHYW50dERhdGUsXG4gICAgICAgIHB1YmxpYyB0ZXh0OiBzdHJpbmcsXG4gICAgICAgIHB1YmxpYyB4OiBudW1iZXIsXG4gICAgICAgIHB1YmxpYyB5OiBudW1iZXIgfCBzdHJpbmcsXG4gICAgICAgIHB1YmxpYyBhZGRpdGlvbnM/OiB7XG4gICAgICAgICAgICBpc1dlZWtlbmQ6IGJvb2xlYW47XG4gICAgICAgICAgICBpc1RvZGF5OiBib29sZWFuO1xuICAgICAgICB9LFxuICAgICAgICBwdWJsaWMgc3R5bGU/OiBQYXJ0aWFsPENTU1N0eWxlRGVjbGFyYXRpb24+XG4gICAgKSB7fVxufVxuIl19
@@ -22,4 +22,4 @@ export class GanttTableDragEnterPredicateContext {
22
22
  }
23
23
  export class GanttVirtualScrolledIndexChangeEvent {
24
24
  }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9nYW50dC9zcmMvY2xhc3MvZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsTUFBTSxPQUFPLGNBQWM7Q0FFMUI7QUFFRCxNQUFNLE9BQU8sZUFBZTtDQUUzQjtBQUVELE1BQU0sT0FBTyxrQkFBa0I7Q0FJOUI7QUFFRCxNQUFNLE9BQU8sc0JBQXNCO0NBR2xDO0FBRUQsTUFBTSxPQUFPLG1CQUFtQjtDQUkvQjtBQUVELE1BQU0sT0FBTyxrQkFBa0I7Q0FHOUI7QUFFRCxNQUFNLE9BQU8sa0JBQWtCO0NBRzlCO0FBRUQsTUFBTSxPQUFPLDBCQUEwQjtDQU10QztBQUVELE1BQU0sT0FBTywwQkFBMEI7Q0FHdEM7QUFFRCxNQUFNLE9BQU8sd0JBQXdCO0NBR3BDO0FBSUQsTUFBTSxPQUFPLG1DQUFtQztDQUkvQztBQUVELE1BQU0sT0FBTyxvQ0FBb0M7Q0FPaEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5neEdhbnR0VGFibGVDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuLi90YWJsZS9nYW50dC1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IEdhbnR0SXRlbSB9IGZyb20gJy4vaXRlbSc7XG5pbXBvcnQgeyBHYW50dExpbmtUeXBlIH0gZnJvbSAnLi9saW5rJztcblxuZXhwb3J0IGNsYXNzIEdhbnR0RHJhZ0V2ZW50PFQgPSB1bmtub3duPiB7XG4gICAgaXRlbTogR2FudHRJdGVtPFQ+O1xufVxuXG5leHBvcnQgY2xhc3MgR2FudHRUYWJsZUV2ZW50IHtcbiAgICBjb2x1bW5zOiBRdWVyeUxpc3Q8Tmd4R2FudHRUYWJsZUNvbHVtbkNvbXBvbmVudD47XG59XG5cbmV4cG9ydCBjbGFzcyBHYW50dExpbmtEcmFnRXZlbnQ8VCA9IHVua25vd24+IHtcbiAgICBzb3VyY2U6IEdhbnR0SXRlbTxUPjtcbiAgICB0YXJnZXQ/OiBHYW50dEl0ZW08VD47XG4gICAgdHlwZT86IEdhbnR0TGlua1R5cGU7XG59XG5cbmV4cG9ydCBjbGFzcyBHYW50dExvYWRPblNjcm9sbEV2ZW50IHtcbiAgICBzdGFydDogbnVtYmVyO1xuICAgIGVuZDogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgR2FudHRMaW5lQ2xpY2tFdmVudDxUID0gdW5rbm93bj4ge1xuICAgIGV2ZW50OiBNb3VzZUV2ZW50O1xuICAgIHNvdXJjZTogR2FudHRJdGVtPFQ+O1xuICAgIHRhcmdldDogR2FudHRJdGVtPFQ+O1xufVxuXG5leHBvcnQgY2xhc3MgR2FudHRCYXJDbGlja0V2ZW50PFQgPSB1bmtub3duPiB7XG4gICAgZXZlbnQ6IEV2ZW50O1xuICAgIGl0ZW06IEdhbnR0SXRlbTxUPjtcbn1cblxuZXhwb3J0IGNsYXNzIEdhbnR0U2VsZWN0ZWRFdmVudDxUID0gdW5rbm93bj4ge1xuICAgIGV2ZW50OiBFdmVudDtcbiAgICBzZWxlY3RlZFZhbHVlOiBHYW50dEl0ZW08VD4gfCBHYW50dEl0ZW08VD5bXTtcbn1cblxuZXhwb3J0IGNsYXNzIEdhbnR0VGFibGVEcmFnRHJvcHBlZEV2ZW50PFQgPSB1bmtub3duPiB7XG4gICAgc291cmNlOiBHYW50dEl0ZW08VD47XG4gICAgc291cmNlUGFyZW50OiBHYW50dEl0ZW08VD47XG4gICAgdGFyZ2V0OiBHYW50dEl0ZW08VD47XG4gICAgdGFyZ2V0UGFyZW50OiBHYW50dEl0ZW08VD47XG4gICAgZHJvcFBvc2l0aW9uOiBHYW50dFRhYmxlRHJvcFBvc2l0aW9uO1xufVxuXG5leHBvcnQgY2xhc3MgR2FudHRUYWJsZURyYWdTdGFydGVkRXZlbnQ8VCA9IHVua25vd24+IHtcbiAgICBzb3VyY2U6IEdhbnR0SXRlbTxUPjtcbiAgICBzb3VyY2VQYXJlbnQ6IEdhbnR0SXRlbTxUPjtcbn1cblxuZXhwb3J0IGNsYXNzIEdhbnR0VGFibGVEcmFnRW5kZWRFdmVudDxUID0gdW5rbm93bj4ge1xuICAgIHNvdXJjZTogR2FudHRJdGVtPFQ+O1xuICAgIHNvdXJjZVBhcmVudDogR2FudHRJdGVtPFQ+O1xufVxuXG5leHBvcnQgdHlwZSBHYW50dFRhYmxlRHJvcFBvc2l0aW9uID0gJ2JlZm9yZScgfCAnaW5zaWRlJyB8ICdhZnRlcic7XG5cbmV4cG9ydCBjbGFzcyBHYW50dFRhYmxlRHJhZ0VudGVyUHJlZGljYXRlQ29udGV4dDxUID0gdW5rbm93bj4ge1xuICAgIHNvdXJjZTogR2FudHRJdGVtPFQ+O1xuICAgIHRhcmdldDogR2FudHRJdGVtPFQ+O1xuICAgIGRyb3BQb3NpdGlvbjogR2FudHRUYWJsZURyb3BQb3NpdGlvbjtcbn1cblxuZXhwb3J0IGNsYXNzIEdhbnR0VmlydHVhbFNjcm9sbGVkSW5kZXhDaGFuZ2VFdmVudCB7XG4gICAgaW5kZXg6IG51bWJlcjtcbiAgICByZW5kZXJlZFJhbmdlOiB7XG4gICAgICAgIHN0YXJ0OiBudW1iZXI7XG4gICAgICAgIGVuZDogbnVtYmVyO1xuICAgIH07XG4gICAgY291bnQ6IG51bWJlcjtcbn1cbiJdfQ==
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9nYW50dC9zcmMvY2xhc3MvZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsTUFBTSxPQUFPLGNBQWM7Q0FFMUI7QUFFRCxNQUFNLE9BQU8sZUFBZTtDQUUzQjtBQUVELE1BQU0sT0FBTyxrQkFBa0I7Q0FJOUI7QUFFRCxNQUFNLE9BQU8sc0JBQXNCO0NBR2xDO0FBRUQsTUFBTSxPQUFPLG1CQUFtQjtDQUkvQjtBQUVELE1BQU0sT0FBTyxrQkFBa0I7Q0FHOUI7QUFFRCxNQUFNLE9BQU8sa0JBQWtCO0NBSTlCO0FBRUQsTUFBTSxPQUFPLDBCQUEwQjtDQU10QztBQUVELE1BQU0sT0FBTywwQkFBMEI7Q0FHdEM7QUFFRCxNQUFNLE9BQU8sd0JBQXdCO0NBR3BDO0FBSUQsTUFBTSxPQUFPLG1DQUFtQztDQUkvQztBQUVELE1BQU0sT0FBTyxvQ0FBb0M7Q0FPaEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5neEdhbnR0VGFibGVDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuLi90YWJsZS9nYW50dC1jb2x1bW4uY29tcG9uZW50JztcbmltcG9ydCB7IEdhbnR0SXRlbSB9IGZyb20gJy4vaXRlbSc7XG5pbXBvcnQgeyBHYW50dExpbmtUeXBlIH0gZnJvbSAnLi9saW5rJztcblxuZXhwb3J0IGNsYXNzIEdhbnR0RHJhZ0V2ZW50PFQgPSB1bmtub3duPiB7XG4gICAgaXRlbTogR2FudHRJdGVtPFQ+O1xufVxuXG5leHBvcnQgY2xhc3MgR2FudHRUYWJsZUV2ZW50IHtcbiAgICBjb2x1bW5zOiBRdWVyeUxpc3Q8Tmd4R2FudHRUYWJsZUNvbHVtbkNvbXBvbmVudD47XG59XG5cbmV4cG9ydCBjbGFzcyBHYW50dExpbmtEcmFnRXZlbnQ8VCA9IHVua25vd24+IHtcbiAgICBzb3VyY2U6IEdhbnR0SXRlbTxUPjtcbiAgICB0YXJnZXQ/OiBHYW50dEl0ZW08VD47XG4gICAgdHlwZT86IEdhbnR0TGlua1R5cGU7XG59XG5cbmV4cG9ydCBjbGFzcyBHYW50dExvYWRPblNjcm9sbEV2ZW50IHtcbiAgICBzdGFydDogbnVtYmVyO1xuICAgIGVuZDogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgR2FudHRMaW5lQ2xpY2tFdmVudDxUID0gdW5rbm93bj4ge1xuICAgIGV2ZW50OiBNb3VzZUV2ZW50O1xuICAgIHNvdXJjZTogR2FudHRJdGVtPFQ+O1xuICAgIHRhcmdldDogR2FudHRJdGVtPFQ+O1xufVxuXG5leHBvcnQgY2xhc3MgR2FudHRCYXJDbGlja0V2ZW50PFQgPSB1bmtub3duPiB7XG4gICAgZXZlbnQ6IEV2ZW50O1xuICAgIGl0ZW06IEdhbnR0SXRlbTxUPjtcbn1cblxuZXhwb3J0IGNsYXNzIEdhbnR0U2VsZWN0ZWRFdmVudDxUID0gdW5rbm93bj4ge1xuICAgIGV2ZW50OiBFdmVudDtcbiAgICBjdXJyZW50PzogR2FudHRJdGVtPFQ+O1xuICAgIHNlbGVjdGVkVmFsdWU6IEdhbnR0SXRlbTxUPiB8IEdhbnR0SXRlbTxUPltdO1xufVxuXG5leHBvcnQgY2xhc3MgR2FudHRUYWJsZURyYWdEcm9wcGVkRXZlbnQ8VCA9IHVua25vd24+IHtcbiAgICBzb3VyY2U6IEdhbnR0SXRlbTxUPjtcbiAgICBzb3VyY2VQYXJlbnQ6IEdhbnR0SXRlbTxUPjtcbiAgICB0YXJnZXQ6IEdhbnR0SXRlbTxUPjtcbiAgICB0YXJnZXRQYXJlbnQ6IEdhbnR0SXRlbTxUPjtcbiAgICBkcm9wUG9zaXRpb246IEdhbnR0VGFibGVEcm9wUG9zaXRpb247XG59XG5cbmV4cG9ydCBjbGFzcyBHYW50dFRhYmxlRHJhZ1N0YXJ0ZWRFdmVudDxUID0gdW5rbm93bj4ge1xuICAgIHNvdXJjZTogR2FudHRJdGVtPFQ+O1xuICAgIHNvdXJjZVBhcmVudDogR2FudHRJdGVtPFQ+O1xufVxuXG5leHBvcnQgY2xhc3MgR2FudHRUYWJsZURyYWdFbmRlZEV2ZW50PFQgPSB1bmtub3duPiB7XG4gICAgc291cmNlOiBHYW50dEl0ZW08VD47XG4gICAgc291cmNlUGFyZW50OiBHYW50dEl0ZW08VD47XG59XG5cbmV4cG9ydCB0eXBlIEdhbnR0VGFibGVEcm9wUG9zaXRpb24gPSAnYmVmb3JlJyB8ICdpbnNpZGUnIHwgJ2FmdGVyJztcblxuZXhwb3J0IGNsYXNzIEdhbnR0VGFibGVEcmFnRW50ZXJQcmVkaWNhdGVDb250ZXh0PFQgPSB1bmtub3duPiB7XG4gICAgc291cmNlOiBHYW50dEl0ZW08VD47XG4gICAgdGFyZ2V0OiBHYW50dEl0ZW08VD47XG4gICAgZHJvcFBvc2l0aW9uOiBHYW50dFRhYmxlRHJvcFBvc2l0aW9uO1xufVxuXG5leHBvcnQgY2xhc3MgR2FudHRWaXJ0dWFsU2Nyb2xsZWRJbmRleENoYW5nZUV2ZW50IHtcbiAgICBpbmRleDogbnVtYmVyO1xuICAgIHJlbmRlcmVkUmFuZ2U6IHtcbiAgICAgICAgc3RhcnQ6IG51bWJlcjtcbiAgICAgICAgZW5kOiBudW1iZXI7XG4gICAgfTtcbiAgICBjb3VudDogbnVtYmVyO1xufVxuIl19
@@ -1,6 +1,7 @@
1
1
  import { GanttDate } from '../utils/date';
2
2
  import { BehaviorSubject } from 'rxjs';
3
3
  import { GanttLinkType } from './link';
4
+ const DEFAULT_FILL_INCREMENT_WIDTH = 120;
4
5
  export var GanttItemType;
5
6
  (function (GanttItemType) {
6
7
  GanttItemType["bar"] = "bar";
@@ -11,7 +12,8 @@ export class GanttItemInternal {
11
12
  get refs() {
12
13
  return this.refs$.getValue();
13
14
  }
14
- constructor(item, level, options) {
15
+ constructor(item, level, view) {
16
+ this.view = view;
15
17
  this.refs$ = new BehaviorSubject(null);
16
18
  this.origin = item;
17
19
  this.id = this.origin.id;
@@ -36,24 +38,20 @@ export class GanttItemInternal {
36
38
  this.start = item.start ? new GanttDate(item.start) : null;
37
39
  this.end = item.end ? new GanttDate(item.end) : null;
38
40
  this.level = level;
39
- // 默认填充 30 天
40
- this.fillDays = options?.fillDays || 30;
41
41
  this.children = (item.children || []).map((subItem) => {
42
- return new GanttItemInternal(subItem, level + 1, { fillDays: this.fillDays });
42
+ return new GanttItemInternal(subItem, level + 1, view);
43
43
  });
44
44
  this.type = this.origin.type || GanttItemType.bar;
45
45
  this.progress = this.origin.progress;
46
- // fill days when start or end is null
47
- this.fillItemStartOrEnd(item);
46
+ this.fillDateWhenStartOrEndIsNil(item);
48
47
  }
49
- fillItemStartOrEnd(item) {
50
- if (this.fillDays > 0) {
51
- const fillDays = this.fillDays - 1;
48
+ fillDateWhenStartOrEndIsNil(item) {
49
+ if (this.view) {
52
50
  if (item.start && !item.end) {
53
- this.end = new GanttDate(item.start).addDays(fillDays).endOfDay();
51
+ this.end = this.view.getDateByXPoint(this.view.getXPointByDate(new GanttDate(item.start)) + DEFAULT_FILL_INCREMENT_WIDTH);
54
52
  }
55
53
  if (!item.start && item.end) {
56
- this.start = new GanttDate(item.end).addDays(-fillDays).startOfDay();
54
+ this.start = this.view.getDateByXPoint(this.view.getXPointByDate(new GanttDate(item.end)) - DEFAULT_FILL_INCREMENT_WIDTH);
57
55
  }
58
56
  }
59
57
  }
@@ -61,8 +59,8 @@ export class GanttItemInternal {
61
59
  this.refs$.next(refs);
62
60
  }
63
61
  updateDate(start, end) {
64
- this.start = start.startOfDay();
65
- this.end = end.endOfDay();
62
+ this.start = start;
63
+ this.end = end;
66
64
  this.origin.start = this.start.getUnixTime();
67
65
  this.origin.end = this.end.getUnixTime();
68
66
  }
@@ -72,7 +70,7 @@ export class GanttItemInternal {
72
70
  addChildren(items) {
73
71
  this.origin.children = items;
74
72
  this.children = (items || []).map((subItem) => {
75
- return new GanttItemInternal(subItem, this.level + 1, { fillDays: this.fillDays });
73
+ return new GanttItemInternal(subItem, this.level + 1, this.view);
76
74
  });
77
75
  }
78
76
  setExpand(expanded) {
@@ -84,4 +82,4 @@ export class GanttItemInternal {
84
82
  this.origin.links = this.links;
85
83
  }
86
84
  }
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dhbnR0L3NyYy9jbGFzcy9pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQWEsYUFBYSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBU2xELE1BQU0sQ0FBTixJQUFZLGFBSVg7QUFKRCxXQUFZLGFBQWE7SUFDckIsNEJBQVcsQ0FBQTtJQUNYLGdDQUFlLENBQUE7SUFDZixrQ0FBaUIsQ0FBQTtBQUNyQixDQUFDLEVBSlcsYUFBYSxLQUFiLGFBQWEsUUFJeEI7QUFzQkQsTUFBTSxPQUFPLGlCQUFpQjtJQXNCMUIsSUFBSSxJQUFJO1FBQ0osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFJRCxZQUFZLElBQWUsRUFBRSxLQUFjLEVBQUUsT0FBOEI7UUFGM0UsVUFBSyxHQUFHLElBQUksZUFBZSxDQUEwQyxJQUFJLENBQUMsQ0FBQztRQUd2RSxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNuQixJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNoRCxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRTtnQkFDMUIsT0FBTztvQkFDSCxJQUFJLEVBQUUsYUFBYSxDQUFDLEVBQUU7b0JBQ3RCLElBQUk7aUJBQ1AsQ0FBQzthQUNMO2lCQUFNO2dCQUNILE9BQU8sSUFBSSxDQUFDO2FBQ2Y7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztRQUNyQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztRQUNqRixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztRQUNwRixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDO1FBQy9DLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO1FBQ2xGLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDM0QsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FB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Q3pCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUNwQyxDQUFDO0lBRUQsT0FBTyxDQUFDLElBQWU7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ25DLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdhbnR0RGF0ZSB9IGZyb20gJy4uL3V0aWxzL2RhdGUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBHYW50dExpbmssIEdhbnR0TGlua1R5cGUgfSBmcm9tICcuL2xpbmsnO1xuaW1wb3J0IHsgR2FudHRWaWV3VHlwZSB9IGZyb20gJy4vdmlldy10eXBlJztcblxuZXhwb3J0IGludGVyZmFjZSBHYW50dEl0ZW1SZWZzIHtcbiAgICB3aWR0aDogbnVtYmVyO1xuICAgIHg6IG51bWJlcjtcbiAgICB5OiBudW1iZXI7XG59XG5cbmV4cG9ydCBlbnVtIEdhbnR0SXRlbVR5cGUge1xuICAgIGJhciA9ICdiYXInLFxuICAgIHJhbmdlID0gJ3JhbmdlJyxcbiAgICBjdXN0b20gPSAnY3VzdG9tJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdhbnR0SXRlbTxUID0gdW5rbm93bj4ge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICBzdGFydD86IG51bWJlcjtcbiAgICBlbmQ/OiBudW1iZXI7XG4gICAgZ3JvdXBfaWQ/OiBzdHJpbmc7XG4gICAgbGlua3M/OiAoR2FudHRMaW5rIHwgc3RyaW5nKVtdO1xuICAgIGRyYWdnYWJsZT86IGJvb2xlYW47XG4gICAgaXRlbURyYWdnYWJsZT86IGJvb2xlYW47XG4gICAgbGlua2FibGU/OiBib29sZWFuO1xuICAgIGV4cGFuZGFibGU/OiBib29sZWFuO1xuICAgIGV4cGFuZGVkPzogYm9vbGVhbjtcbiAgICBjaGlsZHJlbj86IEdhbnR0SXRlbVtdO1xuICAgIGNvbG9yPzogc3RyaW5nO1xuICAgIGJhclN0eWxlPzogUGFydGlhbDxDU1NTdHlsZURlY2xhcmF0aW9uPjtcbiAgICBvcmlnaW4/OiBUO1xuICAgIHR5cGU/OiBHYW50dEl0ZW1UeXBlO1xuICAgIHByb2dyZXNzPzogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgR2FudHRJdGVtSW50ZXJuYWwge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICBzdGFydDogR2FudHREYXRlO1xuICAgIGVuZDogR2FudHREYXRlO1xuICAgIGxpbmtzOiBHYW50dExpbmtbXTtcbiAgICBjb2xvcj86IHN0cmluZztcbiAgICBiYXJTdHlsZT86IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj47XG4gICAgZHJhZ2dhYmxlPzogYm9vbGVhbjtcbiAgICBpdGVtRHJhZ2dhYmxlPzogYm9vbGVhbjtcbiAgICBsaW5rYWJsZT86IGJvb2xlYW47XG4gICAgb3JpZ2luOiBHYW50dEl0ZW07XG4gICAgZXhwYW5kYWJsZT86IGJvb2xlYW47XG4gICAgZXhwYW5kZWQ/OiBib29sZWFuO1xuICAgIGxvYWRpbmc6IGJvb2xlYW47XG4gICAgY2hpbGRyZW46IEdhbnR0SXRlbUludGVybmFsW107XG4gICAgdHlwZT86IEdhbnR0SXRlbVR5cGU7XG4gICAgcHJvZ3Jlc3M/OiBudW1iZXI7XG4gICAgZmlsbERheXM/OiBudW1iZXI7XG4gICAgdmlld1R5cGU/OiBHYW50dFZpZXdUeXBlO1xuICAgIGxldmVsPzogbnVtYmVyO1xuXG4gICAgZ2V0IHJlZnMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlZnMkLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgcmVmcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHsgd2lkdGg6IG51bWJlcjsgeDogbnVtYmVyOyB5OiBudW1iZXIgfT4obnVsbCk7XG5cbiAgICBjb25zdHJ1Y3RvcihpdGVtOiBHYW50dEl0ZW0sIGxldmVsPzogbnVtYmVyLCBvcHRpb25zPzogeyBmaWxsRGF5czogbnVtYmVyIH0pIHtcbiAgICAgICAgdGhpcy5vcmlnaW4gPSBpdGVtO1xuICAgICAgICB0aGlzLmlkID0gdGhpcy5vcmlnaW4uaWQ7XG4gICAgICAgIHRoaXMubGlua3MgPSAodGhpcy5vcmlnaW4ubGlua3MgfHwgW10pLm1hcCgobGluaykgPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBsaW5rID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IEdhbnR0TGlua1R5cGUuZnMsXG4gICAgICAgICAgICAgICAgICAgIGxpbmtcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbGluaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY29sb3IgPSB0aGlzLm9yaWdpbi5jb2xvcjtcbiAgICAgICAgdGhpcy5iYXJTdHlsZSA9IHRoaXMub3JpZ2luLmJhclN0eWxlO1xuICAgICAgICB0aGlzLmxpbmthYmxlID0gdGhpcy5vcmlnaW4ubGlua2FibGUgPT09IHVuZGVmaW5lZCA/IHRydWUgOiB0aGlzLm9yaWdpbi5saW5rYWJsZTtcbiAgICAgICAgdGhpcy5kcmFnZ2FibGUgPSB0aGlzLm9yaWdpbi5kcmFnZ2FibGUgPT09IHVuZGVmaW5lZCA/IHRydWUgOiB0aGlzLm9yaWdpbi5kcmFnZ2FibGU7XG4gICAgICAgIHRoaXMuaXRlbURyYWdnYWJsZSA9IHRoaXMub3JpZ2luLml0ZW1EcmFnZ2FibGU7XG4gICAgICAgIHRoaXMuZXhwYW5kYWJsZSA9IHRoaXMub3JpZ2luLmV4cGFuZGFibGUgfHwgKHRoaXMub3JpZ2luLmNoaWxkcmVuIHx8IFtdKS5sZW5ndGggPiAwO1xuICAgICAgICB0aGlzLmV4cGFuZGVkID0gdGhpcy5vcmlnaW4uZXhwYW5kZWQgPT09IHVuZGVmaW5lZCA/IGZhbHNlIDogdGhpcy5vcmlnaW4uZXhwYW5kZWQ7XG4gICAgICAgIHRoaXMuc3RhcnQgPSBpdGVtLnN0YXJ0ID8gbmV3IEdhbnR0RGF0ZShpdGVtLnN0YXJ0KSA6IG51bGw7XG4gICAgICAgIHRoaXMuZW5kID0gaXRlbS5lbmQgPyBuZXcgR2FudHREYXRlKGl0ZW0uZW5kKSA6IG51bGw7XG4gICAgICAgIHRoaXMubGV2ZWwgPSBsZXZlbDtcbiAgICAgICAgLy8gIOm7mOiupOWhq+WFhSAzMCDlpKlcbiAgICAgICAgdGhpcy5maWxsRGF5cyA9IG9wdGlvbnM/LmZpbGxEYXlzIHx8IDMwO1xuICAgICAgICB0aGlzLmNoaWxkcmVuID0gKGl0ZW0uY2hpbGRyZW4gfHwgW10pLm1hcCgoc3ViSXRlbSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBHYW50dEl0ZW1JbnRlcm5hbChzdWJJdGVtLCBsZXZlbCArIDEsIHsgZmlsbERheXM6IHRoaXMuZmlsbERheXMgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnR5cGUgPSB0aGlzLm9yaWdpbi50eXBlIHx8IEdhbnR0SXRlbVR5cGUuYmFyO1xuICAgICAgICB0aGlzLnByb2dyZXNzID0gdGhpcy5vcmlnaW4ucHJvZ3Jlc3M7XG4gICAgICAgIC8vIGZpbGwgZGF5cyB3aGVuIHN0YXJ0IG9yIGVuZCBpcyBudWxsXG4gICAgICAgIHRoaXMuZmlsbEl0ZW1TdGFydE9yRW5kKGl0ZW0pO1xuICAgIH1cblxuICAgIGZpbGxJdGVtU3RhcnRPckVuZChpdGVtOiBHYW50dEl0ZW0pIHtcbiAgICAgICAgaWYgKHRoaXMuZmlsbERheXMgPiAwKSB7XG4gICAgICAgICAgICBjb25zdCBmaWxsRGF5cyA9IHRoaXMuZmlsbERheXMgLSAxO1xuICAgICAgICAgICAgaWYgKGl0ZW0uc3RhcnQgJiYgIWl0ZW0uZW5kKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5lbmQgPSBuZXcgR2FudHREYXRlKGl0ZW0uc3RhcnQpLmFkZERheXMoZmlsbERheXMpLmVuZE9mRGF5KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIWl0ZW0uc3RhcnQgJiYgaXRlbS5lbmQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YXJ0ID0gbmV3IEdhbnR0RGF0ZShpdGVtLmVuZCkuYWRkRGF5cygtZmlsbERheXMpLnN0YXJ0T2ZEYXkoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVwZGF0ZVJlZnMocmVmczogR2FudHRJdGVtUmVmcykge1xuICAgICAgICB0aGlzLnJlZnMkLm5leHQocmVmcyk7XG4gICAgfVxuXG4gICAgdXBkYXRlRGF0ZShzdGFydDogR2FudHREYXRlLCBlbmQ6IEdhbnR0RGF0ZSkge1xuICAgICAgICB0aGlzLnN0YXJ0ID0gc3RhcnQuc3RhcnRPZkRheSgpO1xuICAgICAgICB0aGlzLmVuZCA9IGVuZC5lbmRPZkRheSgpO1xuICAgICAgICB0aGlzLm9yaWdpbi5zdGFydCA9IHRoaXMuc3RhcnQuZ2V0VW5peFRpbWUoKTtcbiAgICAgICAgdGhpcy5vcmlnaW4uZW5kID0gdGhpcy5lbmQuZ2V0VW5peFRpbWUoKTtcbiAgICB9XG5cbiAgICB1cGRhdGVMZXZlbChsZXZlbDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMubGV2ZWwgPSBsZXZlbDtcbiAgICB9XG5cbiAgICBhZGRDaGlsZHJlbihpdGVtczogR2FudHRJdGVtW10pIHtcbiAgICAgICAgdGhpcy5vcmlnaW4uY2hpbGRyZW4gPSBpdGVtcztcbiAgICAgICAgdGhpcy5jaGlsZHJlbiA9IChpdGVtcyB8fCBbXSkubWFwKChzdWJJdGVtKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gbmV3IEdhbnR0SXRlbUludGVybmFsKHN1Ykl0ZW0sIHRoaXMubGV2ZWwgKyAxLCB7IGZpbGxEYXlzOiB0aGlzLmZpbGxEYXlzIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzZXRFeHBhbmQoZXhwYW5kZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5leHBhbmRlZCA9IGV4cGFuZGVkO1xuICAgICAgICB0aGlzLm9yaWdpbi5leHBhbmRlZCA9IGV4cGFuZGVkO1xuICAgIH1cblxuICAgIGFkZExpbmsobGluazogR2FudHRMaW5rKSB7XG4gICAgICAgIHRoaXMubGlua3MgPSBbLi4udGhpcy5saW5rcywgbGlua107XG4gICAgICAgIHRoaXMub3JpZ2luLmxpbmtzID0gdGhpcy5saW5rcztcbiAgICB9XG59XG4iXX0=
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dhbnR0L3NyYy9jbGFzcy9pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQWEsYUFBYSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBSWxELE1BQU0sNEJBQTRCLEdBQUcsR0FBRyxDQUFDO0FBUXpDLE1BQU0sQ0FBTixJQUFZLGFBSVg7QUFKRCxXQUFZLGFBQWE7SUFDckIsNEJBQVcsQ0FBQTtJQUNYLGdDQUFlLENBQUE7SUFDZixrQ0FBaUIsQ0FBQTtBQUNyQixDQUFDLEVBSlcsYUFBYSxLQUFiLGFBQWEsUUFJeEI7QUFzQkQsTUFBTSxPQUFPLGlCQUFpQjtJQXFCMUIsSUFBSSxJQUFJO1FBQ0osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFJRCxZQUFZLElBQWUsRUFBRSxLQUFhLEVBQVUsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUZwRSxVQUFLLEdBQUcsSUFBSSxlQUFlLENBQTBDLElBQVcsQ0FBQyxDQUFDO1FBRzlFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ25CLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2hELElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQzNCLE9BQU87b0JBQ0gsSUFBSSxFQUFFLGFBQWEsQ0FBQyxFQUFFO29C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LFFBQVEsQ0FBQztJQUNwQyxDQUFDO0lBRUQsT0FBTyxDQUFDLElBQWU7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ25DLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdhbnR0RGF0ZSB9IGZyb20gJy4uL3V0aWxzL2RhdGUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBHYW50dExpbmssIEdhbnR0TGlua1R5cGUgfSBmcm9tICcuL2xpbmsnO1xuaW1wb3J0IHsgR2FudHRWaWV3VHlwZSB9IGZyb20gJy4vdmlldy10eXBlJztcbmltcG9ydCB7IEdhbnR0VmlldyB9IGZyb20gJy4uL3ZpZXdzL3ZpZXcnO1xuXG5jb25zdCBERUZBVUxUX0ZJTExfSU5DUkVNRU5UX1dJRFRIID0gMTIwO1xuXG5leHBvcnQgaW50ZXJmYWNlIEdhbnR0SXRlbVJlZnMge1xuICAgIHdpZHRoOiBudW1iZXI7XG4gICAgeDogbnVtYmVyO1xuICAgIHk6IG51bWJlcjtcbn1cblxuZXhwb3J0IGVudW0gR2FudHRJdGVtVHlwZSB7XG4gICAgYmFyID0gJ2JhcicsXG4gICAgcmFuZ2UgPSAncmFuZ2UnLFxuICAgIGN1c3RvbSA9ICdjdXN0b20nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2FudHRJdGVtPFQgPSB1bmtub3duPiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICB0aXRsZTogc3RyaW5nO1xuICAgIHN0YXJ0PzogbnVtYmVyO1xuICAgIGVuZD86IG51bWJlcjtcbiAgICBncm91cF9pZD86IHN0cmluZztcbiAgICBsaW5rcz86IChHYW50dExpbmsgfCBzdHJpbmcpW107XG4gICAgZHJhZ2dhYmxlPzogYm9vbGVhbjtcbiAgICBpdGVtRHJhZ2dhYmxlPzogYm9vbGVhbjtcbiAgICBsaW5rYWJsZT86IGJvb2xlYW47XG4gICAgZXhwYW5kYWJsZT86IGJvb2xlYW47XG4gICAgZXhwYW5kZWQ/OiBib29sZWFuO1xuICAgIGNoaWxkcmVuPzogR2FudHRJdGVtW107XG4gICAgY29sb3I/OiBzdHJpbmc7XG4gICAgYmFyU3R5bGU/OiBQYXJ0aWFsPENTU1N0eWxlRGVjbGFyYXRpb24+O1xuICAgIG9yaWdpbj86IFQ7XG4gICAgdHlwZT86IEdhbnR0SXRlbVR5cGU7XG4gICAgcHJvZ3Jlc3M/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjbGFzcyBHYW50dEl0ZW1JbnRlcm5hbCB7XG4gICAgaWQ6IHN0cmluZztcbiAgICB0aXRsZTogc3RyaW5nO1xuICAgIHN0YXJ0OiBHYW50dERhdGUgfCBudWxsO1xuICAgIGVuZDogR2FudHREYXRlIHwgbnVsbDtcbiAgICBsaW5rczogR2FudHRMaW5rW107XG4gICAgY29sb3I/OiBzdHJpbmc7XG4gICAgYmFyU3R5bGU/OiBQYXJ0aWFsPENTU1N0eWxlRGVjbGFyYXRpb24+O1xuICAgIGRyYWdnYWJsZT86IGJvb2xlYW47XG4gICAgaXRlbURyYWdnYWJsZT86IGJvb2xlYW47XG4gICAgbGlua2FibGU/OiBib29sZWFuO1xuICAgIG9yaWdpbjogR2FudHRJdGVtO1xuICAgIGV4cGFuZGFibGU/OiBib29sZWFuO1xuICAgIGV4cGFuZGVkPzogYm9vbGVhbjtcbiAgICBsb2FkaW5nOiBib29sZWFuO1xuICAgIGNoaWxkcmVuOiBHYW50dEl0ZW1JbnRlcm5hbFtdO1xuICAgIHR5cGU/OiBHYW50dEl0ZW1UeXBlO1xuICAgIHByb2dyZXNzPzogbnVtYmVyO1xuICAgIHZpZXdUeXBlPzogR2FudHRWaWV3VHlwZTtcbiAgICBsZXZlbDogbnVtYmVyO1xuXG4gICAgZ2V0IHJlZnMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlZnMkLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgcmVmcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHsgd2lkdGg6IG51bWJlcjsgeDogbnVtYmVyOyB5OiBudW1iZXIgfT4obnVsbCBhcyBhbnkpO1xuXG4gICAgY29uc3RydWN0b3IoaXRlbTogR2FudHRJdGVtLCBsZXZlbDogbnVtYmVyLCBwcml2YXRlIHZpZXc/OiBHYW50dFZpZXcpIHtcbiAgICAgICAgdGhpcy5vcmlnaW4gPSBpdGVtO1xuICAgICAgICB0aGlzLmlkID0gdGhpcy5vcmlnaW4uaWQ7XG4gICAgICAgIHRoaXMubGlua3MgPSAodGhpcy5vcmlnaW4ubGlua3MgfHwgW10pLm1hcCgobGluaykgPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBsaW5rID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IEdhbnR0TGlua1R5cGUuZnMsXG4gICAgICAgICAgICAgICAgICAgIGxpbmtcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbGluaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY29sb3IgPSB0aGlzLm9yaWdpbi5jb2xvcjtcbiAgICAgICAgdGhpcy5iYXJTdHlsZSA9IHRoaXMub3JpZ2luLmJhclN0eWxlO1xuICAgICAgICB0aGlzLmxpbmthYmxlID0gdGhpcy5vcmlnaW4ubGlua2FibGUgPT09IHVuZGVmaW5lZCA/IHRydWUgOiB0aGlzLm9yaWdpbi5saW5rYWJsZTtcbiAgICAgICAgdGhpcy5kcmFnZ2FibGUgPSB0aGlzLm9yaWdpbi5kcmFnZ2FibGUgPT09IHVuZGVmaW5lZCA/IHRydWUgOiB0aGlzLm9yaWdpbi5kcmFnZ2FibGU7XG4gICAgICAgIHRoaXMuaXRlbURyYWdnYWJsZSA9IHRoaXMub3JpZ2luLml0ZW1EcmFnZ2FibGU7XG4gICAgICAgIHRoaXMuZXhwYW5kYWJsZSA9IHRoaXMub3JpZ2luLmV4cGFuZGFibGUgfHwgKHRoaXMub3JpZ2luLmNoaWxkcmVuIHx8IFtdKS5sZW5ndGggPiAwO1xuICAgICAgICB0aGlzLmV4cGFuZGVkID0gdGhpcy5vcmlnaW4uZXhwYW5kZWQgPT09IHVuZGVmaW5lZCA/IGZhbHNlIDogdGhpcy5vcmlnaW4uZXhwYW5kZWQ7XG4gICAgICAgIHRoaXMuc3RhcnQgPSBpdGVtLnN0YXJ0ID8gbmV3IEdhbnR0RGF0ZShpdGVtLnN0YXJ0KSA6IG51bGw7XG4gICAgICAgIHRoaXMuZW5kID0gaXRlbS5lbmQgPyBuZXcgR2FudHREYXRlKGl0ZW0uZW5kKSA6IG51bGw7XG4gICAgICAgIHRoaXMubGV2ZWwgPSBsZXZlbDtcbiAgICAgICAgdGhpcy5jaGlsZHJlbiA9IChpdGVtLmNoaWxkcmVuIHx8IFtdKS5tYXAoKHN1Ykl0ZW0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgR2FudHRJdGVtSW50ZXJuYWwoc3ViSXRlbSwgbGV2ZWwgKyAxLCB2aWV3KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMudHlwZSA9IHRoaXMub3JpZ2luLnR5cGUgfHwgR2FudHRJdGVtVHlwZS5iYXI7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3MgPSB0aGlzLm9yaWdpbi5wcm9ncmVzcztcbiAgICAgICAgdGhpcy5maWxsRGF0ZVdoZW5TdGFydE9yRW5kSXNOaWwoaXRlbSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmaWxsRGF0ZVdoZW5TdGFydE9yRW5kSXNOaWwoaXRlbTogR2FudHRJdGVtKSB7XG4gICAgICAgIGlmICh0aGlzLnZpZXcpIHtcbiAgICAgICAgICAgIGlmIChpdGVtLnN0YXJ0ICYmICFpdGVtLmVuZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuZW5kID0gdGhpcy52aWV3LmdldERhdGVCeVhQb2ludCh0aGlzLnZpZXcuZ2V0WFBvaW50QnlEYXRlKG5ldyBHYW50dERhdGUoaXRlbS5zdGFydCkpICsgREVGQVVMVF9GSUxMX0lOQ1JFTUVOVF9XSURUSCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIWl0ZW0uc3RhcnQgJiYgaXRlbS5lbmQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YXJ0ID0gdGhpcy52aWV3LmdldERhdGVCeVhQb2ludCh0aGlzLnZpZXcuZ2V0WFBvaW50QnlEYXRlKG5ldyBHYW50dERhdGUoaXRlbS5lbmQpKSAtIERFRkFVTFRfRklMTF9JTkNSRU1FTlRfV0lEVEgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlUmVmcyhyZWZzOiBHYW50dEl0ZW1SZWZzKSB7XG4gICAgICAgIHRoaXMucmVmcyQubmV4dChyZWZzKTtcbiAgICB9XG5cbiAgICB1cGRhdGVEYXRlKHN0YXJ0OiBHYW50dERhdGUsIGVuZDogR2FudHREYXRlKSB7XG4gICAgICAgIHRoaXMuc3RhcnQgPSBzdGFydDtcbiAgICAgICAgdGhpcy5lbmQgPSBlbmQ7XG4gICAgICAgIHRoaXMub3JpZ2luLnN0YXJ0ID0gdGhpcy5zdGFydC5nZXRVbml4VGltZSgpO1xuICAgICAgICB0aGlzLm9yaWdpbi5lbmQgPSB0aGlzLmVuZC5nZXRVbml4VGltZSgpO1xuICAgIH1cblxuICAgIHVwZGF0ZUxldmVsKGxldmVsOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5sZXZlbCA9IGxldmVsO1xuICAgIH1cblxuICAgIGFkZENoaWxkcmVuKGl0ZW1zOiBHYW50dEl0ZW1bXSkge1xuICAgICAgICB0aGlzLm9yaWdpbi5jaGlsZHJlbiA9IGl0ZW1zO1xuICAgICAgICB0aGlzLmNoaWxkcmVuID0gKGl0ZW1zIHx8IFtdKS5tYXAoKHN1Ykl0ZW0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgR2FudHRJdGVtSW50ZXJuYWwoc3ViSXRlbSwgdGhpcy5sZXZlbCArIDEsIHRoaXMudmlldyk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNldEV4cGFuZChleHBhbmRlZDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLmV4cGFuZGVkID0gZXhwYW5kZWQ7XG4gICAgICAgIHRoaXMub3JpZ2luLmV4cGFuZGVkID0gZXhwYW5kZWQ7XG4gICAgfVxuXG4gICAgYWRkTGluayhsaW5rOiBHYW50dExpbmspIHtcbiAgICAgICAgdGhpcy5saW5rcyA9IFsuLi50aGlzLmxpbmtzLCBsaW5rXTtcbiAgICAgICAgdGhpcy5vcmlnaW4ubGlua3MgPSB0aGlzLmxpbmtzO1xuICAgIH1cbn1cbiJdfQ==
@@ -5,6 +5,7 @@ export var GanttViewType;
5
5
  GanttViewType["month"] = "month";
6
6
  GanttViewType["year"] = "year";
7
7
  GanttViewType["week"] = "week";
8
+ GanttViewType["hour"] = "hour";
8
9
  })(GanttViewType || (GanttViewType = {}));
9
10
  export const ganttViews = [
10
11
  {
@@ -28,4 +29,4 @@ export const ganttViews = [
28
29
  value: GanttViewType.year
29
30
  }
30
31
  ];
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2FudHQvc3JjL2NsYXNzL3ZpZXctdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxhQU1YO0FBTkQsV0FBWSxhQUFhO0lBQ3JCLDRCQUFXLENBQUE7SUFDWCxvQ0FBbUIsQ0FBQTtJQUNuQixnQ0FBZSxDQUFBO0lBQ2YsOEJBQWEsQ0FBQTtJQUNiLDhCQUFhLENBQUE7QUFDakIsQ0FBQyxFQU5XLGFBQWEsS0FBYixhQUFhLFFBTXhCO0FBRUQsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3RCO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxLQUFLLEVBQUUsYUFBYSxDQUFDLEdBQUc7S0FDM0I7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsS0FBSyxFQUFFLGFBQWEsQ0FBQyxJQUFJO0tBQzVCO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsR0FBRztRQUNULEtBQUssRUFBRSxhQUFhLENBQUMsS0FBSztLQUM3QjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxLQUFLLEVBQUUsYUFBYSxDQUFDLE9BQU87S0FDL0I7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsS0FBSyxFQUFFLGFBQWEsQ0FBQyxJQUFJO0tBQzVCO0NBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEdhbnR0Vmlld1R5cGUge1xuICAgIGRheSA9ICdkYXknLFxuICAgIHF1YXJ0ZXIgPSAncXVhcnRlcicsXG4gICAgbW9udGggPSAnbW9udGgnLFxuICAgIHllYXIgPSAneWVhcicsXG4gICAgd2VlayA9ICd3ZWVrJ1xufVxuXG5leHBvcnQgY29uc3QgZ2FudHRWaWV3cyA9IFtcbiAgICB7XG4gICAgICAgIG5hbWU6ICfml6UnLFxuICAgICAgICB2YWx1ZTogR2FudHRWaWV3VHlwZS5kYXlcbiAgICB9LFxuICAgIHtcbiAgICAgICAgbmFtZTogJ+WRqCcsXG4gICAgICAgIHZhbHVlOiBHYW50dFZpZXdUeXBlLndlZWtcbiAgICB9LFxuICAgIHtcbiAgICAgICAgbmFtZTogJ+aciCcsXG4gICAgICAgIHZhbHVlOiBHYW50dFZpZXdUeXBlLm1vbnRoXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5hbWU6ICflraMnLFxuICAgICAgICB2YWx1ZTogR2FudHRWaWV3VHlwZS5xdWFydGVyXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5hbWU6ICflubQnLFxuICAgICAgICB2YWx1ZTogR2FudHRWaWV3VHlwZS55ZWFyXG4gICAgfVxuXTtcbiJdfQ==
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2FudHQvc3JjL2NsYXNzL3ZpZXctdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxhQU9YO0FBUEQsV0FBWSxhQUFhO0lBQ3JCLDRCQUFXLENBQUE7SUFDWCxvQ0FBbUIsQ0FBQTtJQUNuQixnQ0FBZSxDQUFBO0lBQ2YsOEJBQWEsQ0FBQTtJQUNiLDhCQUFhLENBQUE7SUFDYiw4QkFBYSxDQUFBO0FBQ2pCLENBQUMsRUFQVyxhQUFhLEtBQWIsYUFBYSxRQU94QjtBQUVELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN0QjtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsS0FBSyxFQUFFLGFBQWEsQ0FBQyxHQUFHO0tBQzNCO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsR0FBRztRQUNULEtBQUssRUFBRSxhQUFhLENBQUMsSUFBSTtLQUM1QjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEdBQUc7UUFDVCxLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUs7S0FDN0I7SUFDRDtRQUNJLElBQUksRUFBRSxHQUFHO1FBQ1QsS0FBSyxFQUFFLGFBQWEsQ0FBQyxPQUFPO0tBQy9CO0lBQ0Q7UUFDSSxJQUFJLEVBQUUsR0FBRztRQUNULEtBQUssRUFBRSxhQUFhLENBQUMsSUFBSTtLQUM1QjtDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBHYW50dFZpZXdUeXBlIHtcbiAgICBkYXkgPSAnZGF5JyxcbiAgICBxdWFydGVyID0gJ3F1YXJ0ZXInLFxuICAgIG1vbnRoID0gJ21vbnRoJyxcbiAgICB5ZWFyID0gJ3llYXInLFxuICAgIHdlZWsgPSAnd2VlaycsXG4gICAgaG91ciA9ICdob3VyJ1xufVxuXG5leHBvcnQgY29uc3QgZ2FudHRWaWV3cyA9IFtcbiAgICB7XG4gICAgICAgIG5hbWU6ICfml6UnLFxuICAgICAgICB2YWx1ZTogR2FudHRWaWV3VHlwZS5kYXlcbiAgICB9LFxuICAgIHtcbiAgICAgICAgbmFtZTogJ+WRqCcsXG4gICAgICAgIHZhbHVlOiBHYW50dFZpZXdUeXBlLndlZWtcbiAgICB9LFxuICAgIHtcbiAgICAgICAgbmFtZTogJ+aciCcsXG4gICAgICAgIHZhbHVlOiBHYW50dFZpZXdUeXBlLm1vbnRoXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5hbWU6ICflraMnLFxuICAgICAgICB2YWx1ZTogR2FudHRWaWV3VHlwZS5xdWFydGVyXG4gICAgfSxcbiAgICB7XG4gICAgICAgIG5hbWU6ICflubQnLFxuICAgICAgICB2YWx1ZTogR2FudHRWaWV3VHlwZS55ZWFyXG4gICAgfVxuXTtcbiJdfQ==