@datarailsshared/datarailsshared 1.6.171 → 1.6.173
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.
- package/datarailsshared-datarailsshared-1.6.173.tgz +0 -0
- package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker_custom-header/dr-date-picker_custom-header.component.mjs +2 -2
- package/esm2022/lib/dr-inputs/date-pickers/dr-fiscal-month-calendar-picker/dr-fiscal-month-calendar-header.component.mjs +2 -2
- package/esm2022/lib/dr-inputs/date-pickers/services/dr-date-picker.service.mjs +37 -1
- package/esm2022/lib/models/datePicker.mjs +5 -1
- package/esm2022/lib/utils/dr-shared-utils.mjs +13 -1
- package/fesm2022/datarailsshared-datarailsshared.mjs +56 -4
- package/fesm2022/datarailsshared-datarailsshared.mjs.map +1 -1
- package/lib/dr-inputs/date-pickers/services/dr-date-picker.service.d.ts +2 -0
- package/lib/models/datePicker.d.ts +5 -1
- package/package.json +1 -1
- package/datarailsshared-datarailsshared-1.6.171.tgz +0 -0
|
Binary file
|
|
@@ -329,11 +329,11 @@ export class DrDatePickerCustomHeaderComponent {
|
|
|
329
329
|
i0.ɵɵtextInterpolate(ctx.periodYearLabel);
|
|
330
330
|
i0.ɵɵadvance(3);
|
|
331
331
|
i0.ɵɵproperty("ngIf", ctx.currentViewIsQuarter);
|
|
332
|
-
} }, dependencies: [i4.NgControlStatus, i4.NgModel, i5.NgClass, i5.NgForOf, i5.NgIf, i6.DrTooltipDirective, i7.DrSelectComponent, i8.DrShowTimeframePipe], styles: ["[_nghost-%COMP%]{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper[_ngcontent-%COMP%]{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date[_ngcontent-%COMP%]{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags[_ngcontent-%COMP%]{display:flex;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%]{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%] .dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected[_ngcontent-%COMP%]{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label[_ngcontent-%COMP%]{cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector.selected[_ngcontent-%COMP%]{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled[_ngcontent-%COMP%], .dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled.selected[_ngcontent-%COMP%]{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}"], changeDetection: 0 }); }
|
|
332
|
+
} }, dependencies: [i4.NgControlStatus, i4.NgModel, i5.NgClass, i5.NgForOf, i5.NgIf, i6.DrTooltipDirective, i7.DrSelectComponent, i8.DrShowTimeframePipe], styles: ["[_nghost-%COMP%]{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper[_ngcontent-%COMP%]{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date[_ngcontent-%COMP%]{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;row-gap:8px;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%]{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%] .dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected[_ngcontent-%COMP%]{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label[_ngcontent-%COMP%]{cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector.selected[_ngcontent-%COMP%]{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled[_ngcontent-%COMP%], .dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled.selected[_ngcontent-%COMP%]{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}"], changeDetection: 0 }); }
|
|
333
333
|
}
|
|
334
334
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrDatePickerCustomHeaderComponent, [{
|
|
335
335
|
type: Component,
|
|
336
|
-
args: [{ selector: 'dr-date-picker_custom-header.component', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"datePickerService.isTimeframeSelectionEnabled\" class=\"dr-datepicker__timeframe-select__wrapper\">\n <div *ngIf=\"datePickerService.isUsingDateTagPresets\" class=\"dr-datepicker-preset-date\">\n <div class=\"dr-datepicker-preset-date__tags\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags--solo': !datePickerService.isUsingTimeFrameSelect }\">\n <div\n *ngFor=\"let tag of datePickerService.availableDateTagPresets\"\n id=\"preset_tag\"\n class=\"dr-datepicker-preset-date__tags__tag\"\n (click)=\"onSelectPresetTag(tag)\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags__tag--selected': tag.key === selectedPresetTag }\"\n [drTooltip]=\"selectedPresetTag === tag.key ? 'Unselect preset' : ''\"\n [drTooltipPosition]=\"'top'\">\n {{ tag.label }}\n </div>\n </div>\n </div>\n <dr-select\n *ngIf=\"datePickerService.isUsingTimeFrameSelect\"\n class=\"dr-datepicker__timeframe-select\"\n [ngModel]=\"selectedTimeframe\"\n [items]=\"timeframeOptions | drShowTimeframePipe: datePickerService.availableTimeframes\"\n bindLabel=\"title\"\n bindValue=\"value\"\n (ngModelChange)=\"setTimeframe($event)\">\n </dr-select>\n</div>\n\n<div class=\"dr-date-paging\">\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(false)\">\n <i class=\"dr-icon-arrow-left presentation_buttons-navigate_input\"></i>\n </div>\n <span class=\"example-header-label\">\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_MONTHS)\">{{ periodMonthLabel + ' ' }}</span>\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_YEARS)\">{{ periodYearLabel }}</span>\n </span>\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(true)\">\n <i class=\"dr-icon-arrow-right presentation_buttons-navigate_input\"></i>\n </div>\n</div>\n<div #quarterlyDatePicker class=\"dr-quarterly-datepicker\" *ngIf=\"currentViewIsQuarter\">\n <div\n *ngFor=\"let quarter of quarters\"\n class=\"quarter-selector\"\n (click)=\"onSelectQuarter(quarter)\"\n [class]=\"quarter === selectedQuarter ? 'selected' : ''\"\n [class.quarter-selector--disabled]=\"isQuarterDisabled(quarter)\">\n Q{{ quarter }}\n </div>\n</div>\n", styles: [":host{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags{display:flex;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo .dr-datepicker-preset-date__tags__tag{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label{cursor:pointer}.dr-quarterly-datepicker{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker .quarter-selector{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker .quarter-selector:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker .quarter-selector.selected{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker .quarter-selector--disabled,.dr-quarterly-datepicker .quarter-selector--disabled.selected{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}\n"] }]
|
|
336
|
+
args: [{ selector: 'dr-date-picker_custom-header.component', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"datePickerService.isTimeframeSelectionEnabled\" class=\"dr-datepicker__timeframe-select__wrapper\">\n <div *ngIf=\"datePickerService.isUsingDateTagPresets\" class=\"dr-datepicker-preset-date\">\n <div class=\"dr-datepicker-preset-date__tags\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags--solo': !datePickerService.isUsingTimeFrameSelect }\">\n <div\n *ngFor=\"let tag of datePickerService.availableDateTagPresets\"\n id=\"preset_tag\"\n class=\"dr-datepicker-preset-date__tags__tag\"\n (click)=\"onSelectPresetTag(tag)\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags__tag--selected': tag.key === selectedPresetTag }\"\n [drTooltip]=\"selectedPresetTag === tag.key ? 'Unselect preset' : ''\"\n [drTooltipPosition]=\"'top'\">\n {{ tag.label }}\n </div>\n </div>\n </div>\n <dr-select\n *ngIf=\"datePickerService.isUsingTimeFrameSelect\"\n class=\"dr-datepicker__timeframe-select\"\n [ngModel]=\"selectedTimeframe\"\n [items]=\"timeframeOptions | drShowTimeframePipe: datePickerService.availableTimeframes\"\n bindLabel=\"title\"\n bindValue=\"value\"\n (ngModelChange)=\"setTimeframe($event)\">\n </dr-select>\n</div>\n\n<div class=\"dr-date-paging\">\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(false)\">\n <i class=\"dr-icon-arrow-left presentation_buttons-navigate_input\"></i>\n </div>\n <span class=\"example-header-label\">\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_MONTHS)\">{{ periodMonthLabel + ' ' }}</span>\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_YEARS)\">{{ periodYearLabel }}</span>\n </span>\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(true)\">\n <i class=\"dr-icon-arrow-right presentation_buttons-navigate_input\"></i>\n </div>\n</div>\n<div #quarterlyDatePicker class=\"dr-quarterly-datepicker\" *ngIf=\"currentViewIsQuarter\">\n <div\n *ngFor=\"let quarter of quarters\"\n class=\"quarter-selector\"\n (click)=\"onSelectQuarter(quarter)\"\n [class]=\"quarter === selectedQuarter ? 'selected' : ''\"\n [class.quarter-selector--disabled]=\"isQuarterDisabled(quarter)\">\n Q{{ quarter }}\n </div>\n</div>\n", styles: [":host{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags{display:flex;flex-wrap:wrap;row-gap:8px;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo .dr-datepicker-preset-date__tags__tag{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label{cursor:pointer}.dr-quarterly-datepicker{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker .quarter-selector{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker .quarter-selector:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker .quarter-selector.selected{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker .quarter-selector--disabled,.dr-quarterly-datepicker .quarter-selector--disabled.selected{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}\n"] }]
|
|
337
337
|
}], function () { return [{ type: i1.MatCalendar }, { type: i2.DateAdapter }, { type: i9.CustomDateFormat, decorators: [{
|
|
338
338
|
type: Inject,
|
|
339
339
|
args: [MAT_DATE_FORMATS]
|
|
@@ -137,10 +137,10 @@ export class DrFiscalMonthCalendarHeaderComponent extends DrDatePickerCustomHead
|
|
|
137
137
|
i0.ɵɵtextInterpolate(ctx.periodYearLabel);
|
|
138
138
|
i0.ɵɵadvance(3);
|
|
139
139
|
i0.ɵɵproperty("ngIf", ctx.currentViewIsQuarter);
|
|
140
|
-
} }, dependencies: [i1.NgControlStatus, i1.NgModel, i2.NgClass, i2.NgForOf, i2.NgIf, i3.DrTooltipDirective, i4.DrSelectComponent, i5.DrShowTimeframePipe], styles: ["[_nghost-%COMP%]{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper[_ngcontent-%COMP%]{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date[_ngcontent-%COMP%]{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags[_ngcontent-%COMP%]{display:flex;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%]{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%] .dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected[_ngcontent-%COMP%]{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label[_ngcontent-%COMP%]{cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector.selected[_ngcontent-%COMP%]{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled[_ngcontent-%COMP%], .dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled.selected[_ngcontent-%COMP%]{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}"], changeDetection: 0 }); }
|
|
140
|
+
} }, dependencies: [i1.NgControlStatus, i1.NgModel, i2.NgClass, i2.NgForOf, i2.NgIf, i3.DrTooltipDirective, i4.DrSelectComponent, i5.DrShowTimeframePipe], styles: ["[_nghost-%COMP%]{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper[_ngcontent-%COMP%]{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date[_ngcontent-%COMP%]{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;row-gap:8px;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%]{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%] .dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected[_ngcontent-%COMP%]{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label[_ngcontent-%COMP%]{cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector.selected[_ngcontent-%COMP%]{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled[_ngcontent-%COMP%], .dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled.selected[_ngcontent-%COMP%]{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}"], changeDetection: 0 }); }
|
|
141
141
|
}
|
|
142
142
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrFiscalMonthCalendarHeaderComponent, [{
|
|
143
143
|
type: Component,
|
|
144
|
-
args: [{ selector: 'dr-fiscal-month-calendar-header.component', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"datePickerService.isTimeframeSelectionEnabled\" class=\"dr-datepicker__timeframe-select__wrapper\">\n <div *ngIf=\"datePickerService.isUsingDateTagPresets\" class=\"dr-datepicker-preset-date\">\n <div class=\"dr-datepicker-preset-date__tags\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags--solo': !datePickerService.isUsingTimeFrameSelect }\">\n <div\n *ngFor=\"let tag of datePickerService.availableDateTagPresets\"\n id=\"preset_tag\"\n class=\"dr-datepicker-preset-date__tags__tag\"\n (click)=\"onSelectPresetTag(tag)\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags__tag--selected': tag.key === selectedPresetTag }\"\n [drTooltip]=\"selectedPresetTag === tag.key ? 'Unselect preset' : ''\"\n [drTooltipPosition]=\"'top'\">\n {{ tag.label }}\n </div>\n </div>\n </div>\n <dr-select\n *ngIf=\"datePickerService.isUsingTimeFrameSelect\"\n class=\"dr-datepicker__timeframe-select\"\n [ngModel]=\"selectedTimeframe\"\n [items]=\"timeframeOptions | drShowTimeframePipe: datePickerService.availableTimeframes\"\n bindLabel=\"title\"\n bindValue=\"value\"\n (ngModelChange)=\"setTimeframe($event)\">\n </dr-select>\n</div>\n\n<div class=\"dr-date-paging\">\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(false)\">\n <i class=\"dr-icon-arrow-left presentation_buttons-navigate_input\"></i>\n </div>\n <span class=\"example-header-label\">\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_MONTHS)\">{{ periodMonthLabel + ' ' }}</span>\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_YEARS)\">{{ periodYearLabel }}</span>\n </span>\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(true)\">\n <i class=\"dr-icon-arrow-right presentation_buttons-navigate_input\"></i>\n </div>\n</div>\n<div #quarterlyDatePicker class=\"dr-quarterly-datepicker\" *ngIf=\"currentViewIsQuarter\">\n <div\n *ngFor=\"let quarter of quarters\"\n class=\"quarter-selector\"\n (click)=\"onSelectQuarter(quarter)\"\n [class]=\"quarter === selectedQuarter ? 'selected' : ''\"\n [class.quarter-selector--disabled]=\"isQuarterDisabled(quarter)\">\n Q{{ quarter }}\n </div>\n</div>\n", styles: [":host{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags{display:flex;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo .dr-datepicker-preset-date__tags__tag{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label{cursor:pointer}.dr-quarterly-datepicker{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker .quarter-selector{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker .quarter-selector:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker .quarter-selector.selected{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker .quarter-selector--disabled,.dr-quarterly-datepicker .quarter-selector--disabled.selected{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}\n"] }]
|
|
144
|
+
args: [{ selector: 'dr-fiscal-month-calendar-header.component', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"datePickerService.isTimeframeSelectionEnabled\" class=\"dr-datepicker__timeframe-select__wrapper\">\n <div *ngIf=\"datePickerService.isUsingDateTagPresets\" class=\"dr-datepicker-preset-date\">\n <div class=\"dr-datepicker-preset-date__tags\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags--solo': !datePickerService.isUsingTimeFrameSelect }\">\n <div\n *ngFor=\"let tag of datePickerService.availableDateTagPresets\"\n id=\"preset_tag\"\n class=\"dr-datepicker-preset-date__tags__tag\"\n (click)=\"onSelectPresetTag(tag)\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags__tag--selected': tag.key === selectedPresetTag }\"\n [drTooltip]=\"selectedPresetTag === tag.key ? 'Unselect preset' : ''\"\n [drTooltipPosition]=\"'top'\">\n {{ tag.label }}\n </div>\n </div>\n </div>\n <dr-select\n *ngIf=\"datePickerService.isUsingTimeFrameSelect\"\n class=\"dr-datepicker__timeframe-select\"\n [ngModel]=\"selectedTimeframe\"\n [items]=\"timeframeOptions | drShowTimeframePipe: datePickerService.availableTimeframes\"\n bindLabel=\"title\"\n bindValue=\"value\"\n (ngModelChange)=\"setTimeframe($event)\">\n </dr-select>\n</div>\n\n<div class=\"dr-date-paging\">\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(false)\">\n <i class=\"dr-icon-arrow-left presentation_buttons-navigate_input\"></i>\n </div>\n <span class=\"example-header-label\">\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_MONTHS)\">{{ periodMonthLabel + ' ' }}</span>\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_YEARS)\">{{ periodYearLabel }}</span>\n </span>\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(true)\">\n <i class=\"dr-icon-arrow-right presentation_buttons-navigate_input\"></i>\n </div>\n</div>\n<div #quarterlyDatePicker class=\"dr-quarterly-datepicker\" *ngIf=\"currentViewIsQuarter\">\n <div\n *ngFor=\"let quarter of quarters\"\n class=\"quarter-selector\"\n (click)=\"onSelectQuarter(quarter)\"\n [class]=\"quarter === selectedQuarter ? 'selected' : ''\"\n [class.quarter-selector--disabled]=\"isQuarterDisabled(quarter)\">\n Q{{ quarter }}\n </div>\n</div>\n", styles: [":host{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags{display:flex;flex-wrap:wrap;row-gap:8px;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo .dr-datepicker-preset-date__tags__tag{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label{cursor:pointer}.dr-quarterly-datepicker{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker .quarter-selector{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker .quarter-selector:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker .quarter-selector.selected{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker .quarter-selector--disabled,.dr-quarterly-datepicker .quarter-selector--disabled.selected{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}\n"] }]
|
|
145
145
|
}], null, null); })();
|
|
146
146
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZmlzY2FsLW1vbnRoLWNhbGVuZGFyLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1pbnB1dHMvZGF0ZS1waWNrZXJzL2RyLWZpc2NhbC1tb250aC1jYWxlbmRhci1waWNrZXIvZHItZmlzY2FsLW1vbnRoLWNhbGVuZGFyLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1pbnB1dHMvZGF0ZS1waWNrZXJzL2RyLWRhdGUtcGlja2VyX2N1c3RvbS1oZWFkZXIvZHItZGF0ZS1waWNrZXJfY3VzdG9tLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx3RUFBd0UsQ0FBQztBQUMzSCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7SUNFL0IsK0JBT2dDO0lBSDVCLHFQQUFTLGVBQUEsZ0NBQXNCLENBQUEsSUFBQztJQUloQyxZQUNKO0lBQUEsaUJBQU07Ozs7SUFKRiw2RkFBK0YsK0VBQUEsNEJBQUE7SUFHL0YsZUFDSjtJQURJLDZDQUNKOzs7O0lBWlIsK0JBQXVGLGNBQUE7SUFHL0Usa0dBU007SUFDVixpQkFBTSxFQUFBOzs7SUFYRCxlQUFrRztJQUFsRyxzR0FBa0c7SUFFL0UsZUFBNEM7SUFBNUMsMEVBQTRDOzs7O0lBV3hFLHFDQU8yQztJQUF2Qyx1TkFBaUIsZUFBQSwyQkFBb0IsQ0FBQSxJQUFDOztJQUMxQyxpQkFBWTs7O0lBTFIsa0RBQTZCLHNHQUFBOzs7SUFuQnJDLDhCQUE0RztJQUN4RywyRkFjTTtJQUNOLHdHQVFZO0lBQ2hCLGlCQUFNOzs7SUF4QkksZUFBNkM7SUFBN0MscUVBQTZDO0lBZ0I5QyxlQUE4QztJQUE5QyxzRUFBOEM7Ozs7SUF1Qm5ELCtCQUtvRTtJQUZoRSx1UEFBUyxlQUFBLG9DQUF3QixDQUFBLElBQUM7SUFHbEMsWUFDSjtJQUFBLGlCQUFNOzs7O0lBSEYsd0VBQXVEO0lBQ3ZELG9GQUErRDtJQUMvRCxlQUNKO0lBREksNkNBQ0o7OztJQVJKLG1DQUF1RjtJQUNuRiw2RkFPTTtJQUNWLGlCQUFNOzs7SUFQc0IsZUFBVztJQUFYLHlDQUFXOztBRC9CdkMsTUFBTSxPQUFPLG9DQUE2QyxTQUFRLGlDQUF5QztJQUM5RixRQUFRO1FBQ2IsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUU7Z0JBQzlCLElBQUksQ0FBQyx5Q0FBeUMsRUFBRSxDQUFDO2FBQ3BEO1lBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRTtnQkFDekIsSUFBSSxDQUFDLDJDQUEyQyxFQUFFLENBQUM7YUFDdEQ7WUFDRCxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCwyQ0FBMkM7UUFDdkMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRTtZQUN6QixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsZ0NBQWdDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUM3RyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQztZQUNuRCxJQUFJLENBQUMsU0FBaUIsQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztTQUM3RDtJQUNMLENBQUM7SUFFa0IsMkJBQTJCO1FBQzFDLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN2RSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDdkIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRTtnQkFDOUIsSUFBSSxDQUFDLHlDQUF5QyxFQUFFLENBQUM7YUFDcEQ7WUFFRCxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFO2dCQUN6QixJQUFJLENBQUMsMkNBQTJDLEVBQUUsQ0FBQzthQUN0RDtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzt3VkFoQ1Esb0NBQW9DLFNBQXBDLG9DQUFvQzttR0FBcEMsb0NBQW9DO1lDVmpELHFGQXlCTTtZQUVOLDhCQUE0QixhQUFBO1lBQ3FCLDhHQUFTLGtCQUFjLEtBQUssQ0FBQyxJQUFDO1lBQ3ZFLHVCQUFzRTtZQUMxRSxpQkFBTTtZQUNOLCtCQUFtQyxjQUFBO1lBQ3pCLCtHQUFTLCtEQUF1RCxJQUFDO1lBQUMsWUFBNEI7WUFBQSxpQkFBTztZQUMzRywrQkFBdUU7WUFBakUsK0dBQVMsOERBQXNELElBQUM7WUFBQyxZQUFxQjtZQUFBLGlCQUFPLEVBQUE7WUFFdkcsOEJBQTJFO1lBQTlCLDhHQUFTLGtCQUFjLElBQUksQ0FBQyxJQUFDO1lBQ3RFLHdCQUF1RTtZQUMzRSxpQkFBTSxFQUFBO1lBRVYsdUZBU007O1lBaERBLHdFQUFtRDtZQWdDdUIsZUFBNEI7WUFBNUIsZ0RBQTRCO1lBQzdCLGVBQXFCO1lBQXJCLHlDQUFxQjtZQU16QyxlQUEwQjtZQUExQiwrQ0FBMEI7Ozt1RkQ3QnhFLG9DQUFvQztjQU5oRCxTQUFTOzJCQUNJLDJDQUEyQyxtQkFHcEMsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERyRGF0ZVBpY2tlckN1c3RvbUhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4uL2RyLWRhdGUtcGlja2VyX2N1c3RvbS1oZWFkZXIvZHItZGF0ZS1waWNrZXJfY3VzdG9tLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RyLWZpc2NhbC1tb250aC1jYWxlbmRhci1oZWFkZXIuY29tcG9uZW50JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4uL2RyLWRhdGUtcGlja2VyX2N1c3RvbS1oZWFkZXIvZHItZGF0ZS1waWNrZXJfY3VzdG9tLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4uL2RyLWRhdGUtcGlja2VyX2N1c3RvbS1oZWFkZXIvZHItZGF0ZS1waWNrZXJfY3VzdG9tLWhlYWRlci5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBEckZpc2NhbE1vbnRoQ2FsZW5kYXJIZWFkZXJDb21wb25lbnQ8TW9tZW50PiBleHRlbmRzIERyRGF0ZVBpY2tlckN1c3RvbUhlYWRlckNvbXBvbmVudDxNb21lbnQ+IHtcbiAgICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5fY2FsZW5kYXIubXVsdGlZZWFyVmlldykge1xuICAgICAgICAgICAgICAgIHRoaXMudHJhbnNmb3JtRGF0ZUluTXVsdGl5ZWFyVmlld0FjY29yZGluZ1RvRlkoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLl9jYWxlbmRhci55ZWFyVmlldykge1xuICAgICAgICAgICAgICAgIHRoaXMudHJhbnNmb3JtRGF0ZUluRmlzY2FsTW9udGhWaWV3QWNjb3JkaW5nVG9GWSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5nb1RvQ3VycmVudERhdGVJblZpZXdCeUZZKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHRyYW5zZm9ybURhdGVJbkZpc2NhbE1vbnRoVmlld0FjY29yZGluZ1RvRlkoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9jYWxlbmRhci5zZWxlY3RlZCkge1xuICAgICAgICAgICAgdGhpcy5fY2FsZW5kYXIuc2VsZWN0ZWQgPSB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnN1YnRyYWN0RmlzY2FsWWVhck1vbnRoc0Zyb21EYXRlKHRoaXMuX2NhbGVuZGFyLmFjdGl2ZURhdGUpO1xuICAgICAgICAgICAgdGhpcy5fY2FsZW5kYXIuYWN0aXZlRGF0ZSA9IHRoaXMuX2NhbGVuZGFyLnNlbGVjdGVkO1xuICAgICAgICAgICAgKHRoaXMuX2NhbGVuZGFyIGFzIGFueSkuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIGxpc3RlblRvQ2FsZW5kYXJWaWV3Q2hhbmdlcygpIHtcbiAgICAgICAgdGhpcy5fY2FsZW5kYXIudmlld0NoYW5nZWQucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveWVkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2V0UGVyaW9kTGFiZWxzKCk7XG4gICAgICAgICAgICBpZiAodGhpcy5fY2FsZW5kYXIubXVsdGlZZWFyVmlldykge1xuICAgICAgICAgICAgICAgIHRoaXMudHJhbnNmb3JtRGF0ZUluTXVsdGl5ZWFyVmlld0FjY29yZGluZ1RvRlkoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHRoaXMuX2NhbGVuZGFyLnllYXJWaWV3KSB7XG4gICAgICAgICAgICAgICAgdGhpcy50cmFuc2Zvcm1EYXRlSW5GaXNjYWxNb250aFZpZXdBY2NvcmRpbmdUb0ZZKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJkYXRlUGlja2VyU2VydmljZS5pc1RpbWVmcmFtZVNlbGVjdGlvbkVuYWJsZWRcIiBjbGFzcz1cImRyLWRhdGVwaWNrZXJfX3RpbWVmcmFtZS1zZWxlY3RfX3dyYXBwZXJcIj5cbiAgICA8ZGl2ICpuZ0lmPVwiZGF0ZVBpY2tlclNlcnZpY2UuaXNVc2luZ0RhdGVUYWdQcmVzZXRzXCIgY2xhc3M9XCJkci1kYXRlcGlja2VyLXByZXNldC1kYXRlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkci1kYXRlcGlja2VyLXByZXNldC1kYXRlX190YWdzXCJcbiAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdkci1kYXRlcGlja2VyLXByZXNldC1kYXRlX190YWdzLS1zb2xvJzogIWRhdGVQaWNrZXJTZXJ2aWNlLmlzVXNpbmdUaW1lRnJhbWVTZWxlY3QgfVwiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCB0YWcgb2YgZGF0ZVBpY2tlclNlcnZpY2UuYXZhaWxhYmxlRGF0ZVRhZ1ByZXNldHNcIlxuICAgICAgICAgICAgICAgIGlkPVwicHJlc2V0X3RhZ1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJkci1kYXRlcGlja2VyLXByZXNldC1kYXRlX190YWdzX190YWdcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNlbGVjdFByZXNldFRhZyh0YWcpXCJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdkci1kYXRlcGlja2VyLXByZXNldC1kYXRlX190YWdzX190YWctLXNlbGVjdGVkJzogdGFnLmtleSA9PT0gc2VsZWN0ZWRQcmVzZXRUYWcgfVwiXG4gICAgICAgICAgICAgICAgW2RyVG9vbHRpcF09XCJzZWxlY3RlZFByZXNldFRhZyA9PT0gdGFnLmtleSA/ICdVbnNlbGVjdCBwcmVzZXQnIDogJydcIlxuICAgICAgICAgICAgICAgIFtkclRvb2x0aXBQb3NpdGlvbl09XCIndG9wJ1wiPlxuICAgICAgICAgICAgICAgIHt7IHRhZy5sYWJlbCB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkci1zZWxlY3RcbiAgICAgICAgKm5nSWY9XCJkYXRlUGlja2VyU2VydmljZS5pc1VzaW5nVGltZUZyYW1lU2VsZWN0XCJcbiAgICAgICAgY2xhc3M9XCJkci1kYXRlcGlja2VyX190aW1lZnJhbWUtc2VsZWN0XCJcbiAgICAgICAgW25nTW9kZWxdPVwic2VsZWN0ZWRUaW1lZnJhbWVcIlxuICAgICAgICBbaXRlbXNdPVwidGltZWZyYW1lT3B0aW9ucyB8IGRyU2hvd1RpbWVmcmFtZVBpcGU6IGRhdGVQaWNrZXJTZXJ2aWNlLmF2YWlsYWJsZVRpbWVmcmFtZXNcIlxuICAgICAgICBiaW5kTGFiZWw9XCJ0aXRsZVwiXG4gICAgICAgIGJpbmRWYWx1ZT1cInZhbHVlXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2V0VGltZWZyYW1lKCRldmVudClcIj5cbiAgICA8L2RyLXNlbGVjdD5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiZHItZGF0ZS1wYWdpbmdcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZHItZGF0ZS1wYWdpbmcgZmxpcC1wYWdlLWJ1dHRvblwiIChjbGljayk9XCJwYWdpbmdDbGlja2VkKGZhbHNlKVwiPlxuICAgICAgICA8aSBjbGFzcz1cImRyLWljb24tYXJyb3ctbGVmdCBwcmVzZW50YXRpb25fYnV0dG9ucy1uYXZpZ2F0ZV9pbnB1dFwiPjwvaT5cbiAgICA8L2Rpdj5cbiAgICA8c3BhbiBjbGFzcz1cImV4YW1wbGUtaGVhZGVyLWxhYmVsXCI+XG4gICAgICAgIDxzcGFuIChjbGljayk9XCJzd2l0Y2hWaWV3T25DbGlja09uUGVyaW9kTGFiZWwoY2FsZW5kYXJWaWV3LkZPUl9NT05USFMpXCI+e3sgcGVyaW9kTW9udGhMYWJlbCArICcgJyB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKGNsaWNrKT1cInN3aXRjaFZpZXdPbkNsaWNrT25QZXJpb2RMYWJlbChjYWxlbmRhclZpZXcuRk9SX1lFQVJTKVwiPnt7IHBlcmlvZFllYXJMYWJlbCB9fTwvc3Bhbj5cbiAgICA8L3NwYW4+XG4gICAgPGRpdiBjbGFzcz1cImRyLWRhdGUtcGFnaW5nIGZsaXAtcGFnZS1idXR0b25cIiAoY2xpY2spPVwicGFnaW5nQ2xpY2tlZCh0cnVlKVwiPlxuICAgICAgICA8aSBjbGFzcz1cImRyLWljb24tYXJyb3ctcmlnaHQgcHJlc2VudGF0aW9uX2J1dHRvbnMtbmF2aWdhdGVfaW5wdXRcIj48L2k+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgI3F1YXJ0ZXJseURhdGVQaWNrZXIgY2xhc3M9XCJkci1xdWFydGVybHktZGF0ZXBpY2tlclwiICpuZ0lmPVwiY3VycmVudFZpZXdJc1F1YXJ0ZXJcIj5cbiAgICA8ZGl2XG4gICAgICAgICpuZ0Zvcj1cImxldCBxdWFydGVyIG9mIHF1YXJ0ZXJzXCJcbiAgICAgICAgY2xhc3M9XCJxdWFydGVyLXNlbGVjdG9yXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uU2VsZWN0UXVhcnRlcihxdWFydGVyKVwiXG4gICAgICAgIFtjbGFzc109XCJxdWFydGVyID09PSBzZWxlY3RlZFF1YXJ0ZXIgPyAnc2VsZWN0ZWQnIDogJydcIlxuICAgICAgICBbY2xhc3MucXVhcnRlci1zZWxlY3Rvci0tZGlzYWJsZWRdPVwiaXNRdWFydGVyRGlzYWJsZWQocXVhcnRlcilcIj5cbiAgICAgICAgUXt7IHF1YXJ0ZXIgfX1cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -195,6 +195,22 @@ export class DrDatePickerService {
|
|
|
195
195
|
this.updateTimeframeAndFormat(DateFromats.MONTH_YEAR_FORMAT);
|
|
196
196
|
this.selectDateInCalendarMonthView(date, calender);
|
|
197
197
|
break;
|
|
198
|
+
case DateTags.THIS_QUARTER:
|
|
199
|
+
this.updateTimeframeAndFormat(DateFromats.QUARTER_FORMAT);
|
|
200
|
+
this.selectDateInCalendarQuarterView(date, calender);
|
|
201
|
+
break;
|
|
202
|
+
case DateTags.PREV_QUARTER:
|
|
203
|
+
this.updateTimeframeAndFormat(DateFromats.QUARTER_FORMAT);
|
|
204
|
+
this.selectDateInCalendarQuarterView(date, calender);
|
|
205
|
+
break;
|
|
206
|
+
case DateTags.THIS_YEAR:
|
|
207
|
+
this.updateTimeframeAndFormat(DateFromats.YEAR_FORMAT);
|
|
208
|
+
this.selectDateInCalendarYearView(date, calender);
|
|
209
|
+
break;
|
|
210
|
+
case DateTags.PREV_YEAR:
|
|
211
|
+
this.updateTimeframeAndFormat(DateFromats.YEAR_FORMAT);
|
|
212
|
+
this.selectDateInCalendarYearView(date, calender);
|
|
213
|
+
break;
|
|
198
214
|
}
|
|
199
215
|
}
|
|
200
216
|
this.presetTag$.next(tag);
|
|
@@ -210,6 +226,26 @@ export class DrDatePickerService {
|
|
|
210
226
|
}
|
|
211
227
|
});
|
|
212
228
|
}
|
|
229
|
+
selectDateInCalendarQuarterView(date, calender) {
|
|
230
|
+
setTimeout(() => {
|
|
231
|
+
const yearView = calender.yearView;
|
|
232
|
+
if (yearView) {
|
|
233
|
+
yearView._activeDate = date;
|
|
234
|
+
yearView._selected = date;
|
|
235
|
+
yearView._init();
|
|
236
|
+
}
|
|
237
|
+
});
|
|
238
|
+
}
|
|
239
|
+
selectDateInCalendarYearView(date, calender) {
|
|
240
|
+
setTimeout(() => {
|
|
241
|
+
const multiYearView = calender.multiYearView;
|
|
242
|
+
if (multiYearView) {
|
|
243
|
+
multiYearView._activeDate = date;
|
|
244
|
+
multiYearView._selectedYear = date.year();
|
|
245
|
+
multiYearView._init();
|
|
246
|
+
}
|
|
247
|
+
});
|
|
248
|
+
}
|
|
213
249
|
resetPresetTag() {
|
|
214
250
|
if (!this.keepPresetTag) {
|
|
215
251
|
this.presetTag$.next(null);
|
|
@@ -224,4 +260,4 @@ export class DrDatePickerService {
|
|
|
224
260
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrDatePickerService, [{
|
|
225
261
|
type: Injectable
|
|
226
262
|
}], null, null); })();
|
|
227
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZGF0ZS1waWNrZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWlucHV0cy9kYXRlLXBpY2tlcnMvc2VydmljZXMvZHItZGF0ZS1waWNrZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUEyQixlQUFlLEVBQW9CLE1BQU0sNEJBQTRCLENBQUM7QUFDL0gsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQy9ELE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUc3RCxNQUFNLE9BQU8sbUJBQW1CO0lBRGhDO1FBRUksZ0NBQTJCLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGdCQUFXLEdBQXNDLElBQUksZUFBZSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzRixlQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO1FBVTFGLG9FQUFvRTtRQUNwRSwrRUFBK0U7UUFDL0UsaUVBQWlFO1FBQ2pFLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBUyxXQUFXLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUUzRSxvQkFBZSxHQUFHLElBQUksT0FBTyxFQUFVLENBQUM7UUFDL0IseUJBQW9CLEdBQUcsSUFBSSxPQUFPLEVBQVksQ0FBQztRQUN4RCx5QkFBb0IsR0FBRyxJQUFJLE9B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QyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVNLDZCQUE2QixDQUFDLElBQVksRUFBRSxRQUFhO1FBQzVELFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDWixNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsU0FBZ0IsQ0FBQztZQUM1QyxJQUFJLFNBQVMsRUFBRTtnQkFDWCxTQUFTLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztnQkFDN0IsU0FBUyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7Z0JBQzNCLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUNyQjtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLGNBQWM7UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDOUI7YUFBTTtZQUNILElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO1NBQzlCO0lBQ0wsQ0FBQzt1R0FoUFEsbUJBQW1CO3NHQUFuQixtQkFBbUIsV0FBbkIsbUJBQW1COzt1RkFBbkIsbUJBQW1CO2NBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRDYWxlbmRhciwgTWF0RGF0ZXBpY2tlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuaW1wb3J0IHsgTW9tZW50IH0gZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZGlzdGluY3RVbnRpbENoYW5nZWQsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERhdGVGcm9tYXRzLCBEYXRlVGFncywgSURhdGVQaWNrZXJGb3JtYXRDb25maWcsIFRpbWVmcmFtZU9wdGlvbiwgVFRpbWVmcmFtZU9wdGlvbiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9kYXRlUGlja2VyJztcbmltcG9ydCB7IERyU2hhcmVkVXRpbHMgfSBmcm9tICcuLi8uLi8uLi91dGlscy9kci1zaGFyZWQtdXRpbHMnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgV2Vla0luZm8gfSBmcm9tICcuLi93ZWVrLXNlbGVjdG9yL3dlZWstc2VsZWN0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IFBSRVNFVF9UQUdTX0xJU1QgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvY29uc3RhbnRzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERyRGF0ZVBpY2tlclNlcnZpY2Uge1xuICAgIGlzVGltZWZyYW1lU2VsZWN0aW9uRW5hYmxlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX3RpbWVmcmFtZSQ6IEJlaGF2aW9yU3ViamVjdDxUVGltZWZyYW1lT3B0aW9uPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoVGltZWZyYW1lT3B0aW9uLkRBWSk7XG4gICAgcHVibGljIHJlYWRvbmx5IHRpbWVmcmFtZSQgPSB0aGlzLl90aW1lZnJhbWUkLmFzT2JzZXJ2YWJsZSgpLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XG5cbiAgICBwdWJsaWMgZ2V0IHRpbWVmcmFtZSgpOiBUVGltZWZyYW1lT3B0aW9uIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RpbWVmcmFtZSQuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0IHRpbWVmcmFtZSh2YWx1ZTogVFRpbWVmcmFtZU9wdGlvbikge1xuICAgICAgICB0aGlzLl90aW1lZnJhbWUkLm5leHQodmFsdWUpO1xuICAgIH1cblxuICAgIC8vIFRPRE86IGhlcmUgd2UgY2FuIGhhdmUgaW5jb25zaXN0ZW5jeSBiZXR3ZWVuIGZvcm1hdCBhbmQgdGltZWZyYW1lXG4gICAgLy8gd2UgbmVlZCB0byBnZXQgcmlkIG9mIGEgc2VwYXJhdGUgc3ViamVjdCBhbmQgdXNlIHBpcGUgZnJvbSB0aW1lZnJhbWUkIGZvciBpdFxuICAgIC8vIG1ha2luZyBASW5wdXQoKSBmb3JtYXQgaW4gY29tcG9uZW50IGp1c3Qgc2V0dGluZyB0aGUgdGltZWZyYW1lXG4gICAgZm9ybWF0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPihEYXRlRnJvbWF0cy5NQVRfREVGQVVMVF9EQVRFX0ZPUk1BVCk7XG5cbiAgICB1cGRhdGVkUXVhcnRlciQgPSBuZXcgU3ViamVjdDxNb21lbnQ+KCk7XG4gICAgcmVhZG9ubHkgd2Vla1NlbGVjdGlvbkNoYW5nZSQgPSBuZXcgU3ViamVjdDxXZWVrSW5mbz4oKTtcbiAgICB1cGRhdGVkRGF0ZUFuZENsb3NlJCA9IG5ldyBTdWJqZWN0PE1vbWVudD4oKTtcbiAgICBkYXRlUGlja2VySW5zdGFuY2U6IE1hdERhdGVwaWNrZXI8YW55PjtcbiAgICBpc1VzaW5nRGF0ZVRhZ1ByZXNldHM6IGJvb2xlYW47XG4gICAgaXNVc2luZ1RpbWVGcmFtZVNlbGVjdDogYm9vbGVhbiA9IHRydWU7XG4gICAgcHJlc2V0VGFnJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RGF0ZVRhZ3M+KCcnIGFzIERhdGVUYWdzKTtcbiAgICBvblNhbWVEYXlTZWxlY3RlZEluQ2FsZW5kYXIkID0gbmV3IFN1YmplY3Q8TW9tZW50PigpO1xuICAgIGtlZXBQcmVzZXRUYWcgPSBmYWxzZTtcbiAgICBpc1ZhbHVlVXBkYXRpbmcgPSBmYWxzZTtcbiAgICBhdmFpbGFibGVEYXRlVGFnUHJlc2V0cyA9IFBSRVNFVF9UQUdTX0xJU1Q7XG4gICAgYXZhaWxhYmxlVGltZWZyYW1lcyA9IFtcbiAgICAgICAgVGltZWZyYW1lT3B0aW9uLkRBWSxcbiAgICAgICAgVGltZWZyYW1lT3B0aW9uLldFRUssXG4gICAgICAgIFRpbWVmcmFtZU9wdGlvbi5NT05USCxcbiAgICAgICAgVGltZWZyYW1lT3B0aW9uLlFVQVJURVIsXG4gICAgICAgIFRpbWVmcmFtZU9wdGlvbi5ZRUFSLFxuICAgIF07XG5cbiAgICBwdWJsaWMgZm9ybWF0Q29uZmlnOiBJRGF0ZVBpY2tlckZvcm1hdENvbmZpZyA9IHtcbiAgICAgICAgZGF5OiBEYXRlRnJvbWF0cy5NQVRfREVGQVVMVF9EQVRFX0ZPUk1BVCxcbiAgICAgICAgbW9udGg6IERhdGVGcm9tYXRzLk1PTlRIX1lFQVJfRk9STUFULFxuICAgICAgICB5ZWFyOiBEYXRlRnJvbWF0cy5ZRUFSX0ZPUk1BVCxcbiAgICAgICAgcXVhcnRlcjogRGF0ZUZyb21hdHMuUVVBUlRFUl9GT1JNQVQsXG4gICAgICAgIHdlZWs6IERhdGVGcm9tYXRzLldFRUtfRk9STUFULFxuICAgIH07XG4gICAgcHVibGljIGNhbGVuZGFySW5zdGFuY2U6IE1hdENhbGVuZGFyPGFueT47XG4gICAgcHVibGljIG1heERhdGU6IE1vbWVudDtcbiAgICBwdWJsaWMgZmlzY2FsWWVhck1vbnRoc01vZGlmaWVyID0gMDtcbiAgICBwdWJsaWMgZmlzY2FsWWVhckJhY2sgPSBmYWxzZTtcbiAgICBwdWJsaWMgZGF0ZXBpY2tlckZpbHRlcjogKG1vbWVudDogTW9tZW50KSA9PiBib29sZWFuO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBfaW5uZXJWYWx1ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1vbWVudD4obnVsbCk7XG4gICAgcHVibGljIHJlYWRvbmx5IGlubmVyVmFsdWUkID0gdGhpcy5faW5uZXJWYWx1ZSQuYXNPYnNlcnZhYmxlKCk7XG5cbiAgICBwdWJsaWMgc2V0IGlubmVyVmFsdWUodmFsdWU6IE1vbWVudCkge1xuICAgICAgICB0aGlzLl9pbm5lclZhbHVlJC5uZXh0KHZhbHVlKTtcbiAgICB9XG4gICAgcHVibGljIGdldCBpbm5lclZhbHVlKCk6IE1vbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pbm5lclZhbHVlJC5nZXRWYWx1ZSgpO1xuICAgIH1cblxuICAgIGdldERpc3BsYXlQcmVmaXgoKSB7XG4gICAgICAgIGNvbnN0IGZvcm1hdENhY2hlZCA9IHRoaXMuZ2V0Q29uZmlndXJlZEZvcm1hdCh0aGlzLnRpbWVmcmFtZSk7XG4gICAgICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgICAgICAgY2FzZSBmb3JtYXRDYWNoZWQ/LmluY2x1ZGVzKCdRJyk6XG4gICAgICAgICAgICAgICAgcmV0dXJuICdRJztcbiAgICAgICAgICAgIGNhc2UgZm9ybWF0Q2FjaGVkPy5pbmNsdWRlcygnVycpOlxuICAgICAgICAgICAgICAgIHJldHVybiAnVyc7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFRpbWVmcmFtZShmb3JtYXQ6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gRHJTaGFyZWRVdGlscy5nZXRUaW1lZnJhbWVCeURhdGVGb3JtYXQoZm9ybWF0KTtcbiAgICB9XG5cbiAgICBnZXRDb25maWd1cmVkRm9ybWF0KHRpbWVmcmFtZTogVFRpbWVmcmFtZU9wdGlvbik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmZvcm1hdENvbmZpZ1t0aW1lZnJhbWVdO1xuICAgIH1cblxuICAgIHVwZGF0ZVRpbWVmcmFtZUFuZEZvcm1hdChmb3JtYXQ6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBjb25zdCBub3JtYWxpemVkRm9ybWF0ID0gdGhpcy5ub3JtYWxpemVWYWx1ZShmb3JtYXQgfHwgdGhpcy5mb3JtYXQkLmdldFZhbHVlKCkpO1xuICAgICAgICB0aGlzLnRpbWVmcmFtZSA9IHRoaXMuZ2V0VGltZWZyYW1lKG5vcm1hbGl6ZWRGb3JtYXQpO1xuICAgICAgICB0aGlzLmZvcm1hdCQubmV4dCh0aGlzLmdldENvbmZpZ3VyZWRGb3JtYXQodGhpcy50aW1lZnJhbWUpKTtcbiAgICB9XG5cbiAgICBub3JtYWxpemVWYWx1ZSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UoL2QvZywgJ0QnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgcXVhcnRlciBudW1iZXIgZm9yIGRhdGUgYWNjb3JkaW5nIHRvIGZpc2NhbCB5ZWFyXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGF0ZVxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRRdWFydGVyQWNjb3JkaW5nVG9GaXNjYWxZZWFyKGRhdGU6IE1vbWVudCk6IG51bWJlciB7XG4gICAgICAgIGxldCBmaXNjYWxNb250aCA9IHRoaXMuZmlzY2FsWWVhck1vbnRoc01vZGlmaWVyO1xuICAgICAgICBjb25zdCBkYXRlTW9udGggPSBkYXRlLm1vbnRoKCk7XG4gICAgICAgIGlmIChkYXRlTW9udGggPCBmaXNjYWxNb250aCkge1xuICAgICAgICAgICAgZmlzY2FsTW9udGggLT0gMTI7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIE1hdGgudHJ1bmMoKGRhdGUubW9udGgoKSAtIGZpc2NhbE1vbnRoKSAvIDMpICsgMTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIGRhdGUgdG8gZW5kIG9mIHF1YXJ0ZXIgaW4gRlkgYnkgcGFzc2VkIHF1YXJ0ZXIgbnVtYmVyXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGF0ZVxuICAgICAqIEBwYXJhbSBxdWFydGVyTnVtYmVyXG4gICAgICovXG4gICAgcHVibGljIHNldEVuZE9mUXVhcnRlcihkYXRlOiBNb21lbnQsIHF1YXJ0ZXJOdW1iZXI6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBkYXRlLnN1YnRyYWN0KHRoaXMuZmlzY2FsWWVhck1vbnRoc01vZGlmaWVyLCAnTScpXG4gICAgICAgICAgICAuc3RhcnRPZigneWVhcicpXG4gICAgICAgICAgICAuYWRkKHRoaXMuZmlzY2FsWWVhck1vbnRoc01vZGlmaWVyICsgcXVhcnRlck51bWJlciAqIDMgLSAxLCAnTScpXG4gICAgICAgICAgICAuZW5kT2YoJ21vbnRoJyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyBkYXRlIHRvIHN0YXJ0IG9mIHF1YXJ0ZXIgaW4gRlkgYnkgcGFzc2VkIHF1YXJ0ZXIgbnVtYmVyXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGF0ZVxuICAgICAqIEBwYXJhbSBxdWFydGVyTnVtYmVyXG4gICAgICovXG4gICAgcHVibGljIHNldFN0YXJ0T2ZRdWFydGVyKGRhdGU6IE1vbWVudCwgcXVhcnRlck51bWJlcjogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGRhdGUuc3VidHJhY3QodGhpcy5maXNjYWxZZWFyTW9udGhzTW9kaWZpZXIsICdNJylcbiAgICAgICAgICAgIC5zdGFydE9mKCd5ZWFyJylcbiAgICAgICAgICAgIC5hZGQodGhpcy5maXNjYWxZZWFyTW9udGhzTW9kaWZpZXIgKyAocXVhcnRlck51bWJlciAtIDEpICogMywgJ00nKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIGRhdGUgdG8gZW5kIG9mIGN1cnJlbnQgcXVhcnRlciAoaW4gd2hpY2ggZGF0ZSBpcyBsb2NhdGVkKSBhY2NvcmRpbmcgdG8gRllcbiAgICAgKlxuICAgICAqIEBwYXJhbSBkYXRlXG4gICAgICovXG4gICAgcHVibGljIHNldEVuZE9mQ3VycmVudFF1YXJ0ZXIoZGF0ZTogTW9tZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0RW5kT2ZRdWFydGVyKGRhdGUsIHRoaXMuZ2V0UXVhcnRlckFjY29yZGluZ1RvRmlzY2FsWWVhcihkYXRlKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyBkYXRlIHRvIHN0YXJ0IG9mIGN1cnJlbnQgcXVhcnRlciAoaW4gd2hpY2ggZGF0ZSBpcyBsb2NhdGVkKSBhY2NvcmRpbmcgdG8gRllcbiAgICAgKlxuICAgICAqIEBwYXJhbSBkYXRlXG4gICAgICovXG4gICAgcHVibGljIHNldFN0YXJ0T2ZDdXJyZW50UXVhcnRlcihkYXRlOiBNb21lbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXRTdGFydE9mUXVhcnRlcihkYXRlLCB0aGlzLmdldFF1YXJ0ZXJBY2NvcmRpbmdUb0Zpc2NhbFllYXIoZGF0ZSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIElmIGRhdGUgc2VsZWN0aW9uIG9uIHRoaXMgdGltZWZyYW1lIGRlcGVuZHMgb24gRmlzY2FsIFllYXJcbiAgICAgKlxuICAgICAqIEBwYXJhbSB0aW1lZnJhbWVcbiAgICAgKi9cbiAgICBwdWJsaWMgaXNUaW1lZnJhbWVEZXBlbmRpbmdPbkZZKHRpbWVmcmFtZTogVGltZWZyYW1lT3B0aW9uKSB7XG4gICAgICAgIHJldHVybiBfLmluY2x1ZGVzKFtUaW1lZnJhbWVPcHRpb24uUVVBUlRFUiwgVGltZWZyYW1lT3B0aW9uLllFQVJdLCB0aW1lZnJhbWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFN1YnRyYWN0IGZyb20gZGF0ZSBmaXNjYWwgeWVhciBzaGlmdCBtb250aHMgY291bnRcbiAgICAgKlxuICAgICAqIEBwYXJhbSBkYXRlXG4gICAgICovXG4gICAgcHVibGljIHN1YnRyYWN0RmlzY2FsWWVhck1vbnRoc0Zyb21EYXRlKGRhdGU6IE1vbWVudCk6IE1vbWVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldERhdGVNb2RpZmllZEJ5RmlzY2FsTW9udGhzKGRhdGUsIHRydWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0byBkYXRlIGZpc2NhbCB5ZWFyIHNoaWZ0IG1vbnRocyBjb3VudFxuICAgICAqXG4gICAgICogQHBhcmFtIGRhdGVcbiAgICAgKi9cbiAgICBwdWJsaWMgYWRkRmlzY2FsWWVhck1vbnRoc1RvRGF0ZShkYXRlOiBNb21lbnQpOiBNb21lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXREYXRlTW9kaWZpZWRCeUZpc2NhbE1vbnRocyhkYXRlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFwcGx5RmlzY2FsWWVhclNoaWZ0Rm9yWWVhcihtb21lbnREYXRlOiBNb21lbnQsIGlzU3VidHJhY3Q6IGJvb2xlYW4gPSBmYWxzZSk6IE1vbWVudCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICh0aGlzLmZpc2NhbFllYXJCYWNrIHx8ICF0aGlzLmZpc2NhbFllYXJNb250aHNNb2RpZmllcikgcmV0dXJuO1xuICAgICAgICByZXR1cm4gbW9tZW50RGF0ZVtpc1N1YnRyYWN0ID8gJ3N1YnRyYWN0JyA6ICdhZGQnXSgxLCAneWVhcicpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhZGRGaXNjYWxZZWFyU2hpZnRGb3JZZWFyKG1vbWVudERhdGU6IE1vbWVudCk6IE1vbWVudCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwcGx5RmlzY2FsWWVhclNoaWZ0Rm9yWWVhcihtb21lbnREYXRlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3VidHJhY3RGaXNjYWxZZWFyU2hpZnRGb3JZZWFyKG1vbWVudERhdGU6IE1vbWVudCk6IE1vbWVudCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmFwcGx5RmlzY2FsWWVhclNoaWZ0Rm9yWWVhcihtb21lbnREYXRlLCB0cnVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgb3Igc3VidHJhY3QgZGVwZW5kaW5nIG9uIGlzUmV2ZXJ0IHBhcmVtZXRlciBGaXNjYWwgeWVhciBtb250aCBzaGlmdFxuICAgICAqXG4gICAgICogQHBhcmFtIGRhdGVcbiAgICAgKiBAcGFyYW0gaXNTdWJ0cmFjdFxuICAgICAqL1xuICAgIHByaXZhdGUgZ2V0RGF0ZU1vZGlmaWVkQnlGaXNjYWxNb250aHMoZGF0ZTogTW9tZW50LCBpc1N1YnRyYWN0ID0gZmFsc2UpOiBNb21lbnQge1xuICAgICAgICByZXR1cm4gZGF0ZSA/IF8uY2xvbmVEZWVwKGRhdGUpW2lzU3VidHJhY3QgPyAnc3VidHJhY3QnIDogJ2FkZCddKHRoaXMuZmlzY2FsWWVhck1vbnRoc01vZGlmaWVyLCAnbW9udGgnKSA6IGRhdGU7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZURhdGVQaWNrZXJCeVByZXNldCh0YWc6IERhdGVUYWdzLCBjYWxlbmRlcjogYW55KSB7XG4gICAgICAgIHRoaXMua2VlcFByZXNldFRhZyA9IHRydWU7XG4gICAgICAgIGxldCBkYXRlID0gbnVsbDtcbiAgICAgICAgaWYgKHRhZykge1xuICAgICAgICAgICAgZGF0ZSA9IERyU2hhcmVkVXRpbHMuZ2V0RGF0ZUJ5VGFnKHRhZyk7XG4gICAgICAgICAgICBzd2l0Y2ggKHRhZykge1xuICAgICAgICAgICAgICAgIGNhc2UgRGF0ZVRhZ3MuVE9EQVk6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlVGltZWZyYW1lQW5kRm9ybWF0KERhdGVGcm9tYXRzLk1BVF9ERUZBVUxUX0RBVEVfRk9STUFUKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBEYXRlVGFncy5ZRVNURVJEQVk6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlVGltZWZyYW1lQW5kRm9ybWF0KERhdGVGcm9tYXRzLk1BVF9ERUZBVUxUX0RBVEVfRk9STUFUKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBEYXRlVGFncy5USElTX01PTlRIOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVRpbWVmcmFtZUFuZEZvcm1hdChEYXRlRnJvbWF0cy5NT05USF9ZRUFSX0ZPUk1BVCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0RGF0ZUluQ2FsZW5kYXJNb250aFZpZXcoZGF0ZSwgY2FsZW5kZXIpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIERhdGVUYWdzLlBSRVZfTU9OVEg6XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlVGltZWZyYW1lQW5kRm9ybWF0KERhdGVGcm9tYXRzLk1PTlRIX1lFQVJfRk9STUFUKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3REYXRlSW5DYWxlbmRhck1vbnRoVmlldyhkYXRlLCBjYWxlbmRlcik7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoaXMucHJlc2V0VGFnJC5uZXh0KHRhZyk7XG4gICAgICAgIHRoaXMudXBkYXRlZERhdGVBbmRDbG9zZSQubmV4dChkYXRlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2VsZWN0RGF0ZUluQ2FsZW5kYXJNb250aFZpZXcoZGF0ZTogTW9tZW50LCBjYWxlbmRlcjogYW55KTogdm9pZCB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbW9udGhWaWV3ID0gY2FsZW5kZXIubW9udGhWaWV3IGFzIGFueTtcbiAgICAgICAgICAgIGlmIChtb250aFZpZXcpIHtcbiAgICAgICAgICAgICAgICBtb250aFZpZXcuX2FjdGl2ZURhdGUgPSBkYXRlO1xuICAgICAgICAgICAgICAgIG1vbnRoVmlldy5fc2VsZWN0ZWQgPSBkYXRlO1xuICAgICAgICAgICAgICAgIG1vbnRoVmlldy5faW5pdCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzZXRQcmVzZXRUYWcoKSB7XG4gICAgICAgIGlmICghdGhpcy5rZWVwUHJlc2V0VGFnKSB7XG4gICAgICAgICAgICB0aGlzLnByZXNldFRhZyQubmV4dChudWxsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMua2VlcFByZXNldFRhZyA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
263
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZGF0ZS1waWNrZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWlucHV0cy9kYXRlLXBpY2tlcnMvc2VydmljZXMvZHItZGF0ZS1waWNrZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUEyQixlQUFlLEVBQW9CLE1BQU0sNEJBQTRCLENBQUM7QUFDL0gsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQy9ELE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBRTVCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUc3RCxNQUFNLE9BQU8sbUJBQW1CO0lBRGhDO1FBRUksZ0NBQTJCLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGdCQUFXLEdBQXNDLElBQUksZUFBZSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMzRixlQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO1FBVTFGLG9FQUFvRTtRQUNwRSwrRUFBK0U7UUFDL0UsaUVBQWlFO1FBQ2pFLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBUyxXQUFXLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUUzRSxvQkFBZSxHQUFHLElBQUksT0FBTyxFQUFVLENBQUM7UUFDL0IseUJBQW9CLEdBQUcsSUFBSSxPQUFPLEVBQVksQ0FBQztRQUN4RCx5QkFBb0IsR0FBRyxJQUFJLE9B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RUFBRSxDQUFDO2FBQ3JCO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sK0JBQStCLENBQUMsSUFBWSxFQUFFLFFBQWE7UUFDOUQsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxRQUFlLENBQUM7WUFDMUMsSUFBSSxRQUFRLEVBQUU7Z0JBQ1YsUUFBUSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7Z0JBQzVCLFFBQVEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO2dCQUMxQixRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDcEI7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSw0QkFBNEIsQ0FBQyxJQUFZLEVBQUUsUUFBYTtRQUMzRCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLGFBQW9CLENBQUM7WUFDcEQsSUFBSSxhQUFhLEVBQUU7Z0JBQ2YsYUFBYSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7Z0JBQ2pDLGFBQWEsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUMxQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDekI7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxjQUFjO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzlCO2FBQU07WUFDSCxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztTQUM5QjtJQUNMLENBQUM7dUdBdFJRLG1CQUFtQjtzR0FBbkIsbUJBQW1CLFdBQW5CLG1CQUFtQjs7dUZBQW5CLG1CQUFtQjtjQUQvQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0Q2FsZW5kYXIsIE1hdERhdGVwaWNrZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcbmltcG9ydCB7IE1vbWVudCB9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEYXRlRnJvbWF0cywgRGF0ZVRhZ3MsIElEYXRlUGlja2VyRm9ybWF0Q29uZmlnLCBUaW1lZnJhbWVPcHRpb24sIFRUaW1lZnJhbWVPcHRpb24gfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZGF0ZVBpY2tlcic7XG5pbXBvcnQgeyBEclNoYXJlZFV0aWxzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvZHItc2hhcmVkLXV0aWxzJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IFdlZWtJbmZvIH0gZnJvbSAnLi4vd2Vlay1zZWxlY3Rvci93ZWVrLXNlbGVjdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQUkVTRVRfVEFHU19MSVNUIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2NvbnN0YW50cyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEckRhdGVQaWNrZXJTZXJ2aWNlIHtcbiAgICBpc1RpbWVmcmFtZVNlbGVjdGlvbkVuYWJsZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IF90aW1lZnJhbWUkOiBCZWhhdmlvclN1YmplY3Q8VFRpbWVmcmFtZU9wdGlvbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFRpbWVmcmFtZU9wdGlvbi5EQVkpO1xuICAgIHB1YmxpYyByZWFkb25seSB0aW1lZnJhbWUkID0gdGhpcy5fdGltZWZyYW1lJC5hc09ic2VydmFibGUoKS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpO1xuXG4gICAgcHVibGljIGdldCB0aW1lZnJhbWUoKTogVFRpbWVmcmFtZU9wdGlvbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl90aW1lZnJhbWUkLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldCB0aW1lZnJhbWUodmFsdWU6IFRUaW1lZnJhbWVPcHRpb24pIHtcbiAgICAgICAgdGhpcy5fdGltZWZyYW1lJC5uZXh0KHZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyBUT0RPOiBoZXJlIHdlIGNhbiBoYXZlIGluY29uc2lzdGVuY3kgYmV0d2VlbiBmb3JtYXQgYW5kIHRpbWVmcmFtZVxuICAgIC8vIHdlIG5lZWQgdG8gZ2V0IHJpZCBvZiBhIHNlcGFyYXRlIHN1YmplY3QgYW5kIHVzZSBwaXBlIGZyb20gdGltZWZyYW1lJCBmb3IgaXRcbiAgICAvLyBtYWtpbmcgQElucHV0KCkgZm9ybWF0IGluIGNvbXBvbmVudCBqdXN0IHNldHRpbmcgdGhlIHRpbWVmcmFtZVxuICAgIGZvcm1hdCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oRGF0ZUZyb21hdHMuTUFUX0RFRkFVTFRfREFURV9GT1JNQVQpO1xuXG4gICAgdXBkYXRlZFF1YXJ0ZXIkID0gbmV3IFN1YmplY3Q8TW9tZW50PigpO1xuICAgIHJlYWRvbmx5IHdlZWtTZWxlY3Rpb25DaGFuZ2UkID0gbmV3IFN1YmplY3Q8V2Vla0luZm8+KCk7XG4gICAgdXBkYXRlZERhdGVBbmRDbG9zZSQgPSBuZXcgU3ViamVjdDxNb21lbnQ+KCk7XG4gICAgZGF0ZVBpY2tlckluc3RhbmNlOiBNYXREYXRlcGlja2VyPGFueT47XG4gICAgaXNVc2luZ0RhdGVUYWdQcmVzZXRzOiBib29sZWFuO1xuICAgIGlzVXNpbmdUaW1lRnJhbWVTZWxlY3Q6IGJvb2xlYW4gPSB0cnVlO1xuICAgIHByZXNldFRhZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PERhdGVUYWdzPignJyBhcyBEYXRlVGFncyk7XG4gICAgb25TYW1lRGF5U2VsZWN0ZWRJbkNhbGVuZGFyJCA9IG5ldyBTdWJqZWN0PE1vbWVudD4oKTtcbiAgICBrZWVwUHJlc2V0VGFnID0gZmFsc2U7XG4gICAgaXNWYWx1ZVVwZGF0aW5nID0gZmFsc2U7XG4gICAgYXZhaWxhYmxlRGF0ZVRhZ1ByZXNldHMgPSBQUkVTRVRfVEFHU19MSVNUO1xuICAgIGF2YWlsYWJsZVRpbWVmcmFtZXMgPSBbXG4gICAgICAgIFRpbWVmcmFtZU9wdGlvbi5EQVksXG4gICAgICAgIFRpbWVmcmFtZU9wdGlvbi5XRUVLLFxuICAgICAgICBUaW1lZnJhbWVPcHRpb24uTU9OVEgsXG4gICAgICAgIFRpbWVmcmFtZU9wdGlvbi5RVUFSVEVSLFxuICAgICAgICBUaW1lZnJhbWVPcHRpb24uWUVBUixcbiAgICBdO1xuXG4gICAgcHVibGljIGZvcm1hdENvbmZpZzogSURhdGVQaWNrZXJGb3JtYXRDb25maWcgPSB7XG4gICAgICAgIGRheTogRGF0ZUZyb21hdHMuTUFUX0RFRkFVTFRfREFURV9GT1JNQVQsXG4gICAgICAgIG1vbnRoOiBEYXRlRnJvbWF0cy5NT05USF9ZRUFSX0ZPUk1BVCxcbiAgICAgICAgeWVhcjogRGF0ZUZyb21hdHMuWUVBUl9GT1JNQVQsXG4gICAgICAgIHF1YXJ0ZXI6IERhdGVGcm9tYXRzLlFVQVJURVJfRk9STUFULFxuICAgICAgICB3ZWVrOiBEYXRlRnJvbWF0cy5XRUVLX0ZPUk1BVCxcbiAgICB9O1xuICAgIHB1YmxpYyBjYWxlbmRhckluc3RhbmNlOiBNYXRDYWxlbmRhcjxhbnk+O1xuICAgIHB1YmxpYyBtYXhEYXRlOiBNb21lbnQ7XG4gICAgcHVibGljIGZpc2NhbFllYXJNb250aHNNb2RpZmllciA9IDA7XG4gICAgcHVibGljIGZpc2NhbFllYXJCYWNrID0gZmFsc2U7XG4gICAgcHVibGljIGRhdGVwaWNrZXJGaWx0ZXI6IChtb21lbnQ6IE1vbWVudCkgPT4gYm9vbGVhbjtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2lubmVyVmFsdWUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNb21lbnQ+KG51bGwpO1xuICAgIHB1YmxpYyByZWFkb25seSBpbm5lclZhbHVlJCA9IHRoaXMuX2lubmVyVmFsdWUkLmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgcHVibGljIHNldCBpbm5lclZhbHVlKHZhbHVlOiBNb21lbnQpIHtcbiAgICAgICAgdGhpcy5faW5uZXJWYWx1ZSQubmV4dCh2YWx1ZSk7XG4gICAgfVxuICAgIHB1YmxpYyBnZXQgaW5uZXJWYWx1ZSgpOiBNb21lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5faW5uZXJWYWx1ZSQuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICBnZXREaXNwbGF5UHJlZml4KCkge1xuICAgICAgICBjb25zdCBmb3JtYXRDYWNoZWQgPSB0aGlzLmdldENvbmZpZ3VyZWRGb3JtYXQodGhpcy50aW1lZnJhbWUpO1xuICAgICAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgICAgICAgIGNhc2UgZm9ybWF0Q2FjaGVkPy5pbmNsdWRlcygnUScpOlxuICAgICAgICAgICAgICAgIHJldHVybiAnUSc7XG4gICAgICAgICAgICBjYXNlIGZvcm1hdENhY2hlZD8uaW5jbHVkZXMoJ1cnKTpcbiAgICAgICAgICAgICAgICByZXR1cm4gJ1cnO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRUaW1lZnJhbWUoZm9ybWF0OiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIERyU2hhcmVkVXRpbHMuZ2V0VGltZWZyYW1lQnlEYXRlRm9ybWF0KGZvcm1hdCk7XG4gICAgfVxuXG4gICAgZ2V0Q29uZmlndXJlZEZvcm1hdCh0aW1lZnJhbWU6IFRUaW1lZnJhbWVPcHRpb24pOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtYXRDb25maWdbdGltZWZyYW1lXTtcbiAgICB9XG5cbiAgICB1cGRhdGVUaW1lZnJhbWVBbmRGb3JtYXQoZm9ybWF0OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgbm9ybWFsaXplZEZvcm1hdCA9IHRoaXMubm9ybWFsaXplVmFsdWUoZm9ybWF0IHx8IHRoaXMuZm9ybWF0JC5nZXRWYWx1ZSgpKTtcbiAgICAgICAgdGhpcy50aW1lZnJhbWUgPSB0aGlzLmdldFRpbWVmcmFtZShub3JtYWxpemVkRm9ybWF0KTtcbiAgICAgICAgdGhpcy5mb3JtYXQkLm5leHQodGhpcy5nZXRDb25maWd1cmVkRm9ybWF0KHRoaXMudGltZWZyYW1lKSk7XG4gICAgfVxuXG4gICAgbm9ybWFsaXplVmFsdWUodmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB2YWx1ZS5yZXBsYWNlKC9kL2csICdEJyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0IHF1YXJ0ZXIgbnVtYmVyIGZvciBkYXRlIGFjY29yZGluZyB0byBmaXNjYWwgeWVhclxuICAgICAqXG4gICAgICogQHBhcmFtIGRhdGVcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0UXVhcnRlckFjY29yZGluZ1RvRmlzY2FsWWVhcihkYXRlOiBNb21lbnQpOiBudW1iZXIge1xuICAgICAgICBsZXQgZmlzY2FsTW9udGggPSB0aGlzLmZpc2NhbFllYXJNb250aHNNb2RpZmllcjtcbiAgICAgICAgY29uc3QgZGF0ZU1vbnRoID0gZGF0ZS5tb250aCgpO1xuICAgICAgICBpZiAoZGF0ZU1vbnRoIDwgZmlzY2FsTW9udGgpIHtcbiAgICAgICAgICAgIGZpc2NhbE1vbnRoIC09IDEyO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBNYXRoLnRydW5jKChkYXRlLm1vbnRoKCkgLSBmaXNjYWxNb250aCkgLyAzKSArIDE7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyBkYXRlIHRvIGVuZCBvZiBxdWFydGVyIGluIEZZIGJ5IHBhc3NlZCBxdWFydGVyIG51bWJlclxuICAgICAqXG4gICAgICogQHBhcmFtIGRhdGVcbiAgICAgKiBAcGFyYW0gcXVhcnRlck51bWJlclxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRFbmRPZlF1YXJ0ZXIoZGF0ZTogTW9tZW50LCBxdWFydGVyTnVtYmVyOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgZGF0ZS5zdWJ0cmFjdCh0aGlzLmZpc2NhbFllYXJNb250aHNNb2RpZmllciwgJ00nKVxuICAgICAgICAgICAgLnN0YXJ0T2YoJ3llYXInKVxuICAgICAgICAgICAgLmFkZCh0aGlzLmZpc2NhbFllYXJNb250aHNNb2RpZmllciArIHF1YXJ0ZXJOdW1iZXIgKiAzIC0gMSwgJ00nKVxuICAgICAgICAgICAgLmVuZE9mKCdtb250aCcpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgZGF0ZSB0byBzdGFydCBvZiBxdWFydGVyIGluIEZZIGJ5IHBhc3NlZCBxdWFydGVyIG51bWJlclxuICAgICAqXG4gICAgICogQHBhcmFtIGRhdGVcbiAgICAgKiBAcGFyYW0gcXVhcnRlck51bWJlclxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRTdGFydE9mUXVhcnRlcihkYXRlOiBNb21lbnQsIHF1YXJ0ZXJOdW1iZXI6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBkYXRlLnN1YnRyYWN0KHRoaXMuZmlzY2FsWWVhck1vbnRoc01vZGlmaWVyLCAnTScpXG4gICAgICAgICAgICAuc3RhcnRPZigneWVhcicpXG4gICAgICAgICAgICAuYWRkKHRoaXMuZmlzY2FsWWVhck1vbnRoc01vZGlmaWVyICsgKHF1YXJ0ZXJOdW1iZXIgLSAxKSAqIDMsICdNJyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyBkYXRlIHRvIGVuZCBvZiBjdXJyZW50IHF1YXJ0ZXIgKGluIHdoaWNoIGRhdGUgaXMgbG9jYXRlZCkgYWNjb3JkaW5nIHRvIEZZXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGF0ZVxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRFbmRPZkN1cnJlbnRRdWFydGVyKGRhdGU6IE1vbWVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldEVuZE9mUXVhcnRlcihkYXRlLCB0aGlzLmdldFF1YXJ0ZXJBY2NvcmRpbmdUb0Zpc2NhbFllYXIoZGF0ZSkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgZGF0ZSB0byBzdGFydCBvZiBjdXJyZW50IHF1YXJ0ZXIgKGluIHdoaWNoIGRhdGUgaXMgbG9jYXRlZCkgYWNjb3JkaW5nIHRvIEZZXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGF0ZVxuICAgICAqL1xuICAgIHB1YmxpYyBzZXRTdGFydE9mQ3VycmVudFF1YXJ0ZXIoZGF0ZTogTW9tZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2V0U3RhcnRPZlF1YXJ0ZXIoZGF0ZSwgdGhpcy5nZXRRdWFydGVyQWNjb3JkaW5nVG9GaXNjYWxZZWFyKGRhdGUpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJZiBkYXRlIHNlbGVjdGlvbiBvbiB0aGlzIHRpbWVmcmFtZSBkZXBlbmRzIG9uIEZpc2NhbCBZZWFyXG4gICAgICpcbiAgICAgKiBAcGFyYW0gdGltZWZyYW1lXG4gICAgICovXG4gICAgcHVibGljIGlzVGltZWZyYW1lRGVwZW5kaW5nT25GWSh0aW1lZnJhbWU6IFRpbWVmcmFtZU9wdGlvbikge1xuICAgICAgICByZXR1cm4gXy5pbmNsdWRlcyhbVGltZWZyYW1lT3B0aW9uLlFVQVJURVIsIFRpbWVmcmFtZU9wdGlvbi5ZRUFSXSwgdGltZWZyYW1lKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTdWJ0cmFjdCBmcm9tIGRhdGUgZmlzY2FsIHllYXIgc2hpZnQgbW9udGhzIGNvdW50XG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGF0ZVxuICAgICAqL1xuICAgIHB1YmxpYyBzdWJ0cmFjdEZpc2NhbFllYXJNb250aHNGcm9tRGF0ZShkYXRlOiBNb21lbnQpOiBNb21lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXREYXRlTW9kaWZpZWRCeUZpc2NhbE1vbnRocyhkYXRlLCB0cnVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdG8gZGF0ZSBmaXNjYWwgeWVhciBzaGlmdCBtb250aHMgY291bnRcbiAgICAgKlxuICAgICAqIEBwYXJhbSBkYXRlXG4gICAgICovXG4gICAgcHVibGljIGFkZEZpc2NhbFllYXJNb250aHNUb0RhdGUoZGF0ZTogTW9tZW50KTogTW9tZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0RGF0ZU1vZGlmaWVkQnlGaXNjYWxNb250aHMoZGF0ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhcHBseUZpc2NhbFllYXJTaGlmdEZvclllYXIobW9tZW50RGF0ZTogTW9tZW50LCBpc1N1YnRyYWN0OiBib29sZWFuID0gZmFsc2UpOiBNb21lbnQgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAodGhpcy5maXNjYWxZZWFyQmFjayB8fCAhdGhpcy5maXNjYWxZZWFyTW9udGhzTW9kaWZpZXIpIHJldHVybjtcbiAgICAgICAgcmV0dXJuIG1vbWVudERhdGVbaXNTdWJ0cmFjdCA/ICdzdWJ0cmFjdCcgOiAnYWRkJ10oMSwgJ3llYXInKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkRmlzY2FsWWVhclNoaWZ0Rm9yWWVhcihtb21lbnREYXRlOiBNb21lbnQpOiBNb21lbnQgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5hcHBseUZpc2NhbFllYXJTaGlmdEZvclllYXIobW9tZW50RGF0ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN1YnRyYWN0RmlzY2FsWWVhclNoaWZ0Rm9yWWVhcihtb21lbnREYXRlOiBNb21lbnQpOiBNb21lbnQgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5hcHBseUZpc2NhbFllYXJTaGlmdEZvclllYXIobW9tZW50RGF0ZSwgdHJ1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIG9yIHN1YnRyYWN0IGRlcGVuZGluZyBvbiBpc1JldmVydCBwYXJlbWV0ZXIgRmlzY2FsIHllYXIgbW9udGggc2hpZnRcbiAgICAgKlxuICAgICAqIEBwYXJhbSBkYXRlXG4gICAgICogQHBhcmFtIGlzU3VidHJhY3RcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldERhdGVNb2RpZmllZEJ5RmlzY2FsTW9udGhzKGRhdGU6IE1vbWVudCwgaXNTdWJ0cmFjdCA9IGZhbHNlKTogTW9tZW50IHtcbiAgICAgICAgcmV0dXJuIGRhdGUgPyBfLmNsb25lRGVlcChkYXRlKVtpc1N1YnRyYWN0ID8gJ3N1YnRyYWN0JyA6ICdhZGQnXSh0aGlzLmZpc2NhbFllYXJNb250aHNNb2RpZmllciwgJ21vbnRoJykgOiBkYXRlO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVEYXRlUGlja2VyQnlQcmVzZXQodGFnOiBEYXRlVGFncywgY2FsZW5kZXI6IGFueSkge1xuICAgICAgICB0aGlzLmtlZXBQcmVzZXRUYWcgPSB0cnVlO1xuICAgICAgICBsZXQgZGF0ZSA9IG51bGw7XG4gICAgICAgIGlmICh0YWcpIHtcbiAgICAgICAgICAgIGRhdGUgPSBEclNoYXJlZFV0aWxzLmdldERhdGVCeVRhZyh0YWcpO1xuICAgICAgICAgICAgc3dpdGNoICh0YWcpIHtcbiAgICAgICAgICAgICAgICBjYXNlIERhdGVUYWdzLlRPREFZOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVRpbWVmcmFtZUFuZEZvcm1hdChEYXRlRnJvbWF0cy5NQVRfREVGQVVMVF9EQVRFX0ZPUk1BVCk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgRGF0ZVRhZ3MuWUVTVEVSREFZOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVRpbWVmcmFtZUFuZEZvcm1hdChEYXRlRnJvbWF0cy5NQVRfREVGQVVMVF9EQVRFX0ZPUk1BVCk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGNhc2UgRGF0ZVRhZ3MuVEhJU19NT05USDpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVUaW1lZnJhbWVBbmRGb3JtYXQoRGF0ZUZyb21hdHMuTU9OVEhfWUVBUl9GT1JNQVQpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdERhdGVJbkNhbGVuZGFyTW9udGhWaWV3KGRhdGUsIGNhbGVuZGVyKTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSBEYXRlVGFncy5QUkVWX01PTlRIOlxuICAgICAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVRpbWVmcmFtZUFuZEZvcm1hdChEYXRlRnJvbWF0cy5NT05USF9ZRUFSX0ZPUk1BVCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0RGF0ZUluQ2FsZW5kYXJNb250aFZpZXcoZGF0ZSwgY2FsZW5kZXIpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIERhdGVUYWdzLlRISVNfUVVBUlRFUjpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVUaW1lZnJhbWVBbmRGb3JtYXQoRGF0ZUZyb21hdHMuUVVBUlRFUl9GT1JNQVQpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdERhdGVJbkNhbGVuZGFyUXVhcnRlclZpZXcoZGF0ZSwgY2FsZW5kZXIpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIERhdGVUYWdzLlBSRVZfUVVBUlRFUjpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVUaW1lZnJhbWVBbmRGb3JtYXQoRGF0ZUZyb21hdHMuUVVBUlRFUl9GT1JNQVQpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdERhdGVJbkNhbGVuZGFyUXVhcnRlclZpZXcoZGF0ZSwgY2FsZW5kZXIpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIERhdGVUYWdzLlRISVNfWUVBUjpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVUaW1lZnJhbWVBbmRGb3JtYXQoRGF0ZUZyb21hdHMuWUVBUl9GT1JNQVQpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdERhdGVJbkNhbGVuZGFyWWVhclZpZXcoZGF0ZSwgY2FsZW5kZXIpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIERhdGVUYWdzLlBSRVZfWUVBUjpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVUaW1lZnJhbWVBbmRGb3JtYXQoRGF0ZUZyb21hdHMuWUVBUl9GT1JNQVQpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdERhdGVJbkNhbGVuZGFyWWVhclZpZXcoZGF0ZSwgY2FsZW5kZXIpO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLnByZXNldFRhZyQubmV4dCh0YWcpO1xuICAgICAgICB0aGlzLnVwZGF0ZWREYXRlQW5kQ2xvc2UkLm5leHQoZGF0ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNlbGVjdERhdGVJbkNhbGVuZGFyTW9udGhWaWV3KGRhdGU6IE1vbWVudCwgY2FsZW5kZXI6IGFueSk6IHZvaWQge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG1vbnRoVmlldyA9IGNhbGVuZGVyLm1vbnRoVmlldyBhcyBhbnk7XG4gICAgICAgICAgICBpZiAobW9udGhWaWV3KSB7XG4gICAgICAgICAgICAgICAgbW9udGhWaWV3Ll9hY3RpdmVEYXRlID0gZGF0ZTtcbiAgICAgICAgICAgICAgICBtb250aFZpZXcuX3NlbGVjdGVkID0gZGF0ZTtcbiAgICAgICAgICAgICAgICBtb250aFZpZXcuX2luaXQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNlbGVjdERhdGVJbkNhbGVuZGFyUXVhcnRlclZpZXcoZGF0ZTogTW9tZW50LCBjYWxlbmRlcjogYW55KTogdm9pZCB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgeWVhclZpZXcgPSBjYWxlbmRlci55ZWFyVmlldyBhcyBhbnk7XG4gICAgICAgICAgICBpZiAoeWVhclZpZXcpIHtcbiAgICAgICAgICAgICAgICB5ZWFyVmlldy5fYWN0aXZlRGF0ZSA9IGRhdGU7XG4gICAgICAgICAgICAgICAgeWVhclZpZXcuX3NlbGVjdGVkID0gZGF0ZTtcbiAgICAgICAgICAgICAgICB5ZWFyVmlldy5faW5pdCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2VsZWN0RGF0ZUluQ2FsZW5kYXJZZWFyVmlldyhkYXRlOiBNb21lbnQsIGNhbGVuZGVyOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBtdWx0aVllYXJWaWV3ID0gY2FsZW5kZXIubXVsdGlZZWFyVmlldyBhcyBhbnk7XG4gICAgICAgICAgICBpZiAobXVsdGlZZWFyVmlldykge1xuICAgICAgICAgICAgICAgIG11bHRpWWVhclZpZXcuX2FjdGl2ZURhdGUgPSBkYXRlO1xuICAgICAgICAgICAgICAgIG11bHRpWWVhclZpZXcuX3NlbGVjdGVkWWVhciA9IGRhdGUueWVhcigpO1xuICAgICAgICAgICAgICAgIG11bHRpWWVhclZpZXcuX2luaXQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlc2V0UHJlc2V0VGFnKCkge1xuICAgICAgICBpZiAoIXRoaXMua2VlcFByZXNldFRhZykge1xuICAgICAgICAgICAgdGhpcy5wcmVzZXRUYWckLm5leHQobnVsbCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmtlZXBQcmVzZXRUYWcgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -69,5 +69,9 @@ export var DateTags;
|
|
|
69
69
|
DateTags["YESTERDAY"] = "yesterday";
|
|
70
70
|
DateTags["THIS_MONTH"] = "this_month";
|
|
71
71
|
DateTags["PREV_MONTH"] = "prev_month";
|
|
72
|
+
DateTags["THIS_QUARTER"] = "this_quarter";
|
|
73
|
+
DateTags["PREV_QUARTER"] = "prev_quarter";
|
|
74
|
+
DateTags["THIS_YEAR"] = "this_year";
|
|
75
|
+
DateTags["PREV_YEAR"] = "prev_year";
|
|
72
76
|
})(DateTags || (DateTags = {}));
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZVBpY2tlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL21vZGVscy9kYXRlUGlja2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFdBT1g7QUFQRCxXQUFZLFdBQVc7SUFDbkIscURBQXNDLENBQUE7SUFDdEMsK0NBQWdDLENBQUE7SUFDaEMsbUNBQW9CLENBQUE7SUFDcEIsNENBQTZCLENBQUE7SUFDN0Isd0NBQXlCLENBQUE7SUFDekIscUNBQXNCLENBQUE7QUFDMUIsQ0FBQyxFQVBXLFdBQVcsS0FBWCxXQUFXLFFBT3RCO0FBZUQsTUFBTSxPQUFPLGdCQUFnQjtJQUE3QjtRQUNZLFdBQU0sR0FBYztZQUN4QixTQUFTLEVBQUUsV0FBVyxDQUFDLGlCQUFpQjtTQUMzQyxDQUFDO1FBQ00sYUFBUSxHQUFnQjtZQUM1QixTQUFTLEVBQUUsV0FBVyxDQUFDLGlCQUFpQjtZQUN4QyxjQUFjLEVBQUUsVUFBVTtZQUMxQixhQUFhLEVBQUUsSUFBSTtZQUNuQixrQkFBa0IsRUFBRSxVQUFVO1lBQzlCLGdCQUFnQixFQUFFLFFBQVE7WUFDMUIsU0FBUyxFQUFFLE1BQU07U0FDcEIsQ0FBQztJQXlCTixDQUFDO0lBdkJHLElBQUksS0FBSyxDQUFDLEtBQWdCO1FBQ3RCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFJLE9BQU8sQ0FBQyxPQUFvQjtRQUM1QixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELElBQUksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBZ0IsRUFBRSxPQUFxQjtRQUNwRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1YsT0FBTyxHQUFHLEtBQUssQ0FBQztTQUNuQjtRQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQzNCLENBQUM7Q0FDSjtBQVVELE1BQU0sQ0FBTixJQUFZLHdCQUtYO0FBTEQsV0FBWSx3QkFBd0I7SUFDaEMseUZBQWEsQ0FBQTtJQUNiLCtGQUFnQixDQUFBO0lBQ2hCLDZGQUFlLENBQUE7SUFDZiw2RUFBTyxDQUFBO0FBQ1gsQ0FBQyxFQUxXLHdCQUF3QixLQUF4Qix3QkFBd0IsUUFLbkM7QUFFRCxNQUFNLENBQU4sSUFBWSxlQU1YO0FBTkQsV0FBWSxlQUFlO0lBQ3ZCLDhCQUFXLENBQUE7SUFDWCxrQ0FBZSxDQUFBO0lBQ2Ysc0NBQW1CLENBQUE7SUFDbkIsZ0NBQWEsQ0FBQTtJQUNiLGdDQUFhLENBQUE7QUFDakIsQ0FBQyxFQU5XLGVBQWUsS0FBZixlQUFlLFFBTTFCO0FBRUQsTUFBTSxDQUFOLElBQVksWUFLWDtBQUxELFdBQVksWUFBWTtJQUNwQixrQ0FBa0IsQ0FBQTtJQUNsQixtQ0FBbUIsQ0FBQTtJQUNuQixxQ0FBcUIsQ0FBQTtJQUNyQix3Q0FBd0IsQ0FBQTtBQUM1QixDQUFDLEVBTFcsWUFBWSxLQUFaLFlBQVksUUFLdkI7QUFFRCxNQUFNLENBQU4sSUFBWSxRQVNYO0FBVEQsV0FBWSxRQUFRO0lBQ2hCLDJCQUFlLENBQUE7SUFDZixtQ0FBdUIsQ0FBQTtJQUN2QixxQ0FBeUIsQ0FBQTtJQUN6QixxQ0FBeUIsQ0FBQTtJQUN6Qix5Q0FBNkIsQ0FBQTtJQUM3Qix5Q0FBNkIsQ0FBQTtJQUM3QixtQ0FBdUIsQ0FBQTtJQUN2QixtQ0FBdUIsQ0FBQTtBQUMzQixDQUFDLEVBVFcsUUFBUSxLQUFSLFFBQVEsUUFTbkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBEYXRlRnJvbWF0cyB7XG4gICAgTUFUX0RFRkFVTFRfREFURV9GT1JNQVQgPSAnTU0vREQveXl5eScsXG4gICAgREFURV9JTlBVVF9GT1JNQVQgPSAnWVlZWS9NTS9ERCcsXG4gICAgWUVBUl9GT1JNQVQgPSAneXl5eScsXG4gICAgTU9OVEhfWUVBUl9GT1JNQVQgPSAnTU0veXl5eScsXG4gICAgUVVBUlRFUl9GT1JNQVQgPSAnUS95eXl5JyxcbiAgICBXRUVLX0ZPUk1BVCA9ICd3L3l5eXknLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIERhdGVQYXJzZSB7XG4gICAgZGF0ZUlucHV0OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIERhdGVEaXNwbGF5ID0gRGF0ZVBhcnNlICYge1xuICAgIG1vbnRoWWVhckxhYmVsPzogc3RyaW5nO1xuICAgIGRhdGVBMTF5TGFiZWw/OiBzdHJpbmc7XG4gICAgbW9udGhZZWFyQTExeUxhYmVsPzogc3RyaW5nO1xuICAgIHF1YXJ0ZXJZZWFyQTExeUxhYmVsPzogc3RyaW5nO1xuICAgIHllYXJMYWJlbD86IHN0cmluZztcbiAgICBxdWFydGVyWWVhckxhYmVsPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IGNsYXNzIEN1c3RvbURhdGVGb3JtYXQge1xuICAgIHByaXZhdGUgX3BhcnNlOiBEYXRlUGFyc2UgPSB7XG4gICAgICAgIGRhdGVJbnB1dDogRGF0ZUZyb21hdHMuREFURV9JTlBVVF9GT1JNQVQsXG4gICAgfTtcbiAgICBwcml2YXRlIF9kaXNwbGF5OiBEYXRlRGlzcGxheSA9IHtcbiAgICAgICAgZGF0ZUlucHV0OiBEYXRlRnJvbWF0cy5EQVRFX0lOUFVUX0ZPUk1BVCxcbiAgICAgICAgbW9udGhZZWFyTGFiZWw6ICdNTU0gWVlZWScsXG4gICAgICAgIGRhdGVBMTF5TGFiZWw6ICdMTCcsXG4gICAgICAgIG1vbnRoWWVhckExMXlMYWJlbDogJ01NTSBZWVlZJyxcbiAgICAgICAgcXVhcnRlclllYXJMYWJlbDogJ1EvWVlZWScsXG4gICAgICAgIHllYXJMYWJlbDogJ1lZWVknLFxuICAgIH07XG5cbiAgICBzZXQgcGFyc2UocGFyc2U6IERhdGVQYXJzZSkge1xuICAgICAgICB0aGlzLl9wYXJzZSA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuX3BhcnNlLCBwYXJzZSk7XG4gICAgfVxuXG4gICAgZ2V0IHBhcnNlKCk6IERhdGVQYXJzZSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wYXJzZTtcbiAgICB9XG5cbiAgICBzZXQgZGlzcGxheShkaXNwbGF5OiBEYXRlRGlzcGxheSkge1xuICAgICAgICB0aGlzLl9kaXNwbGF5ID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5fZGlzcGxheSwgZGlzcGxheSk7XG4gICAgfVxuXG4gICAgZ2V0IGRpc3BsYXkoKTogRGF0ZURpc3BsYXkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGlzcGxheTtcbiAgICB9XG5cbiAgICB1cGRhdGVEYXRlRm9ybWF0KHBhcnNlOiBEYXRlUGFyc2UsIGRpc3BsYXk/OiBEYXRlRGlzcGxheSkge1xuICAgICAgICB0aGlzLnBhcnNlID0gcGFyc2U7XG4gICAgICAgIGlmICghZGlzcGxheSkge1xuICAgICAgICAgICAgZGlzcGxheSA9IHBhcnNlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZGlzcGxheSA9IGRpc3BsYXk7XG4gICAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElEYXRlUGlja2VyRm9ybWF0Q29uZmlnIHtcbiAgICBkYXk/OiBzdHJpbmc7XG4gICAgbW9udGg/OiBzdHJpbmc7XG4gICAgeWVhcj86IHN0cmluZztcbiAgICBxdWFydGVyPzogc3RyaW5nO1xuICAgIHdlZWs/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBlbnVtIERhdGVQaWNrZXJQZXJpb2RQb3NpdGlvbiB7XG4gICAgRU5EX09GX1BFUklPRCxcbiAgICBNSURETEVfT0ZfUEVSSU9ELFxuICAgIFNUQVJUX09GX1BFUklPRCxcbiAgICBERUZBVUxULFxufVxuXG5leHBvcnQgZW51bSBUaW1lZnJhbWVPcHRpb24ge1xuICAgIERBWSA9ICdkYXknLFxuICAgIE1PTlRIID0gJ21vbnRoJyxcbiAgICBRVUFSVEVSID0gJ3F1YXJ0ZXInLFxuICAgIFdFRUsgPSAnd2VlaycsXG4gICAgWUVBUiA9ICd5ZWFyJyxcbn1cblxuZXhwb3J0IGVudW0gQ2FsZW5kYXJWaWV3IHtcbiAgICBGT1JfREFZUyA9ICdtb250aCcsXG4gICAgRk9SX01PTlRIUyA9ICd5ZWFyJyxcbiAgICBGT1JfUVVBUlRFUlMgPSAnbm9uZScsXG4gICAgRk9SX1lFQVJTID0gJ211bHRpLXllYXInLFxufVxuXG5leHBvcnQgZW51bSBEYXRlVGFncyB7XG4gICAgVE9EQVkgPSAndG9kYXknLFxuICAgIFlFU1RFUkRBWSA9ICd5ZXN0ZXJkYXknLFxuICAgIFRISVNfTU9OVEggPSAndGhpc19tb250aCcsXG4gICAgUFJFVl9NT05USCA9ICdwcmV2X21vbnRoJyxcbiAgICBUSElTX1FVQVJURVIgPSAndGhpc19xdWFydGVyJyxcbiAgICBQUkVWX1FVQVJURVIgPSAncHJldl9xdWFydGVyJyxcbiAgICBUSElTX1lFQVIgPSAndGhpc195ZWFyJyxcbiAgICBQUkVWX1lFQVIgPSAncHJldl95ZWFyJyxcbn1cblxuZXhwb3J0IHR5cGUgVFRpbWVmcmFtZU9wdGlvbiA9IFRpbWVmcmFtZU9wdGlvbjtcbmV4cG9ydCB0eXBlIFRDYWxlbmRhclZpZXcgPSBDYWxlbmRhclZpZXc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVRpbWVmcmFtZU9wdGlvbiB7XG4gICAgdGltZWZyYW1lOiBUaW1lZnJhbWVPcHRpb247XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICB2YWx1ZTogVENhbGVuZGFyVmlldztcbiAgICBmb3JtYXQ6IHN0cmluZztcbiAgICBwZXJpb2RMYWJlbDogKCkgPT4gc3RyaW5nO1xufVxuIl19
|
|
@@ -44,6 +44,18 @@ export class DrSharedUtils {
|
|
|
44
44
|
case DateTags.PREV_MONTH:
|
|
45
45
|
todayDate.subtract(1, 'months').endOf('month');
|
|
46
46
|
return todayDate;
|
|
47
|
+
case DateTags.THIS_QUARTER:
|
|
48
|
+
todayDate.endOf('quarter');
|
|
49
|
+
return todayDate;
|
|
50
|
+
case DateTags.PREV_QUARTER:
|
|
51
|
+
todayDate.subtract(1, 'quarters').endOf('quarter');
|
|
52
|
+
return todayDate;
|
|
53
|
+
case DateTags.THIS_YEAR:
|
|
54
|
+
todayDate.endOf('year');
|
|
55
|
+
return todayDate;
|
|
56
|
+
case DateTags.PREV_YEAR:
|
|
57
|
+
todayDate.subtract(1, 'years').endOf('year');
|
|
58
|
+
return todayDate;
|
|
47
59
|
}
|
|
48
60
|
}
|
|
49
61
|
static { this.fromResizeObserver = (target) => new Observable((observer) => {
|
|
@@ -83,4 +95,4 @@ export class DrSharedUtils {
|
|
|
83
95
|
return result;
|
|
84
96
|
}; }
|
|
85
97
|
}
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItc2hhcmVkLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvdXRpbHMvZHItc2hhcmVkLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFbEMsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFekMsTUFBTSxPQUFPLGFBQWE7SUFDdEI7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxNQUFjO1FBQ2pELE1BQU0sWUFBWSxHQUFHLGVBQWUsQ0FBQyxHQUFHLENBQUM7UUFFekMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU8sWUFBWSxDQUFDO1NBQ3ZCO1FBRUQsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzdDLFFBQVEsSUFBSSxFQUFFO1lBQ1YsS0FBSyxlQUFlLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztnQkFDOUIsT0FBTyxlQUFlLENBQUMsT0FBTyxDQUFDO1lBQ25DLEtBQUssZUFBZSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7Z0JBQzlCLE9BQU8sZUFBZSxDQUFDLEdBQUcsQ0FBQztZQUMvQixLQUFLLGVBQWUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO2dCQUM5QixPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQUM7WUFDaEMsS0FBSyxlQUFlLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztnQkFDOUIsT0FBTyxlQUFlLENBQUMsS0FBSyxDQUFDO1lBQ2pDLEtBQUssZUFBZSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7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LENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNsQyxPQUFPLFNBQVMsQ0FBQztTQUNwQjtRQUVELE1BQU0sSUFBSSxHQUFhLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEMsSUFBSSxNQUFNLEdBQVEsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUcsQ0FBQyxDQUFDO1FBRXZDLEtBQUssTUFBTSxDQUFDLElBQUksSUFBSSxFQUFFO1lBQ2xCLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNwQyxPQUFPLFNBQVMsQ0FBQzthQUNwQjtZQUVELE1BQU0sR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDdEI7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBEYXRlVGFncywgVGltZWZyYW1lT3B0aW9uIH0gZnJvbSAnLi4vbW9kZWxzL2RhdGVQaWNrZXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgaXNOaWwsIGlzT2JqZWN0IH0gZnJvbSAnbG9kYXNoJztcblxuZXhwb3J0IGNsYXNzIERyU2hhcmVkVXRpbHMge1xuICAgIC8qKlxuICAgICAqIEdldCB0aW1lZnJhbWUgKGRheSwgeWVhciwgbW9udGgsIHF1YXJ0ZXIpIGJhc2VkIG9uIHBhc3NlZCBmb3JtYXRcbiAgICAgKlxuICAgICAqIEBwYXJhbSBmb3JtYXQgLSBkYXRlIGZvcm1hdCBzdHJpbmcuIEV4YW1wbGVzOiBNTS9ERC9ZWVlZLCBRL1lZWVlcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldFRpbWVmcmFtZUJ5RGF0ZUZvcm1hdChmb3JtYXQ6IHN0cmluZyk6IFRpbWVmcmFtZU9wdGlvbiB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRGcmFtZSA9IFRpbWVmcmFtZU9wdGlvbi5EQVk7XG5cbiAgICAgICAgaWYgKCFmb3JtYXQpIHtcbiAgICAgICAgICAgIHJldHVybiBkZWZhdWx0RnJhbWU7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBsb3dlckNhc2VGb3JtYXQgPSBmb3JtYXQudG9Mb3dlckNhc2UoKTtcbiAgICAgICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICAgICAgICBjYXNlIGxvd2VyQ2FzZUZvcm1hdC5pbmNsdWRlcygncScpOlxuICAgICAgICAgICAgICAgIHJldHVybiBUaW1lZnJhbWVPcHRpb24uUVVBUlRFUjtcbiAgICAgICAgICAgIGNhc2UgbG93ZXJDYXNlRm9ybWF0LmluY2x1ZGVzKCdkJyk6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFRpbWVmcmFtZU9wdGlvbi5EQVk7XG4gICAgICAgICAgICBjYXNlIGxvd2VyQ2FzZUZvcm1hdC5pbmNsdWRlcygndycpOlxuICAgICAgICAgICAgICAgIHJldHVybiBUaW1lZnJhbWVPcHRpb24uV0VFSztcbiAgICAgICAgICAgIGNhc2UgbG93ZXJDYXNlRm9ybWF0LmluY2x1ZGVzKCdtJyk6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFRpbWVmcmFtZU9wdGlvbi5NT05USDtcbiAgICAgICAgICAgIGNhc2UgbG93ZXJDYXNlRm9ybWF0LmluY2x1ZGVzKCd5Jyk6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFRpbWVmcmFtZU9wdGlvbi5ZRUFSO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gZGVmYXVsdEZyYW1lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXREYXRlQnlUYWcodGFnOiBzdHJpbmcsIHNob3VsZERhdGVCZUNvcnJlY3RlZFdpdGhUaW1lem9uZT86IGJvb2xlYW4pOiBtb21lbnQuTW9tZW50IHtcbiAgICAgICAgY29uc3QgZGF0ZSA9IHNob3VsZERhdGVCZUNvcnJlY3RlZFdpdGhUaW1lem9uZSA/IG1vbWVudCgpLnN1YnRyYWN0KG5ldyBEYXRlKCkuZ2V0VGltZXpvbmVPZmZzZXQoKSwgJ21pbnV0ZXMnKSA6IG1vbWVudCgpO1xuICAgICAgICBjb25zdCB0b2RheURhdGUgPSBkYXRlLnV0YygpLmVuZE9mKCdkYXknKTtcbiAgICAgICAgc3dpdGNoICh0YWcpIHtcbiAgICAgICAgICAgIGNhc2UgRGF0ZVRhZ3MuVE9EQVk6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRvZGF5RGF0ZTtcbiAgICAgICAgICAgIGNhc2UgRGF0ZVRhZ3MuWUVTVEVSREFZOlxuICAgICAgICAgICAgICAgIHRvZGF5RGF0ZS5zdWJ0cmFjdCgxLCAnZGF5cycpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0b2RheURhdGU7XG4gICAgICAgICAgICBjYXNlIERhdGVUYWdzLlRISVNfTU9OVEg6XG4gICAgICAgICAgICAgICAgdG9kYXlEYXRlLmVuZE9mKCdtb250aCcpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0b2RheURhdGU7XG4gICAgICAgICAgICBjYXNlIERhdGVUYWdzLlBSRVZfTU9OVEg6XG4gICAgICAgICAgICAgICAgdG9kYXlEYXRlLnN1YnRyYWN0KDEsICdtb250aHMnKS5lbmRPZignbW9udGgnKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdG9kYXlEYXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBmcm9tUmVzaXplT2JzZXJ2ZXIgPSAodGFyZ2V0OiBFbGVtZW50KTogT2JzZXJ2YWJsZTxSZXNpemVPYnNlcnZlckVudHJ5W10+ID0+XG4gICAgICAgIG5ldyBPYnNlcnZhYmxlKChvYnNlcnZlcikgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKGVudHJpZXMpID0+IG9ic2VydmVyLm5leHQoZW50cmllcykpO1xuXG4gICAgICAgICAgICByZXNpemVPYnNlcnZlci5vYnNlcnZlKHRhcmdldCk7XG5cbiAgICAgICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgfSk7XG5cbiAgICBwdWJsaWMgc3RhdGljIG5vcm1hbGl6ZUxpbmVFbmRpbmdzID0gKHN0cjogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgICAgICAgcmV0dXJuIHN0ciA/IHN0ci5yZXBsYWNlKC9cXHJcXG58XFxyL2csICdcXG4nKSA6IHN0cjtcbiAgICB9O1xuXG4gICAgcHVibGljIHN0YXRpYyBpc0xvY2FsaG9zdCA9ICgpOiBib29sZWFuID0+XG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSA9PT0gJ2xvY2FsaG9zdCcgfHwgd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lID09PSAnMTI3LjAuMC4xJztcblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0Um91dGVEYXRhQXR0cmlidXRlVmFsdWUgPSA8VD4oXG4gICAgICAgIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgYXR0cmlidXRlOiBzdHJpbmcsXG4gICAgICAgIGRlZmF1bHRWYWx1ZT86IFQsXG4gICAgKTogVCB8IHVuZGVmaW5lZCA9PiB7XG4gICAgICAgIGlmIChhY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5kYXRhLmhhc093blByb3BlcnR5KGF0dHJpYnV0ZSkpIHtcbiAgICAgICAgICAgIGRlZmF1bHRWYWx1ZSA9IGFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LmRhdGFbYXR0cmlidXRlXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChhY3RpdmF0ZWRSb3V0ZT8uY2hpbGRyZW4/Lmxlbmd0aCkge1xuICAgICAgICAgICAgYWN0aXZhdGVkUm91dGUuY2hpbGRyZW4uZm9yRWFjaCgoY2hpbGQpID0+IHtcbiAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWUgPSBEclNoYXJlZFV0aWxzLmdldFJvdXRlRGF0YUF0dHJpYnV0ZVZhbHVlKGNoaWxkLCBhdHRyaWJ1dGUsIGRlZmF1bHRWYWx1ZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBkZWZhdWx0VmFsdWU7XG4gICAgfTtcblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0UHJvcGVydHkgPSAodmFsdWU6IHsgW2tleTogc3RyaW5nXTogYW55IH0sIGtleTogc3RyaW5nKTogYW55ID0+IHtcbiAgICAgICAgaWYgKGlzTmlsKHZhbHVlKSB8fCAhaXNPYmplY3QodmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qga2V5czogc3RyaW5nW10gPSBrZXkuc3BsaXQoJy4nKTtcbiAgICAgICAgbGV0IHJlc3VsdDogYW55ID0gdmFsdWVba2V5cy5zaGlmdCgpIV07XG5cbiAgICAgICAgZm9yIChjb25zdCBrIG9mIGtleXMpIHtcbiAgICAgICAgICAgIGlmIChpc05pbChyZXN1bHQpIHx8ICFpc09iamVjdChyZXN1bHQpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0W2tdO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9O1xufVxuIl19
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItc2hhcmVkLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvdXRpbHMvZHItc2hhcmVkLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFbEMsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFekMsTUFBTSxPQUFPLGFBQWE7SUFDdEI7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxNQUFjO1FBQ2pELE1BQU0sWUFBWSxHQUFHLGVBQWUsQ0FBQyxHQUFHLENBQUM7UUFFekMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU8sWUFBWSxDQUFDO1NBQ3ZCO1FBRUQsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzdDLFFBQVEsSUFBSSxFQUFFO1lBQ1YsS0FBSyxlQUFlLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztnQkFDOUIsT0FBTyxlQUFlLENBQUMsT0FBTyxDQUFDO1lBQ25DLEtBQUssZUFBZSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7Z0JBQzlCLE9BQU8sZUFBZSxDQUFDLEdBQUcsQ0FBQztZQUMvQixLQUFLLGVBQWUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO2dCQUM5QixPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQUM7WUFDaEMsS0FBSyxlQUFlLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQztnQkFDOUIsT0FBTyxlQUFlLENBQUMsS0FBSyxDQUFDO1lBQ2pDLEtBQUssZUFBZSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7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QUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUN4RCxZQUFZLEdBQUcsY0FBYyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDMUQ7UUFFRCxJQUFJLGNBQWMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFO1lBQ2xDLGNBQWMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ3RDLFlBQVksR0FBRyxhQUFhLENBQUMsMEJBQTBCLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxZQUFZLENBQUMsQ0FBQztZQUM1RixDQUFDLENBQUMsQ0FBQztTQUNOO1FBRUQsT0FBTyxZQUFZLENBQUM7SUFDeEIsQ0FBQyxDQUFDO2FBRVksZ0JBQVcsR0FBRyxDQUFDLEtBQTZCLEVBQUUsR0FBVyxFQUFPLEVBQUU7UUFDNUUsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDbEMsT0FBTyxTQUFTLENBQUM7U0FDcEI7UUFFRCxNQUFNLElBQUksR0FBYSxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3RDLElBQUksTUFBTSxHQUFRLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFHLENBQUMsQ0FBQztRQUV2QyxLQUFLLE1BQU0sQ0FBQyxJQUFJLElBQUksRUFBRTtZQUNsQixJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDcEMsT0FBTyxTQUFTLENBQUM7YUFDcEI7WUFFRCxNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3RCO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDbEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHsgRGF0ZVRhZ3MsIFRpbWVmcmFtZU9wdGlvbiB9IGZyb20gJy4uL21vZGVscy9kYXRlUGlja2VyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGlzTmlsLCBpc09iamVjdCB9IGZyb20gJ2xvZGFzaCc7XG5cbmV4cG9ydCBjbGFzcyBEclNoYXJlZFV0aWxzIHtcbiAgICAvKipcbiAgICAgKiBHZXQgdGltZWZyYW1lIChkYXksIHllYXIsIG1vbnRoLCBxdWFydGVyKSBiYXNlZCBvbiBwYXNzZWQgZm9ybWF0XG4gICAgICpcbiAgICAgKiBAcGFyYW0gZm9ybWF0IC0gZGF0ZSBmb3JtYXQgc3RyaW5nLiBFeGFtcGxlczogTU0vREQvWVlZWSwgUS9ZWVlZXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBnZXRUaW1lZnJhbWVCeURhdGVGb3JtYXQoZm9ybWF0OiBzdHJpbmcpOiBUaW1lZnJhbWVPcHRpb24ge1xuICAgICAgICBjb25zdCBkZWZhdWx0RnJhbWUgPSBUaW1lZnJhbWVPcHRpb24uREFZO1xuXG4gICAgICAgIGlmICghZm9ybWF0KSB7XG4gICAgICAgICAgICByZXR1cm4gZGVmYXVsdEZyYW1lO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbG93ZXJDYXNlRm9ybWF0ID0gZm9ybWF0LnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgICAgICAgY2FzZSBsb3dlckNhc2VGb3JtYXQuaW5jbHVkZXMoJ3EnKTpcbiAgICAgICAgICAgICAgICByZXR1cm4gVGltZWZyYW1lT3B0aW9uLlFVQVJURVI7XG4gICAgICAgICAgICBjYXNlIGxvd2VyQ2FzZUZvcm1hdC5pbmNsdWRlcygnZCcpOlxuICAgICAgICAgICAgICAgIHJldHVybiBUaW1lZnJhbWVPcHRpb24uREFZO1xuICAgICAgICAgICAgY2FzZSBsb3dlckNhc2VGb3JtYXQuaW5jbHVkZXMoJ3cnKTpcbiAgICAgICAgICAgICAgICByZXR1cm4gVGltZWZyYW1lT3B0aW9uLldFRUs7XG4gICAgICAgICAgICBjYXNlIGxvd2VyQ2FzZUZvcm1hdC5pbmNsdWRlcygnbScpOlxuICAgICAgICAgICAgICAgIHJldHVybiBUaW1lZnJhbWVPcHRpb24uTU9OVEg7XG4gICAgICAgICAgICBjYXNlIGxvd2VyQ2FzZUZvcm1hdC5pbmNsdWRlcygneScpOlxuICAgICAgICAgICAgICAgIHJldHVybiBUaW1lZnJhbWVPcHRpb24uWUVBUjtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgcmV0dXJuIGRlZmF1bHRGcmFtZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0RGF0ZUJ5VGFnKHRhZzogc3RyaW5nLCBzaG91bGREYXRlQmVDb3JyZWN0ZWRXaXRoVGltZXpvbmU/OiBib29sZWFuKTogbW9tZW50Lk1vbWVudCB7XG4gICAgICAgIGNvbnN0IGRhdGUgPSBzaG91bGREYXRlQmVDb3JyZWN0ZWRXaXRoVGltZXpvbmUgPyBtb21lbnQoKS5zdWJ0cmFjdChuZXcgRGF0ZSgpLmdldFRpbWV6b25lT2Zmc2V0KCksICdtaW51dGVzJykgOiBtb21lbnQoKTtcbiAgICAgICAgY29uc3QgdG9kYXlEYXRlID0gZGF0ZS51dGMoKS5lbmRPZignZGF5Jyk7XG4gICAgICAgIHN3aXRjaCAodGFnKSB7XG4gICAgICAgICAgICBjYXNlIERhdGVUYWdzLlRPREFZOlxuICAgICAgICAgICAgICAgIHJldHVybiB0b2RheURhdGU7XG4gICAgICAgICAgICBjYXNlIERhdGVUYWdzLllFU1RFUkRBWTpcbiAgICAgICAgICAgICAgICB0b2RheURhdGUuc3VidHJhY3QoMSwgJ2RheXMnKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdG9kYXlEYXRlO1xuICAgICAgICAgICAgY2FzZSBEYXRlVGFncy5USElTX01PTlRIOlxuICAgICAgICAgICAgICAgIHRvZGF5RGF0ZS5lbmRPZignbW9udGgnKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdG9kYXlEYXRlO1xuICAgICAgICAgICAgY2FzZSBEYXRlVGFncy5QUkVWX01PTlRIOlxuICAgICAgICAgICAgICAgIHRvZGF5RGF0ZS5zdWJ0cmFjdCgxLCAnbW9udGhzJykuZW5kT2YoJ21vbnRoJyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRvZGF5RGF0ZTtcbiAgICAgICAgICAgIGNhc2UgRGF0ZVRhZ3MuVEhJU19RVUFSVEVSOlxuICAgICAgICAgICAgICAgIHRvZGF5RGF0ZS5lbmRPZigncXVhcnRlcicpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0b2RheURhdGU7XG4gICAgICAgICAgICBjYXNlIERhdGVUYWdzLlBSRVZfUVVBUlRFUjpcbiAgICAgICAgICAgICAgICB0b2RheURhdGUuc3VidHJhY3QoMSwgJ3F1YXJ0ZXJzJykuZW5kT2YoJ3F1YXJ0ZXInKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdG9kYXlEYXRlO1xuICAgICAgICAgICAgY2FzZSBEYXRlVGFncy5USElTX1lFQVI6XG4gICAgICAgICAgICAgICAgdG9kYXlEYXRlLmVuZE9mKCd5ZWFyJyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRvZGF5RGF0ZTtcbiAgICAgICAgICAgIGNhc2UgRGF0ZVRhZ3MuUFJFVl9ZRUFSOlxuICAgICAgICAgICAgICAgIHRvZGF5RGF0ZS5zdWJ0cmFjdCgxLCAneWVhcnMnKS5lbmRPZigneWVhcicpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0b2RheURhdGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZyb21SZXNpemVPYnNlcnZlciA9ICh0YXJnZXQ6IEVsZW1lbnQpOiBPYnNlcnZhYmxlPFJlc2l6ZU9ic2VydmVyRW50cnlbXT4gPT5cbiAgICAgICAgbmV3IE9ic2VydmFibGUoKG9ic2VydmVyKSA9PiB7XG4gICAgICAgICAgICBjb25zdCByZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoZW50cmllcykgPT4gb2JzZXJ2ZXIubmV4dChlbnRyaWVzKSk7XG5cbiAgICAgICAgICAgIHJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGFyZ2V0KTtcblxuICAgICAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgICAgICByZXNpemVPYnNlcnZlci5kaXNjb25uZWN0KCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9KTtcblxuICAgIHB1YmxpYyBzdGF0aWMgbm9ybWFsaXplTGluZUVuZGluZ3MgPSAoc3RyOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICAgICAgICByZXR1cm4gc3RyID8gc3RyLnJlcGxhY2UoL1xcclxcbnxcXHIvZywgJ1xcbicpIDogc3RyO1xuICAgIH07XG5cbiAgICBwdWJsaWMgc3RhdGljIGlzTG9jYWxob3N0ID0gKCk6IGJvb2xlYW4gPT5cbiAgICAgICAgd2luZG93LmxvY2F0aW9uLmhvc3RuYW1lID09PSAnbG9jYWxob3N0JyB8fCB3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUgPT09ICcxMjcuMC4wLjEnO1xuXG4gICAgcHVibGljIHN0YXRpYyBnZXRSb3V0ZURhdGFBdHRyaWJ1dGVWYWx1ZSA9IDxUPihcbiAgICAgICAgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBhdHRyaWJ1dGU6IHN0cmluZyxcbiAgICAgICAgZGVmYXVsdFZhbHVlPzogVCxcbiAgICApOiBUIHwgdW5kZWZpbmVkID0+IHtcbiAgICAgICAgaWYgKGFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LmRhdGEuaGFzT3duUHJvcGVydHkoYXR0cmlidXRlKSkge1xuICAgICAgICAgICAgZGVmYXVsdFZhbHVlID0gYWN0aXZhdGVkUm91dGUuc25hcHNob3QuZGF0YVthdHRyaWJ1dGVdO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGFjdGl2YXRlZFJvdXRlPy5jaGlsZHJlbj8ubGVuZ3RoKSB7XG4gICAgICAgICAgICBhY3RpdmF0ZWRSb3V0ZS5jaGlsZHJlbi5mb3JFYWNoKChjaGlsZCkgPT4ge1xuICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZSA9IERyU2hhcmVkVXRpbHMuZ2V0Um91dGVEYXRhQXR0cmlidXRlVmFsdWUoY2hpbGQsIGF0dHJpYnV0ZSwgZGVmYXVsdFZhbHVlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcbiAgICB9O1xuXG4gICAgcHVibGljIHN0YXRpYyBnZXRQcm9wZXJ0eSA9ICh2YWx1ZTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSwga2V5OiBzdHJpbmcpOiBhbnkgPT4ge1xuICAgICAgICBpZiAoaXNOaWwodmFsdWUpIHx8ICFpc09iamVjdCh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBrZXlzOiBzdHJpbmdbXSA9IGtleS5zcGxpdCgnLicpO1xuICAgICAgICBsZXQgcmVzdWx0OiBhbnkgPSB2YWx1ZVtrZXlzLnNoaWZ0KCkhXTtcblxuICAgICAgICBmb3IgKGNvbnN0IGsgb2Yga2V5cykge1xuICAgICAgICAgICAgaWYgKGlzTmlsKHJlc3VsdCkgfHwgIWlzT2JqZWN0KHJlc3VsdCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXN1bHQgPSByZXN1bHRba107XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH07XG59XG4iXX0=
|
|
@@ -152,6 +152,10 @@ var DateTags;
|
|
|
152
152
|
DateTags["YESTERDAY"] = "yesterday";
|
|
153
153
|
DateTags["THIS_MONTH"] = "this_month";
|
|
154
154
|
DateTags["PREV_MONTH"] = "prev_month";
|
|
155
|
+
DateTags["THIS_QUARTER"] = "this_quarter";
|
|
156
|
+
DateTags["PREV_QUARTER"] = "prev_quarter";
|
|
157
|
+
DateTags["THIS_YEAR"] = "this_year";
|
|
158
|
+
DateTags["PREV_YEAR"] = "prev_year";
|
|
155
159
|
})(DateTags || (DateTags = {}));
|
|
156
160
|
|
|
157
161
|
class DrSharedUtils {
|
|
@@ -196,6 +200,18 @@ class DrSharedUtils {
|
|
|
196
200
|
case DateTags.PREV_MONTH:
|
|
197
201
|
todayDate.subtract(1, 'months').endOf('month');
|
|
198
202
|
return todayDate;
|
|
203
|
+
case DateTags.THIS_QUARTER:
|
|
204
|
+
todayDate.endOf('quarter');
|
|
205
|
+
return todayDate;
|
|
206
|
+
case DateTags.PREV_QUARTER:
|
|
207
|
+
todayDate.subtract(1, 'quarters').endOf('quarter');
|
|
208
|
+
return todayDate;
|
|
209
|
+
case DateTags.THIS_YEAR:
|
|
210
|
+
todayDate.endOf('year');
|
|
211
|
+
return todayDate;
|
|
212
|
+
case DateTags.PREV_YEAR:
|
|
213
|
+
todayDate.subtract(1, 'years').endOf('year');
|
|
214
|
+
return todayDate;
|
|
199
215
|
}
|
|
200
216
|
}
|
|
201
217
|
static { this.fromResizeObserver = (target) => new Observable((observer) => {
|
|
@@ -523,6 +539,22 @@ class DrDatePickerService {
|
|
|
523
539
|
this.updateTimeframeAndFormat(DateFromats.MONTH_YEAR_FORMAT);
|
|
524
540
|
this.selectDateInCalendarMonthView(date, calender);
|
|
525
541
|
break;
|
|
542
|
+
case DateTags.THIS_QUARTER:
|
|
543
|
+
this.updateTimeframeAndFormat(DateFromats.QUARTER_FORMAT);
|
|
544
|
+
this.selectDateInCalendarQuarterView(date, calender);
|
|
545
|
+
break;
|
|
546
|
+
case DateTags.PREV_QUARTER:
|
|
547
|
+
this.updateTimeframeAndFormat(DateFromats.QUARTER_FORMAT);
|
|
548
|
+
this.selectDateInCalendarQuarterView(date, calender);
|
|
549
|
+
break;
|
|
550
|
+
case DateTags.THIS_YEAR:
|
|
551
|
+
this.updateTimeframeAndFormat(DateFromats.YEAR_FORMAT);
|
|
552
|
+
this.selectDateInCalendarYearView(date, calender);
|
|
553
|
+
break;
|
|
554
|
+
case DateTags.PREV_YEAR:
|
|
555
|
+
this.updateTimeframeAndFormat(DateFromats.YEAR_FORMAT);
|
|
556
|
+
this.selectDateInCalendarYearView(date, calender);
|
|
557
|
+
break;
|
|
526
558
|
}
|
|
527
559
|
}
|
|
528
560
|
this.presetTag$.next(tag);
|
|
@@ -538,6 +570,26 @@ class DrDatePickerService {
|
|
|
538
570
|
}
|
|
539
571
|
});
|
|
540
572
|
}
|
|
573
|
+
selectDateInCalendarQuarterView(date, calender) {
|
|
574
|
+
setTimeout(() => {
|
|
575
|
+
const yearView = calender.yearView;
|
|
576
|
+
if (yearView) {
|
|
577
|
+
yearView._activeDate = date;
|
|
578
|
+
yearView._selected = date;
|
|
579
|
+
yearView._init();
|
|
580
|
+
}
|
|
581
|
+
});
|
|
582
|
+
}
|
|
583
|
+
selectDateInCalendarYearView(date, calender) {
|
|
584
|
+
setTimeout(() => {
|
|
585
|
+
const multiYearView = calender.multiYearView;
|
|
586
|
+
if (multiYearView) {
|
|
587
|
+
multiYearView._activeDate = date;
|
|
588
|
+
multiYearView._selectedYear = date.year();
|
|
589
|
+
multiYearView._init();
|
|
590
|
+
}
|
|
591
|
+
});
|
|
592
|
+
}
|
|
541
593
|
resetPresetTag() {
|
|
542
594
|
if (!this.keepPresetTag) {
|
|
543
595
|
this.presetTag$.next(null);
|
|
@@ -2160,11 +2212,11 @@ class DrDatePickerCustomHeaderComponent {
|
|
|
2160
2212
|
i0.ɵɵtextInterpolate(ctx.periodYearLabel);
|
|
2161
2213
|
i0.ɵɵadvance(3);
|
|
2162
2214
|
i0.ɵɵproperty("ngIf", ctx.currentViewIsQuarter);
|
|
2163
|
-
} }, dependencies: [i1$2.NgControlStatus, i1$2.NgModel, i1.NgClass, i1.NgForOf, i1.NgIf, DrTooltipDirective, DrSelectComponent, DrShowTimeframePipe], styles: ["[_nghost-%COMP%]{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper[_ngcontent-%COMP%]{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date[_ngcontent-%COMP%]{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags[_ngcontent-%COMP%]{display:flex;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%]{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%] .dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected[_ngcontent-%COMP%]{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label[_ngcontent-%COMP%]{cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector.selected[_ngcontent-%COMP%]{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled[_ngcontent-%COMP%], .dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled.selected[_ngcontent-%COMP%]{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}"], changeDetection: 0 }); }
|
|
2215
|
+
} }, dependencies: [i1$2.NgControlStatus, i1$2.NgModel, i1.NgClass, i1.NgForOf, i1.NgIf, DrTooltipDirective, DrSelectComponent, DrShowTimeframePipe], styles: ["[_nghost-%COMP%]{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper[_ngcontent-%COMP%]{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date[_ngcontent-%COMP%]{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;row-gap:8px;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%]{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%] .dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected[_ngcontent-%COMP%]{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label[_ngcontent-%COMP%]{cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector.selected[_ngcontent-%COMP%]{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled[_ngcontent-%COMP%], .dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled.selected[_ngcontent-%COMP%]{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}"], changeDetection: 0 }); }
|
|
2164
2216
|
}
|
|
2165
2217
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrDatePickerCustomHeaderComponent, [{
|
|
2166
2218
|
type: Component,
|
|
2167
|
-
args: [{ selector: 'dr-date-picker_custom-header.component', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"datePickerService.isTimeframeSelectionEnabled\" class=\"dr-datepicker__timeframe-select__wrapper\">\n <div *ngIf=\"datePickerService.isUsingDateTagPresets\" class=\"dr-datepicker-preset-date\">\n <div class=\"dr-datepicker-preset-date__tags\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags--solo': !datePickerService.isUsingTimeFrameSelect }\">\n <div\n *ngFor=\"let tag of datePickerService.availableDateTagPresets\"\n id=\"preset_tag\"\n class=\"dr-datepicker-preset-date__tags__tag\"\n (click)=\"onSelectPresetTag(tag)\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags__tag--selected': tag.key === selectedPresetTag }\"\n [drTooltip]=\"selectedPresetTag === tag.key ? 'Unselect preset' : ''\"\n [drTooltipPosition]=\"'top'\">\n {{ tag.label }}\n </div>\n </div>\n </div>\n <dr-select\n *ngIf=\"datePickerService.isUsingTimeFrameSelect\"\n class=\"dr-datepicker__timeframe-select\"\n [ngModel]=\"selectedTimeframe\"\n [items]=\"timeframeOptions | drShowTimeframePipe: datePickerService.availableTimeframes\"\n bindLabel=\"title\"\n bindValue=\"value\"\n (ngModelChange)=\"setTimeframe($event)\">\n </dr-select>\n</div>\n\n<div class=\"dr-date-paging\">\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(false)\">\n <i class=\"dr-icon-arrow-left presentation_buttons-navigate_input\"></i>\n </div>\n <span class=\"example-header-label\">\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_MONTHS)\">{{ periodMonthLabel + ' ' }}</span>\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_YEARS)\">{{ periodYearLabel }}</span>\n </span>\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(true)\">\n <i class=\"dr-icon-arrow-right presentation_buttons-navigate_input\"></i>\n </div>\n</div>\n<div #quarterlyDatePicker class=\"dr-quarterly-datepicker\" *ngIf=\"currentViewIsQuarter\">\n <div\n *ngFor=\"let quarter of quarters\"\n class=\"quarter-selector\"\n (click)=\"onSelectQuarter(quarter)\"\n [class]=\"quarter === selectedQuarter ? 'selected' : ''\"\n [class.quarter-selector--disabled]=\"isQuarterDisabled(quarter)\">\n Q{{ quarter }}\n </div>\n</div>\n", styles: [":host{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags{display:flex;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo .dr-datepicker-preset-date__tags__tag{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label{cursor:pointer}.dr-quarterly-datepicker{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker .quarter-selector{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker .quarter-selector:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker .quarter-selector.selected{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker .quarter-selector--disabled,.dr-quarterly-datepicker .quarter-selector--disabled.selected{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}\n"] }]
|
|
2219
|
+
args: [{ selector: 'dr-date-picker_custom-header.component', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"datePickerService.isTimeframeSelectionEnabled\" class=\"dr-datepicker__timeframe-select__wrapper\">\n <div *ngIf=\"datePickerService.isUsingDateTagPresets\" class=\"dr-datepicker-preset-date\">\n <div class=\"dr-datepicker-preset-date__tags\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags--solo': !datePickerService.isUsingTimeFrameSelect }\">\n <div\n *ngFor=\"let tag of datePickerService.availableDateTagPresets\"\n id=\"preset_tag\"\n class=\"dr-datepicker-preset-date__tags__tag\"\n (click)=\"onSelectPresetTag(tag)\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags__tag--selected': tag.key === selectedPresetTag }\"\n [drTooltip]=\"selectedPresetTag === tag.key ? 'Unselect preset' : ''\"\n [drTooltipPosition]=\"'top'\">\n {{ tag.label }}\n </div>\n </div>\n </div>\n <dr-select\n *ngIf=\"datePickerService.isUsingTimeFrameSelect\"\n class=\"dr-datepicker__timeframe-select\"\n [ngModel]=\"selectedTimeframe\"\n [items]=\"timeframeOptions | drShowTimeframePipe: datePickerService.availableTimeframes\"\n bindLabel=\"title\"\n bindValue=\"value\"\n (ngModelChange)=\"setTimeframe($event)\">\n </dr-select>\n</div>\n\n<div class=\"dr-date-paging\">\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(false)\">\n <i class=\"dr-icon-arrow-left presentation_buttons-navigate_input\"></i>\n </div>\n <span class=\"example-header-label\">\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_MONTHS)\">{{ periodMonthLabel + ' ' }}</span>\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_YEARS)\">{{ periodYearLabel }}</span>\n </span>\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(true)\">\n <i class=\"dr-icon-arrow-right presentation_buttons-navigate_input\"></i>\n </div>\n</div>\n<div #quarterlyDatePicker class=\"dr-quarterly-datepicker\" *ngIf=\"currentViewIsQuarter\">\n <div\n *ngFor=\"let quarter of quarters\"\n class=\"quarter-selector\"\n (click)=\"onSelectQuarter(quarter)\"\n [class]=\"quarter === selectedQuarter ? 'selected' : ''\"\n [class.quarter-selector--disabled]=\"isQuarterDisabled(quarter)\">\n Q{{ quarter }}\n </div>\n</div>\n", styles: [":host{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags{display:flex;flex-wrap:wrap;row-gap:8px;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo .dr-datepicker-preset-date__tags__tag{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label{cursor:pointer}.dr-quarterly-datepicker{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker .quarter-selector{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker .quarter-selector:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker .quarter-selector.selected{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker .quarter-selector--disabled,.dr-quarterly-datepicker .quarter-selector--disabled.selected{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}\n"] }]
|
|
2168
2220
|
}], function () { return [{ type: i6.MatCalendar }, { type: i1$4.DateAdapter }, { type: CustomDateFormat, decorators: [{
|
|
2169
2221
|
type: Inject,
|
|
2170
2222
|
args: [MAT_DATE_FORMATS]
|
|
@@ -5058,11 +5110,11 @@ class DrFiscalMonthCalendarHeaderComponent extends DrDatePickerCustomHeaderCompo
|
|
|
5058
5110
|
i0.ɵɵtextInterpolate(ctx.periodYearLabel);
|
|
5059
5111
|
i0.ɵɵadvance(3);
|
|
5060
5112
|
i0.ɵɵproperty("ngIf", ctx.currentViewIsQuarter);
|
|
5061
|
-
} }, dependencies: [i1$2.NgControlStatus, i1$2.NgModel, i1.NgClass, i1.NgForOf, i1.NgIf, DrTooltipDirective, DrSelectComponent, DrShowTimeframePipe], styles: ["[_nghost-%COMP%]{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper[_ngcontent-%COMP%]{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date[_ngcontent-%COMP%]{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags[_ngcontent-%COMP%]{display:flex;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%]{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%] .dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected[_ngcontent-%COMP%]{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label[_ngcontent-%COMP%]{cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector.selected[_ngcontent-%COMP%]{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled[_ngcontent-%COMP%], .dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled.selected[_ngcontent-%COMP%]{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}"], changeDetection: 0 }); }
|
|
5113
|
+
} }, dependencies: [i1$2.NgControlStatus, i1$2.NgModel, i1.NgClass, i1.NgForOf, i1.NgIf, DrTooltipDirective, DrSelectComponent, DrShowTimeframePipe], styles: ["[_nghost-%COMP%]{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper[_ngcontent-%COMP%]{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date[_ngcontent-%COMP%]{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;row-gap:8px;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%]{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo[_ngcontent-%COMP%] .dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag[_ngcontent-%COMP%]{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected[_ngcontent-%COMP%]{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging[_ngcontent-%COMP%]{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button[_ngcontent-%COMP%]:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label[_ngcontent-%COMP%]{cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector[_ngcontent-%COMP%]:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector.selected[_ngcontent-%COMP%]{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled[_ngcontent-%COMP%], .dr-quarterly-datepicker[_ngcontent-%COMP%] .quarter-selector--disabled.selected[_ngcontent-%COMP%]{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}"], changeDetection: 0 }); }
|
|
5062
5114
|
}
|
|
5063
5115
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrFiscalMonthCalendarHeaderComponent, [{
|
|
5064
5116
|
type: Component,
|
|
5065
|
-
args: [{ selector: 'dr-fiscal-month-calendar-header.component', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"datePickerService.isTimeframeSelectionEnabled\" class=\"dr-datepicker__timeframe-select__wrapper\">\n <div *ngIf=\"datePickerService.isUsingDateTagPresets\" class=\"dr-datepicker-preset-date\">\n <div class=\"dr-datepicker-preset-date__tags\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags--solo': !datePickerService.isUsingTimeFrameSelect }\">\n <div\n *ngFor=\"let tag of datePickerService.availableDateTagPresets\"\n id=\"preset_tag\"\n class=\"dr-datepicker-preset-date__tags__tag\"\n (click)=\"onSelectPresetTag(tag)\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags__tag--selected': tag.key === selectedPresetTag }\"\n [drTooltip]=\"selectedPresetTag === tag.key ? 'Unselect preset' : ''\"\n [drTooltipPosition]=\"'top'\">\n {{ tag.label }}\n </div>\n </div>\n </div>\n <dr-select\n *ngIf=\"datePickerService.isUsingTimeFrameSelect\"\n class=\"dr-datepicker__timeframe-select\"\n [ngModel]=\"selectedTimeframe\"\n [items]=\"timeframeOptions | drShowTimeframePipe: datePickerService.availableTimeframes\"\n bindLabel=\"title\"\n bindValue=\"value\"\n (ngModelChange)=\"setTimeframe($event)\">\n </dr-select>\n</div>\n\n<div class=\"dr-date-paging\">\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(false)\">\n <i class=\"dr-icon-arrow-left presentation_buttons-navigate_input\"></i>\n </div>\n <span class=\"example-header-label\">\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_MONTHS)\">{{ periodMonthLabel + ' ' }}</span>\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_YEARS)\">{{ periodYearLabel }}</span>\n </span>\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(true)\">\n <i class=\"dr-icon-arrow-right presentation_buttons-navigate_input\"></i>\n </div>\n</div>\n<div #quarterlyDatePicker class=\"dr-quarterly-datepicker\" *ngIf=\"currentViewIsQuarter\">\n <div\n *ngFor=\"let quarter of quarters\"\n class=\"quarter-selector\"\n (click)=\"onSelectQuarter(quarter)\"\n [class]=\"quarter === selectedQuarter ? 'selected' : ''\"\n [class.quarter-selector--disabled]=\"isQuarterDisabled(quarter)\">\n Q{{ quarter }}\n </div>\n</div>\n", styles: [":host{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags{display:flex;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo .dr-datepicker-preset-date__tags__tag{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label{cursor:pointer}.dr-quarterly-datepicker{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker .quarter-selector{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker .quarter-selector:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker .quarter-selector.selected{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker .quarter-selector--disabled,.dr-quarterly-datepicker .quarter-selector--disabled.selected{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}\n"] }]
|
|
5117
|
+
args: [{ selector: 'dr-fiscal-month-calendar-header.component', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"datePickerService.isTimeframeSelectionEnabled\" class=\"dr-datepicker__timeframe-select__wrapper\">\n <div *ngIf=\"datePickerService.isUsingDateTagPresets\" class=\"dr-datepicker-preset-date\">\n <div class=\"dr-datepicker-preset-date__tags\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags--solo': !datePickerService.isUsingTimeFrameSelect }\">\n <div\n *ngFor=\"let tag of datePickerService.availableDateTagPresets\"\n id=\"preset_tag\"\n class=\"dr-datepicker-preset-date__tags__tag\"\n (click)=\"onSelectPresetTag(tag)\"\n [ngClass]=\"{ 'dr-datepicker-preset-date__tags__tag--selected': tag.key === selectedPresetTag }\"\n [drTooltip]=\"selectedPresetTag === tag.key ? 'Unselect preset' : ''\"\n [drTooltipPosition]=\"'top'\">\n {{ tag.label }}\n </div>\n </div>\n </div>\n <dr-select\n *ngIf=\"datePickerService.isUsingTimeFrameSelect\"\n class=\"dr-datepicker__timeframe-select\"\n [ngModel]=\"selectedTimeframe\"\n [items]=\"timeframeOptions | drShowTimeframePipe: datePickerService.availableTimeframes\"\n bindLabel=\"title\"\n bindValue=\"value\"\n (ngModelChange)=\"setTimeframe($event)\">\n </dr-select>\n</div>\n\n<div class=\"dr-date-paging\">\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(false)\">\n <i class=\"dr-icon-arrow-left presentation_buttons-navigate_input\"></i>\n </div>\n <span class=\"example-header-label\">\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_MONTHS)\">{{ periodMonthLabel + ' ' }}</span>\n <span (click)=\"switchViewOnClickOnPeriodLabel(calendarView.FOR_YEARS)\">{{ periodYearLabel }}</span>\n </span>\n <div class=\"dr-date-paging flip-page-button\" (click)=\"pagingClicked(true)\">\n <i class=\"dr-icon-arrow-right presentation_buttons-navigate_input\"></i>\n </div>\n</div>\n<div #quarterlyDatePicker class=\"dr-quarterly-datepicker\" *ngIf=\"currentViewIsQuarter\">\n <div\n *ngFor=\"let quarter of quarters\"\n class=\"quarter-selector\"\n (click)=\"onSelectQuarter(quarter)\"\n [class]=\"quarter === selectedQuarter ? 'selected' : ''\"\n [class.quarter-selector--disabled]=\"isQuarterDisabled(quarter)\">\n Q{{ quarter }}\n </div>\n</div>\n", styles: [":host{height:54px;align-items:center;font-family:Poppins;font-style:normal;font-weight:600;font-size:14px;line-height:22px}.dr-datepicker__timeframe-select__wrapper{background-color:#f9faff;padding:16px 32px;border-radius:18px 18px 0 0}.dr-datepicker-preset-date{display:flex;flex-direction:column}.dr-datepicker-preset-date__tags{display:flex;flex-wrap:wrap;row-gap:8px;padding-bottom:21px;padding-top:10px;font-size:12px}.dr-datepicker-preset-date__tags--solo{padding:16px 32px;gap:16px;justify-content:center}.dr-datepicker-preset-date__tags--solo .dr-datepicker-preset-date__tags__tag{padding:4px 8px;justify-content:center;display:flex;flex:1 0 0}.dr-datepicker-preset-date__tags__tag{cursor:pointer;font-weight:400;line-height:20px!important;padding:2px 8px;border:1px solid #9ea1aa;border-radius:18px;background:#fff;margin-right:4px}.dr-datepicker-preset-date__tags__tag--selected{color:#4646ce;background:#f2f2fb;border:1px solid #4646ce}.dr-date-paging{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:16px 32px 32px;gap:4px}.dr-date-paging.flip-page-button{width:20px;height:20px;padding:0;color:#4e566c}.dr-date-paging.flip-page-button:hover{border-radius:50%;background:#f2f2fb;color:#4646ce}.example-header-label{cursor:pointer}.dr-quarterly-datepicker{display:flex;justify-content:space-between;padding:10px}.dr-quarterly-datepicker .quarter-selector{display:block;width:74px;height:40px;text-align:center;border-radius:40px;font-weight:400;padding-top:9px}.dr-quarterly-datepicker .quarter-selector:hover{background:#f2f2fb;color:#4646ce;font-weight:600;cursor:pointer}.dr-quarterly-datepicker .quarter-selector.selected{background-color:#4646ce;color:#f3f7ff;font-weight:600}.dr-quarterly-datepicker .quarter-selector--disabled,.dr-quarterly-datepicker .quarter-selector--disabled.selected{pointer-events:none;background-color:transparent;color:#aeabac;font-weight:400}\n"] }]
|
|
5066
5118
|
}], null, null); })();
|
|
5067
5119
|
|
|
5068
5120
|
function DrFiscalMonthCalendarPickerComponent_i_0_Template(rf, ctx) { if (rf & 1) {
|