@worktile/gantt 13.0.0-next.1 → 13.1.1

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 (46) hide show
  1. package/class/baseline.d.ts +26 -0
  2. package/class/index.d.ts +1 -0
  3. package/class/item.d.ts +1 -2
  4. package/components/bar/bar.component.d.ts +0 -1
  5. package/components/baseline/baseline.component.d.ts +17 -0
  6. package/components/baseline/baseline.component.scss +11 -0
  7. package/esm2020/class/baseline.mjs +18 -0
  8. package/esm2020/class/index.mjs +2 -1
  9. package/esm2020/class/item.mjs +1 -1
  10. package/esm2020/components/bar/bar-drag.mjs +3 -3
  11. package/esm2020/components/bar/bar.component.mjs +4 -5
  12. package/esm2020/components/baseline/baseline.component.mjs +40 -0
  13. package/esm2020/components/calendar/calendar.component.mjs +3 -3
  14. package/esm2020/components/drag-backdrop/drag-backdrop.component.mjs +3 -3
  15. package/esm2020/components/icon/icon.component.mjs +3 -3
  16. package/esm2020/components/links/links.component.mjs +3 -3
  17. package/esm2020/components/main/gantt-main.component.mjs +10 -9
  18. package/esm2020/components/range/range.component.mjs +3 -3
  19. package/esm2020/components/table/gantt-table.component.mjs +5 -7
  20. package/esm2020/gantt-dom.service.mjs +3 -3
  21. package/esm2020/gantt-drag-container.mjs +3 -3
  22. package/esm2020/gantt-item-upper.mjs +4 -6
  23. package/esm2020/gantt-print.service.mjs +3 -3
  24. package/esm2020/gantt-upper.mjs +30 -5
  25. package/esm2020/gantt.component.mjs +16 -7
  26. package/esm2020/gantt.module.mjs +12 -7
  27. package/esm2020/gantt.pipe.mjs +9 -9
  28. package/esm2020/gantt.styles.mjs +1 -1
  29. package/esm2020/public-api.mjs +2 -1
  30. package/esm2020/root.component.mjs +15 -4
  31. package/esm2020/table/gantt-column.component.mjs +3 -3
  32. package/esm2020/table/gantt-table.component.mjs +3 -3
  33. package/esm2020/utils/helpers.mjs +9 -1
  34. package/fesm2015/worktile-gantt.mjs +182 -80
  35. package/fesm2015/worktile-gantt.mjs.map +1 -1
  36. package/fesm2020/worktile-gantt.mjs +180 -80
  37. package/fesm2020/worktile-gantt.mjs.map +1 -1
  38. package/gantt-upper.d.ts +8 -2
  39. package/gantt.component.d.ts +5 -0
  40. package/gantt.module.d.ts +5 -4
  41. package/package.json +4 -2
  42. package/public-api.d.ts +1 -0
  43. package/root.component.d.ts +3 -1
  44. package/styles/index.scss +1 -0
  45. package/styles/variables.scss +3 -0
  46. package/utils/helpers.d.ts +3 -0
@@ -0,0 +1,26 @@
1
+ import { BehaviorSubject } from 'rxjs';
2
+ import { GanttDate } from '../utils/date';
3
+ import { GanttItemRefs } from './item';
4
+ export interface GanttBaselineItem {
5
+ id: string;
6
+ start?: number;
7
+ end?: number;
8
+ }
9
+ export declare class GanttBaselineItemInternal {
10
+ id: string;
11
+ start: GanttDate;
12
+ end: GanttDate;
13
+ origin: GanttBaselineItem;
14
+ get refs(): {
15
+ width: number;
16
+ x: number;
17
+ y: number;
18
+ };
19
+ refs$: BehaviorSubject<{
20
+ width: number;
21
+ x: number;
22
+ y: number;
23
+ }>;
24
+ constructor(item: GanttBaselineItem);
25
+ updateRefs(refs: GanttItemRefs): void;
26
+ }
package/class/index.d.ts CHANGED
@@ -4,3 +4,4 @@ export * from './item';
4
4
  export * from './group';
5
5
  export * from './view-type';
6
6
  export * from './link';
7
+ export * from './baseline';
package/class/item.d.ts CHANGED
@@ -2,7 +2,7 @@ import { GanttDate } from '../utils/date';
2
2
  import { BehaviorSubject } from 'rxjs';
3
3
  import { GanttViewType } from './view-type';
4
4
  import { GanttLink } from './link';
5
- interface GanttItemRefs {
5
+ export interface GanttItemRefs {
6
6
  width: number;
7
7
  x: number;
8
8
  y: number;
@@ -68,4 +68,3 @@ export declare class GanttItemInternal {
68
68
  setExpand(expanded: boolean): void;
69
69
  addLink(link: GanttLink): void;
70
70
  }
71
- export {};
@@ -14,7 +14,6 @@ export declare class NgxGanttBarComponent extends GanttItemUpper implements OnIn
14
14
  contentElementRef: ElementRef<HTMLDivElement>;
15
15
  ganttItemClass: boolean;
16
16
  handles: QueryList<ElementRef<HTMLElement>>;
17
- color: string;
18
17
  constructor(dragContainer: GanttDragContainer, drag: GanttBarDrag, elementRef: ElementRef<HTMLDivElement>, ganttUpper: GanttUpper, ngZone: NgZone);
19
18
  ngOnInit(): void;
20
19
  ngAfterViewInit(): void;
@@ -0,0 +1,17 @@
1
+ import { ElementRef, OnInit } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { GanttBaselineItemInternal } from '../../class/baseline';
4
+ import { GanttUpper } from '../../gantt-upper';
5
+ import * as i0 from "@angular/core";
6
+ export declare class NgxGanttBaselineComponent implements OnInit {
7
+ private elementRef;
8
+ ganttUpper: GanttUpper;
9
+ baselineItem: GanttBaselineItemInternal;
10
+ unsubscribe$: Subject<void>;
11
+ ganttBaselineClass: boolean;
12
+ constructor(elementRef: ElementRef<HTMLElement>, ganttUpper: GanttUpper);
13
+ ngOnInit(): void;
14
+ private setPositions;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgxGanttBaselineComponent, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgxGanttBaselineComponent, "ngx-gantt-baseline,gantt-baseline", never, { "baselineItem": "baselineItem"; }, {}, never, never>;
17
+ }
@@ -0,0 +1,11 @@
1
+ @use '../../styles/variables.scss';
2
+
3
+ .gantt-baseline {
4
+ position: absolute;
5
+ z-index: 1;
6
+ .baseline-content {
7
+ height: 8px;
8
+ border-radius: 2px;
9
+ background-color: variables.$gantt-baseline-background-color;
10
+ }
11
+ }
@@ -0,0 +1,18 @@
1
+ import { BehaviorSubject } from 'rxjs';
2
+ import { GanttDate } from '../utils/date';
3
+ export class GanttBaselineItemInternal {
4
+ constructor(item) {
5
+ this.refs$ = new BehaviorSubject(null);
6
+ this.origin = item;
7
+ this.id = this.origin.id;
8
+ this.start = item.start ? new GanttDate(item.start) : null;
9
+ this.end = item.end ? new GanttDate(item.end) : null;
10
+ }
11
+ get refs() {
12
+ return this.refs$.getValue();
13
+ }
14
+ updateRefs(refs) {
15
+ this.refs$.next(refs);
16
+ }
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZWxpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9nYW50dC9zcmMvY2xhc3MvYmFzZWxpbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBUzFDLE1BQU0sT0FBTyx5QkFBeUI7SUFZbEMsWUFBWSxJQUF1QjtRQUZuQyxVQUFLLEdBQUcsSUFBSSxlQUFlLENBQTBDLElBQUksQ0FBQyxDQUFDO1FBR3ZFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ25CLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUMzRCxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3pELENBQUM7SUFYRCxJQUFJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQVdELFVBQVUsQ0FBQyxJQUFtQjtRQUMxQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEdhbnR0RGF0ZSB9IGZyb20gJy4uL3V0aWxzL2RhdGUnO1xuaW1wb3J0IHsgR2FudHRJdGVtUmVmcyB9IGZyb20gJy4vaXRlbSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2FudHRCYXNlbGluZUl0ZW0ge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgc3RhcnQ/OiBudW1iZXI7XG4gICAgZW5kPzogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgR2FudHRCYXNlbGluZUl0ZW1JbnRlcm5hbCB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBzdGFydDogR2FudHREYXRlO1xuICAgIGVuZDogR2FudHREYXRlO1xuICAgIG9yaWdpbjogR2FudHRCYXNlbGluZUl0ZW07XG5cbiAgICBnZXQgcmVmcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVmcyQuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICByZWZzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8eyB3aWR0aDogbnVtYmVyOyB4OiBudW1iZXI7IHk6IG51bWJlciB9PihudWxsKTtcblxuICAgIGNvbnN0cnVjdG9yKGl0ZW06IEdhbnR0QmFzZWxpbmVJdGVtKSB7XG4gICAgICAgIHRoaXMub3JpZ2luID0gaXRlbTtcbiAgICAgICAgdGhpcy5pZCA9IHRoaXMub3JpZ2luLmlkO1xuICAgICAgICB0aGlzLnN0YXJ0ID0gaXRlbS5zdGFydCA/IG5ldyBHYW50dERhdGUoaXRlbS5zdGFydCkgOiBudWxsO1xuICAgICAgICB0aGlzLmVuZCA9IGl0ZW0uZW5kID8gbmV3IEdhbnR0RGF0ZShpdGVtLmVuZCkgOiBudWxsO1xuICAgIH1cblxuICAgIHVwZGF0ZVJlZnMocmVmczogR2FudHRJdGVtUmVmcykge1xuICAgICAgICB0aGlzLnJlZnMkLm5leHQocmVmcyk7XG4gICAgfVxufVxuIl19
@@ -4,4 +4,5 @@ export * from './item';
4
4
  export * from './group';
5
5
  export * from './view-type';
6
6
  export * from './link';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9nYW50dC9zcmMvY2xhc3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2RhdGUtcG9pbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9ldmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2l0ZW0nO1xuZXhwb3J0ICogZnJvbSAnLi9ncm91cCc7XG5leHBvcnQgKiBmcm9tICcuL3ZpZXctdHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpbmsnO1xuIl19
7
+ export * from './baseline';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9nYW50dC9zcmMvY2xhc3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2RhdGUtcG9pbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9ldmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2l0ZW0nO1xuZXhwb3J0ICogZnJvbSAnLi9ncm91cCc7XG5leHBvcnQgKiBmcm9tICcuL3ZpZXctdHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpbmsnO1xuZXhwb3J0ICogZnJvbSAnLi9iYXNlbGluZSc7XG4iXX0=
@@ -87,4 +87,4 @@ export class GanttItemInternal {
87
87
  this.origin.links = this.links;
88
88
  }
89
89
  }
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dhbnR0L3NyYy9jbGFzcy9pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBYSxhQUFhLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFRbEQsTUFBTSxDQUFOLElBQVksYUFJWDtBQUpELFdBQVksYUFBYTtJQUNyQiw0QkFBVyxDQUFBO0lBQ1gsZ0NBQWUsQ0FBQTtJQUNmLGtDQUFpQixDQUFBO0FBQ3JCLENBQUMsRUFKVyxhQUFhLEtBQWIsYUFBYSxRQUl4QjtBQXFCRCxNQUFNLE9BQU8saUJBQWlCO0lBeUIxQixZQUFZLElBQWUsRUFBRSxPQUFxQztRQUZsRSxVQUFLLEdBQUcsSUFBSSxlQUFlLENBQTBDLElBQUksQ0FBQyxDQUFDO1FBR3ZFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ25CLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2hELElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxFQUFFO2dCQUMxQixPQUFPO29CQUNILElBQUksRUFBRSxhQUFhLENBQUMsRUFBRTtvQkFDdEIsSUFBSTtpQkFDUCxDQUFDO2FBQ0w7aUJBQU07Z0JBQ0gsT0FBTyxJQUFJLENBQUM7YUFDZjtRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMvQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO1FBQ2pGLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO1FBQ2xGLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDM0QsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNyRCxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFB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R0FBRyxRQUFRLENBQUM7SUFDcEMsQ0FBQztJQUVELE9BQU8sQ0FBQyxJQUFlO1FBQ25CLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ25DLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdhbnR0RGF0ZSB9IGZyb20gJy4uL3V0aWxzL2RhdGUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBHYW50dFZpZXdUeXBlIH0gZnJvbSAnLi92aWV3LXR5cGUnO1xuaW1wb3J0IHsgR2FudHRMaW5rLCBHYW50dExpbmtUeXBlIH0gZnJvbSAnLi9saW5rJztcblxuaW50ZXJmYWNlIEdhbnR0SXRlbVJlZnMge1xuICAgIHdpZHRoOiBudW1iZXI7XG4gICAgeDogbnVtYmVyO1xuICAgIHk6IG51bWJlcjtcbn1cblxuZXhwb3J0IGVudW0gR2FudHRJdGVtVHlwZSB7XG4gICAgYmFyID0gJ2JhcicsXG4gICAgcmFuZ2UgPSAncmFuZ2UnLFxuICAgIGN1c3RvbSA9ICdjdXN0b20nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2FudHRJdGVtPFQgPSB1bmtub3duPiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICB0aXRsZTogc3RyaW5nO1xuICAgIHN0YXJ0PzogbnVtYmVyO1xuICAgIGVuZD86IG51bWJlcjtcbiAgICBncm91cF9pZD86IHN0cmluZztcbiAgICBsaW5rcz86IChHYW50dExpbmsgfCBzdHJpbmcpW107XG4gICAgZHJhZ2dhYmxlPzogYm9vbGVhbjtcbiAgICBsaW5rYWJsZT86IGJvb2xlYW47XG4gICAgZXhwYW5kYWJsZT86IGJvb2xlYW47XG4gICAgZXhwYW5kZWQ/OiBib29sZWFuO1xuICAgIGNoaWxkcmVuPzogR2FudHRJdGVtW107XG4gICAgY29sb3I/OiBzdHJpbmc7XG4gICAgYmFyU3R5bGU/OiBQYXJ0aWFsPENTU1N0eWxlRGVjbGFyYXRpb24+O1xuICAgIG9yaWdpbj86IFQ7XG4gICAgdHlwZT86IEdhbnR0SXRlbVR5cGU7XG4gICAgcHJvZ3Jlc3M/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjbGFzcyBHYW50dEl0ZW1JbnRlcm5hbCB7XG4gICAgaWQ6IHN0cmluZztcbiAgICB0aXRsZTogc3RyaW5nO1xuICAgIHN0YXJ0OiBHYW50dERhdGU7XG4gICAgZW5kOiBHYW50dERhdGU7XG4gICAgbGlua3M6IEdhbnR0TGlua1tdO1xuICAgIGNvbG9yPzogc3RyaW5nO1xuICAgIGJhclN0eWxlPzogUGFydGlhbDxDU1NTdHlsZURlY2xhcmF0aW9uPjtcbiAgICBkcmFnZ2FibGU/OiBib29sZWFuO1xuICAgIGxpbmthYmxlPzogYm9vbGVhbjtcbiAgICBvcmlnaW46IEdhbnR0SXRlbTtcbiAgICBleHBhbmRhYmxlPzogYm9vbGVhbjtcbiAgICBleHBhbmRlZD86IGJvb2xlYW47XG4gICAgbG9hZGluZzogYm9vbGVhbjtcbiAgICBjaGlsZHJlbjogR2FudHRJdGVtSW50ZXJuYWxbXTtcbiAgICB0eXBlPzogR2FudHRJdGVtVHlwZTtcbiAgICBwcm9ncmVzcz86IG51bWJlcjtcbiAgICB2aWV3VHlwZT86IEdhbnR0Vmlld1R5cGU7XG5cbiAgICBnZXQgcmVmcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVmcyQuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICByZWZzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8eyB3aWR0aDogbnVtYmVyOyB4OiBudW1iZXI7IHk6IG51bWJlciB9PihudWxsKTtcblxuICAgIGNvbnN0cnVjdG9yKGl0ZW06IEdhbnR0SXRlbSwgb3B0aW9ucz86IHsgdmlld1R5cGU6IEdhbnR0Vmlld1R5cGUgfSkge1xuICAgICAgICB0aGlzLm9yaWdpbiA9IGl0ZW07XG4gICAgICAgIHRoaXMuaWQgPSB0aGlzLm9yaWdpbi5pZDtcbiAgICAgICAgdGhpcy5saW5rcyA9ICh0aGlzLm9yaWdpbi5saW5rcyB8fCBbXSkubWFwKChsaW5rKSA9PiB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGxpbmsgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgdHlwZTogR2FudHRMaW5rVHlwZS5mcyxcbiAgICAgICAgICAgICAgICAgICAgbGlua1xuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldHVybiBsaW5rO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5jb2xvciA9IHRoaXMub3JpZ2luLmNvbG9yO1xuICAgICAgICB0aGlzLmJhclN0eWxlID0gdGhpcy5vcmlnaW4uYmFyU3R5bGU7XG4gICAgICAgIHRoaXMubGlua2FibGUgPSB0aGlzLm9yaWdpbi5saW5rYWJsZSA9PT0gdW5kZWZpbmVkID8gdHJ1ZSA6IHRoaXMub3JpZ2luLmxpbmthYmxlO1xuICAgICAgICB0aGlzLmRyYWdnYWJsZSA9IHRoaXMub3JpZ2luLmRyYWdnYWJsZSA9PT0gdW5kZWZpbmVkID8gdHJ1ZSA6IHRoaXMub3JpZ2luLmRyYWdnYWJsZTtcbiAgICAgICAgdGhpcy5leHBhbmRhYmxlID0gdGhpcy5vcmlnaW4uZXhwYW5kYWJsZSB8fCAodGhpcy5vcmlnaW4uY2hpbGRyZW4gfHwgW10pLmxlbmd0aCA+IDA7XG4gICAgICAgIHRoaXMuZXhwYW5kZWQgPSB0aGlzLm9yaWdpbi5leHBhbmRlZCA9PT0gdW5kZWZpbmVkID8gZmFsc2UgOiB0aGlzLm9yaWdpbi5leHBhbmRlZDtcbiAgICAgICAgdGhpcy5zdGFydCA9IGl0ZW0uc3RhcnQgPyBuZXcgR2FudHREYXRlKGl0ZW0uc3RhcnQpIDogbnVsbDtcbiAgICAgICAgdGhpcy5lbmQgPSBpdGVtLmVuZCA/IG5ldyBHYW50dERhdGUoaXRlbS5lbmQpIDogbnVsbDtcbiAgICAgICAgdGhpcy52aWV3VHlwZSA9IG9wdGlvbnMgJiYgb3B0aW9ucy52aWV3VHlwZSA/IG9wdGlvbnMudmlld1R5cGUgOiBHYW50dFZpZXdUeXBlLm1vbnRoO1xuICAgICAgICB0aGlzLmNoaWxkcmVuID0gKGl0ZW0uY2hpbGRyZW4gfHwgW10pLm1hcCgoc3ViSXRlbSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBHYW50dEl0ZW1JbnRlcm5hbChzdWJJdGVtLCB7IHZpZXdUeXBlOiB0aGlzLnZpZXdUeXBlIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy50eXBlID0gdGhpcy5vcmlnaW4udHlwZSB8fCBHYW50dEl0ZW1UeXBlLmJhcjtcbiAgICAgICAgdGhpcy5wcm9ncmVzcyA9IHRoaXMub3JpZ2luLnByb2dyZXNzO1xuICAgICAgICAvLyBmaWxsIG9uZSBtb250aCB3aGVuIHN0YXJ0IG9yIGVuZCBpcyBudWxsXG4gICAgICAgIHRoaXMuZmlsbEl0ZW1TdGFydE9yRW5kKGl0ZW0pO1xuICAgIH1cblxuICAgIGZpbGxJdGVtU3RhcnRPckVuZChpdGVtOiBHYW50dEl0ZW0pIHtcbiAgICAgICAgbGV0IGFkZEludGVydmFsOiBudW1iZXI7XG4gICAgICAgIHN3aXRjaCAodGhpcy52aWV3VHlwZSkge1xuICAgICAgICAgICAgY2FzZSBHYW50dFZpZXdUeXBlLmRheTpcbiAgICAgICAgICAgIGNhc2UgR2FudHRWaWV3VHlwZS53ZWVrOlxuICAgICAgICAgICAgICAgIGFkZEludGVydmFsID0gMDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgYWRkSW50ZXJ2YWwgPSAzMDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXRlbS5zdGFydCAmJiAhaXRlbS5lbmQpIHtcbiAgICAgICAgICAgIHRoaXMuZW5kID0gbmV3IEdhbnR0RGF0ZShpdGVtLnN0YXJ0KS5hZGREYXlzKGFkZEludGVydmFsKS5lbmRPZkRheSgpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghaXRlbS5zdGFydCAmJiBpdGVtLmVuZCkge1xuICAgICAgICAgICAgdGhpcy5zdGFydCA9IG5ldyBHYW50dERhdGUoaXRlbS5lbmQpLmFkZERheXMoLWFkZEludGVydmFsKS5zdGFydE9mRGF5KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1cGRhdGVSZWZzKHJlZnM6IEdhbnR0SXRlbVJlZnMpIHtcbiAgICAgICAgdGhpcy5yZWZzJC5uZXh0KHJlZnMpO1xuICAgIH1cblxuICAgIHVwZGF0ZURhdGUoc3RhcnQ6IEdhbnR0RGF0ZSwgZW5kOiBHYW50dERhdGUpIHtcbiAgICAgICAgdGhpcy5zdGFydCA9IHN0YXJ0LnN0YXJ0T2ZEYXkoKTtcbiAgICAgICAgdGhpcy5lbmQgPSBlbmQuZW5kT2ZEYXkoKTtcbiAgICAgICAgdGhpcy5vcmlnaW4uc3RhcnQgPSB0aGlzLnN0YXJ0LmdldFVuaXhUaW1lKCk7XG4gICAgICAgIHRoaXMub3JpZ2luLmVuZCA9IHRoaXMuZW5kLmdldFVuaXhUaW1lKCk7XG4gICAgfVxuXG4gICAgYWRkQ2hpbGRyZW4oaXRlbXM6IEdhbnR0SXRlbVtdKSB7XG4gICAgICAgIHRoaXMub3JpZ2luLmNoaWxkcmVuID0gaXRlbXM7XG4gICAgICAgIHRoaXMuY2hpbGRyZW4gPSAoaXRlbXMgfHwgW10pLm1hcCgoc3ViSXRlbSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBHYW50dEl0ZW1JbnRlcm5hbChzdWJJdGVtLCB7IHZpZXdUeXBlOiB0aGlzLnZpZXdUeXBlIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzZXRFeHBhbmQoZXhwYW5kZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5leHBhbmRlZCA9IGV4cGFuZGVkO1xuICAgICAgICB0aGlzLm9yaWdpbi5leHBhbmRlZCA9IGV4cGFuZGVkO1xuICAgIH1cblxuICAgIGFkZExpbmsobGluazogR2FudHRMaW5rKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKGxpbmspO1xuICAgICAgICB0aGlzLmxpbmtzID0gWy4uLnRoaXMubGlua3MsIGxpbmtdO1xuICAgICAgICB0aGlzLm9yaWdpbi5saW5rcyA9IHRoaXMubGlua3M7XG4gICAgfVxufVxuIl19
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2dhbnR0L3NyYy9jbGFzcy9pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBYSxhQUFhLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFRbEQsTUFBTSxDQUFOLElBQVksYUFJWDtBQUpELFdBQVksYUFBYTtJQUNyQiw0QkFBVyxDQUFBO0lBQ1gsZ0NBQWUsQ0FBQTtJQUNmLGtDQUFpQixDQUFBO0FBQ3JCLENBQUMsRUFKVyxhQUFhLEtBQWIsYUFBYSxRQUl4QjtBQXFCRCxNQUFNLE9BQU8saUJBQWlCO0lBeUIxQixZQUFZLElBQWUsRUFBRSxPQUFxQztRQUZsRSxVQUFLLEdBQUcsSUFBSSxlQUFlLENBQTBDLElBQUksQ0FBQyxDQUFDO1FBR3ZFLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ25CLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2hELElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxFQUFFO2dCQUMxQixPQUFPO29CQUNILElBQUksRUFBRSxhQUFhLENBQUMsRUFBRTtvQkFDdEIsSUFBSTtpQkFDUCxDQUFDO2FBQ0w7aUJBQU07Z0JBQ0gsT0FBTyxJQUFJLENBQUM7YUFDZjtRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMvQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO1FBQ2pGLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO1FBQ2xGLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDM0QsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNyRCxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFB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R0FBRyxRQUFRLENBQUM7SUFDcEMsQ0FBQztJQUVELE9BQU8sQ0FBQyxJQUFlO1FBQ25CLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEIsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ25DLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdhbnR0RGF0ZSB9IGZyb20gJy4uL3V0aWxzL2RhdGUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBHYW50dFZpZXdUeXBlIH0gZnJvbSAnLi92aWV3LXR5cGUnO1xuaW1wb3J0IHsgR2FudHRMaW5rLCBHYW50dExpbmtUeXBlIH0gZnJvbSAnLi9saW5rJztcblxuZXhwb3J0IGludGVyZmFjZSBHYW50dEl0ZW1SZWZzIHtcbiAgICB3aWR0aDogbnVtYmVyO1xuICAgIHg6IG51bWJlcjtcbiAgICB5OiBudW1iZXI7XG59XG5cbmV4cG9ydCBlbnVtIEdhbnR0SXRlbVR5cGUge1xuICAgIGJhciA9ICdiYXInLFxuICAgIHJhbmdlID0gJ3JhbmdlJyxcbiAgICBjdXN0b20gPSAnY3VzdG9tJ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdhbnR0SXRlbTxUID0gdW5rbm93bj4ge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICBzdGFydD86IG51bWJlcjtcbiAgICBlbmQ/OiBudW1iZXI7XG4gICAgZ3JvdXBfaWQ/OiBzdHJpbmc7XG4gICAgbGlua3M/OiAoR2FudHRMaW5rIHwgc3RyaW5nKVtdO1xuICAgIGRyYWdnYWJsZT86IGJvb2xlYW47XG4gICAgbGlua2FibGU/OiBib29sZWFuO1xuICAgIGV4cGFuZGFibGU/OiBib29sZWFuO1xuICAgIGV4cGFuZGVkPzogYm9vbGVhbjtcbiAgICBjaGlsZHJlbj86IEdhbnR0SXRlbVtdO1xuICAgIGNvbG9yPzogc3RyaW5nO1xuICAgIGJhclN0eWxlPzogUGFydGlhbDxDU1NTdHlsZURlY2xhcmF0aW9uPjtcbiAgICBvcmlnaW4/OiBUO1xuICAgIHR5cGU/OiBHYW50dEl0ZW1UeXBlO1xuICAgIHByb2dyZXNzPzogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgR2FudHRJdGVtSW50ZXJuYWwge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICBzdGFydDogR2FudHREYXRlO1xuICAgIGVuZDogR2FudHREYXRlO1xuICAgIGxpbmtzOiBHYW50dExpbmtbXTtcbiAgICBjb2xvcj86IHN0cmluZztcbiAgICBiYXJTdHlsZT86IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj47XG4gICAgZHJhZ2dhYmxlPzogYm9vbGVhbjtcbiAgICBsaW5rYWJsZT86IGJvb2xlYW47XG4gICAgb3JpZ2luOiBHYW50dEl0ZW07XG4gICAgZXhwYW5kYWJsZT86IGJvb2xlYW47XG4gICAgZXhwYW5kZWQ/OiBib29sZWFuO1xuICAgIGxvYWRpbmc6IGJvb2xlYW47XG4gICAgY2hpbGRyZW46IEdhbnR0SXRlbUludGVybmFsW107XG4gICAgdHlwZT86IEdhbnR0SXRlbVR5cGU7XG4gICAgcHJvZ3Jlc3M/OiBudW1iZXI7XG4gICAgdmlld1R5cGU/OiBHYW50dFZpZXdUeXBlO1xuXG4gICAgZ2V0IHJlZnMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlZnMkLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgcmVmcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHsgd2lkdGg6IG51bWJlcjsgeDogbnVtYmVyOyB5OiBudW1iZXIgfT4obnVsbCk7XG5cbiAgICBjb25zdHJ1Y3RvcihpdGVtOiBHYW50dEl0ZW0sIG9wdGlvbnM/OiB7IHZpZXdUeXBlOiBHYW50dFZpZXdUeXBlIH0pIHtcbiAgICAgICAgdGhpcy5vcmlnaW4gPSBpdGVtO1xuICAgICAgICB0aGlzLmlkID0gdGhpcy5vcmlnaW4uaWQ7XG4gICAgICAgIHRoaXMubGlua3MgPSAodGhpcy5vcmlnaW4ubGlua3MgfHwgW10pLm1hcCgobGluaykgPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBsaW5rID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IEdhbnR0TGlua1R5cGUuZnMsXG4gICAgICAgICAgICAgICAgICAgIGxpbmtcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbGluaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuY29sb3IgPSB0aGlzLm9yaWdpbi5jb2xvcjtcbiAgICAgICAgdGhpcy5iYXJTdHlsZSA9IHRoaXMub3JpZ2luLmJhclN0eWxlO1xuICAgICAgICB0aGlzLmxpbmthYmxlID0gdGhpcy5vcmlnaW4ubGlua2FibGUgPT09IHVuZGVmaW5lZCA/IHRydWUgOiB0aGlzLm9yaWdpbi5saW5rYWJsZTtcbiAgICAgICAgdGhpcy5kcmFnZ2FibGUgPSB0aGlzLm9yaWdpbi5kcmFnZ2FibGUgPT09IHVuZGVmaW5lZCA/IHRydWUgOiB0aGlzLm9yaWdpbi5kcmFnZ2FibGU7XG4gICAgICAgIHRoaXMuZXhwYW5kYWJsZSA9IHRoaXMub3JpZ2luLmV4cGFuZGFibGUgfHwgKHRoaXMub3JpZ2luLmNoaWxkcmVuIHx8IFtdKS5sZW5ndGggPiAwO1xuICAgICAgICB0aGlzLmV4cGFuZGVkID0gdGhpcy5vcmlnaW4uZXhwYW5kZWQgPT09IHVuZGVmaW5lZCA/IGZhbHNlIDogdGhpcy5vcmlnaW4uZXhwYW5kZWQ7XG4gICAgICAgIHRoaXMuc3RhcnQgPSBpdGVtLnN0YXJ0ID8gbmV3IEdhbnR0RGF0ZShpdGVtLnN0YXJ0KSA6IG51bGw7XG4gICAgICAgIHRoaXMuZW5kID0gaXRlbS5lbmQgPyBuZXcgR2FudHREYXRlKGl0ZW0uZW5kKSA6IG51bGw7XG4gICAgICAgIHRoaXMudmlld1R5cGUgPSBvcHRpb25zICYmIG9wdGlvbnMudmlld1R5cGUgPyBvcHRpb25zLnZpZXdUeXBlIDogR2FudHRWaWV3VHlwZS5tb250aDtcbiAgICAgICAgdGhpcy5jaGlsZHJlbiA9IChpdGVtLmNoaWxkcmVuIHx8IFtdKS5tYXAoKHN1Ykl0ZW0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgR2FudHRJdGVtSW50ZXJuYWwoc3ViSXRlbSwgeyB2aWV3VHlwZTogdGhpcy52aWV3VHlwZSB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMudHlwZSA9IHRoaXMub3JpZ2luLnR5cGUgfHwgR2FudHRJdGVtVHlwZS5iYXI7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3MgPSB0aGlzLm9yaWdpbi5wcm9ncmVzcztcbiAgICAgICAgLy8gZmlsbCBvbmUgbW9udGggd2hlbiBzdGFydCBvciBlbmQgaXMgbnVsbFxuICAgICAgICB0aGlzLmZpbGxJdGVtU3RhcnRPckVuZChpdGVtKTtcbiAgICB9XG5cbiAgICBmaWxsSXRlbVN0YXJ0T3JFbmQoaXRlbTogR2FudHRJdGVtKSB7XG4gICAgICAgIGxldCBhZGRJbnRlcnZhbDogbnVtYmVyO1xuICAgICAgICBzd2l0Y2ggKHRoaXMudmlld1R5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgR2FudHRWaWV3VHlwZS5kYXk6XG4gICAgICAgICAgICBjYXNlIEdhbnR0Vmlld1R5cGUud2VlazpcbiAgICAgICAgICAgICAgICBhZGRJbnRlcnZhbCA9IDA7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIGFkZEludGVydmFsID0gMzA7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGl0ZW0uc3RhcnQgJiYgIWl0ZW0uZW5kKSB7XG4gICAgICAgICAgICB0aGlzLmVuZCA9IG5ldyBHYW50dERhdGUoaXRlbS5zdGFydCkuYWRkRGF5cyhhZGRJbnRlcnZhbCkuZW5kT2ZEYXkoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWl0ZW0uc3RhcnQgJiYgaXRlbS5lbmQpIHtcbiAgICAgICAgICAgIHRoaXMuc3RhcnQgPSBuZXcgR2FudHREYXRlKGl0ZW0uZW5kKS5hZGREYXlzKC1hZGRJbnRlcnZhbCkuc3RhcnRPZkRheSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlUmVmcyhyZWZzOiBHYW50dEl0ZW1SZWZzKSB7XG4gICAgICAgIHRoaXMucmVmcyQubmV4dChyZWZzKTtcbiAgICB9XG5cbiAgICB1cGRhdGVEYXRlKHN0YXJ0OiBHYW50dERhdGUsIGVuZDogR2FudHREYXRlKSB7XG4gICAgICAgIHRoaXMuc3RhcnQgPSBzdGFydC5zdGFydE9mRGF5KCk7XG4gICAgICAgIHRoaXMuZW5kID0gZW5kLmVuZE9mRGF5KCk7XG4gICAgICAgIHRoaXMub3JpZ2luLnN0YXJ0ID0gdGhpcy5zdGFydC5nZXRVbml4VGltZSgpO1xuICAgICAgICB0aGlzLm9yaWdpbi5lbmQgPSB0aGlzLmVuZC5nZXRVbml4VGltZSgpO1xuICAgIH1cblxuICAgIGFkZENoaWxkcmVuKGl0ZW1zOiBHYW50dEl0ZW1bXSkge1xuICAgICAgICB0aGlzLm9yaWdpbi5jaGlsZHJlbiA9IGl0ZW1zO1xuICAgICAgICB0aGlzLmNoaWxkcmVuID0gKGl0ZW1zIHx8IFtdKS5tYXAoKHN1Ykl0ZW0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgR2FudHRJdGVtSW50ZXJuYWwoc3ViSXRlbSwgeyB2aWV3VHlwZTogdGhpcy52aWV3VHlwZSB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgc2V0RXhwYW5kKGV4cGFuZGVkOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuZXhwYW5kZWQgPSBleHBhbmRlZDtcbiAgICAgICAgdGhpcy5vcmlnaW4uZXhwYW5kZWQgPSBleHBhbmRlZDtcbiAgICB9XG5cbiAgICBhZGRMaW5rKGxpbms6IEdhbnR0TGluaykge1xuICAgICAgICBjb25zb2xlLmxvZyhsaW5rKTtcbiAgICAgICAgdGhpcy5saW5rcyA9IFsuLi50aGlzLmxpbmtzLCBsaW5rXTtcbiAgICAgICAgdGhpcy5vcmlnaW4ubGlua3MgPSB0aGlzLmxpbmtzO1xuICAgIH1cbn1cbiJdfQ==
@@ -298,9 +298,9 @@ export class GanttBarDrag {
298
298
  this.destroy$.complete();
299
299
  }
300
300
  }
301
- GanttBarDrag.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: GanttBarDrag, deps: [{ token: i1.DragDrop }, { token: i2.GanttDomService }, { token: i3.GanttDragContainer }, { token: i4.NgxGanttRootComponent, skipSelf: true }], target: i0.ɵɵFactoryTarget.Injectable });
302
- GanttBarDrag.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: GanttBarDrag });
303
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: GanttBarDrag, decorators: [{
301
+ GanttBarDrag.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GanttBarDrag, deps: [{ token: i1.DragDrop }, { token: i2.GanttDomService }, { token: i3.GanttDragContainer }, { token: i4.NgxGanttRootComponent, skipSelf: true }], target: i0.ɵɵFactoryTarget.Injectable });
302
+ GanttBarDrag.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GanttBarDrag });
303
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GanttBarDrag, decorators: [{
304
304
  type: Injectable
305
305
  }], ctorParameters: function () { return [{ type: i1.DragDrop }, { type: i2.GanttDomService }, { type: i3.GanttDragContainer }, { type: i4.NgxGanttRootComponent, decorators: [{
306
306
  type: SkipSelf
@@ -23,7 +23,6 @@ export class NgxGanttBarComponent extends GanttItemUpper {
23
23
  this.ngZone = ngZone;
24
24
  this.barClick = new EventEmitter();
25
25
  this.ganttItemClass = true;
26
- this.color = 'red';
27
26
  }
28
27
  ngOnInit() {
29
28
  super.ngOnInit();
@@ -78,9 +77,9 @@ export class NgxGanttBarComponent extends GanttItemUpper {
78
77
  event.stopPropagation();
79
78
  }
80
79
  }
81
- NgxGanttBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: NgxGanttBarComponent, deps: [{ token: i1.GanttDragContainer }, { token: i2.GanttBarDrag }, { token: i0.ElementRef }, { token: GANTT_UPPER_TOKEN }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
82
- NgxGanttBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: NgxGanttBarComponent, selector: "ngx-gantt-bar,gantt-bar", outputs: { barClick: "barClick" }, host: { properties: { "class.gantt-bar": "this.ganttItemClass" } }, providers: [GanttBarDrag], viewQueries: [{ propertyName: "contentElementRef", first: true, predicate: ["content"], descendants: true }, { propertyName: "handles", predicate: ["handle"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"gantt-bar-layer\">\n <div class=\"drag-handles\">\n <ng-container *ngIf=\"item.draggable && ganttUpper.draggable\">\n <span class=\"handle\" #handle></span>\n <span class=\"handle\" #handle></span>\n </ng-container>\n </div>\n <div *ngIf=\"item.linkable && ganttUpper.linkable\" class=\"link-handles\">\n <span class=\"handle\"><span class=\"point\"></span></span>\n <span class=\"handle\"> <span class=\"point\"></span></span>\n </div>\n</div>\n<div class=\"gantt-bar-border\"></div>\n<div #content class=\"gantt-bar-content\" (click)=\"onBarClick($event)\">\n <div class=\"gantt-bar-content-progress\" *ngIf=\"item.progress >= 0\" [style.width.%]=\"item.progress * 100\"></div>\n <ng-template [ngTemplateOutlet]=\"template\" [ngTemplateOutletContext]=\"{ item: item.origin, refs: item.refs }\"></ng-template>\n</div>\n", directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: NgxGanttBarComponent, decorators: [{
80
+ NgxGanttBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: NgxGanttBarComponent, deps: [{ token: i1.GanttDragContainer }, { token: i2.GanttBarDrag }, { token: i0.ElementRef }, { token: GANTT_UPPER_TOKEN }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
81
+ NgxGanttBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: NgxGanttBarComponent, selector: "ngx-gantt-bar,gantt-bar", outputs: { barClick: "barClick" }, host: { properties: { "class.gantt-bar": "this.ganttItemClass" } }, providers: [GanttBarDrag], viewQueries: [{ propertyName: "contentElementRef", first: true, predicate: ["content"], descendants: true }, { propertyName: "handles", predicate: ["handle"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"gantt-bar-layer\">\n <div class=\"drag-handles\">\n <ng-container *ngIf=\"item.draggable && ganttUpper.draggable\">\n <span class=\"handle\" #handle></span>\n <span class=\"handle\" #handle></span>\n </ng-container>\n </div>\n <div *ngIf=\"item.linkable && ganttUpper.linkable\" class=\"link-handles\">\n <span class=\"handle\"><span class=\"point\"></span></span>\n <span class=\"handle\"> <span class=\"point\"></span></span>\n </div>\n</div>\n<div class=\"gantt-bar-border\"></div>\n<div #content class=\"gantt-bar-content\" (click)=\"onBarClick($event)\">\n <div class=\"gantt-bar-content-progress\" *ngIf=\"item.progress >= 0\" [style.width.%]=\"item.progress * 100\"></div>\n <ng-template [ngTemplateOutlet]=\"template\" [ngTemplateOutletContext]=\"{ item: item.origin, refs: item.refs }\"></ng-template>\n</div>\n", directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: NgxGanttBarComponent, decorators: [{
84
83
  type: Component,
85
84
  args: [{ selector: 'ngx-gantt-bar,gantt-bar', providers: [GanttBarDrag], template: "<div class=\"gantt-bar-layer\">\n <div class=\"drag-handles\">\n <ng-container *ngIf=\"item.draggable && ganttUpper.draggable\">\n <span class=\"handle\" #handle></span>\n <span class=\"handle\" #handle></span>\n </ng-container>\n </div>\n <div *ngIf=\"item.linkable && ganttUpper.linkable\" class=\"link-handles\">\n <span class=\"handle\"><span class=\"point\"></span></span>\n <span class=\"handle\"> <span class=\"point\"></span></span>\n </div>\n</div>\n<div class=\"gantt-bar-border\"></div>\n<div #content class=\"gantt-bar-content\" (click)=\"onBarClick($event)\">\n <div class=\"gantt-bar-content-progress\" *ngIf=\"item.progress >= 0\" [style.width.%]=\"item.progress * 100\"></div>\n <ng-template [ngTemplateOutlet]=\"template\" [ngTemplateOutletContext]=\"{ item: item.origin, refs: item.refs }\"></ng-template>\n</div>\n" }]
86
85
  }], ctorParameters: function () { return [{ type: i1.GanttDragContainer }, { type: i2.GanttBarDrag }, { type: i0.ElementRef }, { type: i4.GanttUpper, decorators: [{
@@ -98,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
98
97
  type: ViewChildren,
99
98
  args: ['handle']
100
99
  }] } });
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dhbnR0L3NyYy9jb21wb25lbnRzL2Jhci9iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2FudHQvc3JjL2NvbXBvbmVudHMvYmFyL2Jhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUVULFdBQVcsRUFJWCxNQUFNLEVBQ04sU0FBUyxFQUNULE1BQU0sRUFDTixZQUFZLEVBRVosWUFBWSxFQUdmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFjLE1BQU0sbUJBQW1CLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7QUFFeEQsU0FBUyxjQUFjLENBQUMsWUFBb0IsRUFBRSxLQUFhLEVBQUUsSUFBWTtJQUNyRSxPQUFPLG1CQUFtQixZQUFZLElBQUksS0FBSyxPQUFPLElBQUksT0FBTyxDQUFDO0FBQ3RFLENBQUM7QUFPRCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsY0FBYztJQVdwRCxZQUNZLGFBQWlDLEVBQ2pDLElBQWtCLEVBQzFCLFVBQXNDLEVBQ0ssVUFBc0IsRUFDekQsTUFBYztRQUV0QixLQUFLLENBQUMsVUFBVSxF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a0JhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDSSx5QkFBeUIsYUFFeEIsQ0FBQyxZQUFZLENBQUM7OzBCQWlCcEIsTUFBTTsyQkFBQyxpQkFBaUI7aUVBZG5CLFFBQVE7c0JBQWpCLE1BQU07Z0JBRWUsaUJBQWlCO3NCQUF0QyxTQUFTO3VCQUFDLFNBQVM7Z0JBRVksY0FBYztzQkFBN0MsV0FBVzt1QkFBQyxpQkFBaUI7Z0JBRU4sT0FBTztzQkFBOUIsWUFBWTt1QkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgT25Jbml0LFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBJbmplY3QsXG4gICAgVmlld0NoaWxkLFxuICAgIE91dHB1dCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBWaWV3Q2hpbGRyZW4sXG4gICAgUXVlcnlMaXN0LFxuICAgIE5nWm9uZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZyb21FdmVudCwgbWVyZ2UsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBHYW50dEJhckRyYWcgfSBmcm9tICcuL2Jhci1kcmFnJztcbmltcG9ydCB7IGhleFRvUmdiIH0gZnJvbSAnLi4vLi4vdXRpbHMvaGVscGVycyc7XG5pbXBvcnQgeyBHYW50dERyYWdDb250YWluZXIgfSBmcm9tICcuLi8uLi9nYW50dC1kcmFnLWNvbnRhaW5lcic7XG5pbXBvcnQgeyBiYXJCYWNrZ3JvdW5kIH0gZnJvbSAnLi4vLi4vZ2FudHQuc3R5bGVzJztcbmltcG9ydCB7IEdhbnR0QmFyQ2xpY2tFdmVudCB9IGZyb20gJy4uLy4uL2NsYXNzJztcbmltcG9ydCB7IEdBTlRUX1VQUEVSX1RPS0VOLCBHYW50dFVwcGVyIH0gZnJvbSAnLi4vLi4vZ2FudHQtdXBwZXInO1xuaW1wb3J0IHsgR2FudHRJdGVtVXBwZXIgfSBmcm9tICcuLi8uLi9nYW50dC1pdGVtLXVwcGVyJztcblxuZnVuY3Rpb24gbGluZWFyR3JhZGllbnQoc2lkZU9yQ29ybmVyOiBzdHJpbmcsIGNvbG9yOiBzdHJpbmcsIHN0b3A6IHN0cmluZykge1xuICAgIHJldHVybiBgbGluZWFyLWdyYWRpZW50KCR7c2lkZU9yQ29ybmVyfSwke2NvbG9yfSAwJSwke3N0b3B9IDQwJSlgO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25neC1nYW50dC1iYXIsZ2FudHQtYmFyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgICBwcm92aWRlcnM6IFtHYW50dEJhckRyYWddXG59KVxuZXhwb3J0IGNsYXNzIE5neEdhbnR0QmFyQ29tcG9uZW50IGV4dGVuZHMgR2FudHRJdGVtVXBwZXIgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgICBAT3V0cHV0KCkgYmFyQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPEdhbnR0QmFyQ2xpY2tFdmVudD4oKTtcblxuICAgIEBWaWV3Q2hpbGQoJ2NvbnRlbnQnKSBjb250ZW50RWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmdhbnR0LWJhcicpIGdhbnR0SXRlbUNsYXNzID0gdHJ1ZTtcblxuICAgIEBWaWV3Q2hpbGRyZW4oJ2hhbmRsZScpIGhhbmRsZXM6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj47XG5cbiAgICBjb2xvciA9ICdyZWQnO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZHJhZ0NvbnRhaW5lcjogR2FudHREcmFnQ29udGFpbmVyLFxuICAgICAgICBwcml2YXRlIGRyYWc6IEdhbnR0QmFyRHJhZyxcbiAgICAgICAgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoR0FOVFRfVVBQRVJfVE9LRU4pIHB1YmxpYyBvdmVycmlkZSBnYW50dFVwcGVyOiBHYW50dFVwcGVyLFxuICAgICAgICBwcml2YXRlIG5nWm9uZTogTmdab25lXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGVsZW1lbnRSZWYsIGdhbnR0VXBwZXIpO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIG5nT25Jbml0KCkge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLmRyYWdDb250YWluZXIuZHJhZ0VuZGVkLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2V0Q29udGVudEJhY2tncm91bmQoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLmRyYWcuY3JlYXRlRHJhZ3ModGhpcy5lbGVtZW50UmVmLCB0aGlzLml0ZW0sIHRoaXMuZ2FudHRVcHBlcik7XG4gICAgICAgIHRoaXMuc2V0Q29udGVudEJhY2tncm91bmQoKTtcblxuICAgICAgICB0aGlzLmhhbmRsZXMuY2hhbmdlc1xuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgc3RhcnRXaXRoKHRoaXMuaGFuZGxlcyksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKFxuICAgICAgICAgICAgICAgICAgICAoKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gTm90ZTogd2UgbmVlZCB0byBleHBsaWNpdGx5IHN1YnNjcmliZSBvdXRzaWRlIG9mIHRoZSBBbmd1bGFyIHpvbmUgc2luY2UgYGFkZEV2ZW50TGlzdGVuZXJgXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBpcyBjYWxsZWQgd2hlbiB0aGUgYGZyb21FdmVudGAgaXMgc3Vic2NyaWJlZC5cbiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBPYnNlcnZhYmxlPEV2ZW50Pigoc3Vic2NyaWJlcikgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXJnZSguLi50aGlzLmhhbmRsZXMudG9BcnJheSgpLm1hcCgoaGFuZGxlKSA9PiBmcm9tRXZlbnQoaGFuZGxlLm5hdGl2ZUVsZW1lbnQsICdtb3VzZWRvd24nKSkpLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1YnNjcmliZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlJClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkJhckNsaWNrKGV2ZW50OiBFdmVudCkge1xuICAgICAgICB0aGlzLmJhckNsaWNrLmVtaXQoeyBldmVudCwgaXRlbTogdGhpcy5pdGVtLm9yaWdpbiB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldENvbnRlbnRCYWNrZ3JvdW5kKCkge1xuICAgICAgICBjb25zdCBjb250ZW50RWxlbWVudCA9IHRoaXMuY29udGVudEVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3QgY29sb3IgPSB0aGlzLml0ZW0uY29sb3IgfHwgYmFyQmFja2dyb3VuZDtcbiAgICAgICAgY29uc3Qgc3R5bGU6IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj4gPSB0aGlzLml0ZW0uYmFyU3R5bGUgfHwge307XG4gICAgICAgIGlmICh0aGlzLml0ZW0ub3JpZ2luLnN0YXJ0ICYmIHRoaXMuaXRlbS5vcmlnaW4uZW5kKSB7XG4gICAgICAgICAgICBzdHlsZS5iYWNrZ3JvdW5kID0gY29sb3I7XG4gICAgICAgICAgICBzdHlsZS5ib3JkZXJSYWRpdXMgPSAnJztcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pdGVtLm9yaWdpbi5zdGFydCAmJiAhdGhpcy5pdGVtLm9yaWdpbi5lbmQpIHtcbiAgICAgICAgICAgIHN0eWxlLmJhY2tncm91bmQgPSBsaW5lYXJHcmFkaWVudCgndG8gbGVmdCcsIGhleFRvUmdiKGNvbG9yLCAwLjU1KSwgaGV4VG9SZ2IoY29sb3IsIDEpKTtcbiAgICAgICAgICAgIHN0eWxlLmJvcmRlclJhZGl1cyA9ICc0cHggMTIuNXB4IDEyLjVweCA0cHgnO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy5pdGVtLm9yaWdpbi5zdGFydCAmJiB0aGlzLml0ZW0ub3JpZ2luLmVuZCkge1xuICAgICAgICAgICAgc3R5bGUuYmFja2dyb3VuZCA9IGxpbmVhckdyYWRpZW50KCd0byByaWdodCcsIGhleFRvUmdiKGNvbG9yLCAwLjU1KSwgaGV4VG9SZ2IoY29sb3IsIDEpKTtcbiAgICAgICAgICAgIHN0eWxlLmJvcmRlclJhZGl1cyA9ICcxMi41cHggNHB4IDRweCAxMi41cHgnO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLml0ZW0ucHJvZ3Jlc3MgPj0gMCkge1xuICAgICAgICAgICAgY29uc3QgY29udGVudFByb2dyZXNzRWxlbWVudCA9IGNvbnRlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5nYW50dC1iYXItY29udGVudC1wcm9ncmVzcycpIGFzIEhUTUxEaXZFbGVtZW50O1xuICAgICAgICAgICAgc3R5bGUuYmFja2dyb3VuZCA9IGhleFRvUmdiKGNvbG9yLCAwLjMpO1xuICAgICAgICAgICAgc3R5bGUuYm9yZGVyUmFkaXVzID0gJyc7XG4gICAgICAgICAgICBjb250ZW50UHJvZ3Jlc3NFbGVtZW50LnN0eWxlLmJhY2tncm91bmQgPSBjb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIHN0eWxlKSB7XG4gICAgICAgICAgICBpZiAoc3R5bGUuaGFzT3duUHJvcGVydHkoa2V5KSkge1xuICAgICAgICAgICAgICAgIGNvbnRlbnRFbGVtZW50LnN0eWxlW2tleV0gPSBzdHlsZVtrZXldO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3RvcFByb3BhZ2F0aW9uKGV2ZW50OiBFdmVudCkge1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZ2FudHQtYmFyLWxheWVyXCI+XG4gIDxkaXYgY2xhc3M9XCJkcmFnLWhhbmRsZXNcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS5kcmFnZ2FibGUgJiYgZ2FudHRVcHBlci5kcmFnZ2FibGVcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiaGFuZGxlXCIgI2hhbmRsZT48L3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cImhhbmRsZVwiICNoYW5kbGU+PC9zcGFuPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cIml0ZW0ubGlua2FibGUgJiYgZ2FudHRVcHBlci5saW5rYWJsZVwiIGNsYXNzPVwibGluay1oYW5kbGVzXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJoYW5kbGVcIj48c3BhbiBjbGFzcz1cInBvaW50XCI+PC9zcGFuPjwvc3Bhbj5cbiAgICA8c3BhbiBjbGFzcz1cImhhbmRsZVwiPiA8c3BhbiBjbGFzcz1cInBvaW50XCI+PC9zcGFuPjwvc3Bhbj5cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJnYW50dC1iYXItYm9yZGVyXCI+PC9kaXY+XG48ZGl2ICNjb250ZW50IGNsYXNzPVwiZ2FudHQtYmFyLWNvbnRlbnRcIiAoY2xpY2spPVwib25CYXJDbGljaygkZXZlbnQpXCI+XG4gIDxkaXYgY2xhc3M9XCJnYW50dC1iYXItY29udGVudC1wcm9ncmVzc1wiICpuZ0lmPVwiaXRlbS5wcm9ncmVzcyA+PSAwXCIgW3N0eWxlLndpZHRoLiVdPVwiaXRlbS5wcm9ncmVzcyAqIDEwMFwiPjwvZGl2PlxuICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwidGVtcGxhdGVcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtOiBpdGVtLm9yaWdpbiwgcmVmczogaXRlbS5yZWZzIH1cIj48L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dhbnR0L3NyYy9jb21wb25lbnRzL2Jhci9iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2FudHQvc3JjL2NvbXBvbmVudHMvYmFyL2Jhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUVULFdBQVcsRUFJWCxNQUFNLEVBQ04sU0FBUyxFQUNULE1BQU0sRUFDTixZQUFZLEVBRVosWUFBWSxFQUdmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFjLE1BQU0sbUJBQW1CLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7QUFFeEQsU0FBUyxjQUFjLENBQUMsWUFBb0IsRUFBRSxLQUFhLEVBQUUsSUFBWTtJQUNyRSxPQUFPLG1CQUFtQixZQUFZLElBQUksS0FBSyxPQUFPLElBQUksT0FBTyxDQUFDO0FBQ3RFLENBQUM7QUFPRCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsY0FBYztJQVNwRCxZQUNZLGFBQWlDLEVBQ2pDLElBQWtCLEVBQzFCLFVBQXNDLEVBQ0ssVUFBc0IsRUFDekQsTUFBYztRQUV0QixLQUFLLENBQUMsVUFBVSxF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QUNJLHlCQUF5QixhQUV4QixDQUFDLFlBQVksQ0FBQzs7MEJBZXBCLE1BQU07MkJBQUMsaUJBQWlCO2lFQVpuQixRQUFRO3NCQUFqQixNQUFNO2dCQUVlLGlCQUFpQjtzQkFBdEMsU0FBUzt1QkFBQyxTQUFTO2dCQUVZLGNBQWM7c0JBQTdDLFdBQVc7dUJBQUMsaUJBQWlCO2dCQUVOLE9BQU87c0JBQTlCLFlBQVk7dUJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIE9uSW5pdCxcbiAgICBIb3N0QmluZGluZyxcbiAgICBFbGVtZW50UmVmLFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgSW5qZWN0LFxuICAgIFZpZXdDaGlsZCxcbiAgICBPdXRwdXQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEFmdGVyVmlld0luaXQsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBOZ1pvbmVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIG1lcmdlLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzdGFydFdpdGgsIHN3aXRjaE1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgR2FudHRCYXJEcmFnIH0gZnJvbSAnLi9iYXItZHJhZyc7XG5pbXBvcnQgeyBoZXhUb1JnYiB9IGZyb20gJy4uLy4uL3V0aWxzL2hlbHBlcnMnO1xuaW1wb3J0IHsgR2FudHREcmFnQ29udGFpbmVyIH0gZnJvbSAnLi4vLi4vZ2FudHQtZHJhZy1jb250YWluZXInO1xuaW1wb3J0IHsgYmFyQmFja2dyb3VuZCB9IGZyb20gJy4uLy4uL2dhbnR0LnN0eWxlcyc7XG5pbXBvcnQgeyBHYW50dEJhckNsaWNrRXZlbnQgfSBmcm9tICcuLi8uLi9jbGFzcyc7XG5pbXBvcnQgeyBHQU5UVF9VUFBFUl9UT0tFTiwgR2FudHRVcHBlciB9IGZyb20gJy4uLy4uL2dhbnR0LXVwcGVyJztcbmltcG9ydCB7IEdhbnR0SXRlbVVwcGVyIH0gZnJvbSAnLi4vLi4vZ2FudHQtaXRlbS11cHBlcic7XG5cbmZ1bmN0aW9uIGxpbmVhckdyYWRpZW50KHNpZGVPckNvcm5lcjogc3RyaW5nLCBjb2xvcjogc3RyaW5nLCBzdG9wOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYGxpbmVhci1ncmFkaWVudCgke3NpZGVPckNvcm5lcn0sJHtjb2xvcn0gMCUsJHtzdG9wfSA0MCUpYDtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduZ3gtZ2FudHQtYmFyLGdhbnR0LWJhcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Jhci5jb21wb25lbnQuaHRtbCcsXG4gICAgcHJvdmlkZXJzOiBbR2FudHRCYXJEcmFnXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3hHYW50dEJhckNvbXBvbmVudCBleHRlbmRzIEdhbnR0SXRlbVVwcGVyIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gICAgQE91dHB1dCgpIGJhckNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxHYW50dEJhckNsaWNrRXZlbnQ+KCk7XG5cbiAgICBAVmlld0NoaWxkKCdjb250ZW50JykgY29udGVudEVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5nYW50dC1iYXInKSBnYW50dEl0ZW1DbGFzcyA9IHRydWU7XG5cbiAgICBAVmlld0NoaWxkcmVuKCdoYW5kbGUnKSBoYW5kbGVzOiBRdWVyeUxpc3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZHJhZ0NvbnRhaW5lcjogR2FudHREcmFnQ29udGFpbmVyLFxuICAgICAgICBwcml2YXRlIGRyYWc6IEdhbnR0QmFyRHJhZyxcbiAgICAgICAgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoR0FOVFRfVVBQRVJfVE9LRU4pIHB1YmxpYyBvdmVycmlkZSBnYW50dFVwcGVyOiBHYW50dFVwcGVyLFxuICAgICAgICBwcml2YXRlIG5nWm9uZTogTmdab25lXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGVsZW1lbnRSZWYsIGdhbnR0VXBwZXIpO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIG5nT25Jbml0KCkge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLmRyYWdDb250YWluZXIuZHJhZ0VuZGVkLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2V0Q29udGVudEJhY2tncm91bmQoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgICAgICB0aGlzLmRyYWcuY3JlYXRlRHJhZ3ModGhpcy5lbGVtZW50UmVmLCB0aGlzLml0ZW0sIHRoaXMuZ2FudHRVcHBlcik7XG4gICAgICAgIHRoaXMuc2V0Q29udGVudEJhY2tncm91bmQoKTtcblxuICAgICAgICB0aGlzLmhhbmRsZXMuY2hhbmdlc1xuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgc3RhcnRXaXRoKHRoaXMuaGFuZGxlcyksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKFxuICAgICAgICAgICAgICAgICAgICAoKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gTm90ZTogd2UgbmVlZCB0byBleHBsaWNpdGx5IHN1YnNjcmliZSBvdXRzaWRlIG9mIHRoZSBBbmd1bGFyIHpvbmUgc2luY2UgYGFkZEV2ZW50TGlzdGVuZXJgXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBpcyBjYWxsZWQgd2hlbiB0aGUgYGZyb21FdmVudGAgaXMgc3Vic2NyaWJlZC5cbiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBPYnNlcnZhYmxlPEV2ZW50Pigoc3Vic2NyaWJlcikgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXJnZSguLi50aGlzLmhhbmRsZXMudG9BcnJheSgpLm1hcCgoaGFuZGxlKSA9PiBmcm9tRXZlbnQoaGFuZGxlLm5hdGl2ZUVsZW1lbnQsICdtb3VzZWRvd24nKSkpLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1YnNjcmliZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlJClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkJhckNsaWNrKGV2ZW50OiBFdmVudCkge1xuICAgICAgICB0aGlzLmJhckNsaWNrLmVtaXQoeyBldmVudCwgaXRlbTogdGhpcy5pdGVtLm9yaWdpbiB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldENvbnRlbnRCYWNrZ3JvdW5kKCkge1xuICAgICAgICBjb25zdCBjb250ZW50RWxlbWVudCA9IHRoaXMuY29udGVudEVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgY29uc3QgY29sb3IgPSB0aGlzLml0ZW0uY29sb3IgfHwgYmFyQmFja2dyb3VuZDtcbiAgICAgICAgY29uc3Qgc3R5bGU6IFBhcnRpYWw8Q1NTU3R5bGVEZWNsYXJhdGlvbj4gPSB0aGlzLml0ZW0uYmFyU3R5bGUgfHwge307XG4gICAgICAgIGlmICh0aGlzLml0ZW0ub3JpZ2luLnN0YXJ0ICYmIHRoaXMuaXRlbS5vcmlnaW4uZW5kKSB7XG4gICAgICAgICAgICBzdHlsZS5iYWNrZ3JvdW5kID0gY29sb3I7XG4gICAgICAgICAgICBzdHlsZS5ib3JkZXJSYWRpdXMgPSAnJztcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pdGVtLm9yaWdpbi5zdGFydCAmJiAhdGhpcy5pdGVtLm9yaWdpbi5lbmQpIHtcbiAgICAgICAgICAgIHN0eWxlLmJhY2tncm91bmQgPSBsaW5lYXJHcmFkaWVudCgndG8gbGVmdCcsIGhleFRvUmdiKGNvbG9yLCAwLjU1KSwgaGV4VG9SZ2IoY29sb3IsIDEpKTtcbiAgICAgICAgICAgIHN0eWxlLmJvcmRlclJhZGl1cyA9ICc0cHggMTIuNXB4IDEyLjVweCA0cHgnO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy5pdGVtLm9yaWdpbi5zdGFydCAmJiB0aGlzLml0ZW0ub3JpZ2luLmVuZCkge1xuICAgICAgICAgICAgc3R5bGUuYmFja2dyb3VuZCA9IGxpbmVhckdyYWRpZW50KCd0byByaWdodCcsIGhleFRvUmdiKGNvbG9yLCAwLjU1KSwgaGV4VG9SZ2IoY29sb3IsIDEpKTtcbiAgICAgICAgICAgIHN0eWxlLmJvcmRlclJhZGl1cyA9ICcxMi41cHggNHB4IDRweCAxMi41cHgnO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLml0ZW0ucHJvZ3Jlc3MgPj0gMCkge1xuICAgICAgICAgICAgY29uc3QgY29udGVudFByb2dyZXNzRWxlbWVudCA9IGNvbnRlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5nYW50dC1iYXItY29udGVudC1wcm9ncmVzcycpIGFzIEhUTUxEaXZFbGVtZW50O1xuICAgICAgICAgICAgc3R5bGUuYmFja2dyb3VuZCA9IGhleFRvUmdiKGNvbG9yLCAwLjMpO1xuICAgICAgICAgICAgc3R5bGUuYm9yZGVyUmFkaXVzID0gJyc7XG4gICAgICAgICAgICBjb250ZW50UHJvZ3Jlc3NFbGVtZW50LnN0eWxlLmJhY2tncm91bmQgPSBjb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIHN0eWxlKSB7XG4gICAgICAgICAgICBpZiAoc3R5bGUuaGFzT3duUHJvcGVydHkoa2V5KSkge1xuICAgICAgICAgICAgICAgIGNvbnRlbnRFbGVtZW50LnN0eWxlW2tleV0gPSBzdHlsZVtrZXldO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3RvcFByb3BhZ2F0aW9uKGV2ZW50OiBFdmVudCkge1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZ2FudHQtYmFyLWxheWVyXCI+XG4gIDxkaXYgY2xhc3M9XCJkcmFnLWhhbmRsZXNcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS5kcmFnZ2FibGUgJiYgZ2FudHRVcHBlci5kcmFnZ2FibGVcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiaGFuZGxlXCIgI2hhbmRsZT48L3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cImhhbmRsZVwiICNoYW5kbGU+PC9zcGFuPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cIml0ZW0ubGlua2FibGUgJiYgZ2FudHRVcHBlci5saW5rYWJsZVwiIGNsYXNzPVwibGluay1oYW5kbGVzXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJoYW5kbGVcIj48c3BhbiBjbGFzcz1cInBvaW50XCI+PC9zcGFuPjwvc3Bhbj5cbiAgICA8c3BhbiBjbGFzcz1cImhhbmRsZVwiPiA8c3BhbiBjbGFzcz1cInBvaW50XCI+PC9zcGFuPjwvc3Bhbj5cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJnYW50dC1iYXItYm9yZGVyXCI+PC9kaXY+XG48ZGl2ICNjb250ZW50IGNsYXNzPVwiZ2FudHQtYmFyLWNvbnRlbnRcIiAoY2xpY2spPVwib25CYXJDbGljaygkZXZlbnQpXCI+XG4gIDxkaXYgY2xhc3M9XCJnYW50dC1iYXItY29udGVudC1wcm9ncmVzc1wiICpuZ0lmPVwiaXRlbS5wcm9ncmVzcyA+PSAwXCIgW3N0eWxlLndpZHRoLiVdPVwiaXRlbS5wcm9ncmVzcyAqIDEwMFwiPjwvZGl2PlxuICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwidGVtcGxhdGVcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtOiBpdGVtLm9yaWdpbiwgcmVmczogaXRlbS5yZWZzIH1cIj48L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,40 @@
1
+ import { Component, HostBinding, Inject, Input } from '@angular/core';
2
+ import { Subject, takeUntil } from 'rxjs';
3
+ import { GANTT_UPPER_TOKEN } from '../../gantt-upper';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "../../gantt-upper";
7
+ export class NgxGanttBaselineComponent {
8
+ constructor(elementRef, ganttUpper) {
9
+ this.elementRef = elementRef;
10
+ this.ganttUpper = ganttUpper;
11
+ this.unsubscribe$ = new Subject();
12
+ this.ganttBaselineClass = true;
13
+ }
14
+ ngOnInit() {
15
+ this.baselineItem.refs$.pipe(takeUntil(this.unsubscribe$)).subscribe(() => {
16
+ this.setPositions();
17
+ });
18
+ }
19
+ setPositions() {
20
+ const itemElement = this.elementRef.nativeElement;
21
+ itemElement.style.left = this.baselineItem.refs.x + 'px';
22
+ itemElement.style.bottom = '2px';
23
+ itemElement.style.width = this.baselineItem.refs.width + 'px';
24
+ }
25
+ }
26
+ NgxGanttBaselineComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: NgxGanttBaselineComponent, deps: [{ token: i0.ElementRef }, { token: GANTT_UPPER_TOKEN }], target: i0.ɵɵFactoryTarget.Component });
27
+ NgxGanttBaselineComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: NgxGanttBaselineComponent, selector: "ngx-gantt-baseline,gantt-baseline", inputs: { baselineItem: "baselineItem" }, host: { properties: { "class.gantt-baseline": "this.ganttBaselineClass" } }, ngImport: i0, template: "<div #content *ngIf=\"baselineItem\" class=\"baseline-content\"></div>\n", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: NgxGanttBaselineComponent, decorators: [{
29
+ type: Component,
30
+ args: [{ selector: 'ngx-gantt-baseline,gantt-baseline', template: "<div #content *ngIf=\"baselineItem\" class=\"baseline-content\"></div>\n" }]
31
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i2.GanttUpper, decorators: [{
32
+ type: Inject,
33
+ args: [GANTT_UPPER_TOKEN]
34
+ }] }]; }, propDecorators: { baselineItem: [{
35
+ type: Input
36
+ }], ganttBaselineClass: [{
37
+ type: HostBinding,
38
+ args: ['class.gantt-baseline']
39
+ }] } });
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZWxpbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2FudHQvc3JjL2NvbXBvbmVudHMvYmFzZWxpbmUvYmFzZWxpbmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2FudHQvc3JjL2NvbXBvbmVudHMvYmFzZWxpbmUvYmFzZWxpbmUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxXQUFXLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUMsT0FBTyxFQUFjLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7QUFNbEUsTUFBTSxPQUFPLHlCQUF5QjtJQU9sQyxZQUFvQixVQUFtQyxFQUFvQyxVQUFzQjtRQUE3RixlQUFVLEdBQVYsVUFBVSxDQUF5QjtRQUFvQyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBSjFHLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUVMLHVCQUFrQixHQUFHLElBQUksQ0FBQztJQUVxRCxDQUFDO0lBRXJILFFBQVE7UUFDSixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDdEUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLFlBQVk7UUFDaEIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7UUFDbEQsV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQztRQUN6RCxXQUFXLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDakMsV0FBVyxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztJQUNsRSxDQUFDOztzSEFwQlEseUJBQXlCLDRDQU8rQixpQkFBaUI7MEdBUHpFLHlCQUF5QixnTUNUdEMsMEVBQ0E7MkZEUWEseUJBQXlCO2tCQUpyQyxTQUFTOytCQUNJLG1DQUFtQzs7MEJBVWEsTUFBTTsyQkFBQyxpQkFBaUI7NENBTnpFLFlBQVk7c0JBQXBCLEtBQUs7Z0JBSStCLGtCQUFrQjtzQkFBdEQsV0FBVzt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBJbmplY3QsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBHYW50dEJhc2VsaW5lSXRlbUludGVybmFsIH0gZnJvbSAnLi4vLi4vY2xhc3MvYmFzZWxpbmUnO1xuaW1wb3J0IHsgR2FudHRVcHBlciwgR0FOVFRfVVBQRVJfVE9LRU4gfSBmcm9tICcuLi8uLi9nYW50dC11cHBlcic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmd4LWdhbnR0LWJhc2VsaW5lLGdhbnR0LWJhc2VsaW5lJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYmFzZWxpbmUuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIE5neEdhbnR0QmFzZWxpbmVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIGJhc2VsaW5lSXRlbTogR2FudHRCYXNlbGluZUl0ZW1JbnRlcm5hbDtcblxuICAgIHB1YmxpYyB1bnN1YnNjcmliZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5nYW50dC1iYXNlbGluZScpIGdhbnR0QmFzZWxpbmVDbGFzcyA9IHRydWU7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LCBASW5qZWN0KEdBTlRUX1VQUEVSX1RPS0VOKSBwdWJsaWMgZ2FudHRVcHBlcjogR2FudHRVcHBlcikge31cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmJhc2VsaW5lSXRlbS5yZWZzJC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlJCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNldFBvc2l0aW9ucygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFBvc2l0aW9ucygpIHtcbiAgICAgICAgY29uc3QgaXRlbUVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICAgICAgaXRlbUVsZW1lbnQuc3R5bGUubGVmdCA9IHRoaXMuYmFzZWxpbmVJdGVtLnJlZnMueCArICdweCc7XG4gICAgICAgIGl0ZW1FbGVtZW50LnN0eWxlLmJvdHRvbSA9ICcycHgnO1xuICAgICAgICBpdGVtRWxlbWVudC5zdHlsZS53aWR0aCA9IHRoaXMuYmFzZWxpbmVJdGVtLnJlZnMud2lkdGggKyAncHgnO1xuICAgIH1cbn1cbiIsIjxkaXYgI2NvbnRlbnQgKm5nSWY9XCJiYXNlbGluZUl0ZW1cIiBjbGFzcz1cImJhc2VsaW5lLWNvbnRlbnRcIj48L2Rpdj5cbiJdfQ==
@@ -73,9 +73,9 @@ export class GanttCalendarComponent {
73
73
  this.unsubscribe$.complete();
74
74
  }
75
75
  }
76
- GanttCalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: GanttCalendarComponent, deps: [{ token: GANTT_UPPER_TOKEN }, { token: i0.NgZone }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
77
- GanttCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: GanttCalendarComponent, selector: "gantt-calendar-overlay", host: { properties: { "class.gantt-calendar-overlay": "this.className" } }, ngImport: i0, template: "<div class=\"gantt-calendar-today-overlay\" [style.width.px]=\"view.width\">\n <span class=\"today-rect\" [hidden]=\"ganttUpper.viewType !== viewTypes.day\"> </span>\n <span class=\"today-line\" *ngIf=\"ganttUpper.showTodayLine\"> </span>\n</div>\n\n<svg class=\"gantt-calendar-overlay-main\" [attr.width]=\"view.width\" [attr.height]=\"headerHeight\">\n <g>\n <text class=\"primary-text\" *ngFor=\"let point of view.primaryDatePoints; trackBy: trackBy\" [attr.x]=\"point.x\" [attr.y]=\"point.y\">\n {{ point.text }}\n </text>\n <ng-container *ngFor=\"let point of view.secondaryDatePoints; trackBy: trackBy\">\n <text class=\"secondary-text\" [class.secondary-text-weekend]=\"point.additions?.isWeekend\" [attr.x]=\"point.x\" [attr.y]=\"point.y\">\n {{ point.text }}\n </text>\n </ng-container>\n\n <g>\n <line\n *ngFor=\"let point of view.primaryDatePoints; let i = index; trackBy: trackBy\"\n [attr.x1]=\"(i + 1) * view.primaryWidth\"\n [attr.x2]=\"(i + 1) * view.primaryWidth\"\n [attr.y1]=\"0\"\n [attr.y2]=\"mainHeight\"\n class=\"primary-line\"\n ></line>\n </g>\n\n <g>\n <line [attr.x1]=\"0\" [attr.x2]=\"view.width\" [attr.y1]=\"headerHeight\" [attr.y2]=\"headerHeight\" class=\"header-line\"></line>\n </g>\n </g>\n <g>\n <g *ngIf=\"view.showTimeline\">\n <line\n *ngFor=\"let point of view.secondaryDatePoints; let i = index; trackBy: trackBy\"\n [attr.x1]=\"(i + 1) * view.cellWidth\"\n [attr.x2]=\"(i + 1) * view.cellWidth\"\n [attr.y1]=\"headerHeight\"\n [attr.y2]=\"mainHeight\"\n class=\"secondary-line\"\n ></line>\n <line\n *ngFor=\"let point of view.primaryDatePoints; let i = index; trackBy: trackBy\"\n [attr.x1]=\"(i + 1) * view.primaryWidth\"\n [attr.x2]=\"(i + 1) * view.primaryWidth\"\n [attr.y1]=\"0\"\n [attr.y2]=\"mainHeight\"\n class=\"primary-line\"\n ></line>\n </g>\n </g>\n</svg>\n", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
78
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: GanttCalendarComponent, decorators: [{
76
+ GanttCalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GanttCalendarComponent, deps: [{ token: GANTT_UPPER_TOKEN }, { token: i0.NgZone }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
77
+ GanttCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: GanttCalendarComponent, selector: "gantt-calendar-overlay", host: { properties: { "class.gantt-calendar-overlay": "this.className" } }, ngImport: i0, template: "<div class=\"gantt-calendar-today-overlay\" [style.width.px]=\"view.width\">\n <span class=\"today-rect\" [hidden]=\"ganttUpper.viewType !== viewTypes.day\"> </span>\n <span class=\"today-line\" *ngIf=\"ganttUpper.showTodayLine\"> </span>\n</div>\n\n<svg class=\"gantt-calendar-overlay-main\" [attr.width]=\"view.width\" [attr.height]=\"headerHeight\">\n <g>\n <text class=\"primary-text\" *ngFor=\"let point of view.primaryDatePoints; trackBy: trackBy\" [attr.x]=\"point.x\" [attr.y]=\"point.y\">\n {{ point.text }}\n </text>\n <ng-container *ngFor=\"let point of view.secondaryDatePoints; trackBy: trackBy\">\n <text class=\"secondary-text\" [class.secondary-text-weekend]=\"point.additions?.isWeekend\" [attr.x]=\"point.x\" [attr.y]=\"point.y\">\n {{ point.text }}\n </text>\n </ng-container>\n\n <g>\n <line\n *ngFor=\"let point of view.primaryDatePoints; let i = index; trackBy: trackBy\"\n [attr.x1]=\"(i + 1) * view.primaryWidth\"\n [attr.x2]=\"(i + 1) * view.primaryWidth\"\n [attr.y1]=\"0\"\n [attr.y2]=\"mainHeight\"\n class=\"primary-line\"\n ></line>\n </g>\n\n <g>\n <line [attr.x1]=\"0\" [attr.x2]=\"view.width\" [attr.y1]=\"headerHeight\" [attr.y2]=\"headerHeight\" class=\"header-line\"></line>\n </g>\n </g>\n <g>\n <g *ngIf=\"view.showTimeline\">\n <line\n *ngFor=\"let point of view.secondaryDatePoints; let i = index; trackBy: trackBy\"\n [attr.x1]=\"(i + 1) * view.cellWidth\"\n [attr.x2]=\"(i + 1) * view.cellWidth\"\n [attr.y1]=\"headerHeight\"\n [attr.y2]=\"mainHeight\"\n class=\"secondary-line\"\n ></line>\n <line\n *ngFor=\"let point of view.primaryDatePoints; let i = index; trackBy: trackBy\"\n [attr.x1]=\"(i + 1) * view.primaryWidth\"\n [attr.x2]=\"(i + 1) * view.primaryWidth\"\n [attr.y1]=\"0\"\n [attr.y2]=\"mainHeight\"\n class=\"primary-line\"\n ></line>\n </g>\n </g>\n</svg>\n", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GanttCalendarComponent, decorators: [{
79
79
  type: Component,
80
80
  args: [{ selector: 'gantt-calendar-overlay', template: "<div class=\"gantt-calendar-today-overlay\" [style.width.px]=\"view.width\">\n <span class=\"today-rect\" [hidden]=\"ganttUpper.viewType !== viewTypes.day\"> </span>\n <span class=\"today-line\" *ngIf=\"ganttUpper.showTodayLine\"> </span>\n</div>\n\n<svg class=\"gantt-calendar-overlay-main\" [attr.width]=\"view.width\" [attr.height]=\"headerHeight\">\n <g>\n <text class=\"primary-text\" *ngFor=\"let point of view.primaryDatePoints; trackBy: trackBy\" [attr.x]=\"point.x\" [attr.y]=\"point.y\">\n {{ point.text }}\n </text>\n <ng-container *ngFor=\"let point of view.secondaryDatePoints; trackBy: trackBy\">\n <text class=\"secondary-text\" [class.secondary-text-weekend]=\"point.additions?.isWeekend\" [attr.x]=\"point.x\" [attr.y]=\"point.y\">\n {{ point.text }}\n </text>\n </ng-container>\n\n <g>\n <line\n *ngFor=\"let point of view.primaryDatePoints; let i = index; trackBy: trackBy\"\n [attr.x1]=\"(i + 1) * view.primaryWidth\"\n [attr.x2]=\"(i + 1) * view.primaryWidth\"\n [attr.y1]=\"0\"\n [attr.y2]=\"mainHeight\"\n class=\"primary-line\"\n ></line>\n </g>\n\n <g>\n <line [attr.x1]=\"0\" [attr.x2]=\"view.width\" [attr.y1]=\"headerHeight\" [attr.y2]=\"headerHeight\" class=\"header-line\"></line>\n </g>\n </g>\n <g>\n <g *ngIf=\"view.showTimeline\">\n <line\n *ngFor=\"let point of view.secondaryDatePoints; let i = index; trackBy: trackBy\"\n [attr.x1]=\"(i + 1) * view.cellWidth\"\n [attr.x2]=\"(i + 1) * view.cellWidth\"\n [attr.y1]=\"headerHeight\"\n [attr.y2]=\"mainHeight\"\n class=\"secondary-line\"\n ></line>\n <line\n *ngFor=\"let point of view.primaryDatePoints; let i = index; trackBy: trackBy\"\n [attr.x1]=\"(i + 1) * view.primaryWidth\"\n [attr.x2]=\"(i + 1) * view.primaryWidth\"\n [attr.y1]=\"0\"\n [attr.y2]=\"mainHeight\"\n class=\"primary-line\"\n ></line>\n </g>\n </g>\n</svg>\n" }]
81
81
  }], ctorParameters: function () { return [{ type: i2.GanttUpper, decorators: [{
@@ -2,9 +2,9 @@ import { Component } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export class GanttDragBackdropComponent {
4
4
  }
5
- GanttDragBackdropComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: GanttDragBackdropComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
- GanttDragBackdropComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: GanttDragBackdropComponent, selector: "gantt-drag-backdrop", host: { classAttribute: "gantt-drag-backdrop" }, ngImport: i0, template: "<div class=\"gantt-drag-mask\">\n <div class=\"date-range\">\n <span class=\"start\"></span>\n <span class=\"end\"></span>\n </div>\n</div>\n" });
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: GanttDragBackdropComponent, decorators: [{
5
+ GanttDragBackdropComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GanttDragBackdropComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ GanttDragBackdropComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: GanttDragBackdropComponent, selector: "gantt-drag-backdrop", host: { classAttribute: "gantt-drag-backdrop" }, ngImport: i0, template: "<div class=\"gantt-drag-mask\">\n <div class=\"date-range\">\n <span class=\"start\"></span>\n <span class=\"end\"></span>\n </div>\n</div>\n" });
7
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GanttDragBackdropComponent, decorators: [{
8
8
  type: Component,
9
9
  args: [{ selector: 'gantt-drag-backdrop', host: {
10
10
  class: 'gantt-drag-backdrop'
@@ -19,9 +19,9 @@ export class GanttIconComponent {
19
19
  }
20
20
  }
21
21
  }
22
- GanttIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: GanttIconComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
23
- GanttIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: GanttIconComponent, selector: "gantt-icon", inputs: { iconName: "iconName" }, host: { properties: { "class.gantt-icon": "this.isIcon" } }, ngImport: i0, template: '', isInline: true });
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: GanttIconComponent, decorators: [{
22
+ GanttIconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GanttIconComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
23
+ GanttIconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: GanttIconComponent, selector: "gantt-icon", inputs: { iconName: "iconName" }, host: { properties: { "class.gantt-icon": "this.isIcon" } }, ngImport: i0, template: '', isInline: true });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GanttIconComponent, decorators: [{
25
25
  type: Component,
26
26
  args: [{
27
27
  selector: 'gantt-icon',
@@ -157,9 +157,9 @@ export class GanttLinksComponent {
157
157
  this.unsubscribe$.complete();
158
158
  }
159
159
  }
160
- GanttLinksComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: GanttLinksComponent, deps: [{ token: GANTT_UPPER_TOKEN }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.GanttDragContainer }], target: i0.ɵɵFactoryTarget.Component });
161
- GanttLinksComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: GanttLinksComponent, selector: "gantt-links-overlay", inputs: { groups: "groups", items: "items" }, outputs: { lineClick: "lineClick" }, host: { properties: { "class.gantt-links-overlay": "this.ganttLinksOverlay" } }, usesOnChanges: true, ngImport: i0, template: "<svg [attr.width]=\"ganttUpper.view.width\" class=\"gantt-links-overlay-main\">\n <ng-container *ngFor=\"let link of links; let i = index; trackBy: trackBy\">\n <path\n [attr.d]=\"link.path\"\n fill=\"transparent\"\n stroke-width=\"2\"\n [attr.stroke]=\"link.color\"\n pointer-events=\"none\"\n [attr.style]=\"link.type === ganttLinkTypes.sf ? 'marker-start: url(#triangle' + i + ')' : 'marker-end: url(#triangle' + i + ')'\"\n ></path>\n\n <g>\n <path\n class=\"link-line\"\n (click)=\"onLineClick($event, link)\"\n [attr.d]=\"link.path\"\n (mouseenter)=\"mouseEnterPath(link, i)\"\n (mouseleave)=\"mouseLeavePath(link)\"\n stroke=\"transparent\"\n stroke-width=\"9\"\n fill=\"none\"\n cursor=\"pointer\"\n ></path>\n </g>\n <defs *ngIf=\"showArrow\">\n <marker\n *ngIf=\"link.type === ganttLinkTypes.sf; else markerEnd\"\n [id]=\"'triangle' + i\"\n markerUnits=\"strokeWidth\"\n markerWidth=\"5\"\n markerHeight=\"4\"\n refX=\"5\"\n refY=\"2\"\n orient=\"180\"\n >\n <path [attr.fill]=\"link.color\" [attr.stroke]=\"link.color\" d=\"M 0 0 L 5 2 L 0 4 z\" />\n </marker>\n\n <ng-template #markerEnd>\n <marker [id]=\"'triangle' + i\" markerUnits=\"strokeWidth\" markerWidth=\"5\" markerHeight=\"4\" refX=\"5\" refY=\"2\" orient=\"auto\">\n <path [attr.fill]=\"link.color\" [attr.stroke]=\"link.color\" d=\"M 0 0 L 5 2 L 0 4 z\" />\n </marker>\n </ng-template>\n </defs>\n </ng-container>\n <line class=\"link-dragging-line\"></line>\n</svg>\n", directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
162
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: GanttLinksComponent, decorators: [{
160
+ GanttLinksComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GanttLinksComponent, deps: [{ token: GANTT_UPPER_TOKEN }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.GanttDragContainer }], target: i0.ɵɵFactoryTarget.Component });
161
+ GanttLinksComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: GanttLinksComponent, selector: "gantt-links-overlay", inputs: { groups: "groups", items: "items" }, outputs: { lineClick: "lineClick" }, host: { properties: { "class.gantt-links-overlay": "this.ganttLinksOverlay" } }, usesOnChanges: true, ngImport: i0, template: "<svg [attr.width]=\"ganttUpper.view.width\" class=\"gantt-links-overlay-main\">\n <ng-container *ngFor=\"let link of links; let i = index; trackBy: trackBy\">\n <path\n [attr.d]=\"link.path\"\n fill=\"transparent\"\n stroke-width=\"2\"\n [attr.stroke]=\"link.color\"\n pointer-events=\"none\"\n [attr.style]=\"link.type === ganttLinkTypes.sf ? 'marker-start: url(#triangle' + i + ')' : 'marker-end: url(#triangle' + i + ')'\"\n ></path>\n\n <g>\n <path\n class=\"link-line\"\n (click)=\"onLineClick($event, link)\"\n [attr.d]=\"link.path\"\n (mouseenter)=\"mouseEnterPath(link, i)\"\n (mouseleave)=\"mouseLeavePath(link)\"\n stroke=\"transparent\"\n stroke-width=\"9\"\n fill=\"none\"\n cursor=\"pointer\"\n ></path>\n </g>\n <defs *ngIf=\"showArrow\">\n <marker\n *ngIf=\"link.type === ganttLinkTypes.sf; else markerEnd\"\n [id]=\"'triangle' + i\"\n markerUnits=\"strokeWidth\"\n markerWidth=\"5\"\n markerHeight=\"4\"\n refX=\"5\"\n refY=\"2\"\n orient=\"180\"\n >\n <path [attr.fill]=\"link.color\" [attr.stroke]=\"link.color\" d=\"M 0 0 L 5 2 L 0 4 z\" />\n </marker>\n\n <ng-template #markerEnd>\n <marker [id]=\"'triangle' + i\" markerUnits=\"strokeWidth\" markerWidth=\"5\" markerHeight=\"4\" refX=\"5\" refY=\"2\" orient=\"auto\">\n <path [attr.fill]=\"link.color\" [attr.stroke]=\"link.color\" d=\"M 0 0 L 5 2 L 0 4 z\" />\n </marker>\n </ng-template>\n </defs>\n </ng-container>\n <line class=\"link-dragging-line\"></line>\n</svg>\n", directives: [{ type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
162
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GanttLinksComponent, decorators: [{
163
163
  type: Component,
164
164
  args: [{ selector: 'gantt-links-overlay', template: "<svg [attr.width]=\"ganttUpper.view.width\" class=\"gantt-links-overlay-main\">\n <ng-container *ngFor=\"let link of links; let i = index; trackBy: trackBy\">\n <path\n [attr.d]=\"link.path\"\n fill=\"transparent\"\n stroke-width=\"2\"\n [attr.stroke]=\"link.color\"\n pointer-events=\"none\"\n [attr.style]=\"link.type === ganttLinkTypes.sf ? 'marker-start: url(#triangle' + i + ')' : 'marker-end: url(#triangle' + i + ')'\"\n ></path>\n\n <g>\n <path\n class=\"link-line\"\n (click)=\"onLineClick($event, link)\"\n [attr.d]=\"link.path\"\n (mouseenter)=\"mouseEnterPath(link, i)\"\n (mouseleave)=\"mouseLeavePath(link)\"\n stroke=\"transparent\"\n stroke-width=\"9\"\n fill=\"none\"\n cursor=\"pointer\"\n ></path>\n </g>\n <defs *ngIf=\"showArrow\">\n <marker\n *ngIf=\"link.type === ganttLinkTypes.sf; else markerEnd\"\n [id]=\"'triangle' + i\"\n markerUnits=\"strokeWidth\"\n markerWidth=\"5\"\n markerHeight=\"4\"\n refX=\"5\"\n refY=\"2\"\n orient=\"180\"\n >\n <path [attr.fill]=\"link.color\" [attr.stroke]=\"link.color\" d=\"M 0 0 L 5 2 L 0 4 z\" />\n </marker>\n\n <ng-template #markerEnd>\n <marker [id]=\"'triangle' + i\" markerUnits=\"strokeWidth\" markerWidth=\"5\" markerHeight=\"4\" refX=\"5\" refY=\"2\" orient=\"auto\">\n <path [attr.fill]=\"link.color\" [attr.stroke]=\"link.color\" d=\"M 0 0 L 5 2 L 0 4 z\" />\n </marker>\n </ng-template>\n </defs>\n </ng-container>\n <line class=\"link-dragging-line\"></line>\n</svg>\n" }]
165
165
  }], ctorParameters: function () { return [{ type: i3.GanttUpper, decorators: [{
@@ -4,9 +4,10 @@ import * as i0 from "@angular/core";
4
4
  import * as i1 from "../links/links.component";
5
5
  import * as i2 from "../range/range.component";
6
6
  import * as i3 from "../bar/bar.component";
7
- import * as i4 from "@angular/common";
8
- import * as i5 from "../../gantt.pipe";
9
- import * as i6 from "../../gantt-upper";
7
+ import * as i4 from "../baseline/baseline.component";
8
+ import * as i5 from "@angular/common";
9
+ import * as i6 from "../../gantt.pipe";
10
+ import * as i7 from "../../gantt-upper";
10
11
  export class GanttMainComponent {
11
12
  constructor(ganttUpper) {
12
13
  this.ganttUpper = ganttUpper;
@@ -18,12 +19,12 @@ export class GanttMainComponent {
18
19
  return item.id || index;
19
20
  }
20
21
  }
21
- GanttMainComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: GanttMainComponent, deps: [{ token: GANTT_UPPER_TOKEN }], target: i0.ɵɵFactoryTarget.Component });
22
- GanttMainComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: GanttMainComponent, selector: "gantt-main", inputs: { groups: "groups", items: "items", groupHeaderTemplate: "groupHeaderTemplate", itemTemplate: "itemTemplate", barTemplate: "barTemplate", rangeTemplate: "rangeTemplate" }, outputs: { barClick: "barClick", lineClick: "lineClick" }, host: { properties: { "class.gantt-main-container": "this.ganttMainClass" } }, ngImport: i0, template: "<gantt-links-overlay [groups]=\"groups\" [items]=\"items\" (lineClick)=\"lineClick.emit($event)\"></gantt-links-overlay>\n<!-- groups -->\n<div class=\"gantt-main-groups\" *ngIf=\"groups && groups.length > 0; else itemsTemplate\" [style.width.px]=\"ganttUpper.view.width\">\n <ng-container *ngFor=\"let group of groups; trackBy: trackBy\">\n <div class=\"gantt-group\" [ngClass]=\"group.class\">\n <ng-template [ngTemplateOutlet]=\"groupHeaderTemplate\" [ngTemplateOutletContext]=\"{ group: group }\"></ng-template>\n </div>\n <div *ngIf=\"group.expanded\" class=\"gantt-items\">\n <ng-template [ngTemplateOutlet]=\"ganttItems\" [ngTemplateOutletContext]=\"{ items: group.items }\"></ng-template>\n </div>\n </ng-container>\n</div>\n<!-- items -->\n<ng-template #itemsTemplate>\n <div class=\"gantt-main-items\" [style.width.px]=\"ganttUpper.view.width\">\n <ng-template [ngTemplateOutlet]=\"ganttItems\" [ngTemplateOutletContext]=\"{ items: items }\"></ng-template>\n </div>\n</ng-template>\n\n<ng-template #ganttItems let-items=\"items\">\n <ng-container *ngFor=\"let item of items;\">\n <div\n class=\"gantt-item\"\n [style.height.px]=\"ganttUpper.styles.lineHeight\"\n [class.gantt-main-item-active]=\"ganttUpper.isSelected(item.id)\"\n >\n <ng-container *ngIf=\"item.type | isGanttCustomItem\">\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ item: item.origin, refs: item.refs }\"></ng-template>\n </ng-container>\n <gantt-range *ngIf=\"item.type | isGanttRangeItem\" [template]=\"rangeTemplate\" [item]=\"item\"></gantt-range>\n <gantt-bar *ngIf=\"item.type | isGanttBarItem\" [item]=\"item\" [template]=\"barTemplate\" (barClick)=\"barClick.emit($event)\"></gantt-bar>\n </div>\n <ng-template\n *ngIf=\"item.children && item.expanded\"\n [ngTemplateOutlet]=\"ganttItems\"\n [ngTemplateOutletContext]=\"{ items: item.children }\"\n ></ng-template>\n </ng-container>\n</ng-template>\n", components: [{ type: i1.GanttLinksComponent, selector: "gantt-links-overlay", inputs: ["groups", "items"], outputs: ["lineClick"] }, { type: i2.NgxGanttRangeComponent, selector: "ngx-gantt-range,gantt-range" }, { type: i3.NgxGanttBarComponent, selector: "ngx-gantt-bar,gantt-bar", outputs: ["barClick"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "isGanttCustomItem": i5.IsGanttCustomItemPipe, "isGanttRangeItem": i5.IsGanttRangeItemPipe, "isGanttBarItem": i5.IsGanttBarItemPipe } });
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: GanttMainComponent, decorators: [{
22
+ GanttMainComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GanttMainComponent, deps: [{ token: GANTT_UPPER_TOKEN }], target: i0.ɵɵFactoryTarget.Component });
23
+ GanttMainComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: GanttMainComponent, selector: "gantt-main", inputs: { groups: "groups", items: "items", groupHeaderTemplate: "groupHeaderTemplate", itemTemplate: "itemTemplate", barTemplate: "barTemplate", rangeTemplate: "rangeTemplate" }, outputs: { barClick: "barClick", lineClick: "lineClick" }, host: { properties: { "class.gantt-main-container": "this.ganttMainClass" } }, ngImport: i0, template: "<gantt-links-overlay [groups]=\"groups\" [items]=\"items\" (lineClick)=\"lineClick.emit($event)\"></gantt-links-overlay>\n<!-- groups -->\n<div class=\"gantt-main-groups\" *ngIf=\"groups && groups.length > 0; else itemsTemplate\" [style.width.px]=\"ganttUpper.view.width\">\n <ng-container *ngFor=\"let group of groups; trackBy: trackBy\">\n <div class=\"gantt-group\" [ngClass]=\"group.class\">\n <ng-template [ngTemplateOutlet]=\"groupHeaderTemplate\" [ngTemplateOutletContext]=\"{ group: group }\"></ng-template>\n </div>\n <div *ngIf=\"group.expanded\" class=\"gantt-items\">\n <ng-template [ngTemplateOutlet]=\"ganttItems\" [ngTemplateOutletContext]=\"{ items: group.items }\"></ng-template>\n </div>\n </ng-container>\n</div>\n<!-- items -->\n<ng-template #itemsTemplate>\n <div class=\"gantt-main-items\" [style.width.px]=\"ganttUpper.view.width\">\n <ng-template [ngTemplateOutlet]=\"ganttItems\" [ngTemplateOutletContext]=\"{ items: items }\"></ng-template>\n </div>\n</ng-template>\n\n<ng-template #ganttItems let-items=\"items\">\n <ng-container *ngFor=\"let item of items\">\n <div\n class=\"gantt-item\"\n [style.height.px]=\"ganttUpper.styles.lineHeight\"\n [class.gantt-main-item-active]=\"ganttUpper.isSelected(item.id)\"\n >\n <ng-container *ngIf=\"item.type | isGanttCustomItem\">\n <ng-template\n [ngTemplateOutlet]=\"itemTemplate\"\n [ngTemplateOutletContext]=\"{\n item: item.origin,\n refs: item.refs,\n baseline: ganttUpper.baselineItemsMap[item.id]?.origin,\n baselineRefs: ganttUpper.baselineItemsMap[item.id]?.refs\n }\"\n >\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"(item.type | isGanttRangeItem) || (item.type | isGanttBarItem)\">\n <gantt-range *ngIf=\"item.type | isGanttRangeItem\" [template]=\"rangeTemplate\" [item]=\"item\"></gantt-range>\n <gantt-bar *ngIf=\"item.type | isGanttBarItem\" [item]=\"item\" [template]=\"barTemplate\" (barClick)=\"barClick.emit($event)\"></gantt-bar>\n <gantt-baseline *ngIf=\"ganttUpper.baselineItemsMap[item.id]\" [baselineItem]=\"ganttUpper.baselineItemsMap[item.id]\"></gantt-baseline>\n </ng-container>\n </div>\n <ng-template\n *ngIf=\"item.children && item.expanded\"\n [ngTemplateOutlet]=\"ganttItems\"\n [ngTemplateOutletContext]=\"{ items: item.children }\"\n ></ng-template>\n </ng-container>\n</ng-template>\n", components: [{ type: i1.GanttLinksComponent, selector: "gantt-links-overlay", inputs: ["groups", "items"], outputs: ["lineClick"] }, { type: i2.NgxGanttRangeComponent, selector: "ngx-gantt-range,gantt-range" }, { type: i3.NgxGanttBarComponent, selector: "ngx-gantt-bar,gantt-bar", outputs: ["barClick"] }, { type: i4.NgxGanttBaselineComponent, selector: "ngx-gantt-baseline,gantt-baseline", inputs: ["baselineItem"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "isGanttCustomItem": i6.IsGanttCustomItemPipe, "isGanttRangeItem": i6.IsGanttRangeItemPipe, "isGanttBarItem": i6.IsGanttBarItemPipe } });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: GanttMainComponent, decorators: [{
24
25
  type: Component,
25
- args: [{ selector: 'gantt-main', template: "<gantt-links-overlay [groups]=\"groups\" [items]=\"items\" (lineClick)=\"lineClick.emit($event)\"></gantt-links-overlay>\n<!-- groups -->\n<div class=\"gantt-main-groups\" *ngIf=\"groups && groups.length > 0; else itemsTemplate\" [style.width.px]=\"ganttUpper.view.width\">\n <ng-container *ngFor=\"let group of groups; trackBy: trackBy\">\n <div class=\"gantt-group\" [ngClass]=\"group.class\">\n <ng-template [ngTemplateOutlet]=\"groupHeaderTemplate\" [ngTemplateOutletContext]=\"{ group: group }\"></ng-template>\n </div>\n <div *ngIf=\"group.expanded\" class=\"gantt-items\">\n <ng-template [ngTemplateOutlet]=\"ganttItems\" [ngTemplateOutletContext]=\"{ items: group.items }\"></ng-template>\n </div>\n </ng-container>\n</div>\n<!-- items -->\n<ng-template #itemsTemplate>\n <div class=\"gantt-main-items\" [style.width.px]=\"ganttUpper.view.width\">\n <ng-template [ngTemplateOutlet]=\"ganttItems\" [ngTemplateOutletContext]=\"{ items: items }\"></ng-template>\n </div>\n</ng-template>\n\n<ng-template #ganttItems let-items=\"items\">\n <ng-container *ngFor=\"let item of items;\">\n <div\n class=\"gantt-item\"\n [style.height.px]=\"ganttUpper.styles.lineHeight\"\n [class.gantt-main-item-active]=\"ganttUpper.isSelected(item.id)\"\n >\n <ng-container *ngIf=\"item.type | isGanttCustomItem\">\n <ng-template [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ item: item.origin, refs: item.refs }\"></ng-template>\n </ng-container>\n <gantt-range *ngIf=\"item.type | isGanttRangeItem\" [template]=\"rangeTemplate\" [item]=\"item\"></gantt-range>\n <gantt-bar *ngIf=\"item.type | isGanttBarItem\" [item]=\"item\" [template]=\"barTemplate\" (barClick)=\"barClick.emit($event)\"></gantt-bar>\n </div>\n <ng-template\n *ngIf=\"item.children && item.expanded\"\n [ngTemplateOutlet]=\"ganttItems\"\n [ngTemplateOutletContext]=\"{ items: item.children }\"\n ></ng-template>\n </ng-container>\n</ng-template>\n" }]
26
- }], ctorParameters: function () { return [{ type: i6.GanttUpper, decorators: [{
26
+ args: [{ selector: 'gantt-main', template: "<gantt-links-overlay [groups]=\"groups\" [items]=\"items\" (lineClick)=\"lineClick.emit($event)\"></gantt-links-overlay>\n<!-- groups -->\n<div class=\"gantt-main-groups\" *ngIf=\"groups && groups.length > 0; else itemsTemplate\" [style.width.px]=\"ganttUpper.view.width\">\n <ng-container *ngFor=\"let group of groups; trackBy: trackBy\">\n <div class=\"gantt-group\" [ngClass]=\"group.class\">\n <ng-template [ngTemplateOutlet]=\"groupHeaderTemplate\" [ngTemplateOutletContext]=\"{ group: group }\"></ng-template>\n </div>\n <div *ngIf=\"group.expanded\" class=\"gantt-items\">\n <ng-template [ngTemplateOutlet]=\"ganttItems\" [ngTemplateOutletContext]=\"{ items: group.items }\"></ng-template>\n </div>\n </ng-container>\n</div>\n<!-- items -->\n<ng-template #itemsTemplate>\n <div class=\"gantt-main-items\" [style.width.px]=\"ganttUpper.view.width\">\n <ng-template [ngTemplateOutlet]=\"ganttItems\" [ngTemplateOutletContext]=\"{ items: items }\"></ng-template>\n </div>\n</ng-template>\n\n<ng-template #ganttItems let-items=\"items\">\n <ng-container *ngFor=\"let item of items\">\n <div\n class=\"gantt-item\"\n [style.height.px]=\"ganttUpper.styles.lineHeight\"\n [class.gantt-main-item-active]=\"ganttUpper.isSelected(item.id)\"\n >\n <ng-container *ngIf=\"item.type | isGanttCustomItem\">\n <ng-template\n [ngTemplateOutlet]=\"itemTemplate\"\n [ngTemplateOutletContext]=\"{\n item: item.origin,\n refs: item.refs,\n baseline: ganttUpper.baselineItemsMap[item.id]?.origin,\n baselineRefs: ganttUpper.baselineItemsMap[item.id]?.refs\n }\"\n >\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"(item.type | isGanttRangeItem) || (item.type | isGanttBarItem)\">\n <gantt-range *ngIf=\"item.type | isGanttRangeItem\" [template]=\"rangeTemplate\" [item]=\"item\"></gantt-range>\n <gantt-bar *ngIf=\"item.type | isGanttBarItem\" [item]=\"item\" [template]=\"barTemplate\" (barClick)=\"barClick.emit($event)\"></gantt-bar>\n <gantt-baseline *ngIf=\"ganttUpper.baselineItemsMap[item.id]\" [baselineItem]=\"ganttUpper.baselineItemsMap[item.id]\"></gantt-baseline>\n </ng-container>\n </div>\n <ng-template\n *ngIf=\"item.children && item.expanded\"\n [ngTemplateOutlet]=\"ganttItems\"\n [ngTemplateOutletContext]=\"{ items: item.children }\"\n ></ng-template>\n </ng-container>\n</ng-template>\n" }]
27
+ }], ctorParameters: function () { return [{ type: i7.GanttUpper, decorators: [{
27
28
  type: Inject,
28
29
  args: [GANTT_UPPER_TOKEN]
29
30
  }] }]; }, propDecorators: { groups: [{
@@ -46,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
46
47
  type: HostBinding,
47
48
  args: ['class.gantt-main-container']
48
49
  }] } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FudHQtbWFpbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nYW50dC9zcmMvY29tcG9uZW50cy9tYWluL2dhbnR0LW1haW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2FudHQvc3JjL2NvbXBvbmVudHMvbWFpbi9nYW50dC1tYWluLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RyxPQUFPLEVBQUUsaUJBQWlCLEVBQWMsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7Ozs7QUFNbEUsTUFBTSxPQUFPLGtCQUFrQjtJQW1CM0IsWUFBOEMsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQU4xRCxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQXNCLENBQUM7UUFFbEQsY0FBUyxHQUFHLElBQUksWUFBWSxFQUF1QixDQUFDO1FBRW5CLG1CQUFjLEdBQUcsSUFBSSxDQUFDO0lBRU0sQ0FBQztJQUV4RSxPQUFPLENBQUMsS0FBYSxFQUFFLElBQTRDO1FBQy9ELE9BQU8sSUFBSSxDQUFDLEVBQUUsSUFBSSxLQUFLLENBQUM7SUFDNUIsQ0FBQzs7K0dBdkJRLGtCQUFrQixrQkFtQlAsaUJBQWlCO21HQW5CNUIsa0JBQWtCLGdYQ1IvQiw0K0RBdUNBOzJGRC9CYSxrQkFBa0I7a0JBSjlCLFNBQVM7K0JBQ0ksWUFBWTs7MEJBc0JULE1BQU07MkJBQUMsaUJBQWlCOzRDQWxCNUIsTUFBTTtzQkFBZCxLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBRUcsWUFBWTtzQkFBcEIsS0FBSztnQkFFRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUksUUFBUTtzQkFBakIsTUFBTTtnQkFFRyxTQUFTO3NCQUFsQixNQUFNO2dCQUVvQyxjQUFjO3NCQUF4RCxXQUFXO3VCQUFDLDRCQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIEluamVjdCwgSW5wdXQsIFRlbXBsYXRlUmVmLCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR2FudHRHcm91cEludGVybmFsLCBHYW50dEl0ZW1JbnRlcm5hbCwgR2FudHRCYXJDbGlja0V2ZW50LCBHYW50dExpbmVDbGlja0V2ZW50IH0gZnJvbSAnLi4vLi4vY2xhc3MnO1xuaW1wb3J0IHsgR0FOVFRfVVBQRVJfVE9LRU4sIEdhbnR0VXBwZXIgfSBmcm9tICcuLi8uLi9nYW50dC11cHBlcic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZ2FudHQtbWFpbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2dhbnR0LW1haW4uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEdhbnR0TWFpbkNvbXBvbmVudCB7XG4gICAgQElucHV0KCkgZ3JvdXBzOiBHYW50dEdyb3VwSW50ZXJuYWxbXTtcblxuICAgIEBJbnB1dCgpIGl0ZW1zOiBHYW50dEl0ZW1JbnRlcm5hbFtdO1xuXG4gICAgQElucHV0KCkgZ3JvdXBIZWFkZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIEBJbnB1dCgpIGl0ZW1UZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIEBJbnB1dCgpIGJhclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgQElucHV0KCkgcmFuZ2VUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIEBPdXRwdXQoKSBiYXJDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8R2FudHRCYXJDbGlja0V2ZW50PigpO1xuXG4gICAgQE91dHB1dCgpIGxpbmVDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8R2FudHRMaW5lQ2xpY2tFdmVudD4oKTtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZ2FudHQtbWFpbi1jb250YWluZXInKSBnYW50dE1haW5DbGFzcyA9IHRydWU7XG5cbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KEdBTlRUX1VQUEVSX1RPS0VOKSBwdWJsaWMgZ2FudHRVcHBlcjogR2FudHRVcHBlcikge31cblxuICAgIHRyYWNrQnkoaW5kZXg6IG51bWJlciwgaXRlbTogR2FudHRHcm91cEludGVybmFsIHwgR2FudHRJdGVtSW50ZXJuYWwpIHtcbiAgICAgICAgcmV0dXJuIGl0ZW0uaWQgfHwgaW5kZXg7XG4gICAgfVxufVxuIiwiPGdhbnR0LWxpbmtzLW92ZXJsYXkgW2dyb3Vwc109XCJncm91cHNcIiBbaXRlbXNdPVwiaXRlbXNcIiAobGluZUNsaWNrKT1cImxpbmVDbGljay5lbWl0KCRldmVudClcIj48L2dhbnR0LWxpbmtzLW92ZXJsYXk+XG48IS0tIGdyb3VwcyAtLT5cbjxkaXYgY2xhc3M9XCJnYW50dC1tYWluLWdyb3Vwc1wiICpuZ0lmPVwiZ3JvdXBzICYmIGdyb3Vwcy5sZW5ndGggPiAwOyBlbHNlIGl0ZW1zVGVtcGxhdGVcIiBbc3R5bGUud2lkdGgucHhdPVwiZ2FudHRVcHBlci52aWV3LndpZHRoXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIGdyb3VwczsgdHJhY2tCeTogdHJhY2tCeVwiPlxuICAgIDxkaXYgY2xhc3M9XCJnYW50dC1ncm91cFwiIFtuZ0NsYXNzXT1cImdyb3VwLmNsYXNzXCI+XG4gICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiZ3JvdXBIZWFkZXJUZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGdyb3VwOiBncm91cCB9XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwiZ3JvdXAuZXhwYW5kZWRcIiBjbGFzcz1cImdhbnR0LWl0ZW1zXCI+XG4gICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiZ2FudHRJdGVtc1wiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGl0ZW1zOiBncm91cC5pdGVtcyB9XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbjwhLS0gaXRlbXMgLS0+XG48bmctdGVtcGxhdGUgI2l0ZW1zVGVtcGxhdGU+XG4gIDxkaXYgY2xhc3M9XCJnYW50dC1tYWluLWl0ZW1zXCIgW3N0eWxlLndpZHRoLnB4XT1cImdhbnR0VXBwZXIudmlldy53aWR0aFwiPlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJnYW50dEl0ZW1zXCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgaXRlbXM6IGl0ZW1zIH1cIj48L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZ2FudHRJdGVtcyBsZXQtaXRlbXM9XCJpdGVtc1wiPlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zO1wiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiZ2FudHQtaXRlbVwiXG4gICAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cImdhbnR0VXBwZXIuc3R5bGVzLmxpbmVIZWlnaHRcIlxuICAgICAgW2NsYXNzLmdhbnR0LW1haW4taXRlbS1hY3RpdmVdPVwiZ2FudHRVcHBlci5pc1NlbGVjdGVkKGl0ZW0uaWQpXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS50eXBlIHwgaXNHYW50dEN1c3RvbUl0ZW1cIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1UZW1wbGF0ZVwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGl0ZW06IGl0ZW0ub3JpZ2luLCByZWZzOiBpdGVtLnJlZnMgfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxnYW50dC1yYW5nZSAqbmdJZj1cIml0ZW0udHlwZSB8IGlzR2FudHRSYW5nZUl0ZW1cIiBbdGVtcGxhdGVdPVwicmFuZ2VUZW1wbGF0ZVwiIFtpdGVtXT1cIml0ZW1cIj48L2dhbnR0LXJhbmdlPlxuICAgICAgPGdhbnR0LWJhciAqbmdJZj1cIml0ZW0udHlwZSB8IGlzR2FudHRCYXJJdGVtXCIgW2l0ZW1dPVwiaXRlbVwiIFt0ZW1wbGF0ZV09XCJiYXJUZW1wbGF0ZVwiIChiYXJDbGljayk9XCJiYXJDbGljay5lbWl0KCRldmVudClcIj48L2dhbnR0LWJhcj5cbiAgICA8L2Rpdj5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgICpuZ0lmPVwiaXRlbS5jaGlsZHJlbiAmJiBpdGVtLmV4cGFuZGVkXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImdhbnR0SXRlbXNcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgaXRlbXM6IGl0ZW0uY2hpbGRyZW4gfVwiXG4gICAgPjwvbmctdGVtcGxhdGU+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FudHQtbWFpbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nYW50dC9zcmMvY29tcG9uZW50cy9tYWluL2dhbnR0LW1haW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2FudHQvc3JjL2NvbXBvbmVudHMvbWFpbi9nYW50dC1tYWluLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RyxPQUFPLEVBQUUsaUJBQWlCLEVBQWMsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7Ozs7O0FBTWxFLE1BQU0sT0FBTyxrQkFBa0I7SUFtQjNCLFlBQThDLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFOMUQsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFzQixDQUFDO1FBRWxELGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBdUIsQ0FBQztRQUVuQixtQkFBYyxHQUFHLElBQUksQ0FBQztJQUVNLENBQUM7SUFFeEUsT0FBTyxDQUFDLEtBQWEsRUFBRSxJQUE0QztRQUMvRCxPQUFPLElBQUksQ0FBQyxFQUFFLElBQUksS0FBSyxDQUFDO0lBQzVCLENBQUM7OytHQXZCUSxrQkFBa0Isa0JBbUJQLGlCQUFpQjttR0FuQjVCLGtCQUFrQixnWENSL0IsbzlFQW9EQTsyRkQ1Q2Esa0JBQWtCO2tCQUo5QixTQUFTOytCQUNJLFlBQVk7OzBCQXNCVCxNQUFNOzJCQUFDLGlCQUFpQjs0Q0FsQjVCLE1BQU07c0JBQWQsS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsbUJBQW1CO3NCQUEzQixLQUFLO2dCQUVHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUcsV0FBVztzQkFBbkIsS0FBSztnQkFFRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVJLFFBQVE7c0JBQWpCLE1BQU07Z0JBRUcsU0FBUztzQkFBbEIsTUFBTTtnQkFFb0MsY0FBYztzQkFBeEQsV0FBVzt1QkFBQyw0QkFBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbmplY3QsIElucHV0LCBUZW1wbGF0ZVJlZiwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdhbnR0R3JvdXBJbnRlcm5hbCwgR2FudHRJdGVtSW50ZXJuYWwsIEdhbnR0QmFyQ2xpY2tFdmVudCwgR2FudHRMaW5lQ2xpY2tFdmVudCB9IGZyb20gJy4uLy4uL2NsYXNzJztcbmltcG9ydCB7IEdBTlRUX1VQUEVSX1RPS0VOLCBHYW50dFVwcGVyIH0gZnJvbSAnLi4vLi4vZ2FudHQtdXBwZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2dhbnR0LW1haW4nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9nYW50dC1tYWluLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBHYW50dE1haW5Db21wb25lbnQge1xuICAgIEBJbnB1dCgpIGdyb3VwczogR2FudHRHcm91cEludGVybmFsW107XG5cbiAgICBASW5wdXQoKSBpdGVtczogR2FudHRJdGVtSW50ZXJuYWxbXTtcblxuICAgIEBJbnB1dCgpIGdyb3VwSGVhZGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBASW5wdXQoKSBpdGVtVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBASW5wdXQoKSBiYXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIEBJbnB1dCgpIHJhbmdlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBAT3V0cHV0KCkgYmFyQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPEdhbnR0QmFyQ2xpY2tFdmVudD4oKTtcblxuICAgIEBPdXRwdXQoKSBsaW5lQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPEdhbnR0TGluZUNsaWNrRXZlbnQ+KCk7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmdhbnR0LW1haW4tY29udGFpbmVyJykgZ2FudHRNYWluQ2xhc3MgPSB0cnVlO1xuXG4gICAgY29uc3RydWN0b3IoQEluamVjdChHQU5UVF9VUFBFUl9UT0tFTikgcHVibGljIGdhbnR0VXBwZXI6IEdhbnR0VXBwZXIpIHt9XG5cbiAgICB0cmFja0J5KGluZGV4OiBudW1iZXIsIGl0ZW06IEdhbnR0R3JvdXBJbnRlcm5hbCB8IEdhbnR0SXRlbUludGVybmFsKSB7XG4gICAgICAgIHJldHVybiBpdGVtLmlkIHx8IGluZGV4O1xuICAgIH1cbn1cbiIsIjxnYW50dC1saW5rcy1vdmVybGF5IFtncm91cHNdPVwiZ3JvdXBzXCIgW2l0ZW1zXT1cIml0ZW1zXCIgKGxpbmVDbGljayk9XCJsaW5lQ2xpY2suZW1pdCgkZXZlbnQpXCI+PC9nYW50dC1saW5rcy1vdmVybGF5PlxuPCEtLSBncm91cHMgLS0+XG48ZGl2IGNsYXNzPVwiZ2FudHQtbWFpbi1ncm91cHNcIiAqbmdJZj1cImdyb3VwcyAmJiBncm91cHMubGVuZ3RoID4gMDsgZWxzZSBpdGVtc1RlbXBsYXRlXCIgW3N0eWxlLndpZHRoLnB4XT1cImdhbnR0VXBwZXIudmlldy53aWR0aFwiPlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBncm91cCBvZiBncm91cHM7IHRyYWNrQnk6IHRyYWNrQnlcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZ2FudHQtZ3JvdXBcIiBbbmdDbGFzc109XCJncm91cC5jbGFzc1wiPlxuICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImdyb3VwSGVhZGVyVGVtcGxhdGVcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBncm91cDogZ3JvdXAgfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cImdyb3VwLmV4cGFuZGVkXCIgY2xhc3M9XCJnYW50dC1pdGVtc1wiPlxuICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImdhbnR0SXRlbXNcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBpdGVtczogZ3JvdXAuaXRlbXMgfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG48IS0tIGl0ZW1zIC0tPlxuPG5nLXRlbXBsYXRlICNpdGVtc1RlbXBsYXRlPlxuICA8ZGl2IGNsYXNzPVwiZ2FudHQtbWFpbi1pdGVtc1wiIFtzdHlsZS53aWR0aC5weF09XCJnYW50dFVwcGVyLnZpZXcud2lkdGhcIj5cbiAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiZ2FudHRJdGVtc1wiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGl0ZW1zOiBpdGVtcyB9XCI+PC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2dhbnR0SXRlbXMgbGV0LWl0ZW1zPVwiaXRlbXNcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtc1wiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiZ2FudHQtaXRlbVwiXG4gICAgICBbc3R5bGUuaGVpZ2h0LnB4XT1cImdhbnR0VXBwZXIuc3R5bGVzLmxpbmVIZWlnaHRcIlxuICAgICAgW2NsYXNzLmdhbnR0LW1haW4taXRlbS1hY3RpdmVdPVwiZ2FudHRVcHBlci5pc1NlbGVjdGVkKGl0ZW0uaWQpXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS50eXBlIHwgaXNHYW50dEN1c3RvbUl0ZW1cIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbVRlbXBsYXRlXCJcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgaXRlbTogaXRlbS5vcmlnaW4sXG4gICAgICAgICAgICByZWZzOiBpdGVtLnJlZnMsXG4gICAgICAgICAgICBiYXNlbGluZTogZ2FudHRVcHBlci5iYXNlbGluZUl0ZW1zTWFwW2l0ZW0uaWRdPy5vcmlnaW4sXG4gICAgICAgICAgICBiYXNlbGluZVJlZnM6IGdhbnR0VXBwZXIuYmFzZWxpbmVJdGVtc01hcFtpdGVtLmlkXT8ucmVmc1xuICAgICAgICAgIH1cIlxuICAgICAgICA+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihpdGVtLnR5cGUgfCBpc0dhbnR0UmFuZ2VJdGVtKSB8fCAoaXRlbS50eXBlIHwgaXNHYW50dEJhckl0ZW0pXCI+XG4gICAgICAgIDxnYW50dC1yYW5nZSAqbmdJZj1cIml0ZW0udHlwZSB8IGlzR2FudHRSYW5nZUl0ZW1cIiBbdGVtcGxhdGVdPVwicmFuZ2VUZW1wbGF0ZVwiIFtpdGVtXT1cIml0ZW1cIj48L2dhbnR0LXJhbmdlPlxuICAgICAgICA8Z2FudHQtYmFyICpuZ0lmPVwiaXRlbS50eXBlIHwgaXNHYW50dEJhckl0ZW1cIiBbaXRlbV09XCJpdGVtXCIgW3RlbXBsYXRlXT1cImJhclRlbXBsYXRlXCIgKGJhckNsaWNrKT1cImJhckNsaWNrLmVtaXQoJGV2ZW50KVwiPjwvZ2FudHQtYmFyPlxuICAgICAgICA8Z2FudHQtYmFzZWxpbmUgKm5nSWY9XCJnYW50dFVwcGVyLmJhc2VsaW5lSXRlbXNNYXBbaXRlbS5pZF1cIiBbYmFzZWxpbmVJdGVtXT1cImdhbnR0VXBwZXIuYmFzZWxpbmVJdGVtc01hcFtpdGVtLmlkXVwiPjwvZ2FudHQtYmFzZWxpbmU+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgICpuZ0lmPVwiaXRlbS5jaGlsZHJlbiAmJiBpdGVtLmV4cGFuZGVkXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImdhbnR0SXRlbXNcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgaXRlbXM6IGl0ZW0uY2hpbGRyZW4gfVwiXG4gICAgPjwvbmctdGVtcGxhdGU+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -10,9 +10,9 @@ export class NgxGanttRangeComponent extends GanttItemUpper {
10
10
  this.ganttRangeClass = true;
11
11
  }
12
12
  }
13
- NgxGanttRangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: NgxGanttRangeComponent, deps: [{ token: i0.ElementRef }, { token: GANTT_UPPER_TOKEN }], target: i0.ɵɵFactoryTarget.Component });
14
- NgxGanttRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: NgxGanttRangeComponent, selector: "ngx-gantt-range,gantt-range", host: { properties: { "class.gantt-range": "this.ganttRangeClass" } }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"item.start && item.end\">\n <div class=\"gantt-range-main\">\n <div class=\"gantt-range-main-progress\" *ngIf=\"item.progress >= 0\" [style.width.%]=\"item.progress * 100\"></div>\n </div>\n <div class=\"gantt-range-triangle left\"></div>\n <div class=\"gantt-range-triangle right\"></div>\n <ng-template [ngTemplateOutlet]=\"template\" [ngTemplateOutletContext]=\"{ item: item.origin, refs: item.refs }\"></ng-template>\n</ng-container>\n", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: NgxGanttRangeComponent, decorators: [{
13
+ NgxGanttRangeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: NgxGanttRangeComponent, deps: [{ token: i0.ElementRef }, { token: GANTT_UPPER_TOKEN }], target: i0.ɵɵFactoryTarget.Component });
14
+ NgxGanttRangeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.9", type: NgxGanttRangeComponent, selector: "ngx-gantt-range,gantt-range", host: { properties: { "class.gantt-range": "this.ganttRangeClass" } }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"item.start && item.end\">\n <div class=\"gantt-range-main\">\n <div class=\"gantt-range-main-progress\" *ngIf=\"item.progress >= 0\" [style.width.%]=\"item.progress * 100\"></div>\n </div>\n <div class=\"gantt-range-triangle left\"></div>\n <div class=\"gantt-range-triangle right\"></div>\n <ng-template [ngTemplateOutlet]=\"template\" [ngTemplateOutletContext]=\"{ item: item.origin, refs: item.refs }\"></ng-template>\n</ng-container>\n", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.9", ngImport: i0, type: NgxGanttRangeComponent, decorators: [{
16
16
  type: Component,
17
17
  args: [{ selector: 'ngx-gantt-range,gantt-range', template: "<ng-container *ngIf=\"item.start && item.end\">\n <div class=\"gantt-range-main\">\n <div class=\"gantt-range-main-progress\" *ngIf=\"item.progress >= 0\" [style.width.%]=\"item.progress * 100\"></div>\n </div>\n <div class=\"gantt-range-triangle left\"></div>\n <div class=\"gantt-range-triangle right\"></div>\n <ng-template [ngTemplateOutlet]=\"template\" [ngTemplateOutletContext]=\"{ item: item.origin, refs: item.refs }\"></ng-template>\n</ng-container>\n" }]
18
18
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i2.GanttUpper, decorators: [{