@datarailsshared/datarailsshared 1.6.155 → 1.6.159
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.159.tgz +0 -0
- package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component.mjs +2 -2
- package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker-with-timeframe/dr-date-picker-with-timeframe.component.mjs +29 -44
- package/esm2022/lib/dr-inputs/date-pickers/dr-fiscal-month-calendar-picker/dr-fiscal-month-calendar-picker.component.mjs +2 -2
- package/fesm2022/datarailsshared-datarailsshared.mjs +31 -46
- package/fesm2022/datarailsshared-datarailsshared.mjs.map +1 -1
- package/lib/dr-inputs/date-pickers/dr-date-picker-with-timeframe/dr-date-picker-with-timeframe.component.d.ts +1 -3
- package/package.json +1 -1
- package/datarailsshared-datarailsshared-1.6.155.tgz +0 -0
|
Binary file
|
|
@@ -415,7 +415,7 @@ export class DrDatePickerComponent {
|
|
|
415
415
|
i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(2, 3, ctx.datePickerService.timeframe$) === "week");
|
|
416
416
|
i0.ɵɵadvance(2);
|
|
417
417
|
i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(4, 5, ctx.datePickerService.timeframe$) !== "week");
|
|
418
|
-
} }, dependencies: [i3.DrButtonComponent, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.NgModel, i4.FormGroupDirective, i4.FormControlName, i5.NgIf, i6.MatDatepicker, i6.MatDatepickerInput, i6.MatDateRangeInput, i6.MatStartDate, i6.MatEndDate, i6.MatDateRangePicker, i7.DrDatePickerFormatDirective, i5.AsyncPipe], styles: ["[_nghost-%COMP%]{position:relative;width:100%;display:flex;flex-direction:row;min-height:32px;height:32px;font-size:14px;font-family:Poppins,sans-serif;background-color:#fff;border-radius:6px;color:#333;overflow:hidden;outline:none;cursor:pointer}[_nghost-%COMP%]
|
|
418
|
+
} }, dependencies: [i3.DrButtonComponent, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.NgModel, i4.FormGroupDirective, i4.FormControlName, i5.NgIf, i6.MatDatepicker, i6.MatDatepickerInput, i6.MatDateRangeInput, i6.MatStartDate, i6.MatEndDate, i6.MatDateRangePicker, i7.DrDatePickerFormatDirective, i5.AsyncPipe], styles: ["[_nghost-%COMP%]{position:relative;width:100%;display:flex;flex-direction:row;min-height:32px;height:32px;font-size:14px;font-family:Poppins,sans-serif;background-color:#fff;border:1px solid #9ea1aa;border-radius:6px;color:#333;overflow:hidden;outline:none;cursor:pointer}.use-button-picker[_nghost-%COMP%]{border:none}[_nghost-%COMP%]:hover{border-color:#9ea1aa}.active[_nghost-%COMP%], [_nghost-%COMP%]:focus-within{border-color:#4646ce!important;color:#333}.disabled[_nghost-%COMP%]{pointer-events:none;border:1px solid #aeabac;background:#f0f1f4;color:#aeabac}.disabled[_nghost-%COMP%]:after{color:#aeabac}.ng-valid.ng-dirty[_nghost-%COMP%]{border-color:#037c5a}.ng-invalid.ng-dirty[_nghost-%COMP%]:not(:focus-within){border-color:#bf1d30!important}.ng-untouched.ng-valid[_nghost-%COMP%]{border-color:#9ea1aa}.use-button-picker[_nghost-%COMP%]:after{display:none}[_nghost-%COMP%]:not(.use-button-picker):after, [_nghost-%COMP%]:not(.use-button-picker):before{position:absolute;display:flex;border-color:#6d6e6f transparent transparent;color:#6d6e6f}[_nghost-%COMP%]:not(.use-button-picker):after{font-family:DataRails!important;content:\"\\ea17\";font-size:24px;color:#6d6e6f;top:0;bottom:0;right:8px;pointer-events:none;position:absolute;display:flex;align-items:center;justify-content:center}[_nghost-%COMP%] i[_ngcontent-%COMP%]{display:flex;align-items:center;position:absolute;color:#6d6e6f;left:8px;top:0;bottom:0}[_nghost-%COMP%] input[_ngcontent-%COMP%]{display:flex;flex-grow:1;height:100%;border:none;text-align:left;padding-left:35px;padding-right:25px;cursor:pointer!important;outline:none}[_nghost-%COMP%] input.when-quarter[_ngcontent-%COMP%]{position:absolute;visibility:hidden}[_nghost-%COMP%] input[_ngcontent-%COMP%]:disabled{border:none;color:#aeabac;background:transparent}[_nghost-%COMP%] input[_ngcontent-%COMP%]::-webkit-search-decoration, [_nghost-%COMP%] input[_ngcontent-%COMP%]::-webkit-search-cancel-button, [_nghost-%COMP%] input[_ngcontent-%COMP%]::-webkit-search-results-button, [_nghost-%COMP%] input[_ngcontent-%COMP%]::-webkit-search-results-decoration{-webkit-appearance:none}[_nghost-%COMP%] input[_ngcontent-%COMP%]::placeholder{color:#6d6e6f;font-size:14px;line-height:18px}[_nghost-%COMP%] input.hidden-calendar-input[_ngcontent-%COMP%]{width:0;height:0;padding:0}[_nghost-%COMP%] .datepicker-button[_ngcontent-%COMP%]{width:100%}[_nghost-%COMP%] .range-input[_ngcontent-%COMP%]{position:absolute;height:0;width:0;bottom:0;left:0;z-index:-1} .mat-datepicker-popup .dr-week-datepicker{width:386px!important} .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range:before{background:initial!important} .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-selected, .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-cell-content{background:#f2f2fb!important;color:#4646ce!important;font-weight:600!important} .mat-datepicker-popup .mat-datepicker-content{margin:7px 0;box-shadow:0 4px 8px 1px #00000040;border-radius:12px!important} .mat-datepicker-popup .mat-datepicker-content button[disabled]{border:inherit;color:inherit;background-color:inherit} .mat-datepicker-popup .mat-datepicker-content button[disabled]:hover{border:inherit} .mat-datepicker-popup .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical), .mat-datepicker-popup .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#fff} .mat-datepicker-popup .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background:#f2f2fb;color:#4646ce;font-weight:600} .mat-datepicker-popup .mat-calendar-body-selected{background-color:#4646ce;color:#f2f2fb;font-weight:600} .mat-datepicker-popup .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:none} .mat-datepicker-popup .mat-button-focus-overlay{background:#f5f5f5} .mat-datepicker-popup .mat-calendar-controls .mat-icon-button:hover .mat-button-focus-overlay{opacity:1!important;background:#f5f5f5;transition:opacity .2s cubic-bezier(.35,0,.25,1)} .mat-datepicker-popup .mat-calendar-controls .mat-calendar-period-button:hover{background:#f5f5f5;transition:background .2s cubic-bezier(.35,0,.25,1)} .mat-datepicker-popup .mat-calendar-table-header th{font-size:14px;font-weight:600;color:#333} .mat-datepicker-popup .mat-calendar-table-header-divider{display:none} .mat-datepicker-popup .mat-calendar-body-label{color:#fff;padding:0} .mat-datepicker-popup .mat-calendar-body>tr[aria-hidden=true]>.mat-calendar-body-label{display:none} .mat-datepicker-popup .mat-calendar-content{display:flex} .mat-datepicker-popup .mat-calendar-content dr-week-selector{flex:0} .mat-datepicker-popup .mat-calendar-content mat-month-view, .mat-datepicker-popup .mat-calendar-content mat-multi-year-view, .mat-datepicker-popup .mat-calendar-content mat-year-view{flex:1}", ".mat-datepicker-popup .dr-datepicker-dark-theme{background-color:#0c142b;color:#fff;border-radius:12px} .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-label{visibility:hidden} .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-cell-content, .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-table-header th{color:#fff} .mat-datepicker-popup .dr-datepicker-dark-theme .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical), .mat-datepicker-popup .dr-datepicker-dark-theme .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#373c4c} .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-today:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){border:none;background-color:#1d1d6d;color:#fff} .mat-datepicker-popup .dr-datepicker-dark-theme .dr-quarterly-datepicker .quarter-selector:hover{background:#373c4c!important;color:#fff!important} .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background:#373c4c;color:#fff} .mat-datepicker-popup .dr-datepicker-dark-theme.dr-week-datepicker .weeks__container{color:#fff} .mat-datepicker-popup .dr-datepicker-dark-theme.dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-selected, .mat-datepicker-popup .dr-datepicker-dark-theme.dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-cell-content{background-color:#4646ce!important;color:#fff!important} .mat-datepicker-popup .dr-datepicker-dark-theme.dr-week-datepicker .weeks .btn:hover{background:#373c4c!important;color:#fff!important} .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-selected{background-color:#4646ce;color:#fff} .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-disabled>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){color:#aeabac} .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging:hover{background-color:transparent} .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging>.dr-icon-arrow-right, .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging>.dr-icon-arrow-left{color:#aeabac} .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging>.dr-icon-arrow-right:hover, .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging>.dr-icon-arrow-left:hover{background:#373c4c;border-radius:12px;cursor:pointer}"], changeDetection: 0 }); }
|
|
419
419
|
}
|
|
420
420
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrDatePickerComponent, [{
|
|
421
421
|
type: Component,
|
|
@@ -424,7 +424,7 @@ export class DrDatePickerComponent {
|
|
|
424
424
|
{ provide: DateAdapter, useClass: CustomDateAdapter },
|
|
425
425
|
{ provide: MAT_DATE_RANGE_SELECTION_STRATEGY, useClass: WeekSelectionStrategy },
|
|
426
426
|
DrDatePickerService,
|
|
427
|
-
], template: "<i *ngIf=\"!useButton\" class=\"dr-icon-date\" (click)=\"datePicker.open()\"></i>\n\n<ng-container *ngIf=\"(datePickerService.timeframe$ | async) === 'week'\">\n <input\n [attr.id]=\"id\"\n [ngModel]=\"input.value\"\n (click)=\"datePicker.open()\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [min]=\"_min\"\n [max]=\"_max\" />\n\n <mat-date-range-input [formGroup]=\"rangeForm\" [rangePicker]=\"datePicker\" [dateFilter]=\"dateFilter\" class=\"range-input\">\n <input\n matStartDate\n #input\n [drDatePickerFormat]=\"datePickerService.format$ | async\"\n formControlName=\"start\"\n (dateChange)=\"valueChangedInCalendar(rangeForm.value.start)\" />\n <input matEndDate [drDatePickerFormat]=\"datePickerService.format$ | async\" formControlName=\"end\" />\n </mat-date-range-input>\n\n <mat-date-range-picker\n #datePicker\n [startAt]=\"_startAt\"\n [panelClass]=\"'dr-week-datepicker' + (panelClass ? ' ' + panelClass : '')\"\n [calendarHeaderComponent]=\"customHeader\"\n (yearSelected)=\"chosenPeriodHandler($event, timeframeOption.YEAR, datePicker)\"\n (monthSelected)=\"chosenPeriodHandler($event, timeframeOption.MONTH, datePicker)\"\n (opened)=\"onOpen()\"\n (closed)=\"onCLose()\">\n </mat-date-range-picker>\n</ng-container>\n\n<ng-container *ngIf=\"(datePickerService.timeframe$ | async) !== 'week'\">\n <input\n [attr.id]=\"id\"\n [ngModel]=\"displayValue$ | async\"\n (ngModelChange)=\"valueChangedInCalendar($event)\"\n (click)=\"datePicker.open()\"\n [matDatepicker]=\"datePicker\"\n [matDatepickerFilter]=\"dateFilter\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [drDatePickerFormat]=\"datePickerService.format$ | async\"\n [readonly]=\"readonly\"\n [min]=\"_min\"\n [max]=\"_max\"\n [class.hidden-calendar-input]=\"useButton\" />\n\n <dr-button\n *ngIf=\"useButton\"\n [icon]=\"'dr-icon-date'\"\n [iconAfter]=\"iconAfterButton\"\n (click)=\"datePicker.open()\"\n class=\"datepicker-button\">\n {{ buttonLabel || 'Select Date' }}\n </dr-button>\n\n <mat-datepicker\n #datePicker\n [panelClass]=\"panelClass\"\n [startAt]=\"_startAt\"\n [calendarHeaderComponent]=\"customHeader\"\n (yearSelected)=\"chosenPeriodHandler($event, timeframeOption.YEAR, datePicker)\"\n (monthSelected)=\"chosenPeriodHandler($event, timeframeOption.MONTH, datePicker)\"\n (opened)=\"onOpen()\"\n (closed)=\"onCLose()\">\n </mat-datepicker>\n</ng-container>\n", styles: [":host{position:relative;width:100%;display:flex;flex-direction:row;min-height:32px;height:32px;font-size:14px;font-family:Poppins,sans-serif;background-color:#fff;border-radius:6px;color:#333;overflow:hidden;outline:none;cursor:pointer}:host:not(.use-button-picker){border:1px solid #9ea1aa}:host:hover{border-color:#9ea1aa}:host.active,:host:focus-within{border-color:#4646ce!important;color:#333}:host.disabled{pointer-events:none;border:1px solid #aeabac;background:#f0f1f4;color:#aeabac}:host.disabled:after{color:#aeabac}:host.ng-valid.ng-dirty{border-color:#037c5a}:host.ng-invalid.ng-dirty:not(:focus-within){border-color:#bf1d30!important}:host.ng-untouched.ng-valid{border-color:#9ea1aa}:host.use-button-picker:after{display:none}:host:not(.use-button-picker):after,:host:not(.use-button-picker):before{position:absolute;display:flex;border-color:#6d6e6f transparent transparent;color:#6d6e6f}:host:not(.use-button-picker):after{font-family:DataRails!important;content:\"\\ea17\";font-size:24px;color:#6d6e6f;top:0;bottom:0;right:8px;pointer-events:none;position:absolute;display:flex;align-items:center;justify-content:center}:host i{display:flex;align-items:center;position:absolute;color:#6d6e6f;left:8px;top:0;bottom:0}:host input{display:flex;flex-grow:1;height:100%;border:none;text-align:left;padding-left:35px;padding-right:25px;cursor:pointer!important;outline:none}:host input.when-quarter{position:absolute;visibility:hidden}:host input:disabled{border:none;color:#aeabac;background:transparent}:host input::-webkit-search-decoration,:host input::-webkit-search-cancel-button,:host input::-webkit-search-results-button,:host input::-webkit-search-results-decoration{-webkit-appearance:none}:host input::placeholder{color:#6d6e6f;font-size:14px;line-height:18px}:host input.hidden-calendar-input{width:0;height:0;padding:0}:host .datepicker-button{width:100%}:host .range-input{position:absolute;height:0;width:0;bottom:0;left:0;z-index:-1}::ng-deep .mat-datepicker-popup .dr-week-datepicker{width:386px!important}::ng-deep .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range:before{background:initial!important}::ng-deep .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-selected,::ng-deep .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-cell-content{background:#f2f2fb!important;color:#4646ce!important;font-weight:600!important}::ng-deep .mat-datepicker-popup .mat-datepicker-content{margin:7px 0;box-shadow:0 4px 8px 1px #00000040;border-radius:12px!important}::ng-deep .mat-datepicker-popup .mat-datepicker-content button[disabled]{border:inherit;color:inherit;background-color:inherit}::ng-deep .mat-datepicker-popup .mat-datepicker-content button[disabled]:hover{border:inherit}::ng-deep .mat-datepicker-popup .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),::ng-deep .mat-datepicker-popup .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#fff}::ng-deep .mat-datepicker-popup .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background:#f2f2fb;color:#4646ce;font-weight:600}::ng-deep .mat-datepicker-popup .mat-calendar-body-selected{background-color:#4646ce;color:#f2f2fb;font-weight:600}::ng-deep .mat-datepicker-popup .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:none}::ng-deep .mat-datepicker-popup .mat-button-focus-overlay{background:#f5f5f5}::ng-deep .mat-datepicker-popup .mat-calendar-controls .mat-icon-button:hover .mat-button-focus-overlay{opacity:1!important;background:#f5f5f5;transition:opacity .2s cubic-bezier(.35,0,.25,1)}::ng-deep .mat-datepicker-popup .mat-calendar-controls .mat-calendar-period-button:hover{background:#f5f5f5;transition:background .2s cubic-bezier(.35,0,.25,1)}::ng-deep .mat-datepicker-popup .mat-calendar-table-header th{font-size:14px;font-weight:600;color:#333}::ng-deep .mat-datepicker-popup .mat-calendar-table-header-divider{display:none}::ng-deep .mat-datepicker-popup .mat-calendar-body-label{color:#fff;padding:0}::ng-deep .mat-datepicker-popup .mat-calendar-body>tr[aria-hidden=true]>.mat-calendar-body-label{display:none}::ng-deep .mat-datepicker-popup .mat-calendar-content{display:flex}::ng-deep .mat-datepicker-popup .mat-calendar-content dr-week-selector{flex:0}::ng-deep .mat-datepicker-popup .mat-calendar-content mat-month-view,::ng-deep .mat-datepicker-popup .mat-calendar-content mat-multi-year-view,::ng-deep .mat-datepicker-popup .mat-calendar-content mat-year-view{flex:1}\n", "::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme{background-color:#0c142b;color:#fff;border-radius:12px}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-label{visibility:hidden}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-cell-content,::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-table-header th{color:#fff}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#373c4c}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-today:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){border:none;background-color:#1d1d6d;color:#fff}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .dr-quarterly-datepicker .quarter-selector:hover{background:#373c4c!important;color:#fff!important}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background:#373c4c;color:#fff}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme.dr-week-datepicker .weeks__container{color:#fff}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme.dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-selected,::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme.dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-cell-content{background-color:#4646ce!important;color:#fff!important}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme.dr-week-datepicker .weeks .btn:hover{background:#373c4c!important;color:#fff!important}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-selected{background-color:#4646ce;color:#fff}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-disabled>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){color:#aeabac}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging:hover{background-color:transparent}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging>.dr-icon-arrow-right,::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging>.dr-icon-arrow-left{color:#aeabac}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging>.dr-icon-arrow-right:hover,::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging>.dr-icon-arrow-left:hover{background:#373c4c;border-radius:12px;cursor:pointer}\n"] }]
|
|
427
|
+
], template: "<i *ngIf=\"!useButton\" class=\"dr-icon-date\" (click)=\"datePicker.open()\"></i>\n\n<ng-container *ngIf=\"(datePickerService.timeframe$ | async) === 'week'\">\n <input\n [attr.id]=\"id\"\n [ngModel]=\"input.value\"\n (click)=\"datePicker.open()\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [min]=\"_min\"\n [max]=\"_max\" />\n\n <mat-date-range-input [formGroup]=\"rangeForm\" [rangePicker]=\"datePicker\" [dateFilter]=\"dateFilter\" class=\"range-input\">\n <input\n matStartDate\n #input\n [drDatePickerFormat]=\"datePickerService.format$ | async\"\n formControlName=\"start\"\n (dateChange)=\"valueChangedInCalendar(rangeForm.value.start)\" />\n <input matEndDate [drDatePickerFormat]=\"datePickerService.format$ | async\" formControlName=\"end\" />\n </mat-date-range-input>\n\n <mat-date-range-picker\n #datePicker\n [startAt]=\"_startAt\"\n [panelClass]=\"'dr-week-datepicker' + (panelClass ? ' ' + panelClass : '')\"\n [calendarHeaderComponent]=\"customHeader\"\n (yearSelected)=\"chosenPeriodHandler($event, timeframeOption.YEAR, datePicker)\"\n (monthSelected)=\"chosenPeriodHandler($event, timeframeOption.MONTH, datePicker)\"\n (opened)=\"onOpen()\"\n (closed)=\"onCLose()\">\n </mat-date-range-picker>\n</ng-container>\n\n<ng-container *ngIf=\"(datePickerService.timeframe$ | async) !== 'week'\">\n <input\n [attr.id]=\"id\"\n [ngModel]=\"displayValue$ | async\"\n (ngModelChange)=\"valueChangedInCalendar($event)\"\n (click)=\"datePicker.open()\"\n [matDatepicker]=\"datePicker\"\n [matDatepickerFilter]=\"dateFilter\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [drDatePickerFormat]=\"datePickerService.format$ | async\"\n [readonly]=\"readonly\"\n [min]=\"_min\"\n [max]=\"_max\"\n [class.hidden-calendar-input]=\"useButton\" />\n\n <dr-button\n *ngIf=\"useButton\"\n [icon]=\"'dr-icon-date'\"\n [iconAfter]=\"iconAfterButton\"\n (click)=\"datePicker.open()\"\n class=\"datepicker-button\">\n {{ buttonLabel || 'Select Date' }}\n </dr-button>\n\n <mat-datepicker\n #datePicker\n [panelClass]=\"panelClass\"\n [startAt]=\"_startAt\"\n [calendarHeaderComponent]=\"customHeader\"\n (yearSelected)=\"chosenPeriodHandler($event, timeframeOption.YEAR, datePicker)\"\n (monthSelected)=\"chosenPeriodHandler($event, timeframeOption.MONTH, datePicker)\"\n (opened)=\"onOpen()\"\n (closed)=\"onCLose()\">\n </mat-datepicker>\n</ng-container>\n", styles: [":host{position:relative;width:100%;display:flex;flex-direction:row;min-height:32px;height:32px;font-size:14px;font-family:Poppins,sans-serif;background-color:#fff;border:1px solid #9ea1aa;border-radius:6px;color:#333;overflow:hidden;outline:none;cursor:pointer}:host.use-button-picker{border:none}:host:hover{border-color:#9ea1aa}:host.active,:host:focus-within{border-color:#4646ce!important;color:#333}:host.disabled{pointer-events:none;border:1px solid #aeabac;background:#f0f1f4;color:#aeabac}:host.disabled:after{color:#aeabac}:host.ng-valid.ng-dirty{border-color:#037c5a}:host.ng-invalid.ng-dirty:not(:focus-within){border-color:#bf1d30!important}:host.ng-untouched.ng-valid{border-color:#9ea1aa}:host.use-button-picker:after{display:none}:host:not(.use-button-picker):after,:host:not(.use-button-picker):before{position:absolute;display:flex;border-color:#6d6e6f transparent transparent;color:#6d6e6f}:host:not(.use-button-picker):after{font-family:DataRails!important;content:\"\\ea17\";font-size:24px;color:#6d6e6f;top:0;bottom:0;right:8px;pointer-events:none;position:absolute;display:flex;align-items:center;justify-content:center}:host i{display:flex;align-items:center;position:absolute;color:#6d6e6f;left:8px;top:0;bottom:0}:host input{display:flex;flex-grow:1;height:100%;border:none;text-align:left;padding-left:35px;padding-right:25px;cursor:pointer!important;outline:none}:host input.when-quarter{position:absolute;visibility:hidden}:host input:disabled{border:none;color:#aeabac;background:transparent}:host input::-webkit-search-decoration,:host input::-webkit-search-cancel-button,:host input::-webkit-search-results-button,:host input::-webkit-search-results-decoration{-webkit-appearance:none}:host input::placeholder{color:#6d6e6f;font-size:14px;line-height:18px}:host input.hidden-calendar-input{width:0;height:0;padding:0}:host .datepicker-button{width:100%}:host .range-input{position:absolute;height:0;width:0;bottom:0;left:0;z-index:-1}::ng-deep .mat-datepicker-popup .dr-week-datepicker{width:386px!important}::ng-deep .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range:before{background:initial!important}::ng-deep .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-selected,::ng-deep .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-cell-content{background:#f2f2fb!important;color:#4646ce!important;font-weight:600!important}::ng-deep .mat-datepicker-popup .mat-datepicker-content{margin:7px 0;box-shadow:0 4px 8px 1px #00000040;border-radius:12px!important}::ng-deep .mat-datepicker-popup .mat-datepicker-content button[disabled]{border:inherit;color:inherit;background-color:inherit}::ng-deep .mat-datepicker-popup .mat-datepicker-content button[disabled]:hover{border:inherit}::ng-deep .mat-datepicker-popup .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),::ng-deep .mat-datepicker-popup .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#fff}::ng-deep .mat-datepicker-popup .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background:#f2f2fb;color:#4646ce;font-weight:600}::ng-deep .mat-datepicker-popup .mat-calendar-body-selected{background-color:#4646ce;color:#f2f2fb;font-weight:600}::ng-deep .mat-datepicker-popup .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:none}::ng-deep .mat-datepicker-popup .mat-button-focus-overlay{background:#f5f5f5}::ng-deep .mat-datepicker-popup .mat-calendar-controls .mat-icon-button:hover .mat-button-focus-overlay{opacity:1!important;background:#f5f5f5;transition:opacity .2s cubic-bezier(.35,0,.25,1)}::ng-deep .mat-datepicker-popup .mat-calendar-controls .mat-calendar-period-button:hover{background:#f5f5f5;transition:background .2s cubic-bezier(.35,0,.25,1)}::ng-deep .mat-datepicker-popup .mat-calendar-table-header th{font-size:14px;font-weight:600;color:#333}::ng-deep .mat-datepicker-popup .mat-calendar-table-header-divider{display:none}::ng-deep .mat-datepicker-popup .mat-calendar-body-label{color:#fff;padding:0}::ng-deep .mat-datepicker-popup .mat-calendar-body>tr[aria-hidden=true]>.mat-calendar-body-label{display:none}::ng-deep .mat-datepicker-popup .mat-calendar-content{display:flex}::ng-deep .mat-datepicker-popup .mat-calendar-content dr-week-selector{flex:0}::ng-deep .mat-datepicker-popup .mat-calendar-content mat-month-view,::ng-deep .mat-datepicker-popup .mat-calendar-content mat-multi-year-view,::ng-deep .mat-datepicker-popup .mat-calendar-content mat-year-view{flex:1}\n", "::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme{background-color:#0c142b;color:#fff;border-radius:12px}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-label{visibility:hidden}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-cell-content,::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-table-header th{color:#fff}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#373c4c}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-today:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){border:none;background-color:#1d1d6d;color:#fff}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .dr-quarterly-datepicker .quarter-selector:hover{background:#373c4c!important;color:#fff!important}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background:#373c4c;color:#fff}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme.dr-week-datepicker .weeks__container{color:#fff}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme.dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-selected,::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme.dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-cell-content{background-color:#4646ce!important;color:#fff!important}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme.dr-week-datepicker .weeks .btn:hover{background:#373c4c!important;color:#fff!important}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-selected{background-color:#4646ce;color:#fff}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme .mat-calendar-body-disabled>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){color:#aeabac}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging:hover{background-color:transparent}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging>.dr-icon-arrow-right,::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging>.dr-icon-arrow-left{color:#aeabac}::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging>.dr-icon-arrow-right:hover,::ng-deep .mat-datepicker-popup .dr-datepicker-dark-theme dr-date-picker_custom-header .dr-date-paging>.dr-icon-arrow-left:hover{background:#373c4c;border-radius:12px;cursor:pointer}\n"] }]
|
|
428
428
|
}], function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.DateAdapter }, { type: i2.DrDatePickerService }]; }, { id: [{
|
|
429
429
|
type: Input
|
|
430
430
|
}], hostId: [{
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter,
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, Input, Output, TemplateRef, } from '@angular/core';
|
|
2
2
|
import { CustomDateAdapter, DrDatePickerComponent } from '../dr-date-picker/dr-date-picker.component';
|
|
3
3
|
import { DateAdapter } from '@angular/material/core';
|
|
4
4
|
import { DrDatePickerService } from '../services/dr-date-picker.service';
|
|
@@ -17,41 +17,35 @@ import * as i5 from "@angular/common";
|
|
|
17
17
|
import * as i6 from "@angular/material/datepicker";
|
|
18
18
|
import * as i7 from "../../../dr-tooltip/dr-tooltip.directive";
|
|
19
19
|
function DrDatePickerWithTimeframeComponent_dr_button_0_Template(rf, ctx) { if (rf & 1) {
|
|
20
|
-
const
|
|
20
|
+
const _r7 = i0.ɵɵgetCurrentView();
|
|
21
21
|
i0.ɵɵelementStart(0, "dr-button", 11);
|
|
22
|
-
i0.ɵɵlistener("click", function DrDatePickerWithTimeframeComponent_dr_button_0_Template_dr_button_click_0_listener() { i0.ɵɵrestoreView(
|
|
22
|
+
i0.ɵɵlistener("click", function DrDatePickerWithTimeframeComponent_dr_button_0_Template_dr_button_click_0_listener() { i0.ɵɵrestoreView(_r7); const ctx_r6 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r6.pagingClicked(false)); });
|
|
23
23
|
i0.ɵɵelementEnd();
|
|
24
24
|
} if (rf & 2) {
|
|
25
25
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
26
26
|
i0.ɵɵproperty("disabled", ctx_r0.isPrevDateDisabled);
|
|
27
27
|
} }
|
|
28
|
-
function DrDatePickerWithTimeframeComponent_i_2_Template(rf, ctx) { if (rf & 1) {
|
|
29
|
-
i0.ɵɵelement(0, "i", 12);
|
|
30
|
-
} }
|
|
31
28
|
function DrDatePickerWithTimeframeComponent_ng_template_6_Template(rf, ctx) { if (rf & 1) {
|
|
32
29
|
i0.ɵɵelementStart(0, "span");
|
|
33
30
|
i0.ɵɵtext(1);
|
|
34
31
|
i0.ɵɵelementEnd();
|
|
35
32
|
} if (rf & 2) {
|
|
36
|
-
const
|
|
37
|
-
const
|
|
33
|
+
const value_r8 = ctx.formattedValue;
|
|
34
|
+
const ctx_r2 = i0.ɵɵnextContext();
|
|
38
35
|
i0.ɵɵadvance(1);
|
|
39
|
-
i0.ɵɵtextInterpolate1(" ",
|
|
36
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r2.datePickerService.isUsingDateTagPresets && !!ctx_r2.presetTagSelected ? ctx_r2.presetTagSelected + " (" + value_r8 + ")" : value_r8, " ");
|
|
40
37
|
} }
|
|
41
38
|
function DrDatePickerWithTimeframeComponent_dr_button_11_Template(rf, ctx) { if (rf & 1) {
|
|
42
|
-
const
|
|
43
|
-
i0.ɵɵelementStart(0, "dr-button",
|
|
44
|
-
i0.ɵɵlistener("click", function DrDatePickerWithTimeframeComponent_dr_button_11_Template_dr_button_click_0_listener() { i0.ɵɵrestoreView(
|
|
39
|
+
const _r10 = i0.ɵɵgetCurrentView();
|
|
40
|
+
i0.ɵɵelementStart(0, "dr-button", 12);
|
|
41
|
+
i0.ɵɵlistener("click", function DrDatePickerWithTimeframeComponent_dr_button_11_Template_dr_button_click_0_listener() { i0.ɵɵrestoreView(_r10); const ctx_r9 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r9.pagingClicked(true)); });
|
|
45
42
|
i0.ɵɵelementEnd();
|
|
46
43
|
} if (rf & 2) {
|
|
47
|
-
const
|
|
48
|
-
i0.ɵɵproperty("disabled",
|
|
44
|
+
const ctx_r4 = i0.ɵɵnextContext();
|
|
45
|
+
i0.ɵɵproperty("disabled", ctx_r4.isNextDateDisabled);
|
|
49
46
|
} }
|
|
50
47
|
const _c0 = function (a0) { return { formattedValue: a0 }; };
|
|
51
48
|
export class DrDatePickerWithTimeframeComponent extends DrDatePickerComponent {
|
|
52
|
-
get isDashboardClassDisplayed() {
|
|
53
|
-
return this.isDashboardDatepicker;
|
|
54
|
-
}
|
|
55
49
|
set dateFormatConfig(value) {
|
|
56
50
|
if (value) {
|
|
57
51
|
this.datePickerService.formatConfig = { ...this.datePickerService.formatConfig, ...value };
|
|
@@ -74,7 +68,6 @@ export class DrDatePickerWithTimeframeComponent extends DrDatePickerComponent {
|
|
|
74
68
|
this.cdr = cdr;
|
|
75
69
|
this.dateAdapter = dateAdapter;
|
|
76
70
|
this.datePickerService = datePickerService;
|
|
77
|
-
this.isDashboardDatepicker = false;
|
|
78
71
|
this.canSelectTimeframe = true;
|
|
79
72
|
this.datepickerTooltipPosition = TooltipPosition.TOP;
|
|
80
73
|
this.datepickerTooltipTimeout = 0;
|
|
@@ -197,48 +190,45 @@ export class DrDatePickerWithTimeframeComponent extends DrDatePickerComponent {
|
|
|
197
190
|
}
|
|
198
191
|
}
|
|
199
192
|
/** @nocollapse */ static { this.ɵfac = function DrDatePickerWithTimeframeComponent_Factory(t) { return new (t || DrDatePickerWithTimeframeComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i1.DateAdapter), i0.ɵɵdirectiveInject(i2.DrDatePickerService)); }; }
|
|
200
|
-
/** @nocollapse */ static { this.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: DrDatePickerWithTimeframeComponent, selectors: [["dr-date-picker-with-timeframe"]],
|
|
201
|
-
i0.ɵɵclassProp("dr-date-picker-on-dashboard", ctx.isDashboardClassDisplayed);
|
|
202
|
-
} }, inputs: { isDashboardDatepicker: "isDashboardDatepicker", dateFormatConfig: "dateFormatConfig", canSelectTimeframe: "canSelectTimeframe", availableTimeframes: "availableTimeframes", paginationDebounce: "paginationDebounce", isUsingDateTagPresets: "isUsingDateTagPresets", presetTag: "presetTag", datepickerTooltip: "datepickerTooltip", datepickerTooltipPosition: "datepickerTooltipPosition", datepickerTooltipTimeout: "datepickerTooltipTimeout", isOpen: "isOpen" }, outputs: { onChangeFormat: "onChangeFormat", onChangePresetTag: "onChangePresetTag" }, features: [i0.ɵɵProvidersFeature([
|
|
193
|
+
/** @nocollapse */ static { this.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: DrDatePickerWithTimeframeComponent, selectors: [["dr-date-picker-with-timeframe"]], inputs: { dateFormatConfig: "dateFormatConfig", canSelectTimeframe: "canSelectTimeframe", availableTimeframes: "availableTimeframes", paginationDebounce: "paginationDebounce", isUsingDateTagPresets: "isUsingDateTagPresets", presetTag: "presetTag", datepickerTooltip: "datepickerTooltip", datepickerTooltipPosition: "datepickerTooltipPosition", datepickerTooltipTimeout: "datepickerTooltipTimeout", isOpen: "isOpen" }, outputs: { onChangeFormat: "onChangeFormat", onChangePresetTag: "onChangePresetTag" }, features: [i0.ɵɵProvidersFeature([
|
|
203
194
|
{ provide: NG_VALUE_ACCESSOR, useExisting: DrDatePickerWithTimeframeComponent, multi: true },
|
|
204
195
|
{ provide: DateAdapter, useClass: CustomDateAdapter },
|
|
205
196
|
{ provide: DrDatePickerService },
|
|
206
|
-
]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 14, vars:
|
|
207
|
-
const
|
|
197
|
+
]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 14, vars: 20, consts: [["theme", "icon", "icon", "dr-icon-arrow-left", 3, "disabled", "click", 4, "ngIf"], [1, "dr-datepicker-input-container", 3, "drTooltip", "drTooltipPosition", "drTooltipMousleaveTimeout"], [1, "dr-icon-date", 3, "click"], [1, "dr-datepicker-input-container__formatted-value-display", 3, "click"], [3, "ngTemplateOutlet", "ngTemplateOutletContext"], ["formattedValueTmpl", ""], [3, "ngModel", "matDatepicker", "readonly", "min", "max", "ngModelChange", "click"], ["datepickerInput", ""], ["theme", "icon", "icon", "dr-icon-arrow-right", 3, "disabled", "click", 4, "ngIf"], [1, "dr-timeframe-datepicker", 3, "calendarHeaderComponent", "panelClass", "yearSelected", "monthSelected", "opened", "closed"], ["datePicker", ""], ["theme", "icon", "icon", "dr-icon-arrow-left", 3, "disabled", "click"], ["theme", "icon", "icon", "dr-icon-arrow-right", 3, "disabled", "click"]], template: function DrDatePickerWithTimeframeComponent_Template(rf, ctx) { if (rf & 1) {
|
|
198
|
+
const _r11 = i0.ɵɵgetCurrentView();
|
|
208
199
|
i0.ɵɵtemplate(0, DrDatePickerWithTimeframeComponent_dr_button_0_Template, 1, 1, "dr-button", 0);
|
|
209
|
-
i0.ɵɵelementStart(1, "div", 1);
|
|
210
|
-
i0.ɵɵ
|
|
200
|
+
i0.ɵɵelementStart(1, "div", 1)(2, "i", 2);
|
|
201
|
+
i0.ɵɵlistener("click", function DrDatePickerWithTimeframeComponent_Template_i_click_2_listener() { i0.ɵɵrestoreView(_r11); const _r3 = i0.ɵɵreference(9); return i0.ɵɵresetView(_r3.click()); });
|
|
202
|
+
i0.ɵɵelementEnd();
|
|
211
203
|
i0.ɵɵelementStart(3, "div", 3);
|
|
212
|
-
i0.ɵɵlistener("click", function DrDatePickerWithTimeframeComponent_Template_div_click_3_listener() { i0.ɵɵrestoreView(
|
|
204
|
+
i0.ɵɵlistener("click", function DrDatePickerWithTimeframeComponent_Template_div_click_3_listener() { i0.ɵɵrestoreView(_r11); const _r3 = i0.ɵɵreference(9); return i0.ɵɵresetView(_r3.click()); });
|
|
213
205
|
i0.ɵɵelementContainer(4, 4);
|
|
214
206
|
i0.ɵɵpipe(5, "async");
|
|
215
207
|
i0.ɵɵtemplate(6, DrDatePickerWithTimeframeComponent_ng_template_6_Template, 2, 1, "ng-template", null, 5, i0.ɵɵtemplateRefExtractor);
|
|
216
208
|
i0.ɵɵelementEnd();
|
|
217
209
|
i0.ɵɵelementStart(8, "input", 6, 7);
|
|
218
|
-
i0.ɵɵlistener("ngModelChange", function DrDatePickerWithTimeframeComponent_Template_input_ngModelChange_8_listener($event) { return ctx.valueChangedInCalendar($event); })("click", function DrDatePickerWithTimeframeComponent_Template_input_click_8_listener() { i0.ɵɵrestoreView(
|
|
210
|
+
i0.ɵɵlistener("ngModelChange", function DrDatePickerWithTimeframeComponent_Template_input_ngModelChange_8_listener($event) { return ctx.valueChangedInCalendar($event); })("click", function DrDatePickerWithTimeframeComponent_Template_input_click_8_listener() { i0.ɵɵrestoreView(_r11); const _r5 = i0.ɵɵreference(13); return i0.ɵɵresetView(_r5.open()); });
|
|
219
211
|
i0.ɵɵpipe(10, "async");
|
|
220
212
|
i0.ɵɵelementEnd()();
|
|
221
213
|
i0.ɵɵtemplate(11, DrDatePickerWithTimeframeComponent_dr_button_11_Template, 1, 1, "dr-button", 8);
|
|
222
214
|
i0.ɵɵelementStart(12, "mat-datepicker", 9, 10);
|
|
223
|
-
i0.ɵɵlistener("yearSelected", function DrDatePickerWithTimeframeComponent_Template_mat_datepicker_yearSelected_12_listener($event) { i0.ɵɵrestoreView(
|
|
215
|
+
i0.ɵɵlistener("yearSelected", function DrDatePickerWithTimeframeComponent_Template_mat_datepicker_yearSelected_12_listener($event) { i0.ɵɵrestoreView(_r11); const _r5 = i0.ɵɵreference(13); return i0.ɵɵresetView(ctx.chosenPeriodHandler($event, ctx.timeframeOption.YEAR, _r5)); })("monthSelected", function DrDatePickerWithTimeframeComponent_Template_mat_datepicker_monthSelected_12_listener($event) { i0.ɵɵrestoreView(_r11); const _r5 = i0.ɵɵreference(13); return i0.ɵɵresetView(ctx.chosenPeriodHandler($event, ctx.timeframeOption.MONTH, _r5)); })("opened", function DrDatePickerWithTimeframeComponent_Template_mat_datepicker_opened_12_listener() { return ctx.onOpen(); })("closed", function DrDatePickerWithTimeframeComponent_Template_mat_datepicker_closed_12_listener() { return ctx.onCLose(); });
|
|
224
216
|
i0.ɵɵelementEnd();
|
|
225
217
|
} if (rf & 2) {
|
|
226
|
-
const
|
|
227
|
-
const
|
|
218
|
+
const _r1 = i0.ɵɵreference(7);
|
|
219
|
+
const _r5 = i0.ɵɵreference(13);
|
|
228
220
|
i0.ɵɵproperty("ngIf", !ctx.disabled);
|
|
229
221
|
i0.ɵɵadvance(1);
|
|
230
222
|
i0.ɵɵproperty("drTooltip", ctx.datepickerTooltip)("drTooltipPosition", ctx.datepickerTooltipPosition)("drTooltipMousleaveTimeout", ctx.datepickerTooltipTimeout);
|
|
231
|
-
i0.ɵɵadvance(
|
|
232
|
-
i0.ɵɵproperty("
|
|
233
|
-
i0.ɵɵadvance(2);
|
|
234
|
-
i0.ɵɵproperty("ngTemplateOutlet", _r2)("ngTemplateOutletContext", i0.ɵɵpureFunction1(19, _c0, i0.ɵɵpipeBind1(5, 15, ctx.displayedFormattedValue$)));
|
|
223
|
+
i0.ɵɵadvance(3);
|
|
224
|
+
i0.ɵɵproperty("ngTemplateOutlet", _r1)("ngTemplateOutletContext", i0.ɵɵpureFunction1(18, _c0, i0.ɵɵpipeBind1(5, 14, ctx.displayedFormattedValue$)));
|
|
235
225
|
i0.ɵɵadvance(4);
|
|
236
|
-
i0.ɵɵproperty("ngModel", i0.ɵɵpipeBind1(10,
|
|
226
|
+
i0.ɵɵproperty("ngModel", i0.ɵɵpipeBind1(10, 16, ctx.displayValue$))("matDatepicker", _r5)("readonly", ctx.readonly)("min", ctx._min)("max", ctx._max);
|
|
237
227
|
i0.ɵɵadvance(3);
|
|
238
228
|
i0.ɵɵproperty("ngIf", !ctx.disabled);
|
|
239
229
|
i0.ɵɵadvance(1);
|
|
240
230
|
i0.ɵɵproperty("calendarHeaderComponent", ctx.customHeader)("panelClass", ctx.datePickerService.isUsingDateTagPresets ? "date-picker-preset-tag" : "dr-timeframe-datepicker");
|
|
241
|
-
} }, dependencies: [i3.DrButtonComponent, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgModel, i5.NgIf, i5.NgTemplateOutlet, i6.MatDatepicker, i6.MatDatepickerInput, i7.DrTooltipDirective, i5.AsyncPipe], styles: ["[_nghost-%COMP%]{position:relative;width:100%;display:flex;flex-direction:row;min-height:32px;height:32px;font-size:14px;font-family:Poppins,sans-serif;background-color:#fff;border-radius:6px;color:#333;overflow:hidden;outline:none;cursor:pointer}[_nghost-%COMP%]
|
|
231
|
+
} }, dependencies: [i3.DrButtonComponent, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgModel, i5.NgIf, i5.NgTemplateOutlet, i6.MatDatepicker, i6.MatDatepickerInput, i7.DrTooltipDirective, i5.AsyncPipe], styles: ["[_nghost-%COMP%]{position:relative;width:100%;display:flex;flex-direction:row;min-height:32px;height:32px;font-size:14px;font-family:Poppins,sans-serif;background-color:#fff;border:1px solid #9ea1aa;border-radius:6px;color:#333;overflow:hidden;outline:none;cursor:pointer}.use-button-picker[_nghost-%COMP%]{border:none}[_nghost-%COMP%]:hover{border-color:#9ea1aa}.active[_nghost-%COMP%], [_nghost-%COMP%]:focus-within{border-color:#4646ce!important;color:#333}.disabled[_nghost-%COMP%]{pointer-events:none;border:1px solid #aeabac;background:#f0f1f4;color:#aeabac}.disabled[_nghost-%COMP%]:after{color:#aeabac}.ng-valid.ng-dirty[_nghost-%COMP%]{border-color:#037c5a}.ng-invalid.ng-dirty[_nghost-%COMP%]:not(:focus-within){border-color:#bf1d30!important}.ng-untouched.ng-valid[_nghost-%COMP%]{border-color:#9ea1aa}.use-button-picker[_nghost-%COMP%]:after{display:none}[_nghost-%COMP%]:not(.use-button-picker):after, [_nghost-%COMP%]:not(.use-button-picker):before{position:absolute;display:flex;border-color:#6d6e6f transparent transparent;color:#6d6e6f}[_nghost-%COMP%]:not(.use-button-picker):after{font-family:DataRails!important;content:\"\\ea17\";font-size:24px;color:#6d6e6f;top:0;bottom:0;right:8px;pointer-events:none;position:absolute;display:flex;align-items:center;justify-content:center}[_nghost-%COMP%] i[_ngcontent-%COMP%]{display:flex;align-items:center;position:absolute;color:#6d6e6f;left:8px;top:0;bottom:0}[_nghost-%COMP%] input[_ngcontent-%COMP%]{display:flex;flex-grow:1;height:100%;border:none;text-align:left;padding-left:35px;padding-right:25px;cursor:pointer!important;outline:none}[_nghost-%COMP%] input.when-quarter[_ngcontent-%COMP%]{position:absolute;visibility:hidden}[_nghost-%COMP%] input[_ngcontent-%COMP%]:disabled{border:none;color:#aeabac;background:transparent}[_nghost-%COMP%] input[_ngcontent-%COMP%]::-webkit-search-decoration, [_nghost-%COMP%] input[_ngcontent-%COMP%]::-webkit-search-cancel-button, [_nghost-%COMP%] input[_ngcontent-%COMP%]::-webkit-search-results-button, [_nghost-%COMP%] input[_ngcontent-%COMP%]::-webkit-search-results-decoration{-webkit-appearance:none}[_nghost-%COMP%] input[_ngcontent-%COMP%]::placeholder{color:#6d6e6f;font-size:14px;line-height:18px}[_nghost-%COMP%] input.hidden-calendar-input[_ngcontent-%COMP%]{width:0;height:0;padding:0}[_nghost-%COMP%] .datepicker-button[_ngcontent-%COMP%]{width:100%}[_nghost-%COMP%] .range-input[_ngcontent-%COMP%]{position:absolute;height:0;width:0;bottom:0;left:0;z-index:-1} .mat-datepicker-popup .dr-week-datepicker{width:386px!important} .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range:before{background:initial!important} .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-selected, .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-cell-content{background:#f2f2fb!important;color:#4646ce!important;font-weight:600!important} .mat-datepicker-popup .mat-datepicker-content{margin:7px 0;box-shadow:0 4px 8px 1px #00000040;border-radius:12px!important} .mat-datepicker-popup .mat-datepicker-content button[disabled]{border:inherit;color:inherit;background-color:inherit} .mat-datepicker-popup .mat-datepicker-content button[disabled]:hover{border:inherit} .mat-datepicker-popup .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical), .mat-datepicker-popup .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#fff} .mat-datepicker-popup .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background:#f2f2fb;color:#4646ce;font-weight:600} .mat-datepicker-popup .mat-calendar-body-selected{background-color:#4646ce;color:#f2f2fb;font-weight:600} .mat-datepicker-popup .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:none} .mat-datepicker-popup .mat-button-focus-overlay{background:#f5f5f5} .mat-datepicker-popup .mat-calendar-controls .mat-icon-button:hover .mat-button-focus-overlay{opacity:1!important;background:#f5f5f5;transition:opacity .2s cubic-bezier(.35,0,.25,1)} .mat-datepicker-popup .mat-calendar-controls .mat-calendar-period-button:hover{background:#f5f5f5;transition:background .2s cubic-bezier(.35,0,.25,1)} .mat-datepicker-popup .mat-calendar-table-header th{font-size:14px;font-weight:600;color:#333} .mat-datepicker-popup .mat-calendar-table-header-divider{display:none} .mat-datepicker-popup .mat-calendar-body-label{color:#fff;padding:0} .mat-datepicker-popup .mat-calendar-body>tr[aria-hidden=true]>.mat-calendar-body-label{display:none} .mat-datepicker-popup .mat-calendar-content{display:flex} .mat-datepicker-popup .mat-calendar-content dr-week-selector{flex:0} .mat-datepicker-popup .mat-calendar-content mat-month-view, .mat-datepicker-popup .mat-calendar-content mat-multi-year-view, .mat-datepicker-popup .mat-calendar-content mat-year-view{flex:1}[_nghost-%COMP%]{border:none;display:flex;align-items:center;width:-moz-fit-content;width:fit-content;background:transparent}[_nghost-%COMP%]:after{visibility:hidden}.disabled[_nghost-%COMP%]{border:none;padding:0 28px;background:transparent}.disabled[_nghost-%COMP%] .dr-datepicker-input-container[_ngcontent-%COMP%]{cursor:default;color:#aeabac}.disabled[_nghost-%COMP%] .dr-datepicker-input-container__formatted-value-display[_ngcontent-%COMP%]{text-decoration:none}[_nghost-%COMP%] .dr-datepicker-input-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;cursor:pointer;color:#6d6e6f;padding-right:4px}[_nghost-%COMP%] .dr-datepicker-input-container[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .dr-datepicker-input-container[_ngcontent-%COMP%]:hover .dr-icon-date[_ngcontent-%COMP%]{color:#333}[_nghost-%COMP%] .dr-datepicker-input-container[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{visibility:hidden;position:absolute;width:100%}[_nghost-%COMP%] .dr-datepicker-input-container__formatted-value-display[_ngcontent-%COMP%]{font-size:14px;line-height:24px;font-weight:400;width:auto;text-decoration-line:underline}[_nghost-%COMP%] .dr-datepicker-input-container[_ngcontent-%COMP%] .dr-icon-date[_ngcontent-%COMP%]{display:block;position:relative;left:unset} .date-picker-preset-tag{width:386px!important} .date-picker-preset-tag .mat-calendar-content{padding-left:32px!important;padding-right:32px!important}@media screen and (max-width: 410px){.mat-datepicker-input[_ngcontent-%COMP%]{width:100vw!important} .date-picker-preset-tag{width:calc(100vw - 16px)!important} .date-picker-preset-tag .dr-datepicker-preset-date__tags{justify-content:center;margin-left:-32px;margin-right:-32px}}"], changeDetection: 0 }); }
|
|
242
232
|
}
|
|
243
233
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrDatePickerWithTimeframeComponent, [{
|
|
244
234
|
type: Component,
|
|
@@ -246,13 +236,8 @@ export class DrDatePickerWithTimeframeComponent extends DrDatePickerComponent {
|
|
|
246
236
|
{ provide: NG_VALUE_ACCESSOR, useExisting: DrDatePickerWithTimeframeComponent, multi: true },
|
|
247
237
|
{ provide: DateAdapter, useClass: CustomDateAdapter },
|
|
248
238
|
{ provide: DrDatePickerService },
|
|
249
|
-
], template: "<dr-button\n [disabled]=\"isPrevDateDisabled\"\n *ngIf=\"!disabled\"\n theme=\"icon\"\n icon=\"dr-icon-arrow-left\"\n (click)=\"pagingClicked(false)\"></dr-button>\n<div\n [drTooltip]=\"datepickerTooltip\"\n [drTooltipPosition]=\"datepickerTooltipPosition\"\n [drTooltipMousleaveTimeout]=\"datepickerTooltipTimeout\"\n class=\"dr-datepicker-input-container\">\n <i
|
|
250
|
-
}], function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.DateAdapter }, { type: i2.DrDatePickerService }]; }, {
|
|
251
|
-
type: HostBinding,
|
|
252
|
-
args: ['class.dr-date-picker-on-dashboard']
|
|
253
|
-
}], isDashboardDatepicker: [{
|
|
254
|
-
type: Input
|
|
255
|
-
}], dateFormatConfig: [{
|
|
239
|
+
], template: "<dr-button\n [disabled]=\"isPrevDateDisabled\"\n *ngIf=\"!disabled\"\n theme=\"icon\"\n icon=\"dr-icon-arrow-left\"\n (click)=\"pagingClicked(false)\"></dr-button>\n<div\n [drTooltip]=\"datepickerTooltip\"\n [drTooltipPosition]=\"datepickerTooltipPosition\"\n [drTooltipMousleaveTimeout]=\"datepickerTooltipTimeout\"\n class=\"dr-datepicker-input-container\">\n <i class=\"dr-icon-date\" (click)=\"datepickerInput.click()\"></i>\n\n <div class=\"dr-datepicker-input-container__formatted-value-display\" (click)=\"datepickerInput.click()\">\n <ng-container\n [ngTemplateOutlet]=\"formattedValueTmpl\"\n [ngTemplateOutletContext]=\"{\n formattedValue: displayedFormattedValue$ | async,\n }\">\n </ng-container>\n <ng-template #formattedValueTmpl let-value=\"formattedValue\">\n <span>\n {{\n datePickerService.isUsingDateTagPresets && !!presetTagSelected\n ? presetTagSelected + ' (' + value + ')'\n : value\n }}\n </span>\n </ng-template>\n </div>\n <input\n #datepickerInput\n [ngModel]=\"displayValue$ | async\"\n (ngModelChange)=\"valueChangedInCalendar($event)\"\n (click)=\"datePicker.open()\"\n [matDatepicker]=\"datePicker\"\n [readonly]=\"readonly\"\n [min]=\"_min\"\n [max]=\"_max\" />\n</div>\n<dr-button\n [disabled]=\"isNextDateDisabled\"\n *ngIf=\"!disabled\"\n theme=\"icon\"\n icon=\"dr-icon-arrow-right\"\n (click)=\"pagingClicked(true)\"></dr-button>\n\n<mat-datepicker\n #datePicker\n class=\"dr-timeframe-datepicker\"\n [calendarHeaderComponent]=\"customHeader\"\n (yearSelected)=\"chosenPeriodHandler($event, timeframeOption.YEAR, datePicker)\"\n (monthSelected)=\"chosenPeriodHandler($event, timeframeOption.MONTH, datePicker)\"\n (opened)=\"onOpen()\"\n (closed)=\"onCLose()\"\n [panelClass]=\"datePickerService.isUsingDateTagPresets ? 'date-picker-preset-tag' : 'dr-timeframe-datepicker'\">\n</mat-datepicker>\n", styles: [":host{position:relative;width:100%;display:flex;flex-direction:row;min-height:32px;height:32px;font-size:14px;font-family:Poppins,sans-serif;background-color:#fff;border:1px solid #9ea1aa;border-radius:6px;color:#333;overflow:hidden;outline:none;cursor:pointer}:host.use-button-picker{border:none}:host:hover{border-color:#9ea1aa}:host.active,:host:focus-within{border-color:#4646ce!important;color:#333}:host.disabled{pointer-events:none;border:1px solid #aeabac;background:#f0f1f4;color:#aeabac}:host.disabled:after{color:#aeabac}:host.ng-valid.ng-dirty{border-color:#037c5a}:host.ng-invalid.ng-dirty:not(:focus-within){border-color:#bf1d30!important}:host.ng-untouched.ng-valid{border-color:#9ea1aa}:host.use-button-picker:after{display:none}:host:not(.use-button-picker):after,:host:not(.use-button-picker):before{position:absolute;display:flex;border-color:#6d6e6f transparent transparent;color:#6d6e6f}:host:not(.use-button-picker):after{font-family:DataRails!important;content:\"\\ea17\";font-size:24px;color:#6d6e6f;top:0;bottom:0;right:8px;pointer-events:none;position:absolute;display:flex;align-items:center;justify-content:center}:host i{display:flex;align-items:center;position:absolute;color:#6d6e6f;left:8px;top:0;bottom:0}:host input{display:flex;flex-grow:1;height:100%;border:none;text-align:left;padding-left:35px;padding-right:25px;cursor:pointer!important;outline:none}:host input.when-quarter{position:absolute;visibility:hidden}:host input:disabled{border:none;color:#aeabac;background:transparent}:host input::-webkit-search-decoration,:host input::-webkit-search-cancel-button,:host input::-webkit-search-results-button,:host input::-webkit-search-results-decoration{-webkit-appearance:none}:host input::placeholder{color:#6d6e6f;font-size:14px;line-height:18px}:host input.hidden-calendar-input{width:0;height:0;padding:0}:host .datepicker-button{width:100%}:host .range-input{position:absolute;height:0;width:0;bottom:0;left:0;z-index:-1}::ng-deep .mat-datepicker-popup .dr-week-datepicker{width:386px!important}::ng-deep .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range:before{background:initial!important}::ng-deep .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-selected,::ng-deep .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-cell-content{background:#f2f2fb!important;color:#4646ce!important;font-weight:600!important}::ng-deep .mat-datepicker-popup .mat-datepicker-content{margin:7px 0;box-shadow:0 4px 8px 1px #00000040;border-radius:12px!important}::ng-deep .mat-datepicker-popup .mat-datepicker-content button[disabled]{border:inherit;color:inherit;background-color:inherit}::ng-deep .mat-datepicker-popup .mat-datepicker-content button[disabled]:hover{border:inherit}::ng-deep .mat-datepicker-popup .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),::ng-deep .mat-datepicker-popup .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#fff}::ng-deep .mat-datepicker-popup .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background:#f2f2fb;color:#4646ce;font-weight:600}::ng-deep .mat-datepicker-popup .mat-calendar-body-selected{background-color:#4646ce;color:#f2f2fb;font-weight:600}::ng-deep .mat-datepicker-popup .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:none}::ng-deep .mat-datepicker-popup .mat-button-focus-overlay{background:#f5f5f5}::ng-deep .mat-datepicker-popup .mat-calendar-controls .mat-icon-button:hover .mat-button-focus-overlay{opacity:1!important;background:#f5f5f5;transition:opacity .2s cubic-bezier(.35,0,.25,1)}::ng-deep .mat-datepicker-popup .mat-calendar-controls .mat-calendar-period-button:hover{background:#f5f5f5;transition:background .2s cubic-bezier(.35,0,.25,1)}::ng-deep .mat-datepicker-popup .mat-calendar-table-header th{font-size:14px;font-weight:600;color:#333}::ng-deep .mat-datepicker-popup .mat-calendar-table-header-divider{display:none}::ng-deep .mat-datepicker-popup .mat-calendar-body-label{color:#fff;padding:0}::ng-deep .mat-datepicker-popup .mat-calendar-body>tr[aria-hidden=true]>.mat-calendar-body-label{display:none}::ng-deep .mat-datepicker-popup .mat-calendar-content{display:flex}::ng-deep .mat-datepicker-popup .mat-calendar-content dr-week-selector{flex:0}::ng-deep .mat-datepicker-popup .mat-calendar-content mat-month-view,::ng-deep .mat-datepicker-popup .mat-calendar-content mat-multi-year-view,::ng-deep .mat-datepicker-popup .mat-calendar-content mat-year-view{flex:1}:host{border:none;display:flex;align-items:center;width:-moz-fit-content;width:fit-content;background:transparent}:host:after{visibility:hidden}:host.disabled{border:none;padding:0 28px;background:transparent}:host.disabled .dr-datepicker-input-container{cursor:default;color:#aeabac}:host.disabled .dr-datepicker-input-container__formatted-value-display{text-decoration:none}:host .dr-datepicker-input-container{display:flex;align-items:center;gap:4px;cursor:pointer;color:#6d6e6f;padding-right:4px}:host .dr-datepicker-input-container:hover,:host .dr-datepicker-input-container:hover .dr-icon-date{color:#333}:host .dr-datepicker-input-container input{visibility:hidden;position:absolute;width:100%}:host .dr-datepicker-input-container__formatted-value-display{font-size:14px;line-height:24px;font-weight:400;width:auto;text-decoration-line:underline}:host .dr-datepicker-input-container .dr-icon-date{display:block;position:relative;left:unset}::ng-deep .date-picker-preset-tag{width:386px!important}::ng-deep .date-picker-preset-tag .mat-calendar-content{padding-left:32px!important;padding-right:32px!important}@media screen and (max-width: 410px){.mat-datepicker-input{width:100vw!important}::ng-deep .date-picker-preset-tag{width:calc(100vw - 16px)!important}::ng-deep .date-picker-preset-tag .dr-datepicker-preset-date__tags{justify-content:center;margin-left:-32px;margin-right:-32px}}\n"] }]
|
|
240
|
+
}], function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.DateAdapter }, { type: i2.DrDatePickerService }]; }, { dateFormatConfig: [{
|
|
256
241
|
type: Input
|
|
257
242
|
}], canSelectTimeframe: [{
|
|
258
243
|
type: Input
|
|
@@ -277,4 +262,4 @@ export class DrDatePickerWithTimeframeComponent extends DrDatePickerComponent {
|
|
|
277
262
|
}], onChangePresetTag: [{
|
|
278
263
|
type: Output
|
|
279
264
|
}] }); })();
|
|
280
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZGF0ZS1waWNrZXItd2l0aC10aW1lZnJhbWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItaW5wdXRzL2RhdGUtcGlja2Vycy9kci1kYXRlLXBpY2tlci13aXRoLXRpbWVmcmFtZS9kci1kYXRlLXBpY2tlci13aXRoLXRpbWVmcmFtZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1pbnB1dHMvZGF0ZS1waWNrZXJzL2RyLWRhdGUtcGlja2VyLXdpdGgtdGltZWZyYW1lL2RyLWRhdGUtcGlja2VyLXdpdGgtdGltZWZyYW1lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFJTCxNQUFNLEVBRU4sV0FBVyxHQUNkLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFxQyxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRyxPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRS9CLE9BQU8sRUFBRSxnQkFBZ0Is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eUJBQXlCO2tCQUE5RSxXQUFXO21CQUFDLG1DQUFtQztZQUl2QyxxQkFBcUI7a0JBQTdCLEtBQUs7WUFFTyxnQkFBZ0I7a0JBQTVCLEtBQUs7WUFPRyxrQkFBa0I7a0JBQTFCLEtBQUs7WUFFTyxtQkFBbUI7a0JBQS9CLEtBQUs7WUFLRyxrQkFBa0I7a0JBQTFCLEtBQUs7WUFFTyxxQkFBcUI7a0JBQWpDLEtBQUs7WUFJTyxTQUFTO2tCQUFyQixLQUFLO1lBSUcsaUJBQWlCO2tCQUF6QixLQUFLO1lBQ0cseUJBQXlCO2tCQUFqQyxLQUFLO1lBQ0csd0JBQXdCO2tCQUFoQyxLQUFLO1lBRUcsTUFBTTtrQkFBZCxLQUFLO1lBRUksY0FBYztrQkFBdkIsTUFBTTtZQUNHLGlCQUFpQjtrQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEN1c3RvbURhdGVBZGFwdGVyLCBEckRhdGVQaWNrZXJDb21wb25lbnQgfSBmcm9tICcuLi9kci1kYXRlLXBpY2tlci9kci1kYXRlLXBpY2tlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGF0ZUFkYXB0ZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IERyRGF0ZVBpY2tlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9kci1kYXRlLXBpY2tlci5zZXJ2aWNlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IERhdGVUYWdzLCBJRGF0ZVBpY2tlckZvcm1hdENvbmZpZywgVGltZWZyYW1lT3B0aW9uIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2RhdGVQaWNrZXInO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBtYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE1vbWVudCB9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBQUkVTRVRfVEFHU19MSVNUIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUb29sdGlwUG9zaXRpb24gfSBmcm9tICcuLi8uLi8uLi9kci10b29sdGlwL2VudW1zL3Rvb2x0aXAtcG9zaXRpb24uZW51bSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZHItZGF0ZS1waWNrZXItd2l0aC10aW1lZnJhbWUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kci1kYXRlLXBpY2tlci13aXRoLXRpbWVmcmFtZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHItZGF0ZS1waWNrZXItd2l0aC10aW1lZnJhbWUuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IERyRGF0ZVBpY2tlcldpdGhUaW1lZnJhbWVDb21wb25lbnQsIG11bHRpOiB0cnVlIH0sXG4gICAgICAgIHsgcHJvdmlkZTogRGF0ZUFkYXB0ZXIsIHVzZUNsYXNzOiBDdXN0b21EYXRlQWRhcHRlciB9LFxuICAgICAgICB7IHByb3ZpZGU6IERyRGF0ZVBpY2tlclNlcnZpY2UgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEckRhdGVQaWNrZXJXaXRoVGltZWZyYW1lQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBEckRhdGVQaWNrZXJDb21wb25lbnRcbiAgICBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT25DaGFuZ2VzXG57XG4gICAgcHJlc2V0VGFnU2VsZWN0ZWQ6IHN0cmluZztcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZHItZGF0ZS1waWNrZXItb24tZGFzaGJvYXJkJykgZ2V0IGlzRGFzaGJvYXJkQ2xhc3NEaXNwbGF5ZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzRGFzaGJvYXJkRGF0ZXBpY2tlcjtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBpc0Rhc2hib2FyZERhdGVwaWNrZXIgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIHNldCBkYXRlRm9ybWF0Q29uZmlnKHZhbHVlOiBJRGF0ZVBpY2tlckZvcm1hdENvbmZpZykge1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuZm9ybWF0Q29uZmlnID0geyAuLi50aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmZvcm1hdENvbmZpZywgLi4udmFsdWUgfTtcbiAgICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQElucHV0KCkgY2FuU2VsZWN0VGltZWZyYW1lID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpIHNldCBhdmFpbGFibGVUaW1lZnJhbWVzKHZhbHVlOiBUaW1lZnJhbWVPcHRpb25bXSkge1xuICAgICAgICBpZiAodmFsdWUgJiYgdmFsdWUubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmF2YWlsYWJsZVRpbWVmcmFtZXMgPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBASW5wdXQoKSBwYWdpbmF0aW9uRGVib3VuY2U7XG5cbiAgICBASW5wdXQoKSBzZXQgaXNVc2luZ0RhdGVUYWdQcmVzZXRzKGZsYWc6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5pc1VzaW5nRGF0ZVRhZ1ByZXNldHMgPSBmbGFnO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHNldCBwcmVzZXRUYWcodGFnOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5wcmVzZXRUYWckLm5leHQodGFnIGFzIERhdGVUYWdzKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBkYXRlcGlja2VyVG9vbHRpcDogVGVtcGxhdGVSZWY8YW55PiB8IG51bGw7XG4gICAgQElucHV0KCkgZGF0ZXBpY2tlclRvb2x0aXBQb3NpdGlvbjogc3RyaW5nID0gVG9vbHRpcFBvc2l0aW9uLlRPUDtcbiAgICBASW5wdXQoKSBkYXRlcGlja2VyVG9vbHRpcFRpbWVvdXQ6IG51bWJlciA9IDA7XG5cbiAgICBASW5wdXQoKSBpc09wZW46IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBPdXRwdXQoKSBvbkNoYW5nZUZvcm1hdCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICAgIEBPdXRwdXQoKSBvbkNoYW5nZVByZXNldFRhZyA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZVRhZ3M+KCk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IHBhZ2luZ1NldHVwID0ge1xuICAgICAgICBbVGltZWZyYW1lT3B0aW9uLllFQVJdOiAoZm9yd2FyZCkgPT4gdGhpcy5nZXROZXh0RGF0ZSgnYWRkQ2FsZW5kYXJZZWFycycsIDEsIGZvcndhcmQpLFxuICAgICAgICBbVGltZWZyYW1lT3B0aW9uLlFVQVJURVJdOiAoZm9yd2FyZCkgPT4gdGhpcy5nZXROZXh0RGF0ZSgnYWRkQ2FsZW5kYXJNb250aHMnLCAzLCBmb3J3YXJkKSxcbiAgICAgICAgW1RpbWVmcmFtZU9wdGlvbi5NT05USF06IChmb3J3YXJkKSA9PiB0aGlzLmdldE5leHREYXRlKCdhZGRDYWxlbmRhck1vbnRocycsIDEsIGZvcndhcmQpLFxuICAgICAgICBbVGltZWZyYW1lT3B0aW9uLkRBWV06IChmb3J3YXJkKSA9PiB0aGlzLmdldE5leHREYXRlKCdhZGRDYWxlbmRhckRheXMnLCAxLCBmb3J3YXJkKSxcbiAgICAgICAgW1RpbWVmcmFtZU9wdGlvbi5XRUVLXTogKGZvcndhcmQpID0+IHRoaXMuZ2V0TmV4dERhdGUoJ2FkZENhbGVuZGFyRGF5cycsIDcsIGZvcndhcmQpLFxuICAgIH07XG5cbiAgICBwdWJsaWMgaXNOZXh0RGF0ZURpc2FibGVkID0gZmFsc2U7XG4gICAgcHVibGljIGlzUHJldkRhdGVEaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBvbkNoYW5nZURlYm91bmNlZCQ6IFN1YmplY3Q8bnVtYmVyPiA9IG5ldyBTdWJqZWN0PG51bWJlcj4oKTtcblxuICAgIHB1YmxpYyBkaXNwbGF5ZWRGb3JtYXR0ZWRWYWx1ZSQgPSB0aGlzLmRpc3BsYXlWYWx1ZSQucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCksXG4gICAgICAgIG1hcCgodmFsdWU6IE1vbWVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKCF2YWx1ZSkgcmV0dXJuIHRoaXMucGxhY2Vob2xkZXI7XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuZ2V0RGlzcGxheVByZWZpeCgpICtcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGVBZGFwdGVyLmZvcm1hdCh2YWx1ZSwgdGhpcy5kYXRlUGlja2VyU2VydmljZS5nZXRDb25maWd1cmVkRm9ybWF0KHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UudGltZWZyYW1lKSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pLFxuICAgICk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByb3RlY3RlZCBkYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8YW55PixcbiAgICAgICAgcHVibGljIGRhdGVQaWNrZXJTZXJ2aWNlOiBEckRhdGVQaWNrZXJTZXJ2aWNlLFxuICAgICkge1xuICAgICAgICBzdXBlcihjZHIsIGRhdGVBZGFwdGVyLCBkYXRlUGlja2VyU2VydmljZSk7XG4gICAgICAgIGRhdGVQaWNrZXJTZXJ2aWNlLmlzVGltZWZyYW1lU2VsZWN0aW9uRW5hYmxlZCA9IHRydWU7XG5cbiAgICAgICAgZGF0ZVBpY2tlclNlcnZpY2UuZm9ybWF0JC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlRm9ybWF0LmVtaXQoZGF0ZVBpY2tlclNlcnZpY2Uubm9ybWFsaXplVmFsdWUodmFsdWUpKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZGF0ZVBpY2tlclNlcnZpY2UucHJlc2V0VGFnJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICBsZXQgdGFnT2JqID0gUFJFU0VUX1RBR1NfTElTVC5maW5kKCh2YWwpID0+IHZhbD8ua2V5ID09PSB2YWx1ZSk7XG4gICAgICAgICAgICB0aGlzLnByZXNldFRhZ1NlbGVjdGVkID0gdGFnT2JqPy5sYWJlbDtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2VQcmVzZXRUYWcuZW1pdCh2YWx1ZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2Uub25TYW1lRGF5U2VsZWN0ZWRJbkNhbGVuZGFyJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNldFZhbHVlRnJvbU1vbWVudCh2YWx1ZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGRhdGVQaWNrZXJTZXJ2aWNlLnVwZGF0ZWREYXRlQW5kQ2xvc2UkLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0VmFsdWVGcm9tTW9tZW50KHZhbHVlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrKHRoaXMuaW5uZXJWYWx1ZS51bml4KCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyLmNsb3NlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmlzVGltZWZyYW1lU2VsZWN0aW9uRW5hYmxlZCA9IHRoaXMuY2FuU2VsZWN0VGltZWZyYW1lO1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcblxuICAgICAgICBpZiAodGhpcy5wYWdpbmF0aW9uRGVib3VuY2UpIHtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2VEZWJvdW5jZWQkLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCksIGRlYm91bmNlVGltZSh0aGlzLnBhZ2luYXRpb25EZWJvdW5jZSkpLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sodmFsdWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLmZvcm1hdD8uY3VycmVudFZhbHVlICYmIGNoYW5nZXMuZm9ybWF0LmN1cnJlbnRWYWx1ZSAhPT0gY2hhbmdlcy5mb3JtYXQucHJldmlvdXNWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS51cGRhdGVUaW1lZnJhbWVBbmRGb3JtYXQoY2hhbmdlcy5mb3JtYXQuY3VycmVudFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gICAgICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyLm9wZW4oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHBhZ2luZ0NsaWNrZWQoZm9yd2FyZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wYWdpbmdTZXR1cFt0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZV0pIHtcbiAgICAgICAgICAgIGNvbnN0IG5leHRWYWx1ZSA9IHRoaXMucGFnaW5nU2V0dXBbdGhpcy5kYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWVdKGZvcndhcmQpO1xuICAgICAgICAgICAgdGhpcy5wYWdpbmdEYXRlQ2hhbmdlKG5leHRWYWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5kYXRlUGlja2VyLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgcGFnaW5nRGF0ZUNoYW5nZShuZXdWYWx1ZTogTW9tZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnBhZ2luYXRpb25EZWJvdW5jZSkge1xuICAgICAgICAgICAgLy8gdGhpcyBpcyByZXF1aXJlZCBmb3Igbm90IHNlbmRpbmcgZXh0cmEgcmVxdWVzdHMgd2hlbiB1c2VyIHF1aWNrbHkgY2xpY2tpbmcgb24gcGFnaW5hdGlvblxuICAgICAgICAgICAgLy8gaGVyZSB3ZSBkbyB0aGUgc2FtZSBhcyBpbiBzZXRWYWx1ZUZyb21Nb21lbnQobmV3VmFsdWUpIHdpdGggZGlmZmVyZW5jZVxuICAgICAgICAgICAgLy8gdGhhdCB1cGRhdGluZyBvZiBuZ01vZGVsL2Zvcm1Db250cm9sIGlzIGRlYm91bmNlZFxuICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5yZXNldFByZXNldFRhZygpO1xuICAgICAgICAgICAgdGhpcy53cml0ZVZhbHVlKG5ld1ZhbHVlLnVuaXgoKSk7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlRGVib3VuY2VkJC5uZXh0KHRoaXMuaW5uZXJWYWx1ZS51bml4KCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zZXRWYWx1ZUZyb21Nb21lbnQobmV3VmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0IGlubmVyIHZhbHVlIGZyb20gdGltZXN0YW1wIGFuZCBwcm9wYWdhdGVcbiAgICAgKlxuICAgICAqIEBwYXJhbSB0aW1lc3RhbXBcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgc2V0VmFsdWUodGltZXN0YW1wOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5yZXNldFByZXNldFRhZygpO1xuICAgICAgICBzdXBlci5zZXRWYWx1ZSh0aW1lc3RhbXApO1xuICAgIH1cbiAgICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgICAgICBpZiAoIXZhbHVlKSByZXR1cm47XG4gICAgICAgIHRoaXMucmVzdHJpY3RQYWdpbmF0aW9uKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXROZXh0RGF0ZShhY3Rpb25DYWxsOiBzdHJpbmcsIGFtb3VudDogbnVtYmVyLCBmb3J3YXJkOiBib29sZWFuKTogTW9tZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZUFkYXB0ZXJbYWN0aW9uQ2FsbF0/Lih0aGlzLmlubmVyVmFsdWUsIGZvcndhcmQgPyBhbW91bnQgOiAtYW1vdW50KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlc3RyaWN0UGFnaW5hdGlvbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl9taW4gJiYgIXRoaXMuX21heCkgcmV0dXJuO1xuICAgICAgICBjb25zdCB0aW1lRnJhbWUgPSB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZTtcbiAgICAgICAgY29uc3QgbmV4dFZhbHVlID0gdGhpcy5wYWdpbmdTZXR1cFt0aW1lRnJhbWVdKHRydWUpO1xuICAgICAgICBjb25zdCBwcmV2VmFsdWUgPSB0aGlzLnBhZ2luZ1NldHVwW3RpbWVGcmFtZV0oZmFsc2UpO1xuICAgICAgICBjb25zdCBncmFudWxhcml0eSA9IHRpbWVGcmFtZTtcbiAgICAgICAgLyogVE9ETzogVGFrZSBpbnRvIGFjY291bnQgZmlzY2FsIHllYXIgc3RhcnQgYW5kIGJhY2sgZm9yIGNhc2VzIHdoZXJlIGZpc2NhbCB5ZWFyIGFuZCBxdWFydGVyIGlzIHRydWUgLSBodHRwczovL2RhdGFyYWlsc3RlYW0uYXRsYXNzaWFuLm5ldC9icm93c2UvRFItMzU1MjggYW5kXG4gICAgICAgICAgaHR0cHM6Ly9kYXRhcmFpbHN0ZWFtLmF0bGFzc2lhbi5uZXQvYnJvd3NlL0RSLTM1NTY4XG4gICAgICAgICovXG4gICAgICAgIGlmICh0aGlzLmZpc2NhbFllYXJCYWNrIHx8IHRoaXMuZmlzY2FsWWVhck1vbnRoc01vZGlmaWVyICE9PSAwKSB7XG4gICAgICAgICAgICB0aGlzLmlzTmV4dERhdGVEaXNhYmxlZCA9IHRoaXMuX21heCAmJiBuZXh0VmFsdWUgJiYgbmV4dFZhbHVlLnVuaXgoKSA+IHRoaXMuX21heC51bml4KCk7XG4gICAgICAgICAgICB0aGlzLmlzUHJldkRhdGVEaXNhYmxlZCA9IHRoaXMuX21pbiAmJiBwcmV2VmFsdWUgJiYgcHJldlZhbHVlLnVuaXgoKSA8IHRoaXMuX21pbi51bml4KCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmlzTmV4dERhdGVEaXNhYmxlZCA9ICEhKHRoaXMuX21heCAmJiBuZXh0VmFsdWUgJiYgIW5leHRWYWx1ZS5pc1NhbWVPckJlZm9yZSh0aGlzLl9tYXgsIGdyYW51bGFyaXR5KSk7XG4gICAgICAgICAgICB0aGlzLmlzUHJldkRhdGVEaXNhYmxlZCA9ICEhKHRoaXMuX21pbiAmJiBwcmV2VmFsdWUgJiYgIXByZXZWYWx1ZS5pc1NhbWVPckFmdGVyKHRoaXMuX21pbiwgZ3JhbnVsYXJpdHkpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkci1idXR0b25cbiAgICBbZGlzYWJsZWRdPVwiaXNQcmV2RGF0ZURpc2FibGVkXCJcbiAgICAqbmdJZj1cIiFkaXNhYmxlZFwiXG4gICAgdGhlbWU9XCJpY29uXCJcbiAgICBpY29uPVwiZHItaWNvbi1hcnJvdy1sZWZ0XCJcbiAgICAoY2xpY2spPVwicGFnaW5nQ2xpY2tlZChmYWxzZSlcIj48L2RyLWJ1dHRvbj5cbjxkaXZcbiAgICBbZHJUb29sdGlwXT1cImRhdGVwaWNrZXJUb29sdGlwXCJcbiAgICBbZHJUb29sdGlwUG9zaXRpb25dPVwiZGF0ZXBpY2tlclRvb2x0aXBQb3NpdGlvblwiXG4gICAgW2RyVG9vbHRpcE1vdXNsZWF2ZVRpbWVvdXRdPVwiZGF0ZXBpY2tlclRvb2x0aXBUaW1lb3V0XCJcbiAgICBjbGFzcz1cImRyLWRhdGVwaWNrZXItaW5wdXQtY29udGFpbmVyXCI+XG4gICAgPGkgKm5nSWY9XCJpc0Rhc2hib2FyZERhdGVwaWNrZXJcIiBjbGFzcz1cImRyLWljb24tZGF0ZVwiPjwvaT5cblxuICAgIDxkaXYgY2xhc3M9XCJkci1kYXRlcGlja2VyLWlucHV0LWNvbnRhaW5lcl9fZm9ybWF0dGVkLXZhbHVlLWRpc3BsYXlcIiAoY2xpY2spPVwiZGF0ZXBpY2tlcklucHV0LmNsaWNrKClcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZm9ybWF0dGVkVmFsdWVUbXBsXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgICAgICAgZm9ybWF0dGVkVmFsdWU6IGRpc3BsYXllZEZvcm1hdHRlZFZhbHVlJCB8IGFzeW5jLFxuICAgICAgICAgICAgfVwiPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNmb3JtYXR0ZWRWYWx1ZVRtcGwgbGV0LXZhbHVlPVwiZm9ybWF0dGVkVmFsdWVcIj5cbiAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgICAgICAgIGRhdGVQaWNrZXJTZXJ2aWNlLmlzVXNpbmdEYXRlVGFnUHJlc2V0cyAmJiAhIXByZXNldFRhZ1NlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgICAgICA/IHByZXNldFRhZ1NlbGVjdGVkICsgJyAoJyArIHZhbHVlICsgJyknXG4gICAgICAgICAgICAgICAgICAgICAgICA6IHZhbHVlXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgICA8aW5wdXRcbiAgICAgICAgI2RhdGVwaWNrZXJJbnB1dFxuICAgICAgICBbbmdNb2RlbF09XCJkaXNwbGF5VmFsdWUkIHwgYXN5bmNcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZUNoYW5nZWRJbkNhbGVuZGFyKCRldmVudClcIlxuICAgICAgICAoY2xpY2spPVwiZGF0ZVBpY2tlci5vcGVuKClcIlxuICAgICAgICBbbWF0RGF0ZXBpY2tlcl09XCJkYXRlUGlja2VyXCJcbiAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgICAgW21pbl09XCJfbWluXCJcbiAgICAgICAgW21heF09XCJfbWF4XCIgLz5cbjwvZGl2PlxuPGRyLWJ1dHRvblxuICAgIFtkaXNhYmxlZF09XCJpc05leHREYXRlRGlzYWJsZWRcIlxuICAgICpuZ0lmPVwiIWRpc2FibGVkXCJcbiAgICB0aGVtZT1cImljb25cIlxuICAgIGljb249XCJkci1pY29uLWFycm93LXJpZ2h0XCJcbiAgICAoY2xpY2spPVwicGFnaW5nQ2xpY2tlZCh0cnVlKVwiPjwvZHItYnV0dG9uPlxuXG48bWF0LWRhdGVwaWNrZXJcbiAgICAjZGF0ZVBpY2tlclxuICAgIGNsYXNzPVwiZHItdGltZWZyYW1lLWRhdGVwaWNrZXJcIlxuICAgIFtjYWxlbmRhckhlYWRlckNvbXBvbmVudF09XCJjdXN0b21IZWFkZXJcIlxuICAgICh5ZWFyU2VsZWN0ZWQpPVwiY2hvc2VuUGVyaW9kSGFuZGxlcigkZXZlbnQsIHRpbWVmcmFtZU9wdGlvbi5ZRUFSLCBkYXRlUGlja2VyKVwiXG4gICAgKG1vbnRoU2VsZWN0ZWQpPVwiY2hvc2VuUGVyaW9kSGFuZGxlcigkZXZlbnQsIHRpbWVmcmFtZU9wdGlvbi5NT05USCwgZGF0ZVBpY2tlcilcIlxuICAgIChvcGVuZWQpPVwib25PcGVuKClcIlxuICAgIChjbG9zZWQpPVwib25DTG9zZSgpXCJcbiAgICBbcGFuZWxDbGFzc109XCJkYXRlUGlja2VyU2VydmljZS5pc1VzaW5nRGF0ZVRhZ1ByZXNldHMgPyAnZGF0ZS1waWNrZXItcHJlc2V0LXRhZycgOiAnZHItdGltZWZyYW1lLWRhdGVwaWNrZXInXCI+XG48L21hdC1kYXRlcGlja2VyPlxuIl19
|
|
265
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZGF0ZS1waWNrZXItd2l0aC10aW1lZnJhbWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItaW5wdXRzL2RhdGUtcGlja2Vycy9kci1kYXRlLXBpY2tlci13aXRoLXRpbWVmcmFtZS9kci1kYXRlLXBpY2tlci13aXRoLXRpbWVmcmFtZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1pbnB1dHMvZGF0ZS1waWNrZXJzL2RyLWRhdGUtcGlja2VyLXdpdGgtdGltZWZyYW1lL2RyLWRhdGUtcGlja2VyLXdpdGgtdGltZWZyYW1lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUlMLE1BQU0sRUFFTixXQUFXLEdBQ2QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDdEcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pFLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQXFDLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hHLE9BQU8sRUFBRSxZQUFZLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0s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QWpDLEtBQUs7WUFJTyxTQUFTO2tCQUFyQixLQUFLO1lBSUcsaUJBQWlCO2tCQUF6QixLQUFLO1lBQ0cseUJBQXlCO2tCQUFqQyxLQUFLO1lBQ0csd0JBQXdCO2tCQUFoQyxLQUFLO1lBRUcsTUFBTTtrQkFBZCxLQUFLO1lBRUksY0FBYztrQkFBdkIsTUFBTTtZQUNHLGlCQUFpQjtrQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEN1c3RvbURhdGVBZGFwdGVyLCBEckRhdGVQaWNrZXJDb21wb25lbnQgfSBmcm9tICcuLi9kci1kYXRlLXBpY2tlci9kci1kYXRlLXBpY2tlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGF0ZUFkYXB0ZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IERyRGF0ZVBpY2tlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9kci1kYXRlLXBpY2tlci5zZXJ2aWNlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IERhdGVUYWdzLCBJRGF0ZVBpY2tlckZvcm1hdENvbmZpZywgVGltZWZyYW1lT3B0aW9uIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2RhdGVQaWNrZXInO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBtYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE1vbWVudCB9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBQUkVTRVRfVEFHU19MSVNUIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUb29sdGlwUG9zaXRpb24gfSBmcm9tICcuLi8uLi8uLi9kci10b29sdGlwL2VudW1zL3Rvb2x0aXAtcG9zaXRpb24uZW51bSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZHItZGF0ZS1waWNrZXItd2l0aC10aW1lZnJhbWUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kci1kYXRlLXBpY2tlci13aXRoLXRpbWVmcmFtZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHItZGF0ZS1waWNrZXItd2l0aC10aW1lZnJhbWUuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IERyRGF0ZVBpY2tlcldpdGhUaW1lZnJhbWVDb21wb25lbnQsIG11bHRpOiB0cnVlIH0sXG4gICAgICAgIHsgcHJvdmlkZTogRGF0ZUFkYXB0ZXIsIHVzZUNsYXNzOiBDdXN0b21EYXRlQWRhcHRlciB9LFxuICAgICAgICB7IHByb3ZpZGU6IERyRGF0ZVBpY2tlclNlcnZpY2UgfSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBEckRhdGVQaWNrZXJXaXRoVGltZWZyYW1lQ29tcG9uZW50XG4gICAgZXh0ZW5kcyBEckRhdGVQaWNrZXJDb21wb25lbnRcbiAgICBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT25DaGFuZ2VzXG57XG4gICAgcHJlc2V0VGFnU2VsZWN0ZWQ6IHN0cmluZztcblxuICAgIEBJbnB1dCgpIHNldCBkYXRlRm9ybWF0Q29uZmlnKHZhbHVlOiBJRGF0ZVBpY2tlckZvcm1hdENvbmZpZykge1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuZm9ybWF0Q29uZmlnID0geyAuLi50aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmZvcm1hdENvbmZpZywgLi4udmFsdWUgfTtcbiAgICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQElucHV0KCkgY2FuU2VsZWN0VGltZWZyYW1lID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpIHNldCBhdmFpbGFibGVUaW1lZnJhbWVzKHZhbHVlOiBUaW1lZnJhbWVPcHRpb25bXSkge1xuICAgICAgICBpZiAodmFsdWUgJiYgdmFsdWUubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmF2YWlsYWJsZVRpbWVmcmFtZXMgPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBASW5wdXQoKSBwYWdpbmF0aW9uRGVib3VuY2U7XG5cbiAgICBASW5wdXQoKSBzZXQgaXNVc2luZ0RhdGVUYWdQcmVzZXRzKGZsYWc6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5pc1VzaW5nRGF0ZVRhZ1ByZXNldHMgPSBmbGFnO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHNldCBwcmVzZXRUYWcodGFnOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5wcmVzZXRUYWckLm5leHQodGFnIGFzIERhdGVUYWdzKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBkYXRlcGlja2VyVG9vbHRpcDogVGVtcGxhdGVSZWY8YW55PiB8IG51bGw7XG4gICAgQElucHV0KCkgZGF0ZXBpY2tlclRvb2x0aXBQb3NpdGlvbjogc3RyaW5nID0gVG9vbHRpcFBvc2l0aW9uLlRPUDtcbiAgICBASW5wdXQoKSBkYXRlcGlja2VyVG9vbHRpcFRpbWVvdXQ6IG51bWJlciA9IDA7XG5cbiAgICBASW5wdXQoKSBpc09wZW46IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBPdXRwdXQoKSBvbkNoYW5nZUZvcm1hdCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICAgIEBPdXRwdXQoKSBvbkNoYW5nZVByZXNldFRhZyA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZVRhZ3M+KCk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IHBhZ2luZ1NldHVwID0ge1xuICAgICAgICBbVGltZWZyYW1lT3B0aW9uLllFQVJdOiAoZm9yd2FyZCkgPT4gdGhpcy5nZXROZXh0RGF0ZSgnYWRkQ2FsZW5kYXJZZWFycycsIDEsIGZvcndhcmQpLFxuICAgICAgICBbVGltZWZyYW1lT3B0aW9uLlFVQVJURVJdOiAoZm9yd2FyZCkgPT4gdGhpcy5nZXROZXh0RGF0ZSgnYWRkQ2FsZW5kYXJNb250aHMnLCAzLCBmb3J3YXJkKSxcbiAgICAgICAgW1RpbWVmcmFtZU9wdGlvbi5NT05USF06IChmb3J3YXJkKSA9PiB0aGlzLmdldE5leHREYXRlKCdhZGRDYWxlbmRhck1vbnRocycsIDEsIGZvcndhcmQpLFxuICAgICAgICBbVGltZWZyYW1lT3B0aW9uLkRBWV06IChmb3J3YXJkKSA9PiB0aGlzLmdldE5leHREYXRlKCdhZGRDYWxlbmRhckRheXMnLCAxLCBmb3J3YXJkKSxcbiAgICAgICAgW1RpbWVmcmFtZU9wdGlvbi5XRUVLXTogKGZvcndhcmQpID0+IHRoaXMuZ2V0TmV4dERhdGUoJ2FkZENhbGVuZGFyRGF5cycsIDcsIGZvcndhcmQpLFxuICAgIH07XG5cbiAgICBwdWJsaWMgaXNOZXh0RGF0ZURpc2FibGVkID0gZmFsc2U7XG4gICAgcHVibGljIGlzUHJldkRhdGVEaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBvbkNoYW5nZURlYm91bmNlZCQ6IFN1YmplY3Q8bnVtYmVyPiA9IG5ldyBTdWJqZWN0PG51bWJlcj4oKTtcblxuICAgIHB1YmxpYyBkaXNwbGF5ZWRGb3JtYXR0ZWRWYWx1ZSQgPSB0aGlzLmRpc3BsYXlWYWx1ZSQucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCksXG4gICAgICAgIG1hcCgodmFsdWU6IE1vbWVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKCF2YWx1ZSkgcmV0dXJuIHRoaXMucGxhY2Vob2xkZXI7XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuZ2V0RGlzcGxheVByZWZpeCgpICtcbiAgICAgICAgICAgICAgICB0aGlzLmRhdGVBZGFwdGVyLmZvcm1hdCh2YWx1ZSwgdGhpcy5kYXRlUGlja2VyU2VydmljZS5nZXRDb25maWd1cmVkRm9ybWF0KHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UudGltZWZyYW1lKSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pLFxuICAgICk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByb3RlY3RlZCBkYXRlQWRhcHRlcjogRGF0ZUFkYXB0ZXI8YW55PixcbiAgICAgICAgcHVibGljIGRhdGVQaWNrZXJTZXJ2aWNlOiBEckRhdGVQaWNrZXJTZXJ2aWNlLFxuICAgICkge1xuICAgICAgICBzdXBlcihjZHIsIGRhdGVBZGFwdGVyLCBkYXRlUGlja2VyU2VydmljZSk7XG4gICAgICAgIGRhdGVQaWNrZXJTZXJ2aWNlLmlzVGltZWZyYW1lU2VsZWN0aW9uRW5hYmxlZCA9IHRydWU7XG5cbiAgICAgICAgZGF0ZVBpY2tlclNlcnZpY2UuZm9ybWF0JC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlRm9ybWF0LmVtaXQoZGF0ZVBpY2tlclNlcnZpY2Uubm9ybWFsaXplVmFsdWUodmFsdWUpKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZGF0ZVBpY2tlclNlcnZpY2UucHJlc2V0VGFnJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICBsZXQgdGFnT2JqID0gUFJFU0VUX1RBR1NfTElTVC5maW5kKCh2YWwpID0+IHZhbD8ua2V5ID09PSB2YWx1ZSk7XG4gICAgICAgICAgICB0aGlzLnByZXNldFRhZ1NlbGVjdGVkID0gdGFnT2JqPy5sYWJlbDtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2VQcmVzZXRUYWcuZW1pdCh2YWx1ZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2Uub25TYW1lRGF5U2VsZWN0ZWRJbkNhbGVuZGFyJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNldFZhbHVlRnJvbU1vbWVudCh2YWx1ZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGRhdGVQaWNrZXJTZXJ2aWNlLnVwZGF0ZWREYXRlQW5kQ2xvc2UkLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0VmFsdWVGcm9tTW9tZW50KHZhbHVlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrKHRoaXMuaW5uZXJWYWx1ZS51bml4KCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyLmNsb3NlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmlzVGltZWZyYW1lU2VsZWN0aW9uRW5hYmxlZCA9IHRoaXMuY2FuU2VsZWN0VGltZWZyYW1lO1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcblxuICAgICAgICBpZiAodGhpcy5wYWdpbmF0aW9uRGVib3VuY2UpIHtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2VEZWJvdW5jZWQkLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCksIGRlYm91bmNlVGltZSh0aGlzLnBhZ2luYXRpb25EZWJvdW5jZSkpLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sodmFsdWUpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLmZvcm1hdD8uY3VycmVudFZhbHVlICYmIGNoYW5nZXMuZm9ybWF0LmN1cnJlbnRWYWx1ZSAhPT0gY2hhbmdlcy5mb3JtYXQucHJldmlvdXNWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS51cGRhdGVUaW1lZnJhbWVBbmRGb3JtYXQoY2hhbmdlcy5mb3JtYXQuY3VycmVudFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gICAgICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyLm9wZW4oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHBhZ2luZ0NsaWNrZWQoZm9yd2FyZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5wYWdpbmdTZXR1cFt0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZV0pIHtcbiAgICAgICAgICAgIGNvbnN0IG5leHRWYWx1ZSA9IHRoaXMucGFnaW5nU2V0dXBbdGhpcy5kYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWVdKGZvcndhcmQpO1xuICAgICAgICAgICAgdGhpcy5wYWdpbmdEYXRlQ2hhbmdlKG5leHRWYWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5kYXRlUGlja2VyLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgcGFnaW5nRGF0ZUNoYW5nZShuZXdWYWx1ZTogTW9tZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnBhZ2luYXRpb25EZWJvdW5jZSkge1xuICAgICAgICAgICAgLy8gdGhpcyBpcyByZXF1aXJlZCBmb3Igbm90IHNlbmRpbmcgZXh0cmEgcmVxdWVzdHMgd2hlbiB1c2VyIHF1aWNrbHkgY2xpY2tpbmcgb24gcGFnaW5hdGlvblxuICAgICAgICAgICAgLy8gaGVyZSB3ZSBkbyB0aGUgc2FtZSBhcyBpbiBzZXRWYWx1ZUZyb21Nb21lbnQobmV3VmFsdWUpIHdpdGggZGlmZmVyZW5jZVxuICAgICAgICAgICAgLy8gdGhhdCB1cGRhdGluZyBvZiBuZ01vZGVsL2Zvcm1Db250cm9sIGlzIGRlYm91bmNlZFxuICAgICAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5yZXNldFByZXNldFRhZygpO1xuICAgICAgICAgICAgdGhpcy53cml0ZVZhbHVlKG5ld1ZhbHVlLnVuaXgoKSk7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlRGVib3VuY2VkJC5uZXh0KHRoaXMuaW5uZXJWYWx1ZS51bml4KCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zZXRWYWx1ZUZyb21Nb21lbnQobmV3VmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0IGlubmVyIHZhbHVlIGZyb20gdGltZXN0YW1wIGFuZCBwcm9wYWdhdGVcbiAgICAgKlxuICAgICAqIEBwYXJhbSB0aW1lc3RhbXBcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgc2V0VmFsdWUodGltZXN0YW1wOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRlUGlja2VyU2VydmljZS5yZXNldFByZXNldFRhZygpO1xuICAgICAgICBzdXBlci5zZXRWYWx1ZSh0aW1lc3RhbXApO1xuICAgIH1cbiAgICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgICAgICBpZiAoIXZhbHVlKSByZXR1cm47XG4gICAgICAgIHRoaXMucmVzdHJpY3RQYWdpbmF0aW9uKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXROZXh0RGF0ZShhY3Rpb25DYWxsOiBzdHJpbmcsIGFtb3VudDogbnVtYmVyLCBmb3J3YXJkOiBib29sZWFuKTogTW9tZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZUFkYXB0ZXJbYWN0aW9uQ2FsbF0/Lih0aGlzLmlubmVyVmFsdWUsIGZvcndhcmQgPyBhbW91bnQgOiAtYW1vdW50KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlc3RyaWN0UGFnaW5hdGlvbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl9taW4gJiYgIXRoaXMuX21heCkgcmV0dXJuO1xuICAgICAgICBjb25zdCB0aW1lRnJhbWUgPSB0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLnRpbWVmcmFtZTtcbiAgICAgICAgY29uc3QgbmV4dFZhbHVlID0gdGhpcy5wYWdpbmdTZXR1cFt0aW1lRnJhbWVdKHRydWUpO1xuICAgICAgICBjb25zdCBwcmV2VmFsdWUgPSB0aGlzLnBhZ2luZ1NldHVwW3RpbWVGcmFtZV0oZmFsc2UpO1xuICAgICAgICBjb25zdCBncmFudWxhcml0eSA9IHRpbWVGcmFtZTtcbiAgICAgICAgLyogVE9ETzogVGFrZSBpbnRvIGFjY291bnQgZmlzY2FsIHllYXIgc3RhcnQgYW5kIGJhY2sgZm9yIGNhc2VzIHdoZXJlIGZpc2NhbCB5ZWFyIGFuZCBxdWFydGVyIGlzIHRydWUgLSBodHRwczovL2RhdGFyYWlsc3RlYW0uYXRsYXNzaWFuLm5ldC9icm93c2UvRFItMzU1MjggYW5kXG4gICAgICAgICAgaHR0cHM6Ly9kYXRhcmFpbHN0ZWFtLmF0bGFzc2lhbi5uZXQvYnJvd3NlL0RSLTM1NTY4XG4gICAgICAgICovXG4gICAgICAgIGlmICh0aGlzLmZpc2NhbFllYXJCYWNrIHx8IHRoaXMuZmlzY2FsWWVhck1vbnRoc01vZGlmaWVyICE9PSAwKSB7XG4gICAgICAgICAgICB0aGlzLmlzTmV4dERhdGVEaXNhYmxlZCA9IHRoaXMuX21heCAmJiBuZXh0VmFsdWUgJiYgbmV4dFZhbHVlLnVuaXgoKSA+IHRoaXMuX21heC51bml4KCk7XG4gICAgICAgICAgICB0aGlzLmlzUHJldkRhdGVEaXNhYmxlZCA9IHRoaXMuX21pbiAmJiBwcmV2VmFsdWUgJiYgcHJldlZhbHVlLnVuaXgoKSA8IHRoaXMuX21pbi51bml4KCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmlzTmV4dERhdGVEaXNhYmxlZCA9ICEhKHRoaXMuX21heCAmJiBuZXh0VmFsdWUgJiYgIW5leHRWYWx1ZS5pc1NhbWVPckJlZm9yZSh0aGlzLl9tYXgsIGdyYW51bGFyaXR5KSk7XG4gICAgICAgICAgICB0aGlzLmlzUHJldkRhdGVEaXNhYmxlZCA9ICEhKHRoaXMuX21pbiAmJiBwcmV2VmFsdWUgJiYgIXByZXZWYWx1ZS5pc1NhbWVPckFmdGVyKHRoaXMuX21pbiwgZ3JhbnVsYXJpdHkpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkci1idXR0b25cbiAgICBbZGlzYWJsZWRdPVwiaXNQcmV2RGF0ZURpc2FibGVkXCJcbiAgICAqbmdJZj1cIiFkaXNhYmxlZFwiXG4gICAgdGhlbWU9XCJpY29uXCJcbiAgICBpY29uPVwiZHItaWNvbi1hcnJvdy1sZWZ0XCJcbiAgICAoY2xpY2spPVwicGFnaW5nQ2xpY2tlZChmYWxzZSlcIj48L2RyLWJ1dHRvbj5cbjxkaXZcbiAgICBbZHJUb29sdGlwXT1cImRhdGVwaWNrZXJUb29sdGlwXCJcbiAgICBbZHJUb29sdGlwUG9zaXRpb25dPVwiZGF0ZXBpY2tlclRvb2x0aXBQb3NpdGlvblwiXG4gICAgW2RyVG9vbHRpcE1vdXNsZWF2ZVRpbWVvdXRdPVwiZGF0ZXBpY2tlclRvb2x0aXBUaW1lb3V0XCJcbiAgICBjbGFzcz1cImRyLWRhdGVwaWNrZXItaW5wdXQtY29udGFpbmVyXCI+XG4gICAgPGkgY2xhc3M9XCJkci1pY29uLWRhdGVcIiAoY2xpY2spPVwiZGF0ZXBpY2tlcklucHV0LmNsaWNrKClcIj48L2k+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZHItZGF0ZXBpY2tlci1pbnB1dC1jb250YWluZXJfX2Zvcm1hdHRlZC12YWx1ZS1kaXNwbGF5XCIgKGNsaWNrKT1cImRhdGVwaWNrZXJJbnB1dC5jbGljaygpXCI+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvcm1hdHRlZFZhbHVlVG1wbFwiXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAgIGZvcm1hdHRlZFZhbHVlOiBkaXNwbGF5ZWRGb3JtYXR0ZWRWYWx1ZSQgfCBhc3luYyxcbiAgICAgICAgICAgIH1cIj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjZm9ybWF0dGVkVmFsdWVUbXBsIGxldC12YWx1ZT1cImZvcm1hdHRlZFZhbHVlXCI+XG4gICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICBkYXRlUGlja2VyU2VydmljZS5pc1VzaW5nRGF0ZVRhZ1ByZXNldHMgJiYgISFwcmVzZXRUYWdTZWxlY3RlZFxuICAgICAgICAgICAgICAgICAgICAgICAgPyBwcmVzZXRUYWdTZWxlY3RlZCArICcgKCcgKyB2YWx1ZSArICcpJ1xuICAgICAgICAgICAgICAgICAgICAgICAgOiB2YWx1ZVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gICAgPGlucHV0XG4gICAgICAgICNkYXRlcGlja2VySW5wdXRcbiAgICAgICAgW25nTW9kZWxdPVwiZGlzcGxheVZhbHVlJCB8IGFzeW5jXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVDaGFuZ2VkSW5DYWxlbmRhcigkZXZlbnQpXCJcbiAgICAgICAgKGNsaWNrKT1cImRhdGVQaWNrZXIub3BlbigpXCJcbiAgICAgICAgW21hdERhdGVwaWNrZXJdPVwiZGF0ZVBpY2tlclwiXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgIFttaW5dPVwiX21pblwiXG4gICAgICAgIFttYXhdPVwiX21heFwiIC8+XG48L2Rpdj5cbjxkci1idXR0b25cbiAgICBbZGlzYWJsZWRdPVwiaXNOZXh0RGF0ZURpc2FibGVkXCJcbiAgICAqbmdJZj1cIiFkaXNhYmxlZFwiXG4gICAgdGhlbWU9XCJpY29uXCJcbiAgICBpY29uPVwiZHItaWNvbi1hcnJvdy1yaWdodFwiXG4gICAgKGNsaWNrKT1cInBhZ2luZ0NsaWNrZWQodHJ1ZSlcIj48L2RyLWJ1dHRvbj5cblxuPG1hdC1kYXRlcGlja2VyXG4gICAgI2RhdGVQaWNrZXJcbiAgICBjbGFzcz1cImRyLXRpbWVmcmFtZS1kYXRlcGlja2VyXCJcbiAgICBbY2FsZW5kYXJIZWFkZXJDb21wb25lbnRdPVwiY3VzdG9tSGVhZGVyXCJcbiAgICAoeWVhclNlbGVjdGVkKT1cImNob3NlblBlcmlvZEhhbmRsZXIoJGV2ZW50LCB0aW1lZnJhbWVPcHRpb24uWUVBUiwgZGF0ZVBpY2tlcilcIlxuICAgIChtb250aFNlbGVjdGVkKT1cImNob3NlblBlcmlvZEhhbmRsZXIoJGV2ZW50LCB0aW1lZnJhbWVPcHRpb24uTU9OVEgsIGRhdGVQaWNrZXIpXCJcbiAgICAob3BlbmVkKT1cIm9uT3BlbigpXCJcbiAgICAoY2xvc2VkKT1cIm9uQ0xvc2UoKVwiXG4gICAgW3BhbmVsQ2xhc3NdPVwiZGF0ZVBpY2tlclNlcnZpY2UuaXNVc2luZ0RhdGVUYWdQcmVzZXRzID8gJ2RhdGUtcGlja2VyLXByZXNldC10YWcnIDogJ2RyLXRpbWVmcmFtZS1kYXRlcGlja2VyJ1wiPlxuPC9tYXQtZGF0ZXBpY2tlcj5cbiJdfQ==
|
|
@@ -159,7 +159,7 @@ export class DrFiscalMonthCalendarPickerComponent extends DrDatePickerComponent
|
|
|
159
159
|
i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(2, 3, ctx.datePickerService.timeframe$) === "week");
|
|
160
160
|
i0.ɵɵadvance(2);
|
|
161
161
|
i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(4, 5, ctx.datePickerService.timeframe$) !== "week");
|
|
162
|
-
} }, dependencies: [i1.DrButtonComponent, i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgControlStatusGroup, i2.NgModel, i2.FormGroupDirective, i2.FormControlName, i3.NgIf, i4.MatDatepicker, i4.MatDatepickerInput, i4.MatDateRangeInput, i4.MatStartDate, i4.MatEndDate, i4.MatDateRangePicker, i5.DrDatePickerFormatDirective, i3.AsyncPipe], styles: ["[_nghost-%COMP%]{position:relative;width:100%;display:flex;flex-direction:row;min-height:32px;height:32px;font-size:14px;font-family:Poppins,sans-serif;background-color:#fff;border-radius:6px;color:#333;overflow:hidden;outline:none;cursor:pointer}[_nghost-%COMP%]
|
|
162
|
+
} }, dependencies: [i1.DrButtonComponent, i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgControlStatusGroup, i2.NgModel, i2.FormGroupDirective, i2.FormControlName, i3.NgIf, i4.MatDatepicker, i4.MatDatepickerInput, i4.MatDateRangeInput, i4.MatStartDate, i4.MatEndDate, i4.MatDateRangePicker, i5.DrDatePickerFormatDirective, i3.AsyncPipe], styles: ["[_nghost-%COMP%]{position:relative;width:100%;display:flex;flex-direction:row;min-height:32px;height:32px;font-size:14px;font-family:Poppins,sans-serif;background-color:#fff;border:1px solid #9ea1aa;border-radius:6px;color:#333;overflow:hidden;outline:none;cursor:pointer}.use-button-picker[_nghost-%COMP%]{border:none}[_nghost-%COMP%]:hover{border-color:#9ea1aa}.active[_nghost-%COMP%], [_nghost-%COMP%]:focus-within{border-color:#4646ce!important;color:#333}.disabled[_nghost-%COMP%]{pointer-events:none;border:1px solid #aeabac;background:#f0f1f4;color:#aeabac}.disabled[_nghost-%COMP%]:after{color:#aeabac}.ng-valid.ng-dirty[_nghost-%COMP%]{border-color:#037c5a}.ng-invalid.ng-dirty[_nghost-%COMP%]:not(:focus-within){border-color:#bf1d30!important}.ng-untouched.ng-valid[_nghost-%COMP%]{border-color:#9ea1aa}.use-button-picker[_nghost-%COMP%]:after{display:none}[_nghost-%COMP%]:not(.use-button-picker):after, [_nghost-%COMP%]:not(.use-button-picker):before{position:absolute;display:flex;border-color:#6d6e6f transparent transparent;color:#6d6e6f}[_nghost-%COMP%]:not(.use-button-picker):after{font-family:DataRails!important;content:\"\\ea17\";font-size:24px;color:#6d6e6f;top:0;bottom:0;right:8px;pointer-events:none;position:absolute;display:flex;align-items:center;justify-content:center}[_nghost-%COMP%] i[_ngcontent-%COMP%]{display:flex;align-items:center;position:absolute;color:#6d6e6f;left:8px;top:0;bottom:0}[_nghost-%COMP%] input[_ngcontent-%COMP%]{display:flex;flex-grow:1;height:100%;border:none;text-align:left;padding-left:35px;padding-right:25px;cursor:pointer!important;outline:none}[_nghost-%COMP%] input.when-quarter[_ngcontent-%COMP%]{position:absolute;visibility:hidden}[_nghost-%COMP%] input[_ngcontent-%COMP%]:disabled{border:none;color:#aeabac;background:transparent}[_nghost-%COMP%] input[_ngcontent-%COMP%]::-webkit-search-decoration, [_nghost-%COMP%] input[_ngcontent-%COMP%]::-webkit-search-cancel-button, [_nghost-%COMP%] input[_ngcontent-%COMP%]::-webkit-search-results-button, [_nghost-%COMP%] input[_ngcontent-%COMP%]::-webkit-search-results-decoration{-webkit-appearance:none}[_nghost-%COMP%] input[_ngcontent-%COMP%]::placeholder{color:#6d6e6f;font-size:14px;line-height:18px}[_nghost-%COMP%] input.hidden-calendar-input[_ngcontent-%COMP%]{width:0;height:0;padding:0}[_nghost-%COMP%] .datepicker-button[_ngcontent-%COMP%]{width:100%}[_nghost-%COMP%] .range-input[_ngcontent-%COMP%]{position:absolute;height:0;width:0;bottom:0;left:0;z-index:-1} .mat-datepicker-popup .dr-week-datepicker{width:386px!important} .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range:before{background:initial!important} .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-selected, .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-cell-content{background:#f2f2fb!important;color:#4646ce!important;font-weight:600!important} .mat-datepicker-popup .mat-datepicker-content{margin:7px 0;box-shadow:0 4px 8px 1px #00000040;border-radius:12px!important} .mat-datepicker-popup .mat-datepicker-content button[disabled]{border:inherit;color:inherit;background-color:inherit} .mat-datepicker-popup .mat-datepicker-content button[disabled]:hover{border:inherit} .mat-datepicker-popup .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical), .mat-datepicker-popup .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#fff} .mat-datepicker-popup .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background:#f2f2fb;color:#4646ce;font-weight:600} .mat-datepicker-popup .mat-calendar-body-selected{background-color:#4646ce;color:#f2f2fb;font-weight:600} .mat-datepicker-popup .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:none} .mat-datepicker-popup .mat-button-focus-overlay{background:#f5f5f5} .mat-datepicker-popup .mat-calendar-controls .mat-icon-button:hover .mat-button-focus-overlay{opacity:1!important;background:#f5f5f5;transition:opacity .2s cubic-bezier(.35,0,.25,1)} .mat-datepicker-popup .mat-calendar-controls .mat-calendar-period-button:hover{background:#f5f5f5;transition:background .2s cubic-bezier(.35,0,.25,1)} .mat-datepicker-popup .mat-calendar-table-header th{font-size:14px;font-weight:600;color:#333} .mat-datepicker-popup .mat-calendar-table-header-divider{display:none} .mat-datepicker-popup .mat-calendar-body-label{color:#fff;padding:0} .mat-datepicker-popup .mat-calendar-body>tr[aria-hidden=true]>.mat-calendar-body-label{display:none} .mat-datepicker-popup .mat-calendar-content{display:flex} .mat-datepicker-popup .mat-calendar-content dr-week-selector{flex:0} .mat-datepicker-popup .mat-calendar-content mat-month-view, .mat-datepicker-popup .mat-calendar-content mat-multi-year-view, .mat-datepicker-popup .mat-calendar-content mat-year-view{flex:1}"], changeDetection: 0 }); }
|
|
163
163
|
}
|
|
164
164
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrFiscalMonthCalendarPickerComponent, [{
|
|
165
165
|
type: Component,
|
|
@@ -167,6 +167,6 @@ export class DrFiscalMonthCalendarPickerComponent extends DrDatePickerComponent
|
|
|
167
167
|
{ provide: NG_VALUE_ACCESSOR, useExisting: DrFiscalMonthCalendarPickerComponent, multi: true },
|
|
168
168
|
{ provide: DateAdapter, useClass: FiscalMonthAdapter },
|
|
169
169
|
DrDatePickerService,
|
|
170
|
-
], template: "<i *ngIf=\"!useButton\" class=\"dr-icon-date\" (click)=\"datePicker.open()\"></i>\n\n<ng-container *ngIf=\"(datePickerService.timeframe$ | async) === 'week'\">\n <input\n [attr.id]=\"id\"\n [ngModel]=\"input.value\"\n (click)=\"datePicker.open()\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [min]=\"_min\"\n [max]=\"_max\" />\n\n <mat-date-range-input [formGroup]=\"rangeForm\" [rangePicker]=\"datePicker\" [dateFilter]=\"dateFilter\" class=\"range-input\">\n <input\n matStartDate\n #input\n [drDatePickerFormat]=\"datePickerService.format$ | async\"\n formControlName=\"start\"\n (dateChange)=\"valueChangedInCalendar(rangeForm.value.start)\" />\n <input matEndDate [drDatePickerFormat]=\"datePickerService.format$ | async\" formControlName=\"end\" />\n </mat-date-range-input>\n\n <mat-date-range-picker\n #datePicker\n [startAt]=\"_startAt\"\n [panelClass]=\"'dr-week-datepicker' + (panelClass ? ' ' + panelClass : '')\"\n [calendarHeaderComponent]=\"customHeader\"\n (yearSelected)=\"chosenPeriodHandler($event, timeframeOption.YEAR, datePicker)\"\n (monthSelected)=\"chosenPeriodHandler($event, timeframeOption.MONTH, datePicker)\"\n (opened)=\"onOpen()\"\n (closed)=\"onCLose()\">\n </mat-date-range-picker>\n</ng-container>\n\n<ng-container *ngIf=\"(datePickerService.timeframe$ | async) !== 'week'\">\n <input\n [attr.id]=\"id\"\n [ngModel]=\"displayValue$ | async\"\n (ngModelChange)=\"valueChangedInCalendar($event)\"\n (click)=\"datePicker.open()\"\n [matDatepicker]=\"datePicker\"\n [matDatepickerFilter]=\"dateFilter\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [drDatePickerFormat]=\"datePickerService.format$ | async\"\n [readonly]=\"readonly\"\n [min]=\"_min\"\n [max]=\"_max\"\n [class.hidden-calendar-input]=\"useButton\" />\n\n <dr-button\n *ngIf=\"useButton\"\n [icon]=\"'dr-icon-date'\"\n [iconAfter]=\"iconAfterButton\"\n (click)=\"datePicker.open()\"\n class=\"datepicker-button\">\n {{ buttonLabel || 'Select Date' }}\n </dr-button>\n\n <mat-datepicker\n #datePicker\n [panelClass]=\"panelClass\"\n [startAt]=\"_startAt\"\n [calendarHeaderComponent]=\"customHeader\"\n (yearSelected)=\"chosenPeriodHandler($event, timeframeOption.YEAR, datePicker)\"\n (monthSelected)=\"chosenPeriodHandler($event, timeframeOption.MONTH, datePicker)\"\n (opened)=\"onOpen()\"\n (closed)=\"onCLose()\">\n </mat-datepicker>\n</ng-container>\n", styles: [":host{position:relative;width:100%;display:flex;flex-direction:row;min-height:32px;height:32px;font-size:14px;font-family:Poppins,sans-serif;background-color:#fff;border-radius:6px;color:#333;overflow:hidden;outline:none;cursor:pointer}:host
|
|
170
|
+
], template: "<i *ngIf=\"!useButton\" class=\"dr-icon-date\" (click)=\"datePicker.open()\"></i>\n\n<ng-container *ngIf=\"(datePickerService.timeframe$ | async) === 'week'\">\n <input\n [attr.id]=\"id\"\n [ngModel]=\"input.value\"\n (click)=\"datePicker.open()\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n [min]=\"_min\"\n [max]=\"_max\" />\n\n <mat-date-range-input [formGroup]=\"rangeForm\" [rangePicker]=\"datePicker\" [dateFilter]=\"dateFilter\" class=\"range-input\">\n <input\n matStartDate\n #input\n [drDatePickerFormat]=\"datePickerService.format$ | async\"\n formControlName=\"start\"\n (dateChange)=\"valueChangedInCalendar(rangeForm.value.start)\" />\n <input matEndDate [drDatePickerFormat]=\"datePickerService.format$ | async\" formControlName=\"end\" />\n </mat-date-range-input>\n\n <mat-date-range-picker\n #datePicker\n [startAt]=\"_startAt\"\n [panelClass]=\"'dr-week-datepicker' + (panelClass ? ' ' + panelClass : '')\"\n [calendarHeaderComponent]=\"customHeader\"\n (yearSelected)=\"chosenPeriodHandler($event, timeframeOption.YEAR, datePicker)\"\n (monthSelected)=\"chosenPeriodHandler($event, timeframeOption.MONTH, datePicker)\"\n (opened)=\"onOpen()\"\n (closed)=\"onCLose()\">\n </mat-date-range-picker>\n</ng-container>\n\n<ng-container *ngIf=\"(datePickerService.timeframe$ | async) !== 'week'\">\n <input\n [attr.id]=\"id\"\n [ngModel]=\"displayValue$ | async\"\n (ngModelChange)=\"valueChangedInCalendar($event)\"\n (click)=\"datePicker.open()\"\n [matDatepicker]=\"datePicker\"\n [matDatepickerFilter]=\"dateFilter\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [drDatePickerFormat]=\"datePickerService.format$ | async\"\n [readonly]=\"readonly\"\n [min]=\"_min\"\n [max]=\"_max\"\n [class.hidden-calendar-input]=\"useButton\" />\n\n <dr-button\n *ngIf=\"useButton\"\n [icon]=\"'dr-icon-date'\"\n [iconAfter]=\"iconAfterButton\"\n (click)=\"datePicker.open()\"\n class=\"datepicker-button\">\n {{ buttonLabel || 'Select Date' }}\n </dr-button>\n\n <mat-datepicker\n #datePicker\n [panelClass]=\"panelClass\"\n [startAt]=\"_startAt\"\n [calendarHeaderComponent]=\"customHeader\"\n (yearSelected)=\"chosenPeriodHandler($event, timeframeOption.YEAR, datePicker)\"\n (monthSelected)=\"chosenPeriodHandler($event, timeframeOption.MONTH, datePicker)\"\n (opened)=\"onOpen()\"\n (closed)=\"onCLose()\">\n </mat-datepicker>\n</ng-container>\n", styles: [":host{position:relative;width:100%;display:flex;flex-direction:row;min-height:32px;height:32px;font-size:14px;font-family:Poppins,sans-serif;background-color:#fff;border:1px solid #9ea1aa;border-radius:6px;color:#333;overflow:hidden;outline:none;cursor:pointer}:host.use-button-picker{border:none}:host:hover{border-color:#9ea1aa}:host.active,:host:focus-within{border-color:#4646ce!important;color:#333}:host.disabled{pointer-events:none;border:1px solid #aeabac;background:#f0f1f4;color:#aeabac}:host.disabled:after{color:#aeabac}:host.ng-valid.ng-dirty{border-color:#037c5a}:host.ng-invalid.ng-dirty:not(:focus-within){border-color:#bf1d30!important}:host.ng-untouched.ng-valid{border-color:#9ea1aa}:host.use-button-picker:after{display:none}:host:not(.use-button-picker):after,:host:not(.use-button-picker):before{position:absolute;display:flex;border-color:#6d6e6f transparent transparent;color:#6d6e6f}:host:not(.use-button-picker):after{font-family:DataRails!important;content:\"\\ea17\";font-size:24px;color:#6d6e6f;top:0;bottom:0;right:8px;pointer-events:none;position:absolute;display:flex;align-items:center;justify-content:center}:host i{display:flex;align-items:center;position:absolute;color:#6d6e6f;left:8px;top:0;bottom:0}:host input{display:flex;flex-grow:1;height:100%;border:none;text-align:left;padding-left:35px;padding-right:25px;cursor:pointer!important;outline:none}:host input.when-quarter{position:absolute;visibility:hidden}:host input:disabled{border:none;color:#aeabac;background:transparent}:host input::-webkit-search-decoration,:host input::-webkit-search-cancel-button,:host input::-webkit-search-results-button,:host input::-webkit-search-results-decoration{-webkit-appearance:none}:host input::placeholder{color:#6d6e6f;font-size:14px;line-height:18px}:host input.hidden-calendar-input{width:0;height:0;padding:0}:host .datepicker-button{width:100%}:host .range-input{position:absolute;height:0;width:0;bottom:0;left:0;z-index:-1}::ng-deep .mat-datepicker-popup .dr-week-datepicker{width:386px!important}::ng-deep .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range:before{background:initial!important}::ng-deep .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-selected,::ng-deep .mat-datepicker-popup .dr-week-datepicker .mat-calendar-body-in-range .mat-calendar-body-cell-content{background:#f2f2fb!important;color:#4646ce!important;font-weight:600!important}::ng-deep .mat-datepicker-popup .mat-datepicker-content{margin:7px 0;box-shadow:0 4px 8px 1px #00000040;border-radius:12px!important}::ng-deep .mat-datepicker-popup .mat-datepicker-content button[disabled]{border:inherit;color:inherit;background-color:inherit}::ng-deep .mat-datepicker-popup .mat-datepicker-content button[disabled]:hover{border:inherit}::ng-deep .mat-datepicker-popup .cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),::ng-deep .mat-datepicker-popup .cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:#fff}::ng-deep .mat-datepicker-popup .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background:#f2f2fb;color:#4646ce;font-weight:600}::ng-deep .mat-datepicker-popup .mat-calendar-body-selected{background-color:#4646ce;color:#f2f2fb;font-weight:600}::ng-deep .mat-datepicker-popup .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:none}::ng-deep .mat-datepicker-popup .mat-button-focus-overlay{background:#f5f5f5}::ng-deep .mat-datepicker-popup .mat-calendar-controls .mat-icon-button:hover .mat-button-focus-overlay{opacity:1!important;background:#f5f5f5;transition:opacity .2s cubic-bezier(.35,0,.25,1)}::ng-deep .mat-datepicker-popup .mat-calendar-controls .mat-calendar-period-button:hover{background:#f5f5f5;transition:background .2s cubic-bezier(.35,0,.25,1)}::ng-deep .mat-datepicker-popup .mat-calendar-table-header th{font-size:14px;font-weight:600;color:#333}::ng-deep .mat-datepicker-popup .mat-calendar-table-header-divider{display:none}::ng-deep .mat-datepicker-popup .mat-calendar-body-label{color:#fff;padding:0}::ng-deep .mat-datepicker-popup .mat-calendar-body>tr[aria-hidden=true]>.mat-calendar-body-label{display:none}::ng-deep .mat-datepicker-popup .mat-calendar-content{display:flex}::ng-deep .mat-datepicker-popup .mat-calendar-content dr-week-selector{flex:0}::ng-deep .mat-datepicker-popup .mat-calendar-content mat-month-view,::ng-deep .mat-datepicker-popup .mat-calendar-content mat-multi-year-view,::ng-deep .mat-datepicker-popup .mat-calendar-content mat-year-view{flex:1}\n"] }]
|
|
171
171
|
}], null, null); })();
|
|
172
172
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZmlzY2FsLW1vbnRoLWNhbGVuZGFyLXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1pbnB1dHMvZGF0ZS1waWNrZXJzL2RyLWZpc2NhbC1tb250aC1jYWxlbmRhci1waWNrZXIvZHItZmlzY2FsLW1vbnRoLWNhbGVuZGFyLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1pbnB1dHMvZGF0ZS1waWNrZXJzL2RyLWRhdGUtcGlja2VyL2RyLWRhdGUtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUN0RyxPQUFPLEtBQUssTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUNqQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFN0QsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sNkNBQTZDLENBQUM7Ozs7Ozs7OztJQ1RuRyw0QkFBdUU7SUFBNUIsMEtBQVMsZUFBQSx3QkFBaUIsQ0FBQSxJQUFDO0lBQUMsaUJBQUk7Ozs7SUFFM0UsNkJBQXdF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SUFBSSxTQUFTLEtBQUssZUFBZSxDQUFDLEtBQUssQ0FBQyxFQUNyRztZQUNFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyx5QkFBeUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUNuRTtRQUNELE9BQU8sYUFBYSxDQUFDO0lBQ3pCLENBQUM7d1ZBbkNRLG9DQUFvQyxTQUFwQyxvQ0FBb0M7bUdBQXBDLG9DQUFvQyw0RUFObEM7Z0JBQ1AsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLG9DQUFvQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7Z0JBQzlGLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsa0JBQWtCLEVBQUU7Z0JBQ3RELG1CQUFtQjthQUN0QjtZQzNDTCxpRkFBMkU7WUFFM0UseUdBK0JlOztZQUVmLHdHQW1DZTs7O1lBdEVYLHFDQUFnQjtZQUVMLGVBQXVEO1lBQXZELHdGQUF1RDtZQWlDdkQsZUFBdUQ7WUFBdkQsd0ZBQXVEOzs7dUZEVXpELG9DQUFvQztjQVhoRCxTQUFTOzJCQUNJLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTSxhQUNwQztvQkFDUCxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLHNDQUFzQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7b0JBQzlGLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsa0JBQWtCLEVBQUU7b0JBQ3RELG1CQUFtQjtpQkFDdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBEYXRlQWRhcHRlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgRHJEYXRlUGlja2VyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2RyLWRhdGUtcGlja2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ3VzdG9tRGF0ZUFkYXB0ZXIsIERyRGF0ZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4uL2RyLWRhdGUtcGlja2VyL2RyLWRhdGUtcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgKiBhcyBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IEZvcmVjYXN0VGFnU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2RhdGUtdGFncy9mb3JlY2FzdC10YWcvZm9yZWNhc3QtdGFnLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGltZWZyYW1lT3B0aW9uIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2RhdGVQaWNrZXInO1xuaW1wb3J0IHsgTWF0RGF0ZXBpY2tlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuaW1wb3J0IHsgRHJGaXNjYWxNb250aENhbGVuZGFySGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9kci1maXNjYWwtbW9udGgtY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjbGFzcyBGaXNjYWxNb250aEFkYXB0ZXIgZXh0ZW5kcyBDdXN0b21EYXRlQWRhcHRlciB7XG4gICAgcmVhZG9ubHkgZGF0ZVBpY2tlclNlcnZpY2UgPSBpbmplY3QoRHJEYXRlUGlja2VyU2VydmljZSk7XG5cbiAgICBvdmVycmlkZSBnZXRNb250aE5hbWVzKHN0eWxlOiAnbG9uZycgfCAnc2hvcnQnIHwgJ25hcnJvdycpOiBzdHJpbmdbXSB7XG4gICAgICAgIHJldHVybiBGb3JlY2FzdFRhZ1NlcnZpY2UuZ2V0Rm9yZWNhc3RNb250aFRlbXBsYXRlcygpO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIGZvcm1hdChkYXRlOiBtb21lbnQuTW9tZW50LCBkaXNwbGF5Rm9ybWF0OiBzdHJpbmcpOiBzdHJpbmcgfCBhbnkge1xuICAgICAgICBpZiAoIWRhdGUpIHJldHVybiAnJztcbiAgICAgICAgY29uc3QgZGF0ZVRvRm9ybWF0ID0gdGhpcy5kYXRlUGlja2VyU2VydmljZS5zdWJ0cmFjdEZpc2NhbFllYXJNb250aHNGcm9tRGF0ZShkYXRlLmNsb25lKCkpO1xuICAgICAgICBjb25zdCBtb250aCA9IGRhdGVUb0Zvcm1hdC5tb250aCgpO1xuICAgICAgICBjb25zdCB5ZWFyID0gZGF0ZVRvRm9ybWF0LnllYXIoKTtcbiAgICAgICAgcmV0dXJuIGAke0ZvcmVjYXN0VGFnU2VydmljZS5nZXRGb3JlY2FzdExhYmVsKG1vbnRoICsgMSl9ICgke3llYXJ9KWA7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgdG9kYXkoKTogbW9tZW50Lk1vbWVudCB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRNb21lbnQgPSBtb21lbnQudXRjKCk7XG4gICAgICAgIGNvbnN0IG1vbWVudFdpdGhTdWJzdHJNb250aCA9IHRoaXMuZGF0ZVBpY2tlclNlcnZpY2Uuc3VidHJhY3RGaXNjYWxZZWFyTW9udGhzRnJvbURhdGUoY3VycmVudE1vbWVudCk7XG4gICAgICAgIGNvbnN0IG1vbWVudFdpdGhTaGlmdGVkWWVhciA9IHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuYWRkRmlzY2FsWWVhclNoaWZ0Rm9yWWVhcihtb21lbnRXaXRoU3Vic3RyTW9udGgpO1xuICAgICAgICByZXR1cm4gbW9tZW50V2l0aFNoaWZ0ZWRZZWFyID8gbW9tZW50V2l0aFNoaWZ0ZWRZZWFyIDogbW9tZW50V2l0aFN1YnN0ck1vbnRoO1xuICAgIH1cbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkci1maXNjYWwtbW9udGgtcGlja2VyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4uL2RyLWRhdGUtcGlja2VyL2RyLWRhdGUtcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi4vZHItZGF0ZS1waWNrZXIvZHItZGF0ZS1waWNrZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IERyRmlzY2FsTW9udGhDYWxlbmRhclBpY2tlckNvbXBvbmVudCwgbXVsdGk6IHRydWUgfSxcbiAgICAgICAgeyBwcm92aWRlOiBEYXRlQWRhcHRlciwgdXNlQ2xhc3M6IEZpc2NhbE1vbnRoQWRhcHRlciB9LFxuICAgICAgICBEckRhdGVQaWNrZXJTZXJ2aWNlLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIERyRmlzY2FsTW9udGhDYWxlbmRhclBpY2tlckNvbXBvbmVudCBleHRlbmRzIERyRGF0ZVBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHVibGljIG92ZXJyaWRlIHJlYWRvbmx5IGN1c3RvbUhlYWRlciA9IERyRmlzY2FsTW9udGhDYWxlbmRhckhlYWRlckNvbXBvbmVudDtcbiAgICBvdmVycmlkZSBmb3JtYXQgPSBUaW1lZnJhbWVPcHRpb24uTU9OVEg7XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb3JtYXQoKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBjaG9zZW5QZXJpb2RIYW5kbGVyKGNob3NlbkRhdGU6IG1vbWVudC5Nb21lbnQsIHRpbWVmcmFtZTogVGltZWZyYW1lT3B0aW9uLCBwaWNrZXI6IE1hdERhdGVwaWNrZXI8YW55Pik6IHZvaWQge1xuICAgICAgICBpZiAodGltZWZyYW1lID09PSBUaW1lZnJhbWVPcHRpb24uWUVBUikge1xuICAgICAgICAgICAgY2hvc2VuRGF0ZSA9IHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuYWRkRmlzY2FsWWVhck1vbnRoc1RvRGF0ZShjaG9zZW5EYXRlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aW1lZnJhbWUgPT09IFRpbWVmcmFtZU9wdGlvbi5NT05USCkge1xuICAgICAgICAgICAgY29uc3QgbW9tZW50V2l0aFNoaWZ0ZWRZZWFyID0gdGhpcy5kYXRlUGlja2VyU2VydmljZS5zdWJ0cmFjdEZpc2NhbFllYXJTaGlmdEZvclllYXIoY2hvc2VuRGF0ZSk7XG4gICAgICAgICAgICBjaG9zZW5EYXRlID0gdGhpcy5kYXRlUGlja2VyU2VydmljZS5hZGRGaXNjYWxZZWFyTW9udGhzVG9EYXRlKFxuICAgICAgICAgICAgICAgIG1vbWVudFdpdGhTaGlmdGVkWWVhciA/IG1vbWVudFdpdGhTaGlmdGVkWWVhciA6IGNob3NlbkRhdGUsXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UudGltZWZyYW1lID09PSB0aW1lZnJhbWUpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWVDaGFuZ2VkSW5DYWxlbmRhcihjaG9zZW5EYXRlKTtcbiAgICAgICAgICAgIHBpY2tlci5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHRyYW5zZm9ybURpc3BsYXllZFZhbHVlKHZhbHVlOiBtb21lbnQuTW9tZW50LCB0aW1lZnJhbWU6IFRpbWVmcmFtZU9wdGlvbik6IG1vbWVudC5Nb21lbnQge1xuICAgICAgICBjb25zdCB2YWx1ZVRvUmV0dXJuID0gdmFsdWU/LmNsb25lKCk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHZhbHVlVG9SZXR1cm4gJiZcbiAgICAgICAgICAgICh0aGlzLmRhdGVQaWNrZXJTZXJ2aWNlLmlzVGltZWZyYW1lRGVwZW5kaW5nT25GWSh0aW1lZnJhbWUpIHx8IHRpbWVmcmFtZSA9PT0gVGltZWZyYW1lT3B0aW9uLk1PTlRIKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuZGF0ZVBpY2tlclNlcnZpY2UuYWRkRmlzY2FsWWVhclNoaWZ0Rm9yWWVhcih2YWx1ZVRvUmV0dXJuKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWVUb1JldHVybjtcbiAgICB9XG59XG4iLCI8aSAqbmdJZj1cIiF1c2VCdXR0b25cIiBjbGFzcz1cImRyLWljb24tZGF0ZVwiIChjbGljayk9XCJkYXRlUGlja2VyLm9wZW4oKVwiPjwvaT5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIihkYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWUkIHwgYXN5bmMpID09PSAnd2VlaydcIj5cbiAgICA8aW5wdXRcbiAgICAgICAgW2F0dHIuaWRdPVwiaWRcIlxuICAgICAgICBbbmdNb2RlbF09XCJpbnB1dC52YWx1ZVwiXG4gICAgICAgIChjbGljayk9XCJkYXRlUGlja2VyLm9wZW4oKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgIFttaW5dPVwiX21pblwiXG4gICAgICAgIFttYXhdPVwiX21heFwiIC8+XG5cbiAgICA8bWF0LWRhdGUtcmFuZ2UtaW5wdXQgW2Zvcm1Hcm91cF09XCJyYW5nZUZvcm1cIiBbcmFuZ2VQaWNrZXJdPVwiZGF0ZVBpY2tlclwiIFtkYXRlRmlsdGVyXT1cImRhdGVGaWx0ZXJcIiBjbGFzcz1cInJhbmdlLWlucHV0XCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgbWF0U3RhcnREYXRlXG4gICAgICAgICAgICAjaW5wdXRcbiAgICAgICAgICAgIFtkckRhdGVQaWNrZXJGb3JtYXRdPVwiZGF0ZVBpY2tlclNlcnZpY2UuZm9ybWF0JCB8IGFzeW5jXCJcbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInN0YXJ0XCJcbiAgICAgICAgICAgIChkYXRlQ2hhbmdlKT1cInZhbHVlQ2hhbmdlZEluQ2FsZW5kYXIocmFuZ2VGb3JtLnZhbHVlLnN0YXJ0KVwiIC8+XG4gICAgICAgIDxpbnB1dCBtYXRFbmREYXRlIFtkckRhdGVQaWNrZXJGb3JtYXRdPVwiZGF0ZVBpY2tlclNlcnZpY2UuZm9ybWF0JCB8IGFzeW5jXCIgZm9ybUNvbnRyb2xOYW1lPVwiZW5kXCIgLz5cbiAgICA8L21hdC1kYXRlLXJhbmdlLWlucHV0PlxuXG4gICAgPG1hdC1kYXRlLXJhbmdlLXBpY2tlclxuICAgICAgICAjZGF0ZVBpY2tlclxuICAgICAgICBbc3RhcnRBdF09XCJfc3RhcnRBdFwiXG4gICAgICAgIFtwYW5lbENsYXNzXT1cIidkci13ZWVrLWRhdGVwaWNrZXInICsgKHBhbmVsQ2xhc3MgPyAnICcgKyBwYW5lbENsYXNzIDogJycpXCJcbiAgICAgICAgW2NhbGVuZGFySGVhZGVyQ29tcG9uZW50XT1cImN1c3RvbUhlYWRlclwiXG4gICAgICAgICh5ZWFyU2VsZWN0ZWQpPVwiY2hvc2VuUGVyaW9kSGFuZGxlcigkZXZlbnQsIHRpbWVmcmFtZU9wdGlvbi5ZRUFSLCBkYXRlUGlja2VyKVwiXG4gICAgICAgIChtb250aFNlbGVjdGVkKT1cImNob3NlblBlcmlvZEhhbmRsZXIoJGV2ZW50LCB0aW1lZnJhbWVPcHRpb24uTU9OVEgsIGRhdGVQaWNrZXIpXCJcbiAgICAgICAgKG9wZW5lZCk9XCJvbk9wZW4oKVwiXG4gICAgICAgIChjbG9zZWQpPVwib25DTG9zZSgpXCI+XG4gICAgPC9tYXQtZGF0ZS1yYW5nZS1waWNrZXI+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIihkYXRlUGlja2VyU2VydmljZS50aW1lZnJhbWUkIHwgYXN5bmMpICE9PSAnd2VlaydcIj5cbiAgICA8aW5wdXRcbiAgICAgICAgW2F0dHIuaWRdPVwiaWRcIlxuICAgICAgICBbbmdNb2RlbF09XCJkaXNwbGF5VmFsdWUkIHwgYXN5bmNcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZUNoYW5nZWRJbkNhbGVuZGFyKCRldmVudClcIlxuICAgICAgICAoY2xpY2spPVwiZGF0ZVBpY2tlci5vcGVuKClcIlxuICAgICAgICBbbWF0RGF0ZXBpY2tlcl09XCJkYXRlUGlja2VyXCJcbiAgICAgICAgW21hdERhdGVwaWNrZXJGaWx0ZXJdPVwiZGF0ZUZpbHRlclwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgIFtkckRhdGVQaWNrZXJGb3JtYXRdPVwiZGF0ZVBpY2tlclNlcnZpY2UuZm9ybWF0JCB8IGFzeW5jXCJcbiAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgICAgW21pbl09XCJfbWluXCJcbiAgICAgICAgW21heF09XCJfbWF4XCJcbiAgICAgICAgW2NsYXNzLmhpZGRlbi1jYWxlbmRhci1pbnB1dF09XCJ1c2VCdXR0b25cIiAvPlxuXG4gICAgPGRyLWJ1dHRvblxuICAgICAgICAqbmdJZj1cInVzZUJ1dHRvblwiXG4gICAgICAgIFtpY29uXT1cIidkci1pY29uLWRhdGUnXCJcbiAgICAgICAgW2ljb25BZnRlcl09XCJpY29uQWZ0ZXJCdXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiZGF0ZVBpY2tlci5vcGVuKClcIlxuICAgICAgICBjbGFzcz1cImRhdGVwaWNrZXItYnV0dG9uXCI+XG4gICAgICAgIHt7IGJ1dHRvbkxhYmVsIHx8ICdTZWxlY3QgRGF0ZScgfX1cbiAgICA8L2RyLWJ1dHRvbj5cblxuICAgIDxtYXQtZGF0ZXBpY2tlclxuICAgICAgICAjZGF0ZVBpY2tlclxuICAgICAgICBbcGFuZWxDbGFzc109XCJwYW5lbENsYXNzXCJcbiAgICAgICAgW3N0YXJ0QXRdPVwiX3N0YXJ0QXRcIlxuICAgICAgICBbY2FsZW5kYXJIZWFkZXJDb21wb25lbnRdPVwiY3VzdG9tSGVhZGVyXCJcbiAgICAgICAgKHllYXJTZWxlY3RlZCk9XCJjaG9zZW5QZXJpb2RIYW5kbGVyKCRldmVudCwgdGltZWZyYW1lT3B0aW9uLllFQVIsIGRhdGVQaWNrZXIpXCJcbiAgICAgICAgKG1vbnRoU2VsZWN0ZWQpPVwiY2hvc2VuUGVyaW9kSGFuZGxlcigkZXZlbnQsIHRpbWVmcmFtZU9wdGlvbi5NT05USCwgZGF0ZVBpY2tlcilcIlxuICAgICAgICAob3BlbmVkKT1cIm9uT3BlbigpXCJcbiAgICAgICAgKGNsb3NlZCk9XCJvbkNMb3NlKClcIj5cbiAgICA8L21hdC1kYXRlcGlja2VyPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|