@datarailsshared/datarailsshared 1.5.528 → 1.5.533

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.
@@ -4,19 +4,22 @@ import * as i0 from "@angular/core";
4
4
  export class ForecastTagService {
5
5
  static { this.MONTH_DIFF = 1; }
6
6
  static { this.forecastByMonth = {
7
- 0: '0+12',
8
- 1: '1+11',
9
- 2: '2+10',
10
- 3: '3+9',
11
- 4: '4+8',
12
- 5: '5+7',
13
- 6: '6+6',
14
- 7: '7+5',
15
- 8: '8+4',
16
- 9: '9+3',
17
- 10: '10+2',
18
- 11: '11+1',
7
+ '0': '0+12',
8
+ '1': '1+11',
9
+ '2': '2+10',
10
+ '3': '3+9',
11
+ '4': '4+8',
12
+ '5': '5+7',
13
+ '6': '6+6',
14
+ '7': '7+5',
15
+ '8': '8+4',
16
+ '9': '9+3',
17
+ '10': '10+2',
18
+ '11': '11+1',
19
19
  }; }
20
+ static getForecastMonthTemplates() {
21
+ return Array.from(Object.values(ForecastTagService.forecastByMonth));
22
+ }
20
23
  static getFiscalMonthFromDate(date, fiscalYearStartsFrom) {
21
24
  const all_months = [];
22
25
  for (let i = fiscalYearStartsFrom; i < 13; i++) {
@@ -43,7 +46,8 @@ export class ForecastTagService {
43
46
  return fiscal_year;
44
47
  }
45
48
  static getForecastLabel(month) {
46
- return ForecastTagService.forecastByMonth[month - ForecastTagService.MONTH_DIFF];
49
+ const index = month - ForecastTagService.MONTH_DIFF;
50
+ return ForecastTagService.forecastByMonth[index];
47
51
  }
48
52
  static getCalendarDateFromMonthAndFiscalYear(chosenMoment, monthLabel, fiscalYearStartsFrom, fiscalYearBack) {
49
53
  const yearWithMonth = ForecastTagService.addMonthsWithoutYearChange(chosenMoment, monthLabel, fiscalYearStartsFrom);
@@ -80,4 +84,4 @@ export class ForecastTagService {
80
84
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ForecastTagService, [{
81
85
  type: Injectable
82
86
  }], null, null); })();
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yZWNhc3QtdGFnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kYXRlLXRhZ3MvZm9yZWNhc3QtdGFnL2ZvcmVjYXN0LXRhZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLE9BQU8sSUFBSSxRQUFRLEVBQUUsTUFBTSxRQUFRLENBQUM7O0FBTzdDLE1BQU0sT0FBTyxrQkFBa0I7YUFDSCxlQUFVLEdBQUcsQ0FBQyxDQUFDO2FBQ3hCLG9CQUFlLEdBQXFCO1FBQy9DLENBQUMsRUFBRSxNQUFNO1FBQ1QsQ0FBQyxFQUFFLE1BQU07UUFDVCxDQUFDLEVBQUUsTUFBTTtRQUNULENBQUMsRUFBRSxLQUFLO1FBQ1IsQ0FBQyxFQUFFLEtBQUs7UUFDUixDQUFDLEVBQUUsS0FBSztRQUNSLENBQUMsRUFBRSxLQUFLO1FBQ1IsQ0FBQyxFQUFFLEtBQUs7UUFDUixDQUFDLEVBQUUsS0FBSztRQUNSLENBQUMsRUFBRSxLQUFLO1FBQ1IsRUFBRSxFQUFFLE1BQU07UUFDVixFQUFFLEVBQUUsTUFBTTtLQUNiLENBQUM7SUFFSyxNQUFNLENBQUMsc0JBQXNCLENBQUMsSUFBbUIsRUFBRSxvQkFBNEI7UUFDbEYsTUFBTSxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBRXRCLEtBQUssSUFBSSxDQUFDLEdBQUcsb0JBQW9CLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUM1QyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3RCO1FBRUQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLG9CQUFvQixFQUFFLENBQUMsRUFBRSxFQUFFO1lBQzNDLFVBQVUsQ0FBQyxJQUFJLENBQUMs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QXFCLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxJQUFJLG9CQUFvQixJQUFJLG9CQUFvQixLQUFLLENBQUMsRUFBRTtnQkFDekYscUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQzthQUM3QztTQUNKO1FBQ0QsT0FBTyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QyxDQUFDO3NHQWxHUSxrQkFBa0I7c0dBQWxCLGtCQUFrQixXQUFsQixrQkFBa0I7O3VGQUFsQixrQkFBa0I7Y0FEOUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCAqIGFzIG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHsgaW5kZXhPZiBhcyBfaW5kZXhPZiB9IGZyb20gJ2xvZGFzaCc7XG5cbmludGVyZmFjZSBJRm9yZWNhc3RCeU1vbnRoIHtcbiAgICBbbW9udGhJbmRleDogbnVtYmVyXTogc3RyaW5nO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRm9yZWNhc3RUYWdTZXJ2aWNlIHtcbiAgICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBNT05USF9ESUZGID0gMTtcbiAgICBwcml2YXRlIHN0YXRpYyBmb3JlY2FzdEJ5TW9udGg6IElGb3JlY2FzdEJ5TW9udGggPSB7XG4gICAgICAgIDA6ICcwKzEyJyxcbiAgICAgICAgMTogJzErMTEnLFxuICAgICAgICAyOiAnMisxMCcsXG4gICAgICAgIDM6ICczKzknLFxuICAgICAgICA0OiAnNCs4JyxcbiAgICAgICAgNTogJzUrNycsXG4gICAgICAgIDY6ICc2KzYnLFxuICAgICAgICA3OiAnNys1JyxcbiAgICAgICAgODogJzgrNCcsXG4gICAgICAgIDk6ICc5KzMnLFxuICAgICAgICAxMDogJzEwKzInLFxuICAgICAgICAxMTogJzExKzEnLFxuICAgIH07XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldEZpc2NhbE1vbnRoRnJvbURhdGUoZGF0ZTogbW9tZW50Lk1vbWVudCwgZmlzY2FsWWVhclN0YXJ0c0Zyb206IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGFsbF9tb250aHMgPSBbXTtcblxuICAgICAgICBmb3IgKGxldCBpID0gZmlzY2FsWWVhclN0YXJ0c0Zyb207IGkgPCAxMzsgaSsrKSB7XG4gICAgICAgICAgICBhbGxfbW9udGhzLnB1c2goaSk7XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGxldCBpID0gMTsgaSA8IGZpc2NhbFllYXJTdGFydHNGcm9tOyBpKyspIHtcbiAgICAgICAgICAgIGFsbF9tb250aHMucHVzaChpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBfaW5kZXhPZihhbGxfbW9udGhzLCBkYXRlLm1vbnRoKCkgKyBGb3JlY2FzdFRhZ1NlcnZpY2UuTU9OVEhfRElGRikgKyBGb3JlY2FzdFRhZ1NlcnZpY2UuTU9OVEhfRElGRjtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldEZpc2NhbFllYXJGcm9tRGF0ZShkYXRlOiBtb21lbnQuTW9tZW50LCBmaXNjYWxZZWFyU3RhcnRzRnJvbTogbnVtYmVyLCBmaXNjYWxZZWFyQmFjazogYm9vbGVhbik6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IG1vbnRoID0gZGF0ZS5tb250aCgpO1xuICAgICAgICBsZXQgZmlzY2FsX3llYXIgPSBkYXRlLnllYXIoKTtcblxuICAgICAgICBpZiAoIWZpc2NhbFllYXJCYWNrKSB7XG4gICAgICAgICAgICBpZiAobW9udGggKyAxID49IGZpc2NhbFllYXJTdGFydHNGcm9tICYmIGZpc2NhbFllYXJTdGFydHNGcm9tICE9PSAxKSB7XG4gICAgICAgICAgICAgICAgZmlzY2FsX3llYXIgKz0gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChtb250aCArIDEgPCBmaXNjYWxZZWFyU3RhcnRzRnJvbSAmJiBmaXNjYWxZZWFyU3RhcnRzRnJvbSAhPT0gMSkge1xuICAgICAgICAgICAgICAgIGZpc2NhbF95ZWFyIC09IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZmlzY2FsX3llYXI7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRGb3JlY2FzdExhYmVsKG1vbnRoOiBudW1iZXIpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gRm9yZWNhc3RUYWdTZXJ2aWNlLmZvcmVjYXN0QnlNb250aFttb250aCAtIEZvcmVjYXN0VGFnU2VydmljZS5NT05USF9ESUZGXTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldENhbGVuZGFyRGF0ZUZyb21Nb250aEFuZEZpc2NhbFllYXIoXG4gICAgICAgIGNob3Nlbk1vbWVudDogbW9tZW50Lk1vbWVudCxcbiAgICAgICAgbW9udGhMYWJlbDogc3RyaW5nLFxuICAgICAgICBmaXNjYWxZZWFyU3RhcnRzRnJvbTogbnVtYmVyLFxuICAgICAgICBmaXNjYWxZZWFyQmFjazogYm9vbGVhbixcbiAgICApOiBudW1iZXIge1xuICAgICAgICBjb25zdCB5ZWFyV2l0aE1vbnRoID0gRm9yZWNhc3RUYWdTZXJ2aWNlLmFkZE1vbnRoc1dpdGhvdXRZZWFyQ2hhbmdlKGNob3Nlbk1vbWVudCwgbW9udGhMYWJlbCwgZmlzY2FsWWVhclN0YXJ0c0Zyb20pO1xuICAgICAgICByZXR1cm4gRm9yZWNhc3RUYWdTZXJ2aWNlLnRyYW5zZm9ybVllYXJGcm9tRmlzY2FsKHllYXJXaXRoTW9udGgsIGZpc2NhbFllYXJTdGFydHNGcm9tLCBmaXNjYWxZZWFyQmFjayk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBhZGRNb250aHNXaXRob3V0WWVhckNoYW5nZShcbiAgICAgICAgZGF0ZTogbW9tZW50Lk1vbWVudCxcbiAgICAgICAgbW9udGhMYWJlbDogc3RyaW5nLFxuICAgICAgICBmaXNjYWxZZWFyU3RhcnRzRnJvbTogbnVtYmVyLFxuICAgICk6IG1vbWVudC5Nb21lbnQge1xuICAgICAgICBpZiAoIW1vbnRoTGFiZWwgfHwgIWRhdGUpIHJldHVybjtcblxuICAgICAgICBjb25zdCBkYXRlVG9UcmFuc2Zvcm0gPSBkYXRlLmNsb25lKCk7XG5cbiAgICAgICAgY29uc3QgbGFiZWxzSW5kZXg6IG51bWJlciA9ICtPYmplY3Qua2V5cyhGb3JlY2FzdFRhZ1NlcnZpY2UuZm9yZWNhc3RCeU1vbnRoKS5maW5kKFxuICAgICAgICAgICAgKGtleTogc3RyaW5nKSA9PiBGb3JlY2FzdFRhZ1NlcnZpY2UuZm9yZWNhc3RCeU1vbnRoW2tleV0gPT09IG1vbnRoTGFiZWwsXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IG1vbnRoc1dpdGhGaXNjYWxEaWZmZXJlbmNlID0gbGFiZWxzSW5kZXggKyBmaXNjYWxZZWFyU3RhcnRzRnJvbSAtIDE7XG4gICAgICAgIGNvbnN0IG1vbnRoc1RvQWRkID0gbW9udGhzV2l0aEZpc2NhbERpZmZlcmVuY2UgPj0gMTIgPyBtb250aHNXaXRoRmlzY2FsRGlmZmVyZW5jZSAtIDEyIDogbW9udGhzV2l0aEZpc2NhbERpZmZlcmVuY2U7XG5cbiAgICAgICAgcmV0dXJuIGRhdGVUb1RyYW5zZm9ybS51dGMoKS5zdGFydE9mKCd5ZWFyJykuYWRkKG1vbnRoc1RvQWRkLCAnTScpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgdHJhbnNmb3JtWWVhckZyb21GaXNjYWwoXG4gICAgICAgIGZpc2NhbFllYXJXaXRoTW9udGg6IG1vbWVudC5Nb21lbnQsXG4gICAgICAgIGZpc2NhbFllYXJTdGFydHNGcm9tOiBudW1iZXIsXG4gICAgICAgIGZpc2NhbFllYXJCYWNrOiBib29sZWFuLFxuICAgICk6IG51bWJlciB7XG4gICAgICAgIGlmICghZmlzY2FsWWVhcldpdGhNb250aCkgcmV0dXJuO1xuXG4gICAgICAgIGxldCBmaXNjYWxZZWFyU3RhcnRNb21lbnQgPSBmaXNjYWxZZWFyV2l0aE1vbnRoLmNsb25lKCk7XG4gICAgICAgIGlmIChmaXNjYWxZZWFyQmFjaykge1xuICAgICAgICAgICAgaWYgKGZpc2NhbFllYXJTdGFydE1vbWVudC5tb250aCgpICsgMSA8IGZpc2NhbFllYXJTdGFydHNGcm9tICYmIGZpc2NhbFllYXJTdGFydHNGcm9tICE9PSAxKSB7XG4gICAgICAgICAgICAgICAgZmlzY2FsWWVhclN0YXJ0TW9tZW50LmFkZCgxLCAneWVhcicpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKGZpc2NhbFllYXJTdGFydE1vbWVudC5tb250aCgpICsgMSA+PSBmaXNjYWxZZWFyU3RhcnRzRnJvbSAmJiBmaXNjYWxZZWFyU3RhcnRzRnJvbSAhPT0gMSkge1xuICAgICAgICAgICAgICAgIGZpc2NhbFllYXJTdGFydE1vbWVudC5zdWJ0cmFjdCgxLCAneWVhcicpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmaXNjYWxZZWFyU3RhcnRNb21lbnQudW5peCgpO1xuICAgIH1cbn1cbiJdfQ==
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yZWNhc3QtdGFnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kYXRlLXRhZ3MvZm9yZWNhc3QtdGFnL2ZvcmVjYXN0LXRhZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLE9BQU8sSUFBSSxRQUFRLEVBQUUsTUFBTSxRQUFRLENBQUM7O0FBTzdDLE1BQU0sT0FBTyxrQkFBa0I7YUFDSCxlQUFVLEdBQUcsQ0FBQyxDQUFDO2FBQ2Ysb0JBQWUsR0FBcUI7UUFDeEQsR0FBRyxFQUFFLE1BQU07UUFDWCxHQUFHLEVBQUUsTUFBTTtRQUNYLEdBQUcsRUFBRSxNQUFNO1FBQ1gsR0FBRyxFQUFFLEtBQUs7UUFDVixHQUFHLEVBQUUsS0FBSztRQUNWLEdBQUcsRUFBRSxLQUFLO1FBQ1YsR0FBRyxFQUFFLEtBQUs7UUFDVixHQUFHLEVBQUUsS0FBSztRQUNWLEdBQUcsRUFBRSxLQUFLO1FBQ1YsR0FBRyxFQUFFLEtBQUs7UUFDVixJQUFJLEVBQUUsTUFBTTtRQUNaLElBQUksRUFBRSxNQUFNO0tBQ2YsQ0FBQztJQUVLLE1BQU0sQ0FBQyx5QkFBeUI7UUFDbkMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRU0sTUFBTSxDQUFDLHNCQUFzQixDQUFDLElBQW1CLEVBQUUsb0JBQTRCO1FBQ2xGLE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQztRQUV0QixLQUFLLElBQUksQ0FBQyxHQUFHLG9CQUFvQixFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDNUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN0QjtRQUVELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxvQkFBb0IsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUMzQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3RCO1FBRUQsT0FBTyxRQUFRLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxVQUFVLENBQUM7SUFDOUcsQ0FBQztJQUVNLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxJQUFtQixFQUFFLG9CQUE0QixFQUFFLGNBQXVCO1FBQzFHLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixJQUFJLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFOUIsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUNqQixJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksb0JBQW9CLElBQUksb0JBQW9CLEtBQUssQ0FBQyxFQUFFO2dCQUNqRSxXQUFXLElBQUksQ0FBQyxDQUFDO2FBQ3BCO1NBQ0o7YUFBTTtZQUNILElBQUksS0FBSyxHQUFHLENBQUMsR0FBRyxvQkFBb0IsSUFBSSxvQkFBb0IsS0FBSyxDQUFDLEVBQUU7Z0JBQ2hFLFdBQVcsSUFBSSxDQUFDLENBQUM7YUFDcEI7U0FDSjtRQUVELE9BQU8sV0FBVyxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsS0FBYTtRQUN4QyxNQUFNLEtBQUssR0FBRyxLQUFLLEdBQUcsa0JBQWtCLENBQUMsVUFBVSxDQUFDO1FBQ3BELE9BQU8sa0JBQWtCLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFTSxNQUFNLENBQUMscUNBQXFDLENBQy9DLFlBQTJCLEVBQzNCLFVBQWtCLEVBQ2xCLG9CQUE0QixFQUM1QixjQUF1QjtRQUV2QixNQUFNLGFBQWEsR0FBRyxrQkFBa0IsQ0FBQywwQkFBMEIsQ0FBQyxZQUFZLEVBQUUsVUFBVSxFQUFFLG9CQUFvQixDQUFDLENBQUM7UUFDcEgsT0FBTyxrQkFBa0IsQ0FBQyx1QkFBdUIsQ0FBQyxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDM0csQ0FBQztJQUVNLE1BQU0sQ0FBQywwQkFBMEIsQ0FDcEMsSUFBbUIsRUFDbkIsVUFBa0IsRUFDbEIsb0JBQTRCO1FBRTVCLElBQUksQ0FBQyxVQUFVLElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTztRQUVqQyxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFckMsTUFBTSxXQUFXLEdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxDQUFDLElBQUksQ0FDN0UsQ0FBQyxHQUFXLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsS0FBSyxVQUFVLENBQzFFLENBQUM7UUFDRixNQUFNLDBCQUEwQixHQUFHLFdBQVcsR0FBRyxvQkFBb0IsR0FBRyxDQUFDLENBQUM7UUFDMUUsTUFBTSxXQUFXLEdBQUcsMEJBQTBCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQywwQkFBMEIsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLDBCQUEwQixDQUFDO1FBRXBILE9BQU8sZUFBZSxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFTSxNQUFNLENBQUMsdUJBQXVCLENBQ2pDLG1CQUFrQyxFQUNsQyxvQkFBNEIsRUFDNUIsY0FBdUI7UUFFdkIsSUFBSSxDQUFDLG1CQUFtQjtZQUFFLE9BQU87UUFFakMsSUFBSSxxQkFBcUIsR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN4RCxJQUFJLGNBQWMsRUFBRTtZQUNoQixJQUFJLHFCQUFxQixDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsR0FBRyxvQkFBb0IsSUFBSSxvQkFBb0IsS0FBSyxDQUFDLEVBQUU7Z0JBQ3hGLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7YUFDeEM7U0FDSjthQUFNO1lBQ0gsSUFBSSxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLElBQUksb0JBQW9CLElBQUksb0JBQW9CLEtBQUssQ0FBQyxFQUFFO2dCQUN6RixxQkFBcUIsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO2FBQzdDO1NBQ0o7UUFDRCxPQUFPLHFCQUFxQixDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hDLENBQUM7c0dBdkdRLGtCQUFrQjtzR0FBbEIsa0JBQWtCLFdBQWxCLGtCQUFrQjs7dUZBQWxCLGtCQUFrQjtjQUQ5QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBpbmRleE9mIGFzIF9pbmRleE9mIH0gZnJvbSAnbG9kYXNoJztcblxuaW50ZXJmYWNlIElGb3JlY2FzdEJ5TW9udGgge1xuICAgIFttb250aEluZGV4OiBzdHJpbmddOiBzdHJpbmc7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBGb3JlY2FzdFRhZ1NlcnZpY2Uge1xuICAgIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IE1PTlRIX0RJRkYgPSAxO1xuICAgIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IGZvcmVjYXN0QnlNb250aDogSUZvcmVjYXN0QnlNb250aCA9IHtcbiAgICAgICAgJzAnOiAnMCsxMicsXG4gICAgICAgICcxJzogJzErMTEnLFxuICAgICAgICAnMic6ICcyKzEwJyxcbiAgICAgICAgJzMnOiAnMys5JyxcbiAgICAgICAgJzQnOiAnNCs4JyxcbiAgICAgICAgJzUnOiAnNSs3JyxcbiAgICAgICAgJzYnOiAnNis2JyxcbiAgICAgICAgJzcnOiAnNys1JyxcbiAgICAgICAgJzgnOiAnOCs0JyxcbiAgICAgICAgJzknOiAnOSszJyxcbiAgICAgICAgJzEwJzogJzEwKzInLFxuICAgICAgICAnMTEnOiAnMTErMScsXG4gICAgfTtcblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0Rm9yZWNhc3RNb250aFRlbXBsYXRlcygpOiBzdHJpbmdbXSB7XG4gICAgICAgIHJldHVybiBBcnJheS5mcm9tKE9iamVjdC52YWx1ZXMoRm9yZWNhc3RUYWdTZXJ2aWNlLmZvcmVjYXN0QnlNb250aCkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0RmlzY2FsTW9udGhGcm9tRGF0ZShkYXRlOiBtb21lbnQuTW9tZW50LCBmaXNjYWxZZWFyU3RhcnRzRnJvbTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgYWxsX21vbnRocyA9IFtdO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSBmaXNjYWxZZWFyU3RhcnRzRnJvbTsgaSA8IDEzOyBpKyspIHtcbiAgICAgICAgICAgIGFsbF9tb250aHMucHVzaChpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDwgZmlzY2FsWWVhclN0YXJ0c0Zyb207IGkrKykge1xuICAgICAgICAgICAgYWxsX21vbnRocy5wdXNoKGkpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIF9pbmRleE9mKGFsbF9tb250aHMsIGRhdGUubW9udGgoKSArIEZvcmVjYXN0VGFnU2VydmljZS5NT05USF9ESUZGKSArIEZvcmVjYXN0VGFnU2VydmljZS5NT05USF9ESUZGO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0RmlzY2FsWWVhckZyb21EYXRlKGRhdGU6IG1vbWVudC5Nb21lbnQsIGZpc2NhbFllYXJTdGFydHNGcm9tOiBudW1iZXIsIGZpc2NhbFllYXJCYWNrOiBib29sZWFuKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgbW9udGggPSBkYXRlLm1vbnRoKCk7XG4gICAgICAgIGxldCBmaXNjYWxfeWVhciA9IGRhdGUueWVhcigpO1xuXG4gICAgICAgIGlmICghZmlzY2FsWWVhckJhY2spIHtcbiAgICAgICAgICAgIGlmIChtb250aCArIDEgPj0gZmlzY2FsWWVhclN0YXJ0c0Zyb20gJiYgZmlzY2FsWWVhclN0YXJ0c0Zyb20gIT09IDEpIHtcbiAgICAgICAgICAgICAgICBmaXNjYWxfeWVhciArPSAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKG1vbnRoICsgMSA8IGZpc2NhbFllYXJTdGFydHNGcm9tICYmIGZpc2NhbFllYXJTdGFydHNGcm9tICE9PSAxKSB7XG4gICAgICAgICAgICAgICAgZmlzY2FsX3llYXIgLT0gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmaXNjYWxfeWVhcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldEZvcmVjYXN0TGFiZWwobW9udGg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gbW9udGggLSBGb3JlY2FzdFRhZ1NlcnZpY2UuTU9OVEhfRElGRjtcbiAgICAgICAgcmV0dXJuIEZvcmVjYXN0VGFnU2VydmljZS5mb3JlY2FzdEJ5TW9udGhbaW5kZXhdO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0Q2FsZW5kYXJEYXRlRnJvbU1vbnRoQW5kRmlzY2FsWWVhcihcbiAgICAgICAgY2hvc2VuTW9tZW50OiBtb21lbnQuTW9tZW50LFxuICAgICAgICBtb250aExhYmVsOiBzdHJpbmcsXG4gICAgICAgIGZpc2NhbFllYXJTdGFydHNGcm9tOiBudW1iZXIsXG4gICAgICAgIGZpc2NhbFllYXJCYWNrOiBib29sZWFuLFxuICAgICk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IHllYXJXaXRoTW9udGggPSBGb3JlY2FzdFRhZ1NlcnZpY2UuYWRkTW9udGhzV2l0aG91dFllYXJDaGFuZ2UoY2hvc2VuTW9tZW50LCBtb250aExhYmVsLCBmaXNjYWxZZWFyU3RhcnRzRnJvbSk7XG4gICAgICAgIHJldHVybiBGb3JlY2FzdFRhZ1NlcnZpY2UudHJhbnNmb3JtWWVhckZyb21GaXNjYWwoeWVhcldpdGhNb250aCwgZmlzY2FsWWVhclN0YXJ0c0Zyb20sIGZpc2NhbFllYXJCYWNrKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFkZE1vbnRoc1dpdGhvdXRZZWFyQ2hhbmdlKFxuICAgICAgICBkYXRlOiBtb21lbnQuTW9tZW50LFxuICAgICAgICBtb250aExhYmVsOiBzdHJpbmcsXG4gICAgICAgIGZpc2NhbFllYXJTdGFydHNGcm9tOiBudW1iZXIsXG4gICAgKTogbW9tZW50Lk1vbWVudCB7XG4gICAgICAgIGlmICghbW9udGhMYWJlbCB8fCAhZGF0ZSkgcmV0dXJuO1xuXG4gICAgICAgIGNvbnN0IGRhdGVUb1RyYW5zZm9ybSA9IGRhdGUuY2xvbmUoKTtcblxuICAgICAgICBjb25zdCBsYWJlbHNJbmRleDogbnVtYmVyID0gK09iamVjdC5rZXlzKEZvcmVjYXN0VGFnU2VydmljZS5mb3JlY2FzdEJ5TW9udGgpLmZpbmQoXG4gICAgICAgICAgICAoa2V5OiBzdHJpbmcpID0+IEZvcmVjYXN0VGFnU2VydmljZS5mb3JlY2FzdEJ5TW9udGhba2V5XSA9PT0gbW9udGhMYWJlbCxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgbW9udGhzV2l0aEZpc2NhbERpZmZlcmVuY2UgPSBsYWJlbHNJbmRleCArIGZpc2NhbFllYXJTdGFydHNGcm9tIC0gMTtcbiAgICAgICAgY29uc3QgbW9udGhzVG9BZGQgPSBtb250aHNXaXRoRmlzY2FsRGlmZmVyZW5jZSA+PSAxMiA/IG1vbnRoc1dpdGhGaXNjYWxEaWZmZXJlbmNlIC0gMTIgOiBtb250aHNXaXRoRmlzY2FsRGlmZmVyZW5jZTtcblxuICAgICAgICByZXR1cm4gZGF0ZVRvVHJhbnNmb3JtLnV0YygpLnN0YXJ0T2YoJ3llYXInKS5hZGQobW9udGhzVG9BZGQsICdNJyk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyB0cmFuc2Zvcm1ZZWFyRnJvbUZpc2NhbChcbiAgICAgICAgZmlzY2FsWWVhcldpdGhNb250aDogbW9tZW50Lk1vbWVudCxcbiAgICAgICAgZmlzY2FsWWVhclN0YXJ0c0Zyb206IG51bWJlcixcbiAgICAgICAgZmlzY2FsWWVhckJhY2s6IGJvb2xlYW4sXG4gICAgKTogbnVtYmVyIHtcbiAgICAgICAgaWYgKCFmaXNjYWxZZWFyV2l0aE1vbnRoKSByZXR1cm47XG5cbiAgICAgICAgbGV0IGZpc2NhbFllYXJTdGFydE1vbWVudCA9IGZpc2NhbFllYXJXaXRoTW9udGguY2xvbmUoKTtcbiAgICAgICAgaWYgKGZpc2NhbFllYXJCYWNrKSB7XG4gICAgICAgICAgICBpZiAoZmlzY2FsWWVhclN0YXJ0TW9tZW50Lm1vbnRoKCkgKyAxIDwgZmlzY2FsWWVhclN0YXJ0c0Zyb20gJiYgZmlzY2FsWWVhclN0YXJ0c0Zyb20gIT09IDEpIHtcbiAgICAgICAgICAgICAgICBmaXNjYWxZZWFyU3RhcnRNb21lbnQuYWRkKDEsICd5ZWFyJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoZmlzY2FsWWVhclN0YXJ0TW9tZW50Lm1vbnRoKCkgKyAxID49IGZpc2NhbFllYXJTdGFydHNGcm9tICYmIGZpc2NhbFllYXJTdGFydHNGcm9tICE9PSAxKSB7XG4gICAgICAgICAgICAgICAgZmlzY2FsWWVhclN0YXJ0TW9tZW50LnN1YnRyYWN0KDEsICd5ZWFyJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZpc2NhbFllYXJTdGFydE1vbWVudC51bml4KCk7XG4gICAgfVxufVxuIl19
@@ -15,6 +15,15 @@ export class DrPopoverDirective {
15
15
  this.popoverClose = new EventEmitter();
16
16
  this.popoverOpened = new EventEmitter();
17
17
  this.showStateChange = new EventEmitter();
18
+ this.scrollHandler = (event) => {
19
+ // Find the nearest scrollable parent for which scrolling is possible
20
+ const isVerticalScroll = !event.shiftKey;
21
+ const scrollableElement = this.getScrollableElement(event.target, isVerticalScroll);
22
+ // Check if scroll possible and host element places inside scrollable element
23
+ if (scrollableElement && scrollableElement.contains(this.elementRef.nativeElement)) {
24
+ this.closePopover();
25
+ }
26
+ };
18
27
  }
19
28
  togglePopover() {
20
29
  if (this.disabled)
@@ -31,6 +40,7 @@ export class DrPopoverDirective {
31
40
  if (this.popoverRef) {
32
41
  this.popoverRef.close(res);
33
42
  this.popoverRef = null;
43
+ window.removeEventListener('wheel', this.scrollHandler);
34
44
  }
35
45
  }
36
46
  renderPopover() {
@@ -52,10 +62,27 @@ export class DrPopoverDirective {
52
62
  popoverRef.componentRef.instance.popoverOpened.pipe(first()).subscribe(() => {
53
63
  this.popoverOpened.emit();
54
64
  });
65
+ if (!this.manualClosing?.enabled && !this.freezeToContainerSelector) {
66
+ window.addEventListener('wheel', this.scrollHandler);
67
+ }
55
68
  }
56
69
  ngOnDestroy() {
57
70
  this.closePopover();
58
71
  }
72
+ getScrollableElement(element, isVerticalScroll) {
73
+ while (element) {
74
+ const overflow = isVerticalScroll
75
+ ? window.getComputedStyle(element).overflowY
76
+ : window.getComputedStyle(element).overflowX;
77
+ const isScrollable = ['auto', 'scroll'].includes(overflow) &&
78
+ (isVerticalScroll ? element.scrollHeight > element.clientHeight : element.scrollWidth > element.clientWidth);
79
+ if (isScrollable) {
80
+ return element;
81
+ }
82
+ element = element.parentElement;
83
+ }
84
+ return null;
85
+ }
59
86
  /** @nocollapse */ static { this.ɵfac = function DrPopoverDirective_Factory(t) { return new (t || DrPopoverDirective)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1.DrPopoverService)); }; }
60
87
  /** @nocollapse */ static { this.ɵdir = /** @pureOrBreakMyCode */ i0.ɵɵdefineDirective({ type: DrPopoverDirective, selectors: [["", "drPopover", ""]], hostBindings: function DrPopoverDirective_HostBindings(rf, ctx) { if (rf & 1) {
61
88
  i0.ɵɵlistener("click", function DrPopoverDirective_click_HostBindingHandler() { return ctx.togglePopover(); });
@@ -107,4 +134,4 @@ export class DrPopoverDirective {
107
134
  type: HostListener,
108
135
  args: ['click']
109
136
  }] }); })();
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItcG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1wb3BvdmVyL2RyLXBvcG92ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDL0gsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3ZDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFPeEQsTUFBTSxPQUFPLGtCQUFrQjtJQTJCM0IsWUFDWSxVQUFzQixFQUN0QixnQkFBa0M7UUFEbEMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBMUJuQixtQkFBYyxHQUFlLEVBQWdCLENBQUM7UUFFN0MsYUFBUSxHQUFlLFFBQVEsQ0FBQztRQUVuQyxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBRUgsa0JBQWEsR0FBb0IsRUFBRSxDQUFDO1FBRXBDLGtCQUFhLEdBQTBCLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDO1FBUWpFLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUV0QyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFaEMsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBd0IsQ0FBQztJQU81RixDQUFDO0lBR0osYUFBYTtRQUNULElBQUksSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBRTFCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNqQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDdkI7YUFBTTtZQUNILElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7U0FDN0Q7SUFDTCxDQUFDO0lBRUQsWUFBWSxDQUFDLEdBQVM7UUFDbEIsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzNCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1NBQzFCO0lBQ0wsQ0FBQztJQUVPLGFBQWE7UUFDakIsTUFBTSxVQUFVLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUMzRSxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDeEIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztZQUNqQixhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3ZCLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztZQUNuQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIseUJBQXlCLEVBQUUsSUFBSSxDQUFDLHlCQUF5QjtTQUM1RCxDQUFDLENBQUMsQ0FBQztRQUVKLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDL0MsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUM5RCxDQUFDLENBQUMsQ0FBQztRQUVILFVBQVUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3hFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QixDQUFDO3NHQTVFUSxrQkFBa0I7bUdBQWxCLGtCQUFrQjttR0FBbEIsbUJBQWU7Ozt1RkFBZixrQkFBa0I7Y0FKOUIsU0FBUztlQUFDO2dCQUNQLFFBQVEsRUFBRSxhQUFhO2dCQUN2QixRQUFRLEVBQUUsbUJBQW1CO2FBQ2hDOzRGQUV1QixPQUFPO2tCQUExQixLQUFLO21CQUFDLFdBQVc7WUFFUyxjQUFjO2tCQUF4QyxLQUFLO21CQUFDLGtCQUFrQjtZQUVHLFFBQVE7a0JBQW5DLEtBQUs7bUJBQUMsbUJBQW1CO1lBRUQsS0FBSztrQkFBN0IsS0FBSzttQkFBQyxnQkFBZ0I7WUFFVSxhQUFhO2tCQUE3QyxLQUFLO21CQUFDLHdCQUF3QjtZQUVFLGFBQWE7a0JBQTdDLEtBQUs7bUJBQUMsd0JBQXdCO1lBRUYsU0FBUztrQkFBckMsS0FBSzttQkFBQyxvQkFBb0I7WUFFQyxRQUFRO2tCQUFuQyxLQUFLO21CQUFDLG1CQUFtQjtZQUVtQix5QkFBeUI7a0JBQXJFLEtBQUs7bUJBQUMsb0NBQW9DO1lBRWpCLFlBQVk7a0JBQXJDLE1BQU07bUJBQUMsZ0JBQWdCO1lBRUcsYUFBYTtrQkFBdkMsTUFBTTttQkFBQyxpQkFBaUI7WUFFVyxlQUFlO2tCQUFsRCxNQUFNO21CQUFDLDBCQUEwQjtZQVVsQyxhQUFhO2tCQURaLFlBQVk7bUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkRlc3Ryb3ksIE91dHB1dCwgVGVtcGxhdGVSZWYsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRWxQb3NpdGlvbiB9IGZyb20gJy4vLi4vbW9kZWxzL2Ryb3Bkb3duJztcbmltcG9ydCB7IERyUG9wb3ZlclJlZiB9IGZyb20gJy4vZHItcG9wb3Zlci1yZWYnO1xuaW1wb3J0IHsgRHJQb3BvdmVyU2VydmljZSB9IGZyb20gJy4vZHItcG9wb3Zlci5zZXJ2aWNlJztcbmltcG9ydCB7IERyUG9wb3ZlckFsaWdubWVudCwgRHJQb3BvdmVyQ29uZmlnLCBJUG9wb3Zlck1hbnVhbENsb3NpbmcgfSBmcm9tICcuLi9tb2RlbHMvcG9wb3Zlcic7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2RyUG9wb3Zlcl0nLFxuICAgIGV4cG9ydEFzOiAnZHJQb3BvdmVySW5zdGFuY2UnLFxufSlcbmV4cG9ydCBjbGFzcyBEclBvcG92ZXJEaXJlY3RpdmU8VD4gaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCgnZHJQb3BvdmVyJykgY29udGVudDogVGVtcGxhdGVSZWY8VD4gfCBUeXBlPFQ+O1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJDb250ZXh0JykgY29udGVudENvbnRleHQ6IFBhcnRpYWw8VD4gPSB7fSBhcyBQYXJ0aWFsPFQ+O1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJQb3NpdGlvbicpIHBvc2l0aW9uOiBFbFBvc2l0aW9uID0gJ2JvdHRvbSc7XG5cbiAgICBASW5wdXQoJ2RyUG9wb3ZlckNsYXNzJykgY2xhc3MgPSAnJztcblxuICAgIEBJbnB1dCgnZHJQb3BvdmVyT3ZlcmxheUNvbmZpZycpIG92ZXJsYXlDb25maWc6IERyUG9wb3ZlckNvbmZpZyA9IHt9O1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJNYW51YWxDbG9zaW5nJykgbWFudWFsQ2xvc2luZzogSVBvcG92ZXJNYW51YWxDbG9zaW5nID0geyBlbmFibGVkOiBmYWxzZSB9O1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJBbGlnbm1lbnQnKSBhbGlnbm1lbnQ6IERyUG9wb3ZlckFsaWdubWVudDtcblxuICAgIEBJbnB1dCgnZHJQb3BvdmVyRGlzYWJsZWQnKSBkaXNhYmxlZDogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgnZHJQb3BvdmVyRnJlZXplVG9Db250YWluZXJTZWxlY3RvcicpIGZyZWV6ZVRvQ29udGFpbmVyU2VsZWN0b3I6IHN0cmluZztcblxuICAgIEBPdXRwdXQoJ2RyUG9wb3ZlckNsb3NlJykgcG9wb3ZlckNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICBAT3V0cHV0KCdkclBvcG92ZXJPcGVuZWQnKSBwb3BvdmVyT3BlbmVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgQE91dHB1dCgnZHJQb3BvdmVyU2hvd1N0YXRlQ2hhbmdlJykgc2hvd1N0YXRlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjx7IGlzU2hvd246IGJvb2xlYW4gfT4oKTtcblxuICAgIHByaXZhdGUgcG9wb3ZlclJlZjogRHJQb3BvdmVyUmVmPFQ+O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgcHJpdmF0ZSBkclBvcG92ZXJTZXJ2aWNlOiBEclBvcG92ZXJTZXJ2aWNlLFxuICAgICkge31cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgICB0b2dnbGVQb3BvdmVyKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xuXG4gICAgICAgIGlmICh0aGlzLnBvcG92ZXJSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VQb3BvdmVyKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlclBvcG92ZXIoKTtcbiAgICAgICAgICAgIHRoaXMuc2hvd1N0YXRlQ2hhbmdlLmVtaXQoeyBpc1Nob3duOiAhIXRoaXMucG9wb3ZlclJlZiB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNsb3NlUG9wb3ZlcihyZXM/OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucG9wb3ZlclJlZikge1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyUmVmLmNsb3NlKHJlcyk7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJSZWYgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZW5kZXJQb3BvdmVyKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwb3BvdmVyUmVmID0gKHRoaXMucG9wb3ZlclJlZiA9IHRoaXMuZHJQb3BvdmVyU2VydmljZS5vcGVuKHRoaXMuY29udGVudCwge1xuICAgICAgICAgICAgaG9zdFJlZjogdGhpcy5lbGVtZW50UmVmLFxuICAgICAgICAgICAgb3ZlcmxheUNvbmZpZzogdGhpcy5vdmVybGF5Q29uZmlnLFxuICAgICAgICAgICAgY2xhc3M6IHRoaXMuY2xhc3MsXG4gICAgICAgICAgICBtYW51YWxDbG9zaW5nOiB0aGlzLm1hbnVhbENsb3NpbmcsXG4gICAgICAgICAgICBwb3NpdGlvbjogdGhpcy5wb3NpdGlvbixcbiAgICAgICAgICAgIGNvbnRlbnRDb250ZXh0OiB0aGlzLmNvbnRlbnRDb250ZXh0LFxuICAgICAgICAgICAgYWxpZ25tZW50OiB0aGlzLmFsaWdubWVudCxcbiAgICAgICAgICAgIGZyZWV6ZVRvQ29udGFpbmVyU2VsZWN0b3I6IHRoaXMuZnJlZXplVG9Db250YWluZXJTZWxlY3RvcixcbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHBvcG92ZXJSZWYub25DbG9zZS5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyQ2xvc2UuZW1pdChyZXMpO1xuICAgICAgICAgICAgdGhpcy5zaG93U3RhdGVDaGFuZ2UuZW1pdCh7IGlzU2hvd246ICEhdGhpcy5wb3BvdmVyUmVmIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBwb3BvdmVyUmVmLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5wb3BvdmVyT3BlbmVkLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucG9wb3Zlck9wZW5lZC5lbWl0KCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xuICAgIH1cbn1cbiJdfQ==
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItcG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1wb3BvdmVyL2RyLXBvcG92ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDL0gsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3ZDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFPeEQsTUFBTSxPQUFPLGtCQUFrQjtJQTJCM0IsWUFDWSxVQUFzQixFQUN0QixnQkFBa0M7UUFEbEMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBMUJuQixtQkFBYyxHQUFlLEVBQWdCLENBQUM7UUFFN0MsYUFBUSxHQUFlLFFBQVEsQ0FBQztRQUVuQyxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBRUgsa0JBQWEsR0FBb0IsRUFBRSxDQUFDO1FBRXBDLGtCQUFhLEdBQTBCLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDO1FBUWpFLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUV0QyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFaEMsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBd0IsQ0FBQztRQTREdkYsa0JBQWEsR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQzlCLHFFQUFxRTtZQUNyRSxNQUFNLGdCQUFnQixHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztZQUN6QyxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsTUFB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QUFDLGlCQUFpQjtZQUVXLGVBQWU7a0JBQWxELE1BQU07bUJBQUMsMEJBQTBCO1lBVWxDLGFBQWE7a0JBRFosWUFBWTttQkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0LCBUZW1wbGF0ZVJlZiwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZmlyc3QgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBFbFBvc2l0aW9uIH0gZnJvbSAnLi8uLi9tb2RlbHMvZHJvcGRvd24nO1xuaW1wb3J0IHsgRHJQb3BvdmVyUmVmIH0gZnJvbSAnLi9kci1wb3BvdmVyLXJlZic7XG5pbXBvcnQgeyBEclBvcG92ZXJTZXJ2aWNlIH0gZnJvbSAnLi9kci1wb3BvdmVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRHJQb3BvdmVyQWxpZ25tZW50LCBEclBvcG92ZXJDb25maWcsIElQb3BvdmVyTWFudWFsQ2xvc2luZyB9IGZyb20gJy4uL21vZGVscy9wb3BvdmVyJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbZHJQb3BvdmVyXScsXG4gICAgZXhwb3J0QXM6ICdkclBvcG92ZXJJbnN0YW5jZScsXG59KVxuZXhwb3J0IGNsYXNzIERyUG9wb3ZlckRpcmVjdGl2ZTxUPiBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gICAgQElucHV0KCdkclBvcG92ZXInKSBjb250ZW50OiBUZW1wbGF0ZVJlZjxUPiB8IFR5cGU8VD47XG5cbiAgICBASW5wdXQoJ2RyUG9wb3ZlckNvbnRleHQnKSBjb250ZW50Q29udGV4dDogUGFydGlhbDxUPiA9IHt9IGFzIFBhcnRpYWw8VD47XG5cbiAgICBASW5wdXQoJ2RyUG9wb3ZlclBvc2l0aW9uJykgcG9zaXRpb246IEVsUG9zaXRpb24gPSAnYm90dG9tJztcblxuICAgIEBJbnB1dCgnZHJQb3BvdmVyQ2xhc3MnKSBjbGFzcyA9ICcnO1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJPdmVybGF5Q29uZmlnJykgb3ZlcmxheUNvbmZpZzogRHJQb3BvdmVyQ29uZmlnID0ge307XG5cbiAgICBASW5wdXQoJ2RyUG9wb3Zlck1hbnVhbENsb3NpbmcnKSBtYW51YWxDbG9zaW5nOiBJUG9wb3Zlck1hbnVhbENsb3NpbmcgPSB7IGVuYWJsZWQ6IGZhbHNlIH07XG5cbiAgICBASW5wdXQoJ2RyUG9wb3ZlckFsaWdubWVudCcpIGFsaWdubWVudDogRHJQb3BvdmVyQWxpZ25tZW50O1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJEaXNhYmxlZCcpIGRpc2FibGVkOiBib29sZWFuO1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJGcmVlemVUb0NvbnRhaW5lclNlbGVjdG9yJykgZnJlZXplVG9Db250YWluZXJTZWxlY3Rvcjogc3RyaW5nO1xuXG4gICAgQE91dHB1dCgnZHJQb3BvdmVyQ2xvc2UnKSBwb3BvdmVyQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIEBPdXRwdXQoJ2RyUG9wb3Zlck9wZW5lZCcpIHBvcG92ZXJPcGVuZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICBAT3V0cHV0KCdkclBvcG92ZXJTaG93U3RhdGVDaGFuZ2UnKSBzaG93U3RhdGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHsgaXNTaG93bjogYm9vbGVhbiB9PigpO1xuXG4gICAgcHJpdmF0ZSBwb3BvdmVyUmVmOiBEclBvcG92ZXJSZWY8VD47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIGRyUG9wb3ZlclNlcnZpY2U6IERyUG9wb3ZlclNlcnZpY2UsXG4gICAgKSB7fVxuXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICAgIHRvZ2dsZVBvcG92ZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XG5cbiAgICAgICAgaWYgKHRoaXMucG9wb3ZlclJlZikge1xuICAgICAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyUG9wb3ZlcigpO1xuICAgICAgICAgICAgdGhpcy5zaG93U3RhdGVDaGFuZ2UuZW1pdCh7IGlzU2hvd246ICEhdGhpcy5wb3BvdmVyUmVmIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY2xvc2VQb3BvdmVyKHJlcz86IGFueSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wb3BvdmVyUmVmKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJSZWYuY2xvc2UocmVzKTtcbiAgICAgICAgICAgIHRoaXMucG9wb3ZlclJlZiA9IG51bGw7XG4gICAgICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignd2hlZWwnLCB0aGlzLnNjcm9sbEhhbmRsZXIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZW5kZXJQb3BvdmVyKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwb3BvdmVyUmVmID0gKHRoaXMucG9wb3ZlclJlZiA9IHRoaXMuZHJQb3BvdmVyU2VydmljZS5vcGVuKHRoaXMuY29udGVudCwge1xuICAgICAgICAgICAgaG9zdFJlZjogdGhpcy5lbGVtZW50UmVmLFxuICAgICAgICAgICAgb3ZlcmxheUNvbmZpZzogdGhpcy5vdmVybGF5Q29uZmlnLFxuICAgICAgICAgICAgY2xhc3M6IHRoaXMuY2xhc3MsXG4gICAgICAgICAgICBtYW51YWxDbG9zaW5nOiB0aGlzLm1hbnVhbENsb3NpbmcsXG4gICAgICAgICAgICBwb3NpdGlvbjogdGhpcy5wb3NpdGlvbixcbiAgICAgICAgICAgIGNvbnRlbnRDb250ZXh0OiB0aGlzLmNvbnRlbnRDb250ZXh0LFxuICAgICAgICAgICAgYWxpZ25tZW50OiB0aGlzLmFsaWdubWVudCxcbiAgICAgICAgICAgIGZyZWV6ZVRvQ29udGFpbmVyU2VsZWN0b3I6IHRoaXMuZnJlZXplVG9Db250YWluZXJTZWxlY3RvcixcbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHBvcG92ZXJSZWYub25DbG9zZS5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyQ2xvc2UuZW1pdChyZXMpO1xuICAgICAgICAgICAgdGhpcy5zaG93U3RhdGVDaGFuZ2UuZW1pdCh7IGlzU2hvd246ICEhdGhpcy5wb3BvdmVyUmVmIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBwb3BvdmVyUmVmLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5wb3BvdmVyT3BlbmVkLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucG9wb3Zlck9wZW5lZC5lbWl0KCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICghdGhpcy5tYW51YWxDbG9zaW5nPy5lbmFibGVkICYmICF0aGlzLmZyZWV6ZVRvQ29udGFpbmVyU2VsZWN0b3IpIHtcbiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCd3aGVlbCcsIHRoaXMuc2Nyb2xsSGFuZGxlcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNjcm9sbEhhbmRsZXIgPSAoZXZlbnQpID0+IHtcbiAgICAgICAgLy8gRmluZCB0aGUgbmVhcmVzdCBzY3JvbGxhYmxlIHBhcmVudCBmb3Igd2hpY2ggc2Nyb2xsaW5nIGlzIHBvc3NpYmxlXG4gICAgICAgIGNvbnN0IGlzVmVydGljYWxTY3JvbGwgPSAhZXZlbnQuc2hpZnRLZXk7XG4gICAgICAgIGNvbnN0IHNjcm9sbGFibGVFbGVtZW50ID0gdGhpcy5nZXRTY3JvbGxhYmxlRWxlbWVudChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQsIGlzVmVydGljYWxTY3JvbGwpO1xuXG4gICAgICAgIC8vIENoZWNrIGlmIHNjcm9sbCBwb3NzaWJsZSBhbmQgaG9zdCBlbGVtZW50IHBsYWNlcyBpbnNpZGUgc2Nyb2xsYWJsZSBlbGVtZW50XG4gICAgICAgIGlmIChzY3JvbGxhYmxlRWxlbWVudCAmJiBzY3JvbGxhYmxlRWxlbWVudC5jb250YWlucyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VQb3BvdmVyKCk7XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgZ2V0U2Nyb2xsYWJsZUVsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsLCBpc1ZlcnRpY2FsU2Nyb2xsKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgd2hpbGUgKGVsZW1lbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IG92ZXJmbG93ID0gaXNWZXJ0aWNhbFNjcm9sbFxuICAgICAgICAgICAgICAgID8gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkub3ZlcmZsb3dZXG4gICAgICAgICAgICAgICAgOiB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS5vdmVyZmxvd1g7XG4gICAgICAgICAgICBjb25zdCBpc1Njcm9sbGFibGUgPVxuICAgICAgICAgICAgICAgIFsnYXV0bycsICdzY3JvbGwnXS5pbmNsdWRlcyhvdmVyZmxvdykgJiZcbiAgICAgICAgICAgICAgICAoaXNWZXJ0aWNhbFNjcm9sbCA/IGVsZW1lbnQuc2Nyb2xsSGVpZ2h0ID4gZWxlbWVudC5jbGllbnRIZWlnaHQgOiBlbGVtZW50LnNjcm9sbFdpZHRoID4gZWxlbWVudC5jbGllbnRXaWR0aCk7XG5cbiAgICAgICAgICAgIGlmIChpc1Njcm9sbGFibGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZWxlbWVudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZWxlbWVudCA9IGVsZW1lbnQucGFyZW50RWxlbWVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbn1cbiJdfQ==
@@ -2751,19 +2751,22 @@ class DateTagComponent {
2751
2751
  class ForecastTagService {
2752
2752
  static { this.MONTH_DIFF = 1; }
2753
2753
  static { this.forecastByMonth = {
2754
- 0: '0+12',
2755
- 1: '1+11',
2756
- 2: '2+10',
2757
- 3: '3+9',
2758
- 4: '4+8',
2759
- 5: '5+7',
2760
- 6: '6+6',
2761
- 7: '7+5',
2762
- 8: '8+4',
2763
- 9: '9+3',
2764
- 10: '10+2',
2765
- 11: '11+1',
2754
+ '0': '0+12',
2755
+ '1': '1+11',
2756
+ '2': '2+10',
2757
+ '3': '3+9',
2758
+ '4': '4+8',
2759
+ '5': '5+7',
2760
+ '6': '6+6',
2761
+ '7': '7+5',
2762
+ '8': '8+4',
2763
+ '9': '9+3',
2764
+ '10': '10+2',
2765
+ '11': '11+1',
2766
2766
  }; }
2767
+ static getForecastMonthTemplates() {
2768
+ return Array.from(Object.values(ForecastTagService.forecastByMonth));
2769
+ }
2767
2770
  static getFiscalMonthFromDate(date, fiscalYearStartsFrom) {
2768
2771
  const all_months = [];
2769
2772
  for (let i = fiscalYearStartsFrom; i < 13; i++) {
@@ -2790,7 +2793,8 @@ class ForecastTagService {
2790
2793
  return fiscal_year;
2791
2794
  }
2792
2795
  static getForecastLabel(month) {
2793
- return ForecastTagService.forecastByMonth[month - ForecastTagService.MONTH_DIFF];
2796
+ const index = month - ForecastTagService.MONTH_DIFF;
2797
+ return ForecastTagService.forecastByMonth[index];
2794
2798
  }
2795
2799
  static getCalendarDateFromMonthAndFiscalYear(chosenMoment, monthLabel, fiscalYearStartsFrom, fiscalYearBack) {
2796
2800
  const yearWithMonth = ForecastTagService.addMonthsWithoutYearChange(chosenMoment, monthLabel, fiscalYearStartsFrom);
@@ -8244,6 +8248,15 @@ class DrPopoverDirective {
8244
8248
  this.popoverClose = new EventEmitter();
8245
8249
  this.popoverOpened = new EventEmitter();
8246
8250
  this.showStateChange = new EventEmitter();
8251
+ this.scrollHandler = (event) => {
8252
+ // Find the nearest scrollable parent for which scrolling is possible
8253
+ const isVerticalScroll = !event.shiftKey;
8254
+ const scrollableElement = this.getScrollableElement(event.target, isVerticalScroll);
8255
+ // Check if scroll possible and host element places inside scrollable element
8256
+ if (scrollableElement && scrollableElement.contains(this.elementRef.nativeElement)) {
8257
+ this.closePopover();
8258
+ }
8259
+ };
8247
8260
  }
8248
8261
  togglePopover() {
8249
8262
  if (this.disabled)
@@ -8260,6 +8273,7 @@ class DrPopoverDirective {
8260
8273
  if (this.popoverRef) {
8261
8274
  this.popoverRef.close(res);
8262
8275
  this.popoverRef = null;
8276
+ window.removeEventListener('wheel', this.scrollHandler);
8263
8277
  }
8264
8278
  }
8265
8279
  renderPopover() {
@@ -8281,10 +8295,27 @@ class DrPopoverDirective {
8281
8295
  popoverRef.componentRef.instance.popoverOpened.pipe(first()).subscribe(() => {
8282
8296
  this.popoverOpened.emit();
8283
8297
  });
8298
+ if (!this.manualClosing?.enabled && !this.freezeToContainerSelector) {
8299
+ window.addEventListener('wheel', this.scrollHandler);
8300
+ }
8284
8301
  }
8285
8302
  ngOnDestroy() {
8286
8303
  this.closePopover();
8287
8304
  }
8305
+ getScrollableElement(element, isVerticalScroll) {
8306
+ while (element) {
8307
+ const overflow = isVerticalScroll
8308
+ ? window.getComputedStyle(element).overflowY
8309
+ : window.getComputedStyle(element).overflowX;
8310
+ const isScrollable = ['auto', 'scroll'].includes(overflow) &&
8311
+ (isVerticalScroll ? element.scrollHeight > element.clientHeight : element.scrollWidth > element.clientWidth);
8312
+ if (isScrollable) {
8313
+ return element;
8314
+ }
8315
+ element = element.parentElement;
8316
+ }
8317
+ return null;
8318
+ }
8288
8319
  /** @nocollapse */ static { this.ɵfac = function DrPopoverDirective_Factory(t) { return new (t || DrPopoverDirective)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(DrPopoverService)); }; }
8289
8320
  /** @nocollapse */ static { this.ɵdir = /** @pureOrBreakMyCode */ i0.ɵɵdefineDirective({ type: DrPopoverDirective, selectors: [["", "drPopover", ""]], hostBindings: function DrPopoverDirective_HostBindings(rf, ctx) { if (rf & 1) {
8290
8321
  i0.ɵɵlistener("click", function DrPopoverDirective_click_HostBindingHandler() { return ctx.togglePopover(); });